/* THEFA Core premium homepage — 2026-10-02 */
.hero {
  padding-top: clamp(58px, 6.5vw, 96px);
  padding-bottom: clamp(34px, 4.5vw, 64px);
  border-bottom: 1px solid rgba(230, 202, 139, .12);
}
.hero__bg {
  background:
    radial-gradient(900px 520px at 77% 38%, rgba(211,168,73,.18), transparent 64%),
    radial-gradient(740px 400px at 14% 92%, rgba(183,139,49,.09), transparent 70%),
    linear-gradient(180deg,#0c0c0b 0%,#11100e 50%,#0b0b0a 100%);
}
.hero::before {
  content:""; position:absolute; z-index:-1; inset:auto -10% -18% 26%; height:58%;
  background:radial-gradient(ellipse at center,rgba(239,194,91,.20),rgba(239,194,91,0) 66%);
  filter:blur(18px); transform:rotate(-7deg); pointer-events:none;
}
.hero::after {
  content:""; position:absolute; z-index:-1; left:38%; right:-10%; bottom:2%; height:1px;
  background:linear-gradient(90deg,transparent,rgba(238,197,101,.85),transparent);
  box-shadow:0 0 34px rgba(238,197,101,.35); pointer-events:none;
}
.hero__inner { grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr); gap:clamp(42px,5.4vw,86px); }
.hero__copy { position:relative; z-index:2; }
.hero__copy .eyebrow { color:#d7b96f; letter-spacing:.22em; font-weight:700; }
.hero__h1 { font-size:clamp(3.4rem,5.1vw,6.2rem); line-height:.98; letter-spacing:-.065em; max-width:8.6em; }
.hero__h1 em { text-shadow:0 0 34px rgba(231,190,94,.11); }
.hero__sub { display:none; }
.hero__body { margin-top:28px; max-width:35ch; font-size:clamp(1.02rem,.95rem + .28vw,1.22rem); line-height:1.72; color:#d8d4cc; }
.hero__cta { margin-top:30px; gap:12px; }
.hero__cta .btn { min-height:54px; padding:13px 24px; border-radius:12px; font-weight:750; }
.hero__cta .btn--primary {
  color:#17120a; border-color:#efd58c;
  background:linear-gradient(135deg,#f6e1a8 0%,#d8b968 55%,#b98f35 100%);
  box-shadow:0 10px 34px rgba(203,159,58,.22), inset 0 1px 0 rgba(255,255,255,.5);
}
.hero__cta .btn--primary:hover { transform:translateY(-2px); box-shadow:0 14px 42px rgba(203,159,58,.30); }
.hero__cta .btn--ghost { border-color:rgba(231,201,132,.42); background:rgba(20,19,17,.68); }
.hero__cta + .btn-row { display:none !important; }
.flowchip { margin-top:24px; gap:10px; }
.flowchip li {
  padding:7px 0; border:0; border-radius:0; background:transparent;
  font-family:var(--font-sans); font-size:.82rem; letter-spacing:-.01em; color:#c9c4ba;
}
.flowchip li::before { content:"✓"; display:grid; place-items:center; width:20px; height:20px; border:1px solid #d8b969; border-radius:50%; color:#e7cc83; font-size:.7rem; }
.flowchip li::after { display:none; }
.hero__visual { position:relative; perspective:1400px; z-index:2; }
.hero__visual::before {
  content:""; position:absolute; inset:-14% -10% -16% -8%; z-index:-1;
  background:radial-gradient(circle at 46% 50%,rgba(219,173,66,.22),rgba(219,173,66,0) 62%);
  filter:blur(28px); pointer-events:none;
}
.hero__visual .pane {
  border-color:rgba(224,192,120,.34); border-radius:22px;
  background:linear-gradient(145deg,rgba(28,27,24,.98),rgba(13,13,12,.98));
  box-shadow:0 32px 80px rgba(0,0,0,.52),0 0 0 1px rgba(255,220,145,.04),0 0 52px rgba(197,151,48,.08);
  transform:rotateY(-4deg) rotateX(1.2deg); transform-origin:center center;
}
.pane__bar { padding:15px 18px; border-bottom-color:rgba(226,199,137,.13); background:rgba(255,255,255,.025); }
.pane__title { color:#c6bda9; letter-spacing:.12em; }
.pane__body { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(190px,.72fr); gap:14px; padding:18px; }
.pane__body > .cmd { grid-column:1/-1; }
.pane__body > .units { grid-column:1; margin-top:0; }
.pane__body > .receipt-mini { grid-column:2; margin-top:0; align-self:stretch; align-content:center; }
.pane__body > .caption { grid-column:1/-1; margin-top:0 !important; }
.cmd { padding:17px 18px; border-color:rgba(221,190,118,.23); background:#0b0b0a; box-shadow:inset 0 0 28px rgba(215,168,60,.025); }
.cmd__prompt { font-size:1.03rem; color:#e1c47f; }
.cmd__text { font-size:.96rem; }
.units { gap:9px; }
.unit { min-height:62px; padding:12px 14px; background:linear-gradient(180deg,rgba(255,255,255,.032),rgba(255,255,255,.016)); }
.unit[data-state="running"] { border-color:rgba(225,188,92,.62); background:linear-gradient(90deg,rgba(197,149,45,.16),rgba(197,149,45,.04)); box-shadow:inset 3px 0 0 #dcb759; }
.unit[data-state="verified"] { border-color:rgba(97,192,139,.40); box-shadow:inset 3px 0 0 rgba(104,203,150,.62); }
.unit__title { font-size:.93rem; }
.receipt-mini { border-style:solid; border-color:rgba(221,190,118,.28); background:linear-gradient(145deg,rgba(205,159,57,.09),rgba(255,255,255,.018)); }
.receipt-mini .stair i { background:#c9a655; }
.trust-strip { margin-top:28px; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; border:0; background:transparent; overflow:visible; }
.trust-strip__item {
  min-height:154px; padding:22px 22px 20px; border:1px solid rgba(223,193,125,.18); border-radius:16px;
  background:linear-gradient(145deg,rgba(31,29,25,.96),rgba(17,16,14,.98));
  box-shadow:0 18px 46px rgba(0,0,0,.20); position:relative; overflow:hidden;
}
.trust-strip__item::after { content:""; position:absolute; inset:auto -18% -58% 30%; height:120px; background:radial-gradient(circle,rgba(205,158,55,.18),transparent 68%); }
.trust-strip__item dt { margin-bottom:14px; font-family:var(--font-mono); font-size:.76rem; letter-spacing:.12em; color:#d1b46d; }
.trust-strip__item dd { font-size:clamp(1.08rem,.98rem + .26vw,1.28rem); line-height:1.35; letter-spacing:-.03em; }
.trust-strip__item p { margin-top:11px; color:#9e9990; font-size:.82rem; line-height:1.55; max-width:32ch; }
.section--dark,.section--ink { position:relative; background-color:#11100e; }
.section--dark::before,.section--ink::before {
  content:""; position:absolute; inset:0; pointer-events:none; opacity:.5;
  background-image:linear-gradient(rgba(255,255,255,.012) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.012) 1px,transparent 1px);
  background-size:96px 96px;
}
.section--light,.section--white { background:linear-gradient(180deg,#fbfaf7 0%,#f4f1e9 100%); }
.figure__frame { border-radius:22px; box-shadow:0 24px 64px rgba(21,18,12,.10); }
.section--dark .figure__frame,.section--ink .figure__frame { box-shadow:0 28px 72px rgba(0,0,0,.34),0 0 0 1px rgba(224,193,122,.05); }
.flow-grid .stage,.card { transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease; }
.flow-grid .stage:hover,.card--hover:hover { transform:translateY(-4px); box-shadow:0 18px 44px rgba(0,0,0,.16); }
@media (max-width:1080px) {
  .hero__inner { grid-template-columns:1fr; }
  .hero__copy { max-width:760px; }
  .hero__h1 { max-width:none; }
  .hero__visual .pane { transform:none; }
}
@media (max-width:760px) {
  .pane__body { grid-template-columns:1fr; }
  .pane__body > .cmd,.pane__body > .units,.pane__body > .receipt-mini,.pane__body > .caption { grid-column:1; }
  .trust-strip { grid-template-columns:1fr; }
}
/* visual QA refinement */
.site-header .header-inner { height:82px; }
.site-header .brand img { height:50px; }
.site-header .nav a { font-size:.95rem; padding-inline:13px; }
.hero__h1 { font-size:clamp(3.2rem,4.35vw,5.45rem); max-width:none; }
.hero__h1 .line { white-space:nowrap; }
.receipt-mini { position:relative; flex-direction:column; align-items:flex-start; justify-content:center; min-height:100%; overflow:hidden; }
.receipt-mini::before {
  content:""; width:100%; height:70px; margin-top:10px; opacity:.7;
  background:
    linear-gradient(90deg,#6ecb98 0 8px,transparent 8px) 0 7px/100% 2px no-repeat,
    linear-gradient(90deg,rgba(255,255,255,.28) 0 58%,transparent 58%) 18px 7px/100% 2px no-repeat,
    linear-gradient(90deg,#d6ae4e 0 8px,transparent 8px) 0 32px/100% 2px no-repeat,
    linear-gradient(90deg,rgba(255,255,255,.20) 0 76%,transparent 76%) 18px 32px/100% 2px no-repeat,
    linear-gradient(90deg,rgba(255,255,255,.15) 0 50%,transparent 50%) 18px 57px/100% 2px no-repeat;
}
.receipt-mini::after { content:"✓"; position:absolute; right:15px; bottom:15px; width:30px; height:30px; display:grid; place-items:center; border:1px solid #70c99a; border-radius:50%; color:#70c99a; font-weight:800; }
@media (max-width:700px) {
  .site-header .header-inner { height:var(--header-h); }
  .site-header .brand img { height:34px; }
  .hero__h1 .line { white-space:normal; }
}
@media (max-width:560px) {
  .site-header .header-cta { display:none; }
  .site-header .header-actions { margin-left:auto; }
  .site-header .menu-toggle { display:inline-flex; }
}
@media (max-width:700px) {
  .site-header .header-inner { justify-content:space-between; width:100%; }
  .site-header .header-actions { display:flex !important; margin-left:auto; }
  .site-header .menu-toggle { display:inline-flex !important; border-color:rgba(231,201,132,.42) !important; color:#ead9ae !important; background:rgba(255,255,255,.025); }
  .hero__visual,.hero__visual .pane { width:100%; max-width:100%; }
  .pane__bar .badge { display:none; }
  .pane__title { font-size:.68rem; letter-spacing:.09em; min-width:0; }
  .cmd__text { min-width:0; overflow-wrap:anywhere; word-break:keep-all; }
}
