@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;1,500&display=swap');
        :root              { --header-bkg:rgba(5,9,12,.88); --header-borda:rgba(255,255,255,.15); --header-menu:#fff;
                               --fundo:#05070a; --fundo-secundario:#05070a; --fundo-card:#090d10; --fundo-claro:#edf1ef;
                               --texto:#fff; --texto-secundario:#9ba7ad; --texto-suave:#8d999e; --texto-escuro:#101416; --texto-faq:#566268;
                               --destaque:#a8e8ff; --destaque-texto:#071014;
                               --botao-fundo:#fff; --botao-texto:#080b0d; --botao-escuro-fundo:#0a0d0f; --botao-escuro-hover:#0d1418; --botao-escuro-texto:#fff;
                               --borda:#bdc7c9;
                               --faixa-fundo:#a8e8ff; --faixa-texto:#081014;
                               --footer-bkg:#05070a; --footer-texto:#aaa;
                               --painel-escuro:#05070a; --painel-escuro-texto:#fff; --painel-texto-fraco:#d8e0e4;
                               --cartao:#e4e9e7; interpolate-size:allow-keywords; }
        *                  { margin:0; padding:0; box-sizing:border-box; }
        html               { scroll-behavior:smooth; scrollbar-gutter:stable; }
        html:has(.modal-academia.aberto) { background:#000; scrollbar-color:#333 #000; }
        body               { overflow-x:hidden; font-family:'DM Sans',Arial,sans-serif; color:var(--texto); background:var(--fundo); }
        body.travado       { overflow:hidden; }
        a                  { color:inherit; text-decoration:none; }
        img                { display:block; width:100%; }
        button             { font:inherit; }
        .container         { width:min(1280px,calc(100% - 80px)); margin:auto; }
        .btn               { min-height:49px; padding:0 25px; display:inline-flex; align-items:center; justify-content:center; border:1px solid var(--botao-fundo); border-radius:30px; background:var(--botao-fundo); color:var(--botao-texto); font-size:11px; font-weight:700; letter-spacing:1.2px; text-transform:uppercase; transition:.3s; cursor:pointer; }
        .btn:hover         { border-color:var(--destaque); background:var(--destaque); transform:translateY(-2px); }
        .btn-escuro        { border-color:var(--botao-escuro-fundo); background:var(--botao-escuro-fundo); color:var(--botao-escuro-texto); }
        .btn-outline       { min-height:49px; padding:0 25px; display:inline-flex; align-items:center; justify-content:center; border:1px solid var(--texto); border-radius:30px; color:var(--texto); font-size:11px; font-weight:700; letter-spacing:1.2px; text-transform:uppercase; transition:.3s; }
        .btn-outline:hover { border-color:var(--destaque); color:var(--destaque); }
        .eyebrow           { display:block; color:var(--destaque); font-size:10px; font-weight:700; letter-spacing:2.5px; text-transform:uppercase; }
        .titulo            { margin-bottom:53px; display:grid; grid-template-columns:1.2fr .8fr; gap:70px; align-items:end; }
        .titulo h2         { margin-top:15px; font-family:'Playfair Display',Georgia,serif; font-size:clamp(48px,6vw,82px); font-weight:500; line-height:.96; }
        .titulo h2 em      { color:var(--destaque); font-weight:500; }
        .titulo p          { max-width:470px; color:var(--texto-secundario); font-size:14px; line-height:1.85; }

        header             { position:fixed; top:40px; left:0; z-index:9999; width:100%; height:84px; border-bottom:1px solid var(--header-borda); background:var(--header-bkg); backdrop-filter:blur(12px); }
        header .container  { height:100%; display:flex; align-items:center; justify-content:space-between; }
        .logo              { font-family:'Playfair Display',Georgia,serif; font-size:27px; letter-spacing:2px; color:var(--header-menu); }
        .logo span         { color:var(--destaque); }
        nav                { display:flex; align-items:center; gap:34px; }
        nav a              { color:var(--header-menu); font-size:10px; font-weight:700; letter-spacing:1.2px; text-transform:uppercase; }
        nav a:not(.btn):hover { color:var(--destaque); }
        nav a:not(.btn)    { position:relative; padding:10px 0; }
        nav a:not(.btn):after { position:absolute; left:50%; bottom:0; width:0; height:2px; content:""; background:var(--destaque); transform:translateX(-50%); transition:width .3s ease; }
        nav a:not(.btn):hover:after,nav a:not(.btn).active:after { width:100%; }
        .header-drop          { position:relative; flex-shrink:0; }
        .header-drop-btn      { width:42px; height:42px; display:grid; place-items:center; border:0; border-radius:50%; color:var(--header-menu); background:transparent; font-size:19px; cursor:pointer; transition:.25s; }
        .header-drop-btn:hover { filter:brightness(1.35); }
        .header-drop-menu     { background:var(--header-bkg); position:absolute; top:50px; right:0; z-index:50; width:150px; padding:7px; display:none; box-shadow:0 12px 30px rgba(0,0,0,.35); }
        .header-drop-menu.aberto { display:block; }
        .header-drop-item     { width:100%; padding:10px 12px; display:block; border:0; color:var(--header-menu); background:transparent; text-align:left; cursor:pointer; }
        .header-seta         { border-left:6px solid var(--header-menu); display:inline-block; width:0; height:0; margin-right:9px; vertical-align:middle; border-top:4px solid transparent; border-bottom:4px solid transparent; opacity:0; transition:.15s; }
        .header-drop-item:hover .header-seta,
        .header-drop-item.atual .header-seta { opacity:1; }
        .menu              { display:none; width:46px; height:46px; border:1px solid rgba(255,255,255,.35); border-radius:50%; background:rgba(0,0,0,.25); color:var(--header-menu); font-size:20px; cursor:pointer; }

        .hero              { min-height:780px; height:100vh; position:relative; display:grid; place-items:center; overflow:hidden; color:var(--painel-escuro-texto); background:url('https://images.unsplash.com/photo-1581009146145-b5ef050c2e1e?auto=format&fit=crop&w=2000&q=92') center 28%/cover fixed; }
        .hero:before       { position:absolute; inset:0; content:""; background:radial-gradient(circle at 50% 45%,rgba(14,35,48,.05),rgba(0,0,0,.83) 82%),linear-gradient(0deg,rgba(0,0,0,.78),rgba(0,10,17,.23) 55%,rgba(0,0,0,.5)); }
        .hero-glow         { position:absolute; inset:0; z-index:1; overflow:hidden; pointer-events:none; }
        .cruz              { position:absolute; width:115px; height:10px; border-radius:20px; background:var(--destaque); box-shadow:0 0 8px #fff,0 0 20px var(--destaque),0 0 45px var(--destaque); opacity:.85; transform:rotate(3deg); }
        .cruz:after        { position:absolute; top:-52px; left:52px; width:10px; height:115px; border-radius:20px; content:""; background:var(--destaque); box-shadow:0 0 8px #fff,0 0 20px var(--destaque),0 0 45px var(--destaque); }
        .cruz.c1           { top:17%; left:12%; transform:scale(.65) rotate(9deg); }
        .cruz.c2           { top:23%; left:38%; transform:scale(.5) rotate(-4deg); }
        .cruz.c3           { top:18%; right:35%; transform:scale(.68) rotate(5deg); }
        .cruz.c4           { top:25%; right:11%; transform:scale(.48) rotate(-9deg); }
        .cruz.c5           { top:38%; left:23%; transform:scale(.35) rotate(12deg); }
        .cruz.c6           { top:38%; right:22%; transform:scale(.35) rotate(-12deg); }
        .hero-conteudo     { position:relative; z-index:2; width:100%; text-align:center; transform:translateY(-2%); }
        .hero h1           { font-family:'Playfair Display',Georgia,serif; font-size:clamp(62px,8.5vw,138px); font-weight:500; line-height:.9; letter-spacing:-4px; text-shadow:0 3px 28px rgba(0,0,0,.75); }
        .hero h1 em        { margin-left:8vw; font-weight:500; }
        .hero p            { max-width:550px; margin:28px auto 30px; color:var(--painel-texto-fraco); font-size:14px; line-height:1.75; text-shadow:0 2px 10px #000; }
        .hero-acoes        { display:flex; justify-content:center; flex-wrap:wrap; gap:12px; }
        .descer            { position:absolute; bottom:32px; left:50%; z-index:3; width:36px; height:36px; border-right:2px solid #fff; border-bottom:2px solid #fff; transform:translateX(-50%) rotate(45deg); animation:descer 1.7s ease-in-out infinite; }
        @keyframes descer  { 0%,100% { bottom:38px; opacity:.4; } 50% { bottom:25px; opacity:1; } }

        section            { scroll-margin-top:120px; }
        .intro             { padding:100px 0; background:var(--fundo-claro); color:var(--texto-escuro); }
        .intro-grid        { display:grid; grid-template-columns:.45fr 1.55fr; gap:80px; }
        .intro-numero      { color:var(--texto-faq); font-family:'Playfair Display',Georgia,serif; font-size:23px; }
        .intro h2          { max-width:1030px; font-family:'Playfair Display',Georgia,serif; font-size:clamp(43px,5.7vw,77px); font-weight:500; line-height:1.08; }
        .intro h2 em       { color:var(--destaque); font-weight:500; }
        .intro-rodape      { margin-top:48px; display:grid; grid-template-columns:1fr 1fr; gap:60px; }
        .intro-rodape p    { color:var(--texto-faq); font-size:14px; line-height:1.85; }

        .modalidades       { padding:125px 0; background:var(--fundo-secundario); }
        .grid-modalidades  { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
        .modalidade        { position:relative; height:530px; overflow:hidden; border:0; border-radius:5px; background:var(--fundo-card); color:#fff; text-align:left; cursor:pointer; }
        .modalidade:after  { position:absolute; inset:0; content:""; background:linear-gradient(0deg,rgba(0,0,0,.95),transparent 65%); }
        .modalidade img    { height:100%; object-fit:cover; filter:saturate(.72); transition:.7s cubic-bezier(.2,.7,.2,1); }
        .modalidade:hover img { transform:scale(1.06); filter:saturate(1); }
        .modalidade-info   { position:absolute; left:27px; right:27px; bottom:27px; z-index:2; }
        .modalidade small  { color:var(--destaque); font-size:9px; font-weight:700; letter-spacing:2px; }
        .modalidade h3     { margin:8px 0 9px; font-family:'Playfair Display',Georgia,serif; font-size:37px; font-weight:500; color:#fff; }
        .modalidade p      { color:var(--texto-secundario); font-size:12px; line-height:1.55; }
        .modalidade-seta   { position:absolute; top:25px; right:25px; z-index:2; width:42px; height:42px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.6); border-radius:50%; font-size:18px; transition:.3s; }
        .modalidade:hover .modalidade-seta { border-color:var(--destaque); background:var(--destaque); color:var(--destaque-texto); transform:rotate(45deg); }

        .experiencia       { padding:100px 0; background:var(--fundo-claro); color:var(--texto-escuro); }
        .experiencia-grid  { display:grid; grid-template-columns:.9fr 1.1fr; gap:70px; align-items:stretch; }
        .experiencia-img   { min-height:600px; }
        .experiencia-img img { height:100%; object-fit:cover; }
        .experiencia-texto { padding:0; display:flex; flex-direction:column; justify-content:center; }
        .experiencia h2   { margin:15px 0 25px; font-family:'Playfair Display',Georgia,serif; font-size:30px; font-weight:500; line-height:.60; }
        .experiencia p    { max-width:570px; color:var(--texto-faq); font-size:14px; line-height:1.85; }
        .recursos         { margin-top:37px; border-top:1px solid var(--borda); }
        .recurso          { padding:19px 0; display:grid; grid-template-columns:42px 1fr; gap:13px; border-bottom:1px solid var(--borda); }
        .recurso b        { color:var(--destaque); font-family:'Playfair Display',Georgia,serif; }
        .recurso strong   { display:block; margin-bottom:4px; font-family:'Playfair Display',Georgia,serif; font-size:19px; font-weight:500; }
        .recurso span     { color:var(--texto-faq); font-size:12px; }

        .numeros          { padding:70px 0; border-bottom:1px solid var(--header-borda); }
        .numeros-grid     { display:grid; grid-template-columns:repeat(4,1fr); }
        .numero           { padding:15px 35px; border-right:1px solid var(--header-borda); text-align:center; }
        .numero:last-child { border-right:0; }
        .numero strong    { display:block; color:var(--destaque); font-family:'Playfair Display',Georgia,serif; font-size:54px; font-weight:500; }
        .numero span      { color:var(--texto-suave); font-size:10px; font-weight:700; letter-spacing:1.5px; text-transform:uppercase; }

        .wellness         { padding:125px 0; background:var(--painel-escuro); color:var(--painel-escuro-texto); }
        .wellness-grid    { display:grid; grid-template-columns:1.2fr .8fr; gap:18px; }
        .wellness-card    { min-height:590px; position:relative; overflow:hidden; }
        .wellness-card img { height:100%; object-fit:cover; }
        .wellness-card:after { position:absolute; inset:0; content:""; background:linear-gradient(0deg,rgba(0,0,0,.9),transparent 65%); }
        .wellness-info    { position:absolute; left:35px; right:35px; bottom:35px; z-index:2; }
        .wellness-info h3 { margin-bottom:9px; font-family:'Playfair Display',Georgia,serif; font-size:41px; font-weight:500; }
        .wellness-info p  { max-width:490px; color:var(--painel-texto-fraco); font-size:13px; line-height:1.7; }

        .planos           { padding:120px 0; background:var(--fundo-claro); color:#111517; }
        .planos .titulo p { color:#647075; }
        .grid-planos      { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
        .plano            { min-height:480px; padding:37px; display:flex; flex-direction:column; border:1px solid #bdc7c9; background:var(--cartao); }
        .plano.destaque   { background:#0b1013; color:#fff; transform:translateY(-13px); }
        .plano small      { color:#628899; font-size:10px; font-weight:700; letter-spacing:1.8px; }
        .plano h3         { margin-top:13px; font-family:'Playfair Display',Georgia,serif; font-size:39px; font-weight:500; }
        .preco            { margin:33px 0 25px; font-family:'Playfair Display',Georgia,serif; font-size:54px; }
        .preco span       { font-family:'DM Sans',Arial,sans-serif; font-size:11px; }
        .plano ul         { display:grid; gap:14px; color:#5d696e; font-size:13px; list-style:none; }
        .plano.destaque ul { color:#aebabe; }
        .plano .btn       { width:100%; margin-top:auto; }

        .depoimento       { min-height:650px; position:relative; display:grid; place-items:center; overflow:hidden; text-align:center; color:var(--painel-escuro-texto); background:url('https://images.unsplash.com/photo-1517838277536-f5f99be501cd?auto=format&fit=crop&w=1900&q=90') center 30%/cover fixed; }
        .depoimento:before { position:absolute; inset:0; content:""; background:rgba(1,7,11,.78); }
        .depoimento .container { position:relative; z-index:1; }
        .aspas            { color:var(--destaque); font-family:'Playfair Display',Georgia,serif; font-size:70px; line-height:.5; }
        .depoimento blockquote { max-width:960px; margin:25px auto 30px; font-family:'Playfair Display',Georgia,serif; font-size:clamp(30px,4vw,53px); line-height:1.25; }
        .depoimento cite  { color:var(--destaque); font-size:10px; font-style:normal; font-weight:700; letter-spacing:2px; text-transform:uppercase; }

        .faq              { padding:120px 0; background:var(--fundo-secundario); color:var(--painel-escuro-texto); }
        .faq-grid         { display:grid; grid-template-columns:.72fr 1.28fr; gap:90px; }
        .faq h2           { margin-top:14px; font-family:'Playfair Display',Georgia,serif; font-size:clamp(52px,6vw,78px); font-weight:500; line-height:1; }
        .faq-intro p      { margin-top:24px; color:var(--painel-texto-fraco); font-size:13px; line-height:1.8; }
        .faq-lista        { border-top:1px solid var(--header-borda); }
        .faq details      { border-bottom:1px solid var(--header-borda); }
        .faq details::details-content { height:0; overflow:hidden; opacity:0; transition:height .38s ease,opacity .28s ease,content-visibility .38s; transition-behavior:allow-discrete; }
        .faq details[open]::details-content { height:auto; opacity:1; }
        .faq summary      { min-height:85px; padding:22px 65px 22px 0; position:relative; display:flex; align-items:center; font-family:'Playfair Display',Georgia,serif; font-size:21px; cursor:pointer; list-style:none; }
        .faq summary::-webkit-details-marker { display:none; }
        .faq summary:after { position:absolute; right:3px; width:38px; height:38px; display:grid; place-items:center; border:1px solid #718086; border-radius:50%; content:"+"; font-family:'DM Sans',Arial,sans-serif; transition:.25s; }
        .faq details[open] summary:after { border-color:var(--destaque); background:var(--destaque); color:var(--destaque-texto); content:"−"; }
        .faq details p    { max-width:700px; padding:0 0 27px; color:var(--painel-texto-fraco); font-size:13px; line-height:1.8; }

        .cta-final        { padding:115px 0; text-align:center; background:var(--faixa-fundo); color:var(--faixa-texto); }
        .cta-final h2     { font-family:'Playfair Display',Georgia,serif; font-size:clamp(55px,7vw,96px); font-weight:500; line-height:.95; }
        .cta-final p      { max-width:570px; margin:22px auto 29px; color:var(--faixa-texto); line-height:1.7; }

        footer { padding:55px 0; background:var(--footer-bkg); color:var(--footer-texto); }
        footer strong { color:#fff; }
        footer p { color:var(--footer-texto); }
        footer a { color:#fff; }
        footer .container { display:grid; grid-template-columns:1fr auto auto; gap:50px; align-items:center; }

        .modal-academia    { position:fixed; inset:0; z-index:10000; display:grid; place-items:center; padding:25px; background:rgba(0,0,0,.88); backdrop-filter:blur(10px); opacity:0; visibility:hidden; transition:.3s; }
        .modal-academia.aberto { opacity:1; visibility:visible; }
        .modal-caixa       { width:min(1080px,100%); max-height:calc(100vh - 50px); display:grid; grid-template-columns:1.05fr .95fr; overflow:auto; background:#0b1013; box-shadow:0 30px 100px rgba(0,0,0,.6); transform:translateY(25px) scale(.98); transition:.35s; }
        .modal-academia.aberto .modal-caixa { transform:none; }
        .modal-imagem      { min-height:690px; }
        .modal-imagem img  { height:100%; object-fit:cover; }
        .modal-conteudo    { position:relative; padding:65px 55px; }
        .modal-fechar      { position:absolute; top:20px; right:20px; width:42px; height:42px; display:grid; place-items:center; border:1px solid #68777d; border-radius:50%; background:transparent; color:#fff; font-size:20px; cursor:pointer; transition:.25s; }
        .modal-fechar:hover { border-color:var(--destaque); background:var(--destaque); color:var(--destaque-texto); transform:rotate(90deg); }
        .modal-conteudo h2 { margin:13px 0 20px; font-family:'Playfair Display',Georgia,serif; font-size:55px; font-weight:500; }
        .modal-conteudo > p { color:#aab5b9; font-size:14px; line-height:1.85; }
        .modal-dados       { margin:30px 0; border-top:1px solid #455158; }
        .modal-dado        { padding:16px 0; display:grid; grid-template-columns:110px 1fr; gap:15px; border-bottom:1px solid #455158; }
        .modal-dado strong { color:var(--destaque); font-size:10px; letter-spacing:1px; text-transform:uppercase; }
        .modal-dado span   { color:#d9e1e3; font-size:12px; }
        .modal-beneficios  { margin-bottom:30px; display:grid; gap:9px; color:#adb9bd; font-size:12px; }

        @media(max-width:1000px) {
            .container         { width:min(100% - 42px,1280px); }
            nav                { position:fixed; inset:0; z-index:40; padding:105px 35px; display:flex; flex-direction:column; align-items:flex-start; gap:25px; background:var(--header-bkg); transform:translateX(100%); transition:.35s; }
            nav.aberto         { transform:translateX(0); }
            nav a              { font-family:'Playfair Display',Georgia,serif; font-size:27px; font-weight:500; text-transform:none; }
            .menu              { position:relative; z-index:41; display:block; }
            .header-drop       { display:none; }
            .hero              { background-attachment:scroll; }
            .grid-modalidades  { grid-template-columns:1fr 1fr; }
            .experiencia-grid { grid-template-columns:1fr; }
            .experiencia-img   { min-height:580px; }
            .wellness-grid     { grid-template-columns:1fr; }
            .faq-grid          { grid-template-columns:1fr; gap:45px; }
            .modal-caixa       { grid-template-columns:.9fr 1.1fr; }
            .modal-imagem      { min-height:620px; }
        }

        @media(max-width:700px) {
            .container         { width:calc(100% - 30px); }
            header             { height:75px; }
            .hero              { min-height:720px; height:100svh; background-position:62% center; }
            .cruz              { opacity:.45; }
            .hero h1           { font-size:61px; letter-spacing:-2px; }
            .hero h1 em        { margin-left:0; }
            .titulo            { grid-template-columns:1fr; gap:25px; }
            .intro             { padding:75px 0; }
            .intro-grid        { grid-template-columns:1fr; gap:25px; }
            .intro-rodape      { grid-template-columns:1fr; gap:20px; }
            .modalidades       { padding:85px 0; }
            .grid-modalidades  { grid-template-columns:1fr; }
            .modalidade        { height:470px; }
            .experiencia-img   { min-height:440px; }
            .experiencia-texto { padding:70px 25px; }
            .numeros-grid      { grid-template-columns:1fr 1fr; gap:35px 0; }
            .numero:nth-child(2) { border-right:0; }
            .wellness          { padding:85px 0; }
            .wellness-card     { min-height:470px; }
            .grid-planos       { grid-template-columns:1fr; }
            .plano.destaque    { transform:none; }
            .depoimento        { min-height:570px; background-attachment:scroll; }
            .faq              { padding:85px 0; }
            footer .container  { grid-template-columns:1fr; gap:18px; }
            .modal-academia    { padding:0; align-items:end; }
            .modal-caixa       { max-height:94svh; grid-template-columns:1fr; }
            .modal-imagem      { min-height:280px; height:280px; }
            .modal-conteudo    { padding:42px 25px; }
            .modal-conteudo h2 { font-size:42px; }
        }