:root{
    color-scheme:dark;
    --color-bg:#08111f;
    --color-surface:#0d1b30;
    --color-surface-soft:#11223d;
    --color-border:#294363;
    --color-text:#ffffff;
    --color-muted:#9eb0c7;
    --color-primary:#356cff;
    --color-accent:#5edcff;
    --content-width:1100px;
}

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

html{
    scroll-behavior:smooth;
}

body{
    margin:0;
    overflow-x:hidden;
    background:var(--color-bg);
    color:var(--color-text);
    font-family:"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    line-height:1.5;
    text-rendering:optimizeLegibility;
    -webkit-font-smoothing:antialiased;
}

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

img,
svg{
    max-width:100%;
}

img{
    height:auto;
}

button,
input,
textarea,
select{
    font:inherit;
}

button,
a{
    -webkit-tap-highlight-color:transparent;
}

section,
footer{
    scroll-margin-top:90px;
}

.section-container{
    width:min(100%,var(--content-width));
    margin-inline:auto;
}

.container{
    width:min(100%,var(--content-width));
    margin-inline:auto;
}

.btn-primary,
.btn-secondary,
.btn-light,
.btn-whatsapp,
.header-start-button,
.mobile-start-button,
.faq-contact,
.comparison-button{
    position:relative;
    overflow:hidden;
    isolation:isolate;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    border-radius:10px;
    font-weight:800;
    line-height:1.2;
    text-decoration:none;
    transition:transform .2s ease,background-color .2s ease,border-color .2s ease,box-shadow .2s ease;
}

.btn-primary{
    padding:12px 24px;
    border:1px solid transparent;
    background:var(--color-primary);
    color:#fff;
}

.btn-light,
.btn-whatsapp{
    padding:14px 22px;
    border-radius:11px;
}

.btn-light{
    background:#fff;
    color:#14233a;
}

.btn-whatsapp{
    border:1px solid rgba(255,255,255,.35);
    background:rgba(255,255,255,.08);
    color:#fff;
}

.btn-primary::before,
.btn-secondary::before,
.btn-light::before,
.btn-whatsapp::before,
.header-start-button::before,
.mobile-start-button::before,
.faq-contact::before,
.comparison-button::before{
    content:"";
    position:absolute;
    top:0;
    left:-120%;
    z-index:-1;
    width:70%;
    height:100%;
    transform:skewX(-20deg);
    background:linear-gradient(90deg,transparent,rgba(255,255,255,.22),transparent);
    transition:left .55s ease;
}

.btn-primary:focus-visible,
.btn-secondary:focus-visible,
.btn-light:focus-visible,
.btn-whatsapp:focus-visible,
.header-start-button:focus-visible,
.mobile-start-button:focus-visible,
.faq-contact:focus-visible,
.comparison-button:focus-visible,
.menu-toggle:focus-visible,
.billing-toggle button:focus-visible{
    outline:3px solid rgba(94,220,255,.55);
    outline-offset:3px;
}

.reveal{
    opacity:0;
    transform:translateY(32px);
    transition:opacity .7s ease,transform .7s cubic-bezier(.22,.61,.36,1);
}

.reveal.visible{
    opacity:1;
    transform:none;
}

.feature-card,
.price-card,
.guarantee-card,
.faq-item{
    transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease;
}

@media (hover:hover){
    .btn-primary:hover::before,
    .btn-secondary:hover::before,
    .btn-light:hover::before,
    .btn-whatsapp:hover::before,
    .header-start-button:hover::before,
    .mobile-start-button:hover::before,
    .faq-contact:hover::before,
    .comparison-button:hover::before{
        left:150%;
    }

    .btn-primary:hover,
    .header-start-button:hover,
    .mobile-start-button:hover,
    .faq-contact:hover{
        transform:translateY(-2px);
        box-shadow:0 14px 30px rgba(37,99,235,.28);
    }

    .btn-whatsapp:hover{
        background:rgba(255,255,255,.16);
    }

    .feature-card:hover,
    .guarantee-card:hover{
        transform:translateY(-6px);
        border-color:#3b82f6;
        box-shadow:0 18px 38px rgba(0,0,0,.22);
    }

    .price-card:not(.featured):hover{
        transform:translateY(-6px);
        border-color:#3b82f6;
        box-shadow:0 18px 38px rgba(0,0,0,.22);
    }

    .price-card.featured:hover{
        transform:translateY(-18px);
        box-shadow:0 22px 52px rgba(37,99,235,.32),0 0 0 1px rgba(94,220,255,.18);
    }

    .faq-item:hover{
        border-color:#3b82f6;
        box-shadow:0 12px 28px rgba(0,0,0,.16);
    }
}

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

@media(max-width:520px){
    .btn-light,
    .btn-whatsapp{
        width:100%;
        text-align:center;
    }
}

@media(prefers-reduced-motion:reduce){
    html{
        scroll-behavior:auto;
    }

    *,
    *::before,
    *::after{
        scroll-behavior:auto !important;
        transition-duration:.01ms !important;
        animation-duration:.01ms !important;
        animation-iteration-count:1 !important;
    }

    .reveal,
    .reveal.visible{
        opacity:1;
        transform:none;
    }
}
