/* Sections: page-specific blocks (header, hero, services, FAQ, footer...) */
.site-header{position:sticky;top:0;z-index:20;background:rgba(243,239,231,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.site-header .container{display:flex;align-items:center;gap:28px;height:68px}
.logo{display:flex;gap:10px;align-items:center;text-decoration:none;color:var(--forest);margin-right:auto}
.logo svg{width:34px;height:34px}
.logo span{font:400 21px/1 var(--serif)}
.logo small{display:block;font:600 8px/1 var(--sans);letter-spacing:.22em;margin-top:4px}
.site-nav{display:flex;gap:26px;align-items:center;font-size:15px}
.site-nav a{text-decoration:none}
.site-nav a:hover{color:var(--forest)}
.menu-toggle{display:none;background:none;border:1.5px solid var(--line);border-radius:var(--r-pill);min-height:40px;padding:0 20px;font:500 14px/1 var(--sans);cursor:pointer;color:var(--text)}
@media(max-width:900px){.menu-toggle{display:block}.site-nav{display:none;position:absolute;top:68px;left:0;right:0;background:var(--stone);flex-direction:column;align-items:flex-start;padding:20px 28px;border-bottom:1px solid var(--line)}.site-nav.is-open{display:flex}}
.hero{padding:72px 0 64px}
.hero .container{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.hero .lede{font-size:18px;color:var(--muted);max-width:52ch;margin:22px 0 28px}
@media(max-width:900px){.hero .container{grid-template-columns:1fr}}
.tracker__head{display:flex;justify-content:space-between;align-items:start;margin-bottom:12px}
.tracker__head b{font:400 22px var(--serif)}
.tracker__list{list-style:none;padding:0}
.tracker__list li{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line);font-size:14px}
.tracker__list li span:first-child{display:flex;gap:11px;align-items:center;font-weight:500}
.dot{width:18px;height:18px;border-radius:50%;background:var(--forest);flex:none;position:relative}
.dot::after{content:"";position:absolute;left:5.5px;top:3px;width:4px;height:8px;border:solid var(--white);border-width:0 1.8px 1.8px 0;transform:rotate(45deg)}
.dot--open{background:none;border:1.5px solid var(--forest)}.dot--open::after{display:none}
.tracker__coord{display:flex;gap:12px;align-items:center;background:var(--mint);border-radius:var(--r-sm);padding:12px 14px;margin-top:16px;font-size:14px}
.av{width:36px;height:36px;border-radius:50%;background:var(--forest);color:var(--white);display:grid;place-items:center;font-size:13px;font-weight:600;flex:none}
.trust{background:var(--white);border-block:1px solid var(--line);padding:22px 0;font-size:13px;color:var(--muted)}
.trust__list{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:16px}
.panel{background:var(--forest);color:var(--white);border-radius:var(--r-lg);padding:44px}
.panel .eyebrow{color:var(--on-dark-soft)}
.panel p{color:var(--on-dark);margin:16px 0}
.panel ul{list-style:none;padding:0;margin:0 0 26px}
.panel li{padding:5px 0 5px 28px;position:relative}
.panel li::before{content:"✓";position:absolute;left:0;color:var(--accent-bright)}
.single-service{padding:44px 8px 0 24px}
.single-service p{color:var(--muted);margin:14px 0 22px}
.single-service button,.single-service a{text-decoration:none;display:flex;justify-content:space-between;width:100%;background:var(--white);border:1px solid var(--line);border-radius:var(--r-sm);padding:14px 18px;margin-bottom:8px;font:500 15px var(--sans);cursor:pointer;color:var(--text)}
.single-service button:hover,.single-service a:hover{border-color:var(--forest);color:var(--forest)}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media(max-width:900px){.service-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.service-grid{grid-template-columns:1fr}}
.service-card{background:var(--sand);border-radius:var(--r-md);padding:28px;display:flex;flex-direction:column;gap:6px}
.service-card svg{width:26px;height:26px;stroke:var(--forest);fill:none;stroke-width:1.6;margin-bottom:14px}
.service-card p{font-size:15px;color:var(--muted);flex:1}
.service-card a{font-size:14px;font-weight:600;color:var(--forest);margin-top:12px;text-decoration:none}
.service-card a:hover{text-decoration:underline}
.service-card--dark{background:var(--ink);color:var(--white)}.service-card--dark p{color:var(--on-dark)}.service-card--dark svg{stroke:var(--accent-bright)}.service-card--dark a{color:var(--accent-bright)}
.why{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
@media(max-width:900px){.why{grid-template-columns:1fr;gap:32px}}
.why .lede{color:var(--muted);margin-top:18px;max-width:54ch}
.compare{background:var(--white);border-radius:var(--r-md);padding:18px 20px;display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:12px;font-size:14px;box-shadow:var(--shadow-sm)}
.compare .eyebrow{font-size:10px;margin-bottom:6px}
.compare div+div .eyebrow{color:var(--forest)}
.compare div+div{font-weight:500}
.stats{background:var(--forest);color:var(--white);padding:72px 0}
.stats__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:36px}
.stats b{display:block;font:300 clamp(44px,6vw,68px)/1 var(--serif)}
.stats span{display:block;font-size:14px;color:var(--on-dark);margin-top:10px}
.stats .text-sm{color:var(--on-dark-faint);margin-top:36px}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}
@media(max-width:900px){.steps{grid-template-columns:1fr 1fr}}@media(max-width:560px){.steps{grid-template-columns:1fr}}
.steps div{border-top:2px solid var(--forest);padding-top:18px}
.steps i{font:300 30px var(--serif);color:var(--forest);font-style:normal}
.steps p{color:var(--muted);font-size:15px}
.fees{display:grid;grid-template-columns:1fr 1fr;gap:56px}
@media(max-width:900px){.fees{grid-template-columns:1fr;gap:28px}}
.fees .lede{color:var(--muted);margin:16px 0 20px;max-width:50ch}
.fee-table{background:var(--white);border-radius:var(--r-md)}
.fee-table div{display:grid;grid-template-columns:130px 1fr;gap:16px;padding:18px 22px;border-bottom:1px solid var(--line);font-size:15px}
.fee-table div:last-child{border:0}.fee-table b{font-weight:600}.fee-table span{color:var(--muted)}
.reviews{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.reviews .card{box-shadow:none}
.reviews blockquote{font:300 22px/1.3 var(--serif);margin-bottom:18px}
.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px}
@media(max-width:900px){.faq{grid-template-columns:1fr;gap:28px}}
.faq details{border-bottom:1px solid var(--line);padding:20px 0}
.faq summary{cursor:pointer;font-weight:600;list-style:none;display:flex;justify-content:space-between;gap:16px}
.faq summary::after{content:"+";font-size:22px;line-height:1;color:var(--forest)}
.faq details[open] summary::after{content:"–"}
.faq summary::-webkit-details-marker{display:none}
.faq details p{color:var(--muted);margin-top:12px;max-width:56ch}
.site-footer{background:var(--ink);color:var(--on-dark);padding:56px 0 40px;font-size:14px}
.footer__grid{display:flex;justify-content:space-between;gap:32px;flex-wrap:wrap;margin-bottom:32px}
.site-footer .logo{color:var(--white)}
.site-footer a{display:block;margin-bottom:6px;text-decoration:none}.site-footer a:hover{color:var(--white)}
.site-footer p{color:var(--on-dark-faint);font-size:12px;max-width:80ch}
.hero__note{margin-top:16px}
.faq__help{margin-top:14px;font-size:15px}
.admin-bar .site-header{top:32px}
@media(max-width:782px){.admin-bar .site-header{top:46px}}
.logo__img{height:34px;width:auto}
.service-card img{width:26px;height:26px;margin-bottom:14px;object-fit:contain}
.av{overflow:hidden}
.av img{width:100%;height:100%;object-fit:cover;border-radius:50%}
.entry{padding:64px 0}
.entry__content{max-width:68ch;margin-top:24px}
.entry__content>*+*{margin-top:1em}
