:root{
  --dg:#1A3C2A; --mg:#2D6A4F; --ac:#52B788;
  --gold:#C9A84C; --cream:#F7F4EE; --warm:#EDE8DF;
  --text:#1A1A18; --muted:#5F6F62; --light:#EAF2EC;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;scroll-padding-top:64px;}
body{font-family:'DM Sans',sans-serif;background:var(--cream);color:var(--text);overflow-x:hidden;-webkit-font-smoothing:antialiased;}
img{max-width:100%;display:block;}
a{color:inherit;}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:200;display:flex;align-items:center;justify-content:space-between;
  padding:0 40px;height:64px;background:rgba(26,60,42,0.97);backdrop-filter:blur(12px);border-bottom:1px solid rgba(82,183,136,0.15);}
.nav-logo img{height:38px;width:auto;mix-blend-mode:screen;}
.nav-links{display:flex;gap:26px;list-style:none;}
.nav-links a{font-size:10.5px;letter-spacing:0.16em;color:rgba(255,255,255,0.68);text-decoration:none;text-transform:uppercase;transition:color .2s;}
.nav-links a:hover{color:var(--ac);}
.nav-right{display:flex;align-items:center;gap:10px;}
.lang-toggle{display:flex;border:1px solid rgba(82,183,136,0.3);}
.lang-btn{font-family:inherit;font-size:10px;font-weight:500;letter-spacing:0.12em;padding:6px 11px;border:none;cursor:pointer;background:transparent;color:rgba(255,255,255,0.55);}
.lang-btn.on{background:var(--ac);color:var(--dg);}
.nav-cta{font-family:inherit;font-size:10px;font-weight:500;letter-spacing:0.14em;text-transform:uppercase;color:var(--dg);background:var(--ac);padding:9px 16px;text-decoration:none;white-space:nowrap;}
.nav-cta:hover{background:#6BCFA0;}
.burger{display:none;background:none;border:none;cursor:pointer;padding:8px;}
.burger span{display:block;width:20px;height:1.5px;background:#fff;margin:4px 0;}

/* SHARED */
section{position:relative;}
.inner{max-width:1120px;margin:0 auto;padding:96px 48px;}
.eyebrow{font-size:10px;letter-spacing:0.32em;text-transform:uppercase;color:var(--mg);margin-bottom:16px;display:flex;align-items:center;gap:10px;}
.eyebrow::before{content:'';width:22px;height:1px;background:currentColor;flex-shrink:0;}
.dark .eyebrow{color:var(--ac);}
h2{font-family:'Cormorant Garamond',serif;font-size:clamp(32px,3.6vw,50px);font-weight:300;line-height:1.14;color:var(--dg);margin-bottom:22px;max-width:820px;}
h2 em{font-style:italic;color:var(--mg);}
.dark h2{color:#fff;} .dark h2 em{color:var(--ac);}
.lead{font-size:16px;font-weight:300;line-height:1.8;color:var(--muted);max-width:700px;}
.dark .lead{color:rgba(255,255,255,0.66);}
p.body{font-size:15px;font-weight:300;line-height:1.85;color:#3a463d;margin-bottom:18px;}
.dark{background:var(--dg);color:#fff;}
.btn-p{display:inline-block;font-family:inherit;font-size:10.5px;font-weight:500;letter-spacing:0.14em;text-transform:uppercase;color:var(--dg);background:var(--ac);padding:14px 26px;border:none;cursor:pointer;text-decoration:none;transition:all .2s;}
.btn-p:hover{background:#6BCFA0;transform:translateY(-1px);}
.btn-o{display:inline-block;font-size:10.5px;letter-spacing:0.14em;text-transform:uppercase;color:rgba(255,255,255,0.8);padding:13px 26px;border:1px solid rgba(255,255,255,0.28);text-decoration:none;transition:all .2s;}
.btn-o:hover{border-color:var(--ac);color:var(--ac);}

/* HERO */
#accueil{background:url("img/parcelle.jpg") center/cover no-repeat;min-height:100vh;display:flex;align-items:center;padding-top:64px;}
#accueil::before{content:'';position:absolute;inset:0;background:linear-gradient(to right,rgba(26,60,42,0.94) 0%,rgba(26,60,42,0.84) 45%,rgba(26,60,42,0.45) 75%,rgba(26,60,42,0.25) 100%);}
.hero{position:relative;z-index:1;max-width:1120px;margin:0 auto;padding:72px 48px;display:grid;grid-template-columns:1.35fr 1fr;gap:64px;align-items:center;width:100%;}
.hero .eyebrow{color:var(--ac);}
.hero h1{font-family:'Cormorant Garamond',serif;font-size:clamp(38px,4.6vw,64px);font-weight:300;line-height:1.08;color:#fff;margin-bottom:18px;}
.hero h1 em{font-style:italic;color:var(--ac);}
.signature{font-size:11.5px;letter-spacing:0.28em;text-transform:uppercase;color:var(--gold);margin-bottom:28px;}
.hero p{font-size:15px;font-weight:300;line-height:1.8;color:rgba(255,255,255,0.78);max-width:520px;margin-bottom:26px;}
.status{display:inline-flex;align-items:center;gap:10px;font-size:11.5px;letter-spacing:0.06em;color:rgba(255,255,255,0.85);border:1px solid rgba(201,168,76,0.35);background:rgba(201,168,76,0.08);padding:10px 16px;margin-bottom:34px;}
.status i{width:8px;height:8px;border-radius:50%;background:var(--gold);flex-shrink:0;box-shadow:0 0 0 4px rgba(201,168,76,0.18);}
.ctas{display:flex;gap:14px;flex-wrap:wrap;}
.facts{display:grid;gap:2px;}
.fact{background:rgba(26,60,42,0.55);backdrop-filter:blur(6px);border-left:2px solid var(--ac);padding:22px 24px;}
.fact b{display:block;font-family:'Cormorant Garamond',serif;font-size:38px;font-weight:300;color:var(--ac);line-height:1;margin-bottom:6px;}
.fact span{font-size:12px;letter-spacing:0.04em;color:rgba(255,255,255,0.7);line-height:1.5;}

/* ORIGINE */
.origin-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:64px;margin-top:40px;}
.timeline{list-style:none;border-left:1px solid rgba(45,106,79,0.25);padding-left:0;}
.timeline li{position:relative;padding:0 0 20px 26px;}
.timeline li::before{content:'';position:absolute;left:-4px;top:6px;width:7px;height:7px;border-radius:50%;background:var(--mg);}
.timeline li.now::before{background:var(--gold);box-shadow:0 0 0 4px rgba(201,168,76,0.2);}
.timeline b{display:block;font-family:'Cormorant Garamond',serif;font-size:20px;font-weight:600;color:var(--dg);line-height:1.1;margin-bottom:3px;}
.timeline span{font-size:13px;font-weight:300;line-height:1.6;color:var(--muted);}
.archives{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-top:64px;}
.archives figure{position:relative;overflow:hidden;background:#222;}
.archives img{width:100%;height:230px;object-fit:cover;filter:grayscale(0.2) contrast(1.02);transition:transform .5s;}
.archives figure:hover img{transform:scale(1.04);}
.archives figcaption{position:absolute;left:0;right:0;bottom:0;padding:34px 18px 14px;background:linear-gradient(to top,rgba(0,0,0,0.75),transparent);color:#fff;font-size:12.5px;}
.archives figcaption small{display:block;font-size:10px;letter-spacing:0.14em;text-transform:uppercase;color:rgba(255,255,255,0.55);margin-top:2px;}
.founder-quote{margin-top:40px;padding:34px 40px;background:var(--warm);border-left:3px solid var(--gold);}
.founder-quote p{font-family:'Cormorant Garamond',serif;font-size:22px;font-style:italic;font-weight:300;line-height:1.5;color:var(--dg);}
.memoire{margin-top:72px;padding-top:56px;border-top:1px solid rgba(45,106,79,0.18);}
.mem-title{font-family:'Cormorant Garamond',serif;font-size:clamp(28px,3vw,38px);font-weight:300;line-height:1.2;color:var(--dg);margin-top:6px;}
.mem-title em{font-style:italic;color:var(--mg);}
.mem-k{font-size:11px;font-weight:500;letter-spacing:0.2em;text-transform:uppercase;color:var(--mg);margin-bottom:12px;}
.memoire .maxim{margin-top:36px;}
.biotope-block{margin-top:44px;}
.biotope-block .chain{margin-top:14px;font-size:12px;letter-spacing:0.08em;color:var(--gold);}
.founder-quote cite{display:block;margin-top:14px;font-style:normal;font-size:10.5px;letter-spacing:0.2em;text-transform:uppercase;color:var(--mg);}

/* DOCTRINE */
.doctrine{text-align:center;}
.doctrine .inner{padding:88px 48px;}
.doctrine .kicker{font-size:10px;letter-spacing:0.32em;text-transform:uppercase;color:var(--gold);margin-bottom:22px;}
.doctrine blockquote{font-family:'Cormorant Garamond',serif;font-size:clamp(30px,3.6vw,48px);font-weight:300;font-style:italic;line-height:1.2;color:#fff;max-width:820px;margin:0 auto 28px;}
.doctrine blockquote em{color:var(--ac);}
.doctrine p{font-size:15px;font-weight:300;line-height:1.85;color:rgba(255,255,255,0.68);max-width:680px;margin:0 auto;}

/* IDEE */
#idee{background:#fff;}
#avancement{background:#fff;}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-top:20px;}
.step{background:var(--cream);padding:34px 26px;border-top:3px solid transparent;transition:all .25s;}
.step:hover{border-top-color:var(--ac);transform:translateY(-3px);box-shadow:0 14px 36px rgba(26,60,42,0.08);}
.step .n{font-family:'Cormorant Garamond',serif;font-size:44px;font-weight:300;color:#c9dccd;line-height:1;margin-bottom:14px;}
.step h3{font-size:12px;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;color:var(--mg);margin-bottom:12px;}
.step p{font-size:13.5px;font-weight:300;line-height:1.72;color:var(--muted);}
.tag{display:inline-block;margin-top:12px;font-size:9.5px;letter-spacing:0.14em;text-transform:uppercase;color:#8a6d1f;background:rgba(201,168,76,0.14);padding:4px 8px;}
.maxim{margin-top:56px;padding:44px;background:var(--dg);text-align:center;}
.maxim p{font-family:'Cormorant Garamond',serif;font-size:28px;font-style:italic;font-weight:300;color:#fff;}
.maxim small{display:block;margin-top:14px;font-size:13px;font-weight:300;color:rgba(255,255,255,0.6);line-height:1.7;max-width:640px;margin-left:auto;margin-right:auto;}

/* TERRITOIRE */
#territoire{background:var(--warm);}
.terr-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;margin-top:36px;}
.map{margin-top:52px;border:1px solid rgba(26,60,42,0.12);background:#fff;}
.map img{width:100%;height:auto;}
.families{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-top:52px;}
.family{background:var(--cream);padding:24px 22px;border-bottom:3px solid transparent;transition:all .22s;}
.family:hover{border-bottom-color:var(--ac);background:#fff;}
.family h3{font-family:'Cormorant Garamond',serif;font-size:21px;font-weight:600;color:var(--dg);margin-bottom:4px;}
.family p{font-size:13px;font-weight:300;color:var(--muted);}
.note{margin-top:22px;font-size:12.5px;font-weight:300;font-style:italic;line-height:1.7;color:var(--muted);max-width:760px;}

/* AVANCEMENT */
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:2px;margin-top:48px;}
.col{padding:38px 36px;}
.col.done{background:var(--cream);}
.col.todo{background:var(--light);}
.col h3{font-size:11px;font-weight:500;letter-spacing:0.18em;text-transform:uppercase;margin-bottom:22px;display:flex;align-items:center;gap:10px;}
.col.done h3{color:var(--mg);} .col.todo h3{color:var(--dg);}
.col ul{list-style:none;}
.col li{position:relative;padding:9px 0 9px 26px;font-size:14px;font-weight:300;line-height:1.6;color:#3a463d;border-bottom:1px solid rgba(26,60,42,0.07);}
.col li:last-child{border-bottom:none;}
.col.done li::before{content:'●';position:absolute;left:0;top:9px;color:var(--ac);font-size:11px;}
.col.todo li::before{content:'○';position:absolute;left:0;top:8px;color:var(--mg);font-size:13px;}
.roadmap{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;margin-top:56px;}
.rm{background:var(--dg);padding:30px 26px;position:relative;}
.rm.now{background:var(--mg);}
.rm b{display:block;font-family:'Cormorant Garamond',serif;font-size:34px;font-weight:300;color:var(--ac);line-height:1;margin-bottom:12px;}
.rm.now b{color:#fff;}
.rm p{font-size:13px;font-weight:300;line-height:1.5;color:rgba(255,255,255,0.78);}
.rm p span{display:block;position:relative;padding:0 0 7px 14px;}
.rm p span::before{content:"";position:absolute;left:0;top:7px;width:5px;height:5px;border-radius:50%;background:var(--ac);}
.rm-foot{text-align:center;margin-top:20px;font-family:'Cormorant Garamond',serif;font-size:19px;font-style:italic;color:var(--mg);}
.funding{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:64px;align-items:center;}
.funding .box{padding:30px 32px;border:1px solid rgba(45,106,79,0.22);background:var(--cream);}
.funding .box h3{font-size:11px;font-weight:500;letter-spacing:0.18em;text-transform:uppercase;color:var(--mg);margin-bottom:12px;}
.funding .box p{font-size:14px;font-weight:300;line-height:1.75;color:#3a463d;}
.press{padding:8px 0 8px 28px;border-left:2px solid var(--gold);}
.press p{font-family:'Cormorant Garamond',serif;font-size:26px;font-style:italic;font-weight:300;color:var(--dg);line-height:1.3;}
.press cite{display:block;margin-top:10px;font-style:normal;font-size:10.5px;letter-spacing:0.16em;text-transform:uppercase;color:var(--muted);}

/* CONTACT */
.profiles{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;margin-top:48px;}
.p-card{display:flex;flex-direction:column;justify-content:flex-start;padding:28px 22px;background:rgba(255,255,255,0.04);border:1px solid rgba(82,183,136,0.14);cursor:pointer;transition:all .22s;text-align:left;font-family:inherit;color:inherit;}
.p-card:hover,.p-card.sel{background:rgba(82,183,136,0.12);border-color:var(--ac);}
.p-card h3{font-size:12px;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;color:var(--ac);margin-bottom:10px;}
.p-card p{font-size:13px;font-weight:300;line-height:1.65;color:rgba(255,255,255,0.66);}
.cform{margin-top:40px;display:grid;grid-template-columns:1fr 1fr;gap:14px;max-width:820px;}
.cform label{display:block;font-size:10px;letter-spacing:0.16em;text-transform:uppercase;color:rgba(255,255,255,0.5);margin-bottom:6px;}
.cform input,.cform select,.cform textarea{width:100%;font-family:inherit;font-size:14px;font-weight:300;color:#fff;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.16);padding:12px 14px;outline:none;transition:border-color .2s;}
.cform select option{color:var(--text);}
.cform input:focus,.cform select:focus,.cform textarea:focus{border-color:var(--ac);}
.cform .full{grid-column:1/-1;}
.cform textarea{min-height:120px;resize:vertical;}
.rgpd{font-size:11.5px;font-weight:300;line-height:1.65;color:rgba(255,255,255,0.45);}

/* FOOTER */
footer{background:#10261b;color:rgba(255,255,255,0.55);}
footer .inner{padding:48px 48px 36px;}
.f-top{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px;padding-bottom:26px;border-bottom:1px solid rgba(255,255,255,0.08);}
.f-top img{height:34px;width:auto;mix-blend-mode:screen;}
.f-top div{font-size:12.5px;line-height:1.7;text-align:right;}
.f-top a{color:var(--ac);text-decoration:none;}
details{margin-top:22px;font-size:12px;line-height:1.75;}
summary{cursor:pointer;letter-spacing:0.14em;text-transform:uppercase;font-size:10.5px;color:rgba(255,255,255,0.7);}
details div{margin-top:14px;max-width:760px;}
details p{margin-bottom:8px;}
.todo-mark{color:var(--gold);}
.copy{margin-top:22px;font-size:11px;letter-spacing:0.06em;color:rgba(255,255,255,0.35);}

/* ENGAGEMENTS */
#engagements{background:var(--cream);}
.codes{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-top:48px;}
.code{background:var(--dg);padding:40px 32px;position:relative;}
.code .k{font-size:10px;letter-spacing:0.28em;text-transform:uppercase;color:var(--gold);margin-bottom:14px;}
.code h3{font-family:'Cormorant Garamond',serif;font-size:28px;font-weight:300;color:#fff;margin-bottom:14px;line-height:1.15;}
.code p{font-size:14px;font-weight:300;line-height:1.75;color:rgba(255,255,255,0.72);}
.sub-h{font-size:11px;font-weight:500;letter-spacing:0.2em;text-transform:uppercase;color:var(--mg);margin:64px 0 0;}
.commit{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;margin-top:20px;}
.cm{background:#fff;padding:28px 24px;border-top:3px solid var(--ac);}
.cm.wide{grid-column:1/-1;background:var(--dg);border-top-color:var(--gold);padding:34px 32px;}
.cm.wide h3{color:#fff;font-size:26px;}
.cm.wide p{color:rgba(255,255,255,0.75);font-size:14.5px;max-width:820px;}
.cm h3{font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:600;color:var(--dg);margin-bottom:10px;}
.cm p{font-size:13.5px;font-weight:300;line-height:1.7;color:var(--muted);}
.filiere{margin-top:44px;display:grid;grid-template-columns:auto 1fr;gap:28px;align-items:start;padding:34px 36px;background:var(--dg);}
.filiere .k{font-family:'Cormorant Garamond',serif;font-size:40px;font-weight:300;color:var(--ac);line-height:1.05;white-space:nowrap;}
.filiere .k sup{font-size:0.45em;font-style:normal;vertical-align:super;margin-left:2px;}
.filiere .k em{font-style:italic;font-size:30px;color:rgba(255,255,255,0.8);}
.filiere h3{font-size:11px;font-weight:500;letter-spacing:0.2em;text-transform:uppercase;color:var(--gold);margin-bottom:12px;}
.filiere p{font-size:14.5px;font-weight:300;line-height:1.8;color:rgba(255,255,255,0.78);}
@media(max-width:980px){.codes{grid-template-columns:1fr;}.commit{grid-template-columns:1fr 1fr;}}
@media(max-width:520px){.commit{grid-template-columns:1fr;}.filiere{grid-template-columns:1fr;gap:12px;padding:26px 20px;}}
/* WHY */
.why{margin-top:52px;padding:44px 44px 34px;background:var(--light);border-left:3px solid var(--mg);}
.why-t{font-family:'Cormorant Garamond',serif;font-size:32px;font-weight:400;color:var(--dg);margin-bottom:12px;}
.why-lead{font-size:15px;font-weight:300;line-height:1.8;color:#3a463d;max-width:760px;}
.why-lead2{margin-top:14px;}
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:30px;}
.why-c .k{font-family:'Cormorant Garamond',serif;font-size:34px;font-weight:300;color:var(--ac);line-height:1;margin-bottom:10px;}
.why-c h4{font-size:12px;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;color:var(--mg);margin-bottom:10px;}
.why-c p{font-size:14px;font-weight:300;line-height:1.75;color:#3a463d;}
.refs{margin-top:30px;padding-top:16px;border-top:1px solid rgba(45,106,79,0.18);font-size:11.5px;font-weight:300;line-height:1.7;color:var(--muted);}
.refs a{color:var(--mg);}
@media(max-width:980px){.why-grid{grid-template-columns:1fr;gap:22px;}}
@media(max-width:820px){.why{padding:30px 20px 24px;}}
/* HORIZON */
.horizon{margin-top:56px;padding:40px 40px 32px;background:#fff;border:1px solid rgba(45,106,79,0.18);}
.horizon .sub-h{margin:0 0 8px;color:var(--gold);}
.hz-t{font-family:'Cormorant Garamond',serif;font-size:32px;font-weight:400;color:var(--dg);margin-bottom:10px;}
.hz-t em{font-size:22px;color:var(--muted);}
.hz-l{font-size:15px;font-weight:300;line-height:1.8;color:#3a463d;max-width:760px;}
.hz-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-top:26px;}
.hz-c{background:var(--cream);padding:26px 24px;}
.hz-c .k{width:34px;height:34px;border-radius:50%;background:var(--dg);color:var(--ac);display:flex;align-items:center;justify-content:center;font-family:'Cormorant Garamond',serif;font-size:20px;margin-bottom:14px;}
.hz-c h4{font-size:12px;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;color:var(--mg);margin-bottom:10px;}
.hz-c p{font-size:14px;font-weight:300;line-height:1.72;color:#3a463d;}
.hz-who{margin-top:26px;padding:18px 22px;border-left:2px solid var(--ac);background:rgba(82,183,136,0.07);font-size:15px;line-height:1.7;font-weight:300;}.hz-who b{font-weight:500;color:var(--mg);margin-right:4px;}
.hz-n{margin-top:20px;font-size:13px;font-style:italic;font-weight:300;color:var(--muted);}
@media(max-width:980px){.hz-grid{grid-template-columns:1fr;}}
@media(max-width:820px){.horizon{padding:28px 20px 24px;}}
/* RESPONSIVE */
@media(max-width:1200px){
  .burger{display:block;}
  .nav-links{display:none;position:absolute;top:64px;left:0;right:0;flex-direction:column;gap:0;background:rgba(26,60,42,0.99);border-bottom:1px solid rgba(82,183,136,0.2);}
  .nav-links.open{display:flex;}
  .nav-links a{display:block;padding:16px 20px;border-top:1px solid rgba(255,255,255,0.06);}
}
@media(max-width:980px){
  .profiles,.roadmap{grid-template-columns:1fr 1fr;}
  .steps{grid-template-columns:1fr;}
  .hero,.origin-grid,.terr-grid,.funding{grid-template-columns:1fr;gap:40px;}
}
@media(max-width:820px){
  nav{padding:0 16px;}
  .nav-cta{display:none;}
  .inner,.doctrine .inner,footer .inner{padding-left:16px;padding-right:16px;}
  .inner{padding-top:72px;padding-bottom:72px;}
  .hero{padding:48px 16px;}
  .two-col,.archives,.families,.cform{grid-template-columns:1fr;}
  .archives img{height:200px;}
  .founder-quote{padding:26px 22px;}
  .col{padding:30px 22px;}
  .maxim{padding:32px 20px;}
  .f-top div{text-align:left;}
}
@media(max-width:520px){
  .steps,.profiles,.roadmap{grid-template-columns:1fr;}
  .nav-logo img{height:30px;}
}

/* ===== MULTI-PAGES ===== */
.nav-links a.active{color:var(--ac);}
.nav-logo{display:flex;align-items:center;}
.page-hero{position:relative;padding:150px 0 72px;background:linear-gradient(rgba(26,60,42,0.93),rgba(26,60,42,0.86)),url("img/parcelle.jpg") center/cover no-repeat;color:#fff;}
.page-hero::after{content:'';position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(to right,var(--ac),transparent);}
.page-hero .ph{max-width:1120px;margin:0 auto;padding:0 48px;}
.page-hero .eyebrow{color:var(--ac);}
.page-hero h1{font-family:'Cormorant Garamond',serif;font-size:clamp(34px,4.2vw,56px);font-weight:300;line-height:1.1;color:#fff;max-width:860px;}
.page-hero h1 em{font-style:italic;color:var(--ac);}
.page-hero + section .inner, .page-hero + section.doctrine .inner{padding-top:72px;}
.teasers{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;margin-top:48px;}
.teaser{display:flex;flex-direction:column;background:#fff;padding:32px 26px;text-decoration:none;border-top:3px solid transparent;transition:all .25s;}
.teaser:hover{border-top-color:var(--ac);transform:translateY(-3px);box-shadow:0 14px 36px rgba(26,60,42,0.08);}
.teaser .n{font-family:'Cormorant Garamond',serif;font-size:40px;font-weight:300;color:#c9dccd;line-height:1;margin-bottom:14px;}
.teaser h3{font-family:'Cormorant Garamond',serif;font-size:25px;font-weight:600;color:var(--dg);margin-bottom:10px;}
.teaser p{font-size:13.5px;font-weight:300;line-height:1.7;color:var(--muted);flex:1;}
.teaser .go{margin-top:18px;font-size:10.5px;letter-spacing:0.16em;text-transform:uppercase;color:var(--mg);}
.cta-band{text-align:center;}
.cta-band .inner{padding:84px 48px;}
.cta-band h2{margin:0 auto 26px;}
.next{background:var(--warm);}
.next a{display:flex;justify-content:space-between;align-items:center;gap:20px;max-width:1120px;margin:0 auto;padding:40px 48px;text-decoration:none;}
.next span{font-size:10.5px;letter-spacing:0.2em;text-transform:uppercase;color:var(--muted);}
.next b{font-family:'Cormorant Garamond',serif;font-size:30px;font-weight:400;color:var(--dg);}
.next a:hover b{color:var(--mg);}
.next .arrow{font-size:28px;color:var(--mg);}
.legal .inner{max-width:860px;}
.legal p{font-size:14.5px;font-weight:300;line-height:1.85;color:#3a463d;margin-bottom:16px;}
.legal .todo-mark{color:#a0801f;}
.f-links{margin-top:20px;display:flex;gap:22px;flex-wrap:wrap;font-size:11px;letter-spacing:0.12em;text-transform:uppercase;}
.f-links a{color:rgba(255,255,255,0.7);text-decoration:none;}
.f-links a:hover{color:var(--ac);}
@media(max-width:980px){.teasers{grid-template-columns:1fr 1fr;}}
@media(max-width:820px){.page-hero{padding:110px 0 52px;}.page-hero .ph,.next a{padding-left:16px;padding-right:16px;}.cta-band .inner{padding:64px 16px;}}
@media(max-width:520px){.teasers{grid-template-columns:1fr;}.next b{font-size:24px;}}
