/* ==========================================================================
   Kaeryss — Estilos Refinados
   /*========================================================================== */

/* Cursor */
#custom-cursor{
    position:fixed;
    width:8px;
    height:8px;
    background:#B99256;
    border-radius:50%;
    pointer-events:none;
    z-index:9999;
    transform:translate(-50%,-50%);
    opacity:.45;
    transition:
        transform .25s ease,
        opacity .25s ease,
        background .25s ease;
}

/* Scrollbar */

.scrollbar-none::-webkit-scrollbar{
    display:none;
}

.scrollbar-none{
    -ms-overflow-style:none;
    scrollbar-width:none;
}

/* Imagens */

.cinematic-img{
    transition:
        transform 1.6s cubic-bezier(.16,1,.3,1),
        filter .8s ease,
        opacity .8s ease;
    filter:brightness(.96) contrast(.96);
}

.group:hover .cinematic-img{
    transform:scale(1.015);
    filter:brightness(1);
}

/* Scroll Reveal */

.reveal-on-scroll{
    opacity:0;
    transform:translateY(30px);
    transition:
        opacity .9s ease,
        transform .9s ease;
    will-change:opacity,transform;
}

.reveal-on-scroll.is-visible{
    opacity:1;
    transform:none;
}

/* Seleção */

::selection{
    background:#C6A86A;
    color:#1B2330;
}

/* Scroll */

html{
    scroll-behavior:smooth;
}

/* Corpo */

body{
    background:#F6F4EF;
    color:#202020;
}

/* Fundo escuro */

.bg-navy{
    background:#102031 !important;
}

.bg-navy-deep{
    background:#162739 !important;
}

.bg-jet{
    background:#1B2432 !important;
}

/* Fundo claro */

.bg-soft{
    background:#F6F4EF;
}

.bg-soft-2{
    background:#FBFAF8;
}

/* Cards */

.card-premium{
    background:rgba(255,255,255,.72);
    backdrop-filter:blur(14px);
    border:1px solid rgba(198,168,106,.18);
    box-shadow:
        0 15px 45px rgba(0,0,0,.05);
}

/* Botões */

.btn-premium{
    transition:.35s;
}

.btn-premium:hover{
    transform:translateY(-2px);
    box-shadow:0 14px 35px rgba(198,168,106,.25);
}

/* Imagens */

img{
    border-radius:4px;
}

/* Espaçamento */

section{
    overflow:hidden;
}

/* Tipografia */

p{
    line-height:1.9;
    letter-spacing:.01em;
}

h1,h2,h3{
    letter-spacing:.02em;
}

/* Links */

a{
    transition:.35s;
}

a:hover{
    opacity:.92;
}
/*==================================================
HEADER
==================================================*/

#header{

    background:transparent;

    transition:.35s ease;

}

#header.scrolled{

    background:rgba(35,55,74,.92);

    backdrop-filter:blur(18px);

    border-bottom:1px solid rgba(197,164,106,.15);

}

/*==================================================
BOTÃO HAMBÚRGUER
==================================================*/
#menuBtn{
    display:none;
    }
    
    @media(max-width:1024px){
    #menuBtn{
    display:flex;
    }
    }

#menuBtn .line{

    width:22px;

    height:1.5px;

    background:#FCFBF8;

    transition:.35s;

    display:block;

}

#menuBtn{

    gap:5px;

}

/*==================================================
OVERLAY
==================================================*/

#overlay{

    position:fixed;

    inset:0;

    background:rgba(0,0,0,.25);

    backdrop-filter:blur(3px);

    opacity:0;

    visibility:hidden;

    transition:.35s;

    z-index:90;

}

#overlay.active{

    opacity:1;

    visibility:visible;

}
/*==================================================
MENU
==================================================*/
#mobileMenu{

    position:fixed;
    top:0;
    right:-100%;

    width:82%;
    max-width:360px;
    height:100vh;

    background:#23374A;

    z-index:100;

    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;

    transition:.45s cubic-bezier(.16,1,.3,1);

    padding:40px;

    box-shadow:-20px 0 60px rgba(0,0,0,.25);

}

#mobileMenu.active{

    right:0;

}

#mobileMenu nav{

    width:100%;

    display:flex;

    flex-direction:column;

    align-items:center;

    justify-content:center;

    gap:26px;

    text-align:center;

}

.menu-item{

    display:block;

    width:100%;

    text-align:center;

    color:#C6A86A;

    font-family:inherit;

    font-size:18px;

    font-weight:400;

    letter-spacing:.02em;

    text-decoration:none;

    transition:.3s;

}

.menu-item:hover{

    color:#F2DFC0;

    transform:translateX(4px);

}
.menu-cta{

    margin-top:55px;

    width:220px;

    height:50px;

    display:flex;

    align-items:center;

    justify-content:center;

    background:#C6A86A;

    color:#23374A;

    border-radius:3px;

    font-size:14px;

    font-weight:600;

    text-decoration:none;

    transition:.3s;

}

.menu-cta:hover{

    background:#D6B883;

    color:#23374A;

}

#closeMenu{

    position:absolute;

    top:25px;

    right:25px;

    border:0;

    background:none;

    color:#C6A86A;

    font-size:28px;

    cursor:pointer;

}

/*==================================================
HERO
==================================================*/

.hero-bg{

    position:absolute;

    inset:0;

    background:
    radial-gradient(circle at top,
    #3A5873 0%,
    #2B445A 28%,
    #1E3145 60%,
    #102031 100%);

}

.hero-light{

    position:absolute;

    top:-180px;

    left:50%;

    transform:translateX(-50%);

    width:700px;

    height:700px;

    background:radial-gradient(circle,
    rgba(197,164,106,.14),
    transparent 70%);

    filter:blur(80px);

    pointer-events:none;

}

#inicio{

    padding-top:140px;

    padding-bottom:100px;

}

#inicio h1{

    text-wrap:balance;

}

#inicio p{

    color:#FFFFFF;

}

.hero-btn{

    display:inline-flex;

    justify-content:center;

    align-items:center;

    padding:18px 42px;

    background:#C5A46A;

    color:#102031;

    border-radius:999px;

    font-size:.78rem;

    font-weight:600;

    letter-spacing:.18em;

    text-transform:uppercase;

    text-decoration:none;

    transition:.35s;

    box-shadow:
    0 10px 30px rgba(197,164,106,.25);

}

.hero-btn:hover{

    transform:translateY(-3px);

    background:#D7BA84;

    box-shadow:
    0 18px 40px rgba(197,164,106,.35);

}

@media(max-width:768px){

.hero-light{

    width:420px;

    height:420px;

}

#inicio{

    padding-top:120px;

}

.hero-btn{

    width:100%;

    max-width:320px;

}

}

.btn-main{
    display:inline-flex;
    justify-content:center;
    align-items:center;
    
    padding:18px 42px;
    
    background:#C5A46A;
    color:#102031;
    
    border-radius:999px;
    
    font-size:.75rem;
    font-weight:600;
    letter-spacing:.18em;
    text-transform:uppercase;
    
    transition:.35s;
    
    box-shadow:0 10px 30px rgba(197,164,106,.25);
    }
    
    .btn-main:hover{
    transform:translateY(-3px);
    background:#D7BA84;
    box-shadow:0 18px 40px rgba(197,164,106,.35);
    }

    .bg-navy{
        background:#1B344A !important;
        }
        
        .bg-navy-deep{
        background:#243F56 !important;
        }

    /* =========================================================
   CORREÇÃO FINAL — TEXTOS SEMPRE VISÍVEIS
   ========================================================= */

/* Todo texto que estava usando graytext passa a ser branco */
.text-graytext,
.text-graytext\/80,
.text-graytext\/70 {
    color: #FFFFFF !important;
}

/* Textos de conteúdo em fundos escuros */
.bg-navy p,
.bg-navy-deep p,
.bg-jet p,
.editorial-journey p,
section p {
    color: #FFFFFF;
}

/* Listas da seção de alinhamento */
.bg-navy-deep li,
.bg-navy li {
    color: #FFFFFF;
}

/* =========================================================
   ALINHAMENTO — TEXTO BRANCO, NUNCA APAGADO
   ========================================================= */

#reflexao p,
#essencia p,
#funciona p,
#idealizadora p,
#diferenciais p,
#manifesto p {
    color: #FFFFFF !important;
}

/* =========================================================
   LABELS E TEXTOS DO FORMULÁRIO
   ========================================================= */

#formulario label,
#formulario p,
#formulario .text-graytext {
    color: #FFFFFF !important;
}

/* =========================================================
   BOTÕES — PADRÃO HERO
   ========================================================= */

.btn-main,
.hero-btn {
    border-radius: 999px !important;
}

/* =========================================================
   BOTÕES DO FORMULÁRIO — MAIS PREMIUM
   ========================================================= */

#prev-btn,
#next-btn {
    border-radius: 999px !important;
}
/* =========================================================
   HIERARQUIA PREMIUM — TÍTULOS
   ========================================================= */

   h1,
   h2,
   h3,
   h4 {
       color: #FFFFFF;
   }
   
   /* Títulos e elementos que devem permanecer dourados */
   .text-gold,
   .text-gold h1,
   .text-gold h2,
   .text-gold h3,
   .text-gold h4 {
       color: #C5A46A !important;
   }
   
   /* Manifesto: respeita a alternância dourado/branco */
   #manifesto p {
       color: #FFFFFF !important;
   }
   
   #manifesto p.text-gold {
       color: #C5A46A !important;
   }
/* =========================================================
   MENU DESKTOP / MOBILE
   ========================================================= */

@media (min-width: 1025px) {
    #menuBtn {
        display: none !important;
    }
}

@media (max-width: 1024px) {
    #menuBtn {
        display: flex !important;
    }
}

/* =========================================================
   CARDS — TEXTO BRANCO
   ========================================================= */

.card-premium p,
.bg-navy\/40 p,
.bg-navy\/60 p,
.bg-navy\/80 p {
    color: #FFFFFF !important;
}

/* =========================================================
   FORMULÁRIO — PLACEHOLDER LEGÍVEL
   ========================================================= */

#formulario input::placeholder,
#formulario textarea::placeholder {
    color: rgba(255,255,255,.65);
}

/* =========================================================
   TEXTO DO FOOTER
   ========================================================= */

footer,
footer p,
footer li,
footer a {
    color: #FFFFFF;
}

footer a:hover {
    color: #C5A46A;
}

#manifesto .font-serif {
    font-size: 1.75rem !important;
    line-height: 1.5 !important;
}

@media (min-width: 768px) {
    #manifesto .font-serif {
        font-size: 2.5rem !important;
        line-height: 1.4 !important;
    }
}

@media (min-width: 1024px) {
    #manifesto .font-serif {
        font-size: 2.75rem !important;
        line-height: 1.4 !important;
    }
}

#manifesto .text-graytext {
    font-size: 1rem !important;
    line-height: 1.8 !important;
}

/* =========================================================
   FOOTER — PREMIUM COMPACTO
   ========================================================= */

   footer {
    padding-top: 48px !important;
    padding-bottom: 28px !important;
}

footer > div {
    gap: 40px !important;
}

footer .grid {
    gap: 28px !important;
}

@media (max-width: 767px) {

    footer {
        padding-top: 42px !important;
        padding-bottom: 24px !important;
        padding-left: 24px !important;
        padding-right: 24px !important;
    }

    footer > div {
        gap: 32px !important;
    }

    footer .grid {
        gap: 24px !important;
        padding-top: 0 !important;
    }

    footer .grid > div {
        gap: 10px !important;
    }

    footer .grid ul {
        margin-top: 0;
    }

    footer .grid ul li {
        margin-bottom: 0;
    }

    footer .btn-main {
        width: 100%;
        padding: 15px 20px;
        font-size: .68rem;
        letter-spacing: .12em;
    }

    footer > div > div:last-child {
        padding-top: 24px !important;
        gap: 10px !important;
        text-align: center;
    }
}
.whatsapp-float {
    position: fixed;
    right: 22px;
    bottom: 22px;
    width: 54px;
    height: 54px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #25D366;
    color: #FFFFFF;
    border-radius: 50%;
    z-index: 80;
    box-shadow: 0 10px 30px rgba(0,0,0,.22);
    transition: .35s ease;
}

.whatsapp-float svg {
    width: 27px;
    height: 27px;
    fill: currentColor;
}

.whatsapp-float:hover {
    transform: translateY(-3px) scale(1.04);
}

@media (max-width: 767px) {
    .whatsapp-float {
        width: 50px;
        height: 50px;
        right: 18px;
        bottom: 18px;
    }

    .whatsapp-float svg {
        width: 25px;
        height: 25px;
    }
}

/* =========================================================
   ÍCONES PREMIUM — DIFERENCIAIS
   ========================================================= */

   .feature-icon {
    width: 42px;
    height: 42px;
    margin-bottom: 24px;
    color: #C5A46A;
}

.feature-icon svg {
    width: 100%;
    height: 100%;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.25;
    stroke-linecap: round;
    stroke-linejoin: round;
    transition: all .4s ease;
}

.group:hover .feature-icon {
    transform: translateY(-2px);
}

.group:hover .feature-icon svg {
    color: #D7BA84;
}
/* =========================================================
   REFINAMENTO PREMIUM — KAERYSS
   ========================================================= */

   .premium-image {
    border-radius: 18px;
    border: 1px solid rgba(197,164,106,.18);
    overflow: hidden;
}

.premium-image img {
    border-radius: 18px;
}

.editorial-journey {
    background:
        linear-gradient(
            180deg,
            #1B344A 0%,
            #233D52 48%,
            #1B344A 100%
        ) !important;
}

.editorial-scene {
    margin-bottom: 0;
}

.editorial-scene > div[class*="h-[420px]"],
.editorial-scene > div[class*="h-[540px]"] {
    border-radius: 18px;
}

#idealizadora img {
    border-radius: 18px;
}

footer img {
    max-width: 170px;
    height: auto;
}

@media (max-width: 767px) {

    .editorial-journey {
        padding-top: 72px !important;
        padding-bottom: 72px !important;
    }

    .editorial-journey .max-w-6xl {
        gap: 0;
    }

    .editorial-scene {
        margin-bottom: 72px;
    }

    .editorial-scene > div[class*="h-[420px]"],
    .editorial-scene > div[class*="h-[540px]"] {
        height: 300px !important;
    }

    @media (max-width: 767px) {

        #idealizadora > div > div:first-child {
            height: 380px !important;
        }
    
        #idealizadora img {
            height: 100% !important;
            width: 100%;
            object-fit: cover;
        }
    
    }}

    /* =========================================================
   DETALHES EXCLUSIVOS
========================================================= */

.experience-detail-card {
    min-height: 170px;
    padding: 30px 28px;

    display: flex;
    flex-direction: column;
    justify-content: center;

    background: rgba(27, 52, 74, .58);

    border: 1px solid rgba(197, 164, 106, .20);
    border-radius: 18px;

    transition:
        transform .35s ease,
        border-color .35s ease,
        background .35s ease;
}

.experience-detail-card:hover {
    transform: translateY(-3px);
    border-color: rgba(197, 164, 106, .55);
    background: rgba(35, 55, 74, .75);
}

.experience-detail-card__label {
    display: block;
    margin-bottom: 10px;

    color: #C5A46A;

    font-size: 9px;
    font-weight: 500;
    letter-spacing: .22em;
    text-transform: uppercase;
}

.experience-detail-card h3 {
    color: #FFFFFF !important;
    line-height: 1.2;
}


/* REDES */

.experience-connect {
    margin-top: 55px;
    padding: 26px 4px;

    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 25px;

    border-top: 1px solid rgba(197, 164, 106, .18);
    border-bottom: 1px solid rgba(197, 164, 106, .18);
}

.experience-connect__links {
    display: flex;
    align-items: center;
    gap: 12px;
}

.experience-social {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;

    min-width: 140px;
    padding: 11px 18px;

    border: 1px solid rgba(197, 164, 106, .30);
    border-radius: 999px;

    color: #FFFFFF;
    text-decoration: none;

    font-size: 10px;
    letter-spacing: .12em;
    text-transform: uppercase;

    transition: .35s ease;
}

.experience-social svg {
    width: 17px;
    height: 17px;

    fill: none;
    stroke: currentColor;
    stroke-width: 1.5;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.experience-social:hover {
    color: #C5A46A;
    border-color: #C5A46A;
    transform: translateY(-2px);
}


/* MOBILE */

@media (max-width: 767px) {

    .experience-detail-card {
        min-height: 145px;
        padding: 22px 18px;
        border-radius: 15px;
    }

    .experience-detail-card__label {
        font-size: 8px;
        letter-spacing: .16em;
    }

    .experience-detail-card h3 {
        font-size: 1.25rem;
    }

    .experience-connect {
        margin-top: 42px;
        padding: 24px 0;

        flex-direction: column;
        align-items: center;
    }

    .experience-connect__links {
        width: 100%;
        justify-content: center;
    }

    .experience-social {
        min-width: 0;
        flex: 1;
        padding: 11px 12px;
        font-size: 9px;
    }

    .experience-details__closing {
        padding-top: 0;
    }

}
/* =========================================================
   FOOTER KAERYSS — MINIMALISTA / PREMIUM
   ========================================================= */

   .kaeryss-footer {
    padding-top: 28px;
    padding-bottom: 16px;
}

.kaeryss-footer__inner {
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
    text-align: center;
}

/* REDES E CONTATO */

.kaeryss-footer__socials {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 22px;
    margin-bottom: 20px;
}

.kaeryss-footer__social {
    width: 22px;
    height: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #c5a46a;
    opacity: .82;
    transition:
        opacity .3s ease,
        transform .3s ease;
}

.kaeryss-footer__social svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.45;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.kaeryss-footer__social:hover {
    opacity: 1;
    transform: translateY(-2px);
}


/* INFORMAÇÕES LEGAIS */

.kaeryss-footer__legal {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 7px;
    padding-top: 14px;
    border-top: 1px solid rgba(255,255,255,.045);

    color: rgba(255,255,255,.42);
    font-size: 9px;
    font-weight: 300;
    letter-spacing: .04em;
}

.kaeryss-footer__legal a {
    color: rgba(255,255,255,.42);
    text-decoration: none;
    transition: color .3s ease;
}

.kaeryss-footer__legal a:hover {
    color: #c5a46a;
}

.kaeryss-footer__separator {
    color: rgba(197,164,106,.25);
}


/* COPYRIGHT + MADAME WEB */

.kaeryss-footer__bottom {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px 18px;

    margin-top: 12px;

    color: rgba(255,255,255,.25);
    font-size: 8px;
    font-weight: 300;
    letter-spacing: .05em;
}

.kaeryss-footer__credit {
    color: rgba(255,255,255,.20);
}

.kaeryss-footer__credit a {
    color: rgba(197,164,106,.22);
    text-decoration: none;
    transition: color .3s ease;
}

.kaeryss-footer__credit a:hover {
    color: rgba(197,164,106,.55);
}


/* MOBILE */

@media (max-width: 767px) {

    .kaeryss-footer {
        padding: 22px 18px 12px;
    }
    .kaeryss-footer__social {
        width: 25px;
        height: 25px;
    }
    
    .kaeryss-footer__social svg {
        width: 21px;
        height: 21px;
    }
    
    .kaeryss-footer__legal {
        font-size: 10px;
    }
    
    .kaeryss-footer__bottom {
        font-size: 9px;
    }
}
/* =========================================================
   EDITORIAL — FUNDO FLUIDO
   ========================================================= */

   .editorial-journey {
    position: relative;
    background:
        radial-gradient(
            circle at 50% 0%,
            rgba(197,164,106,.10) 0%,
            rgba(58,88,115,.18) 22%,
            transparent 48%
        ),
        radial-gradient(
            circle at 0% 55%,
            rgba(58,88,115,.28) 0%,
            transparent 42%
        ),
        radial-gradient(
            circle at 100% 80%,
            rgba(197,164,106,.06) 0%,
            transparent 38%
        ),
        linear-gradient(
            180deg,
            #1B344A 0%,
            #243F56 32%,
            #1D354A 65%,
            #162739 100%
        ) !important;
}

/* Luz atmosférica para quebrar o chapado */

.editorial-journey::before {
    content:"";
    position:absolute;
    inset:0;
    background:
        radial-gradient(
            ellipse at 50% 15%,
            rgba(255,255,255,.045),
            transparent 45%
        );
    pointer-events:none;
}

.editorial-journey > div {
    position:relative;
    z-index:1;
}


/* =========================================================
   CTA FINAL — LIMPO E PREMIUM
   ========================================================= */

.editorial-cta-final {
    padding: 40px 20px 10px;
    max-width: 900px;
    margin: 0 auto;
}

.editorial-cta-final h3 {
    max-width: 760px;
    margin: 20px auto 0;
}

.editorial-cta-final__availability {
    margin: 20px auto 4px;
    color:#C5A46A !important;
    font-size:.72rem;
    font-weight:500;
    letter-spacing:.14em;
    text-transform:uppercase;
}

.editorial-cta-final .btn-main {
    margin-top: 8px;
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width:767px) {

    .editorial-cta-final {
        padding: 24px 8px 4px;
    }

    .editorial-cta-final h3 {
        font-size:2rem !important;
        line-height:1.2 !important;
    }

    .editorial-cta-final__availability {
        font-size:.62rem;
        letter-spacing:.10em;
        line-height:1.7;
        max-width:280px;
    }

}

/* =========================================================
   AJUSTE FINAL — TIPOGRAFIA FLUIDA (TÍTULOS)
   Resolve: títulos gigantes no notebook a 100% de zoom
   e títulos enormes no mobile. Usa clamp() para escalar
   suavemente entre mobile e desktop, sem breakpoints fixos.
   Não altera cores, pesos, espaçamentos ou HTML.
   ========================================================= */

/* Título do Hero (#hero-title) */
#hero-title {
    font-size: clamp(1.9rem, 4.5vw + 0.9rem, 3.2rem) !important;
}

/* Títulos de seção padrão (h2: Reflexão, Como funciona, Idealizadora,
   Diferenciais, Para quem é a Kaeryss, Detalhes Exclusivos) */
.font-serif.text-3xl.md\:text-5xl {
    font-size: clamp(1.6rem, 3.4vw + 0.75rem, 2.65rem) !important;
}

/* Títulos maiores (Manifesto e CTA final "Sua próxima conexão") */
.font-serif.text-3xl.md\:text-5xl.lg\:text-6xl {
    font-size: clamp(1.75rem, 4vw + 0.8rem, 2.9rem) !important;
}

/* Títulos da seção editorial (cenas com imagem) */
.font-serif.text-3xl.md\:text-4xl {
    font-size: clamp(1.55rem, 2.6vw + 0.7rem, 2.15rem) !important;
}

/* Títulos "Seu próximo passo começa aqui" e CTA final editorial */
.font-serif.text-4xl.md\:text-5xl {
    font-size: clamp(1.8rem, 3.4vw + 0.85rem, 2.65rem) !important;
}

/* =========================================================
   AJUSTE FINAL — IMAGEM DA DANIELA (SEÇÃO IDEALIZADORA)
   Resolve o corte que escondia o rosto: reposiciona o foco
   da imagem para cima, mantendo object-fit: cover.
   Não altera tamanho do container nem HTML.
   ========================================================= */

#idealizadora img {
    object-fit: contain !important;
    object-position: center center;
}

@media (max-width: 767px) {
    #idealizadora img {
        object-fit: contain !important;
        height: 100% !important;
        width: 100%;
    }
}

/* =========================================================
   AJUSTE FINAL — LINHAS FINAS EM DOURADO
   Quebra o efeito "chapado" do fundo com um traço fino e
   discreto no topo das seções que já têm borda superior.
   Puramente decorativo (não interfere no layout).
   ========================================================= */

section[class*="border-t"] {
    position: relative;
}

section[class*="border-t"]::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 140px;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(197,164,106,.55), transparent);
    pointer-events: none;
}

/* =========================================================
   AJUSTE FINAL — IMAGENS COM MAIS LUZ + SOMBRA SUAVE
   Sem preto: sombra em tons de navy e dourado, combinando
   com a paleta da marca. Brilho passa a ser o padrão (não
   só no hover), e intensifica um pouco mais ao passar o
   mouse. Não altera botões nem o glow dourado deles.
   ========================================================= */

.cinematic-img {
    filter: brightness(1.03) contrast(1.02);
}

.group:hover .cinematic-img {
    filter: brightness(1.08) contrast(1.03);
}

.premium-image,
.editorial-scene > div[class*="h-[420px]"],
.editorial-scene > div[class*="h-[540px]"],
#idealizadora > div > div:first-child {
    box-shadow:
        0 22px 50px rgba(16,32,49,.38),
        0 6px 18px rgba(197,164,106,.10);
    transition: box-shadow .45s ease, transform .45s ease;
}

.premium-image:hover,
.editorial-scene > div[class*="h-[420px]"]:hover,
.editorial-scene > div[class*="h-[540px]"]:hover,
#idealizadora > div > div:first-child:hover {
    box-shadow:
        0 26px 60px rgba(16,32,49,.42),
        0 10px 26px rgba(197,164,106,.18);
    transform: translateY(-3px);
}