/* ══════════════════════════════════════════════════════════════════
   AnkasFX theme — header, footer & home sections
   (cloned from reference design; all CSS lives here, never in .blade)
══════════════════════════════════════════════════════════════════ */
:root{
    --afx-head:'Plus Jakarta Sans','Poppins',Arial,Helvetica,sans-serif;
    /* purple brand palette */
    --afx-blue:#660F5E;
    --afx-blue-d:#4E0B4B;
    --afx-ink:#1A0723;
    --afx-ink-2:#2D0931;
    --afx-muted:#6b5c70;
    --afx-line:#ece6ef;
    --afx-bg-soft:#f5eef7;
    --afx-bg-gray:#f6f4f7;
}

/* ─── shared buttons ─────────────────────────────────────────── */
.afx-btn{
    display:inline-flex; align-items:center; justify-content:center; gap:7px;
    padding:5px 28px; min-height:48px; border-radius:4px; font-size:14px; font-weight:700;
    text-decoration:none; cursor:pointer; border:1.5px solid transparent;
    white-space:nowrap; transition:.16s ease; letter-spacing:.04em;
    text-transform:uppercase; line-height:1;
}
.afx-btn-solid{ background:var(--afx-blue); color:#fff; }
.afx-btn-solid:hover{ background:var(--afx-blue-d); color:#fff; transform:translateY(-1px); }
.afx-btn-soft{ background:rgba(102,15,94,.1); color:var(--afx-blue); }
.afx-btn-soft:hover{ background:rgba(102,15,94,.18); color:var(--afx-blue-d); }
.afx-btn-grey{ background:#eef0f3; color:var(--afx-ink); }
.afx-btn-grey:hover{ background:#e2e6ec; color:var(--afx-ink); }
.afx-btn-ghost{ background:transparent; color:var(--afx-blue); padding-left:10px; padding-right:10px; }
.afx-btn-ghost:hover{ color:var(--afx-blue-d); }
.afx-btn-dark{ background:#16191f; color:#fff; }
.afx-btn-dark:hover{ background:#000; color:#fff; transform:translateY(-1px); }
.afx-btn-white{ background:#fff; color:var(--afx-ink); }
.afx-btn-white:hover{ background:#f1f3f6; color:var(--afx-ink); transform:translateY(-1px); }
.afx-btn-outline-dark{ background:transparent; color:var(--afx-ink); border-color:#2b3441; }
.afx-btn-outline-dark:hover{ background:var(--afx-ink); border-color:var(--afx-ink); color:#fff; }
.afx-btn-outline-white{ background:transparent; color:#fff; border-color:rgba(255,255,255,.7); }
.afx-btn-outline-white:hover{ background:rgba(255,255,255,.12); color:#fff; }

/* shared section shells */
.afx-shell{ max-width:1180px; margin:0 auto; padding:0 22px; }
.afx-eyebrow{
    color:var(--afx-blue); font-weight:700; font-size:.74rem;
    letter-spacing:.12em; text-transform:uppercase; margin:0 0 14px;
}
.afx-h2{ font-family:var(--afx-head); font-size:clamp(1.7rem,3.2vw,2.4rem); font-weight:400; color:var(--afx-ink); line-height:1.2; margin:0 0 16px; }
.afx-h2 b,.afx-h2 strong{ font-weight:700; }
.afx-lead{ color:var(--afx-muted); font-size:.98rem; line-height:1.75; margin:0; }

/* ══════════════════════════════════════════════════════════════════
   HEADER
══════════════════════════════════════════════════════════════════ */
.afx-header{
    position:fixed; top:0; left:0; right:0; width:100%; z-index:1030;
    background:#fff; border-bottom:1px solid var(--afx-line);
    transition:transform .3s ease, box-shadow .25s ease;
}
.afx-header.header-fixed{ box-shadow:0 6px 24px rgba(15,27,45,.07); }
/* hidden while actively scrolling (slides up out of view) */
.afx-header.afx-hide{ transform:translateY(-100%); }
/* afx-header is position:fixed (always visible on scroll) — offset the page content
   by the header height so nothing hides underneath it. Header height = 94px + 1px border. */
main#main{ padding-top:95px !important; }
.afx-hdr-inner{ max-width:1240px; margin:0 auto; padding:0 22px; height:94px; display:flex; align-items:center; gap:26px; }
.afx-logo{ flex-shrink:0; display:inline-flex; align-items:center; }
.afx-logo img{ height:76px; width:auto; max-width:280px; object-fit:contain; border-radius:13px; box-shadow:0 4px 16px rgba(15,20,40,.22); transition:transform .2s ease; }
.afx-logo:hover img{ transform:translateY(-1px) scale(1.02); }

.afx-nav{ display:flex; align-items:center; flex:1 1 auto; }
.afx-nav-close{ display:none; }
.afx-nav-menu{ list-style:none; margin:0; padding:0; display:flex; align-items:center; gap:4px; }
.afx-nav-item{ position:relative; }
.afx-nav-link{
    display:inline-flex; align-items:center; gap:5px; padding:10px 14px;
    border:none; background:transparent; font-size:.95rem; font-weight:600;
    color:var(--afx-ink); text-decoration:none; cursor:pointer; border-radius:8px;
    transition:color .15s, background .15s; white-space:nowrap;
}
.afx-nav-link:hover,.afx-nav-link.active{ color:var(--afx-blue); }
.afx-caret{ font-size:.68rem; opacity:.75; transition:transform .2s; }

.afx-dropdown{
    position:absolute; top:calc(100% + 10px); left:0; min-width:230px; background:#fff;
    border:1px solid var(--afx-line); border-radius:12px;
    box-shadow:0 18px 50px rgba(15,27,45,.13); padding:8px;
    opacity:0; visibility:hidden; transform:translateY(8px); transition:.18s ease; z-index:50;
}
.afx-has-drop:hover .afx-dropdown{ opacity:1; visibility:visible; transform:translateY(0); }
.afx-has-drop:hover .afx-caret{ transform:rotate(180deg); }
.afx-dd-item{
    display:block; padding:9px 12px; border-radius:8px; font-size:.9rem; font-weight:500;
    color:var(--afx-ink); text-decoration:none; transition:background .14s, color .14s;
}
.afx-dd-item:hover,.afx-dd-item.active{ background:rgba(102,15,94,.07); color:var(--afx-blue); }

.afx-header-right{ display:flex; align-items:center; gap:10px; margin-left:auto; flex-shrink:0; }
.afx-auth-group{ gap:8px; }
.afx-lang-btn{
    display:inline-flex; align-items:center; gap:6px; padding:7px 12px; background:#fff;
    border:1px solid var(--afx-line); border-radius:8px; color:var(--afx-ink);
    font-size:.86rem; cursor:pointer; transition:border-color .15s;
}
.afx-lang-btn:hover{ border-color:var(--afx-blue); }
.afx-lang-code{ font-weight:700; font-size:.78rem; color:var(--afx-ink); }
.afx-lang-caret{ font-size:.6rem; opacity:.7; }
.afx-lang-flag{ width:22px; height:15px; border-radius:3px; object-fit:cover; flex:0 0 auto;
    box-shadow:0 0 0 1px rgba(15,27,45,.12); }
.afx-lang .dropdown-menu{ background:#1A0723; border-radius:12px; border:1px solid rgba(255,255,255,.08); box-shadow:0 18px 50px rgba(0,0,0,.45); padding:6px; min-width:180px; }
.afx-lang .dropdown-item{ border-radius:8px; color:#e6ebf5; font-size:.86rem; font-weight:500; padding:8px 10px; }
.afx-lang .dropdown-item img{ width:22px; height:15px; border-radius:3px; object-fit:cover; box-shadow:0 0 0 1px rgba(255,255,255,.15); }
.afx-lang .dropdown-item:hover{ background:rgba(255,255,255,.08); color:#fff; }
.afx-lang .dropdown-item.active{ background:rgba(102,15,94,.30); color:#d98fd0; }
.afx-lang .dropdown-item.active .bi-check2{ color:#d98fd0; }

.afx-burger{
    display:none; width:42px; height:42px; align-items:center; justify-content:center;
    background:rgba(102,15,94,.08); border:1px solid rgba(102,15,94,.25);
    border-radius:9px; color:var(--afx-blue); font-size:1.4rem; cursor:pointer;
}

@media (max-width:991.98px){
    .afx-hdr-inner{ height:74px; padding:0 16px; gap:12px; }
    main#main{ padding-top:75px !important; }
    .afx-logo img{ height:60px; max-width:210px; border-radius:10px; }
    .afx-burger{ display:inline-flex; }
    .afx-nav{
        position:fixed; top:0; right:-100%; bottom:0; width:300px; max-width:88vw;
        height:100dvh; background:#fff; border-left:1px solid var(--afx-line);
        flex-direction:column; align-items:stretch; padding:0; z-index:99999;
        transition:right .3s cubic-bezier(.4,0,.2,1); overflow-y:auto;
    }
    .afx-nav.afx-nav-open{ right:0; box-shadow:-20px 0 80px rgba(0,0,0,.35); }
    .afx-nav-close{
        display:flex; align-items:center; justify-content:space-between; padding:0 18px;
        min-height:56px; background:#fff; border:none; border-bottom:1px solid var(--afx-line);
        color:var(--afx-muted); font-size:.75rem; font-weight:700; letter-spacing:.5px;
        cursor:pointer; position:sticky; top:0; z-index:5;
    }
    .afx-nav-close i{ font-size:1.1rem; color:var(--afx-ink); }
    .afx-nav-menu{ flex-direction:column; align-items:stretch; gap:2px; padding:12px; }
    .afx-nav-item{ width:100%; }
    .afx-nav-link{ width:100%; justify-content:flex-start; padding:12px 14px; }
    .afx-nav-link:hover,.afx-nav-link.active{ background:rgba(102,15,94,.07); }
    .afx-dropdown{
        position:static; opacity:1; visibility:visible; transform:none; box-shadow:none;
        border:none; background:rgba(102,15,94,.04); padding:6px 8px; margin:2px 0 6px;
        display:none; min-width:0;
    }
    .afx-dropdown.afx-drop-show{ display:block; }
    .afx-caret.rotated{ transform:rotate(180deg); }
    .afx-nav-mob-auth{
        margin-top:auto; padding:18px 14px 32px; border-top:1px solid var(--afx-line);
        display:flex; flex-direction:column; gap:10px;
    }
}
@media (max-width:575px){ .afx-nav{ width:100%; max-width:100%; } }

.afx-nav-overlay{
    display:none; position:fixed; inset:0; background:rgba(15,27,45,.55);
    z-index:99998; backdrop-filter:blur(2px);
}
.afx-nav-overlay.show{ display:block; }

/* ══════════════════════════════════════════════════════════════════
   HERO
══════════════════════════════════════════════════════════════════ */
.afx-hero{
    position:relative; min-height:78vh; display:flex; align-items:center;
    /* dark-purple gradient palette */
    background:linear-gradient(135deg, #11051B 0%, #1A0723 32%, #2D0931 58%, #4E0B4B 82%, #660F5E 100%) center/cover no-repeat;
    overflow:hidden;
}
.afx-hero::after{
    content:""; position:absolute; inset:0;
    background:linear-gradient(90deg, rgba(17,5,27,.82) 0%, rgba(26,7,35,.55) 45%, rgba(45,9,49,.15) 100%);
}
.afx-hero .afx-shell{ position:relative; z-index:2; width:100%; padding-top:64px; padding-bottom:64px; }
.afx-hero-content{ max-width:540px; }
.afx-hero-title{ font-family:var(--afx-head); color:#fff; font-size:clamp(2rem,4.5vw,3rem); font-weight:400; line-height:1.18; margin:0 0 16px; }
.afx-hero-title b,.afx-hero-title strong{ font-weight:700; }
.afx-hero-desc{ color:rgba(255,255,255,.85); font-size:1rem; line-height:1.7; margin:0 0 28px; }
.afx-hero-actions{ display:flex; gap:14px; flex-wrap:wrap; }

/* ══════════════════════════════════════════════════════════════════
   MULTI-PLATFORM
══════════════════════════════════════════════════════════════════ */
.afx-platform{ background:#fff; padding:84px 0; }
/* full background-image variant of the Our Platforms section */
.afx-platform--bg{ position:relative; background-size:cover; background-position:center; background-repeat:no-repeat; padding:110px 0; }
.afx-platform--bg::before{ content:''; position:absolute; inset:0; background:linear-gradient(90deg, rgba(255,255,255,.95) 0%, rgba(255,255,255,.88) 42%, rgba(255,255,255,.45) 72%, rgba(255,255,255,.15) 100%); }
.afx-platform--bg .afx-shell{ position:relative; z-index:1; }
.afx-platform--bg .afx-platform-body{ max-width:560px; }
.afx-platform-grid{ display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; }
.afx-platform-media{ position:relative; }
.afx-platform-collage{ display:grid; grid-template-columns:1fr 1fr; grid-template-rows:auto auto; gap:16px; }
.afx-platform-collage img{ width:100%; height:100%; object-fit:cover; border-radius:14px; display:block; }
.afx-platform-collage .afx-pc-tall{ grid-row:1 / span 2; align-self:center; }
.afx-platform-collage .afx-pc-wide{ grid-column:1 / -1; }
.afx-platform-collage-img{ width:100%; height:auto; display:block; border-radius:14px; }
.afx-platform-body p{ color:var(--afx-muted); font-size:.95rem; line-height:1.75; margin:0 0 16px; }
.afx-platform-title{ font-family:var(--afx-head); font-size:clamp(1.5rem,2.6vw,2rem); font-weight:700; color:var(--afx-ink); line-height:1.2; margin:0 0 18px; }
.afx-platform-title span{ display:block; font-weight:700; }
.afx-platform-actions{ display:flex; gap:14px; flex-wrap:wrap; margin-top:8px; }

/* ══════════════════════════════════════════════════════════════════
   INSTRUMENTS (intro)
══════════════════════════════════════════════════════════════════ */
.afx-instruments{ background:#fff; padding:54px 0 70px; text-align:center; }
.afx-instruments .afx-h2{ max-width:760px; margin:0 auto 18px; }
.afx-instruments .afx-lead{ max-width:760px; margin:0 auto; }

/* ══════════════════════════════════════════════════════════════════
   ASSETS SELECTION
══════════════════════════════════════════════════════════════════ */
.afx-assets{ background:var(--afx-bg-soft); padding:80px 0; }
.afx-assets-head{ text-align:center; max-width:720px; margin:0 auto 48px; }
.afx-assets-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.afx-asset-card{
    background:#fff; padding:38px 34px; border-radius:8px; border:1px solid var(--afx-line);
    transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease, background-color .22s ease;
}
.afx-asset-card:hover{
    transform:translateY(-8px); border-color:transparent;
    background:var(--theme-color, var(--afx-blue));
    box-shadow:0 18px 38px rgba(20,40,80,.20);
}
.afx-asset-ico{ font-size:1.7rem; color:var(--afx-blue); margin-bottom:20px; line-height:1; transition:transform .22s ease, color .22s ease; }
.afx-asset-card:hover .afx-asset-ico{ transform:scale(1.12); color:#fff; }
.afx-asset-card h5{ font-family:var(--afx-head); font-size:1.1rem; font-weight:600; color:var(--afx-ink); margin:0 0 10px; transition:color .22s ease; }
.afx-asset-card p{ color:var(--afx-muted); font-size:.9rem; line-height:1.65; margin:0; transition:color .22s ease; }
.afx-asset-card:hover h5{ color:#fff; }
.afx-asset-card:hover p{ color:rgba(255,255,255,.88); }

/* ══════════════════════════════════════════════════════════════════
   ASSET INFO HERO (Forex / Indices / Cryptos … "What is X?")
══════════════════════════════════════════════════════════════════ */
.afx-asset-hero{ background:#fff; padding:72px 0; }
.afx-asset-hero-grid{ display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:center; }
.afx-asset-hero-body{ max-width:560px; }
.afx-asset-hero-eyebrow{ color:var(--afx-blue); font-weight:700; font-size:.82rem; letter-spacing:.14em; text-transform:uppercase; margin:0 0 16px; }
.afx-asset-hero-title{ font-family:var(--afx-head); font-size:clamp(2.2rem,4vw,3.2rem); font-weight:700; color:var(--afx-ink); line-height:1.12; margin:0 0 20px; }
.afx-asset-hero-desc{ color:#3d4757; font-size:1rem; line-height:1.8; margin:0 0 30px; }
.afx-asset-hero-media{ position:relative; }
.afx-asset-hero-photo{ width:100%; aspect-ratio:1/1.04; object-fit:cover; object-position:58% 22%; display:block; border-radius:18px; }
/* floating price card overlay — gentle bob animation */
.afx-asset-hero-float{
    /* straddle the photo's left edge: ~50% over the photo, ~50% outside (in the gap) */
    position:absolute; left:-20%; top:15%; width:40%; max-width:215px; height:auto;
    border-radius:14px; filter:drop-shadow(0 20px 44px rgba(20,40,80,.20));
    animation:afxFloat 4.5s ease-in-out infinite; will-change:transform;
}
@keyframes afxFloat{ 0%,100%{ transform:translateY(0); } 50%{ transform:translateY(-14px); } }
@media (prefers-reduced-motion:reduce){ .afx-asset-hero-float{ animation:none; } }
@media(max-width:991px){
    .afx-asset-hero{ padding:48px 0; }
    .afx-asset-hero-grid{ grid-template-columns:1fr; gap:36px; }
    .afx-asset-hero-media{ order:-1; }
    .afx-asset-hero-body{ max-width:none; }
    .afx-asset-hero-float{ left:0; top:14%; width:40%; max-width:180px; }
}
/* reversed variant — image on the LEFT, text on the RIGHT */
.afx-asset-hero--rev .afx-asset-hero-media{ order:0; }
.afx-asset-hero--rev .afx-asset-hero-body{ order:1; }
.afx-asset-hero--rev .afx-asset-hero-float{ left:auto; right:-20%; }
/* tighter top/bottom padding for stacked content sections */
.afx-asset-hero--tight{ padding:40px 0; }

/* centered section heading block (e.g. "So, what can it do for you?") */
.afx-section-head{ text-align:center; max-width:760px; margin:0 auto 46px; }
.afx-section-head h2{ font-family:var(--afx-head); font-size:clamp(1.7rem,3vw,2.4rem); font-weight:700; color:var(--afx-ink); margin:0 0 12px; }
.afx-section-head h2 b{ font-weight:800; }
.afx-section-head p{ color:var(--afx-muted); font-size:1rem; line-height:1.7; margin:0; }

/* benefits checklist (blue ticks) */
.afx-checklist{ list-style:none; margin:18px 0 0; padding:0; }
.afx-checklist li{ display:flex; align-items:flex-start; gap:12px; font-size:.95rem; color:var(--afx-ink); padding:9px 0; }
.afx-checklist i{ color:var(--afx-blue); font-size:1.05rem; flex-shrink:0; margin-top:2px; }

/* 3-column feature row ("Get Trade Ideas" / "Don't Miss a Pip" / ...) */
.afx-feat3{ display:grid; grid-template-columns:repeat(3,1fr); gap:34px; }
.afx-feat3-item{ text-align:center; }
.afx-feat3-ico{ font-size:1.9rem; color:var(--afx-blue); margin-bottom:14px; line-height:1; }
.afx-feat3-item h5{ font-family:var(--afx-head); font-size:1.05rem; font-weight:700; color:var(--afx-ink); margin:0 0 10px; }
.afx-feat3-item p{ color:var(--afx-muted); font-size:.9rem; line-height:1.65; margin:0; }
@media(max-width:767px){ .afx-feat3{ grid-template-columns:1fr; gap:28px; } }

/* big centered brand logo block */
.afx-brandmark{ display:flex; align-items:center; justify-content:center; padding:10px 0; }
.afx-brandmark img{ max-width:100%; height:auto; }

/* arrow bullet list (›) — used on WebTrader */
.afx-arrowlist{ list-style:none; margin:18px 0 0; padding:0; }
.afx-arrowlist li{ display:flex; align-items:flex-start; gap:12px; font-size:.95rem; color:var(--afx-ink); padding:9px 0; }
.afx-arrowlist i{ color:var(--afx-blue); font-size:1rem; flex-shrink:0; margin-top:3px; }

/* Monitoring & Viewing band (3 platform screenshots) */
.afx-monitor{ background:var(--afx-bg-soft); padding:60px 0; }
.afx-monitor-head{ text-align:center; max-width:820px; margin:0 auto 38px; }
.afx-monitor-head h3{ font-family:var(--afx-head); font-size:clamp(1.4rem,2.4vw,1.9rem); font-weight:700; color:var(--afx-ink); margin:0 0 10px; }
.afx-monitor-head p{ color:var(--afx-muted); font-size:.95rem; line-height:1.7; margin:0; }
.afx-monitor-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:26px; }
.afx-monitor-card img{ width:100%; height:auto; display:block; border-radius:12px; box-shadow:0 12px 30px rgba(20,40,80,.12); }
.afx-monitor-card p{ color:var(--afx-muted); font-size:.86rem; line-height:1.6; margin:16px 2px 0; }
@media(max-width:767px){ .afx-monitor-grid{ grid-template-columns:1fr; gap:30px; } }

/* plain (uncropped) screenshot inside a hero media column */
.afx-shot{ width:100%; height:auto; display:block; border-radius:12px; box-shadow:0 14px 36px rgba(20,40,80,.12); }

/* ══════════════════════════════════════════════════════════════════
   ACCOUNT TYPES (pricing cards)
══════════════════════════════════════════════════════════════════ */
.afx-accounts{ background:#fff; padding:66px 0 36px; }
.afx-accounts .afx-shell{ max-width:1420px; }
.afx-acc-head{ text-align:center; max-width:740px; margin:0 auto 44px; }
.afx-acc-head h1{ font-family:var(--afx-head); font-size:clamp(2.1rem,3.6vw,2.9rem); font-weight:700; color:#0c243c; margin:0 0 14px; }
.afx-acc-head p{ color:#0c243c; font-size:1.05rem; line-height:1.7; margin:0; }
.afx-price-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:22px; }
.afx-price-card{ position:relative; background:#f7f8fa; border:1px solid var(--afx-line); border-radius:6px; padding:40px 30px 34px; overflow:hidden; }
.afx-price-name{ text-align:center; font-family:var(--afx-head); font-size:1.7rem; font-weight:700; text-transform:uppercase; color:#16203a; letter-spacing:.04em; margin:0; }
.afx-price-acctlbl{ display:block; text-align:center; font-size:.85rem; color:var(--afx-muted); margin-top:3px; }
.afx-price-amt{ text-align:center; font-family:var(--afx-head); font-weight:800; color:#005c97; font-size:3.05rem; line-height:1; margin:20px 0 24px; }
.afx-price-amt sup{ font-size:1.45rem; font-weight:700; top:-.7em; margin-right:1px; }
.afx-price-feats{ list-style:none; margin:0 0 26px; padding:0; }
.afx-price-feats li{ display:flex; align-items:center; gap:13px; font-size:.96rem; color:var(--afx-ink); padding:15px 2px; border-bottom:1px solid rgba(20,40,80,.07); }
.afx-price-feats li:last-child{ border-bottom:none; }
.afx-price-feats i{ font-size:1.3rem; flex-shrink:0; }
.afx-price-feats .afx-ft-yes,
.afx-price-feats .afx-ft-no{ color:#7e8c9c; }
.afx-price-feats .afx-ft-off{ color:var(--afx-ink); }
.afx-price-cta{ text-align:center; margin-top:4px; }
.afx-price-btn{ display:inline-flex; width:auto; padding-left:40px; padding-right:40px; text-transform:none; }
.afx-price-popular::before{ content:'POPULAR'; position:absolute; top:22px; right:-34px; transform:rotate(45deg); background:#0d3a63; color:#fff; font-size:.64rem; font-weight:700; letter-spacing:.08em; padding:5px 42px; }
.afx-acc-notes{ text-align:center; max-width:920px; margin:38px auto 0; padding:0 16px; }
.afx-acc-notes p{ color:#9aa3b2; font-size:.84rem; line-height:1.7; margin:0 0 6px; }
.afx-acc-notes a{ color:var(--theme-color,#0a4d8c); text-decoration:underline; }
@media(max-width:991px){ .afx-price-grid{ grid-template-columns:repeat(2,1fr); } }
@media(max-width:540px){ .afx-price-grid{ grid-template-columns:1fr; } }

/* ══════════════════════════════════════════════════════════════════
   RESPONSIVE SHOWCASE
══════════════════════════════════════════════════════════════════ */
.afx-showcase{ background:var(--afx-bg-gray); padding:0; overflow:hidden; }
.afx-showcase-grid{ display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:40px; }
.afx-showcase-media{ position:relative; min-height:360px; display:flex; align-items:center; justify-content:center; }
.afx-showcase-media img{ max-width:100%; height:auto; display:block; }
.afx-showcase-body{ padding:70px 22px 70px 0; max-width:520px; }
.afx-showcase-eyebrow{ color:var(--afx-muted); font-weight:700; font-size:.74rem; letter-spacing:.12em; text-transform:uppercase; margin:0 0 12px; }
.afx-showcase-title{ font-family:var(--afx-head); font-size:clamp(1.5rem,2.6vw,2rem); font-weight:700; color:var(--afx-ink); line-height:1.25; margin:0 0 16px; }
.afx-showcase-desc{ color:var(--afx-muted); font-size:.95rem; line-height:1.75; margin:0 0 26px; }
.afx-showcase-actions{ display:flex; gap:14px; flex-wrap:wrap; margin-bottom:26px; }
.afx-showcase-devices{ display:flex; gap:26px; color:#9aa3b2; font-size:2.1rem; }
/* full background-image variant — image fills the section, text sits on the right */
.afx-showcase--bg{ position:relative; background-size:cover; background-position:center; background-repeat:no-repeat; padding:0; min-height:520px; display:flex; align-items:center; }
.afx-showcase--bg::before{ content:''; position:absolute; inset:0; background:linear-gradient(270deg, rgba(240,242,245,.97) 0%, rgba(240,242,245,.85) 40%, rgba(240,242,245,.30) 70%, rgba(240,242,245,0) 100%); }
.afx-showcase--bg .afx-shell{ position:relative; z-index:1; width:100%; display:flex; justify-content:flex-end; }
.afx-showcase--bg .afx-showcase-body{ padding:70px 0; max-width:520px; }

/* ══════════════════════════════════════════════════════════════════
   FOOTER
══════════════════════════════════════════════════════════════════ */
.afx-footer{ background:#fff; border-top:1px solid var(--afx-line); color:var(--afx-ink); }
.afx-foot-wrap{ max-width:1240px; margin:0 auto; padding:56px 22px 36px; }
.afx-foot-grid{ display:grid; grid-template-columns:1.6fr 1fr 1fr 1fr 1fr; gap:38px; }
.afx-foot-brand{ max-width:340px; }
.afx-foot-logo img{ height:54px; width:auto; max-width:220px; object-fit:contain; }
.afx-foot-desc{ margin:16px 0 0; color:var(--afx-muted); font-size:.9rem; line-height:1.7; }
.afx-foot-social{ display:flex; gap:10px; margin-top:18px; flex-wrap:wrap; }
.afx-foot-social a{
    width:38px; height:38px; border-radius:9px; display:inline-flex; align-items:center;
    justify-content:center; background:rgba(102,15,94,.08); color:var(--afx-blue);
    font-size:1rem; text-decoration:none; transition:.16s;
}
.afx-foot-social a:hover{ background:var(--afx-blue); color:#fff; transform:translateY(-2px); }
.afx-foot-sub{ display:flex; margin-top:20px; max-width:320px; }
.afx-foot-sub input{
    flex:1 1 auto; min-width:0; padding:11px 14px; font-size:.9rem;
    border:1px solid var(--afx-line); border-right:none; border-radius:9px 0 0 9px;
    outline:none; color:var(--afx-ink);
}
.afx-foot-sub input:focus{ border-color:var(--afx-blue); }
.afx-foot-sub-btn{
    border:none; background:var(--afx-blue); color:#fff; font-weight:700; padding:0 18px;
    font-size:.86rem; border-radius:0 9px 9px 0; cursor:pointer; transition:.16s;
}
.afx-foot-sub-btn:hover{ background:var(--afx-blue-d); }
.afx-foot-col h6{
    color:var(--afx-blue); font-size:.78rem; font-weight:700; letter-spacing:.09em;
    text-transform:uppercase; margin:0 0 18px;
}
.afx-foot-col ul{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:11px; }
.afx-foot-col a,.afx-foot-col span{
    color:var(--afx-muted); font-size:.9rem; text-decoration:none; transition:color .14s;
    display:inline-flex; align-items:center;
}
.afx-foot-col a:hover{ color:var(--afx-blue); }
.afx-foot-fine{ margin-top:42px; padding-top:28px; border-top:1px solid var(--afx-line); }
.afx-foot-fine p{ color:var(--afx-muted); font-size:.78rem; line-height:1.75; margin:0 0 12px; text-align:center; }
.afx-foot-bar{ background:var(--afx-blue); color:#fff; }
.afx-foot-bar-inner{
    max-width:1240px; margin:0 auto; padding:16px 22px; display:flex; align-items:center;
    justify-content:space-between; gap:14px; flex-wrap:wrap;
}
.afx-foot-copy,.afx-foot-risk-tag{ margin:0; font-size:.84rem; }
.afx-foot-risk-tag{ opacity:.85; }

/* ══════════════════════════════════════════════════════════════════
   RESPONSIVE — home sections
══════════════════════════════════════════════════════════════════ */
@media (max-width:991.98px){
    .afx-platform-grid{ grid-template-columns:1fr; gap:36px; }
    .afx-showcase--bg{ min-height:0; }
    .afx-showcase--bg::before{ background:linear-gradient(0deg, rgba(240,242,245,.97) 0%, rgba(240,242,245,.92) 55%, rgba(240,242,245,.55) 100%); }
    .afx-showcase--bg .afx-shell{ justify-content:center; }
    .afx-showcase--bg .afx-showcase-body{ padding:48px 0 56px; max-width:none; }
    .afx-assets-grid{ grid-template-columns:repeat(2,1fr); }
    .afx-foot-grid{ grid-template-columns:1fr 1fr 1fr; gap:30px; }
    .afx-foot-brand{ grid-column:1 / -1; max-width:420px; }
}
@media (max-width:575px){
    .afx-platform{ padding:56px 0; }
    .afx-assets{ padding:56px 0; }
    .afx-assets-grid{ grid-template-columns:1fr; }
    .afx-hero{ min-height:420px; }
    .afx-hero-actions .afx-btn,.afx-platform-actions .afx-btn,.afx-showcase-actions .afx-btn{ flex:1 1 auto; }
    .afx-foot-wrap{ padding:44px 18px 28px; }
    .afx-foot-grid{ grid-template-columns:1fr 1fr; gap:26px; }
    .afx-foot-bar-inner{ flex-direction:column; text-align:center; gap:6px; }
}
@media (max-width:380px){ .afx-foot-grid{ grid-template-columns:1fr; } }
