/* =====================================================================
   BLACK 2026 | ISA PRA SEMPRE :: HERO v6
   Carregado por ultimo. So afeta a hero (a8a8343) e as duas faixas
   antigas que ficavam entre a hero e a secao 2.
   - coluna esquerda compacta, dimensionada pela largura da tela, para
     caber sempre dentro da altura da arte (sem sobra preta sob a Isa);
   - uma unica faixa reta, dentro da hero, encostada na base da arte;
   - CTA com metal mais luminoso no centro e reflexo rapido + pausa.
   Formulario: so acabamento. Campos, mascara, validacao e envio iguais.
   ===================================================================== */

.elementor-element-a8a8343 {
    --r6-h: clamp(38px, 3vw, 50px);            /* altura da faixa */
    --r6-ink: #22170b;
}

/* ---------- faixas antigas: removidas ---------- */
.elementor-11664 > .elementor-element.elementor-element-c7d8d39,
.elementor-11664 > .elementor-element.elementor-element-8651e5d { display: none !important; }

/* ---------- hero: base para a faixa ---------- */
.elementor-11664 .elementor-element.elementor-element-a8a8343 {
    position: relative;
    overflow: hidden;
}

/* =====================================================================
   DESKTOP (acima de 1024px)
   Altura da hero = altura da arte (100vw x 1882/3344). O conteudo foi
   dimensionado em vw para caber nessa altura em qualquer largura.
   ===================================================================== */
@media (min-width: 1025px) {
    .elementor-11664 .elementor-element.elementor-element-a8a8343 {
        --min-height: calc(100vw * 1882 / 3344) !important;
        --padding-top: clamp(18px, 2vw, 40px) !important;
        --padding-bottom: calc(var(--r6-h) + clamp(14px, 1.5vw, 30px)) !important;
    }
    /* arte ancorada na base: se sobrar altura, a sobra fica no topo escuro, nunca sob a Isa */
    .elementor-11664 .elementor-element.elementor-element-a8a8343:not(.elementor-motion-effects-element-type-background) {
        background-image: url("hero/hero-desktop.webp") !important;
        background-size: 100% auto !important;
        background-position: center bottom !important;
        background-color: #120b07 !important;
    }
    .elementor-11664 .elementor-element.elementor-element-6bad79e { --width: 42% !important; }

    /* ritmo vertical */
    .elementor-11664 .elementor-element.elementor-element-85a83a8 { margin-bottom: clamp(12px, 1.35vw, 26px) !important; }
    .elementor-11664 .elementor-element.elementor-element-85a83a8 img.hero26-logo { width: clamp(170px, 14.2vw, 260px) !important; }
    .elementor-11664 .elementor-element.elementor-element-a49a6a4 { margin-bottom: clamp(10px, 1.1vw, 20px) !important; }
    .elementor-11664 .elementor-element.elementor-element-0ab7275 { margin-bottom: clamp(14px, 1.5vw, 26px) !important; }

    .hero26-headline .hero26-h1 { font-size: min(clamp(36px, 3.85vw, 60px), 10.8cqi) !important; margin-bottom: .14em !important; }
    .hero26-headline .hero26-h2 { font-size: clamp(19px, 1.8vw, 30px) !important; line-height: 1.2 !important; max-width: 17.5em !important; }

    .hero26-sub::before { width: 44px !important; margin-bottom: clamp(9px, .9vw, 14px) !important; }
    .elementor-11664 .elementor-element.elementor-element-0ab7275 .hero26-sub {
        font-size: clamp(14px, 1.04vw, 16px) !important;
        line-height: 1.62 !important;
        max-width: 34em !important;             /* 2 linhas */
        text-wrap: balance !important;
        color: rgba(255, 255, 255, .8) !important;
    }

    .elementor-11664 .elementor-element-a8a8343 ._form_21 ._form_element { margin-bottom: clamp(8px, .7vw, 12px) !important; }
    .elementor-11664 .elementor-element-a8a8343 ._form_21 .inputtext,
    .elementor-11664 .elementor-element-a8a8343 .iti input { height: clamp(42px, 3.25vw, 50px) !important; padding-top: 0 !important; padding-bottom: 0 !important; }
    .elementor-11664 .elementor-element-a8a8343 ._form_21 .button {
        min-height: clamp(46px, 3.6vw, 56px) !important;
        padding-top: 0 !important; padding-bottom: 0 !important;
        margin-top: 2px !important;
        font-size: clamp(13px, .98vw, 15px) !important;
    }
}
/* laptops estreitos: coluna um pouco mais larga para o texto quebrar menos */
@media (min-width: 1025px) and (max-width: 1279px) {
    .elementor-11664 .elementor-element.elementor-element-6bad79e { --width: 45% !important; }
}

/* =====================================================================
   TABLET DEITADO (768 a 1024px, paisagem): mesma logica do desktop
   ===================================================================== */
@media (min-width: 768px) and (max-width: 1024px) and (orientation: landscape) {
    .elementor-11664 .elementor-element.elementor-element-a8a8343 {
        --min-height: calc(100vw * 1882 / 3344) !important;
        --padding-top: 16px !important;
        --padding-bottom: calc(var(--r6-h) + 12px) !important;
    }
    .elementor-11664 .elementor-element.elementor-element-a8a8343:not(.elementor-motion-effects-element-type-background) {
        background-image: url("hero/hero-desktop.webp") !important;
        background-size: 100% auto !important;
        background-position: center bottom !important;
        background-color: #120b07 !important;
    }
    .elementor-11664 .elementor-element.elementor-element-6bad79e { --width: 46% !important; }
    .elementor-11664 .elementor-element.elementor-element-85a83a8 { margin-bottom: 10px !important; }
    .elementor-11664 .elementor-element.elementor-element-85a83a8 img.hero26-logo { width: 160px !important; }
    .elementor-11664 .elementor-element.elementor-element-a49a6a4 { margin-bottom: 10px !important; }
    .elementor-11664 .elementor-element.elementor-element-0ab7275 { margin-bottom: 12px !important; }
    .hero26-headline .hero26-h1 { font-size: min(34px, 10.8cqi) !important; }
    .hero26-headline .hero26-h2 { font-size: 18px !important; }
    .hero26-sub::before { margin-bottom: 8px !important; }
    .elementor-11664 .elementor-element.elementor-element-0ab7275 .hero26-sub { font-size: 13.5px !important; line-height: 1.55 !important; max-width: 27em !important; }
    .elementor-11664 .elementor-element-a8a8343 ._form_21 ._form_element { margin-bottom: 7px !important; }
    .elementor-11664 .elementor-element-a8a8343 ._form_21 .inputtext,
    .elementor-11664 .elementor-element-a8a8343 .iti input { height: 40px !important; padding-top: 0 !important; padding-bottom: 0 !important; }
    .elementor-11664 .elementor-element-a8a8343 ._form_21 .button { min-height: 44px !important; padding-top: 0 !important; padding-bottom: 0 !important; margin-top: 2px !important; }
}

/* =====================================================================
   TABLET EM PE e MOBILE: altura = conteudo + faixa, sem sobra
   ===================================================================== */
@media (min-width: 768px) and (max-width: 1024px) and (orientation: portrait) {
    .elementor-11664 .elementor-element.elementor-element-a8a8343 { --padding-bottom: calc(var(--r6-h) + 28px) !important; }
    .elementor-11664 .elementor-element.elementor-element-0ab7275 .hero26-sub { font-size: 16px !important; max-width: 30em !important; }
}
@media (max-width: 767px) {
    .elementor-11664 .elementor-element.elementor-element-a8a8343 { --padding-bottom: calc(var(--r6-h) + 22px) !important; }
    .elementor-11664 .elementor-element.elementor-element-0ab7275 .hero26-sub {
        font-size: 14.5px !important;
        line-height: 1.6 !important;
        max-width: 22em !important;             /* 3 linhas */
    }
    .elementor-11664 .elementor-element-a8a8343 ._form_21 .inputtext,
    .elementor-11664 .elementor-element-a8a8343 .iti input { height: 46px !important; padding-top: 0 !important; padding-bottom: 0 !important; }
    .elementor-11664 .elementor-element-a8a8343 ._form_21 .button { min-height: 52px !important; padding-top: 0 !important; padding-bottom: 0 !important; }
}
@media (max-width: 767px) and (max-height: 700px) {
    .elementor-11664 .elementor-element.elementor-element-0ab7275 .hero26-sub { font-size: 14px !important; line-height: 1.55 !important; }
    .elementor-11664 .elementor-element-a8a8343 ._form_21 .inputtext,
    .elementor-11664 .elementor-element-a8a8343 .iti input { height: 42px !important; }
    .elementor-11664 .elementor-element-a8a8343 ._form_21 .button { min-height: 48px !important; }
}

/* =====================================================================
   FAIXA UNICA :: reta, 100% da largura, na base da hero
   ===================================================================== */
.hero26-ribbon {
    position: absolute;
    left: 0; right: 0; bottom: 0;
    height: var(--r6-h);
    z-index: 5;
    overflow: hidden;
    display: flex;
    align-items: center;
    pointer-events: none;
    background-color: #dcc38d;
    background-image:
        linear-gradient(180deg, rgba(255, 255, 255, .55) 0, rgba(255, 255, 255, 0) 1px),          /* filete de luz no topo */
        repeating-linear-gradient(90deg, rgba(255, 255, 255, .05) 0 1px, rgba(255, 255, 255, 0) 1px 5px),  /* textura escovada */
        linear-gradient(90deg, rgba(150, 110, 52, .22) 0%, rgba(255, 248, 226, 0) 22%, rgba(255, 248, 226, .18) 50%, rgba(255, 248, 226, 0) 78%, rgba(150, 110, 52, .22) 100%),
        linear-gradient(180deg, #f3e5c3 0%, #e2cb96 48%, #c9aa6c 100%);
    border-top: 1px solid rgba(255, 244, 214, .6);
    box-shadow: 0 -10px 26px rgba(0, 0, 0, .28), inset 0 -1px 0 rgba(120, 86, 38, .45);
}
.hero26-ribbon-track {
    display: flex;
    flex-wrap: nowrap;
    width: max-content;
    will-change: transform;
    animation: r6-slide 120s linear infinite;
}
.hero26-ribbon .r6-group {
    display: flex;
    align-items: center;
    flex-shrink: 0;
    white-space: nowrap;
}
.hero26-ribbon .r6-t {
    font-family: "Bigola Display", "Laviossa", Georgia, serif;
    font-weight: 400;
    font-size: clamp(13px, 1.08vw, 17px);
    line-height: 1;
    letter-spacing: .24em;
    text-transform: uppercase;
    color: var(--r6-ink);
    text-shadow: 0 1px 0 rgba(255, 249, 232, .5);
    padding-left: .24em;                         /* compensa o tracking para centralizar entre losangos */
}
.hero26-ribbon .r6-g {
    font-size: clamp(6px, .5vw, 8px);
    line-height: 1;
    color: #8f6a2e;
    opacity: .8;
    padding: 0 clamp(26px, 3.2vw, 54px);
    transform: translateY(-1px);
}
/* loop sem emenda: o trilho tem duas metades identicas e anda exatamente uma metade */
@keyframes r6-slide {
    from { transform: translate3d(0, 0, 0); }
    to   { transform: translate3d(-50%, 0, 0); }
}
@media (max-width: 767px) {
    .elementor-element-a8a8343 { --r6-h: 36px; }
    .hero26-ribbon .r6-t { font-size: 12.5px; letter-spacing: .2em; }
    .hero26-ribbon .r6-g { padding: 0 22px; }
    .hero26-ribbon-track { animation-duration: 90s; }
}

/* =====================================================================
   CTA :: centro mais luminoso, extremidades mais profundas;
   reflexo fino e rapido (~1s), depois pausa de ~5s
   ===================================================================== */
.elementor-element-a8a8343 {
    --cta-tint: linear-gradient(90deg,
        rgba(128, 88, 32, .30) 0%,
        rgba(255, 240, 200, 0) 26%,
        rgba(255, 247, 222, .26) 50%,
        rgba(255, 240, 200, 0) 74%,
        rgba(128, 88, 32, .30) 100%);
    --cta-sheen: linear-gradient(108deg,
        rgba(255, 252, 240, 0) 44%,
        rgba(255, 250, 232, .28) 48%,
        rgba(255, 253, 245, .68) 50%,
        rgba(255, 250, 232, .28) 52%,
        rgba(255, 252, 240, 0) 56%);
}
.elementor-11664 .elementor-element-a8a8343 ._form_21 .button {
    background-size: 240% 100%, 100% 100%, 100% 100% !important;
    animation: cta26-sheen6 6s linear 1.2s infinite !important;
    transition: transform .3s ease, box-shadow .3s ease, filter .3s ease !important;
}
@keyframes cta26-sheen6 {
    0%            { background-position: 140% 0, 0 0, 0 0; }
    17%           { background-position: -40% 0, 0 0, 0 0; }
    17.01%, 100%  { background-position: 140% 0, 0 0, 0 0; }
}
.elementor-11664 .elementor-element-a8a8343 ._form_21 .button:hover {
    transform: translateY(-1px) !important;
    filter: brightness(1.04) !important;
}
.elementor-11664 .elementor-element-a8a8343 ._form_21 .button:active { transform: translateY(0) !important; }

/* formulario: fundo escuro translucido, borda dourada discreta, placeholder legivel */
.elementor-11664 .elementor-element-a8a8343 ._form_21 .inputtext {
    background: rgba(12, 8, 5, .55) !important;
    border-color: rgba(216, 179, 106, .26) !important;
    padding-left: 16px;
}
.elementor-11664 .elementor-element-a8a8343 ._form_21 .inputtext::placeholder { color: rgba(245, 238, 228, .58) !important; }
.elementor-11664 .elementor-element-a8a8343 ._form_21 .campo1 { padding-left: 96px !important; }

@media (prefers-reduced-motion: reduce) {
    .hero26-ribbon-track { animation: none !important; }
    .elementor-11664 .elementor-element-a8a8343 ._form_21 .button { animation: none !important; }
}
