/* WIBAA — native Studio interpretation of the supplied Modernist brief. */
:root {
  color-scheme: dark;
  --canvas: #000000;
  --surface: #101010;
  --surface-2: #191919;
  --border: #292929;
  --border-strong: #666666;
  --ink: #ffffff;
  --muted: #999999;
  --accent: #ff3636;
  --accent-hover: #e52b2b;
  --accent-ink: #000000;
  --accent-text: #ff3636;
  --accent-strong: #ff8f8f;
  --accent-soft: #310c0c;
  --accent-border: #802323;
  --success: #15803d;
  --success-ink: #ffffff;
  --success-soft: #10271a;
  --success-strong: #80dda2;
  --warning: #b45309;
  --warning-ink: #ffffff;
  --warning-soft: #302014;
  --warning-strong: #f1b26a;
  --danger: #b91c1c;
  --danger-ink: #ffffff;
  --danger-soft: #2f1111;
  --danger-strong: #ffa0a0;
  --chart-1: #ff3636;
  --chart-2: #ff8f8f;
  --chart-3: #d0d0d0;
  --chart-4: #999999;
  --chart-5: #666666;
  --chart-6: #ffffff;
  --font-display: "Archivo", sans-serif;
  --font-body: "Archivo", sans-serif;
  --font-sans: "Archivo", sans-serif;
  --font-mono: "Archivo", monospace;
  --display-weight: 800;
  --display-tracking: -.035em;
  --eyebrow-tracking: .02em;
  --radius-btn: 8px;
  --radius-card: 8px;
  --radius-input: 0px;
  --border-w: 1px;
  --border-strong-w: 1px;
  --shadow-card: 0 4px 16px rgba(0,0,0,.15);
  --shadow-raised: 0 8px 24px rgba(0,0,0,.2);
  --shadow-btn: none;
  --card-pad: 10px;
  --caps: none;
  --caps-tracking: .08em;
  --btn-weight: 400;
  --measure: 38ch;
  --x-black: #000000;
  --x-white: #ffffff;
  --x-explore: #FFB2B2;
  --x-heading: "Archivo", sans-serif;
  --x-page-pad: clamp(20px,5vw,64px);
  --gradient-hero: linear-gradient(180deg,transparent 0%,transparent 68%,rgba(0,0,0,.6) 100%);
}
html[data-theme="dark"] {
  color-scheme: dark;
  --canvas: #000000;
  --surface: #101010;
  --surface-2: #191919;
  --border: #292929;
  --border-strong: #666666;
  --ink: #ffffff;
  --muted: #999999;
  --accent: #ff3636;
  --accent-hover: #e52b2b;
  --accent-ink: #000000;
  --accent-text: #ff3636;
  --accent-strong: #ff8f8f;
  --accent-soft: #310c0c;
  --accent-border: #802323;
  --success: #15803d;
  --success-ink: #ffffff;
  --success-soft: #10271a;
  --success-strong: #80dda2;
  --warning: #b45309;
  --warning-ink: #ffffff;
  --warning-soft: #302014;
  --warning-strong: #f1b26a;
  --danger: #b91c1c;
  --danger-ink: #ffffff;
  --danger-soft: #2f1111;
  --danger-strong: #ffa0a0;
  --chart-1: #ff3636;
  --chart-2: #ff8f8f;
  --chart-3: #d0d0d0;
  --chart-4: #999999;
  --chart-5: #666666;
  --chart-6: #ffffff;
  --font-display: "Archivo", sans-serif;
  --font-body: "Archivo", sans-serif;
  --font-sans: "Archivo", sans-serif;
  --font-mono: "Archivo", monospace;
  --display-weight: 800;
  --display-tracking: -.035em;
  --eyebrow-tracking: .02em;
  --radius-btn: 8px;
  --radius-card: 8px;
  --radius-input: 0px;
  --border-w: 1px;
  --border-strong-w: 1px;
  --shadow-card: 0 4px 16px rgba(0,0,0,.15);
  --shadow-raised: 0 8px 24px rgba(0,0,0,.2);
  --shadow-btn: none;
  --card-pad: 10px;
  --caps: none;
  --caps-tracking: .08em;
  --btn-weight: 400;
  --measure: 38ch;
  --x-black: #000000;
  --x-white: #ffffff;
  --x-explore: #FFB2B2;
  --x-heading: "Archivo", sans-serif;
  --x-page-pad: clamp(20px,5vw,64px);
  --gradient-hero: linear-gradient(180deg,transparent 0%,transparent 68%,rgba(0,0,0,.6) 100%);
}
html[data-theme="light"] {
  color-scheme: dark;
  --canvas: #000000;
  --surface: #101010;
  --surface-2: #191919;
  --border: #292929;
  --border-strong: #666666;
  --ink: #ffffff;
  --muted: #999999;
  --accent: #ff3636;
  --accent-hover: #e52b2b;
  --accent-ink: #000000;
  --accent-text: #ff3636;
  --accent-strong: #ff8f8f;
  --accent-soft: #310c0c;
  --accent-border: #802323;
  --success: #15803d;
  --success-ink: #ffffff;
  --success-soft: #10271a;
  --success-strong: #80dda2;
  --warning: #b45309;
  --warning-ink: #ffffff;
  --warning-soft: #302014;
  --warning-strong: #f1b26a;
  --danger: #b91c1c;
  --danger-ink: #ffffff;
  --danger-soft: #2f1111;
  --danger-strong: #ffa0a0;
  --chart-1: #ff3636;
  --chart-2: #ff8f8f;
  --chart-3: #d0d0d0;
  --chart-4: #999999;
  --chart-5: #666666;
  --chart-6: #ffffff;
  --font-display: "Archivo", sans-serif;
  --font-body: "Archivo", sans-serif;
  --font-sans: "Archivo", sans-serif;
  --font-mono: "Archivo", monospace;
  --display-weight: 800;
  --display-tracking: -.035em;
  --eyebrow-tracking: .02em;
  --radius-btn: 8px;
  --radius-card: 8px;
  --radius-input: 0px;
  --border-w: 1px;
  --border-strong-w: 1px;
  --shadow-card: 0 4px 16px rgba(0,0,0,.15);
  --shadow-raised: 0 8px 24px rgba(0,0,0,.2);
  --shadow-btn: none;
  --card-pad: 10px;
  --caps: none;
  --caps-tracking: .08em;
  --btn-weight: 400;
  --measure: 38ch;
  --x-black: #000000;
  --x-white: #ffffff;
  --x-explore: #FFB2B2;
  --x-heading: "Archivo", sans-serif;
  --x-page-pad: clamp(20px,5vw,64px);
  --gradient-hero: linear-gradient(180deg,transparent 0%,transparent 68%,rgba(0,0,0,.6) 100%);
}

/* WIBAA's native Studio page composition. All colour values resolve through theme tokens. */
html { background:var(--canvas); }
body.wibaa-page { margin:0; text-wrap:pretty; background:var(--canvas); color:var(--ink); font-family:var(--font-body); }
.wibaa-page *, .wibaa-page *::before, .wibaa-page *::after { box-sizing:border-box; }
.wibaa-page a { color:var(--accent-text); text-decoration:none; }
.wibaa-page a:hover { color:var(--accent-hover); }
.wibaa-page a:focus-visible { outline:2px solid var(--accent); outline-offset:5px; }
.wibaa-page h1,.wibaa-page h2,.wibaa-page h3,.wibaa-page p { margin:0; }
.wibaa-page section { background:var(--canvas); }
.wibaa-page img { display:block; }
[data-wibaa-reveal] { opacity:0; transform:translateY(20px); transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1); }
[data-wibaa-reveal][data-shown] { opacity:1; transform:none; }
[data-mask] { clip-path:inset(0 0 100% 0); transition:clip-path 1.15s cubic-bezier(.76,0,.24,1); }
[data-mask][data-shown] { clip-path:inset(0 0 0% 0); }
[data-preload-mark] { opacity:0; transform:translateY(40px); transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1); }
[data-preload-mark][data-shown] { opacity:1; transform:none; }
.reveal-d1 { transition-delay:.1s; }
.reveal-d15 { transition-delay:.15s; }
.reveal-d2 { transition-delay:.2s; }
#preloader { position:fixed; inset:0; z-index:9999; background:var(--canvas); padding:var(--x-page-pad); display:flex; flex-direction:column; justify-content:flex-end; transition:transform 1.05s cubic-bezier(.76,0,.24,1); animation:preload-safety .01s step-end 5s forwards; }
#preloader.is-leaving { transform:translateY(-101%); }
@keyframes preload-safety { to { transform:translateY(-101%); visibility:hidden; pointer-events:none; } }
.preload-row { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; }
[data-preload-mark] { font-family:var(--font-display); font-weight:800; font-size:clamp(48px,9vw,150px); line-height:.82; letter-spacing:-.035em; color:var(--accent); }
#preload-counter { font-family:var(--font-display); font-weight:400; font-size:clamp(28px,4vw,56px); line-height:1; color:var(--x-white); font-variant-numeric:tabular-nums; }
.preload-rule { height:1px; background:rgba(255,255,255,.18); margin-top:clamp(18px,3vw,28px); }
#preload-fill { display:block; width:0; height:100%; background:var(--accent); }
#cursor-trail { position:fixed; inset:0; pointer-events:none; z-index:55; overflow:hidden; filter:blur(8px) contrast(22); mix-blend-mode:difference; opacity:0; }
#cursor-trail.is-active { opacity:1; }
#cursor-trail i { position:absolute; left:0; top:0; background:var(--x-white); border-radius:50%; width:30px; height:30px; }
#cursor-trail i:nth-child(2) { width:24px;height:24px; }
#cursor-trail i:nth-child(3) { width:19px;height:19px; }
#cursor-trail i:nth-child(4) { width:15px;height:15px; }
#cursor-trail i:nth-child(5) { width:11px;height:11px; }
#home { position:relative; overflow:hidden; }
.hero-frame { width:100%; height:clamp(600px,94vh,1000px); position:relative; }
.hero-video { position:absolute; inset:0; display:block; }
.hero-video video { width:100%; height:100%; object-fit:cover; display:block; }
.hero-gradient { position:absolute; inset:0; pointer-events:none; background:var(--gradient-hero); }
.topbar { position:absolute; top:0; left:0; right:0; display:flex; align-items:flex-start; justify-content:space-between; flex-wrap:nowrap; gap:clamp(8px,2vw,16px); padding:8px var(--x-page-pad) 0; }
.wibaa-page .logo-lockup { display:flex; align-items:flex-start; gap:8px; flex:none; color:var(--accent); }
.logo-lockup>span:first-child { font-family:var(--font-display); font-weight:800; font-size:clamp(64px,10.5vw,190px); letter-spacing:-.035em; line-height:.82; }
.registered { display:flex; align-items:center; justify-content:center; width:22px; height:22px; border:1.5px solid var(--x-white); border-radius:50%; font-size:11px; margin-top:6px; color:var(--x-white); line-height:1; }
.topnav { display:flex; align-items:center; gap:clamp(6px,1.3vw,26px); flex-wrap:nowrap; font-size:clamp(9px,1.05vw,12px); font-weight:400; margin-top:6px; }
.wibaa-page .topnav a { color:var(--x-black); display:inline-flex; align-items:baseline; white-space:nowrap; }
.topnav sup { color:rgba(0,0,0,.5); font-size:.6em; margin-left:2px; position:relative; top:-.4em; }
.ceo-card { display:flex; gap:14px; align-items:center; background:var(--x-white); border-radius:8px; padding:10px; width:255px; max-width:255px; flex:none; box-shadow:var(--shadow-raised); }
.ceo-photo { width:92px; height:104px; border-radius:8px; overflow:hidden; flex:none; }
.ceo-photo img { width:100%;height:100%;object-fit:cover; }
.ceo-card h2 { font-family:var(--font-display); font-weight:800; font-size:14px; color:var(--x-black); white-space:nowrap; margin:0 0 4px; }
.ceo-card p { font-size:10.5px; line-height:1.35; color:rgba(0,0,0,.55); max-width:190px; margin:0 0 8px; }
.wibaa-page .ceo-work { font-size:10px; padding:5px 11px; border-radius:8px; min-height:0; height:auto; line-height:1.2; background:var(--accent); color:var(--x-black); font-weight:400; border:0; }
.wibaa-page .ceo-work:hover { background:var(--accent-hover); }
.hero-headline { position:absolute; top:clamp(230px,30vh,320px); right:var(--x-page-pad); text-align:left; }
.hero-headline h1 { font-family:var(--font-display); font-weight:500; font-size:46px; line-height:1.06; letter-spacing:-.02em; color:var(--x-black); }
.hero-headline h1 span { color:rgba(0,0,0,.5); }
.hero-quote { position:absolute; left:var(--x-page-pad); bottom:96px; font-family:var(--font-display); font-weight:500; font-size:28px; line-height:1.22; color:var(--x-white); }
.hero-quote span { color:rgba(255,255,255,.5); }
.logo-strip { position:absolute; left:var(--x-page-pad); bottom:32px; display:flex; align-items:center; gap:clamp(20px,3vw,40px); flex-wrap:wrap; }
.logo-strip[data-shown] { opacity:.85; }
.logo-strip img { height:22px; width:auto; filter:brightness(0) invert(1); }
.wibaa-page .explore { position:absolute; right:var(--x-page-pad); bottom:32px; display:inline-flex; align-items:center; gap:8px; font-size:13px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--x-explore); }
.hero-cross { position:absolute; right:clamp(100px,14vw,180px); bottom:80px; color:var(--accent); }
.meta-bar { display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px; border-bottom:2px solid rgba(255,255,255,.14); font-size:14px; font-weight:500; color:color-mix(in srgb,var(--ink) 70%,transparent); }
.meta-bar>span:first-child { display:inline-flex; align-items:center; }
.meta-bar i { width:8px;height:8px;display:inline-block;transform:rotate(45deg);background:var(--accent);margin-right:10px; }
.about-meta { padding:48px var(--x-page-pad) 20px; }
.intro-grid { display:grid; grid-template-columns:minmax(90px,160px) minmax(280px,1fr); gap:clamp(20px,4vw,48px); padding:clamp(48px,8vw,96px) var(--x-page-pad); }
.about-label { font-size:14px;letter-spacing:.02em;color:color-mix(in srgb,var(--ink) 55%,transparent); }
.intro-copy { margin-left:auto!important; max-width:38ch; text-align:left; text-indent:2em; font-family:var(--font-display); font-weight:400; font-size:24px;line-height:1.34;letter-spacing:-.01em; }
.intro-copy span { opacity:.45; transition:opacity .45s cubic-bezier(.16,1,.3,1); }
.feature-grid { display:grid; grid-template-columns:minmax(420px,1.5fr) minmax(260px,.7fr); gap:clamp(40px,6vw,96px);align-items:start;padding:clamp(24px,4vw,40px) var(--x-page-pad) clamp(32px,5vw,56px); }
.feature-row { display:grid;grid-template-columns:minmax(110px,150px) minmax(0,1fr);gap:56px;padding:16px 0; }
.feature-row h2 { font-family:var(--font-display);font-weight:400;font-size:28px;white-space:nowrap;color:var(--ink);line-height:1.2; }
.feature-row h2 span { color:color-mix(in srgb,var(--ink) 45%,transparent);font-weight:400; }
.feature-row p { font-size:16px;line-height:1.5;max-width:430px;color:color-mix(in srgb,var(--ink) 55%,transparent); }
.stat-list { max-width:430px; }
.stat-list>div { display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.16);font-size:15px; }
.stat-list>div>span:first-child { font-weight:400;color:var(--ink); }
.stat-list>div>span:last-child { color:color-mix(in srgb,var(--ink) 55%,transparent); }
.project-cta { display:grid;grid-template-columns:minmax(110px,150px) minmax(0,1fr);gap:56px;margin-top:clamp(40px,6vw,72px);font-family:var(--font-display);font-weight:400;font-size:17px; }
.project-cta a { display:flex;justify-content:space-between;align-items:center;max-width:430px;padding-bottom:12px;border-bottom:1px solid var(--accent); }
.vision-title { transition-delay:0s; }.vision-copy { transition-delay:.14s; }.design-title { transition-delay:.3s; }.design-copy { transition-delay:.44s; }.results-title { transition-delay:.6s; }.stat-list { transition-delay:.74s; }.project-cta { transition-delay:.92s; }.vision-photo,.portrait-mask { transition-delay:1.1s; }
.vision-photo { width:100%;max-width:480px;margin-left:auto; }
.portrait-mask { display:block;border-radius:8px;overflow:hidden; }
.portrait-mask img { width:100%;aspect-ratio:4/5;object-fit:cover; }
.portfolio-meta { padding:clamp(80px,12vw,160px) var(--x-page-pad) 20px; }
.meta-center { color:color-mix(in srgb,var(--ink) 55%,transparent); }
.portfolio-grid { position:relative;display:grid;grid-template-columns:minmax(240px,340px) minmax(280px,1fr);gap:clamp(32px,5vw,64px);align-items:start;padding:clamp(48px,8vw,96px) var(--x-page-pad) clamp(24px,4vw,40px); }
.portfolio-intro h2 { font-family:var(--font-display);font-weight:700;font-size:clamp(26px,3vw,40px);letter-spacing:-.01em;line-height:.86;color:var(--ink);margin:0 0 24px; }
.wibaa-page .portfolio-intro a { display:flex;justify-content:space-between;align-items:center;padding:16px 0 10px;border-top:1px solid rgba(255,255,255,.2);border-bottom:1px solid rgba(255,255,255,.2);color:color-mix(in srgb,var(--ink) 85%,transparent);font-size:16px;font-weight:400;max-width:280px; }
.work-stack { display:flex;flex-direction:column;gap:clamp(32px,5vw,56px);margin-top:.12em;min-width:0; }
.work-stack[data-shown] { transform:none; }
.work-card { position:sticky;background:var(--canvas);padding-bottom:20px;width:100%;max-width:520px; }
.work-card-1 { top:88px;z-index:1; }.work-card-2 { top:112px;z-index:2; }.work-card-3 { top:136px;z-index:3; }
.work-mask { display:block;border-radius:8px;overflow:hidden; }
.work-mask img { width:100%;aspect-ratio:16/10;object-fit:cover; }
.work-caption { display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding-top:20px;flex-wrap:wrap; }
.work-caption>span { font-size:13px;color:color-mix(in srgb,var(--ink) 55%,transparent); }
.work-caption>div { text-align:center; }
.work-caption h3 { font-family:var(--font-display);font-weight:700;font-size:18px;color:var(--ink); }
.work-caption p { font-size:11px;color:color-mix(in srgb,var(--ink) 55%,transparent);margin-top:3px; }
.see-all-row { display:flex;justify-content:flex-end;padding:clamp(28px,4vw,48px) var(--x-page-pad) clamp(48px,7vw,80px); }
.wibaa-page .see-all { display:flex;align-items:center;gap:22px;background:var(--x-white);color:var(--x-black);border-radius:6px;padding:6px 34px 6px 6px;width:160px;box-sizing:border-box; }
.see-all img { width:48px;height:48px;border-radius:12px;object-fit:cover;flex:none; }
.see-all span { font-family:var(--font-display);font-size:13px;font-weight:400;white-space:nowrap; }
#contact { overflow:hidden; }
.contact-grid { display:grid;grid-template-columns:minmax(280px,1.3fr) minmax(260px,1fr);gap:clamp(32px,6vw,80px);padding:clamp(56px,9vw,120px) var(--x-page-pad) clamp(40px,6vw,64px); }
.contact-left { display:flex;flex-direction:column;gap:clamp(20px,3vw,32px); }
.contact-words h2 { font-family:var(--font-display);font-weight:800;font-size:clamp(20px,2.2vw,32px);line-height:1.15;color:color-mix(in srgb,var(--ink) 45%,transparent); }
.contact-email { font-family:var(--font-display);font-weight:800;font-size:clamp(19px,2.2vw,32px);line-height:1.15;color:var(--ink);overflow-wrap:anywhere;margin-top:8px!important; }
[data-word-reveal] span { display:inline-block;text-indent:0;opacity:0;transform:translateY(.45em);transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1); }
[data-word-reveal][data-shown] span { opacity:1;transform:none; }
.contact-email span { max-width:100%;overflow-wrap:anywhere; }
.wibaa-page .contact-now { display:inline-flex;justify-content:space-between;align-items:center;gap:16px;max-width:260px;padding-bottom:10px;border-bottom:1px solid color-mix(in srgb,var(--ink) 35%,transparent);font-size:13px;font-weight:600;color:var(--ink); }
.contact-right { display:flex;flex-direction:column; }
.footer-nav a { display:flex;justify-content:space-between;align-items:baseline;padding:9px 0;border-bottom:1px solid color-mix(in srgb,var(--ink) 18%,transparent);font-size:12.5px;color:var(--ink); }
.footer-nav sup { font-size:.55em;color:color-mix(in srgb,var(--ink) 55%,transparent); }
.cross-bar { margin-top:24px;display:flex;justify-content:space-between;padding:10px clamp(16px,3vw,28px);background:var(--accent);color:var(--ink); }
.footer-divider { border-top:1px solid color-mix(in srgb,var(--ink) 16%,transparent);margin:0 var(--x-page-pad); }
.footer-bottom { display:flex;justify-content:space-between;align-items:flex-end;padding:0 var(--x-page-pad); }
.footer-brand { font-family:var(--font-display);font-weight:800;font-size:clamp(90px,17vw,260px);line-height:.78;letter-spacing:-.03em;color:var(--accent);margin-top:clamp(8px,2vw,24px); }
.footer-details { display:flex;align-items:center;gap:14px;padding-bottom:clamp(20px,3vw,36px);font-size:14px;color:color-mix(in srgb,var(--ink) 60%,transparent);flex:none; }
.equalizer { display:flex;align-items:flex-end;gap:3px;height:22px; }
.equalizer i { width:2px;background:color-mix(in srgb,var(--ink) 45%,transparent);height:40%; }
.equalizer i:nth-child(2) { height:70%; }.equalizer i:nth-child(3) { height:100%; }.equalizer i:nth-child(4) { height:55%; }.equalizer i:nth-child(5) { height:80%; }.equalizer i:nth-child(6) { height:35%; }.equalizer i:nth-child(7) { height:65%; }
/* The desktop brief becomes a legible single-column composition on small screens. */
@media(max-width:1100px) { .feature-grid { grid-template-columns:minmax(360px,1.5fr) minmax(220px,.7fr);gap:40px; }.feature-row,.project-cta { grid-template-columns:140px minmax(0,1fr);gap:24px; }.feature-row p { font-size:14px; }.feature-row p br { display:none; }.ceo-card { width:230px;gap:10px; }.ceo-photo { width:72px; }.topnav { gap:8px; } }
@media(max-width:800px) { .feature-grid { grid-template-columns:1fr; }.vision-photo { max-width:480px;margin-left:auto;width:75%; }.feature-row p { font-size:16px; }.portfolio-grid { grid-template-columns:minmax(160px,.6fr) minmax(280px,1fr);gap:28px; }.contact-grid { grid-template-columns:1fr 1fr;gap:28px; }.ceo-card { position:absolute;top:98px;left:var(--x-page-pad);width:205px;gap:8px; }.ceo-photo { width:56px;height:94px; }.ceo-card h2 { font-size:12px; }.ceo-card p { font-size:9.5px; }.topbar { gap:8px; }.logo-lockup>span:first-child { font-size:clamp(64px,10vw,85px); }.registered { width:17px;height:17px;font-size:9px; }.topnav { gap:6px;font-size:9px; }.intro-grid { grid-template-columns:100px minmax(0,1fr); }.footer-details { font-size:12px;gap:9px; } }
@media(max-width:600px) { .hero-frame { min-height:780px; }.topbar { flex-wrap:wrap; }.logo-lockup>span:first-child { font-size:64px; }.topnav { margin-top:8px;gap:10px;font-size:10px; }.ceo-card { position:absolute;top:98px;left:var(--x-page-pad);width:255px;max-width:255px;gap:14px; }.ceo-photo { width:92px;height:104px; }.ceo-card h2 { font-size:14px; }.ceo-card p { font-size:10.5px; }.hero-headline { top:285px; }.hero-quote { font-size:24px;bottom:140px; }.logo-strip { bottom:78px;gap:20px; }.logo-strip img { height:18px;max-width:90px; }.explore { bottom:28px!important; }.hero-cross { bottom:72px;right:30px; }.intro-grid { grid-template-columns:1fr;gap:24px; }.intro-copy { font-size:24px; }.feature-row,.project-cta { grid-template-columns:1fr;gap:16px; }.feature-row { padding:20px 0; }.project-cta>span { display:none; }.vision-photo { width:100%; }.portfolio-grid { grid-template-columns:1fr;gap:40px; }.portfolio-intro a { max-width:100%!important; }.work-card { max-width:100%; }.work-caption h3 { font-size:16px; }.work-caption>span { font-size:11px; }.contact-grid { grid-template-columns:1fr;gap:48px; }.contact-words h2 { font-size:24px; }.contact-email { font-size:24px; }.footer-bottom { flex-wrap:wrap;row-gap:24px; }.footer-brand { font-size:clamp(90px,23vw,150px); }.footer-details { margin-left:auto; }.portfolio-meta { gap:10px;font-size:12px; } }
@media(pointer:coarse),(prefers-reduced-motion:reduce) { #cursor-trail { display:none!important; } }
@media(prefers-reduced-motion:reduce) { [data-wibaa-reveal],[data-preload-mark],[data-word-reveal] span { opacity:1!important;transform:none!important;transition:none!important; }[data-mask] { clip-path:none!important;transition:none!important; }.intro-copy span { opacity:1!important;transition:none!important; }[data-wibaa-parallax] { transform:none!important; }#preloader { display:none!important; } }

/* EthosFortress: supplied monochrome logo, tinted with the page's existing accent. */
.brand-art { display:block; background:var(--accent); -webkit-mask-image:url('/photos/ethosfortress-logo.png'); mask-image:url('/photos/ethosfortress-logo.png'); -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat; -webkit-mask-position:center; mask-position:center; -webkit-mask-size:contain; mask-size:contain; }
.brand-art img { width:100%;height:auto;opacity:0; }
.header-brand { width:clamp(220px,29vw,440px); }
.preload-brand { width:clamp(180px,48vw,800px);flex-shrink:1; }
.footer-brand.brand-art { width:min(74%,900px);font-size:inherit;line-height:normal;margin-bottom:clamp(16px,3vw,36px); }
@media(max-width:800px) { .header-brand { width:220px; } }
@media(max-width:600px) { .header-brand { width:220px; }.footer-brand.brand-art { width:100%;margin-top:24px;margin-bottom:0; } }
