/* jlaraw 1.0.4 — Black gold. Palette-only update; existing layout retained. Decorative layers never intercept input. */
:root {
  --bg:#080808; --panel:#141310; --panel-raised:#1d1a14;
  --ink:#f6f2e8; --muted:#c7c0b3; --soft:#ada491;
  --gold:#e6bb63; --gold-light:#f6dfaa; --line:#493f2d;
  --gold-accent:#e6bb63; --gold-medium:#e6bb63; --gold-warm:#e6bb63;
  --gold-spectrum:linear-gradient(112deg,#edc976 0%,#f5dfa9 31%,#b89048 60%,#e6c27b 100%);
}
body {
  background:radial-gradient(ellipse 80% 540px at 5% 3%,#4741332e,transparent 72%),
             radial-gradient(ellipse 70% 580px at 100% 3%,#34302630,transparent 70%),var(--bg);
}
::selection { color:#0e0e0d; background:#efd396; }
.jlaraw-site .site-header {
  background:linear-gradient(110deg,#131211f5,#0b0b0afa 55%,#131210f5);
  border-bottom:1px solid #a68f5670; box-shadow:0 8px 32px #0005;
  -webkit-backdrop-filter:blur(16px); backdrop-filter:blur(16px);
}
.site-header:after {
  content:''; position:absolute; bottom:-1px; left:0; right:0; height:1px;
  background:linear-gradient(90deg,transparent,#deb567 20%,#dbc17f 51%,#d9be7a 81%,transparent);
  pointer-events:none;
}
.brand img { filter:drop-shadow(0 1px 10px #e5b95c22); }
.nav-menu a { color:#e5dfd0; }
.nav-menu a:hover,.nav-menu a[aria-current=page],.current-menu-item>a { color:#f6dfaa; }
.nav-menu>li>a[aria-current=page]:after,.nav-menu>.current-menu-item>a:after {
  background:var(--gold-spectrum); width:100%; height:2px; box-shadow:0 0 8px #e4d09f55;
}
.sub-menu { background:linear-gradient(135deg,#1b1a18,#151412); border-color:#907c4a; border-radius:12px; }
.btn {
  background:linear-gradient(118deg,#fff0be 0%,#f4cc7d 44%,#dda15d 100%);
  color:#121110; border-color:#ffe2a0; border-radius:10px;
  box-shadow:inset 0 1px 0 #fff7d2b0,0 6px 20px #d2a14420;
  transition:background .18s,border-color .18s,box-shadow .18s;
}
.btn:hover { background:linear-gradient(120deg,#fff7d6,#ffdb90 50%,#f0bf7d); box-shadow:0 0 24px #f1bd6240; }
.btn-outline {
  color:#f6dfaa; background:linear-gradient(115deg,#1c1b19,#171614);
  border-color:#b39f6c; box-shadow:inset 0 1px 0 #e7d6ab12;
}
.btn-outline:hover { color:#fff2cb; background:linear-gradient(115deg,#2f2b22,#262522); border-color:#e1cc96; }
.btn:disabled { background:#242320; border-color:#7d6c40; color:#d5ccb4; box-shadow:none; }
.text-link { text-decoration-color:#dabf7b; }
.eyebrow,.section-index { color:#efce90; }
.eyebrow-line,.opening-line { background:var(--gold-spectrum); }
.home-hero { position:relative; isolation:isolate; background:transparent; }
.home-hero:before {
  content:''; position:absolute; inset:0; pointer-events:none; z-index:-1;
  background:radial-gradient(ellipse 70% 65% at 16% 18%,#544e3d33,transparent 80%),
             radial-gradient(ellipse 70% 70% at 97% 28%,#7a693f28,transparent 78%);
}
.hero-intro h1 {
  color:#ffe2a0; text-shadow:0 8px 34px #dc9a5920; letter-spacing:-.045em;
}
@supports (background-clip:text) or (-webkit-background-clip:text) {
  .hero-intro h1 {
    background:linear-gradient(115deg,#fff4c9 4%,#f7c76c 35%,#dfb65e 69%,#f3dfa7 97%);
    background-clip:text; -webkit-background-clip:text; color:transparent;
  }
}
.hero-tagline em { color:#f0c475; }
.hero-description { color:#dfd8c6; }

.hero-visual {
  border-radius:34px 34px 14px 34px; border:1px solid transparent; isolation:isolate;
  background:linear-gradient(#121110,#121110) padding-box,var(--gold-spectrum) border-box;
  box-shadow:0 0 34px #bba87a22,20px 14px 50px #b39f6c0e,0 24px 64px #0007;
}
.hero-art { filter:contrast(1.04) saturate(.85); }
.hero-visual:after {
  content:''; position:absolute; inset:0 0 51px; pointer-events:none;
  background:radial-gradient(ellipse at 0 0,#b6a2716b,transparent 53%),
             radial-gradient(ellipse at 100% 80%,#ae986157,transparent 56%),
             radial-gradient(ellipse at 15% 100%,#f4b43e33,transparent 55%);
  mix-blend-mode:screen;
}
.hero-visual figcaption {
  position:relative; z-index:1; background:linear-gradient(100deg,#1b1a18,#181715,#1a1917);
  border-color:#a8915777; color:#ffe4a2;
}
.hero-visual figcaption span:last-child { color:#d9d1bc; }
.route-card {
  --route-accent:#e6bb63; --route-tint:#b2822b20;
  border-radius:16px; border:1px solid #897647;
  background:radial-gradient(ellipse at 100% 0,var(--route-tint),transparent 70%),linear-gradient(140deg,#1d1c19,#131210 77%);
  box-shadow:0 9px 27px #0004,inset 0 1px 0 #f1e7ce0a;
}
.route-main { --route-accent:#e6bb63; --route-tint:#b2822b20; border-color:#786239; }
.route-mobile { --route-accent:#e6bb63; --route-tint:#b2822b20; border-color:#786239; }
.route-backup { --route-accent:#e6bb63; --route-tint:#b2822b20; border-color:#786239; }
.route-card:before {
  height:3px; width:82px; border-radius:0 0 5px 5px;
  background:linear-gradient(90deg,var(--route-accent),#f5d695);
  box-shadow:0 0 15px var(--route-tint);
}
.route-number,.route-icon { color:var(--route-accent); }
.route-top .eyebrow { color:#dbd4c0; }
.route-name { color:#fff0c9; }
.route-card h2 { color:#fbfaf8; }
.route-card p { color:#d8d0ba; }
.route-link { color:var(--route-accent); border-color:#95814d55; }
.route-link:hover { color:#fff3d3; }
.section-heading p { color:#d2c9b0; }
.section-heading h2 { color:#fcfbf9; }
.feature-card {
  --tile:#bba87a; border-radius:16px; border-color:#504a3a;
  background:radial-gradient(ellipse at 100% 0,#b09a6525,transparent 69%),linear-gradient(145deg,#1c1b19,#11100f);
  box-shadow:0 7px 24px #0003;
}
.feature-card:nth-child(3n+2) { --tile:#d7bb73; border-color:#504a3a; background:radial-gradient(ellipse at 100% 0,#7b6a3f23,transparent 72%),linear-gradient(145deg,#1c1b18,#11110f); }
.feature-card:nth-child(3n) { --tile:#e9d9b0; border-color:#816f43; background:radial-gradient(ellipse at 100% 0,#aa945b27,transparent 72%),linear-gradient(145deg,#1b1a18,#11100f); }
.feature-card:hover { border-color:var(--tile); background-color:#1e1d1a; box-shadow:0 0 24px #b9a6771f; }
.icon-badge { background:linear-gradient(125deg,#383429,#21201d); border-color:#b39e6a; color:#ffe3a2; border-radius:13px; }
.feature-label { color:#f3d09a; }
.feature-arrow { color:var(--tile); }
.feature-card h3 { color:#faf9f6; }
.feature-card p { color:#d8d0bb; }
.copy-card,.home-copy .copy-card,.family-policy .copy-card {
  border:1px solid #403b2e; border-radius:16px;
  background:radial-gradient(ellipse 400px 150px at 100% 0,#544e3d1f,transparent 85%),linear-gradient(135deg,#161513,#100f0e 76%);
  box-shadow:inset 0 1px 0 #ede0bf05;
}
.copy-card:before {
  color:#f0d49a; width:34px; line-height:28px; height:28px; text-align:center;
  background:linear-gradient(125deg,#4f493966,#433e3155); border:1px solid #98834e66; border-radius:7px;
}
.home-copy .copy-card:nth-child(1) { background:linear-gradient(110deg,#252320,#191816 65%,#1d1c1a); border-color:#b09b66; }
.home-copy .copy-card:last-child { background:linear-gradient(115deg,#181715,#23221f); border-color:#877546; }
.family-editorial .copy-card:nth-child(even) { background:linear-gradient(125deg,#1b1a17,#171614); }
.family-help .copy-card { border-left:3px solid #d9bd78; }
.family-policy .copy-card { border-bottom:1px solid #8c7948; }
.family-activity .copy-card:first-child { border-color:#ae9962; }
.prose p,.prose li { color:#dbd4c0; }
.prose h2,.prose h3 { color:#f9f8f5; }
.prose blockquote { background:linear-gradient(115deg,#252421,#1f1e1b); }
.support-band { background:linear-gradient(108deg,#201f1c,#161513 52%,#1d1c19); border-color:#95814d77; }
.support-band:before { opacity:.09; }
.page-shell { background:radial-gradient(ellipse 900px 340px at 10% 0,#504a3a24,transparent 86%); }
.page-heading { border-color:#7c6b40; position:relative; }
.page-heading:after { content:''; height:2px; width:94px; background:var(--gold-spectrum); position:absolute; bottom:-1px; left:0; pointer-events:none; }
.breadcrumbs { color:#cfc5ab; }
.breadcrumbs a { color:#f3d29b; }
.main-entry-card {
  border-radius:18px; border:1px solid #b6a372;
  background:radial-gradient(ellipse at 0 100%,#58514024,transparent 63%),linear-gradient(111deg,#252421,#1c1b19 58%,#201f1c);
  box-shadow:0 10px 26px #0003;
}
.main-entry-card:before { background:var(--gold-spectrum); height:3px; width:90px; }
.entry-copy h2 { color:#ffe6b1; }
.entry-copy p { color:#dad2bd; }
.entry-status { color:#d0c5ab; }
.entry-symbol { color:#f0ce94; }
.page-intro p { color:#f2efe7; }
.page-intro .small-label { color:#cdc1a5; }
.page-illustration,.family-mobile .page-illustration {
  position:relative; border:1px solid #a08a52; border-radius:24px 24px 10px 24px; isolation:isolate;
  box-shadow:0 0 22px #b7a4731c;
}
.page-illustration:after {
  content:''; position:absolute; inset:0; pointer-events:none;
  background:radial-gradient(ellipse at 0 0,#af9a6463,transparent 56%),radial-gradient(ellipse at 100% 100%,#ae986152,transparent 58%);
  mix-blend-mode:screen;
}
.faq-item { border-color:#7c6b4077; }
.faq-item[open] summary { color:#ebddba; }
.side-card { border-color:#514a3a; border-radius:16px; background:linear-gradient(145deg,#1c1b18,#151412); }
.side-help { border-color:#907c4a; background:linear-gradient(145deg,#201f1c,#171614 76%); }
.side-pause { background:linear-gradient(145deg,#1d1c19,#131210); }
.side-links a { color:#dfd8c7; border-color:#58514066; }
.contact-status { background:linear-gradient(120deg,#252320,#201e1c); border-color:#9e8851; border-radius:16px; }
.content-card { border-radius:16px; }
.float-btn { border-radius:13px; background:linear-gradient(140deg,#2e2b22f5,#1a1917f5); border-color:#b4a06e; color:#f9dfac; box-shadow:0 6px 15px #0006,0 0 10px #dabf7a14; }
.float-btn:hover { background:linear-gradient(140deg,#3d382c,#282723); border-color:#e8d8af; }
.float-btn.unavailable { color:#c9bd9f; background:#151513; border-color:#7b6a3f; box-shadow:none; }
.float-btn.back-top { color:#171614; background:linear-gradient(125deg,#fff0bc,#e1b16f); border-color:#ffdb96; }
.site-footer {
  background:radial-gradient(ellipse 75% 95% at 0 0,#544d3c22,transparent 75%),radial-gradient(ellipse at 100% 80%,#3e392d25,transparent 70%),#0b0b0a;
  border-color:#8b7848; position:relative;
}
.site-footer:before { content:''; position:absolute; top:-1px; left:0; right:0; height:1px; background:var(--gold-spectrum); opacity:.8; pointer-events:none; }
.footer-statement { border-color:#524b3b; }
.footer-statement em { color:#f0c884; }
.footer-column a { color:#d4cbb3; }
.footer-bottom { border-color:#816f4270; color:#cec4a9; }
@media(max-width:1100px) {
  .nav-ready .menu-toggle { background:linear-gradient(135deg,#2e2b22,#1e1d1b); border-color:#b6a372; border-radius:10px; }
  .nav-ready .primary-nav { background:linear-gradient(125deg,#1b1a18,#151412); border-color:#aa945b; border-radius:0 0 16px 16px; }
  .nav-menu a { border-color:#7c6b4066; }
  .sub-menu,.sub-menu .sub-menu { background:#171614; border-color:#af9963; border-radius:0 8px 8px 0; }
}
@media(max-width:820px) {
  .hero-visual { border-radius:26px 26px 12px 26px; }
  .hero-visual:after { inset:0 0 51px; }
}
@media(max-width:600px) {
  .home-hero:before { background:radial-gradient(ellipse at 10% 0,#96814d3b,transparent 49%),radial-gradient(ellipse at 95% 60%,#ab945b22,transparent 50%); }
  .hero-visual,.page-illustration,.family-mobile .page-illustration { border-radius:20px 20px 10px 20px; }
  .hero-visual:after { inset:0 0 67px; }
  .route-card,.feature-card,.copy-card,.home-copy .copy-card,.family-policy .copy-card,.side-card { border-radius:14px; }
  .route-card:before { width:66px; }
  .section-heading p br { display:initial; }
  .main-entry-card { border-radius:15px; }
  .btn { border-radius:9px; }
  .float-btn { border-radius:11px; }
}
@media(prefers-reduced-transparency:reduce) {
  .jlaraw-site .site-header { background:#100f0e; -webkit-backdrop-filter:none; backdrop-filter:none; }
}
@media print {
  body { background:#fff; }
  .hero-intro h1 { background:none; color:#000; -webkit-text-fill-color:#000; }
  .hero-visual:after,.page-illustration:after,.home-hero:before { display:none; }
  .copy-card,.home-copy .copy-card,.family-policy .copy-card { background:#fff; box-shadow:none; }
}
