
:root{
  --ink:#0E2733; --ink-2:#143846; --teal:#0E6B6B; --teal-l:#7CC3BC;
  --amber:#E0A43B; --night:#1A1714; --night-2:#25201B; --bone:#E9E2D6;
  --paper:#EEF1F0; --paper-2:#E2E8E7; --text:#13222A; --muted:#4B5F66; --line:rgba(14,39,51,.14);
  --gut:max(16px, env(safe-area-inset-left), env(safe-area-inset-right));
  --wrap:1180px;
  --display:'Alexandria', 'IBM Plex Sans Arabic', sans-serif;
  --body:'IBM Plex Sans Arabic', system-ui, sans-serif;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){ --paper:#0F1C22; --paper-2:#152830; --text:#E4ECEB; --muted:#9DB2B4; --line:rgba(228,236,235,.14); }
}
:root[data-theme="dark"]{ --paper:#0F1C22; --paper-2:#152830; --text:#E4ECEB; --muted:#9DB2B4; --line:rgba(228,236,235,.14); }

*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
body{margin:0;background:var(--paper);color:var(--text);font-family:var(--body);font-size:17px;line-height:1.8;direction:rtl;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit}
:focus-visible{outline:2px solid var(--amber);outline-offset:3px}
.wrap{max-width:var(--wrap);margin:0 auto;padding-inline:var(--gut)}
h1,h2,h3{font-family:var(--display);font-weight:500;line-height:1.3;margin:0}
p{margin:0 0 1em}
.sec{padding-block:clamp(72px,10vw,128px)}
.h2{font-size:clamp(30px,4.4vw,48px);letter-spacing:-.01em;max-width:18ch}
.lead{font-size:clamp(17px,1.6vw,19px);color:var(--muted);max-width:60ch}

/* viewfinder: the one recurring device */
.vf{--c:var(--amber);--s:26px;--w:2px;position:relative;
  background:
   linear-gradient(var(--c),var(--c)) top right/var(--s) var(--w) no-repeat,
   linear-gradient(var(--c),var(--c)) top right/var(--w) var(--s) no-repeat,
   linear-gradient(var(--c),var(--c)) top left/var(--s) var(--w) no-repeat,
   linear-gradient(var(--c),var(--c)) top left/var(--w) var(--s) no-repeat,
   linear-gradient(var(--c),var(--c)) bottom right/var(--s) var(--w) no-repeat,
   linear-gradient(var(--c),var(--c)) bottom right/var(--w) var(--s) no-repeat,
   linear-gradient(var(--c),var(--c)) bottom left/var(--s) var(--w) no-repeat,
   linear-gradient(var(--c),var(--c)) bottom left/var(--w) var(--s) no-repeat;}

/* header */
.top{position:sticky;top:0;z-index:20;background:rgba(14,39,51,.94);backdrop-filter:saturate(1.2) blur(8px);color:#fff;border-bottom:1px solid rgba(255,255,255,.08)}
.top .wrap{display:flex;align-items:center;gap:24px;min-height:68px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;flex-shrink:0}
.brand svg{width:38px;height:38px}
.brand b{font-family:var(--display);font-weight:500;font-size:17px;display:block;line-height:1.2}
.brand small{display:block;font-size:11px;color:var(--teal-l);direction:ltr;text-align:right;letter-spacing:.02em}
nav.main{display:flex;gap:4px;margin-inline-start:auto;overflow-x:auto;scrollbar-width:none}
nav.main::-webkit-scrollbar{display:none}
nav.main a{text-decoration:none;font-size:15px;padding:8px 10px;border-radius:6px;color:#D5E3E3;white-space:nowrap}
nav.main a:hover{color:#fff;background:rgba(255,255,255,.07)}
.btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--body);font-weight:600;font-size:15px;text-decoration:none;padding:12px 22px;border-radius:6px;border:0;cursor:pointer;white-space:nowrap}
.btn-amber{background:var(--amber);color:#1B1408}
.btn-amber:hover{background:#ECB552}
.btn-ghost{color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.35)}
.btn-ghost:hover{box-shadow:inset 0 0 0 1px #fff}
.top .btn{padding:9px 16px;font-size:14px}
@media (max-width:900px){
  .top .wrap{flex-wrap:wrap;gap:0 12px;padding-block:10px 0}
  .top .btn{margin-inline-start:auto}
  nav.main{order:3;width:100%;margin:6px calc(-1*var(--gut)) 0;padding:0 var(--gut) 8px}
}

/* hero */
.hero{background:var(--ink);color:#fff;overflow:hidden;position:relative}
.hero .wrap{display:grid;grid-template-columns:1.25fr .85fr;gap:clamp(32px,6vw,88px);align-items:center;padding-block:clamp(56px,8vw,104px) 0}
.hero h1{font-size:clamp(38px,6.2vw,76px);font-weight:500;line-height:1.18;letter-spacing:-.015em;margin-bottom:28px}
.hero h1 span{display:block;color:var(--teal-l);font-weight:300}
.hero .who{font-size:clamp(17px,1.7vw,20px);color:#C9D9DA;max-width:46ch;margin-bottom:36px}
.hero .ctas{display:flex;gap:12px;flex-wrap:wrap}
.shot{position:relative;padding:22px;--s:44px;--w:3px}
.shot img{height:auto;aspect-ratio:4/5;object-fit:cover;object-position:50% 18%;width:100%;filter:grayscale(.15) contrast(1.03)}
.shot .rec{position:absolute;top:30px;left:34px;display:flex;align-items:center;gap:8px;font-size:12px;color:#fff;background:rgba(14,39,51,.75);padding:4px 10px;border-radius:4px;direction:ltr}
.shot .rec i{width:8px;height:8px;border-radius:50%;background:#E5533D;animation:blink 1.6s steps(2) infinite}
@keyframes blink{50%{opacity:.15}}
.shot.vf{animation:focus 1.4s cubic-bezier(.2,.8,.2,1) .2s both}
@keyframes focus{from{padding:0;--s:120px}to{padding:22px}}
.ruler{margin-top:clamp(56px,7vw,88px);border-top:1px solid rgba(255,255,255,.12);display:grid;grid-template-columns:repeat(4,1fr)}
.ruler div{padding:22px 0 26px;padding-inline-start:20px;border-inline-start:1px solid rgba(255,255,255,.12);position:relative}
.ruler div:first-child{border-inline-start:0;padding-inline-start:0}
.ruler div::before{content:"";position:absolute;top:-1px;inset-inline-start:0;width:40px;height:2px;background:var(--amber)}
.ruler div:first-child::before{inset-inline-start:0}
.ruler b{font-family:var(--display);font-weight:500;font-size:clamp(26px,3vw,36px);display:block;direction:ltr;text-align:right;line-height:1.2}
.ruler span{font-size:14px;color:#A9C1C3}
@media (max-width:820px){
  .hero .wrap{grid-template-columns:1fr}
  .shot{max-width:360px;justify-self:center;width:100%}
  .ruler{grid-template-columns:1fr 1fr}
  .ruler div:nth-child(3){border-inline-start:0;padding-inline-start:0}
}

/* about */
.about .grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(32px,6vw,96px);align-items:start}
.about figure{margin:0;position:sticky;top:96px}
.about figure img{height:auto;aspect-ratio:3/4;object-fit:cover;width:100%;border-radius:2px}
.about figcaption{font-size:13px;color:var(--muted);margin-top:10px}
.about .h2{margin-bottom:28px}
.about .body p{font-size:18px;max-width:58ch}
.tl{list-style:none;margin:48px 0 0;padding:0;border-inline-start:2px solid var(--line)}
.tl li{display:grid;grid-template-columns:110px 1fr;gap:16px;padding:12px 0 12px;padding-inline-start:22px;position:relative;font-size:16px;line-height:1.6}
.tl li::before{content:"";position:absolute;inset-inline-start:-6px;top:22px;width:10px;height:10px;background:var(--paper);border:2px solid var(--teal);border-radius:50%}
.tl time{font-family:var(--display);font-weight:500;color:var(--teal);direction:ltr;text-align:right;font-size:15px}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .tl time{color:var(--teal-l)}}
:root[data-theme="dark"] .tl time{color:var(--teal-l)}
.tl h3{font-size:16px;font-family:var(--body);font-weight:600;margin-bottom:0}
.tl p{margin:0;color:var(--muted);font-size:15px}
@media (max-width:820px){.about .grid{grid-template-columns:1fr}.about figure{position:static;max-width:420px}.tl li{grid-template-columns:1fr;gap:2px}}

/* services */
.services{background:var(--paper-2)}
.services header{display:flex;justify-content:space-between;align-items:end;gap:24px;flex-wrap:wrap;margin-bottom:48px}
.svc{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}
.svc article{padding:28px 24px 32px;padding-inline-start:0;border-bottom:1px solid var(--line);position:relative}
.svc article:not(:nth-child(3n+1)){padding-inline-start:24px;border-inline-start:1px solid var(--line)}
.svc h3{font-size:21px;margin-bottom:10px}
.svc p{font-size:15.5px;color:var(--muted);margin:0;line-height:1.75}
.svc article::after{content:"";position:absolute;top:-1px;inset-inline-start:0;height:2px;width:0;background:var(--amber);transition:width .35s ease}
.svc article:hover::after{width:56px}
@media (max-width:900px){.svc{grid-template-columns:1fr 1fr}.svc article:not(:nth-child(3n+1)){padding-inline-start:0;border-inline-start:0}.svc article:nth-child(2n){padding-inline-start:20px;border-inline-start:1px solid var(--line)}}
@media (max-width:600px){.svc{grid-template-columns:1fr}.svc article:nth-child(2n){padding-inline-start:0;border-inline-start:0}}

/* method */
.method{background:var(--ink);color:#fff}
.method .lead{color:#B9CDCF}
.steps{list-style:none;margin:56px 0 0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);counter-reset:s;position:relative}
.steps::before{content:"";position:absolute;top:21px;right:0;left:0;height:1px;background:rgba(255,255,255,.18)}
.steps li{counter-increment:s;padding-inline-end:20px;position:relative}
.steps li::before{content:counter(s);display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--ink);border:1px solid var(--teal-l);color:var(--teal-l);font-family:var(--display);font-size:17px;margin-bottom:20px;position:relative}
.steps li:last-child::before{background:var(--amber);border-color:var(--amber);color:#1B1408}
.steps h3{font-size:19px;margin-bottom:8px}
.steps p{font-size:15px;color:#B9CDCF;margin:0;line-height:1.7}
@media (max-width:900px){.steps{grid-template-columns:1fr;gap:28px}.steps::before{top:0;bottom:0;right:21px;left:auto;width:1px;height:auto}.steps li{display:grid;grid-template-columns:44px 1fr;gap:0 18px}.steps li::before{margin:0;grid-row:span 2}}

/* training */
.train .grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,72px);align-items:end;margin-bottom:48px}
.formats{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.formats span{font-size:14px;padding:6px 14px;border:1px solid var(--line);border-radius:999px;color:var(--text)}
.mosaic{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:240px 240px;gap:10px}
.mosaic img{width:100%;height:100%;object-fit:cover;border-radius:2px}
.mosaic .a{grid-row:span 2}
.mosaic .d{grid-column:span 2}
.clients-line{margin-top:28px;font-size:15px;color:var(--muted)}
@media (max-width:820px){.train .grid{grid-template-columns:1fr}.mosaic{grid-template-columns:1fr 1fr;grid-template-rows:220px 160px 160px}.mosaic .a{grid-row:auto;grid-column:span 2}.mosaic .d{grid-column:span 2}}

/* cinema */
.cinema{background:var(--night);color:var(--bone);position:relative}
.cinema::before,.cinema::after{content:"";position:absolute;left:0;right:0;height:14px;background:repeating-linear-gradient(90deg,#000 0 18px,transparent 18px 30px);opacity:.55}
.cinema::before{top:0}.cinema::after{bottom:0}
.cinema .lead{color:#B8AE9F}
.cinema .h2{color:#F3ECDF}
.posters{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,2.4vw,32px);margin-top:56px;align-items:end}
.posters figure{margin:0}
.posters img{width:100%;aspect-ratio:2/3;object-fit:cover;box-shadow:0 30px 60px -30px #000}
.posters figure:nth-child(2){transform:translateY(-28px)}
.posters figcaption{margin-top:14px;font-family:var(--display);font-size:18px;color:#F3ECDF}
.posters figcaption small{display:block;font-family:var(--body);font-size:13px;color:#9E9485}
.col{display:grid;grid-template-columns:1.3fr 1fr;gap:clamp(28px,5vw,64px);margin-top:clamp(64px,8vw,104px);align-items:center}
.col img{width:100%;aspect-ratio:16/9;object-fit:cover}
.col h3{font-size:clamp(24px,2.8vw,32px);color:#F3ECDF;margin-bottom:6px}
.col .yr{color:var(--amber);font-family:var(--display);direction:ltr;display:inline-block;margin-bottom:14px}
.col p{color:#C9BFB0;font-size:16.5px}
.strip{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:40px}
.strip img{width:100%;aspect-ratio:4/3;object-fit:cover;filter:saturate(.85)}
.awards{display:grid;grid-template-columns:1fr 1fr;gap:16px 40px;margin-top:48px;padding-top:32px;border-top:1px solid rgba(233,226,214,.14)}
.awards h3{font-size:17px;font-family:var(--body);font-weight:600;color:#F3ECDF;margin-bottom:2px}
.awards p{margin:0;color:#A89E8F;font-size:15px}
@media (max-width:820px){.posters{grid-template-columns:1fr 1fr}.posters figure:nth-child(2){transform:none}.posters figure:nth-child(3){grid-column:span 2;max-width:60%;justify-self:center}.col{grid-template-columns:1fr}.strip{grid-template-columns:1fr 1fr}.awards{grid-template-columns:1fr}}

/* book */
.book .grid{display:grid;grid-template-columns:auto 1fr;gap:clamp(40px,7vw,104px);align-items:center}
.cover{width:min(300px,70vw);aspect-ratio:2/3;background:#FBFCFC;color:#143D4E;padding:44px 28px;display:flex;flex-direction:column;justify-content:center;text-align:center;box-shadow:-18px 24px 40px -18px rgba(14,39,51,.45), inset 10px 0 0 -6px rgba(14,39,51,.08);border-radius:2px 6px 6px 2px;position:relative;transform:perspective(900px) rotateY(10deg)}
.cover::before{content:"";position:absolute;inset:14px;border:1px solid rgba(14,107,107,.25)}
.cover b{font-family:var(--display);font-weight:700;font-size:40px;line-height:1.2;margin-bottom:18px}
.cover span{color:var(--teal);font-size:15px;line-height:1.7}
.cover small{margin-top:36px;font-family:var(--display);font-weight:500;font-size:15px}
.book ul{margin:24px 0 32px;padding:0;list-style:none}
.book li{padding:10px 0;border-bottom:1px solid var(--line);font-size:16px}
.book li:first-child{border-top:1px solid var(--line)}
.book .btn-dark{background:var(--ink);color:#fff}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .book .btn-dark{background:var(--amber);color:#1B1408}}
:root[data-theme="dark"] .book .btn-dark{background:var(--amber);color:#1B1408}
@media (max-width:820px){.book .grid{grid-template-columns:1fr}.cover{justify-self:center}}

/* tools */
.tools{background:var(--paper-2)}
.tools .grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,72px);margin-top:48px}
.tool-card{background:var(--paper);padding:32px;border-radius:4px;position:relative;--c:var(--teal);--s:22px}
.tool-card .tag{display:inline-block;font-size:13px;background:rgba(224,164,59,.18);color:#8A5A0B;padding:3px 10px;border-radius:4px;margin-bottom:16px}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .tool-card .tag{color:var(--amber)}}
:root[data-theme="dark"] .tool-card .tag{color:var(--amber)}
.tool-card h3{font-size:24px;margin-bottom:10px}
.tool-card p{color:var(--muted);font-size:16px}
.how{list-style:none;margin:0;padding:0;counter-reset:h}
.how li{counter-increment:h;display:grid;grid-template-columns:40px 1fr;gap:16px;padding:18px 0;border-bottom:1px solid var(--line)}
.how li::before{content:counter(h);font-family:var(--display);font-size:28px;color:var(--teal);line-height:1}
.how h3{font-size:18px;margin-bottom:4px}
.how p{margin:0;color:var(--muted);font-size:15px}
@media (max-width:820px){.tools .grid{grid-template-columns:1fr}}

/* partners */
.logos{display:grid;grid-template-columns:repeat(6,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:48px}
.logos div{background:#fff;display:grid;place-items:center;height:120px;padding:18px}
.logos img{max-height:72px;max-width:120px;object-fit:contain;filter:grayscale(1);opacity:.72;transition:filter .3s,opacity .3s}
.logos div:hover img{filter:none;opacity:1}
.logos .more{background:var(--ink);color:#fff;font-family:var(--display);font-size:15px;line-height:1.5;text-align:center}
@media (max-width:1000px){.logos{grid-template-columns:repeat(4,1fr)}}
@media (max-width:700px){.logos{grid-template-columns:repeat(3,1fr)}}
@media (max-width:460px){.logos{grid-template-columns:repeat(2,1fr)}}
.also{margin-top:28px;display:flex;flex-wrap:wrap;gap:8px 28px;font-size:15px;color:var(--muted)}
.also b{color:var(--text);font-weight:500}

/* series */
.series .grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:40px}
.serie{border:1px solid var(--line);padding:28px;border-radius:4px;display:flex;flex-direction:column;gap:8px}
.serie h3{font-size:22px}
.serie p{color:var(--muted);margin:0;font-size:15.5px}
.serie .soon{font-size:13px;color:var(--teal);margin-top:auto;padding-top:12px}
@media (max-width:700px){.series .grid{grid-template-columns:1fr}}

/* contact */
.contact{background:var(--ink);color:#fff}
.contact .grid{display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(32px,6vw,96px);align-items:start}
.contact .h2{font-size:clamp(34px,5vw,60px);max-width:14ch;margin-bottom:24px}
.contact .lead{color:#B9CDCF}
.phone{font-family:var(--display);font-size:clamp(26px,3.4vw,40px);direction:ltr;text-align:right;user-select:all;margin:8px 0 20px;letter-spacing:.01em}
.cl{list-style:none;margin:0;padding:0}
.cl li{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.12);font-size:15.5px;flex-wrap:wrap}
.cl li span:first-child{color:#9DB7B9}
.cl a,.cl .sel{direction:ltr;text-decoration:none;user-select:all}
.cl a:hover{color:var(--amber)}
footer{background:#0A1E27;color:#86A1A4;font-size:14px;padding-block:28px}
footer .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
@media (max-width:820px){.contact .grid{grid-template-columns:1fr}}

/* ---- multi-page additions ---- */
nav.main a[aria-current="page"]{color:#fff;box-shadow:inset 0 -2px 0 var(--amber);border-radius:0}
.phead{background:var(--ink);color:#fff;padding-block:clamp(48px,7vw,88px) clamp(40px,6vw,72px);position:relative;overflow:hidden}
.phead .crumb{font-size:14px;color:#9DB7B9;margin-bottom:18px}
.phead .crumb a{color:#9DB7B9;text-decoration:none}.phead .crumb a:hover{color:#fff}
.phead h1{font-size:clamp(40px,6vw,72px);font-weight:500;display:inline-block;padding:10px 22px;margin-inline-start:-22px;--s:20px}
.phead p{color:#C9D9DA;font-size:clamp(17px,1.7vw,20px);max-width:56ch;margin:18px 0 0}
.phead.dark{background:var(--night)}
.phead.dark p{color:#C9BFB0}
.next{background:var(--paper-2);border-top:1px solid var(--line)}
.next a{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-block:40px;text-decoration:none}
.next small{display:block;font-size:14px;color:var(--muted)}
.next b{font-family:var(--display);font-weight:500;font-size:clamp(26px,3.4vw,40px)}
.next .arr{font-family:var(--display);font-size:40px;color:var(--teal);transition:transform .3s}
.next a:hover .arr{transform:translateX(-10px)}
/* home chapters */
.chap{padding-block:clamp(56px,8vw,96px);border-bottom:1px solid var(--line)}
.chap .wrap{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,96px);align-items:center}
.chap:nth-of-type(even) .media{order:-1}
.chap h2{font-size:clamp(28px,3.6vw,42px);margin-bottom:16px;max-width:16ch}
.chap p{color:var(--muted);font-size:17.5px;max-width:48ch}
.chap .media{position:relative;padding:16px;--s:30px}
.chap .media img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.more-link{display:inline-flex;align-items:center;gap:10px;margin-top:12px;font-weight:600;font-size:16px;text-decoration:none;color:var(--text);padding-bottom:4px;border-bottom:2px solid var(--amber)}
.more-link:hover{color:var(--teal)}
.chap.night{background:var(--night);color:var(--bone);border:0}
.chap.night h2{color:#F3ECDF}.chap.night p{color:#B8AE9F}.chap.night .more-link{color:#F3ECDF}
.mini-posters{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.mini-posters img{width:100%;aspect-ratio:2/3;object-fit:cover;box-shadow:0 24px 40px -24px #000}
.mini-posters img:nth-child(2){transform:translateY(-18px)}
.tags{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 8px}
.tags span{font-size:14px;padding:5px 12px;border:1px solid var(--line);border-radius:999px}
.home-logos{padding-block:48px;background:var(--paper-2)}
.home-logos .row{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:20px 40px;margin-top:20px}
.home-logos img{height:44px;width:auto;filter:grayscale(1);opacity:.6;mix-blend-mode:multiply}
.home-logos h2{font-size:18px;text-align:center;font-family:var(--body);font-weight:500;color:var(--muted)}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .home-logos img{filter:grayscale(1) invert(1);mix-blend-mode:screen}}
:root[data-theme="dark"] .home-logos img{filter:grayscale(1) invert(1);mix-blend-mode:screen}
.band{background:var(--ink);color:#fff;padding-block:clamp(56px,8vw,96px)}
.band .wrap{display:flex;justify-content:space-between;align-items:center;gap:32px;flex-wrap:wrap}
.band h2{font-size:clamp(30px,4.4vw,52px);max-width:16ch}
.band .ctas{display:flex;gap:12px;flex-wrap:wrap}
@media (max-width:820px){.chap .wrap{grid-template-columns:1fr}.chap:nth-of-type(even) .media{order:0}}

/* ---- motion ---- */
.phead.has-media .wrap{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(32px,5vw,72px);align-items:center}
.pmedia{position:relative;padding:18px;--s:34px;--w:3px;overflow:visible}
.pmedia img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.pmedia.vf{animation:focus2 1.5s cubic-bezier(.2,.8,.2,1) .15s both}
.pmedia img,.shot img{animation:zoomout 1.6s cubic-bezier(.2,.8,.2,1) .1s both}
.pcover{display:grid;place-items:center;animation:zoomout 1.4s cubic-bezier(.2,.8,.2,1) .1s both}
@keyframes focus2{from{padding:0}to{padding:18px}}
@keyframes zoomout{from{transform:scale(1.18);opacity:.2}to{transform:none;opacity:1}}
.phead h1.vf{animation:titlefocus 1.2s cubic-bezier(.2,.8,.2,1) .35s both}
@keyframes titlefocus{from{padding:0;margin-inline-start:0;opacity:0;letter-spacing:.06em}to{opacity:1}}
.phead .crumb,.phead p{animation:rise .9s cubic-bezier(.2,.8,.2,1) .6s both}
@keyframes rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.hero h1,.hero .who,.hero .ctas{animation:rise 1s cubic-bezier(.2,.8,.2,1) both}
.hero .who{animation-delay:.35s}.hero .ctas{animation-delay:.5s}
.rv{opacity:0;transform:scale(1.07) translateY(26px);filter:blur(8px);
  transition:opacity .9s ease var(--d,0ms),transform 1.25s cubic-bezier(.2,.8,.2,1) var(--d,0ms),filter 1s ease var(--d,0ms),padding 1.3s cubic-bezier(.2,.8,.2,1) var(--d,0ms)}
.rv.in{opacity:1;transform:none;filter:none}
.vf.rv:not(.in){padding:0}
.vf.rv img{transition:transform 1.5s cubic-bezier(.2,.8,.2,1) var(--d,0ms)}
.vf.rv:not(.in) img{transform:scale(1.12)}
.logos{background:none;gap:0}.logos>div{box-shadow:0 0 0 .5px var(--line)}
.tl .ev{display:inline-block;width:112px;height:76px;margin:10px 0 0;margin-inline-end:8px}
.ev{padding:0;border:0;background:none;cursor:zoom-in;display:block;position:relative;overflow:hidden;border-radius:2px;font:inherit;color:inherit}
.ev img{width:100%;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.ev:hover img{transform:scale(1.05)}
.colwall{margin-top:clamp(56px,7vw,88px)}
.colwall h3,.striph{font-size:clamp(22px,2.4vw,28px);color:#F3ECDF;margin-bottom:6px}
.colwall p{color:#B8AE9F;margin-bottom:24px}
.pw{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.pw .ev img{aspect-ratio:1448/2048;height:auto}
.pw .ev span{display:block;font-size:13px;color:#B8AE9F;margin-top:8px;direction:ltr;text-align:right}
.striph{margin-top:56px}
.strip .ev img{aspect-ratio:4/3;height:auto}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:32px}
.chip{font:inherit;font-size:15px;padding:8px 16px;border-radius:999px;border:1px solid var(--line);background:none;color:var(--text);cursor:pointer}
.chip[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:#fff}
.arch-grid{columns:4 240px;column-gap:14px}
.arch-grid figure{break-inside:avoid;margin:0 0 18px}
.arch-grid .ev img{height:auto}
.arch-grid figcaption{font-size:14.5px;line-height:1.55;margin-top:8px}
.arch-grid figcaption span{display:block;font-size:12.5px;color:var(--teal);margin-bottom:2px}
.arch-grid figure[hidden]{display:none}
.arch-teaser{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.arch-teaser img{width:100%;aspect-ratio:1;object-fit:cover}
.arch-teaser img:nth-child(odd){transform:translateY(14px)}
dialog.lb{border:0;padding:0;background:transparent;max-width:min(1100px,94vw);max-height:92vh;color:#fff;overflow:visible}
dialog.lb::backdrop{background:rgba(6,16,21,.97)}
dialog.lb img{max-width:100%;max-height:80vh;width:auto;height:auto;margin:0 auto;animation:zoomout .6s cubic-bezier(.2,.8,.2,1) both}
dialog.lb p{text-align:center;margin:12px 0 0;font-size:15px;color:#D5E3E3}
dialog.lb .x,dialog.lb .nv{position:fixed;background:rgba(255,255,255,.1);color:#fff;border:0;width:44px;height:44px;border-radius:50%;font-size:22px;cursor:pointer;display:grid;place-items:center}
dialog.lb .x{top:16px;left:16px}dialog.lb .nv.p{right:16px;top:50%}dialog.lb .nv.n{left:16px;top:50%}
@media (max-width:820px){.pw{grid-template-columns:repeat(3,1fr)}.strip{grid-template-columns:1fr 1fr}}
.ruler.r3{grid-template-columns:repeat(3,1fr)}
.ruler.r3 span{display:block;max-width:26ch}
@media (max-width:820px){.ruler.r3{grid-template-columns:1fr}.ruler.r3 div{border-inline-start:0;padding-inline-start:0;border-top:1px solid rgba(255,255,255,.12)}}
.focus{margin-top:32px}.focus h3,.addons h3,.creds h3,.hall{font-size:18px;font-family:var(--body);font-weight:600;margin-bottom:12px}
.focus .tags span,.addons .tags span{background:var(--paper-2)}
.impact{background:var(--paper)}
.svc.four{grid-template-columns:repeat(2,1fr);margin-top:40px}
.svc.four article:not(:nth-child(3n+1)){padding-inline-start:0;border-inline-start:0}
.svc.four article:nth-child(2n){padding-inline-start:24px;border-inline-start:1px solid var(--line)}
.creds{margin-top:48px}.creds ul{margin:0;padding:0;list-style:none;columns:2 320px;column-gap:40px}
.creds li{padding:10px 0;border-bottom:1px solid var(--line);break-inside:avoid;font-size:16px}
.groups{margin:40px 0 0;display:grid;gap:0}
.groups>div{display:grid;grid-template-columns:200px 1fr;gap:16px;padding:16px 0;border-bottom:1px solid var(--line)}
.groups dt{font-weight:600;color:var(--teal)}.groups dd{margin:0}
.nda{font-size:14px;color:var(--muted);margin-top:16px}
.why{background:var(--paper)}.why .svc{margin-top:40px}
.dom{display:grid;grid-template-columns:repeat(2,1fr);gap:0;border-top:1px solid var(--line)}
.dom article{padding:28px 0;border-bottom:1px solid var(--line)}
.dom article:nth-child(2n){padding-inline-start:32px;border-inline-start:1px solid var(--line)}
.dom article:nth-child(2n+1){padding-inline-end:32px}
.dom h3{font-size:22px;margin-bottom:12px}
.dom ul{margin:0;padding:0;list-style:none}
.dom li{padding:6px 0;padding-inline-start:18px;position:relative;font-size:16px}
.dom li::before{content:"";position:absolute;inset-inline-start:0;top:16px;width:8px;height:2px;background:var(--amber)}
.dom .wide{grid-column:1/-1;padding-inline-start:0!important;border-inline-start:0!important}
.dom .wide p{color:var(--muted);max-width:70ch;margin:0}
.meth{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.12);margin-top:48px;border:1px solid rgba(255,255,255,.12)}
.meth article{background:var(--ink);padding:28px 24px;position:relative;--c:var(--teal-l);--s:14px;--w:1.5px}
.meth h3{font-size:19px;margin-bottom:8px}.meth p{color:#B9CDCF;font-size:15px;margin:0;line-height:1.7}
.meth article:hover{background:var(--ink-2)}
.formats3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:8px 0 32px}
.formats3 article{border:1px solid var(--line);padding:24px;border-radius:4px;position:relative}
.formats3 small{display:inline-block;font-size:13px;color:#8A5A0B;background:rgba(224,164,59,.18);padding:2px 10px;border-radius:4px;margin-bottom:12px}
.formats3 h3{font-size:21px;margin-bottom:6px}.formats3 p{color:var(--muted);margin:0;font-size:15.5px}
.addons{margin-bottom:48px}.hall{margin-bottom:16px}
@media (max-width:820px){.svc.four,.dom,.formats3{grid-template-columns:1fr}.svc.four article:nth-child(2n),.dom article:nth-child(2n){padding-inline-start:0;border-inline-start:0}.dom article:nth-child(2n+1){padding-inline-end:0}.meth{grid-template-columns:1fr}.groups>div{grid-template-columns:1fr;gap:4px}}
@media (min-width:821px) and (max-width:1000px){.meth{grid-template-columns:1fr 1fr}}
.cfm{background:var(--night);color:var(--bone)}
.cfm .h2,.cfm-h{color:#F3ECDF}.cfm p{color:#C9BFB0;max-width:62ch}
.cfm .more-link{color:#F3ECDF}
.cfm-intro{display:grid;grid-template-columns:auto 1fr;gap:clamp(32px,6vw,80px);align-items:center;margin-bottom:clamp(56px,7vw,88px)}
.cfm-mark{width:min(240px,60vw);aspect-ratio:1;border:2px solid var(--amber);display:flex;flex-direction:column;justify-content:center;padding:24px;direction:ltr;font-family:var(--display);color:#F3ECDF;line-height:1;position:relative}
.cfm-mark span:nth-child(1){font-size:46px;font-weight:700}.cfm-mark span:nth-child(2){font-size:20px;color:var(--amber);margin:6px 0}.cfm-mark span:nth-child(3){font-size:30px;font-weight:300}
.cfm-mark::after{content:"";position:absolute;inset:10px;border:1px dashed rgba(224,164,59,.35)}
.cfm-h{font-size:clamp(22px,2.4vw,28px);margin:0 0 18px}
.cfm .chip{color:#E9E2D6;border-color:rgba(233,226,214,.2)}
.cfm .chip[aria-pressed="true"]{background:var(--amber);border-color:var(--amber);color:#1B1408}
.fgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px}
.fcard{font:inherit;text-align:right;border:0;cursor:pointer;aspect-ratio:2/3;padding:20px 18px;display:flex;flex-direction:column;justify-content:flex-end;gap:6px;color:#F3ECDF;position:relative;overflow:hidden;transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.fcard:hover{transform:translateY(-6px)}
.fcard.t1{background:#14303C}.fcard.t2{background:#2A2420}.fcard.t3{background:#0F4F52}.fcard.t4{background:#3A2A14}
.fcard .fy{position:absolute;top:14px;left:16px;font-family:var(--display);font-size:64px;font-weight:700;line-height:1;color:transparent;-webkit-text-stroke:1px rgba(243,236,223,.28);direction:ltr}
.fcard .fen{font-family:var(--display);font-size:26px;font-weight:500;line-height:1.15;direction:ltr;text-align:right}
.fcard .far{font-size:15px;color:var(--amber)}
.fcard .ftags{font-size:12.5px;color:#B8AE9F;border-top:1px solid rgba(243,236,223,.15);padding-top:8px;margin-top:4px}
.fcard::before{content:"";position:absolute;top:12px;right:12px;width:18px;height:18px;border-top:2px solid var(--amber);border-right:2px solid var(--amber)}
.fcard[hidden]{display:none}
.cfm-two{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,72px);margin-top:clamp(56px,7vw,88px)}
.arow{display:flex;justify-content:space-between;gap:16px;width:100%;font:inherit;text-align:right;background:none;border:0;border-bottom:1px solid rgba(233,226,214,.14);padding:18px 0;color:#F3ECDF;cursor:pointer;flex-wrap:wrap}
.arow .at{font-family:var(--display);font-size:20px}.arow .ag{font-size:13px;color:#9E9485}
.arow:hover .at{color:var(--amber)}
.notes{display:flex;flex-direction:column;gap:12px;max-height:520px;overflow:auto;padding-inline-end:6px;scrollbar-width:thin}
.note{margin:0;padding:16px 20px;border-inline-start:3px solid var(--amber);background:rgba(243,236,223,.05);font-size:16px;line-height:1.75;color:#E9E2D6}
dialog.reader{border:0;padding:0;width:min(780px,94vw);max-height:90vh;background:var(--paper);color:var(--text);border-radius:4px;overflow:auto}
dialog.reader::backdrop{background:rgba(6,16,21,.85)}
dialog.reader[open]{animation:zoomout .5s cubic-bezier(.2,.8,.2,1) both}
.reader .rx{position:sticky;top:12px;float:left;margin:12px;width:42px;height:42px;border-radius:50%;border:0;background:var(--amber);color:#1B1408;font-size:22px;cursor:pointer;z-index:2}
.rhead{background:var(--night);color:#F3ECDF;padding:40px clamp(20px,5vw,48px) 28px;position:relative}
.rhead .fy{font-family:var(--display);font-size:72px;font-weight:700;color:transparent;-webkit-text-stroke:1px rgba(224,164,59,.6);line-height:1;display:block;direction:ltr;text-align:right}
.rhead h2{font-size:clamp(28px,4vw,40px)}.rhead h2 small{display:block;font-family:var(--body);font-size:15px;color:var(--amber);font-weight:500;margin-top:6px}
.rtags{display:flex;flex-wrap:wrap;gap:6px;margin-top:16px}.rtags span{font-size:13px;padding:3px 10px;border:1px solid rgba(243,236,223,.25);border-radius:999px}
.rbody{padding:28px clamp(20px,5vw,48px) 8px;font-size:17.5px;line-height:1.95}
.rbody h3{font-size:21px;margin:28px 0 10px;padding-inline-start:14px;border-inline-start:3px solid var(--amber)}
.rbody ul{padding-inline-start:20px}.rbody li{margin-bottom:6px}
.rfoot{padding:16px clamp(20px,5vw,48px) 32px;font-size:13px;color:var(--muted)}
@media (max-width:820px){.cfm-intro,.cfm-two{grid-template-columns:1fr}.fgrid{grid-template-columns:1fr 1fr}.fcard .fen{font-size:20px}.fcard .fy{font-size:48px}}
@property --s{syntax:'<length>';inherits:true;initial-value:26px}
.vf{transition:--s .5s cubic-bezier(.2,.8,.2,1)}
.chap .media:hover,.pmedia:hover,.shot:hover{--s:64px}
.top{position:sticky}
.prog{position:absolute;bottom:-1px;right:0;left:0;height:2px;background:var(--amber);transform:scaleX(0);transform-origin:right;pointer-events:none}
.h2::after,.chap h2::after{content:"";display:block;width:64px;height:3px;background:var(--amber);margin-top:18px;transform:scaleX(0);transform-origin:right;transition:transform 1.1s cubic-bezier(.2,.8,.2,1) .35s}
.h2.in::after,.chap .in h2::after,.h2:not(.rv)::after{transform:scaleX(1)}
.contact .h2::after,.method .h2::after{background:var(--amber)}
.shot::after{content:"";position:absolute;left:22px;right:22px;top:22px;height:2px;background:linear-gradient(90deg,transparent,rgba(224,164,59,.85),transparent);animation:scan 5s cubic-bezier(.6,0,.4,1) 1.6s infinite;pointer-events:none;opacity:0}
@keyframes scan{0%{top:22px;opacity:0}10%{opacity:1}90%{opacity:1}100%{top:calc(100% - 24px);opacity:0}}
.shot .rec b{font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:.04em}
.reel{background:var(--amber);color:#1B1408;overflow:hidden;position:relative;padding:14px 0;border-block:6px solid #1B1408}
.reel::before,.reel::after{content:"";position:absolute;left:0;right:0;height:6px;background:repeating-linear-gradient(90deg,#1B1408 0 10px,var(--amber) 10px 22px)}
.reel::before{top:0}.reel::after{bottom:0}
.reel-track{display:flex;gap:0;width:max-content;animation:reel 48s linear infinite}
.reel span{font-family:var(--display);font-weight:500;font-size:clamp(18px,2vw,24px);padding:6px 28px;white-space:nowrap;position:relative}
.reel span::after{content:"";position:absolute;left:-5px;top:50%;width:10px;height:10px;border:2px solid #1B1408;transform:translateY(-50%) rotate(45deg)}
.reel:hover .reel-track{animation-play-state:paused}
@keyframes reel{from{transform:translateX(0)}to{transform:translateX(50%)}}
.tl{position:relative}
.tl::after{content:"";position:absolute;top:0;inset-inline-start:-2px;width:2px;height:var(--tlp,0%);background:var(--amber);transition:height .15s linear}
.ruler b{font-variant-numeric:tabular-nums}
.pmedia{will-change:transform}
.fcard::after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 40%,rgba(243,236,223,.08) 50%,transparent 60%);transform:translateX(-100%);transition:transform .8s ease}
.fcard:hover::after{transform:translateX(100%)}
.svc article::after,.dom article::after,.meth article::after{content:"";position:absolute;top:-1px;inset-inline-start:0;height:2px;width:0;background:var(--amber);transition:width .45s cubic-bezier(.2,.8,.2,1)}
.dom article,.meth article{position:relative}
.svc article:hover::after,.dom article:hover::after,.meth article:hover::after{width:72px}
.svc article.in::after,.dom article.in::after{animation:linein 1.2s cubic-bezier(.2,.8,.2,1) var(--d,0ms) both}
@keyframes linein{0%{width:0}50%{width:72px}100%{width:0}}
.cursor-vf{position:fixed;top:0;left:0;width:56px;height:56px;pointer-events:none;z-index:50;--c:var(--amber);--s:12px;--w:2px;opacity:0;transition:opacity .25s,width .3s,height .3s;mix-blend-mode:normal}
.cursor-vf.on{opacity:1}
@media (hover:none),(pointer:coarse){.cursor-vf{display:none}}
@media (prefers-reduced-motion: reduce){.reel-track,.shot::after{animation:none}}
main{transition:opacity .3s ease,transform .3s ease}
body.leaving main{opacity:0;transform:scale(.985)}
@media (max-width:820px){.phead.has-media .wrap{grid-template-columns:1fr}.pmedia{max-width:520px}}
@media (prefers-reduced-motion: reduce){.rv{opacity:1;transform:none;filter:none}}

/* ---- v2 revisions ---- */
:root{--ivory:#F7F2E8;--gold:#E0A43B}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--ivory:#13232A}}
:root[data-theme="dark"]{--ivory:#13232A}
.ivory{background:var(--ivory)!important}
.hero .wrap{grid-template-columns:1.2fr .8fr;align-items:center}
.hero h1.hname{font-size:inherit;margin:0 0 26px;line-height:1.35;font-weight:500;letter-spacing:0}
.hname b{display:block;font-size:clamp(26px,3vw,36px);font-weight:700;color:#fff}
.hname span{display:block;font-family:var(--body);font-weight:500;font-size:clamp(16px,1.6vw,20px);color:var(--teal-l);margin-top:6px}
.hline{font-family:var(--display);font-size:clamp(30px,4.2vw,52px);font-weight:500;line-height:1.28;margin:0 0 22px;text-wrap:balance;max-width:16ch;animation:rise 1s cubic-bezier(.2,.8,.2,1) .15s both}
.hline span{display:block}.hline span+span{color:var(--teal-l);font-weight:300}
.hero .who{max-width:52ch}
.vf2{--c:var(--gold);--s:52px;--w:1.5px;position:relative;
  background:linear-gradient(var(--c),var(--c)) top right/var(--s) var(--w) no-repeat,
   linear-gradient(var(--c),var(--c)) top right/var(--w) var(--s) no-repeat,
   linear-gradient(var(--c),var(--c)) bottom left/var(--s) var(--w) no-repeat,
   linear-gradient(var(--c),var(--c)) bottom left/var(--w) var(--s) no-repeat;transition:--s .5s cubic-bezier(.2,.8,.2,1)}
.shot.vf2{padding:18px;animation:focus2 1.4s cubic-bezier(.2,.8,.2,1) .2s both}
.shot.vf2:hover{--s:90px}
.shot::after{display:none!important}
.shot img{filter:none}
.btn-ghost{color:#fff}
@media (max-width:820px){.hero .wrap{grid-template-columns:1fr}.hero .shot{max-width:300px;justify-self:center}.hline{max-width:none}}
/* nav */
nav.main{overflow:visible;align-items:center}
.sub{position:relative}
.sub-t{font:inherit;font-size:15px;color:#D5E3E3;background:none;border:0;padding:8px 10px;border-radius:6px;cursor:pointer;display:inline-flex;align-items:center;gap:6px}
.sub-t::after{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .25s}
.sub-t[aria-expanded="true"]::after{transform:translateY(2px) rotate(-135deg)}
.sub-t:hover,.sub.is-cur .sub-t{color:#fff}
.sub.is-cur .sub-t{box-shadow:inset 0 -2px 0 var(--amber);border-radius:0}
.sub-m{position:absolute;top:calc(100% + 8px);inset-inline-start:0;min-width:220px;background:var(--ink);border:1px solid rgba(255,255,255,.12);border-radius:6px;padding:6px;display:none;flex-direction:column;box-shadow:0 18px 40px -20px rgba(0,0,0,.6);z-index:30}
.sub-m a{padding:10px 12px!important;border-radius:4px}
.sub-m a[aria-current="page"]{box-shadow:none!important;background:rgba(224,164,59,.14);color:#fff}
.sub-t[aria-expanded="true"]+.sub-m{display:flex}
@media (hover:hover) and (min-width:901px){.sub:hover .sub-m,.sub:focus-within .sub-m{display:flex}}
.menu-t{display:none;font:inherit;font-size:14px;color:#fff;background:none;border:1px solid rgba(255,255,255,.3);border-radius:6px;padding:8px 12px;cursor:pointer;align-items:center;gap:8px}
.bars,.bars::before,.bars::after{display:block;width:18px;height:2px;background:#fff;border-radius:2px;position:relative;transition:transform .25s}
.bars::before,.bars::after{content:"";position:absolute;left:0}.bars::before{top:-6px}.bars::after{top:6px}
.top.open .bars{background:transparent}.top.open .bars::before{transform:translateY(6px) rotate(45deg)}.top.open .bars::after{transform:translateY(-6px) rotate(-45deg)}
@media (max-width:900px){
  .top .wrap{flex-wrap:wrap;padding-block:10px;gap:10px}
  .menu-t{display:inline-flex}
  .top .hcta{margin-inline-start:auto;padding:8px 14px}
  nav.main{display:none;order:4;width:100%;margin:4px 0 0;padding:8px 0 4px;flex-direction:column;align-items:stretch;gap:2px;border-top:1px solid rgba(255,255,255,.1)}
  .top.open nav.main{display:flex}
  nav.main a,.sub-t{font-size:16px;padding:12px 4px;width:100%;text-align:right;justify-content:space-between}
  nav.main a[aria-current="page"]{box-shadow:inset -3px 0 0 var(--amber);padding-inline-start:12px}
  .sub-m{position:static;display:flex;background:none;border:0;box-shadow:none;padding:0 14px 6px 0;min-width:0}
  .sub-t::after{display:none}
  .sub-t{cursor:default;color:#9DB7B9;font-size:13px;padding-bottom:4px}
  .sub.is-cur .sub-t{box-shadow:none}
}
@media (max-width:420px){.brand small{display:none}.brand b{font-size:15px}.top .hcta{font-size:13px;padding:8px 10px}.menu-t .mt{display:none}}
/* footer */
footer{padding-block:36px}
.fwrap{display:grid!important;grid-template-columns:1.2fr 2fr auto;gap:24px;align-items:start}
.fid b{display:block;color:#fff;font-family:var(--display);font-weight:500;font-size:17px}.fid span{font-size:13.5px}
.fnav{display:flex;flex-wrap:wrap;gap:6px 18px}.fnav a{text-decoration:none;font-size:14px;color:#B9CDCF}.fnav a:hover{color:var(--amber)}
.fcopy{font-size:13px}
@media (max-width:820px){.fwrap{grid-template-columns:1fr}}
/* consulting */
.shead{margin-bottom:40px}.shead .lead{margin-top:14px}
.cgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:0;border-top:1px solid var(--line)}
.cgrid article{padding:26px 0;border-bottom:1px solid var(--line);position:relative}
.cgrid article:nth-child(2n){padding-inline-start:32px;border-inline-start:1px solid var(--line)}
.cgrid article:nth-child(2n+1){padding-inline-end:32px}
.cgrid h3{font-size:21px;margin-bottom:12px}
.cgrid dl,.prg dl,.cxdl{margin:0;display:grid;gap:8px}
.cgrid dl div,.prg dl div,.cxdl div{display:grid;grid-template-columns:110px 1fr;gap:12px}
.cgrid dt,.prg dt,.cxdl dt{font-size:13.5px;font-weight:600;color:var(--teal)}
.cgrid dd,.prg dd,.cxdl dd{margin:0;font-size:15.5px;line-height:1.7;color:var(--text)}
.cgrid article::after{content:"";position:absolute;top:-1px;inset-inline-start:0;height:2px;width:0;background:var(--amber);transition:width .45s cubic-bezier(.2,.8,.2,1)}
.cgrid article:hover::after{width:72px}
.cross{margin-top:28px;font-size:15.5px;color:var(--muted)}.cross a{color:var(--text);font-weight:600;text-decoration-color:var(--amber);text-underline-offset:5px}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .cgrid dt,:root:not([data-theme="light"]) .prg dt,:root:not([data-theme="light"]) .cxdl dt{color:var(--teal-l)}}
:root[data-theme="dark"] .cgrid dt,:root[data-theme="dark"] .prg dt,:root[data-theme="dark"] .cxdl dt{color:var(--teal-l)}
/* programs */
.programs{background:var(--ivory)}
.prg{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:16px}
.prg article{background:var(--paper);border:1px solid var(--line);border-radius:6px;padding:28px 24px;position:relative;display:flex;flex-direction:column;gap:12px}
.prg .dur{align-self:flex-start;font-size:13px;font-weight:600;padding:3px 10px;border-radius:4px;background:rgba(224,164,59,.18);color:#7A4F08}
.prg h3{font-size:22px;line-height:1.3}
.prg .feat{background:var(--ink);border-color:var(--ink);color:#fff}
.prg .feat h3{font-family:var(--display);direction:ltr;text-align:right;font-size:24px}
.prg .feat dt{color:var(--teal-l)}.prg .feat dd{color:#D5E3E3}
.prg .feat .dur{background:var(--amber);color:#1B1408}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .prg .dur{color:var(--amber)}}
:root[data-theme="dark"] .prg .dur{color:var(--amber)}
@media (max-width:900px){.prg{grid-template-columns:1fr}.cgrid{grid-template-columns:1fr}.cgrid article:nth-child(2n){padding-inline-start:0;border-inline-start:0}.cgrid article:nth-child(2n+1){padding-inline-end:0}}
@media (max-width:520px){.cgrid dl div,.prg dl div,.cxdl div{grid-template-columns:1fr;gap:2px}}
/* cx case */
.cxg{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(32px,5vw,72px);align-items:center}
.cxdl{margin-top:20px}
.cxscore{margin:22px 0 4px;padding:18px 22px;border-inline-start:3px solid var(--gold);background:var(--paper)}
.cxscore b{display:block;font-family:var(--display);font-weight:500;font-size:clamp(22px,2.4vw,28px);color:var(--teal)}
.exl{margin:0;padding:0;list-style:none;display:grid;gap:6px}
.exl li{position:relative;padding-inline-start:18px}
.exl li::before{content:"";position:absolute;inset-inline-start:0;top:12px;width:8px;height:2px;background:var(--gold)}
.cxscore span{font-size:15.5px;color:var(--muted);line-height:1.7}
.cxfig{margin:0;padding:16px}.cxfig img{width:100%;aspect-ratio:4/3;object-fit:cover;object-position:50% 65%}
@media (max-width:820px){.cxg{grid-template-columns:1fr}}
/* paths */
.paths{background:var(--paper-2)}
.pgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:8px}
.path{display:flex;flex-direction:column;gap:10px;padding:32px 28px;border-radius:6px;background:var(--ink);color:#fff;text-decoration:none;position:relative;overflow:hidden;transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.path.alt{background:#0F4F52}
.path small{font-size:14px;color:var(--teal-l)}
.path b{font-family:var(--display);font-weight:500;font-size:clamp(26px,3vw,34px)}
.path span{color:#D5E3E3;font-size:16px;line-height:1.7}
.path i{font-style:normal;font-weight:600;margin-top:8px;align-self:flex-start;border-bottom:2px solid var(--amber);padding-bottom:3px}
.path::after{content:"";position:absolute;top:0;inset-inline-start:0;height:3px;width:0;background:var(--amber);transition:width .5s cubic-bezier(.2,.8,.2,1)}
.path:hover{transform:translateY(-4px)}.path:hover::after{width:100%}
.pnote{margin-top:20px;color:var(--muted);font-size:15px}
.sel{user-select:all}
@media (max-width:720px){.pgrid{grid-template-columns:1fr}}
/* cinema for management example */
.cfm-case{border:1px solid rgba(224,164,59,.4);border-radius:6px;padding:28px clamp(20px,3vw,36px);margin:0 0 clamp(48px,6vw,72px);background:rgba(243,236,223,.04);position:relative}
.cfm-case .ctag{display:inline-block;font-size:13px;color:#1B1408;background:var(--amber);padding:3px 10px;border-radius:4px;margin-bottom:14px}
.cfm-case h3{font-size:clamp(22px,2.6vw,30px);color:#F3ECDF;margin-bottom:16px}
.cfm-case ol{margin:0;padding-inline-start:22px;color:#E9E2D6;display:grid;gap:10px;font-size:16.5px;line-height:1.8}
.cfm-case .cuse{margin-top:16px;color:#B8AE9F;font-size:15px}
.as-btn{background:none;border:0;border-bottom:2px solid var(--amber);font:inherit;font-weight:600;color:#F3ECDF;cursor:pointer;padding:0 0 4px}
.howh{font-size:18px;font-family:var(--body);font-weight:600;margin-bottom:6px}
main,footer{overflow-x:clip}
html{overflow-x:clip}
@media (max-width:820px){.rv{transform:scale(1.03) translateY(18px)}}

/* v2.1 */
.hero .wrap{padding-top:clamp(36px,5vw,64px)}
.hero .htext{align-self:start;padding-top:clamp(0px,1.5vw,18px)}
.hero h1.hname{margin:0 0 clamp(30px,3.6vw,44px);padding-bottom:clamp(18px,2vw,24px);position:relative}
.hero h1.hname::after{content:"";position:absolute;bottom:0;inset-inline-start:0;width:56px;height:2px;background:var(--gold)}
.hero .wrap+.wrap{padding-top:0}
.hero .ruler{margin-top:clamp(20px,2.5vw,32px)}
.reel{background:var(--teal);color:#F7F2E8;border:0;padding:16px 0}
.reel::before,.reel::after{display:none}
.reel-track{align-items:center}
.reel span{padding:4px 22px;color:#F7F2E8}
.reel span::after{display:none}
.reel .rsep{display:inline-flex;flex:none;opacity:.95}

.vclip{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;background:#0E2733}
.chap .vmedia .vclip{aspect-ratio:4/3;object-position:50% 20%}
.hallv{display:grid;grid-template-columns:.8fr 1.2fr;gap:16px;margin:0 0 40px;align-items:stretch}
.hallv figure{margin:0;padding:14px}
.hallv img{width:100%;height:100%;object-fit:cover}
.hallv .vclip{height:100%}
@media (max-width:720px){.hallv{grid-template-columns:1fr}}

.philo{margin:26px 0 0;padding:18px 22px;border-inline-start:3px solid #E0A43B;font-size:clamp(1.05rem,2.2vw,1.35rem);line-height:1.7;max-width:46ch}
.philo span{opacity:.75}
.hallnote{margin:-8px 0 22px;opacity:.75;max-width:60ch}

.vfilm{display:flex;flex-direction:column;gap:8px}
.vplay{position:relative;display:block;width:100%;aspect-ratio:16/9;padding:0;border:0;background:#0E2733;cursor:pointer;overflow:hidden}
.vplay img{width:100%;height:100%;object-fit:cover;opacity:.72;transition:opacity .4s,transform .8s}
.vplay:hover img{opacity:.55;transform:scale(1.03)}
.vplay .pbtn{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);width:72px;height:72px;border-radius:50%;background:#E0A43B;color:#0E2733;display:grid;place-items:center;box-shadow:0 0 0 10px rgba(224,164,59,.25);transition:transform .3s}
.vplay:hover .pbtn{transform:translate(-50%,-50%) scale(1.08)}
.vplay .pbtn svg{margin-inline-start:4px}
.vplay .vlab{position:absolute;inset:auto 0 0 0;padding:14px 16px;color:#fff;font-weight:600;text-align:start;background:linear-gradient(transparent,rgba(14,39,51,.85))}
.vfilm iframe{display:block;width:100%;aspect-ratio:16/9;border:0;background:#000}
.valt{font-size:.85rem;opacity:.75;align-self:flex-start}

.ltr{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:34px}
.ltr article{display:flex;flex-direction:column;gap:16px}
.ltr .ev{display:block;padding:0;border:1px solid rgba(14,39,51,.14);background:#fff;cursor:zoom-in;aspect-ratio:3/4;overflow:hidden;box-shadow:0 10px 30px -18px rgba(14,39,51,.45);transition:transform .4s,box-shadow .4s}
.ltr .ev:hover{transform:translateY(-4px);box-shadow:0 18px 40px -20px rgba(14,39,51,.55)}
.ltr .ev img{width:100%;height:100%;object-fit:cover;object-position:top}
.ltr blockquote{margin:0;padding-inline-start:16px;border-inline-start:3px solid #E0A43B}
.ltr blockquote p{margin:0 0 10px;line-height:1.8}
.ltr .src b{display:block;font-size:.95rem}
.ltr .src span{font-size:.82rem;opacity:.7}
@media (max-width:860px){.ltr{grid-template-columns:1fr}.ltr .ev{aspect-ratio:4/3}}

.vshort .vplay{aspect-ratio:9/16}
.vshort iframe{aspect-ratio:9/16}
.vplay .tposter{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;gap:10px;padding:8% 9% 18%;text-align:start;color:#fff;background:radial-gradient(circle at 85% 20%,rgba(14,107,107,.85),transparent 55%),linear-gradient(135deg,#0E2733,#123947);transition:transform .8s}
.vplay:hover .tposter{transform:scale(1.03)}
.tposter small{letter-spacing:.08em;color:#E0A43B;font-weight:600}
.tposter b{font-family:Alexandria,sans-serif;font-size:clamp(1.3rem,3vw,2.2rem);line-height:1.35;max-width:16ch}
.tposter i{font-style:normal;opacity:.75}
.tposter~.pbtn{inset:auto 7% 9% auto;transform:none}
.vplay:hover .tposter~.pbtn{transform:scale(1.08)}
.wgrid{display:grid;grid-template-columns:2.2fr 1fr 1fr;gap:20px;margin-top:30px;align-items:start}
.wgrid figure,.shorts figure{margin:0}
.wgrid figcaption{margin-top:10px;font-size:.92rem;line-height:1.7}
.wgrid figcaption b{display:block;color:#0E6B6B}
.wlink{display:inline-block;margin-top:14px;font-weight:600;color:#0E6B6B;text-decoration:none}
.wlink:hover{text-decoration:underline}
.tfeat{display:grid;grid-template-columns:1.6fr 1fr;gap:30px;align-items:center;margin-top:30px}
.tfeat h3{margin:0 0 10px}
.shorts{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.shorts figcaption{margin-top:6px;font-size:.85rem;opacity:.7}
.shorts .vlab,.wgrid .vshort .vlab{font-size:.9rem}
.hw{display:grid;grid-template-columns:1.4fr .6fr;gap:40px;align-items:center}
.hw figure{margin:0;max-width:300px;justify-self:center;width:100%}
.hw .kick{color:#E0A43B;font-weight:600;letter-spacing:.05em}
.hw .btn{margin-top:22px}
@media (max-width:900px){.wgrid{grid-template-columns:1fr 1fr}.wgrid .wide{grid-column:1/-1}.tfeat{grid-template-columns:1fr}.shorts{grid-template-columns:1fr 1fr}.hw{grid-template-columns:1fr}}

nav.main a.nav-hl{position:relative}
nav.main a.nav-hl::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:#E0A43B;margin-inline-end:6px;vertical-align:middle;box-shadow:0 0 0 0 rgba(224,164,59,.6);animation:hlp 2.4s infinite}
@keyframes hlp{0%{box-shadow:0 0 0 0 rgba(224,164,59,.55)}70%{box-shadow:0 0 0 7px rgba(224,164,59,0)}100%{box-shadow:0 0 0 0 rgba(224,164,59,0)}}
@media (prefers-reduced-motion:reduce){nav.main a.nav-hl::before{animation:none}}
.eps{display:grid;grid-template-columns:1fr 1fr;gap:34px;margin-top:30px}
.eps article h3{margin:8px 0 6px}
.eps article p{margin:0;line-height:1.8}
.epmeta{display:flex;gap:12px;align-items:center;margin-top:14px}
.epmeta .tag{font-size:.8rem;font-weight:600;color:#0E6B6B;border:1px solid currentColor;padding:2px 10px;border-radius:99px}
.tp-shorts .shorts{margin-top:30px}
.tpf{display:flex;justify-content:space-between;align-items:center;gap:30px;flex-wrap:wrap}
.tpf .ctas{display:flex;gap:12px;flex-wrap:wrap}
.tpcard{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:30px 34px;background:#0E2733;color:#fff;text-decoration:none;border-inline-start:4px solid #E0A43B}
.tpcard small{color:#E0A43B;font-weight:600;display:block}
.tpcard b{display:block;font-family:Alexandria,sans-serif;font-size:1.6rem;margin:4px 0}
.tpcard i{font-style:normal;opacity:.8}
.tpcard .arr{font-size:1.6rem;transition:transform .3s}.tpcard:hover .arr{transform:translateX(-8px)}
@media (max-width:900px){.eps{grid-template-columns:1fr}}

.vplay[data-yt] .vlab{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;padding:0}
.vplay[data-yt] img{opacity:.92}
.vplay[data-yt]:hover img{opacity:.8}
.vplay[data-yt] .pbtn{width:60px;height:60px;inset:auto auto 7% 50%;transform:translateX(-50%)}
.vplay[data-yt]:hover .pbtn{transform:translateX(-50%) scale(1.08)}
.vplay .tposter~.pbtn{inset:auto auto 9% 7%!important;transform:none!important;width:54px;height:54px}
.eps .tposter{justify-content:flex-start;padding:9% 8% 8%}
.sscroll{row-gap:30px}
.sscroll figcaption{line-height:1.6}

.eps{grid-template-columns:repeat(3,1fr);gap:26px}
.eps .tposter b{font-size:clamp(1.05rem,1.8vw,1.5rem)}
.eps article:nth-child(3) .tposter{background:radial-gradient(circle at 85% 20%,rgba(224,164,59,.45),transparent 55%),linear-gradient(135deg,#0E2733,#1b2f3a)}
@media (max-width:1000px){.eps{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.eps{grid-template-columns:1fr}}

.vfilm:not(.vshort) .vplay[data-yt] .pbtn{inset:7% auto auto 5%;transform:none;width:52px;height:52px}
.vfilm:not(.vshort) .vplay[data-yt]:hover .pbtn{transform:scale(1.08)}

.fsoc{display:flex;gap:10px;flex-wrap:wrap}
.fsoc a{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border:1px solid rgba(224,164,59,.55);border-radius:99px;color:#fff;text-decoration:none;font-size:.88rem;transition:background .25s,color .25s}
.fsoc a span{color:#E0A43B;transition:color .25s}
.fsoc a:hover{background:#E0A43B;color:#0E2733}
.fsoc a:hover span{color:#0E2733}

.chap .media.tall{width:min(100%,420px);justify-self:center}
.chap .media.tall img,.chap .media.tall .vclip{aspect-ratio:3/4;width:100%;height:auto;object-fit:cover;object-position:50% 30%}

.tone-navy,.tone-teal,.tone-navy2{color:#EAF1F2;border:0!important}
.tone-navy{background:#0E2733!important}.tone-navy2{background:#12313F!important}.tone-teal{background:#0B4F52!important}
.tone-ivory{background:#F7F2E8!important}.tone-white{background:#FFFFFF!important}
:is(.tone-navy,.tone-teal,.tone-navy2) h2,:is(.tone-navy,.tone-teal,.tone-navy2) h3{color:#fff}
:is(.tone-navy,.tone-teal,.tone-navy2) p,:is(.tone-navy,.tone-teal,.tone-navy2) .lead{color:rgba(234,241,242,.74)}
:is(.tone-navy,.tone-teal,.tone-navy2) .more-link{color:#E0A43B}
:is(.tone-navy,.tone-teal,.tone-navy2) .tags span{background:transparent;border-color:rgba(255,255,255,.25);color:#EAF1F2}
:is(.tone-navy,.tone-teal,.tone-navy2) .btn:not(.btn-amber){color:#fff;border-color:rgba(255,255,255,.4)}
:is(.tone-navy,.tone-teal,.tone-navy2) .h2::after{background:#E0A43B}

.train .mosaic{grid-template-columns:1fr 1fr;grid-template-rows:auto 240px}
.train .mosaic .d{grid-row:1;grid-column:1;aspect-ratio:1.53}
.train .mosaic .a{grid-row:1;grid-column:2;aspect-ratio:1.53}
.train .mosaic .d,.train .mosaic .a{height:auto}
@media (max-width:720px){.train .mosaic{grid-template-rows:auto auto 160px}
.train .mosaic .d{grid-row:1;grid-column:1/-1}.train .mosaic .a{grid-row:2;grid-column:1/-1}}

.chap .media.whole img{aspect-ratio:auto;height:auto;object-fit:contain}

.chap .media.tall.full916{width:min(100%,380px)}
.chap .media.tall.full916 .vclip{aspect-ratio:9/16}

.arch-teaser img{aspect-ratio:3/2}

.phead.about-top .pmedia{max-width:340px;justify-self:center}
.phead.about-top .pmedia img{aspect-ratio:395/540;object-fit:cover}

.hallv{grid-template-columns:.6fr 1fr;align-items:start}
.hallv img{height:auto!important;aspect-ratio:4/3;object-fit:cover}
.hallv .vclip{height:auto!important;aspect-ratio:4/5}
.gal{display:grid;gap:14px;margin:6px auto 0;width:min(1150px,calc(100% - 40px))}
.gal figure{margin:0;position:relative;overflow:hidden}
.gal img{display:block;width:100%;height:auto;object-fit:cover;transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.gal figure:hover img{transform:scale(1.03)}
.gal-r1{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.gal-r1 img{aspect-ratio:1.53}
.gal-r2{display:grid;grid-template-columns:1fr 1fr 1fr 1.66fr;gap:14px;align-items:start}
.gal-r2 img{aspect-ratio:4/5}
.gal-r2 .wide img{aspect-ratio:4/3}
.gal figcaption{position:absolute;inset:auto 0 0 0;padding:26px 14px 10px;font-size:.82rem;color:#fff;background:linear-gradient(transparent,rgba(14,39,51,.78));opacity:.95}
@media (max-width:900px){.hallv{grid-template-columns:1fr}.gal-r1{grid-template-columns:1fr}.gal-r2{grid-template-columns:1fr 1fr}.gal-r2 .wide,.gal-r2 figure:nth-child(3){grid-column:1/-1}.gal-r2 figure:nth-child(3) img{aspect-ratio:4/3}}

.phead.tp-top .wrap{grid-template-columns:.85fr 1.15fr}
.phead.tp-top .pmedia{max-width:none;width:100%}
.phead.tp-top h1{font-size:clamp(2rem,3.6vw,3.3rem);white-space:nowrap}
.phead.tp-top .ptext p{max-width:34ch}
@media (max-width:900px){.phead.tp-top .wrap{grid-template-columns:1fr}}

.hname span{color:#A9E3DD}
nav.main a.nav-hl::before{display:none}
.aicards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;margin:30px 0 26px}
.aicards article{display:flex;flex-direction:column;gap:12px;padding:26px 24px;border:1px solid rgba(224,164,59,.35);border-radius:4px;background:rgba(255,255,255,.03)}
.aipage .aicards article{background:#fff;border-color:var(--line)}
.aicards h3{margin:0;font-size:1.3rem}
.aicards p{margin:0;line-height:1.8;flex:1}
.aicards .btn{align-self:flex-start}
.aitag{font-size:.78rem;font-weight:600;color:#E0A43B}
.aipage .aitag{color:#0E6B6B}
.ainote{font-size:.9rem;opacity:.7;max-width:60ch}
.tp-cfm{padding-block:10px 40px}
@media (max-width:900px){
  .sub-m{display:none}
  .sub-t[aria-expanded="true"]+.sub-m{display:flex}
  .sub-t{cursor:pointer;color:#fff;font-size:16px;padding:12px 4px}
  .sub-t::after{display:block;margin-inline-start:auto}
  nav.main a{white-space:normal}
}

@media (hover:hover) and (min-width:901px){
  .sub-m::before{content:"";position:absolute;inset-inline:0;top:-14px;height:14px}
  .sub-m{display:flex;visibility:hidden;opacity:0;transform:translateY(-4px);transition:opacity .18s,transform .18s,visibility 0s linear .25s}
  .sub:hover .sub-m,.sub:focus-within .sub-m,.sub-t[aria-expanded="true"]+.sub-m{visibility:visible;opacity:1;transform:none;transition:opacity .18s,transform .18s,visibility 0s}
}

.aihow{margin:10px 0 24px}
.aihow>h3{margin:0 0 12px}

.aicards{grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr))}

.aicards article{padding:0;overflow:hidden;gap:0}
.aiimg{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.aibody{display:flex;flex-direction:column;gap:12px;padding:22px 24px 26px;flex:1}
.ainb{font-size:.88rem;opacity:.85;border-inline-start:2px solid #E0A43B;padding-inline-start:10px}
.ainb a{color:#E0A43B;font-weight:600;white-space:nowrap}
.aipage .ainb a{color:#0E6B6B}
.tool-card .aiimg{margin:-1px -1px 16px;width:calc(100% + 2px)}
.tpcard.tpimg{display:grid;grid-template-columns:260px 1fr auto;align-items:center;gap:26px;padding:18px 24px 18px 34px}
.tpcard.tpimg img{width:100%;height:auto;border-radius:3px}
@media (max-width:720px){.tpcard.tpimg{grid-template-columns:1fr;padding:16px}.tpcard.tpimg .arr{display:none}}

.aitools .aicards,.aipage .aicards{grid-template-columns:repeat(auto-fill,minmax(min(100%,420px),1fr))}

.cover.covimg{padding:0;height:auto;display:block;object-fit:cover;background:#0E2733}
.pmedia.pcover img.cover.covimg{aspect-ratio:2/3!important;height:auto!important;width:min(240px,56vw)!important;object-fit:cover}
.cover.covimg{transform:none!important;box-shadow:none!important;border-radius:0;background:transparent;filter:drop-shadow(-14px 22px 26px rgba(0,0,0,.45))}

/* Page-head background motion (fx.js) */
.fxhero{isolation:isolate;--fxbg:14,39,51}
.fxhero.dark{--fxbg:26,23,20}
.fxcanvas{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}
.fxhero::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(90deg,rgba(var(--fxbg),0) 0%,rgba(var(--fxbg),.1) 40%,rgba(var(--fxbg),.78) 78%)}
.fxhero>.wrap{position:relative;z-index:1}
@media (max-width:820px){.fxhero::after{background:linear-gradient(180deg,rgba(var(--fxbg),.55),rgba(var(--fxbg),.25))}}

/* Compact inner-page openings */
.phead{padding-block:clamp(30px,4.2vw,58px) clamp(26px,3.6vw,50px)}
.phead h1{font-size:clamp(30px,4.1vw,52px);line-height:1.2;padding:8px 18px;margin-inline-start:-18px;max-width:100%}
.phead h1 .hsub{display:block;font-size:.42em;font-weight:400;color:#B9CDCF;margin-top:8px;line-height:1.4}
.phead p{margin-top:12px;font-size:clamp(16px,1.5vw,19px)}
.phead .crumb{margin-bottom:12px}
.phead.has-media .wrap{gap:clamp(24px,4vw,56px)}
.phead.has-media .pmedia{max-width:400px;width:100%;justify-self:center}
@media (max-width:820px){
  .phead.has-media .pmedia{max-width:230px}
  .phead h1{margin-inline-start:0;padding:6px 10px}
}
.how li::before{content:counter(h) / ""}
.steps li::before{content:counter(s) / ""}

/* Light-toned sections stay light in dark mode: give them the light palette locally */
.tone-ivory,.tone-white{--text:#13222A;--muted:#4B5F66;--line:rgba(14,39,51,.14);--paper:#EEF1F0;--paper-2:#E2E8E7;color:var(--text)}
.tone-white.home-logos img,.tone-ivory.home-logos img{filter:grayscale(1)!important;mix-blend-mode:multiply!important}

/* Card icons: brand viewfinder corners + a line glyph with one amber accent */
.ico{display:block;width:52px;height:52px;margin-bottom:14px;color:var(--teal)}
.ico svg{display:block;overflow:visible}
.ico .c{fill:none;stroke:var(--amber);stroke-width:1.6;transition:transform .35s cubic-bezier(.2,.8,.2,1);transform-origin:24px 24px}
.ico .g{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;transition:transform .35s cubic-bezier(.2,.8,.2,1);transform-origin:24px 24px}
.ico .a{stroke:var(--amber)}
.ico .af{fill:var(--amber);stroke:none}
.ico .hole{fill:var(--paper);stroke:currentColor}
article:hover .ico .c{transform:scale(1.1)}
article:hover .ico .g{transform:scale(.94)}
.prg article.feat .ico,.tone-navy .ico,.tone-teal .ico{color:var(--teal-l)}
.prg article.feat .ico .hole{fill:var(--ink)}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .ico{color:var(--teal-l)}}
:root[data-theme="dark"] .ico{color:var(--teal-l)}
.tone-white .ico,.tone-ivory .ico{color:var(--teal)}
@media (prefers-reduced-motion:reduce){.ico .c,.ico .g{transition:none}}

/* pointer light and tilt on cards */
.glow{position:relative}
.glow>.gl{position:absolute;inset:0;border-radius:inherit;background:radial-gradient(280px circle at var(--mx,50%) var(--my,50%),rgba(24,138,128,.24),transparent 62%);opacity:0;transition:opacity .35s;pointer-events:none;z-index:1}
.glow:hover>.gl{opacity:1}
.glow.tilting{transition-delay:0s!important;transition-duration:.18s!important;will-change:transform}

.bsoon{display:inline-flex;align-items:center;gap:8px;margin-top:12px;padding:6px 14px;border-radius:999px;border:1px solid var(--amber);color:var(--amber);font-size:14px;font-weight:600}.bsoon i{width:8px;height:8px;border-radius:50%;background:var(--amber);animation:bsp 1.8s ease-in-out infinite}@keyframes bsp{50%{opacity:.25}}@media (prefers-reduced-motion:reduce){.bsoon i{animation:none}}
.qc-soc .qc-v{display:flex;flex-wrap:wrap;gap:6px 14px}.qc-soc a{color:inherit;text-decoration:underline;text-decoration-color:var(--amber);text-underline-offset:4px;padding:4px 0}.qc-soc a:hover{color:var(--amber)}

.pfnote{display:inline-block;margin:10px 0 0;padding:4px 12px;border-radius:999px;border:1px solid currentColor;font-size:13.5px;font-weight:600;opacity:.85}
.home-logos img,.tone-white.home-logos img,.tone-ivory.home-logos img{filter:none!important;opacity:1;mix-blend-mode:normal!important}
.logos img{filter:none;opacity:1}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .home-logos img,:root:not([data-theme="light"]) .logos img{filter:none!important;mix-blend-mode:normal!important;background:#fff;padding:6px 10px;border-radius:8px;box-sizing:content-box}}
:root[data-theme="dark"] .home-logos img,:root[data-theme="dark"] .logos img{filter:none!important;mix-blend-mode:normal!important;background:#fff;padding:6px 10px;border-radius:8px;box-sizing:content-box}

.fnav{gap:0 18px}
.fnav a{display:inline-flex;align-items:center;min-height:40px}
.fsoc a{min-height:40px;box-sizing:border-box}
.logos .more{grid-column:span 4}
@media (max-width:1000px){.logos .more{grid-column:span 2}}
@media (max-width:700px){.logos .more{grid-column:span 1}}
@media (max-width:460px){.logos .more{grid-column:span 2}}
@media (min-width:1001px){.home-logos .row{gap:20px 26px}.home-logos img{height:42px}}
@media (min-width:1001px){.home-logos .row{gap:20px 22px;flex-wrap:nowrap}}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .glow>.gl{background:radial-gradient(280px circle at var(--mx,50%) var(--my,50%),rgba(124,195,188,.2),transparent 62%)}}
:root[data-theme="dark"] .glow>.gl{background:radial-gradient(280px circle at var(--mx,50%) var(--my,50%),rgba(124,195,188,.2),transparent 62%)}
.mailnote{margin-top:20px;color:var(--muted);font-size:15px}
.mailnote .sel{display:inline;unicode-bidi:isolate;font-weight:600;color:var(--ink)}
.aicards .pfnote{flex:none;align-self:flex-start;width:auto;margin:2px 0 10px;line-height:1.6;font-size:13px}
.cover.covimg,.pmedia.pcover img.cover.covimg{aspect-ratio:auto!important;object-fit:contain!important;filter:drop-shadow(-10px 18px 22px rgba(0,0,0,.35))}
.reel .rsep{width:7px;height:7px;background:#E0A43B;transform:rotate(45deg);align-self:center;margin-inline:4px}
