/* ============================================
   WIRED · Editorial Mix
   Serif (Fraunces) + Sans (Inter Tight) + Mono (JetBrains Mono)
   Inspired by editorial agencies — Desafio Global / Label / Lift
   ============================================ */

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  /* Base palette — Fox-style near-black + neutral light */
  --bg:#151515;
  --bg-2:#1c1c1c;
  --bg-3:#242424;
  --cream:#f1f1ef;
  --cream-2:#e4e4e0;
  --paper:#fafafa;
  --ink:#f6f6f4;          /* on dark */
  --ink-2:rgba(246,246,244,0.72);
  --ink-3:rgba(246,246,244,0.5);
  --black:#0b0b0d;        /* on light */
  --black-2:rgba(11,11,13,0.72);
  --black-3:rgba(11,11,13,0.5);
  --line:rgba(246,246,244,0.1);
  --line-2:rgba(246,246,244,0.18);
  --line-l:rgba(11,11,13,0.1);
  --line-l2:rgba(11,11,13,0.18);
  --muted:rgba(246,246,244,0.4);

  /* Accent — used VERY sparingly, only on emphasised italic words */
  --accent-1:#ff5b3e;     /* warm red — Desafio Global energy */
  --accent-2:#e44b6c;     /* magenta */
  --accent-3:#7d3cf5;     /* violet */
  --grad:linear-gradient(95deg,#ff5b3e 0%,#e44b6c 45%,#7d3cf5 100%);
  --grad-soft:linear-gradient(95deg,rgba(255,91,62,0.08) 0%,rgba(228,75,108,0.08) 45%,rgba(125,60,245,0.08) 100%);

  /* Type stacks — Fox-style heavy grotesque */
  --display:'Hanken Grotesk','AT Gambit',-apple-system,sans-serif;
  --serif:'Hanken Grotesk',-apple-system,sans-serif;
  --sans:'Hanken Grotesk','Inter',-apple-system,'Helvetica Neue',sans-serif;
  --mono:'Hanken Grotesk',ui-monospace,monospace;

  --radius:14px;
  --maxw:1480px;
}

/* ===== AT Gambit — display / highlight type (Atipo Foundry) =====
   Drop the licensed files into assets/fonts/ and these activate.
   Until then, headings gracefully fall back to Fraunces. */
@font-face{
  font-family:'AT Gambit';
  src:url('fonts/AtGambit-Light.woff2') format('woff2');
  font-weight:300;font-style:normal;font-display:swap;
}
@font-face{
  font-family:'AT Gambit';
  src:url('fonts/AtGambit-Regular.woff2') format('woff2');
  font-weight:400;font-style:normal;font-display:swap;
}
@font-face{
  font-family:'AT Gambit';
  src:url('fonts/AtGambit-LightItalic.woff2') format('woff2');
  font-weight:300;font-style:italic;font-display:swap;
}
@font-face{
  font-family:'AT Gambit';
  src:url('fonts/AtGambit-Italic.woff2') format('woff2');
  font-weight:400;font-style:italic;font-display:swap;
}

html,body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-weight:400;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
body{overflow-x:hidden}
a{color:inherit;text-decoration:none}
img,video{max-width:100%;display:block}
::selection{background:var(--accent-2);color:var(--ink)}

/* Grain overlay — subtle film */
.grain{position:fixed;inset:0;pointer-events:none;z-index:1;mix-blend-mode:overlay;opacity:0.5;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.95' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.55'/%3E%3C/svg%3E")}

/* ===== NAV ===== */
nav.top{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:22px 32px;background:transparent;border-bottom:1px solid transparent;transition:border-color 0.3s,background 0.3s,padding 0.3s,backdrop-filter 0.3s}
nav.top.compact{padding:14px 32px;border-bottom-color:var(--line);background:rgba(11,11,13,0.7);backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%)}
.logo{display:flex;align-items:center;gap:11px;line-height:1}
.logo img{height:26px;width:auto;display:block}
.logo-mark{display:none}
.nav-links{list-style:none;display:flex;gap:20px}
.nav-links a{font-family:var(--sans);font-size:13px;font-weight:400;color:var(--ink-2);transition:color 0.25s;position:relative}
.nav-links a:hover{color:var(--ink)}
.nav-links a::after{content:'';position:absolute;left:0;right:0;bottom:-4px;height:2px;background:var(--grad);transform:scaleX(0);transform-origin:left;transition:transform 0.3s}
.nav-links a:hover::after{transform:scaleX(1)}
.nav-cta{display:inline-flex;align-items:center;gap:10px;padding:11px 18px 11px 22px;border:1px solid var(--ink);border-radius:999px;font-size:13px;font-weight:500;color:var(--ink);background:transparent;transition:background 0.3s,color 0.3s}
.nav-cta:hover{background:var(--ink);color:var(--bg)}
.nav-cta-arrow{font-family:var(--mono);font-size:14px;line-height:1;transition:transform 0.3s}
.nav-cta:hover .nav-cta-arrow{transform:translateX(4px)}

/* ===== UNIVERSAL EM (bold grotesque highlight, solid white — Fox style) ===== */
em{font-family:var(--sans);font-style:normal;font-weight:700;color:var(--ink)}
.block.light em,.block.paper em{color:var(--black)}

/* ===== BLOCKS ===== */
.block{position:relative;padding:140px 32px;border-bottom:1px solid var(--line)}
.block.light{background:var(--cream);color:var(--black);border-bottom-color:var(--line-l)}
.block.light em{color:var(--black)}
.block.paper{background:var(--paper);color:var(--black);border-bottom-color:var(--line-l)}
.block.paper em{color:var(--black)}
.block.dark{background:var(--bg)}
.block.dark-2{background:var(--bg-2)}
.block-inner{max-width:var(--maxw);margin:0 auto;width:100%}

/* ===== TAGS / EYEBROW ===== */
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-family:var(--mono);font-size:11px;letter-spacing:0.16em;text-transform:uppercase;color:var(--ink-3);margin-bottom:32px}
.block.light .eyebrow,.block.paper .eyebrow{color:var(--black-3)}
.eyebrow::before{content:'';display:inline-block;width:24px;height:2px;background:var(--grad);border-radius:2px}

/* ===== TYPOGRAPHY ===== */
.h-display{font-family:var(--display);font-weight:700;font-size:clamp(64px,10.5vw,180px);line-height:0.9;letter-spacing:-0.035em}
.h-display em{font-style:normal;font-weight:700}
.h-statement{font-family:var(--display);font-weight:700;font-size:clamp(44px,6.4vw,108px);line-height:0.96;letter-spacing:-0.03em}
.h-statement em{font-weight:700}
.h-section{font-family:var(--display);font-weight:700;font-size:clamp(40px,5.4vw,86px);line-height:1;letter-spacing:-0.028em}
.h-sub{font-family:var(--display);font-weight:600;font-size:clamp(28px,3.6vw,56px);line-height:1.04;letter-spacing:-0.022em}
.h-card{font-family:var(--sans);font-weight:600;font-size:clamp(22px,2.4vw,34px);line-height:1.1;letter-spacing:-0.015em}
.lede{font-family:var(--sans);font-size:clamp(17px,1.4vw,21px);line-height:1.55;color:var(--ink-2);max-width:62ch}
.block.light .lede,.block.paper .lede{color:var(--black-2)}
.body{font-size:16px;line-height:1.6;color:var(--ink-2)}
.block.light .body,.block.paper .body{color:var(--black-2)}

/* ===== HERO (Fox-style image + filter background) ===== */
.hero{position:relative;min-height:100vh;display:flex;flex-direction:column;justify-content:flex-end;padding:140px 32px 60px;overflow:hidden;isolation:isolate}
.hero-bg{position:absolute;inset:0;z-index:0;overflow:hidden;background:var(--bg)}
.hero-bg::before{content:'';position:absolute;inset:0;background-image:var(--img,url('hero-arch.jpeg'));background-size:cover;background-position:center;filter:grayscale(0.35) contrast(1.05) brightness(0.55) saturate(0.9);transform:scale(1.06);animation:heroDrift 26s ease-in-out infinite alternate}
.hero-bg::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(21,21,21,0.55) 0%,rgba(21,21,21,0.35) 40%,rgba(21,21,21,0.92) 100%),linear-gradient(95deg,rgba(255,91,62,0.16) 0%,rgba(228,75,108,0.10) 45%,rgba(125,60,245,0.16) 100%)}
@keyframes heroDrift{0%{transform:scale(1.06) translate(0,0)}100%{transform:scale(1.14) translate(-2%,-2%)}}
@media (prefers-reduced-motion:reduce){.hero-bg::before{animation:none}}
.hero-inner{position:relative;z-index:2;max-width:var(--maxw);margin:0 auto;width:100%;display:flex;flex-direction:column;gap:60px}
.hero-meta{display:flex;justify-content:space-between;align-items:flex-start;gap:32px;flex-wrap:wrap}
.hero-meta-l{display:flex;flex-direction:column;gap:6px}
.hero-meta-tag{font-family:var(--mono);font-size:11px;letter-spacing:0.16em;text-transform:uppercase;color:var(--ink-3)}
.hero-meta-r{font-family:var(--sans);font-size:13px;color:var(--ink-3);text-align:right;line-height:1.5;max-width:260px}
.hero-h{margin-top:12px}
.hero-h .line{display:block;opacity:1}
.hero-h .line span{display:inline-block}
.hero-bottom{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:32px;border-top:2px solid transparent;border-image:var(--grad) 1;padding-top:40px;margin-top:20px}
.hero-stat{display:flex;flex-direction:column;gap:6px}
.hero-stat-num{font-family:var(--sans);font-weight:600;font-size:48px;line-height:1;letter-spacing:-0.02em;color:var(--ink)}
.hero-stat-num em{color:var(--accent-1);font-size:34px}
.hero-stat-label{font-family:var(--mono);font-size:10.5px;letter-spacing:0.12em;text-transform:uppercase;color:var(--muted)}

/* ===== TICKER ===== */
.ticker{padding:28px 0;background:var(--bg-2);border-bottom:1px solid var(--line);overflow:hidden;white-space:nowrap}
.ticker-inner{display:inline-flex;gap:80px;animation:scroll 60s linear infinite}
.ticker-item{font-family:var(--sans);font-style:normal;font-weight:600;font-size:32px;color:var(--ink-2);display:inline-flex;align-items:center;gap:80px;flex-shrink:0}
.ticker-item::after{content:'';width:10px;height:10px;border-radius:50%;background:var(--grad);font-style:normal;display:inline-block}
@keyframes scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ===== MANIFESTO (Somos…) ===== */
.manifesto{display:grid;grid-template-columns:1fr 1.2fr;gap:80px;align-items:start}
.manifesto-poem{font-family:var(--sans);font-weight:600;font-size:clamp(24px,2.8vw,42px);line-height:0.9;letter-spacing:-0.005em;color:var(--ink)}
.block.light .manifesto-poem,.block.paper .manifesto-poem{color:var(--black)}
.manifesto-poem p{margin-bottom:6px}
.manifesto-poem em{color:inherit}
.manifesto-poem strong{font-family:var(--sans);font-style:normal;font-weight:700;color:inherit}
.manifesto-side p{margin-bottom:20px;font-size:17px;line-height:1.6;color:var(--ink-2)}
.block.light .manifesto-side p,.block.paper .manifesto-side p{color:var(--black-2)}
.manifesto-side p strong{color:var(--ink);font-weight:500}
.block.light .manifesto-side p strong,.block.paper .manifesto-side p strong{color:var(--black)}

/* ===== TWO-COL HEADER ===== */
.section-header{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end;margin-bottom:80px}
.section-header.tight{margin-bottom:48px}
.section-header-r{padding-bottom:8px}

/* ===== PHASES (Pensar / Criar / Concretizar — Label-style) ===== */
.phases{display:grid;grid-template-columns:1fr;gap:0;border-top:1px solid var(--line)}
.block.light .phases,.block.paper .phases{border-top-color:var(--line-l)}
.phase{display:grid;grid-template-columns:140px 1.4fr 1fr;gap:60px;padding:60px 0;border-bottom:1px solid var(--line);align-items:start;cursor:pointer;transition:opacity .4s ease}
.block.light .phase,.block.paper .phase{border-bottom-color:var(--line-l)}
.phase-num{font-family:var(--mono);font-size:12px;letter-spacing:0.14em;color:var(--ink-3);padding-top:14px}
.block.light .phase-num,.block.paper .phase-num{color:var(--black-3)}
.phase-title{font-family:var(--display);font-weight:700;font-size:clamp(40px,5vw,72px);line-height:1;letter-spacing:-0.018em}
.phase-title em{color:inherit;display:block}
.phase-meta{display:flex;flex-direction:column;gap:18px}
.phase-tagline{font-family:var(--sans);font-style:normal;font-weight:600;font-size:18px;line-height:1.3;color:var(--ink-2)}
.block.light .phase-tagline,.block.paper .phase-tagline{color:var(--black-2)}
.phase-body{font-size:14.5px;line-height:1.6;color:var(--ink-2)}
.block.light .phase-body,.block.paper .phase-body{color:var(--black-2)}
.phase-brand{display:inline-flex;align-items:center;gap:10px;padding:8px 14px;border:1px solid var(--ink);border-radius:999px;font-family:var(--mono);font-size:11px;letter-spacing:0.1em;text-transform:uppercase;color:var(--ink);width:fit-content;background:transparent;transition:background 0.3s,color 0.3s}
.block.light .phase-brand,.block.paper .phase-brand{border-color:var(--black);color:var(--black)}
.phase:hover .phase-brand{background:var(--ink);color:var(--bg)}
.block.light .phase:hover .phase-brand,.block.paper .phase:hover .phase-brand{background:var(--black);color:var(--cream)}

/* ── Phase full-page background hover ─────────────────────────── */
#phase-bg{position:fixed;inset:0;z-index:0;pointer-events:none}
.phase-bg-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity .7s ease;will-change:opacity}
.phase-bg-slide.pbg-on{opacity:1}
.phase-bg-overlay{position:absolute;inset:0;background:rgba(11,11,13,.8);opacity:0;transition:opacity .6s ease}
body.phase-active .phase-bg-overlay{opacity:1}
.block.dark,.block.dark-2{transition:background-color .5s ease}
body.phase-active .block.dark,body.phase-active .block.dark-2{background-color:transparent}
#fazemos .phase{transition:opacity .4s ease}
body.phase-active #fazemos .phase{opacity:.3}
body.phase-active #fazemos .phase.phase-hover{opacity:1}

/* ===== BRANDS GRID (alternative compact view) ===== */
.brands-row{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.brand-tile{position:relative;background:var(--bg);padding:36px 28px;display:flex;flex-direction:column;justify-content:flex-start;gap:30px;min-height:280px;transition:background 0.4s,transform 0.4s;cursor:pointer;overflow:hidden}
.brand-tile>div:last-child{flex:1;display:flex;flex-direction:column;justify-content:space-between}
.brand-tile::after{content:'';position:absolute;inset:0;z-index:0;background-image:var(--img);background-size:cover;background-position:center;filter:grayscale(0.5) contrast(1.05) brightness(0.4) saturate(0.85);opacity:0.22;transform:scale(1.04);transition:opacity 0.5s,transform 0.7s cubic-bezier(0.2,0.8,0.2,1)}
.brand-tile:hover::after{opacity:0.5;transform:scale(1.1)}
.brand-tile > *{position:relative;z-index:1}
.brand-tile::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;z-index:2;background:var(--grad);transform:scaleX(0);transform-origin:left;transition:transform 0.45s cubic-bezier(0.2,0.8,0.2,1)}
.brand-tile:hover::before{transform:scaleX(1)}
.brand-tile:hover{background:var(--bg-2)}
.brand-tile-num{font-family:var(--mono);font-size:11px;letter-spacing:0.14em;color:var(--ink-3)}
.brand-tile-name{font-family:var(--sans);font-weight:600;font-size:36px;line-height:1;letter-spacing:-0.015em}
.brand-tile-name em{color:inherit}

/* ecosystem banner (fills row 2 beside the 6th tile) */
.brand-banner{grid-column:span 4;position:relative;background:#0b0b0d;overflow:hidden;display:flex;align-items:flex-end;min-height:280px;text-decoration:none}
.brand-banner img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.02);transition:transform 0.8s cubic-bezier(0.2,0.8,0.2,1)}
.brand-banner:hover img{transform:scale(1.07)}
.brand-banner::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,11,13,0.88) 0%,rgba(11,11,13,0.5) 36%,rgba(11,11,13,0) 64%)}
.brand-banner-content{position:relative;z-index:1;padding:40px 44px;max-width:560px}
.brand-banner-eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:0.16em;text-transform:uppercase;color:var(--ink-3);margin-bottom:14px}
.brand-banner-title{font-family:var(--display);font-weight:700;font-size:clamp(30px,2.8vw,46px);line-height:1.02;letter-spacing:-0.022em;color:var(--ink)}
.brand-banner-title em{font-style:normal;font-weight:700}
.brand-banner-link{display:inline-flex;align-items:center;gap:8px;margin-top:20px;font-family:var(--mono);font-size:11px;letter-spacing:0.14em;text-transform:uppercase;color:var(--ink-2)}
.brand-banner-link::after{content:'→';color:var(--accent-1);transition:transform 0.3s}
.brand-banner:hover .brand-banner-link::after{transform:translateX(4px)}
@media (max-width:1100px){.brand-banner{grid-column:span 2;min-height:240px}}
@media (max-width:680px){.brand-banner{grid-column:span 1}}
.brand-tile-desc{font-size:13px;line-height:1.55;color:var(--ink-2)}
.brand-tile-link{font-family:var(--mono);font-size:11px;letter-spacing:0.14em;text-transform:uppercase;color:var(--ink-3);display:flex;align-items:center;gap:6px}
.brand-tile-link::after{content:'→';color:var(--accent-1)}
.brand-tile--cta{background:var(--bg-3)}
.brand-tile--cta::before{transform:scaleX(1) !important}
.brand-tile--cta .brand-tile-name em{background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-style:normal}
.brand-tile--cta:hover{background:var(--bg-3)}

/* ===== CLIENTS GRID ===== */
.clients-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:0;margin-top:48px;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.client-logo{display:flex;align-items:center;justify-content:center;padding:32px 28px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:background .25s}
.client-logo:hover{background:var(--bg-3)}
.client-logo img{width:auto;height:48px;max-width:150px;object-fit:contain;filter:brightness(0) invert(0.55);transition:filter .25s}
/* Logos de texto puro — aparecem grandes mesmo a alturas menores */
.client-logo img[alt="Propec"]{height:22px}
.client-logo img[alt="Fitnessup"]{height:32px}
.client-logo img[alt="Web Summit"]{height:34px}
.client-logo img[alt="ZipClip"]{height:36px}
.client-logo img[alt="Stockled"]{height:32px}
/* Logos que estavam demasiado grandes a 52px */
.client-logo img[alt="Seth"]{height:36px}
.client-logo img[alt="Rock in Rio"]{height:36px}
.client-logo img[alt="Ergliz"]{height:38px}
.client-logo:hover img{filter:brightness(0) invert(1)}
@media(max-width:900px){.clients-grid{grid-template-columns:repeat(3,1fr)}}

/* Mobile: ticker automático */
@media(max-width:540px){
  .clients-grid{
    display:flex;flex-wrap:nowrap;
    overflow:hidden;
    border-left:none;border-right:none;
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
    margin-top:32px;
  }
  .clients-ticker-inner{
    display:inline-flex;flex-shrink:0;
    animation:clients-scroll 48s linear infinite;
  }
  .clients-ticker-inner .client-logo{
    flex:0 0 auto;width:110px;
    padding:18px 16px;
    border-right:1px solid var(--line);
    border-left:none;border-top:none;border-bottom:none;
  }
  .clients-ticker-inner .client-logo img{height:30px;max-width:78px}
  .clients-ticker-inner .client-logo img[alt="Propec"]{height:16px}
  .clients-ticker-inner .client-logo img[alt="Fitnessup"]{height:22px}
  .clients-ticker-inner .client-logo img[alt="Web Summit"]{height:24px}
  .clients-ticker-inner .client-logo img[alt="ZipClip"]{height:24px}
  .clients-ticker-inner .client-logo img[alt="Stockled"]{height:22px}
  .clients-ticker-inner .client-logo img[alt="Seth"]{height:24px}
  .clients-ticker-inner .client-logo img[alt="Rock in Rio"]{height:24px}
  .clients-ticker-inner .client-logo img[alt="Ergliz"]{height:26px}
}
@keyframes clients-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(max-width:540px) and (prefers-reduced-motion:reduce){
  .clients-ticker-inner{animation:none;overflow-x:auto}
}

/* ===== WORK GALLERY (Lift-style cliente + título) ===== */
.work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:60px 32px}
.work-card{display:flex;flex-direction:column;gap:14px;cursor:pointer}
.work-img{aspect-ratio:4/3;border-radius:0;overflow:hidden;background:var(--bg-3);position:relative}
.work-img img{width:100%;height:100%;object-fit:cover;transition:transform 0.6s}
.work-card:hover .work-img img{transform:scale(1.04)}
.work-meta{display:flex;flex-direction:column;gap:6px}
.work-client{font-family:var(--mono);font-size:11px;letter-spacing:0.14em;text-transform:uppercase;color:var(--ink-3)}
.block.light .work-client,.block.paper .work-client{color:var(--black-3)}
.work-title{font-family:var(--sans);font-weight:600;font-size:24px;line-height:1.15;letter-spacing:-0.005em}
.work-title em{color:inherit}
.work-tag{font-size:13px;color:var(--ink-2)}
.block.light .work-tag,.block.paper .work-tag{color:var(--black-2)}

/* ===== JOURNAL — Mosaic moderno ===== */
.mosaic{display:grid;grid-template-columns:repeat(6,1fr);grid-auto-rows:200px;gap:14px}
.mosaic-tile{position:relative;overflow:hidden;border-radius:14px;cursor:pointer;background:var(--bg-3);display:flex;flex-direction:column;justify-content:flex-end;padding:24px;transition:transform 0.5s cubic-bezier(0.2,0.8,0.2,1)}
.mosaic-tile:hover{transform:translateY(-4px)}
.mosaic-tile::before{content:'';position:absolute;inset:0;background:var(--tile-bg,linear-gradient(135deg,#ff5b3e 0%,#7d3cf5 100%));z-index:0;transition:transform 0.7s cubic-bezier(0.2,0.8,0.2,1)}
.mosaic-tile:hover::before{transform:scale(1.06)}
.mosaic-tile::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,11,13,0) 30%,rgba(11,11,13,0.85) 100%);z-index:1}
.mosaic-tile > *{position:relative;z-index:2}
.mosaic-meta{font-family:var(--mono);font-size:10.5px;letter-spacing:0.14em;text-transform:uppercase;color:var(--cream-2);display:flex;gap:14px;margin-bottom:10px;flex-wrap:wrap}
.mosaic-meta .cat{color:#ffd76b}
.mosaic-title{font-family:var(--sans);font-weight:600;font-size:clamp(20px,1.6vw,26px);line-height:1.1;letter-spacing:-0.008em;color:var(--cream)}
.mosaic-title em{color:#ff8a6e}
.mosaic-tile.lg .mosaic-title{font-size:clamp(28px,2.4vw,40px);line-height:1.04}
.mosaic-arrow{position:absolute;top:20px;right:20px;width:32px;height:32px;border-radius:50%;background:rgba(246,241,231,0.18);backdrop-filter:blur(8px);color:var(--cream);display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:13px;z-index:2;transition:transform 0.3s,background 0.3s}
.mosaic-tile:hover .mosaic-arrow{transform:translateX(3px) translateY(-3px);background:var(--accent-1)}

/* tile spans */
.mosaic-tile.lg{grid-column:span 4;grid-row:span 2}
.mosaic-tile.md{grid-column:span 2;grid-row:span 2}
.mosaic-tile.sm{grid-column:span 2;grid-row:span 1}
.mosaic-tile.wd{grid-column:span 3;grid-row:span 1}

@media (max-width:980px){
  .mosaic{grid-template-columns:repeat(4,1fr);grid-auto-rows:170px}
  .mosaic-tile.lg{grid-column:span 4;grid-row:span 2}
  .mosaic-tile.md{grid-column:span 2;grid-row:span 2}
  .mosaic-tile.sm{grid-column:span 2}
  .mosaic-tile.wd{grid-column:span 4}
}
@media (max-width:600px){
  .mosaic{grid-template-columns:1fr;grid-auto-rows:200px}
  .mosaic-tile.lg,.mosaic-tile.md,.mosaic-tile.sm,.mosaic-tile.wd{grid-column:span 1;grid-row:span 1}
  .mosaic-tile.lg{grid-row:span 2}
}

/* ===== LANGUAGE SELECTOR ===== */
.nav-end{display:flex;align-items:center;gap:8px}
.lang-switch{position:relative}
.lang-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;background:transparent;border:1px solid var(--line-2);border-radius:99px;font-family:var(--mono);font-size:11px;letter-spacing:0.12em;text-transform:uppercase;color:var(--ink-2);cursor:pointer;transition:border-color 0.25s,color 0.25s}
.lang-btn:hover{border-color:var(--ink);color:var(--ink)}
.lang-btn .chev{font-size:9px;transition:transform 0.3s}
.lang-switch.open .lang-btn .chev{transform:rotate(180deg)}
.lang-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:140px;background:rgba(11,11,13,0.92);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid var(--line-2);border-radius:12px;padding:6px;display:none;flex-direction:column;gap:2px;z-index:200}
.lang-switch.open .lang-menu{display:flex}
.lang-menu button{padding:10px 14px;background:transparent;border:none;border-radius:8px;font-family:var(--mono);font-size:11.5px;letter-spacing:0.1em;text-transform:uppercase;color:var(--ink-2);cursor:pointer;text-align:left;display:flex;justify-content:space-between;align-items:center;gap:10px;transition:background 0.2s,color 0.2s}
.lang-menu button:hover,.lang-menu button.active{background:rgba(246,241,231,0.08);color:var(--ink)}
.lang-menu button.active::after{content:'●';color:var(--accent-1);font-size:8px}

/* ===== SECTOR card link affordance ===== */
.sector{text-decoration:none;color:inherit}
.sector-arrow{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:10.5px;letter-spacing:0.14em;text-transform:uppercase;color:var(--accent-1);margin-top:auto}
.sector:hover .sector-arrow{transform:translateX(3px)}
.sector-arrow{transition:transform 0.3s}

/* ===== JOURNAL / BLOG layout (news-style work) ===== */
.journal{display:flex;flex-direction:column;border-top:1px solid var(--line-l)}
.block.dark .journal,.block.dark-2 .journal{border-top-color:var(--line)}
.journal-row{display:grid;grid-template-columns:160px 1.4fr 1.6fr 0.7fr;gap:48px;align-items:start;padding:36px 0;border-bottom:1px solid var(--line-l);cursor:pointer;transition:padding 0.4s,background 0.3s;position:relative}
.block.dark .journal-row,.block.dark-2 .journal-row{border-bottom-color:var(--line)}
.journal-row:hover{padding-left:18px}
.journal-date{font-family:var(--mono);font-size:11px;letter-spacing:0.14em;text-transform:uppercase;color:var(--black-3);padding-top:10px;display:flex;flex-direction:column;gap:4px}
.block.dark .journal-date,.block.dark-2 .journal-date{color:var(--ink-3)}
.journal-date .cat{color:var(--accent-1)}
.journal-client{font-family:var(--mono);font-size:11px;letter-spacing:0.14em;text-transform:uppercase;color:var(--black-3);padding-top:14px}
.block.dark .journal-client,.block.dark-2 .journal-client{color:var(--ink-3)}
.journal-title{font-family:var(--sans);font-weight:600;font-size:clamp(26px,2.6vw,38px);line-height:1.08;letter-spacing:-0.012em}
.journal-title em{color:inherit}
.journal-lede{font-size:14.5px;line-height:1.55;color:var(--black-2);margin-top:10px}
.block.dark .journal-lede,.block.dark-2 .journal-lede{color:var(--ink-2)}
.journal-tag{font-family:var(--mono);font-size:10.5px;letter-spacing:0.1em;text-transform:uppercase;color:var(--black-3);margin-top:14px;display:flex;flex-wrap:wrap;gap:8px}
.block.dark .journal-tag,.block.dark-2 .journal-tag{color:var(--ink-3)}
.journal-tag span{padding:4px 10px;border:1px solid var(--line-l2);border-radius:99px}
.block.dark .journal-tag span,.block.dark-2 .journal-tag span{border-color:var(--line-2)}
.journal-thumb{aspect-ratio:4/3;border-radius:0;overflow:hidden;background:var(--bg-3);position:relative;align-self:start}
.journal-thumb-arrow{position:absolute;right:12px;bottom:12px;width:36px;height:36px;border-radius:50%;background:rgba(11,11,13,0.6);backdrop-filter:blur(8px);color:var(--cream);display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:14px;transition:transform 0.3s,background 0.3s}
.journal-row:hover .journal-thumb-arrow{transform:translateX(4px);background:var(--accent-1)}

/* Featured first row */
.journal-row.featured{grid-template-columns:1fr 1fr;gap:60px;padding:60px 0}
.journal-row.featured .journal-thumb{aspect-ratio:16/10;grid-row:span 2}
.journal-row.featured .journal-meta{display:flex;flex-direction:column;gap:14px}
.journal-row.featured .journal-title{font-size:clamp(36px,4.4vw,64px);line-height:1.02;letter-spacing:-0.02em}
.journal-row.featured .journal-lede{font-size:17px}

@media (max-width:900px){
  .journal-row{grid-template-columns:1fr;gap:14px;padding:28px 0}
  .journal-row.featured{grid-template-columns:1fr;gap:18px;padding:36px 0}
  .journal-row.featured .journal-thumb{grid-row:auto;aspect-ratio:4/3}
  .journal-thumb{aspect-ratio:16/9}
}

/* ===== APPROACH 3-col ===== */
.approach{display:grid;grid-template-columns:repeat(3,1fr);gap:48px}
.approach-card{display:flex;flex-direction:column;gap:18px;padding-right:18px;border-right:1px solid var(--line)}
.block.light .approach-card,.block.paper .approach-card{border-right-color:var(--line-l)}
.approach-card:last-child{border-right:none}
.approach-num{font-family:var(--mono);font-size:11px;letter-spacing:0.14em;color:var(--accent-1)}
.approach-title{font-family:var(--sans);font-weight:600;font-size:34px;line-height:1.05;letter-spacing:-0.01em}
.approach-title em{color:var(--ink)}
.approach-body{font-size:14.5px;line-height:1.6;color:var(--ink-2)}
.block.light .approach-body,.block.paper .approach-body{color:var(--black-2)}

/* ===== SHARED RESPONSIVE GRIDS ===== */
.check-cols{display:grid;grid-template-columns:repeat(2,1fr);gap:32px}
.form-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start;max-width:1100px}

/* ===== SECTORS ===== */
.sectors{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.block.light .sectors,.block.paper .sectors{background:var(--line-l);border-color:var(--line-l)}
.sector{position:relative;background:var(--bg);padding:42px 32px;display:flex;flex-direction:column;gap:14px;min-height:240px;cursor:pointer;transition:background 0.4s;overflow:hidden}
.sector::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--grad);transform:scaleX(0);transform-origin:left;transition:transform 0.45s cubic-bezier(0.2,0.8,0.2,1)}
.sector:hover::before{transform:scaleX(1)}
.block.light .sector,.block.paper .sector{background:var(--cream)}
.block.paper .sector{background:var(--paper)}
.sector:hover{background:var(--bg-2)}
.block.light .sector:hover,.block.paper .sector:hover{background:#ede6d4}
.sector-num{font-family:var(--mono);font-size:11px;letter-spacing:0.14em;color:var(--ink-3)}
.block.light .sector-num,.block.paper .sector-num{color:var(--black-3)}
.sector-name{font-family:var(--sans);font-weight:600;font-size:28px;line-height:1.05;letter-spacing:-0.012em}
.sector-name em{color:inherit}
.sector-body{font-size:13.5px;line-height:1.6;color:var(--ink-2);flex:1}
.block.light .sector-body,.block.paper .sector-body{color:var(--black-2)}

/* ===== RECOGNITION strip (Lift influence) ===== */
.recognition{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}
.rec{background:var(--bg);padding:36px 28px;display:flex;flex-direction:column;gap:8px;min-height:180px;justify-content:space-between}
.rec-year{font-family:var(--mono);font-size:11px;letter-spacing:0.14em;color:var(--ink-3)}
.rec-title{font-family:var(--sans);font-weight:600;font-size:22px;line-height:1.1;letter-spacing:-0.005em}
.rec-source{font-size:13px;color:var(--ink-2)}

/* ===== INSIGHTS (Lift-style podcast/content) ===== */
.insights{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:32px}
.insight{position:relative;background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;cursor:pointer;transition:transform 0.4s,border-color 0.3s}
.insight::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--grad);z-index:3;transform:scaleX(0);transform-origin:left;transition:transform 0.45s cubic-bezier(0.2,0.8,0.2,1)}
.insight:hover::before{transform:scaleX(1)}
.insight:hover{transform:translateY(-4px);border-color:var(--ink-3)}
.insight-img{aspect-ratio:16/9;background:var(--bg-3);position:relative;overflow:hidden}
.insight-img img{width:100%;height:100%;object-fit:cover;transition:transform 0.6s}
.insight:hover .insight-img img{transform:scale(1.04)}
.insight-img.featured{aspect-ratio:4/3}
.insight-body{padding:28px 28px 32px;display:flex;flex-direction:column;gap:14px;flex:1}
.insight-tag{font-family:var(--mono);font-size:10.5px;letter-spacing:0.14em;text-transform:uppercase;color:var(--accent-1)}
.insight-title{font-family:var(--sans);font-weight:600;font-size:24px;line-height:1.15;letter-spacing:-0.005em;color:var(--ink)}
.insight.featured .insight-title{font-size:36px;line-height:1.05}
.insight-meta{font-family:var(--mono);font-size:11px;letter-spacing:0.1em;color:var(--ink-3);margin-top:auto}

/* ===== WIBIX — editorial, premium ===== */
.wibix-block{display:grid;grid-template-columns:1fr 1.1fr;gap:80px;align-items:center}
.wibix-mock{background:linear-gradient(160deg,#181820 0%,#0d0d10 100%);border:1px solid var(--line-2);border-radius:14px;padding:18px;font-family:var(--mono);box-shadow:0 30px 80px rgba(0,0,0,0.6)}
.wibix-mock-bar{display:flex;align-items:center;gap:6px;padding-bottom:14px;border-bottom:1px solid var(--line)}
.wibix-mock-bar .dot{width:9px;height:9px;border-radius:50%;background:rgba(246,241,231,0.18)}
.wibix-mock-bar .url{margin-left:14px;font-size:11px;color:var(--ink-3)}
.wibix-mock-body{padding:18px 4px 4px;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.wibix-card{background:rgba(246,241,231,0.04);border:1px solid var(--line);border-radius:10px;padding:18px}
.wibix-card-label{display:block;font-size:9.5px;letter-spacing:0.14em;text-transform:uppercase;color:var(--ink-3);margin-bottom:8px}
.wibix-card-num{font-family:var(--sans);font-weight:600;font-size:34px;color:var(--ink);line-height:1}
.wibix-card-num em{font-style:italic;color:var(--accent-1);font-size:22px}
.wibix-bar{height:4px;border-radius:2px;background:rgba(246,241,231,0.08);margin-top:14px;overflow:hidden}
.wibix-bar-fill{height:100%;width:71%;background:var(--grad);border-radius:2px}
.wibix-card.full{grid-column:span 2}
.wibix-row{display:flex;justify-content:space-between;align-items:center;padding:9px 0;border-bottom:1px dashed var(--line);font-size:12px;color:var(--ink-2)}
.wibix-row:last-child{border-bottom:none}
.wibix-row .name{font-family:var(--sans);font-size:12px;color:var(--ink-2)}
.wibix-row .status{font-size:9.5px;padding:3px 8px;border-radius:99px;background:rgba(246,241,231,0.06);letter-spacing:0.08em}
.status-active{color:#ff5b3e}
.status-ok{color:#8cffb4}
.status-warn{color:#ffd76b}

/* ===== CAREERS / VALUES ===== */
.values{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}
.value{background:var(--bg);padding:42px 32px;display:flex;flex-direction:column;gap:18px;min-height:240px;cursor:pointer;transition:background 0.4s}
.value:hover{background:var(--bg-2)}
.value-num{font-family:var(--mono);font-size:11px;letter-spacing:0.14em;color:var(--accent-1)}
.value-title{font-family:var(--sans);font-weight:600;font-size:34px;line-height:1;letter-spacing:-0.012em}
.value-title em{color:var(--ink)}
.value-body{font-size:14px;line-height:1.6;color:var(--ink-2);flex:1}

/* ===== CONTACT BAND ===== */
.contact-band{padding:160px 32px;background:var(--cream);color:var(--black);text-align:left}
.contact-band em{color:inherit}
.contact-h{font-family:var(--display);font-weight:700;font-size:clamp(56px,8vw,144px);line-height:0.95;letter-spacing:-0.025em;max-width:18ch;margin-bottom:48px}
.contact-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:32px;border-top:1px solid var(--line-l2);padding-top:48px}
.contact-col h4{font-family:var(--mono);font-size:11px;letter-spacing:0.14em;text-transform:uppercase;color:var(--black-3);margin-bottom:14px}
.contact-col p,.contact-col a{font-family:var(--sans);font-style:normal;font-weight:600;font-size:22px;line-height:1.3;color:var(--black);display:block;margin-bottom:6px}
.contact-col a:hover{color:var(--accent-1)}

.btn{display:inline-flex;align-items:center;gap:12px;padding:18px 28px;border-radius:999px;font-family:var(--sans);font-size:14.5px;font-weight:500;cursor:pointer;transition:transform 0.3s,background 0.3s,color 0.3s;border:1px solid currentColor}
.btn-primary{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.btn-primary:hover{transform:translateY(-2px)}
.block.light .btn-primary,.block.paper .btn-primary,.contact-band .btn-primary{background:var(--black);color:var(--cream);border-color:var(--black)}
.btn .arrow{font-family:var(--mono);font-size:15px;transition:transform 0.3s}
.btn:hover .arrow{transform:translateX(4px)}

/* ===== FOOTER ===== */
footer{background:var(--bg);color:var(--ink);padding:120px 32px 40px;border-top:1px solid var(--line)}
.footer-inner{max-width:var(--maxw);margin:0 auto}
.footer-statement{font-family:var(--display);font-weight:700;font-size:clamp(56px,9vw,160px);line-height:0.92;letter-spacing:-0.025em;margin-bottom:80px}
.footer-statement em{color:inherit}
.footer-cols{display:grid;grid-template-columns:1.6fr repeat(4,1fr);gap:60px;border-top:1px solid var(--line);padding-top:60px;margin-bottom:60px}
.footer-brand p{font-size:14px;line-height:1.6;color:var(--ink-2);margin-top:20px;max-width:34ch}
.footer-col h4{font-family:var(--mono);font-size:11px;letter-spacing:0.14em;text-transform:uppercase;color:var(--ink-3);margin-bottom:18px}
.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:10px}
.footer-col a{font-size:14.5px;color:var(--ink-2);transition:color 0.25s}
.footer-col a:hover{color:var(--accent-1)}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;font-family:var(--mono);font-size:11.5px;letter-spacing:0.08em;color:var(--ink-3);padding-top:32px;border-top:1px solid var(--line);flex-wrap:wrap;gap:20px}
.socials{display:flex;gap:24px}
.socials a{color:var(--ink-3);transition:color 0.25s}
.socials a:hover{color:var(--accent-1)}

/* ===== REVEAL ===== */
.reveal{opacity:0;transform:translateY(28px);transition:opacity 0.9s cubic-bezier(0.2,0.8,0.2,1),transform 0.9s cubic-bezier(0.2,0.8,0.2,1)}
.reveal.visible{opacity:1;transform:translateY(0)}
.reveal.d1{transition-delay:0.08s}.reveal.d2{transition-delay:0.16s}.reveal.d3{transition-delay:0.24s}.reveal.d4{transition-delay:0.32s}

/* ===== LOADER ===== */
.loader{position:fixed;inset:0;background:var(--bg);z-index:9999;display:flex;align-items:center;justify-content:center;transition:opacity 0.7s ease,visibility 0.7s ease}
.loader.hidden{opacity:0;visibility:hidden;pointer-events:none}
.loader-mark{width:72px;height:72px;background:url('loader-mark.svg') center/contain no-repeat;animation:loaderSpin 2.4s linear infinite}
@keyframes loaderSpin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}

/* ===== STAGGER FILL ===== */
.sf-w{opacity:.18;transition:opacity .5s ease}
.sf-w.sf-on{opacity:1}

/* ===== RESPONSIVE ===== */
@media (max-width:1280px){
  .nav-links{display:none}
  .manifesto,.section-header,.wibix-block{grid-template-columns:1fr;gap:36px}
  .hero-bottom{grid-template-columns:repeat(2,1fr);gap:24px}
  .phase{grid-template-columns:1fr;gap:18px}
  .work-grid{grid-template-columns:repeat(2,1fr)}
  .approach{grid-template-columns:1fr}
  .approach-card{border-right:none;border-bottom:1px solid var(--line);padding:0 0 28px}
  .block.light .approach-card,.block.paper .approach-card{border-bottom-color:var(--line-l)}
  .sectors,.values,.recognition{grid-template-columns:repeat(2,1fr)}
  .brands-row{grid-template-columns:repeat(2,1fr)}
  .insights{grid-template-columns:1fr}
  .footer-cols{grid-template-columns:1fr 1fr;gap:40px}
  .contact-row{grid-template-columns:1fr;gap:18px}
}
@media (max-width:880px){
  .form-contact-grid{grid-template-columns:1fr;gap:48px}
}
@media (max-width:640px){
  .check-cols{grid-template-columns:1fr}
}
@media (max-width:680px){
  nav.top{padding:18px 20px}
  .block,.contact-band{padding:90px 20px}
  .hero{padding:120px 20px 40px}
  .hero-bottom{grid-template-columns:1fr 1fr}
  .work-grid{grid-template-columns:1fr;gap:40px}
  .sectors,.values,.recognition,.brands-row{grid-template-columns:1fr}
  .footer-cols{grid-template-columns:1fr}
  .ticker-item{font-size:24px;gap:50px}
}

/* ============================================================
   MOBILE NAVIGATION + UX (added)
   ============================================================ */
.menu-btn{display:none;align-items:center;justify-content:center;width:46px;height:46px;margin:-6px -8px -6px 0;border:none;background:transparent;cursor:pointer;-webkit-tap-highlight-color:transparent;z-index:210}
.menu-btn .bars{position:relative;width:24px;height:14px}
.menu-btn .bars span{position:absolute;left:0;width:100%;height:2px;background:var(--ink);border-radius:2px;transition:transform 0.34s cubic-bezier(0.2,0.8,0.2,1),opacity 0.2s}
.menu-btn .bars span:nth-child(1){top:0}
.menu-btn .bars span:nth-child(2){top:6px}
.menu-btn .bars span:nth-child(3){top:12px}
body.menu-open .menu-btn .bars span:nth-child(1){transform:translateY(6px) rotate(45deg)}
body.menu-open .menu-btn .bars span:nth-child(2){opacity:0}
body.menu-open .menu-btn .bars span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

.mobile-menu{position:fixed;inset:0;z-index:205;display:none;flex-direction:column;padding:96px 24px 32px;background:rgba(11,11,13,0.97);backdrop-filter:blur(20px) saturate(140%);-webkit-backdrop-filter:blur(20px) saturate(140%);opacity:0;transform:translateY(-12px);transition:opacity 0.3s ease,transform 0.34s cubic-bezier(0.2,0.8,0.2,1);overflow-y:auto;overscroll-behavior:contain}
.mobile-menu.is-open{display:flex}
.mobile-menu.is-shown{opacity:1;transform:none}
.mm-links{list-style:none;display:flex;flex-direction:column;gap:2px;margin:0;padding:0}
.mm-links li{opacity:0;transform:translateY(14px);transition:opacity 0.4s ease,transform 0.4s cubic-bezier(0.2,0.8,0.2,1)}
body.menu-open .mm-links li{opacity:1;transform:none}
body.menu-open .mm-links li:nth-child(1){transition-delay:0.06s}
body.menu-open .mm-links li:nth-child(2){transition-delay:0.11s}
body.menu-open .mm-links li:nth-child(3){transition-delay:0.16s}
body.menu-open .mm-links li:nth-child(4){transition-delay:0.21s}
body.menu-open .mm-links li:nth-child(5){transition-delay:0.26s}
.mm-links a{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 4px;font-family:var(--display);font-weight:600;font-size:clamp(30px,9vw,46px);line-height:1;letter-spacing:-0.02em;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--line)}
.mm-links a .idx{font-family:var(--mono);font-size:12px;font-weight:400;letter-spacing:0.14em;color:var(--ink-3)}
.mm-links a:active{color:var(--accent-1)}
.mm-foot{margin-top:auto;padding-top:36px;display:flex;flex-direction:column;gap:24px}
.mm-cta{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:18px 24px;border-radius:999px;background:var(--ink);color:var(--bg);font-family:var(--sans);font-weight:600;font-size:17px;text-decoration:none}
.mm-lang{display:flex;gap:8px;flex-wrap:wrap}
.mm-lang button{flex:1;min-width:64px;min-height:46px;padding:12px;background:transparent;border:1px solid var(--line-2);border-radius:12px;font-family:var(--mono);font-size:12px;letter-spacing:0.1em;text-transform:uppercase;color:var(--ink-2);cursor:pointer;transition:background 0.2s,color 0.2s,border-color 0.2s}
.mm-lang button.active{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.mm-contact{font-family:var(--mono);font-size:11px;letter-spacing:0.08em;color:var(--ink-3);line-height:1.8}
.mm-contact a{color:var(--ink-2);text-decoration:none}

@media (max-width:1280px){
  .menu-btn{display:inline-flex}
  nav.top .nav-end{display:none}
}
@media (min-width:1281px){
  .mobile-menu{display:none !important}
}

/* mobile UX refinements */
@media (max-width:680px){
  .hero-meta{flex-direction:column;gap:14px}
  .hero-meta-r{text-align:left;max-width:100%}
  .hero-inner{gap:40px}
  .hero-h{margin-top:4px}
  .lede{font-size:17px}
  .eyebrow{margin-bottom:22px}
  .btn,.nav-cta{min-height:48px}
  footer{padding:80px 20px 36px}
  .footer-statement{margin-bottom:48px}
}
@media (max-width:480px){
  .hero-bottom{grid-template-columns:1fr 1fr;gap:18px}
}
