:root{--ink:#0a1114;--deep:#0d1d24;--green:#13302b;--blue:#122a3a;--gold:#c9a45c;--bone:#ece6da;--mute:#9aa7a6}
*{box-sizing:border-box;margin:0}html{scroll-behavior:smooth}
body{background:var(--ink);color:var(--bone);font:300 18px/1.7 Inter,system-ui,sans-serif}
h1,h2,h3{font-family:"Playfair Display",Georgia,serif;font-weight:500;line-height:1.12}
h1{font-size:clamp(40px,6vw,84px);max-width:14ch}h2{font-size:clamp(32px,4vw,54px);margin:.2em 0 .6em}h3{font-size:24px;margin:.4em 0}
a{color:var(--gold)}p{margin:0 0 1em;color:#d6d0c4}
.eyebrow{font:600 12px Inter;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);margin-bottom:1em}
.nav{position:fixed;inset:0 0 auto;z-index:10;display:flex;align-items:center;gap:30px;padding:18px 5vw;background:linear-gradient(#0a1114e6,#0a111400)}
.logo{font:700 18px "Playfair Display";letter-spacing:.35em;color:var(--bone);text-decoration:none;margin-right:auto}
.links a{color:var(--bone);text-decoration:none;font-size:14px;margin-left:26px;opacity:.85}
.lang button{background:none;border:0;color:var(--mute);font:600 13px Inter;cursor:pointer;letter-spacing:.1em}.lang button.on{color:var(--gold)}.lang span{color:#445}
.btn,.btn-sm{display:inline-block;background:var(--gold);color:#111!important;text-decoration:none;font:600 15px Inter;padding:16px 30px;border:0;cursor:pointer;letter-spacing:.04em}
.btn-sm{padding:9px 18px;font-size:13px;opacity:1!important}.btn:hover{background:#e0bd74}
.btn-ghost{background:none;border:1px solid #ece6da66;color:var(--bone);padding:15px 24px;font:400 14px Inter;cursor:pointer}
.hero{position:relative;height:100vh;min-height:620px;display:flex;align-items:flex-end;overflow:hidden}
.hero video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.veil{position:absolute;inset:0;background:linear-gradient(0deg,#0a1114 2%,#0a111499 40%,#0a111433)}
.hero-in{position:relative;padding:0 5vw 12vh;max-width:1100px}.lead{font-size:20px;max-width:46ch}.row{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}
.split{display:grid;grid-template-columns:1fr 1fr;min-height:90vh;background:var(--deep)}
.split .txt{padding:14vh 6vw;align-self:center}.split .img{background:center/cover}
.gold-list{list-style:none;padding:0;margin-top:1.4em;display:grid;grid-template-columns:1fr 1fr;gap:14px}
.gold-list li{border-top:1px solid var(--gold);padding-top:10px;font-family:"Playfair Display";font-size:22px;font-style:italic}
.standard{position:relative;background:center/cover fixed;padding:22vh 5vw;text-align:center}
.standard blockquote{position:relative;max-width:900px;margin:auto}.standard .veil{background:#0a1114bb}
.trio{display:flex;justify-content:center;gap:40px;margin-top:30px;font:600 13px Inter;letter-spacing:.3em;text-transform:uppercase;color:var(--gold)}
.wrap{padding:16vh 6vw;max-width:1400px;margin:auto}
#how{background:linear-gradient(var(--ink),var(--blue));max-width:none}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:34px;margin:40px 0 70px}
.step b{font:500 44px "Playfair Display";color:var(--gold)}.step p{font-size:16px}
.terrain{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.terrain figure{height:440px;background:center/cover;position:relative;margin:0}
.terrain figcaption{position:absolute;inset:auto 0 0;padding:26px;background:linear-gradient(0deg,#0a1114ee,transparent)}
.terrain em{display:block;font:italic 500 28px "Playfair Display"}.terrain span{font-size:14px;color:var(--mute)}
.outcomes{background:var(--green);max-width:none}.outcomes ol{counter-reset:o;list-style:none;padding:0;max-width:900px}
.outcomes li{counter-increment:o;display:flex;gap:28px;padding:22px 0;border-bottom:1px solid #ffffff1c;font-size:21px}
.outcomes li:before{content:"0" counter(o);font:500 22px "Playfair Display";color:var(--gold)}
.rev{grid-template-columns:1fr 1.2fr;background:var(--ink)}
.photo-ph{display:flex;align-items:center;justify-content:center;background:repeating-linear-gradient(45deg,#13302b,#13302b 12px,#122a3a 12px,#122a3a 24px);color:var(--gold);font:600 16px Inter;letter-spacing:.2em;min-height:400px}
.ph{color:var(--gold);font-size:15px;border:1px dashed var(--gold);display:inline-block;padding:6px 12px}
.apply{position:relative;background:center/cover;padding:18vh 5vw;display:flex;justify-content:center}.apply .veil{background:#0a1114cc}
.card{position:relative;max-width:640px;width:100%;text-align:center}
form{display:grid;gap:12px;margin:24px 0}input,textarea{background:#ffffff0d;border:1px solid #ffffff2a;color:var(--bone);padding:15px;font:300 16px Inter}
.small{font-size:14px}footer{padding:40px;text-align:center;font-size:13px;color:var(--mute)}
@media(max-width:800px){body{font-size:16px}.links{display:none}.split,.rev{grid-template-columns:1fr}.split .img{min-height:60vh}
.steps,.terrain{grid-template-columns:1fr}.gold-list{grid-template-columns:1fr}.terrain figure{height:340px}.standard{background-attachment:scroll}.trio{gap:16px;flex-wrap:wrap}.hero-in{padding-bottom:8vh}}
.aside{font-size:15px;color:var(--mute);margin-top:1.4em;font-style:italic}
.props{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;margin-top:34px;text-align:left}
.props b{display:block;font:500 20px "Playfair Display";color:var(--gold);border-top:1px solid var(--gold);padding-top:10px;margin-bottom:6px}.props span{font-size:14px;color:#d6d0c4}
.pillars{background:var(--deep);max-width:none;text-align:center}
.goal,.found{border:1px solid var(--gold);padding:16px;max-width:1100px;margin:30px auto;font:italic 500 22px "Playfair Display"}
.found{border-style:dashed;font:400 16px Inter;color:var(--mute)}
.pgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;max-width:1100px;margin:auto}.pgrid div{background:#ffffff08;padding:26px;text-align:left}.pgrid p{font-size:15px}
.lead2{max-width:70ch}.steps.five{grid-template-columns:repeat(5,1fr)}.step b{font-size:20px;letter-spacing:.05em}
.faq{max-width:1100px}.two{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-bottom:40px}
details{border-bottom:1px solid #ffffff1c;padding:18px 0}summary{cursor:pointer;font:500 21px "Playfair Display"}details p{margin-top:12px}
@media(max-width:800px){.props,.pgrid,.steps.five,.two{grid-template-columns:1fr}}
.timeline{list-style:none;padding:0;margin:50px 0 30px;display:grid;grid-template-columns:repeat(5,1fr);gap:26px;position:relative}
.timeline:before{content:"";position:absolute;left:0;right:0;top:7px;height:1px;background:linear-gradient(90deg,var(--gold),#c9a45c33)}
.timeline li{position:relative;padding-top:34px}
.timeline .dot{position:absolute;top:0;left:0;width:15px;height:15px;border-radius:50%;background:var(--ink);border:2px solid var(--gold)}
.timeline b{font:600 12px Inter;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
.timeline p{font-size:15px}.timeline small{display:block;border-top:1px solid #ffffff1c;padding-top:10px;font-size:13px;color:var(--mute)}
.timeline small em{color:var(--gold);font-style:normal;letter-spacing:.1em;text-transform:uppercase;font-size:11px}
.why{max-width:none;background:linear-gradient(var(--deep),var(--ink))}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:40px 0}
.cards article{background:#ffffff07;border-top:2px solid var(--gold);padding:28px}
.cards .who{font:600 11px Inter;letter-spacing:.22em;text-transform:uppercase;color:var(--mute)}
.cards p{font-size:15px}.cards .so{color:var(--gold);font-style:italic;margin:0}
.three{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;border-top:1px solid #ffffff1c;padding-top:30px}.three p{font-size:15px}
@media(max-width:800px){.timeline{grid-template-columns:1fr;gap:28px;padding-left:30px}
.timeline:before{left:7px;right:auto;top:0;bottom:0;width:1px;height:auto;background:linear-gradient(var(--gold),#c9a45c33)}
.timeline li{padding-top:0}.timeline .dot{left:-30px}.cards,.three{grid-template-columns:1fr}}
.photo{position:relative;overflow:hidden;min-height:560px}
.photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 12%;filter:saturate(.9) contrast(1.05)}
.photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 60%,#0a1114),linear-gradient(0deg,#0a111488,transparent 40%)}
@media(max-width:800px){.photo{min-height:480px}.photo:after{background:linear-gradient(0deg,#0a1114,transparent 40%)}}
/* Founder photo: full portrait, soft fade on all edges */
#founder .photo{min-height:auto;display:flex;align-items:center;justify-content:center;padding:6vh 2vw;overflow:visible}
#founder .photo:after{display:none}
#founder .photo img{position:relative;inset:auto;height:min(820px,88vh);width:auto;max-width:100%;aspect-ratio:571/1024;object-fit:contain;filter:saturate(.9) contrast(1.05);
-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent),linear-gradient(0deg,transparent,#000 5%,#000 90%,transparent);-webkit-mask-composite:source-in;mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent),linear-gradient(0deg,transparent,#000 5%,#000 90%,transparent);mask-composite:intersect}
@media(max-width:800px){#founder .photo{padding:0}#founder .photo img{width:100%;height:auto}}
/* Contact readability */
.apply .veil{background:radial-gradient(ellipse 60% 70% at 50% 50%,#0a1114f2 0%,#0a1114d9 55%,#0a1114b3 100%),linear-gradient(0deg,#0a1114,#0a111400 30%)}
.apply .card{background:#0a1114b3;padding:48px 40px;border:1px solid #c9a45c33;backdrop-filter:blur(4px)}
.apply input,.apply textarea{background:#0d1d24e6;border:1px solid #ffffff38;color:var(--bone)}
.apply input::placeholder,.apply textarea::placeholder{color:#aeb8b6}
.apply input:focus,.apply textarea:focus{outline:none;border-color:var(--gold)}
@media(max-width:800px){.apply .card{padding:34px 20px}}

/* v6 — connection page */
.props.three{grid-template-columns:repeat(3,1fr)}
.props.three span{font-size:16px}
.cards.five{grid-template-columns:repeat(5,1fr)}
.timeline.phases{grid-template-columns:repeat(3,1fr)}
.apply .small{color:var(--mute);font-size:13px;margin-top:14px}
@media(max-width:1100px){.cards.five{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){.props.three,.cards.five,.timeline.phases{grid-template-columns:1fr}}
/* v7 — hero fits long headline */
.hero{height:auto;min-height:100vh}
.hero-in{padding-top:120px;padding-bottom:9vh}
.hero h1{font-size:clamp(32px,4.2vw,60px);max-width:22ch}
.hero .lead{font-size:18px;max-width:52ch}
@media(max-width:800px){.hero h1{font-size:clamp(30px,8vw,40px)}.hero-in{padding-top:96px}}
/* v8 — longer headline */
.hero h1{font-size:clamp(30px,3.6vw,52px);max-width:24ch;margin-bottom:.5em}
@media(max-width:800px){.hero h1{font-size:clamp(28px,7vw,36px)}}
