/* =====================================================================
   Infinite Option Landing — `pix-` namespaced styles.
   Version: 2026.07.04.1  (bump this on every style change)
   Nothing here touches a generic class or leaks into theme CSS.
   ===================================================================== */
.pix-page :where(*, *::before, *::after) { box-sizing: border-box; }
/* smooth in-page scrolling; offset so anchor targets clear the sticky header */
html { scroll-behavior: smooth; scroll-padding-top: 90px; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; }}
.pix-page {
    /* Infinite Option brand purple */
    --pix-saffron: #8A19E6;          /* primary accent (kept var name for minimal churn) */
    --pix-saffron-dark: #6f12bd;
    --pix-deep: #1d1830;             /* charcoal headings */
    --pix-deep-2: #2c2350;
    --pix-gold: #B45BF2;             /* light-violet companion */
    --pix-soft: #faf4ff;
    --pix-soft-2: #f4e6ff;
    --pix-ink: #1a1530;
    --pix-muted: #5a5470;
    --pix-line: #ece3f6;
    --pix-line-2: #e6daf5;
    --pix-radius: 14px;
    --pix-shadow-sm: 0 2px 8px rgba(27,73,101,.06);
    --pix-shadow: 0 12px 32px rgba(27,73,101,.10);
    --pix-shadow-lg: 0 24px 60px rgba(27,73,101,.16);

    margin: 0;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    color: var(--pix-ink);
    line-height: 1.6;
    background:
        radial-gradient(900px 520px at 100% -5%, rgba(138,25,230,.10), transparent 60%),
        radial-gradient(800px 480px at -10% 4%, rgba(180,91,242,.08), transparent 55%),
        #fff;
    -webkit-font-smoothing: antialiased;
    overflow-x: clip;
}
.pix-page h1, .pix-page h2, .pix-page h3, .pix-page h4 {
    font-family: 'Plus Jakarta Sans', 'Inter', sans-serif;
    letter-spacing: -0.02em;
    color: var(--pix-deep);
    margin: 0;
}
.pix-page p { margin: 0; }
.pix-page a { text-decoration: none; color: inherit; }
.pix-page img { max-width: 100%; display: block; }

.pix-container { max-width: 1400px; margin: 0 auto; padding: 0 40px; }

/* ---- Site-wide scroll reveal (professional) ----------------------- */
/* Hidden states apply only when JS has added .pix-anim to <body> */
.pix-anim .pix-eyebrow,
.pix-anim .pix-section h2,
.pix-anim .pix-lead,
.pix-anim .pix-lang-heading,
.pix-anim .pix-lang-lead,
.pix-anim .pix-stats-title,
.pix-anim .pix-rating-badge,
.pix-anim .pix-stat,
.pix-anim .pix-feature,
.pix-anim .pix-feat-cell,
.pix-anim .pix-price-card,
.pix-anim .pix-test,
.pix-anim .pix-pay-card,
.pix-anim .pix-banner-title,
.pix-anim .pix-banner-sub,
.pix-anim .pix-banner-cta,
.pix-anim .pix-banner-stage,
.pix-anim .pix-final .pix-container {
    opacity: 0; transform: translateY(28px);
    transition: opacity .65s ease, transform .75s cubic-bezier(.2,.7,.3,1);
    will-change: opacity, transform;
}
.pix-anim .is-in { opacity: 1 !important; transform: none !important; }
@media (prefers-reduced-motion: reduce) {
    .pix-anim :where(.pix-eyebrow, .pix-section h2, .pix-lead, .pix-lang-heading, .pix-lang-lead, .pix-stats-title, .pix-rating-badge, .pix-stat, .pix-feature, .pix-feat-cell, .pix-price-card, .pix-test, .pix-pay-card, .pix-banner-title, .pix-banner-sub, .pix-banner-cta, .pix-banner-stage) { opacity: 1 !important; transform: none !important; transition: none !important; }}

/* Banner-stage images fly in from different directions when the stage reveals */
.pix-anim .pix-banner-center,
.pix-anim .pix-banner-float-left,
.pix-anim .pix-banner-float-right,
.pix-anim .pix-banner-float-topleft,
.pix-anim .pix-banner-float-topright {
    opacity: 0; transition: opacity .6s ease, transform .85s cubic-bezier(.2,.7,.3,1);
}
.pix-anim .pix-banner-center        { transform: scale(.9); transition-delay: .05s; }
.pix-anim .pix-banner-float-left    { transform: translateX(-80px); transition-delay: .22s; }   /* moves in from the left  */
.pix-anim .pix-banner-float-right   { transform: translateX(80px);  transition-delay: .3s; }    /* moves in from the right */
.pix-anim .pix-banner-float-topleft { transform: translateY(-70px); transition-delay: .12s; }   /* drops down from the top */
.pix-anim .pix-banner-float-topright{ transform: translateY(-70px); transition-delay: .18s; }
.pix-anim .pix-banner-stage.is-in .pix-banner-center,
.pix-anim .pix-banner-stage.is-in .pix-banner-float-left,
.pix-anim .pix-banner-stage.is-in .pix-banner-float-right,
.pix-anim .pix-banner-stage.is-in .pix-banner-float-topleft,
.pix-anim .pix-banner-stage.is-in .pix-banner-float-topright { opacity: 1; transform: none; }

/* ---- Buttons ------------------------------------------------------- */
.pix-btn-primary {
    background: linear-gradient(135deg, var(--pix-saffron), #ff8855);
    color: #fff; border: none; padding: 15px 34px; border-radius: 12px;
    font-size: 16px; font-weight: 700; cursor: pointer;
    display: inline-flex; align-items: center; gap: 8px;
    box-shadow: 0 10px 26px rgba(255,107,53,.30);
    transition: transform .18s ease, box-shadow .18s ease;
}
.pix-btn-primary:hover { transform: translateY(-2px); box-shadow: 0 16px 34px rgba(255,107,53,.42); color: #fff; }
.pix-btn-secondary {
    display: inline-flex;
    height: 50px;
    padding: 10px 17px;
    justify-content: center;
    align-items: center;
    gap: 10px;
    border-radius: 9px;
    border: 1px solid #8E09D8;
    background: #FFF;
    box-shadow: 3px 3px 0 0 #8E09D8;
    color: #8E09D8;
    font-size: 16px;
    font-weight: 400;
    transition: transform .1s ease, box-shadow .1s ease;
}
.pix-btn-secondary:hover { background: #FFF; color: #8E09D8; transform: translate(3px, 3px); box-shadow: 0 0 0 0 #8E09D8; }
a.pix-btn-secondary { color: #8E09D8; }

/* Custom button style — navbar CTA + hero primary CTA */
.pix-nav-cta,
.pix-hero-cta .pix-btn-primary {
    display: inline-flex;
    height: 50px;
    padding: 10px 17px;
    justify-content: center;
    align-items: center;
    gap: 10px;
    border-radius: 9px;
    background: #8E09D8;
    box-shadow: 3px 3px 0 0 #131313;
    color: #fff;
    font-size: 16px;
    font-weight: 400;
    transition: transform .1s ease, box-shadow .1s ease;
}
.pix-nav-cta:hover,
.pix-hero-cta .pix-btn-primary:hover {
    background: #8E09D8;
    color: #fff;
    transform: translate(3px, 3px);
    box-shadow: 0 0 0 0 #131313;
}

/* ---- Header (single-row navbar) ----------------------------------- */
.pix-header {
    background: rgba(255,255,255,.82); backdrop-filter: blur(14px);
    position: sticky; top: 0; z-index: 1000;
    transition: box-shadow .25s ease, background .25s ease;
}
.pix-header.is-scrolled { background: rgba(255,255,255,.95); box-shadow: 0 6px 24px rgba(27,73,101,.10); }

/* Back-to-top button */
.pix-totop {
    position: fixed; right: 24px; bottom: 24px; z-index: 1100;
    width: 46px; height: 46px; border-radius: 50%;
    background: var(--pix-saffron); color: #fff; border: none; cursor: pointer;
    display: flex; align-items: center; justify-content: center;
    box-shadow: 0 12px 28px rgba(138,9,216,.4);
    opacity: 0; transform: translateY(16px); pointer-events: none;
    transition: opacity .25s ease, transform .25s ease, background .15s ease;
}
.pix-totop.is-shown { opacity: 1; transform: none; pointer-events: auto; }
.pix-totop:hover { background: var(--pix-saffron-dark); transform: translateY(-3px); }
.pix-totop svg { width: 20px; height: 20px; }
@media (prefers-reduced-motion: reduce) { .pix-totop:hover { transform: none; }}
@media (max-width: 560px) { .pix-totop { right: 16px; bottom: 16px; width: 42px; height: 42px; }}
.pix-header .pix-container {
    display: grid; grid-template-columns: 1fr auto 1fr; align-items: center;
    padding-top: 8px; padding-bottom: 8px; gap: 18px;
}
.pix-logo { font-family: 'Plus Jakarta Sans', sans-serif; font-size: 24px; font-weight: 800; color: var(--pix-saffron); justify-self: start; }
.pix-nav { display: flex; align-items: center; justify-content: center; gap: 34px; }
.pix-nav a { color: var(--pix-deep); font-weight: 400; font-size: 15px; transition: color .15s; }
.pix-nav a:hover { color: var(--pix-saffron); font-weight: 700; }
.pix-header-actions { display: flex; align-items: center; gap: 14px; justify-self: end; }
.pix-header-actions .pix-btn-login {
    display: flex;
    width: 134px;
    height: 50px;
    padding: 10px;
    justify-content: center;
    align-items: center;
    gap: 10px;
    border-radius: 9px;
    border: 1px solid #000;
    background: #fff;
    color: #000;
    font-size: 16px;
    font-weight: 400;
    transition: transform .1s ease;
}
.pix-header-actions .pix-btn-login:hover { transform: translate(2px, 2px); }
.pix-header-actions .pix-nav-cta {
    display: inline-flex;
    height: 50px;
    padding: 10px 17px;
    justify-content: center;
    align-items: center;
    gap: 10px;
    border-radius: 9px;
    background: #8E09D8;
    box-shadow: 3px 3px 0 0 #131313;
    color: #fff;
    font-size: 16px;
    font-weight: 400;
    transition: transform .1s ease, box-shadow .1s ease;
}
.pix-header-actions .pix-nav-cta:hover { background: #8E09D8; color: #fff; transform: translate(3px, 3px); box-shadow: 0 0 0 0 #131313; }

/* ---- Hero (two-column) -------------------------------------------- */
.pix-hero { padding: 24px 0 64px; position: relative; }
.pix-hero .pix-container {
    position: relative; z-index: 1;
    display: grid; grid-template-columns: 1.05fr .95fr; gap: 40px; align-items: center;
}
.pix-hero-copy { text-align: left; }
.pix-eb-badge {
    display: inline-flex; align-items: center; gap: 8px;
    background: #FFF0B5; color: var(--pix-saffron);
    padding: 10px 20px; border-radius: 999px;
    font-weight: 700; font-size: 14px; line-height: 1.3;
    animation: pix-pulse 2.4s infinite;
}
@keyframes pix-pulse { 0%,100% { transform: scale(1); } 50% { transform: scale(1.02); } }
.pix-hero h1 {
    font-size: 50px; font-weight: 800; line-height: 1.08;
    margin: 10px 0 12px; color: var(--pix-deep);
}
.pix-hero-tagline {
    font-size: 30px; font-weight: 800; line-height: 1.1;
    margin: 0; padding-bottom: 15px; color: var(--pix-deep);
    font-family: 'Plus Jakarta Sans', 'Inter', sans-serif; letter-spacing: -0.02em;
}
.pix-accent-wrap { position: relative; display: inline-block; }
.pix-accent-wrap .accent { color: var(--pix-saffron); }
.pix-accent-wrap .pix-underline {
    position: absolute; left: 0; bottom: -.18em; width: 100%; height: auto;
    pointer-events: none; user-select: none;
}
.pix-hero-sub { font-size: 15px; color: var(--pix-muted); max-width: 560px; margin: 0; padding-bottom: 10px; }
.pix-hero-meta { font-size: 14px; font-weight: 700; color: var(--pix-saffron); margin-bottom: 30px; display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.pix-hero-meta .sep { color: var(--pix-line-2); }
.pix-hero-meta .flag { font-size: 14px; }
.pix-hero-cta { display: flex; gap: 14px; justify-content: flex-start; flex-wrap: wrap; margin: 0 0 28px; }
.pix-hero-assure { color: var(--pix-muted); font-size: 14px; display: flex; gap: 10px 22px; justify-content: flex-start; flex-wrap: wrap; }
.pix-hero-assure span { display: inline-flex; align-items: center; gap: 7px; }
.pix-check { width: 18px; height: 18px; object-fit: contain; display: inline-block; }
/* Language switcher (output by lang_switcher_html) — drop its outline border */
.pix-header-actions .pix-lang-switch > button { border: none !important; background: transparent !important; padding: 9px 10px !important; }
.pix-hero-art { position: relative; }
.pix-hero-art img { width: 100%; height: auto; display: block; }

/* Hero entrance — content staggers in on load (only when .pix-anim is set) */
.pix-anim .pix-hero-copy > *,
.pix-anim .pix-hero-art { opacity: 0; animation: pix-hero-in .8s cubic-bezier(.2,.7,.3,1) forwards; }
@keyframes pix-hero-in { from { opacity: 0; transform: translateY(26px); } to { opacity: 1; transform: none; } }
.pix-anim .pix-hero-copy > *:nth-child(1) { animation-delay: .05s; }
.pix-anim .pix-hero-copy > *:nth-child(2) { animation-delay: .12s; }
.pix-anim .pix-hero-copy > *:nth-child(3) { animation-delay: .19s; }
.pix-anim .pix-hero-copy > *:nth-child(4) { animation-delay: .26s; }
.pix-anim .pix-hero-copy > *:nth-child(5) { animation-delay: .33s; }
.pix-anim .pix-hero-copy > *:nth-child(6) { animation-delay: .40s; }
.pix-anim .pix-hero-copy > *:nth-child(7) { animation-delay: .47s; }
.pix-anim .pix-hero-art { animation: pix-hero-art-in .9s cubic-bezier(.2,.7,.3,1) .18s forwards; }
@keyframes pix-hero-art-in { from { opacity: 0; transform: translateY(20px) scale(.96); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .pix-anim .pix-hero-copy > *, .pix-anim .pix-hero-art { opacity: 1 !important; animation: none !important; }}

/* Hover micro-interactions (subtle, professional) */
.pix-footer a { transition: color .15s ease, transform .15s ease; }
.pix-footer a:hover { transform: translateX(3px); }
.pix-feat-ico { transition: transform .25s cubic-bezier(.2,.7,.3,1); }
.pix-feat-cell { transition: background .25s ease; }
.pix-feat-cell:hover { background: #faf6ff; }
.pix-feat-cell:hover .pix-feat-ico { transform: translateY(-3px) scale(1.06); }
.pix-pay-card { transition: transform .2s ease, box-shadow .2s ease; }
.pix-pay-card:hover { transform: translateY(-3px); box-shadow: var(--pix-shadow); }
.pix-stat { transition: transform .2s ease; }
.pix-stat:hover { transform: translateY(-3px); }
.pix-rating-badge { transition: transform .2s ease, box-shadow .2s ease; }
.pix-rating-badge:hover { transform: translateY(-2px); box-shadow: var(--pix-shadow); }
.pix-logo { transition: transform .2s ease; }
.pix-logo:hover { transform: scale(1.04); }
@media (prefers-reduced-motion: reduce) {
    .pix-footer a:hover, .pix-feat-cell:hover .pix-feat-ico, .pix-pay-card:hover, .pix-stat:hover, .pix-rating-badge:hover, .pix-logo:hover { transform: none !important; }}

/* ---- Trust stats --------------------------------------------------- */
.pix-stats-section { padding: 30px 0 56px; text-align: center; }
.pix-rating-badge {
    display: inline-flex; align-items: center; gap: 12px;
    background: #fff; border: 1px solid var(--pix-line); border-radius: 999px;
    padding: 7px 18px 7px 10px; box-shadow: var(--pix-shadow-sm); margin-bottom: 30px;
}
.pix-rating-avatars { display: inline-flex; }
.pix-rating-avatars .av { width: 34px; height: 34px; border-radius: 50%; border: 2px solid #fff; margin-left: -11px; overflow: hidden; background: #eee; }
.pix-rating-avatars .av:first-child { margin-left: 0; }
.pix-rating-avatars .av img { width: 100%; height: 100%; object-fit: cover; display: block; }
.pix-rating-text { font-size: 15px; color: var(--pix-muted); white-space: nowrap; }
.pix-rating-text strong { color: var(--pix-deep); font-weight: 700; }
.pix-rating-google { display: inline-flex; }
.pix-rating-google img { width: 18px; height: 18px; object-fit: contain; display: block; }
.pix-rating-star { color: var(--pix-gold); font-size: 20px; line-height: 1; margin-left: -12px; }
.pix-stats-title {
    font-family: 'Plus Jakarta Sans', 'Inter', sans-serif;
    font-size: clamp(1.6rem, 3vw, 2.3rem); font-weight: 800; color: var(--pix-deep);
    line-height: 1.35; margin: 0 0 72px; padding-bottom: 50px;
}
.pix-stats-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; width: 100%; margin: 0 auto; }
.pix-stat { display: flex; flex-direction: column; align-items: center; gap: 6px; }
.pix-stat-num { font-family: 'Plus Jakarta Sans', sans-serif; font-size: clamp(1.8rem, 3vw, 2.5rem); font-weight: 800; color: #8E09D8; line-height: 1; }
.pix-stat-label { font-size: 14px; color: var(--pix-muted); line-height: 1.5; white-space: nowrap; padding-bottom: 30px; }
@media (max-width: 768px) { .pix-stats-grid { grid-template-columns: repeat(2, 1fr); gap: 30px 16px; }}

/* ---- Trust strip --------------------------------------------------- */
.pix-trust-strip {
    background: #1d1830;
    padding: 7px 0;
    overflow: hidden;
}
.pix-marquee { overflow: hidden; }
.pix-marquee-track {
    display: flex; width: max-content; flex-wrap: nowrap;
    animation: pix-marquee 30s linear infinite;
}
.pix-marquee-track:hover { animation-play-state: paused; }
@keyframes pix-marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }
.pix-trust-item {
    display: inline-flex; align-items: center; gap: 8px;
    font-size: 13px; font-weight: 600; color: #fff;
    padding: 0 24px; white-space: nowrap;
}
.pix-trust-ico { display: inline-flex; color: #fff; flex: 0 0 auto; }
.pix-trust-ico svg { width: 18px; height: 18px; display: block; }
@media (prefers-reduced-motion: reduce) { .pix-marquee-track { animation: none; }}

/* ---- Big banner image --------------------------------------------- */
.pix-banner-section {
    padding: 50px 0 24px;
    background: linear-gradient(180deg, #ffffff 0%, #f1e4ff 50%, #ffffff 100%);
}
.pix-banner-title { text-align: center; font-size: clamp(1.8rem, 3.6vw, 2.5rem); color: var(--pix-deep); margin: 0 0 16px; }
.pix-banner-sub { text-align: center; color: var(--pix-muted); font-size: 15px; line-height: 1.7; margin: 0; padding-bottom: 20px; }
.pix-banner-cta { display: flex; justify-content: center; margin-bottom: 40px; }
.pix-banner-stage { position: relative; width: 100%; display: flex; justify-content: center; }
.pix-banner-center { position: relative; z-index: 1; }
.pix-banner-img { height: 460px; width: auto; max-width: 100%; display: block; border-radius: 22px; }
.pix-banner-float {
    position: absolute; z-index: 2;
    width: 24%; max-width: 320px;
}
.pix-banner-float img { width: 100%; height: auto; display: block; }
.pix-banner-float-left { left: 6%; bottom: -55px; }
.pix-banner-float-right { right: 55px; top: 45%; width: 15%; }
.pix-banner-float-topleft { left: 1%; top: 24px; width: 19%; }
.pix-banner-float-topright { right: 4%; top: 24px; width: 16%; }
@media (max-width: 560px) {
    .pix-banner-float { display: none; }
    /* BestSeller card on phones — like the reference: sits over the banner's lower-left,
       spilling below the image. animation:none so no keyframe overrides the position. */
    .pix-banner-float-left {
        display: block; width: 85%; max-width: 320px; left: 0; right: auto;
        top: 71%; bottom: auto; animation: none;
        transform: scale(.6); transform-origin: left top;
    }
    /* the scroll-reveal end-state (line ~143) sets `transform: none` with higher
       specificity — re-assert the mobile scale so the card actually stays small */
    .pix-anim .pix-banner-stage.is-in .pix-banner-float-left { transform: scale(.6); transform-origin: left top; }
    .pix-banner-stage { margin-bottom: 0; }}

/* Animated "Choose Payment Mode" card (banner top-left) */
.pix-payw { background: #fff; border: 1px solid #ececf2; border-radius: 14px; box-shadow: 0 16px 34px rgba(27,73,101,.14); padding: 14px; }
.pix-payw__title { font-size: 12.5px; font-weight: 600; color: #3a3a45; text-align: center; margin-bottom: 12px; }
.pix-payw__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.pix-payw__tile { position: relative; border-radius: 9px; background: #fff; padding: 8px; display: flex; align-items: center; justify-content: center; opacity: 0; transform: scale(.4); animation: payw-pop 5.6s ease-in-out infinite; }
.pix-payw__tile:nth-child(1) { animation-delay: 0s; }
.pix-payw__tile:nth-child(2) { animation-delay: .45s; }
.pix-payw__tile:nth-child(3) { animation-delay: .9s; }
.pix-payw__tile:nth-child(4) { animation-delay: 1.35s; }
.pix-payw__tile img { width: 100%; height: auto; display: block; }
/* icons pop in one-by-one with a zoom pulse, then fade before the loop */
@keyframes payw-pop {
    0% { opacity: 0; transform: scale(.4); }
    7% { opacity: 1; transform: scale(1.18); }
    13% { transform: scale(.97); }
    18% { transform: scale(1); }
    86% { opacity: 1; transform: scale(1); }
    95%, 100% { opacity: 0; transform: scale(.5); }
}
/* the "clicked" tile — selection ring + check appear after all icons are in */
.pix-payw__tile.is-pick::after { content: ''; position: absolute; inset: -2px; border-radius: 11px; border: 2px solid var(--pix-saffron); box-shadow: 0 0 0 4px rgba(138,9,216,.16); opacity: 0; animation: payw-click 5.6s ease-in-out infinite; }
.pix-payw__tick { position: absolute; top: -7px; right: -7px; width: 18px; height: 18px; border-radius: 50%; background: var(--pix-saffron); opacity: 0; transform: scale(.4); animation: payw-tick 5.6s ease-in-out infinite; }
.pix-payw__tick::after { content: ''; position: absolute; left: 6px; top: 3.5px; width: 4px; height: 8px; border: 2px solid #fff; border-top: 0; border-left: 0; transform: rotate(45deg); }
@keyframes payw-click { 0%, 40% { opacity: 0; } 46%, 86% { opacity: 1; } 92%, 100% { opacity: 0; } }
@keyframes payw-tick { 0%, 42% { opacity: 0; transform: scale(.4); } 49% { opacity: 1; transform: scale(1.18); } 54%, 86% { opacity: 1; transform: scale(1); } 92%, 100% { opacity: 0; transform: scale(.4); } }
@media (prefers-reduced-motion: reduce) {
    .pix-payw__tile, .pix-payw__tile.is-pick::after, .pix-payw__tick { animation: none !important; opacity: 1 !important; transform: none !important; }}

/* Animated Order Summary — bill types in, Place Order "clicks", success + confetti (banner right) */
.pix-order { position: relative; }
.pix-order__card { background: #fff; border: 1px solid #ececf2; border-radius: 14px; box-shadow: 0 16px 34px rgba(27,73,101,.14); padding: 16px; }
.pix-order__title { font-size: 14px; font-weight: 700; color: #1d1830; margin-bottom: 12px; }
.pix-order__hr { height: 1px; background: #eee; margin: 10px 0; }
.pix-order__row { display: flex; align-items: center; justify-content: space-between; font-size: 12.5px; color: #8a8a95; margin-bottom: 8px; }
.pix-order__row .amt { color: #1d1830; font-weight: 700; }
.pix-order__row.total { margin-bottom: 0; font-size: 14px; color: #1d1830; font-weight: 800; }
.pix-order__row.total .amt { font-weight: 800; }
.typ { display: inline; }
/* bill rows are static; only the button + success animate */
.pix-order__btn { margin-top: 14px; background: #2b2b33; color: #fff; text-align: center; padding: 10px 12px; border-radius: 9px; font-size: 13px; font-weight: 700; animation: obtn 8s ease-in-out infinite; }
@keyframes obtn { 0%, 40% { transform: scale(1); } 44% { transform: scale(1.05); } 48% { transform: scale(.93); } 51%, 100% { transform: scale(1); } }

.pix-order__success { position: absolute; inset: 0; z-index: 2; background: #fff; border: 1px solid #ececf2; border-radius: 14px; box-shadow: 0 16px 34px rgba(27,73,101,.14); display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; padding: 14px; text-align: center; overflow: hidden; opacity: 0; transform: scale(.92); pointer-events: none; animation: osucc 8s ease infinite; }
@keyframes osucc { 0%, 49% { opacity: 0; transform: scale(.92); } 52% { opacity: 1; transform: scale(1); } 88% { opacity: 1; transform: scale(1); } 93%, 100% { opacity: 0; transform: scale(.96); } }
.pix-order__check { width: 50px; height: 50px; }
.pix-order__check circle { fill: #e7f7ee; stroke: #16a34a; stroke-width: 2.5; stroke-dasharray: 150; stroke-dashoffset: 150; animation: ocirc 8s ease infinite; }
.pix-order__check path { fill: none; stroke: #16a34a; stroke-width: 4; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 36; stroke-dashoffset: 36; animation: ocheck 8s ease infinite; }
@keyframes ocirc { 0%, 50% { stroke-dashoffset: 150; } 60% { stroke-dashoffset: 0; } 88% { stroke-dashoffset: 0; } 93%, 100% { stroke-dashoffset: 150; } }
@keyframes ocheck { 0%, 57% { stroke-dashoffset: 36; } 67% { stroke-dashoffset: 0; } 88% { stroke-dashoffset: 0; } 93%, 100% { stroke-dashoffset: 36; } }
.pix-order__ok { font-size: 14px; font-weight: 800; color: #1d1830; opacity: 0; animation: otxt 8s ease infinite; }
.pix-order__oksub { font-size: 11px; color: #8a8a95; opacity: 0; animation: otxt2 8s ease infinite; }
@keyframes otxt { 0%, 58% { opacity: 0; transform: translateY(6px); } 66%, 88% { opacity: 1; transform: none; } 93%, 100% { opacity: 0; } }
@keyframes otxt2 { 0%, 62% { opacity: 0; transform: translateY(6px); } 70%, 88% { opacity: 1; transform: none; } 93%, 100% { opacity: 0; } }
.pix-order__confetti { position: absolute; inset: 0; z-index: 3; pointer-events: none; }
.pix-order__confetti i { position: absolute; top: 40%; left: 50%; width: 6px; height: 9px; border-radius: 2px; opacity: 0; animation: oconf 8s ease-in infinite; }
@keyframes oconf { 0%, 52% { opacity: 0; transform: translate(0,0) rotate(0) scale(.5); } 55% { opacity: 1; transform: translate(0,0) rotate(0) scale(1); } 75% { opacity: 1; transform: translate(var(--tx), var(--ty)) rotate(var(--rot)); } 84%, 100% { opacity: 0; transform: translate(var(--tx), var(--ty)) rotate(var(--rot)); } }
@media (prefers-reduced-motion: reduce) {
    .pix-order__btn, .pix-order__success, .pix-order__check circle, .pix-order__check path, .pix-order__ok, .pix-order__oksub, .pix-order__confetti i { animation: none !important; }
    .pix-order__btn { transform: none !important; }
    .pix-order__success { opacity: 0 !important; }}

/* ---- Review & Rating card (banner top-right float) ---------------- */
.pix-review { background: #fff; border-radius: 16px; box-shadow: 0 20px 44px rgba(27,73,101,.14); padding: 16px 18px; width: 100%; }
.pix-review__title { font-family: 'Plus Jakarta Sans', sans-serif; font-size: 14px; font-weight: 700; color: var(--pix-deep); margin-bottom: 12px; }
.pix-review__head { display: flex; align-items: center; gap: 10px; margin-bottom: 14px; }
.pix-review__avatar { width: 34px; height: 34px; border-radius: 50%; flex: 0 0 auto; overflow: hidden; background: #ece7f6; }
.pix-review__avatar img { width: 100%; height: 100%; object-fit: cover; display: block; }
.pix-review__name { display: block; font-size: 12.5px; font-weight: 600; color: var(--pix-deep); margin-bottom: 3px; }
.pix-review__stars { display: flex; align-items: center; gap: 2px; }
.rv-star { color: #dcdce3; font-size: 14px; line-height: 1; transform-origin: center; animation: rvstar 6s ease-in-out infinite; }
.rv-star.s1 { animation-delay: .25s; } .rv-star.s2 { animation-delay: .5s; } .rv-star.s3 { animation-delay: .75s; } .rv-star.s4 { animation-delay: 1s; } .rv-star.s5 { animation-delay: 1.25s; }
@keyframes rvstar {
    0% { color: #dcdce3; transform: scale(1); }
    3% { color: #FFC107; transform: scale(1.45); }   /* "clicked" pop */
    8% { transform: scale(1); }
    86% { color: #FFC107; transform: scale(1); }
    91%, 100% { color: #dcdce3; transform: scale(1); }
}
.pix-review__score { margin-left: 6px; font-size: 11px; font-weight: 800; color: var(--pix-saffron); opacity: 0; transform: scale(.5); animation: rvscore 6s ease-in-out infinite; }
@keyframes rvscore { 0%, 24% { opacity: 0; transform: scale(.5); } 30% { opacity: 1; transform: scale(1.2); } 35%, 86% { opacity: 1; transform: scale(1); } 91%, 100% { opacity: 0; transform: scale(.5); } }
.pix-review__lines { display: flex; flex-direction: column; gap: 8px; }
.rl { height: 8px; border-radius: 5px; background: #eeecf3; opacity: 0; transform: translateX(-8px); animation: rvline 6s ease-in-out infinite; }
.rl.l1 { width: 100%; animation-delay: 2.1s; } .rl.l2 { width: 82%; animation-delay: 2.35s; } .rl.l3 { width: 90%; animation-delay: 2.6s; }
@keyframes rvline { 0% { opacity: 0; transform: translateX(-8px); } 8% { opacity: 1; transform: none; } 78% { opacity: 1; transform: none; } 88%, 100% { opacity: 0; transform: translateX(-8px); } }
@media (prefers-reduced-motion: reduce) {
    .rv-star, .pix-review__score, .rl { animation: none !important; opacity: 1 !important; transform: none !important; }
    .rv-star { color: #FFC107 !important; }}

/* ---- BestSeller products (banner left float) ---------------------- */
.pix-bseller { background: #fff; border-radius: 16px; box-shadow: 0 20px 44px rgba(27,73,101,.14); padding: 10px; width: 100%; }
.pix-bseller__head { display: inline-flex; align-items: center; gap: 6px; background: var(--pix-saffron); color: #fff; font-size: 11.5px; font-weight: 700; padding: 6px 12px; border-radius: 999px; margin-bottom: 12px; }
.pix-bseller__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.pix-bs-card { position: relative; border-radius: 12px; background: #faf8fc; padding: 8px; opacity: 0; transform: scale(.4); animation: payw-pop 5.6s ease-in-out infinite; }
.pix-bs-card:nth-child(1) { animation-delay: 0s; } .pix-bs-card:nth-child(2) { animation-delay: .45s; } .pix-bs-card:nth-child(3) { animation-delay: .9s; }
.pix-bs-img { border-radius: 9px; background: linear-gradient(150deg, #fff, #f2ecf5); position: relative; overflow: hidden; margin-bottom: 7px; }
.pix-bs-img img { width: 100%; height: auto; display: block; }
.pix-bs-name { font-size: 9px; color: #6b6b78; }
.pix-bs-price { font-size: 11px; font-weight: 800; color: var(--pix-saffron); }
.pix-bs-card.is-pick::after { content: ''; position: absolute; inset: -2px; border-radius: 13px; border: 2px solid var(--pix-saffron); box-shadow: 0 0 0 4px rgba(138,9,216,.16); opacity: 0; animation: payw-click 5.6s ease-in-out infinite; }
@media (prefers-reduced-motion: reduce) {
    .pix-bs-card, .pix-bs-card.is-pick::after{ animation: none !important; opacity: 1 !important; transform: none !important; }}

@media (prefers-reduced-motion: reduce) { .pix-banner-float { animation: none; }}
@media (max-width: 768px) { .pix-banner-img { height: 300px; }}
@media (max-width: 480px) { .pix-banner-img { height: 220px; }}

/* ---- Sections ------------------------------------------------------ */
.pix-section { padding: 76px 0; position: relative; }
.pix-section.alt { background: linear-gradient(180deg, var(--pix-soft), #fff); }
.pix-section h2 { font-size: clamp(1.8rem, 3.6vw, 2.5rem); text-align: center; margin-bottom: 10px; }
.pix-lead { text-align: center !important; color: var(--pix-muted); margin: 0 0 46px; padding-bottom: 25px; font-size: 16.5px; }
.pix-eyebrow {
    display: block; text-align: center; text-transform: uppercase;
    letter-spacing: 2.5px; font-size: 12px; font-weight: 800;
    color: var(--pix-saffron); margin-bottom: 10px;
}
.pix-feature {
    background: rgba(255,255,255,.7); backdrop-filter: blur(8px);
    padding: 30px 26px; border-radius: 18px; border: 1px solid var(--pix-line);
    box-shadow: var(--pix-shadow-sm); transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.pix-feature:hover { transform: translateY(-5px); box-shadow: var(--pix-shadow); border-color: #ffd4b8; }
.pix-feature h3 { font-size: 17.5px; margin-bottom: 8px; color: var(--pix-deep); }
.pix-feature p { color: var(--pix-muted); font-size: 14px; line-height: 1.55; }

/* ---- Sell in Every Indian Language -------------------------------- */
.pix-lang-section { padding: 72px 0; text-align: center; }
.pix-lang-heading { font-family: 'Plus Jakarta Sans', sans-serif; font-size: clamp(1.9rem, 4vw, 2.8rem); font-weight: 800; color: var(--pix-deep); margin: 0 0 12px; }
.pix-lang-lead { color: var(--pix-muted); font-size: 16px; line-height: 1.7; text-align: center; margin: 0 0 40px; padding-bottom: 50px; }

/* Full-width lavender stage */
.pix-lang-stage {
    position: relative; overflow: hidden;
    background: linear-gradient(180deg, #F1E6FF 0%, #EBDCFB 100%);
    border-radius: 28px; padding: 34px 20px 24px; min-height: 570px;
}

/* Top language tabs */
.pix-lang-tabs { position: relative; z-index: 4; display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-bottom: 12px; }
.pix-lang-tab {
    background: #fff; color: var(--pix-deep); border: 1px solid transparent;
    border-radius: 12px; padding: 12px 20px; font-family: inherit; font-size: 15px; font-weight: 600;
    cursor: pointer; box-shadow: var(--pix-shadow-sm); white-space: nowrap;
    transition: background .15s, color .15s, box-shadow .15s, transform .15s;
}
.pix-lang-tab:hover { transform: translateY(-1px); }
.pix-lang-tab:focus-visible { outline: 2px solid var(--pix-saffron); outline-offset: 2px; }
.pix-lang-tab.is-active { background: var(--pix-saffron); color: #fff; box-shadow: 0 8px 20px rgba(138,9,216,.3); }

/* Card fan area */
.pix-lang-cards { position: relative; z-index: 3; display: flex; justify-content: center; padding: 26px 0 30px; }

/* Product card fan (rolodex) — centre front, others peek left / right */
.pix-pc-stack { position: relative; width: 300px; height: 380px; perspective: 1400px; }
.pix-pc-card {
    position: absolute; top: 0; left: 0; right: 0; background: #fff; border-radius: 20px; padding: 16px;
    box-shadow: 0 34px 64px rgba(60, 20, 110, .22); display: flex; flex-direction: column;
    transform-style: preserve-3d; backface-visibility: hidden; will-change: transform, opacity;
    transition: transform .7s cubic-bezier(.22,.61,.36,1), opacity .6s ease;
}
.pix-pc-card.no-anim { transition: none; }
/* opaque cards so the map never shows through; a lavender veil fades the back ones */
.pix-pc-card::after {
    content: ''; position: absolute; inset: 0; border-radius: inherit;
    background: transparent; pointer-events: none; transition: background .5s ease;
}
.pix-pc-card.pos-center { transform: translate3d(0, 0, 0) scale(1);            opacity: 1; z-index: 3; }
.pix-pc-card.pos-left   { transform: translate3d(-150px, 24px, 0) scale(.82);  opacity: 1; z-index: 1; pointer-events: none; }
.pix-pc-card.pos-right  { transform: translate3d(150px, 24px, 0) scale(.82);   opacity: 1; z-index: 1; pointer-events: none; }
/* deep-behind, invisible — where a recycled card starts before rising into the right slot */
.pix-pc-card.pos-hidden { transform: translate3d(0, 24px, 0) scale(.62);       opacity: 0; z-index: 0; pointer-events: none; }
.pix-pc-card.pos-left::after,
.pix-pc-card.pos-right::after { background: rgba(238, 229, 250, .5); }

.pix-pc__img { height: 236px; border-radius: 14px; position: relative; overflow: hidden; background: #F4F4F6; }
.pix-pc__img img { width: 100%; height: 100%; object-fit: contain; display: block; }
.pix-pc__body { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 14px; }
.pix-pc__label { display: block; font-size: 12px; color: #8b8b99; }
.pix-pc__amt { font-size: 19px; font-weight: 800; color: #1d1830; }
.pix-pc__buy { background: var(--pix-saffron); color: #fff; border: none; border-radius: 10px; padding: 11px 20px; font-family: inherit; font-size: 14px; font-weight: 700; cursor: pointer; transition: background .15s; }
.pix-pc__buy:hover { background: var(--pix-saffron-dark); }
@media (prefers-reduced-motion: reduce) { .pix-pc-card { transition: none; }}

/* Dotted world map background */
.pix-lang-worldmap {
    position: absolute; left: 50%; bottom: -43px; transform: translateX(-50%);
    width: 94%; max-width: 1040px; opacity: .9; z-index: 0; pointer-events: none;
    /* fade the top of the map into the lavender background */
    -webkit-mask-image: linear-gradient(to bottom, transparent 0%, #000 26%);
    mask-image: linear-gradient(to bottom, transparent 0%, #000 26%);
}

@media (max-width: 768px) {
    .pix-lang-section { padding: 54px 0; }
    .pix-lang-stage { padding: 24px 14px 28px; min-height: 0; }
    .pix-lang-tabs { flex-wrap: nowrap; overflow-x: auto; justify-content: flex-start; }
    .pix-lang-tab { flex: 0 0 auto; padding: 10px 16px; }
    .pix-pc-stack { width: 260px; height: 360px; }
    .pix-pc-card.pos-left  { transform: translate3d(-80px, 18px, -130px); }
    .pix-pc-card.pos-right { transform: translate3d(80px, 18px, -130px); }
    .pix-lang-worldmap { width: 160%; }}
@media (max-width: 560px) {
    .pix-lang-section { padding: 40px 0; }
    .pix-lang-stage { padding: 16px 10px 20px; border-radius: 16px; }
    .pix-lang-tabs { gap: 8px; margin-bottom: 8px; padding-bottom: 4px; }
    .pix-lang-tab { padding: 8px 12px; font-size: 13px; border-radius: 9px; }
    .pix-lang-cards { padding: 16px 0 20px; }
    .pix-pc-stack { width: 200px; height: 290px; }
    .pix-pc-card { padding: 11px; border-radius: 15px; box-shadow: 0 22px 42px rgba(60,20,110,.2); }
    .pix-pc-card.pos-left  { transform: translate3d(-56px, 14px, -130px) scale(.82); }
    .pix-pc-card.pos-right { transform: translate3d(56px, 14px, -130px) scale(.82); }
    .pix-pc__img { height: 168px; border-radius: 11px; }
    .pix-pc__body { margin-top: 10px; gap: 8px; }
    .pix-pc__label { font-size: 10px; }
    .pix-pc__amt { font-size: 15px; }
    .pix-pc__buy { padding: 8px 14px; font-size: 12px; border-radius: 8px; }
    /* worldmap: lift it up so it stays clearly visible instead of sinking below the stage */
    .pix-lang-worldmap { bottom: 34px; width: 140%; -webkit-mask-image: linear-gradient(to bottom, transparent 0%, #000 18%); mask-image: linear-gradient(to bottom, transparent 0%, #000 18%); }}

/* ---- Payments (COD + UPI two cards) ------------------------------- */
.pix-pay-section { padding: 20px 0 60px; }
.pix-pay-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.pix-pay-card { position: relative; overflow: hidden; border-radius: 24px; padding: 34px 36px; min-height: 340px; }
.pix-pay-cod { background: #f9f9f9; }
.pix-pay-upi { background: #f9f9f9; }
.pix-pay-eyebrow {
    display: inline-flex; align-items: center; gap: 8px;
    color: var(--pix-saffron); font-size: 15px; font-weight: 700; margin-bottom: 16px;
}
.pix-pay-eyebrow svg { width: 20px; height: 20px; flex: 0 0 auto; }
.pix-pay-card h3 { font-family: 'Plus Jakarta Sans', sans-serif; font-size: clamp(1.4rem, 2.4vw, 1rem); font-weight: 800; color: var(--pix-deep); line-height: 1.25; margin: 0 0 14px; }
.pix-pay-card p { color: var(--pix-muted); font-size: 15px; line-height: 1.65; margin: 0; }

/* text left, image bottom-right */
.pix-pay-card .pix-pay-content { position: relative; z-index: 2; max-width: 60%; }
.pix-pay-media { position: absolute; right: -25px; bottom: -23px; width: 48%; display: flex; align-items: flex-end; justify-content: center; }
.pix-pay-media img { position: relative; z-index: 1; width: 100%; height: auto; display: block; }
.pix-pay-media-upi { right: 0; bottom: 0; width: 46%; }

@media (max-width: 860px) {
    .pix-pay-grid { grid-template-columns: 1fr; }
    .pix-pay-card { min-height: 380px; }
    .pix-pay-card .pix-pay-content { max-width: 66%; }}
@media (max-width: 520px) {
    /* compressed COD/UPI cards */
    .pix-pay-card { padding: 18px 16px; }
    .pix-pay-card .pix-pay-content { max-width: 100%; }
    .pix-pay-eyebrow { font-size: 13px; margin-bottom: 8px; }
    .pix-pay-eyebrow svg { width: 16px; height: 16px; }
    .pix-pay-card h3 { font-size: 1.15rem; margin: 0 0 8px; }
    .pix-pay-card p { font-size: 13.5px; line-height: 1.55; }
    /* full-bleed image: cancel the card's side/bottom padding so it fills the space.
       Fixed height + cover crop removes the image's own empty space above the artwork. */
    .pix-pay-media { position: static; width: calc(100% + 32px); margin: 6px -16px -18px; }
    /* aspect-ratio crop (not fixed px) so no device ever cuts the artwork —
       height always stays proportional to the card width */
    .pix-pay-media img { width: 100%; height: auto; aspect-ratio: 343 / 300; object-fit: contain; object-position: center bottom; }
    .pix-pay-media-upi img { height: auto; object-fit: contain; }
    .pix-pay-media-upi { margin: 14px auto 0; }}

/* ---- Features numbered grid --------------------------------------- */
.pix-feat-grid {
    display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px;
    background: var(--pix-line); border: 1px solid var(--pix-line);
    border-radius: 18px; overflow: hidden;
}
.pix-feat-cell { background: #fff; padding: 28px 26px 30px; }
.pix-feat-top { display: flex; align-items: flex-start; justify-content: space-between; margin-bottom: 20px; }
.pix-feat-ico {
    width: 48px; height: 48px; border-radius: 13px;
    background: var(--pix-soft-2); border: 1px solid var(--pix-line-2);
    display: flex; align-items: center; justify-content: center;
    color: var(--pix-saffron); flex: 0 0 auto;
}
.pix-feat-ico svg { width: 24px; height: 24px; display: block; }
.pix-feat-num { font-size: 14px; font-weight: 700; color: #c9c9d2; letter-spacing: .5px; }
.pix-feat-cell h3 { font-size: 18px; margin: 0 0 9px; color: var(--pix-deep); }
.pix-feat-cell p { font-size: 14px; color: var(--pix-muted); line-height: 1.6; margin: 0; }

@media (max-width: 1024px) { .pix-feat-grid { grid-template-columns: repeat(2, 1fr); }}
@media (max-width: 560px)  { .pix-feat-grid { grid-template-columns: 1fr; }}

/* ---- How it works (zigzag steps) ---------------------------------- */
.pix-hiw { margin-top: 16px; max-width: 900px; margin-left: auto; margin-right: auto; }
.pix-hiw-row { display: flex; align-items: center; gap: 48px; }
.pix-hiw-row.reverse { flex-direction: row-reverse; }
.pix-hiw-media { flex: 1 1 46%; min-width: 0; }
.pix-hiw-media img { width: auto; height: auto; display: block; border-radius: 16px; margin: 0 auto; }
.pix-hiw-text { flex: 1 1 46%; }
.pix-hiw-num {
    font-family: 'Plus Jakarta Sans', sans-serif; font-size: 74px; font-weight: 800;
    line-height: 1; color: #e7e5ee; margin-bottom: 4px;
}
.pix-hiw-title { font-size: clamp(1.5rem, 2.4vw, 1rem); font-weight: 400; color: var(--pix-deep); margin: 0 0 14px; }
.pix-hiw-title b { font-weight: 800; }
.pix-hiw-desc { font-size: 15.5px; color: var(--pix-muted); line-height: 1.7; margin: 0; max-width: 440px; }
.pix-hiw-link { display: flex; justify-content: center; height: 120px; margin: 2px 0; }
.pix-hiw-link svg { width: 46%; height: 100%; overflow: visible; }
.pix-hiw-link.flip svg { transform: scaleX(-1); }
@media (max-width: 820px) {
    /* compact stacked steps: text on top, mockup below */
    .pix-hiw-row, .pix-hiw-row.reverse { flex-direction: column; gap: 14px; text-align: center; margin-bottom: 40px; }
    .pix-hiw-row:last-child { margin-bottom: 0; }
    .pix-hiw-text { order: 1; }
    .pix-hiw-media { order: 2; width: 100%; flex-basis: auto; }
    .pix-hiw-media img { width: 100%; height: auto; }
    .pix-hiw-desc { margin-left: auto; margin-right: auto; font-size: 14px; line-height: 1.6; }
    .pix-hiw-num { font-size: 40px; margin-bottom: 2px; }
    .pix-hiw-title { font-size: 1.2rem; margin-bottom: 8px; }
    .hiw-mock { max-width: none; width: 100%; }
    .pix-hiw-link { display: none; }}
/* Scroll-reveal (getkoro-style) — enabled only when JS adds .pix-hiw-anim.
   Image + text slide in from opposite sides, alternating with the zigzag. */
.pix-hiw-anim .pix-hiw-media,
.pix-hiw-anim .pix-hiw-text {
    opacity: 0;
    transition: opacity .7s ease, transform .75s cubic-bezier(.2,.7,.3,1);
}
.pix-hiw-anim .pix-hiw-media { transform: translateX(-52px); }
.pix-hiw-anim .pix-hiw-text  { transform: translateX(52px); transition-delay: .08s; }
.pix-hiw-anim .pix-hiw-row.reverse .pix-hiw-media { transform: translateX(52px); }
.pix-hiw-anim .pix-hiw-row.reverse .pix-hiw-text  { transform: translateX(-52px); }
.pix-hiw-anim .pix-hiw-row.is-visible .pix-hiw-media,
.pix-hiw-anim .pix-hiw-row.is-visible .pix-hiw-text { opacity: 1; transform: none; }
.pix-hiw-anim .pix-hiw-row.is-visible .pix-hiw-num { animation: pix-hiw-pop .6s cubic-bezier(.2,.8,.3,1); }
@keyframes pix-hiw-pop { 0% { transform: scale(.8); opacity: .4; } 100% { transform: scale(1); opacity: 1; } }
.pix-hiw-anim .pix-hiw-link { opacity: 0; transition: opacity .6s ease .1s; }
.pix-hiw-anim .pix-hiw-link.is-visible { opacity: 1; }
@media (max-width: 820px) {
    .pix-hiw-anim .pix-hiw-media,
    .pix-hiw-anim .pix-hiw-text,
    .pix-hiw-anim .pix-hiw-row.reverse .pix-hiw-media,
    .pix-hiw-anim .pix-hiw-row.reverse .pix-hiw-text { transform: translateY(30px); }}
@media (prefers-reduced-motion: reduce) {
    .pix-hiw-anim .pix-hiw-media, .pix-hiw-anim .pix-hiw-text, .pix-hiw-anim .pix-hiw-link { opacity: 1 !important; transform: none !important; }
    .pix-hiw-anim .pix-hiw-num { animation: none !important; }}

/* ---- How-it-works animated mockups (getkoro-style) ---------------- */
.hiw-mock { width: 100%; max-width: 360px; margin: 0 auto; }
.hiw-browser { background: #fff; border: 1px solid var(--pix-line); border-radius: 16px; box-shadow: 0 22px 46px rgba(27,73,101,.12); overflow: hidden; }
.hiw-bar { display: flex; gap: 6px; padding: 12px 14px; background: #faf7ff; border-bottom: 1px solid var(--pix-line); }
.hiw-bar i { width: 10px; height: 10px; border-radius: 50%; }
.hiw-bar i:nth-child(1) { background: #FF5F57; } .hiw-bar i:nth-child(2) { background: #FEBC2E; } .hiw-bar i:nth-child(3) { background: #28C840; }
.hiw-screen { padding: 20px; }
.hiw-h { font-weight: 700; color: var(--pix-deep); font-size: 15px; margin-bottom: 14px; }
.hiw-typing { display: inline-block; overflow: hidden; white-space: nowrap; vertical-align: bottom; border-right: 2px solid var(--pix-saffron); }
@keyframes hiw-caret { 50% { border-color: transparent; } }
.hiw-cta { display: inline-block; background: var(--pix-saffron); color: #fff; font-size: 13px; font-weight: 700; padding: 10px 18px; border-radius: 9px; box-shadow: 0 8px 18px rgba(138,9,216,.28); animation: hiw-pulse 2s ease-in-out infinite; }
@keyframes hiw-pulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.05); } }
/* signup form auto-fill (step 1) — fields type one after another, then the button glows */
.hiw-formrow { margin-bottom: 12px; }
.hiw-formrow label { display: block; font-size: 11px; font-weight: 600; color: var(--pix-muted); margin-bottom: 5px; }
.hiw-input { border: 1px solid var(--pix-line-2); border-radius: 9px; padding: 0 12px; min-height: 38px; display: flex; align-items: center; font-size: 13px; color: var(--pix-deep); background: #fff; }
.hiw-fill { display: inline-block; overflow: hidden; white-space: nowrap; width: 0; border-right: 2px solid transparent; }
/* width typing (steps) + a caret that only blinks during THIS field's window */
.hiw-fill.f1 { animation: hiw-f1 6.5s steps(12) infinite, hiw-caret1 6.5s linear infinite; }
.hiw-fill.f2 { animation: hiw-f2 6.5s steps(14) infinite, hiw-caret2 6.5s linear infinite; }
.hiw-fill.f3 { animation: hiw-f3 6.5s steps(14) infinite, hiw-caret3 6.5s linear infinite; }
@keyframes hiw-f1 { 0% { width: 0; } 18% { width: 12ch; } 92% { width: 12ch; } 100% { width: 0; } }
@keyframes hiw-f2 { 0%, 20% { width: 0; } 40% { width: 14ch; } 92% { width: 14ch; } 100% { width: 0; } }
@keyframes hiw-f3 { 0%, 42% { width: 0; } 62% { width: 14ch; } 92% { width: 14ch; } 100% { width: 0; } }
/* caret blinks only while its field is being typed, then turns off */
@keyframes hiw-caret1 { 0% { border-right-color: var(--pix-saffron); } 4% { border-right-color: transparent; } 8% { border-right-color: var(--pix-saffron); } 12% { border-right-color: transparent; } 16% { border-right-color: var(--pix-saffron); } 18% { border-right-color: transparent; } 100% { border-right-color: transparent; } }
@keyframes hiw-caret2 { 0%, 20% { border-right-color: transparent; } 24% { border-right-color: var(--pix-saffron); } 28% { border-right-color: transparent; } 32% { border-right-color: var(--pix-saffron); } 36% { border-right-color: transparent; } 40% { border-right-color: var(--pix-saffron); } 41%, 100% { border-right-color: transparent; } }
@keyframes hiw-caret3 { 0%, 42% { border-right-color: transparent; } 46% { border-right-color: var(--pix-saffron); } 50% { border-right-color: transparent; } 54% { border-right-color: var(--pix-saffron); } 58% { border-right-color: transparent; } 62% { border-right-color: var(--pix-saffron); } 63%, 100% { border-right-color: transparent; } }
.hiw-cta-form { margin-top: 4px; animation: hiw-btnglow 6.5s ease-in-out infinite; }
@keyframes hiw-btnglow {
    0%, 62% { transform: scale(1); box-shadow: 0 8px 18px rgba(138,9,216,.28); }
    72% { transform: scale(1.06); box-shadow: 0 12px 28px rgba(138,9,216,.5); }
    82%, 100% { transform: scale(1); box-shadow: 0 8px 18px rgba(138,9,216,.28); }
}
/* create-your-own button (getkoro theme grid) */
.hiw-createbtn { display: table; margin: 12px auto 0; font-size: 12px; font-weight: 700; color: var(--pix-saffron); background: #f4e6ff; padding: 8px 16px; border-radius: 999px; }
/* domain search */
.hiw-search { display: flex; align-items: center; gap: 6px; border: 2px solid var(--pix-saffron); border-radius: 999px; padding: 11px 16px; font-size: 14px; color: var(--pix-deep); }
.hiw-search svg { width: 16px; height: 16px; color: var(--pix-muted); flex: 0 0 auto; }
.hiw-dprefix, .hiw-dsuffix { color: var(--pix-muted); }
.hiw-t2 { width: 0; font-weight: 700; color: var(--pix-deep); animation: hiw-type2 4.5s steps(7) infinite, hiw-caret .8s step-end infinite; }
@keyframes hiw-type2 { 0% { width: 0; } 30% { width: 7ch; } 100% { width: 7ch; } }
.hiw-ok { margin-left: auto; font-size: 11px; font-weight: 700; color: #16a34a; background: #e7f7ee; padding: 4px 10px; border-radius: 999px; white-space: nowrap; opacity: 0; animation: hiw-okin 4.5s ease infinite; }
@keyframes hiw-okin { 0%, 35% { opacity: 0; transform: translateX(6px); } 45%, 90% { opacity: 1; transform: none; } 100% { opacity: 0; } }
/* theme tiles */
.hiw-tiles { position: relative; }
.hiw-tilegrid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; background: #faf7ff; border: 1px solid var(--pix-line); border-radius: 16px; padding: 18px; }
.hiw-tile { position: relative; height: 80px; background: #fff; border: 1px solid var(--pix-line-2); border-radius: 12px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; opacity: 0; transform: translateY(12px) scale(.95); animation: hiw-in .5s ease forwards; }
.hiw-tile:nth-child(1) { animation-delay: .05s; } .hiw-tile:nth-child(2) { animation-delay: .13s; } .hiw-tile:nth-child(3) { animation-delay: .21s; } .hiw-tile:nth-child(4) { animation-delay: .29s; } .hiw-tile:nth-child(5) { animation-delay: .37s; } .hiw-tile:nth-child(6) { animation-delay: .45s; }
.hiw-tile .t-ic { width: 32px; height: 32px; border-radius: 9px; display: inline-flex; align-items: center; justify-content: center; background: #f5eefc; }
.hiw-tile .t-ic svg { width: 17px; height: 17px; }
.hiw-tile .t-label { font-size: 10.5px; font-weight: 600; color: var(--pix-muted); }
.hiw-tile.is-sel { border-color: var(--pix-saffron); box-shadow: 0 0 0 2px rgba(138,9,216,.28); }
.hiw-tile.is-sel::after { content: '✓'; position: absolute; top: 5px; right: 9px; color: var(--pix-saffron); font-weight: 800; font-size: 12px; }
@keyframes hiw-in { to { opacity: 1; transform: none; } }
.hiw-cube { position: absolute; width: 28px; height: 28px; border: 2px solid rgba(138,9,216,.28); border-radius: 7px; animation: hiw-float 4s ease-in-out infinite; }
.hiw-cube.c1 { top: -12px; left: -8px; } .hiw-cube.c2 { bottom: -6px; right: -12px; animation-delay: -2s; }
@keyframes hiw-float { 0%, 100% { transform: translateY(0) rotate(0); } 50% { transform: translateY(-12px) rotate(10deg); } }
/* plan card (step 3) */
.hiw-plancard { background: #fff; border: 1px solid var(--pix-line); border-radius: 18px; box-shadow: 0 22px 46px rgba(27,73,101,.12); padding: 26px 24px; text-align: center; }
.hiw-plan-check { width: 54px; height: 54px; border-radius: 50%; background: #e7f7ee; color: #16a34a; display: inline-flex; align-items: center; justify-content: center; margin-bottom: 14px; }
.hiw-checksvg { width: 26px; height: 26px; }
.hiw-checksvg path { stroke-dasharray: 30; stroke-dashoffset: 30; animation: hiw-draw 3s ease-in-out infinite; }
@keyframes hiw-draw { 0% { stroke-dashoffset: 30; } 28% { stroke-dashoffset: 0; } 88% { stroke-dashoffset: 0; } 100% { stroke-dashoffset: 30; } }
.hiw-plan-title { font-family: 'Plus Jakarta Sans', sans-serif; font-weight: 800; color: var(--pix-deep); font-size: 17px; margin-bottom: 6px; }
.hiw-plan-sub { color: var(--pix-muted); font-size: 13px; margin-bottom: 16px; }
.hiw-plan-chips { display: flex; gap: 8px; justify-content: center; flex-wrap: wrap; margin-bottom: 18px; }
.hiw-plan-chips span { font-size: 11px; font-weight: 600; color: var(--pix-saffron); background: #f4e6ff; padding: 5px 11px; border-radius: 999px; }
.hiw-plan-btn { animation: hiw-pulse 2s ease-in-out infinite; }
/* go live */
.hiw-live { position: relative; padding-bottom: 10px; }
.hiw-livecard { background: #fff; border: 1px solid var(--pix-line); border-radius: 16px; box-shadow: 0 22px 46px rgba(27,73,101,.12); padding: 18px; }
.hiw-livebadge { display: inline-flex; align-items: center; gap: 7px; font-size: 12px; font-weight: 700; color: #16a34a; background: #e7f7ee; padding: 5px 12px; border-radius: 999px; margin-bottom: 14px; }
.hiw-livebadge .dot { width: 8px; height: 8px; border-radius: 50%; background: #16a34a; animation: hiw-blink 1.5s ease-in-out infinite; }
@keyframes hiw-blink { 0%, 100% { box-shadow: 0 0 0 0 rgba(22,163,74,.45); } 50% { box-shadow: 0 0 0 7px rgba(22,163,74,0); } }
.hiw-liverows { display: flex; flex-direction: column; gap: 8px; margin-bottom: 14px; }
.hiw-liverows span { height: 9px; border-radius: 5px; background: #f0edf6; }
.hiw-liverows span.short { width: 55%; }
.hiw-liveprod { display: flex; align-items: center; gap: 12px; padding: 10px; border: 1px solid var(--pix-line); border-radius: 12px; }
.hiw-liveprod .lp-img { width: 48px; height: 48px; border-radius: 9px; background: linear-gradient(135deg, #ffe0c2, #ff9a57); flex: 0 0 auto; }
.hiw-liveprod .lp-info { flex: 1; display: flex; flex-direction: column; gap: 7px; }
.hiw-liveprod .lp-info > span { height: 8px; border-radius: 5px; background: #eee; }
.hiw-liveprod .lp-price { width: 42%; height: auto !important; background: none !important; font-size: 13px; font-weight: 800; color: var(--pix-saffron); }
.hiw-toast { position: absolute; right: -8px; bottom: -6px; background: #fff; border: 1px solid var(--pix-line); border-radius: 12px; box-shadow: 0 16px 32px rgba(27,73,101,.18); padding: 10px 14px; font-size: 12px; font-weight: 700; color: var(--pix-deep); animation: hiw-toast 4s ease-in-out infinite; }
@keyframes hiw-toast { 0%, 15% { opacity: 0; transform: translateY(16px); } 28%, 75% { opacity: 1; transform: none; } 90%, 100% { opacity: 0; transform: translateY(16px); } }
@media (prefers-reduced-motion: reduce) { .hiw-t2, .hiw-fill, .hiw-cta, .hiw-cta-form, .hiw-ok, .hiw-tile, .hiw-cube, .hiw-livebadge .dot, .hiw-toast, .hiw-plan-btn, .hiw-checksvg path { animation: none !important; } .hiw-t2, .hiw-fill { width: auto !important; border-right: 0; }
    .hiw-tile, .hiw-ok, .hiw-toast { opacity: 1 !important; transform: none !important; }
    .hiw-checksvg path { stroke-dashoffset: 0 !important; }}

/* ---- Themes (sticky stacking cards, image left / content right) ---- */
.pix-srv-stack { display: flex; flex-direction: column; gap: 26px; }
.pix-srv-card {
    position: sticky; top: 96px;
    display: grid; grid-template-columns: 1fr 1fr; gap: 24px; align-items: stretch;
    background: #fff; border: 1px solid #ECE7F7; border-radius: 22px; padding: 24px;
}
.pix-srv-media { position: relative; min-height: 320px; background: #F4F4F6; border-radius: 16px; overflow: hidden; }
.pix-srv-media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; }
.pix-srv-body { padding: 20px 16px; display: flex; flex-direction: column; justify-content: center; }
.pix-srv-badge { font-size: 12px; font-weight: 800; letter-spacing: 1.5px; text-transform: uppercase; color: var(--pix-saffron); margin-bottom: 14px; }
.pix-srv-body h3 { font-size: clamp(1.4rem, 2.2vw, 1.9rem); color: var(--pix-deep); margin: 0 0 12px; }
.pix-srv-body > p { color: var(--pix-muted); font-size: 15.5px; line-height: 1.65; margin: 0 0 20px; }
.pix-srv-list { list-style: none; margin: 0 0 24px; padding: 0; }
.pix-srv-list li { position: relative; padding-left: 28px; font-size: 14.5px; color: var(--pix-ink); line-height: 1.5; margin-bottom: 10px; }
.pix-srv-list li::before { content: '✓'; position: absolute; left: 0; top: 0; color: var(--pix-saffron); font-weight: 800; }
.pix-srv-cta { align-self: flex-start; margin-top: 4px; }
@media (max-width: 820px) {
    .pix-srv-card { position: static; grid-template-columns: 1fr; }
    .pix-srv-media { min-height: 220px; }
    .pix-srv-body { padding: 28px; }}

/* ---- Pricing ------------------------------------------------------- */
.pix-pricing-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; max-width: 1240px; margin: 0 auto; align-items: stretch; }
.pix-price-card {
    background: rgba(255,255,255,.78); backdrop-filter: blur(8px);
    padding: 38px 24px; border-radius: 20px; border: 1px solid var(--pix-line);
    text-align: center; position: relative; box-shadow: var(--pix-shadow-sm);
    transition: transform .2s, box-shadow .2s;
    display: flex; flex-direction: column;
}
.pix-price-card:hover { transform: translateY(-5px); box-shadow: var(--pix-shadow); }
.pix-price-card.popular { border: 2px solid var(--pix-saffron); box-shadow: var(--pix-shadow-lg); transform: scale(1.035); }
.pix-popular-tag {
    position: absolute; top: -14px; left: 50%; transform: translateX(-50%);
    background: linear-gradient(90deg, var(--pix-saffron), var(--pix-gold));
    color: #fff; padding: 6px 18px; border-radius: 999px;
    font-size: 11px; font-weight: 800; letter-spacing: .5px; white-space: nowrap;
}
.pix-price-card h3 { font-size: 20px; margin-bottom: 8px; color: var(--pix-deep); }
.pix-plan-sub { color: var(--pix-muted); font-size: 13px; margin-bottom: 16px; }
.pix-price-amt { font-size: 46px; font-weight: 800; color: var(--pix-saffron); line-height: 1; margin: 8px 0; font-family: 'Plus Jakarta Sans', sans-serif; }
.pix-price-amt .unit { font-size: 15px; color: var(--pix-muted); font-weight: 500; }
.pix-price-note { color: var(--pix-muted); font-size: 13px; margin-bottom: 18px; min-height: 18px; flex: 1 0 auto; }
/* shared feature list - every plan gets the same features, only duration differs */
.pix-plan-includes {
    max-width: 1240px; margin: 34px auto 0;
    background: rgba(255,255,255,.78); backdrop-filter: blur(8px);
    border: 1px solid var(--pix-line); border-radius: 20px;
    padding: 28px 32px; box-shadow: var(--pix-shadow-sm);
}
.pix-plan-includes h3 {
    font-size: 15px; font-weight: 800; color: var(--pix-deep);
    text-align: center; margin-bottom: 20px; letter-spacing: .3px;
}
.pix-plan-includes ul {
    list-style: none; padding: 0; margin: 0;
    display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px 26px;
}
.pix-plan-includes li {
    padding: 0; color: var(--pix-ink); font-size: 14px;
    display: flex; align-items: flex-start; gap: 9px; text-align: left;
}
.pix-plan-includes li::before { content: '✓'; color: var(--pix-saffron); font-weight: 800; }
.pix-price-card .pix-btn-primary, .pix-price-card .pix-btn-secondary { display: flex; justify-content: center; width: 100%; margin-top: 18px; padding: 14px; }

/* ---- Testimonials -------------------------------------------------- */
.pix-test-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 22px; }
.pix-test { background: rgba(255,255,255,.78); backdrop-filter: blur(8px); padding: 28px; border-radius: 18px; border: 1px solid var(--pix-line); box-shadow: var(--pix-shadow-sm); }
.pix-stars { color: var(--pix-gold); font-size: 16px; margin-bottom: 12px; letter-spacing: 2px; }
.pix-quote { color: var(--pix-ink); font-size: 15px; line-height: 1.65; margin-bottom: 14px; }
.pix-author { font-size: 13px; color: var(--pix-muted); }
.pix-author strong { color: var(--pix-deep); display: block; font-size: 14px; }

/* ---- FAQ (two-column, Wix-style) ---------------------------------- */
.pix-faq-wrap { display: block; }
.pix-faq-head { text-align: center; margin-bottom: 40px; }
.pix-faq-head h2 { font-size: clamp(1.8rem, 3.2vw, 2.4rem); margin: 0 0 12px; }
.pix-faq-head p { color: var(--pix-muted); font-size: 15.5px; line-height: 1.7; margin: 0; }
.pix-faq-list { width: 100%; }

.pix-faq-list details { border-top: 1px solid var(--pix-line-2); }
.pix-faq-list details:last-child { border-bottom: 1px solid var(--pix-line-2); }
.pix-faq-list summary {
    cursor: pointer; list-style: none;
    display: flex; justify-content: space-between; align-items: center; gap: 20px;
    padding: 24px 4px; font-size: 23px; font-weight: 400; color: var(--pix-deep);
    transition: color .15s;
}
.pix-faq-list summary::-webkit-details-marker { display: none; }
.pix-faq-list summary:hover { color: var(--pix-saffron); }
.pix-faq-list summary::after {
    content: '+'; flex: 0 0 auto; color: var(--pix-deep);
    font-size: 26px; font-weight: 300; line-height: 1; transition: transform .2s, color .2s;
}
.pix-faq-list details[open] summary { color: var(--pix-saffron); }
.pix-faq-list details[open] summary::after { content: '−'; color: var(--pix-saffron); }
.pix-faq-list details p { color: var(--pix-muted); font-size: 15px; line-height: 1.75; margin: 0; padding: 0 40px 24px 4px; }

@media (max-width: 820px) {
    .pix-faq-wrap { grid-template-columns: 1fr; gap: 28px; }
    .pix-faq-head { position: static; text-align: center; }
    .pix-faq-head .pix-eyebrow, .pix-faq-head h2 { text-align: center; }}

/* ---- Final CTA ----------------------------------------------------- */
.pix-final {
    color: var(--pix-deep); text-align: center; padding: 30px 0; position: relative; overflow: hidden;
    background: #F3DEFF;
}
.pix-final .pix-container { position: relative; z-index: 1; }
.pix-final h2 { color: var(--pix-deep); font-size: clamp(1.8rem, 3.6vw, 2.5rem); margin-bottom: 12px; }
.pix-final p { color: var(--pix-muted); font-size: 17px; margin: 0 auto 28px; max-width: 560px; }
.pix-final .pix-mini { color: var(--pix-muted); font-size: 13px; margin-top: 16px; }

/* ---- Footer -------------------------------------------------------- */
.pix-footer { background: var(--pix-ink); color: #c0c5cf; padding: 54px 0 30px; font-size: 14px; }
.pix-footer-grid { display: grid; grid-template-columns: 2fr 1fr 1fr 1fr; gap: 30px; margin-bottom: 30px; }
.pix-footer h4 { color: #fff; font-size: 14px; margin-bottom: 14px; letter-spacing: .5px; text-transform: uppercase; }
.pix-footer a { color: #c0c5cf; display: block; padding: 4px 0; font-size: 14px; transition: color .15s; }
.pix-footer a:hover { color: var(--pix-saffron); }
.pix-footer-brand { font-family: 'Plus Jakarta Sans', sans-serif; font-size: 22px; font-weight: 800; color: var(--pix-saffron); margin-bottom: 10px; display: inline-block; }
.pix-footer-about { margin-bottom: 14px; line-height: 1.6; }
.pix-footer-bottom { border-top: 1px solid rgba(255,255,255,.08); padding-top: 22px; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px; font-size: 13px; color: #8a92a0; }
.pix-made-in { display: inline-flex; align-items: center; gap: 6px; font-weight: 600; color: #fff; }
.pix-made-in .flag { font-size: 16px; }

/* ---- Mobile menu (hamburger + slide-down sheet) -------------------- */
.pix-menu-btn {
    display: none; flex-direction: column; justify-content: center; gap: 5px;
    width: 44px; height: 44px; padding: 10px;
    background: #fff; border: 1px solid var(--pix-line-2); border-radius: 10px; cursor: pointer;
}
.pix-menu-btn span { display: block; height: 2px; border-radius: 2px; background: var(--pix-deep); transition: transform .25s ease, opacity .2s ease; }
.pix-header.menu-open .pix-menu-btn span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.pix-header.menu-open .pix-menu-btn span:nth-child(2) { opacity: 0; }
.pix-header.menu-open .pix-menu-btn span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
.pix-mobile-menu {
    display: none; position: absolute; left: 0; right: 0; top: 100%;
    background: #fff; border-bottom: 1px solid var(--pix-line);
    box-shadow: 0 22px 40px rgba(27,73,101,.14);
    border-radius: 0 0 20px 20px; padding: 8px 20px 20px;
}
.pix-header.menu-open .pix-mobile-menu { display: block; animation: pix-menu-in .25s ease; }
@keyframes pix-menu-in { from { opacity: 0; transform: translateY(-8px); } to { opacity: 1; transform: none; } }
.pix-mobile-nav { display: flex; flex-direction: column; }
.pix-mobile-nav a {
    display: flex; align-items: center; min-height: 52px; padding: 4px 6px;
    font-size: 16px; font-weight: 500; color: var(--pix-deep);
    border-bottom: 1px solid var(--pix-line);
}
.pix-mobile-nav a:active { color: var(--pix-saffron); }
.pix-mobile-actions { display: flex; flex-direction: column; gap: 10px; margin-top: 16px; }

/* Button skins for menu-sheet (base styles are scoped to .pix-header-actions) */
.pix-mobile-actions .pix-btn-login {
    display: flex; align-items: center; justify-content: center;
    height: 48px; padding: 10px; border-radius: 9px;
    border: 1px solid #000; background: #fff; color: #000; font-size: 15px; font-weight: 500;
}
.pix-mobile-actions .pix-nav-cta {
    display: inline-flex; align-items: center; justify-content: center;
    height: 48px; padding: 10px 17px; border-radius: 9px;
    background: #8E09D8; color: #fff; font-size: 15px; font-weight: 600;
}
.pix-mobile-actions .pix-btn-login, .pix-mobile-actions .pix-nav-cta { width: 100%; }
@media (prefers-reduced-motion: reduce) { .pix-header.menu-open .pix-mobile-menu { animation: none; }}

/* ---- Responsive ---------------------------------------------------- */
/* Global touch polish */
a, button { -webkit-tap-highlight-color: transparent; touch-action: manipulation; }

/* Big screens — let the layout breathe */
@media (min-width: 1680px) {
    .pix-container { max-width: 1520px; }
    .pix-hero h1 { font-size: 56px; }
    .pix-section { padding: 92px 0; }
    .pix-banner-img { height: 540px; }
}

@media (max-width: 1180px) {
    .pix-container { padding: 0 28px; }
    .pix-nav { gap: 24px; }
    .pix-pricing-grid { grid-template-columns: repeat(2, 1fr); max-width: 700px; }
    .pix-plan-includes { max-width: 700px; }
    .pix-plan-includes ul { grid-template-columns: repeat(2, 1fr); }}

@media (max-width: 960px) {
    .pix-hero .pix-container { grid-template-columns: 1fr; gap: 30px; }
    .pix-hero-copy { text-align: center; }
    .pix-hero-sub { margin-left: auto; margin-right: auto; }
    .pix-hero-meta, .pix-hero-cta, .pix-hero-assure { justify-content: center; }
    .pix-hero-art { order: 1; max-width: 520px; margin: 0 auto; }
    .pix-hero h1 { font-size: 42px; }
    .pix-hero-tagline { font-size: 26px; }}

@media (max-width: 768px) {
    .pix-container { padding: 0 20px; }
    .pix-hero { padding: 28px 0 44px; }
    .pix-section { padding: 52px 0; }
    .pix-price-card.popular { transform: none; }
    .pix-footer-grid { grid-template-columns: 1fr 1fr; }

    /* Header: logo left, actions right, hamburger menu */
    .pix-header .pix-container { grid-template-columns: auto 1fr; gap: 10px; }
    .pix-nav { display: none; }
    .pix-header-actions { gap: 8px; }
    .pix-header-actions .pix-btn-login { display: none; }
    .pix-header-actions .pix-nav-cta { height: 42px; padding: 8px 14px; font-size: 14px; box-shadow: 2px 2px 0 0 #131313; }
    .pix-menu-btn { display: flex; }

    .pix-hero h1 { font-size: 34px; }
    .pix-hero-tagline { font-size: 22px; }
    .pix-eb-badge { font-size: 12.5px; padding: 8px 14px; }
    .pix-lead { padding-bottom: 8px; margin-bottom: 26px; }
    .pix-stats-title { margin-bottom: 30px; padding-bottom: 16px; }
    .pix-stat-label { padding-bottom: 10px; white-space: normal; }
    .pix-banner-section { padding: 40px 0 20px; }
    .pix-faq-list summary { font-size: 18px; padding: 18px 2px; }
    .pix-faq-list details p { padding: 0 26px 18px 2px; }
    .pix-hiw-media img { max-width: 100%; }
    .hiw-mock, .hiw-browser { width: 100%; max-width: none; }
    .pix-srv-body { padding: 20px 8px; }
    .pix-lang-heading { padding: 0 6px; }}

@media (max-width: 560px) {
    .pix-container { padding: 0 16px; }
    .pix-section { padding: 44px 0; }
    .pix-section h2 { font-size: 1.55rem; }
    .pix-hero { padding: 20px 0 36px; }
    .pix-eb-badge { font-size: 9.5px; padding: 7px 12px; gap: 6px; }
    .pix-hero h1 { font-size: 30px; }
    .pix-hero-tagline { font-size: 19px; padding-bottom: 10px; }
    .pix-hero-sub { font-size: 14px; }
    .pix-hero-art { max-width: 100%; }

    /* App-like: side-by-side CTAs, comfy tap targets */
    .pix-hero-cta { flex-direction: row; flex-wrap: nowrap; gap: 10px; }
    .pix-hero-cta .pix-btn-primary, .pix-hero-cta .pix-btn-secondary { flex: 1 1 0; padding: 10px 8px; justify-content: center; min-height: 50px; font-size: 15px; white-space: nowrap; }
    .pix-final .pix-btn-primary, .pix-final .pix-btn-secondary { width: 100%; justify-content: center; min-height: 50px; }
    .pix-hero-assure { flex-direction: row; flex-wrap: nowrap; justify-content: center; align-items: center; gap: 8px; font-size: 11.5px; white-space: nowrap; }
    .pix-hero-assure span { gap: 4px; }
    .pix-hero-assure .pix-check { width: 14px; height: 14px; }
    .pix-hero-meta { font-size: 13px; margin-bottom: 20px; }

    .pix-banner-title { font-size: 1.5rem; }
    .pix-banner-sub br { display: none; }
    .pix-banner-img { border-radius: 14px; }
    .pix-stats-section { padding: 22px 0 36px; }
    .pix-rating-badge { padding: 6px 12px 6px 8px; margin-bottom: 20px; gap: 8px; max-width: 100%; }
    .pix-rating-text { white-space: nowrap; font-size: 11.5px; }
    .pix-rating-avatars .av { width: 26px; height: 26px; margin-left: -9px; }
    .pix-rating-star { font-size: 16px; margin-left: -8px; }
    .pix-rating-google img { width: 15px; height: 15px; }
    .pix-feature { padding: 24px 20px; }
    .pix-feat-cell { padding: 22px 20px 24px; }
    .pix-srv-card { padding: 16px; border-radius: 16px; }
    .pix-srv-media { min-height: 180px; }
    .pix-pay-card { padding: 18px 16px; min-height: 0; }
    .pix-pricing-grid { grid-template-columns: 1fr; }
    .pix-plan-includes { padding: 24px 20px; }
    .pix-plan-includes ul { grid-template-columns: 1fr; }
    .pix-price-card { padding: 30px 22px; }
    .pix-lang-stage { border-radius: 18px; }
    /* testimonials */
    .pix-test { padding: 20px 18px; }
    .pix-quote { font-size: 14px; }
    /* themes cards */
    .pix-srv-cta { align-self: stretch; width: 100%; justify-content: center; text-align: center; }
    .pix-srv-list li { font-size: 13.5px; margin-bottom: 8px; }
    .pix-srv-body > p { font-size: 14px; }
    /* FAQ intro + trust marquee */
    .pix-faq-head { margin-bottom: 26px; }
    .pix-faq-head p { font-size: 14px; }
    .pix-trust-item { font-size: 12px; padding: 0 16px; }
    .pix-final { padding: 40px 0; }
    .pix-final p { font-size: 15px; }
    .pix-footer { padding: 40px 0 30px; }
    .pix-footer-grid { grid-template-columns: repeat(2, 1fr); gap: 24px 18px; }}

@media (max-width: 380px) {
    .pix-hero h1 { font-size: 30px; }
    .pix-header-actions .pix-nav-cta { padding: 8px 10px; font-size: 13px; }
    .pix-logo { font-size: 20px; }}