/* Premier Services at Home LLC
   Layout: calm white and pale-blue bands. Section edges end in a downward point,
   taken from the chevrons in the logo. Colors are sampled from the logo files. */

:root{
  --blue:#035FAD;          /* wordmark blue */
  --blue-hover:#074B88;
  --indigo:#2B3990;        /* emblem gradient, dark end */
  --sky:#00AEEF;           /* emblem gradient, light end (decoration only) */
  --chev:#52ACE8;          /* chevron blue from the logo */
  --navy:#0B2545;          /* headings and footer */
  --ink:#1B2B40;           /* body text */
  --muted:#54657C;
  --tint:#EDF4FC;
  --tint-2:#DCEAF9;
  --line:#D5E1F0;
  --white:#FFFFFF;
  --ok:#1C8757;
  --grad:linear-gradient(90deg,var(--indigo),var(--blue) 55%,var(--sky));
  --font-display:'Newsreader',Georgia,'Times New Roman',serif;
  --font-body:'Figtree',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
  --font-brand:'Barlow Condensed','Arial Narrow',Arial,sans-serif;
  --wrap:1180px;
  --radius:16px;
  --ease:cubic-bezier(.2,.7,.2,1);
  --header-h:80px;
}

*,*::before,*::after{box-sizing:border-box;}
[hidden]{display:none!important;}
html{scroll-behavior:smooth;scroll-padding-top:96px;-webkit-text-size-adjust:100%;}
body{margin:0;font-family:var(--font-body);font-size:1.0625rem;line-height:1.65;color:var(--ink);background:var(--white);-webkit-font-smoothing:antialiased;overflow-x:hidden;}
img,svg{display:block;max-width:100%;}
a{color:var(--blue);}
h1,h2,h3,h4{font-family:var(--font-display);font-weight:500;color:var(--navy);line-height:1.1;letter-spacing:-.012em;margin:0;text-wrap:balance;}
h1 em,h2 em{font-style:italic;color:var(--blue);}
p{margin:0;}
ul,ol{margin:0;padding:0;list-style:none;}
:focus-visible{outline:3px solid var(--blue);outline-offset:3px;border-radius:4px;}
.wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:clamp(18px,5vw,48px);}
.skip{position:absolute;left:16px;top:-60px;background:var(--navy);color:#fff;padding:.7em 1.1em;border-radius:8px;z-index:300;text-decoration:none;font-weight:700;}
.skip:focus{top:12px;}

.eyebrow{display:inline-flex;align-items:center;gap:.7em;font-size:.8rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--blue);}
.eyebrow::before{content:"";width:28px;height:2px;background:var(--grad);border-radius:2px;}

.icon{width:1.15em;height:1.15em;flex:none;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;}

@media (max-width:480px){
  .brand-1{font-size:1.4rem;}
  .brand-2{font-size:.6rem;letter-spacing:.04em;white-space:nowrap;}
  .brand img{height:38px;}
  .header.is-scrolled .brand img{height:34px;}
  .nav-toggle{padding:.5em .9em;}
}

/* ---------- Buttons ---------- */
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.6em;font:inherit;font-weight:700;font-size:1rem;line-height:1.2;padding:.95em 1.6em;border-radius:999px;border:2px solid transparent;text-decoration:none;cursor:pointer;overflow:hidden;isolation:isolate;transition:color .25s,border-color .25s,transform .25s var(--ease),box-shadow .25s;}
.btn .icon{transition:transform .3s var(--ease);}
.btn:hover .icon-arrow{transform:translateX(4px);}
.btn-primary{background:var(--blue);color:#fff;box-shadow:0 12px 26px -14px rgba(3,95,173,.8);}
.btn-primary::before{content:"";position:absolute;inset:0;background:var(--grad);opacity:0;transition:opacity .3s;z-index:-1;}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 16px 30px -14px rgba(3,95,173,.9);}
.btn-primary:hover::before{opacity:1;}
.btn-outline{background:#fff;color:var(--navy);border-color:var(--line);}
.btn-outline:hover{border-color:var(--blue);color:var(--blue);transform:translateY(-2px);}
.btn-light{background:#fff;color:var(--navy);}
.btn-light:hover{transform:translateY(-2px);box-shadow:0 14px 28px -14px rgba(0,0,0,.5);}
.btn-ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.55);}
.btn-ghost:hover{background:rgba(255,255,255,.12);border-color:#fff;transform:translateY(-2px);}
.btn[disabled]{opacity:.65;cursor:progress;transform:none;}

/* ---------- Progress bar, top bar, header ---------- */
.progress{position:fixed;top:0;left:0;right:0;height:3px;background:var(--grad);transform:scaleX(0);transform-origin:left;z-index:200;pointer-events:none;}
.topbar{background:var(--navy);color:#fff;font-size:.875rem;}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-block:9px;}
.status{display:inline-flex;align-items:center;gap:.6em;font-weight:600;}
.dot{width:9px;height:9px;border-radius:50%;background:var(--ok);flex:none;position:relative;}
.dot::after{content:"";position:absolute;inset:-4px;border-radius:50%;border:2px solid var(--ok);opacity:0;animation:ping 2.4s var(--ease) infinite;}
.dot.is-off{background:var(--muted);}
.dot.is-off::after{display:none;}
@keyframes ping{0%{transform:scale(.5);opacity:.7}80%,100%{transform:scale(1.5);opacity:0}}
.topbar-area{opacity:.85;}
@media (max-width:860px){.topbar-area{display:none;}}

.header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.94);backdrop-filter:blur(14px) saturate(160%);-webkit-backdrop-filter:blur(14px) saturate(160%);border-bottom:1px solid var(--line);transition:box-shadow .3s;view-transition-name:site-header;}
.header.is-scrolled{box-shadow:0 14px 30px -26px rgba(11,37,69,.7);}
.header .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:var(--header-h);transition:min-height .3s var(--ease);}
.header.is-scrolled .wrap{min-height:64px;}
.brand{display:flex;align-items:center;gap:.75em;text-decoration:none;color:var(--blue);}
.brand img{height:46px;width:auto;transition:height .3s var(--ease),transform .5s var(--ease);}
.header.is-scrolled .brand img{height:38px;}
.brand:hover img{transform:rotate(-3deg) scale(1.04);}
.brand-text{display:flex;flex-direction:column;font-family:var(--font-brand);text-transform:uppercase;line-height:1;}
.brand-1{font-size:1.7rem;font-weight:500;letter-spacing:.05em;color:var(--blue);}
.brand-2{font-size:.8rem;font-weight:500;letter-spacing:.11em;color:var(--blue);margin-top:3px;}
.nav{display:flex;align-items:center;gap:clamp(14px,2.4vw,32px);}
.nav-link{position:relative;text-decoration:none;color:var(--ink);font-weight:600;font-size:.99rem;padding-block:8px;}
.nav-link::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:2px;background:var(--grad);border-radius:2px;transform:scaleX(0);transform-origin:right;transition:transform .35s var(--ease);}
.nav-link:hover{color:var(--blue);}
.nav-link:hover::after,.nav-link[aria-current="page"]::after{transform:scaleX(1);transform-origin:left;}
.nav-link[aria-current="page"]{color:var(--blue);}
.nav-toggle{display:none;align-items:center;gap:.55em;font:inherit;font-weight:700;color:var(--navy);background:#fff;border:2px solid var(--line);border-radius:999px;padding:.55em 1.05em;cursor:pointer;}
.burger{width:18px;height:12px;position:relative;display:block;}
.burger i{position:absolute;left:0;right:0;height:2px;background:currentColor;border-radius:2px;transition:transform .3s var(--ease),opacity .2s,top .3s var(--ease);}
.burger i:nth-child(1){top:0}.burger i:nth-child(2){top:5px}.burger i:nth-child(3){top:10px}
.nav-toggle[aria-expanded="true"] .burger i:nth-child(1){top:5px;transform:rotate(45deg);}
.nav-toggle[aria-expanded="true"] .burger i:nth-child(2){opacity:0;}
.nav-toggle[aria-expanded="true"] .burger i:nth-child(3){top:5px;transform:rotate(-45deg);}
@media (max-width:960px){
  .nav-toggle{display:inline-flex;}
  .nav{position:absolute;left:0;right:0;top:100%;flex-direction:column;align-items:stretch;gap:0;background:#fff;border-bottom:1px solid var(--line);padding:6px clamp(18px,5vw,48px) 22px;box-shadow:0 22px 34px -26px rgba(11,37,69,.6);visibility:hidden;opacity:0;transform:translateY(-10px);transition:opacity .3s,transform .35s var(--ease),visibility 0s .35s;}
  .nav.open{visibility:visible;opacity:1;transform:none;transition:opacity .3s,transform .35s var(--ease),visibility 0s;}
  .nav-link{padding-block:15px;border-bottom:1px solid var(--line);opacity:0;transform:translateY(8px);transition:opacity .4s,transform .4s var(--ease);}
  .nav.open .nav-link{opacity:1;transform:none;}
  .nav.open .nav-link:nth-child(2){transition-delay:.05s}.nav.open .nav-link:nth-child(3){transition-delay:.1s}.nav.open .nav-link:nth-child(4){transition-delay:.15s}
  .nav-link::after{display:none;}
  .nav .btn{margin-top:16px;}
}

/* ---------- Pointed section edge (the logo's chevron) ---------- */
.point{position:relative;z-index:2;}
.point::after{content:"";position:absolute;top:calc(100% - 1px);left:0;right:0;height:clamp(22px,4vw,46px);background:inherit;clip-path:polygon(0 0,100% 0,50% 100%);pointer-events:none;}

/* ---------- Sections ---------- */
.band{padding-block:clamp(64px,9vw,112px);}
.band-tint{background:var(--tint);}
.band-navy{background:var(--navy);color:rgba(255,255,255,.88);}
.band-navy h2,.band-navy h3{color:#fff;}
.band-navy h2 em{color:#8CCBFA;}
.band-navy .eyebrow{color:#8CCBFA;}
.band-navy .eyebrow::before{background:#8CCBFA;}
.sheet{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(28px,6vw,88px);align-items:start;}
.sheet-head{display:flex;flex-direction:column;gap:16px;}
.sheet-head h2{font-size:clamp(1.9rem,3.5vw,2.7rem);}
.sheet-head p{color:var(--muted);max-width:44ch;}
.band-navy .sheet-head p{color:rgba(255,255,255,.75);}
@media (min-width:881px){.stick{position:sticky;top:112px;}}
@media (max-width:880px){.sheet{grid-template-columns:minmax(0,1fr);}}
.lede{font-family:var(--font-display);font-size:clamp(1.25rem,2.2vw,1.5rem);line-height:1.45;color:var(--navy);}
.prose{display:flex;flex-direction:column;gap:18px;max-width:66ch;}

/* ---------- Home hero ---------- */
.hero{position:relative;background:var(--tint);padding-block:clamp(44px,6vw,84px) clamp(70px,9vw,120px);overflow:visible;}
.hero-bg{position:absolute;inset:0;overflow:hidden;pointer-events:none;}
.chev{position:absolute;fill:var(--chev);opacity:.35;}
.chev-a{width:min(980px,90vw);right:-14%;top:-9%;}
.chev-b{width:min(640px,60vw);left:-12%;bottom:-6%;opacity:.2;transform:scaleY(-1);}
.hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(28px,5vw,72px);align-items:center;}
.hero-copy{display:flex;flex-direction:column;gap:22px;}
.hero h1{font-size:clamp(2.4rem,5.4vw,4rem);}
.hero-lead{font-size:1.15rem;max-width:54ch;}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:4px;}
.hero-tag{font-family:var(--font-brand);text-transform:uppercase;letter-spacing:.32em;font-size:.9rem;font-weight:500;color:var(--blue);}
.chips{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:6px;}
.chips-label{font-size:.82rem;font-weight:700;color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-right:4px;}
.chip{background:#fff;border:1px solid var(--line);border-radius:999px;padding:.32em .9em;font-weight:600;font-size:.92rem;color:var(--navy);transition:border-color .25s,transform .25s var(--ease);}
.chip:hover{border-color:var(--blue);transform:translateY(-2px);}
@media (max-width:880px){.hero-grid{grid-template-columns:minmax(0,1fr);}}

.hero-art{position:relative;width:min(100%,460px);justify-self:center;aspect-ratio:1/1.02;}
.hero-art svg.hex{position:absolute;inset:0;width:100%;height:100%;overflow:visible;}
.hex path{fill:none;stroke:var(--chev);stroke-width:2.5;stroke-linejoin:round;}
.hex .hex-2{stroke:var(--blue);stroke-width:1.5;opacity:.5;}
.js .hex path{stroke-dasharray:1200;stroke-dashoffset:1200;}
.js .is-in .hex path{animation:draw 2.2s var(--ease) .2s forwards;}
.hex-fill{position:absolute;inset:12%;border-radius:50%;background:radial-gradient(circle,#fff 0%,rgba(255,255,255,.0) 70%);}
.hero-art .emblem{position:absolute;left:50%;top:47%;width:64%;transform:translate(-50%,-50%);}
.emblem img{width:100%;height:auto;animation:float 7s ease-in-out infinite;}
@keyframes draw{to{stroke-dashoffset:0}}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.hero-art .pill{position:absolute;left:50%;bottom:0;transform:translateX(-50%);background:#fff;border:1px solid var(--line);border-radius:999px;padding:.7em 1.2em;box-shadow:0 18px 34px -22px rgba(11,37,69,.7);display:flex;align-items:center;gap:.7em;font-weight:700;font-size:.95rem;color:var(--navy);white-space:nowrap;max-width:100%;}
@media (max-width:480px){.hero-art .pill{white-space:normal;text-align:left;width:92%;}}

/* ---------- Inner page hero ---------- */
.page-hero{position:relative;background:var(--tint);padding-block:clamp(40px,6vw,76px) clamp(58px,8vw,104px);}
.page-hero .hero-bg .chev-a{right:4%;top:20%;width:min(500px,44vw);opacity:.45;}
@media (max-width:760px){.page-hero .hero-bg .chev-a{right:-30%;top:6%;width:90vw;opacity:.3;}}
.page-hero .wrap{position:relative;display:flex;flex-direction:column;gap:16px;}
.crumbs{font-size:.88rem;color:var(--muted);}
.crumbs a{color:var(--muted);text-decoration:none;}
.crumbs a:hover{color:var(--blue);text-decoration:underline;}
.page-hero h1{font-size:clamp(2.2rem,4.8vw,3.5rem);max-width:20ch;}
.page-hero p.lead{font-size:1.15rem;max-width:56ch;}

/* ---------- Facts strip ---------- */
.facts{border-bottom:1px solid var(--line);background:#fff;padding-top:clamp(26px,4.5vw,54px);}
.facts ul{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));}
.facts li{padding:24px 18px 24px 0;display:flex;flex-direction:column;gap:2px;}
.facts li+li{padding-left:24px;border-left:1px solid var(--line);}
.facts strong{font-family:var(--font-display);font-size:clamp(1.9rem,3.4vw,2.6rem);font-weight:500;color:var(--navy);line-height:1.1;font-variant-numeric:tabular-nums;}
.facts span{font-size:.93rem;color:var(--muted);}
@media (max-width:820px){
  .facts ul{grid-template-columns:repeat(2,minmax(0,1fr));}
  .facts li{padding:18px 14px 18px 0;}
  .facts li+li{padding-left:0;border-left:0;}
  .facts li:nth-child(even){padding-left:18px;border-left:1px solid var(--line);}
  .facts li:nth-child(n+3){border-top:1px solid var(--line);}
}

/* ---------- Service rows (home) ---------- */
.rows{border-top:2px solid var(--navy);}
.row{position:relative;display:grid;grid-template-columns:minmax(0,2.4fr) minmax(0,4fr) 44px;align-items:center;gap:6px 28px;padding:28px 18px;border-bottom:1px solid var(--line);text-decoration:none;color:var(--ink);overflow:hidden;isolation:isolate;}
.row::before{content:"";position:absolute;inset:0;background:var(--tint);transform:scaleX(0);transform-origin:left;transition:transform .55s var(--ease);z-index:-1;}
.row:hover::before,.row:focus-visible::before{transform:scaleX(1);}
.row-t{font-family:var(--font-display);font-size:clamp(1.4rem,2.4vw,1.85rem);color:var(--navy);line-height:1.15;transition:transform .45s var(--ease),color .3s;}
.row:hover .row-t{transform:translateX(8px);color:var(--blue);}
.row-d{color:var(--muted);}
.row-go{width:44px;height:44px;border-radius:50%;border:1.5px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--blue);background:#fff;transition:background .3s,color .3s,border-color .3s,transform .45s var(--ease);}
.row:hover .row-go{background:var(--blue);color:#fff;border-color:var(--blue);transform:translateX(-4px) rotate(-45deg);}
@media (max-width:700px){
  .row{grid-template-columns:minmax(0,1fr) 44px;padding-inline:8px;}
  .row-d{grid-column:1;grid-row:2;}
  .row-go{grid-column:2;grid-row:1 / span 2;}
}

/* ---------- Insurance ---------- */
.ins{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-top:1px solid rgba(255,255,255,.2);}
.ins li{display:flex;align-items:center;gap:16px;padding:26px 18px 26px 0;border-bottom:1px solid rgba(255,255,255,.2);font-family:var(--font-display);font-size:clamp(1.2rem,2vw,1.5rem);line-height:1.2;color:#fff;transition:padding .4s var(--ease),color .3s;}
.ins li:nth-child(even){padding-left:22px;border-left:1px solid rgba(255,255,255,.2);}
.ins li:hover{color:#8CCBFA;}
.ins .tick{width:34px;height:34px;border-radius:50%;background:rgba(140,203,250,.16);color:#8CCBFA;display:flex;align-items:center;justify-content:center;flex:none;}
.ins .tick svg{width:18px;height:18px;}
.js .ins .tick svg{stroke-dasharray:30;stroke-dashoffset:30;}
.js .ins.is-in .tick svg{animation:draw-s .8s var(--ease) .3s forwards;}
@keyframes draw-s{to{stroke-dashoffset:0}}
.ins small{display:block;font-family:var(--font-body);font-size:.85rem;color:rgba(255,255,255,.65);margin-top:2px;}
.fine{font-size:.92rem;color:rgba(255,255,255,.72);margin-top:22px;max-width:60ch;}
.fine a{color:#fff;}
@media (max-width:640px){
  .ins{grid-template-columns:minmax(0,1fr);}
  .ins li:nth-child(even){padding-left:0;border-left:0;}
}
.ins-light{border-top-color:var(--line);}
.ins-light li{color:var(--navy);border-bottom-color:var(--line);}
.ins-light li:nth-child(even){border-left-color:var(--line);}
.ins-light li:hover{color:var(--blue);}
.ins-light .tick{background:var(--tint-2);color:var(--blue);}

/* ---------- Counties ---------- */
.counties{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:2px solid var(--navy);}
.counties li{position:relative;padding:26px 24px 26px 0;border-bottom:1px solid var(--line);}
.counties li:nth-child(even){padding-left:24px;border-left:1px solid var(--line);}
.counties h3{font-size:1.5rem;margin-bottom:6px;display:inline-block;background:linear-gradient(var(--blue),var(--blue)) 0 100%/0 2px no-repeat;transition:background-size .5s var(--ease);padding-bottom:2px;}
.counties li:hover h3{background-size:100% 2px;}
.counties p{color:var(--muted);}
@media (max-width:620px){
  .counties{grid-template-columns:minmax(0,1fr);}
  .counties li:nth-child(even){padding-left:0;border-left:0;}
}
.area-chips{display:flex;flex-wrap:wrap;gap:10px;}
.area-chips .chip{font-size:1.02rem;padding:.55em 1.2em;}

/* ---------- Call to action ---------- */
.cta{position:relative;background:linear-gradient(115deg,var(--indigo),var(--blue) 58%,#0877C9);color:#fff;padding-block:clamp(60px,8vw,96px);overflow:hidden;}
.cta .chev{fill:#fff;opacity:.09;width:min(900px,95vw);right:-10%;top:-38%;}
.cta .wrap{position:relative;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:28px 48px;}
.cta h2{color:#fff;font-size:clamp(1.9rem,3.8vw,2.9rem);max-width:18ch;}
.cta h2 em{color:#BFE3FF;}
.cta p{margin-top:12px;color:rgba(255,255,255,.88);max-width:46ch;}
.cta-actions{display:flex;flex-wrap:wrap;gap:12px;}

/* ---------- Services explorer ---------- */
.explorer{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:start;}
.tablist{display:none;flex-direction:column;gap:6px;position:sticky;top:110px;}
.js .tablist{display:flex;}
.tab{position:relative;text-align:left;font:inherit;background:transparent;border:0;border-radius:12px;padding:16px 18px 16px 22px;cursor:pointer;color:var(--ink);transition:background .3s,color .3s,transform .3s var(--ease);overflow:hidden;}
.tab::before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:4px;border-radius:4px;background:var(--grad);transform:scaleY(0);transition:transform .4s var(--ease);}
.tab strong{display:block;font-family:var(--font-display);font-weight:500;font-size:1.28rem;color:var(--navy);line-height:1.2;}
.tab span{display:block;font-size:.88rem;color:var(--muted);margin-top:2px;}
.tab:hover{background:var(--tint);transform:translateX(3px);}
.tab[aria-selected="true"]{background:var(--tint);}
.tab[aria-selected="true"]::before{transform:scaleY(1);}
.tab[aria-selected="true"] strong{color:var(--blue);}
.panels{min-width:0;}
.panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:clamp(24px,4vw,44px);box-shadow:0 30px 60px -44px rgba(11,37,69,.55);scroll-margin-top:110px;}
.panel+.panel{margin-top:24px;}
.js .panel+.panel{margin-top:0;}
.js .panel:not([hidden]){animation:panel-in .55s var(--ease);}
@keyframes panel-in{from{opacity:0;transform:translateX(22px)}to{opacity:1;transform:none}}
.panel h3{font-size:clamp(1.8rem,3.2vw,2.5rem);}
.panel .p-lead{margin-top:14px;font-size:1.1rem;max-width:58ch;}
.panel-cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px 40px;margin-top:30px;padding-top:26px;border-top:1px solid var(--line);}
.panel h4{font-family:var(--font-body);font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:14px;}
.checks{display:flex;flex-direction:column;gap:11px;}
.checks li{display:flex;gap:12px;align-items:flex-start;}
.checks .icon{color:var(--blue);margin-top:.28em;flex:none;}
.js .panel:not([hidden]) .checks li{animation:item-in .5s var(--ease) both;}
.js .panel:not([hidden]) .checks li:nth-child(1){animation-delay:.12s}.js .panel:not([hidden]) .checks li:nth-child(2){animation-delay:.18s}.js .panel:not([hidden]) .checks li:nth-child(3){animation-delay:.24s}.js .panel:not([hidden]) .checks li:nth-child(4){animation-delay:.3s}.js .panel:not([hidden]) .checks li:nth-child(5){animation-delay:.36s}
@keyframes item-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.who{background:var(--tint);border-radius:12px;padding:18px 20px;}
.who p{color:var(--ink);}
.panel-cta{margin-top:28px;display:flex;flex-wrap:wrap;gap:12px;}
@media (max-width:900px){
  .explorer{grid-template-columns:minmax(0,1fr);}
  .tablist{position:static;flex-direction:row;overflow-x:auto;gap:8px;padding-bottom:8px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;}
  .tab{flex:none;scroll-snap-align:start;border:1.5px solid var(--line);padding:12px 16px;}
  .tab span{display:none;}
  .tab::before{display:none;}
  .tab[aria-selected="true"]{background:var(--blue);border-color:var(--blue);}
  .tab[aria-selected="true"] strong{color:#fff;}
  .tab:hover{transform:none;}
  .panel-cols{grid-template-columns:minmax(0,1fr);}
}

/* ---------- Steps ---------- */
.steps{position:relative;display:flex;flex-direction:column;gap:34px;padding-left:76px;--p:0;}
.steps::before,.steps::after{content:"";position:absolute;left:24px;top:24px;bottom:24px;width:3px;border-radius:3px;}
.steps::before{background:var(--line);}
.steps::after{background:var(--grad);transform-origin:top;transform:scaleY(var(--p));}
.step{position:relative;}
.step .num{position:absolute;left:-76px;top:0;width:51px;height:51px;border-radius:50%;background:#fff;border:2px solid var(--line);color:var(--muted);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:1.35rem;transition:background .4s,color .4s,border-color .4s,transform .5s var(--ease);z-index:1;}
.step.on .num{background:var(--blue);border-color:var(--blue);color:#fff;transform:scale(1.08);}
.step h3{font-size:1.5rem;padding-top:8px;}
.step p{margin-top:6px;color:var(--muted);max-width:56ch;}
@media (max-width:520px){.steps{padding-left:62px;}.step .num{left:-62px;width:44px;height:44px;font-size:1.15rem;}.steps::before,.steps::after{left:20px;}}

/* ---------- About ---------- */
.values{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;}
.value{position:relative;padding-top:20px;}
.value::before{content:"";position:absolute;left:0;top:0;height:3px;width:100%;background:var(--grad);transform:scaleX(0);transform-origin:left;transition:transform 1s var(--ease) .2s;border-radius:3px;}
.value.is-in::before{transform:scaleX(1);}
.value h3{font-size:1.5rem;}
.value p{margin-top:8px;color:var(--muted);font-size:.98rem;}
@media (max-width:860px){.values{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:480px){.values{grid-template-columns:minmax(0,1fr);}}
.accred{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;}
.acc{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px;display:flex;flex-direction:column;gap:6px;transition:transform .4s var(--ease),box-shadow .4s,border-color .3s;}
.acc:hover{transform:translateY(-5px);box-shadow:0 26px 44px -30px rgba(11,37,69,.6);border-color:var(--chev);}
.acc b{font-family:var(--font-display);font-weight:500;font-size:2rem;color:var(--blue);line-height:1;}
.acc span{color:var(--muted);font-size:.95rem;}
@media (max-width:560px){.accred{grid-template-columns:minmax(0,1fr);}}
.owner{display:flex;align-items:center;gap:18px;padding-top:26px;border-top:1px solid var(--line);margin-top:6px;}
.owner-mark{width:68px;height:68px;border-radius:50%;background:linear-gradient(135deg,var(--indigo),var(--sky));color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:1.6rem;flex:none;}
.owner-name{font-family:var(--font-display);font-size:1.45rem;color:var(--navy);line-height:1.2;}
.owner-role{color:var(--muted);font-size:.97rem;}
.logo-showcase{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px;display:flex;justify-content:center;}
.logo-showcase img{width:min(100%,340px);height:auto;}

/* ---------- Contact ---------- */
.contact-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(28px,5vw,72px);align-items:start;}
@media (max-width:900px){.contact-grid{grid-template-columns:minmax(0,1fr);}}
.contact-list{display:flex;flex-direction:column;gap:20px;}
.contact-list li{display:flex;gap:14px;align-items:flex-start;}
.ci{width:44px;height:44px;border-radius:12px;background:var(--tint-2);color:var(--blue);display:flex;align-items:center;justify-content:center;flex:none;transition:background .3s,color .3s,transform .4s var(--ease);}
.contact-list li:hover .ci{background:var(--blue);color:#fff;transform:rotate(-6deg);}
.lbl{display:block;font-size:.76rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);}
.contact-list a{color:var(--navy);font-weight:700;text-decoration:none;font-size:1.15rem;overflow-wrap:anywhere;}
.contact-list a:hover{color:var(--blue);text-decoration:underline;}
.contact-list address{font-style:normal;color:var(--navy);font-weight:600;}
.contact-list .sub{display:block;font-size:.92rem;color:var(--muted);font-weight:500;}
.hours-card{margin-top:30px;background:var(--tint);border-radius:var(--radius);padding:24px;}
.hours-card h2{font-family:var(--font-body);font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:14px;}
.open-now{display:flex;align-items:flex-start;gap:.7em;font-weight:700;color:var(--navy);line-height:1.35;margin-bottom:12px;}
.open-now .dot{margin-top:.5em;}
.hours{display:flex;flex-direction:column;font-variant-numeric:tabular-nums;}
.hours li{display:flex;justify-content:space-between;gap:16px;padding-block:8px;border-top:1px solid var(--line);}
.hours li span:last-child{color:var(--muted);}
.hours li.today{font-weight:700;}
.hours li.today span:last-child{color:var(--navy);}
.emergency{margin-top:16px;font-size:.95rem;color:var(--muted);}
.emergency strong{color:var(--navy);}

.form-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:clamp(24px,3.6vw,40px);box-shadow:0 34px 60px -46px rgba(11,37,69,.6);}
.form-card h2{font-size:clamp(1.6rem,2.6vw,2rem);}
.form-card .sub{color:var(--muted);margin:6px 0 24px;}
.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
.field{display:flex;flex-direction:column;gap:6px;min-width:0;}
.field.full{grid-column:1 / -1;}
.field label{font-weight:700;font-size:.93rem;color:var(--navy);}
.field label i{font-style:normal;color:var(--muted);font-weight:500;}
.field input,.field select,.field textarea{font:inherit;color:var(--ink);background:#fff;border:1.5px solid var(--line);border-radius:12px;padding:.78em .95em;width:100%;min-width:0;transition:border-color .25s,box-shadow .25s,background .25s;}
.field textarea{resize:vertical;min-height:120px;}
.field input:hover,.field select:hover,.field textarea:hover{border-color:var(--chev);}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 4px rgba(3,95,173,.16);}
.field input:user-invalid{border-color:#B3261E;}
.reveal-field{animation:field-in .45s var(--ease);}
@keyframes field-in{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
.privacy{grid-column:1 / -1;font-size:.92rem;color:var(--muted);background:var(--tint);border-radius:12px;padding:13px 15px;}
.form-actions{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:center;gap:14px;}
.form-msg{font-weight:600;color:var(--navy);}
.form-msg.err{color:#A4262C;}
.hp{position:absolute;left:-9999px;}
.form-done{display:flex;flex-direction:column;gap:12px;align-items:flex-start;animation:panel-in .6s var(--ease);}
.form-done svg{width:72px;height:72px;}
.form-done circle{fill:none;stroke:var(--tint-2);stroke-width:4;}
.form-done path{fill:none;stroke:var(--blue);stroke-width:5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:60;stroke-dashoffset:60;animation:draw-s .7s var(--ease) .25s forwards;}
@media (max-width:620px){.fields{grid-template-columns:minmax(0,1fr);}}

/* ---------- Footer ---------- */
.footer{position:relative;background:var(--navy);color:rgba(255,255,255,.82);padding-block:64px 28px;font-size:.98rem;}
.footer a{color:#fff;text-decoration:none;}
.footer a:hover{text-decoration:underline;}
.footer-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,3fr) minmax(0,4fr) minmax(0,3fr);gap:36px;}
.footer h4{font-family:var(--font-body);font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.58);margin:0 0 14px;}
.footer-logo{display:flex;align-items:center;gap:.7em;margin-bottom:14px;}
.footer-logo img{height:44px;width:auto;filter:brightness(0) invert(1);opacity:.95;}
.footer-logo .brand-1,.footer-logo .brand-2{color:#fff;}
.footer-tag{font-family:var(--font-brand);text-transform:uppercase;letter-spacing:.2em;font-size:.82rem;color:#8CCBFA;margin-top:14px;}
.footer ul{display:flex;flex-direction:column;gap:9px;}
.footer-bottom{margin-top:44px;padding-top:20px;border-top:1px solid rgba(255,255,255,.18);display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 24px;font-size:.88rem;color:rgba(255,255,255,.66);}
@media (max-width:980px){.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:560px){.footer-grid{grid-template-columns:minmax(0,1fr);gap:28px;}}

/* ---------- Thank you / 404 ---------- */
.center-page{min-height:60vh;display:flex;align-items:center;background:var(--tint);padding-block:80px;}
.center-page .wrap{display:flex;flex-direction:column;gap:18px;align-items:flex-start;}
.center-page h1{font-size:clamp(2.2rem,5vw,3.4rem);}
.center-page p{max-width:52ch;font-size:1.1rem;}

/* ---------- Motion ---------- */
.js [data-reveal]{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease),transform .9s var(--ease);transition-delay:var(--d,0ms);}
.js [data-reveal="left"]{transform:translateX(-34px);}
.js [data-reveal="right"]{transform:translateX(34px);}
.js [data-reveal="scale"]{transform:scale(.94);}
.js [data-reveal="fade"]{transform:none;}
.js [data-reveal].is-in{opacity:1;transform:none;}

.js body{transition:opacity .28s ease,transform .28s ease;}
.js body.is-leaving{opacity:0;transform:translateY(-6px);}

@view-transition{navigation:auto;}
::view-transition-old(root){animation:vt-out .28s ease both;}
::view-transition-new(root){animation:vt-in .55s var(--ease) both;}
::view-transition-group(site-header){animation-duration:0s;}
@keyframes vt-out{to{opacity:0;transform:translateY(-8px)}}
@keyframes vt-in{from{opacity:0;transform:translateY(16px)}}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;transition-delay:0s!important;}
  .js [data-reveal]{opacity:1;transform:none;}
  .js .hex path,.js .ins .tick svg{stroke-dashoffset:0;}
  @view-transition{navigation:none;}
}
