
/* NexaDigital Theme Styles */

:root {
    --nexa-accent: #6d5efc;
    --nexa-accent-2: #22c55e;
    --nexa-ink: #0f172a;
    --nexa-muted: #64748b;
    --nexa-bg: #f8fafc;
    --nexa-surface: #ffffff;
    --nexa-border: rgba(15, 23, 42, 0.08);
    --nexa-shadow: 0 24px 80px rgba(15, 23, 42, 0.08);
    --nexa-radius-lg: 28px;
    --nexa-radius-md: 18px;
    --nexa-radius-sm: 12px;
    --nexa-width: min(1200px, calc(100vw - 2rem));
}

*,
*::before,
*::after {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    color: var(--nexa-ink);
    background: linear-gradient(180deg, #f8fafc 0%, #ffffff 100%);
    line-height: 1.7;
}

img {
    max-width: 100%;
    height: auto;
    display: block;
}

a {
    color: inherit;
    text-decoration: none;
}

p {
    margin: 0 0 1rem;
}

ul,
ol {
    margin: 0 0 1rem;
    padding-left: 1.25rem;
}

h1, h2, h3, h4, h5, h6 {
    margin: 0 0 1rem;
    line-height: 1.1;
    letter-spacing: -0.02em;
}

h1 {
    font-size: clamp(2.4rem, 4vw, 4.8rem);
}

h2 {
    font-size: clamp(1.75rem, 3vw, 3rem);
}

h3 {
    font-size: clamp(1.2rem, 2vw, 1.5rem);
}

.nexa-container {
    width: var(--nexa-width);
    margin-inline: auto;
}

.section {
    padding: clamp(4rem, 6vw, 7rem) 0;
}

.section--soft {
    background: linear-gradient(180deg, rgba(109, 94, 252, 0.05), rgba(255, 255, 255, 0.9));
}

.section-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 2.5rem;
}

.section-heading.centered {
    align-items: center;
    text-align: center;
    flex-direction: column;
}

.section-kicker,
.nexa-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    background: rgba(109, 94, 252, 0.1);
    color: var(--nexa-accent);
    border: 1px solid rgba(109, 94, 252, 0.16);
    border-radius: 999px;
    padding: 0.5rem 0.9rem;
    font-size: 0.875rem;
    font-weight: 700;
    letter-spacing: 0.01em;
}

.nexa-badge {
    margin-bottom: 1rem;
}

.text-link {
    color: var(--nexa-accent);
    font-weight: 700;
    transition: opacity 0.2s ease;
}

.text-link:hover {
    opacity: 0.75;
}

.site-content {
    min-height: 60vh;
}

.site-header {
    position: sticky;
    top: 0;
    z-index: 99;
    background: rgba(248, 250, 252, 0.8);
    backdrop-filter: blur(18px);
    border-bottom: 1px solid rgba(15, 23, 42, 0.06);
}

.site-header__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
    padding: 1rem 0;
}

.site-branding {
    display: flex;
    align-items: center;
    gap: 0.875rem;
    min-width: 0;
}

.site-branding__text {
    display: flex;
    flex-direction: column;
}

.site-title {
    font-size: 1.15rem;
    font-weight: 800;
    color: var(--nexa-ink);
}

.site-description {
    margin: 0;
    color: var(--nexa-muted);
    font-size: 0.94rem;
}

.main-navigation ul {
    list-style: none;
    display: flex;
    align-items: center;
    gap: 1.35rem;
    margin: 0;
    padding: 0;
}

.main-navigation a {
    font-weight: 600;
    color: var(--nexa-ink);
}

.site-header__actions {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.nexa-button,
button,
input[type="submit"],
.search-submit,
.wp-element-button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.6rem;
    background: linear-gradient(135deg, var(--nexa-accent), #8b5cf6);
    color: #fff;
    font-weight: 700;
    padding: 0.95rem 1.35rem;
    border-radius: 999px;
    border: none;
    cursor: pointer;
    transition: transform 0.2s ease, box-shadow 0.2s ease, opacity 0.2s ease;
    box-shadow: 0 14px 36px rgba(109, 94, 252, 0.24);
}

.nexa-button:hover,
button:hover,
input[type="submit"]:hover,
.search-submit:hover,
.wp-element-button:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover {
    transform: translateY(-2px);
    opacity: 0.96;
}

.nexa-button--ghost {
    background: transparent;
    color: var(--nexa-ink);
    border: 1px solid var(--nexa-border);
    box-shadow: none;
}

.nexa-button--ghost:hover {
    background: rgba(15, 23, 42, 0.03);
}

.nexa-cart-link {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 46px;
    height: 46px;
    border-radius: 999px;
    border: 1px solid var(--nexa-border);
    background: var(--nexa-surface);
}

.nexa-cart-count {
    position: absolute;
    top: -4px;
    right: -4px;
    min-width: 20px;
    height: 20px;
    border-radius: 999px;
    display: grid;
    place-items: center;
    font-size: 0.75rem;
    background: var(--nexa-accent);
    color: #fff;
    padding-inline: 0.25rem;
}

.nexa-menu-toggle {
    display: none;
    width: 48px;
    height: 48px;
    padding: 0;
    background: transparent;
    box-shadow: none;
    border: 1px solid var(--nexa-border);
    border-radius: 14px;
}

.nexa-menu-toggle span {
    display: block;
    width: 18px;
    height: 2px;
    background: var(--nexa-ink);
    margin: 3px auto;
}

.hero {
    position: relative;
    overflow: hidden;
    padding: clamp(5rem, 8vw, 8rem) 0 4rem;
}

.hero::before {
    content: "";
    position: absolute;
    inset: -20% auto auto 55%;
    width: 30rem;
    height: 30rem;
    background: radial-gradient(circle, rgba(34, 197, 94, 0.18), transparent 65%);
    pointer-events: none;
}

.hero::after {
    content: "";
    position: absolute;
    inset: -10% auto auto -10%;
    width: 32rem;
    height: 32rem;
    background: radial-gradient(circle, rgba(109, 94, 252, 0.18), transparent 60%);
    pointer-events: none;
}

.hero__grid {
    display: grid;
    grid-template-columns: 1.15fr 0.85fr;
    gap: clamp(2rem, 5vw, 4rem);
    align-items: center;
}

.hero__lead {
    font-size: 1.1rem;
    color: var(--nexa-muted);
    max-width: 54ch;
}

.hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.9rem;
    margin-top: 1.75rem;
}

.hero__stats {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    margin: 2rem 0 0;
    padding: 0;
}

.hero__stats li {
    min-width: 150px;
    padding: 1rem 1.15rem;
    border: 1px solid var(--nexa-border);
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.82);
    backdrop-filter: blur(8px);
}

.hero__stats strong {
    display: block;
    font-size: 1.1rem;
    margin-bottom: 0.25rem;
}

.hero__stats span {
    color: var(--nexa-muted);
    font-size: 0.95rem;
}

.hero-card,
.showcase-card,
.feature-card,
.testimonial-card,
.post-card,
.product-card,
.entry-page,
.entry-single,
.empty-state,
.woocommerce-wrap .product,
.woocommerce .woocommerce-message,
.woocommerce .cart_totals,
.woocommerce .woocommerce-checkout-review-order,
.woocommerce form.checkout,
.woocommerce form.login,
.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content {
    background: rgba(255, 255, 255, 0.92);
    border: 1px solid var(--nexa-border);
    border-radius: var(--nexa-radius-lg);
    box-shadow: var(--nexa-shadow);
}

.hero-card {
    padding: 1.75rem;
    position: relative;
}

.hero-card::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    padding: 1px;
    background: linear-gradient(135deg, rgba(109, 94, 252, 0.4), rgba(34, 197, 94, 0.25));
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
            mask-composite: exclude;
    pointer-events: none;
}

.hero-card__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
}

.hero-card__label {
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--nexa-muted);
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.hero-card__price {
    font-size: 1.35rem;
    font-weight: 800;
    color: var(--nexa-accent);
}

.hero-card__features {
    list-style: none;
    padding: 0;
    margin: 1.5rem 0 0;
    display: grid;
    gap: 0.85rem;
}

.hero-card__features li {
    display: flex;
    align-items: center;
    gap: 0.7rem;
    font-weight: 600;
}

.hero-card__features li::before,
.check-list li::before {
    content: "✓";
    color: var(--nexa-accent-2);
    font-weight: 800;
}

.partners-strip {
    padding: 1rem 0 0;
}

.partners-strip p {
    padding: 1rem 1.25rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.8);
    border: 1px solid var(--nexa-border);
    text-align: center;
    color: var(--nexa-muted);
    font-weight: 600;
}

.product-grid,
.feature-grid,
.post-grid,
.testimonial-grid {
    display: grid;
    gap: 1.35rem;
}

.product-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.post-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.feature-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.testimonial-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.product-card,
.post-card {
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.product-card__image,
.post-card__thumb {
    aspect-ratio: 1.25;
    background: linear-gradient(135deg, rgba(109, 94, 252, 0.08), rgba(34, 197, 94, 0.08));
    overflow: hidden;
}

.product-card__image img,
.post-card__thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.product-card__placeholder {
    width: 100%;
    height: 100%;
    min-height: 220px;
    background:
        radial-gradient(circle at 30% 20%, rgba(109, 94, 252, 0.18), transparent 25%),
        radial-gradient(circle at 80% 20%, rgba(34, 197, 94, 0.18), transparent 20%),
        linear-gradient(145deg, rgba(109, 94, 252, 0.12), rgba(255, 255, 255, 0.6), rgba(34, 197, 94, 0.12));
}

.product-card__body,
.post-card__body {
    padding: 1.35rem;
    display: grid;
    gap: 0.8rem;
    flex: 1;
}

.product-card__meta,
.post-card__meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    color: var(--nexa-muted);
}

.price {
    color: var(--nexa-accent);
    font-weight: 800;
    font-size: 1.1rem;
}

.feature-card {
    padding: 1.45rem;
}

.feature-card p,
.testimonial-card p,
.site-footer__text,
.archive-description,
.entry-content,
.post-card p,
.product-card p,
.empty-state p {
    color: var(--nexa-muted);
}

.content-showcase {
    display: grid;
    grid-template-columns: 1fr 0.95fr;
    gap: 2rem;
    align-items: center;
}

.check-list {
    list-style: none;
    padding: 0;
    margin: 1.5rem 0 0;
    display: grid;
    gap: 0.75rem;
}

.check-list li {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    font-weight: 600;
}

.showcase-card {
    padding: 1.2rem;
}

.showcase-card__header {
    display: flex;
    justify-content: space-between;
    color: var(--nexa-muted);
    font-size: 0.95rem;
    margin-bottom: 1rem;
}

.showcase-card__body {
    padding: 1rem;
    border-radius: 22px;
    background:
        linear-gradient(180deg, rgba(255,255,255,0.94), rgba(248,250,252,0.94));
    border: 1px solid var(--nexa-border);
}

.showcase-card__screen {
    aspect-ratio: 9 / 16;
    border-radius: 24px;
    background:
        linear-gradient(180deg, rgba(15,23,42,0.05), rgba(15,23,42,0.01)),
        radial-gradient(circle at 20% 20%, rgba(109,94,252,0.35), transparent 28%),
        radial-gradient(circle at 80% 35%, rgba(34,197,94,0.28), transparent 28%),
        linear-gradient(135deg, #ffffff, #f3f4f6);
    border: 8px solid #fff;
    box-shadow: inset 0 0 0 1px rgba(15,23,42,0.08);
}

.testimonial-card {
    padding: 1.5rem;
}

.testimonial-card cite {
    display: block;
    margin-top: 1rem;
    color: var(--nexa-ink);
    font-style: normal;
    font-weight: 700;
}

.faq {
    max-width: 900px;
}

.faq-list {
    display: grid;
    gap: 1rem;
}

.faq-list details {
    background: rgba(255,255,255,0.92);
    border: 1px solid var(--nexa-border);
    border-radius: 18px;
    padding: 1.1rem 1.2rem;
    box-shadow: 0 14px 40px rgba(15,23,42,0.05);
}

.faq-list summary {
    cursor: pointer;
    font-weight: 700;
    list-style: none;
}

.faq-list summary::-webkit-details-marker {
    display: none;
}

.faq-list p {
    margin-top: 0.85rem;
}

.cta-band__inner {
    display: flex;
    justify-content: space-between;
    gap: 1.5rem;
    align-items: center;
    padding: 2rem;
    border-radius: var(--nexa-radius-lg);
    background: linear-gradient(135deg, rgba(109, 94, 252, 0.08), rgba(34, 197, 94, 0.08));
    border: 1px solid rgba(109, 94, 252, 0.16);
}

.site-footer {
    padding: 4rem 0 2rem;
    border-top: 1px solid rgba(15, 23, 42, 0.06);
    background: rgba(255, 255, 255, 0.75);
}

.site-footer__grid {
    display: grid;
    grid-template-columns: 1.2fr 0.7fr 0.9fr;
    gap: 2rem;
}

.site-footer__title {
    margin-bottom: 0.75rem;
}

.site-footer ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    gap: 0.7rem;
}

.site-footer__bottom {
    margin-top: 2rem;
    padding-top: 1.5rem;
    border-top: 1px solid rgba(15, 23, 42, 0.08);
    color: var(--nexa-muted);
    text-align: center;
}

.article-layout {
    max-width: 860px;
}

.entry-page,
.entry-single {
    padding: clamp(1.75rem, 3vw, 2.5rem);
}

.entry-header {
    margin-bottom: 1.5rem;
}

.entry-title {
    font-size: clamp(2rem, 4vw, 3.5rem);
}

.entry-media {
    margin-bottom: 1.5rem;
    border-radius: 22px;
    overflow: hidden;
}

.entry-content > *:last-child {
    margin-bottom: 0;
}

.entry-content a {
    color: var(--nexa-accent);
    text-decoration: underline;
}

.post-card__title {
    font-size: 1.35rem;
}

.comments-wrap {
    margin-top: 1.5rem;
}

.comments-area {
    background: rgba(255,255,255,0.92);
    border: 1px solid var(--nexa-border);
    border-radius: 24px;
    padding: 1.5rem;
}

.comment-list {
    padding-left: 1rem;
}

.empty-state {
    padding: 2rem;
    text-align: center;
}

.empty-state--large {
    max-width: 740px;
    margin-inline: auto;
    padding: 3rem 2rem;
}

.pagination-wrap {
    margin-top: 2rem;
}

.search-form {
    display: flex;
    gap: 0.75rem;
    justify-content: center;
    margin-top: 1rem;
}

.search-field,
input[type="text"],
input[type="email"],
input[type="password"],
input[type="url"],
input[type="tel"],
textarea,
select,
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea {
    width: 100%;
    border: 1px solid rgba(15, 23, 42, 0.12);
    border-radius: 16px;
    padding: 0.9rem 1rem;
    font: inherit;
    background: #fff;
}

textarea {
    min-height: 160px;
}

.screen-reader-text {
    position: absolute;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    width: 1px;
    height: 1px;
    overflow: hidden;
    word-wrap: normal !important;
}

.skip-link:focus {
    clip: auto;
    clip-path: none;
    width: auto;
    height: auto;
    top: 1rem;
    left: 1rem;
    padding: 0.7rem 1rem;
    z-index: 101;
    background: #000;
    color: #fff;
}

.widget {
    margin-bottom: 1rem;
}

.widget-title {
    margin-bottom: 0.75rem;
}

/* WooCommerce */
.woocommerce-wrap .woocommerce-breadcrumb {
    color: var(--nexa-muted);
    margin-bottom: 1rem;
}

.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering {
    margin-bottom: 1.2rem;
}

.woocommerce ul.products {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.35rem;
    margin: 0;
    padding: 0;
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
    float: none;
    width: auto;
    margin: 0;
    padding: 1rem;
    background: rgba(255, 255, 255, 0.92);
    border: 1px solid var(--nexa-border);
    border-radius: var(--nexa-radius-lg);
    box-shadow: var(--nexa-shadow);
}

.woocommerce ul.products li.product img {
    border-radius: 18px;
    margin-bottom: 1rem;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
    font-size: 1.15rem;
    padding: 0;
}

.woocommerce span.onsale {
    background: var(--nexa-accent);
    border-radius: 999px;
    min-height: auto;
    min-width: auto;
    padding: 0.45rem 0.7rem;
    line-height: 1;
}

.woocommerce div.product div.images img,
.woocommerce div.product div.images .flex-control-thumbs li img {
    border-radius: 20px;
}

.woocommerce div.product .product_title {
    font-size: clamp(2rem, 4vw, 3rem);
}

.woocommerce div.product p.price,
.woocommerce div.product span.price,
.woocommerce ul.products li.product .price {
    color: var(--nexa-accent);
    font-weight: 800;
}

.woocommerce div.product form.cart {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    align-items: center;
}

.woocommerce-tabs ul.tabs {
    padding: 0 !important;
    margin-bottom: 1rem !important;
}

.woocommerce-tabs ul.tabs li {
    border: none !important;
    border-radius: 999px !important;
    padding: 0 0.35rem !important;
    background: rgba(109,94,252,0.08) !important;
}

.woocommerce-tabs ul.tabs li a {
    padding: 0.75rem 1rem !important;
}

.woocommerce table.shop_table,
.woocommerce-cart table.cart td.actions .coupon .input-text {
    border-radius: 18px;
    overflow: hidden;
}

.woocommerce .quantity .qty {
    width: 5.2rem;
}

.woocommerce .checkout_coupon,
.woocommerce form.cart,
.woocommerce table.shop_table,
.woocommerce .cart-collaterals .cart_totals,
.woocommerce .woocommerce-checkout-review-order,
.woocommerce .woocommerce-form-login,
.woocommerce .woocommerce-form-coupon {
    background: rgba(255,255,255,0.9);
    border: 1px solid var(--nexa-border);
    border-radius: 24px;
    padding: 1rem;
}

.woocommerce .woocommerce-error,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-message {
    border-top: 0;
}

.woocommerce .woocommerce-message::before,
.woocommerce .woocommerce-error::before,
.woocommerce .woocommerce-info::before {
    top: 1rem;
}

.woocommerce a.remove {
    color: #ef4444 !important;
}

.woocommerce .related.products > h2,
.woocommerce .upsells.products > h2 {
    margin-bottom: 1rem;
}

/* Gutenberg / content */
.wp-block-image,
.wp-block-gallery,
.wp-block-cover,
.wp-block-group,
.wp-block-columns,
table,
pre {
    margin-bottom: 1.5rem;
}

pre {
    padding: 1rem;
    background: #0f172a;
    color: #fff;
    border-radius: 16px;
    overflow: auto;
}

table {
    width: 100%;
    border-collapse: collapse;
}

th,
td {
    padding: 0.85rem 1rem;
    border-bottom: 1px solid rgba(15, 23, 42, 0.08);
    text-align: left;
}

blockquote {
    margin: 0 0 1.25rem;
    padding-left: 1rem;
    border-left: 4px solid rgba(109, 94, 252, 0.25);
}

/* Responsive */
@media (max-width: 1080px) {
    .hero__grid,
    .content-showcase,
    .site-footer__grid {
        grid-template-columns: 1fr;
    }

    .product-grid,
    .feature-grid,
    .post-grid,
    .testimonial-grid,
    .woocommerce ul.products {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .section-heading {
        align-items: start;
        flex-direction: column;
    }
}

@media (max-width: 860px) {
    .nexa-menu-toggle {
        display: inline-flex;
        flex-direction: column;
        justify-content: center;
    }

    .main-navigation {
        position: fixed;
        inset: 72px 1rem auto 1rem;
        background: rgba(255,255,255,0.96);
        border: 1px solid var(--nexa-border);
        border-radius: 22px;
        box-shadow: var(--nexa-shadow);
        padding: 1rem;
        opacity: 0;
        pointer-events: none;
        transform: translateY(-8px);
        transition: 0.2s ease;
    }

    .main-navigation.is-open {
        opacity: 1;
        pointer-events: auto;
        transform: translateY(0);
    }

    .main-navigation ul {
        flex-direction: column;
        align-items: flex-start;
    }

    .site-header__actions .nexa-button--ghost {
        display: none;
    }

    .hero__stats {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 720px) {
    .product-grid,
    .feature-grid,
    .post-grid,
    .testimonial-grid,
    .woocommerce ul.products,
    .hero__stats {
        grid-template-columns: 1fr;
    }

    .site-header__inner {
        flex-wrap: wrap;
    }

    .site-branding {
        max-width: calc(100% - 62px);
    }

    .hero {
        padding-top: 3rem;
    }

    .cta-band__inner,
    .hero__actions,
    .search-form {
        flex-direction: column;
        align-items: stretch;
    }

    .nexa-button,
    button,
    input[type="submit"],
    .search-submit,
    .wp-element-button {
        width: 100%;
    }
}

body.admin-bar .site-header {
    top: 32px;
}

@media (max-width: 782px) {
    body.admin-bar .site-header {
        top: 46px;
    }
}


/* Animated premium upgrade */
body {
    overflow-x: hidden;
    background:
        radial-gradient(circle at 14% 12%, rgba(109, 94, 252, 0.11), transparent 32rem),
        radial-gradient(circle at 88% 8%, rgba(34, 197, 94, 0.12), transparent 30rem),
        linear-gradient(180deg, #f8fafc 0%, #ffffff 48%, #f8fafc 100%);
}

.nexa-scroll-progress {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    width: 100%;
    height: 3px;
    transform: scaleX(var(--nexa-scroll, 0));
    transform-origin: left center;
    background: linear-gradient(90deg, var(--nexa-accent), #8b5cf6, var(--nexa-accent-2));
    box-shadow: 0 0 24px rgba(109, 94, 252, 0.45);
    pointer-events: none;
}

.site-header {
    transition: box-shadow 0.25s ease, background 0.25s ease, transform 0.25s ease;
}

.site-header.is-scrolled {
    background: rgba(255, 255, 255, 0.9);
    box-shadow: 0 18px 50px rgba(15, 23, 42, 0.08);
}

.nexa-button {
    position: relative;
    overflow: hidden;
}

.nexa-button::after {
    content: "";
    position: absolute;
    inset: -50% auto -50% -35%;
    width: 30%;
    transform: rotate(18deg) translateX(-140%);
    background: rgba(255, 255, 255, 0.34);
    filter: blur(2px);
    transition: transform 0.65s ease;
}

.nexa-button:hover::after {
    transform: rotate(18deg) translateX(520%);
}

.button-arrow {
    display: inline-flex;
    transition: transform 0.2s ease;
}

.nexa-button:hover .button-arrow {
    transform: translateX(4px);
}

.hero--animated {
    isolation: isolate;
    padding-top: clamp(5rem, 7vw, 8.5rem);
}

.hero--animated .nexa-container {
    position: relative;
    z-index: 2;
}

.hero__ambient {
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
}

.ambient-orb {
    position: absolute;
    width: 20rem;
    height: 20rem;
    border-radius: 999px;
    filter: blur(8px);
    opacity: 0.72;
    animation: nexa-orb-float 15s ease-in-out infinite;
}

.ambient-orb--one {
    top: 4%;
    left: -6rem;
    background: radial-gradient(circle, rgba(109, 94, 252, 0.22), transparent 68%);
}

.ambient-orb--two {
    right: -5rem;
    top: 0;
    background: radial-gradient(circle, rgba(34, 197, 94, 0.18), transparent 68%);
    animation-delay: -6s;
}

.ambient-orb--three {
    right: 20%;
    bottom: 8%;
    width: 14rem;
    height: 14rem;
    background: radial-gradient(circle, rgba(14, 165, 233, 0.14), transparent 68%);
    animation-delay: -10s;
}

.ambient-grid {
    position: absolute;
    inset: 0;
    opacity: 0.32;
    background-image:
        linear-gradient(rgba(109, 94, 252, 0.08) 1px, transparent 1px),
        linear-gradient(90deg, rgba(109, 94, 252, 0.08) 1px, transparent 1px);
    background-size: 72px 72px;
    mask-image: radial-gradient(circle at 50% 18%, #000 0, transparent 62%);
}

.nexa-badge--shine {
    position: relative;
    overflow: hidden;
    background: linear-gradient(135deg, rgba(109, 94, 252, 0.12), rgba(34, 197, 94, 0.1));
}

.nexa-badge--shine::after {
    content: "";
    position: absolute;
    inset: 0;
    transform: translateX(-100%);
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.72), transparent);
    animation: nexa-shimmer 3.8s ease-in-out infinite;
}

.trust-row {
    display: flex;
    flex-wrap: wrap;
    gap: 0.7rem;
    margin-top: 1.25rem;
}

.trust-row span {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    padding: 0.55rem 0.75rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.78);
    border: 1px solid rgba(15, 23, 42, 0.07);
    color: var(--nexa-muted);
    font-size: 0.92rem;
    font-weight: 700;
    box-shadow: 0 12px 35px rgba(15, 23, 42, 0.05);
}

.trust-row span::before {
    content: "";
    width: 0.48rem;
    height: 0.48rem;
    border-radius: 999px;
    background: var(--nexa-accent-2);
    box-shadow: 0 0 0 5px rgba(34, 197, 94, 0.12);
}

.hero__panel {
    position: relative;
    min-height: 520px;
    display: grid;
    place-items: center;
    perspective: 1100px;
}

.orbit-rings {
    position: absolute;
    inset: 2rem;
    border-radius: 999px;
    border: 1px solid rgba(109, 94, 252, 0.14);
    animation: nexa-spin 28s linear infinite;
}

.orbit-rings::before,
.orbit-rings::after {
    content: "";
    position: absolute;
    border-radius: inherit;
    border: 1px dashed rgba(34, 197, 94, 0.22);
}

.orbit-rings::before {
    inset: 3rem;
}

.orbit-rings::after {
    inset: 6rem;
    border-color: rgba(109, 94, 252, 0.18);
    animation: nexa-spin 18s linear infinite reverse;
}

.hero-card--dashboard {
    width: min(100%, 430px);
    transform-style: preserve-3d;
    animation: nexa-card-float 7s ease-in-out infinite;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(255, 255, 255, 0.86)),
        radial-gradient(circle at 20% 0%, rgba(109, 94, 252, 0.16), transparent 40%);
}

.hero-card--dashboard h2 {
    font-size: clamp(1.65rem, 3vw, 2.5rem);
}

.hero-card__preview {
    display: grid;
    grid-template-columns: 1.2fr 0.75fr;
    gap: 1rem;
    margin: 1.25rem 0 0.5rem;
}

.preview-window,
.preview-panel {
    position: relative;
    min-height: 150px;
    border-radius: 24px;
    overflow: hidden;
    border: 1px solid rgba(15, 23, 42, 0.08);
    background:
        linear-gradient(180deg, rgba(255,255,255,0.9), rgba(248,250,252,0.86)),
        radial-gradient(circle at 30% 30%, rgba(109,94,252,0.24), transparent 42%);
    box-shadow: inset 0 0 0 1px rgba(255,255,255,0.65);
}

.preview-dot {
    position: relative;
    display: inline-flex;
    width: 9px;
    height: 9px;
    margin-top: 14px;
    margin-left: 8px;
    border-radius: 999px;
    background: rgba(109, 94, 252, 0.28);
}

.preview-cover {
    position: absolute;
    left: 18px;
    right: 18px;
    top: 40px;
    height: 58px;
    border-radius: 18px;
    background:
        linear-gradient(135deg, rgba(109,94,252,0.95), rgba(139,92,246,0.82)),
        linear-gradient(90deg, transparent, rgba(255,255,255,0.3), transparent);
    animation: nexa-cover-pulse 4.5s ease-in-out infinite;
}

.preview-line {
    position: absolute;
    left: 20px;
    bottom: 24px;
    width: 44%;
    height: 9px;
    border-radius: 999px;
    background: rgba(100, 116, 139, 0.12);
}

.preview-line--wide {
    bottom: 42px;
    width: 68%;
}

.preview-panel {
    display: grid;
    align-content: center;
    gap: 0.8rem;
    padding: 1rem;
}

.preview-panel span {
    display: block;
    height: 12px;
    border-radius: 999px;
    background: rgba(109, 94, 252, 0.12);
}

.preview-panel strong {
    color: var(--nexa-accent-2);
    font-size: 1.4rem;
}

.fly-card {
    position: absolute;
    z-index: 3;
    display: grid;
    gap: 0.2rem;
    min-width: 132px;
    padding: 0.85rem 1rem;
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.86);
    border: 1px solid rgba(15, 23, 42, 0.08);
    box-shadow: 0 22px 55px rgba(15, 23, 42, 0.12);
    backdrop-filter: blur(16px);
    animation: nexa-fly 7s ease-in-out infinite;
}

.fly-card span {
    width: max-content;
    padding: 0.25rem 0.55rem;
    border-radius: 999px;
    background: rgba(109, 94, 252, 0.1);
    color: var(--nexa-accent);
    font-size: 0.75rem;
    font-weight: 800;
    letter-spacing: 0.08em;
}

.fly-card strong {
    font-size: 0.95rem;
}

.fly-card--one {
    top: 4rem;
    left: -0.4rem;
    animation-delay: -1s;
}

.fly-card--two {
    top: 1.5rem;
    right: 0.1rem;
    animation-delay: -3s;
}

.fly-card--three {
    left: 0.7rem;
    bottom: 4rem;
    animation-delay: -4.8s;
}

.fly-card--four {
    right: -0.2rem;
    bottom: 3.2rem;
    animation-delay: -6s;
}

.digital-banner {
    position: relative;
    z-index: 3;
    margin-top: -1.8rem;
    padding-bottom: 1rem;
}

.digital-banner__inner {
    display: flex;
    align-items: center;
    gap: 1rem;
    overflow: hidden;
    padding: 1rem;
    border-radius: 999px;
    border: 1px solid rgba(109, 94, 252, 0.18);
    background: rgba(255, 255, 255, 0.78);
    box-shadow: 0 18px 60px rgba(15, 23, 42, 0.08);
    backdrop-filter: blur(18px);
}

.digital-banner__label {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    padding: 0.62rem 0.95rem;
    border-radius: 999px;
    background: linear-gradient(135deg, var(--nexa-accent), #8b5cf6);
    color: #fff;
    font-weight: 800;
    box-shadow: 0 14px 30px rgba(109, 94, 252, 0.24);
}

.digital-banner__marquee {
    min-width: 0;
    flex: 1;
    overflow: hidden;
    mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent);
}

.digital-banner__track {
    display: flex;
    width: max-content;
    gap: 0.8rem;
    animation: nexa-marquee 26s linear infinite;
}

.digital-banner__track span {
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
    padding: 0.6rem 0.85rem;
    border-radius: 999px;
    background: rgba(109, 94, 252, 0.08);
    color: var(--nexa-ink);
    font-weight: 800;
}

.digital-banner__track span:nth-child(2n) {
    background: rgba(34, 197, 94, 0.1);
}

.product-card,
.feature-card,
.testimonial-card,
.showcase-card,
.faq-list details,
.cta-band__inner {
    transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
}

.product-card:hover,
.feature-card:hover,
.testimonial-card:hover,
.showcase-card:hover,
.faq-list details:hover {
    transform: translateY(-6px);
    box-shadow: 0 28px 80px rgba(15, 23, 42, 0.12);
    border-color: rgba(109, 94, 252, 0.2);
}

.product-card__image {
    position: relative;
}

.product-card__image::after {
    content: "";
    position: absolute;
    inset: 0;
    transform: translateX(-120%) skewX(-16deg);
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.42), transparent);
    transition: transform 0.75s ease;
}

.product-card:hover .product-card__image::after {
    transform: translateX(140%) skewX(-16deg);
}

.product-card__placeholder--animated {
    position: relative;
    display: grid;
    place-items: center;
    overflow: hidden;
}

.product-card__placeholder--animated::before,
.product-card__placeholder--animated::after {
    content: "";
    position: absolute;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.45);
    animation: nexa-placeholder-fly 8s ease-in-out infinite;
}

.product-card__placeholder--animated::before {
    width: 120px;
    height: 120px;
    left: 12%;
    top: 18%;
}

.product-card__placeholder--animated::after {
    width: 76px;
    height: 76px;
    right: 14%;
    bottom: 18%;
    animation-delay: -3s;
}

.demo-product-icon {
    position: relative;
    z-index: 2;
    display: grid;
    place-items: center;
    width: 84px;
    height: 84px;
    border-radius: 26px;
    background: rgba(255, 255, 255, 0.86);
    color: var(--nexa-accent);
    font-weight: 900;
    letter-spacing: 0.08em;
    box-shadow: 0 22px 50px rgba(109, 94, 252, 0.16);
    animation: nexa-icon-float 5.5s ease-in-out infinite;
}

.feature-card {
    position: relative;
    overflow: hidden;
}

.feature-card::after {
    content: "";
    position: absolute;
    inset: auto -3rem -5rem auto;
    width: 10rem;
    height: 10rem;
    border-radius: 999px;
    background: radial-gradient(circle, rgba(109, 94, 252, 0.11), transparent 66%);
}

.feature-card__icon {
    display: inline-grid;
    place-items: center;
    width: 48px;
    height: 48px;
    margin-bottom: 1rem;
    border-radius: 16px;
    background: linear-gradient(135deg, rgba(109, 94, 252, 0.12), rgba(34, 197, 94, 0.12));
    color: var(--nexa-accent);
    font-weight: 900;
}

.motion-showcase {
    overflow: hidden;
}

.motion-showcase__grid {
    display: grid;
    grid-template-columns: 0.86fr 1.14fr;
    gap: clamp(2rem, 5vw, 4rem);
    align-items: center;
}

.motion-showcase p {
    color: var(--nexa-muted);
}

.motion-board {
    position: relative;
    min-height: 380px;
    overflow: hidden;
    border-radius: var(--nexa-radius-lg);
    border: 1px solid rgba(109, 94, 252, 0.16);
    background:
        radial-gradient(circle at 22% 16%, rgba(109, 94, 252, 0.18), transparent 34%),
        radial-gradient(circle at 80% 70%, rgba(34, 197, 94, 0.16), transparent 34%),
        linear-gradient(135deg, rgba(255,255,255,0.92), rgba(248,250,252,0.82));
    box-shadow: var(--nexa-shadow);
}

.motion-board::before {
    content: "";
    position: absolute;
    inset: 1.2rem;
    border-radius: 24px;
    border: 1px dashed rgba(109, 94, 252, 0.18);
}

.motion-lane {
    position: absolute;
    left: 8%;
    right: 8%;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(100, 116, 139, 0.24), transparent);
}

.motion-lane--one { top: 28%; }
.motion-lane--two { top: 50%; }
.motion-lane--three { top: 72%; }

.motion-product {
    position: absolute;
    display: grid;
    gap: 0.25rem;
    min-width: 160px;
    padding: 1rem 1.1rem;
    border-radius: 22px;
    background: rgba(255, 255, 255, 0.9);
    border: 1px solid rgba(15, 23, 42, 0.08);
    box-shadow: 0 20px 50px rgba(15, 23, 42, 0.12);
    animation: nexa-motion-fly 9s ease-in-out infinite;
}

.motion-product small {
    color: var(--nexa-accent);
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}

.motion-product--one {
    top: 18%;
    left: 9%;
}

.motion-product--two {
    top: 45%;
    right: 10%;
    animation-delay: -3s;
}

.motion-product--three {
    left: 25%;
    bottom: 14%;
    animation-delay: -5.8s;
}

.showcase-card__screen {
    position: relative;
    overflow: hidden;
}

.showcase-card__screen::before,
.showcase-card__screen::after {
    content: "";
    position: absolute;
    left: 13%;
    right: 13%;
    height: 12px;
    border-radius: 999px;
    background: rgba(109, 94, 252, 0.12);
}

.showcase-card__screen::before {
    top: 20%;
    box-shadow: 0 44px 0 rgba(15, 23, 42, 0.06), 0 88px 0 rgba(34, 197, 94, 0.12), 0 132px 0 rgba(15, 23, 42, 0.06);
}

.showcase-card__screen::after {
    bottom: 14%;
    height: 54px;
    border-radius: 18px;
    background: linear-gradient(135deg, var(--nexa-accent), #8b5cf6);
    animation: nexa-cover-pulse 4.8s ease-in-out infinite;
}

.cta-band__inner {
    position: relative;
    overflow: hidden;
}

.cta-band__inner::before {
    content: "";
    position: absolute;
    inset: -40% auto auto -10%;
    width: 20rem;
    height: 20rem;
    border-radius: 999px;
    background: radial-gradient(circle, rgba(109, 94, 252, 0.18), transparent 62%);
    animation: nexa-orb-float 12s ease-in-out infinite;
}

.cta-band__inner > * {
    position: relative;
    z-index: 1;
}

html.nexa-animations [data-reveal] {
    opacity: 0;
    transform: translate3d(0, 34px, 0) scale(0.98);
    transition:
        opacity 0.75s cubic-bezier(0.22, 1, 0.36, 1),
        transform 0.75s cubic-bezier(0.22, 1, 0.36, 1);
    transition-delay: var(--nexa-reveal-delay, 0ms);
    will-change: opacity, transform;
}

html.nexa-animations [data-reveal="left"] {
    transform: translate3d(-42px, 0, 0) scale(0.98);
}

html.nexa-animations [data-reveal="right"] {
    transform: translate3d(42px, 0, 0) scale(0.98);
}

html.nexa-animations [data-reveal="zoom"] {
    transform: translate3d(0, 20px, 0) scale(0.94);
}

html.nexa-animations [data-reveal].is-visible {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
}

@keyframes nexa-orb-float {
    0%, 100% { transform: translate3d(0, 0, 0) scale(1); }
    50% { transform: translate3d(28px, -24px, 0) scale(1.08); }
}

@keyframes nexa-shimmer {
    0%, 55% { transform: translateX(-110%); }
    100% { transform: translateX(110%); }
}

@keyframes nexa-spin {
    to { transform: rotate(360deg); }
}

@keyframes nexa-card-float {
    0%, 100% { transform: translate3d(0, 0, 0) rotateX(0deg) rotateY(0deg); }
    50% { transform: translate3d(0, -14px, 0) rotateX(2deg) rotateY(-2deg); }
}

@keyframes nexa-fly {
    0%, 100% { transform: translate3d(0, 0, 0) rotate(-2deg); }
    50% { transform: translate3d(18px, -26px, 0) rotate(3deg); }
}

@keyframes nexa-cover-pulse {
    0%, 100% { filter: saturate(1); transform: scale(1); }
    50% { filter: saturate(1.2); transform: scale(1.025); }
}

@keyframes nexa-marquee {
    from { transform: translateX(0); }
    to { transform: translateX(-50%); }
}

@keyframes nexa-placeholder-fly {
    0%, 100% { transform: translate3d(0, 0, 0) scale(1); opacity: 0.8; }
    50% { transform: translate3d(28px, -18px, 0) scale(1.12); opacity: 0.45; }
}

@keyframes nexa-icon-float {
    0%, 100% { transform: translateY(0) rotate(-2deg); }
    50% { transform: translateY(-10px) rotate(2deg); }
}

@keyframes nexa-motion-fly {
    0%, 100% { transform: translate3d(0, 0, 0) rotate(-1deg); }
    33% { transform: translate3d(34px, -22px, 0) rotate(2deg); }
    66% { transform: translate3d(-20px, 20px, 0) rotate(-2deg); }
}

@media (max-width: 1080px) {
    .hero__panel {
        min-height: 470px;
    }

    .motion-showcase__grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 860px) {
    .digital-banner__inner {
        border-radius: 28px;
        align-items: stretch;
        flex-direction: column;
    }

    .digital-banner__label {
        justify-content: center;
    }

    .hero__panel {
        min-height: 440px;
    }

    .fly-card {
        transform: scale(0.9);
    }

    .fly-card--one { left: 0.2rem; }
    .fly-card--two { right: 0.2rem; }
    .fly-card--three { left: 0.2rem; }
    .fly-card--four { right: 0.2rem; }
}

@media (max-width: 720px) {
    .trust-row {
        display: grid;
    }

    .hero-card__preview {
        grid-template-columns: 1fr;
    }

    .fly-card {
        display: none;
    }

    .hero__panel {
        min-height: auto;
    }

    .hero-card--dashboard {
        animation: none;
    }

    .motion-board {
        min-height: 310px;
    }

    .motion-product {
        min-width: 132px;
        padding: 0.85rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: 0.001ms !important;
        animation-iteration-count: 1 !important;
        scroll-behavior: auto !important;
        transition-duration: 0.001ms !important;
    }

    html.nexa-animations [data-reveal] {
        opacity: 1;
        transform: none;
    }
}

/* NexaDigital 2.0 — dynamic posts, categories, WooCommerce and 3D/2D motion */
[data-tilt-card]{transform-style:preserve-3d;transform-origin:center;will-change:transform}.category-lab{position:relative;overflow:hidden}.category-lab::before{content:"";position:absolute;inset:10% auto auto -8rem;width:22rem;height:22rem;border-radius:999px;background:radial-gradient(circle,rgba(109,94,252,.12),transparent 66%);pointer-events:none}.category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;position:relative}.category-card{min-height:190px;padding:1.45rem;border-radius:var(--nexa-radius-lg);background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(255,255,255,.76)),radial-gradient(circle at 18% 12%,rgba(109,94,252,.14),transparent 30%),radial-gradient(circle at 85% 90%,rgba(34,197,94,.14),transparent 32%);border:1px solid var(--nexa-border);box-shadow:var(--nexa-shadow);display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease}.category-card::after{content:"";position:absolute;inset:auto -25% -45% auto;width:12rem;height:12rem;border-radius:999px;background:rgba(109,94,252,.08);transition:transform .35s ease}.category-card:hover{transform:translateY(-6px);border-color:rgba(109,94,252,.24);box-shadow:0 30px 80px rgba(15,23,42,.12)}.category-card:hover::after{transform:translate3d(-16px,-18px,0) scale(1.08)}.category-card__icon{width:3.2rem;height:3.2rem;border-radius:18px;display:inline-flex;align-items:center;justify-content:center;background:rgba(109,94,252,.1);color:var(--nexa-accent);font-size:1.45rem;font-weight:800}.category-card strong{font-size:1.25rem;position:relative;z-index:1}.category-card small{color:var(--nexa-muted);font-weight:700;position:relative;z-index:1}.nexa-filter-bar{display:flex;flex-wrap:wrap;gap:.7rem;margin:-.8rem 0 2rem}.nexa-filter{background:rgba(255,255,255,.86);color:var(--nexa-ink);border:1px solid var(--nexa-border);box-shadow:none;padding:.72rem 1rem;font-size:.94rem}.nexa-filter:hover,.nexa-filter.is-active{color:#fff;background:linear-gradient(135deg,var(--nexa-accent),#8b5cf6);box-shadow:0 14px 34px rgba(109,94,252,.2)}.product-card{position:relative;transition:transform .28s ease,opacity .28s ease,box-shadow .28s ease}.product-card::after,.post-card::after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(135deg,rgba(109,94,252,.12),transparent 32%,rgba(34,197,94,.08));opacity:0;pointer-events:none;transition:opacity .28s ease}.product-card:hover::after,.post-card:hover::after{opacity:1}.product-card.is-hidden-by-filter{opacity:0;transform:scale(.96);pointer-events:none;position:absolute;visibility:hidden}.product-card__category,.post-card__terms a,.nexa-product-badge{display:inline-flex;width:fit-content;align-items:center;gap:.4rem;background:rgba(109,94,252,.1);color:var(--nexa-accent);border-radius:999px;padding:.34rem .68rem;font-size:.78rem;font-weight:800}.post-card__terms{display:flex;flex-wrap:wrap;gap:.4rem}.post-card__meta{justify-content:flex-start;font-size:.9rem}.product-card__image,.post-card__thumb{position:relative}.product-card__image::after,.post-card__thumb::after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent,rgba(255,255,255,.36),transparent);transform:translateX(-120%);transition:transform .7s ease}.product-card:hover .product-card__image::after,.post-card:hover .post-card__thumb::after{transform:translateX(120%)}.scroll-studio{overflow:hidden;position:relative}.scroll-studio::before{content:"";position:absolute;inset:20% -10rem auto auto;width:28rem;height:28rem;border-radius:999px;background:radial-gradient(circle,rgba(34,197,94,.14),transparent 62%);pointer-events:none}.scroll-studio__grid,.plugin-stack__grid,.shop-hero__inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.9fr);gap:2rem;align-items:center}.scroll-device{min-height:460px;border-radius:34px;background:radial-gradient(circle at 24% 20%,rgba(109,94,252,.2),transparent 30%),radial-gradient(circle at 80% 80%,rgba(34,197,94,.18),transparent 32%),rgba(255,255,255,.78);border:1px solid var(--nexa-border);box-shadow:0 32px 90px rgba(15,23,42,.12);position:relative;overflow:hidden;perspective:1000px}.scroll-device__layer{position:absolute;border-radius:28px;border:1px solid rgba(255,255,255,.72);box-shadow:0 22px 60px rgba(15,23,42,.12);will-change:transform}.scroll-device__layer--back{inset:3.2rem 7rem auto 2.4rem;height:130px;background:linear-gradient(135deg,rgba(109,94,252,.16),rgba(255,255,255,.78))}.scroll-device__layer--mid{inset:9rem 2.3rem auto 8rem;height:160px;background:linear-gradient(135deg,rgba(34,197,94,.16),rgba(255,255,255,.86))}.scroll-device__layer--front{inset:auto 4rem 3.2rem 3.3rem;height:148px;background:linear-gradient(135deg,rgba(15,23,42,.9),rgba(79,70,229,.88))}.scroll-device__screen{position:absolute;inset:50% auto auto 50%;width:min(70%,320px);transform:translate(-50%,-50%) rotateX(12deg) rotateY(-10deg);display:grid;gap:.8rem}.scroll-device__screen span{height:18px;border-radius:999px;background:rgba(255,255,255,.78);box-shadow:0 18px 50px rgba(15,23,42,.08)}.scroll-device__screen span:nth-child(2){width:82%}.scroll-device__screen span:nth-child(3){width:64%}.scroll-device__screen span:nth-child(4){width:92%;height:64px;border-radius:22px;background:rgba(255,255,255,.92)}.blog-category-pills{display:flex;flex-wrap:wrap;gap:.65rem;margin:-.7rem 0 2rem}.blog-category-pills a{border:1px solid var(--nexa-border);border-radius:999px;background:rgba(255,255,255,.86);padding:.6rem .95rem;color:var(--nexa-muted);font-weight:800;transition:color .2s ease,border-color .2s ease,transform .2s ease}.blog-category-pills a:hover{color:var(--nexa-accent);border-color:rgba(109,94,252,.25);transform:translateY(-2px)}.post-grid--featured .post-card__title{font-size:1.22rem}.plugin-stack__cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.plugin-stack__cards span{min-height:92px;display:flex;align-items:center;justify-content:center;border-radius:24px;background:rgba(255,255,255,.9);border:1px solid var(--nexa-border);box-shadow:var(--nexa-shadow);color:var(--nexa-ink);font-weight:900;position:relative;overflow:hidden}.plugin-stack__cards span::before{content:"";position:absolute;inset:-40% auto auto -25%;width:8rem;height:8rem;border-radius:999px;background:rgba(109,94,252,.1)}.shop-hero{padding:clamp(5rem,8vw,8rem) 0 3rem;background:radial-gradient(circle at 15% 20%,rgba(109,94,252,.18),transparent 30%),radial-gradient(circle at 85% 15%,rgba(34,197,94,.16),transparent 28%),linear-gradient(180deg,#f8fafc,#fff);overflow:hidden}.shop-hero h1{font-size:clamp(2.4rem,5vw,4.6rem)}.shop-hero p{color:var(--nexa-muted);max-width:660px;font-size:1.08rem}.shop-hero__cube{min-height:320px;position:relative;border-radius:34px;background:rgba(255,255,255,.76);border:1px solid var(--nexa-border);box-shadow:0 30px 90px rgba(15,23,42,.1);perspective:900px;overflow:hidden}.shop-hero__cube span{position:absolute;width:112px;height:112px;display:grid;place-items:center;border-radius:28px;color:#fff;font-weight:900;letter-spacing:.08em;background:linear-gradient(135deg,var(--nexa-accent),#8b5cf6);box-shadow:0 24px 60px rgba(79,70,229,.28);will-change:transform}.shop-hero__cube span:nth-child(1){left:14%;top:22%;animation:nexa-fly 7s ease-in-out infinite}.shop-hero__cube span:nth-child(2){right:16%;top:16%;animation:nexa-fly 8s ease-in-out infinite reverse}.shop-hero__cube span:nth-child(3){left:42%;bottom:18%;animation:nexa-fly 9s ease-in-out infinite}.nexa-breadcrumbs{margin-bottom:1rem;color:var(--nexa-muted);font-weight:700}.shop-layout,.content-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:2rem}.shop-layout:has(.shop-layout__sidebar),.content-layout:has(.content-layout__sidebar){grid-template-columns:280px minmax(0,1fr)}.shop-layout__sidebar,.content-layout__sidebar{display:grid;gap:1rem;align-content:start}.shop-widget,.blog-widget{background:rgba(255,255,255,.92);border:1px solid var(--nexa-border);border-radius:22px;box-shadow:0 18px 50px rgba(15,23,42,.06);padding:1.15rem}.nexa-product-badge{margin:.2rem 0 .4rem}.nexa-product-trust{display:grid;gap:.6rem;margin:1rem 0;padding:1rem;border:1px solid var(--nexa-border);border-radius:18px;background:rgba(109,94,252,.05)}.nexa-product-trust span{display:flex;align-items:center;gap:.6rem;color:var(--nexa-muted);font-weight:800}.nexa-product-trust span::before{content:"✓";color:var(--nexa-accent-2);font-weight:900}.woocommerce ul.products li.product{transform-style:preserve-3d}.woocommerce ul.products li.product .nexa-product-badge{margin-left:1.15rem}.entry-terms,.entry-tags,.post-navigation-links{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1rem}.entry-tags a,.post-navigation-links a{display:inline-flex;border-radius:999px;border:1px solid var(--nexa-border);background:rgba(255,255,255,.86);padding:.58rem .9rem;color:var(--nexa-accent);font-weight:800}.entry-footer{border-top:1px solid var(--nexa-border);margin-top:2rem;padding-top:1.5rem}.post-navigation-links{justify-content:space-between}@supports not selector(:has(*)){.shop-layout,.content-layout{grid-template-columns:minmax(0,1fr)}}@media (max-width:1080px){.category-grid,.plugin-stack__cards{grid-template-columns:repeat(2,minmax(0,1fr))}.scroll-studio__grid,.plugin-stack__grid,.shop-hero__inner{grid-template-columns:1fr}.shop-layout:has(.shop-layout__sidebar),.content-layout:has(.content-layout__sidebar){grid-template-columns:1fr}}@media (max-width:720px){.category-grid,.plugin-stack__cards{grid-template-columns:1fr}.nexa-filter-bar,.blog-category-pills{overflow-x:auto;flex-wrap:nowrap;padding-bottom:.4rem}.nexa-filter,.blog-category-pills a{white-space:nowrap}.scroll-device,.shop-hero__cube{min-height:300px}.scroll-device__layer--back{inset:2rem 4rem auto 1.4rem}.scroll-device__layer--mid{inset:7rem 1.4rem auto 4rem}.scroll-device__layer--front{inset:auto 1.5rem 2rem 1.5rem}}@media (prefers-reduced-motion:reduce){[data-tilt-card],.scroll-device__layer,.shop-hero__cube span,.ambient-orb,.fly-card{transform:none!important}}

/* NexaDigital 3.0 — pages dynamiques, logo, starter content et motion réaliste */
.site-logo--fallback{display:inline-flex;width:46px;height:46px;flex:0 0 46px;border-radius:16px;box-shadow:0 14px 34px rgba(79,70,229,.24);overflow:hidden;transform-style:preserve-3d}.site-logo--fallback img{width:100%;height:100%;object-fit:cover}.site-logo img{max-height:54px;width:auto}.site-header.is-scrolled .site-logo--fallback{transform:translateY(-1px) scale(.96)}.category-card__type{position:absolute;right:1rem;top:1rem;z-index:2;border-radius:999px;background:rgba(255,255,255,.82);border:1px solid rgba(15,23,42,.08);color:var(--nexa-muted);font-size:.72rem;font-weight:900;padding:.32rem .58rem;text-transform:uppercase;letter-spacing:.04em}.blog-taxonomy-strip{align-items:center;background:rgba(15,23,42,.94);border-radius:24px;box-shadow:0 24px 70px rgba(15,23,42,.16);color:#fff;display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.35rem;padding:1rem}.blog-taxonomy-strip span{font-weight:900;margin-right:.2rem}.blog-taxonomy-strip a{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.14);border-radius:999px;color:#fff;font-weight:800;padding:.55rem .85rem;transition:background .2s ease,transform .2s ease}.blog-taxonomy-strip a:hover{background:rgba(255,255,255,.18);transform:translateY(-2px)}.page-hub{position:relative;overflow:hidden}.page-hub::before{content:"";position:absolute;inset:auto auto 8% -7rem;width:20rem;height:20rem;border-radius:999px;background:radial-gradient(circle,rgba(109,94,252,.13),transparent 64%);pointer-events:none}.page-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}.page-card{position:relative;min-height:260px;border-radius:var(--nexa-radius-lg);padding:1.55rem;background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(255,255,255,.76));border:1px solid var(--nexa-border);box-shadow:var(--nexa-shadow);overflow:hidden;transform-style:preserve-3d;transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease}.page-card::before{content:"";position:absolute;inset:-30% -20% auto auto;width:13rem;height:13rem;border-radius:999px;background:rgba(109,94,252,.12);transform:translateZ(-1px);transition:transform .4s ease}.page-card:hover{border-color:rgba(109,94,252,.25);box-shadow:0 34px 90px rgba(15,23,42,.12);transform:translateY(-6px)}.page-card:hover::before{transform:translate3d(-20px,24px,-1px) scale(1.14)}.page-card__number{display:inline-flex;align-items:center;justify-content:center;width:3.25rem;height:3.25rem;border-radius:18px;background:rgba(15,23,42,.94);color:#fff;font-weight:900;margin-bottom:1.4rem;box-shadow:0 18px 40px rgba(15,23,42,.16)}.page-card h3{font-size:1.35rem;margin-bottom:.7rem}.page-card p{color:var(--nexa-muted)}.blog-category-pills a.is-active{color:#fff;background:linear-gradient(135deg,var(--nexa-accent),#8b5cf6);border-color:transparent}.page-template-hero{padding:clamp(5rem,8vw,8rem) 0 3rem;position:relative;overflow:hidden;background:radial-gradient(circle at 12% 20%,rgba(109,94,252,.18),transparent 32%),radial-gradient(circle at 90% 18%,rgba(34,197,94,.14),transparent 28%),linear-gradient(180deg,#f8fafc,#fff)}.page-template-hero__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.85fr);gap:2rem;align-items:center}.page-template-hero h1{font-size:clamp(2.4rem,5vw,4.7rem)}.page-template-hero p{color:var(--nexa-muted);font-size:1.08rem;max-width:720px}.page-orbit,.landing-mockup{min-height:360px;border-radius:34px;background:linear-gradient(180deg,rgba(255,255,255,.85),rgba(255,255,255,.62));border:1px solid var(--nexa-border);box-shadow:0 30px 90px rgba(15,23,42,.12);position:relative;overflow:hidden;perspective:1000px}.page-orbit span,.landing-mockup__file{position:absolute;width:112px;height:112px;border-radius:28px;display:grid;place-items:center;color:#fff;font-weight:900;letter-spacing:.08em;background:linear-gradient(135deg,var(--nexa-accent),#8b5cf6);box-shadow:0 24px 60px rgba(79,70,229,.28);will-change:transform}.page-orbit span:nth-child(1){left:14%;top:18%;animation:nexa-fly 7s ease-in-out infinite}.page-orbit span:nth-child(2){right:12%;top:26%;animation:nexa-fly 8s ease-in-out infinite reverse}.page-orbit span:nth-child(3){left:40%;bottom:14%;animation:nexa-fly 9s ease-in-out infinite}.landing-mockup__file:nth-child(1){left:8%;top:18%;animation:nexa-fly 7s ease-in-out infinite}.landing-mockup__file:nth-child(2){right:8%;top:14%;animation:nexa-fly 8.5s ease-in-out infinite reverse}.landing-mockup__file:nth-child(3){left:15%;bottom:12%;animation:nexa-fly 9.5s ease-in-out infinite}.landing-mockup__screen{position:absolute;inset:50% auto auto 50%;width:min(66%,320px);min-height:210px;transform:translate(-50%,-50%) rotateX(10deg) rotateY(-12deg);border-radius:26px;background:rgba(15,23,42,.94);box-shadow:0 34px 80px rgba(15,23,42,.24);padding:1.35rem;display:grid;gap:.8rem;align-content:center}.landing-mockup__screen span{height:16px;border-radius:999px;background:rgba(255,255,255,.65)}.landing-mockup__screen span:nth-child(2){width:72%}.landing-mockup__screen span:nth-child(3){width:54%}.landing-mockup__screen strong{color:#fff;font-size:1.35rem}.entry-page--canvas,.entry-page--landing,.landing-aside{background:rgba(255,255,255,.92);border:1px solid var(--nexa-border);border-radius:28px;box-shadow:var(--nexa-shadow);padding:clamp(1.2rem,3vw,2.3rem)}.landing-content-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:1.5rem;align-items:start}.landing-aside{position:sticky;top:110px}.landing-aside h2{font-size:1.45rem}.nexa-product-loop-card{height:auto!important}.woocommerce ul.products li.product.nexa-product-loop-card{border-radius:var(--nexa-radius-lg);padding:0;float:none;margin:0;width:auto}.woocommerce ul.products li.product.nexa-product-loop-card .button{font-size:.9rem;padding:.7rem .95rem}.woocommerce ul.products li.product.nexa-product-loop-card .price{color:var(--nexa-ink);font-size:1.05rem;font-weight:900}.woocommerce ul.products li.product.nexa-product-loop-card .woocommerce-loop-product__title{padding:0;font-size:1.18rem}.nexa-magnetic{will-change:transform}.nexa-admin-panel-message{border-left:4px solid var(--nexa-accent);padding-left:1rem}.category-hero{padding-top:clamp(5rem,8vw,7rem)}.category-hero--product{background:radial-gradient(circle at 20% 22%,rgba(109,94,252,.18),transparent 34%),radial-gradient(circle at 86% 18%,rgba(34,197,94,.16),transparent 28%),linear-gradient(180deg,#f8fafc,#fff)}
@media (max-width:1080px){.page-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-template-hero__grid,.landing-content-grid{grid-template-columns:1fr}.landing-aside{position:relative;top:auto}}
@media (max-width:720px){.page-grid{grid-template-columns:1fr}.page-template-hero__grid{gap:1rem}.page-orbit,.landing-mockup{min-height:290px}.page-orbit span,.landing-mockup__file{width:86px;height:86px;border-radius:23px}.landing-mockup__screen{width:76%;min-height:180px}.site-description{display:none}}
@media (prefers-reduced-motion:reduce){.page-orbit span,.landing-mockup__file,.nexa-magnetic{transform:none!important}}

/* NexaDigital 4.0 — polished sales copy, cinematic motion, deeper 3D scroll */
.nexa-front-page {
    overflow-x: hidden;
    background:
        radial-gradient(circle at calc(18% + (var(--nexa-scroll, 0) * 22%)) 8%, rgba(109, 94, 252, 0.16), transparent 32rem),
        radial-gradient(circle at calc(88% - (var(--nexa-scroll, 0) * 18%)) 24%, rgba(34, 197, 94, 0.14), transparent 30rem),
        linear-gradient(180deg, #f8fafc 0%, #ffffff 48%, #f8fafc 100%);
}

.nexa-front-page::before,
.nexa-front-page::after {
    content: "";
    position: fixed;
    inset: auto auto 8vh -12rem;
    width: 32rem;
    height: 32rem;
    border-radius: 999px;
    background: radial-gradient(circle, rgba(109, 94, 252, 0.13), transparent 66%);
    pointer-events: none;
    z-index: -1;
    transform: translate3d(calc(var(--nexa-scroll, 0) * 180px), calc(var(--nexa-scroll, 0) * -80px), 0);
    animation: nexa-aurora-drift 13s ease-in-out infinite;
}

.nexa-front-page::after {
    inset: 16vh -14rem auto auto;
    width: 38rem;
    height: 38rem;
    background: radial-gradient(circle, rgba(34, 197, 94, 0.12), transparent 68%);
    transform: translate3d(calc(var(--nexa-scroll, 0) * -160px), calc(var(--nexa-scroll, 0) * 90px), 0);
    animation-duration: 16s;
    animation-direction: reverse;
}

.hero--animated {
    min-height: calc(100vh - 74px);
    display: flex;
    align-items: center;
    perspective: 1400px;
}

.hero__content h1 {
    max-width: 820px;
    text-wrap: balance;
}

.hero__lead {
    max-width: 710px;
}

.hero-card--dashboard,
.scroll-device,
.shop-hero__cube,
.keyword-orbit {
    transform-style: preserve-3d;
    will-change: transform;
}

.hero-card--dashboard::before,
.scroll-device::after,
.keyword-orbit::after,
.motion-board::after {
    content: "";
    position: absolute;
    inset: -1px;
    border-radius: inherit;
    background: linear-gradient(120deg, transparent 8%, rgba(255,255,255,0.52) 46%, transparent 78%);
    opacity: 0.36;
    pointer-events: none;
    mix-blend-mode: screen;
    transform: translateX(calc(-60% + (var(--nexa-scroll, 0) * 120%)));
}

[data-nexa-kinetic] {
    --nexa-kinetic-y: 0px;
    --nexa-kinetic-tilt: 0deg;
    position: relative;
    transform-style: preserve-3d;
}

[data-nexa-kinetic] > .nexa-container {
    transform: translate3d(0, var(--nexa-kinetic-y), 0) rotateX(var(--nexa-kinetic-tilt));
    transform-origin: center;
    will-change: transform;
}

.keyword-cloud {
    position: relative;
    overflow: hidden;
}

.keyword-cloud::before {
    content: "";
    position: absolute;
    inset: 14% auto auto -10rem;
    width: 25rem;
    height: 25rem;
    border-radius: 999px;
    background: radial-gradient(circle, rgba(109,94,252,.12), transparent 64%);
}

.keyword-cloud__grid {
    display: grid;
    grid-template-columns: minmax(0, .92fr) minmax(320px, 1.08fr);
    gap: clamp(2rem, 5vw, 4rem);
    align-items: center;
}

.keyword-cloud p {
    color: var(--nexa-muted);
    max-width: 660px;
    font-size: 1.06rem;
}

.keyword-orbit {
    position: relative;
    min-height: 400px;
    border-radius: 36px;
    border: 1px solid rgba(15,23,42,.08);
    background:
        radial-gradient(circle at 30% 20%, rgba(109, 94, 252, 0.18), transparent 35%),
        radial-gradient(circle at 78% 78%, rgba(34, 197, 94, 0.16), transparent 34%),
        rgba(255, 255, 255, 0.76);
    box-shadow: 0 34px 100px rgba(15,23,42,.11);
    overflow: hidden;
    perspective: 1200px;
}

.keyword-orbit::before {
    content: "";
    position: absolute;
    inset: 18%;
    border: 1px dashed rgba(109,94,252,.22);
    border-radius: 999px;
    animation: nexa-slow-spin 24s linear infinite;
}

.keyword-orbit span {
    position: absolute;
    left: 50%;
    top: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
    padding: .72rem 1rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, .88);
    border: 1px solid rgba(109, 94, 252, .14);
    box-shadow: 0 16px 46px rgba(15, 23, 42, .08);
    color: var(--nexa-ink);
    font-weight: 850;
    transform:
        translate(-50%, -50%)
        rotate(calc(var(--i) * 36deg))
        translateX(clamp(5.2rem, 14vw, 11.2rem))
        rotate(calc(var(--i) * -36deg))
        translateZ(calc((var(--i) + 1) * 4px));
    animation: nexa-keyword-float 5.8s ease-in-out infinite;
    animation-delay: calc(var(--i) * -0.32s);
}

.digital-banner {
    transform-style: preserve-3d;
}

.digital-banner__inner {
    position: relative;
}

.digital-banner__inner::after {
    content: "";
    position: absolute;
    inset: -8px;
    border-radius: 32px;
    border: 1px solid rgba(255,255,255,.55);
    transform: translateZ(-24px) scale(.98);
    pointer-events: none;
}

.category-card,
.page-card,
.product-card,
.post-card,
.feature-card,
.plugin-stack__cards span,
.faq-list details {
    will-change: transform, box-shadow;
}

.category-card:hover,
.page-card:hover,
.product-card:hover,
.post-card:hover,
.feature-card:hover,
.plugin-stack__cards span:hover,
.faq-list details:hover {
    transform: translate3d(0, -8px, 34px) rotateX(2deg);
}

.hero__stats li,
.trust-row span,
.nexa-filter,
.blog-category-pills a,
.keyword-orbit span {
    transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease;
}

.hero__stats li:hover,
.trust-row span:hover,
.nexa-filter:hover,
.blog-category-pills a:hover {
    transform: translateY(-4px) scale(1.015);
}

.motion-board .motion-product,
.fly-card,
.scroll-device__layer,
.shop-hero__cube span {
    filter: drop-shadow(0 26px 44px rgba(15, 23, 42, .16));
}

.motion-board {
    transform-style: preserve-3d;
    perspective: 1100px;
}

.motion-product--one { transform: translateZ(48px); }
.motion-product--two { transform: translateZ(92px); }
.motion-product--three { transform: translateZ(64px); }

.nexa-scroll-progress {
    height: 4px;
    background: linear-gradient(90deg, var(--nexa-accent), #8b5cf6, var(--nexa-accent-2));
    box-shadow: 0 0 24px rgba(109, 94, 252, .42);
}

.site-header.is-scrolled {
    background: rgba(255, 255, 255, .82);
    box-shadow: 0 20px 60px rgba(15, 23, 42, .08);
}

@keyframes nexa-aurora-drift {
    0%, 100% { scale: 1; opacity: .86; }
    50% { scale: 1.08; opacity: .58; }
}

@keyframes nexa-slow-spin {
    to { transform: rotate(360deg); }
}

@keyframes nexa-keyword-float {
    0%, 100% { margin-top: -8px; }
    50% { margin-top: 8px; }
}

@media (max-width: 980px) {
    .keyword-cloud__grid {
        grid-template-columns: 1fr;
    }
    .keyword-orbit {
        min-height: 340px;
    }
}

@media (max-width: 680px) {
    .keyword-orbit {
        min-height: 300px;
    }
    .keyword-orbit span {
        font-size: .78rem;
        padding: .55rem .75rem;
        transform:
            translate(-50%, -50%)
            rotate(calc(var(--i) * 36deg))
            translateX(clamp(4.1rem, 28vw, 7rem))
            rotate(calc(var(--i) * -36deg));
    }
    [data-nexa-kinetic] > .nexa-container {
        transform: none !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .nexa-front-page::before,
    .nexa-front-page::after,
    .keyword-orbit::before,
    .keyword-orbit span,
    [data-nexa-kinetic] > .nexa-container {
        animation: none !important;
        transform: none !important;
    }
}
