/*
Theme Name: Southern Madison Utility Theme
Theme URI: https://southernmadisonwaterdistrict.com/
Author: Southern Madison Water District
Description: Lightweight standalone WordPress theme for Southern Madison Water District. Built around the Southern Madison hero, water alert, customer service, utility information, and quick-link plugins without Avada dependencies.
Version: 1.5.7
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: smwd-utility
*/

:root{
  --mcu-navy:#07355f;
  --mcu-navy-dark:#052742;
  --mcu-blue:#126dab;
  --mcu-sky:#eaf5fb;
  --mcu-green:#39bf72;
  --mcu-text:#102b43;
  --mcu-muted:#64798b;
  --mcu-border:#d7e4ec;
  --mcu-white:#fff;
  --mcu-max:1360px;
  --mcu-shadow:0 14px 38px rgba(6,45,77,.10);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  color:var(--mcu-text);
  background:#fff;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  font-size:16px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{max-width:100%;height:auto}
a{color:var(--mcu-blue)}
button,input,select,textarea{font:inherit}

.smwd-shell{width:min(calc(100% - 48px),var(--mcu-max));margin-inline:auto}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link:not(:focus){position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link:focus{position:fixed;left:16px;top:16px;z-index:100000;background:#fff;color:var(--mcu-navy);padding:10px 14px;border:2px solid var(--mcu-blue);border-radius:8px}

/* Header — refined v1.5.3 */
.site-header{
  position:relative;
  z-index:5000;
  background:rgba(255,255,255,.98);
  border-bottom:1px solid #c9dbe7;
  box-shadow:0 8px 24px rgba(5,39,66,.055);
}
.site-header__inner{
  min-height:96px;
  display:grid;
  grid-template-columns:190px minmax(0,1fr) 142px;
  align-items:center;
  gap:30px;
}
.site-branding{display:flex;align-items:center;min-width:0}
.smwd-brand-link{display:inline-flex;align-items:center;text-decoration:none;line-height:0}
.smwd-brand-logo{
  display:block;
  width:auto;
  height:auto;
  max-width:178px;
  max-height:78px;
  object-fit:contain;
  object-position:left center;
}

.primary-nav{justify-self:center;min-width:0}
.primary-nav ul{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:clamp(24px,2.5vw,44px);
  list-style:none;
  margin:0;
  padding:0;
}
.primary-nav li{margin:0;padding:0}
.primary-nav a{
  display:flex;
  align-items:center;
  min-height:46px;
  padding:0 2px;
  color:#092b47;
  text-decoration:none;
  font-weight:760;
  font-size:15px;
  letter-spacing:.018em;
  white-space:nowrap;
  position:relative;
  transition:color .18s ease;
}
.primary-nav a:after{
  content:"";
  position:absolute;
  left:50%;
  right:50%;
  bottom:2px;
  height:3px;
  border-radius:999px;
  background:#18aeea;
  transition:left .18s ease,right .18s ease;
}
.primary-nav a:hover,
.primary-nav .current-menu-item>a,
.primary-nav .current_page_item>a,
.primary-nav .current-menu-ancestor>a{
  color:#0878b9;
}
.primary-nav a:hover:after,
.primary-nav .current-menu-item>a:after,
.primary-nav .current_page_item>a:after,
.primary-nav .current-menu-ancestor>a:after{
  left:0;
  right:0;
}

.header-pay-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:132px;
  min-height:48px;
  padding:0 22px;
  border-radius:12px;
  background:linear-gradient(135deg,#087fc6 0%,#126dab 100%);
  color:#fff;
  text-decoration:none;
  white-space:nowrap;
  font-size:15px;
  line-height:1;
  font-weight:850;
  letter-spacing:.015em;
  box-shadow:0 9px 22px rgba(18,109,171,.22);
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease;
}
.header-pay-link:hover{
  background:linear-gradient(135deg,#075f96 0%,#07355f 100%);
  color:#fff;
  transform:translateY(-1px);
  box-shadow:0 12px 26px rgba(7,53,95,.22);
}
.menu-toggle{display:none;width:46px;height:46px;align-items:center;justify-content:center;border:1px solid var(--mcu-border);background:#fff;color:var(--mcu-navy);border-radius:10px;cursor:pointer}
.menu-toggle svg{width:22px;height:22px}

/* Homepage composition: theme owns the shell, plugins own the modules. */
.site-main{min-height:55vh}
.smwd-home-section{width:100%}
.smwd-home-alerts{padding:18px 24px 8px;background:#fff}
.smwd-home-alerts>*{width:min(100%,1440px);margin-inline:auto}
.smwd-home-topics{padding:18px 24px 44px;background:#fff}
.smwd-home-topics>*{width:min(100%,1440px);margin-inline:auto}

/* Keep the hero visually consistent with the MCU site, not a generic theme. */
.mcu-hero__headline{
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  font-weight:800!important;
  letter-spacing:-.045em!important;
}
.mcu-hero,.mcu-hero *{box-sizing:border-box}

/* Inner pages */
.smwd-theme-content{width:min(calc(100% - 48px),1180px);margin:44px auto 70px}
.smwd-theme-content h2,.smwd-theme-content h3,.smwd-theme-content h4{color:var(--mcu-navy);line-height:1.15}
.smwd-theme-content h2{font-size:clamp(1.65rem,2.7vw,2.5rem)}
.smwd-theme-content h3{font-size:clamp(1.3rem,2vw,1.75rem)}
.smwd-theme-content p{margin:0 0 1.25em}
.smwd-theme-content table{width:100%;border-collapse:collapse}
.smwd-theme-content th,.smwd-theme-content td{padding:12px 14px;border:1px solid var(--mcu-border);text-align:left}
.smwd-theme-content th{background:#f3f8fb;color:var(--mcu-navy)}
.smwd-theme-content img{border-radius:12px}

/* Footer */
.site-footer{background:var(--mcu-navy-dark);color:rgba(255,255,255,.82);margin-top:0}
.site-footer__inner{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:48px;padding:44px 0 34px;align-items:start}
.footer-brand{font-weight:850;color:#fff;font-size:18px;margin-bottom:8px}
.footer-copy{font-size:14px;line-height:1.7;color:rgba(255,255,255,.67)}
.footer-title{margin:0 0 9px;color:#b7def4;font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:850}
.footer-link{display:block;color:#fff;text-decoration:none;font-size:14px;margin:4px 0}
.footer-link:hover{color:#83d7aa}
.site-footer__bottom{border-top:1px solid rgba(255,255,255,.12);padding:17px 0 22px;font-size:13px;color:rgba(255,255,255,.55)}

@media(max-width:1180px){
  .site-header__inner{grid-template-columns:minmax(170px,210px) 1fr auto;min-height:92px;gap:22px}
  .smwd-brand-logo{max-width:165px;max-height:72px}
  .header-pay-link{display:none}
  .menu-toggle{display:inline-flex;justify-self:end}
  .primary-nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;border-top:1px solid var(--mcu-border);border-bottom:2px solid var(--mcu-navy);box-shadow:0 18px 30px rgba(5,39,66,.10)}
  .primary-nav.is-open{display:block}
  .primary-nav ul{width:min(calc(100% - 48px),var(--mcu-max));margin:auto;padding:10px 0 16px;display:grid;gap:0}
  .primary-nav a{min-height:48px;border-bottom:1px solid #edf2f5}
  .primary-nav a:after{display:none}
}
@media(max-width:760px){
  .smwd-shell{width:min(calc(100% - 28px),var(--mcu-max))}
  .site-header__inner{min-height:78px;grid-template-columns:minmax(0,1fr) auto;gap:14px}
  .smwd-brand-logo{max-width:150px;max-height:60px}
  .smwd-home-alerts{padding:12px 12px 4px}
  .smwd-home-topics{padding:12px 12px 30px}
  .smwd-theme-content{width:min(calc(100% - 30px),1180px);margin:30px auto 50px}
  .site-footer__inner{grid-template-columns:1fr;gap:24px;padding:32px 0 26px}
}
@media(max-width:460px){.smwd-brand-logo{max-width:235px}.menu-toggle{width:42px;height:42px}}

.smwd-brand-text{font-weight:800;font-size:clamp(16px,2vw,24px);line-height:1.05;color:#0a3a6d;text-decoration:none}.custom-logo-link{display:block}.custom-logo{width:auto;display:block}


/* Southern Madison customer-resource IA — v1.1 */
.smwd-page-intro{max-width:900px;margin:0 0 2rem}.smwd-eyebrow{text-transform:uppercase;letter-spacing:.12em;font-weight:800;font-size:.78rem;color:#087fc6;margin-bottom:.45rem}.smwd-page-intro h1{margin-top:0}.smwd-resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem;margin:2rem 0}.smwd-resource-card{display:block;background:#fff;border:1px solid #dce9f2;border-radius:16px;padding:1.35rem;text-decoration:none;color:inherit;box-shadow:0 6px 24px rgba(4,57,93,.07);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.smwd-resource-card:hover{transform:translateY(-3px);box-shadow:0 10px 30px rgba(4,57,93,.13);border-color:#9bcfe9}.smwd-resource-card h2,.smwd-resource-card h3{margin:.7rem 0 .45rem;font-size:1.15rem}.smwd-resource-card p{margin:0 0 .6rem}.smwd-resource-icon{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 8px;border-radius:12px;background:#e9f7ff;color:#066ca8;font-weight:900;font-size:1.05rem}.smwd-card-link{color:#0676b7;font-weight:800}.smwd-two-col{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,.8fr);gap:1.5rem;align-items:start;margin:1.5rem 0 2rem}.smwd-callout{background:#eef8fd;border-left:5px solid #078bd2;border-radius:12px;padding:1.35rem}.smwd-alert-callout{background:#fff3f3;border-left-color:#d72727}.smwd-info-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;margin:1.5rem 0 2rem}.smwd-info-panels>section{background:#fff;border:1px solid #dce9f2;border-radius:14px;padding:1.25rem}.smwd-help-band{display:flex;gap:1.5rem;align-items:center;justify-content:space-between;background:#073f67;color:#fff;border-radius:16px;padding:1.25rem 1.4rem;margin:2rem 0}.smwd-help-band .button{white-space:nowrap}.smwd-action-row{display:flex;gap:.8rem;flex-wrap:wrap;margin:1.5rem 0}.smwd-check-list{list-style:none;padding-left:0}.smwd-check-list li{position:relative;padding:.35rem 0 .35rem 1.65rem}.smwd-check-list li:before{content:'✓';position:absolute;left:0;color:#0885c8;font-weight:900}.smwd-steps{counter-reset:smwdstep;list-style:none;padding:0;display:grid;gap:.8rem}.smwd-steps li{counter-increment:smwdstep;display:grid;grid-template-columns:42px 1fr;column-gap:.85rem;background:#fff;border:1px solid #dce9f2;border-radius:12px;padding:1rem}.smwd-steps li:before{content:counter(smwdstep);grid-row:1/3;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#087fc6;color:#fff;font-weight:900}.smwd-steps li strong{display:block}.smwd-steps li span{grid-column:2;color:#435566;margin-top:.15rem}.smwd-rights-list{padding-left:1.25rem}.smwd-rights-list li{margin:.55rem 0}.smwd-fine-print{font-size:.9rem;color:#5a6872;background:#f5f7f9;border-radius:8px;padding:1rem}.smwd-primary-cta{font-size:1.05rem}.button-secondary{background:#fff!important;color:#075c8d!important;border:1px solid #8bbbd5!important}.smwd-payment-grid section.smwd-resource-card:hover{transform:none}.main-navigation .sub-menu{z-index:9999}
@media(max-width:900px){.smwd-resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.smwd-two-col,.smwd-info-panels{grid-template-columns:1fr}}
@media(max-width:600px){.smwd-resource-grid{grid-template-columns:1fr}.smwd-help-band{align-items:flex-start;flex-direction:column}.smwd-help-band .button{width:100%;text-align:center}}

/* Water quality report archive */
.smwd-report-archive { margin: 2.5rem 0; }
.smwd-report-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 1rem;
  margin-top: 1.25rem;
}
.smwd-report-card {
  display: flex;
  min-height: 150px;
  flex-direction: column;
  justify-content: space-between;
  gap: .45rem;
  padding: 1.25rem;
  border: 1px solid rgba(15,76,129,.16);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 8px 22px rgba(16,57,91,.08);
  color: #10395b;
  text-decoration: none;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.smwd-report-card:hover,
.smwd-report-card:focus {
  transform: translateY(-3px);
  box-shadow: 0 14px 30px rgba(16,57,91,.14);
  border-color: rgba(0,132,199,.42);
}
.smwd-report-card .smwd-report-year {
  font-size: 2rem;
  line-height: 1;
  font-weight: 800;
  color: #087fc5;
}
.smwd-report-card strong { font-size: 1rem; }
.smwd-report-card span:last-child { font-size: .9rem; color: #50718b; }
.smwd-report-current {
  background: linear-gradient(145deg,#073c69,#0b74b9);
  color: #fff;
  border-color: transparent;
}
.smwd-report-current .smwd-report-year,
.smwd-report-current span:last-child { color: #fff; }
@media (max-width: 560px) {
  .smwd-report-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .smwd-report-card { min-height: 135px; padding: 1rem; }
  .smwd-report-card .smwd-report-year { font-size: 1.65rem; }
}


/* Customer Service hub v1.3 */
.smwd-customer-hub{display:grid;gap:42px}
.smwd-customer-hero{background:linear-gradient(135deg,var(--mcu-navy-dark),var(--mcu-blue));color:#fff;border-radius:24px;padding:42px 44px;position:relative;overflow:hidden}
.smwd-customer-hero:after{content:"";position:absolute;right:-70px;bottom:-110px;width:300px;height:300px;border-radius:50%;border:45px solid rgba(255,255,255,.08)}
.smwd-customer-hero .smwd-eyebrow{color:#87d9f5}.smwd-customer-hero h1{color:#fff;margin:.2em 0;font-size:clamp(2rem,4vw,3.5rem)}.smwd-customer-hero p:last-child{max-width:760px;font-size:1.08rem;line-height:1.7;margin-bottom:0}
.smwd-task-section{display:grid;gap:18px}.smwd-section-heading h2{margin:.15em 0 0;color:var(--mcu-navy)}
.smwd-primary-task-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.smwd-secondary-task-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.smwd-service-tile{display:flex;gap:18px;align-items:flex-start;border:1px solid var(--mcu-border);border-radius:18px;padding:22px;background:#fff;text-decoration:none!important;color:var(--mcu-text)!important;box-shadow:0 8px 22px rgba(7,53,95,.06);transition:.18s ease}
.smwd-service-tile:hover{transform:translateY(-2px);border-color:#8fc7e7;box-shadow:0 14px 30px rgba(7,53,95,.11)}
.smwd-service-tile--primary{display:grid;min-height:220px;padding:28px;background:linear-gradient(180deg,#fff,#f4fbff)}
.smwd-service-icon{width:52px;height:52px;border-radius:15px;background:#e8f6fd;color:var(--mcu-blue);display:grid;place-items:center;font-weight:900;font-size:18px;flex:0 0 52px}
.smwd-service-tile--primary .smwd-service-icon{width:62px;height:62px;border-radius:18px;font-size:21px}
.smwd-icon-alert{background:#ffe7e7;color:#c71920}.smwd-icon-bill{background:#e8f8ef;color:#16804b}.smwd-icon-leak,.smwd-icon-quality,.smwd-icon-usage{background:#e7f7ff;color:#0876bd}
.smwd-service-copy{display:grid;gap:8px}.smwd-service-copy strong{font-size:1.16rem;color:var(--mcu-navy);line-height:1.25}.smwd-service-tile--primary .smwd-service-copy strong{font-size:1.35rem}.smwd-service-copy>span{color:var(--mcu-muted);line-height:1.55}.smwd-service-copy b{color:var(--mcu-blue);font-size:.94rem;margin-top:4px}
.smwd-customer-contact{display:flex;justify-content:space-between;align-items:center;gap:25px;background:var(--mcu-sky);border:1px solid #cfe5f2;border-radius:20px;padding:28px 30px}.smwd-customer-contact h2{margin:.15em 0}.smwd-customer-contact p:last-child{margin-bottom:0}.smwd-contact-actions{display:flex;gap:10px;flex-wrap:wrap;flex:0 0 auto}
@media(max-width:900px){.smwd-primary-task-grid{grid-template-columns:1fr}.smwd-secondary-task-grid{grid-template-columns:1fr}.smwd-service-tile--primary{min-height:0}.smwd-customer-contact{display:block}.smwd-contact-actions{margin-top:18px}}
@media(max-width:600px){.smwd-customer-hero{padding:30px 24px}.smwd-service-tile{padding:18px}.smwd-customer-hub{gap:32px}}


/* Rates & Charges page v1.4 */
.smwd-rates-page{display:grid;gap:36px}.smwd-rates-effective{display:inline-flex;align-items:center;gap:.35rem;width:max-content;max-width:100%;padding:.8rem 1rem;border-radius:999px;background:#eaf6fc;color:#0a4d77;border:1px solid #c8e5f4;font-size:.95rem}.smwd-rate-section{display:grid;gap:16px}.smwd-rate-table-wrap{overflow-x:auto;border:1px solid var(--mcu-border);border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(7,53,95,.06)}.smwd-rate-table{width:100%;border-collapse:collapse;min-width:720px}.smwd-rate-table th,.smwd-rate-table td{padding:16px 18px;text-align:left;border-bottom:1px solid #e5eef4;vertical-align:top}.smwd-rate-table th{background:#f3f9fc;color:var(--mcu-navy);font-size:.9rem;text-transform:uppercase;letter-spacing:.04em}.smwd-rate-table tbody tr:last-child td{border-bottom:0}.smwd-rate-value{font-size:1.08rem;font-weight:800;color:var(--mcu-navy)}.smwd-rate-table small{color:var(--mcu-muted)}.smwd-rate-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.smwd-rate-card{border:1px solid var(--mcu-border);border-radius:16px;padding:20px;background:linear-gradient(180deg,#fff,#f7fbfe);box-shadow:0 8px 22px rgba(7,53,95,.05)}.smwd-rate-card h3{margin:0 0 10px;color:var(--mcu-navy)}.smwd-rate-card-value{font-size:1.55rem;font-weight:900;color:var(--mcu-blue);margin-bottom:8px}.smwd-rate-card-value small{font-size:.9rem;font-weight:600;color:var(--mcu-muted)}.smwd-rate-card p{margin:0;color:var(--mcu-muted)}
@media(max-width:700px){.smwd-rate-card-grid{grid-template-columns:1fr}.smwd-rates-effective{border-radius:14px;display:block}.smwd-rate-table{min-width:620px}}

/* Rates page action cards */
.smwd-rates-intro{max-width:980px}
.smwd-rates-actions{display:grid;grid-template-columns:repeat(2,minmax(240px,1fr));gap:14px;margin:1.55rem 0 .25rem;max-width:760px}
.smwd-rate-action{display:flex;align-items:center;gap:14px;padding:15px 17px;border:1px solid #cde0ec;border-radius:14px;background:#fff;color:var(--mcu-navy);text-decoration:none;box-shadow:0 6px 20px rgba(7,53,95,.06);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.smwd-rate-action:hover{transform:translateY(-2px);border-color:#78b9dc;box-shadow:0 10px 24px rgba(7,53,95,.11)}
.smwd-rate-action-icon{display:flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;border-radius:12px;background:#e8f5fb;color:var(--mcu-blue);font-size:1.25rem;font-weight:900}
.smwd-rate-action strong{display:block;font-size:1rem;line-height:1.25}
.smwd-rate-action small{display:block;margin-top:3px;color:var(--mcu-muted);font-size:.86rem;line-height:1.3}
@media(max-width:640px){.smwd-rates-actions{grid-template-columns:1fr}}


/* Standard interior-page hero — v1.4.2 */
.smwd-interior-shell{padding-top:30px;padding-bottom:48px}
.smwd-interior-hero{
  position:relative;overflow:hidden;
  background:linear-gradient(112deg,#0b3f63 0%,#0b4c78 48%,#176ca4 100%);
  color:#fff;border-radius:24px;padding:44px 44px 42px;margin:0 0 34px;
  min-height:278px;display:flex;align-items:center;
}
.smwd-interior-hero__content{position:relative;z-index:2;max-width:790px}
.smwd-interior-hero__eyebrow{margin:0 0 26px;text-transform:uppercase;letter-spacing:.14em;font-size:.76rem;font-weight:900;color:#59d7ff}
.smwd-interior-hero h1{margin:0;color:#fff;font-size:clamp(2.15rem,4.2vw,3.55rem);line-height:1.06;letter-spacing:-.035em;font-weight:850}
.smwd-interior-hero__desc{margin:25px 0 0;max-width:720px;font-size:1.05rem;line-height:1.7;color:#fff}
.smwd-interior-hero__ring{position:absolute;right:-26px;top:-31px;width:345px;height:345px;border-radius:50%;border:46px solid rgba(255,255,255,.075)}
.smwd-interior-hero__ring:after{content:"";position:absolute;left:44px;top:44px;width:165px;height:165px;border-radius:50%;border:34px solid rgba(255,255,255,.045)}
/* Existing page-specific intro headings are now represented by the global banner. Keep CTAs/content beneath them. */
.smwd-interior-content > .smwd-page-intro:first-child .smwd-eyebrow,
.smwd-interior-content > .smwd-page-intro:first-child h1,
.smwd-interior-content > .smwd-page-intro:first-child > p:first-of-type{display:none}
.smwd-interior-content > .smwd-page-intro:first-child{max-width:none;margin:0 0 1.25rem}
/* Customer Service previously rendered its own hero inside the shortcode. */
.smwd-interior-content .smwd-customer-hero{display:none}
@media(max-width:700px){
  .smwd-interior-shell{padding-top:18px}
  .smwd-interior-hero{border-radius:18px;padding:32px 25px;min-height:235px;margin-bottom:26px}
  .smwd-interior-hero__eyebrow{margin-bottom:18px}
  .smwd-interior-hero__desc{margin-top:18px;font-size:1rem}
  .smwd-interior-hero__ring{right:-155px;top:-75px}
}

/* About & Contact consolidated page */
.smwd-contact-section{margin:2.5rem 0}.smwd-section-heading{max-width:780px;margin-bottom:1.25rem}.smwd-section-heading h2{font-size:clamp(1.8rem,3vw,2.4rem);margin:.2rem 0 .6rem}.smwd-contact-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.smwd-contact-card{background:#fff;border:1px solid #dce9f2;border-radius:16px;padding:1.25rem;box-shadow:0 6px 24px rgba(4,57,93,.07)}.smwd-contact-card h3{margin:.7rem 0 .45rem}.smwd-contact-card p{margin:0}.smwd-contact-card p span{color:#607487;font-size:.93rem}.smwd-contact-card a{font-weight:800}.smwd-contact-card--emergency{border-color:#f0bcbc;background:#fff8f8}.smwd-contact-card--emergency .smwd-resource-icon{background:#ffe8e8;color:#b51f1f}.smwd-about-links{margin-top:2.5rem}.smwd-about-links a{text-decoration:none;color:inherit}.smwd-about-links .smwd-card-link{display:inline-block;margin-top:.35rem}.smwd-action-row a{display:inline-flex;align-items:center;justify-content:center;background:#087fc6;color:#fff!important;text-decoration:none!important;font-weight:800;padding:.72rem 1rem;border-radius:10px;border:1px solid #087fc6}.smwd-action-row a.button-secondary{background:#fff!important;color:#075c8d!important}.
@media(max-width:1000px){.smwd-contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.smwd-contact-grid{grid-template-columns:1fr}}


/* About & Contact resource cards v1.5.1 */
.smwd-about-resources{margin-top:2.75rem;padding-top:.25rem}.smwd-about-resources .smwd-section-heading{margin-bottom:1.15rem}.smwd-about-resources .smwd-section-heading h2{margin:.2rem 0 .45rem}.smwd-about-links{align-items:stretch;margin-top:1.25rem}.smwd-about-resource-card{display:flex;flex-direction:column;min-height:235px;padding:1.55rem;border-top:4px solid #078bd2}.smwd-about-resource-card .smwd-resource-icon{margin-bottom:.25rem}.smwd-about-resource-card h3{font-size:1.25rem;margin:.55rem 0 .45rem}.smwd-about-resource-card p{color:#344f63;line-height:1.6;margin:0 0 1.15rem}.smwd-card-button{display:inline-flex!important;align-items:center;gap:.4rem;align-self:flex-start;margin-top:auto;padding:.72rem .95rem;border-radius:10px;background:#087fc6;color:#fff!important;text-decoration:none!important;font-weight:800;line-height:1.1;transition:background .18s ease,transform .18s ease}.smwd-card-button:hover,.smwd-card-button:focus{background:#05699f;color:#fff!important;transform:translateY(-1px)}@media(max-width:850px){.smwd-about-links{grid-template-columns:1fr}.smwd-about-resource-card{min-height:0}}


/* v1.5.6 FAQ */
.smwd-faq-list{display:grid;gap:14px;margin:28px 0 34px}
.smwd-faq-item{border:1px solid #cfe0ec;border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(0,49,84,.05);overflow:hidden}
.smwd-faq-item summary{list-style:none;cursor:pointer;padding:20px 56px 20px 22px;font-weight:800;font-size:1.08rem;color:#003b68;position:relative}
.smwd-faq-item summary::-webkit-details-marker{display:none}
.smwd-faq-item summary:after{content:'+';position:absolute;right:20px;top:50%;transform:translateY(-50%);width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#e9f6fd;color:#0879bd;font-size:1.35rem;line-height:1}
.smwd-faq-item[open] summary:after{content:'–'}
.smwd-faq-item[open] summary{background:#f5fbff;border-bottom:1px solid #d9e9f2}
.smwd-faq-item>div{padding:18px 22px 22px;color:#234e68;line-height:1.7}
.smwd-faq-item>div p{margin:0 0 12px}.smwd-faq-item>div p:last-child{margin-bottom:0}
@media(max-width:700px){.smwd-faq-item summary{padding:17px 50px 17px 17px}.smwd-faq-item>div{padding:15px 17px 19px}}


/* v1.5.7 — WordPress-managed Primary Menu and dropdown support */
@media (min-width: 901px){
  .primary-nav li{position:relative}
  .primary-nav .sub-menu{
    display:none;
    position:absolute;
    z-index:9999;
    top:100%;
    left:0;
    min-width:240px;
    padding:8px 0;
    margin:0;
    background:#fff;
    border:1px solid #dce7ee;
    border-radius:10px;
    box-shadow:0 16px 36px rgba(5,39,66,.14);
  }
  .primary-nav li:hover>.sub-menu,
  .primary-nav li:focus-within>.sub-menu{display:block}
  .primary-nav .sub-menu li{width:100%}
  .primary-nav .sub-menu a{
    display:block;
    min-height:0;
    padding:11px 16px;
    white-space:nowrap;
    border:0;
    line-height:1.25;
  }
  .primary-nav .sub-menu a:after{display:none}
  .primary-nav .sub-menu a:hover,
  .primary-nav .sub-menu .current-menu-item>a{background:#eef8fd;color:#075f91}
  .primary-nav .sub-menu .sub-menu{top:0;left:100%;margin-left:4px}
}
@media (max-width:900px){
  .primary-nav .sub-menu{
    display:block;
    position:static;
    padding-left:18px;
    margin:0;
    box-shadow:none;
    border:0;
    background:transparent;
  }
  .primary-nav .sub-menu a{font-size:.95rem;padding-left:12px}
}
