@font-face{font-family:Basel;src:url("fonts/basel-supplied-hairline.woff2") format("woff2");font-weight:100;font-style:normal;font-display:swap}
@font-face{font-family:Basel;src:url("fonts/basel-supplied-light.woff2") format("woff2");font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:Basel;src:url("fonts/basel-supplied-book.woff2") format("woff2");font-weight:400 500;font-style:normal;font-display:swap}
@font-face{font-family:Basel;src:url("fonts/basel-supplied-book-italic.woff2") format("woff2");font-weight:400 500;font-style:italic;font-display:swap}
@font-face{font-family:Basel;src:url("fonts/basel-supplied-bold.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:Basel;src:url("fonts/basel-supplied-black.woff2") format("woff2");font-weight:900;font-style:normal;font-display:swap}
:root{--ink:#080807;--bone:#f0eee8;--muted:#a9a69e;--line:rgba(240,238,232,.22);--accent:#d7b878;--gutter:clamp(22px,5vw,76px);--font:Basel,Arial,sans-serif}
*{box-sizing:border-box}html{background:var(--ink);scroll-behavior:smooth;scroll-padding-top:0}body{margin:0;background:var(--ink);color:var(--bone);font:400 16px/1.45 var(--font);letter-spacing:-.015em;-webkit-font-smoothing:antialiased;overflow-x:hidden}a{color:inherit}button,input{font:inherit}button{color:inherit}.skip{position:absolute;z-index:100;top:-50px;left:12px;background:var(--bone);color:var(--ink);padding:10px}.skip:focus{top:12px}
.topbar{position:absolute;z-index:20;inset:0 0 auto;display:flex;align-items:center;justify-content:space-between;padding:23px var(--gutter)}.brand img,.final-top img,.site-footer>img{width:48px;height:auto}.primary-nav{display:flex;align-items:center;gap:clamp(16px,2.8vw,42px);font-size:13px}.primary-nav a,.site-footer nav a{text-decoration:none}.primary-nav a:hover,.site-footer nav a:hover{text-decoration:underline;text-underline-offset:5px}.nav-apply{border:1px solid var(--line);padding:9px 13px}.unavailable{opacity:.45;white-space:nowrap}.unavailable small{font-size:9px;text-transform:uppercase;letter-spacing:.08em;display:block}.menu-toggle,.mobile-menu{display:none}
.screen{position:relative;min-height:100svh;padding:clamp(90px,12vh,140px) var(--gutter) clamp(44px,7vh,80px);overflow:hidden;display:flex;align-items:center;isolation:isolate}.hero{padding-top:110px;align-items:flex-end}.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%}.hero-image{object-fit:cover;object-position:center 48%;filter:brightness(1.13);transform:scale(1.015)}.hero-shade{background:linear-gradient(90deg,rgba(5,5,5,.67),rgba(5,5,5,.15) 75%),linear-gradient(0deg,rgba(5,5,5,.65),transparent 65%);z-index:1}.hero-inner{position:relative;z-index:2;padding-bottom:clamp(42px,7vh,84px);max-width:820px}.kicker{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin:0 0 18px}.hero h1{font:400 clamp(54px,9vw,128px)/.91 "Source Serif",Georgia,serif;letter-spacing:-.055em;margin:0;text-wrap:balance}.actions{display:flex;flex-wrap:wrap;gap:14px 28px;align-items:center;margin-top:28px}.button,.text-link{display:inline-flex;align-items:center;gap:20px;text-decoration:none}.button{padding:13px 16px;font-size:13px}.button-light{background:var(--bone);color:var(--ink)}.text-link{font-size:13px;border-bottom:1px solid var(--line);padding:8px 0}.text-link:hover{border-color:var(--bone)}.manifesto-link{display:block;width:max-content;margin-top:18px;font-size:12px;text-underline-offset:4px}.discover{position:absolute;left:0;bottom:-10px;text-decoration:none;text-transform:uppercase;font-size:9px;letter-spacing:.14em;display:flex;gap:12px;align-items:center}.signup{position:absolute;z-index:3;right:var(--gutter);bottom:35px;width:min(305px,38vw);font-size:10px}.signup label,.footer-signup label{display:block;margin-bottom:7px;color:rgba(240,238,232,.76)}.signup-row{display:flex;border-bottom:1px solid var(--line);align-items:center}.signup-row input{flex:1;min-width:0;color:var(--bone);background:transparent;border:0;outline:0;padding:9px 0;font-size:12px}.signup-row input::placeholder{color:rgba(240,238,232,.5)}.signup-row button{border:0;background:none;padding:8px 0 8px 12px;font-size:11px;cursor:pointer}.form-status{min-height:16px;margin:7px 0 0;color:var(--accent);font-size:10px}
.section-nav{position:fixed;z-index:12;left:15px;top:50%;transform:translateY(-50%);color:var(--bone)}.section-nav ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:5px}.section-nav li{position:relative}.section-nav a{width:22px;height:24px;display:grid;place-items:center;text-decoration:none}.section-nav svg{width:10px;height:10px;overflow:visible}.section-nav svg>*{fill:rgba(240,238,232,.35);stroke:rgba(240,238,232,.65);stroke-width:1.1;stroke-linecap:round;stroke-linejoin:round;transition:fill .18s,transform .18s}.section-nav a[aria-current=true] svg>*{fill:var(--bone);stroke:var(--bone);transform:scale(1.18)}.section-nav .preview{position:absolute;left:30px;top:50%;transform:translate(-4px,-50%);width:70px;height:70px;background:rgba(15,15,14,.95);border:1px solid var(--line);display:grid;place-items:center;opacity:0;pointer-events:none;transition:opacity .16s,transform .16s}.section-nav a:hover .preview,.section-nav a:focus-visible .preview{opacity:1;transform:translate(0,-50%)}.preview svg{width:44px;height:44px}.particle-field{position:fixed;z-index:0;right:3vw;top:50%;width:min(42vw,560px);height:min(62vh,560px);transform:translateY(-50%);pointer-events:none;opacity:.32}
.section-copy{position:relative;z-index:1;width:42%;max-width:510px}.section-copy h2,.event-heading h2,.portfolio-heading h2,.excellence h2{font:400 clamp(46px,7vw,96px)/.94 "Source Serif",Georgia,serif;letter-spacing:-.045em;margin:0}.placeholder{font-size:13px;color:var(--muted);max-width:32em}.mission{justify-content:space-between;gap:6vw}.mission .section-copy{width:38%}.mission .section-copy .actions{display:grid;justify-items:start}.media-slot{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border:1px solid rgba(240,238,232,.28);background:linear-gradient(135deg,rgba(255,255,255,.045),rgba(255,255,255,.008));color:var(--bone);min-height:240px}.media-slot>span{font-size:clamp(14px,2vw,24px);letter-spacing:.12em}.media-slot small{display:block;margin-top:12px;color:var(--muted);font-size:10px;letter-spacing:.08em;text-transform:uppercase}.mission .media-slot{width:55%;aspect-ratio:16/9}
.event-screen{padding-top:110px;padding-bottom:46px}.event-stage{width:100%;display:grid;grid-template-columns:minmax(200px,.55fr) minmax(400px,1.45fr);grid-template-rows:auto 1fr;column-gap:5vw;align-items:end}.event-heading{align-self:end;padding-bottom:20px}.event-heading h2{font-size:clamp(54px,8vw,110px)}.event-heading .placeholder{margin-bottom:0}.gallery-trigger{width:100%;min-height:0;aspect-ratio:16/8;border:1px solid var(--line);cursor:pointer;transition:border-color .2s}.gallery-trigger:hover{border-color:var(--bone)}.photo-strip{grid-column:2;display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:8px}.photo-strip img{width:100%;aspect-ratio:1.55;object-fit:cover;filter:saturate(.76)}
.hq{align-items:flex-end}.hq-photo,.hq-shade{position:absolute;inset:0}.hq-photo{background-image:url("img/space.webp");background-position:center;background-size:cover;filter:brightness(.88)}.hq-shade{background:linear-gradient(90deg,rgba(5,5,5,.65),rgba(5,5,5,.08) 75%),linear-gradient(0deg,rgba(5,5,5,.8),transparent 65%)}.hq-content{position:relative;z-index:1;width:min(860px,88%)}.hq-content h2{font:400 clamp(64px,10vw,132px)/.9 "Source Serif",Georgia,serif;margin:0}.hq-content>p:not(.kicker){color:var(--muted);font-size:13px}.hq-captions{display:flex;gap:clamp(18px,5vw,60px);margin:30px 0 9px;font-size:11px}.hq-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.hq-gallery img{width:100%;height:clamp(90px,15vh,160px);object-fit:cover;filter:saturate(.7)}
.ramadan{justify-content:space-between;gap:8vw}.ramadan .section-copy{width:38%}.ramadan .media-slot{width:55%;aspect-ratio:16/10}
.portfolio{justify-content:space-between;align-items:stretch;gap:8vw}.portfolio-heading{width:40%;display:flex;flex-direction:column;justify-content:center}.portfolio-heading h2{font-size:clamp(44px,6.4vw,86px)}.portfolio-heading .text-link{width:max-content;margin-top:22px}.portfolio-panel{width:min(51%,650px);margin:auto 0;max-height:72vh;min-height:48vh;overflow:auto;padding:clamp(25px,4vw,55px);border:1px solid var(--line);background:rgba(240,238,232,.025);scrollbar-color:rgba(240,238,232,.35) transparent}.portfolio-panel p{color:var(--muted);font-size:13px}.portfolio-panel .placeholder{font-size:12px;color:var(--accent);letter-spacing:.12em}
.excellence{align-items:flex-end}.dna-wave{position:absolute;inset:10% 0 12% 8%;opacity:.65}.dna-wave svg{width:100%;height:100%;overflow:visible}.dna-wave path{fill:none;stroke:rgba(215,184,120,.72);stroke-width:1.2;vector-effect:non-scaling-stroke}.dna-wave path+path{stroke:rgba(240,238,232,.55);stroke-dasharray:3 8}.excellence-copy{position:relative;z-index:1;max-width:680px}.excellence h2{font-size:clamp(52px,8vw,110px)}.excellence-copy>p:last-child{color:var(--muted);font-size:13px}
.final{display:flex;flex-direction:column;justify-content:space-between}.final-top{width:100%;display:flex;justify-content:space-between;align-items:center}.final-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:min(100%,1000px);margin:auto}.final-card{position:relative;min-height:clamp(150px,30vh,310px);border:1px solid var(--line);padding:clamp(22px,4vw,48px);display:flex;flex-direction:column;justify-content:space-between;text-decoration:none;transition:background .18s}.final-card:hover{background:rgba(240,238,232,.06)}.final-card>span{font:400 clamp(28px,4.4vw,58px)/1 "Source Serif",Georgia,serif}.final-card b{position:absolute;right:28px;top:24px;font-size:18px;font-weight:400}.final-card small{font-size:11px;color:var(--muted)}.final-video{width:100%;max-height:140px;min-height:100px}
.site-footer{position:relative;z-index:1;padding:30px var(--gutter) 22px;border-top:1px solid var(--line);display:grid;grid-template-columns:auto 1fr auto;gap:22px;align-items:start;background:var(--ink)}.site-footer nav{display:flex;flex-wrap:wrap;gap:12px 22px;font-size:11px;align-items:center}.site-footer .unavailable small{display:inline;font-size:8px;margin-left:4px}.footer-signup{width:min(220px,22vw);font-size:10px}.copyright{grid-column:1/-1;color:var(--muted);font-size:9px}
.gallery-dialog{width:min(1100px,94vw);max-height:90dvh;border:1px solid var(--line);background:#10100f;color:var(--bone);padding:clamp(18px,4vw,42px);overflow:auto}.gallery-dialog::backdrop{background:rgba(0,0,0,.82)}.gallery-close{position:sticky;float:right;top:0;z-index:2;background:#10100f;border:1px solid var(--line);width:40px;height:40px;font-size:24px;cursor:pointer}.gallery-content{clear:both;display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.gallery-content img{width:100%;height:clamp(180px,32vh,340px);object-fit:cover}.gallery-title{grid-column:1/-1;font:400 42px "Source Serif",Georgia,serif;margin:10px 0 12px}
@media(max-width:760px){.primary-nav{display:none}.menu-toggle{display:block;background:none;border:0;border-bottom:1px solid var(--line);padding:8px 0;font-size:12px}.mobile-menu{display:block;position:fixed;z-index:19;inset:0;background:var(--ink);padding:100px var(--gutter) 40px}.mobile-menu[hidden]{display:none}.mobile-menu nav{display:flex;flex-direction:column;gap:16px}.mobile-menu nav a,.mobile-menu .unavailable{font:400 36px/1 "Source Serif",Georgia,serif;text-decoration:none}.mobile-menu .unavailable small{font:9px var(--font);display:inline;margin-left:8px}.section-nav{left:7px}.section-nav ol{gap:2px}.section-nav a{width:20px;height:20px}.particle-field{right:0;width:72vw;height:45vh;opacity:.22}
.screen{min-height:100svh;padding:96px 24px 50px 38px}.hero{padding:100px 24px 45px 38px;align-items:flex-end}.hero-image{object-position:42% center}.hero-inner{padding-bottom:110px}.hero h1{font-size:clamp(51px,13vw,84px)}.actions{gap:14px 20px}.signup{left:38px;right:24px;bottom:22px;width:auto}.discover{bottom:-4px}.mission,.ramadan{flex-direction:column;align-items:stretch;justify-content:center;gap:22px}.section-copy,.mission .section-copy,.ramadan .section-copy{width:100%;max-width:none}.section-copy h2{font-size:clamp(48px,12vw,76px)}.mission .section-copy .actions{display:flex}.mission .media-slot,.ramadan .media-slot{width:100%;aspect-ratio:16/9;min-height:0}.event-screen{padding-top:92px;padding-bottom:34px}.event-stage{grid-template-columns:1fr;grid-template-rows:auto auto auto;gap:10px}.event-heading{padding:0}.event-heading h2{font-size:clamp(55px,13vw,82px)}.event-heading .placeholder{margin-top:6px}.gallery-trigger{aspect-ratio:16/9}.photo-strip{grid-column:auto;gap:4px;margin-top:0}.photo-strip img{aspect-ratio:1.1}.hq{align-items:flex-end}.hq-content{width:100%}.hq-gallery img{height:90px}.hq-captions{gap:14px;font-size:9px;margin-top:22px}.portfolio{display:flex;flex-direction:column;justify-content:center;gap:20px}.portfolio-heading{width:100%}.portfolio-heading h2{font-size:clamp(48px,11vw,74px)}.portfolio-panel{width:100%;max-height:31vh;min-height:150px;margin:0;padding:20px}.excellence{align-items:flex-end}.dna-wave{inset:20% -30% 30% 0;width:140%}.excellence h2{font-size:clamp(48px,12vw,80px)}.final{padding-top:90px}.final-grid{grid-template-columns:1fr;gap:7px}.final-card{min-height:clamp(130px,23vh,200px)}.final-video{min-height:75px}.site-footer{grid-template-columns:1fr;gap:20px;padding-left:38px}.site-footer nav{gap:12px 18px}.footer-signup{width:100%;max-width:320px}.copyright{grid-column:auto}.gallery-content{grid-template-columns:1fr}.gallery-title{font-size:34px}}
@media(max-height:700px) and (min-width:761px){.screen{padding-top:90px;padding-bottom:35px}.event-stage{grid-template-columns:.5fr 1.5fr}.hq-gallery img{height:80px}.portfolio-panel{max-height:65vh;min-height:42vh}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.particle-field{display:none}}
/* Immediate section jumps; media stays within each screen. */
html{scroll-behavior:auto}
.particle-field{z-index:2;opacity:.5}
.hero h1,.section-copy h2,.event-heading h2,.hq-content h2,.portfolio-heading h2,.excellence h2{font-weight:500}
.section-copy h2,.event-heading h2,.hq-content h2,.portfolio-heading h2,.excellence h2{font-family:var(--font)}
.hero>.discover{position:absolute;z-index:3;left:var(--gutter);bottom:24px}
.event-stage{position:relative;display:block;height:calc(100svh - 156px);min-height:360px}
.event-stage .gallery-trigger{position:absolute;inset:0 0 118px;aspect-ratio:auto;height:auto}
.event-heading{position:absolute;z-index:1;left:26px;top:24px;pointer-events:none}
.event-heading h2{font-size:clamp(44px,6vw,88px)}
.event-stage .photo-strip{position:absolute;inset:auto 0 0;height:110px;margin:0}
.event-stage .photo-strip img{height:100%;aspect-ratio:auto}
.ramadan{display:block}
.ramadan>.media-slot{position:absolute;inset:24px;width:auto;aspect-ratio:auto}
.ramadan>.section-copy{position:relative;z-index:1;pointer-events:none}
#ramadan>.ramadan-poster{padding:0;overflow:hidden}
.ramadan-poster>img{display:block;width:100%;height:100%;object-fit:cover}
.ramadan-poster::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(5,5,5,.62),rgba(5,5,5,.12) 75%),linear-gradient(0deg,rgba(5,5,5,.25),transparent 55%)}
.ramadan .film-link:disabled{opacity:.65;cursor:default}
.final-video>img{width:90px;margin-bottom:15px}
@media(max-width:760px){
 .hero-inner{padding-bottom:160px}
 .signup{bottom:60px}
 .hero>.discover{left:38px;bottom:20px}
 .particle-field{opacity:.3}
 .event-stage{height:calc(100svh - 130px);min-height:340px}
 .event-stage .gallery-trigger{bottom:90px}
 .event-heading{left:16px;top:18px}
 .event-heading h2{font-size:clamp(40px,11vw,65px)}
 .event-stage .photo-strip{height:82px}
 .ramadan>.media-slot{inset:16px}
 .hq-content h2{font-size:clamp(40px,11vw,64px)}
 .hq-content .actions{margin-top:16px;gap:12px}
}
/* Approved copy: compact typography keeps each section to one screen. */
.hero h1{font-size:clamp(52px,7.2vw,110px)}
.hero-subline{max-width:35em;font-size:clamp(14px,1.4vw,18px);line-height:1.45;margin:22px 0 0}
.section-line{font-size:clamp(14px,1.35vw,18px);line-height:1.5;max-width:38em;color:var(--bone)}
.film-link{background:none;border:0;border-bottom:1px solid var(--line);padding:8px 0;cursor:pointer;pointer-events:auto}
.section-copy h2{font-size:clamp(36px,4.7vw,68px)}
.event-heading{width:calc(100% - 52px);max-width:850px}
.event-heading h2{font-size:clamp(34px,4.5vw,64px);max-width:17ch}
.event-heading .section-line{max-width:39em}
.event-stage .gallery-trigger{align-items:flex-end;justify-content:flex-end;padding:24px;cursor:default}
.confirm{display:block;color:var(--accent);font-size:13px;margin-top:8px}
.hq-content{width:100%;max-width:1100px}
.hq-content h2{font-size:clamp(40px,5vw,70px);max-width:24ch}
.hq-gallery{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:22px}
.hq-gallery figure{margin:0;min-width:0}
.hq-gallery figcaption{font-size:12px;line-height:1.4;margin-top:8px}
.hq-gallery figcaption strong{font-weight:500}
.photo-placeholder{height:clamp(90px,15vh,160px);border:1px solid var(--line);display:grid;place-items:center;font-size:10px;color:var(--muted);text-align:center}
.ramadan .section-copy{pointer-events:auto;max-width:600px;width:55%}
.ramadan .media-slot{justify-content:flex-end;align-items:flex-end;padding:24px}
.portfolio-panel{padding:0 24px;overscroll-behavior:contain}
.company-card{display:block;text-decoration:none;padding:20px 0;border-bottom:1px solid var(--line)}
.company-card:hover h3,.company-card:focus-visible h3{text-decoration:underline;text-underline-offset:4px}
.company-card h3{font-size:22px;font-weight:500;margin:0 0 6px}
.company-card p{margin:0}
.portfolio-heading .actions{display:grid;gap:10px;justify-items:start}
.final-top h2{font:500 clamp(28px,3.3vw,48px)/1.1 var(--font);max-width:25ch;margin:0}
.final-card p{font-size:15px;line-height:1.4;margin:16px 0;max-width:25em}
.final-card small{color:var(--bone);font-size:13px}
@media(max-width:760px){
 .hero h1{font-size:clamp(46px,12vw,65px)}
 .hero-subline{margin-top:15px;font-size:14px}
 .hero-inner .actions{margin-top:20px}
 .manifesto-link{font-size:12px}
 .mission .section-copy h2{font-size:36px;max-width:17ch}
 .event-heading{width:calc(100% - 32px)}
 .event-heading h2{font-size:34px}
 .event-heading .section-line{font-size:14px}
 .confirm{font-size:12px}
 .event-stage .gallery-trigger>span{font-size:12px}
 .hq-content h2{font-size:36px}
 .hq-content>.section-line{font-size:14px}
 .hq-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 10px;margin-top:20px}
 .hq-gallery img,.photo-placeholder{height:60px}
 .hq-gallery figcaption{font-size:11px;margin-top:5px}
 .ramadan .section-copy{width:100%}
 .portfolio-heading h2{font-size:40px}
 .portfolio-heading .actions{margin-top:12px}
 .portfolio-panel{max-height:34svh;min-height:150px}
 .final-top h2{font-size:28px}
 .final-card{min-height:150px;padding:20px}
 .final-card>span{font-size:28px}
 .final-card p{font-size:14px;margin:10px 0}
}

/* Hero: original prototype treatment (grayscale photo -> colour on hover, side/bottom fades, sans headline, hero-only dot cloud). */
.hero-image{filter:grayscale(1) brightness(.55) contrast(1.02);transform:none;object-position:center 50%;transition:filter .9s cubic-bezier(.22,.61,.36,1)}
@media(hover:hover){.hero:hover .hero-image{filter:grayscale(0) brightness(1)}}
.hero-shade{background:linear-gradient(to left,rgba(0,0,0,0) calc(100% - 15.5vw),#000),linear-gradient(to right,rgba(0,0,0,0) calc(100% - 15.5vw),#000),linear-gradient(rgba(0,0,0,0) 78%,rgba(0,0,0,.65));pointer-events:none}
.hero h1{font-family:var(--font);font-weight:500;line-height:.9;letter-spacing:-.02em}
.hero>.particle-field{position:absolute;inset:0;width:100%;height:100%;right:auto;top:0;transform:none;z-index:2;opacity:1;mix-blend-mode:screen;pointer-events:none}
.hero-inner,.hero .signup,.hero>.discover{z-index:3}
.section-nav{z-index:45}
.section-nav ol{gap:8px}
.section-nav a{width:22px;height:16px}
.section-nav .diamond{width:6px;height:6px;transform:rotate(45deg);background:rgba(228,228,228,.2);transition:background-color .4s cubic-bezier(.22,.61,.36,1),transform .5s cubic-bezier(.16,1,.3,1)}
.section-nav a:hover .diamond,.section-nav a:focus-visible .diamond{background:rgba(228,228,228,.6)}
.section-nav a[aria-current=true] .diamond{background:var(--bone);transform:rotate(45deg) scale(1.15)}
.section-nav a:focus-visible{outline:1px solid var(--bone);outline-offset:2px}
@media(min-width:761px){
 .hero-inner{position:absolute;left:var(--gutter);right:30px;top:50%;transform:translateY(-50%);max-width:none;padding-bottom:0}
 .hero h1{font-size:clamp(36px,3.889vw,66px);max-width:600px}
 .hero-subline{max-width:32em;font-size:16px}
 .hero-inner .actions{position:absolute;right:0;top:50%;transform:translateY(-50%);margin-top:0;gap:8px}
 .hero .signup{left:var(--gutter);right:auto;bottom:30px;width:361px;font-size:14px}
 .hero .signup label{max-width:250px;margin-bottom:16px}
 .hero>.discover{left:50%;transform:translateX(-50%);bottom:30px}
}
@media(max-width:760px){.hero-shade{background:linear-gradient(rgba(0,0,0,0) 45%,rgba(0,0,0,.85))}.hero-image{object-position:22% 50%}.particle-field{width:100%;height:100%;right:auto;opacity:1}}
@media(prefers-reduced-motion:reduce){.particle-field{display:block}.hero-image{transition:none}}

/* Hero photo: permanently grayscale at its resting brightness — no hover colour. */
.hero-image,.hero:hover .hero-image{filter:grayscale(1) brightness(.55) contrast(1.02);transition:none}
/* Section rail: tighter diamonds and pitch; 24px-wide hit areas, visible focus kept. */
.section-nav{left:12px}.section-nav ol{gap:0}.section-nav a{width:24px;height:20px}
.section-nav .diamond{width:4.5px;height:4.5px}
@media(max-width:760px){.section-nav{left:6px}.section-nav a{width:24px;height:24px}}

/* Mission: original statement/finale effect — city photo grows from inset card to full viewport. */
.mission{display:block;min-height:0;height:175svh;padding:0;overflow:clip}
.mission-stage{position:sticky;top:0;height:100svh;overflow:hidden;display:flex;align-items:flex-end;justify-content:space-between;gap:4vw;padding:clamp(90px,12vh,140px) var(--gutter) clamp(44px,7vh,80px);--p:0}
.mission-frame{position:absolute;inset:0;margin:0;clip-path:inset(calc((1 - var(--p)) * 18%) calc((1 - var(--p)) * 24%));will-change:clip-path}
.mission-frame img{width:100%;height:100%;object-fit:cover;transform:scale(calc(1.25 - var(--p) * .25));filter:grayscale(1) brightness(.85);transition:filter .9s cubic-bezier(.22,.61,.36,1)}
@media(hover:hover){.mission-frame:hover img{filter:grayscale(0) brightness(1)}}
.mission-scrim{position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,rgba(5,5,5,.78),rgba(5,5,5,0) 62%),linear-gradient(90deg,rgba(5,5,5,.55),rgba(5,5,5,0) 60%)}
.mission .section-copy{position:relative;z-index:2;width:min(46%,560px);max-width:none;pointer-events:none}
.mission .section-copy .actions{pointer-events:auto}
@media(max-width:760px){
 .mission{height:160svh}
 .mission-stage{flex-direction:column;align-items:stretch;justify-content:flex-end;gap:18px;padding:96px 24px 40px 38px}
 .mission .section-copy{width:100%}
}
@media(prefers-reduced-motion:reduce){
 .mission{height:auto}
 .mission-stage{position:relative;--p:1!important;min-height:100svh;height:auto}
 .mission-frame{clip-path:none}.mission-frame img{transform:none}
}

/* Portfolio rolodex: only the right-hand list scrolls; page scroll is untouched. */
.portfolio{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(0,1.8fr) minmax(150px,.55fr);gap:clamp(18px,3vw,48px);align-items:center;height:100svh;min-height:0}
.portfolio-heading{width:auto}.portfolio-heading h2{font-size:clamp(30px,3.4vw,52px)}
.co-stage{margin:0;min-width:0;display:flex;flex-direction:column;gap:14px}
.co-photo{position:relative;aspect-ratio:16/10;max-height:calc(100svh - 230px);overflow:hidden;background:rgba(240,238,232,.04);border:1px solid var(--line)}
.co-img{width:100%;height:100%;object-fit:cover;display:block;filter:grayscale(1);transition:filter .9s cubic-bezier(.22,.61,.36,1)}
/* Preserve the supplied portrait in the existing landscape frame. */
.co-img[src$="/co-sintem-supplied.webp"]{object-fit:contain}
@media(hover:hover){.co-photo:hover .co-img{filter:grayscale(0)}}
.co-missing{position:absolute;inset:0;margin:0;display:grid;place-items:center;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.co-img[hidden],.co-missing[hidden]{display:none}
.co-stage figcaption{display:flex;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:6px 22px;text-align:center;font-size:15px}
.portfolio-panel.co-rolodex{position:relative;width:auto;height:min(60svh,460px);max-height:none;min-height:0;margin:0;padding:calc(min(60svh,460px)/2 - 23px) 0;border:0;background:none;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none;text-align:right;-webkit-mask:linear-gradient(transparent,#000 30%,#000 70%,transparent);mask:linear-gradient(transparent,#000 30%,#000 70%,transparent)}
.co-rolodex::-webkit-scrollbar{display:none}
.co-rolodex:focus-visible{outline:1px solid var(--line);outline-offset:4px}
.co-rolodex .company-card{border:0;height:46px;padding:0 18px 0 0;display:flex;align-items:center;justify-content:flex-end;position:relative;color:var(--muted);opacity:.55;transition:opacity .25s,color .25s}
.co-rolodex .company-card p{display:none}
.co-rolodex .company-card h3{font-size:15px;font-weight:400;margin:0;line-height:1.3;transition:font-size .25s}
.co-rolodex .company-card.near{opacity:.85}
.co-rolodex{overflow-anchor:none;scroll-behavior:auto}
.co-rolodex .company-card.is-selected{color:var(--bone);opacity:1}
.co-rolodex .company-card.is-selected h3{font-size:clamp(24px,2.3vw,34px)}
.co-rolodex .company-card.is-selected::after{content:"";position:absolute;right:2px;top:50%;width:6px;height:6px;background:var(--bone);transform:translateY(-50%) rotate(45deg)}
@media(max-width:760px){
 .portfolio{display:grid;grid-template-columns:1fr;grid-template-rows:auto auto auto;height:auto;min-height:100svh;gap:14px;align-content:center}
 .portfolio-heading h2{font-size:32px}.portfolio-heading .actions{display:flex;gap:6px 18px;margin-top:6px}
 .co-photo{aspect-ratio:16/10;max-height:30svh}.co-stage figcaption{font-size:13px}
 .portfolio-panel.co-rolodex{height:24svh;padding:calc(12svh - 18px) 0;text-align:center}
 .co-rolodex .company-card{height:36px;padding:0;justify-content:center}.co-rolodex .company-card.is-selected::after{display:none}
 .co-rolodex .company-card.is-selected h3{font-size:24px}
}
@media(prefers-reduced-motion:reduce){.co-img,.co-rolodex .company-card,.co-rolodex h3{transition:none}}

/* Brand typography: supplied Basel cuts only, -3% tracking, one clear hierarchy.
   Display 500 (Book) / titles 500 / body 400 / labels 400 caps / bold 700 only for emphasis. */
:root{--tracking:-.03em;--t-display:clamp(40px,4.6vw,72px);--t-title:clamp(32px,4vw,60px);--t-sub:clamp(15px,1.3vw,19px);--t-body:14px;--t-label:11px;--t-caption:12px}
body,body *,body ::before,body ::after,body ::placeholder{font-family:var(--font)!important;letter-spacing:var(--tracking)!important}
body{font-weight:400;line-height:1.5}
/* Display: hero headline */
.hero h1{font-size:var(--t-display);font-weight:500;line-height:.98;text-wrap:balance}
/* Section titles */
.section-copy h2,.event-heading h2,.hq-content h2,.portfolio-heading h2,.excellence h2,.final-top h2{font-size:var(--t-title);font-weight:500;line-height:1.02;text-wrap:balance}
.final-card>span,.gallery-title{font-weight:500;line-height:1.05}
/* Supporting subtitles */
.hero-subline,.section-line{font-size:var(--t-sub);font-weight:300;line-height:1.5;color:rgba(240,238,232,.86)}
.hero-subline{margin-top:20px}
/* Body */
.final-card p,.hq-content>p:not(.kicker):not(.section-line),.excellence-copy>p:last-child,.placeholder{font-size:var(--t-body);font-weight:400;line-height:1.5}
/* Labels: kickers and small caps get positive-free, quiet uppercase */
.kicker,.discover,.media-slot small,.co-missing,.unavailable small{font-size:var(--t-label);font-weight:500;text-transform:uppercase;color:var(--muted);line-height:1.3}
.kicker{margin-bottom:16px}
/* Nav and controls */
.primary-nav,.button,.text-link,.signup-row button,.menu-toggle,.manifesto-link{font-size:13px;font-weight:500}
.primary-nav a,.primary-nav span{font-weight:400}
/* Captions and fine print */
.hq-gallery figcaption,.signup label,.footer-signup label,.form-status,.final-card small,.co-stage figcaption,.site-footer nav{font-size:var(--t-caption);font-weight:400;line-height:1.45}
.hq-gallery figcaption strong{font-weight:700}
.copyright{font-size:11px;font-weight:300}
.co-rolodex .company-card h3{font-weight:400}.co-rolodex .company-card[aria-selected=true] h3{font-weight:500}
@media(min-width:761px){.hero h1{max-width:640px}}
@media(max-width:760px){
 :root{--t-display:clamp(40px,11vw,56px);--t-title:clamp(30px,8.5vw,40px);--t-sub:15px;--t-body:14px;--t-caption:12px}
 .mission .section-copy h2,.event-heading h2,.hq-content h2,.portfolio-heading h2,.final-top h2{font-size:var(--t-title)}
 .hero-subline,.event-heading .section-line,.hq-content>.section-line{font-size:var(--t-sub)}
 .mobile-menu nav a,.mobile-menu .unavailable{font-size:34px;font-weight:500;line-height:1.05}
 .hq-gallery figcaption{font-size:11px}
}

/* Original hero manifesto teaser: a linked preview, not an obstructive modal. */
.primary-nav{gap:clamp(14px,1.6vw,24px)}
.primary-nav .nav-apply{min-width:112px;padding:6px 28px}
.primary-nav .nav-apply,.mobile-menu .nav-apply{background:var(--bone);color:var(--ink);border:1px solid var(--bone);text-align:center}
.manifesto-card{position:absolute;right:var(--gutter);bottom:30px;z-index:4;display:block;width:clamp(220px,18.6vw,268px);background:#f5f3ed;color:var(--ink);text-decoration:none;padding:12px;transition:transform .4s cubic-bezier(.16,1,.3,1)}
.manifesto-card-photo{display:block;overflow:hidden}
.manifesto-card-photo img{display:block;width:100%;height:auto;aspect-ratio:244/156;object-fit:cover;filter:grayscale(1);transition:filter .35s ease}
.manifesto-card-copy{display:block}
.manifesto-card-title{display:block;font-size:18px;font-weight:500;line-height:1.15;margin-top:14px}
.manifesto-card-link{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:400;line-height:1.3;margin-top:10px;text-decoration:underline;text-underline-offset:3px}
.manifesto-card:focus-visible{outline:2px solid var(--bone);outline-offset:5px}
.manifesto-card:focus-visible .manifesto-card-photo img{filter:grayscale(0)}
@media(hover:hover){.manifesto-card:hover{transform:translateY(-4px)}.manifesto-card:hover .manifesto-card-photo img{filter:grayscale(0)}}
@media(max-height:700px) and (min-width:761px){.manifesto-card{width:220px;bottom:20px}}
@media(max-width:760px){
 .manifesto-card{right:24px;bottom:10px;width:min(52vw,220px);padding:6px;display:grid;grid-template-columns:48px minmax(0,1fr);gap:8px;align-items:center}
 .manifesto-card-photo img{aspect-ratio:1;height:48px}
 .manifesto-card-title{font-size:12px;line-height:1.15;margin-top:0}
 .manifesto-card-link{font-size:10px;line-height:1.2;margin-top:5px;gap:3px}
 .hero>.discover{max-width:90px;gap:4px}
}
@media(prefers-reduced-motion:reduce){.manifesto-card{transition:none}.manifesto-card:hover{transform:none}}

/* Hero conversion choices; subscription remains in the footer only. */
.hero-conversions{position:absolute;z-index:3;left:var(--gutter);bottom:30px}
.primary-nav a{white-space:nowrap}
@media(max-width:767px){.hero-conversions{position:relative;inset:auto;margin-top:40px}.mobile-menu .nav-apply{font-size:clamp(22px,6vw,34px)}}
.section-nav .preview{width:max-content;max-width:min(260px,calc(100vw - 80px));height:auto;min-height:28px;padding:6px 10px;display:block;font-size:12px;line-height:1.3;text-align:left}
@media(prefers-reduced-motion:reduce){.section-nav .preview{transition:none}}
.hero h1{font-size:clamp(36px,3.2vw,48px);line-height:1;max-width:520px;white-space:nowrap}
.hero-subline{font-size:15px;max-width:none;margin-top:14px;line-height:1.5}
.hero .signup{font-size:12px}
.hero .signup label{max-width:300px;margin-bottom:10px;font-size:12px;color:rgba(240,238,232,.72)}
.hero .form-status{min-height:0;margin:0}
.hero .form-status:not(:empty){margin-top:6px}
.hero .hero-actions{position:static;transform:none;display:flex;flex-wrap:wrap;align-items:center;gap:10px 22px;margin-top:16px}
.hero .hero-actions .button{padding:10px 14px;gap:14px;font-size:13px;transition:background-color .2s,color .2s}
.hero .hero-actions .button:hover{background:transparent;color:var(--bone);box-shadow:inset 0 0 0 1px var(--bone)}
.hero .hero-actions .text-link{gap:14px;padding:6px 0;transition:border-color .2s}
.hero .hero-actions a:focus-visible{outline:1px solid var(--bone);outline-offset:4px}
@media(min-width:761px){
 .hero-inner{top:50%;right:auto;max-width:560px}
 .hero .signup{bottom:72px;width:340px}
}
@media(max-width:760px){
 .hero h1{font-size:clamp(30px,8.6vw,36px)}
 .hero-subline{font-size:14px;margin-top:10px}
 .hero-inner{padding-bottom:300px}
 .hero .signup{bottom:96px}
 .hero .hero-actions{margin-top:14px}
}
@media(prefers-reduced-motion:reduce){.hero .hero-actions a{transition:none}}

/* Shared Summit and Tournament strips: native horizontal scrolling and matching photo sizes. */
.hq-gallery .open-fridays-photo{object-position:center 65%}
.gallery-dialog:is([data-gallery=summit],[data-gallery=tournament]) .gallery-content img{object-fit:contain;background:var(--ink)}
.gallery-dialog:is([data-gallery=summit],[data-gallery=tournament]) .gallery-close{position:sticky;top:0;z-index:1;background:var(--ink)}
.scroll-gallery-section{--gallery-height:158.4px;--gallery-width:230.4px}
.scroll-gallery-section .summit-strip-step:disabled{opacity:.35;cursor:default}
.scroll-gallery-section .photo-strip.summit-gallery{display:flex;grid-template-columns:none;gap:7px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:rgba(240,238,232,.4) transparent;padding-bottom:4px}
.scroll-gallery-section .summit-gallery::-webkit-scrollbar{height:3px}.scroll-gallery-section .summit-gallery::-webkit-scrollbar-thumb{background:rgba(240,238,232,.4)}
.scroll-gallery-section .summit-gallery:focus-visible{outline:1px solid var(--bone);outline-offset:3px}
.scroll-gallery-section .event-stage .photo-strip{height:var(--gallery-height)}
.scroll-gallery-section .event-stage .gallery-trigger{bottom:calc(var(--gallery-height) + 8px)}
.scroll-gallery-section .summit-thumb{flex:none;width:var(--gallery-width);height:100%;padding:0;margin:0;border:0;background:rgba(240,238,232,.04);cursor:pointer;scroll-snap-align:start;overflow:hidden}
.scroll-gallery-section .summit-thumb img{display:block;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;filter:grayscale(1);transition:filter .9s cubic-bezier(.22,.61,.36,1)}
@media(hover:hover){.scroll-gallery-section .summit-thumb:hover img{filter:grayscale(0)}}
.scroll-gallery-section .summit-thumb:focus-visible{outline:1px solid var(--bone);outline-offset:-1px}
.scroll-gallery-section .summit-thumb:focus-visible img{filter:grayscale(0)}
.scroll-gallery-section .summit-strip-bar{position:absolute;left:0;right:0;bottom:var(--gallery-height);z-index:1;display:flex;justify-content:flex-end;align-items:center;height:0;pointer-events:none}
.scroll-gallery-section .summit-strip-bar>*{transform:translateY(-100%);padding-bottom:2px;pointer-events:auto}
.scroll-gallery-section .summit-strip-nav{display:flex;gap:16px;padding-right:24px}
.scroll-gallery-section .summit-strip-step{background:none;border:0;border-bottom:1px solid var(--line);padding:4px 0;font-size:12px;cursor:pointer;color:var(--bone)}
.scroll-gallery-section .summit-strip-step:hover{border-color:var(--bone)}
.scroll-gallery-section .summit-strip-step:focus-visible{outline:1px solid var(--bone);outline-offset:3px}
@media(max-width:760px){.scroll-gallery-section{--gallery-width:187.2px;--gallery-height:118.08px}.scroll-gallery-section .summit-gallery{gap:4px}.scroll-gallery-section .summit-strip-nav{padding-right:12px}}
@media(prefers-reduced-motion:reduce){.scroll-gallery-section .summit-thumb img{transition:none}.scroll-gallery-section .summit-gallery{scroll-behavior:auto}}

/* Give the full-bleed chapters the same entrance spacing as the event sections. */
.hq,.ramadan{margin-top:110px}
@media(max-width:767px){.hq,.ramadan{margin-top:var(--phone-section-space)}}

/* HQ: skyline backdrop, corner label, one-line title, compact "Life at HQ" rolodex. */
.hq{align-items:flex-end;justify-content:center}
.hq .hq-photo{background-image:url("img/manifesto.webp");background-position:center 40%;filter:brightness(.82)}
.hq .hq-shade{background:linear-gradient(0deg,rgba(5,5,5,.72),rgba(5,5,5,0) 38%);pointer-events:none}
.hq .hq-corner{position:absolute;z-index:2;top:clamp(90px,12vh,130px);left:var(--gutter);margin:0}
.hq .hq-content{position:relative;z-index:2;width:100%;max-width:none;text-align:center;padding-bottom:0}
.hq .hq-content h2{font-size:clamp(13px,4.4vw,46px);white-space:nowrap;max-width:none;margin:0 auto;line-height:1.1}
.hq .hq-content .section-line{font-size:13px;max-width:44em;margin:10px auto 0;color:rgba(240,238,232,.76)}
.hq .hq-content .actions{justify-content:center;margin-top:8px;gap:4px 22px}
.hq .hq-content .text-link{font-size:12px;padding:4px 0}
/* Life at HQ: right-edge tab drawer. Panel slides in horizontally; tab rides its leading edge. */
.hq-life{--tab:44px;--pw:min(780px,calc(100vw - var(--tab) - 28px));--ph:min(560px,calc(100svh - 168px));--rw:clamp(150px,22%,210px);--item:46px;--ease:cubic-bezier(.16,1,.3,1);position:absolute;z-index:6;right:0;top:50%;width:calc(var(--tab) + var(--pw));height:var(--ph);transform:translateY(-50%);pointer-events:none}
.hq-life-trigger{position:absolute;left:0;top:50%;width:var(--tab);height:min(184px,var(--ph));margin-top:calc(min(184px,var(--ph)) / -2);display:flex;align-items:center;justify-content:center;gap:12px;padding:0;border:1px solid var(--line);border-right:0;background:rgba(10,10,9,.84);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--bone);font-size:12px;font-weight:500;white-space:nowrap;writing-mode:vertical-rl;transform:translateX(var(--pw)) rotate(180deg);cursor:pointer;pointer-events:auto;transition:transform .35s var(--ease),background-color .25s,border-color .25s}
.hq-life-trigger::after{content:"";width:5px;height:5px;background:var(--accent);transform:rotate(45deg);flex:none}
.hq-life-trigger:hover,.hq-life-trigger[aria-expanded=true]{background:rgba(18,18,16,.94);border-color:rgba(240,238,232,.45)}
.hq-life.is-open .hq-life-trigger{transform:rotate(180deg)}
.hq-life-trigger:focus-visible,.hq-life-close:focus-visible,.hq-roll:focus-visible{outline:1px solid var(--bone);outline-offset:-3px}
.hq-life-panel{position:absolute;right:0;top:0;width:var(--pw);height:var(--ph);display:grid;grid-template-columns:minmax(0,1fr) var(--rw);grid-template-rows:auto minmax(0,1fr);grid-template-areas:"head head" "view roll";background:rgba(10,10,9,.88);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--line);border-right:0;pointer-events:auto;transform:translateX(100%);transition:transform .35s var(--ease)}
.hq-life-panel[hidden]{display:none}
.hq-life.is-open .hq-life-panel{transform:none}
.hq-life-head{grid-area:head;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid var(--line);font-size:11px;font-weight:500;color:var(--muted);text-transform:uppercase;overflow-wrap:anywhere}
.hq-life-close{flex:none;background:none;border:0;padding:4px 0;font-size:12px;color:var(--bone);cursor:pointer;text-decoration:underline;text-underline-offset:3px;text-transform:none}
/* A caption may outgrow the photo area with reader spacing or enlarged text.
   Keep it scrollable independently of the header and activity keyboard rail. */
.hq-life-view{grid-area:view;margin:0;min-height:0;min-width:0;display:flex;flex-direction:column;padding:16px 18px 18px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
.hq-life-view:focus-visible{outline:1px solid var(--bone);outline-offset:-3px}
.hq-life-img{display:block;width:100%;flex:1 0 48px;min-height:48px;object-fit:cover;filter:saturate(.9)}
.hq-life-desc{flex:none;font-size:clamp(13px,1.2vw,16px);font-weight:300;line-height:1.4;margin-top:12px;color:rgba(240,238,232,.9);max-width:36em}
.hq-roll{grid-area:roll;list-style:none;margin:0;padding:0;min-height:0;height:100%;overflow-y:auto;overscroll-behavior:contain;border-left:1px solid var(--line);scrollbar-width:thin;scrollbar-color:rgba(240,238,232,.4) transparent;-webkit-mask:linear-gradient(transparent,#000 8px,#000 calc(100% - 8px),transparent);mask:linear-gradient(transparent,#000 8px,#000 calc(100% - 8px),transparent)}
.hq-roll::-webkit-scrollbar{width:3px}.hq-roll::-webkit-scrollbar-thumb{background:rgba(240,238,232,.4)}
.hq-roll::before,.hq-roll::after{content:"";display:block;height:calc(50% - var(--item) / 2)}
.hq-roll-item{position:relative;min-height:var(--item);display:flex;align-items:center;justify-content:flex-end;padding:.35em 22px .35em 12px;font-size:13px;line-height:1.15;text-align:right;overflow-wrap:anywhere;color:var(--muted);opacity:.5;cursor:pointer;transition:opacity .2s,color .2s}
.hq-roll-item.near{opacity:.8}
.hq-roll-item:hover{opacity:.95}
.hq-roll-item[aria-selected=true]{color:var(--bone);opacity:1;font-size:16px;font-weight:500}
.hq-roll-item[aria-selected=true]::after{content:"";position:absolute;right:9px;top:50%;width:5px;height:5px;background:var(--bone);transform:translateY(-50%) rotate(45deg)}
@media(max-height:560px){.hq-life{--ph:calc(100svh - 104px);--item:40px;--tab:38px}.hq-life-head{padding:8px 14px}.hq-life-view{padding:10px 14px 12px}.hq-life-desc{font-size:12px;margin-top:8px}}
@media(max-width:760px){
 .hq .hq-corner{top:96px;left:38px}
 .hq .hq-content h2{font-size:clamp(12px,4.6vw,30px)}
 .hq .hq-content .section-line{font-size:12px}
 .hq-life{--tab:36px;--pw:calc(100vw - var(--tab) - 10px);--rw:clamp(132px,30vw,210px);--item:42px}
 .hq-life-trigger{font-size:11px}
 .hq-life-head{padding:10px 14px}
 .hq-life-view{padding:12px 12px 14px}
 .hq-life-desc{font-size:13px}
 .hq-roll-item{font-size:12px;padding:.35em 18px .35em 8px}
 .hq-roll-item[aria-selected=true]{font-size:14px}
}
@media(max-width:560px) and (min-height:561px){
 .hq-life-panel{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) calc(var(--item) * 3);grid-template-areas:"head" "view" "roll"}
 .hq-roll{border-left:0;border-top:1px solid var(--line)}
 .hq-roll-item{justify-content:center;text-align:center;padding:.35em 12px}
 .hq-roll-item[aria-selected=true]::after{display:none}
}
@media(prefers-reduced-motion:reduce){.hq-life-panel,.hq-life-trigger,.hq-roll-item{transition:none}}
/* HQ drawer, refined: a slim skyline column. Photo nearly full width and feathered at
   its edges only; caption and a compact three-row selector stack beneath it.
   Desktop footprint (trigger + panel) stays at or under 20vw. */
.hq-life-panel{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) calc(var(--item) * 3);grid-template-areas:"head" "view" "roll";background:linear-gradient(90deg,rgba(8,8,7,.42),rgba(8,8,7,.74) 38%,rgba(8,8,7,.8));-webkit-backdrop-filter:blur(6px) saturate(.9);backdrop-filter:blur(6px) saturate(.9);border:0;border-left:1px solid rgba(240,238,232,.14)}
.hq-life-trigger{background:rgba(8,8,7,.56);border-color:rgba(240,238,232,.16);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.hq-life-trigger:hover,.hq-life-trigger[aria-expanded=true]{background:rgba(8,8,7,.78);border-color:rgba(240,238,232,.34)}
.hq-life-head{padding:12px 12px 10px;border-bottom:0;letter-spacing:.02em}
.hq-life-view{padding:0 8px 10px}
.hq-life-img{flex:1 0 56px;min-height:56px;filter:saturate(.9);-webkit-mask-image:linear-gradient(90deg,transparent,#000 2%,#000 98%,transparent),linear-gradient(transparent,#000 3%,#000 97%,transparent);-webkit-mask-composite:source-in;mask-image:linear-gradient(90deg,transparent,#000 2%,#000 98%,transparent),linear-gradient(transparent,#000 3%,#000 97%,transparent);mask-composite:intersect}
.hq-life-desc{font-size:13px;line-height:1.42;margin-top:10px;padding:0 4px;max-width:none}
.hq-roll{border-left:0;border-top:0;-webkit-mask:linear-gradient(transparent,#000 8px,#000 calc(100% - 8px),transparent);mask:linear-gradient(transparent,#000 8px,#000 calc(100% - 8px),transparent)}
.hq-roll-item{justify-content:center;text-align:center;padding:.35em 12px;font-size:12px}
.hq-roll-item[aria-selected=true]{font-size:14px}
.hq-roll-item[aria-selected=true]::after{display:none}
.hq-roll-item[aria-selected=true]::before{content:"";position:absolute;left:50%;bottom:4px;width:4px;height:4px;background:var(--accent);transform:translateX(-50%) rotate(45deg)}
@media(min-width:761px){.hq-life{--tab:34px;--pw:calc(20vw - var(--tab));--ph:min(600px,calc(100svh - 150px))}}
/* Smaller laptops / enlarged text: keep a usable reading width. */
@media(min-width:761px) and (max-width:1023px){.hq-life{--pw:max(calc(20vw - var(--tab)),236px)}}
@media(min-width:761px){.hq-life.is-reader-expanded{--pw:min(360px,calc(100vw - var(--tab) - 10px))}}
@media(prefers-reduced-motion:reduce){.hq-roll-item[aria-selected=true]::before{transition:none}}

/* Compounding excellence: faint photo + section-local rising dot curve. */
#excellence{align-items:flex-end}
#excellence .excellence-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;opacity:.16;filter:grayscale(1) brightness(.8);pointer-events:none}
#excellence .excellence-shade{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(8,8,7,.82),rgba(8,8,7,.25) 60%,rgba(8,8,7,.4)),linear-gradient(0deg,rgba(8,8,7,.7),transparent 55%)}
#excellence .excellence-field{position:absolute;z-index:2;top:12%;right:var(--gutter);width:min(58%,860px);height:68%;pointer-events:none;mix-blend-mode:screen}
#excellence .excellence-copy{z-index:3;max-width:560px}
#excellence .excellence-copy .actions{margin-top:24px}
@media(max-width:760px){
  #excellence .excellence-copy{max-width:none}
}

/* Closing: excellence carries both actions; #join is a full-viewport film placeholder. */
#excellence .excellence-copy .actions{gap:14px 28px}
#join.final{display:block;padding:0;min-height:100svh;height:100svh}
#join .final-video{position:absolute;inset:0;width:100%;height:100%;max-height:none;min-height:0;margin:0;border:0;background:radial-gradient(ellipse at center,rgba(240,238,232,.045),rgba(240,238,232,0) 60%),var(--ink)}
#join .final-logo{position:absolute;left:50%;top:50%;width:clamp(72px,8vw,112px);height:auto;margin:0;transform:translate(-50%,-50%)}
/* Footer: logo + signup on top, nav aligned to the bottom row opposite copyright. */
.site-footer{grid-template-columns:auto 1fr;grid-template-areas:"logo signup" "copy nav";align-items:end;row-gap:36px}
.site-footer .footer-brand{grid-area:logo;align-self:start;min-width:0}
.footer-brand>img{display:block;width:48px;height:auto}
/* Align the 18px marks with the brand without moving their 44px layout slots. */
.footer-socials{display:flex;gap:4px;margin-top:12px;transform:translateX(-13px)}
.footer-socials a{display:grid;place-items:center;width:44px;height:44px;flex:none;color:var(--muted);text-decoration:none;border-radius:2px}
.footer-socials svg{display:block;width:18px;height:18px;fill:currentColor}
.footer-socials a:hover{color:var(--bone);background:rgba(240,238,232,.08)}
.footer-socials a:focus-visible{color:var(--bone);background:rgba(240,238,232,.08);outline:2px solid var(--bone);outline-offset:2px}
.site-footer .footer-signup{grid-area:signup;justify-self:end;align-self:start;width:min(300px,40vw)}
.site-footer nav{grid-area:nav;justify-self:end;justify-content:flex-end}
.site-footer .copyright{grid-area:copy;grid-column:auto;align-self:end}
@media(max-width:760px){
 .site-footer{grid-template-columns:1fr;grid-template-areas:"logo" "signup" "nav" "copy";row-gap:22px}
 .site-footer .footer-signup{justify-self:stretch;width:100%;max-width:320px}
 .site-footer nav{justify-self:start;justify-content:flex-start}
}

/* Refinement: section names in the restrained top-left corner (matches Alif HQ). */
.corner-kicker{position:absolute;z-index:4;top:clamp(90px,12vh,130px);left:var(--gutter);margin:0;pointer-events:none}
.event-screen>.corner-kicker{top:78px}
@media(max-width:760px){
 .corner-kicker{top:96px;left:38px}
 .event-screen>.corner-kicker{top:62px}
 .portfolio{padding-top:130px}
}
/* Mission: film + manifesto side by side on one row at every width. */
.mission .section-copy .actions{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:12px 24px}
.mission .section-copy .actions>*{white-space:nowrap;flex:none}
@media(max-width:360px){.mission .section-copy .actions{gap:16px}.mission .section-copy .actions>*{font-size:12px}}

/* Short landscape screens still need room beneath the corner labels. */
@media(min-width:761px) and (max-height:500px){
 .event-screen{padding-top:104px}
 .portfolio{padding-top:120px;align-items:start}
}
@media(max-width:760px) and (max-height:500px) and (orientation:landscape){
 .mission-stage{flex-direction:row;align-items:flex-end;gap:24px;padding:128px 24px 24px 38px}
 .mission .section-copy{flex:1;min-width:0;width:auto}
 .mission .section-copy h2{font-size:28px;max-width:none}
 .mission .section-line{font-size:13px;line-height:1.35;margin:12px 0}
 .mission .section-copy .actions{margin-top:16px}
 .mission .mission-film{width:28%;flex-shrink:0}
}


/* Excellence: labels top-left; plot starts low-left beneath the copy and rises to the upper right. */
#excellence{align-items:flex-start}
#excellence .excellence-copy{margin-top:clamp(28px,5vh,52px)}
#excellence .excellence-field{top:auto;bottom:5vh;left:var(--gutter);right:auto;width:calc(100% - 2 * var(--gutter));height:calc(100% - clamp(90px,12vh,130px) - 9vh)}
@media(max-width:760px){
 #excellence{padding-top:128px}
 #excellence .excellence-copy{margin-top:0}
 #excellence .excellence-field{top:auto;bottom:24px;left:38px;right:auto;width:calc(100% - 58px);height:clamp(170px,calc(100svh - 500px),46svh)}
}

/* Nav hover previews: dot-rendered Portfolio/Excellence icons beside the label (absolute, non-interactive). */
.section-nav .preview.has-icon{display:flex;align-items:center;gap:10px}
.section-nav .preview-icon{width:44px;height:44px;flex:none;display:block}

@media (max-width: 767px) {
 .screen{--phone-media-start:max(24px,env(safe-area-inset-left));--phone-media-end:max(24px,env(safe-area-inset-right))}
 :root{--gutter:24px;--phone-section-space:32px}
 .section-nav{display:none}
 .topbar{padding:calc(16px + env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) 16px max(24px,env(safe-area-inset-left))}
 .primary-nav{display:none}
 .brand{display:inline-flex;align-items:center;min-width:44px;min-height:44px}
 .menu-toggle{display:block;min-width:44px;min-height:44px}
 body:has(.mobile-menu:not([hidden])) .topbar{position:fixed}
 .mobile-menu{display:block;height:100dvh;overflow-y:auto;overscroll-behavior:contain;padding:calc(100px + env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) calc(32px + env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left))}
 .mobile-menu[hidden]{display:none}
 .mobile-menu nav{display:flex;flex-direction:column;gap:16px}
 .mobile-menu nav a{display:flex;align-items:center;min-height:48px;font-size:34px;line-height:1.1;text-decoration:none}
 .screen{padding-left:max(24px,env(safe-area-inset-left));padding-right:max(24px,env(safe-area-inset-right))}
 .hero{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(32px,1fr) auto auto auto;align-items:stretch;gap:clamp(16px,2.5svh,24px);height:auto;min-height:100svh;padding-top:calc(112px + env(safe-area-inset-top));padding-bottom:calc(24px + env(safe-area-inset-bottom))}
 .hero::after{content:"";grid-row:2;grid-column:1;pointer-events:none}
 .hero>.particle-field{display:none}
 .hero>.discover{display:none}
 .hero-inner{display:contents}
 .hero h1{grid-row:1;grid-column:1;position:relative;z-index:3;font-size:clamp(23px,7.2vw,38px);white-space:normal}
 .hero .hero-subline{grid-row:3;grid-column:1;position:relative;z-index:3;font-size:14px;margin:0;max-width:100%}
 .hero-inner,.hero-conversions{flex:none}
 .hero .hero-conversions{grid-row:4;grid-column:1;position:relative;inset:auto;margin:0}
 .hero>.manifesto-card{grid-row:5;grid-column:1;position:relative;inset:auto;justify-self:end;align-self:end;margin-top:0;width:min(100%,220px);padding:6px;display:grid;grid-template-columns:48px minmax(0,1fr);gap:8px;align-items:center}
 .hero .manifesto-card-photo img{aspect-ratio:1;height:48px}
 .hero .manifesto-card-title{font-size:12px;line-height:1.15;margin-top:0}
 .hero .manifesto-card-link{font-size:10px;line-height:1.2;margin-top:5px;gap:3px}
 .hero .signup{position:relative;inset:auto;width:100%;margin-top:40px}
 .hero .signup label{max-width:100%;margin-bottom:12px}
 .hero>.discover{left:max(24px,env(safe-area-inset-left));bottom:calc(24px + env(safe-area-inset-bottom));transform:none;min-height:44px}
 .manifesto-card{right:max(24px,env(safe-area-inset-right));bottom:calc(24px + env(safe-area-inset-bottom))}
 .signup-row{gap:8px}
 .signup-row input{font-size:16px;min-height:48px}
 .signup-row button{min-width:44px;min-height:48px;padding-left:0}
 .button,.text-link,.gallery-close,.summit-strip-step,.hq-life-trigger,.hq-life-close{min-width:44px;min-height:44px}
 .actions{gap:12px 20px}
 .hero .hero-actions{margin-top:0}
 .mission-stage{padding-left:max(24px,env(safe-area-inset-left));padding-right:max(24px,env(safe-area-inset-right))}
 .corner-kicker{left:max(24px,env(safe-area-inset-left))}
 .corner-kicker,.hq .hq-corner{top:var(--phone-section-space);left:max(24px,env(safe-area-inset-left))}
 .event-screen>.corner-kicker{top:var(--phone-section-space)}
 .mission .section-copy .actions{gap:12px 20px}
 .scroll-gallery-section .event-stage{display:flex;flex-direction:column;gap:16px;height:auto;min-height:0}
 #summit,#tournament{align-items:flex-start}
 .scroll-gallery-section .event-heading{position:relative;inset:auto;width:100%;padding:0;pointer-events:auto}
 .scroll-gallery-section .event-stage .gallery-trigger{position:relative;inset:auto;width:100%;height:auto;aspect-ratio:16/9;min-height:0;margin-bottom:64px}
 .scroll-gallery-section .event-stage .photo-strip{position:relative;inset:auto;width:100%;height:var(--gallery-height);margin:0;flex:none}
 .scroll-gallery-section .photo-strip.summit-gallery{gap:8px}
 .summit-strip-nav{gap:8px}
 .portfolio{height:auto;min-height:100svh}
 .co-rolodex .company-card{height:44px;margin-bottom:8px}
 .portfolio-panel.co-rolodex{padding:calc(12svh - 22px) 0}
 .co-stage figcaption{gap:8px 16px}
 #excellence .excellence-field{left:max(24px,env(safe-area-inset-left));width:calc(100% - 48px)}
 #excellence .excellence-copy .actions{gap:12px 20px}
 .site-footer{padding-left:max(24px,env(safe-area-inset-left));padding-right:max(24px,env(safe-area-inset-right));padding-bottom:calc(24px + env(safe-area-inset-bottom))}
 .site-footer nav{gap:8px 16px}
 .site-footer nav a{display:inline-flex;align-items:center;min-width:44px;min-height:44px}
 .footer-socials{gap:8px;transform:none}
 .gallery-close{width:44px;height:44px}
 .hq-life{--tab:44px;--item:44px}
 .hq .hq-content .actions{gap:8px 16px}
 .hq-roll-item{height:auto;margin-bottom:8px;min-height:44px}
 .hq .hq-photo{background-image:var(--phone-hq-image,none)}
}
@media (hover: none) {
 .mission-frame.phone-in-view img{filter:grayscale(0) brightness(1)}
 .co-photo.phone-in-view .co-img,.manifesto-card.phone-in-view .manifesto-card-photo img{filter:grayscale(0)}
 .scroll-gallery-section .summit-thumb.phone-in-view img{filter:grayscale(0)}
}

/* Phone refinement (<=767px only): one consistent 24px inner inset, readable measures,
   no viewport-height compression. Desktop/tablet (>=768px) untouched. */
@media (max-width: 767px) {
 /* Mission: stage owns the inset; section padding was double-insetting copy to 48px. */
 .mission{padding:0;height:auto}
 .mission-stage{position:relative;flex-direction:column;align-items:stretch;justify-content:flex-end;height:auto;min-height:100svh;padding-top:calc(128px + env(safe-area-inset-top));padding-bottom:calc(var(--phone-section-space) + env(safe-area-inset-bottom));gap:20px}
 .mission .section-copy{width:100%;max-width:none}
 .mission .section-copy h2{max-width:none}
 .mission .section-line{margin:14px 0 0;max-width:34ch;font-size:15px;line-height:1.5}
 .mission .section-copy .actions{margin-top:20px}
 #mission .mission-film{width:calc(100% + var(--phone-media-start) + var(--phone-media-end));margin-left:calc(-1 * var(--phone-media-start));margin-right:calc(-1 * var(--phone-media-end));max-width:none;flex:none;opacity:1;transform:none;pointer-events:auto;border:0}
 .mission-frame{clip-path:none}
 .mission-frame img{transform:none}
 /* Hero manifesto teaser: full-width readable row, 44px+ target. */
 .hero>.manifesto-card{align-self:stretch;width:100%;padding:8px;grid-template-columns:72px minmax(0,1fr);gap:14px;min-height:60px}
 .hero .manifesto-card-photo img{height:56px;aspect-ratio:72/56}
 .hero .manifesto-card-title{font-size:15px;line-height:1.2}
 .hero .manifesto-card-link{font-size:12px;margin-top:6px;gap:6px}
 .hero .hero-conversions{margin-bottom:0}
 /* Summit / Tournament: breathing room, no stage height tied to viewport. */
 .scroll-gallery-section{--gallery-width:187.2px;--gallery-height:118.08px;min-height:0;padding-top:calc(var(--phone-section-space) + 40px + env(safe-area-inset-top));padding-bottom:calc(var(--phone-section-space) + env(safe-area-inset-bottom))}
 .scroll-gallery-section .event-heading h2{max-width:none}
 .scroll-gallery-section .event-heading .section-line{margin:12px 0 4px;max-width:36ch}
 .scroll-gallery-section .event-stage{gap:20px}
 .scroll-gallery-section .event-stage>.gallery-trigger{width:calc(100% + var(--phone-media-start) + var(--phone-media-end));margin-left:calc(-1 * var(--phone-media-start));margin-right:calc(-1 * var(--phone-media-end));border:0}
 .scroll-gallery-section .summit-strip-hint{padding-left:0}
 .scroll-gallery-section .summit-strip-nav{padding-right:0}
 /* HQ: readable left-aligned title and body at full width; clear of the drawer tab. */
 .hq{padding-top:calc(88px + env(safe-area-inset-top));padding-bottom:calc(var(--phone-section-space) + env(safe-area-inset-bottom))}
 .hq .hq-content{text-align:left;padding-right:28px}
 .hq .hq-content h2{white-space:normal;font-size:var(--t-title);line-height:1.05;margin:0;max-width:14ch}
 .hq .hq-content .section-line{font-size:15px;line-height:1.5;margin:14px 0 0;max-width:34ch;color:rgba(240,238,232,.86)}
 .hq .hq-content .actions{justify-content:flex-start}
 /* Ramadan follows Mission: photograph/copy first, then the full-bleed film. */
 #ramadan{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto;align-items:stretch;min-height:100svh;padding:0 0 calc(var(--phone-section-space) + env(safe-area-inset-bottom));gap:0}
 #ramadan>.ramadan-preview{position:relative;inset:auto;grid-area:2/1/3/2;align-self:stretch;width:100%;margin:0;box-shadow:none;border:0}
 #ramadan>.ramadan-poster{grid-area:1/1/2/2;inset:0;border:0}
 #ramadan>.section-copy{grid-area:1/1/2/2;align-self:end;margin:0;width:100%;max-width:none;padding:calc(128px + env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) 20px max(24px,env(safe-area-inset-left))}
 .ramadan .section-line{margin:14px 0 0;max-width:34ch;font-size:15px;line-height:1.5}
 .ramadan .film-link{margin-top:20px}
 /* Portfolio: natural height, no squeezed photo. */
 .portfolio{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto;min-height:0;padding-top:calc(var(--phone-section-space) + 40px + env(safe-area-inset-top));padding-bottom:calc(var(--phone-section-space) + env(safe-area-inset-bottom));gap:24px;align-content:start}
 .co-photo{max-height:none}
 .portfolio .co-stage{width:calc(100% + var(--phone-media-start) + var(--phone-media-end));margin-left:calc(-1 * var(--phone-media-start));margin-right:calc(-1 * var(--phone-media-end))}
 .portfolio .co-stage figcaption{padding-left:var(--phone-media-start);padding-right:var(--phone-media-end)}
 /* Keep the company description and Visit action on separate, stable rows. */
 .co-stage figcaption{flex-direction:column;flex-wrap:nowrap;align-items:center;gap:8px}
 .co-stage .co-desc{display:block;width:100%;min-height:2.9em;line-height:1.45}
 .portfolio-panel.co-rolodex{height:220px;padding:88px 0;text-align:center}
 .co-rolodex .company-card{padding:0;justify-content:center}
 .co-rolodex .company-card.is-selected::after{display:none}
 /* Excellence. */
 /* Preserve a clear upward rise instead of flattening the graph when browser
    bars reduce the phone viewport. Very short screens can scroll naturally. */
 #excellence{--phone-curve-height:clamp(250px,calc(90vw - 43.2px),420px);min-height:0;padding-top:var(--phone-section-space);padding-bottom:calc(var(--phone-curve-height) + 2 * var(--phone-section-space) + env(safe-area-inset-bottom))}
 #excellence .excellence-field{top:auto;bottom:calc(var(--phone-section-space) + env(safe-area-inset-bottom));height:var(--phone-curve-height)}
 #excellence .excellence-copy{margin-top:0}
 #excellence .excellence-copy .section-line{max-width:34ch}
 #excellence .excellence-copy .actions{margin-top:28px}
 /* Footer. */
 .site-footer{padding-top:var(--phone-section-space)}
 .site-footer .footer-signup{max-width:none}
}
@media (max-width: 767px) and (max-height: 500px) and (orientation: landscape) {
 .mission-stage{padding-top:132px}
 .hq .hq-content h2{max-width:none}
 .portfolio-panel.co-rolodex{height:180px;padding:68px 0}
}

/* Phone company selector: a horizontal, looping row instead of a vertical wheel. */
@media (max-width:767px) {
 .portfolio-panel.co-rolodex{display:flex;align-items:center;gap:8px;width:100%;height:80px;padding:0 50%;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;overscroll-behavior-y:auto;text-align:center;-webkit-mask:linear-gradient(90deg,transparent,#000 20%,#000 80%,transparent);mask:linear-gradient(90deg,transparent,#000 20%,#000 80%,transparent)}
 .co-rolodex .company-card{flex:0 0 auto;width:max-content;height:64px;margin:0;padding:0 18px;justify-content:center}
 .co-rolodex .company-card h3{white-space:nowrap;font-size:20px;font-weight:400;transition:transform .25s}
 .co-rolodex .company-card.is-selected h3{font-size:20px;font-weight:400;transform:scale(1.2)}
 .co-rolodex .company-card.is-selected::after{display:block;left:50%;right:auto;top:auto;bottom:4px;transform:translateX(-50%) rotate(45deg)}
}
