/* ==========================================================================
   Alpenglow (2026-10): SRENE's dark, mountain-led look. Charcoal and warm
   greys carry the page; rope orange is a signal only (labels, the main
   button, the summit flag, the alpenglow on the ridgeline).
   Pages opt in with <body class="ag"> and this file after style.css.
   ========================================================================== */
:root{
  --ag-night:#111417;
  --ag-ink:#16191C;
  --ag-surface:#1D2024;
  --ag-surface-2:#23272C;
  --ag-line:rgba(201,188,172,0.16);
  --ag-line-strong:rgba(201,188,172,0.3);
  --ag-text:#F4F2ED;
  --ag-text-2:#D6D1C8;
  --ag-muted:#ADA89F;
  --ag-faint:#8A8F94;
  --ag-signal:#E37A57;   /* orange for small text on charcoal (contrast) */
  --ag-alpine:#4A9C8E;
}

body.ag{ background:var(--ag-ink); color:var(--ag-text-2); font-family:'Hanken Grotesk', -apple-system, sans-serif; }
body.ag h1, body.ag h2, body.ag h3, body.ag h4{ color:var(--ag-text); font-family:'Barlow Condensed', sans-serif; }
body.ag a{ color:inherit; }
.ag-wrap{ max-width:1280px; margin:0 auto; padding:0 40px; }
@media (max-width:640px){ .ag-wrap{ padding:0 20px; } }
.ag-eyebrow{ font-family:'JetBrains Mono', monospace; font-size:12px; font-weight:600; letter-spacing:0.18em; text-transform:uppercase; color:var(--ag-signal); }
.ag-label{ font-family:'JetBrains Mono', monospace; font-size:11.5px; letter-spacing:0.14em; text-transform:uppercase; color:var(--ag-faint); }
.ag-h2{ font-size:clamp(38px, 4.6vw, 64px); line-height:0.98; font-weight:700; text-transform:uppercase; letter-spacing:0.002em; }
.ag-lede{ font-size:18px; line-height:1.65; color:var(--ag-muted); max-width:620px; }
section.ag-section{ padding:120px 0; }
@media (max-width:640px){ section.ag-section{ padding:80px 0; } }

/* Buttons */
.ag-btn{ display:inline-flex; align-items:center; gap:8px; font-family:'Hanken Grotesk', sans-serif; font-weight:600; font-size:16px; padding:15px 26px; border-radius:999px; text-decoration:none; transition:transform .15s ease, background .15s ease; }
.ag-btn:hover{ transform:translateY(-1px); }
.ag-btn-primary{ background:var(--rope-deep); color:#fff; }
.ag-btn-primary:hover{ background:var(--rope); }
.ag-btn-ghost{ color:var(--ag-text); padding-left:8px; padding-right:8px; }
.ag-btn-ghost:hover{ color:#fff; }
.ag-btn-outline{ border:1px solid var(--ag-line-strong); color:var(--ag-text); }

/* ---------- Nav on dark ---------- */
body.ag .nav{ background:rgba(17,20,23,0.72); backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px); border-bottom:1px solid transparent; }
body.ag .nav.scrolled{ border-color:var(--ag-line); box-shadow:none; }
body.ag .brand-word{ color:var(--ag-text); }
body.ag .brand-tag{ color:var(--ag-faint); }
body.ag .brand-mark{ background:#22262B; }
body.ag .nav-links a, body.ag .nav-dd-trigger{ color:var(--ag-text-2); }
body.ag .nav-links a:hover, body.ag .nav-dd-trigger:hover{ color:#fff; }
body.ag .link-quiet{ color:var(--ag-text-2); }
body.ag .nav-toggle span{ background:var(--ag-text); }
body.ag .nav-links[style]{ background:var(--ag-night) !important; border-bottom-color:var(--ag-line) !important; }
body.ag .nav-dd-panel{ background:var(--ag-surface); border-color:var(--ag-line); box-shadow:0 24px 48px -16px rgba(0,0,0,0.6); }
body.ag .nav-dd-item:hover{ background:var(--ag-surface-2); }
body.ag .nav-dd-item-title{ color:var(--ag-text); }
body.ag .nav-dd-item-desc{ color:var(--ag-muted); }
body.ag .nav-dd-item-tag{ background:var(--ag-surface-2); color:var(--ag-muted); }
body.ag .nav-dd-item-tag.live{ background:rgba(74,156,142,0.16); color:#7FC4B4; }
body.ag .btn-primary{ background:var(--rope-deep); box-shadow:none; }

/* ---------- Hero: night sky, topo, ridgelines, moving alpenglow ---------- */
.ag-hero{ position:relative; overflow:hidden; min-height:min(940px, 100vh); padding-top:72px; display:flex; flex-direction:column;
  background:linear-gradient(180deg, var(--ag-night) 0%, #1A1D21 55%, #24282D 100%); }
.ag-hero-topo{ position:absolute; inset:0; background:url(images/alpenglow/topo.svg) 78% 20%/max(1600px, 100%) auto no-repeat; opacity:0.9; pointer-events:none; }
.ag-ridges{ position:absolute; left:0; right:0; bottom:0; width:100%; height:auto; min-height:220px; pointer-events:none; }
.ag-hero-inner{ position:relative; z-index:2; padding-top:clamp(56px, 9vh, 110px); padding-bottom:clamp(250px, 25vw, 380px); display:flex; flex-direction:column; gap:26px; }
.ag-hero h1{ font-size:clamp(54px, 7.4vw, 112px); line-height:0.9; font-weight:700; text-transform:uppercase; max-width:1080px; margin:0; }
.ag-hero h1 em{ font-style:normal;
  background:linear-gradient(100deg, var(--rope-deep) 0%, var(--rope) 35%, var(--rope-shine) 52%, var(--rope) 70%, var(--rope-deep) 100%);
  background-size:220% 100%; -webkit-background-clip:text; background-clip:text; color:transparent;
  animation:shineMove 7s ease-in-out infinite; }
.ag-def{ font-size:15px; color:var(--ag-muted); max-width:600px; }
.ag-def b{ color:var(--ag-text); font-style:italic; }
.ag-def .ipa{ font-family:'JetBrains Mono', monospace; font-size:13px; }
.ag-hero .ag-lede{ font-size:19px; color:var(--ag-text-2); max-width:600px; }
.ag-actions{ display:flex; gap:12px; align-items:center; flex-wrap:wrap; }
.ag-proof{ position:absolute; left:0; right:0; bottom:0; z-index:2; border-top:1px solid var(--ag-line); background:linear-gradient(180deg, rgba(22,25,28,0) 0%, rgba(22,25,28,0.85) 40%); }
.ag-proof-row{ display:grid; grid-template-columns:repeat(auto-fit, minmax(220px, 1fr)); gap:24px; padding-top:24px; padding-bottom:26px; font-size:15px; color:var(--ag-muted); }
.ag-proof-row div{ display:flex; flex-direction:column; gap:4px; }
.ag-proof-row b{ font-family:'JetBrains Mono', monospace; font-size:11.5px; letter-spacing:0.14em; text-transform:uppercase; color:var(--ag-text-2); font-weight:600; }

/* ---------- Works-with strip ---------- */
.ag-strip{ background:var(--ag-ink); border-bottom:1px solid var(--ag-line); }
.ag-strip .ag-wrap{ display:flex; align-items:center; gap:34px; flex-wrap:wrap; padding-top:22px; padding-bottom:22px; }
.ag-strip span.int-icon{ color:var(--ag-text-2); display:flex; align-items:center; gap:9px; font-size:15px; font-weight:600; }
.ag-strip svg{ width:18px; height:18px; }

/* ---------- Philosophy: the formula as a climbing route ---------- */
.ag-philosophy{ background:var(--ag-surface) url(images/alpenglow/topo.svg) 20% 70%/max(1500px, 100%) auto no-repeat; border-bottom:1px solid var(--ag-line); }
.ag-route{ position:relative; margin-top:56px; height:190px; }
.ag-route > svg{ position:absolute; inset:0; width:100%; height:150px; overflow:visible; }
.ag-route-stop svg{ transform:translateX(-1px); }
.ag-route-stop{ position:absolute; transform:translateX(-50%); display:flex; flex-direction:column; align-items:center; gap:14px; }
.ag-route-dot{ width:22px; height:22px; border-radius:50%; border:2px solid var(--ag-text-2); background:var(--ag-surface); box-sizing:border-box; }
.ag-route-stop.done .ag-route-dot{ background:var(--ag-text-2); }
.ag-route-stop.summit .ag-route-dot{ border:3px solid var(--rope); }
.ag-route-stop span{ font-family:'Barlow Condensed', sans-serif; font-weight:700; font-size:24px; text-transform:uppercase; color:var(--ag-text); white-space:nowrap; }
@media (max-width:760px){ .ag-route-stop span{ font-size:16px; } .ag-route{ height:170px; } }

/* ---------- Problem: editorial list ---------- */
.ag-problem-grid{ display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:0 64px; margin-top:56px; border-top:1px solid var(--ag-line); }
@media (max-width:760px){ .ag-problem-grid{ grid-template-columns:1fr; } }
.ag-problem{ padding:30px 0 34px; border-bottom:1px solid var(--ag-line); display:grid; grid-template-columns:56px minmax(0,1fr); gap:6px 16px; }
.ag-problem .n{ font-family:'JetBrains Mono', monospace; font-size:13px; color:var(--ag-faint); padding-top:6px; }
.ag-problem h3{ font-size:27px; line-height:1.05; text-transform:uppercase; font-weight:700; margin:0; }
.ag-problem p{ grid-column:2; font-size:16.5px; line-height:1.6; color:var(--ag-muted); margin:0; }

/* ---------- Statement ---------- */
.ag-statement{ background:var(--ag-night); border-top:1px solid var(--ag-line); border-bottom:1px solid var(--ag-line); }
.ag-statement h2{ font-size:clamp(40px, 5.2vw, 76px); line-height:0.95; text-transform:uppercase; font-weight:700; margin:18px 0 0; }
.ag-statement h2 .quiet{ color:var(--ag-faint); display:block; }
.ag-statement-foot{ display:grid; grid-template-columns:repeat(auto-fit, minmax(300px, 1fr)); gap:32px; margin-top:40px; }
.ag-statement-foot p{ margin:0; font-size:18px; line-height:1.6; color:var(--ag-muted); }
.ag-statement-foot p strong{ color:var(--ag-text); font-weight:600; }

/* ---------- Product rows ---------- */
.ag-products-head{ display:flex; justify-content:space-between; align-items:flex-end; gap:32px; flex-wrap:wrap; margin-bottom:24px; }
.ag-row{ display:grid; grid-template-columns:minmax(0, 0.82fr) minmax(0, 1.28fr); gap:64px; align-items:center; padding:72px 0; border-top:1px solid var(--ag-line); }
.ag-row.flip > .ag-row-text{ order:2; }
@media (max-width:960px){ .ag-row, .ag-row.flip{ grid-template-columns:1fr; gap:40px; } .ag-row.flip > .ag-row-text{ order:0; } }
.ag-row-text{ display:flex; flex-direction:column; gap:18px; }
.ag-row-text h3{ font-size:clamp(40px, 4vw, 54px); line-height:0.95; text-transform:uppercase; font-weight:700; margin:0; }
.ag-row-text p{ margin:0; font-size:17px; line-height:1.6; color:var(--ag-muted); }
.ag-row-text ul{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:11px; font-size:15.5px; color:var(--ag-text-2); }
.ag-row-text li{ display:flex; gap:12px; align-items:baseline; }
.ag-row-text li::before{ content:""; width:14px; height:1px; background:var(--ag-faint); flex-shrink:0; transform:translateY(-4px); }
.ag-tour{ display:inline-flex; align-items:center; gap:9px; font-weight:600; font-size:15px; color:var(--ag-text-2); text-decoration:none; }
.ag-tour i{ width:28px; height:28px; border-radius:50%; border:1px solid var(--ag-line-strong); display:flex; align-items:center; justify-content:center; font-style:normal; font-size:10px; }
.ag-tour:hover{ color:#fff; }
.ag-shot{ margin:0; display:flex; flex-direction:column; gap:12px; position:relative; }
.ag-shot img.desk{ display:block; width:100%; height:auto; border-radius:12px; border:1px solid var(--ag-line); box-shadow:0 40px 80px -36px rgba(0,0,0,0.85); }
.ag-shot.combo{ padding-bottom:56px; padding-right:40px; }
.ag-shot.combo img.phone{ position:absolute; right:0; bottom:0; width:30%; height:auto; filter:drop-shadow(0 30px 40px rgba(0,0,0,0.6)); }
.ag-shot.solo-phone{ align-items:center; justify-content:center; min-height:560px; border-radius:16px; border:1px solid var(--ag-line); background:var(--ag-surface) url(images/alpenglow/topo.svg) center/max(1300px, 100%) auto no-repeat; padding:40px 20px; }
.ag-shot.solo-phone img{ width:min(300px, 70%); height:auto; filter:drop-shadow(0 30px 40px rgba(0,0,0,0.6)); }
.ag-shot figcaption{ font-family:'JetBrains Mono', monospace; font-size:11px; letter-spacing:0.14em; text-transform:uppercase; color:var(--ag-faint); }
.ag-more{ border-top:1px solid var(--ag-line); padding-top:40px; display:flex; justify-content:space-between; gap:24px; flex-wrap:wrap; align-items:center; }
.ag-more h4{ font-size:26px; text-transform:uppercase; margin:0 0 6px; }
.ag-more p{ margin:0; color:var(--ag-muted); font-size:16px; }

/* ---------- Five things ---------- */
.ag-five{ background:var(--ag-surface); border-top:1px solid var(--ag-line); border-bottom:1px solid var(--ag-line); }
.ag-five-list{ display:grid; grid-template-columns:repeat(auto-fit, minmax(340px, 1fr)); gap:0 64px; margin-top:56px; }
.ag-five-item{ display:grid; grid-template-columns:64px minmax(0,1fr); gap:6px 16px; padding:28px 0; border-top:1px solid var(--ag-line); }
.ag-five-item .n{ font-family:'JetBrains Mono', monospace; font-size:28px; font-weight:600; color:var(--ag-faint); line-height:1; }
.ag-five-item h3{ font-size:26px; text-transform:uppercase; line-height:1.05; margin:0; }
.ag-five-item p{ grid-column:2; margin:0; font-size:16.5px; line-height:1.6; color:var(--ag-muted); }

/* ---------- Pricing on dark ---------- */
.ag-pricing-grid{ display:grid; grid-template-columns:repeat(auto-fit, minmax(250px, 1fr)); gap:18px; margin-top:52px; }
.ag-price{ background:var(--ag-surface); border:1px solid var(--ag-line); border-radius:16px; padding:28px 26px; display:flex; flex-direction:column; gap:18px; }
.ag-price.featured{ border-color:var(--ag-line-strong); background:var(--ag-surface-2); }
.ag-price .tag{ font-family:'JetBrains Mono', monospace; font-size:10.5px; letter-spacing:0.14em; color:var(--ag-signal); }
.ag-price h3{ font-size:30px; text-transform:uppercase; margin:0; line-height:1; }
.ag-price .tier{ font-family:'JetBrains Mono', monospace; font-size:12px; letter-spacing:0.1em; text-transform:uppercase; color:var(--ag-faint); margin-top:-8px; }
.ag-price .desc{ margin:0; font-size:15px; line-height:1.55; color:var(--ag-muted); min-height:70px; }
.ag-price .amt{ font-family:'JetBrains Mono', monospace; font-size:38px; font-weight:600; color:var(--ag-text); min-height:46px; }
.ag-price .amt small{ font-size:14px; color:var(--ag-faint); font-weight:500; }
.ag-price ul{ list-style:none; margin:0; padding:16px 0 0; border-top:1px solid var(--ag-line); display:flex; flex-direction:column; gap:10px; font-size:14.5px; color:var(--ag-text-2); }
.ag-price li{ display:flex; gap:10px; align-items:baseline; }
.ag-price li::before{ content:"✓"; color:var(--ag-alpine); font-size:12px; }
.ag-price .ag-btn{ justify-content:center; }

/* ---------- SRENE anchors as pitches ---------- */
.ag-anchors{ background:var(--ag-night) url(images/alpenglow/topo.svg) 85% 30%/max(1500px, 100%) auto no-repeat; border-top:1px solid var(--ag-line); }
.ag-anchors-grid{ display:grid; grid-template-columns:repeat(auto-fit, minmax(360px, 1fr)); gap:64px; }
.ag-pitches{ list-style:none; margin:0; padding:0 0 0 30px; border-left:2px dashed var(--ag-line-strong); display:flex; flex-direction:column; gap:40px; }
.ag-pitches li{ position:relative; display:flex; flex-direction:column; gap:8px; }
.ag-pitches li::before{ content:""; position:absolute; left:-39px; top:4px; width:14px; height:14px; border-radius:50%; background:var(--ag-night); border:2px solid var(--ag-text-2); }
.ag-pitches li:last-child::before{ border-color:var(--rope); border-width:3px; }
.ag-pitches .lbl{ font-family:'JetBrains Mono', monospace; font-size:11.5px; letter-spacing:0.16em; color:var(--ag-faint); }
.ag-pitches h3{ font-size:34px; text-transform:uppercase; line-height:1; margin:0; }
.ag-pitches p{ margin:0; font-size:16.5px; line-height:1.6; color:var(--ag-muted); }

/* ---------- Closing call to action ---------- */
.ag-final{ position:relative; overflow:hidden; text-align:center; background:linear-gradient(180deg, var(--ag-ink) 0%, #1D2024 60%, #262A2F 100%); }
.ag-final .ag-wrap{ position:relative; z-index:2; padding-top:130px; padding-bottom:clamp(240px, 24vw, 360px); display:flex; flex-direction:column; align-items:center; gap:24px; }
.ag-final h2{ font-size:clamp(48px, 6.4vw, 96px); line-height:0.9; text-transform:uppercase; margin:0; }
.ag-final p{ margin:0; max-width:540px; font-size:18px; line-height:1.6; color:var(--ag-text-2); }

/* ---------- Footer on dark ---------- */
body.ag footer{ background:var(--ag-night); border-top:1px solid var(--ag-line); }

/* ---------- Motion preferences ---------- */
@media (prefers-reduced-motion: reduce){ .ag-hero h1 em{ animation:none; } }

/* The old #philosophy rule adds an orange radial glow; Alpenglow keeps that section neutral. */
body.ag #philosophy.ag-philosophy{ background:var(--ag-surface) url(images/alpenglow/topo.svg) 20% 70%/max(1500px, 100%) auto no-repeat; }
/* Pricing: the old .tag pill style doesn't apply here; keep cards' buttons aligned. */
.ag-price .tag{ background:none; padding:0; border-radius:0; font-size:10.5px; }
.ag-price h3{ min-height:60px; display:flex; align-items:flex-end; }
@media (max-width:640px){ .ag-price h3{ min-height:0; } .ag-price .desc{ min-height:0; } }
/* Small screens: keep the route's end labels inside the screen. */
.ag-philosophy{ overflow:hidden; }
@media (max-width:760px){ .ag-route{ margin-left:40px; margin-right:44px; } }

/* ==========================================================================
   Alpenglow skin for the existing page parts (product, company and resources
   pages). Flipping style.css's own tokens turns most cards, text and lines
   dark at once; the rules below fix the parts that used --ink as a
   background or hard-coded light colors.
   ========================================================================== */
body.ag{
  --ink:#F4F2ED;            /* headings and strong text */
  --ink-soft:#D6D1C8;
  --text:#D6D1C8;
  --text-muted:#ADA89F;
  --white:#1D2024;          /* cards */
  --paper:#16191C;
  --chalk:#23272C;
  --line:rgba(201,188,172,0.16);
  --rope-pale:rgba(214,95,60,0.12);
  --alpine-pale:rgba(74,156,142,0.14);
  --shadow-card:0 1px 2px rgba(0,0,0,0.3), 0 18px 40px -20px rgba(0,0,0,0.6);
  --shadow-lift:0 2px 4px rgba(0,0,0,0.35), 0 30px 60px -24px rgba(0,0,0,0.7);
  --shadow-glow:0 0 0 transparent;
}
body.ag .hero-canvas, body.ag .hero-grain, body.ag .section-canvas{ display:none; }
body.ag .eyebrow{ font-family:'JetBrains Mono', monospace; color:var(--ag-signal); }
body.ag .lede, body.ag .section-head p{ color:var(--ag-muted); }
body.ag .btn-primary{ background:var(--rope-deep); color:#fff; }
body.ag .btn-primary:hover{ background:var(--rope); }
body.ag .btn-ghost{ background:transparent; border:1px solid var(--ag-line-strong); color:var(--ag-text); }
body.ag .btn-ghost:hover{ border-color:var(--ag-text-2); color:#fff; }
body.ag .btn-dark{ background:transparent; border:1px solid var(--ag-line-strong); color:var(--ag-text); }
body.ag .btn-dark:hover{ background:var(--ag-surface-2); }
body.ag .brand-mark{ background:#22262B; }
body.ag .nav-toggle span{ background:var(--ag-text); }

/* Product-page hero: night sky, topo, left-aligned type, ridgeline band */
body.ag .hero{ background:linear-gradient(180deg, var(--ag-night) 0%, #1A1D21 70%, #1D2024 100%); border-bottom:0; padding-top:72px; }
body.ag .hero::before{ content:""; position:absolute; inset:0; background:url(images/alpenglow/topo.svg) 80% 15%/max(1600px, 100%) auto no-repeat; opacity:0.9; pointer-events:none; }
body.ag .hero-top{ text-align:left; max-width:1280px; padding:clamp(48px, 8vh, 96px) 40px 0; margin:0 auto 24px; }
@media (max-width:640px){ body.ag .hero-top{ padding-left:20px; padding-right:20px; } }
body.ag .hero h1{ font-size:clamp(52px, 7vw, 104px); line-height:0.92; text-transform:uppercase; max-width:1080px; }
body.ag .hero p.lede{ margin:18px 0 30px; color:var(--ag-text-2); }
body.ag .hero-actions{ justify-content:flex-start; }
body.ag .hero-badge{ background:none; padding:0; font-family:'JetBrains Mono', monospace; font-size:12px; letter-spacing:0.16em; text-transform:uppercase; color:var(--ag-signal); }
body.ag .hero-badge .dot{ display:none; }
body.ag .hero-proof{ justify-content:flex-start; }
body.ag .hero-proof-item{ color:var(--ag-muted); }
body.ag .hero-proof-item b{ color:var(--ag-text); }
body.ag .hero-proof-accent{ background:var(--ag-faint); }
.ag-ridge-band{ position:relative; height:clamp(170px, 22vw, 300px); margin-top:8px; pointer-events:none; }
.ag-ridge-band .ag-ridges{ min-height:0; height:100%; }
.ag-ridge-band + .wrap, .ag-ridge-band + .wrap.trades-phone{ position:relative; z-index:2; margin-top:calc(-1 * clamp(110px, 14vw, 200px)); }
body.ag .hero-video{ background:var(--ag-surface); border-color:var(--ag-line); box-shadow:0 40px 80px -36px rgba(0,0,0,0.85); }
body.ag .integrations-strip{ background:var(--ag-ink); border-top:1px solid var(--ag-line); }
body.ag .int-label{ color:var(--ag-faint); }
body.ag .int-icon{ color:var(--ag-text-2); }
body.ag .trade-tags .tag{ background:none; border:1px solid var(--ag-line-strong); color:var(--ag-text-2); }
body.ag .trades-phone{ margin:0 auto 40px; }

/* Cards, lists and grids */
body.ag .problem-grid{ background:var(--ag-line); border-color:var(--ag-line); }
body.ag .problem-card{ background:var(--ag-surface); }
body.ag .problem-icon, body.ag .mini-icon, body.ag .adopt-card .ico{ background:var(--ag-surface-2) !important; border-color:var(--ag-line); }
body.ag .problem-icon svg{ stroke:var(--ag-text-2); }
body.ag .pillars{ background:var(--ag-line); border-color:var(--ag-line); }
body.ag .pillar{ background:var(--ag-surface); }
body.ag .pillar-num{ color:var(--ag-faint); }
body.ag .adopt-card{ background:var(--ag-surface); border-color:var(--ag-line); }
body.ag .tag{ background:none; border:1px solid var(--ag-line-strong); color:var(--ag-text-2); }
body.ag .statement h2 .accent{ color:var(--rope); }
body.ag .statement .lede{ color:var(--ag-text); }
body.ag .product-shot{ background:var(--ag-surface); border-color:var(--ag-line); box-shadow:0 40px 80px -36px rgba(0,0,0,0.85); }
body.ag .product-shot-chrome{ background:var(--ag-surface-2); border-color:var(--ag-line); }
body.ag .product-shot-chrome .dot{ background:#3A3F45 !important; }

/* Dark sections that used --ink as their background */
body.ag #philosophy, body.ag #trades, body.ag #steps{ background:var(--ag-surface) url(images/alpenglow/topo.svg) 20% 70%/max(1500px, 100%) auto no-repeat; border-top:1px solid var(--ag-line); border-bottom:1px solid var(--ag-line); }
body.ag .philosophy .eyebrow{ color:var(--ag-signal); }
body.ag .philosophy h2{ color:var(--ag-text); text-transform:uppercase; font-size:clamp(36px, 4.4vw, 56px); line-height:1; }
body.ag .philosophy .lede{ color:var(--ag-muted); }
body.ag .chain-step, body.ag .chain-step.c1, body.ag .chain-step.c2, body.ag .chain-step.c3{ background:transparent; border:1px solid var(--ag-line-strong); color:var(--ag-text-2); box-shadow:none; }
body.ag .chain-step.c4{ background:transparent; border:2px solid var(--rope); color:var(--ag-text); box-shadow:none; }
body.ag .chain-arrow{ color:var(--ag-faint); }
body.ag .stats{ background:var(--ag-night) url(images/alpenglow/topo.svg) 15% 20%/max(1500px, 100%) auto no-repeat; color:var(--ag-text); }
body.ag .stats .section-head h2{ color:var(--ag-text); }
body.ag .stats-grid{ background:var(--ag-line); }
body.ag .stat, body.ag .stat.lead{ background:var(--ag-surface); }
body.ag .stat b{ color:var(--ag-text); }
body.ag .stat-accent{ background:var(--ag-faint); }
body.ag .stat.lead .stat-accent{ background:var(--rope); }
body.ag .srene-block{ background:var(--ag-night) url(images/alpenglow/topo.svg) 85% 30%/max(1500px, 100%) auto no-repeat; border:1px solid var(--ag-line); }
body.ag .srene-head h2{ color:var(--ag-text); text-transform:uppercase; }
body.ag .srene-head p, body.ag .srene-card p{ color:var(--ag-muted); }
body.ag .srene-card{ background:var(--ag-surface); border-color:var(--ag-line); }
body.ag .srene-letter{ color:var(--ag-faint); }
body.ag .srene-card h4{ color:var(--ag-text); }
body.ag .final-cta{ background:var(--ag-surface) url(images/alpenglow/topo.svg) center/max(1500px, 100%) auto no-repeat; border:1px solid var(--ag-line); }
body.ag .final-cta h2{ color:var(--ag-text); text-transform:uppercase; font-size:clamp(38px, 4.6vw, 60px); }
body.ag .final-cta p{ color:var(--ag-muted); }
body.ag .summit-icon path{ stroke:var(--ag-text); }

/* Pricing cards */
body.ag .price-card-v2{ background:var(--ag-surface); border-color:var(--ag-line); box-shadow:none; }
body.ag .price-card-v2.team{ background:var(--ag-surface-2); border-color:var(--ag-line-strong); color:var(--ag-text); }
body.ag .price-card-v2.team h3, body.ag .price-card-v2.team .price-amt b{ color:var(--ag-text); }
body.ag .price-card-v2.team .desc{ color:var(--ag-muted); }
body.ag .price-card-v2.team .price-list li{ color:var(--ag-text-2); }
body.ag .price-card-v2.team .price-list{ border-top-color:var(--ag-line); }
body.ag .team-tag{ background:none; padding:0; color:var(--ag-signal); }
body.ag .tier-label, body.ag .price-card-v2.team .tier-label{ color:var(--ag-faint); }
body.ag .price-list .check, body.ag .price-card-v2.team .check{ background:var(--ag-surface-2); border:1px solid var(--ag-line-strong); }
body.ag .price-amt span{ color:var(--ag-faint) !important; }

/* Company and Resources */
body.ag .res-hero{ background:linear-gradient(180deg, var(--ag-night) 0%, #1A1D21 100%); border-bottom:0; position:relative; overflow:hidden; padding:150px 0 0; }
body.ag .res-hero::before{ content:""; position:absolute; inset:0; background:url(images/alpenglow/topo.svg) 80% 10%/max(1600px, 100%) auto no-repeat; opacity:0.9; pointer-events:none; }
body.ag .res-hero .wrap{ position:relative; z-index:1; }
body.ag .res-hero h1{ text-transform:uppercase; font-size:clamp(46px, 6vw, 84px); line-height:0.94; }
body.ag .res-hero p.lede{ color:var(--ag-text-2); }
body.ag .res-hero .ag-ridge-band{ height:clamp(130px, 16vw, 220px); margin-top:24px; }
body.ag .playbook-card{ background:var(--ag-surface); border-color:var(--ag-line); }
body.ag .playbook-card:hover{ box-shadow:0 30px 60px -30px rgba(0,0,0,0.8); }
body.ag .playbook-cover{ background:var(--ag-surface-2) url(images/alpenglow/topo.svg) center/900px auto no-repeat !important; border-bottom:1px solid var(--ag-line); }
body.ag .playbook-cover .cat{ color:var(--ag-text-2); }
body.ag .playbook-cover .fmark{ background:rgba(244,242,237,0.08); }
body.ag .playbook-meta .pages{ color:var(--ag-faint); }
body.ag .dl-btn{ color:var(--ag-signal); }
body.ag .dl-btn:hover{ color:#fff; }
body.ag .forms-app-card{ background:var(--ag-night); border-color:var(--ag-line-strong); }
body.ag .forms-note{ color:var(--ag-faint); }
body.ag .res-cta{ background:var(--ag-surface); border-color:var(--ag-line); }
body.ag .nl-card{ background:var(--ag-surface); border-color:var(--ag-line); }
body.ag .nl-card-top.rope, body.ag .nl-card-top.alpine{ background:var(--ag-surface-2) url(images/alpenglow/topo.svg) center/900px auto no-repeat; border-bottom:1px solid var(--ag-line); }
body.ag .nl-card-kicker{ color:var(--ag-signal); }
body.ag .nl-intro{ background:var(--ag-surface); border-color:var(--ag-line); }
body.ag .nl-list li::before{ background:var(--ag-faint); }
body.ag .profile{ background:var(--ag-surface); border-color:var(--ag-line); box-shadow:none; }
body.ag .profile .role{ color:var(--ag-signal); }
body.ag .exp span{ background:none; border:1px solid var(--ag-line-strong); color:var(--ag-text-2); }
body.ag .chip-link{ background:transparent; border-color:var(--ag-line-strong); color:var(--ag-text-2); }
body.ag .team-label{ color:var(--ag-text-2); }

/* Modals and footer */
body.ag .modal-box{ background:var(--ag-surface); border:1px solid var(--ag-line); color:var(--ag-text-2); }
body.ag .modal-box h3{ color:var(--ag-text); }
body.ag .modal-input{ background:var(--ag-ink); border-color:var(--ag-line-strong); color:var(--ag-text); }
body.ag footer{ background:var(--ag-night); }
body.ag .footer-brand .brand-mark{ background:#22262B; }
/* Trades hero: follow the left-aligned text */
body.ag .trade-tags{ justify-content:flex-start; margin-left:0; }
body.ag .hero-top .trades-phone{ justify-content:flex-start; margin:8px 0 32px; }

/* ==========================================================================
   Phones: a stacked menu, mountains under the hero text, quieter topo lines
   ========================================================================== */
@media (max-width:900px){
  body.ag .nav-links[style]{ align-items:stretch !important; gap:0 !important; padding:8px 20px 20px !important; max-height:calc(100vh - 72px); overflow-y:auto; }
  body.ag .nav-links[style] > a, body.ag .nav-links[style] .nav-dd-trigger{ font-size:17px; padding:14px 0; border-bottom:1px solid var(--ag-line); width:100%; }
  body.ag .nav-links[style] > a:last-child{ border-bottom:0; }
  body.ag .nav-dd-panel{ background:transparent; border:0; box-shadow:none; padding:4px 0 10px; min-width:0; }
  body.ag .nav-dd.open .nav-dd-panel{ transform:none; }
  body.ag .nav-dd-item{ padding:10px 0 10px 14px; border-left:1px solid var(--ag-line); border-radius:0; }
  body.ag .nav-dd-item:hover{ background:transparent; }
}
@media (max-width:760px){
  /* Home hero: text, then the ridgeline in the flow, then the three points */
  .ag-hero{ min-height:0; }
  .ag-hero-inner{ order:1; padding-bottom:12px; }
  .ag-hero .ag-ridges{ position:relative; order:2; height:200px; min-height:0; margin-top:-10px; }
  .ag-proof{ position:relative; order:3; background:var(--ag-ink); }
  .ag-proof-row{ gap:14px; padding-top:20px; padding-bottom:24px; }
  /* Fainter topo lines in the hero on small screens */
  .ag-hero-topo, body.ag .hero::before, body.ag .res-hero::before{ opacity:0.35; background-size:2400px auto; }
  /* Only the first two sections were busy on a phone: the hero (fainter, above) and the
     philosophy section right after it, which drops its topo on small screens. */
  body.ag #philosophy.ag-philosophy, body.ag #philosophy{ background-image:none !important; }
  .ag-shot.solo-phone{ background-size:2200px auto; }
}

/* Trades: translation section -- the copy, then the demo video (landscape on
   desktop, the vertical phone cut on phones; each only loads its own) */
.translate-split{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:24px 64px; align-items:end; }
.translate-copy{ display:contents; }
.translate-copy .section-head{ margin-bottom:0; }
.translate-copy .nl-list{ padding-bottom:8px; }
.translate-video{ grid-column:1 / -1; margin-top:24px; }
.tv-desktop{ display:block; width:100%; aspect-ratio:16 / 9; border-radius:18px; background:#14171B; border:1px solid var(--ag-line, rgba(201,188,172,0.16)); box-shadow:0 40px 80px -36px rgba(0,0,0,0.6); }
.tv-mobile{ display:none; }
.phone-video{ border-radius:34px; overflow:hidden; background:var(--ag-ink, #16191C); border:8px solid #2C3035; box-shadow:0 40px 80px -36px rgba(0,0,0,0.6); aspect-ratio:9 / 16; }
.phone-video video{ display:block; width:100%; height:100%; object-fit:cover; background:#14171B; }
@media (max-width:860px){
  .translate-split{ grid-template-columns:1fr; gap:20px; }
  .translate-video{ margin-top:16px; }
  .tv-desktop{ display:none; }
  .tv-mobile{ display:block; max-width:320px; width:100%; margin:0 auto; }
}

/* "Fixed with myBivy" rubber stamp beside The Problem headline (home). */
.ag-stamp-row{ display:flex; align-items:center; gap:18px 48px; flex-wrap:wrap; }
.ag-stamp-row .ag-h2{ flex:1 1 440px; min-width:0; }
.ag-stamp{ flex:0 0 auto; display:inline-block; transform:rotate(-8deg); font-family:'Rubik Dirt', 'Barlow Condensed', sans-serif; font-size:36px; line-height:0.98; text-transform:uppercase; letter-spacing:1.5px; text-align:center; color:var(--ag-signal); text-decoration:none; padding:14px 22px 12px; border:4px double var(--ag-signal); border-radius:10px; opacity:0.9; margin:6px 14px 30px 8px; transition:transform .2s ease, opacity .2s ease; }
body.ag a.ag-stamp{ color:var(--ag-signal); }
.ag-stamp:hover{ transform:rotate(-5deg) scale(1.03); opacity:1; }
@media (max-width:760px){
  .ag-stamp-row{ flex-direction:column-reverse; align-items:flex-start; gap:4px; }
  .ag-stamp-row .ag-h2{ flex:none; }
  .ag-stamp{ font-size:26px; padding:9px 16px 8px; border-width:3px; margin:14px 0 14px 6px; }
}

/* Label over the four problems on the home page. */
.ag-issues-label{ display:flex; align-items:center; gap:10px; margin-top:52px; font-family:'Barlow Condensed', sans-serif; font-weight:700; font-size:26px; letter-spacing:1.5px; text-transform:uppercase; color:var(--rope); }
@media (max-width:760px){ .ag-issues-label{ font-size:21px; margin-top:40px; } }
.ag-problem .n.ag-x{ color:var(--rope); padding-top:4px; }
.ag-problem .n.ag-check{ color:var(--ag-alpine); padding-top:4px; }

/* Home: a quiet detour for sales leaders, under the hero buttons */
.ag-detour{ margin:18px 0 0; font-size:14.5px; color:var(--ag-muted); }
.ag-detour a{ color:var(--ag-text); font-weight:600; text-decoration:underline; text-underline-offset:3px; text-decoration-color:var(--ag-line-strong); }
.ag-detour a:hover{ text-decoration-color:var(--ag-text); }
