:root{--navy:#14213d;--navy2:#0e162c;--orange:#f77f00;--orange2:#e36414;--gold:#fcbf49;--ink:#1d2433;--muted:#5b6475;--bg:#f6f4ef;--line:#e3ded3;--white:#fff;--r:14px;--shadow:0 14px 40px -18px rgba(14,22,44,.35)}
*{box-sizing:border-box;margin:0;padding:0}html,body{overflow-x:hidden}body{font-family:Barlow,system-ui,sans-serif;font-size:17px;line-height:1.65;color:var(--ink);background:var(--white)}
img{max-width:100%;height:auto;display:block}a{color:var(--orange2)}h1,h2,h3{font-family:Archivo,sans-serif;line-height:1.15;color:var(--navy)}
h1{font-size:clamp(2rem,4.5vw,3.3rem);font-weight:900}h2{font-size:clamp(1.5rem,3vw,2.2rem);font-weight:800;margin:.2em 0 .5em}h3{font-size:1.15rem;font-weight:800}
.wrap{width:min(1200px,92%);margin:0 auto}.narrow{width:min(860px,92%)}.center{text-align:center;margin-top:1.5rem}
.topbar{background:var(--navy2);color:#cfd6e6;font-size:14px}.topbar .wrap{display:flex;justify-content:space-between;gap:1rem;padding:.4rem 0}.topbar a{color:var(--gold);font-weight:600;text-decoration:none}
.site-header{position:sticky;top:0;z-index:50;background:var(--white);box-shadow:0 2px 14px rgba(0,0,0,.08)}
.hdr{display:flex;align-items:center;gap:1.2rem;padding:.7rem 0}.brand{display:flex;align-items:center;gap:.6rem;text-decoration:none;color:var(--navy)}
.brand strong{display:block;font-family:Archivo;font-size:1.05rem;line-height:1}.brand small{color:var(--orange2);font-weight:700;letter-spacing:.12em;text-transform:uppercase;font-size:.72rem}.brand.light{color:#fff}
.main-nav{margin-left:auto}.main-nav>ul{display:flex;list-style:none;gap:.2rem;align-items:center}.main-nav a{display:block;padding:.55rem .7rem;color:var(--navy);text-decoration:none;font-weight:600}
.main-nav a:hover{color:var(--orange2)}.dd{position:relative;display:flex;align-items:center}.dd-t{background:none;border:0;color:var(--navy);cursor:pointer;font-size:.9rem;padding:.3rem}
.dd ul{position:absolute;top:100%;left:0;min-width:270px;background:#fff;list-style:none;box-shadow:var(--shadow);border-radius:10px;padding:.5rem;display:none;max-height:70vh;overflow:auto}
.dd:hover ul,.dd:focus-within ul{display:block}.dd ul a{font-weight:500;font-size:.95rem;padding:.4rem .7rem;border-radius:6px}.dd ul a:hover{background:var(--bg)}
.menu-btn{display:none;margin-left:auto;background:none;border:0;width:44px;height:44px;cursor:pointer}.menu-btn span{display:block;height:3px;background:var(--navy);margin:6px 8px;border-radius:2px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.8rem 1.3rem;border-radius:10px;font-weight:800;text-decoration:none;font-family:Archivo;letter-spacing:.02em;border:2px solid transparent;cursor:pointer;font-size:1rem;transition:.2s}
.btn-call{background:var(--orange);color:#fff}.btn-call:hover{background:var(--orange2);transform:translateY(-1px)}.btn-ghost{border-color:#fff;color:#fff}.btn-ghost:hover{background:#fff;color:var(--navy)}
.btn-dark{background:var(--navy);color:#fff}.btn-dark:hover{background:var(--navy2)}.btn.big{padding:1rem 1.6rem;font-size:1.08rem}.hdr-call{white-space:nowrap}
.cta-btns{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.4rem}
.hero{background:linear-gradient(100deg,rgba(14,22,44,.95) 30%,rgba(14,22,44,.45)),url(/images/hero.jpg) center/cover;color:#fff;padding:5rem 0}
.hero-in{display:grid;grid-template-columns:1.5fr 1fr;gap:3rem;align-items:center}.hero h1{color:#fff}.lead{font-size:1.2rem;color:#dde3ef;margin-top:1rem;max-width:640px}.lead.dark{color:var(--muted)}
.eyebrow{display:inline-block;color:var(--gold);font-weight:700;text-transform:uppercase;letter-spacing:.12em;font-size:.8rem;margin-bottom:.6rem}.sec .eyebrow{color:var(--orange2)}
.ticks{list-style:none;display:flex;flex-wrap:wrap;gap:.4rem 1.4rem;margin-top:1.4rem}.ticks li::before{content:"✓ ";color:var(--gold);font-weight:900}.ticks.dark{display:block}.ticks.dark li{margin:.35rem 0}.ticks.dark li::before{color:var(--orange)}
.hero-card{background:#fff;color:var(--ink);padding:2rem;border-radius:var(--r);box-shadow:var(--shadow);display:grid;gap:.8rem;border-top:6px solid var(--orange)}.small{font-size:.88rem;color:var(--muted)}
.strip{background:var(--orange)}.stats{display:grid;grid-template-columns:repeat(4,1fr);text-align:center;padding:1.4rem 0;color:#fff}.stats b{display:block;font-family:Archivo;font-size:1.8rem}.stats span{font-weight:600;opacity:.9}
.sec{padding:4.5rem 0}.sec.alt{background:var(--bg)}.sh{text-align:center;max-width:720px;margin:0 auto 2.4rem}.sh p{color:var(--muted)}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:1.4rem}.card{background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;text-decoration:none;color:var(--ink);transition:.2s;display:flex;flex-direction:column}
.card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.card img{aspect-ratio:16/10;object-fit:cover;width:100%}.card div{padding:1.3rem}.card p{color:var(--muted);font-size:.95rem;margin:.4rem 0 .8rem}.card span{color:var(--orange2);font-weight:700}
.sizes{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem;margin:1rem 0}.sizes div{background:#fff;border:2px solid var(--line);border-radius:var(--r);padding:1.3rem;text-align:center}.sizes b{font-family:Archivo;font-size:2.4rem;color:var(--navy);display:block;line-height:1}.sizes span{font-weight:700;color:var(--orange2);text-transform:uppercase;font-size:.8rem}.sizes p{font-size:.9rem;color:var(--muted);margin-top:.5rem}.sizes .pop{border-color:var(--orange)}
.split{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}.split img{border-radius:var(--r);box-shadow:var(--shadow)}.split p{margin-bottom:1rem}
.steps{margin:1rem 0 1.6rem 1.2rem}.steps li{margin:.7rem 0}
.chips{display:flex;flex-wrap:wrap;gap:.7rem;justify-content:center}.chips a{background:#fff;border:1px solid var(--line);padding:.6rem 1rem;border-radius:999px;text-decoration:none;color:var(--navy);font-weight:600}.chips a:hover{border-color:var(--orange)}
.tgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.4rem}.tcard{background:#fff;border:1px solid var(--line);border-left:5px solid var(--orange);border-radius:var(--r);padding:1.5rem}.stars{color:var(--gold);letter-spacing:2px}.tcard cite{display:block;margin-top:.8rem;font-weight:700;color:var(--navy);font-style:normal}
.faq details{background:#fff;border:1px solid var(--line);border-radius:10px;margin:.6rem 0;padding:1rem 1.2rem}.faq summary{font-weight:700;cursor:pointer;color:var(--navy)}.faq p{margin-top:.6rem;color:var(--muted)}
.phero{background-size:cover;background-position:center;color:#fff;padding:4rem 0}.phero h1{color:#fff}.phero p{color:#dde3ef;font-size:1.15rem;max-width:700px;margin-top:.6rem}.crumbs{font-size:.9rem;margin-bottom:1rem;color:#cfd6e6}.crumbs a{color:var(--gold)}
.two{display:grid;grid-template-columns:1fr 340px;gap:3rem;align-items:start}.prose p{margin-bottom:1rem}.prose h2{margin-top:2rem}.prose ul{margin:0 0 1rem 1.2rem}.prose .sizes{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}
.side{position:sticky;top:100px;display:grid;gap:1.2rem}.side-box{background:var(--navy);color:#fff;padding:1.6rem;border-radius:var(--r);display:grid;gap:.8rem}.side-box h3{color:#fff}.side-box a:not(.btn){color:var(--gold)}.side-box.light{background:var(--bg);color:var(--ink)}.side-box.light h3{color:var(--navy)}.side-box.light a{color:var(--orange2)!important}.side-box ul{list-style:none;display:grid;gap:.4rem}.side-box .small{color:#cfd6e6}
.note{background:var(--bg);border-left:5px solid var(--orange);padding:1.2rem;border-radius:8px;margin:1.5rem 0}
.feat{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem}.feat div{background:#fff;padding:1.5rem;border-radius:var(--r);border-top:4px solid var(--orange)}
.qform{background:var(--bg);padding:2rem;border-radius:var(--r);display:grid;gap:1rem}.qform label{display:grid;gap:.3rem;font-weight:600;color:var(--navy)}.qform input,.qform select,.qform textarea{font:inherit;padding:.75rem;border:1px solid var(--line);border-radius:8px;background:#fff;width:100%}.frow{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.fnote{font-size:.9rem;color:var(--muted)}
.smap{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem}.smap ul{list-style:none;display:grid;gap:.35rem}
.big404{font-size:7rem;color:var(--orange)}
.cta-band{background:linear-gradient(120deg,var(--navy),var(--navy2));color:#fff;padding:3rem 0}.cta-band .wrap{display:flex;justify-content:space-between;align-items:center;gap:2rem;flex-wrap:wrap}.cta-band h2{color:#fff}.cta-band p{color:#cfd6e6}.cta-band .cta-btns{margin:0}
.site-footer{background:var(--navy2);color:#b9c2d6;padding:3.5rem 0 1rem;font-size:.95rem}.fgrid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:2rem}.site-footer h3{color:#fff;margin-bottom:.8rem}.site-footer ul{list-style:none;display:grid;gap:.35rem}.site-footer a{color:#dbe2ef;text-decoration:none}.site-footer a:hover{color:var(--gold)}.site-footer address{font-style:normal;margin-top:1rem}.site-footer p{margin-top:.8rem}.cols2{grid-template-columns:1fr 1fr}.copy{border-top:1px solid rgba(255,255,255,.1);margin-top:2.5rem;padding-top:1rem;font-size:.85rem}
.float-call{display:none}
@media(max-width:1080px){.hdr-call{display:none}.feat{grid-template-columns:1fr 1fr}.sizes{grid-template-columns:repeat(3,1fr)}}
@media(max-width:960px){.menu-btn{display:block}.main-nav{position:fixed;inset:118px 0 0 0;background:#fff;transform:translateX(100%);transition:.25s;overflow:auto;margin:0}.main-nav.open{transform:none}
.main-nav>ul{flex-direction:column;align-items:stretch;padding:1rem}.main-nav>ul>li{border-bottom:1px solid var(--line)}.dd{flex-wrap:wrap;justify-content:space-between}.dd-t{font-size:1.2rem;padding:.5rem 1rem}.dd ul{position:static;display:none!important;box-shadow:none;width:100%;max-height:none}.dd.open ul{display:block!important}
.hero-in,.split,.two,.fgrid{grid-template-columns:1fr}.side{position:static}.smap{grid-template-columns:1fr 1fr}.float-call{display:block;position:fixed;bottom:14px;left:50%;transform:translateX(-50%);background:var(--orange);color:#fff;font-weight:800;padding:.85rem 1.6rem;border-radius:999px;box-shadow:var(--shadow);text-decoration:none;z-index:60;font-family:Archivo}}
@media(max-width:600px){body{font-size:16px}.stats{grid-template-columns:1fr 1fr;gap:1rem}.sizes,.feat,.smap,.frow{grid-template-columns:1fr}.topbar span{display:none}.topbar .wrap{justify-content:center}.hero{padding:3rem 0}.brand strong{font-size:.92rem}.main-nav{inset:110px 0 0 0}.btn.big{width:100%}}

/* Footer map, accessible FAQ accordion, and responsive testimonial cards */
.footer-map{min-width:0}.footer-map h3{color:#fff;margin-bottom:.8rem}.map-frame{height:210px;border-radius:12px;overflow:hidden;border:1px solid rgba(255,255,255,.18);box-shadow:0 8px 24px rgba(0,0,0,.18)}.map-frame iframe{width:100%;height:100%;border:0;display:block}.footer-map p{margin:.5rem 0}.footer-map small{display:block;color:#cfd6e6;font-size:.76rem;overflow-wrap:anywhere}.faq details{position:relative;padding:0;overflow:hidden}.faq summary{list-style:none;position:relative;padding:1rem 3rem 1rem 1.2rem}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"⌄";position:absolute;right:1.2rem;top:50%;transform:translateY(-60%) rotate(0deg);font-size:1.35rem;transition:transform .2s ease;color:var(--orange);font-weight:800}.faq details[open] summary:after{transform:translateY(-35%) rotate(180deg)}.faq details>p{padding:0 1.2rem 1rem;margin-top:0}.tgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.4rem}.tcard{box-shadow:0 8px 24px rgba(14,22,44,.08);min-width:0}.tcard p{font-style:italic}.tcard cite{font-style:normal}@media(max-width:960px){.tgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-map{max-width:100%}}@media(max-width:600px){.tgrid{grid-template-columns:1fr}.map-frame{height:190px}}

/* Keep all primary navigation items aligned on one desktop row */
@media(min-width:961px){.main-nav>ul{flex-wrap:nowrap;white-space:nowrap}.hdr{gap:.65rem}.main-nav a{padding:.5rem .48rem}.main-nav{min-width:0}.brand{flex-shrink:0}}
@media(min-width:961px) and (max-width:1300px){.brand strong{font-size:.96rem}.main-nav a{font-size:.94rem;padding:.45rem .35rem}.hdr-call{padding:.7rem .85rem;font-size:.92rem}}

/* Place the geotagged map in the marked right-side footer column */
@media(min-width:1201px){.fgrid{grid-template-columns:minmax(260px,1.4fr) minmax(170px,1fr) minmax(180px,1fr) minmax(150px,1fr) minmax(230px,1.1fr);align-items:start}.footer-map{grid-column:auto}}
@media(min-width:961px) and (max-width:1200px){.fgrid{grid-template-columns:repeat(3,minmax(0,1fr))}.footer-map{grid-column:3}}
@media(max-width:960px){.fgrid{grid-template-columns:1fr 1fr}.footer-map{grid-column:1 / -1}}
@media(max-width:600px){.fgrid{grid-template-columns:1fr}.footer-map{grid-column:auto}}

/* Updated business logo supplied by the owner */
.full-brand-logo{display:block;width:104px;height:104px;object-fit:contain;flex:0 0 auto}.brand:has(.full-brand-logo){gap:0}
@media(max-width:960px){.full-brand-logo{width:86px;height:86px}}
