:root{--bg:#0f2a24;--paper:#f2f7f4;--ink:#14221e;--a:#1f8a6a;--a2:#0d5c48;--soft:#d7ebe3;--muted:#5a6b65;--line:rgba(20,34,30,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:"Source Sans 3",system-ui,sans-serif;color:var(--ink);background:radial-gradient(ellipse at 15% 0%,rgba(31,138,106,.16),transparent 42%),linear-gradient(180deg,#e8f3ee,#f2f7f4 45%,#dde9e3);line-height:1.75}
h1,h2,.brand,.tag,.eyebrow{font-family:"Libre Baskerville",Georgia,serif;letter-spacing:-.02em}
.shell{width:min(1100px,calc(100% - 2rem));margin-inline:auto}
.notice{background:var(--bg);color:#d7ebe3;text-align:center;font-size:.78rem;padding:.45rem 1rem}
.nav{position:sticky;top:0;z-index:20;backdrop-filter:blur(14px);background:rgba(242,247,244,.9);border-bottom:1px solid var(--line)}
.nav-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem 0}
.brand{display:flex;align-items:center;gap:.55rem;text-decoration:none;color:var(--ink);font-weight:700}
.brand img{height:40px;width:auto;display:block}
.links{display:flex;gap:1rem;flex-wrap:wrap}.links a{color:var(--ink);text-decoration:none;font-weight:600;font-size:.92rem}
.nav-cta{display:flex;gap:.5rem}
.btn{border:0;cursor:pointer;border-radius:14px;padding:.72rem 1.2rem;font:inherit;font-weight:700;transition:transform .2s}
.btn:hover{transform:translateY(-1px)}
.btn.pri{background:linear-gradient(135deg,var(--a),var(--a2));color:#fff;box-shadow:0 10px 26px rgba(13,92,72,.28)}
.btn.ghost,.btn.out{background:transparent;border:1px solid rgba(20,34,30,.22);color:var(--ink)}
.hero{position:relative;min-height:68vh;display:grid;align-items:end;overflow:hidden}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,42,36,.25),rgba(15,42,36,.82))}
.hero-panel{position:relative;z-index:1;padding:4rem 0 3rem;color:#f2f7f4}
.eyebrow{opacity:.9;margin:0 0 .6rem;font-size:.95rem}
.hero h1{font-size:clamp(2.4rem,5vw,4.1rem);line-height:1.05;margin:0 0 1rem;max-width:16ch}
.lead{font-size:1.15rem;max-width:48ch;opacity:.95}
.hero-actions{display:flex;gap:.7rem;flex-wrap:wrap;margin-top:1.4rem}
.strip{background:var(--bg);color:#d7ebe3;padding:1.1rem 0}.strip-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.strip span{display:block;font-size:.75rem;opacity:.7}.strip strong{font-size:1.05rem}
.block{padding:2.8rem 0}.block.soft{background:rgba(215,235,227,.45)}
.tag{display:inline-block;font-size:.78rem;color:var(--a2);margin:0 0 .55rem;text-transform:uppercase;letter-spacing:.06em}
.prose h2{font-size:clamp(1.85rem,3.4vw,3.05rem);line-height:1.15;margin:0 0 1rem;color:var(--ink)}
.prose h3{font-size:clamp(1.25rem,2.2vw,1.85rem);margin:1.6rem 0 .7rem;color:var(--a2)}
.prose p{margin:0 0 1.05rem;color:var(--muted)}
.byline{font-size:.92rem;color:var(--a2)}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1.2rem}
.gallery img{width:100%;height:220px;object-fit:cover;border-radius:18px}
.faq details{border:1px solid var(--line);border-radius:14px;padding:.9rem 1rem;margin:0 0 .7rem;background:#fff}
.faq summary{font-weight:700;cursor:pointer}
.footer{padding:2rem 0 2.5rem;border-top:1px solid var(--line);color:var(--muted);font-size:.9rem}
@media(max-width:860px){.links{display:none}.strip-grid,.gallery{grid-template-columns:1fr 1fr}.hero{min-height:56vh}}
@media(max-width:560px){.strip-grid,.gallery{grid-template-columns:1fr}.nav-cta .ghost{display:none}}