:root{--paper:#e7e9e4;--paper2:#f0f0eb;--ink:#121d22;--deep:#0a1014;--deep2:#13272f;--sea:#83b8ba;--warm:#c69a72;--line:rgba(20,36,40,.15)}
html{scroll-behavior:smooth}body{font-family:'Inter Tight',Arial,sans-serif;background:#0a1014}h1,h2,h3,.brand,.press-v5 blockquote,.finance-total{font-family:'Inter Tight',Arial,sans-serif}h2{font-weight:850;letter-spacing:-.075em;line-height:.94}h3{font-weight:800;letter-spacing:-.055em}p{letter-spacing:-.012em}
header,header.is-scrolled,header.is-menu-open{height:0;background:transparent;border:0}.nav{width:min(1280px,calc(100% - 48px));height:64px;margin-top:18px;padding:0 22px 0 24px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:rgba(10,16,20,.72);box-shadow:0 10px 35px rgba(0,0,0,.14)}header.is-scrolled .nav,header.is-menu-open .nav{background:rgba(10,16,20,.95)}.brand{font-weight:850;letter-spacing:-.09em}.menu{background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.28)}.navlinks{background:radial-gradient(circle at 70% 20%,#24414a 0%,transparent 40%),#091217}.navlinks>a{font-weight:850;letter-spacing:-.07em}
.hero{min-height:700px;background:#090e11;isolation:isolate}.hero-media{inset:9% 3.2% 8% 31%;border-radius:28px;overflow:hidden;box-shadow:0 35px 90px rgba(0,0,0,.44)}.hero-media img{object-position:center;filter:contrast(1.04) saturate(1.05) brightness(.95);animation:heroFilm 2.2s cubic-bezier(.18,.68,.2,1) both}.hero-shader{position:absolute;inset:0;width:100%;height:100%;opacity:.32;mix-blend-mode:screen;pointer-events:none;filter:blur(28px)}.hero-curtain{position:absolute;z-index:4;inset:0;background:#060a0d;pointer-events:none;animation:curtainExit 1.55s .1s cubic-bezier(.76,0,.18,1) both}.hero-shade{background:linear-gradient(90deg,#080e12 0%,rgba(8,14,18,.98) 13%,rgba(8,14,18,.77) 38%,rgba(8,14,18,.05) 83%),linear-gradient(0deg,#080e12 0%,transparent 35%)}.hero-index{z-index:5;top:118px;left:max(4vw,calc((100vw - 1400px)/2));right:max(4vw,calc((100vw - 1400px)/2));font-size:11px;color:#d1d7d4}.hero>.wrap{z-index:5;bottom:clamp(130px,16vh,185px)}.hero h1{font-weight:900;font-size:clamp(70px,9.1vw,150px);line-height:.91;letter-spacing:-.085em;max-width:1300px;animation:none}.hero-line{display:block;width:max-content;max-width:100%;opacity:0;transform:translateY(75px);filter:blur(12px);animation:lineArrival 1.05s cubic-bezier(.18,.72,.18,1) forwards}.hero-line:nth-child(1){animation-delay:.7s}.hero-line:nth-child(2){animation-delay:.92s}.hero-line:nth-child(3){animation-delay:1.14s}.hero-outline{color:transparent;-webkit-text-stroke:1.5px rgba(239,242,236,.94);text-shadow:none}.hero-actions{margin-top:40px;animation:rise .9s 1.45s both}.hero .btn{min-height:50px;padding:14px 24px;border-radius:100px}.hero .btn.white{background:#eaece5;color:#0b1317}.hero .btn.outline{background:rgba(12,19,23,.18);backdrop-filter:blur(8px)}.scroll-cue{z-index:5;left:max(4vw,calc((100vw - 1400px)/2));bottom:35px}.hero:after{z-index:5;right:max(4vw,calc((100vw - 1400px)/2))}
#projet{position:relative;background:radial-gradient(ellipse at 80% 10%,#d3ddd5 0%,transparent 45%),linear-gradient(180deg,#b7c5c1,#e7e9e4 340px)}#projet .introphoto{border-radius:26px;box-shadow:0 25px 65px rgba(15,31,35,.14)}#projet .introphoto img{border-radius:26px}.section h2{letter-spacing:-.075em}.eyebrow,.finance-kicker{letter-spacing:.16em}.night-interlude{height:82vh;min-height:550px;background:#091217;position:relative}.night-interlude:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0a1014,transparent 25%,transparent 72%,rgba(8,14,18,.18))}.night-interlude img{width:100%;height:100%;object-fit:cover;object-position:center 46%;filter:contrast(1.08) saturate(.75)}
.cyan{background:radial-gradient(circle at 9% 5%,#26444c 0%,transparent 36%),radial-gradient(circle at 90% 85%,#1d3b44 0%,transparent 38%),#0a1014}.axis{border-radius:24px;box-shadow:0 20px 55px rgba(0,0,0,.18)}.axis img{border-radius:24px}.axis:after{border-radius:24px}.axis .inner{transform:translateY(8px);transition:transform .5s}.axis:hover .inner{transform:translateY(0)}
#campus{background:radial-gradient(circle at 5% 16%,rgba(124,170,164,.27),transparent 40%),linear-gradient(125deg,#e2e7e0,#eff0ea 58%,#d8e2dd)}.campushead h2{max-width:13ch}.campus-explorer{background:#0e1d23;border-radius:26px;padding:clamp(12px,1.7vw,24px);box-shadow:0 25px 75px rgba(17,43,46,.2)}.map-topline{display:flex;justify-content:space-between;gap:15px;color:#d9e6e2;font-size:11px;font-weight:800;letter-spacing:.16em;padding:13px 6px 21px}.map-topline span:last-child{color:#7eaaa9}.plan-map{aspect-ratio:785/544;position:relative;overflow:hidden;border-radius:18px;background:#708284;isolation:isolate}.map-canvas{position:absolute;inset:0;transition:transform .55s cubic-bezier(.18,.72,.2,1);transform-origin:50% 50%}.map-canvas>img{position:absolute;width:159.5%;max-width:none;height:100%;left:-56.7%;top:0;object-fit:fill;filter:saturate(.72) contrast(1.06) brightness(.87)}.map-hotspots{position:absolute;inset:0}.map-vignette{position:absolute;z-index:1;inset:0;background:linear-gradient(0deg,rgba(4,12,17,.31),transparent 28%,transparent 75%,rgba(4,12,17,.17)),radial-gradient(ellipse at center,transparent 45%,rgba(4,12,17,.24));pointer-events:none}.map-point{position:absolute;z-index:2;width:38px;height:38px;display:grid;place-items:center;transform:translate(-50%,-50%);border-radius:50%;border:1px solid rgba(255,255,255,.65);background:#a85120;color:#fff;font-size:14px;font-weight:850;box-shadow:0 0 0 5px rgba(255,255,255,.16),0 7px 20px rgba(0,0,0,.35);transition:transform .25s,background .25s,box-shadow .25s}.map-point.blue{background:#387cb0}.map-point:hover,.map-point:focus-visible,.map-point.active{transform:translate(-50%,-50%) scale(1.18);background:#e39b58;box-shadow:0 0 0 9px rgba(252,187,113,.27),0 12px 24px rgba(0,0,0,.3);outline:none}.map-point.blue:hover,.map-point.blue.active{background:#6cb8d7;box-shadow:0 0 0 9px rgba(114,191,220,.28)}.map-popover{position:absolute;z-index:5;width:min(300px,calc(100% - 24px));padding:18px 20px 19px;border:1px solid rgba(255,255,255,.21);border-radius:16px;background:rgba(8,19,25,.93);color:#ecf3ef;box-shadow:0 16px 45px rgba(0,0,0,.35);backdrop-filter:blur(14px);animation:popoverIn .32s cubic-bezier(.18,.72,.2,1) both}.map-popover[hidden]{display:none}.map-popover:after{content:'';position:absolute;bottom:-7px;left:calc(50% - 7px);width:14px;height:14px;background:#0d1c22;transform:rotate(45deg);border-right:1px solid rgba(255,255,255,.16);border-bottom:1px solid rgba(255,255,255,.16)}.map-popover.below:after{top:-7px;bottom:auto;transform:rotate(225deg)}.map-popover strong{display:block;color:#e9f3ed;font-size:18px;letter-spacing:-.04em;margin-bottom:7px}.map-popover p{font-size:14px;line-height:1.45;color:#bdd0cb}.map-zoom{position:absolute;z-index:6;right:16px;bottom:16px;display:flex;align-items:center;gap:5px;padding:5px;background:rgba(7,17,22,.86);border:1px solid rgba(255,255,255,.2);border-radius:100px;color:#fff;backdrop-filter:blur(8px)}.map-zoom button{height:30px;width:30px;border:0;border-radius:50%;color:#fff;background:rgba(255,255,255,.13);font-size:21px;line-height:1}.map-zoom button:hover{background:var(--warm);color:#111}.map-zoom span{font-size:11px;min-width:40px;text-align:center}.facilities{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;border:0;margin-top:12px}.facility,.facility:nth-child(5n),.facility:nth-child(2n){border:1px solid rgba(255,255,255,.13);border-radius:12px;background:rgba(255,255,255,.055);color:#d1dfda;min-height:63px;padding:11px 13px;font-size:12px;letter-spacing:-.015em}.facility span{color:#8ab8b6;margin-bottom:4px}.facility:hover,.facility.active{background:#b78257;border-color:#b78257;color:#121b1f}.facility:hover span,.facility.active span{color:#263238}.legal{margin-top:17px}
.services{position:relative;overflow:hidden;background:radial-gradient(circle at 10% 18%,rgba(77,137,150,.43),transparent 34%),radial-gradient(circle at 90% 75%,rgba(159,92,71,.25),transparent 38%),linear-gradient(140deg,#132932,#091419 58%,#172c34);color:#eaf0eb}.services:before{content:'';position:absolute;inset:-20%;background:radial-gradient(circle at 40% 45%,rgba(107,190,192,.1),transparent 24%);filter:blur(36px);animation:lightDrift 14s ease-in-out infinite alternate;pointer-events:none}.services>.wrap{position:relative}.services .eyebrow{color:#a4d0c8}.services h2{max-width:10ch}.featuregrid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px;align-items:stretch}.feature{display:flex;flex-direction:column;grid-column:span 5;grid-row:auto;min-height:350px;overflow:hidden;border:1px solid rgba(255,255,255,.13);border-radius:24px;background:linear-gradient(150deg,rgba(255,255,255,.12),rgba(255,255,255,.035));box-shadow:0 24px 60px rgba(0,0,0,.14)}.feature:first-child{grid-column:span 7;grid-row:span 2}.feature:nth-child(4){grid-column:span 12;display:grid;grid-template-columns:1.08fr .92fr;min-height:360px}.feature img{width:100%;height:190px;flex:0 0 auto;object-fit:cover;filter:saturate(.75) contrast(1.04);transition:transform .7s,filter .7s}.feature:first-child img{height:430px;flex:1 1 auto}.feature:nth-child(4) img{height:100%;min-height:360px}.feature>div{position:relative;background:transparent;padding:clamp(25px,3vw,42px)}.feature:nth-child(4)>div{display:flex;flex-direction:column;justify-content:center}.feature h3{color:#edf2ed}.feature p{color:#b9cac7}.feature:hover{border-color:rgba(196,155,116,.7)}.feature:hover img{filter:saturate(.98) contrast(1.05)}
.dc-section{background:radial-gradient(circle at 75% 0%,#234954,transparent 38%),linear-gradient(145deg,#0a1116,#17343e)}.dc-visual{border-radius:26px;overflow:hidden}.dc-visual img{filter:saturate(.8) contrast(1.07)}.dc-grid article{border-color:rgba(255,255,255,.12)}.stats{background:radial-gradient(circle at 20% 15%,#233f45,transparent 42%),#0b1419}.finance-section{background:radial-gradient(circle at 90% 0%,rgba(174,143,106,.2),transparent 40%),linear-gradient(140deg,#e4e9e1,#d5e1dc)}.finance-card{border-radius:26px;box-shadow:0 28px 75px rgba(33,65,65,.1)}#histoire{background:linear-gradient(160deg,#ecece5,#dbe3dd)}.history>img{border-radius:25px;box-shadow:0 25px 65px rgba(17,44,42,.13)}.press{background:radial-gradient(circle at 95% 10%,#dee6db,transparent 36%),#cddbd5}.founder{background:radial-gradient(circle at 0% 20%,#243d43,transparent 37%),#0b151a}.foundergrid{align-items:center}.founder-portrait{margin:0;overflow:hidden;border-radius:24px;box-shadow:0 25px 70px rgba(0,0,0,.22)}.founder-portrait img{width:100%;aspect-ratio:1.05;object-fit:cover;object-position:center}.founder h2{font-weight:850}.portrait-gallery{margin:clamp(65px,9vw,135px) auto 0;position:relative}.portrait-stage{aspect-ratio:16/8.8;border-radius:26px;overflow:hidden;background:#162328}.portrait-stage:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,rgba(0,0,0,.3),transparent 25%)}.portrait-frame{object-position:center 42%;filter:contrast(1.07);transition:opacity 1.05s ease,transform 5.3s ease}.portrait-frame.is-active{transform:scale(1.03)}.partners-section{background:linear-gradient(145deg,#e8ebe5,#d6e2dd)}.partner-tile{border-radius:16px;border:1px solid rgba(31,69,69,.08);box-shadow:0 10px 35px rgba(38,70,65,.04)}.contact{background:radial-gradient(circle at 90% 10%,rgba(112,169,169,.35),transparent 35%),linear-gradient(130deg,#0d1e25,#1c424b)}
[data-reveal]{opacity:0;transform:translateY(38px);filter:blur(10px);transition:opacity .9s cubic-bezier(.18,.7,.2,1),transform .9s cubic-bezier(.18,.7,.2,1),filter .9s cubic-bezier(.18,.7,.2,1)}[data-reveal].is-visible{opacity:1;transform:translateY(0);filter:blur(0)}.axis[data-reveal],.feature[data-reveal]{filter:blur(8px)}.axis[data-reveal].is-visible,.feature[data-reveal].is-visible{filter:blur(0)}
@keyframes curtainExit{0%{clip-path:inset(0 0 0 0)}100%{clip-path:inset(0 0 0 100%)}}@keyframes heroFilm{0%{transform:scale(1.13);filter:blur(20px) brightness(.35)}100%{transform:scale(1.025);filter:blur(0) contrast(1.04) saturate(1.05) brightness(.95)}}@keyframes lineArrival{to{opacity:1;transform:translateY(0);filter:blur(0)}}@keyframes popoverIn{from{opacity:0;transform:translateY(9px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes lightDrift{to{transform:translate(10%,6%)}}
@media(max-width:1050px){.hero-media{inset:10% 3% 8% 24%}.hero h1{font-size:clamp(62px,9.2vw,105px)}.facilities{grid-template-columns:repeat(4,minmax(0,1fr))}.feature:first-child img{height:320px}.feature{min-height:320px}}
@media(max-width:760px){.nav{width:calc(100% - 28px);height:57px;margin-top:10px;padding:0 12px 0 17px}.brand{font-size:12px}.menu{min-width:90px}.hero{min-height:650px}.hero-media{inset:10% 13px 13% 13px;border-radius:20px}.hero-media img{object-position:50% center}.hero-shade{background:linear-gradient(0deg,#090f13 0%,rgba(9,15,19,.88) 21%,rgba(9,15,19,.16) 63%),linear-gradient(90deg,rgba(9,15,19,.52),transparent 80%)}.hero-index{left:27px;right:27px;top:98px}.hero>.wrap{bottom:120px}.hero h1{font-size:clamp(38px,8.8vw,68px);line-height:.94}.hero-line{transform:translateY(45px)}.hero-actions{margin-top:26px}.hero .btn{min-height:42px;padding:11px 15px}.scroll-cue{left:27px}.hero:after{right:27px}.night-interlude{height:62vh;min-height:390px}.facilities{grid-template-columns:repeat(3,minmax(0,1fr))}.featuregrid{grid-template-columns:repeat(2,minmax(0,1fr))}.feature,.feature:first-child,.feature:nth-child(4){grid-column:span 1;grid-row:auto;display:flex;min-height:unset}.feature:first-child img,.feature:nth-child(4) img,.feature img{height:210px;min-height:0;flex:0 0 auto}.feature p{font-size:14px}.feature h3{font-size:21px}.feature>div{padding:23px}.portrait-stage{aspect-ratio:4/3}}
@media(max-width:540px){.hero{min-height:620px}.hero-media{inset:12% 10px 14% 10px}.hero h1{font-size:clamp(37px,8.6vw,52px)}.hero .btn{font-size:9px}.hero-actions{gap:6px}.hero-index{top:89px}.night-interlude{min-height:320px;height:55vh}.campus-explorer{border-radius:19px;padding:9px}.map-topline{font-size:9px;line-height:1.35;padding:9px 5px 12px}.map-topline span:last-child{text-align:right}.plan-map{border-radius:12px}.map-point{width:25px;height:25px;font-size:10px;box-shadow:0 0 0 3px rgba(255,255,255,.2),0 5px 12px rgba(0,0,0,.25)}.map-point:hover,.map-point.active{box-shadow:0 0 0 5px rgba(252,187,113,.25)}.map-zoom{bottom:7px;right:7px;padding:3px}.map-zoom button{width:24px;height:24px;font-size:17px}.map-zoom span{font-size:9px;min-width:32px}.map-popover{padding:11px 13px;width:min(235px,calc(100% - 20px))}.map-popover strong{font-size:14px}.map-popover p{font-size:11px}.facilities{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.facility,.facility:nth-child(5n),.facility:nth-child(2n){font-size:10px;min-height:54px;padding:8px 9px;border-radius:9px}.facility span{font-size:8px}.featuregrid{grid-template-columns:1fr}.feature,.feature:first-child,.feature:nth-child(4){grid-column:span 1}.feature:first-child img,.feature:nth-child(4) img,.feature img{height:235px}.portrait-stage{aspect-ratio:1.18}.founder-portrait img{aspect-ratio:1.15}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}[data-reveal]{opacity:1;transform:none;filter:none}.hero-line{opacity:1;transform:none;filter:none}.hero-curtain{display:none}}
/* Contact */
.contact{min-height:unset;padding:clamp(95px,11vw,170px) 0;background:radial-gradient(circle at 95% 5%,rgba(110,176,179,.38),transparent 32%),radial-gradient(circle at 5% 90%,rgba(172,107,77,.18),transparent 30%),linear-gradient(135deg,#0c1a20,#12313a)}.contact>.wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(45px,7vw,115px);align-items:start}.contact .eyebrow,.contact h2,.contact>.wrap>p{grid-column:1}.contact .eyebrow{margin-bottom:0}.contact h2{margin:0;max-width:9ch}.contact>.wrap>p{margin:0;max-width:440px}.contact-form{grid-column:2;grid-row:1 / span 3;padding:clamp(26px,3.4vw,48px);border:1px solid rgba(255,255,255,.18);border-radius:28px;background:linear-gradient(145deg,rgba(255,255,255,.11),rgba(255,255,255,.035));box-shadow:0 30px 80px rgba(0,0,0,.15);backdrop-filter:blur(20px)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:17px}.contact-form label{display:block;margin-bottom:25px;min-width:0}.contact-form label>span{display:block;font-size:10px;font-weight:800;letter-spacing:.18em;color:#a8c9c4;margin-bottom:10px}.contact-form input,.contact-form select,.contact-form textarea{display:block;width:100%;border:1px solid rgba(255,255,255,.23);border-radius:12px;outline:none;background:rgba(8,19,25,.47);color:#fff;font:500 15px 'Inter Tight',Arial,sans-serif;padding:15px 16px;transition:border-color .25s,box-shadow .25s,background .25s}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#91a9a7}.contact-form select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23b7d0ca' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:43px}.contact-form select option{background:#122b33;color:#fff}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:#9cd1c9;box-shadow:0 0 0 3px rgba(156,209,201,.16);background:rgba(8,19,25,.7)}.contact-form textarea{min-height:145px;resize:vertical}.contact-form .message-field{margin-bottom:11px}.contact-form .trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.form-bottom{display:flex;gap:20px;justify-content:space-between;align-items:center}.contact .form-note{font-size:12px;line-height:1.5;color:#a7c0bc;max-width:240px}.contact-form .btn{margin:0;white-space:nowrap;flex:0 0 auto;border:0}.contact-form .btn:disabled{opacity:.55;cursor:wait}.form-status{min-height:22px;font-size:13px!important;margin-top:17px;color:#cfdfd8}.form-status[data-state=error]{color:#ffd0ba}.form-status[data-state=success]{color:#b8eed8}
@media(max-width:1050px){.contact>.wrap{grid-template-columns:1fr 1.25fr;gap:40px}.contact h2{font-size:clamp(47px,6vw,80px)}}
@media(max-width:760px){.contact>.wrap{display:block}.contact h2{max-width:12ch;margin:22px 0}.contact>.wrap>p{margin:0 0 38px}.contact-form{padding:26px}.form-bottom{align-items:flex-start}}
@media(max-width:540px){.contact h2{font-size:clamp(43px,11vw,61px)}.contact-form{padding:20px;border-radius:20px}.form-row{grid-template-columns:1fr;gap:0}.contact-form label{margin-bottom:19px}.contact-form input,.contact-form select,.contact-form textarea{font-size:14px;padding:13px}.form-bottom{display:block}.contact .form-note{margin-bottom:17px}.contact-form .btn{width:100%}}
/* Keep long editorial titles legible at every width. */
.section h2,.dc-section h2,.finance-section h2,.partners-section h2{letter-spacing:-.055em;word-spacing:.055em}.section h3,.dc-section h3,.feature h3{letter-spacing:-.035em;word-spacing:.045em}.contact h2{letter-spacing:-.055em;word-spacing:.05em;font-size:clamp(49px,5.5vw,84px);max-width:11ch}
@media(max-width:760px){.contact h2{font-size:clamp(43px,10vw,61px);max-width:13ch}}
.section h2,.dc-section h2,.finance-section h2,.partners-section h2,.contact h2{letter-spacing:-.03em;word-spacing:.16em}.section h3,.dc-section h3,.feature h3{letter-spacing:-.02em;word-spacing:.1em}

/* A distinct editorial voice for the studio. */
h1,h2,h3,.brand,.navlinks>a,.stat b,.press-v5 blockquote,.finance-total{font-family:'Sora',Arial,sans-serif}
h2,.founder h2{font-weight:700;line-height:1.02}
h3{font-weight:700}
.section h2,.dc-section h2,.finance-section h2,.partners-section h2,.contact h2{letter-spacing:-.045em;word-spacing:.09em}
.section h3,.dc-section h3,.feature h3{letter-spacing:-.035em;word-spacing:.05em}
.brand{letter-spacing:-.055em}
.hero h1{font-weight:800;letter-spacing:-.065em;line-height:.99}
.hero-outline{font-family:'Instrument Serif',Georgia,serif;font-style:italic;font-weight:400;letter-spacing:-.035em;word-spacing:.14em;color:#e9d3bb;-webkit-text-stroke:0;text-shadow:0 10px 40px rgba(224,174,119,.18)}

/* Portraits become a contained editorial chapter. */
.portrait-gallery{width:min(1320px,calc(100% - clamp(36px,6vw,112px)));margin:clamp(68px,8vw,115px) auto 0;display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);align-items:stretch;overflow:hidden;border:1px solid rgba(231,235,221,.16);border-radius:28px;background:radial-gradient(circle at 15% 0%,rgba(196,141,100,.18),transparent 43%),linear-gradient(135deg,#14282e,#0c171c);box-shadow:0 35px 90px rgba(0,0,0,.23)}
.gallery-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(28px,4.5vw,65px);min-width:0}
.gallery-copy .eyebrow{margin-bottom:clamp(25px,4vw,56px);font-size:10px;letter-spacing:.18em}
.gallery-copy h3{font-size:clamp(29px,3vw,49px);line-height:1.15;letter-spacing:-.04em;color:#f1eee5}
.gallery-copy p{font-size:14px;line-height:1.65;color:#b7c4be;margin:clamp(22px,3vw,38px) 0 0;max-width:29ch}
.portrait-stage{height:clamp(360px,34vw,480px);aspect-ratio:auto;border-radius:0;background:#172125}
.portrait-stage:after{background:linear-gradient(90deg,rgba(11,20,24,.12),transparent 25%),linear-gradient(0deg,rgba(0,0,0,.15),transparent 25%)}
.portrait-frame{transition:opacity .75s ease,transform 4s ease}
@media(max-width:900px){.portrait-gallery{grid-template-columns:minmax(225px,.8fr) minmax(0,1.2fr)}.gallery-copy{padding:28px}.gallery-copy h3{font-size:clamp(26px,3.2vw,36px)}}
@media(max-width:650px){.hero h1{font-size:clamp(34px,8.3vw,57px);line-height:1.04}.portrait-gallery{display:flex;flex-direction:column;width:calc(100% - 28px);border-radius:21px}.gallery-copy{padding:27px 25px}.gallery-copy .eyebrow{margin-bottom:19px}.gallery-copy h3{font-size:clamp(29px,8.2vw,40px)}.gallery-copy p{font-size:13px;margin-top:15px;max-width:38ch}.portrait-stage{height:clamp(255px,68vw,380px);aspect-ratio:auto}}

/* The press section reads like an editorial feature. */
.press{background:radial-gradient(circle at 100% 0%,rgba(197,152,112,.26),transparent 36%),radial-gradient(circle at 0% 90%,rgba(101,134,130,.12),transparent 38%),#e9e7df;color:#14262a}
.press-header{display:flex;justify-content:space-between;align-items:end;gap:50px;padding-bottom:clamp(38px,5vw,70px);border-bottom:1px solid rgba(25,52,55,.2);margin-bottom:30px}
.press-header .eyebrow{color:#936349;margin-bottom:28px}
.press-header h2{font-family:'Sora',Arial,sans-serif;font-weight:700;font-size:clamp(51px,6vw,94px);line-height:.99;letter-spacing:-.06em}
.press-header h2 em{display:block;font-family:'Instrument Serif',Georgia,serif;font-size:1.2em;font-weight:400;line-height:.92;letter-spacing:-.045em;color:#9c654e}
.press-header>p{max-width:310px;font-size:15px;line-height:1.6;color:#566866;margin:0 0 10px}
.press-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.press-v5,.press-v5:last-child{display:flex;flex-direction:column;min-width:0;max-width:none!important;margin:0!important;padding:clamp(28px,3.7vw,50px)!important;border:1px solid rgba(31,58,58,.13)!important;border-radius:24px;background:linear-gradient(145deg,rgba(255,255,255,.95),rgba(247,248,241,.72));box-shadow:0 20px 55px rgba(23,52,49,.07);transition:transform .35s ease,box-shadow .35s ease}
.press-v5:hover{transform:translateY(-6px);box-shadow:0 32px 70px rgba(23,52,49,.13)}
.press-meta{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 18px;padding-bottom:25px;margin-bottom:30px;border-bottom:1px solid rgba(31,58,58,.17)}
.press-source{font-family:'Sora',Arial,sans-serif;font-size:13px;font-weight:800;letter-spacing:.06em;color:#1a3740}
.press-meta span:last-child{font-size:10px;font-weight:800;letter-spacing:.13em;color:#a06b50}
.press-v5 blockquote{font-size:clamp(24px,2.45vw,36px);line-height:1.22;letter-spacing:-.045em;max-width:none;margin:0 0 26px;color:#183036}
.press-v5 p{font-size:15px;line-height:1.65;color:#5b6b68;max-width:45ch;margin:0 0 30px}
.press-v5 .btn{align-self:flex-start;margin-top:auto;background:#17333b;color:#fff;border:1px solid #17333b;font-size:10px;letter-spacing:.08em}
.press-v5 .btn:hover{background:#ae7756;border-color:#ae7756;color:#fff}
@media(max-width:860px){.press-header{align-items:start}.press-header>p{max-width:230px}.press-grid{grid-template-columns:1fr}.press-v5 blockquote{font-size:clamp(26px,4vw,37px)}}
@media(max-width:600px){.press-header{display:block;padding-bottom:33px}.press-header h2{font-size:clamp(45px,10.4vw,64px)}.press-header>p{max-width:36ch;margin:23px 0 0;font-size:13px}.press-grid{gap:13px}.press-v5,.press-v5:last-child{padding:25px!important;border-radius:19px}.press-meta{padding-bottom:17px;margin-bottom:21px}.press-v5 blockquote{font-size:clamp(23px,6vw,30px);margin-bottom:18px}.press-v5 p{font-size:14px;margin-bottom:23px}.press-v5 .btn{font-size:9px}}
