
:root{
  /* Shopee Design System tokens (exact values from tokens/colors.css, effects.css, spacing.css) */
  --shopee-primary:#EE4D2D; --shopee-primary-to:#FF7337; --shopee-primary-bg:#FEF6F5;
  --shopee-yellow:#EDA500; --shopee-green:#26AA99; --shopee-blue:#0046AB;
  --shopee-error:#EE2C4A; --shopee-caution:#F69113; --shopee-success:#30B566;
  --shopee-error-bg:#FFF4F4; --shopee-caution-bg:#FFF8E4; --shopee-success-bg:#F7FFFE;
  --shopee-text-primary:rgba(0,0,0,.87); --shopee-text-secondary:rgba(0,0,0,.65); --shopee-text-tertiary:rgba(0,0,0,.54);
  --shopee-text-link:#4080EE; --shopee-line:rgba(0,0,0,.09); --shopee-background:#f5f5f5;
  --radius-normal:2px; --radius-overlay:4px; --radius-pill:999px;
  --shadow-normal:0px 0px 6px rgba(0,0,0,.06); --shadow-special:0px 0px 9px rgba(0,0,0,.12);

  /* Semantic app-level aliases — exact values from the reference design's light themeVars */
  --bg:#ffffff; --navbg:rgba(255,255,255,.9); --ink:rgba(0,0,0,.87); --ink2:rgba(0,0,0,.65); --ink3:rgba(0,0,0,.45);
  --line:rgba(0,0,0,.12); --hair:rgba(0,0,0,.08); --surface:#FEF6F5; --card:#ffffff; --chip:#FEF6F5;
  --grid:rgba(238,77,45,.07); --accent:#EE4D2D; --accent2:#FF7337;
  --ci-yellow:#EDA500; --ci-green:#26AA99; --ci-blue:#0046AB; --cardshadow:0 0 6px rgba(0,0,0,.06);
  --yellow:var(--ci-yellow); --green:var(--ci-green); --blue:var(--ci-blue);
  --radius:var(--radius-overlay);
}
/* Dark theme is scoped to .theme-dark (the landing hero/page wrapper only) so
   it never bleeds into the always-light auth/dashboard/admin product UI.
   Values are the exact dark themeVars from the reference design. */
.theme-dark{
  --bg:#0c2249; --navbg:rgba(17,50,100,.72); --ink:#f1f5fb; --ink2:rgba(228,236,248,.72); --ink3:rgba(200,214,236,.5);
  --line:rgba(255,255,255,.14); --hair:rgba(255,255,255,.09); --surface:#113264; --card:rgba(255,255,255,.05); --chip:rgba(255,255,255,.07);
  --grid:rgba(120,160,230,.08); --accent:#FF7337; --accent2:#FF9161;
  --ci-yellow:#F2B944; --ci-green:#3EC9B6; --ci-blue:#5B8DEF; --cardshadow:0 0 0 1px rgba(255,255,255,.05);
  --yellow:var(--ci-yellow); --green:var(--ci-green); --blue:var(--ci-blue);
}

@keyframes apspin{to{transform:rotate(360deg);}}
@keyframes apfloat{0%,100%{transform:translateY(0);}50%{transform:translateY(-14px);}}
@keyframes apblink{0%,100%{opacity:1;}50%{opacity:.15;}}
@keyframes apribbon{0%,100%{transform:translate(0,0) rotate(-8deg) scaleX(1);}50%{transform:translate(-3%,2%) rotate(-4deg) scaleX(1.06);}}
@keyframes apribbon2{0%,100%{transform:translate(0,0) rotate(6deg) scaleX(1);}50%{transform:translate(3%,-2%) rotate(9deg) scaleX(1.05);}}
@keyframes apdash{to{stroke-dashoffset:-1000;}}
@keyframes apcoderain{from{transform:translateY(-40%);}to{transform:translateY(0%);}}
@keyframes apswirl{0%,100%{transform:translateY(0) scale(1.02);}50%{transform:translateY(-6px) scale(1.04);}}

*{box-sizing:border-box;}
body{margin:0;color:var(--ink);-webkit-font-smoothing:antialiased;
  font-family:"Roboto",sans-serif;font-optical-sizing:auto;font-style:normal;font-variation-settings:"wdth" 100;}
input,textarea,select,button{font-family:inherit;font-optical-sizing:auto;font-variation-settings:"wdth" 100;}
.theme-scope{background:var(--bg);color:var(--ink);transition:background .3s ease,color .3s ease;min-height:100vh;}
a{color:var(--accent);text-decoration:none;}
a:hover{text-decoration:underline;}
h1,h2,h3{font-family:"Roboto",sans-serif;font-optical-sizing:auto;font-variation-settings:"wdth" 100;font-weight:900;letter-spacing:-.02em;margin:0;}
button{font-family:inherit;}
code{background:var(--surface);padding:1px 5px;border-radius:3px;font-size:.9em;}
.container{max-width:1100px;margin:0 auto;padding:0 22px;}

/* nav */
.nav{position:sticky;top:0;z-index:50;height:60px;display:flex;align-items:center;background:var(--navbg);backdrop-filter:blur(14px);border-bottom:1px solid var(--hair);}
.nav-inner{width:100%;max-width:1100px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:0 22px;}
.nav-logo img{height:26px;}
.nav-links{display:flex;gap:22px;font-family:"Roboto",sans-serif;font-size:12.5px;color:var(--ink2);}
.nav-links a{color:inherit;}
.nav-links a:hover{color:var(--ink);text-decoration:none;}
.theme-toggle{display:inline-flex;align-items:center;gap:8px;height:32px;padding:0 5px 0 12px;border-radius:999px;border:1px solid var(--line);background:var(--card);color:var(--ink);font-family:"Roboto",sans-serif;font-size:11.5px;font-weight:600;cursor:pointer;}
.theme-toggle .track{width:26px;height:16px;border-radius:999px;position:relative;background:var(--line);transition:background .2s;}
.theme-toggle .knob{position:absolute;top:2px;left:2px;width:12px;height:12px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.3);transition:left .2s;}
.theme-dark .theme-toggle .track{background:var(--accent);}
.theme-dark .theme-toggle .knob{left:12px;}

.btn{display:inline-flex;align-items:center;gap:8px;height:38px;padding:0 20px;border-radius:var(--radius-pill);border:none;background:linear-gradient(135deg,var(--shopee-primary),var(--shopee-primary-to));color:#fff;font-weight:700;font-size:14px;cursor:pointer;transition:filter .15s,transform .15s;box-shadow:0 8px 20px -8px rgba(238,77,45,.6);}
.btn:hover{filter:brightness(1.06);text-decoration:none;}
.btn-outline{background:#fff;color:var(--accent);box-shadow:inset 0 0 0 1.5px var(--accent);}
.btn-dark{background:#1c1c1e;box-shadow:none;}
.btn-sm{height:32px;padding:0 14px;font-size:13px;}
.btn-block{width:100%;justify-content:center;}
.btn[disabled]{opacity:.5;cursor:not-allowed;}

/* page-wide ambient background decoration (blueprint grid + neon wires + flowing ribbons) */
.bp-grid{position:absolute;inset:0;pointer-events:none;z-index:0;background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:radial-gradient(circle at 50% 24%,#000,transparent 78%);mask-image:radial-gradient(circle at 50% 24%,#000,transparent 78%);}
.neon-wires{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:0;opacity:.28;overflow:hidden;}
.flow-ribbons{position:absolute;top:-4%;left:0;right:0;height:1180px;pointer-events:none;z-index:0;opacity:.5;overflow:hidden;-webkit-mask-image:linear-gradient(180deg,transparent 4%,#000 26%,#000 64%,transparent 90%);mask-image:linear-gradient(180deg,transparent 4%,#000 26%,#000 64%,transparent 90%);}
.flow-ribbons .blob{position:absolute;border-radius:50%;filter:blur(50px);mix-blend-mode:screen;}

/* hero */
.hero{position:relative;text-align:center;padding:76px 22px 56px;overflow:hidden;}
.hero::before{content:"";position:absolute;inset:-40px 0 0;pointer-events:none;z-index:0;background:radial-gradient(ellipse 58% 64% at 50% 46%,color-mix(in srgb,var(--bg) 88%,transparent) 0%,transparent 74%);opacity:.5;}
.hero-inner{position:relative;}
.eyebrow{display:inline-flex;align-items:center;gap:9px;padding:7px 14px;border-radius:999px;border:1px solid color-mix(in srgb,var(--accent) 40%,transparent);background:color-mix(in srgb,var(--accent) 12%,transparent);font-family:"Roboto",sans-serif;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:26px;}
.hero h1{font-size:clamp(34px,6vw,58px);line-height:1.05;}
.hero h1 .grad{background:linear-gradient(90deg,var(--shopee-primary),var(--yellow),var(--accent2));background-size:220% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;}
.hero p.lede{font-size:20px;color:var(--ink2);max-width:46ch;margin:26px auto 0;line-height:1.5;}
.stats-row{display:flex;gap:44px;justify-content:center;align-items:center;margin:34px 0;flex-wrap:wrap;}
.stat{text-align:center;}
.stat .num{font-family:"Roboto",sans-serif;font-weight:900;font-size:40px;color:var(--blue);letter-spacing:-.02em;}
.stat.teams .num{color:var(--green);}
.stat .label{font-family:"Roboto",sans-serif;font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink3);margin-top:4px;}
.countdown-label{display:inline-flex;align-items:center;gap:9px;font-family:"Roboto",sans-serif;font-size:12px;font-weight:700;letter-spacing:.22em;color:var(--accent);margin-bottom:14px;}
.countdown-label .dot{width:9px;height:9px;border-radius:50%;background:var(--accent);}
.countdown{display:flex;gap:12px;justify-content:center;}
.countdown .tile{min-width:78px;padding:14px 8px;border-radius:16px;background:linear-gradient(160deg,var(--shopee-primary),var(--shopee-primary-to));color:#fff;box-shadow:0 12px 30px -8px rgba(238,77,45,.6);}
.countdown .tile .n{font-family:"Roboto",sans-serif;font-weight:900;font-size:38px;line-height:1;}
.countdown .tile .l{font-size:10.5px;font-weight:700;letter-spacing:.12em;opacity:.9;margin-top:6px;}

/* sections */
.section{padding:80px 22px;max-width:900px;margin:0 auto;text-align:center;}
.section .kicker{font-family:"Roboto",sans-serif;font-size:12.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);}
.section .kicker::before{content:"// ";opacity:.55;}
.section h2{font-size:clamp(28px,4vw,42px);margin:10px 0 16px;}
.section p{font-size:17px;line-height:1.6;color:var(--ink2);max-width:60ch;margin:12px auto 0;}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:1000px;margin:36px auto 0;padding:0 22px;}
.card{background:var(--card);border:1px solid var(--line);border-radius:26px;padding:28px;box-shadow:var(--cardshadow);text-align:left;}
.card.prize{border-top:4px solid var(--accent);}
.prize-band{position:relative;text-align:center;padding:120px 22px;background:radial-gradient(700px 400px at 50% 0%,rgba(255,120,60,.14),transparent 62%);border-top:1px solid var(--hair);border-bottom:1px solid var(--hair);}
.prize-band .amount{font-family:"Roboto",sans-serif;font-weight:900;font-size:clamp(46px,8vw,68px);background:linear-gradient(90deg,var(--yellow),var(--accent),var(--accent2));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;}
.timeline-row{text-align:left;max-width:640px;margin:28px auto 0;display:flex;flex-direction:column;gap:4px;}
.timeline-row .step{display:flex;gap:16px;align-items:baseline;padding:12px 0;border-bottom:1px solid var(--hair);}
.timeline-row .step:last-child{border-bottom:none;}
.timeline-row .num{flex-shrink:0;width:30px;height:30px;border-radius:50%;border:2px solid var(--accent);color:var(--accent);font-family:"Roboto",sans-serif;font-weight:900;font-size:13px;display:inline-flex;align-items:center;justify-content:center;}

/* forms (auth + dashboard) — always the light Shopee UI regardless of landing theme */
.auth-shell{width:100%;min-height:calc(100vh - 60px);background:#fff;}
.auth-split{display:flex;flex-wrap:wrap;min-height:calc(100vh - 60px);}
.auth-side{flex:1 1 320px;background:linear-gradient(155deg,#ee4d2d,#ff7337);color:#fff;padding:44px;display:flex;flex-direction:column;justify-content:center;gap:14px;}
.auth-side.dark{background:#1c1c1e;}
.auth-side .brand{display:flex;align-items:center;gap:9px;font-weight:700;font-size:16px;}
.auth-side .brand .logomark{width:32px;height:32px;border-radius:6px;background:rgba(255,255,255,.2);display:inline-flex;align-items:center;justify-content:center;font-size:15px;}
.auth-side h2{font-family:"Roboto",sans-serif;font-weight:900;font-size:34px;line-height:1.05;color:#fff;}
.auth-side p{font-size:15px;line-height:1.6;color:rgba(255,255,255,.9);max-width:34ch;}
.auth-form{flex:1 1 360px;padding:48px 52px;background:#fff;color:rgba(0,0,0,.87);display:flex;flex-direction:column;justify-content:center;}
.tabs{display:flex;gap:6px;background:#f5f5f5;border-radius:2px;padding:4px;margin-bottom:24px;}
.tabs a{flex:1;text-align:center;padding:9px;border-radius:2px;font-weight:600;font-size:14px;color:rgba(0,0,0,.54);}
.tabs a.active{background:#fff;color:#ee4d2d;font-weight:700;box-shadow:0 0 4px rgba(0,0,0,.08);}
.field{margin-bottom:16px;}
.field label{display:block;font-size:13px;color:rgba(0,0,0,.65);margin-bottom:6px;}
.field input, .field textarea, .field select{width:100%;min-height:40px;padding:10px 12px;border-radius:var(--radius-normal);border:none;box-shadow:inset 0 0 0 1px rgba(0,0,0,.14);font-size:14px;font-family:inherit;background:#fff;}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px;}
.helper{font-size:12px;color:rgba(0,0,0,.45);margin-top:5px;}

/* dashboard / admin shell */
.dash-header{display:flex;align-items:center;justify-content:space-between;padding:14px 28px;border-bottom:1px solid rgba(0,0,0,.09);background:#fff;}
.dash-header .whoami{display:flex;align-items:center;gap:10px;}
.dash-tabs{display:flex;gap:2px;padding:0 28px;border-bottom:1px solid rgba(0,0,0,.09);background:#fff;overflow-x:auto;}
.dash-tabs a{padding:16px 20px;font-weight:600;font-size:14px;color:rgba(0,0,0,.54);border-bottom:3px solid transparent;white-space:nowrap;display:flex;align-items:center;gap:7px;}
.dash-tabs a.active{color:rgba(0,0,0,.87);border-bottom-color:#ee4d2d;font-weight:700;}
.tab-badge{min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:#ee4d2d;color:#fff;font-size:10px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;}
.dash-body{padding:28px;background:#f5f5f5;min-height:70vh;color:rgba(0,0,0,.87);}
.dash-col{max-width:820px;margin:0 auto;display:flex;flex-direction:column;gap:16px;}
.avatar{width:34px;height:34px;border-radius:50%;background:#ee4d2d;color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0;}
.ann-card{background:#fff;border-radius:var(--radius-overlay);overflow:hidden;box-shadow:var(--shadow-normal);}
.ann-head{display:flex;gap:12px;padding:16px 18px;border-bottom:1px solid rgba(0,0,0,.06);align-items:center;}
.badge{background:#feeee8;color:#ee4d2d;font-size:10px;font-weight:700;padding:2px 7px;border-radius:2px;}
.ann-actions{display:flex;gap:22px;padding:12px 18px;border-top:1px solid rgba(0,0,0,.06);font-size:13px;color:rgba(0,0,0,.54);font-weight:500;}
.ann-actions button{background:none;border:none;cursor:pointer;color:inherit;font-size:13px;display:flex;align-items:center;gap:6px;padding:0;font-family:inherit;}
.ann-actions button.liked{color:#ee4d2d;font-weight:700;}
.comment{display:flex;gap:10px;padding:10px 18px 0;font-size:13px;background:transparent;align-items:flex-start;}
.comment-bubble{background:#f0f2f5;border-radius:16px;padding:8px 12px;line-height:1.45;flex:1;word-break:break-word;}
.comment-bubble b{margin-right:4px;}
.fb-like-count{display:flex;align-items:center;gap:5px;padding:0 18px;font-size:12.5px;color:rgba(0,0,0,.5);}
.fb-like-count .dot{width:16px;height:16px;border-radius:50%;background:#ee4d2d;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:9px;}
.composer-row{display:flex;gap:10px;padding:12px 18px 16px;align-items:center;}
.composer-row input[type=text]{flex:1;padding:9px 14px;border-radius:20px;border:1px solid var(--line);background:#f0f2f5;font-size:13px;}
.composer-row input[type=text]:focus{outline:2px solid var(--accent);outline-offset:-1px;background:#fff;}
.composer-row button{border-radius:16px;}
.comments-list{display:flex;flex-direction:column;gap:2px;padding-bottom:8px;}
table{width:100%;border-collapse:collapse;font-size:14px;}
table th{text-align:left;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:rgba(0,0,0,.5);padding:12px;background:#fafafa;}
table td{padding:14px 12px;border-top:1px solid rgba(0,0,0,.06);}
.pill{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;padding:4px 9px;border-radius:2px;}
.pill.ok{background:#f0fbf4;color:#1f9e56;}
.pill.warn{background:#fff8e4;color:#7a5b00;}
.pill.no{background:#fff4f4;color:#ee2c4a;}
.notice{display:flex;gap:9px;background:#fff8e4;border:1px solid #f6cf6a;border-radius:var(--radius-overlay);padding:12px 14px;font-size:13px;color:#7a5b00;}
.upload-box{border:2px dashed rgba(0,0,0,.15);border-radius:var(--radius-overlay);padding:26px;text-align:center;background:#fafafa;}
.checklist{display:flex;gap:10px;flex-wrap:wrap;}
.chk{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;padding:6px 11px;border-radius:999px;}
.chk.done{background:#f0fbf4;color:#1f9e56;}
.chk.todo{background:#fdf2f0;color:#ee4d2d;}

/* flash */
.flash-stack{position:fixed;top:14px;right:14px;z-index:999;display:flex;flex-direction:column;gap:8px;max-width:340px;}
.flash{padding:12px 16px;border-radius:8px;font-size:14px;box-shadow:0 8px 24px rgba(0,0,0,.15);}
.flash-success{background:#e9f9ee;color:#1f9e56;border:1px solid #b7e6c6;}
.flash-error{background:#fdeceb;color:#c0392b;border:1px solid #f3c1bb;}

/* chat widget */
.chat-fab{position:fixed;right:24px;bottom:24px;z-index:300;width:62px;height:62px;border-radius:50%;border:none;background:linear-gradient(135deg,#EE4D2D,#FF7337);color:#fff;font-size:26px;cursor:pointer;box-shadow:0 12px 32px -6px rgba(238,77,45,.7);transition:transform .2s;}
.chat-fab:hover{transform:scale(1.06);}
.chat-panel{position:fixed;right:24px;bottom:96px;z-index:300;width:360px;max-width:calc(100vw - 48px);height:520px;max-height:calc(100vh - 140px);display:none;flex-direction:column;border-radius:22px;overflow:hidden;background:var(--card);border:1px solid var(--line);box-shadow:0 30px 80px -18px rgba(0,0,0,.45);}
.chat-panel.open{display:flex;}
.chat-head{padding:18px 20px;background:linear-gradient(135deg,#EE4D2D,#FF7337);color:#fff;display:flex;align-items:center;gap:12px;}
.chat-head .dot{width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.2);display:inline-flex;align-items:center;justify-content:center;font-size:18px;}
.chat-head .title{font-family:"Roboto",sans-serif;font-weight:900;font-size:16px;}
.chat-head .sub{font-size:12px;opacity:.9;display:flex;align-items:center;gap:6px;}
.chat-body{flex:1;overflow-y:auto;padding:18px;display:flex;flex-direction:column;gap:12px;background:var(--surface);}
.msg{max-width:82%;padding:11px 15px;border-radius:16px;font-size:14px;line-height:1.5;}
.msg.user{align-self:flex-end;border-radius:16px 16px 4px 16px;background:var(--accent);color:#fff;}
.msg.assistant{align-self:flex-start;border-radius:16px 16px 16px 4px;background:var(--card);border:1px solid var(--line);color:var(--ink);}
.chat-input{display:flex;gap:8px;padding:12px;border-top:1px solid var(--line);background:var(--card);}
.chat-input input{flex:1;height:42px;padding:0 15px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--ink);}
.chat-input button{width:42px;height:42px;flex-shrink:0;border-radius:50%;border:none;background:var(--accent);color:#fff;cursor:pointer;font-size:17px;}

.footer{max-width:980px;margin:0 auto;padding:40px 22px 60px;border-top:1px solid var(--line);font-size:12px;color:var(--ink3);}
.footer .socials{display:flex;gap:14px;align-items:center;margin-top:20px;flex-wrap:wrap;}
.footer .socials a{width:38px;height:38px;border-radius:999px;border:1px solid var(--line);display:inline-flex;align-items:center;justify-content:center;color:var(--ink);transition:all .2s;}
.footer .socials a:hover{background:var(--accent);border-color:var(--accent);color:#fff;text-decoration:none;}

/* announcement grid + modal */
.ann-grid-card{text-align:left;border-radius:20px;padding:24px;background:var(--card);border:1px solid var(--line);box-shadow:var(--cardshadow);cursor:pointer;transition:transform .2s;width:100%;font-family:inherit;}
.ann-grid-card:hover{transform:translateY(-3px);}
.ann-tag{font-family:"Roboto",sans-serif;font-size:11px;font-weight:700;letter-spacing:.1em;padding:5px 10px;border-radius:999px;}
.modal-overlay{position:fixed;inset:0;z-index:200;display:none;align-items:center;justify-content:center;padding:22px;background:rgba(0,0,0,.55);backdrop-filter:blur(6px);}
.modal-overlay.open{display:flex;}
.modal-box{position:relative;width:100%;max-width:540px;border-radius:24px;background:var(--card);border:1px solid var(--line);box-shadow:0 30px 80px -20px rgba(0,0,0,.5);overflow:hidden;}
.modal-head{padding:26px 28px;background:linear-gradient(135deg,#EE4D2D,#FF7337);color:#fff;}
.modal-close{width:32px;height:32px;border-radius:50%;border:none;background:rgba(255,255,255,.2);color:#fff;font-size:18px;cursor:pointer;}
.modal-body{padding:24px 28px 28px;}

/* FAQ grouped accordion */
.faq-group{border-radius:18px;background:var(--card);border:1px solid var(--line);box-shadow:var(--cardshadow);overflow:hidden;}
.faq-group summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:14px;padding:22px 24px;}
.faq-group summary::-webkit-details-marker{display:none;}
.faq-group .dot{width:11px;height:11px;border-radius:50%;flex-shrink:0;}
.faq-group .plus{flex-shrink:0;width:30px;height:30px;border-radius:50%;background:var(--chip);color:var(--accent);display:inline-flex;align-items:center;justify-content:center;font-size:20px;}
.faq-items{padding:0 24px 20px;display:flex;flex-direction:column;gap:10px;}
.faq-item{border-radius:14px;background:var(--chip);border:1px solid var(--line);overflow:hidden;}
.faq-item summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;font-size:15px;font-weight:600;}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item .plus{flex-shrink:0;width:22px;height:22px;border-radius:50%;background:var(--card);color:var(--accent);display:inline-flex;align-items:center;justify-content:center;font-size:16px;}
.faq-item .a{padding:0 18px 18px;font-size:14px;line-height:1.6;color:var(--ink2);}

/* final CTA */
.final-cta{position:relative;overflow:hidden;text-align:center;padding:140px 22px;background:radial-gradient(700px 400px at 50% 0%,rgba(255,120,60,.2),transparent 62%);border-top:1px solid var(--hair);}
.final-cta h2{font-weight:500;font-size:clamp(34px,5vw,60px);line-height:1.12;letter-spacing:-.02em;margin:16px auto 0;max-width:20ch;text-wrap:balance;}
.final-cta .grad{font-weight:900;background:linear-gradient(90deg,var(--accent),var(--accent2));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;}

@media (max-width:720px){
  .grid-3{grid-template-columns:1fr;}
  .field-row{grid-template-columns:1fr;}
  .stats-row{gap:26px;}
}
