/*
 * TF3 Fieldnotes visual v8 — P0 only
 * Scope: shared masthead and homepage hero, edition bar, quick-entry cards.
 * Reversible layer loaded after polish.css. No markup, copy, route, or ad changes.
 */

/* Shared masthead: glass, signal line, and clear controls in both themes. */
header{
  position:sticky;
  top:0;
  z-index:40;
  isolation:isolate;
  backdrop-filter:blur(18px) saturate(145%);
  -webkit-backdrop-filter:blur(18px) saturate(145%);
  transition:background-color .25s ease,border-color .25s ease;
}
header::after{
  content:"";
  position:absolute;
  z-index:-1;
  left:0;
  right:0;
  bottom:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,122,69,.58) 24%,rgba(201,162,39,.48) 72%,transparent);
  pointer-events:none;
}
html[data-theme="dark"] header{
  color:#edf2f6;
  background:rgba(8,15,20,.84);
  border-color:rgba(214,226,235,.12);
  box-shadow:0 8px 24px rgba(0,0,0,.12);
}
html[data-theme="dark"] header .brand,
html[data-theme="dark"] header nav a,
html[data-theme="dark"] header .navsearch,
html[data-theme="dark"] header .theme-preferences span{color:#e8eef2}
html[data-theme="dark"] header nav a:hover,
html[data-theme="dark"] header nav a.active{color:#ffb18c}
html[data-theme="dark"] header .brandmark{
  color:#111820;
  background:#ff7a45;
  box-shadow:0 0 18px rgba(255,122,69,.22);
}
html[data-theme="dark"] header .language-menu summary{
  color:#ffd0b8;
  border-color:rgba(255,122,69,.72);
  background:rgba(255,122,69,.07);
}
html[data-theme="dark"] header .theme-preferences,
html[data-theme="dark"] header .navsearch{
  border-color:rgba(230,238,244,.2);
  background:rgba(255,255,255,.025);
}
html[data-theme="dark"] header .theme-preferences input:checked+span{
  background:#ff7a45;
  color:#111820;
}
html[data-theme="light"] header{
  color:#15202a;
  background:rgba(246,241,230,.88);
  border-color:rgba(90,72,42,.16);
  box-shadow:0 8px 24px rgba(36,28,16,.08);
}
html[data-theme="light"] header .brandmark{
  color:#111820;
  background:#e87445;
  box-shadow:0 0 16px rgba(232,116,69,.18);
}
html[data-theme="light"] header .theme-preferences input:checked+span{
  background:#c56a3d;
  color:#fff;
}
header .nav{min-height:76px}
header nav a{
  position:relative;
  transition:color .2s ease;
}
header nav a::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-9px;
  height:2px;
  border-radius:2px;
  background:linear-gradient(90deg,#ff7a45,#c9a227);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .24s cubic-bezier(.22,.61,.36,1);
}
header nav a:hover::after,
header nav a.active::after{transform:scaleX(1)}
header .language-menu .language-options{z-index:60}

/* Homepage signal bar. Keep a quiet warm-paper treatment in light mode. */
body.home-page .editionbar{
  position:relative;
  z-index:2;
  color:#d7e0e7;
  background:#0c1319;
  border:0;
  border-bottom:1px solid rgba(225,235,240,.09);
  font-size:9px;
  letter-spacing:.13em;
}
body.home-page .editionbar .wrap{
  min-height:48px;
  align-items:center;
  gap:12px;
  padding-top:7px;
  padding-bottom:7px;
}
body.home-page .editionbar span:first-child,
body.home-page .editionbar span:last-child{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 12px;
  border:1px solid rgba(201,162,39,.34);
  border-radius:999px;
  background:rgba(255,255,255,.025);
}
body.home-page .editionbar span:first-child{color:#edf2f6}
body.home-page .editionbar span:last-child{
  color:#e9c76b;
  border-color:rgba(201,162,39,.5);
  letter-spacing:.045em;
}
body.home-page .editionbar i{
  width:8px;
  height:8px;
  margin-right:9px;
  background:#ff7a45;
  box-shadow:0 0 12px rgba(255,122,69,.72);
}
@media (prefers-reduced-motion:no-preference){
  @keyframes signalPulse{0%,100%{box-shadow:0 0 6px rgba(255,122,69,.52)}50%{box-shadow:0 0 15px rgba(255,122,69,.9)}}
  body.home-page .editionbar i{animation:signalPulse 3.2s ease-in-out infinite}
}
html[data-theme="light"] body.home-page .editionbar{
  color:#443a2d;
  background:#eee5d4;
  border-bottom-color:rgba(93,72,39,.12);
}
html[data-theme="light"] body.home-page .editionbar span:first-child{
  color:#28333a;
  border-color:rgba(122,91,35,.26);
  background:rgba(255,255,255,.38);
}
html[data-theme="light"] body.home-page .editionbar span:last-child{
  color:#6c501b;
  border-color:rgba(122,91,35,.4);
  background:rgba(255,255,255,.38);
}

/* Full-bleed industrial night scene; the existing official artwork is reused. */
body.home-page .hero{
  position:relative;
  isolation:isolate;
  min-height:clamp(640px,calc(100svh - 126px),940px);
  overflow:hidden;
  color:#f5f7f8;
  background:#081014;
  border-bottom:1px solid rgba(201,162,39,.28);
}
body.home-page .hero>.hero-scene{
  position:absolute;
  z-index:0;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:57% 48%;
  filter:saturate(.88) contrast(1.08) brightness(.8);
  transform-origin:58% 48%;
}
body.home-page .hero::before,
body.home-page .hero::after{
  content:"";
  position:absolute;
  z-index:1;
  inset:0;
  pointer-events:none;
}
body.home-page .hero::before{
  opacity:.15;
  background:
    repeating-linear-gradient(118deg,rgba(230,198,132,.15) 0 1px,transparent 1px 8px),
    radial-gradient(ellipse at 78% 14%,rgba(255,122,69,.21),transparent 38%);
  mix-blend-mode:soft-light;
}
body.home-page .hero::after{
  background:
    radial-gradient(ellipse at 77% 24%,rgba(255,122,69,.13),transparent 38%),
    linear-gradient(90deg,rgba(5,11,16,.97) 0%,rgba(7,14,20,.9) 27%,rgba(7,14,20,.66) 49%,rgba(7,14,20,.18) 78%,rgba(7,14,20,.06) 100%),
    linear-gradient(0deg,rgba(5,10,15,.86) 0%,rgba(5,10,15,.38) 24%,transparent 58%),
    linear-gradient(180deg,rgba(5,10,15,.38) 0%,transparent 22%);
}
body.home-page .hero-content{
  z-index:2;
  min-height:clamp(640px,calc(100svh - 126px),940px);
  justify-content:center;
  padding-top:70px;
  padding-bottom:112px;
}
body.home-page .herocopy{
  width:min(650px,58vw);
  max-width:650px;
}
body.home-page .herocopy .eyebrow{
  display:inline-flex;
  align-items:center;
  gap:12px;
  color:#e9c76b;
  font-size:10px;
  letter-spacing:.22em;
}
body.home-page .herocopy .eyebrow::before{
  content:"";
  width:25px;
  height:1px;
  background:#e9c76b;
  box-shadow:0 0 12px rgba(233,199,107,.4);
}
body.home-page .herocopy h1,
html[data-theme="light"] body.home-page .herocopy h1{
  margin:22px 0 21px;
  color:#f5f7f8;
  font-family:var(--sans);
  font-size:clamp(54px,7.35vw,112px);
  font-weight:850;
  letter-spacing:-.065em;
  line-height:.91;
  text-shadow:0 8px 42px rgba(0,0,0,.5);
}
body.home-page .herocopy h1 span,
html[data-theme="light"] body.home-page .herocopy h1 span{
  color:#ff7a45;
  text-shadow:0 0 28px rgba(255,122,69,.28);
}
body.home-page .herocopy .hero-description,
html[data-theme="light"] body.home-page .herocopy .hero-description{
  max-width:34ch;
  margin:0;
  padding-left:17px;
  border-left:2px solid #ff7a45;
  color:#f3f5f6;
  font-size:clamp(20px,2vw,27px);
  font-weight:650;
  line-height:1.38;
  text-shadow:0 2px 25px rgba(0,0,0,.45);
}
body.home-page .herocopy .hero-detail,
html[data-theme="light"] body.home-page .herocopy .hero-detail{
  max-width:49ch;
  margin-top:19px;
  color:#d2dce3;
  font-size:14px;
  line-height:1.8;
  text-shadow:0 2px 20px rgba(0,0,0,.55);
}
body.home-page .hero .actions{gap:17px;margin-top:27px}
body.home-page .hero .button{
  min-height:50px;
  padding:15px 21px;
  border:1px solid #ff956a;
  border-radius:6px;
  color:#15191c;
  background:linear-gradient(135deg,#ff956a,#ff713f);
  box-shadow:0 8px 25px rgba(255,98,51,.22);
  transition:transform .22s ease,box-shadow .22s ease,filter .22s ease;
}
body.home-page .hero .button:hover{
  color:#15191c;
  box-shadow:0 10px 32px rgba(255,98,51,.34);
  transform:translateY(-2px);
}
body.home-page .hero .textlink,
html[data-theme="light"] body.home-page .hero .textlink{
  color:#f1f4f6;
  text-decoration:underline;
  text-decoration-color:rgba(233,199,107,.55);
  text-underline-offset:5px;
}
body.home-page .hero .departure{
  right:clamp(26px,6vw,92px);
  bottom:clamp(54px,8vh,92px);
  min-width:260px;
  padding:16px 19px 15px;
  gap:7px;
  border:1px solid rgba(231,239,244,.3);
  border-left:2px solid #c9a227;
  border-radius:8px;
  background:rgba(9,16,22,.62);
  box-shadow:0 16px 44px rgba(0,0,0,.27),inset 0 1px rgba(255,255,255,.05);
  backdrop-filter:blur(15px) saturate(140%);
  -webkit-backdrop-filter:blur(15px) saturate(140%);
}
body.home-page .hero .departure strong,
html[data-theme="light"] body.home-page .hero .departure strong{
  color:#fff;
  font-family:var(--sans);
  font-size:19px;
  font-weight:800;
  letter-spacing:.025em;
}
body.home-page .hero .departure span,
html[data-theme="light"] body.home-page .hero .departure span{color:#d8e1e7}
body.home-page .hero .departure span:first-child{
  color:#ffb08b;
  letter-spacing:.16em;
}
body.home-page .hero .image-credit{
  z-index:3;
  right:22px;
  bottom:17px;
  color:#d3dde4;
  font-size:9px;
  opacity:.68;
  text-shadow:0 1px 8px #000;
}
body.home-page .hero .image-credit:hover{color:#fff;opacity:1}

/* Release essentials: three unmistakable, touch-friendly route cards. */
body.home-page .factstrip{
  gap:15px;
  margin-top:27px;
  margin-bottom:8px;
  padding:0;
  border:0;
}
body.home-page .factstrip>div,
body.home-page .factstrip>div:first-child,
body.home-page .factstrip>div:last-child{
  position:relative;
  display:flex;
  min-width:0;
  min-height:188px;
  flex-direction:column;
  align-items:flex-start;
  gap:0;
  padding:25px 24px 20px;
  overflow:hidden;
  border:1px solid rgba(115,139,153,.29);
  border-radius:9px;
  background:linear-gradient(145deg,rgba(22,33,42,.96),rgba(13,21,28,.98));
  box-shadow:inset 0 1px rgba(255,255,255,.035),0 15px 34px -22px rgba(0,0,0,.48);
  transition:transform .24s cubic-bezier(.22,.61,.36,1),border-color .24s ease,background-color .24s ease,box-shadow .24s ease;
}
body.home-page .factstrip>div::before{
  top:0;
  left:24px;
  width:45px;
  height:2px;
  background:linear-gradient(90deg,#ff7a45,#c9a227);
}
body.home-page .factstrip>div::after{
  bottom:0;
  height:2px;
  background:linear-gradient(90deg,#ff7a45,#c9a227);
}
body.home-page .factstrip>div:hover{
  background:linear-gradient(145deg,rgba(29,43,52,.98),rgba(15,23,30,.99));
  border-color:rgba(255,122,69,.56);
  box-shadow:0 12px 35px -18px rgba(255,122,69,.28),inset 0 1px rgba(255,255,255,.06);
  transform:translateY(-3px);
}
body.home-page .factstrip span{
  margin:0 0 19px;
  color:#e9c76b;
  font-size:9px;
  letter-spacing:.15em;
}
body.home-page .factstrip a,
html[data-theme="light"] body.home-page .factstrip a{
  display:flex;
  align-items:flex-start;
  gap:9px;
  color:#f0f3f5;
  font-family:var(--sans);
  font-size:18px;
  font-weight:750;
  line-height:1.35;
}
body.home-page .factstrip a:hover{color:#ffb08b}
body.home-page .factstrip b{
  float:none;
  flex:none;
  margin-left:auto;
  color:#ff8a57;
  font-size:19px;
  transition:transform .22s ease;
}
body.home-page .factstrip>div:hover b{transform:translate(3px,-3px)}
body.home-page .factstrip p,
html[data-theme="light"] body.home-page .factstrip p{
  max-width:38ch;
  margin:12px 0 0;
  color:#aebbc4;
  font-size:12px;
  line-height:1.7;
}
html[data-theme="light"] body.home-page .factstrip>div,
html[data-theme="light"] body.home-page .factstrip>div:first-child,
html[data-theme="light"] body.home-page .factstrip>div:last-child{
  border-color:rgba(110,83,39,.26);
  background:linear-gradient(145deg,rgba(255,251,243,.96),rgba(239,230,213,.98));
  box-shadow:inset 0 1px rgba(255,255,255,.7),0 14px 30px -23px rgba(61,47,24,.35);
}
html[data-theme="light"] body.home-page .factstrip>div:hover{
  border-color:rgba(200,104,59,.54);
  background:linear-gradient(145deg,#fffaf1,#f3e5d0);
  box-shadow:0 12px 30px -18px rgba(168,86,43,.22);
}
html[data-theme="light"] body.home-page .factstrip a{color:#1d2931}
html[data-theme="light"] body.home-page .factstrip p{color:#59636a}

/* Keep the existing layout comfortable on narrow screens. */
@media (max-width:900px){
  body.home-page .hero{min-height:clamp(680px,calc(100svh - 116px),900px)}
  body.home-page .hero-content{min-height:clamp(680px,calc(100svh - 116px),900px);padding-top:62px;padding-bottom:104px}
  body.home-page .herocopy{width:min(620px,74vw)}
  body.home-page .hero .departure{right:25px;bottom:48px}
  body.home-page .factstrip{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
  body.home-page .factstrip>div,
  body.home-page .factstrip>div:first-child,
  body.home-page .factstrip>div:last-child{min-height:198px;padding:22px 17px 18px}
  body.home-page .factstrip span{font-size:8px;letter-spacing:.1em}
  body.home-page .factstrip a{font-size:16px}
}
@media (max-width:700px){
  body.home-page .editionbar .wrap{align-items:flex-start;gap:6px;padding-top:8px;padding-bottom:8px}
  body.home-page .editionbar span:first-child,
  body.home-page .editionbar span:last-child{min-height:27px;padding:0 9px;font-size:8px}
  body.home-page .hero{min-height:clamp(690px,calc(100svh - 110px),920px)}
  body.home-page .hero>.hero-scene{object-position:71% center;filter:saturate(.86) contrast(1.08) brightness(.72)}
  body.home-page .hero::after{
    background:
      radial-gradient(ellipse at 78% 15%,rgba(255,122,69,.12),transparent 42%),
      linear-gradient(180deg,rgba(6,12,17,.14) 0%,rgba(6,12,17,.2) 24%,rgba(6,12,17,.72) 44%,rgba(5,10,15,.97) 76%,#050a0f 100%);
  }
  body.home-page .hero-content{
    min-height:clamp(690px,calc(100svh - 110px),920px);
    justify-content:flex-end;
    padding-top:205px;
    padding-bottom:68px;
  }
  body.home-page .herocopy{width:100%;max-width:100%}
  body.home-page .herocopy h1,
  html[data-theme="light"] body.home-page .herocopy h1{font-size:clamp(51px,13vw,66px);margin:17px 0 16px}
  body.home-page .herocopy .hero-description,
  html[data-theme="light"] body.home-page .herocopy .hero-description{font-size:20px;line-height:1.38}
  body.home-page .herocopy .hero-detail,
  html[data-theme="light"] body.home-page .herocopy .hero-detail{font-size:12px;line-height:1.65;margin-top:13px}
  body.home-page .hero .actions{gap:12px;margin-top:18px}
  body.home-page .hero .button{min-height:45px;padding:13px 15px;font-size:11px}
  body.home-page .hero .textlink{font-size:10px}
  body.home-page .hero .departure{
    position:static;
    min-width:0;
    margin:19px 0 0;
    padding:12px 14px;
    border:1px solid rgba(231,239,244,.25);
    border-left:2px solid #c9a227;
    border-radius:7px;
  }
  body.home-page .hero .departure strong{font-size:17px}
  body.home-page .hero .departure span{font-size:9px}
  body.home-page .hero .image-credit{right:14px;bottom:12px;font-size:8px}
  body.home-page .factstrip{grid-template-columns:1fr;gap:9px;margin-top:17px}
  body.home-page .factstrip>div,
  body.home-page .factstrip>div:first-child,
  body.home-page .factstrip>div:last-child{min-height:0;padding:18px 18px 17px}
  body.home-page .factstrip>div::before{left:18px}
  body.home-page .factstrip span{margin-bottom:10px;font-size:8px}
  body.home-page .factstrip a{font-size:16px}
  body.home-page .factstrip p{margin-top:8px;font-size:11px}
}
@media (prefers-reduced-motion:reduce){
  body.home-page .editionbar i{animation:none}
  body.home-page .hero .button,
  body.home-page .factstrip>div,
  body.home-page .factstrip b{transition:none}
}
@media print{
  body.home-page .hero::before{display:none}
}
