/*
Theme Name: Base Criminal 2026 V.2
Theme URI: https://basecriminal.com.br
Author: Base Criminal
Description: Tema personalizado do site Base Criminal.
Version: 2.1
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: basecriminal
*/

:root {
            --ink: #171716;
            --paper: #f5f1e9;
            --cream: #ebe4d5;
            --gold: #bd8b45;
            --gold-light: #d7b274;
            --muted: #746f66;
            --white: #fffdf8;
            --line: rgba(23, 23, 22, .14);
            --dark-line: rgba(255, 253, 248, .2);
        }

        * {
            box-sizing: border-box;
            margin: 0;
            padding: 0;
        }

        html {
            scroll-behavior: smooth;
        }

        body {
            background: var(--paper);
            color: var(--ink);
            font-family: "DM Sans", sans-serif;
            line-height: 1.55;
        }

        a {
            color: inherit;
        }

        .site {
            overflow: hidden;
        }

        .shell {
            width: min(1160px, 90vw);
            margin: 0 auto;
        }

        .eyebrow {
            color: var(--gold);
            font-size: .72rem;
            font-weight: 700;
            letter-spacing: .2em;
            text-transform: uppercase;
        }

        h1,
        h2,
        h3 {
            font-family: "Playfair Display", serif;
            font-weight: 600;
            line-height: 1.08;
        }

        h1 {
            font-size: clamp(2.7rem, 6vw, 5.75rem);
            letter-spacing: -.045em;
            max-width: 720px;
        }

        h2 {
            font-size: clamp(2rem, 4vw, 3.7rem);
            letter-spacing: -.035em;
        }

        .topbar {
            border-bottom: 1px solid var(--dark-line);
            color: var(--paper);
            font-size: .75rem;
            letter-spacing: .12em;
            padding: 18px 0;
            text-transform: uppercase;
        }

        .topbar .shell {
            align-items: center;
            display: flex;
            justify-content: space-between;
        }

        .hero {
            background: var(--ink);
            color: var(--paper);
            min-height: 760px;
            position: relative;
        }

        .hero::before {
            background: linear-gradient(90deg, rgba(23, 23, 22, .99) 15%, rgba(23, 23, 22, .8) 50%, rgba(23, 23, 22, .15)), url("https://images.unsplash.com/photo-1450101499163-c8848c66ca85?auto=format&fit=crop&w=1800&q=85") center/cover;
            content: "";
            inset: 0;
            opacity: .82;
            position: absolute;
        }

        .hero-content {
            min-height: 680px;
            padding: 110px 0 80px;
            position: relative;
        }

        .hero-copy {
            max-width: 770px;
        }

        .hero h1 {
            margin: 24px 0;
        }

        .hero h1 em {
            color: var(--gold-light);
            font-style: normal;
        }

        .hero-lead {
            color: #d8d1c5;
            font-size: clamp(1rem, 2vw, 1.25rem);
            max-width: 610px;
        }

        .hero-meta {
            border-top: 1px solid var(--dark-line);
            display: flex;
            gap: 38px;
            margin-top: 58px;
            max-width: 650px;
            padding-top: 23px;
        }

        .hero-meta strong {
            color: var(--gold-light);
            display: block;
            font-family: "Playfair Display", serif;
            font-size: 1.45rem;
        }

        .hero-meta span {
            color: #bcb4a8;
            display: block;
            font-size: .78rem;
            margin-top: 4px;
            text-transform: uppercase;
        }

        .button {
            background: var(--gold);
            border: 1px solid var(--gold);
            color: var(--ink);
            display: inline-flex;
            font-size: .82rem;
            font-weight: 700;
            letter-spacing: .08em;
            margin-top: 32px;
            padding: 16px 24px;
            text-decoration: none;
            text-transform: uppercase;
            transition: background .2s, color .2s, transform .2s;
        }

        .button:hover {
            background: var(--gold-light);
            transform: translateY(-2px);
        }

        .button.outline {
            background: transparent;
            border-color: var(--gold);
            color: var(--gold-light);
        }

        .section {
            padding: 112px 0;
        }

        .section.dark {
            background: var(--ink);
            color: var(--paper);
        }

        .section-head {
            margin-bottom: 55px;
            max-width: 740px;
        }

        .section-head h2 {
            margin-top: 16px;
        }

        .section-head p {
            color: var(--muted);
            margin-top: 22px;
            max-width: 570px;
        }

        .dark .section-head p {
            color: #bcb4a8;
        }

        .problem {
            display: grid;
            grid-template-columns: .8fr 1.2fr;
            gap: 90px;
        }

        .problem h2 {
            max-width: 400px;
        }

        .problem-copy {
            color: #514d46;
            font-size: 1.1rem;
        }

        .problem-copy p+p {
            margin-top: 20px;
        }

        .problem-copy strong {
            color: var(--ink);
        }

        .numbered {
            border-top: 1px solid var(--line);
            display: grid;
            gap: 0;
            margin-top: 28px;
        }

        .numbered article {
            border-bottom: 1px solid var(--line);
            display: grid;
            gap: 25px;
            grid-template-columns: 55px 1fr;
            padding: 24px 0;
        }

        .numbered b {
            color: var(--gold);
            font-family: "Playfair Display", serif;
            font-size: 1.4rem;
        }

        .numbered h3 {
            font-size: 1.25rem;
            margin-bottom: 7px;
        }

        .numbered p {
            color: var(--muted);
            font-size: .95rem;
        }

        .method-grid {
            display: grid;
            gap: 14px;
            grid-template-columns: repeat(3, 1fr);
        }

        .method {
            border: 1px solid var(--dark-line);
            min-height: 250px;
            padding: 28px;
        }

        .method span {
            color: var(--gold-light);
            font-family: "Playfair Display", serif;
            font-size: 2rem;
        }

        .method h3 {
            font-size: 1.35rem;
            margin: 44px 0 10px;
        }

        .method p {
            color: #bcb4a8;
            font-size: .92rem;
        }

        .deliver {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 80px;
        }

        .deliver-list {
            list-style: none;
        }

        .deliver-list li {
            border-bottom: 1px solid var(--line);
            font-family: "Playfair Display", serif;
            font-size: 1.4rem;
            padding: 18px 0;
        }

        .deliver-list li::before {
            color: var(--gold);
            content: "✦";
            font-family: "DM Sans", sans-serif;
            font-size: .9rem;
            margin-right: 15px;
        }

        .before-after {
            display: grid;
            grid-template-columns: 1fr 1fr;
        }

        .state {
            padding: 52px;
        }

        .state.before {
            background: #e6dfd2;
        }

        .state.after {
            background: var(--gold);
        }

        .state h3 {
            font-size: 2rem;
            margin: 14px 0 26px;
        }

        .state ul {
            list-style: none;
        }

        .state li {
            border-top: 1px solid rgba(23, 23, 22, .18);
            padding: 15px 0;
        }

        .coach {
            align-items: center;
            display: grid;
            gap: 80px;
            grid-template-columns: .8fr 1.2fr;
        }

        .coach img {
            aspect-ratio: 4 / 5;
            object-fit: cover;
            width: 100%;
        }

        .coach-copy p {
            color: #bcb4a8;
            font-size: 1.05rem;
            margin: 22px 0;
            max-width: 570px;
        }

        .credentials {
            border-top: 1px solid var(--dark-line);
            display: grid;
            gap: 18px;
            grid-template-columns: repeat(2, 1fr);
            margin-top: 30px;
            padding-top: 24px;
        }

        .credentials strong {
            color: var(--gold-light);
            display: block;
            font-family: "Playfair Display", serif;
            font-size: 1.55rem;
        }

        .credentials span {
            color: #bcb4a8;
            font-size: .82rem;
        }

        .offer {
            background: #dfd4c0;
        }

        .offer-wrap {
            align-items: center;
            display: grid;
            gap: 70px;
            grid-template-columns: 1.05fr .95fr;
        }

        .offer h2 {
            max-width: 520px;
        }

        .offer p {
            color: #514d46;
            margin-top: 20px;
            max-width: 490px;
        }

        .price-box {
            background: var(--ink);
            color: var(--paper);
            padding: 38px;
        }

        .price-box h3 {
            color: var(--gold-light);
            font-size: 1.75rem;
        }

        /* Escopado para a landing page: evita conflito com preços do WooCommerce. */
        .event-page .price {
            font-family: "Playfair Display", serif;
            font-size: 3.8rem;
            margin: 18px 0;
        }

        .event-page .price small {
            color: #bcb4a8;
            font-family: "DM Sans", sans-serif;
            font-size: .85rem;
        }

        .price-box ul {
            color: #d8d1c5;
            list-style: none;
        }

        .price-box li {
            border-top: 1px solid var(--dark-line);
            padding: 11px 0;
        }

        .faq {
            border-top: 1px solid var(--line);
        }

        details {
            border-bottom: 1px solid var(--line);
            padding: 22px 0;
        }

        summary {
            cursor: pointer;
            font-family: "Playfair Display", serif;
            font-size: 1.2rem;
            list-style: none;
        }

        summary::after {
            color: var(--gold);
            content: "+";
            float: right;
            font-family: "DM Sans", sans-serif;
        }

        details p {
            color: var(--muted);
            margin-top: 14px;
            max-width: 700px;
        }

        .form-wrap {
            background: var(--ink);
            color: var(--paper);
            padding: 100px 0;
        }

        .form-grid {
            display: grid;
            gap: 70px;
            grid-template-columns: .9fr 1.1fr;
        }

        .form-intro p {
            color: #bcb4a8;
            margin-top: 20px;
            max-width: 390px;
        }

        .messages {
            margin: 20px 0;
        }

        .message-ok,
        .message-error,
        .message-notice {
            border: 1px solid var(--gold);
            color: var(--paper);
            font-size: .9rem;
            margin-bottom: 8px;
            padding: 10px 12px;
        }

        .form-grid form {
            display: grid;
            gap: 18px;
            grid-template-columns: 1fr 1fr;
        }

        .field {
            display: grid;
            gap: 7px;
        }

        .field.full,
        .integracao-note {
            grid-column: 1 / -1;
        }

        .form-grid label {
            color: #d8d1c5;
            font-size: .78rem;
            letter-spacing: .08em;
            text-transform: uppercase;
        }

        .form-grid input {
            background: transparent;
            border: 0;
            border-bottom: 1px solid var(--dark-line);
            color: var(--white);
            font: inherit;
            outline: 0;
            padding: 12px 0;
            width: 100%;
        }

        .form-grid input:focus {
            border-color: var(--gold-light);
        }

        .form-grid input::placeholder {
            color: #827b70;
        }

        .integracao-note {
            color: #827b70;
            font-size: .78rem;
        }

        footer {
            background: var(--ink);
            border-top: 1px solid var(--dark-line);
            color: #827b70;
            font-size: .78rem;
            padding: 25px 0;
            text-align: center;
        }

        @media (max-width: 780px) {
            .topbar .shell {
                align-items: flex-start;
                flex-direction: column;
                gap: 7px;
            }

            .hero {
                min-height: 650px;
            }

            .hero-content {
                min-height: 570px;
                padding-top: 75px;
            }

            .hero-meta {
                gap: 18px;
                margin-top: 42px;
            }

            .problem,
            .deliver,
            .coach,
            .offer-wrap,
            .form-grid {
                gap: 42px;
                grid-template-columns: 1fr;
            }

            .section {
                padding: 78px 0;
            }

            .method-grid,
            .before-after {
                grid-template-columns: 1fr;
            }

            .state {
                padding: 35px 25px;
            }

            .coach img {
                max-height: 470px;
            }

            .form-grid form {
                grid-template-columns: 1fr;
            }

            .field.full,
            .integracao-note {
                grid-column: auto;
            }
        }

        .event-page {
            background: #160d0c;
            background-attachment: fixed;
            background-image: url("imgs/Logo-transparent.png");
            background-position: center;
            background-repeat: no-repeat;
            background-size: min(78vw, 900px) auto;
            color: #fff8ed;
            font-family: "DM Sans", sans-serif;
            min-height: 100vh;
            overflow: hidden;
            position: relative;
        }

        .event-page::before {
            display: none;
        }

        .event-page > * {
            position: relative;
            z-index: 3;
        }

        .event-hero,
        .event-section,
        .event-cronograma,
        .event-price,
        .event-form,
        .next-immersion,
        .event-footer {
            background-attachment: scroll;
        }

        .event-section {
            background-color: rgba(33, 18, 17, .96) !important;
        }

        .event-section.alt {
            background-color: rgba(53, 26, 23, .96) !important;
        }

        .event-cronograma,
        .event-form,
        .event-footer {
            background-color: rgba(22, 13, 12, .96) !important;
        }

        .event-price {
            background-color: rgba(36, 18, 17, .96) !important;
        }

        .next-immersion {
            background-color: rgba(53, 26, 23, .96) !important;
        }

        .event-shell {
            margin: 0 auto;
            max-width: 1160px;
            width: min(92vw, 1160px);
            
        }

        .event-hero {
            background: linear-gradient(90deg, rgba(22, 13, 12, .98), rgba(54, 25, 21, .72)), center / cover;
            min-height: 720px;
            padding: 28px 0 90px;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .event-nav {
            align-items: center;
            border-bottom: 1px solid rgba(227, 180, 100, .35);
            display: flex;
            justify-content: center;
            gap: 24px;
            padding-bottom: 20px;
        }

        .event-brand {
            align-items: center;
            display: inline-flex;
            flex-shrink: 0;
        }

        .event-brand img {
            display: block;
            height: 82px;
            object-fit: contain;
            width: 82px;
        }

        .event-nav a {
            color: #fff8ed;
            font-size: .78rem;
            font-weight: 700;
            letter-spacing: .12em;
            text-decoration: none;
            text-transform: uppercase;
            transition: color .2s, transform .2s;
        }

        .event-nav a:hover {
            color: #f0c678;
            transform: translateY(-2px);
        }

        .event-hero-copy {
            margin: 0 auto;
            max-width: 760px;
            padding: 120px 0 0;
            text-align: center;
        }

        .event-kicker {
            color: #e0b96f;
            font-size: .8rem;
            font-weight: 700;
            letter-spacing: .2em;
            text-transform: uppercase;
        }

        .event-hero h1 {
            color: #f0c678;
            font-family: "Playfair Display", serif;
            font-size: clamp(3rem, 7vw, 6.6rem);
            letter-spacing: -.045em;
            line-height: .98;
            margin: 22px 0;
        }

        .event-hero h1 span {
            color: #fff8ed;
            display: block;
        }

        .event-hero p {
            color: #e8d8c6;
            font-size: clamp(1.05rem, 2vw, 1.35rem);
            margin: 0 auto;
            max-width: 620px;
        }

        .event-facts {
            border-top: 1px solid rgba(227, 180, 100, .45);
            display: grid;
            gap: 18px;
            grid-template-columns: repeat(3, 1fr);
            margin: 48px auto 0;
            max-width: 650px;
            padding-top: 22px;
            text-align: center;
        }

        .event-facts strong {
            color: #e0b96f;
            display: block;
            font-family: "Playfair Display", serif;
            font-size: 1.5rem;
        }

        .event-facts small {
            color: #d8c6b4;
            font-size: .76rem;
            letter-spacing: .08em;
            text-transform: uppercase;
        }

        .event-button {
            background: #d9ae60;
            border: 1px solid #f0cc88;
            color: #21100d;
            display: inline-flex;
            font-size: .8rem;
            font-weight: 800;
            letter-spacing: .1em;
            margin-top: 30px;
            padding: 16px 25px;
            text-decoration: none;
            text-transform: uppercase;
            transition: transform .2s, background .2s;
        }

        .event-button:hover {
            background: #f0cc88;
            transform: translateY(-2px);
        }

        .event-section {
            background: #211211;
            padding: 92px 0;
        }

        .event-section.alt {
            background: #351a17;
        }

        .event-heading {
            color: #e8bd75;
            font-family: "Playfair Display", serif;
            font-size: clamp(2.2rem, 5vw, 4rem);
            letter-spacing: -.04em;
            line-height: 1.05;
            margin-bottom: 34px;
            max-width: 720px;
        }

        .event-heading span {
            color: #fff8ed;
        }

        .event-art {
            border: 1px solid rgba(224, 185, 111, .55);
            display: block;
            height: auto;
            margin: 0 auto;
            max-width: 100%;
            width: 520px;
            transition: filter .3s, transform .3s, box-shadow .3s;
        }

        .event-art:hover {
            box-shadow: 0 18px 36px rgba(0, 0, 0, .3);
            filter: saturate(1.12) contrast(1.04);
            transform: translateY(-6px) scale(1.015);
        }

        .event-art-grid {
            align-items: center;
            display: grid;
            gap: 55px;
            grid-template-columns: 1fr 1fr;
        }

        .event-art-grid .event-art {
            width: 100%;
        }

        .event-copy {
            color: #e4d4c4;
            font-size: 1.08rem;
            max-width: 570px;
        }

        .event-copy strong {
            color: #e0b96f;
        }

        .event-cronograma {
            background: #160d0c;
            padding: 92px 0;
        }

        .cronograma-grid {
            display: grid;
            gap: 60px;
            grid-template-columns: 1.15fr .85fr;
        }

        .schedule-list {
            border-top: 1px solid rgba(224, 185, 111, .3);
            list-style: none;
        }

        .schedule-list li {
            align-items: baseline;
            border-bottom: 1px solid rgba(224, 185, 111, .3);
            display: grid;
            gap: 20px;
            grid-template-columns: 120px 1fr;
            padding: 20px 0;
        }

        .schedule-time {
            color: #e0b96f;
            font-family: "Playfair Display", serif;
            font-size: 1.2rem;
        }

        .schedule-label {
            color: #e4d4c4;
            font-size: 1rem;
            font-weight: 700;
            letter-spacing: .02em;
        }

        .address-card {
            background: #211211;
            border: 1px solid rgba(224, 185, 111, .35);
            height: fit-content;
            padding: 40px;
        }

        .address-card h3 {
            color: #e8bd75;
            font-family: "Playfair Display", serif;
            font-size: 1.6rem;
            margin-bottom: 24px;
        }

        .address-card .address-fact {
            border-top: 1px solid rgba(224, 185, 111, .25);
            padding: 16px 0;
        }

        .address-card .address-fact:first-of-type {
            border-top: 0;
        }

        .address-card .address-fact strong {
            color: #fff8ed;
            display: block;
            font-size: 1.05rem;
        }

        .address-card .address-fact span {
            color: #d8c6b4;
            font-size: .82rem;
            letter-spacing: .05em;
            text-transform: uppercase;
        }

        .next-immersion {
            background: #351a17;
            padding: 92px 0;
            text-align: center;
        }

        .next-immersion .event-kicker {
            display: block;
        }

        .next-immersion p {
            color: #e4d4c4;
            font-size: 1.08rem;
            margin: 0 auto;
            max-width: 620px;
        }

        .next-immersion p + p {
            margin-top: 16px;
        }

        .teaser-box {
            background: #211211;
            border: 1px solid rgba(224, 185, 111, .4);
            margin: 46px auto 0;
            max-width: 640px;
            padding: 44px;
        }

        .teaser-box .event-kicker {
            color: #d9ae60;
        }

        .teaser-box h3 {
            color: #fff8ed;
            font-family: "Playfair Display", serif;
            font-size: clamp(1.6rem, 3vw, 2.3rem);
            margin: 14px 0 6px;
        }

        .teaser-box h3 span {
            color: #e8bd75;
            display: block;
        }

        .teaser-box .teaser-lead {
            color: #e0b96f;
            font-size: .95rem;
            font-weight: 700;
            letter-spacing: .04em;
            max-width: none;
        }

        .teaser-facts {
            border-top: 1px solid rgba(224, 185, 111, .3);
            display: flex;
            gap: 30px;
            justify-content: center;
            margin: 26px 0;
            padding-top: 22px;
        }

        .teaser-facts strong {
            color: #e0b96f;
            display: block;
            font-family: "Playfair Display", serif;
            font-size: 1.15rem;
        }

        .teaser-facts span {
            color: #d8c6b4;
            font-size: .74rem;
            letter-spacing: .06em;
            text-transform: uppercase;
        }

        @media (max-width: 760px) {
            .cronograma-grid {
                gap: 34px;
                grid-template-columns: 1fr;
            }

            .schedule-list li {
                grid-template-columns: 90px 1fr;
            }

            .teaser-facts {
                flex-wrap: wrap;
                gap: 18px;
            }
        }

        .content-list {
            list-style: none;
            margin-top: 10px;
            max-width: 640px;
        }

        .content-section {
            text-align: center;
        }

        .content-section .event-heading {
            margin-left: auto;
            margin-right: auto;
        }

        .content-section .event-art,
        .speaker-section-art {
            margin-bottom: 34px;
            width: min(100%, 520px);
        }

        .content-feature-grid {
            align-items: center;
            display: grid;
            gap: 55px;
            grid-template-columns: 1fr 1fr;
            margin: 0 auto;
            max-width: 1040px;
        }

        .content-feature-grid .event-art {
            margin-bottom: 0;
            width: 100%;
        }

        .content-section .content-list {
            margin-left: auto;
            margin-right: auto;
            text-align: left;
        }

        .content-list li {
            border-bottom: 1px solid rgba(224, 185, 111, .3);
            color: #fff8ed;
            font-family: "Playfair Display", serif;
            font-size: 1.3rem;
            padding: 20px 0;
            transition: color .2s, padding-left .2s, border-color .2s;
        }

        .content-list li:hover {
            border-color: #f0c678;
            color: #f0c678;
            padding-left: 10px;
        }

        .content-list li::before {
            color: #e0b96f;
            content: "\2726";
            font-family: "DM Sans", sans-serif;
            font-size: .9rem;
            margin-right: 16px;
        }

        .speaker-grid {
            display: grid;
            gap: 40px;
            grid-template-columns: 1fr 1fr;
            margin-top: 10px;
        }

        .speaker-card {
            background: #211211;
            border: 1px solid rgba(224, 185, 111, .35);
            overflow: hidden;
            padding: 36px;
            transition: border-color .25s, box-shadow .25s, transform .25s;
        }

        .speaker-card:hover {
            border-color: #e8bd75;
            box-shadow: 0 18px 36px rgba(0, 0, 0, .24);
            transform: translateY(-7px);
        }

        .speaker-card img {
            aspect-ratio: 4 / 3;
            display: block;
            margin: -36px -36px 28px;
            object-fit: cover;
            width: calc(100% + 72px);
        }

        .speaker-card h3 {
            color: #e8bd75;
            font-family: "Playfair Display", serif;
            font-size: 1.5rem;
        }

        .speaker-card span {
            color: #e0b96f;
            display: block;
            font-size: .78rem;
            letter-spacing: .1em;
            margin: 8px 0 16px;
            text-transform: uppercase;
        }

        .speaker-card p {
            color: #d8c6b4;
            font-size: .96rem;
        }

        .speaker-trajectory {
            border-top: 1px solid rgba(224, 185, 111, .25);
            color: #e4d4c4;
            font-size: .88rem;
            line-height: 1.65;
            margin-top: 24px;
            padding-top: 20px;
        }

        .speaker-highlights {
            border-top: 1px solid rgba(224, 185, 111, .25);
            display: grid;
            gap: 14px;
            grid-template-columns: repeat(2, 1fr);
            list-style: none;
            margin-top: 22px;
            padding-top: 18px;
        }

        .speaker-highlights strong {
            color: #f0c678;
            display: block;
            font-family: "Playfair Display", serif;
            font-size: 1.35rem;
        }

        .speaker-highlights span {
            color: #927c70;
            font-size: .68rem;
            letter-spacing: .06em;
            margin: 2px 0 0;
        }

        .ticket-box {
            background: #211211;
            border: 1px solid rgba(224, 185, 111, .45);
            margin: 40px auto 0;
            max-width: 460px;
            padding: 44px;
        }

        .ticket-box .ticket-price {
            color: #f0c678;
            font-family: "Playfair Display", serif;
            font-size: 3.2rem;
        }

        .ticket-box .ticket-price small {
            color: #d8c6b4;
            font-family: "DM Sans", sans-serif;
            font-size: .85rem;
        }

        .ticket-list {
            list-style: none;
            margin-top: 24px;
            text-align: left;
        }

        .ticket-list li {
            border-top: 1px solid rgba(224, 185, 111, .3);
            color: #e4d4c4;
            font-size: .95rem;
            padding: 12px 0;
        }

        @media (max-width: 760px) {
            .speaker-grid {
                gap: 24px;
                grid-template-columns: 1fr;
            }
        }

        .event-price {
            background: #241211;
            padding: 92px 0;
            text-align: center;
        }

        .event-price .event-button {
            display: inline-flex;
        }

        .event-faq {
            border-top: 1px solid rgba(224, 185, 111, .4);
            margin: 0 auto;
            max-width: 760px;
            text-align: left;
        }

        .event-faq details {
            border-bottom: 1px solid rgba(224, 185, 111, .3);
            padding: 20px 0;
        }

        .event-faq summary {
            color: #fff8ed;
            cursor: pointer;
            font-size: 1rem;
            font-weight: 700;
            list-style: none;
        }

        .event-faq summary::after {
            color: #e0b96f;
            content: "+";
            float: right;
            font-size: 1.4rem;
        }

        .event-faq p {
            color: #d8c6b4;
            margin-top: 12px;
        }

        .event-form {
            background: #160d0c;
            padding: 92px 0;
        }

        .event-form-grid {
            align-items: start;
            display: grid;
            gap: 60px;
            grid-template-columns: .9fr 1.1fr;
        }

        .event-form h2 {
            color: #e8bd75;
            font-family: "Playfair Display", serif;
            font-size: clamp(2.2rem, 4vw, 3.6rem);
            line-height: 1.05;
        }

        .event-form-intro p {
            color: #d8c6b4;
            margin-top: 18px;
            max-width: 400px;
        }

        .event-form form {
            display: grid;
            gap: 18px;
            grid-template-columns: 1fr 1fr;
        }

        .event-form .field {
            display: grid;
            gap: 7px;
        }

        .event-form .field.full,
        .event-form .integracao-note {
            grid-column: 1 / -1;
        }

        .event-form label {
            color: #e8d8c6;
            font-size: .75rem;
            letter-spacing: .1em;
            text-transform: uppercase;
        }

        .event-form input {
            background: transparent;
            border: 0;
            border-bottom: 1px solid rgba(224, 185, 111, .45);
            color: #fff8ed;
            font: inherit;
            outline: 0;
            padding: 12px 0;
            width: 100%;
            transition: border-color .2s, padding-left .2s;
        }

        .event-form input:focus {
            border-color: #f0cc88;
            padding-left: 8px;
        }

        .event-form input::placeholder {
            color: #927c70;
        }

        .event-form .integracao-note {
            color: #927c70;
            font-size: .78rem;
        }

        .event-message {
            border: 1px solid #d9ae60;
            color: #fff8ed;
            font-size: .9rem;
            margin-bottom: 12px;
            padding: 10px;
        }

        .event-footer {
            background: #160d0c;
            border-top: 1px solid rgba(224, 185, 111, .35);
            color: #927c70;
            font-size: .78rem;
            padding: 24px 0;
            text-align: center;
        }

        .whatsapp-float {
            align-items: center;
            background: #25d366;
            border: 0;
            border-radius: 999px;
            bottom: 30px;
            box-shadow: 0 8px 18px rgba(0, 0, 0, .28), 0 0 0 4px rgba(37, 211, 102, .12);
            display: inline-flex;
            height: 78px;
            justify-content: center;
            padding: 0;
            position: fixed;
            right: 30px;
            text-decoration: none;
            transition: box-shadow .25s, transform .25s;
            width: 78px;
            z-index: 20;
        }

        .whatsapp-float::before {
            border: 1px solid rgba(37, 211, 102, .55);
            border-radius: inherit;
            content: "";
            inset: -4px;
            pointer-events: none;
            position: absolute;
            transition: inset .25s, opacity .25s;
        }

        .whatsapp-float:hover {
            box-shadow: 0 14px 28px rgba(0, 0, 0, .38), 0 0 0 6px rgba(37, 211, 102, .16);
            transform: translateY(-4px) scale(1.04);
        }

        .whatsapp-float:hover::before {
            inset: -7px;
            opacity: .35;
        }

        .whatsapp-float:focus-visible {
            box-shadow: 0 8px 18px rgba(0, 0, 0, .28), 0 0 0 4px #f0c678;
            outline: 0;
        }

/* Landing page 2026 */
.event-page {
    --event-ink: #18120e;
    --event-charcoal: #211713;
    --event-copper: #c5824d;
    --event-sand: #f3eadc;
    --event-mist: #c7b8a9;
    --event-line: rgba(243, 234, 220, .18);
    background: var(--event-ink);
    background-image: none;
    color: var(--event-sand);
}

.event-page::before { display: none; }
.event-shell { max-width: 1240px; width: min(90vw, 1240px); }
.event-page h1, .event-page h2, .event-page h3 { font-family: "Playfair Display", Georgia, serif; font-weight: 500; }
.event-page .event-kicker { align-items: center; color: var(--event-copper); display: flex; font-family: "Manrope", sans-serif; font-size: .68rem; font-weight: 800; gap: 9px; letter-spacing: .16em; line-height: 1.4; }
.pulse-dot { background: var(--event-copper); border-radius: 50%; box-shadow: 0 0 0 5px rgba(197, 130, 77, .15); height: 7px; width: 7px; }

.event-hero { align-items: stretch; background-color: var(--event-ink); background-image: linear-gradient(90deg, rgba(20, 14, 11, .98) 0%, rgba(25, 17, 12, .93) 48%, rgba(25, 17, 12, .65) 100%), var(--hero-bg-desktop, url("imgs/backgroundAtt.jpg")); background-position: top center; background-repeat: no-repeat; background-size: cover; display: block; min-height: 790px; overflow: hidden; padding: 26px 0 0; position: relative; }
.event-hero::after { border: 1px solid rgba(197, 130, 77, .35); border-radius: 50%; content: ""; height: 630px; position: absolute; right: -190px; top: 120px; width: 630px; }
.event-nav { border-bottom: 1px solid var(--event-line); justify-content: space-between; padding: 0 0 20px; position: relative; z-index: 1; }
.event-brand img { height: 66px; transition: transform .35s ease; width: 66px; }
.event-brand:hover img { transform: rotate(-5deg); }
.event-nav .nav-cta { align-items: center; border-bottom: 1px solid var(--event-copper); color: var(--event-sand); display: inline-flex; font-family: "Manrope", sans-serif; font-size: .68rem; font-weight: 800; gap: 12px; letter-spacing: .12em; padding: 9px 0; }
.event-nav .nav-cta span, .event-button span, .text-link span, .location-panel a span { color: var(--event-copper); font-size: 1.1rem; line-height: .7; }
.hero-layout { align-items: center; display: grid; gap: 45px; grid-template-columns: minmax(0, 1fr) 245px; min-height: 570px; position: relative; z-index: 1;  }
.event-hero-copy { margin: 0; max-width: 780px; padding: 0; text-align: left; }
.event-hero h1 { color: var(--event-sand); font-size: clamp(3.4rem, 7.2vw, 7rem); letter-spacing: 0; line-height: .91; margin: 28px 0; max-width: 760px; }
.event-hero h1 em { color: var(--event-copper); display: block; font-style: italic; }
.hero-subtitle { color: var(--event-mist) !important; font-family: "DM Sans", sans-serif; font-size: clamp(1rem, 1.5vw, 1.16rem) !important; line-height: 1.65; margin: 0 !important; max-width: 560px !important; }
.hero-actions { align-items: center; display: flex; flex-wrap: wrap; gap: 26px; margin-top: 37px; }
.event-page .event-button { align-items: center; background: var(--event-copper); border: 1px solid var(--event-copper); color: var(--event-ink); font-family: "Manrope", sans-serif; font-size: .67rem; font-weight: 800; gap: 24px; letter-spacing: .1em; margin: 0; padding: 18px 20px 18px 24px; }
.event-page .event-button span { color: var(--event-ink); transition: transform .25s ease; }
.event-page .event-button:hover { background: #dfa26f; transform: translateY(-3px); }
.event-page .event-button:hover span { transform: translateX(4px); }
.hero-link, .text-link { border-bottom: 1px solid rgba(243, 234, 220, .3); color: var(--event-sand); display: inline-flex; font-family: "Manrope", sans-serif; font-size: .68rem; font-weight: 700; gap: 14px; letter-spacing: .08em; padding-bottom: 6px; text-decoration: none; }
.hero-event-card { align-self: center; border-left: 1px solid var(--event-copper); padding: 10px 0 10px 28px; position: relative; }
.card-label { color: var(--event-mist); display: block; font-family: "Manrope", sans-serif; font-size: .64rem; font-weight: 700; letter-spacing: .15em; text-transform: uppercase; }
.hero-event-card strong { color: var(--event-sand); display: block; font-family: "Playfair Display", serif; font-size: 5.3rem; font-weight: 500; letter-spacing: 0; line-height: .9; margin: 19px 0 10px; }
.hero-event-card strong span { color: var(--event-copper); font-family: "Manrope", sans-serif; font-size: .85rem; letter-spacing: .14em; margin-left: 8px; vertical-align: middle; }
.hero-event-card p { color: var(--event-mist); font-family: "Manrope", sans-serif; font-size: .72rem; font-weight: 600; letter-spacing: .06em; line-height: 1.7; }
.hero-event-card .card-rule { background: var(--event-line); height: 1px; margin: 24px 0 18px; width: 100%; }
.hero-event-card .event-location { color: var(--event-sand); }.hero-event-card .event-location span { color: var(--event-mist); }
.hero-proof { border-top: 1px solid var(--event-line); display: grid; grid-template-columns: repeat(3, 1fr); position: relative; z-index: 1; }
.hero-proof p { border-right: 1px solid var(--event-line); margin: 0; padding: 22px 28px 26px 0; }.hero-proof p + p { padding-left: 28px; }.hero-proof p:last-child { border: 0; }
.hero-proof strong { color: var(--event-sand); display: block; font-family: "Manrope", sans-serif; font-size: .74rem; font-weight: 800; letter-spacing: .06em; }.hero-proof span { color: var(--event-mist); display: block; font-size: .76rem; line-height: 1.45; margin-top: 7px; max-width: 210px; }

/* Faixa dinâmica de disponibilidade, alimentada pelas vendas do produto WooCommerce. */
.event-stock-alert { background: #c5824d; color: #18120e; position: relative; z-index: 3; }
.event-stock-alert__inner { align-items: center; display: grid; gap: 22px; grid-template-columns: minmax(0, 1fr) minmax(180px, 310px); min-height: 72px; padding-bottom: 13px; padding-top: 13px; }
.event-stock-alert__message { align-items: center; display: flex; gap: 13px; min-width: 0; }
.event-stock-alert__message p { font-family: "Manrope", sans-serif; font-size: .83rem; font-weight: 650; letter-spacing: .015em; line-height: 1.45; margin: 0; }
.event-stock-alert__message strong { font-weight: 850; text-transform: uppercase; }
.event-stock-alert__icon { align-items: center; border: 1px solid rgba(24, 18, 14, .55); border-radius: 50%; display: inline-flex; flex: 0 0 26px; font-family: "Manrope", sans-serif; font-size: .78rem; font-weight: 900; height: 26px; justify-content: center; }
.event-stock-alert__progress { background: rgba(24, 18, 14, .22); border-radius: 999px; height: 7px; overflow: hidden; width: 100%; }
.event-stock-alert__progress span { background: #18120e; border-radius: inherit; display: block; height: 100%; min-width: 2px; transition: width .45s ease; }

.event-section { background: var(--event-sand) !important; color: var(--event-ink); padding: 130px 0; }.event-heading { color: var(--event-ink); font-size: clamp(2.45rem, 4.8vw, 5.1rem); letter-spacing: 0; line-height: .99; margin: 18px 0 0; }.event-heading span { color: var(--event-copper); }.event-section .event-kicker { color: #98623c; }
.manifest-grid { align-items: start; display: grid; gap: 45px; grid-template-columns: 95px minmax(0, 1.35fr) minmax(250px, .65fr); }.vertical-label { color: #9b806a; font-family: "Manrope", sans-serif; font-size: .62rem; font-weight: 800; letter-spacing: .16em; padding-top: 6px; text-transform: uppercase; writing-mode: vertical-rl; }.manifest-copy { border-left: 1px solid rgba(24, 18, 14, .18); padding-left: 30px; }.manifest-copy p, .section-intro > p { color: #6c5b4e; font-size: 1rem; line-height: 1.75; }.text-link { border-color: rgba(24, 18, 14, .32); color: var(--event-ink); margin-top: 26px; }
.program-section { background: #e6d5c2 !important; overflow: hidden; position: relative; }.program-section::after { color: rgba(24, 18, 14, .045); content: "BC"; font-family: "Playfair Display", serif; font-size: 27rem; line-height: 1; position: absolute; right: -42px; top: 56px; }.section-intro { align-items: end; display: grid; gap: 50px; grid-template-columns: 1.2fr .8fr; margin-bottom: 60px; position: relative; z-index: 1; }.section-intro > p { border-left: 1px solid rgba(24, 18, 14, .2); margin-bottom: 7px; padding-left: 30px; }.program-grid { display: grid; gap: 1px; grid-template-columns: repeat(3, 1fr); position: relative; z-index: 1; }.program-item { background: rgba(243, 234, 220, .72); display: flex; flex-direction: column; min-height: 270px; padding: 30px; transition: background .3s ease, color .3s ease, transform .3s ease; }.program-item:hover { background: var(--event-ink); color: var(--event-sand); transform: translateY(-7px); }.program-item.featured { background: var(--event-copper); }.program-number { color: #9c633d; font-family: "Manrope", sans-serif; font-size: .68rem; font-weight: 800; letter-spacing: .12em; }.program-item:hover .program-number { color: var(--event-copper); }.program-item h3 { font-size: clamp(1.45rem, 2vw, 2rem); line-height: 1.1; margin-top: auto; }.program-item p { color: #735f50; font-size: .88rem; line-height: 1.6; margin-top: 13px; }.program-item:hover p { color: var(--event-mist); }.image-item { background: var(--event-ink); justify-content: flex-end; overflow: hidden; padding: 0; position: relative; }.image-item::after { background: linear-gradient(0deg, rgba(24, 18, 14, .95), transparent); content: ""; inset: 0; position: absolute; }.image-item img { height: 100%; inset: 0; object-fit: cover; position: absolute; transition: transform .55s ease; width: 100%; }.image-item:hover img { transform: scale(1.07); }.image-item div { color: var(--event-sand); padding: 30px; position: relative; z-index: 1; }.image-item .program-number { color: var(--event-copper); }.image-item h3 { margin-top: 45px; }

.event-cronograma { background: var(--event-charcoal) !important; padding: 125px 0; }.timeline-layout { display: grid; gap: 65px; grid-template-columns: .9fr 1.1fr; }.timeline-heading .event-heading { color: var(--event-sand); }.timeline-heading .event-kicker { color: var(--event-copper); }.schedule-list { border-top: 1px solid var(--event-line); list-style: none; margin: 0; }.schedule-list li { align-items: center; border-bottom: 1px solid var(--event-line); display: grid; gap: 26px; grid-template-columns: 90px 1fr; padding: 19px 0; transition: padding .25s ease; }.schedule-list li:hover { padding-left: 12px; }.schedule-list time { color: var(--event-copper); font-family: "Playfair Display", serif; font-size: 1.35rem; }.schedule-list p { margin: 0; }.schedule-list strong, .schedule-list span { display: block; font-family: "Manrope", sans-serif; }.schedule-list strong { color: var(--event-sand); font-size: .84rem; letter-spacing: .02em; }.schedule-list span { color: var(--event-mist); font-size: .72rem; margin-top: 3px; }.location-panel { background: var(--event-copper); color: var(--event-ink); grid-column: 1; padding: 34px; }.location-panel .card-label { color: #624126; }.location-panel h3 { font-size: 2.4rem; line-height: 1; margin: 30px 0 10px; }.location-panel p { color: #563a25; font-size: .9rem; line-height: 1.6; }.location-panel a { border-bottom: 1px solid rgba(24, 18, 14, .34); color: var(--event-ink); display: inline-flex; font-family: "Manrope", sans-serif; font-size: .67rem; font-weight: 800; gap: 14px; letter-spacing: .09em; margin-top: 31px; padding-bottom: 5px; text-decoration: none; }

.speakers-section { background: #efe5d6 !important; }.speaker-grid { align-items: start; display: grid; gap: 34px; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 0 auto; max-width: 940px; }.speaker-card { background: transparent; border: 0; overflow: visible; padding: 0; transition: transform .35s ease; }.speaker-card:hover { border: 0; box-shadow: none; transform: translateY(-8px); }.speaker-card img { aspect-ratio: 4 / 4.4; margin: 0; object-fit: cover; width: 100%; }.speaker-card-offset { margin-top: 95px; }.speaker-card-content { border-left: 1px solid var(--event-copper); margin: 26px 0 0 28px; padding-left: 22px; }.speaker-card .speaker-role { color: #98623c; font-family: "Manrope", sans-serif; font-size: .62rem; font-weight: 800; letter-spacing: .13em; margin: 0; }.speaker-card h3 { color: var(--event-ink); font-size: clamp(2rem, 3.5vw, 3.4rem); line-height: .95; margin: 18px 0; }.speaker-card p { color: #6d5a4b; font-size: .88rem; line-height: 1.7; max-width: 315px; }

.event-price { background: var(--event-ink) !important; padding: 130px 0; }.offer-layout { align-items: center; display: grid; gap: 80px; grid-template-columns: 1fr minmax(360px, .85fr); }.offer-copy .event-heading { color: var(--event-sand); }.offer-copy > p:last-child { color: var(--event-mist); font-size: 1rem; line-height: 1.7; margin-top: 27px; max-width: 440px; }.ticket-box { background: #f0e3d2; border: 0; color: var(--event-ink); margin: 0; max-width: none; padding: 38px; }.ticket-top { align-items: center; border-bottom: 1px solid rgba(24, 18, 14, .2); display: flex; justify-content: space-between; padding-bottom: 17px; }.ticket-top span, .ticket-top strong { font-family: "Manrope", sans-serif; font-size: .62rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }.ticket-top strong { color: #98623c; }.ticket-box .ticket-price { color: var(--event-ink); font-size: clamp(3.1rem, 5vw, 4.2rem); letter-spacing: 0; line-height: 1; margin: 30px 0 22px; }.ticket-box .ticket-price small { color: #715c4b; font-size: .73rem; letter-spacing: .03em; }.ticket-list { margin: 0; }.ticket-list li { border-color: rgba(24, 18, 14, .17); color: #574737; font-size: .84rem; padding: 13px 0 13px 19px; position: relative; }.ticket-list li::before { background: var(--event-copper); border-radius: 50%; content: ""; height: 5px; left: 0; position: absolute; top: 21px; width: 5px; }.ticket-box .event-button { justify-content: space-between; margin-top: 26px; width: 100%; }.event-message { border-color: var(--event-copper); color: var(--event-ink); margin-top: 25px; }
.ticket-list details { border: 0; padding: 0; }.ticket-list summary { color: var(--event-ink); cursor: pointer; font-family: "Manrope", sans-serif; font-size: .9rem; font-weight: 700; line-height: 1.3; list-style: none; }.ticket-list summary::after { color: var(--event-copper); content: "+"; float: right; font-family: "Manrope", sans-serif; font-size: 1.1rem; }.ticket-list details[open] summary::after { content: "-"; }.ticket-list details p { color: #6e5c4e; font-size: .8rem; line-height: 1.45; margin: .4rem 0 0; }

.faq-section { background: var(--event-sand) !important; }.faq-layout { display: grid; gap: 80px; grid-template-columns: .75fr 1.25fr; }.event-faq { border-top: 1px solid rgba(24, 18, 14, .23); margin: 0; max-width: none; }.event-faq details { border-color: rgba(24, 18, 14, .18); padding: 21px 0; }.event-faq summary { color: var(--event-ink); font-family: "Manrope", sans-serif; font-size: .88rem; font-weight: 700; padding-right: 30px; position: relative; }.event-faq summary::after { color: var(--event-copper); font-size: 1.4rem; position: absolute; right: 0; top: -5px; }.event-faq details[open] summary::after { content: "-"; }.event-faq p { color: #6e5c4e; font-size: .9rem; line-height: 1.65; margin-top: 13px; }.event-footer { background: var(--event-ink) !important; border-color: var(--event-line); color: #a89687; font-family: "Manrope", sans-serif; font-size: .63rem; font-weight: 600; letter-spacing: .08em; padding: 27px 5vw; text-transform: uppercase; }.event-footer span { color: var(--event-copper); margin-right: 12px; }.whatsapp-float { height: 58px; right: 24px; width: 58px; }.whatsapp-float-icon { border-radius: 50%; height: 100%; object-fit: cover; width: 100%; }

@media (max-width: 820px) {
    .event-hero { background-image: linear-gradient(180deg, rgba(20, 14, 11, .94) 0%, rgba(24, 16, 12, .72) 44%, rgba(24, 16, 12, .38) 100%), var(--hero-bg-mobile, var(--hero-bg-desktop)); background-position: center top; background-size: cover; min-height: auto; }.event-hero::after { height: 340px; right: -180px; top: 175px; width: 340px; }.hero-layout { grid-template-columns: 1fr; min-height: auto; padding: 90px 0 75px; }.hero-event-card { align-self: auto; max-width: 260px; padding-left: 20px; }.hero-event-card strong { font-size: 4rem; }.hero-proof { grid-template-columns: 1fr; }.hero-proof p, .hero-proof p + p { border-bottom: 1px solid var(--event-line); border-right: 0; padding: 16px 0; }.hero-proof p:last-child { border-bottom: 0; }.manifest-grid, .section-intro, .timeline-layout, .offer-layout, .faq-layout { gap: 40px; grid-template-columns: 1fr; }.vertical-label { display: none; }.manifest-copy { padding-left: 21px; }.program-grid { grid-template-columns: repeat(2, 1fr); }.location-panel { grid-column: auto; }.speaker-grid { max-width: 580px; }.faq-layout { gap: 50px; }.section-intro > p { margin: 0; }.event-section, .event-cronograma, .event-price { padding: 92px 0; }
}

@media (max-width: 560px) {
    .event-shell { width: min(88vw, 1240px); }
    .event-hero { background-position: center top; }
    .event-stock-alert__inner { gap: 10px; grid-template-columns: 1fr; min-height: 0; padding-bottom: 14px; padding-top: 14px; }
    .event-stock-alert__message { align-items: flex-start; }
    .event-stock-alert__message p { font-size: .74rem; }
    .event-stock-alert__progress { height: 6px; }.event-nav .nav-cta { font-size: .58rem; gap: 7px; }.event-brand img { height: 55px; width: 55px; }.event-hero h1 { font-size: clamp(3.15rem, 15vw, 4.4rem); }.hero-actions { align-items: flex-start; flex-direction: column; gap: 22px; }.hero-event-card { margin-top: 8px; }.event-heading { font-size: clamp(2.45rem, 12vw, 3.65rem); }.program-grid, .speaker-grid { grid-template-columns: 1fr; }.program-item { min-height: 240px; }.image-item { min-height: 285px; }.timeline-layout { gap: 48px; }.schedule-list li { gap: 14px; grid-template-columns: 60px 1fr; }.schedule-list time { font-size: 1.1rem; }.schedule-list strong { font-size: .77rem; }.schedule-list span { font-size: .69rem; }.speaker-card-offset { margin-top: 10px; }.speaker-card-content { margin-left: 18px; padding-left: 18px; }.offer-layout { gap: 52px; }.ticket-box { padding: 27px 23px; }.ticket-top { align-items: flex-start; flex-direction: column; gap: 7px; }.ticket-box .event-button { font-size: .59rem; gap: 10px; padding-left: 17px; }.whatsapp-float { bottom: 20px; height: 52px; right: 18px; width: 52px; }
}

        .whatsapp-float-icon {
            display: block;
            height: 47px;
            mix-blend-mode: multiply;
            object-fit: contain;
            width: 47px;
        }

        .whatsapp-float::after {
            background: #211211;
            border: 1px solid rgba(224, 185, 111, .35);
            border-radius: 4px;
            color: #fff8ed;
            content: "Falar no WhatsApp";
            font-size: .7rem;
            font-weight: 700;
            letter-spacing: .04em;
            opacity: 0;
            padding: 8px 10px;
            pointer-events: none;
            position: absolute;
            right: calc(100% + 12px);
            text-transform: uppercase;
            transform: translateX(6px);
            transition: opacity .2s, transform .2s;
            white-space: nowrap;
        }

        .whatsapp-float:hover::after,
        .whatsapp-float:focus-visible::after {
            opacity: 1;
            transform: translateX(0);
        }

        @media (max-width: 760px) {
            .whatsapp-float {
                bottom: 16px;
                height: 70px;
                right: 16px;
                width: 70px;
            }

            .whatsapp-float-icon {
                height: 43px;
                width: 43px;
            }

            .whatsapp-float::after {
                display: none;
            }

            .event-hero {
                min-height: 680px;
            }

            .event-hero-copy {
                padding-top: 90px;
            }

            .event-nav {
                align-items: flex-start;
                flex-direction: column;
                gap: 12px;
            }

            .event-brand img {
                height: 68px;
                width: 68px;
            }

            .event-facts {
                gap: 12px;
                grid-template-columns: 1fr;
            }

            .event-art-grid,
            .event-form-grid,
            .content-feature-grid {
                gap: 34px;
                grid-template-columns: 1fr;
            }

            .event-section,
            .event-cronograma,
            .event-price,
            .event-form {
                padding: 68px 0;
            }

            .event-form form {
                grid-template-columns: 1fr;
            }

            .event-form .field.full,
            .event-form .integracao-note {
                grid-column: auto;
            }
        }

/* WooCommerce (carrinho / checkout) */
.wp-page-content {
    background: var(--ink);
    color: var(--white);
    min-height: 60vh;
    padding: 60px 20px 100px;
}

.wp-page-content h1,
.wp-page-content h2,
.wp-page-content h3 {
    color: var(--gold-light);
    font-family: "Playfair Display", serif;
}

.wp-page-content a {
    color: var(--gold-light);
}

/* Checkout/carrinho classicos (shortcode) */
.wp-page-content table.shop_table {
    background: var(--paper);
    border-collapse: collapse;
    border-radius: 8px;
    color: var(--ink);
    overflow: hidden;
    width: 100%;
}

.wp-page-content table.shop_table th,
.wp-page-content table.shop_table td {
    border-bottom: 1px solid var(--line);
    padding: 14px 16px;
    text-align: left;
}

.wp-page-content .woocommerce-checkout #payment,
.wp-page-content .woocommerce-cart-form,
.wp-page-content .cart-collaterals .cart_totals {
    background: var(--paper);
    border-radius: 10px;
    color: var(--ink);
    padding: 24px;
}

.wp-page-content #place_order,
.wp-page-content .checkout-button,
.wp-page-content input[type="submit"] {
    background: var(--gold);
    border: 1px solid var(--gold-light);
    border-radius: 999px;
    color: var(--ink);
    font-weight: 800;
    letter-spacing: .05em;
    padding: 14px 26px;
    text-transform: uppercase;
    transition: background .2s, transform .2s;
}

.wp-page-content #place_order:hover,
.wp-page-content .checkout-button:hover,
.wp-page-content input[type="submit"]:hover {
    background: var(--gold-light);
    transform: translateY(-2px);
}

/* Checkout em blocos (Gutenberg) do WooCommerce: apenas containers, cores e botao. */
/* Os campos/inputs mantem o estilo nativo do bloco para nao quebrar o layout de labels flutuantes. */
.wp-page-content .wp-block-woocommerce-checkout {
    align-items: start;
    display: grid;
    gap: 28px;
    grid-template-columns: 1.4fr 1fr;
    margin: 0 auto;
    max-width: 1160px;
}

@media (max-width: 900px) {
    .wp-page-content .wp-block-woocommerce-checkout {
        grid-template-columns: 1fr;
    }
}

.wp-page-content .wc-block-checkout__main,
.wp-page-content .wc-block-checkout__sidebar,
.wp-page-content .wp-block-woocommerce-checkout-order-summary-block {
    background: var(--paper);
    border-radius: 14px;
    box-shadow: 0 20px 45px rgba(0, 0, 0, .35);
    color: var(--ink);
    padding: 28px;
}

.wp-page-content .wc-block-components-checkout-step__title,
.wp-page-content .wc-block-components-title,
.wp-page-content .wc-block-components-order-summary__title {
    color: var(--ink);
    font-family: "Playfair Display", serif;
}

.wp-page-content .wc-block-components-checkout-place-order-button {
    background: var(--gold) !important;
    border-radius: 999px !important;
    color: var(--ink) !important;
    font-weight: 800 !important;
    letter-spacing: .05em;
    text-transform: uppercase;
    width: 100%;
}

.wp-page-content .wc-block-components-checkout-place-order-button:hover {
    background: var(--gold-light) !important;
}

.wp-page-content .wc-block-components-totals-wrapper,
.wp-page-content .wc-block-components-product-metadata,
.wp-page-content .wc-block-components-notice-banner {
    color: var(--ink);
}



/* Header: ações de compra e consulta de ingresso */
.event-nav__actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 22px;
}
.event-nav .nav-consult {
    color: var(--event-sand);
    font-family: "Manrope", sans-serif;
    font-size: .66rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-decoration: none;
    opacity: .88;
    transition: opacity .2s ease, color .2s ease;
}
.event-nav .nav-consult:hover { color: var(--event-copper); opacity: 1; }
@media (max-width: 620px) {
    .event-nav__actions { gap: 12px; }
    .event-nav .nav-consult { font-size: .55rem; letter-spacing: .04em; }
    .event-nav .nav-cta { font-size: .55rem; }
}
@media (max-width: 430px) {
    .event-nav__actions { align-items: flex-end; flex-direction: column-reverse; gap: 5px; }
}

/* =========================================================
   AJUSTES VISUAIS 2026-08-31
   - Banner sem filtro escuro: preserva as cores originais.
   - Imagem dedicada para mobile.
   - Degradês suaves nas demais seções.
   ========================================================= */

/* Mantém a fotografia do banner com as cores originais. */
.event-hero {
    background-image: var(--hero-bg-desktop, url("imgs/backgroundAtt.jpg")) !important;
    background-position: right top;
    background-repeat: no-repeat;
    background-size: cover;
}

/* Reforça a leitura dos textos sem escurecer a fotografia inteira. */
.event-hero-copy,
.event-nav,
.hero-proof {
    text-shadow: 0 2px 14px rgba(0, 0, 0, .58), 0 1px 3px rgba(0, 0, 0, .72);
}

/* Degradês elegantes e discretos, mantendo a identidade bege/cobre/escura. */
.manifest-section {
    background:
        radial-gradient(circle at 10% 15%, rgba(197, 130, 77, .16), transparent 34%),
        radial-gradient(circle at 92% 86%, rgba(122, 84, 53, .10), transparent 38%),
        linear-gradient(135deg, #f4eadb 0%, #efe1cf 48%, #f8f0e5 100%) !important;
}

.program-section {
    background:
        radial-gradient(circle at 86% 20%, rgba(255, 255, 255, .30), transparent 34%),
        radial-gradient(circle at 12% 90%, rgba(151, 91, 50, .14), transparent 34%),
        linear-gradient(145deg, #e8d8c5 0%, #dcc4aa 52%, #eadbca 100%) !important;
}

.event-cronograma {
    background:
        radial-gradient(circle at 80% 10%, rgba(197, 130, 77, .17), transparent 28%),
        radial-gradient(circle at 12% 86%, rgba(125, 76, 45, .14), transparent 34%),
        linear-gradient(140deg, #17110e 0%, #241914 52%, #120d0b 100%) !important;
}

.speakers-section {
    background:
        radial-gradient(circle at 15% 10%, rgba(197, 130, 77, .13), transparent 32%),
        radial-gradient(circle at 86% 82%, rgba(255, 255, 255, .33), transparent 32%),
        linear-gradient(135deg, #f0e6d8 0%, #e8d7c4 52%, #f5ecdf 100%) !important;
}

.event-price {
    background:
        radial-gradient(circle at 18% 20%, rgba(197, 130, 77, .18), transparent 30%),
        radial-gradient(circle at 82% 80%, rgba(111, 67, 42, .16), transparent 35%),
        linear-gradient(145deg, #17110e 0%, #281b15 50%, #120d0b 100%) !important;
}

.faq-section {
    background:
        radial-gradient(circle at 88% 12%, rgba(197, 130, 77, .13), transparent 31%),
        radial-gradient(circle at 10% 88%, rgba(140, 91, 56, .08), transparent 36%),
        linear-gradient(135deg, #f6ecdf 0%, #efe1cf 50%, #f9f3ea 100%) !important;
}

@media (max-width: 820px) {
    .event-hero {
        background-image: var(--hero-bg-mobile, var(--hero-bg-desktop)) !important;
        background-position: center top;
        background-repeat: no-repeat;
        background-size: cover;
    }
}

/* =========================================================
   AJUSTE FINAL — HERO MOBILE COM ROSTOS 100% LIVRES
   Data: 2026-08-31

   Objetivos:
   - usar "baner display_mobile_att.jpg" no celular;
   - exibir a imagem inteira com background-size: contain;
   - não colocar logo, "Garantir ingresso" ou consulta sobre os rostos;
   - retirar o círculo decorativo do desktop;
   - preservar a cor original da fotografia;
   - criar transição suave apenas na parte inferior;
   - manter o conteúdo abaixo da região dos rostos.
   ========================================================= */

@media (max-width: 820px) {

    /* ---------------------------------------------------------
       BANNER / HERO
       --------------------------------------------------------- */
    .event-page .event-hero {
        background-color: #18120e !important;

        /* Imagem exclusiva para celular */
        background-image: url("imgs/BanerBrunoMatheus.jpg") !important;

        /* Mantém a arte completa, sem cortar os rostos */
        background-position: top center !important;
        background-repeat: no-repeat !important;
        background-size: contain !important;

        display: block !important;
        min-height: auto !important;
        overflow: hidden !important;
        padding: 0 !important;
        position: relative !important;
    }

    /* ---------------------------------------------------------
       REMOVE COMPLETAMENTE O MENU SOBRE A FOTO
       Logo + Consultar ingresso + Garantir ingresso
       --------------------------------------------------------- */
    .event-page .event-hero .event-nav,
    .event-page .event-hero .event-brand,
    .event-page .event-hero .event-nav__actions,
    .event-page .event-hero .nav-consult,
    .event-page .event-hero .nav-cta {
        display: none !important;
    }

    /* ---------------------------------------------------------
       REMOVE O CÍRCULO DECORATIVO DO DESKTOP
       --------------------------------------------------------- */
    .event-page .event-hero::after {
        display: none !important;
        content: none !important;
    }

    /* ---------------------------------------------------------
       TRANSIÇÃO SUAVE NO FINAL DA FOTO

       O degradê é transparente durante a maior parte da imagem.
       Dessa maneira os rostos permanecem com as cores originais.
       --------------------------------------------------------- */
    .event-page .event-hero::before {
        background: linear-gradient(
            to bottom,
            rgba(24, 18, 14, 0) 0%,
            rgba(24, 18, 14, 0) 68%,
            rgba(24, 18, 14, 0.05) 74%,
            rgba(24, 18, 14, 0.18) 80%,
            rgba(24, 18, 14, 0.48) 88%,
            rgba(24, 18, 14, 0.82) 95%,
            #18120e 100%
        ) !important;

        content: "" !important;
        display: block !important;
        inset: 0 !important;
        pointer-events: none !important;
        position: absolute !important;
        z-index: 0 !important;
    }

    /* O conteúdo permanece acima do degradê */
    .event-page .event-hero > .event-shell {
        position: relative !important;
        z-index: 2 !important;
    }

    /* ---------------------------------------------------------
       ÁREA LIVRE PARA OS ROSTOS

       A imagem mobile tem proporção 952 x 1600.
       Com background-size: contain ela ocupa uma grande área
       vertical no celular.

       O conteúdo começa somente depois da região principal
       dos rostos.
       --------------------------------------------------------- */
    .event-page .event-hero .hero-layout {
        display: block !important;
        grid-template-columns: 1fr !important;
        min-height: 0 !important;

        /* Reserva a área superior da fotografia */
        padding-top: clamp(470px, 120vw, 650px) !important;
        padding-bottom: 34px !important;
    }

    .event-page .event-hero .event-hero-copy {
        margin: 0 !important;
        max-width: 100% !important;
        padding: 0 !important;
        position: relative !important;
        text-align: left !important;
        z-index: 2 !important;
    }

    /* ---------------------------------------------------------
       TEXTO PRINCIPAL
       --------------------------------------------------------- */
    .event-page .event-hero .event-kicker {
        margin: 0 !important;
        position: relative !important;
        z-index: 2 !important;
    }

    .event-page .event-hero h1 {
        font-size: clamp(3rem, 14vw, 4.9rem) !important;
        line-height: .92 !important;
        margin: 20px 0 24px !important;
        max-width: 100% !important;
        position: relative !important;
        z-index: 2 !important;
    }

    .event-page .event-hero .hero-subtitle {
        max-width: 100% !important;
        position: relative !important;
        z-index: 2 !important;
    }

    /* ---------------------------------------------------------
       BOTÕES FICAM DEPOIS DO TÍTULO,
       NUNCA SOBRE OS ROSTOS
       --------------------------------------------------------- */
    .event-page .event-hero .hero-actions {
        align-items: flex-start !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 20px !important;
        margin-top: 32px !important;
        position: relative !important;
        z-index: 2 !important;
    }

    /* O card lateral não é necessário no celular */
    .event-page .event-hero .hero-event-card {
        display: none !important;
    }

    /* ---------------------------------------------------------
       INFORMAÇÕES DO EVENTO NA BASE DO HERO
       --------------------------------------------------------- */
    .event-page .event-hero .hero-proof {
        border-top: 1px solid var(--event-line) !important;
        display: grid !important;
        grid-template-columns: 1fr !important;
        margin-top: 12px !important;
        position: relative !important;
        z-index: 2 !important;
    }

    .event-page .event-hero .hero-proof p,
    .event-page .event-hero .hero-proof p + p {
        border-bottom: 1px solid var(--event-line) !important;
        border-right: 0 !important;
        padding: 17px 0 !important;
    }

    .event-page .event-hero .hero-proof p:last-child {
        border-bottom: 0 !important;
    }

    /* Retira sombra forte da região da fotografia */
    .event-page .event-hero-copy,
    .event-page .event-hero .hero-proof {
        text-shadow: none !important;
    }
}


/* =========================================================
   CELULARES PEQUENOS
   ========================================================= */
@media (max-width: 560px) {

    .event-page .event-hero > .event-shell {
        width: min(88vw, 1240px) !important;
    }

    .event-page .event-hero .hero-layout {
        /*
         * Mantém uma área ampla para a foto em aparelhos estreitos.
         * O valor em vw acompanha proporcionalmente a largura.
         */
        padding-top: clamp(455px, 122vw, 585px) !important;
    }

    .event-page .event-hero h1 {
        font-size: clamp(2.9rem, 13.5vw, 4.35rem) !important;
    }
}


/* =========================================================
   CELULARES MUITO PEQUENOS
   ========================================================= */
@media (max-width: 390px) {

    .event-page .event-hero .hero-layout {
        padding-top: clamp(435px, 124vw, 520px) !important;
    }

    .event-page .event-hero h1 {
        font-size: clamp(2.7rem, 13vw, 4rem) !important;
    }

    .event-page .event-hero .event-button {
        width: 100% !important;
        justify-content: space-between !important;
    }
}