:root{
 --bg:#07110d;--panel:#0d1a14;--panel2:#102219;--text:#f7f3ea;--muted:#afbeb4;
 --gold:#d8b565;--green:#9ee6b5;--line:#294335;--danger:#ffad99;--white:#fff;
 --shadow:0 28px 70px rgba(0,0,0,.28);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:radial-gradient(circle at 86% -10%,#173828 0,transparent 31%),var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
a{text-decoration:none;color:inherit}
button,input,select,textarea{font:inherit}
.wrap{width:min(1120px,calc(100% - 30px));margin:auto}
.topbar{display:flex;align-items:center;justify-content:space-between;padding:18px 0;gap:16px}
.brand{display:flex;align-items:center;gap:10px;font-weight:950}
.brandmark{width:40px;height:40px;border-radius:13px;background:linear-gradient(145deg,var(--gold),#8e7033);display:grid;place-items:center;color:#07110d;font-size:12px;font-weight:1000}
.navlinks{display:flex;align-items:center;gap:15px;color:#cad5ce;font-size:13px}
.btn{border:0;border-radius:14px;padding:14px 18px;font-weight:900;cursor:pointer;display:inline-flex;justify-content:center;align-items:center;gap:8px}
.btn:disabled{opacity:.55;cursor:not-allowed}
.primary{background:var(--gold);color:#07110d}
.green{background:var(--green);color:#07110d}
.ghost{background:#0a1510;color:var(--text);border:1px solid #375143}
.danger{background:#4b1e17;color:#ffd8cf;border:1px solid #743528}
.hero{padding:48px 0 38px;display:grid;grid-template-columns:1.1fr .9fr;gap:38px;align-items:center}
.eyebrow{display:inline-flex;padding:8px 11px;border:1px solid #34513e;border-radius:999px;background:#0f2118;color:var(--green);font-size:11px;font-weight:950;letter-spacing:.12em;text-transform:uppercase}
h1{font-size:clamp(44px,7vw,82px);line-height:.95;letter-spacing:-.055em;margin:18px 0}
h2{font-size:clamp(31px,4.5vw,50px);letter-spacing:-.04em;margin:10px 0 14px}
h3{margin:10px 0}
.lead,.intro{color:#c0cec5;line-height:1.7}
.lead{font-size:clamp(18px,2.2vw,22px)}
.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
.micro{font-size:12px;color:#8fa097;margin-top:12px}
.phone{max-width:390px;margin-left:auto;background:#07100c;border:1px solid #30483a;border-radius:35px;padding:12px;box-shadow:var(--shadow)}
.screen{min-height:560px;border-radius:26px;background:linear-gradient(180deg,#13291e,#0a1510);padding:22px}
.mock{height:260px;border-radius:19px;background:linear-gradient(145deg,#24462f,#0b1711);border:1px solid #355641;display:grid;place-items:center;position:relative;overflow:hidden}
.mock .golfer{font-size:88px;filter:grayscale(1)}
.swingline{position:absolute;height:2px;background:var(--gold);transform-origin:left center}
.swingline.a{width:150px;left:95px;top:110px;transform:rotate(-31deg)}
.swingline.b{width:120px;left:166px;top:90px;transform:rotate(64deg)}
.section{padding:54px 0}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:24px}
.card{border:1px solid var(--line);background:linear-gradient(180deg,#0e1c15,#09130f);border-radius:20px;padding:22px}
.card p{color:var(--muted);line-height:1.6;margin-bottom:0}
.card small{color:var(--gold);font-weight:950;letter-spacing:.12em}
.formgrid{display:grid;grid-template-columns:.85fr 1.15fr;gap:22px;align-items:start}
.formbox{border:1px solid var(--line);background:#0b1711;border-radius:25px;padding:24px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
label{display:block;font-size:13px;font-weight:850;margin:15px 0 7px}
input,select,textarea{width:100%;background:#07110d;color:var(--text);border:1px solid #31503d;border-radius:12px;padding:13px}
input[type=file]{padding:11px}
.uploadbox{margin-top:10px;border:1px dashed #486851;border-radius:14px;padding:14px;background:#0d1d16}
.preview{display:none;margin-top:10px}
.preview video{width:100%;max-height:240px;background:#000;border-radius:12px}
.statusbox{display:none;margin-top:13px;padding:13px;border-radius:12px;font-size:13px;line-height:1.5}
.statusbox.ok{display:block;background:#10271a;border:1px solid #2d6741;color:#acf1c1}
.statusbox.err{display:block;background:#291510;border:1px solid #703529;color:#ffc3b5}
.offer{border:1px solid #514d2f;background:linear-gradient(135deg,#18291f,#17180e);border-radius:26px;padding:30px;display:grid;grid-template-columns:1.2fr .8fr;gap:24px}
.price{font-size:58px;font-weight:1000;letter-spacing:-.05em}
.price s{font-size:19px;color:#87938b}
.checks{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.check:before{content:"✓";color:var(--green);font-weight:1000;margin-right:7px}
.portal{display:grid;grid-template-columns:260px 1fr;min-height:100vh}
.sidebar{border-right:1px solid var(--line);padding:24px 18px;background:#08120e}
.sidebar .brand{margin-bottom:26px}
.sidebtn{display:block;width:100%;text-align:left;border:0;background:transparent;color:#c0cec5;padding:11px 12px;border-radius:10px;cursor:pointer}
.sidebtn.active,.sidebtn:hover{background:#11231a;color:#fff}
.main{padding:28px;min-width:0}
.toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;flex-wrap:wrap}
.table{width:100%;border-collapse:collapse;background:#0b1711;border:1px solid var(--line);border-radius:16px;overflow:hidden}
.table th,.table td{padding:12px;border-bottom:1px solid #1f3528;text-align:left;font-size:13px}
.table th{color:#9eb0a4;font-size:11px;text-transform:uppercase;letter-spacing:.09em}
.badge{display:inline-flex;padding:5px 8px;border-radius:999px;background:#152a1f;border:1px solid #294837;color:#bcd0c2;font-size:11px}
.detailgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.videoCard{border:1px solid var(--line);background:#0b1711;border-radius:18px;padding:14px}
.videoCard video{width:100%;background:#000;border-radius:12px;max-height:420px}
.analysisgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.metric{border:1px solid #2a4535;border-radius:14px;padding:14px;background:#0e1e16}
.metric b{display:block;font-size:24px;margin-top:3px}
.canvaswrap{overflow:auto;border:1px solid #2d4938;border-radius:14px;background:#050b08;padding:8px}
canvas{max-width:100%;height:auto;display:block;margin:auto;touch-action:none}
.annotationTools{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}
.loginCard{width:min(440px,calc(100% - 30px));margin:80px auto;border:1px solid var(--line);border-radius:22px;background:#0b1711;padding:26px}
.portalCard{border:1px solid var(--line);background:#0b1711;border-radius:20px;padding:22px;margin-bottom:14px}
.scorebig{font-size:64px;font-weight:1000;letter-spacing:-.06em}
.messages{display:flex;flex-direction:column;gap:9px;margin:14px 0}
.msg{max-width:78%;padding:11px 13px;border-radius:14px;background:#13291e}
.msg.golfer{align-self:flex-end;background:#2a3218}
.progressbar{height:8px;border-radius:999px;background:#203329;overflow:hidden}
.progressbar i{display:block;height:100%;background:linear-gradient(90deg,var(--gold),var(--green))}
.qrbox{background:#fff;padding:12px;border-radius:14px;width:max-content}
footer{padding:38px 0 70px;color:#8d9b93;font-size:12px}
@media(max-width:860px){
 .hero,.formgrid,.offer,.portal,.detailgrid,.analysisgrid{grid-template-columns:1fr}
 .cards{grid-template-columns:1fr}
 .grid2,.checks{grid-template-columns:1fr}
 .phone{margin:auto}
 .sidebar{border-right:0;border-bottom:1px solid var(--line)}
 .portal{display:block}
 .main{padding:18px}
 .navlinks a:not(.keep){display:none}
}
