:root{

    --bg:#0F1A2E;
    --bg-soft:#172240;
    --card:rgba(44,70,128,.12);

    --text:#F8FAFC;
    --muted:#B8C5DC;

    --primary:#2C4680;
    --primary-light:#B8C5DC;

    --border:rgba(184,197,220,.1);

    --radius:22px;

    --shadow:
    0 30px 80px rgba(0,0,0,.35);

}

*{

    margin:0;
    padding:0;
    box-sizing:border-box;

}

html{

    scroll-behavior:smooth;

}

body{

    background:#0F1A2E;
    color:var(--text);

    font-family:"Inter",sans-serif;

    overflow-x:hidden;

    line-height:1.7;

}

body::before{

    content:"";

    position:fixed;

    inset:0;

    background:

    radial-gradient(circle at 15% 20%, rgba(44,70,128,.35), transparent 42%),

    radial-gradient(circle at 85% 75%, rgba(184,197,220,.1), transparent 40%);

    pointer-events:none;

    z-index:0;

}

.noise,
.header,
section,
footer{

    position:relative;

    z-index:1;

}

.container{

    width:min(1180px,92%);

    margin:auto;

}

.header{

    position:fixed;

    width:100%;

    top:0;

    z-index:100;

    backdrop-filter:blur(18px);

    background:rgba(15,26,46,.65);

    border-bottom:1px solid rgba(255,255,255,.04);

}

.header .container{

    display:flex;

    align-items:center;

    justify-content:space-between;

    padding:16px 0;

}

.logo img{

    height: 54px;

}

nav{

    display:flex;

    align-items:center;

    gap:34px;

}

nav a{

    text-decoration:none;

    color:var(--muted);

    font-size:.86rem;

    transition:.3s;

}

nav a:hover{

    color:white;

}

.button-nav{

    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
    padding:12px 20px;
    border-radius:999px;
    background:#B8C5DC;
    color:#2C4680;
    font-weight:600;
    transition:.35s;

}

.button-nav:hover{

    transform:translateY(-2px);

}

/* ===========================
   HERO — imagem de fundo com título sobreposto
=========================== */

.hero{
    position: relative;
    overflow:hidden;
    padding-top:96px;
    padding-bottom:80px;
}

.hero-visual{
    position:relative;
    width:100%;
    height:clamp(720px, 62vw, 1040px); /* mais alto ainda — mostra mais da imagem */
    overflow:hidden;
    background-image:url('assets/hero-bg.jpg');
    background-size:cover;
    background-position:center 8%; /* sobe o enquadramento da imagem para revelar mais rosto/corpo */
    background-repeat:no-repeat;
    background-color:#0F1A2E;
    display:flex;
    align-items:flex-end; /* empurra o título para a parte inferior */
    justify-content:center;
}

.hero-visual-img{
    display:none;
}

.hero-visual::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:1;
    background:linear-gradient(180deg,
        rgba(15,26,46,.25) 0%,
        rgba(15,26,46,0) 20%,
        rgba(15,26,46,.15) 42%,
        rgba(15,26,46,.65) 68%,
        rgba(15,26,46,.94) 100%); /* zona escura maior/mais forte no final para o título descansar nela */
}

.hero-visual-content{
    position:relative;
    z-index:2;
    text-align:center;
    padding:16px 24px 40px; /* título mais colado à base, já que a imagem agora é mais alta */
    max-width:1020px;
    margin:0 auto;
}

.hero-tag-badge{

    display:inline-flex;

    padding:10px 22px;

    border-radius:999px;

    background:none;

    border:none;

    backdrop-filter:none;

    color:#EAF0FA;

    font-size:.82rem;

    font-weight:700;

    letter-spacing:2px;

    text-transform:uppercase;

    text-shadow:0 2px 10px rgba(0,0,0,.65), 0 8px 30px rgba(0,0,0,.5);

    margin-bottom:18px;

}

.hero-visual-content h1{

    font-size:clamp(2.2rem, 5vw, 4rem);

    font-weight:800;

    line-height:1.1;

    letter-spacing:0.01em;

    text-transform:uppercase;

    color:#FFFFFF;

    text-shadow:0 2px 10px rgba(0,0,0,.65), 0 12px 40px rgba(0,0,0,.55);

    margin:0;

}

.hero-visual-content h1 .hero-title-line1,
.hero-visual-content h1 .hero-title-line2{

    display:block;

    color:#FFFFFF;

}

.hero-visual-content h1 .hero-title-line2{

    margin-top:8px;

}

.hero-below{

    text-align:center;

    display:flex;

    flex-direction:column;

    align-items:center;

    margin-top:40px;

}

.hero-subtitle{

    max-width:900px;

    white-space:nowrap;

    color:#EEF4FF;

    font-size:clamp(0.95rem, 1.9vw, 1.6rem);

    font-weight:600;

    line-height:1.42;

    margin:0 auto 22px;

    letter-spacing:0.01em;

    text-shadow:0 1px 0 rgba(0,0,0,.22);

}

@media (max-width: 600px){

    .hero-subtitle{

        white-space:normal;

    }

}

.hero-desc{

    max-width:640px;

    color:var(--muted);

    font-size:1.1rem;

    margin:0 auto 10px;

}

.hero-info{

    display:flex;

    justify-content:center;

    gap:50px;

    margin-top:46px;

}

.hero-info div{

    text-align:center;

}

.hero-info strong{

    display:block;

    font-size:2.2rem;

    font-weight:700;

    line-height:1.2;

    color:var(--text);

    white-space:nowrap;

}

.hero-info span{

    display:block;

    font-size:1.2rem;

    color:var(--muted);

    font-weight:400;

}

.hero-actions{

    margin-top:40px;

}

@media (max-width: 980px){

    .hero-visual{

        display:flex;
        flex-direction:column;
        align-items:stretch;
        height:auto;
        overflow:visible;
        background-image:none;
        margin-bottom:48px;

    }

    .hero-visual-img{

        display:block;
        position:static;
        width:100%;
        height:min(56.25vw, 480px);
        object-fit:cover;
        object-position:center 15%;

    }

    .hero-visual::before{

        display:none;

    }

    .hero-visual-content{

        position:static;
        padding-top:24px;

    }

}

@media (max-width: 768px){

    .hero{

        padding-top:96px;

    }

    .hero-visual-img{

        height:56.25vw;

    }

    .hero-visual-content{

        padding-bottom:28px;

    }

    .hero-info{

        gap:30px;

        flex-wrap:wrap;

    }

    .hero-info strong{

        font-size:1.6rem;

    }

    .hero-info span{

        font-size:1rem;

    }

}

@media (max-width: 480px){

    .hero-tag-badge{

        font-size:.72rem;

        padding:8px 16px;

        letter-spacing:1.5px;

    }

}

.button-primary{

    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
    background:#B8C5DC;
    color:#2C4680;
    padding:20px 40px;
    border-radius:999px;
    font-weight:700;
    font-size:1.05rem;
    transition:.35s;

}

.button-primary:hover{

    transform:translateY(-4px);

}

.button-secondary{

    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
    color:white;
    padding:18px 34px;
    border-radius:999px;
    border:1px solid rgba(255,255,255,.12);
    transition:.35s;

}

.button-secondary:hover{

    background:rgba(255,255,255,.05);

}

.hero-card{

    position:absolute;

    right:-35px;

    bottom:45px;

    width:290px;

    padding:30px;

    border-radius:24px;

    background:rgba(23,34,64,.92);

    backdrop-filter:blur(25px);

    border:1px solid var(--border);

    box-shadow:var(--shadow);

}

.hero-card small{

    color:#B8C5DC;

    text-transform:uppercase;

    letter-spacing:1px;

}

.hero-card h3{

    margin:12px 0;

    font-size:1.5rem;

}

.hero-card p{

    margin:0;

    color:var(--muted);

}

.brands{
    padding:70px 0;
    border-top:1px solid rgba(255,255,255,.04);
    border-bottom:1px solid rgba(255,255,255,.04);
    overflow:hidden;
}

.brands .container{
    display:flex;
    align-items:center;
    gap:24px;
}

.brands-title{
    color:var(--muted);
    white-space:nowrap;
    margin-right:20px;
}

.brands-marquee{
    flex:1;
    overflow:hidden;
    position:relative;
}

.brand-track{
    display:flex;
    align-items:center;
    gap:50px;
    width:max-content;
    animation:marquee 18s linear infinite;
}

.brand-track img{
    height:34px;
    opacity:.7;
    transition:.3s;
    flex-shrink:0;
}

.brand-track img:hover{
    opacity:1;
}

@keyframes marquee {
    from {
        transform: translateX(0);
    }
    to {
        transform: translateX(-50%);
    }
}

.intro{

    padding:140px 0;

}

.intro-grid{

    display:grid;

    grid-template-columns:.8fr 1.2fr;

    gap:80px;

}

.section-tag{

    color:#B8C5DC;

    letter-spacing:1px;

    font-size:.8rem;

}

.intro h2{

    margin-top:18px;

    font-size:3rem;

    line-height:1.15;

}

.intro p{

    color:var(--muted);

    font-size:1.1rem;

}

/* ===========================
   BENEFITS
=========================== */

.benefits{

    padding:140px 0;

}

.section-header{

    max-width:720px;

    margin-bottom:70px;

}

.section-header h2{

    margin-top:18px;

    font-size:3rem;

    line-height:1.15;

}

.benefits-grid{

    display:grid;

    grid-template-columns:repeat(3, minmax(0, 1fr));

    gap:24px;

    align-items:start;

}

.benefit-card{

    background:linear-gradient(145deg, rgba(44,70,128,.35), rgba(44,70,128,.18));

    border:1px solid rgba(184,197,220,.2);

    border-radius:28px;

    overflow:hidden;

    transition:.45s cubic-bezier(.2,.8,.2,1);

    backdrop-filter:blur(18px);

    height:auto;

    display:flex;

    flex-direction:column;

    box-shadow:0 8px 32px rgba(0,0,0,.15);

}

.benefit-card:hover{

    transform:translateY(-10px) scale(1.01);

    border-color:rgba(184,197,220,.3);

    box-shadow:
        0 20px 60px rgba(0,0,0,.3),
        0 0 40px rgba(44,70,128,.15);

}

.benefit-card.large{

    grid-row:span 2;

    min-height:auto;

}

/* --- Benefit Image --- */

.benefit-image{

    position:relative;

    width:100%;

    aspect-ratio:16/9;

    overflow:hidden;

    flex-shrink:0;

}

.benefit-image img{

    width:100%;

    height:100%;

    object-fit:cover;

    transition:.6s cubic-bezier(.2,.8,.2,1);

}

.benefit-card:hover .benefit-image img{

    transform:scale(1.08);

}

.benefit-image-overlay{

    position:absolute;

    inset:0;

    background:linear-gradient(
        to bottom,
        transparent 40%,
        rgba(15,26,46,.85) 100%
    );

    pointer-events:none;

}

/* --- Benefit Body --- */

.benefit-body{

    padding:28px 32px 36px;

    display:flex;

    flex-direction:column;

    gap:16px;

    flex:1;

}

.benefit-number{

    display:inline-flex;

    width:56px;

    height:56px;

    border-radius:50%;

    align-items:center;

    justify-content:center;

    background:linear-gradient(135deg, rgba(44,70,128,.4), rgba(44,70,128,.15));

    color:#B8C5DC;

    font-weight:800;

    font-size:1.2rem;

    border:1px solid rgba(184,197,220,.12);

    box-shadow:0 4px 20px rgba(44,70,128,.25);

    transition:.4s;

    flex-shrink:0;

}

.benefit-card:hover .benefit-number{

    background:linear-gradient(135deg, rgba(184,197,220,.25), rgba(44,70,128,.15));

    border-color:rgba(184,197,220,.3);

    box-shadow:0 4px 30px rgba(184,197,220,.15);

    transform:scale(1.05);

}

.benefit-card h3{

    font-size:1.6rem;

    margin-bottom:18px;

}

.benefit-card p{

    color:var(--muted);

    font-size:1rem;

    line-height:1.6;

}

.benefits-cta{

    margin-top:36px;

    display:flex;

    justify-content:center;

}

/* ===========================
   HIGHLIGHT
=========================== */

.highlight{

    padding:140px 0;

}

.highlight-grid{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:64px;

    align-items:center;

    margin-bottom:56px;

}

.highlight-content{

    max-width:none;

    margin:0;

    text-align:left;

}

.highlight-content .section-tag{

    display:block;

    color:#B8C5DC;

    font-size:clamp(1rem, 1.6vw, 1.2rem);

    font-weight:700;

    letter-spacing:0.04em;

    line-height:1.35;

    text-transform:uppercase;

}

.highlight-content h2{

    font-size:clamp(2rem, 3.2vw, 2.85rem);

    margin:16px 0 24px;

    line-height:1.15;

    color:#F8FAFC;

}

.highlight-lead{

    max-width:520px;

    margin:0 0 32px;

    color:#B8C5DC;

    font-size:1.05rem;

    line-height:1.7;

}

.highlight-strong{

    display:inline-block;

    max-width:100%;

    margin:0;

    padding:14px 22px;

    color:#0F1A2E;

    font-size:clamp(0.95rem, 1.5vw, 1.15rem);

    font-weight:800;

    letter-spacing:0.06em;

    line-height:1.35;

    text-transform:uppercase;

    background:#B8C5DC;

    border:none;

    border-radius:12px;

}

.highlight-pillars-grid{

    display:grid;

    grid-template-columns:1fr;

    gap:14px;

    margin:0;

    align-self:stretch;

    align-content:center;

}

.pillar-card{

    position:relative;

    display:flex;

    flex-direction:row;

    align-items:center;

    gap:22px;

    aspect-ratio:auto;

    min-height:88px;

    padding:22px 28px;

    background:rgba(44,70,128,.35);

    border:1px solid rgba(184,197,220,.18);

    border-radius:18px;

    box-shadow:none;

    overflow:hidden;

    transition:transform .35s ease, background .35s ease, border-color .35s ease;

}

.pillar-card:nth-child(even){

    background:rgba(184,197,220,.12);

    border-color:rgba(184,197,220,.22);

}

.pillar-card:nth-child(even) .pillar-index{

    color:rgba(248,250,252,.28);

}

.pillar-card:nth-child(even) h3{

    color:#F8FAFC;

}

.pillar-card::before{

    content:"";

    position:absolute;

    left:0;

    top:0;

    bottom:0;

    width:4px;

    background:#B8C5DC;

}

.pillar-card:nth-child(even)::before{

    background:#2C4680;

}

.pillar-card:hover{

    transform:translateY(-4px);

    background:rgba(44,70,128,.55);

    border-color:rgba(184,197,220,.35);

    box-shadow:none;

}

.pillar-index{

    flex:0 0 auto;

    color:rgba(184,197,220,.4);

    font-size:clamp(1.6rem, 2.2vw, 2rem);

    font-weight:800;

    line-height:1;

    letter-spacing:-0.04em;

}

.pillar-card h3{

    position:relative;

    z-index:1;

    margin:0;

    color:#F8FAFC;

    font-size:clamp(1.05rem, 1.5vw, 1.25rem);

    font-weight:700;

    line-height:1.25;

    letter-spacing:0.01em;

}

.highlight-list{

    list-style:none;

    display:grid;

    grid-template-columns:repeat(3, max-content);

    justify-content:start;

    column-gap:48px;

    row-gap:16px;

    max-width:100%;

    margin:0;

    text-align:left;

}

.highlight-list li{

    color:#F8FAFC;

    font-size:clamp(1.05rem, 1.5vw, 1.25rem);

    font-weight:600;

    line-height:1.4;

    white-space:nowrap;

}

/* ===========================
   NUMBERS
=========================== */

.numbers{

    padding:100px 0;

}

.numbers .container{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:24px;

}

.number-card{

    background:var(--card);

    border:1px solid var(--border);

    border-radius:24px;

    padding:45px;

    text-align:center;

}

.number-card h2{

    font-size:2.6rem;

    color:#B8C5DC;

    margin-bottom:12px;

}

.number-card p{

    color:var(--muted);

}

/* ===========================
   SPEAKERS
=========================== */

.speakers{

    padding:140px 0;

}

.speakers-marquee{

    overflow:hidden;

    position:relative;

}

.speaker-track{

    display:flex;

    gap:30px;

    width:max-content;

    animation:speakerMarquee 20s linear infinite;

}

.speaker-card{

    width:min(320px, 85vw);

    overflow:hidden;

    border-radius:30px;

    background:linear-gradient(145deg, rgba(44,70,128,.35), rgba(44,70,128,.18));

    border:1px solid rgba(184,197,220,.2);

    transition:.35s;

    flex-shrink:0;

}

.speaker-card:hover{

    transform:translateY(-8px);

}

.speaker-card img{

    width:100%;

    aspect-ratio:4/5;

    object-fit:cover;

}

.speaker-info{

    padding:32px;

}

.speaker-info h3{

    margin-bottom:8px;

}

.speaker-info span{

    color:#B8C5DC;

    display:block;

    margin-bottom:18px;

}

.speaker-info p{

    color:var(--muted);

}

@keyframes speakerMarquee {

    from {

        transform: translateX(0);

    }

    to {

        transform: translateX(-50%);

    }

}

/* ===========================
   TRANSFORMATION (Light Theme)
=========================== */

.transformation{

    padding:140px 0;

    background:#f5f7fb;

    position:relative;

}

.transformation::before{

    content:"";

    position:absolute;

    inset:0;

    background:

    radial-gradient(circle at 30% 50%, rgba(44,70,128,.05), transparent 45%),

    radial-gradient(circle at 70% 50%, rgba(184,197,220,.08), transparent 45%);

    pointer-events:none;

}

.transformation .section-header{

    position:relative;

    z-index:1;

}

.transformation .section-header .section-tag{

    color:#2C4680;

    font-weight:600;

}

.transformation .section-header h2{

    color:#0F1A2E;

}

.transformation-grid{

    display:grid;

    grid-template-columns:repeat(2, minmax(0, 1fr));

    gap:30px;

    position:relative;

    z-index:1;

}

.transformation-column{

    background:linear-gradient(145deg, rgba(9,18,38,.96), rgba(18,34,65,.96));

    border:1px solid rgba(255,255,255,.08);

    border-radius:28px;

    padding:36px;

    transition:.4s;

}

.transformation-column:hover{

    border-color:rgba(255,255,255,.18);

    box-shadow:0 18px 60px rgba(0,0,0,.45);

    transform:translateY(-4px);

}

.transformation-column.antes{

    background:linear-gradient(145deg, rgba(12,16,32,.98), rgba(30,16,40,.98));

    border-left:5px solid rgba(220,80,80,.85);

}

.transformation-column.depois{

    background:linear-gradient(145deg, rgba(10,22,42,.98), rgba(24,46,72,.98));

    border-left:5px solid rgba(80,220,150,.85);

}

.transformation-column h3{

    font-size:1.9rem;

    margin-bottom:24px;

    color:var(--text);

    letter-spacing:1.5px;

    font-weight:800;

    text-shadow:0 2px 20px rgba(0,0,0,.2);

}

.transformation-column.antes h3{

    color:#ffb0b0;

    text-shadow:0 0 30px rgba(220,80,80,.15);

}

.transformation-column.depois h3{

    color:#90f0c0;

    text-shadow:0 0 30px rgba(80,220,150,.15);

}

/* --- Topic List --- */

.topic-list{

    display:flex;

    flex-direction:column;

    gap:10px;

    padding:0;

    margin:0;

}

.topic-item{

    display:flex;

    align-items:center;

    gap:16px;

    background:rgba(255,255,255,.08);

    border-radius:14px;

    padding:18px 22px;

    font-size:1.15rem;

    font-weight:500;

    color:var(--text);

    transition:.35s cubic-bezier(.2,.8,.2,1);

    position:relative;

    border-bottom:1px solid rgba(255,255,255,.08);

    box-shadow:inset 0 1px 0 rgba(255,255,255,.06);

}

.topic-item:last-child{

    border-bottom:none;

}

.topic-item:hover{

    background:rgba(255,255,255,.14);

    transform:translateX(8px);

}

.transformation-column.antes .topic-item:hover{

    background:rgba(220,80,80,.22);

}

.transformation-column.depois .topic-item:hover{

    background:rgba(80,200,140,.20);

}

.topic-accent{

    width:5px;

    min-height:30px;

    height:100%;

    border-radius:6px;

    flex-shrink:0;

    align-self:stretch;

    transition:.3s;

}

.transformation-column.antes .topic-accent{

    background:linear-gradient(to bottom, #ff7a7a, rgba(220,80,80,.3));

    box-shadow:0 0 16px rgba(255,122,122,.2);

}

.transformation-column.depois .topic-accent{

    background:linear-gradient(to bottom, #5cf0a0, rgba(80,220,150,.3));

    box-shadow:0 0 16px rgba(92,240,160,.2);

}

.topic-item:hover .topic-accent{

    transform:scaleY(1.2);

}

.topic-item span{

    color:var(--text);

    font-size:1.15rem;

    line-height:1.5;

    font-weight:500;

    letter-spacing:0.5px;

}

.transformation-column.antes .topic-item span{

    color:#fce8e8;

    font-weight:600;

}

.transformation-column.depois .topic-item span{

    color:#e6faf1;

    font-weight:600;

}

/* ===========================
   FEEDBACKS (YouTube Videos)
=========================== */

.feedbacks{

    padding:100px 0 140px;

}

.videos-grid{

    display:grid;

    grid-template-columns:repeat(2, minmax(0, 1fr));

    gap:24px;

}

.video-card{

    position:relative;

    border-radius:20px;

    overflow:hidden;

    background:var(--card);

    border:1px solid var(--border);

    cursor:pointer;

    aspect-ratio:16/9;

    transition:.4s cubic-bezier(.2,.8,.2,1);

}

.video-card:hover{

    transform:translateY(-6px);

    border-color:rgba(184,197,220,.25);

    box-shadow:0 16px 48px rgba(0,0,0,.3);

}

.video-thumb{

    position:relative;

    width:100%;

    height:100%;

}

.video-thumb img{

    width:100%;

    height:100%;

    object-fit:cover;

    transition:.5s;

}

.video-card:hover .video-thumb img{

    transform:scale(1.05);

}

.video-play-btn{

    position:absolute;

    top:50%;

    left:50%;

    transform:translate(-50%,-50%);

    width:68px;

    height:68px;

    border-radius:50%;

    background:rgba(15,26,46,.7);

    backdrop-filter:blur(8px);

    border:2px solid rgba(255,255,255,.2);

    display:flex;

    align-items:center;

    justify-content:center;

    color:white;

    transition:.35s;

    z-index:2;

}

.video-card:hover .video-play-btn{

    background:rgba(44,70,128,.85);

    border-color:rgba(184,197,220,.4);

    transform:translate(-50%,-50%) scale(1.08);

}

.video-play-btn svg{

    width:28px;

    height:28px;

    margin-left:3px;

}

/* ===========================
   VIDEO MODAL
=========================== */

.video-modal{

    position:fixed;

    inset:0;

    z-index:9999;

    display:flex;

    align-items:center;

    justify-content:center;

    opacity:0;

    pointer-events:none;

    transition:opacity .4s ease;

}

.video-modal.active{

    opacity:1;

    pointer-events:auto;

}

.video-modal-backdrop{

    position:absolute;

    inset:0;

    background:rgba(0,0,0,.85);

    backdrop-filter:blur(12px);

}

.video-modal-content{

    position:relative;

    width:min(900px,94%);

    aspect-ratio:16/9;

    border-radius:20px;

    overflow:hidden;

    background:#000;

    box-shadow:0 40px 120px rgba(0,0,0,.6);

    transform:scale(.92) translateY(20px);

    transition:transform .45s cubic-bezier(.2,.8,.2,1);

}

.video-modal.active .video-modal-content{

    transform:scale(1) translateY(0);

}

.video-modal-close{

    position:absolute;

    top:-48px;

    right:0;

    background:rgba(255,255,255,.08);

    border:1px solid rgba(255,255,255,.15);

    border-radius:50%;

    width:40px;

    height:40px;

    display:flex;

    align-items:center;

    justify-content:center;

    color:white;

    cursor:pointer;

    transition:.3s;

    z-index:10;

}

.video-modal-close:hover{

    background:rgba(255,255,255,.15);

    transform:scale(1.08);

}

.video-modal-player{

    width:100%;

    height:100%;

}

.video-modal-player iframe{

    width:100%;

    height:100%;

    border:none;

}

@media(max-width:680px){

    .videos-grid{

        grid-template-columns:1fr;

    }

    .highlight-pillars-grid{

        grid-template-columns:1fr;

        gap:12px;

        margin:0;

    }

    .pillar-card{

        min-height:76px;

        padding:18px 20px;

        border-radius:16px;

        gap:16px;

    }

    .pillar-index{

        font-size:1.5rem;

    }

    .highlight-strong{

        padding:12px 18px;

        letter-spacing:0.04em;

        border-radius:10px;

    }

    .highlight-list{

        grid-template-columns:1fr;

        column-gap:0;

    }

    .highlight-list li{

        white-space:normal;

    }

}

/* ===========================
   FINAL CTA
=========================== */

.final-cta{

    padding:0 0 120px;

}

.final-cta-box{

    background:linear-gradient(135deg, rgba(44,70,128,.35), rgba(184,197,220,.15));

    border:1px solid rgba(255,255,255,.2);

    border-radius:32px;

    padding:56px;

    text-align:center;

}

.final-cta-box h2{

    font-size:2.2rem;

    margin-bottom:18px;

}

.final-cta-box p{

    color:var(--muted);

    max-width:760px;

    margin:0 auto 30px;

}

/* ===========================
   TIMELINE
=========================== */

.schedule{

    padding:140px 0;

}

.timeline{

    display:grid;

    gap:28px;

}

.timeline-item{

    background:var(--card);

    border:1px solid var(--border);

    border-radius:24px;

    padding:45px;

}

.timeline-item span{

    color:#B8C5DC;

    text-transform:uppercase;

    letter-spacing:1px;

}

.timeline-item h3{

    margin:18px 0;

    font-size:1.7rem;

}

.timeline-item p{

    color:var(--muted);

}

/* ===========================
   CTA
=========================== */

.cta{

    padding:160px 0;

}

.cta-box{

    padding:90px;

    border-radius:36px;

    text-align:center;

    background:linear-gradient(135deg,#1B2D54,#2C4680);

    box-shadow:var(--shadow);

}

.cta-box h2{

    margin:20px auto;

    max-width:760px;

    font-size:3.2rem;

    line-height:1.15;

}

.cta-box p{

    max-width:650px;

    margin:0 auto 45px;

    color:#B8C5DC;

}

.countdown{

    display:flex;

    justify-content:center;

    gap:22px;

    margin-bottom:45px;

}

.countdown div{

    min-width:95px;

    padding:20px;

    border-radius:18px;

    background:rgba(255,255,255,.08);

}

.countdown strong{

    display:block;

    font-size:2rem;

}

.countdown span{

    color:#B8C5DC;

    font-size:.85rem;

}

/* ===========================
   FOOTER
=========================== */

.footer{

    padding-top:120px;

    border-top:1px solid rgba(255,255,255,.05);

}

.footer-grid{

    display:grid;

    grid-template-columns:2fr 1fr 1fr;

    gap:70px;

    padding-bottom:80px;

}

.footer-logo{

    height:46px;

    margin-bottom:25px;

}

.footer p{

    color:var(--muted);

    max-width:420px;

}

.footer h4{

    margin-bottom:22px;

}

.footer a{

    display:block;

    margin-bottom:14px;

    text-decoration:none;

    color:var(--muted);

    transition:.3s;

}

.footer a:hover{

    color:white;

}

.copyright{

    border-top:1px solid rgba(255,255,255,.05);

    padding:28px 0;

    color:var(--muted);

    text-align:center;

}

/* ===========================
   RESPONSIVO
=========================== */

@media(max-width:980px){

.intro-grid,
.highlight-grid{

grid-template-columns:1fr;

gap:48px;

}

.highlight-list{

grid-template-columns:repeat(2, max-content);

column-gap:36px;

}

.benefits-grid,
.speakers-grid,
.transformation-grid,
.numbers .container,
.footer-grid{

grid-template-columns:1fr;

}

.section-header h2,
.highlight-content h2,
.intro h2,
.cta-box h2,
.transformation .section-header h2{

font-size:2.2rem;

}

.transformation .section-header h2{

font-size:1.8rem;

}

nav{

display:none;

}

.hero-card{

position:relative;

right:auto;
bottom:auto;

margin-top:20px;

width:100%;

}

.countdown{

flex-wrap:wrap;

}

.cta-box{

padding:50px 30px;

}

}

.hidden{

opacity:0;

transform:translateY(60px);

transition:1s cubic-bezier(.2,.8,.2,1);

}

.show{

opacity:1;

transform:translateY(0);

}

.header.scrolled{

background:rgba(15,26,46,.92);

box-shadow:0 15px 40px rgba(0,0,0,.25);

}

.button-primary{

position:relative;

overflow:hidden;

}

.button-primary::before{

content:"";

position:absolute;

left:var(--x);

top:var(--y);

width:0;

height:0;

background:rgba(255,255,255,.2);

border-radius:50%;

transform:translate(-50%,-50%);

transition:.6s;

}

.button-primary:hover::before{

width:350px;

height:350px;

}

/* ===========================
   MODAL DE INSCRIÇÃO
=========================== */

.inscricao-modal{

    position:fixed;

    inset:0;

    z-index:9998;

    display:flex;

    align-items:center;

    justify-content:center;

    opacity:0;

    pointer-events:none;

    transition:opacity .4s ease;

}

.inscricao-modal.active{

    opacity:1;

    pointer-events:auto;

}

.inscricao-modal-backdrop{

    position:absolute;

    inset:0;

    background:rgba(0,0,0,.85);

    backdrop-filter:blur(12px);

}

.inscricao-modal-content{

    position:relative;

    width:min(520px,94%);

    max-height:90vh;

    overflow-y:auto;

    border-radius:28px;

    background:linear-gradient(145deg, rgba(15,26,46,.98), rgba(23,34,64,.98));

    border:1px solid rgba(184,197,220,.2);

    box-shadow:0 40px 120px rgba(0,0,0,.6);

    transform:scale(.92) translateY(20px);

    transition:transform .45s cubic-bezier(.2,.8,.2,1);

    padding:48px 40px 40px;

}

.inscricao-modal.active .inscricao-modal-content{

    transform:scale(1) translateY(0);

}

.inscricao-modal-close{

    position:absolute;

    top:16px;

    right:16px;

    background:rgba(255,255,255,.08);

    border:1px solid rgba(255,255,255,.15);

    border-radius:50%;

    width:40px;

    height:40px;

    display:flex;

    align-items:center;

    justify-content:center;

    color:white;

    cursor:pointer;

    transition:.3s;

    z-index:10;

}

.inscricao-modal-close:hover{

    background:rgba(255,255,255,.15);

    transform:scale(1.08);

}

.inscricao-modal-header{

    text-align:center;

    margin-bottom:32px;

}

.inscricao-modal-header h2{

    font-size:1.8rem;

    margin-bottom:8px;

}

.inscricao-modal-header p{

    color:var(--muted);

    font-size:1rem;

}

.inscricao-form{

    display:grid;

    gap:20px;

}

.form-group{

    display:flex;

    flex-direction:column;

    gap:8px;

}

.form-group label{

    font-size:.9rem;

    font-weight:600;

    color:var(--text);

    letter-spacing:.5px;

}

.form-group input{

    width:100%;

    padding:16px 18px;

    border-radius:14px;

    border:1px solid rgba(184,197,220,.2);

    background:rgba(255,255,255,.06);

    color:var(--text);

    font-size:1rem;

    font-family:"Inter",sans-serif;

    transition:.3s;

    outline:none;

    box-sizing:border-box;

}

.form-group input::placeholder{

    color:rgba(184,197,220,.4);

}

.form-group input:focus{

    border-color:rgba(184,197,220,.5);

    background:rgba(255,255,255,.1);

    box-shadow:0 0 0 3px rgba(184,197,220,.1);

}

.form-group-full{

    grid-column:1 / -1;

}

.form-message{

    font-size:.9rem;

    text-align:center;

    min-height:24px;

    line-height:1.5;

}

.form-message.success{

    color:#5cf0a0;

}

.form-message.error{

    color:#ff7a7a;

}

.form-submit{

    width:100%;

    cursor:pointer;

    border:none;

    font-family:"Inter",sans-serif;

    position:relative;

}

.form-submit:disabled{

    opacity:.6;

    cursor:not-allowed;

    transform:none !important;

}

.btn-loading{

    display:inline-flex;

    align-items:center;

    gap:10px;

}

.btn-loading svg{

    animation:spin 1s linear infinite;

}

@keyframes spin{

    from{transform:rotate(0deg)}

    to{transform:rotate(360deg)}

}

@media(max-width:680px){

    .inscricao-modal-content{

        padding:32px 24px 28px;

    }

    .inscricao-modal-header h2{

        font-size:1.4rem;

    }

}