/* ============ Red Gold — About & Support page styles ============ */

/* ---------- shared bits ---------- */
.ab-kicker{ font-size:13px; font-weight:800; color:var(--amber-deep); letter-spacing:.01em; display:block; margin-bottom:10px }
.ab-h2{ font-size:clamp(24px,3vw,36px); font-weight:900; letter-spacing:-.015em; color:var(--ink); line-height:1.25 }
.ab-sec-head{ margin-bottom:26px }

/* ---------- ABOUT · hero ---------- */
.ab-hero{ position:relative; overflow:hidden; padding:54px 0 46px }
.ab-hero-bg{ position:absolute; inset:0; z-index:0; pointer-events:none }
.ab-glow{ position:absolute; border-radius:50% }
.ab-glow.g1{ top:-160px; right:-120px; width:520px; height:520px; background:radial-gradient(circle,rgba(246,169,30,.2),transparent 64%) }
.ab-glow.g2{ bottom:-220px; left:-160px; width:520px; height:520px; background:radial-gradient(circle,rgba(133,18,28,.12),transparent 66%) }
.ab-grain{ position:absolute; inset:0; opacity:.3;
  background-image:radial-gradient(rgba(154,100,17,.1) 1px,transparent 1.5px); background-size:22px 22px;
  -webkit-mask-image:radial-gradient(ellipse at 50% 30%,#000,transparent 76%); mask-image:radial-gradient(ellipse at 50% 30%,#000,transparent 76%) }
.ab-hero-in{ position:relative; z-index:1; text-align:center; max-width:760px }
.ab{ }
.ab-eyebrow{ display:inline-flex; align-items:center; gap:10px; padding:7px 16px 7px 9px; border-radius:999px;
  background:rgba(255,255,255,.82); border:1px solid var(--gold-line); box-shadow:var(--shadow-sm); backdrop-filter:blur(6px);
  font-size:12.5px; font-weight:700; color:var(--ink-2); margin-bottom:22px }
.ab-crest{ width:23px; height:23px; object-fit:contain; flex:0 0 auto; filter:drop-shadow(0 2px 4px rgba(120,16,24,.3)) }
.ab-h1{ font-size:clamp(38px,5.4vw,66px); font-weight:900; line-height:1.1; letter-spacing:-.022em; color:var(--ink); margin:0 }
.ab-h1 em{ font-style:normal; color:var(--garnet) }
.ab-lead{ font-size:16.5px; line-height:1.95; color:var(--ink-2); max-width:600px; margin:22px auto 0; text-wrap:pretty }
.ab-hero-cta{ display:flex; gap:14px; justify-content:center; margin-top:30px; flex-wrap:wrap }

/* ---------- ABOUT · stat band ---------- */
.ab-statband{ background:radial-gradient(130% 130% at 80% -30%,#2A1D14,#1B130D 58%,#130C07);
  border-top:1px solid rgba(230,200,135,.2); border-bottom:1px solid rgba(230,200,135,.2) }
.ab-stats{ display:grid; grid-template-columns:repeat(4,1fr); padding:34px 24px }
.ab-stat{ text-align:center; padding:6px 18px; position:relative }
.ab-stat+.ab-stat::before{ content:""; position:absolute; top:6px; bottom:6px; right:0; width:1px;
  background:linear-gradient(180deg,transparent,rgba(230,200,135,.22) 24%,rgba(230,200,135,.22) 76%,transparent) }
.ab-stat-n{ font-size:clamp(28px,3.4vw,40px); font-weight:900; line-height:1;
  background:linear-gradient(180deg,#FCEFCF,#E8B65E); -webkit-background-clip:text; background-clip:text; color:transparent }
.ab-stat-l{ font-size:12.5px; color:#B9A88E; margin-top:8px; line-height:1.5 }

/* ---------- ABOUT · story ---------- */
.ab-story{ display:grid; grid-template-columns:0.9fr 1.1fr; gap:52px; align-items:center }
.ab-story-fig{ position:relative; padding:14px }
.ab-story-plate{ position:absolute; inset:0; border-radius:24px; transform:translate(-14px,16px);
  background:linear-gradient(150deg,#7C0E16,#530810); box-shadow:0 40px 80px -42px rgba(74,6,12,.6) }
.ab-story-img{ position:relative; aspect-ratio:4/3; border-radius:20px; overflow:hidden;
  border:1px solid var(--gold-line); box-shadow:0 40px 80px -40px rgba(60,40,12,.5) }
.ab-story-img img{ width:100%; height:100%; object-fit:cover; display:block }
.ab-story-copy p{ font-size:15.5px; line-height:2.05; color:var(--ink-2); margin-bottom:14px; text-wrap:pretty }
.ab-points{ list-style:none; margin:18px 0 0; padding:0; display:flex; flex-direction:column; gap:11px }
.ab-points li{ display:flex; align-items:center; gap:10px; font-size:14px; font-weight:600; color:var(--ink) }
.ab-points svg{ color:var(--ok); flex:0 0 auto }

/* ---------- ABOUT · values ---------- */
.ab-values-sec{ }
.ab-values{ display:grid; grid-template-columns:repeat(4,1fr); gap:18px }
.ab-value{ padding:24px 20px; background:var(--panel); border:1px solid var(--line); border-radius:20px;
  box-shadow:var(--shadow-sm); transition:.2s }
.ab-value:hover{ transform:translateY(-3px); border-color:var(--gold-line); box-shadow:var(--shadow-md) }
.ab-value-ic{ width:52px; height:52px; border-radius:15px; display:flex; align-items:center; justify-content:center;
  background:linear-gradient(160deg,#FCEFCF,#F4DFA8); border:1px solid var(--gold-line); color:var(--amber-deep);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7); margin-bottom:16px }
.ab-value-t{ font-size:16px; font-weight:800; color:var(--ink) }
.ab-value-d{ font-size:13px; line-height:1.8; color:var(--muted); margin-top:7px; text-wrap:pretty }

/* ---------- ABOUT · CTA ---------- */
.ab-cta{ position:relative; overflow:hidden; text-align:center; padding:52px 40px; border-radius:var(--r-xl);
  background:radial-gradient(120% 120% at 50% -20%,#2A1D14,#1B130D 60%,#130C07); border:1px solid rgba(230,200,135,.22) }
.ab-cta-glow{ position:absolute; top:-120px; left:50%; transform:translateX(-50%); width:520px; height:320px;
  background:radial-gradient(circle,rgba(246,169,30,.18),transparent 66%); pointer-events:none }
.ab-cta-h{ position:relative; font-size:clamp(24px,3vw,34px); font-weight:900; color:#FBF3E4; letter-spacing:-.015em }
.ab-cta-p{ position:relative; color:#C4B49A; font-size:15.5px; line-height:1.9; margin:12px auto 0; max-width:520px }
.ab-cta-row{ position:relative; display:flex; gap:14px; justify-content:center; margin-top:26px; flex-wrap:wrap }

/* ---------- SUPPORT · hero ---------- */
.sp-hero{ position:relative; overflow:hidden; padding:48px 0 36px; text-align:center;
  background:radial-gradient(110% 100% at 80% -10%,rgba(246,169,30,.12),transparent 52%),
             radial-gradient(110% 100% at 10% 0%,rgba(133,18,28,.08),transparent 50%) }
.sp-hero-in{ max-width:680px }
.sp-status{ display:inline-flex; align-items:center; gap:8px; padding:7px 15px; border-radius:999px;
  background:#E5F5EC; border:1px solid #BFE6CE; color:var(--ok); font-size:12.5px; font-weight:800; margin-bottom:18px }
.sp-dot{ width:7px; height:7px; border-radius:50%; background:var(--ok); box-shadow:0 0 0 0 rgba(26,138,78,.5); animation:mhPulse 1.8s ease-out infinite }
.sp-h1{ font-size:clamp(30px,4vw,48px); font-weight:900; letter-spacing:-.02em; color:var(--ink); margin:0 }
.sp-lead{ font-size:16px; line-height:1.9; color:var(--ink-2); max-width:540px; margin:16px auto 0; text-wrap:pretty }

/* ---------- SUPPORT · channels ---------- */
.sp-ch-sec{ padding-top:6px }
.sp-channels{ display:grid; grid-template-columns:repeat(4,1fr); gap:18px }
.sp-channel{ display:flex; flex-direction:column; align-items:flex-start; gap:4px; text-align:right;
  padding:22px 20px; background:var(--card); border:1px solid var(--line); border-radius:20px; cursor:pointer;
  font-family:inherit; box-shadow:var(--shadow-sm); transition:.2s }
.sp-channel:hover{ transform:translateY(-3px); border-color:var(--gold-line); box-shadow:var(--shadow-md) }
.sp-channel.primary{ background:linear-gradient(160deg,#1F1710,#16100A); border-color:rgba(230,200,135,.28) }
.sp-ch-ic{ width:48px; height:48px; border-radius:14px; display:flex; align-items:center; justify-content:center;
  background:linear-gradient(160deg,#FCEFCF,#F4DFA8); border:1px solid var(--gold-line); color:var(--amber-deep); margin-bottom:10px }
.sp-channel.primary .sp-ch-ic{ background:linear-gradient(160deg,#F4C45A,#D89A1E); border-color:transparent; color:#3A2604 }
.sp-ch-t{ font-size:16px; font-weight:800; color:var(--ink) }
.sp-ch-v{ font-size:13px; color:var(--muted); font-family:var(--font-num) }
.sp-ch-a{ display:inline-flex; align-items:center; gap:5px; margin-top:10px; font-size:13px; font-weight:800; color:var(--garnet) }
.sp-channel.primary .sp-ch-t{ color:#FBF3E4 }
.sp-channel.primary .sp-ch-v{ color:#B9A88E }
.sp-channel.primary .sp-ch-a{ color:#F0C975 }

/* ---------- SUPPORT · form + faq ---------- */
.sp-grid{ display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:start }
.sp-block-head{ margin-bottom:20px }
.sp-form{ background:var(--panel); border:1px solid var(--line); border-radius:var(--r-xl); padding:24px; box-shadow:var(--shadow-sm) }
.sp-form-2{ display:grid; grid-template-columns:1fr 1fr; gap:0 16px }
.sp-textarea{ resize:vertical; min-height:108px; font-family:inherit; line-height:1.8 }
select.input{ cursor:pointer }

.sp-acc{ display:flex; flex-direction:column; gap:12px }
.sp-acc-it{ border:1px solid var(--line); border-radius:16px; background:var(--card); overflow:hidden; transition:.2s }
.sp-acc-it.on{ border-color:var(--gold-line); box-shadow:var(--shadow-sm) }
.sp-acc-q{ width:100%; display:flex; align-items:center; justify-content:space-between; gap:14px;
  padding:17px 18px; background:none; border:none; cursor:pointer; font-family:inherit;
  font-size:14.5px; font-weight:800; color:var(--ink); text-align:right }
.sp-acc-q svg{ color:var(--amber-deep); flex:0 0 auto }
.sp-acc-a{ max-height:0; overflow:hidden; transition:max-height .3s ease }
.sp-acc-it.on .sp-acc-a{ max-height:240px }
.sp-acc-a p{ padding:0 18px 18px; font-size:13.5px; line-height:1.95; color:var(--ink-2); text-wrap:pretty }

/* ---------- ACCOUNT polish ---------- */
.acc-head{ margin-bottom:22px }
.acc-title{ font-size:clamp(24px,3vw,32px); font-weight:900; letter-spacing:-.012em; color:var(--ink); margin:4px 0 0 }
.acc-stat{ padding:20px }
.acc-stat-ic{ width:44px; height:44px; border-radius:13px; display:flex; align-items:center; justify-content:center;
  background:linear-gradient(160deg,#FCEFCF,#F4DFA8); border:1px solid var(--gold-line); color:var(--amber-deep);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7); margin-bottom:14px }
.acc-stat-l{ font-size:13px; color:var(--muted); font-weight:600 }
.acc-stat-v{ font-size:24px; font-weight:900; color:var(--ink); margin-top:4px }
.acc-stat-s{ font-size:12.5px; color:var(--muted); margin-top:3px }
@media(max-width:860px){
  .acc-grid{ grid-template-columns:1fr !important }
  .acc-grid > aside{ position:static !important }
}

/* ============ AUTHENTICITY (NFC verify) ============ */
.vf-hero{ position:relative; overflow:hidden; padding:48px 0 44px;
  background:radial-gradient(130% 130% at 80% -30%,#2A1D14,#1B130D 58%,#130C07); color:#FBF3E4 }
.vf-hero-bg{ position:absolute; inset:0; z-index:0; pointer-events:none }
.vf-glow{ position:absolute; top:-160px; left:-120px; width:540px; height:540px; border-radius:50%;
  background:radial-gradient(circle,rgba(246,169,30,.18),transparent 64%) }
.vf-grain{ position:absolute; inset:0; opacity:.3;
  background-image:radial-gradient(rgba(246,200,135,.08) 1px,transparent 1.5px); background-size:22px 22px }
.vf-hero-in{ position:relative; z-index:1; display:grid; grid-template-columns:1fr 0.92fr; gap:48px; align-items:center }
.vf-eyebrow{ display:inline-flex; align-items:center; gap:8px; padding:6px 14px; border-radius:999px;
  background:rgba(227,161,29,.12); border:1px solid rgba(230,200,135,.3); color:#E8B878; font-size:12.5px; font-weight:800; margin-bottom:18px }
.vf-h1{ font-size:clamp(30px,4.2vw,50px); font-weight:900; line-height:1.12; letter-spacing:-.02em; margin:0 }
.vf-h1 em{ font-style:normal; color:var(--amber) }
.vf-lead{ color:#C4B49A; font-size:15.5px; line-height:1.95; margin:18px 0 0; max-width:480px; text-wrap:pretty }

.vf-card{ position:relative; background:rgba(255,255,255,.05); border:1px solid rgba(230,200,135,.24); border-radius:24px;
  padding:26px 24px; backdrop-filter:blur(8px); box-shadow:0 40px 90px -50px rgba(0,0,0,.8) }
.vf-nfc{ width:64px; height:64px; border-radius:18px; display:flex; align-items:center; justify-content:center; margin:0 auto 16px;
  color:#3A2604; background:radial-gradient(circle at 50% 34%,#FCEFCF,#EFC24E 58%,#C9941E);
  box-shadow:0 12px 26px -12px rgba(154,100,17,.7) }
.vf-nfc.scan{ animation:vfPulse 1.1s ease-in-out infinite }
@keyframes vfPulse{ 0%,100%{ box-shadow:0 12px 26px -12px rgba(154,100,17,.7),0 0 0 0 rgba(246,200,135,.5) } 60%{ box-shadow:0 12px 26px -12px rgba(154,100,17,.7),0 0 0 16px rgba(246,200,135,0) } }
.vf-label{ display:block; font-size:12.5px; font-weight:700; color:#C4B49A; margin-bottom:9px }
.vf-inrow{ display:flex; gap:10px }
.vf-input{ flex:1; min-width:0; height:50px; border-radius:13px; border:1px solid rgba(230,200,135,.3);
  background:rgba(0,0,0,.25); color:#FBF3E4; padding:0 15px; font-family:var(--font-num); font-size:16px; text-align:center; letter-spacing:2px }
.vf-input::placeholder{ color:#8c7c64 } .vf-input:focus{ outline:none; border-color:var(--amber) }
.vf-btn{ flex:0 0 auto; height:50px; padding:0 20px; border:none; border-radius:13px; cursor:pointer;
  background:linear-gradient(165deg,#F4C45A,#D89A1E); color:#3A2604; font-family:inherit; font-weight:800; font-size:14.5px }
.vf-btn:disabled{ opacity:.6; cursor:default }
.vf-scan{ width:100%; margin-top:12px; height:46px; border-radius:13px; cursor:pointer; font-family:inherit; font-weight:700; font-size:13.5px;
  display:flex; align-items:center; justify-content:center; gap:8px; color:#F4E3BE;
  background:rgba(255,255,255,.04); border:1px solid rgba(230,200,135,.24) }
.vf-scan:hover{ background:rgba(255,255,255,.08) } .vf-scan svg{ color:#F0C975 }
.vf-status.scanning{ display:flex; align-items:center; justify-content:center; gap:10px; margin-top:18px; font-size:13.5px; color:#E8B878; font-weight:700 }
.vf-spin{ width:16px; height:16px; border-radius:50%; border:2px solid rgba(246,200,135,.3); border-top-color:#F0C975; animation:vfSpin .7s linear infinite }
@keyframes vfSpin{ to{ transform:rotate(360deg) } }

.vf-result{ margin-top:18px; border-radius:16px; padding:18px; animation:vfIn .35s ease both }
@keyframes vfIn{ from{ opacity:0; transform:translateY(8px) } to{ opacity:1; transform:none } }
.vf-result.ok{ background:rgba(31,140,83,.1); border:1px solid rgba(95,190,142,.35) }
.vf-result-head{ display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:14px; flex-wrap:wrap }
.vf-vbadge{ display:inline-flex; align-items:center; gap:6px; font-size:12.5px; font-weight:800; color:#0E6B3A;
  background:#CFF0DD; padding:5px 12px; border-radius:999px }
.vf-vbadge.bad{ color:#fff; background:var(--down) }
.vf-serial{ font-size:14px; font-weight:800; color:#F0C975 }
.vf-rows{ display:flex; flex-direction:column }
.vf-row{ display:flex; justify-content:space-between; gap:12px; padding:9px 0; border-top:1px solid rgba(246,200,135,.12); font-size:13px }
.vf-row:first-child{ border-top:none }
.vf-row .k{ color:#A99A82 } .vf-row .v{ color:#FBF3E4; font-weight:700 }
.vf-note{ display:flex; align-items:center; gap:8px; margin-top:14px; font-size:12px; color:#9FCBB2 }
.vf-result.bad{ background:rgba(207,74,57,.1); border:1px solid rgba(207,74,57,.4); text-align:center }
.vf-result.bad p{ color:#E9C9C4; font-size:13.5px; line-height:1.8; margin:12px 0 14px }
.vf-result.bad .btn-line{ color:#F4E3BE; border-color:rgba(230,200,135,.4) }

/* steps */
.vf-steps{ display:grid; grid-template-columns:repeat(3,1fr); gap:18px }
.vf-step{ position:relative; text-align:center; padding:28px 22px; background:var(--panel); border:1px solid var(--line);
  border-radius:20px; box-shadow:var(--shadow-sm) }
.vf-step-no{ position:absolute; top:16px; right:18px; font-size:30px; font-weight:900; color:transparent;
  -webkit-text-stroke:1.3px var(--gold-line) }
.vf-step-ic{ width:56px; height:56px; border-radius:16px; display:inline-flex; align-items:center; justify-content:center; margin-bottom:14px;
  background:linear-gradient(160deg,#FCEFCF,#F4DFA8); border:1px solid var(--gold-line); color:var(--amber-deep);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7) }
.vf-step-t{ font-size:16px; font-weight:800; color:var(--ink) }
.vf-step-d{ font-size:13px; line-height:1.8; color:var(--muted); margin-top:7px; text-wrap:pretty }

/* security band */
.vf-sec{ position:relative; overflow:hidden; display:grid; grid-template-columns:1.3fr .7fr; gap:30px; align-items:center;
  padding:34px 40px; border-radius:var(--r-xl); background:radial-gradient(120% 120% at 80% -20%,#2A1D14,#1B130D 60%,#130C07);
  border:1px solid rgba(230,200,135,.22) }
.vf-sec-glow{ position:absolute; top:-120px; right:-80px; width:420px; height:320px;
  background:radial-gradient(circle,rgba(246,169,30,.16),transparent 66%); pointer-events:none }
.vf-sec-h{ position:relative; font-size:clamp(21px,2.6vw,28px); font-weight:900; color:#FBF3E4; letter-spacing:-.015em }
.vf-sec-p{ position:relative; color:#C4B49A; font-size:14.5px; line-height:1.95; margin-top:12px; text-wrap:pretty }
.vf-sec-pts{ position:relative; display:flex; flex-direction:column; gap:12px }
.vf-sec-pt{ display:inline-flex; align-items:center; gap:9px; font-size:13.5px; font-weight:700; color:#F4E3BE;
  background:rgba(255,255,255,.05); border:1px solid rgba(230,200,135,.22); border-radius:12px; padding:11px 14px }
.vf-sec-pt svg{ color:#F0C975; flex:0 0 auto }

@media(max-width:920px){
  .vf-hero-in{ grid-template-columns:1fr; gap:28px }
  .vf-steps{ grid-template-columns:1fr }
  .vf-sec{ grid-template-columns:1fr; gap:22px; padding:28px 22px }
}
@media(max-width:560px){
  .vf-hero{ padding:30px 0 30px }
  .vf-card{ padding:20px 16px }
}

/* ---------- responsive ---------- */
@media(max-width:920px){
  .ab-values{ grid-template-columns:1fr 1fr }
  .sp-channels{ grid-template-columns:1fr 1fr }
  .ab-story{ grid-template-columns:1fr; gap:30px }
  .ab-story-fig{ max-width:460px; margin:0 auto; width:100% }
  .sp-grid{ grid-template-columns:1fr; gap:34px }
}
@media(max-width:560px){
  .ab-hero{ padding:30px 0 26px }
  .ab-stats{ grid-template-columns:1fr 1fr; gap:24px 0; padding:26px 16px }
  .ab-stat:nth-child(odd)::before{ display:none }
  .ab-values{ grid-template-columns:1fr }
  .sp-channels{ grid-template-columns:1fr }
  .ab-hero-cta{ flex-direction:column; align-items:stretch; max-width:340px; margin-left:auto; margin-right:auto }
  .ab-hero-cta>*{ width:100% }
  .ab-cta{ padding:36px 22px }
  .sp-form-2{ grid-template-columns:1fr }
}
