/* =================================================================
   DishFlow — pianidiabbonamento.css
   Pricing page premium · Toggle annuale/mensile
   Tabella comparativa · Garanzia · Zero font esterni
   ================================================================= */

:root {
    --bg:     #07090f;
    --bg2:    #0b0e18;
    --card:   #0d1120;
    --gold:   #c9a84c;
    --goldh:  #e8c96a;
    --white:  #ffffff;
    --gray:   #8892a4;
    --gray2:  #4a5568;
    --green:  #22c55e;
    --red:    #ef4444;
    --border: rgba(201,168,76,.15);
    --brd2:   rgba(255,255,255,.07);
    --serif:  'Georgia','Times New Roman',serif;
    --sans:   -apple-system,BlinkMacSystemFont,'Segoe UI',system-ui,sans-serif;
    --ease:   cubic-bezier(.16,1,.3,1);
}
*,*::before,*::after { box-sizing:border-box; margin:0; padding:0; }
html { scroll-behavior:smooth; }
body { font-family:var(--sans); background:var(--bg); color:var(--white); overflow-x:hidden; }
a { text-decoration:none; color:inherit; }
button { cursor:pointer; font-family:inherit; border:none; background:none; }
img { display:block; }
p { line-height:1.75; }

/* ── NOISE + ORBS ────────────────────────────────────────────── */
.noise {
    position:fixed; inset:0; z-index:1; pointer-events:none; opacity:.022;
    background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
    background-size:160px;
}
.ambient { position:fixed; inset:0; z-index:0; pointer-events:none; overflow:hidden; }
.orb { position:absolute; border-radius:50%; filter:blur(130px); }
.o1 { width:700px; height:700px; top:-300px; left:-100px; background:radial-gradient(circle,rgba(201,168,76,.06) 0%,transparent 70%); animation:orbD 14s ease-in-out infinite; }
.o2 { width:600px; height:600px; bottom:-200px; right:-100px; background:radial-gradient(circle,rgba(201,168,76,.05) 0%,transparent 70%); animation:orbD 11s ease-in-out 6s infinite reverse; }
@keyframes orbD { 0%,100%{transform:translate(0,0)} 50%{transform:translate(20px,-18px)} }

/* ── REVEAL ──────────────────────────────────────────────────── */
.reveal {
    opacity:0; transform:translateY(24px);
    transition:opacity .75s var(--ease), transform .75s var(--ease);
    animation:revFall 0s 2.5s forwards;
}
.reveal.visible { opacity:1; transform:translateY(0); animation:none; }
@keyframes revFall { to { opacity:1; transform:translateY(0); } }

/* ── LAYOUT ──────────────────────────────────────────────────── */
.sc { max-width:1200px; margin:0 auto; padding:0 48px; }
.section-tag {
    display:inline-flex; align-items:center; gap:10px;
    font-size:.67rem; font-weight:700; color:var(--gold);
    text-transform:uppercase; letter-spacing:2.5px;
}
.section-tag::before,.section-tag::after { content:''; width:20px; height:1px; background:var(--gold); opacity:.5; }
.section-title { font-family:var(--serif); font-size:clamp(1.9rem,3vw,2.6rem); font-weight:400; line-height:1.15; }
.section-title em { font-style:italic; color:var(--gold); }

/* ── NAVBAR ──────────────────────────────────────────────────── */
.nav {
    position:sticky; top:0; z-index:100;
    display:flex; align-items:center; justify-content:space-between;
    padding:0 48px; height:68px;
    transition:background .4s, border-color .4s;
}
.nav.scrolled { background:rgba(7,9,15,.93); border-bottom:1px solid var(--border); backdrop-filter:blur(20px); }
.nav-logo { display:flex; align-items:center; }
.nav-logo img { height:32px; object-fit:contain; }
.nav-logo-txt { font-family:var(--serif); font-size:1.3rem; font-weight:700; }
.nav-logo-txt em { font-style:italic; color:var(--gold); }
.nav-right { display:flex; align-items:center; gap:16px; }
.nav-back { font-size:.82rem; color:var(--gray); transition:color .2s; }
.nav-back:hover { color:var(--white); }
.nav-login {
    font-size:.82rem; font-weight:600; color:var(--gold);
    border:1px solid var(--border); border-radius:50px; padding:7px 18px;
    transition:all .2s;
}
.nav-login:hover { background:rgba(201,168,76,.08); }

/* ── HEADER ──────────────────────────────────────────────────── */
.header-section {
    padding:72px 0 52px;
    text-align:center; position:relative; z-index:2;
}
.hs-inner { max-width:640px; margin:0 auto; padding:0 24px; }

/* Email confermata */
.hs-welcome {
    display:inline-flex; align-items:center; gap:8px;
    background:rgba(34,197,94,.10); border:1px solid rgba(34,197,94,.25);
    border-radius:50px; padding:6px 16px;
    font-size:.78rem; font-weight:600; color:var(--green);
    margin-bottom:20px;
}
.hs-check { width:16px; height:16px; display:flex; align-items:center; justify-content:center; }
.hs-check svg { width:14px; height:14px; stroke:var(--green); }

.hs-tag {
    display:inline-flex; align-items:center; gap:10px;
    font-size:.67rem; font-weight:700; color:var(--gold);
    text-transform:uppercase; letter-spacing:2.5px;
    margin-bottom:14px;
}
.hs-tag::before,.hs-tag::after { content:''; width:20px; height:1px; background:var(--gold); opacity:.5; }
.tag-dot { width:6px; height:6px; border-radius:50%; background:var(--gold); animation:blink 2s ease-in-out infinite; }
@keyframes blink { 0%,100%{opacity:1} 50%{opacity:.2} }

.hs-title {
    font-family:var(--serif);
    font-size:clamp(2.8rem,5vw,4.4rem);
    font-weight:400; line-height:1.05;
    letter-spacing:-.02em; margin-bottom:16px;
}
.hs-title em { font-style:italic; color:var(--gold); }
.hs-desc { font-size:.92rem; color:var(--gray); font-weight:300; margin-bottom:36px; }

/* ── BILLING TOGGLE ──────────────────────────────────────────── */
.billing-toggle {
    display:inline-flex; align-items:center; gap:14px;
    background:rgba(255,255,255,.04); border:1px solid var(--brd2);
    border-radius:50px; padding:8px 20px;
}
.bt-label {
    font-size:.84rem; font-weight:600; color:var(--gray);
    display:flex; align-items:center; gap:8px;
    transition:color .3s; cursor:default; user-select:none;
}
.bt-label.active { color:var(--white); }
.bt-save {
    background:rgba(34,197,94,.15); border:1px solid rgba(34,197,94,.3);
    color:var(--green); border-radius:50px; padding:2px 8px;
    font-size:.65rem; font-weight:800; letter-spacing:.3px;
}

.bt-switch {
    width:48px; height:26px; background:rgba(255,255,255,.10);
    border-radius:13px; position:relative;
    transition:background .3s; border:1px solid var(--brd2);
}
.bt-switch.on { background:var(--gold); border-color:var(--gold); }
.bt-thumb {
    position:absolute; width:20px; height:20px; border-radius:50%;
    background:var(--white); top:2px; left:2px;
    transition:transform .3s var(--ease);
    box-shadow:0 1px 4px rgba(0,0,0,.3);
}
.bt-switch.on .bt-thumb { transform:translateX(22px); }

/* ── PLANS GRID ──────────────────────────────────────────────── */
.plans-section { padding:0 48px 80px; position:relative; z-index:2; }
.plans-grid {
    max-width:1100px; margin:0 auto;
    display:grid; grid-template-columns:1fr 1.08fr 1fr;
    gap:20px; align-items:start;
}

/* ── PLAN CARD ───────────────────────────────────────────────── */
.plan-card {
    background:var(--card); border:1px solid var(--brd2);
    border-radius:22px; padding:32px 28px;
    position:relative; overflow:visible;
    transition:border-color .3s, transform .3s var(--ease), box-shadow .3s;
}
.plan-card:hover { border-color:rgba(255,255,255,.14); transform:translateY(-4px); box-shadow:0 20px 50px rgba(0,0,0,.4); }

/* Featured — Pro */
.plan-card--featured {
    border-color:rgba(201,168,76,.35) !important;
    background:linear-gradient(160deg, rgba(201,168,76,.06) 0%, var(--card) 40%) !important;
    box-shadow:0 0 0 1px rgba(201,168,76,.1), 0 24px 60px rgba(0,0,0,.5) !important;
    transform:translateY(-8px);
}
.plan-card--featured:hover { transform:translateY(-14px); }

/* "Più scelto" badge */
.plan-popular-badge {
    position:absolute; top:-14px; left:50%; transform:translateX(-50%);
    background:linear-gradient(135deg,#e8c96a,#c9a84c);
    color:#07090f; border-radius:50px; padding:5px 16px;
    display:flex; align-items:center; gap:6px;
    font-size:.66rem; font-weight:800; text-transform:uppercase; letter-spacing:1px;
    box-shadow:0 4px 14px rgba(201,168,76,.35); white-space:nowrap;
}
.plan-popular-badge svg { width:11px; height:11px; fill:#07090f; }

.plan-top { margin-bottom:20px; }
.plan-name {
    display:block; font-family:var(--serif);
    font-size:1.3rem; font-weight:600; margin-bottom:5px;
}
.plan-tagline { font-size:.78rem; color:var(--gray); line-height:1.5; }

/* Price */
.plan-price-wrap { margin-bottom:22px; }
.plan-price { display:flex; align-items:baseline; gap:3px; margin-bottom:4px; }
.pp-cur { font-size:1.1rem; color:var(--gray); align-self:flex-start; margin-top:8px; }
.pp-num {
    font-family:var(--serif); font-size:3.4rem; font-weight:700; line-height:1;
    transition:all .4s var(--ease);
}
.pp-period { display:flex; flex-direction:column; margin-left:4px; justify-content:flex-end; margin-bottom:6px; }
.pp-period span:first-child { font-size:.82rem; color:var(--gray); }
.pp-annual-note { font-size:.64rem; color:var(--gray2); }
.plan-save { font-size:.72rem; color:var(--green); font-weight:700; }

/* CTA buttons */
.plan-btn {
    display:flex; align-items:center; justify-content:center;
    width:100%; padding:13px; border-radius:12px;
    font-size:.88rem; font-weight:700;
    transition:all .25s var(--ease); margin-bottom:8px;
}
.plan-btn--gold {
    background:linear-gradient(135deg,#e8c96a 0%,#b8900a 100%);
    color:#07090f; box-shadow:0 6px 20px rgba(201,168,76,.25);
}
.plan-btn--gold:hover { transform:translateY(-2px); box-shadow:0 12px 28px rgba(201,168,76,.38); }
.plan-btn--outline {
    border:1px solid var(--brd2); color:var(--gray);
}
.plan-btn--outline:hover { border-color:rgba(255,255,255,.2); color:var(--white); }

.plan-no-cc { text-align:center; font-size:.68rem; color:var(--gray2); margin-bottom:24px; }

/* Features list */
.plan-features { list-style:none; display:flex; flex-direction:column; gap:11px; padding-top:20px; border-top:1px solid var(--brd2); }
.plan-features li { display:flex; align-items:center; gap:10px; font-size:.83rem; }
.plan-features svg { width:15px; height:15px; flex-shrink:0; }
.pf-yes { color:rgba(255,255,255,.8); }
.pf-yes svg { stroke:var(--green); }
.pf-no  { color:var(--gray2); }
.pf-no  svg { stroke:var(--gray2); }
.plan-features strong { color:var(--white); }

/* ── GARANZIA ────────────────────────────────────────────────── */
.guarantee-section { padding:0 0 80px; position:relative; z-index:2; }
.guarantee-card {
    max-width:760px; margin:0 auto;
    display:flex; align-items:center; gap:28px;
    background:rgba(34,197,94,.06); border:1px solid rgba(34,197,94,.18);
    border-radius:18px; padding:28px 32px;
}
.gc-icon {
    width:54px; height:54px; border-radius:14px; flex-shrink:0;
    background:rgba(34,197,94,.12); border:1px solid rgba(34,197,94,.25);
    display:flex; align-items:center; justify-content:center;
}
.gc-icon svg { width:24px; height:24px; stroke:var(--green); }
.guarantee-card h3 { font-family:var(--serif); font-size:1.05rem; font-weight:600; margin-bottom:6px; }
.guarantee-card p  { font-size:.82rem; color:var(--gray); }

/* ── TABELLA COMPARATIVA ─────────────────────────────────────── */
.compare-section { padding:80px 0; border-top:1px solid var(--brd2); position:relative; z-index:2; }
.compare-table-wrap { overflow-x:auto; border-radius:16px; border:1px solid var(--brd2); }

.compare-table {
    width:100%; border-collapse:collapse;
    background:var(--card);
}

/* Header */
.compare-table thead th {
    padding:18px 22px; text-align:center;
    font-size:.72rem; font-weight:700;
    text-transform:uppercase; letter-spacing:1px;
    color:var(--gray); background:rgba(255,255,255,.02);
    border-bottom:1px solid var(--brd2);
}
.compare-table thead th.ct-feature-col { text-align:left; width:38%; }
.compare-table thead th.ct-featured {
    background:rgba(201,168,76,.06);
    color:var(--gold); position:relative;
}
.compare-table thead th.ct-featured::after {
    content:''; position:absolute; top:0; left:0; right:0; height:2px;
    background:linear-gradient(to right,transparent,var(--gold),transparent);
}

/* Body */
.compare-table tbody td {
    padding:14px 22px; font-size:.84rem;
    border-bottom:1px solid rgba(255,255,255,.04);
    text-align:center; vertical-align:middle;
}
.compare-table tbody td:first-child { text-align:left; color:rgba(255,255,255,.75); }
.compare-table tbody td.ct-featured { background:rgba(201,168,76,.04); }

/* Group rows */
.ct-group-row td {
    padding:12px 22px !important;
    background:rgba(255,255,255,.02);
    font-size:.66rem; font-weight:800;
    text-transform:uppercase; letter-spacing:1.5px;
    color:var(--gray2); border-top:1px solid var(--brd2);
}

/* Check / dash */
.ct-yes { color:var(--green); font-size:1rem; font-weight:700; }
.ct-no  { color:var(--gray2); font-size:1rem; }

/* Footer */
.compare-table tfoot td {
    padding:20px 22px; text-align:center;
    border-top:1px solid var(--brd2);
    background:rgba(255,255,255,.01);
}
.compare-table tfoot td.ct-featured { background:rgba(201,168,76,.04); }

.ct-cta {
    display:inline-flex; justify-content:center;
    padding:10px 22px; border-radius:10px;
    font-size:.80rem; font-weight:700;
    transition:all .2s var(--ease);
}
.ct-cta--gold {
    background:linear-gradient(135deg,#e8c96a,#c9a84c);
    color:#07090f; box-shadow:0 4px 14px rgba(201,168,76,.2);
}
.ct-cta--gold:hover { transform:translateY(-2px); box-shadow:0 8px 22px rgba(201,168,76,.32); }
.ct-cta--outline { border:1px solid var(--brd2); color:var(--gray); }
.ct-cta--outline:hover { border-color:rgba(255,255,255,.2); color:var(--white); }

/* ── FAQ ─────────────────────────────────────────────────────── */
.faq-section { padding:80px 0; border-top:1px solid var(--brd2); }
.faq-list { max-width:720px; margin:0 auto; }
.faq-item { border-bottom:1px solid var(--brd2); }
.faq-q {
    width:100%; display:flex; align-items:center; justify-content:space-between; gap:16px;
    padding:20px 0; font-size:.90rem; font-weight:600; color:var(--white);
    text-align:left; transition:color .2s;
}
.faq-q svg { width:17px; height:17px; flex-shrink:0; stroke:var(--gray); transition:transform .3s var(--ease),stroke .2s; }
.faq-q:hover { color:var(--gold); }
.faq-q:hover svg { stroke:var(--gold); }
.faq-q.open { color:var(--gold); }
.faq-q.open svg { transform:rotate(180deg); stroke:var(--gold); }
.faq-a {
    display:none; padding:0 0 20px;
    font-size:.85rem; color:var(--gray); line-height:1.8;
}
.faq-a.open { display:block; animation:fadeA .3s ease; }
@keyframes fadeA { from{opacity:0;transform:translateY(-5px)} to{opacity:1;transform:translateY(0)} }

/* ── FOOTER ──────────────────────────────────────────────────── */
.footer { background:#040608; border-top:1px solid var(--brd2); padding:52px 0 0; }
.footer-inner {
    max-width:1200px; margin:0 auto; padding:0 48px 40px;
    display:grid; grid-template-columns:1.8fr 1fr 1fr 1fr;
    gap:48px; border-bottom:1px solid var(--brd2);
}
.footer-logo { height:30px; object-fit:contain; margin-bottom:10px; }
.footer-logo-txt { font-family:var(--serif); font-size:1.2rem; font-weight:700; display:block; margin-bottom:10px; }
.footer-logo-txt em { font-style:italic; color:var(--gold); }
.footer-brand p { font-size:.80rem; color:var(--gray); }
.footer-col h4 { font-size:.72rem; font-weight:700; text-transform:uppercase; letter-spacing:1px; color:var(--white); margin-bottom:14px; }
.footer-col ul { list-style:none; display:flex; flex-direction:column; gap:10px; }
.footer-col a { font-size:.82rem; color:var(--gray); transition:color .2s; }
.footer-col a:hover { color:var(--gold); }
.footer-bottom { max-width:1200px; margin:0 auto; padding:16px 48px; text-align:center; font-size:.70rem; color:var(--gray2); }

/* ── RESPONSIVE ──────────────────────────────────────────────── */
@media(max-width:960px) {
    .plans-grid { grid-template-columns:1fr; gap:16px; }
    .plan-card--featured { transform:none; }
    .plan-card--featured:hover { transform:translateY(-4px); }
    .plans-section { padding:0 24px 60px; }
    .sc { padding:0 24px; }
    .nav { padding:0 24px; }
    .footer-inner { grid-template-columns:1fr 1fr; padding:0 24px 32px; }
}
@media(max-width:600px) {
    .billing-toggle { flex-direction:column; gap:10px; border-radius:16px; }
    .footer-inner { grid-template-columns:1fr; }
    .nav-back { display:none; }
    .hs-title { font-size:2.4rem; }
}

/* ── KIT FISICO ──────────────────────────────────────────────── */
.kit-box {
    background: rgba(255,255,255,.03);
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 14px; padding: 16px 18px;
    margin: 0 0 22px;
}
.kit-box--gold   { background: rgba(201,168,76,.06); border-color: rgba(201,168,76,.2); }
.kit-box--purple { background: rgba(168,85,247,.06); border-color: rgba(168,85,247,.2); }

.kit-header {
    display: flex; align-items: center; gap: 8px;
    font-size: .70rem; font-weight: 800;
    text-transform: uppercase; letter-spacing: 1.2px;
    color: var(--gray); margin-bottom: 12px;
}
.kit-box--gold   .kit-header { color: var(--gold); }
.kit-box--purple .kit-header { color: #c084fc; }
.kit-header svg { width: 14px; height: 14px; flex-shrink: 0; stroke: currentColor; }

.kit-items { list-style: none; display: flex; flex-direction: column; gap: 8px; }
.kit-items li {
    display: flex; align-items: center; gap: 8px;
    font-size: .79rem; color: rgba(255,255,255,.7);
}
.kit-items svg { width: 13px; height: 13px; flex-shrink: 0; }
.kit-box     .kit-items svg { stroke: var(--gray); }
.kit-box--gold   .kit-items svg { stroke: var(--green); }
.kit-box--purple .kit-items svg { stroke: var(--green); }

/* Categoria nelle features */
.pf-cat {
    font-size: .63rem; font-weight: 800; text-transform: uppercase;
    letter-spacing: 1.5px; color: var(--gray2);
    padding-top: 14px; border-top: 1px solid var(--brd2);
    display: flex; align-items: center; gap: 7px;
}
.pf-cat:first-child { padding-top: 0; border-top: none; }
.ai-cat { color: var(--gold); }
.ai-cat svg { width: 12px; height: 12px; stroke: var(--gold); }

/* Righe AI nelle features */
.pf-ai {
    display: flex; align-items: center; gap: 9px;
    font-size: .83rem; color: rgba(255,255,255,.75);
}
.ai-badge {
    display: inline-flex; align-items: center; justify-content: center;
    background: linear-gradient(135deg, rgba(201,168,76,.2), rgba(201,168,76,.08));
    border: 1px solid rgba(201,168,76,.35);
    border-radius: 5px; padding: 1px 6px;
    font-size: .58rem; font-weight: 900;
    color: var(--gold); letter-spacing: .5px; flex-shrink: 0;
}
.ai-badge--purple {
    background: linear-gradient(135deg, rgba(168,85,247,.2), rgba(168,85,247,.08));
    border-color: rgba(168,85,247,.35); color: #c084fc;
}

/* Piano icon */
.plan-name-wrap { display: flex; align-items: center; gap: 10px; margin-bottom: 5px; }
.plan-icon {
    width: 32px; height: 32px; border-radius: 9px; flex-shrink: 0;
    display: flex; align-items: center; justify-content: center;
}
.plan-icon svg { width: 16px; height: 16px; }
.plan-icon--gray   { background: rgba(255,255,255,.07); border: 1px solid var(--brd2); }
.plan-icon--gray svg { stroke: var(--gray); }
.plan-icon--gold   { background: rgba(201,168,76,.12); border: 1px solid var(--border); }
.plan-icon--gold svg { stroke: var(--gold); fill: var(--gold); width: 14px; height: 14px; }
.plan-icon--purple { background: rgba(168,85,247,.12); border: 1px solid rgba(168,85,247,.25); }
.plan-icon--purple svg { stroke: #c084fc; }

.pp-period-note {
    font-size: .62rem; color: var(--gray2); display: block; margin-top: 1px;
}

/* ── AI SECTION ──────────────────────────────────────────────── */
.ai-section {
    padding: 100px 0;
    border-top: 1px solid var(--brd2);
    position: relative; overflow: hidden;
}
.ai-section::before {
    content: '';
    position: absolute; inset: 0;
    background: radial-gradient(ellipse at 30% 50%, rgba(201,168,76,.04) 0%, transparent 60%);
    pointer-events: none;
}
.ai-inner {
    display: grid; grid-template-columns: 1fr 1.2fr;
    gap: 72px; align-items: center;
    position: relative; z-index: 1;
}
.ai-badge-big {
    display: inline-flex; align-items: center; gap: 10px;
    background: linear-gradient(135deg, rgba(201,168,76,.12), rgba(201,168,76,.04));
    border: 1px solid rgba(201,168,76,.3);
    border-radius: 50px; padding: 8px 18px;
    font-size: .72rem; font-weight: 800;
    color: var(--gold); text-transform: uppercase; letter-spacing: 1.5px;
    margin-bottom: 18px;
}
.ai-badge-big svg { width: 16px; height: 16px; stroke: var(--gold); }
.ai-desc {
    font-size: .92rem; color: rgba(255,255,255,.5);
    font-weight: 300; line-height: 1.9; margin-top: 14px;
}
.ai-features-col { display: flex; flex-direction: column; gap: 0; }
.ai-feat {
    display: flex; gap: 16px; align-items: flex-start;
    padding: 20px 0; border-bottom: 1px solid var(--brd2);
    transition: background .2s;
}
.ai-feat:first-child { padding-top: 0; }
.ai-feat:last-child  { border-bottom: none; padding-bottom: 0; }
.af-icon {
    width: 38px; height: 38px; border-radius: 10px; flex-shrink: 0;
    background: rgba(201,168,76,.08); border: 1px solid var(--border);
    display: flex; align-items: center; justify-content: center;
    transition: background .3s, border-color .3s, transform .3s var(--ease);
}
.af-icon svg { width: 17px; height: 17px; stroke: var(--gold); }
.ai-feat:hover .af-icon { background: rgba(201,168,76,.16); border-color: var(--gold); transform: scale(1.05); }
.ai-feat h4 { font-family: var(--serif); font-size: .95rem; font-weight: 600; margin-bottom: 5px; }
.ai-feat p  { font-size: .80rem; color: var(--gray); line-height: 1.7; }

.elite-only {
    display: inline-block;
    background: rgba(168,85,247,.12); border: 1px solid rgba(168,85,247,.3);
    color: #c084fc; border-radius: 50px; padding: 1px 8px;
    font-size: .64rem; font-weight: 700; text-transform: uppercase; letter-spacing: .5px;
    margin-left: 4px;
}

/* AI group row nella tabella */
.ct-ai-group td { color: var(--gold) !important; }

@media(max-width:960px) {
    .ai-inner { grid-template-columns: 1fr; gap: 40px; }
}