/* Go Hitting Challenge pages (on top of /styles.css). */
.gh-hero{background:linear-gradient(110deg,#04152e 0%,#0c2a54 70%,#0e315c 100%);color:#fff;position:relative;overflow:hidden;isolation:isolate}
.gh-hero:before{content:"";position:absolute;inset:0 0 0 40%;z-index:-1;background:url('/assets/hero-flag-brush.svg') center/cover no-repeat;opacity:.55}
.gh-hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#04152e 15%,#04152ed9 45%,#04152e33 100%)}
.gh-hero .wrap{padding:56px 0 60px}
.gh-presents{display:flex;align-items:center;gap:12px;font-size:12px;font-weight:800;letter-spacing:.14em;color:#c9d6e6}
.gh-presents img{width:52px;height:52px;border-radius:50%;background:#fff}
.gh-hero h1{font:900 clamp(52px,7vw,104px)/.9 'Barlow Condensed',Impact,sans-serif;text-transform:uppercase;margin:18px 0 14px;letter-spacing:-.01em}
.gh-hero h1 em{font-style:normal;color:#f5263b}
.gh-hero p.lead{font-size:clamp(18px,2vw,22px);line-height:1.5;color:#e6edf6;max-width:640px;margin:0 0 24px}
.gh-hero .btns{display:flex;gap:12px;flex-wrap:wrap}
.btn-ghost{background:transparent;border:2px solid #fff;color:#fff}
.gh-month{display:inline-block;margin-top:18px;font-size:13px;font-weight:700;color:#c9d6e6}
.gh-month b{color:#fff}
.gh-section{padding:56px 0}
.gh-section.alt{background:#f5f7f9}
.gh-section h2.gh-h{font:900 clamp(34px,4.5vw,52px)/.95 'Barlow Condensed',Impact,sans-serif;text-transform:uppercase;color:var(--navy);margin:0 0 10px}
.gh-section .sub{font-size:17px;line-height:1.6;color:#4c5a73;max-width:720px;margin:0 0 28px}
.gh-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.gh-step{background:#fff;border-radius:14px;padding:22px;box-shadow:0 4px 20px #071c3612}
.gh-step b{font:900 44px/1 'Barlow Condensed',Impact,sans-serif;color:var(--red)}
.gh-step h3{font:900 24px/1.05 'Barlow Condensed',Impact,sans-serif;text-transform:uppercase;margin:8px 0;color:var(--navy)}
.gh-step p{margin:0;font-size:15px;line-height:1.6;color:#4c5a73}
.gh-events{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.gh-event{background:#fff;border:1px solid #dbe2ea;border-radius:14px;padding:20px;display:flex;flex-direction:column;gap:8px;border-top:5px solid var(--navy)}
.gh-event.digital{border-top-color:var(--red)}
.gh-event .tag{font-size:11px;font-weight:800;letter-spacing:.12em;color:#4c5a73;text-transform:uppercase}
.gh-event h3{font:900 28px/1 'Barlow Condensed',Impact,sans-serif;text-transform:uppercase;margin:0;color:var(--navy)}
.gh-event p{margin:0;font-size:15px;line-height:1.55;color:#3f4b62}
.gh-event a{margin-top:auto;font-size:13px;font-weight:800;color:var(--red)}
.gh-event .sb{align-self:flex-start;background:var(--sb);color:var(--sb-ink);font-size:11px;font-weight:800;padding:3px 7px;border-radius:4px;letter-spacing:.06em}
.gh-prizes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.gh-prize{background:var(--navy);color:#fff;border-radius:14px;padding:22px}
.gh-prize b{display:block;font:900 30px/1 'Barlow Condensed',Impact,sans-serif;text-transform:uppercase;margin-bottom:8px}
.gh-prize p{margin:0;font-size:15px;line-height:1.55;color:#dce6f1}
.gh-board{background:#fff;border-radius:14px;box-shadow:0 4px 20px #071c3612;overflow:hidden}
.gh-board-bar{display:flex;flex-wrap:wrap;gap:10px;padding:16px;border-bottom:1px solid #e3e8ef;align-items:end}
.gh-board-bar label{display:flex;flex-direction:column;gap:5px;font-size:10px;font-weight:900;letter-spacing:.12em;color:var(--navy)}
.gh-board-bar select{min-height:44px;padding:8px 10px;border:1px solid #bbc5d2;border-radius:6px;background:#fcfdff;color:var(--navy);font-size:15px}
.gh-board table{width:100%;border-collapse:collapse}
.gh-board th,.gh-board td{padding:12px 16px;text-align:left;border-bottom:1px solid #eef1f5;font-size:15px}
.gh-board th{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#4c5a73}
.gh-board td.rk{font:900 22px 'Barlow Condensed',Impact,sans-serif;color:#4c5a73;width:56px}
.gh-board tr.top td.rk{color:var(--red)}
.gh-board td.val{font-weight:800;text-align:right}
.gh-board .st{color:#4c5a73;font-weight:500}
.gh-board-empty{padding:26px 18px;color:#4c5a73;font-size:15px;line-height:1.6}
.gh-board-note{padding:12px 16px;font-size:12.5px;color:#4c5a73;background:#f7f9fb}
.gh-pace td{color:#1f3a6e;font-style:italic;background:#f4f7fb}
.gh-faq details{background:#fff;border-radius:10px;padding:16px 18px;margin-bottom:10px;border:1px solid #dbe2ea}
.gh-faq summary{font-weight:800;cursor:pointer;color:var(--navy);font-size:16px}
.gh-faq p{margin:10px 0 0;line-height:1.6;color:#3f4b62}
.gh-cta-band{background:var(--navy);color:#fff;text-align:center;padding:48px 0}
.gh-cta-band h2{font:900 clamp(34px,5vw,56px)/.95 'Barlow Condensed',Impact,sans-serif;text-transform:uppercase;margin:0 0 14px}
.gh-cta-band p{color:#dce6f1;margin:0 0 20px}
/* app */
.gh-app{max-width:760px;margin:0 auto;padding:28px 0 60px}
.gh-card{background:#fff;border-radius:14px;padding:22px;box-shadow:0 4px 20px #071c3612;margin-bottom:16px}
.gh-card h2{font:900 30px/1 'Barlow Condensed',Impact,sans-serif;text-transform:uppercase;color:var(--navy);margin:0 0 12px}
.gh-card h3{font:900 22px/1.05 'Barlow Condensed',Impact,sans-serif;text-transform:uppercase;color:var(--navy);margin:0 0 6px}
.gh-card p{color:#3f4b62;line-height:1.6;margin:0 0 12px}
.gh-form label{display:block;font-size:10px;letter-spacing:.12em;font-weight:900;margin:14px 0 6px;color:var(--navy)}
.gh-form input:not([type=checkbox]):not([type=radio]),.gh-form select{width:100%;padding:12px;border:1px solid #bbc5d2;border-radius:6px;min-height:48px;color:var(--navy);background:#fcfdff;font-size:16px}
.gh-form .row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.gh-form .consent{display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.55;color:#3f4b62;margin:16px 0}
.gh-form .consent input{width:20px;height:20px;flex:0 0 20px;accent-color:var(--red);margin-top:2px}
.gh-form .btn{width:100%;justify-content:center;margin-top:12px}
.gh-err{color:#b0101f;font-weight:700;font-size:14px;margin:10px 0 0;min-height:1px}
.gh-ok{color:#157b46;font-weight:700;font-size:14px;margin:10px 0 0}
.gh-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.gh-tabs button{min-height:44px;padding:0 16px;border-radius:999px;border:1.5px solid #bbc5d2;background:#fff;color:var(--navy);font-weight:800;font-size:14px}
.gh-tabs button.on{background:var(--navy);border-color:var(--navy);color:#fff}
.gh-hitter-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}
.gh-hitter-head .meta{font-size:13px;color:#4c5a73;font-weight:600}
.gh-rank{display:flex;gap:18px;align-items:baseline;background:#f4f7fb;border-radius:10px;padding:12px 14px;margin-bottom:12px}
.gh-rank b{font:900 40px/1 'Barlow Condensed',Impact,sans-serif;color:var(--red)}
.gh-rank span{font-size:13px;color:#3f4b62;font-weight:600}
.gh-tiles{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.gh-tile{border:1px solid #dbe2ea;border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:6px;background:#fff}
.gh-tile h4{margin:0;font:900 20px/1 'Barlow Condensed',Impact,sans-serif;text-transform:uppercase;color:var(--navy)}
.gh-tile .v{font-weight:800;color:var(--navy);font-size:15px}
.gh-tile .s{font-size:12.5px;color:#4c5a73;line-height:1.45}
.gh-tile button,.gh-tile a.b{margin-top:auto;min-height:44px;border-radius:8px;border:0;background:var(--red);color:#fff;font-weight:800;font-size:14px;display:flex;align-items:center;justify-content:center;text-decoration:none}
.gh-tile button.sec{background:var(--navy)}
.gh-tile button:disabled{background:#9aa6b6}
.gh-modal{position:fixed;inset:0;z-index:60;background:rgba(4,12,26,.88);display:flex;align-items:flex-start;justify-content:center;overflow:auto;padding:16px}
.gh-modal[hidden]{display:none}
.gh-modal-in{background:#0b1a33;color:#fff;border-radius:14px;width:100%;max-width:600px;padding:16px;margin:auto 0}
.gh-modal-in.light{background:#fff;color:var(--navy)}
.gh-modal-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;gap:10px}
.gh-modal-top h3{font:900 24px/1 'Barlow Condensed',Impact,sans-serif;text-transform:uppercase;margin:0}
.gh-x{min-width:44px;min-height:44px;border-radius:50%;border:1.5px solid currentColor;background:transparent;color:inherit;font-size:20px;font-weight:700}
.gh-result{text-align:center;padding:10px 0}
.gh-result b{display:block;font:900 64px/1 'Barlow Condensed',Impact,sans-serif;color:#ff8a96}
.gh-result p{color:#dce6f1;margin:8px 0 14px}
.gh-rules h3{font:900 26px/1 'Barlow Condensed',Impact,sans-serif;text-transform:uppercase;color:var(--navy);margin:28px 0 8px}
.gh-rules table{border-collapse:collapse;width:100%;margin:8px 0 14px;font-size:15px}
.gh-rules th,.gh-rules td{border:1px solid #dbe2ea;padding:9px 10px;text-align:left;vertical-align:top}
.gh-rules th{background:#f4f7fb}
.gh-progress{height:8px;background:#e3e8ef;border-radius:4px;overflow:hidden;margin:10px 0}
.gh-progress i{display:block;height:100%;background:var(--red);width:0}
.gh-entry{display:flex;justify-content:space-between;gap:10px;font-size:13px;padding:6px 0;border-top:1px solid #eef1f5;color:#3f4b62}
.gh-entry b{color:var(--navy)}
.gh-pill{font-size:11px;font-weight:800;padding:3px 8px;border-radius:999px;text-transform:uppercase;letter-spacing:.06em}
.gh-pill.submitted{background:#fff6d6;color:#6b4e00}.gh-pill.verified{background:#e2f5ea;color:#11663a}.gh-pill.rejected{background:#fde8ea;color:#9b0f1d}
@media(max-width:860px){.gh-steps,.gh-events,.gh-prizes{grid-template-columns:1fr}}
@media(max-width:480px){.gh-tiles{grid-template-columns:1fr}.gh-form .row{grid-template-columns:1fr}.gh-board th,.gh-board td{padding:10px 10px}}
/* ---------- Next Step: matched pick + offer catalog ---------- */
.ns-pick{background:var(--navy);color:#fff;border-radius:16px;padding:24px;display:grid;gap:12px;box-shadow:0 8px 28px #071c3624}
.ns-pick .k{font-size:11px;font-weight:900;letter-spacing:.16em;color:#ffd0d5}
.ns-pick h3{font:900 clamp(28px,4vw,40px)/.95 'Barlow Condensed',Impact,sans-serif;text-transform:uppercase;margin:0;color:#fff}
.ns-pick .why{font-size:16px;line-height:1.55;color:#e6edf6;margin:0}
.ns-pick .meta{font-size:13px;color:#c9d6e6}
.ns-pick .meta b{color:#fff}
.ns-pick .row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.ns-pick .btn{justify-content:center}
.ns-pick .soon{font-size:12px;font-weight:800;color:#ffe08a}
.ns-also{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;margin-top:4px}
.ns-also a{display:block;background:#ffffff14;border:1px solid #ffffff2e;border-radius:10px;padding:10px 12px;color:#fff;text-decoration:none;font-size:14px;line-height:1.35}
.ns-also a b{display:block;font-size:15px}
.ns-also a span{color:#c9d6e6;font-size:12.5px}
.ns-also a:hover,.ns-also a:focus-visible{background:#ffffff26}
.ns-form{display:flex;flex-wrap:wrap;gap:10px;align-items:end;margin:0 0 18px}
.ns-form label{display:flex;flex-direction:column;gap:5px;font-size:10px;font-weight:900;letter-spacing:.12em;color:var(--navy)}
.ns-form select{min-height:44px;padding:8px 10px;border:1px solid #bbc5d2;border-radius:6px;background:#fcfdff;color:var(--navy);font-size:15px}
.ns-group{margin-top:34px}
.ns-group h3{font:900 26px/1 'Barlow Condensed',Impact,sans-serif;text-transform:uppercase;color:var(--navy);margin:0 0 12px}
.ns-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}
.ns-card{background:#fff;border:1px solid #dbe2ea;border-radius:14px;padding:18px;display:flex;flex-direction:column;gap:8px}
.ns-card .top{display:flex;justify-content:space-between;gap:10px;align-items:baseline}
.ns-card .brand-tag{font-size:10.5px;font-weight:900;letter-spacing:.14em;color:#4c5a73}
.ns-card .price{font:900 22px/1 'Barlow Condensed',Impact,sans-serif;color:var(--red)}
.ns-card h4{font:900 22px/1.05 'Barlow Condensed',Impact,sans-serif;text-transform:uppercase;color:var(--navy);margin:0}
.ns-card .who{font-size:12.5px;font-weight:700;color:#4c5a73}
.ns-card p{margin:0;font-size:14.5px;line-height:1.55;color:#3f4b62}
.ns-card .soon{font-size:12px;font-weight:800;color:#8a5a00}
.ns-card a.go{margin-top:auto;font-size:14px;font-weight:800;color:var(--red);text-decoration:none}
.ns-card a.go:hover,.ns-card a.go:focus-visible{text-decoration:underline}
.ns-disclose{font-size:13px;color:#4c5a73;line-height:1.6;margin-top:28px}
.gh-share-row{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:10px}
@media (max-width:640px){.ns-pick{padding:20px}.ns-form label{flex:1 1 40%}}
