:root{
  --g900:#0a2218;--g800:#0e2d20;--g700:#134228;--g500:#1f7048;--g400:#25a06a;--g300:#4aba88;--g100:#d1f5e6;--g50:#edfaf4;
  --white:#fff;--off:#f8faf9;--text:#0a1a0f;--text2:#2d4a38;--text3:#5a7a68;--border:#e4efe9;--gold:#b5943a;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--off);color:var(--text);font-family:'DM Sans',sans-serif;line-height:1.75}a{color:inherit}
.nav{position:sticky;top:0;z-index:50;background:rgba(10,34,24,.96);backdrop-filter:blur(16px);color:#fff;border-bottom:1px solid rgba(255,255,255,.06)}
.nav-inner{max-width:1200px;margin:0 auto;padding:1rem clamp(.85rem,2vw,1.25rem);display:flex;align-items:center;justify-content:space-between;gap:1rem}
.logo{font-family:'Playfair Display',serif;font-size:1.55rem;font-weight:700;text-decoration:none;color:#fff}.logo span{color:var(--g300)}
.nav-links{display:flex;align-items:center;gap:clamp(.8rem,1.7vw,1.2rem)}.nav-links a{text-decoration:none;color:rgba(255,255,255,.66);font-size:.82rem;white-space:nowrap}.nav-links a:hover{color:var(--g300)}
.nav-cta{background:var(--g400);color:#fff!important;padding:.72rem 1.05rem;border-radius:999px;font-weight:500}
.hero{position:relative;overflow:hidden;background:radial-gradient(circle at 15% 5%,rgba(37,160,106,.22),transparent 34%),linear-gradient(135deg,#071812,var(--g900) 55%,#0d2b20);color:#fff;padding:6.5rem 1.25rem 5rem}
.hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:62px 62px;pointer-events:none}
.hero-inner{max-width:1200px;margin:0 auto;position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);gap:4rem;align-items:center}
.eyebrow{display:inline-flex;align-items:center;gap:.55rem;color:var(--g300);text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;font-weight:500}.eyebrow:before{content:"";width:24px;height:2px;background:var(--g400)}
h1,h2,h3{font-family:'Playfair Display',serif}h1{font-size:clamp(2.6rem,6vw,5rem);line-height:1;margin:.9rem 0 1.25rem}h2{font-size:clamp(2rem,4vw,3rem);line-height:1.08;margin:.5rem 0 1rem}h3{line-height:1.15}
.hero p{max-width:720px;color:rgba(255,255,255,.68);font-size:1.06rem}.hero-actions{display:flex;flex-wrap:wrap;gap:.85rem;margin-top:2rem}.btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border-radius:999px;padding:.95rem 1.45rem;font-weight:500}.btn-primary{background:linear-gradient(135deg,var(--g400),var(--g500));color:#fff;box-shadow:0 16px 34px rgba(37,160,106,.24)}.btn-ghost{border:1px solid rgba(255,255,255,.22);color:#fff}
.visual-card{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:22px;padding:1.2rem;box-shadow:0 24px 70px rgba(0,0,0,.25);animation:float 6s ease-in-out infinite}.visual-card-inner{background:#fff;color:var(--g900);border-radius:16px;padding:1.2rem;min-height:260px}.visual-line{height:10px;background:var(--border);border-radius:20px;margin:.7rem 0}.visual-line.short{width:65%}.visual-bars{height:95px;display:flex;align-items:end;gap:.55rem;margin-top:1rem}.visual-bars span{flex:1;border-radius:8px 8px 0 0;background:linear-gradient(var(--g300),var(--g700))}.visual-bars span:nth-child(1){height:42%}.visual-bars span:nth-child(2){height:76%}.visual-bars span:nth-child(3){height:58%}.visual-bars span:nth-child(4){height:90%}
.photo-frame{margin:0;border-radius:22px;overflow:hidden;border:1px solid rgba(255,255,255,.14);box-shadow:0 24px 70px rgba(0,0,0,.24);background:var(--g800)}.photo-frame img{display:block;width:100%;height:100%;object-fit:cover}.hero-photo{height:min(420px,42vw);min-height:320px}.portrait-photo{height:510px}.portrait-photo img{object-position:center top}.section-photo{margin:2.3rem 0 0;height:390px;border-color:var(--border);box-shadow:0 16px 46px rgba(10,34,24,.1)}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
.section{padding:5.5rem 1.25rem}.inner{max-width:1200px;margin:0 auto}.section-sub{max-width:720px;color:var(--text3);font-size:1rem}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2.3rem}.grid.two{grid-template-columns:repeat(2,1fr)}
.card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:1.45rem;box-shadow:0 1px 0 rgba(10,34,24,.03);transition:transform .25s,box-shadow .25s,border-color .25s}.card:hover{transform:translateY(-5px);border-color:var(--g100);box-shadow:0 18px 46px rgba(10,34,24,.09)}
.icon{width:42px;height:42px;border-radius:12px;background:var(--g50);display:grid;place-items:center;margin-bottom:1rem}.card h3{margin:.2rem 0 .5rem;font-size:1.2rem}.card p{color:var(--text3);font-size:.92rem}
.band{background:var(--g900);color:#fff}.band .card{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.1)}.band .card p{color:rgba(255,255,255,.55)}
.steps{counter-reset:step;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.14);border-radius:18px;overflow:hidden;margin-top:2.3rem}.step{counter-increment:step;background:#fff;padding:1.7rem;min-height:170px}.step:before{content:"0" counter(step);font-family:'Playfair Display',serif;font-size:2.2rem;color:var(--g400);opacity:.55}.step h3{color:var(--g900);margin:.9rem 0 .45rem}.step p{color:var(--text3);margin:0;line-height:1.65}
.faq{max-width:900px;margin-top:2rem}.faq details{background:#fff;border:1px solid var(--border);border-radius:14px;padding:1rem 1.2rem;margin-bottom:.75rem}.faq summary{cursor:pointer;font-weight:500;color:var(--g900)}.faq p{color:var(--text3)}
.entity-box{background:linear-gradient(135deg,var(--g50),#fff);border:1px solid var(--g100);border-radius:18px;padding:1.5rem;margin-top:2rem;color:var(--text2)}
.posts{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:2.2rem}.post-card{text-decoration:none;padding:0;overflow:hidden}.post-thumb{display:block;width:100%;height:208px;object-fit:cover}.post-copy{padding:1.35rem 1.45rem 1.45rem}.post-card .tag{font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;color:var(--g500)}
.article-shell{background:#f8fbf9}.article-hero{padding-bottom:3.5rem}.article-photo{height:390px}.article-wrap{max-width:980px;margin:0 auto;padding:4rem 1.25rem}.article-content{background:#fff;border:1px solid var(--border);border-radius:24px;padding:clamp(1.4rem,4vw,3.5rem);box-shadow:0 24px 70px rgba(7,24,18,.07)}.article-content h2{font-family:'Playfair Display',serif;font-size:clamp(1.7rem,3vw,2.45rem);line-height:1.08;margin:2.5rem 0 1rem;color:var(--g900)}.article-content p,.article-content li{color:var(--text2);font-size:1.04rem}.article-lead{font-size:1.16rem!important;color:var(--text1)!important}.article-image{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:2rem 0}.mini-panel{background:linear-gradient(135deg,#f2fbf6,#fff);border:1px solid var(--g100);border-radius:18px;padding:1.3rem}.mini-panel span{display:block;color:var(--g500);font-size:.72rem;text-transform:uppercase;letter-spacing:.12em}.mini-panel strong{display:block;margin-top:.5rem;font-family:'Playfair Display',serif;font-size:1.55rem;color:var(--g900);line-height:1.05}.article-cta{margin-top:3rem;background:linear-gradient(135deg,var(--g50),#fff);border:1px solid var(--g100);color:var(--g900);border-radius:18px;padding:1.55rem 1.65rem;display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.article-cta h2{font-size:1.55rem;margin:0 0 .35rem}.article-cta p{color:var(--text3);margin:0;max-width:560px}.article-cta .btn{flex-shrink:0;padding:.82rem 1.25rem}
.footer{background:var(--g900);color:rgba(255,255,255,.55);padding:3rem 1.25rem}.footer-inner{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;gap:2rem;flex-wrap:wrap}
@media(max-width:860px){.nav-links{display:none}.hero-inner,.grid,.grid.two,.posts,.steps,.article-image{grid-template-columns:1fr}.hero{padding:5rem 1rem 4rem}.section{padding:4rem 1rem}.hero-photo,.article-photo{height:280px;min-height:0}.portrait-photo{height:430px}.section-photo{height:255px}.hero-actions .btn{width:100%}.article-cta{display:block}.article-cta .btn{margin-top:1.1rem}}
