        :root {
            --gold: #d4af37;
            --dark: #050505;
            --white: #ffffff;
            --easing: cubic-bezier(0.16, 1, 0.3, 1);
        }

        body,
        html {
            margin: 0;
            padding: 0;
            font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
            background-color: var(--dark);
            color: var(--white);
            overflow-x: hidden;
        }

        /* Hide reCAPTCHA badge */
        .grecaptcha-badge {
            visibility: hidden;
        }

        /* --- TIPOGRAFIA ESTILO EDITORIAL (RESTAURADA) --- */
        h2 {
            font-size: 5vw;
            line-height: 0.95;
            margin: 0;
            text-transform: uppercase;
            font-weight: 300;
            letter-spacing: -2px;
            color: var(--white);
        }

        .text-col p {
            font-size: 1.1rem;
            max-width: 300px;
            color: #ccc;
        }

        /* --- BAR STACKED SECTION --- */
        .bar-stacked-section {
            width: 100%;
            height: 100vh;
            /* Pinned */
            position: relative;
            background-color: var(--dark);
            overflow: hidden;
            z-index: 20;
        }

        /* BAR START SCREEN */
        .bar-start-screen {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            z-index: 30;
            /* Above cards initially */
            text-align: center;
            width: 100%;
            pointer-events: none;
        }

        .bar-start-screen h2 {
            font-size: 7vw;
            color: var(--white);
            line-height: 0.9;
        }

        .bar-start-screen p {
            margin: 20px auto 0;
            font-size: 1.5rem;
            color: rgba(255, 255, 255, 0.8);
            max-width: 80%;
        }

        .bar-card {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            display: flex;
            align-items: center;
            justify-content: center;
            will-change: transform;
        }

        /* LETTERBOX CROP */
        .bar-card::before,
        .bar-card::after {
            content: "";
            position: absolute;
            left: 0;
            width: 100%;
            height: 10vh;
            /* Cinematic Bars */
            background-color: var(--dark);
            z-index: 4;
            pointer-events: none;
        }

        .bar-card::before {
            top: 0;
        }

        .bar-card::after {
            bottom: 0;
        }

        .bar-card img {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
            z-index: 1;
        }

        .bar-overlay {
            position: absolute;
            bottom: 0;
            left: 0;
            width: 100%;
            height: 70%;
            /* Fade from bottom */
            background: linear-gradient(to top, rgba(0, 0, 0, 0.95), transparent);
            z-index: 2;
        }

        .bar-content {
            position: relative;
            z-index: 5;
            /* Above black bars (4) */
            text-align: center;
            max-width: 600px;
            padding: 20px;
            margin-top: 10vh;
            /* Visual offset */
        }

        .bar-content h2 {
            font-size: 6vw;
            margin: 10px 0;
            color: var(--white);
        }

        .bar-content p {
            margin: 0 auto;
            max-width: 400px;
            font-size: 1.2rem;
            color: rgba(255, 255, 255, 0.8);
        }

        p {
            font-size: 1.2rem;
            line-height: 1.6;
            color: #aaa;
            max-width: 400px;
            margin-top: 40px;
        }

        .label {
            display: inline-block;
            /* Changed to inline-block for background fit */
            font-family: 'Courier New', monospace;
            color: var(--gold);
            margin-bottom: 20px;
            font-size: 0.9rem;
            letter-spacing: 2px;
            background: black;
            /* Solid black */
            padding: 8px 24px;
            border-radius: 0;
            /* No rounded corners */
        }

        /* --- 1. HERO SECTION --- */
        .hero-section {
            position: relative;
            height: 100vh;
            width: 100%;
            overflow: hidden;
            display: flex;
            align-items: center;
            justify-content: center;
            z-index: 2;
        }

        /* LETTERBOX BARS */
        .letterbox-bar {
            position: absolute;
            left: 0;
            width: 100%;
            height: 7vh;
            background: black;
            z-index: 20;
            /* High z-index to sit on top of video */
            pointer-events: none;
        }

        .letterbox-top {
            top: 0;
        }

        .letterbox-bottom {
            bottom: 0;
        }

        .hero-img {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
            filter: brightness(0.6);
            transform: scale(1.1);
            z-index: 1;
        }

        .brand-container {
            position: relative;
            z-index: 10;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            width: 100%;
            height: 100vh;
            padding: 10vh 20px 0 20px;
            /* Push content down to visually center logo */
        }

        /* LOGO LUXURY PREMIUM SIZE (Option 2) */
        .logo-svg {
            width: min(280px, 48vw);
            /* Slightly larger for better presence */
            height: auto;
            margin-bottom: 6vh;
            /* Balanced spacing for visual centering */
            margin-left: 25px;
            /* Visual centering for handwritten style */
            filter: drop-shadow(0 0 20px rgba(0, 0, 0, 0.5));
            overflow: visible;
        }

        /* LOGO ANIMATION FIX */
        .logo-svg>* {
            opacity: 0;
            transform: translateY(20px);
            fill: white;
        }

        /* Garantir que paths internos herdem ou tenham fill branco */
        .logo-svg path,
        .logo-svg polygon,
        .logo-svg rect {
            fill: white;
        }

        .hero-btn {
            padding: 10px 32px;
            /* Smaller, more refined */
            border: 1px solid rgba(255, 255, 255, 0.5);
            border-radius: 100px;
            color: white;
            text-transform: uppercase;
            letter-spacing: 2px;
            font-size: 0.75rem;
            /* Compact size */
            text-decoration: none;
            backdrop-filter: blur(10px);
            transition: all 0.4s var(--easing);
            /* Shifted up to match branding crosshair via JS transform to preserve layout */
            opacity: 0;
            transform: translateY(20px);
        }

        .hero-btn:hover {
            background: var(--white);
            color: var(--dark);
        }


        /* --- 2. LAYOUTS --- */
        .content-wrapper {
            position: relative;
            z-index: 5;
            background-color: var(--dark);
            padding-top: 10vh;
            padding-bottom: 15vh;
        }

        /* GALERIA SCATTER (Restaurada para o layout assimétrico limpo) */
        .gallery-container {
            position: relative;
            width: 100%;
            height: 160vh;
            background-color: var(--dark);
            overflow: hidden;
            display: flex;
            justify-content: center;
            margin-bottom: 15vh;
        }

        .gallery-text-overlay {
            position: absolute;
            top: 40%;
            z-index: 10;
            text-align: center;
            width: 100%;
            pointer-events: none;
        }

        .marquee-overlay {
            position: absolute;
            top: 50%;
            /* Strictly centered at intersection */
            left: 50%;
            transform: translate(-50%, -50%);
            z-index: 30;
            text-align: center;
            color: #fff;
            pointer-events: none;
            /* Allow clicks to pass through if needed */
            mix-blend-mode: normal;
            width: auto;
            max-width: 80%;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;

            /* Removed Box/Ellipse styling */
            background: transparent;
            backdrop-filter: none;
            -webkit-backdrop-filter: none;
            mask-image: none;
            -webkit-mask-image: none;
            padding: 0;
            border: none;
            margin: 0;
            /* Reset margins */
        }

        .marquee-overlay h2 {
            margin-bottom: 5px;
            /* Tighter spacing */
            /* Gaussian Blur Offset Path Effect */
            filter:
                drop-shadow(0 0 5px rgba(0, 0, 0, 0.9)) drop-shadow(0 0 10px rgba(0, 0, 0, 0.8)) drop-shadow(0 0 20px rgba(0, 0, 0, 0.6));
            /* Reset basic text-shadow */
            text-shadow: none;
        }

        .marquee-overlay p {
            margin-top: 0;
            /* Tighter spacing */
            opacity: 1;
            font-weight: 500;
            /* Enhance readability */
            text-shadow:
                0 0 10px rgba(0, 0, 0, 0.9),
                0 0 5px rgba(0, 0, 0, 0.9);
        }

        .gallery-text-overlay h2 {
            font-size: 7vw;
        }

        p {
            font-size: 1rem;
            letter-spacing: 1px;
            line-height: 1.6;
            color: white;
            /* White color */
        }

        .gallery-text-overlay p {
            position: relative;
            margin: 20px auto 0;
            max-width: 400px;
            color: rgba(255, 255, 255, 0.8);
            font-size: 0.9rem;
            letter-spacing: 4px;
            line-height: 1.5;
            text-transform: uppercase;
            text-align: center;
            z-index: 20;
        }

        .grid-item {
            position: absolute;
            overflow: hidden;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
        }

        .grid-item img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

        /* Posições da Galeria */
        .pos-1 {
            width: 35vw;
            /* Wider horizontal crop */
            height: 35vw;
            top: 10%;
            left: 10%;
            /* Shifted right */
            z-index: 2;
        }

        .pos-2 {
            width: 30vw;
            height: 30vw;
            top: 12%;
            right: 15%;
            z-index: 1;
        }

        .pos-3 {
            width: 40vw;
            height: 25vw;
            bottom: 5%;
            left: 10%;
            z-index: 3;
        }

        .pos-4 {
            width: 28vw;
            /* Wider crop */
            height: 32vw;
            bottom: 5%;
            right: 12%;
            /* Shifted closer to center */
            z-index: 2;
        }

        .pos-4 img {
            object-position: 35% center;
            /* Shift focus left */
        }

        /* SEÇÕES EDITORIAIS */
        .editorial-section {
            position: relative;
            min-height: 100vh;
            display: grid;
            grid-template-columns: 1fr 1fr;
            align-items: center;
            padding: 0 5vw;
            margin-bottom: 20vh;
        }

        .editorial-section.inverted {
            direction: rtl;
        }

        .editorial-section.inverted .text-col {
            direction: ltr;
            text-align: right;
        }

        .text-col {
            padding: 5vw;
            position: relative;
            z-index: 10;
        }

        .title-mask {
            overflow: hidden;
            display: block;
            margin-bottom: 10px;
        }

        .title-mask h2 {
            transform: translateY(120%);
            transition: transform 1.2s var(--easing);
        }

        .text-col p {
            opacity: 0;
            transform: translateY(30px);
            transition: all 1s var(--easing);
        }

        .img-col {
            position: relative;
            height: 85vh;
            width: 100%;
            overflow: hidden;
            clip-path: inset(100% 0 0 0);
            transition: clip-path 1.5s var(--easing);
        }

        .reveal-img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transform: scale(1.3);
            transition: transform 1.5s var(--easing);
            filter: brightness(0.8) contrast(1.1);
        }

        /* Estado Ativo */
        .editorial-section.active h2 {
            transform: translateY(0);
        }

        .editorial-section.active p {
            opacity: 1;
            transform: translateY(0);
        }

        .editorial-section.active .img-col {
            clip-path: inset(0 0 0 0);
        }

        .editorial-section.active .reveal-img {
            transform: scale(1);
        }

        /* --- 3. BAR SECTION --- */
        .bar-section {
            position: relative;
            height: 100vh;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .bar-bg {
            position: absolute;
            width: 80%;
            height: 80%;
            clip-path: inset(0 100% 0 0);
            transition: clip-path 1.5s var(--easing);
        }

        .bar-bg img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

        .bar-content {
            position: relative;
            z-index: 5;
            text-align: center;
        }

        .bar-content h2 {
            font-size: 8vw;
            color: transparent;
            -webkit-text-stroke: 1px var(--white);
        }

        .bar-section.active .bar-bg {
            clip-path: inset(0 0 0 0);
        }

        /* --- MARQUEE SECTION --- */
        .marquee-section {
            position: relative;
            width: 100%;
            height: 100vh;
            background-color: var(--dark);
            overflow: hidden;
            display: flex;
            align-items: center;
            justify-content: center;
            z-index: 5;
            contain: paint;
            /* Optimization */
        }

        .ribbon-group {
            position: absolute;
            width: 120vw;
            /* Wider than screen */
            left: 50%;
            top: 50%;
            transform-origin: center center;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            pointer-events: none;
            will-change: transform;
            /* Optimization */
        }

        /* --- 5. FINAL WAITLIST --- */
        .final-section {
            position: relative;
            background-color: var(--dark);
            width: 100%;
            height: 100vh;
            overflow: hidden;
            display: flex;
            align-items: center;
            justify-content: center;
            z-index: 25;
            /* Higher to cover end of Bar */
            margin-top: -50vh;
            /* Aggressive pull-up to close gap */
        }

        /* Top Fade for Smooth Transition */
        .final-section::before {
            content: "";
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 60vh;
            /* Deeper fade */
            /* Start solid black to hide cut, then fade */
            background: linear-gradient(to bottom, #080808 30%, transparent 100%);
            z-index: 5;
            /* Above image */
            pointer-events: none;
        }

        .final-bg-img {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 120vh;
            /* Taller for Parallax */
            object-fit: cover;
            object-position: center;
            will-change: transform;
            z-index: 1;
        }

        .final-overlay {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: linear-gradient(to top, #000 10%, rgba(0, 0, 0, 0.6) 50%, rgba(0, 0, 0, 0.2) 100%);
            z-index: 2;
        }

        .final-content {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            z-index: 3;
            width: 100%;
            max-width: 500px;
            text-align: center;
            opacity: 0;
        }

        .final-title {
            font-size: clamp(2rem, 4vw, 3rem);
            text-transform: uppercase;
            letter-spacing: 5px;
            margin: 0;
            color: var(--white);
            margin-bottom: 40px;
        }

        /* --- MARQUEE SECTION --- */
        /* --- MARQUEE SECTION --- */
        /* --- MARQUEE SECTION (SIMPLIFIED REFACTOR) --- */


        .form-group {
            display: flex;
            flex-direction: column;
            gap: 20px;
        }

        .input-minimal {
            background: transparent;
            border: none;
            border-bottom: 1px solid rgba(255, 255, 255, 0.3);
            padding: 10px 0;
            color: white;
            font-size: 1rem;
            outline: none;
            text-align: center;
            transition: border-color 0.3s;
        }

        .input-minimal:focus {
            border-bottom-color: var(--gold);
        }

        .submit-final {
            margin-top: 40px;
            padding: 15px 50px;
            background: transparent;
            color: white;
            border: 1px solid rgba(255, 255, 255, 0.5);
            border-radius: 100px;
            font-weight: 700;
            text-transform: uppercase;
            letter-spacing: 3px;
            font-size: 0.9rem;
            cursor: pointer;
            backdrop-filter: blur(10px);
            transition: all 0.4s var(--easing);
        }

        .submit-final:hover {
            background: var(--white);
            color: var(--dark);
        }

        @media (max-width: 768px) {

            .editorial-section,
            .editorial-section.inverted {
                grid-template-columns: 1fr;
                direction: ltr;
                text-align: left;
                margin-bottom: 10vh;
            }

            .editorial-section.inverted .text-col {
                text-align: left;
            }

            .text-col {
                padding: 20px;
                order: 2;
            }

            .img-col {
                height: 50vh;
                order: 1;
            }

            h2 {
                font-size: 3rem;
            }

            .final-title {
                font-size: 2.5rem;
            }

            .logo-svg {
                width: 90vw;
            }

            .gallery-container {
                height: 100vh;
            }

            .pos-1 {
                width: 60vw;
                height: 40vh;
                top: 10%;
                left: 5%;
            }

            .pos-2 {
                width: 30vw;
                height: 20vh;
                top: 5%;
                right: 5%;
            }

            .pos-3 {
                width: 80vw;
                height: 30vh;
                bottom: 10%;
                left: 10%;
            }

            .pos-4 {
                display: none;
            }
        }

        /* --- CURATION SECTION (GSAP PINNED) --- */
        .curation-section {
            width: 100%;
            height: 100vh;
            /* Pinned duration added by GSAP */
            position: relative;
            background: #000;
            z-index: 10;
            overflow: hidden;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .curation-sticky {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        /* LETTERBOX CROP (Black Bars) */
        .curation-sticky::before,
        .curation-sticky::after {
            content: '';
            position: absolute;
            left: 0;
            width: 100%;
            height: 10vh;
            /* Adjust crop size */
            background: #000;
            z-index: 20;
            /* Above images and text */
        }

        .curation-sticky::before {
            top: 0;
        }

        .curation-sticky::after {
            bottom: 0;
        }

        /* Fullscreen Image Container */
        .cur-img-container {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            z-index: 1;
            /* Performance Hint */
            will-change: opacity;
        }

        .cur-img {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
            opacity: 0;
            /* Hidden by default */
            filter: brightness(0.4);
            /* Darker for better text contrast */
            transition: none;
            /* Handled by GSAP */
            will-change: opacity, transform;
            /* Hint for stacking */
        }

        .cur-img.visible {
            opacity: 1;
            z-index: 2;
        }

        /* Centered Caption Overlay */
        .cur-captions {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            width: 80%;
            height: auto;
            text-align: center;
            z-index: 10;
            pointer-events: none;
        }

        .cur-text {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            width: 100%;
            opacity: 0;
            /* Controlled by GSAP */
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
        }

        .cur-text.visible {
            opacity: 1;
        }

        /* Typography */
        .cur-label {
            display: none;
            /* Hide individual numbers */
            color: var(--gold);
            font-size: 1rem;
            letter-spacing: 4px;
            font-weight: 700;
            margin-bottom: 2rem;
            display: inline-block;
            /* Changed for background fit */
            background: black;
            /* Solid black */
            padding: 8px 24px;
            border-radius: 0;
            /* No rounded corners */
        }

        .cur-title {
            font-size: 5vw;
            line-height: 1;
            color: #fff;
            text-transform: uppercase;
            font-weight: 800;
            margin: 0 0 2rem 0;
        }

        .cur-desc {
            font-size: 1.25rem;
            font-weight: 300;
            color: rgba(255, 255, 255, 0.9);
            max-width: 600px;
            line-height: 1.6;
        }

        /* START SCREEN (COVER) */
        .curation-start-screen {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            z-index: 30;
            /* Above everything initially */
            text-align: center;
            width: 100%;
            pointer-events: none;
        }

        .curation-start-screen h2 {
            font-size: 7vw;
            /* Even bigger than standard title */
            color: var(--white);
            line-height: 0.9;
        }

        .curation-start-screen p {
            margin: 20px auto 0;
            /* Forced Centering */
            font-size: 1.5rem;
            color: rgba(255, 255, 255, 0.8);
            max-width: 80%;
            /* Prevent full width stretching */
        }

        /* --- NEW MARQUEE SECTION --- */
        /* --- NEW MARQUEE SECTION (DOUBLE LAYER) --- */
        .marquee-section {
            position: relative;
            width: 100%;
            height: 100vh;
            overflow: hidden;
            background: #000;
            z-index: 5;
            display: flex;
            align-items: center;
            justify-content: center;
            /* Force hardware acceleration */
            transform: translate3d(0, 0, 0);
        }

        /* Container for a full diagonal ribbon (Image + Text layers) */
        .ribbon-group {
            position: absolute;
            top: 50%;
            left: 50%;
            width: 150vw;
            /* Extra wide to cover rotation */
            height: 55vh;
            /* Matched to image track height to align edges */
            display: flex;
            align-items: center;
            justify-content: center;
            pointer-events: none;
            /* Let clicks pass through if needed */
        }

        /* --- GROUP 1: GOLD (Top) --- */
        .ribbon-group.group-1 {
            top: 50%;
            /* Re-centered */
            transform: translate(-50%, -50%) rotate(15deg);
            z-index: 20;
            /* On top of Group 2 */
        }

        /* --- GROUP 2: SILVER (Bottom) --- */
        .ribbon-group.group-2 {
            top: 50%;
            /* Re-centered */
            transform: translate(-50%, -50%) rotate(-15deg);
            z-index: 10;
            /* Below Group 1 */
        }


        /* --- LAYERS --- */

        /* 1. Bottom Layer: Image Track */
        .track-images {
            position: absolute;
            top: 50%;
            left: 0;
            transform: translateY(-50%);
            width: max-content;
            /* Fit content exactly for correct loop math */
            height: 55vh;
            /* Reduced by 20% from 62.5vh */
            background: #000;
            display: flex;
            align-items: center;
            overflow: hidden;
            z-index: 1;
            will-change: transform;
        }

        .img-item {
            height: 100%;
            flex-shrink: 0;
            /* Maintain aspect ratio */
            width: 77vh;
            /* Proportional (35vh * 2) */
        }

        .img-item img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            display: block;
            /* brightness filter removed for max visibility */
        }

        /* 2. Top Layer: Text Track */
        .track-text {
            position: absolute;
            bottom: 0;
            /* Aligned to Bottom Edge */
            left: 0;
            transform: none;
            /* Removed centering */
            width: max-content;
            /* Fit content for loop */
            height: 8vh;
            /* Narrow height for text layer */
            display: flex;
            align-items: center;
            z-index: 2;
            /* On top of images */
            box-shadow: 0 10px 40px rgba(0, 0, 0, 0.5);
            /* Drop shadow for depth */
            will-change: transform;
        }

        /* Specific text track styling per group */
        .group-1 .track-text {
            background: var(--gold);
        }

        .group-2 .track-text {
            background: #d3d3d3;
            /* Silver */
        }

        .marquee-word {
            font-size: 3.5vh;
            font-weight: 800;
            color: black;
            text-transform: uppercase;
            margin-right: 0;
            line-height: 1;
            white-space: nowrap;
            /* Symmetric Alignment */
            display: flex;
            align-items: center;
        }

        .marquee-word::after {
            content: ".";
            margin-left: 3vw;
            margin-right: 3vw;
            color: inherit;
        }





        .marquee-overlay h2 {
            font-size: 5vw;
            color: var(--white);
            text-transform: uppercase;
            line-height: 0.9;
            margin-bottom: 20px;
        }

        .marquee-overlay p {
            text-transform: uppercase;
            letter-spacing: 2px;
            font-size: 0.9rem;
        }

        /* --- FINAL SECTION: SCROLL REVEAL --- */
        .final-panorama-section {
            position: relative;
            width: 100%;
            height: 100vh;
            background-color: #0a0a0a;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 0;
            overflow: hidden;
            /* Contain video */
        }

        /* VIDEO BACKGROUND */
        .background-video {
            position: absolute;
            top: 50%;
            left: 50%;
            min-width: 100%;
            min-height: 100%;
            width: auto;
            height: auto;
            transform: translate(-50%, -50%);
            object-fit: cover;
            z-index: 0;
        }

        .panorama-overlay {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: linear-gradient(to bottom,
                    rgba(0, 0, 0, 0) 0%,
                    rgba(0, 0, 0, 0) 70%,
                    rgba(0, 0, 0, 0.95) 100%);
            pointer-events: none;
            z-index: 1;
        }

        .form-content {
            position: absolute;
            top: 50%;
            /* Perfect center */
            left: 50%;
            transform: translate(-50%, -50%);
            z-index: 10;
            max-width: 500px;
            width: 100%;
            text-align: center;
            opacity: 1;
            transition: all 1s cubic-bezier(0.4, 0, 0.2, 1);
        }

        .final-panorama-section.visible .form-content {
            opacity: 1;
            transform: translate(-50%, -50%);
        }

        .final-title {
            font-size: clamp(2rem, 4vw, 3rem);
            font-weight: 700;
            text-transform: uppercase;
            letter-spacing: 5px;
            margin: 0 0 40px 0;
            color: var(--white);
        }

        .form-group {
            display: flex;
            flex-direction: column;
            gap: 20px;
        }

        .input-minimal {
            background: transparent;
            backdrop-filter: blur(10px);
            -webkit-backdrop-filter: blur(10px);
            border: 1px solid rgba(255, 255, 255, 0.3);
            /* Thinner border */
            border-radius: 0;
            /* Rectangular */
            padding: 12px 30px;
            color: white;
            font-size: 0.9rem;
            font-weight: 700;
            text-transform: uppercase;
            letter-spacing: 3px;
            outline: none;
            text-align: center;
            transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
        }

        .input-minimal:focus {
            background: rgba(255, 255, 255, 0.1);
            border-color: rgba(255, 255, 255, 0.6);
        }

        .input-minimal::placeholder {
            color: rgba(255, 255, 255, 0.6);
            font-weight: 700;
            text-transform: uppercase;
            letter-spacing: 3px;
        }

        .submit-final {
            margin-top: 40px;
            padding: 12px 24px;
            /* Tighter padding - fits text */
            background: transparent;
            color: white;
            border: 1px solid rgba(255, 255, 255, 0.5);
            border-radius: 100px;
            font-weight: 700;
            text-transform: uppercase;
            letter-spacing: 3px;
            font-size: 0.9rem;
            cursor: pointer;
            backdrop-filter: blur(10px);
            transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
        }

        .submit-final:hover {
            background: var(--white);
            color: var(--dark);
        }

        @media (max-width: 850px) {
            .final-panorama-section {
                min-height: 150vh;
            }
        }

        @media (max-width: 600px) {
            .final-panorama-section {
                min-height: 120vh;
            }

            .final-title {
                font-size: 2rem;
            }
        }

        /* ========================================
   CLASSES PARA REMOVER INLINE STYLES (CSP)
   ======================================== */

        /* Honeypot field - hidden from users and bots */
        .visually-hidden {
            position: absolute;
            left: -9999px;
            width: 1px;
            height: 1px;
        }

        /* reCAPTCHA compliance text */
        .recaptcha-disclosure {
            font-size: 0.7rem;
            color: rgba(255, 255, 255, 0.5);
            text-align: center;
            margin-top: 20px;
            line-height: 1.4;
            max-width: 600px;
            margin-left: auto;
            margin-right: auto;
        }

        .recaptcha-disclosure a {
            color: rgba(255, 255, 255, 0.7);
            text-decoration: underline;
        }

        /* Gold colored labels (bar section) */
        .label-gold {
            color: var(--gold);
        }

        /* ========================================
   SUCCESS MESSAGE (Form Confirmation)
   ======================================== */
        .success-message {
            text-align: center;
            animation: fadeInUp 0.6s cubic-bezier(0.16, 1, 0.3, 1);
        }

        .success-icon {
            width: 80px;
            height: 80px;
            margin: 0 auto 30px;
            border: 2px solid var(--gold);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 2.5rem;
            color: var(--gold);
            animation: scaleIn 0.5s cubic-bezier(0.16, 1, 0.3, 1) 0.2s both;
        }

        .success-message h3 {
            font-size: clamp(1.5rem, 3vw, 2rem);
            color: var(--white);
            text-transform: uppercase;
            letter-spacing: 3px;
            margin: 0 0 15px 0;
        }

        .success-message p {
            font-size: 1rem;
            color: rgba(255, 255, 255, 0.7);
            margin: 0;
        }

        @keyframes fadeInUp {
            from {
                opacity: 0;
                transform: translateY(20px);
            }

            to {
                opacity: 1;
                transform: translateY(0);
            }
        }

        @keyframes scaleIn {
            from {
                opacity: 0;
                transform: scale(0.5);
            }

            to {
                opacity: 1;
                transform: scale(1);
            }
        }

        /* ========================================
   BACK TO TOP BUTTON (Discrete)
   ======================================== */
        .back-to-top {
            position: fixed;
            bottom: 30px;
            right: 30px;
            width: 50px;
            height: 50px;
            background: transparent;
            border: 1px solid rgba(255, 255, 255, 0.2);
            border-radius: 50%;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            opacity: 0;
            visibility: hidden;
            transform: translateY(20px);
            transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
            z-index: 1000;
            backdrop-filter: blur(10px);
            -webkit-backdrop-filter: blur(10px);
        }

        .back-to-top.visible {
            opacity: 1;
            visibility: visible;
            transform: translateY(0);
        }

        .back-to-top:hover {
            background: rgba(255, 255, 255, 0.1);
            border-color: rgba(255, 255, 255, 0.4);
        }

        .back-to-top svg {
            width: 20px;
            height: 20px;
            stroke: rgba(255, 255, 255, 0.6);
            stroke-width: 2;
            fill: none;
            transition: stroke 0.3s;
        }

        .back-to-top:hover svg {
            stroke: var(--white);
        }

        /* --- INTL-TEL-INPUT OVERRIDES REMOVED --- */

        /* Force center alignment for phone input and placeholder */
        input[type="tel"].input-minimal,
        input[type="tel"].input-minimal::placeholder {
            text-align: center;
        }

        /* --- SITE FOOTER --- */
        .site-footer {
            position: absolute;
            bottom: 20px;
            left: 50%;
            transform: translateX(-50%);
            width: auto;
            text-align: center;
            z-index: 20;
            /* Above overlay */
            pointer-events: none;
            white-space: nowrap;
            /* Prevent wrapping */
        }

        .site-footer p {
            font-size: 0.75rem;
            color: rgba(255, 255, 255, 0.4);
            text-transform: uppercase;
            letter-spacing: 2px;
            margin: 0;
            font-weight: 400;
        }