/* Daylight editorial mode: paper, ink and restrained case accents. */
html[data-theme="light"] { color-scheme: light; }
html[data-theme="light"] body {
  --basalt:#f4f0e7; --stone-900:#fffdf8; --stone-800:#eee7db;
  --stone-700:#d4cabb; --stone-600:#a99c89; --stone-400:#665f54;
  --bone:#1e292b; --bone-400:#445053; --ink:#1e292b; --ink-600:#536063;
  --filament:#92511d; --filament-ink:#78400f; --filament-stroke:#a15a20;
  --glass-fill:rgba(255,253,248,.94); --glass-edge:rgba(30,41,43,.18);
  --elev-pane:0 16px 40px -24px rgba(30,41,43,.25);
  --elev-plate:0 28px 56px -40px rgba(30,41,43,.26);
  background:var(--basalt); color:var(--bone);
}
html[data-theme="light"] body[data-case="gopro"] {
  --filament:#09678b; --filament-ink:#075d80; --filament-stroke:#0a7196;
}
html[data-theme="light"] .site-main,
html[data-theme="light"] .home-work { background-color:var(--basalt); }
html[data-theme="light"] .home-work { background-image:radial-gradient(circle at 83% 7%,rgba(146,81,29,.07),transparent 32%); }
html[data-theme="light"] .work-card { box-shadow:0 14px 38px -32px rgba(30,41,43,.35); }
html[data-theme="light"] .work-card__link:hover { background:rgba(146,81,29,.06); }
html[data-theme="light"] .plate--paper,
html[data-theme="light"] .ev--b { background:#fffdf8; color:#1e292b; }
html[data-theme="light"] .plate--paper .muted,
html[data-theme="light"] .plate--paper .meta { color:#536063; }
html[data-theme="light"] .plate--stone { background:#fffdf8; }
html[data-theme="light"] .mine { color:var(--bone); }

/* Media-led openings remain dark chapters, with light content following them. */
html[data-theme="light"] .intro-hero,
html[data-theme="light"] .pax-hero,
html[data-theme="light"] .gopro-hero,
html[data-theme="light"] .hero-transition,
html[data-theme="light"] .threshold {
  --bone:#f2f0eb; --bone-400:#cbc8c1; --stone-400:#b6b3ad;
  --basalt:#0a0a0b; color:var(--bone);
}
html[data-theme="light"] .gopro-hero,
html[data-theme="light"] body[data-case="gopro"] .hero-transition { --basalt:#05070a; --bone:#f2f6f8; --bone-400:#c8d2d8; }
html[data-theme="light"] .pax-hero { --filament:#f0b25a; }
html[data-theme="light"] .gopro-hero,
html[data-theme="light"] body[data-case="gopro"] .hero-transition { --filament:#25b8f2; }
html[data-theme="light"] .site-header { color:#f2f0eb; }
html[data-theme="light"] .site-header { --filament:#f0b25a; }
html[data-theme="light"] body[data-case="gopro"] .site-header { --filament:#25b8f2; }
html[data-theme="light"] .site-header .glass-nav { background:rgba(10,10,11,.62); border-color:rgba(255,255,255,.2); }
html[data-theme="light"] .site-header .glass-nav__item { color:#d1d1cf; }
html[data-theme="light"] .site-header .glass-nav__item.is-active { background:rgba(255,255,255,.13); color:#fff; }
html[data-theme="light"] .site-header .case-context { color:#f2f0eb; }
html[data-theme="light"] .site-header .wordmark--signature img { mix-blend-mode:normal; }

/* A quiet print-like close instead of a second dark feature panel. */
html[data-theme="light"] .signals { background:#e8e1d5; color:#465054; }
html[data-theme="light"] .signals__glow { background:radial-gradient(closest-side,rgba(146,81,29,.12),transparent); }
html[data-theme="light"] .signals__body b,
html[data-theme="light"] .signals__mission span { color:#1e292b; }
html[data-theme="light"] .signals__foot { border-color:#c9bdad; }
html[data-theme="light"] .signals__mission { color:#465054; }
html[data-theme="light"] .signals__learn-more { color:#1e292b; }
html[data-theme="light"] .signals__learn-more:hover { color:#92511d; }
html[data-theme="light"] .signals__learn-more:focus-visible { outline-color:#92511d; }
html[data-theme="light"] .signals__cta { border-color:#92511d; color:#1e292b; }
html[data-theme="light"] .signals__cta:hover { background:rgba(146,81,29,.1); }
html[data-theme="light"] .signals__cta:focus-visible { outline-color:#92511d; }

.theme-toggle { display:none; align-items:center; justify-content:center; min-height:44px; min-width:100px; padding:8px 14px; border:1px solid rgba(255,255,255,.3); border-radius:999px; background:rgba(10,10,11,.66); color:#fff; font:500 11px/1.2 var(--mono); letter-spacing:.08em; text-transform:uppercase; cursor:pointer; backdrop-filter:blur(18px); -webkit-backdrop-filter:blur(18px); }
.js .theme-toggle { display:flex; }
.theme-toggle:hover { background:rgba(10,10,11,.9); }
.theme-toggle:focus-visible { outline:2px solid #fff; outline-offset:3px; }
.site-header>.theme-toggle { margin-left:auto; }
.site-header:has(.global-nav)>.theme-toggle { margin-left:auto; }
@media(max-width:899px) { .theme-toggle { min-width:44px; padding:8px 12px; } }

/* Home's metal pull cord stays within reach after the opening sequence. */
.js body[data-page="home"] .theme-toggle--cord {
  position:fixed;top:0;right:var(--margin);display:block;width:64px;height:174px;
  min-width:64px;min-height:174px;margin:0;padding:0;border:0;border-radius:0;
  background:none;backdrop-filter:none;-webkit-backdrop-filter:none;
  visibility:hidden;pointer-events:none;touch-action:manipulation;
}
.js body[data-page="home"] .theme-toggle--cord.is-visible {
  visibility:visible;pointer-events:auto;animation:cord-arrive 1.65s both;
}
.theme-toggle--cord:hover { background:none; }
.theme-toggle--cord .theme-cord {
  position:absolute;top:0;left:50%;display:block;width:40px;height:158px;
  transform:translateX(-50%);transform-origin:50% 0;
}
.theme-toggle--cord.is-visible .theme-cord {
  animation:cord-settle 2.1s 1.05s both;
}
.theme-cord__strand {
  position:absolute;top:0;left:17px;width:6px;height:128px;
  border-radius:0 0 3px 3px;
  background:linear-gradient(90deg,#34383c 0%,#8c969b 19%,#eef0ed 43%,#9ba5a9 58%,#353b40 100%);
  box-shadow:1px 0 2px rgba(0,0,0,.5),inset -1px 0 1px rgba(0,0,0,.3);
}
.theme-cord__ball {
  position:absolute;top:119px;left:0;width:40px;height:40px;border-radius:50%;
  border:1px solid #4b555b;
  background:radial-gradient(circle at 31% 24%,#f7f8f4 0%,#c5cbcc 13%,#8b989e 32%,#48545b 62%,#1d2429 100%);
  box-shadow:inset -3px -5px 8px rgba(0,0,0,.35),inset 2px 2px 3px rgba(255,255,255,.55),0 7px 11px rgba(0,0,0,.48);
}
.theme-toggle--cord:focus-visible { outline:none; }
.theme-toggle--cord:focus-visible .theme-cord__ball { outline:3px solid #f0b25a;outline-offset:5px; }
.theme-toggle--cord.is-tugging .theme-cord { animation:cord-tug .72s ease-out both; }
@keyframes cord-arrive {
  0% { transform:translateY(-190px); }
  48% { transform:translateY(22px); }
  67% { transform:translateY(-10px); }
  81% { transform:translateY(5px); }
  92% { transform:translateY(-2px); }
  100% { transform:translateY(0); }
}
@keyframes cord-settle {
  0%,100% { transform:translateX(-50%) rotate(0); }
  22% { transform:translateX(-50%) rotate(5deg); }
  47% { transform:translateX(-50%) rotate(-2.7deg); }
  68% { transform:translateX(-50%) rotate(1.2deg); }
  84% { transform:translateX(-50%) rotate(-.4deg); }
}
@keyframes cord-tug {
  0%,100% { transform:translateX(-50%) translateY(0) rotate(0); }
  23% { transform:translateX(-50%) translateY(13px) rotate(2deg); }
  48% { transform:translateX(-50%) translateY(-5px) rotate(-1deg); }
  70% { transform:translateX(-50%) translateY(2px) rotate(.4deg); }
}
@media(max-width:899px) {
  .js body[data-page="home"] .theme-toggle--cord { right:12px;width:64px;min-width:64px; }
}
@media(prefers-reduced-motion:reduce) {
  .js body[data-page="home"] .theme-toggle--cord.is-visible,
  .theme-toggle--cord.is-visible .theme-cord,
  .theme-toggle--cord.is-tugging .theme-cord { animation:none; }
}
