:root{
  --navy:#0163a9;
  --navy-deep:#0163a9;
  --blue:#0163a9;
  --red:#ef2221;
  --red-deep:#ef2221;
  --paper:#ffffff;
  --mist:#f7f9fb;
  --mist-deep:#e8eef3;
  --ink:#3d444a;
  --body:#727272;
  --muted:#727272;
  --line:#d9e2e9;
  --shadow:0 18px 46px rgba(0,74,127,.16);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--mist);
  color:var(--body);
  font-family:"Avenir Next",Avenir,"Segoe UI",Arial,sans-serif;
  font-size:16px;
  line-height:1.58;
  -webkit-font-smoothing:antialiased;
}
a{color:var(--navy)}
img{display:block;max-width:100%}
.wrap{width:min(1140px,calc(100% - 48px));margin-inline:auto}
.site-shell{min-height:100vh;background:var(--paper);overflow:hidden}

/* Information masthead */
.site-header{position:relative;z-index:20;background:#fff}
.nav{width:100%}
.header-main{
  width:min(1140px,calc(100% - 48px));
  min-height:146px;
  margin-inline:auto;
  display:grid;
  grid-template-columns:minmax(300px,1.4fr) minmax(205px,.88fr) minmax(210px,.9fr) minmax(175px,.72fr);
  align-items:center;
  gap:29px;
  padding:25px 0 23px;
}
.brand{display:block;width:min(395px,100%)}
.brand img{width:100%;height:auto}
.header-quick-link{display:none}
.header-detail,.header-contact{display:flex;align-items:flex-start;gap:12px;color:var(--ink)}
.header-icon,.phone-mark{
  flex:0 0 31px;
  width:31px;
  height:31px;
  display:inline-grid;
  place-items:center;
  color:var(--red);
  font-size:1.4rem;
  line-height:1;
}
.header-detail strong,.header-contact .label{
  display:block;
  color:var(--ink);
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  margin-bottom:3px;
}
.header-detail address,.header-detail .header-value{display:block;color:#3f4654;font-size:.83rem;font-style:normal;line-height:1.34}
.header-detail a.header-value{color:var(--navy);font-weight:750;text-decoration:none;overflow-wrap:anywhere}
.header-detail a.header-value:hover{text-decoration:underline}
.header-contact{justify-content:flex-end;text-align:left}
.header-contact a{color:var(--ink);font-size:1.01rem;font-weight:700;line-height:1.35;text-decoration:none;white-space:nowrap}
.header-contact a:hover{color:var(--red)}
.navlinks{
  display:flex;
  width:min(1140px,100%);
  min-height:68px;
  margin-inline:auto;
  background:var(--navy);
  box-shadow:0 0 0 100vmax var(--navy);
  clip-path:inset(0 -100vmax);
}
.navlinks > a,.nav-dropdown > summary{
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  font-size:.85rem;
  font-weight:800;
  letter-spacing:.035em;
  text-decoration:none;
  text-transform:uppercase;
  padding:18px 25px;
  border-bottom:4px solid transparent;
}
.navlinks > a:first-child{background:var(--red)}
.navlinks > a:hover,.navlinks > a[aria-current="page"],.nav-dropdown > summary:hover,.nav-dropdown > summary[aria-current="page"],.nav-dropdown[open] > summary{background:#273773;border-bottom-color:#fff}
.navlinks > a:first-child:hover,.navlinks > a:first-child[aria-current="page"]{background:#c90f17}
.nav-dropdown{position:relative;flex:1;min-width:0;color:#fff}
.nav-dropdown > summary{height:100%;list-style:none;cursor:pointer;user-select:none}
.nav-dropdown > summary::-webkit-details-marker{display:none}
.dropdown-caret{margin-left:7px;font-size:.72rem;transition:transform .18s ease}
.nav-dropdown[open] .dropdown-caret{transform:rotate(180deg)}
.locations-dropdown{
  position:absolute;
  top:100%;
  left:0;
  z-index:60;
  width:max-content;
  min-width:285px;
  padding:8px;
  background:#fff;
  border:1px solid #dce5ed;
  border-top:4px solid var(--red);
  border-radius:0 0 10px 10px;
  box-shadow:0 18px 38px rgba(0,47,81,.2);
}
.nav-dropdown:hover > .locations-dropdown,.nav-dropdown:focus-within > .locations-dropdown{display:block}
.locations-dropdown a{
  display:block;
  padding:10px 13px;
  color:var(--navy-deep);
  font-size:.82rem;
  font-weight:750;
  letter-spacing:.01em;
  line-height:1.25;
  text-decoration:none;
  text-transform:none;
  border-radius:6px;
}
.locations-dropdown a:hover,.locations-dropdown a:focus,.locations-dropdown a[aria-current="page"]{color:#fff;background:var(--navy)}
.locations-dropdown .all-locations-link{margin-bottom:5px;padding-bottom:12px;color:var(--red);font-weight:850;border-bottom:1px solid #e3e9ef;border-radius:6px 6px 0 0}

/* Image-led homepage hero */
.hero{
  position:relative;
  color:#fff;
  background:
    linear-gradient(90deg,rgba(0,52,90,.9) 0%,rgba(0,74,127,.69) 45%,rgba(0,74,127,.16) 78%,rgba(0,74,127,.08) 100%),
    url("hero-community-sunset.webp") center/cover no-repeat;
}
.hero:after{content:"";position:absolute;inset:auto 0 0;height:125px;background:linear-gradient(0deg,rgba(0,52,90,.42),transparent);pointer-events:none}
.hero .wrap{position:relative;z-index:1;display:block;min-height:610px;padding:94px 0 155px}
.hero-menu{display:none}
.hero-copy{width:min(650px,62%);padding:0;background:none}
.kicker,.eyebrow{color:var(--red);font-size:.74rem;font-weight:850;letter-spacing:.13em;text-transform:uppercase}
.hero h1{
  color:#fff;
  font-size:3.55rem;
  font-weight:300;
  letter-spacing:-.035em;
  line-height:1.08;
  margin:11px 0 22px;
}
.hero h1:after{content:"";display:block;width:62px;height:4px;background:var(--red);margin-top:27px}
.hero .sub{color:#fff;font-size:1.15rem;line-height:1.55;margin:0;max-width:600px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:29px}
.cta{
  display:inline-flex;
  min-height:50px;
  align-items:center;
  justify-content:center;
  background:#fff;
  color:var(--navy);
  border:1px solid transparent;
  border-radius:3px;
  font-size:.78rem;
  font-weight:850;
  letter-spacing:.09em;
  text-decoration:none;
  text-transform:uppercase;
  padding:14px 25px;
}
.cta.red{background:var(--red-deep);color:#fff}
.cta.blue{background:var(--navy);color:#fff}
.cta.light{background:#fff;color:var(--red)}
.cta:hover{transform:translateY(-1px);filter:brightness(.96)}

/* Featured service panels */
.featured-services{position:relative;z-index:4;background:var(--mist);padding:0 0 66px}
.featured-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  background:#fff;
  box-shadow:var(--shadow);
  transform:translateY(-90px);
  margin-bottom:-90px;
}
.featured-card{display:flex;flex-direction:column;min-height:292px;color:inherit;text-decoration:none;padding:34px 29px 30px;border-right:1px solid var(--line)}
.featured-card:last-child{border-right:0}
.featured-card .service-type{color:var(--red);font-size:.7rem;font-weight:850;letter-spacing:.13em;text-transform:uppercase}
.featured-card h2{color:var(--ink);font-size:1.65rem;line-height:1.2;margin:9px 0 17px}
.featured-card h2:after{content:"";display:block;width:35px;height:4px;background:var(--red);margin-top:16px}
.featured-card p{color:var(--body);font-size:.91rem;margin:0 0 22px}
.featured-card .arrow{margin-top:auto}
.featured-card:hover{background:#fafbfe}

/* Shared sections */
.section{background:#fff;padding:70px 0}
.section.soft{background:var(--mist)}
.section h2,.page-hero h1,.content h2{color:var(--ink);font-weight:750;letter-spacing:-.025em;line-height:1.17}
.section h2{font-size:2.45rem;margin:7px 0 17px}
.lead{color:#58667a;font-size:1.07rem;max-width:880px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);margin-top:36px;border:1px solid var(--line)}
.panel{background:#fff;padding:30px 27px}
.panel .num{color:var(--red);font-size:.73rem;font-weight:850;letter-spacing:.12em}
.panel h3,.service h3,.loc-card h3{color:var(--ink)}
.panel h3{font-size:1.15rem;margin:9px 0 8px}
.panel p,.service p,.loc-body p{color:#5a687c}
.services{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:31px}
.service{display:block;background:#fff;border:1px solid var(--line);border-top:4px solid var(--navy);color:inherit;text-decoration:none;padding:25px 23px;box-shadow:0 8px 24px rgba(0,74,127,.05)}
.service:hover{border-top-color:var(--red);transform:translateY(-3px);box-shadow:0 14px 32px rgba(0,74,127,.1)}
.service h3{font-size:1.06rem;margin:0 0 9px}
.service p{font-size:.92rem;margin:0}
.loc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:33px}
.loc-card{display:block;background:#fff;border:1px solid var(--line);box-shadow:0 8px 25px rgba(0,74,127,.06);color:inherit;text-decoration:none}
.loc-card:hover{transform:translateY(-3px);box-shadow:0 15px 33px rgba(0,74,127,.12)}
.loc-top{min-height:120px;background:var(--navy);border-bottom:5px solid var(--red);color:#fff;padding:24px 23px 20px}
.loc-top .state{color:#cbd3f1;font-size:.67rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}
.loc-top h3{color:#fff;font-size:1.56rem;margin:7px 0 0}
.loc-body{padding:22px 23px 25px}
.loc-body strong{color:var(--ink)}
.arrow{display:inline-flex;align-items:center;color:var(--ink);font-size:.82rem;font-weight:850;text-transform:uppercase;letter-spacing:.035em;margin-top:10px}
.arrow:after{content:"→";color:var(--red);font-size:1.15rem;margin-left:8px}
.dark-cta{background:var(--navy);border-top:5px solid var(--red);color:#fff;padding:51px 0}
.dark-cta .wrap{display:grid;grid-template-columns:1.5fr auto;align-items:center;gap:34px}
.dark-cta h2{font-size:2.05rem;line-height:1.2;margin:5px 0 9px}
.dark-cta p{color:#d1d8ed;margin:0}
.dark-cta .eyebrow{color:#ff8a8f!important}

.service-category+.service-category{margin-top:72px}
.service-category h2{max-width:800px}
.related-services{margin-top:46px;padding-top:34px;border-top:1px solid var(--line)}
.related-services .services{grid-template-columns:repeat(2,1fr)}
@media(max-width:760px){.related-services .services{grid-template-columns:1fr}}

/* Interior pages */
.page-hero{position:relative;overflow:hidden;background:linear-gradient(120deg,var(--navy-deep),var(--navy));border-bottom:5px solid var(--red);color:#fff;padding:51px 0 55px}
.page-hero:after{content:"";position:absolute;right:-100px;top:-150px;width:390px;height:390px;border:1px solid rgba(255,255,255,.1);border-radius:50%}
.page-hero .wrap{position:relative;z-index:1}
.breadcrumbs{color:#bac5e5;font-size:.76rem;font-weight:750;margin-bottom:13px}
.breadcrumbs a{color:#fff;text-decoration:none}
.page-hero .eyebrow{color:#ff9a9e}
.page-hero h1{color:#fff;font-size:2.75rem;margin:7px 0 13px;max-width:900px}
.page-hero .lead{color:#dbe1f2;margin:0;max-width:920px}
.two-col{display:grid;grid-template-columns:minmax(0,1.62fr) minmax(280px,.66fr);gap:49px;align-items:start}
.content h2{font-size:2.05rem;margin:0 0 16px}
.content h2:not(:first-child){margin-top:42px}
.content h3{color:var(--red);font-size:1.15rem;margin-top:29px}
.content p{color:#45546b}
.sidebar{position:sticky;top:24px}
.contactbox{background:var(--navy);border-top:5px solid var(--red);box-shadow:var(--shadow);color:#fff;padding:28px 26px}
.contactbox h3{color:#fff;font-size:1.6rem;margin:0 0 14px}
.contactbox p{color:#d7dded}
.contactbox a{color:#fff;overflow-wrap:anywhere}
.contactbox a.single-line-email{display:inline-block;max-width:100%;font-size:clamp(.7rem,1.3vw,.84rem);letter-spacing:-.015em;white-space:nowrap;overflow-wrap:normal;word-break:normal}
.contactbox .detail{padding:12px 0;border-bottom:1px solid rgba(255,255,255,.15)}
.contactbox .detail:last-of-type{border-bottom:0}
.contactbox .address{color:#fff}
.pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.pill{background:#edf1f8;border:1px solid #ced6e5;color:var(--navy);font-size:.78rem;font-weight:800;padding:7px 10px}
.checks{display:grid;grid-template-columns:1fr 1fr;gap:9px 24px;list-style:none;padding:0}
.checks li{position:relative;padding-left:22px}
.checks li:before{content:"✓";position:absolute;left:0;color:var(--red);font-weight:900}

/* Arroyo Grande service-path comparison */
.service-paths{margin:0 0 46px}
.service-paths-intro{max-width:720px;margin-bottom:25px}
.service-paths-intro h2{margin:7px 0 10px;color:var(--navy-deep);font-size:clamp(1.75rem,3vw,2.35rem);line-height:1.18}
.service-paths-intro p{margin:0;color:#5a687c}
.service-path-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.service-path-card{position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:370px;padding:31px 29px 28px;background:#fff;border:1px solid var(--line);border-top:6px solid var(--navy);box-shadow:0 12px 30px rgba(0,74,127,.08)}
.service-path-card.attorney-path{border-top-color:var(--red)}
.service-path-card:after{content:"";position:absolute;right:-58px;top:-58px;width:150px;height:150px;border:25px solid rgba(1,99,169,.055);border-radius:50%}
.service-path-card.attorney-path:after{border-color:rgba(239,34,33,.05)}
.path-number{position:relative;z-index:1;color:var(--red);font-size:.76rem;font-weight:850;letter-spacing:.16em}
.lda-path .path-number{color:var(--navy)}
.path-label{position:relative;z-index:1;margin-top:13px;color:#667584;font-size:.72rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}
.service-path-card h3{position:relative;z-index:1;margin:7px 0 13px;color:var(--navy-deep);font-size:1.28rem;line-height:1.25}
.service-path-card p{position:relative;z-index:1;margin:0 0 23px;color:#5a687c}
.path-provider{position:relative;z-index:1;margin-top:auto;padding-top:18px;border-top:1px solid var(--line)}
.path-provider span,.path-provider strong,.path-provider small{display:block}
.path-provider span{margin-bottom:3px;color:var(--red);font-size:.69rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}
.lda-path .path-provider span{color:var(--navy)}
.path-provider strong{color:var(--ink);font-size:.95rem}
.path-provider small{margin-top:3px;color:#6d7884;line-height:1.4}
.service-path-note{margin-top:18px;padding:18px 20px;background:#f7f9fb;border-left:4px solid var(--red);color:#586675;font-size:.92rem}
.service-path-note strong{color:var(--ink)}
.notice{background:#fff6f6;border:1px solid #f1d2d4;border-left:5px solid var(--red);color:#3f4d61;padding:18px 19px;margin:26px 0}
.jurisdiction-note{background:var(--mist);border-left:4px solid var(--red);color:var(--ink)!important;padding:14px 16px;margin:22px 0}
.faq{margin-top:45px}
.faq details{border-top:1px solid var(--line);padding:17px 0}
.faq summary{color:var(--ink);font-weight:800;cursor:pointer}
.faq details p{margin-bottom:0}

/* Footer */
.footer{background:var(--navy-deep);border-top:5px solid var(--red);color:#ccd4e9;padding:51px 0 25px}
.footer-grid{display:grid;grid-template-columns:1.65fr .9fr .9fr 1.1fr;gap:36px}
.footer-logo{width:330px;max-width:100%;height:auto;background:transparent!important;border:0!important;padding:0!important;box-shadow:none!important}
.footer h4{color:#fff;font-size:.78rem;letter-spacing:.09em;text-transform:uppercase;margin:4px 0 14px}
.footer p{margin-top:10px}
.footer a{color:#e7eaf5;text-decoration:none}
.footer a:hover{text-decoration:underline}
.footer .address{color:#ccd4e9}
.disclaimer{border-top:1px solid rgba(255,255,255,.15);color:#aeb8d2;font-size:.75rem;line-height:1.56;margin-top:34px;padding-top:21px}
.statutory-disclosure{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  gap:18px;
  margin:0 0 35px;
  padding:18px 21px;
  border:1px solid rgba(255,255,255,.22);
  border-left:5px solid var(--red);
  background:rgba(255,255,255,.08);
  color:#fff;
}
.statutory-disclosure strong{color:#fff;text-transform:uppercase;letter-spacing:.06em;font-size:.78rem}
.statutory-disclosure span{font-weight:700;line-height:1.5}
.advertising-scope{
  margin:0 0 28px;
  padding:16px 18px;
  border-left:4px solid var(--navy);
  background:#f3f7fa;
  color:#46586a!important;
}
.registration-list{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:24px 0 8px}
.registration-card{padding:21px;border:1px solid var(--line);border-top:4px solid var(--navy);background:#fff}
.registration-card h3{margin:0 0 10px;color:var(--navy-deep)}
.registration-card p{margin:0;line-height:1.72}
.registration-card.publication-hold{border-top-color:var(--red);background:#fff8f7}
.verification-needed{background:#fff8f7;color:#8f1717}
.address{font-style:normal;line-height:1.42;margin:0}
.address .street,.address .locality{display:block}

@media(prefers-reduced-motion:no-preference){
  .cta,.featured-card,.service,.loc-card{transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease,filter .18s ease}
}

@media(max-width:1020px){
  .header-main{grid-template-columns:minmax(290px,1.25fr) 1fr 1fr;gap:22px}
  .header-main .header-detail:nth-of-type(2){display:none}
  .navlinks > a,.nav-dropdown > summary{padding-inline:18px}
  .hero-copy{width:min(650px,70%)}
  .services,.loc-grid{grid-template-columns:1fr 1fr}
  .footer-grid{grid-template-columns:1.3fr 1fr 1fr}
  .footer-grid>div:last-child{grid-column:1/-1}
}

@media(max-width:760px){
  .wrap{width:calc(100% - 32px)}
  .header-main{width:calc(100% - 32px);grid-template-columns:1fr 1fr;min-height:auto;padding:21px 0}
  .brand{grid-column:1/-1;width:min(390px,100%)}
  .header-contact{justify-content:flex-start}
  .navlinks{display:grid;grid-template-columns:repeat(3,1fr)}
  .navlinks > a,.nav-dropdown > summary{min-height:50px;font-size:.76rem;padding:12px 8px}
  .nav-dropdown .locations-dropdown{left:auto;right:0}
  .hero .wrap{min-height:570px;padding:72px 0 150px}
  .hero-copy{width:72%}
  .hero h1{font-size:2.85rem}
  .hero .sub{font-size:1rem}
  .featured-grid{grid-template-columns:1fr;transform:translateY(-68px);margin-bottom:-68px}
  .featured-card{min-height:auto;border-right:0;border-bottom:1px solid var(--line)}
  .featured-card:last-child{border-bottom:0}
  .grid3{grid-template-columns:1fr}
  .two-col,.dark-cta .wrap{grid-template-columns:1fr}
  .sidebar{position:static}
  .footer-grid{grid-template-columns:1fr 1fr}
  .footer-grid>div:last-child{grid-column:auto}
  .registration-list{grid-template-columns:1fr}
}

@media(max-width:520px){
  .header-main{display:block}
  .header-detail{margin-top:18px}
  .header-main .header-detail:nth-of-type(1){display:none}
  .header-contact{margin-top:15px}
  .navlinks{grid-template-columns:1fr 1fr}
  .nav-dropdown .locations-dropdown{left:0;right:auto;min-width:min(285px,calc(100vw - 16px))}
  .hero{background-position:60% center}
  .hero .wrap{min-height:590px;padding:65px 0 155px}
  .hero-copy{width:100%}
  .hero h1{font-size:2.45rem}
  .hero .sub{max-width:88%}
  .hero-actions{display:block}
  .hero-actions .cta{width:100%;margin-top:8px}
  .featured-services{padding-bottom:49px}
  .section{padding:52px 0}
  .section h2{font-size:2rem}
  .services,.loc-grid,.checks,.footer-grid{grid-template-columns:1fr}
  .page-hero{padding:40px 0 44px}
  .page-hero h1{font-size:2.13rem}
  .footer-grid>div:last-child{grid-column:auto}
  .footer-logo{width:290px}
  .statutory-disclosure{grid-template-columns:1fr;gap:8px}
}


/* California-first directory treatment */
.florida-directory-link{margin:26px 0 0;padding:17px 19px;border-left:4px solid var(--red);background:var(--mist);color:var(--ink)}
.florida-directory-link a{font-weight:800}
.florida-exception{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:34px;margin-top:64px;padding:34px;border:1px solid var(--line);border-top:5px solid var(--red);background:var(--mist)}
.florida-exception h2{font-size:1.85rem;margin:6px 0 10px}
.florida-exception p{margin:0;max-width:790px}
@media(max-width:760px){.florida-exception{grid-template-columns:1fr;padding:26px}.florida-exception .cta{justify-self:start}}

/* White-first professional redesign based on the supplied reference */
body{background:#f3f5f7;color:var(--body)}
.site-shell{
  width:min(1240px,calc(100% - 48px));
  min-height:calc(100vh - 48px);
  margin:24px auto;
  background:#fff;
  border-radius:22px 22px 0 0;
  box-shadow:0 20px 56px rgba(25,50,72,.17);
}
.wrap{width:min(1120px,calc(100% - 56px))}
.site-header{background:#fff}
.header-main{
  width:calc(100% - 56px);
  min-height:126px;
  padding:19px 0 17px;
}
.brand{width:min(350px,100%)}
.header-detail,.header-contact{color:var(--ink)}
.header-detail address,.header-detail .header-value{color:var(--muted)}
.nav{background:#fff;padding:0 24px}
.navlinks{
  width:100%;
  min-height:58px;
  border-radius:11px 11px 0 0;
  border-bottom:4px solid var(--red);
  box-shadow:0 9px 22px rgba(0,74,127,.14);
  clip-path:none;
  overflow:visible;
}
.navlinks > a,.nav-dropdown > summary{flex:1;min-width:0;padding:15px 16px;border-bottom:0}
.navlinks > a:first-child{background:var(--navy)}
.navlinks > a:hover,.navlinks > a[aria-current="page"],.nav-dropdown > summary:hover,.nav-dropdown > summary[aria-current="page"],.nav-dropdown[open] > summary{background:var(--navy-deep);box-shadow:inset 0 -4px 0 var(--red)}
.navlinks > a:first-child:hover,.navlinks > a:first-child[aria-current="page"]{background:var(--navy-deep)}

.hero{
  margin:0 24px;
  background:
    linear-gradient(90deg,rgba(0,47,81,.2),rgba(0,47,81,.05)),
    url("hero-community-sunset.webp") center/cover no-repeat;
  border-bottom:5px solid var(--red);
}
.hero:after{display:none}
.hero .wrap{
  min-height:500px;
  display:grid;
  grid-template-columns:minmax(270px,.7fr) minmax(0,1.3fr);
  align-items:center;
  gap:46px;
  padding:56px 0;
}
.hero-menu{display:grid;gap:10px}
.hero-menu a{
  display:flex;
  align-items:center;
  min-height:54px;
  padding:13px 18px;
  background:rgba(0,74,127,.96);
  border-left:5px solid var(--red);
  box-shadow:0 8px 20px rgba(0,32,56,.2);
  color:#fff;
  font-size:.84rem;
  font-weight:800;
  letter-spacing:.025em;
  text-decoration:none;
  text-transform:uppercase;
}
.hero-menu a:hover{background:var(--navy-deep);transform:translateX(3px)}
.hero-copy{
  width:auto;
  padding:39px 41px 40px;
  background:rgba(255,255,255,.95);
  border-top:5px solid var(--red);
  box-shadow:0 18px 40px rgba(0,39,68,.2);
}
.hero .kicker{color:var(--navy)}
.hero h1{color:var(--navy-deep);font-size:3.25rem;font-weight:650;margin-top:9px}
.hero h1:after{margin-top:23px}
.hero .sub{color:#4e5964}
.hero-actions{margin-top:25px}
.hero-actions .cta.light{background:var(--navy);color:#fff}
.cta.red{background:var(--navy);color:#fff;border-bottom:4px solid var(--red)}

.featured-services{background:#fff;padding:58px 0 69px}
.featured-grid{
  transform:none;
  margin-bottom:0;
  border:1px solid var(--line);
  border-top:5px solid var(--navy);
  box-shadow:0 12px 32px rgba(0,74,127,.1);
}
.featured-card{min-height:275px}
.section,.section.soft{background:#fff}
.section.soft{border-top:1px solid #e4ebf0;border-bottom:1px solid #e4ebf0;background:#f7f9fb}
.section h2,.page-hero h1,.content h2{color:var(--navy-deep)}
.grid3{box-shadow:0 10px 28px rgba(0,74,127,.06)}
.panel,.service,.loc-card{background:#fff}
.panel h3,.service h3,.loc-card h3{color:var(--navy-deep)}
.service{border-top-color:var(--navy)}
.loc-top{
  min-height:118px;
  background:#fff;
  border-bottom:1px solid var(--line);
  border-top:5px solid var(--navy);
  color:var(--ink);
}
.loc-top .state{color:var(--muted)}
.loc-top h3{color:var(--navy-deep)}
.dark-cta{background:#f6f8fa;border-top:5px solid var(--red);color:var(--navy-deep)}
.dark-cta h2{color:var(--navy-deep)}
.dark-cta p{color:#556476}
.dark-cta .eyebrow{color:var(--navy)!important}

.jingle-section{
  background:#fff;
  padding:0 0 70px;
}
.jingle-card{
  display:grid;
  grid-template-columns:72px minmax(0,1fr) minmax(300px,.85fr);
  align-items:center;
  gap:24px;
  padding:25px 28px;
  border:1px solid var(--line);
  border-left:5px solid var(--red);
  background:#f7f9fb;
  box-shadow:0 10px 28px rgba(1,99,169,.08);
}
.jingle-mark{
  width:64px;
  height:64px;
  object-fit:contain;
}
.jingle-copy h2{
  margin:4px 0;
  color:var(--navy-deep);
  font-size:1.55rem;
}
.jingle-copy p{
  margin:0;
  color:var(--body);
}
.jingle-player audio{
  display:block;
  width:100%;
  accent-color:var(--navy);
}

.page-hero{
  background:#fff;
  border-top:1px solid #e5ebf0;
  border-bottom:1px solid var(--line);
  color:var(--ink);
  padding:49px 0 52px;
}
.page-hero:after{
  display:block;
  right:3%;
  top:50%;
  width:365px;
  height:365px;
  border:0;
  border-radius:0;
  background:url("by-the-people-mark.png") center/contain no-repeat;
  opacity:.055;
  transform:translateY(-50%);
  pointer-events:none;
}
.breadcrumbs{color:#667584}
.breadcrumbs a{color:var(--navy);text-decoration:none}
.page-hero .eyebrow{color:var(--navy)}
.page-hero h1{color:var(--navy-deep);font-size:2.7rem}
.page-hero h1:after{content:"";display:block;width:55px;height:4px;background:var(--red);margin-top:20px}
.page-hero .lead{color:#566574}
.contactbox{
  background:#fff;
  border:1px solid var(--line);
  border-top:5px solid var(--red);
  color:var(--ink);
  box-shadow:0 13px 34px rgba(0,74,127,.12);
}
.contactbox h3{color:var(--navy-deep)}
.contactbox p,.contactbox .address{color:#52616f}
.contactbox a{color:var(--navy)}
.contactbox .detail{border-bottom:1px solid var(--line)}
.notice{background:#fff8f7}
.dropoff-note{display:inline-block;margin-top:6px;color:var(--muted);font-size:.88rem;font-style:italic}
.pills .pill{background:#f3f7fa;border-color:#d7e4ed}
.florida-directory-link,.florida-exception{background:#f7f9fb}
.footer{margin-top:0;background:var(--navy-deep)}

a:focus-visible,button:focus-visible,summary:focus-visible{
  outline:3px solid #ffba3b;
  outline-offset:3px;
}

@media(prefers-reduced-motion:no-preference){
  .hero-menu a{transition:transform .18s ease,background .18s ease}
}

@media(max-width:1020px){
  .site-shell{width:calc(100% - 24px);margin:12px auto;min-height:calc(100vh - 24px)}
  .header-main{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:17px}
  .header-main .brand{grid-column:1/-1}
  .header-main .header-detail:nth-of-type(2){display:flex}
  .nav{padding:0 14px}
  .hero{margin:0 14px}
  .hero .wrap{grid-template-columns:minmax(235px,.65fr) minmax(0,1.35fr);gap:28px}
  .hero-copy{padding:32px}
  .hero h1{font-size:2.75rem}
}

@media(max-width:760px){
  .site-shell{width:100%;margin:0;border-radius:0;box-shadow:none}
  .wrap{width:calc(100% - 32px)}
  .header-main{width:calc(100% - 32px)}
  .nav{padding:0}
  .navlinks{border-radius:0}
  .hero{margin:0}
  .hero .wrap{min-height:auto;grid-template-columns:1fr;gap:18px;padding:42px 0}
  .hero-copy{order:1;width:100%;padding:30px}
  .hero-menu{order:2;grid-template-columns:1fr 1fr}
  .hero-menu a:last-child{grid-column:1/-1}
  .hero h1{font-size:2.6rem}
  .featured-services{padding-top:43px}
  .featured-grid{transform:none;margin-bottom:0}
  .page-hero{padding:42px 0 45px}
  .page-hero h1{font-size:2.3rem}
  .page-hero:after{right:-55px;width:280px;height:280px;opacity:.045}
  .jingle-card{grid-template-columns:60px 1fr}
  .jingle-mark{width:54px;height:54px}
  .jingle-player{grid-column:1/-1}
  .service-path-grid{grid-template-columns:1fr}
  .service-path-card{min-height:0}
}

@media(max-width:520px){
  .header-main .header-detail:nth-of-type(1),
  .header-main .header-detail:nth-of-type(2){display:flex}
  .hero .wrap{min-height:auto;padding:30px 0}
  .hero-copy{padding:25px 22px}
  .hero h1{font-size:2.18rem}
  .hero-menu{grid-template-columns:1fr}
  .hero-menu a:last-child{grid-column:auto}
  .page-hero{padding:36px 0 39px}
  .page-hero h1{font-size:2rem}
  .page-hero:after{right:-85px;width:245px;height:245px;opacity:.04}
  .jingle-card{grid-template-columns:1fr;padding:24px 20px;text-align:center}
  .jingle-mark{margin:auto}
  .jingle-player{grid-column:auto}
}
