
:root{--ink:#0B1524;--blue:#2878FF;--blue-dark:#165ED8;--aqua:#5DBCEB;--sky:#DDEEFF;--soft:#F4F9FF;--white:#fff;--text:#344054;--muted:#667085;--line:#DCE5EF;--shadow:0 18px 50px rgba(15,45,80,.10);--radius:24px;--max:1180px;--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#fff;line-height:1.65}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.container{width:min(var(--max),calc(100% - 40px));margin-inline:auto}.topbar{background:#0e4772;color:#fff;font-size:.86rem}.topbar .container{display:flex;justify-content:space-between;gap:20px;padding:8px 0}.header{position:sticky;top:0;background:rgba(255,255,255,.94);backdrop-filter:blur(16px);z-index:50;border-bottom:1px solid rgba(220,229,239,.9)}.nav{display:flex;align-items:center;min-height:76px;gap:34px}.logo img{width:260px;height:auto}.navlinks{display:flex;align-items:center;gap:24px;margin-left:auto;font-size:.92rem;font-weight:500}.navlinks a{position:relative}.navlinks a:after{content:"";position:absolute;left:0;bottom:-8px;width:0;height:2px;background:var(--blue);transition:.25s}.navlinks a:hover:after{width:100%}.header-phone{font-weight:600;color:var(--blue);white-space:nowrap}.menu-trigger{display:none;margin-left:auto;width:44px;height:44px;border-radius:12px;border:1px solid var(--line);background:#fff;align-items:center;justify-content:center;font-size:1.2rem}.hero{background:linear-gradient(120deg,#eef7ff 0%,#fff 57%,#dff1ff 100%);overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;align-items:center;min-height:650px;gap:32px;padding:52px 0}.eyebrow{font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--blue);margin-bottom:12px}.hero h1,h1,h2,h3{font-family:"Plus Jakarta Sans",Inter,ui-sans-serif,sans-serif;line-height:1.08;letter-spacing:-.035em;margin:0 0 18px}.hero h1{font-size:clamp(3rem,6vw,5.3rem);font-weight:650;max-width:720px}.hero h1 span{color:var(--blue)}.lead{font-size:1.16rem;color:var(--text);max-width:680px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:13px 20px;border-radius:12px;border:1px solid transparent;font-weight:600;transition:.25s var(--ease)}.btn-primary{background:var(--blue-dark);color:#fff}.btn-primary:hover{background:#0e4fae;transform:translateY(-2px)}.btn-secondary{background:#fff;border-color:#b9d7ff;color:var(--ink)}.btn-secondary:hover{border-color:var(--blue);color:var(--blue)}.zip-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}.zip-chip{padding:7px 12px;border:1px solid #bfdbff;border-radius:999px;background:#fff;color:#24466d;font-size:.82rem}.hero-media{position:relative}.hero-photo{aspect-ratio:1.08/1;border-radius:32px;background:linear-gradient(145deg,#cfe8ff,#7cc8ef 48%,#eaf4ff);box-shadow:var(--shadow);overflow:hidden;position:relative}.hero-photo:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 65% 25%,rgba(255,255,255,.95),transparent 22%),linear-gradient(160deg,transparent 0 42%,rgba(11,21,36,.10) 43%)}.hero-photo:after{content:"Original Laurel restoration hero image";position:absolute;left:24px;bottom:22px;padding:9px 12px;border-radius:10px;background:rgba(255,255,255,.88);font-size:.8rem;color:#31516f}.floating-call{position:absolute;right:-12px;bottom:34px;background:#fff;padding:18px;border-radius:18px;box-shadow:var(--shadow);display:flex;gap:12px;align-items:center;max-width:285px}.floating-icon{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--blue);color:#fff;font-size:1.25rem}.quickrail{transform:translateY(-22px);position:relative;z-index:3}.quickrail-inner{display:grid;grid-template-columns:repeat(6,1fr);background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:20px;overflow:hidden}.quickrail a{padding:20px 14px;display:flex;align-items:center;gap:10px;border-right:1px solid var(--line);font-weight:600;font-size:.86rem}.quickrail a:last-child{border-right:0}.service-icon{width:34px;height:34px;color:var(--blue);flex:0 0 auto}.section{padding:92px 0}.section-soft{background:var(--soft)}.section h2{font-size:clamp(2.2rem,4vw,3.5rem);font-weight:650}.muted{color:var(--muted)}.local-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:54px;align-items:center}.editorial-image{min-height:420px;border-radius:26px;background:linear-gradient(135deg,#bfe5ff,#9bd2e9 45%,#e9f7ff);box-shadow:var(--shadow);position:relative;overflow:hidden}.editorial-image:after{content:"Laurel local context image";position:absolute;left:20px;bottom:18px;background:rgba(11,21,36,.82);color:#fff;padding:8px 10px;border-radius:9px;font-size:.78rem}.risk-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:26px}.risk-card{padding:18px;border:1px solid var(--line);border-radius:16px;background:#fff}.risk-card h3{font-size:1rem;font-weight:650;margin-bottom:8px}.services-mosaic{display:grid;grid-template-columns:1.25fr .95fr .95fr;grid-template-rows:repeat(2,minmax(235px,1fr));gap:18px;margin-top:34px}.service-tile{position:relative;overflow:hidden;border-radius:22px;min-height:235px;background:linear-gradient(145deg,#a9d9ff,#4fa7d7);padding:26px;color:#fff;display:flex;align-items:flex-end;isolation:isolate}.service-tile:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,28,48,.04),rgba(6,28,48,.78));z-index:-1}.service-tile.large{grid-row:span 2}.service-tile h3{font-size:1.45rem;font-weight:650;margin:0 0 6px}.service-tile p{margin:0;color:#eaf6ff}.timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin-top:34px;counter-reset:steps}.step{padding-top:22px;border-top:2px solid #c7def4;position:relative}.step:before{counter-increment:steps;content:"0" counter(steps);position:absolute;top:-18px;left:0;background:#fff;color:var(--blue);font-weight:700;padding-right:10px}.step h3{font-size:1.2rem;font-weight:650;margin-top:18px}.dual{display:grid;grid-template-columns:1fr 1fr;gap:20px}.dual-card{border-radius:28px;padding:36px;min-height:360px;display:flex;flex-direction:column;justify-content:flex-end}.dual-card.light{background:#dff0ff}.dual-card.dark{background:#0b1524;color:#fff}.dual-card h3{font-size:2rem;font-weight:650}.coverage{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center}.coverage-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.coverage-list span{padding:11px 14px;border-radius:999px;background:#fff;border:1px solid var(--line)}.faq-list{max-width:900px;margin:32px auto 0}.faq-item{border-top:1px solid var(--line)}.faq-q{width:100%;display:flex;justify-content:space-between;gap:20px;padding:22px 0;background:none;border:0;font:inherit;font-weight:600;text-align:left;color:var(--ink)}.faq-a{display:none;padding:0 0 22px;color:var(--muted)}.faq-item.open .faq-a{display:block}.cta-grid{display:grid;grid-template-columns:1fr 1fr;gap:38px;align-items:center}.form-card{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:24px;padding:28px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:.88rem;font-weight:600}.field input,.field select,.field textarea{width:100%;padding:13px 14px;border:1px solid #cfdbe7;border-radius:12px;font:inherit}.field textarea{min-height:120px;resize:vertical}.footer{background:#09131f;color:#d5deea;padding:68px 0 24px}.footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:40px}.footer h3{color:#fff;font-size:1rem;font-weight:650}.footer a{display:block;margin:8px 0;color:#c9d4df}.footer-bottom{border-top:1px solid #223246;margin-top:42px;padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:.86rem}.page-hero{min-height:430px;display:flex;align-items:center;background:linear-gradient(120deg,#0b1524 0 37%,rgba(11,21,36,.7) 65%,rgba(40,120,255,.26)),linear-gradient(145deg,#bfe2ff,#7cbfe6);color:#fff}.page-hero h1{font-size:clamp(2.6rem,5vw,4.5rem);font-weight:650;max-width:850px}.breadcrumbs{font-size:.84rem;color:#d7e2ee;margin-bottom:20px}.content-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:50px;align-items:start}.cards-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.mini-card{padding:24px;border:1px solid var(--line);border-radius:18px;background:#fff}.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.resource-card{border:1px solid var(--line);border-radius:20px;overflow:hidden;background:#fff}.resource-media{height:190px;background:linear-gradient(145deg,#bfe5ff,#87c5e6)}.resource-body{padding:20px}.resource-body h3{font-size:1.2rem;font-weight:650}.reveal{opacity:0;transform:translateY(22px);transition:opacity .55s var(--ease),transform .55s var(--ease)}.reveal.in{opacity:1;transform:none}
/* mobile popup */.mobile-overlay{position:fixed;inset:0;background:rgba(6,18,31,.54);backdrop-filter:blur(10px);z-index:100;opacity:0;visibility:hidden;transition:.3s}.mobile-panel{position:absolute;inset:0 0 0 auto;width:min(92vw,420px);background:#fff;padding:22px;transform:translateX(100%);transition:.4s var(--ease);overflow:auto}.mobile-overlay.open{opacity:1;visibility:visible}.mobile-overlay.open .mobile-panel{transform:none}.mobile-head{display:flex;justify-content:space-between;align-items:center}.mobile-close{width:44px;height:44px;border:0;background:#eef6ff;border-radius:12px;font-size:1.35rem}.mobile-links{margin-top:22px}.mobile-links a,.mobile-group-btn{display:flex;align-items:center;justify-content:space-between;width:100%;padding:16px 4px;border:0;border-bottom:1px solid var(--line);background:none;font:inherit;font-weight:500;color:var(--ink)}.mobile-sub{display:none;padding:8px 0 8px 16px}.mobile-group.open .mobile-sub{display:block}.mobile-sub a{font-size:.93rem;color:var(--text)}.mobile-call{margin-top:24px;width:100%}.body-lock{overflow:hidden}
@media(max-width:1000px){.navlinks,.header-phone{display:none}.menu-trigger{display:flex}.hero-grid,.local-grid,.coverage,.cta-grid,.content-grid{grid-template-columns:1fr}.hero-media{max-width:700px}.quickrail-inner{overflow:auto;grid-template-columns:repeat(6,minmax(180px,1fr))}.services-mosaic{grid-template-columns:1fr 1fr}.service-tile.large{grid-row:auto}.timeline{grid-template-columns:1fr 1fr}.cards-3,.resource-grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.risk-grid{grid-template-columns:1fr 1fr}.risk-grid .risk-card:last-child{grid-column:1/-1}}
@media(max-width:640px){.container{width:min(var(--max),calc(100% - 28px))}.topbar .container{justify-content:center}.topbar span:last-child{display:none}.nav{min-height:68px}.logo img{width:210px}.hero-grid{min-height:auto;padding:42px 0 54px}.hero h1{font-size:clamp(2.65rem,14vw,4rem)}.hero-media{margin-top:6px}.hero-photo{aspect-ratio:1.1/1}.floating-call{position:relative;right:auto;bottom:auto;margin-top:-26px;margin-inline:12px}.actions .btn{width:100%}.zip-row{gap:6px}.section{padding:68px 0}.quickrail{transform:none;margin-top:16px}.risk-grid,.services-mosaic,.dual,.timeline,.cards-3,.resource-grid,.footer-grid,.form-grid{grid-template-columns:1fr}.risk-grid .risk-card:last-child{grid-column:auto}.service-tile{min-height:220px}.footer-bottom{flex-direction:column}.mobile-panel{width:100%;border-radius:0}.page-hero{min-height:360px}.page-hero h1{font-size:clamp(2.3rem,11vw,3.2rem)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}


/* ===== FINAL PRODUCTION POLISH ===== */
body{font-family:"Avenir Next","Segoe UI",Inter,Arial,sans-serif;font-weight:400;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,.hero h1{font-family:"Avenir Next","Segoe UI",Inter,Arial,sans-serif;letter-spacing:-.028em}.eyebrow{font-weight:650}.navlinks{font-weight:500}.field label{font-weight:550}
.hero-photo{background-image:linear-gradient(90deg,rgba(244,249,255,.12),rgba(11,21,36,.04)),url('../images/hero-home-v2.webp');background-position:center;background-size:cover}.hero-photo:before,.hero-photo:after{display:none}.editorial-image{background-position:center;background-size:cover;background-repeat:no-repeat}.editorial-image:after{display:none}
.page-hero{position:relative;background-image:linear-gradient(90deg,rgba(7,22,39,.92) 0%,rgba(7,22,39,.74) 48%,rgba(7,22,39,.22) 100%),var(--page-hero);background-size:cover;background-position:center;overflow:hidden}.page-hero>.container{position:relative;z-index:2}.page-hero .lead{max-width:720px}
.service-tile{background-position:center;background-size:cover}.service-tile:before{background:linear-gradient(180deg,rgba(6,28,48,.10),rgba(6,28,48,.88))}
.dual-card{background-size:cover;background-position:center;position:relative;overflow:hidden;isolation:isolate}.dual-card:before{content:"";position:absolute;inset:0;z-index:-1}.dual-card.light:before{background:linear-gradient(90deg,rgba(229,244,255,.97),rgba(229,244,255,.77))}.dual-card.dark:before{background:linear-gradient(90deg,rgba(6,18,31,.94),rgba(6,18,31,.73))}
.footer-logo{width:250px;height:auto;margin-bottom:16px}.footer-brand p{max-width:380px}.footer .logo-link{display:inline-block;margin:0 0 8px}.footer-bottom a{display:inline;color:#c9d4df;margin:0}.footer-bottom a:hover{color:#fff}.footer-legal{display:flex;gap:18px;align-items:center}
.resource-media{height:210px;background:#dceeff center/cover no-repeat}.resource-card{transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s}.resource-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:#bad8f6}.resource-card h3{line-height:1.25}.resource-card .muted{font-size:.94rem}
.article-shell{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:48px;align-items:start}.article-main{min-width:0}.article-main h2{font-size:clamp(1.55rem,2.6vw,2.1rem);margin-top:42px}.article-main h3{font-size:1.2rem;margin-top:26px}.article-main p,.article-main li{color:#475467}.article-main ul,.article-main ol{padding-left:22px}.article-feature{border-radius:24px;overflow:hidden;margin:0 0 34px;box-shadow:0 12px 38px rgba(15,45,80,.10)}.article-feature img{width:100%;height:410px;object-fit:cover}.article-meta{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 24px}.meta-pill{font-size:.78rem;padding:6px 10px;border-radius:999px;background:#eef6ff;color:#245583;border:1px solid #d5e9fb}.article-sidebar{position:sticky;top:108px}.article-sidebar .mini-card{margin-bottom:18px}.related-list a{display:block;padding:12px 0;border-bottom:1px solid var(--line);font-size:.92rem;font-weight:550}.related-list a:last-child{border-bottom:0}.note-box{border-left:4px solid var(--blue);background:#f4f9ff;padding:18px 20px;border-radius:0 14px 14px 0;margin:26px 0}.safety-box{background:#fff7e8;border:1px solid #f4dfb4;padding:18px 20px;border-radius:14px;margin:26px 0}
.mobile-overlay{background:rgba(3,13,24,.68)}.mobile-panel{inset:12px 12px 12px auto;width:min(calc(100vw - 24px),430px);border-radius:24px;box-shadow:0 30px 100px rgba(0,0,0,.26)}.mobile-head{position:sticky;top:-22px;background:#fff;z-index:2;padding:14px 0 12px;border-bottom:1px solid var(--line)}.mobile-call{width:100%;margin-top:22px}.body-lock{overflow:hidden}.mobile-sub a{padding:11px 8px;border-bottom:0;color:#475467}.mobile-group.open .mobile-group-btn span{transform:rotate(180deg)}.mobile-group-btn span{transition:.25s}
.logo img{width:min(330px,25vw)}.topbar a{color:#fff}.topbar a:hover{text-decoration:underline}.header-phone{font-size:.92rem}
.form-card input:focus,.form-card select:focus,.form-card textarea:focus{outline:3px solid rgba(40,120,255,.13);border-color:#7cb5ff}.form-note{font-size:.82rem;color:#667085;margin:12px 0 0}
@media(max-width:1060px){.navlinks{gap:16px;font-size:.87rem}.header-phone{display:none}.hero-grid{min-height:590px}.quickrail-inner{grid-template-columns:repeat(3,1fr)}.quickrail a:nth-child(3){border-right:0}.quickrail a{border-bottom:1px solid var(--line)}}
@media(max-width:860px){.navlinks,.header-phone{display:none}.menu-trigger{display:flex}.hero-grid,.local-grid,.coverage,.cta-grid,.content-grid,.article-shell{grid-template-columns:1fr}.hero-grid{padding:48px 0 72px}.hero-media{max-width:650px}.services-mosaic{grid-template-columns:1fr 1fr;grid-template-rows:auto}.service-tile.large{grid-row:auto;grid-column:1/-1}.timeline{grid-template-columns:1fr 1fr}.risk-grid,.cards-3,.resource-grid{grid-template-columns:1fr 1fr}.article-sidebar{position:static}.article-feature img{height:350px}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}}
@media(max-width:640px){.container{width:min(var(--max),calc(100% - 28px))}.topbar .container{justify-content:center}.topbar span:first-child{display:none}.nav{min-height:68px;gap:14px}.logo img{width:205px}.hero-grid{min-height:0;padding:42px 0 58px}.hero h1{font-size:clamp(2.45rem,12vw,3.45rem)}.hero-photo{aspect-ratio:4/3;border-radius:22px}.floating-call{position:relative;right:auto;bottom:auto;margin:-34px 14px 0;z-index:2}.quickrail{transform:none;margin:16px 0}.quickrail-inner{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;border-radius:16px}.quickrail a{min-width:200px;scroll-snap-align:start;border-bottom:0;border-right:1px solid var(--line)}.section{padding:64px 0}.section h2{font-size:clamp(1.9rem,9vw,2.5rem)}.local-grid{gap:28px}.editorial-image{min-height:280px}.risk-grid,.cards-3,.resource-grid,.dual,.footer-grid,.form-grid{grid-template-columns:1fr}.services-mosaic{grid-template-columns:1fr}.service-tile.large{grid-column:auto}.service-tile{min-height:230px}.timeline{grid-template-columns:1fr}.dual-card{min-height:310px;padding:28px}.coverage{gap:28px}.page-hero{min-height:370px}.page-hero h1{font-size:clamp(2.15rem,10vw,3.05rem)}.article-feature img{height:240px}.article-shell{gap:28px}.footer{padding-top:54px}.footer-bottom{flex-direction:column;align-items:flex-start}.footer-legal{gap:14px}.mobile-panel{inset:8px;width:calc(100vw - 16px);border-radius:20px;padding:18px}.mobile-head{top:-18px}.btn{padding:11px 16px}.actions .btn{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}


/* === final improvement pack === */
.navlinks{gap:18px;font-size:.92rem;font-weight:500}
.nav-dropdown{position:relative}
.dropdown-toggle{display:inline-flex;align-items:center;gap:6px}
.dropdown-toggle::after{content:'▾';font-size:.72rem;opacity:.72;margin-top:1px}
.dropdown-menu{position:absolute;top:calc(100% + 14px);left:0;min-width:280px;background:#fff;border:1px solid rgba(207,219,231,.92);border-radius:18px;box-shadow:0 18px 48px rgba(8,27,49,.14);padding:10px;display:none;z-index:60}
.dropdown-menu a{display:block;padding:10px 12px;border-radius:12px;font-size:.92rem;white-space:nowrap}
.dropdown-menu a:hover{background:#f3f8fc;color:var(--blue)}
.nav-dropdown:hover .dropdown-menu,.nav-dropdown:focus-within .dropdown-menu{display:block}
.page-hero{background-size:cover;background-repeat:no-repeat;background-position:center center;position:relative}
.page-hero>.container{padding:86px 0 92px}
.page-hero h1{max-width:860px}
.page-hero .lead{max-width:740px}
.section{padding:78px 0}
.content-grid{gap:34px}
.local-grid,.cta-grid{gap:32px}
.cards-3{grid-template-columns:repeat(2,minmax(0,1fr))}
.mini-card{padding:22px;min-height:100%}
.editorial-image,.resource-media{background-size:cover;background-position:center;background-repeat:no-repeat}
.resource-media{height:210px}
.cta-grid .editorial-image{min-height:340px}
.coverage-list a,.coverage-list span{padding:10px 14px;border-radius:999px;background:#fff;border:1px solid var(--line);display:inline-flex;align-items:center}
.footer-logo{width:330px;height:auto}
@media (max-width:1060px){.navlinks{gap:14px;font-size:.88rem}.dropdown-menu{min-width:250px}.cards-3{grid-template-columns:1fr 1fr}}
@media (max-width:860px){.navlinks,.header-phone{display:none}.menu-trigger{display:flex}.cards-3{grid-template-columns:1fr 1fr}.page-hero>.container{padding:72px 0 78px}}
@media (max-width:640px){.cards-3{grid-template-columns:1fr}.page-hero>.container{padding:58px 0 62px}.cta-grid .editorial-image{min-height:260px}.resource-media{height:190px}}

/* Header dropdown: the trigger and menu share one continuous pointer area. */
.navlinks{align-self:stretch}
.navlinks>.nav-dropdown{align-self:stretch;display:flex;align-items:center}
.nav-dropdown>.dropdown-menu{top:100%;margin-top:0}
.nav-dropdown:focus-within>.dropdown-menu{display:block}
.dropdown-menu a:focus-visible,.dropdown-toggle:focus-visible{outline:2px solid var(--blue);outline-offset:2px}

/* Motion is progressive: content remains visible if scripts are unavailable. */
html:not(.js-motion) .reveal{opacity:1;transform:none}
.js-motion .reveal:not(.in){opacity:0;transform:translateY(20px)}
.js-motion .reveal{transition:opacity .65s var(--ease),transform .65s var(--ease);will-change:opacity,transform}
.js-motion .reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.js-motion .reveal,.js-motion .reveal:not(.in){opacity:1;transform:none;transition:none;will-change:auto}}

/* FAQ groups and answer links. */
.faq-group+.faq-group{margin-top:54px}
.faq-group .faq-list{margin-top:18px}
.faq-a a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}
.faq-a a:hover{color:var(--ink)}
.faq-more{max-width:900px;margin:26px auto 0}
.faq-q{cursor:pointer;align-items:center}
.faq-q:focus-visible{outline:2px solid var(--blue);outline-offset:3px}

/* Service menu chevron is an actual icon, independent of the link underline. */
.navlinks a.dropdown-toggle::after{display:none;content:none}
.dropdown-chevron{display:block;flex:none;width:15px;height:15px;margin-left:2px;transition:transform .22s ease}
.nav-dropdown:hover .dropdown-chevron,.nav-dropdown:focus-within .dropdown-chevron{transform:rotate(180deg)}

/* The FAQ headings and answer rows share the same content edges. */
.faq-group{max-width:900px;margin-left:auto;margin-right:auto}
.faq-group .faq-list{max-width:none;margin-left:0;margin-right:0}

/* Slow the mobile off-canvas entrance and exit slightly. */
@media(max-width:860px){
  .mobile-overlay{transition:opacity .48s ease,visibility .48s ease}
  .mobile-panel{transition:transform .58s var(--ease)}
}

/* A small reduction to the primary headings on desktop only. */
@media(min-width:861px){
  .hero h1{font-size:clamp(2.75rem,calc(6vw - 4px),5.05rem)}
  .page-hero h1{font-size:clamp(2.35rem,calc(5vw - 4px),4.25rem)}
  .section h2{font-size:clamp(1.95rem,calc(4vw - 4px),3.25rem)}
  .article-main h2{font-size:clamp(1.425rem,calc(2.6vw - 2px),1.975rem)}
}

:root{--sticky-bg:#133f62;--sticky-accent:#2878ff;--sticky-icon:#fff;--sticky-shadow:rgba(20,65,115,.28)}

/* Fixed call action, adapted from the reference to the site's own palette. */
.sticky-call-wrap{position:fixed;z-index:90;left:50%;bottom:calc(18px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);width:min(520px,calc(100vw - 32px))}
.sticky-call{display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%;padding:15px 17px 15px 23px;border-radius:999px;background:var(--sticky-bg);color:#fff;box-shadow:0 18px 40px var(--sticky-shadow);animation:stickyNudge 6.5s ease-in-out infinite}
.sticky-call:hover{color:#fff;filter:brightness(1.08)}
.sticky-call:focus-visible{outline:3px solid var(--sticky-accent);outline-offset:4px}
.sticky-call:hover,.sticky-call:focus-visible{animation-play-state:paused}
.sticky-call-text{display:flex;min-width:0;flex-direction:column;line-height:1.28}
.sticky-call-kicker{font-size:.91rem;font-weight:600;color:#e9f3ff}
.sticky-call strong{font-size:1.38rem;letter-spacing:.01em;white-space:nowrap}
.sticky-call-icon{display:grid;place-items:center;flex:0 0 52px;width:52px;height:52px;border-radius:50%;background:var(--sticky-accent);color:var(--sticky-icon);animation:stickyRing 6.5s ease-in-out infinite}
.sticky-call:hover .sticky-call-icon,.sticky-call:focus-visible .sticky-call-icon{animation-play-state:paused}
.footer{padding-bottom:calc(116px + env(safe-area-inset-bottom,0px))!important}
@keyframes stickyNudge{0%,88%,100%{translate:0 0;rotate:0deg}90%{translate:-2px 0;rotate:-.8deg}92%{translate:2px 0;rotate:.8deg}94%{translate:-1px 0;rotate:-.4deg}96%{translate:0 0;rotate:0deg}}
@keyframes stickyRing{0%,88%,100%{transform:rotate(0)}90%{transform:rotate(-10deg)}92%{transform:rotate(10deg)}94%{transform:rotate(-6deg)}96%{transform:rotate(0)}}
@media(max-width:640px){.sticky-call-wrap{width:calc(100vw - 24px);bottom:calc(10px + env(safe-area-inset-bottom,0px))}.sticky-call{padding:11px 12px 11px 18px;gap:10px}.sticky-call-kicker{font-size:.78rem}.sticky-call strong{font-size:1.1rem}.sticky-call-icon{width:45px;height:45px;flex-basis:45px}.sticky-call-icon svg{width:21px;height:21px}}
@media(prefers-reduced-motion:reduce){.sticky-call,.sticky-call-icon{animation:none!important}}

/* Service tiles: separate information and call actions. */
.service-tile{transition:transform .25s ease,box-shadow .25s ease}
.service-tile:hover{transform:translateY(-3px);box-shadow:0 18px 36px rgba(12,45,80,.23)}
.service-tile-content{width:100%;position:relative;z-index:1}
.service-tile-actions{display:flex;gap:9px;margin-top:17px}
.service-tile-actions a{display:inline-flex;justify-content:center;align-items:center;gap:7px;flex:1 1 0;min-width:0;min-height:42px;padding:9px 8px;border-radius:10px;font-size:.86rem;font-weight:700;line-height:1.15;text-align:center}
.service-tile-actions a:focus-visible{outline:3px solid #fff;outline-offset:2px}
.tile-learn{background:rgba(9,26,42,.78);border:1px solid rgba(255,255,255,.55);color:#fff}
.tile-learn:hover{background:rgba(9,26,42,.98);color:#fff}
.tile-call{background:var(--blue);color:#fff;box-shadow:0 6px 18px rgba(40,120,255,.28)}
.tile-call:hover{background:var(--blue-dark);color:#fff}
.tile-call svg{width:17px;height:17px;flex:none}
@media(max-width:420px){.service-tile{padding:20px}.service-tile-actions a{font-size:.8rem;padding-inline:5px}}
@media(prefers-reduced-motion:reduce){.service-tile{transition:none}}
