:root{--navy:#15306e;--navy2:#0e2150;--sun:#f26a22;--sun-d:#b84a0e;--sky:#eef3f9;--card:#fff;--ink:#16203a;--mut:#56617a}
html{scroll-behavior:smooth;scroll-padding-top:120px}
body{font-family:'DM Sans',system-ui,sans-serif;color:var(--ink);background:var(--sky);font-size:1.07rem;line-height:1.65}
h1,h2,h3,.brand-name{font-family:'Bricolage Grotesque',sans-serif;font-weight:800;line-height:1.05;letter-spacing:-.01em}
h2{font-size:clamp(2rem,4.6vw,3.2rem);color:var(--navy);margin-bottom:1rem}
img{max-width:100%;height:auto}
a{color:var(--sun-d)}
.eyebrow{font-weight:700;letter-spacing:.16em;text-transform:uppercase;font-size:.82rem;color:var(--sun-d);margin-bottom:.6rem}
.eyebrow.light{color:#ffb98f}
.py-6{padding:5rem 0}
/* nav: centered logo stacked above links */
.navbar{background:#fff;border-bottom:3px solid var(--navy);padding:.6rem 0}
.navbar .container{flex-direction:column}
.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none;color:var(--navy)}
.brand img{width:52px;height:52px;border-radius:4px}
.brand-name{font-size:1.5rem}
.navbar-nav{gap:.25rem}
.navbar .nav-link{color:var(--navy);font-weight:700;padding:.4rem 1rem}
.navbar .nav-link:hover{color:var(--sun-d)}
.nav-call{background:var(--sun);color:#fff!important;border-radius:999px}
.nav-call:hover{background:var(--sun-d);color:#fff!important}
@media(max-width:991px){.navbar .container{flex-direction:row;flex-wrap:wrap;justify-content:space-between}.navbar-collapse{width:100%;text-align:center}}
/* cardboard tape */
.tape{height:14px;background:repeating-linear-gradient(90deg,#d9b27c 0 22px,#cfa468 22px 24px)}
/* hero */
.hero{background:var(--navy);color:#fff;padding:3rem 0 3.5rem;position:relative;overflow:hidden}
.hero h1{font-size:clamp(2.6rem,6vw,4.6rem);margin-bottom:1rem}
.hero h1 span{color:#ffb98f}
.hero .lead{font-size:1.2rem;max-width:34rem;color:#dbe5f7}
.hero-photo{position:relative}
.hero-photo img{width:100%;max-height:min(66vh,480px);object-fit:cover;object-position:50% 65%;border-radius:6px;display:block;border:4px solid #fff}
.tag{position:absolute;left:-14px;bottom:18px;background:#fff8e6;color:var(--ink);padding:.55rem 1rem .55rem 1.6rem;font-weight:700;font-size:.82rem;letter-spacing:.06em;text-transform:uppercase;transform:rotate(-3deg);clip-path:polygon(12px 0,100% 0,100% 100%,12px 100%,0 50%);border-right:3px dashed var(--sun)}
.btn-sun{background:var(--sun);color:#fff;font-weight:800;border:0;border-radius:999px;padding:.85rem 1.8rem}
.btn-sun:hover{background:#fff;color:var(--navy)}
.btn-ghost{border:2px solid #fff;color:#fff;font-weight:700;border-radius:999px;padding:.8rem 1.6rem}
.btn-ghost:hover{background:#fff;color:var(--navy)}
/* services */
.svc{background:var(--card);border:2px solid var(--navy);border-radius:6px;padding:1.6rem;height:100%;position:relative}
.svc .sku{font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--sun-d);border-bottom:2px dashed #d9b27c;padding-bottom:.4rem;margin-bottom:.9rem;display:block}
.svc h3{font-size:1.5rem;color:var(--navy)}
.svc p{margin:0;color:var(--mut)}
.note{display:inline-block;margin-top:.7rem;font-weight:700;color:var(--sun-d)}
/* guarantee */
.guarantee{background:var(--navy2);color:#fff}
.guarantee h2{color:#fff}
.manifest{background:#fff8e6;color:var(--ink);border-radius:4px;padding:1.4rem 1.6rem;border-left:8px solid var(--sun);box-shadow:8px 8px 0 rgba(242,106,34,.35)}
.manifest li{list-style:none;display:flex;justify-content:space-between;border-bottom:1px dashed #cdb894;padding:.45rem 0;font-weight:600}
.manifest ul{padding:0;margin:0}
.manifest li b{color:var(--sun-d)}
/* about */
.about p{max-width:40rem}
.pill{display:inline-block;background:#fff;border:2px solid var(--navy);border-radius:999px;padding:.3rem 1rem;font-weight:700;color:var(--navy);margin:.2rem .2rem .2rem 0}
/* contact */
.contact{background:#fff}
.contact a.big{font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:clamp(2rem,5vw,3rem);color:var(--navy);text-decoration:none}
.contact a.big:hover{color:var(--sun-d)}
.map{border:3px solid var(--navy);border-radius:6px;width:100%;height:360px}
footer{background:var(--navy2);color:#c8d4ee;padding:2rem 0;text-align:center}
footer a{color:#ffb98f}
.footer-logo{width:56px;height:56px;border-radius:4px;margin-bottom:.6rem}
