
:root{--cream:#F2EFE6;--ink:#14110C;--ink-soft:#3d3a33;--dark:#0F0D0A;}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--cream);color:var(--ink);font-family:'Bitter',Georgia,serif;line-height:1.6}
h1,h2,h3,.btn,nav,.eyebrow{font-family:'Oswald',Impact,sans-serif;text-transform:uppercase;letter-spacing:.04em}
h1{font-size:clamp(2rem,5.5vw,3.6rem);line-height:1.08;letter-spacing:.02em}
h2{font-size:clamp(1.5rem,3.6vw,2.4rem)}
h3{font-size:1.15rem;letter-spacing:.08em}
a{color:inherit}
.wrap{max-width:1100px;margin:0 auto;padding:0 20px}
header{position:sticky;top:0;z-index:50;background:var(--cream);border-bottom:3px solid var(--ink)}
.nav{display:flex;align-items:center;gap:18px;padding:12px 0}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.brand img{width:54px;height:54px;border:2px solid var(--ink);border-radius:8px}
.brand b{font-family:'Oswald';font-size:1.5rem;letter-spacing:.05em;display:block;line-height:1}
.brand span{font-family:'Oswald';font-size:.72rem;letter-spacing:.22em;font-weight:600}
.navlinks{margin-left:auto;display:flex;align-items:center;gap:22px;font-weight:600;font-size:.92rem}
.navlinks a{text-decoration:none}
.navlinks a:hover{text-decoration:underline}
.btn{display:inline-block;background:var(--ink);color:var(--cream);padding:15px 28px;text-decoration:none;font-weight:700;font-size:1rem;letter-spacing:.1em;border:none;cursor:pointer;border-radius:2px}
.btn:hover{background:#2b271f}
.btn.light{background:var(--cream);color:var(--ink)}
.btn.outline{background:transparent;color:var(--ink);border:3px solid var(--ink);padding:12px 25px}
.hero{padding:64px 0 72px;text-align:center;position:relative}
.hero .sub{font-style:italic;font-size:1.25rem;max-width:720px;margin:22px auto 30px;color:var(--ink-soft)}
.hero .ctas{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}
.hero .logoCard{width:min(300px,60vw);border:3px solid var(--ink);border-radius:18px;box-shadow:10px 10px 0 var(--ink);margin:0 auto 36px;display:block}
.badges{display:flex;flex-wrap:wrap;gap:10px 26px;justify-content:center;margin-top:34px;font-family:'Oswald';font-size:.8rem;letter-spacing:.14em;font-weight:600}
.badges span::before{content:"\2605  ";}
section{padding:64px 0}
.eyebrow{font-size:.8rem;letter-spacing:.3em;font-weight:600;color:var(--ink-soft);margin-bottom:8px}
.center{text-align:center}
.lede{max-width:760px;margin:14px auto 0;color:var(--ink-soft)}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:26px;margin-top:40px}
.card{background:var(--cream);border:3px solid var(--ink);border-radius:14px;box-shadow:8px 8px 0 var(--ink);padding:28px 24px;text-decoration:none;display:block;transition:transform .12s}
.card:hover{transform:translate(-2px,-2px)}
.card .emoji{font-size:2rem}
.card h3{margin:12px 0 10px}
.card p{color:var(--ink-soft);font-size:.97rem}
.card .more{display:inline-block;margin-top:14px;font-family:'Oswald';font-weight:600;font-size:.8rem;letter-spacing:.15em;text-decoration:underline}
.dark{background:linear-gradient(rgba(15,13,10,.85),rgba(15,13,10,.85)),url('https://lh3.googleusercontent.com/gps-cs-s/AHRPTWlLq-0Nx-oS5maWB6SHq4kMTCBAWodE8Ks8ZlXtjGqINZjjht1uCevEAx7UpS1CitLRFOAvA_EcmZf5Mi3G2c01CSxlBeW3Q431SEqDn_3jMRg9THebpxq3YOCHC_BZrnffOhmsC6tprPk=w1600-h1600-k-no') center/cover;color:var(--cream);text-align:center;padding:84px 0}
.dark .sub{font-style:italic;font-size:1.2rem;margin:16px auto 30px;max-width:700px}
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:26px;margin-top:40px}
.step .num{font-family:'Oswald';font-size:2.6rem;font-weight:700;border-bottom:4px solid var(--ink);display:inline-block;line-height:1.1;margin-bottom:12px}
.reviews{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:26px;margin-top:40px}
.review{border:3px solid var(--ink);border-radius:14px;box-shadow:8px 8px 0 var(--ink);padding:26px;background:var(--cream)}
.review .stars{color:#b8860b;font-size:1.1rem;letter-spacing:.2em;margin-bottom:12px}
.review .who{font-family:'Oswald';font-size:.8rem;letter-spacing:.18em;font-weight:600;margin-top:14px;color:var(--ink-soft)}
.quoteGrid{display:grid;grid-template-columns:1fr 1.1fr;gap:44px;margin-top:40px;align-items:start}
@media(max-width:820px){.quoteGrid{grid-template-columns:1fr}}
.contactList{list-style:none;font-size:1.15rem;display:grid;gap:14px;margin-top:22px}
.contactList a{font-weight:700}
form{border:3px solid var(--ink);border-radius:14px;box-shadow:10px 10px 0 var(--ink);padding:30px;display:grid;gap:16px;background:var(--cream)}
label{font-family:'Oswald';font-size:.8rem;letter-spacing:.18em;font-weight:600}
input,select,textarea{width:100%;padding:13px 14px;border:2px solid var(--ink);border-radius:6px;background:var(--cream);font-family:'Bitter',Georgia,serif;font-size:1rem;margin-top:6px}
textarea{min-height:110px;resize:vertical}
.formNote{font-size:.88rem;color:var(--ink-soft);font-style:italic;text-align:center}
.faq{max-width:820px;margin:40px auto 0;display:grid;gap:14px}
.faq details{border:3px solid var(--ink);border-radius:12px;background:var(--cream);box-shadow:6px 6px 0 var(--ink)}
.faq summary{cursor:pointer;padding:18px 22px;font-family:'Oswald';font-weight:600;letter-spacing:.06em;font-size:1.02rem;text-transform:uppercase}
.faq details p{padding:0 22px 18px;color:var(--ink-soft)}
.areas{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:32px}
.areas a{font-family:'Oswald';font-weight:600;font-size:.85rem;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;border:2px solid var(--ink);border-radius:999px;padding:10px 20px;box-shadow:4px 4px 0 var(--ink)}
.areas a:hover{background:var(--ink);color:var(--cream)}
.breadcrumb{font-size:.85rem;padding-top:26px;color:var(--ink-soft)}
.pageHead{padding:36px 0 8px}
.pageHead .sub{font-style:italic;font-size:1.15rem;color:var(--ink-soft);margin-top:16px;max-width:800px}
.checks{list-style:none;display:grid;gap:12px;margin:30px 0 8px}
.checks li{padding-left:34px;position:relative;font-size:1.05rem}
.checks li::before{content:"\2713";position:absolute;left:0;top:0;font-family:'Oswald';font-weight:700;font-size:1.2rem;border:2px solid var(--ink);border-radius:6px;width:24px;height:24px;line-height:22px;text-align:center}
footer{background:var(--dark);color:var(--cream);padding:54px 0 34px;text-align:center}
footer .brandline{font-family:'Oswald';font-size:1.4rem;letter-spacing:.06em}
footer .tag{font-family:'Oswald';font-size:.72rem;letter-spacing:.24em;margin-bottom:20px}
footer nav{display:flex;flex-wrap:wrap;gap:10px 24px;justify-content:center;margin:22px 0;font-size:.85rem;font-weight:600}
footer nav a{text-decoration:none;opacity:.85}
footer nav a:hover{text-decoration:underline;opacity:1}
footer .legal{font-size:.85rem;opacity:.65;margin-top:18px}
.phoneBar{display:none}
@media(max-width:680px){
 .navlinks{display:none}
 .phoneBar{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:60}
 .phoneBar a{flex:1;text-align:center;padding:16px 10px;font-family:'Oswald';font-weight:700;letter-spacing:.1em;text-decoration:none;text-transform:uppercase}
 .phoneBar .call{background:var(--ink);color:var(--cream)}
 .phoneBar .quote{background:#b8860b;color:var(--dark)}
 body{padding-bottom:56px}
}
