/* ===== AFF - Affiliate Page ===== */
body{margin-bottom:0 !important;overflow-x:hidden}

/* Hero */
.aff-hero{position:relative;overflow:hidden;background:var(--hue-base,#050210)}
.aff-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 30%,color-mix(in srgb, var(--hue-radial-a,#7F56D9) 40%, transparent) 0%,transparent 55%),radial-gradient(ellipse at 20% 70%,color-mix(in srgb, var(--hue-radial-b,#C864B4) 25%, transparent) 0%,transparent 50%),radial-gradient(ellipse at 80% 50%,color-mix(in srgb, var(--hue-radial-c,#7331E0) 15%, transparent) 0%,transparent 45%);pointer-events:none;animation:affOrbDrift 14s ease-in-out infinite alternate}
@keyframes affOrbDrift{0%{transform:scale(1) translate(0,0)}100%{transform:scale(1.1) translate(-2%,3%)}}
.aff-hero-w{max-width:var(--hdr-container-max,1280px);margin:0 auto;padding:clamp(120px,11vw,150px) var(--hdr-px,24px) clamp(72px,7vw,104px);position:relative;z-index:2;text-align:center}
.aff-hero-t{font-family:var(--font-heading);font-size:clamp(36px,5vw,56px);font-weight:900;line-height:1.08;letter-spacing:-.04em;color:#fff;margin:0 auto 18px;max-width:760px}
/* Center the hero H1 block — aurora forces margin:0 0 20px (kills auto). */
body.has-hero .aff-hero-w .aff-hero-t{margin-left:auto!important;margin-right:auto!important}
.aff-hero-t em{font-style:normal;background:linear-gradient(135deg,var(--hue-emph-from,#F43F5E),var(--hue-emph-to,#FCD34D));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.aff-hero-sub{font-size:clamp(15px,1.4vw,18px);color:rgba(255,255,255,.5);line-height:1.6;margin:0 auto;max-width:620px}
.aff-hero-sub strong{color:rgba(255,255,255,.85)}
/* Network SVG */
.aff-network{position:absolute;top:50%;left:50%;width:min(100%,900px);height:auto;aspect-ratio:2/1;transform:translate(-50%,-50%);pointer-events:none;opacity:.6;z-index:1}
.aff-line{opacity:0;animation:affLineReveal 1.5s ease-out forwards}
.aff-line-1{animation-delay:.2s}.aff-line-2{animation-delay:.35s}.aff-line-3{animation-delay:.5s}
.aff-line-4{animation-delay:.65s}.aff-line-5{animation-delay:.8s}.aff-line-6{animation-delay:.95s}
.aff-line-7{animation-delay:1.1s}.aff-line-8{animation-delay:1.2s}.aff-line-9{animation-delay:1.3s}.aff-line-10{animation-delay:1.4s}
@keyframes affLineReveal{0%{opacity:0;stroke-dasharray:200;stroke-dashoffset:200}100%{opacity:1;stroke-dasharray:200;stroke-dashoffset:0}}
.aff-ring{animation:affRingRotate 25s linear infinite}
.aff-ring-2{animation-duration:35s;animation-direction:reverse}
@keyframes affRingRotate{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}
.aff-node{opacity:0;animation:affNodePop .4s ease-out forwards}
.aff-node-center{animation-delay:.1s}
.aff-node-1{animation-delay:.4s}.aff-node-2{animation-delay:.55s}.aff-node-3{animation-delay:.7s}
.aff-node-4{animation-delay:.85s}.aff-node-5{animation-delay:1s}.aff-node-6{animation-delay:1.15s}
.aff-node-leaf{animation-delay:1.5s}
@keyframes affNodePop{0%{opacity:0;r:0}60%{r:6}100%{opacity:1}}
.aff-node-glow{animation:affGlowPulse 3s ease-in-out infinite}
@keyframes affGlowPulse{0%,100%{r:24;opacity:.3}50%{r:36;opacity:.5}}
.aff-pulse-1{animation:affPulse1 4s linear infinite 1s}
.aff-pulse-2{animation:affPulse2 5s linear infinite 2s}
.aff-pulse-3{animation:affPulse3 4.5s linear infinite .5s}
.aff-pulse-4{animation:affPulse4 5.5s linear infinite 3s}
@keyframes affPulse1{0%{cx:400;cy:200;opacity:1}100%{cx:180;cy:100;opacity:0}}
@keyframes affPulse2{0%{cx:400;cy:200;opacity:1}100%{cx:680;cy:310;opacity:0}}
@keyframes affPulse3{0%{cx:400;cy:200;opacity:1}100%{cx:100;cy:200;opacity:0}}
@keyframes affPulse4{0%{cx:400;cy:200;opacity:1}100%{cx:650;cy:120;opacity:0}}

/* Particles */
.aff-particles{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1}

/* Fade-in */
.aff-fade{opacity:0;transform:translateY(20px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}
.aff-fade.aff-fade-in{opacity:1;transform:translateY(0)}
.aff-fade-2{transition-delay:.15s}
.aff-fade-3{transition-delay:.3s}

/* Banner */
.aff-banner{max-width:var(--hdr-container-max,1280px);margin:-80px auto 0;padding:0 var(--hdr-px,24px);position:relative;z-index:10}
.aff-banner-wrap{position:relative;border-radius:20px;overflow:hidden;box-shadow:var(--shadow-lg)}
.aff-banner-img{width:100%;height:clamp(220px,30vw,420px);object-fit:cover;object-position:center 55%;display:block;transition:transform .4s}
.aff-banner-wrap:hover .aff-banner-img{transform:scale(1.02)}
.aff-banner-link{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:rgba(0,0,0,.25);text-decoration:none;transition:background .3s}
.aff-banner-link:hover{background:rgba(0,0,0,.4)}
.aff-banner-link svg{filter:drop-shadow(0 2px 8px rgba(0,0,0,.3));transition:transform .3s}
.aff-banner-link:hover svg{transform:scale(1.1)}
.aff-banner-ring{animation:affRingPulse 2s ease-in-out infinite}
@keyframes affRingPulse{0%,100%{r:23;opacity:.6;stroke-width:2}50%{r:26;opacity:.3;stroke-width:1}}
.aff-banner-label{color:#fff;font-size:14px;font-weight:600;letter-spacing:.03em;text-shadow:0 1px 4px rgba(0,0,0,.4)}

/* Scroll reveal */
.aff-reveal{opacity:0;transform:translateY(32px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}
.aff-reveal.aff-visible{opacity:1;transform:translateY(0)}
.aff-reveal-d1{transition-delay:.1s}
.aff-reveal-d2{transition-delay:.2s}
.aff-reveal-d3{transition-delay:.3s}
@media(prefers-reduced-motion:reduce){.aff-fade,.aff-reveal,.aff-line,.aff-node,.aff-ring,.aff-pulse-1,.aff-pulse-2,.aff-pulse-3,.aff-pulse-4,.aff-node-glow{opacity:1;transform:none;transition:none;animation:none}}

/* Shared */
.aff-text-center{text-align:center}
.aff-section-t{font-family:var(--font-heading);font-size:clamp(28px,3.5vw,42px);font-weight:900;line-height:1.1;letter-spacing:-.04em;color:var(--color-text,#101828);margin:0 0 24px}
.aff-section-t em{font-style:normal;background:linear-gradient(135deg,var(--hue-emph-from,#F43F5E),var(--hue-emph-to,#FCD34D));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.aff-section-sub{font-size:clamp(15px,1.3vw,17px);color:var(--color-text-light,#667085);line-height:1.6;margin:0 auto 40px;max-width:560px}
.aff-body{font-size:clamp(15px,1.2vw,17px);color:var(--color-text-light,#667085);line-height:1.7;margin:0 0 16px}
.aff-body strong{color:var(--color-text,#101828)}

/* Buttons */
.aff-btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:0;padding:15px 32px;border-radius:12px;background:linear-gradient(135deg,var(--c-cta-from,#FF7A5C) 0%,var(--c-cta-to,#F43F5E) 100%);color:#fff;font-size:16px;font-weight:700;text-decoration:none;border:0;box-shadow:0 12px 24px -10px rgba(244,63,94,.42);transition:transform .3s cubic-bezier(.23,1,.32,1),box-shadow .3s cubic-bezier(.23,1,.32,1),background .3s}
.aff-btn-primary:hover{color:#fff;transform:translateY(-2px);background:linear-gradient(135deg,#F76A4D 0%,#E0334C 100%);box-shadow:0 16px 32px -10px rgba(244,63,94,.55)}
.aff-btn-outline{display:inline-flex;align-items:center;justify-content:center;gap:0;padding:15px 32px;border-radius:12px;background:rgba(255,255,255,.06);border:1.5px solid rgba(255,255,255,.18);backdrop-filter:blur(8px);color:#fff;font-size:16px;font-weight:700;text-decoration:none;transition:background .3s,border-color .3s}
.aff-btn-outline:hover{border-color:rgba(255,255,255,.36);background:rgba(255,255,255,.12);color:#fff}

/* About */
.aff-about{padding:var(--section-pad-lg,clamp(80px,9vw,128px)) 0}
.aff-about-w{max-width:var(--hdr-container-max,1280px);margin:0 auto;padding:0 var(--hdr-px,24px)}
.aff-about-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,5vw,64px);align-items:center}
.aff-about-btns{margin-top:28px}
.aff-img-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.aff-img-col{display:flex;flex-direction:column;gap:16px}
.aff-img-col-offset{padding-top:40px}
.aff-img{width:100%;border-radius:16px;box-shadow:0 8px 30px rgba(16,24,40,.1);object-fit:cover;aspect-ratio:1/1}

/* How It Works */
.aff-how{padding:var(--section-pad-lg,clamp(80px,9vw,128px)) 0;background:var(--hue-surface,#FAFAFB)}
.aff-how-w{max-width:var(--hdr-container-max,1280px);margin:0 auto;padding:0 var(--hdr-px,24px)}
.aff-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:clamp(32px,4vw,48px);align-items:stretch}
/* Card chrome matched 1:1 to the homepage / AIPB s11 cards (radius 16, 32/28 pad, same shadow + hover lift) */
.aff-step{display:flex;flex-direction:column;align-items:center;text-align:center;padding:32px 28px;background:#fff;border-radius:16px;border:1px solid #EAECF0;box-shadow:0 1px 3px rgba(16,24,40,.04),0 8px 24px -12px rgba(16,24,40,.06);transition:transform .28s cubic-bezier(.23,1,.32,1),box-shadow .28s cubic-bezier(.23,1,.32,1),border-color .28s}
.aff-step:hover{transform:translateY(-4px);box-shadow:0 16px 32px -16px rgba(16,24,40,.12);border-color:#D0D5DD}
.aff-step-num{width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,var(--hue-accent,#7F56D9) 0%,color-mix(in srgb, var(--hue-accent,#7F56D9) 80%, #000) 100%);color:#fff;font-family:var(--font-heading);font-size:22px;font-weight:900;display:flex;align-items:center;justify-content:center;margin:0 auto 18px;box-shadow:0 4px 16px color-mix(in srgb, var(--hue-accent,#7F56D9) 30%, transparent)}
.aff-step-t{font-family:var(--font-heading);font-size:clamp(18px,1.5vw,22px);font-weight:800;color:var(--color-text,#101828);margin:0 0 10px;letter-spacing:-.02em}
.aff-step-d{font-size:15px;color:var(--color-text-light,#667085);line-height:1.6;margin:0;flex:1}
.aff-step-link{display:inline-flex;align-items:center;gap:6px;margin-top:18px;font-family:var(--font-heading);font-size:14px;font-weight:700;color:var(--hue-accent,#7F56D9);text-decoration:none;transition:color .2s}
.aff-step-link span{transition:transform .2s}
.aff-step-link:hover{color:color-mix(in srgb, var(--hue-accent,#7F56D9) 78%, #000)}
.aff-step-link:hover span{transform:translateX(3px)}

/* Benefits */
.aff-benefits{padding:var(--section-pad-lg,clamp(80px,9vw,128px)) 0}
.aff-benefits-w{max-width:var(--hdr-container-max,1280px);margin:0 auto;padding:0 var(--hdr-px,24px)}
.aff-benefits-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:clamp(32px,4vw,48px);align-items:stretch}
/* Card + colored icon tiles matched to the AIPB landing s11 cards (size, padding, colored icons). */
.aff-benefit{padding:32px 28px;background:#fff;border-radius:16px;border:1px solid #EAECF0;box-shadow:0 1px 3px rgba(16,24,40,.04),0 8px 24px -12px rgba(16,24,40,.06);transition:transform .28s cubic-bezier(.23,1,.32,1),box-shadow .28s cubic-bezier(.23,1,.32,1),border-color .28s}
.aff-benefit:hover{transform:translateY(-4px);box-shadow:0 16px 32px -16px rgba(16,24,40,.12);border-color:#D0D5DD}
.aff-benefit-icon{width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;margin-bottom:18px;transition:transform .3s}
.aff-benefit-icon svg{width:24px;height:24px}
.aff-benefit:hover .aff-benefit-icon{transform:scale(1.08)}
.aff-benefit:nth-child(1) .aff-benefit-icon{background:rgba(127,86,217,.08);border:1px solid rgba(127,86,217,.2);color:#7F56D9}
.aff-benefit:nth-child(2) .aff-benefit-icon{background:rgba(14,165,233,.08);border:1px solid rgba(14,165,233,.2);color:#0EA5E9}
.aff-benefit:nth-child(3) .aff-benefit-icon{background:rgba(18,183,106,.08);border:1px solid rgba(18,183,106,.2);color:#12B76A}
.aff-benefit:nth-child(4) .aff-benefit-icon{background:rgba(247,144,9,.08);border:1px solid rgba(247,144,9,.2);color:#F79009}
.aff-benefit:nth-child(5) .aff-benefit-icon{background:rgba(236,76,109,.08);border:1px solid rgba(236,76,109,.2);color:#EC4C6D}
.aff-benefit:nth-child(6) .aff-benefit-icon{background:rgba(43,191,211,.08);border:1px solid rgba(43,191,211,.2);color:#2BBFD3}
.aff-benefit-t{font-family:var(--font-heading);font-size:clamp(17px,1.3vw,19px);font-weight:800;color:var(--color-text,#101828);margin:0 0 8px;letter-spacing:-.01em}
.aff-benefit-d{font-size:14.5px;color:var(--color-text-light,#667085);line-height:1.6;margin:0}

/* Who Is It For */
.aff-who{padding:var(--section-pad-lg,clamp(80px,9vw,128px)) 0;background:var(--hue-surface,#FAFAFB)}
.aff-who-w{max-width:var(--hdr-container-max,1280px);margin:0 auto;padding:0 var(--hdr-px,24px)}
.aff-who-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(24px,3vw,40px);margin-top:clamp(32px,4vw,48px)}
.aff-who-card{background:#fff;border-radius:20px;border:1px solid var(--gray-200,#EAECF0);box-shadow:0 1px 3px rgba(16,24,40,.06);overflow:hidden;transition:transform .3s,box-shadow .3s}
.aff-who-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px rgba(16,24,40,.1)}
.aff-who-card-img{height:200px;overflow:hidden}
.aff-who-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.aff-who-card:hover .aff-who-card-img img{transform:scale(1.05)}
.aff-who-card-body{padding:clamp(24px,2.5vw,32px)}
.aff-who-card-t{font-family:var(--font-heading);font-size:clamp(18px,1.5vw,22px);font-weight:800;color:var(--color-text,#101828);margin:0 0 10px;letter-spacing:-.02em}
.aff-who-card-d{font-size:15px;color:var(--color-text-light,#667085);line-height:1.6;margin:0}

/* Closing CTA migrated to canonical .hx-s10 (home-extra.css) + .s10-trust-items (sections.css) */

/* Responsive */
@media(max-width:960px){
.aff-banner{margin-top:-64px}
.aff-about-grid{grid-template-columns:1fr}
.aff-about-images{order:-1}
.aff-steps,.aff-benefits-grid,.aff-who-grid{grid-template-columns:1fr}
}
@media(max-width:560px){
.aff-hero-w{padding:clamp(96px,12vw,116px) var(--hdr-mobile-px,16px) clamp(44px,8vw,60px);text-align:center}
.aff-hero-sub{margin-left:auto;margin-right:auto}
.aff-banner{margin-top:-80px;padding:0 var(--hdr-mobile-px,16px)}
.aff-about-w,.aff-how-w,.aff-benefits-w,.aff-who-w,.aff-calc-w{padding:0 var(--hdr-mobile-px,16px)}
.aff-section-t{text-align:left}
.aff-section-sub{text-align:left;margin-left:0}
.aff-text-center{text-align:left}
.aff-img-col-offset{padding-top:0}
}

/* ===== Hero CTAs + trust strip (FAZ 1b) ============================= */
.aff-hero-cta {
    display: flex;
    gap: 12px;
    justify-content: center;
    margin-top: 28px;
    flex-wrap: wrap;
}
.aff-hero-btn-primary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0;
    min-height: 48px;
    padding: 14px 28px;
    background: linear-gradient(135deg, var(--c-cta-from, #FF7A5C) 0%, var(--c-cta-to, #F43F5E) 100%);
    color: #fff;
    font-family: var(--font-heading, 'Inter', sans-serif);
    font-weight: 700;
    font-size: 15px;
    border-radius: 12px;
    border: 0;
    text-decoration: none;
    box-shadow: 0 12px 24px -10px rgba(244,63,94,.42);
    transition: transform .14s ease, box-shadow .14s ease, background .14s ease;
}
.aff-hero-btn-primary:hover {
    transform: translateY(-1px);
    background: linear-gradient(135deg, #F76A4D 0%, #E0334C 100%);
    box-shadow: 0 16px 32px -10px rgba(244,63,94,.55);
}
.aff-hero-btn-ghost {
    display: inline-flex;
    align-items: center;
    min-height: 48px;
    padding: 14px 28px;
    background: rgba(255,255,255,.06);
    color: #fff;
    border: 1.5px solid rgba(255,255,255,.18);
    backdrop-filter: blur(8px);
    font-family: var(--font-heading, 'Inter', sans-serif);
    font-weight: 700;
    font-size: 15px;
    border-radius: 12px;
    text-decoration: none;
    transition: background .14s, border-color .14s;
}
.aff-hero-btn-ghost:hover {
    background: rgba(255,255,255,.12);
    border-color: rgba(255,255,255,.36);
}
.aff-hero-trust {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 28px;
    margin-top: 32px;
    color: rgba(255,255,255,.6);
    font-size: 13px;
    font-weight: 600;
}
.aff-hero-trust span::before {
    content: '✓ ';
    color: #12B76A;
    font-weight: 800;
    margin-right: 4px;
}

/* ===== Earnings calculator ======================================== */
.aff-calc {
    background: var(--hue-surface, #FAFAFB);
    padding: var(--section-pad-lg, clamp(80px, 9vw, 128px)) 0;
}
.aff-calc-w {
    max-width: var(--hdr-container-max, 1280px);
    margin: 0 auto;
    padding: 0 var(--hdr-px, 24px);
}
/* Calculator card stays a centered focal block within the header-eq wrapper. */
.aff-calc-head, .aff-calc-card {
    max-width: 920px;
    margin-left: auto;
    margin-right: auto;
}
.aff-calc-head {
    text-align: center;
    margin-bottom: 40px;
}
.aff-calc-head .eyebrow {
    display: inline-block;
    color: var(--hue-accent, #7F56D9);
    font-family: var(--font-heading, 'Inter', sans-serif);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    margin-bottom: 12px;
}
.aff-calc-sub {
    color: var(--c-text-muted, #667085);
    font-size: 16px;
    line-height: 1.6;
    margin: 8px auto 0;
    max-width: 560px;
}
.aff-calc-card {
    display: grid;
    grid-template-columns: 1.4fr 1fr;
    gap: 32px;
    background: #fff;
    border: 1px solid var(--c-border, #EAECF0);
    border-radius: 20px;
    padding: 36px;
    box-shadow: 0 4px 8px rgba(16,24,40,.04), 0 12px 24px -8px rgba(16,24,40,.08);
}
@media (max-width: 720px) {
    .aff-calc-card { grid-template-columns: 1fr; padding: 24px; }
}
.aff-calc-row {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 24px;
}
.aff-calc-label {
    font-family: var(--font-heading, 'Inter', sans-serif);
    font-size: 13px;
    font-weight: 700;
    color: var(--c-text, #101828);
    letter-spacing: .04em;
    text-transform: uppercase;
}
.aff-calc-row input[type=range] {
    width: 100%;
    -webkit-appearance: none;
    height: 6px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--hue-accent, #7F56D9) 0%, #9E77ED 100%);
    outline: none;
}
.aff-calc-row input[type=range]::-webkit-slider-thumb {
    -webkit-appearance: none;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: #fff;
    border: 3px solid var(--hue-accent, #7F56D9);
    cursor: grab;
    box-shadow: 0 2px 6px rgba(16,24,40,.15);
}
.aff-calc-row input[type=range]::-moz-range-thumb {
    width: 22px; height: 22px; border-radius: 50%;
    background: #fff; border: 3px solid var(--hue-accent, #7F56D9);
    cursor: grab; box-shadow: 0 2px 6px rgba(16,24,40,.15);
}
.aff-calc-value {
    font-family: var(--font-heading, 'Inter', sans-serif);
    font-size: 18px;
    font-weight: 800;
    color: var(--hue-accent, #7F56D9);
}
.aff-calc-rate {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 14px 18px;
    background: var(--hue-accent-soft, rgba(127,86,217,.06));
    border-radius: 12px;
    margin-top: 12px;
}
.aff-calc-rate-label {
    font-size: 13px;
    font-weight: 700;
    color: var(--c-text-muted, #667085);
    letter-spacing: .04em;
    text-transform: uppercase;
}
.aff-calc-rate-value {
    font-family: var(--font-heading, 'Inter', sans-serif);
    font-size: 22px;
    font-weight: 800;
    color: var(--hue-accent, #7F56D9);
}
.aff-calc-result {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    background: linear-gradient(135deg, #F6F4FE 0%, #F3F0FD 100%);
    border: 1px solid #ECE7FB;
    border-radius: 16px;
    padding: 28px 20px;
}
.aff-calc-result-label {
    font-size: 13px;
    font-weight: 700;
    color: var(--c-text-muted, #667085);
    letter-spacing: .04em;
    text-transform: uppercase;
    margin-bottom: 6px;
}
.aff-calc-result-amount {
    font-family: var(--font-heading, 'Inter', sans-serif);
    font-size: 48px;
    font-weight: 900;
    background: linear-gradient(135deg, var(--hue-accent, #7F56D9), #B689F5);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
    line-height: 1;
    letter-spacing: -.03em;
    margin-bottom: 8px;
}
.aff-calc-result-annual {
    font-size: 13px;
    color: var(--c-text-muted, #667085);
    margin-bottom: 18px;
}
.aff-calc-result-annual span {
    font-weight: 800;
    color: var(--c-text, #101828);
}
.aff-calc-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0;
    min-height: 44px;
    padding: 12px 24px;
    background: linear-gradient(135deg, var(--c-cta-from, #FF7A5C) 0%, var(--c-cta-to, #F43F5E) 100%);
    color: #fff;
    font-family: var(--font-heading, 'Inter', sans-serif);
    font-weight: 700;
    font-size: 14px;
    border-radius: 12px;
    border: 0;
    text-decoration: none;
    box-shadow: 0 12px 24px -10px rgba(244,63,94,.42);
    transition: transform .14s, box-shadow .14s, background .14s;
}
.aff-calc-cta:hover {
    transform: translateY(-1px);
    background: linear-gradient(135deg, #F76A4D 0%, #E0334C 100%);
    box-shadow: 0 16px 32px -10px rgba(244,63,94,.55);
}

@media (max-width: 480px) {
    .aff-hero-cta { flex-direction: column; align-items: stretch; padding: 0 var(--hdr-mobile-px, 16px); }
    .aff-hero-btn-primary, .aff-hero-btn-ghost { justify-content: center; }
    .aff-hero-trust { gap: 12px; }
}
