@font-face{font-family:'All Round Gothic';src:url('fonts/allroundgothic-bold.otf') format('opentype');font-weight:700;font-display:swap}
@font-face{font-family:'All Round Gothic';src:url('fonts/allroundgothic-demi.otf') format('opentype');font-weight:600;font-display:swap}
@font-face{font-family:'All Round Gothic Book';src:url('fonts/allroundgothic-book.otf') format('opentype');font-weight:400;font-display:swap}
:root{
  /* Locked Amplify brand tokens */
  --still:#39164B; --still2:#5C2278; --cyan:#00FFFF; --blaze:#FF9955;
  --amp:#7A3895; --develop:#00CCCC; --pm:#888888;
  /* Surface system derived from Still */
  --bg:#150A1C; --panel:#241031; --panel-2:#2E1540;
  --line:#3A2049; --line-2:#4C2C60;
  --ink:#FFFFFF; --ink-2:#C9B7D6; --ink-3:#8E78A0;
  /* Semantic aliases -> brand palette */
  --signal:var(--blaze); --on:var(--cyan); --warn:var(--blaze); --off:var(--blaze);
  --mono:'All Round Gothic','All Round Gothic Book',sans-serif;
  --sans:'All Round Gothic Book','All Round Gothic',sans-serif;
  --display:'All Round Gothic',sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  background:var(--bg);color:var(--ink);font-family:var(--sans);font-weight:400;
  -webkit-font-smoothing:antialiased;min-height:100vh;position:relative;overflow-x:hidden;
  background-image:
    radial-gradient(1000px 560px at 84% -10%, rgba(92,34,120,.6), transparent 62%),
    radial-gradient(620px 420px at 2% 2%, rgba(0,255,255,.07), transparent 60%),
    radial-gradient(760px 520px at 50% 108%, rgba(255,153,85,.09), transparent 62%);
  background-attachment:fixed;
}
body::after{
  content:'';position:fixed;inset:0;pointer-events:none;z-index:9999;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.032'/%3E%3C/svg%3E");
}
.wrap{max-width:1440px;margin:0 auto;padding:0 26px 90px}

/* ── BAR ── */
.bar{
  position:sticky;top:0;z-index:80;display:flex;align-items:center;gap:22px;
  padding:13px 26px;margin:0 -26px;
  background:rgba(21,10,28,.9);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);
}
.mark{display:flex;align-items:center;gap:11px;flex-shrink:0}
.mark .ring{width:28px;height:28px;flex-shrink:0}
.mark .a{font-family:var(--display);font-weight:700;font-size:20px;letter-spacing:.02em;line-height:1}
.mark .a em{font-style:normal}
.mark .t{font-family:var(--display);font-weight:700;font-size:8.5px;letter-spacing:.28em;color:var(--cyan);text-transform:uppercase;margin-top:4px}
.rec{display:flex;align-items:center;gap:7px;font-family:var(--display);font-weight:700;font-size:9.5px;letter-spacing:.2em;color:var(--ink-3);text-transform:uppercase}
.dot{width:6px;height:6px;border-radius:50%;background:var(--cyan);box-shadow:0 0 10px var(--cyan);animation:pulse 2.4s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.25}}
.bar-sp{flex:1}
.clock{font-family:var(--display);font-weight:700;font-size:13px;letter-spacing:.05em;font-variant-numeric:tabular-nums}
.clock span{color:var(--ink-3);font-size:9.5px;letter-spacing:.2em;margin-left:9px;text-transform:uppercase}
.btn{
  font-family:var(--display);font-weight:700;font-size:10px;letter-spacing:.2em;text-transform:uppercase;
  background:transparent;color:var(--blaze);border:1px solid rgba(255,153,85,.42);
  padding:9px 17px;cursor:pointer;transition:.2s;white-space:nowrap;border-radius:100px;
}
.btn:hover{background:var(--blaze);color:var(--still);border-color:var(--blaze)}
.btn:disabled{opacity:.4;cursor:wait}

/* ── HERO ── */
.hero{padding:44px 0 34px;border-bottom:1px solid var(--line)}
.eyebrow{font-family:var(--display);font-weight:700;font-size:10px;letter-spacing:.3em;color:var(--cyan);text-transform:uppercase;margin-bottom:16px}
.hero h1{font-family:var(--display);font-weight:700;font-size:clamp(36px,5.6vw,68px);line-height:1.02;letter-spacing:-.01em;text-transform:none}
.hero h1 em{font-style:normal;color:var(--blaze)}
.hero p{margin-top:18px;max-width:600px;color:var(--ink-2);font-size:15px;line-height:1.65}
.values{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}
.chip{
  font-family:var(--display);font-weight:700;font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;
  color:var(--ink-2);border:1px solid var(--line-2);padding:7px 14px;border-radius:100px
}
.chip b{color:var(--cyan);font-weight:700}

/* ── STATS ── */
.stats{display:grid;grid-template-columns:1.35fr 1fr 1fr 1fr;gap:14px;background:none;border:0;margin:30px 0}
.stat{
  background:linear-gradient(160deg,var(--panel-2) 0%,var(--panel) 62%);
  border:1px solid var(--line);border-radius:14px;padding:22px 20px;position:relative;overflow:hidden
}
.stat::before{content:'';position:absolute;top:0;left:0;height:3px;width:100%;background:var(--line-2)}
.stat.on::before{background:linear-gradient(90deg,var(--develop),var(--cyan))}
.stat.warn::before,.stat.off::before{background:var(--blaze)}
.stat .k{font-family:var(--display);font-weight:700;font-size:9px;letter-spacing:.22em;color:var(--ink-3);text-transform:uppercase;margin-bottom:14px;line-height:1.55}
.stat .v{font-family:var(--display);font-weight:700;font-size:clamp(30px,3.4vw,46px);line-height:1;letter-spacing:0;font-variant-numeric:tabular-nums}
.stat .s{font-family:var(--sans);font-size:12.5px;color:var(--ink-2);margin-top:10px}
.stat .s b{color:var(--ink);font-weight:400;font-family:var(--display)}
.track{height:4px;background:rgba(0,0,0,.34);margin-top:16px;position:relative;overflow:hidden;border-radius:100px}
.track i{position:absolute;inset:0 auto 0 0;background:var(--ink-3);width:0;transition:width 1.1s cubic-bezier(.2,.8,.2,1);border-radius:100px}
.track i.on{background:linear-gradient(90deg,var(--develop),var(--cyan))}
.track i.warn,.track i.off{background:var(--blaze)}

/* ── GRID / CARDS ── */
.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px;margin-top:16px}
.c12{grid-column:span 12}.c8{grid-column:span 8}.c7{grid-column:span 7}
.c6{grid-column:span 6}.c5{grid-column:span 5}.c4{grid-column:span 4}
.card{background:var(--panel);border:1px solid var(--line);border-radius:14px;overflow:hidden;display:flex;flex-direction:column}
.card-h{display:flex;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid var(--line)}
.card-h h2{font-family:var(--display);font-weight:700;font-size:11px;letter-spacing:.26em;text-transform:uppercase;color:var(--ink)}
.card-h .src{
  font-family:var(--display);font-weight:700;font-size:8.5px;letter-spacing:.2em;color:var(--ink-3);
  text-transform:uppercase;margin-left:auto;border:1px solid var(--line-2);padding:4px 10px;border-radius:100px;text-decoration:none
}
a.src:hover{color:var(--cyan);border-color:var(--cyan)}
.card-b{padding:20px;flex:1}
.card-b.flush{padding:0}

/* ── LAUNCHER ── */
.launcher{
  display:block;text-decoration:none;color:inherit;position:relative;overflow:hidden;height:100%;
  background:linear-gradient(140deg,var(--still2) 0%,var(--still) 58%,#2A1038 100%);
  border:1px solid var(--line-2);border-radius:14px;padding:28px 26px;transition:.28s
}
.launcher:hover{border-color:var(--blaze);transform:translateY(-2px)}
.launcher::after{
  content:'';position:absolute;right:-70px;top:-70px;width:230px;height:230px;border-radius:50%;
  background:radial-gradient(circle,rgba(255,153,85,.3),transparent 66%);transition:.45s
}
.launcher:hover::after{transform:scale(1.3)}
.launcher .lv{font-family:var(--display);font-weight:700;font-size:9px;letter-spacing:.26em;color:var(--cyan);text-transform:uppercase}
.launcher h3{font-family:var(--display);font-weight:700;font-size:38px;line-height:1.02;margin:12px 0 10px;text-transform:none}
.launcher p{color:var(--ink-2);font-size:13.5px;max-width:420px;line-height:1.6}
.launcher .go{
  display:inline-block;margin-top:20px;font-family:var(--display);font-weight:700;font-size:10px;
  letter-spacing:.2em;color:var(--still);text-transform:uppercase;background:var(--blaze);
  padding:11px 20px;border-radius:100px
}

/* ── STACK ── */
.stack{display:grid;grid-template-columns:repeat(auto-fill,minmax(114px,1fr));gap:1px;background:var(--line)}
.tool{background:var(--panel);padding:16px 13px;text-decoration:none;color:var(--ink-2);display:flex;flex-direction:column;gap:5px;transition:.18s;min-height:78px;justify-content:center}
.tool:hover{background:var(--panel-2)}
.tool .n{font-size:13px;font-weight:400;color:var(--ink)}
.tool .r{font-family:var(--display);font-weight:700;font-size:8.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-3)}
.tool:hover .r{color:var(--cyan)}

/* ── SCORECARD ── */
.sc-row{display:grid;grid-template-columns:1fr auto 76px 62px;gap:12px;align-items:center;padding:13px 20px;border-bottom:1px solid var(--line);font-size:13.5px}
.sc-row:last-child{border-bottom:0}
.sc-row .nm i{display:block;font-style:normal;font-family:var(--display);font-weight:700;font-size:8.5px;letter-spacing:.18em;color:var(--ink-3);text-transform:uppercase;margin-top:4px}
.sc-row .val{font-family:var(--display);font-weight:700;font-size:15px;font-variant-numeric:tabular-nums;text-align:right}
.sc-row .goal{font-family:var(--sans);font-size:11.5px;color:var(--ink-3);text-align:right}
.pill{font-family:var(--display);font-weight:700;font-size:8.5px;letter-spacing:.16em;text-transform:uppercase;padding:4px 0;text-align:center;border:1px solid;border-radius:100px}
.pill.on{color:var(--cyan);border-color:rgba(0,255,255,.42)}
.pill.off{color:var(--blaze);border-color:rgba(255,153,85,.45)}
.pill.nodata{color:var(--ink-3);border-color:var(--line-2)}

/* ── ROCKS ── */
.rock{padding:15px 20px;border-bottom:1px solid var(--line)}
.rock:last-child{border-bottom:0}
.rock .top{display:flex;align-items:baseline;gap:10px}
.rock .ttl{font-size:13.5px;flex:1}
.rock .own{font-family:var(--display);font-weight:700;font-size:9px;letter-spacing:.18em;color:var(--ink-3);text-transform:uppercase}
.rock .pct{font-family:var(--display);font-weight:700;font-size:12px;color:var(--ink-2);font-variant-numeric:tabular-nums}
.rbar{height:4px;background:rgba(0,0,0,.34);margin-top:11px;position:relative;border-radius:100px;overflow:hidden}
.rbar i{position:absolute;inset:0 auto 0 0;transition:width .9s ease;border-radius:100px}

/* ── FEED ── */
.feed-item{padding:14px 20px;border-bottom:1px solid var(--line);display:flex;gap:13px}
.feed-item:last-child{border-bottom:0}
.feed-item .bullet{width:6px;height:6px;border-radius:50%;background:var(--cyan);margin-top:7px;flex-shrink:0}
.feed-item .txt{font-size:13.5px;line-height:1.55;flex:1;min-width:0}
.feed-item .meta{font-family:var(--display);font-weight:700;font-size:8.5px;letter-spacing:.18em;color:var(--ink-3);text-transform:uppercase;margin-top:6px}
.feed-item .kicon{font-size:13px;line-height:1.4;flex-shrink:0;width:14px;text-align:center}

/* ── HUBSPOT ── */
.hs-top{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border-bottom:1px solid var(--line)}
.hs-top div{background:var(--panel);padding:19px 20px}
.hs-top .k{font-family:var(--display);font-weight:700;font-size:8.5px;letter-spacing:.22em;color:var(--ink-3);text-transform:uppercase}
.hs-top .v{font-family:var(--display);font-weight:700;font-size:31px;margin-top:10px;font-variant-numeric:tabular-nums}
.hs-top .v.f{color:var(--blaze)}
.stage{display:flex;align-items:center;gap:12px;padding:12px 20px;border-bottom:1px solid var(--line)}
.stage:last-child{border-bottom:0}
.stage .nm{font-size:13px;flex:1}
.stage .ct{font-family:var(--display);font-weight:700;font-size:9.5px;color:var(--ink-3);letter-spacing:.12em}
.stage .vl{font-family:var(--display);font-weight:700;font-size:13.5px;font-variant-numeric:tabular-nums}

/* ── INPUTS ── */
.wx-in{display:flex;gap:8px;margin-bottom:0}
.wx-in input{
  flex:1;background:rgba(0,0,0,.3);border:1px solid var(--line-2);color:var(--ink);
  padding:11px 15px;font-family:var(--sans);font-size:13px;outline:none;border-radius:100px
}
.wx-in input::placeholder{color:var(--ink-3)}
.wx-in input:focus{border-color:var(--cyan)}
.wx-presets{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0 16px}
.wx-presets button{
  font-family:var(--display);font-weight:700;font-size:9px;letter-spacing:.16em;text-transform:uppercase;
  background:transparent;border:1px solid var(--line-2);color:var(--ink-3);padding:6px 12px;cursor:pointer;transition:.15s;border-radius:100px
}
.wx-presets button:hover{border-color:var(--cyan);color:var(--cyan)}
.wx-out{border-top:1px solid var(--line);padding-top:18px}
.wx-main{display:flex;align-items:flex-start;gap:18px}
.wx-temp{font-family:var(--display);font-weight:700;font-size:58px;line-height:.92;font-variant-numeric:tabular-nums}
.wx-temp sup{font-size:21px;vertical-align:super;color:var(--ink-3)}
.wx-meta .loc{font-family:var(--display);font-weight:700;font-size:9.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--cyan)}
.wx-meta .cond{font-size:16px;margin-top:7px}
.wx-meta .hl{font-family:var(--sans);font-size:12px;color:var(--ink-2);margin-top:9px}
.wx-sum{margin-top:15px;font-size:13px;color:var(--ink-2);line-height:1.6}

/* ── ASK ── */
.ask-log{max-height:330px;overflow-y:auto;margin-bottom:16px}
.ask-log::-webkit-scrollbar{width:5px}
.ask-log::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:100px}
.ask-empty{font-family:var(--display);font-weight:700;font-size:10px;letter-spacing:.16em;color:var(--ink-3);text-transform:uppercase;padding:14px 0;line-height:1.9}
.msg{margin-bottom:17px;display:flex;gap:13px}
.msg .who{font-family:var(--display);font-weight:700;font-size:8.5px;letter-spacing:.2em;text-transform:uppercase;flex-shrink:0;width:56px;padding-top:3px}
.msg.u .who{color:var(--ink-3)}
.msg.a .who{color:var(--cyan)}
.msg .body{font-size:13.5px;line-height:1.65;white-space:pre-wrap;flex:1;min-width:0}
.msg.u .body{color:var(--ink-2)}
.msg .tools{font-family:var(--display);font-weight:700;font-size:8.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-3);margin-top:9px;border-left:2px solid var(--blaze);padding-left:9px}
.ask-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}
.ask-chips button{
  font-family:var(--display);font-weight:700;font-size:9px;letter-spacing:.14em;text-transform:uppercase;
  background:transparent;border:1px solid var(--line-2);color:var(--ink-3);padding:7px 13px;cursor:pointer;transition:.15s;text-align:left;border-radius:100px
}
.ask-chips button:hover{border-color:var(--blaze);color:var(--blaze)}

/* ── STATES ── */
.load{display:flex;align-items:center;gap:10px;padding:24px 20px;font-family:var(--display);font-weight:700;font-size:10px;letter-spacing:.2em;color:var(--ink-3);text-transform:uppercase}
.spin{width:11px;height:11px;border:1.5px solid var(--line-2);border-top-color:var(--cyan);border-radius:50%;animation:sp .8s linear infinite;display:inline-block}
@keyframes sp{to{transform:rotate(360deg)}}
.err{padding:20px;font-family:var(--display);font-weight:700;font-size:10px;letter-spacing:.14em;color:var(--blaze);line-height:1.8;text-transform:uppercase}
.err span{display:block;font-family:var(--sans);font-weight:400;color:var(--ink-3);letter-spacing:0;margin-top:7px;text-transform:none;font-size:12.5px}

.foot{margin-top:36px;padding-top:22px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:16px;align-items:center;font-family:var(--display);font-weight:700;font-size:9px;letter-spacing:.2em;color:var(--ink-3);text-transform:uppercase}
.foot b{color:var(--cyan);font-weight:700}


/* ── TV / SIGNAGE MODE (?tv=1) ── */
body.tv{font-size:19px}
body.tv .bar{position:static}
body.tv .hero{padding:34px 0 26px}
body.tv .hero h1{font-size:clamp(44px,5vw,76px)}
body.tv .stats{grid-template-columns:1fr 1fr}
body.tv .stat .v{font-size:clamp(44px,4.6vw,64px)}
body.tv .stat .k{font-size:11px}
body.tv .card-h h2{font-size:14px}
body.tv .sc-row,body.tv .rock,body.tv .feed-item,body.tv .stage{font-size:17px;padding-top:18px;padding-bottom:18px}
body.tv .sc-row .val{font-size:19px}
body.tv .hs-top .v{font-size:40px}
body.tv .wx-temp{font-size:74px}
body.tv .wx-in,body.tv .wx-presets{display:none}
body.tv .tool{min-height:92px}
body.tv .tool .n{font-size:16px}
body.tv .foot{font-size:11px}



/* ── REAL LOGO (inlined AM25_HZ_Logo_WithGrad) ── */
.mark{display:flex;align-items:center;gap:15px}
#amplogoWrap{display:block;line-height:0;flex-shrink:0}
#amplogoWrap img{height:32px;width:auto;display:block}
.mark .t{border-left:1px solid var(--line-2);padding-left:15px;margin-top:0}
body.tv #amplogoWrap img{height:46px}
body.tv .mark .t{font-size:11px}
@media(max-width:640px){#amplogoWrap img{height:25px}.mark .t{display:none}}


/* ── GAUGES ── */
.gauges{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.gauge{text-align:center}
.gauge svg{width:100%;max-width:270px;height:auto;overflow:visible}
.gauge svg path[data-off]{transition:stroke-dashoffset 1.2s cubic-bezier(.2,.8,.2,1)}
.gauge-cap{font-family:var(--display);font-weight:700;font-size:17px;margin-top:2px;letter-spacing:.01em}
.gauge-cap span{color:var(--ink-3);font-weight:400;font-family:var(--sans);font-size:13px}
.gauge-lbl{font-family:var(--display);font-weight:700;font-size:9.5px;letter-spacing:.24em;
  text-transform:uppercase;color:var(--ink-3);margin-top:8px}
.gauge-note{margin-top:20px;padding-top:16px;border-top:1px solid var(--line);
  font-size:13px;color:var(--ink-2);line-height:1.6;text-align:center}
.gauge-note b{color:var(--ink);font-family:var(--display);font-weight:700}
body.tv .gauge-cap{font-size:22px}
body.tv .gauge-lbl{font-size:12px}
body.tv .gauge-note{font-size:16px}
@media(max-width:900px){.gauges{grid-template-columns:1fr;gap:28px}}

/* ── ROLLOVER: square + Blaze orange (locked brand accent) ── */
.btn,.tool,.chip,.wx-presets button,.ask-chips button,.card-h .src,
.launcher,.launcher .go,.sc-row,.rock,.feed-item,.stage,.wx-in input,.card{
  transition:background .16s ease,color .16s ease,border-color .16s ease,border-radius .16s ease,transform .16s ease;
}
.btn:hover,.wx-presets button:hover,.ask-chips button:hover,a.src:hover{
  border-radius:0 !important;background:var(--blaze) !important;color:var(--still) !important;border-color:var(--blaze) !important;
}
.tool:hover{border-radius:0;background:var(--blaze);color:var(--still)}
.tool:hover .n,.tool:hover .r{color:var(--still)}
.chip:hover{border-radius:0;background:var(--blaze);color:var(--still);border-color:var(--blaze)}
.chip:hover b{color:var(--still)}
.sc-row:hover,.rock:hover,.feed-item:hover,.stage:hover{background:rgba(255,153,85,.13)}
.sc-row:hover .val,.stage:hover .vl{color:var(--blaze)}
.launcher:hover{border-radius:0}
.launcher:hover .go{border-radius:0;background:var(--still);color:var(--blaze)}
.stat:hover{border-radius:0;border-color:var(--blaze)}
.card:hover{border-color:var(--line-2)}
.wx-in input:focus{border-radius:0;border-color:var(--blaze)}

/* ── BIG NUMBERS: read it from across the room ── */
.stat{padding:26px 24px 24px}
.stat .v{font-size:clamp(52px,6.2vw,92px);line-height:.88;letter-spacing:-.02em}
.stat .k{font-size:10px;letter-spacing:.24em;margin-bottom:16px}
.stat .s{font-size:14px;margin-top:14px}
.sc-row{grid-template-columns:1fr auto 74px;padding:16px 20px}
.sc-row .goal{display:none}
.sc-row .val{font-size:30px;line-height:1}
.sc-row .nm{font-size:14.5px}
.rock .pct{font-size:24px}
.rock .ttl{font-size:14.5px}
.hs-top .v{font-size:clamp(38px,4vw,54px);line-height:1}
.stage .vl{font-size:19px}
.stage .nm{font-size:14px}
.wx-temp{font-size:86px}
.feed-item .txt{font-size:14.5px}
@media(max-width:640px){.sc-row{grid-template-columns:1fr 74px}.sc-row .val{font-size:24px}}

.reveal{opacity:0;transform:translateY(14px);animation:rv .7s cubic-bezier(.2,.8,.2,1) forwards}
@keyframes rv{to{opacity:1;transform:none}}

@media(max-width:1080px){.stats{grid-template-columns:1fr 1fr}.c8,.c7,.c6,.c5,.c4{grid-column:span 12}}
@media(max-width:640px){
  .wrap{padding:0 16px 60px}.bar{padding:12px 16px;margin:0 -16px;gap:12px}
  .stats{grid-template-columns:1fr}.clock span{display:none}
  .sc-row{grid-template-columns:1fr 68px 56px;gap:8px}.sc-row .goal{display:none}
}
