/* September portfolio refresh. Keeps the site's fonts, routes, themes and brand. */
.film-hero { position:relative; isolation:isolate; min-height:min(790px,calc(100svh - 88px)); background:#181b19; color:#f4f1e9; display:flex; flex-direction:column; justify-content:center; }
.film-media { position:absolute; inset:0; z-index:-2; overflow:hidden; }
.film-poster,.hero-film { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; }
.hero-film { opacity:0; transition:opacity .45s; }
.hero-film.is-ready { opacity:1; }
.film-hero::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,rgba(12,17,13,.91),rgba(12,17,13,.64) 40%,rgba(12,17,13,.08) 78%),linear-gradient(0deg,rgba(12,17,13,.85),transparent 35%); }
.film-content { width:100%; padding-block:92px 130px; }
.film-copy { max-width:660px; }
.film-copy .kicker { color:#e9ad7c; font-size:11px; }
.film-copy h1 { font-family:var(--display); font-size:clamp(52px,6.1vw,94px); line-height:1.02; font-weight:700; letter-spacing:-.045em; margin:25px 0; text-wrap:balance; }
.film-copy h1 em { color:#e9ad7c; font-style:normal; }
.film-intro { max-width:430px; color:#e1e3db; font-size:19px; line-height:1.6; }
.film-footer { position:absolute; bottom:28px; inset-inline:0; width:100%; display:flex; align-items:end; justify-content:space-between; gap:24px; }
.film-eyebrow { font-size:9px; letter-spacing:.18em; color:#d1d4cb; }
.film-footer p { font-size:13px; margin:6px 0 0; }
.film-toggle { background:rgba(18,23,19,.65); color:#fff; padding:12px 18px; min-height:44px; border:1px solid #a6aca0; border-radius:2px; font-size:12px; transition:background .2s; }
.film-toggle:hover { background:#30372e; }
.film-toggle[hidden] { display:none; }
html[lang="ar"] .film-copy { margin-inline-end:auto; }
html[lang="ar"] .film-copy h1 { font-family:var(--arabic); line-height:1.3; letter-spacing:0; }
html[lang="ar"] .film-hero::after { transform:scaleX(-1); }
@media(max-width:760px) {
  .film-hero { min-height:0; display:grid; }
  .film-content { grid-row:1; padding-block:42px 36px; }
  .film-copy h1 { font-size:clamp(42px,9vw,62px); letter-spacing:-.035em; }
  .film-intro { font-size:17px; max-width:480px; }
  .film-copy .portfolio-hero-actions { gap:24px; margin-top:25px; }
  .film-media { grid-row:2; position:relative; z-index:0; aspect-ratio:1600/724; width:100%; }
  .film-hero::after { display:none; }
  .film-footer { grid-row:3; position:static; padding-block:18px 23px; align-items:center; gap:12px; }
  .film-footer p { font-size:11px; max-width:225px; }
  .film-toggle { flex-shrink:0; padding-inline:12px; }
}
@media(prefers-reduced-motion:reduce) { .hero-film { transition:none; } }
:root { --bg:#f8f6f1; --surface:#eeebe4; --ink:#20211e; --muted:#61625b; --line:#d7d5cd; --accent:#db7935; --accent-dark:#a34c17; --radius:3px; --section:clamp(76px,8.8vw,132px); }
[data-theme="dark"] { --bg:#181b19; --surface:#222622; --ink:#f4f1e9; --muted:#b4b9b0; --line:#3d443b; --accent-dark:#eda365; }
.site-header { border-color:var(--line); background:var(--bg); backdrop-filter:none; }
.header-inner { grid-template-columns:145px 1fr auto; gap:18px; }
.brand-logo { width:132px; }
.desktop-nav { gap:clamp(12px,1.5vw,24px); }
.header-cta { font-size:12px; padding:14px 18px; }
.button { border-radius:2px; min-height:48px; transition:background .2s,transform .2s; }
.button:active { transform:translateY(1px); }
.button-accent { color:#171b17; }
.display-lg,.display-xl,.display-md,.page-hero h1 { letter-spacing:-.035em; line-height:1.04; font-weight:700; }
.display-lg { font-size:clamp(38px,4.4vw,68px); }
.page-hero h1 { font-size:clamp(46px,6.6vw,102px); }
.page-hero { padding-block:100px 80px; }
.kicker { font-weight:700; line-height:1.5; letter-spacing:.14em; }
.lede { font-size:clamp(18px,1.6vw,23px); line-height:1.55; }
.ink-section { background:#222721; }
.portfolio-hero { padding:44px 0 56px; }
.portfolio-hero-grid { display:grid; grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr); gap:clamp(32px,5vw,76px); align-items:center; }
.portfolio-hero-copy { padding-block:30px; }
.portfolio-hero h1 { font-family:var(--display); font-size:clamp(47px,5.3vw,82px); font-weight:700; line-height:1.03; letter-spacing:-.042em; margin:24px 0; }
.portfolio-hero h1 em { display:block; font-style:normal; color:var(--accent-dark); }
.portfolio-hero-intro { max-width:420px; color:var(--muted); font-size:clamp(18px,1.6vw,22px); line-height:1.55; }
.portfolio-hero-actions { display:flex; gap:28px; flex-wrap:wrap; align-items:center; margin-top:34px; }
.editorial-link { font-size:14px; font-weight:700; display:inline-flex; gap:16px; align-items:center; width:fit-content; padding-block:8px; border-bottom:1px solid currentColor; transition:color .2s; }
.editorial-link:hover { color:var(--accent-dark); }
.hero-footnote { margin-top:56px; display:flex; align-items:center; gap:10px; font-size:12px; color:var(--muted); }
.status-dot { width:6px; height:6px; flex:0 0 6px; border-radius:50%; background:var(--accent-dark); }
.portfolio-hero-photo { margin:0; position:relative; background:#dedbd2; height:clamp(460px,44vw,650px); overflow:hidden; }
.portfolio-hero-photo>img { height:100%; object-fit:cover; object-position:55% center; }
.portfolio-hero-photo::after { position:absolute; content:""; inset:65% 0 0; background:linear-gradient(transparent,rgba(15,20,16,.83)); pointer-events:none; }
.portfolio-hero-photo figcaption { position:absolute; inset:auto 26px 26px; z-index:1; display:flex; justify-content:space-between; align-items:end; gap:15px; font-size:17px; color:#fff; }
.portfolio-hero-photo small { display:block; color:#dbdfd5; font-size:11px; margin-top:6px; }
.portfolio-hero-photo figcaption a { width:44px; height:44px; border:1px solid #ffffff80; border-radius:50%; display:grid; place-items:center; font-size:24px; }
.photo-index { position:absolute; top:24px; inset-inline-start:24px; background:#f8f6f1; color:#24291f; padding:9px 12px; letter-spacing:.15em; font-size:10px; }
.portfolio-brands-strip { border-block:1px solid var(--line); padding:24px 0 36px; }
.strip-heading { display:flex; justify-content:space-between; align-items:center; gap:20px; }
.strip-heading p { font-size:13px; color:var(--muted); margin:0; }
.strip-heading .editorial-link { font-size:12px; }
.brand-strip-marks { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); align-items:center; gap:26px; padding-top:27px; }
.brand-strip-marks>a { min-width:0; min-height:62px; display:grid; place-items:center; padding:8px 12px; }
.brand-strip-marks img { height:45px; width:100%; object-fit:contain; mix-blend-mode:multiply; filter:grayscale(1); opacity:.8; transition:filter .2s,opacity .2s; }
.brand-strip-marks a:hover img { filter:none; opacity:1; }
[data-theme="dark"] .portfolio-brands-strip { background:var(--bg); color:var(--ink); }
[data-theme="dark"] .brand-strip-marks img { mix-blend-mode:screen; filter:grayscale(1) invert(1); opacity:.85; }
[data-theme="dark"] .brand-strip-marks a:hover img { opacity:1; }
.utility-button { background:transparent; border-color:var(--line); }
.brand-wordmark { font-family:var(--display); font-weight:700; font-size:clamp(20px,2vw,30px); letter-spacing:-.035em; text-align:center; }
.editorial-heading { display:grid; grid-template-columns:1.25fr .75fr; align-items:end; gap:8%; margin-bottom:56px; }
.editorial-heading h2,.delivery-intro h2,.coffee-copy h2,.portfolio-contact h2,.portfolio-service-note h2 { margin:0; font-family:var(--display); font-weight:700; font-size:clamp(38px,4.1vw,64px); line-height:1.06; letter-spacing:-.035em; text-wrap:balance; }
.editorial-heading>p { margin:0; font-size:18px; line-height:1.7; color:var(--muted); max-width:460px; }
.capability-ribbon { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); border-top:1px solid var(--line); }
.capability-ribbon>a { display:flex; flex-direction:column; align-items:flex-start; justify-content:space-between; gap:22px; padding:24px 24px 0 0; font-size:16px; font-weight:700; }
.capability-ribbon>a>span:first-child { font-size:11px; color:var(--muted); font-weight:400; }
.capability-ribbon>a>span:last-child { color:var(--accent-dark); font-size:20px; }
.portfolio-work { background:var(--surface); }
.portfolio-work-grid { display:grid; grid-template-columns:1.16fr .84fr; gap:5%; align-items:start; }
.portfolio-project:nth-child(2) { margin-top:120px; }
.portfolio-project-image { display:block; position:relative; overflow:hidden; aspect-ratio:1.35; background:var(--line); }
.portfolio-project-image img { height:100%; object-fit:cover; transition:transform .6s ease; }
.portfolio-project:nth-child(2) .portfolio-project-image { aspect-ratio:1.08; }
.portfolio-project-image:hover img { transform:scale(1.035); }
.image-corner { position:absolute; bottom:18px; inset-inline-end:18px; display:grid; place-items:center; background:var(--bg); width:40px; height:40px; font-size:23px; }
.portfolio-project-meta { display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px; margin:22px 0 14px; font-size:10px; text-transform:uppercase; letter-spacing:.1em; color:var(--muted); }
.portfolio-project h3 { font-family:var(--display); font-weight:700; font-size:clamp(26px,2.7vw,40px); letter-spacing:-.03em; line-height:1.12; margin:0; }
.portfolio-project>p { max-width:500px; font-size:16px; color:var(--muted); line-height:1.7; margin:18px 0 12px; }
.portfolio-project .editorial-link { font-size:12px; }
.portfolio-section-end { display:flex; justify-content:space-between; align-items:center; gap:20px; border-top:1px solid var(--line); margin-top:60px; padding-top:25px; }
.portfolio-section-end p { font-size:14px; color:var(--muted); }
.coffee-layout { display:grid; grid-template-columns:1.2fr .8fr; gap:8%; align-items:center; }
.coffee-layout figure { margin:0; }
.coffee-layout figure>img { aspect-ratio:1.2; object-fit:cover; object-position:55% center; }
.coffee-layout figcaption { color:var(--muted); font-size:11px; margin-top:14px; }
.coffee-copy>p:not(.kicker) { color:var(--muted); font-size:18px; line-height:1.65; margin:26px 0; }
.coffee-brand { font-family:var(--display); font-size:27px; font-weight:700; border-block:1px solid var(--line); padding-block:20px; margin:30px 0; }
.coffee-brand span { display:block; font-family:var(--body); font-size:12px; font-weight:400; letter-spacing:.1em; color:var(--muted); margin-top:6px; }
.source-link { display:block; font-size:12px; text-decoration:underline; text-underline-offset:4px; color:var(--muted); margin-top:18px; }
.portfolio-delivery { border-block:1px solid var(--line); }
.delivery-columns { display:grid; grid-template-columns:.85fr 1.15fr; gap:12%; }
.delivery-intro { position:sticky; top:140px; align-self:start; }
.delivery-intro>p:not(.kicker) { max-width:370px; color:var(--muted); line-height:1.7; font-size:17px; margin:28px 0; }
.delivery-stages { padding:0; margin:0; list-style:none; }
.delivery-stages li { display:grid; grid-template-columns:45px 1fr; gap:24px; border-top:1px solid var(--line); padding:25px 0 31px; }
.delivery-number { font-size:13px; color:var(--accent-dark); padding-top:5px; }
.delivery-stages h3 { margin:0; font-family:var(--display); font-size:27px; font-weight:700; letter-spacing:-.025em; line-height:1.2; }
.delivery-stages p { color:var(--muted); font-size:16px; line-height:1.65; margin:12px 0 0; max-width:470px; }
.portfolio-sector-list>a { display:grid; grid-template-columns:70px 1fr 40px; gap:20px; align-items:center; padding:26px 0; border-top:1px solid var(--line); }
.portfolio-sector-list>a:last-child { border-bottom:1px solid var(--line); }
.portfolio-sector-list>a>span { color:var(--accent-dark); font-size:14px; }
.portfolio-sector-list>a>span:last-child { font-size:28px; }
.portfolio-sector-list h3 { font-family:var(--display); font-size:clamp(24px,3vw,44px); letter-spacing:-.03em; font-weight:700; margin:0; transition:transform .2s; }
.portfolio-sector-list>a:hover h3 { transform:translateX(6px); }
.portfolio-service-note { padding-block:80px; background:var(--surface); }
.portfolio-service-note>.container { display:grid; grid-template-columns:1.2fr .8fr; column-gap:10%; }
.portfolio-service-note .kicker { grid-column:1/-1; }
.portfolio-service-note h2 { font-size:clamp(32px,3.4vw,52px); }
.portfolio-service-note p:not(.kicker) { margin:0 0 20px; color:var(--muted); line-height:1.7; }
.portfolio-contact { padding-block:100px; }
.portfolio-contact-row { display:grid; grid-template-columns:1.2fr .8fr; gap:10%; }
.portfolio-contact-row p { color:var(--muted); font-size:17px; line-height:1.7; margin:0 0 26px; }
.contact-phone { display:block; margin-top:22px; font-size:14px; width:fit-content; }
.portfolio-index { display:flex; gap:25px; flex-wrap:wrap; margin-top:40px; }
.portfolio-index a { padding:10px 0; border-bottom:1px solid var(--line); font-size:14px; }
.project-story,.brand-portfolio-item { scroll-margin-top:110px; }
.project-story:nth-of-type(odd) { background:var(--surface); }
.story-title { display:grid; grid-template-columns:.35fr 1fr; gap:5%; align-items:end; margin-bottom:34px; }
.story-title>span { font-size:12px; text-transform:uppercase; letter-spacing:.08em; color:var(--accent-dark); }
.story-title h2 { font-family:var(--display); font-size:clamp(34px,4.4vw,64px); font-weight:700; letter-spacing:-.035em; line-height:1.06; margin:0; }
.story-image { margin:0; }
.story-image img { width:100%; max-height:680px; aspect-ratio:1.7; object-fit:cover; }
.story-image figcaption { margin-top:15px; font-size:12px; color:var(--muted); }
.story-details { display:grid; grid-template-columns:1fr .65fr; gap:12%; margin:50px 0 25px; }
.story-lede { font-size:21px; color:var(--muted); line-height:1.65; margin:0; }
.story-details ul { list-style:none; padding:0; margin:0; }
.story-details li { border-bottom:1px solid var(--line); padding:10px 0; font-size:16px; }
.story-sources { margin-top:24px; }
.brand-portfolio-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:64px 36px; }
.brand-logo-area { background:#fff; height:170px; display:grid; place-items:center; padding:35px; margin-bottom:25px; color:#20241e; }
.brand-logo-area img { width:100%; height:85px; object-fit:contain; }
.brand-logo-area .brand-wordmark { font-size:38px; }
.brand-portfolio-item h2 { font-family:var(--display); font-size:24px; margin:0; font-weight:700; }
.brand-portfolio-item p { font-size:15px; margin:8px 0 18px; color:var(--muted); }
.brand-portfolio-item .editorial-link { font-size:12px; }
.portfolio-source-note { max-width:740px; border-top:1px solid var(--line); padding-top:24px; margin:60px 0 0; color:var(--muted); font-size:13px; line-height:1.7; }
html[lang="ar"] .portfolio-hero h1,html[lang="ar"] .editorial-heading h2,html[lang="ar"] .delivery-intro h2,html[lang="ar"] .coffee-copy h2,html[lang="ar"] .portfolio-contact h2,html[lang="ar"] .portfolio-service-note h2,html[lang="ar"] .story-title h2 { font-family:var(--arabic); line-height:1.35; letter-spacing:0; }
html[lang="ar"] .portfolio-project h3,html[lang="ar"] .delivery-stages h3,html[lang="ar"] .portfolio-sector-list h3 { font-family:var(--arabic); line-height:1.4; letter-spacing:0; }
@media(max-width:1100px) { .header-inner { grid-template-columns:1fr auto; } .portfolio-hero h1 { font-size:clamp(44px,5.8vw,70px); } .portfolio-hero-photo { height:500px; } }
@media(max-width:760px) {
  .portfolio-hero { padding:20px 0 35px; } .portfolio-hero-grid { grid-template-columns:1fr; gap:25px; }
  .portfolio-hero-copy { padding:18px 0 0; } .portfolio-hero h1 { font-size:clamp(44px,9vw,68px); letter-spacing:-.03em; margin:20px 0; }
  .portfolio-hero-intro { font-size:18px; max-width:520px; } .portfolio-hero-actions { margin-top:26px; gap:22px; }
  .hero-footnote { margin-top:28px; } .portfolio-hero-photo { height:390px; } .portfolio-hero-photo figcaption { inset:auto 20px 20px; }
  .brand-strip-marks { grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; } .brand-strip-marks img { height:35px; }
  .strip-heading { align-items:start; } .strip-heading p { max-width:160px; }
  .editorial-heading,.coffee-layout,.delivery-columns,.portfolio-contact-row,.portfolio-service-note>.container,.story-details { grid-template-columns:1fr; gap:30px; }
  .editorial-heading { margin-bottom:38px; } .editorial-heading>p { font-size:17px; }
  .capability-ribbon { grid-template-columns:1fr; } .capability-ribbon>a { display:grid; grid-template-columns:25px 1fr 20px; align-items:center; border-bottom:1px solid var(--line); padding:20px 0; }
  .portfolio-work-grid { grid-template-columns:1fr; gap:48px; } .portfolio-project:nth-child(2) { margin-top:0; } .portfolio-project:nth-child(2) .portfolio-project-image { aspect-ratio:1.35; }
  .portfolio-section-end { align-items:start; flex-direction:column; gap:4px; margin-top:40px; }
  .coffee-layout figure>img { aspect-ratio:1.4; } .coffee-copy>p:not(.kicker) { font-size:17px; }
  .delivery-intro { position:static; } .delivery-stages { margin-top:10px; } .delivery-stages h3 { font-size:25px; }
  .portfolio-sector-list>a { grid-template-columns:28px 1fr 22px; gap:12px; } .portfolio-sector-list h3 { font-size:24px; }
  .portfolio-service-note,.portfolio-contact { padding-block:68px; } .portfolio-service-note>.container { gap:22px; }
  .story-title { grid-template-columns:1fr; gap:18px; } .story-image img { aspect-ratio:1.25; } .story-details { margin-top:35px; } .story-lede { font-size:18px; }
  .brand-portfolio-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:40px 20px; } .brand-logo-area { height:115px; padding:20px; } .brand-logo-area img { height:65px; } .brand-logo-area .brand-wordmark { font-size:26px; }
  .brand-portfolio-item h2 { font-size:21px; } .brand-portfolio-item .editorial-link { gap:8px; }
  .portfolio-page-hero { padding-block:68px 50px; } .portfolio-page-hero h1 { font-size:clamp(39px,8vw,62px); }
}
@media(prefers-reduced-motion:reduce) { .portfolio-project-image img,.portfolio-sector-list h3 { transition:none; } }

/* The project archive is an editorial index: real work, readable at every size. */
.established-band { border-bottom:1px solid var(--line); padding-block:30px; }
.established-band>.container { display:grid; grid-template-columns:.6fr 1fr 1.1fr auto; gap:30px; align-items:center; }
.established-band strong,.established-band span { display:block; }
.established-band strong { font-size:18px; font-weight:600; }
.established-band span { font-size:12px; color:var(--muted); margin-top:7px; line-height:1.6; }
.established-band a { font-size:13px; text-decoration:underline; text-underline-offset:5px; }
.project-archive { scroll-margin-top:90px; }
.client-name-ribbon { display:flex; flex-wrap:wrap; gap:18px 30px; border-block:1px solid var(--line); padding-block:24px; margin-bottom:35px; }
.client-name-ribbon span { font-family:var(--display); font-size:20px; font-weight:600; }
.project-controls { display:flex; justify-content:space-between; gap:20px; align-items:center; margin-bottom:32px; }
.project-filters { display:flex; flex-wrap:wrap; gap:8px; }
.project-filters button { min-height:44px; border:1px solid var(--line); border-radius:0; padding:10px 16px; background:transparent; color:var(--muted); font:inherit; font-size:13px; cursor:pointer; }
.project-filters button[aria-pressed="true"] { background:var(--ink); border-color:var(--ink); color:var(--bg); }
.project-filters button:hover { border-color:var(--ink); }
.project-count { color:var(--muted); font-size:12px; white-space:nowrap; }
.project-archive-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:54px 28px; }
.archive-card { grid-column:span 2; display:flex; flex-direction:column; min-width:0; }
.archive-card:nth-child(-n+2) { grid-column:span 3; }
.archive-card[hidden] { display:none!important; }
.archive-image { position:relative; overflow:hidden; display:block; aspect-ratio:1.5; background:var(--surface); }
.archive-image>img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.archive-image:hover>img { transform:scale(1.035); }
.archive-meta { color:var(--accent-dark); font-size:11px; letter-spacing:.065em; text-transform:uppercase; margin-top:22px; }
.archive-card h3 { font-family:var(--display); font-size:clamp(24px,2.2vw,32px); line-height:1.13; letter-spacing:-.025em; margin:11px 0 6px; }
.archive-location { font-size:14px; margin:0 0 15px; color:var(--ink); }
.archive-description { font-size:15px; line-height:1.7; margin:0 0 18px; color:var(--muted); }
.project-scope-tags { list-style:none; padding:0; display:flex; flex-wrap:wrap; gap:7px 14px; margin:auto 0 20px; }
.project-scope-tags li { color:var(--muted); border-bottom:1px solid var(--line); padding-bottom:6px; font-size:11px; }
.archive-card>.editorial-link { font-size:12px; align-self:flex-start; }
.project-film-cover { height:100%; padding:30px; display:flex; flex-direction:column; justify-content:center; position:relative; background:#202824; color:#f0ede6; border:1px solid #465049; }
.project-film-cover>span { font-size:11px; line-height:1.6; color:#b9c4ba; }
.project-film-cover>strong { font-family:var(--display); font-size:clamp(26px,3vw,42px); letter-spacing:-.03em; font-weight:500; line-height:1.1; margin:20px 0 12px; max-width:85%; }
.project-film-cover .film-cover-play { position:absolute; bottom:20px; right:24px; font-size:32px; color:#d8e9ca; }
.client-reference-section { background:var(--surface); border-block:1px solid var(--line); }
.client-reference-board { display:block; background:#fff; padding:24px; max-width:1035px; margin-inline:auto; }
.client-reference-board img { display:block; width:100%; height:auto; }
.client-reference-board>span { display:block; color:#354333; text-align:end; font-size:12px; padding-top:12px; }
.reference-note { display:flex; justify-content:space-between; align-items:start; gap:30px; margin-top:24px; }
.reference-note p { margin:0; max-width:740px; color:var(--muted); font-size:12px; line-height:1.7; }
.reference-note a { white-space:nowrap; font-size:12px; }
.project-story-index { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0 32px; margin-top:55px; }
.project-story-index a { display:flex; flex-direction:column; gap:7px; border-top:1px solid var(--line); padding:17px 0; font-size:16px; }
.project-story-index small { color:var(--muted); font-size:12px; }
.story-location { font-size:18px; margin:15px 0 0; color:var(--muted); }
.project-story-layout { display:grid; grid-template-columns:1.25fr 1fr; gap:6%; align-items:start; }
.project-story-layout .story-image img { aspect-ratio:1.4; max-height:none; }
.story-gallery { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:20px; }
.story-gallery img { width:100%; height:100%; aspect-ratio:1.2; object-fit:cover; }
.story-copy .story-lede { font-size:18px; margin-bottom:32px; }
.story-scope { padding:0; list-style:none; margin:0 0 24px; }
.story-scope li { border-bottom:1px solid var(--line); font-size:14px; padding:11px 0; }
.story-copy>.button { margin-top:30px; }
.story-copy .source-link { line-height:1.65; }
.story-film-link { display:block; }
.story-film-link .project-film-cover { min-height:350px; }
.story-film-link>span { display:block; font-size:13px; padding-top:16px; }
.archive-method { max-width:850px; }
.archive-method h2 { font-size:22px; }
.archive-method p { color:var(--muted); font-size:14px; line-height:1.8; }
.industry-proof-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; }
.industry-proof-grid img { width:100%; height:auto; aspect-ratio:1.4; object-fit:cover; margin-bottom:25px; }
.industry-proof-grid img.event-art { object-fit:contain; background:#f5f5f5; }
.industry-proof-grid h3 { font-family:var(--display); font-size:26px; line-height:1.2; margin:12px 0; }
.industry-proof-grid article>p:not(.kicker) { color:var(--muted); line-height:1.7; font-size:15px; }
.industry-proof-grid .editorial-link { font-size:12px; margin-top:10px; }
.industry-more { margin-top:40px; }
.practical-guides { max-width:900px; }
.practical-guides details { border-top:1px solid var(--line); padding-block:24px; }
.practical-guides summary { cursor:pointer; font-size:22px; line-height:1.4; }
.practical-guides ul { color:var(--muted); line-height:1.9; padding-inline-start:24px; }
html[lang="ar"] .archive-card h3,html[lang="ar"] .project-film-cover>strong,html[lang="ar"] .industry-proof-grid h3 { font-family:var(--arabic); letter-spacing:0; line-height:1.5; }
@media(max-width:1050px) {
 .established-band>.container { grid-template-columns:1fr 1fr; gap:25px; }
 .project-controls { align-items:start; flex-direction:column; gap:8px; }
 .project-archive-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .archive-card,.archive-card:nth-child(-n+2) { grid-column:auto; }
 .project-story-index { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .project-story-layout { gap:35px; }
}
@media(max-width:760px) {
 .established-band strong { font-size:15px; }
 .established-band span { font-size:11px; }
 .client-name-ribbon { gap:16px 22px; }
 .client-name-ribbon span { font-size:17px; }
 .project-archive-grid { grid-template-columns:1fr; gap:44px; }
 .archive-card h3 { font-size:29px; }
 .project-film-cover>strong { font-size:34px; }
 .project-count { white-space:normal; }
 .project-filters button { padding-inline:12px; }
 .client-reference-board { padding:10px; }
 .reference-note { flex-direction:column; gap:15px; }
 .project-story-index { gap:0 20px; margin-top:35px; }
 .project-story-index a { font-size:14px; }
 .project-story-layout,.industry-proof-grid { grid-template-columns:1fr; gap:38px; }
 .story-copy .story-lede { font-size:17px; }
 .industry-proof-grid img { aspect-ratio:1.5; }
 .practical-guides summary { font-size:19px; }
}
@media(prefers-reduced-motion:reduce) { .archive-image>img { transition:none; } }
