﻿/* Base mobile-first e configuração visual. */
:root{--rose:#D5B3B8;--cream:#FBF8F4;--sand:#E9DAD5;--taupe:#8C7775;--taupe-dark:#594A49;--line:color-mix(in srgb,var(--taupe) 35%,transparent);--rose-hover:color-mix(in srgb,var(--rose) 90%,var(--taupe));--shadow-soft:color-mix(in srgb,var(--taupe) 7%,transparent);--shadow-hover:color-mix(in srgb,var(--taupe) 10%,transparent);--reveal-distance:18px;--reveal-duration:700ms}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;color:var(--taupe-dark);background:var(--cream);font:16px/1.75 Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}img,video,iframe{display:block;max-width:100%}a{color:inherit}a:focus-visible,summary:focus-visible{outline:3px solid var(--taupe-dark);outline-offset:5px}.skip-link{position:absolute;left:12px;top:-100px;padding:10px 18px;background:var(--cream);z-index:5}.skip-link:focus{top:12px}.container{width:min(1120px,calc(100% - 40px));margin-inline:auto}.section{padding-block:64px}
header{padding:22px 20px 18px;border-bottom:1px solid var(--line);text-align:center}header a{display:block;width:min(340px,100%);margin:auto}header img{width:100%;height:auto}header p{margin:12px 0 0;text-transform:uppercase;font-size:10px;letter-spacing:1.7px;color:var(--taupe-dark)}.video-section{padding:26px 20px 0}.video-placeholder{width:min(100%,320px);aspect-ratio:9/16;margin:auto;padding:24px 20px;border-radius:8px;background:var(--rose);color:var(--taupe-dark);display:flex;flex-direction:column;justify-content:space-between;text-align:center;box-shadow:10px 10px 0 var(--shadow-soft)}.video-placeholder small{font-size:10px;line-height:1.6;letter-spacing:1px}.video-placeholder p{font:32px/1.25 Georgia,serif;margin:22px 0}.video-placeholder div>span:last-child{font-size:12px;line-height:1.7;display:block}.play-outline{width:54px;height:54px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:50%;font-size:30px}
.eyebrow{margin:0 0 20px;font-size:10px;line-height:1.6;font-weight:700;text-transform:uppercase;letter-spacing:2px}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;overflow-wrap:break-word}h1{margin:0;font-size:clamp(39px,10vw,58px);line-height:1.12;letter-spacing:-1.5px}h2{margin:0 0 26px;font-size:36px;line-height:1.18;letter-spacing:-.8px}h3{margin:12px 0;font-size:26px;line-height:1.25}em{font-weight:400}p{margin:0 0 20px}.intro{text-align:center}.lead{max-width:690px;margin:26px auto 30px;color:var(--taupe-dark)}.button{min-height:54px;display:inline-flex;width:100%;max-width:360px;align-items:center;justify-content:space-between;gap:12px;padding:17px 22px;border:1px solid var(--taupe-dark);border-radius:3px;background:var(--taupe-dark);color:var(--taupe-dark);text-decoration:none;font-size:12px;line-height:1.5;font-weight:700;letter-spacing:.6px;text-transform:uppercase;transition:background .2s,transform .2s}.button:hover{background:var(--rose-hover);transform:translateY(-2px)}.button span{font-size:20px}.button.light{color:var(--taupe-dark);background:var(--cream);border-color:var(--taupe-dark)}.button.light:hover{background:var(--sand)}
.media{position:relative;display:grid;place-items:center;width:100%;min-width:0;aspect-ratio:1;background:var(--sand);border:1px solid var(--line);border-radius:4px;overflow:hidden;color:var(--taupe-dark)}.media::before{content:'';position:absolute;inset:12px;border:1px dashed var(--line);border-radius:2px;pointer-events:none}.media>span{max-width:90%;padding:25px;text-align:center;font-size:12px;line-height:1.6}.media img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.media.has-image::before{display:none}.portrait{aspect-ratio:4/5}.landscape{aspect-ratio:4/3}.intro-image{max-width:620px;margin:42px auto 0}.blue{background:var(--sand);color:var(--taupe-dark)}.blue .media{background:var(--cream);color:var(--taupe-dark);border-color:var(--line)}.blue .media::before{border-color:var(--line)}.heading{text-align:center;max-width:730px;margin:0 auto 36px}.applications{max-width:740px;margin:0 auto 32px;text-align:center;font-size:15px;font-weight:700;line-height:2}.journey-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.action{margin-top:36px;text-align:center}.split{display:grid;gap:36px}.serif-note{font:italic 23px/1.5 Georgia,serif;margin-block:28px}.soft{background:var(--sand)}.testimonials{display:grid;gap:18px}.testimonials .media{max-width:420px;margin:auto;background:var(--cream)}.process-grid{display:grid;gap:36px}.process-grid article{border-bottom:1px solid var(--line);padding-bottom:25px}.process-grid article p{color:var(--taupe-dark);margin:0}.number{display:block;margin-top:20px;color:var(--taupe-dark);font-size:12px;letter-spacing:2px}.access-note{margin:40px auto 0;padding-block:30px;border-block:1px dashed var(--line);text-align:center;max-width:700px;font:23px/1.5 Georgia,serif}.access-note p:last-child{margin:0}.creation-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.creation-gallery>:first-child{grid-column:1/-1}.bonus-list{display:grid;gap:40px}.bonus{display:grid;gap:24px;border-bottom:1px solid var(--line);padding-bottom:36px}.bonus .eyebrow{margin:0 0 10px}.bonus h3{font-size:30px}.bonus p:last-child{margin-bottom:0;color:var(--taupe-dark)}.offer-layout{display:grid;gap:36px}.offer-list{list-style:none;padding:0;margin:30px 0 0}.offer-list li{position:relative;padding:10px 0 10px 25px;border-bottom:1px solid var(--line);font-size:15px}.offer-list li::before{content:'✓';position:absolute;left:0}.offer-panel{background:var(--cream);color:var(--taupe-dark);padding:32px 22px;border-radius:6px;text-align:center}.price{margin:30px 0 14px;line-height:1.2}.price>span{display:block;font-size:16px;margin-bottom:8px}.price strong{display:block;font:52px/1.2 Georgia,serif;letter-spacing:-2px}.price-note{font-size:12px;color:var(--taupe-dark);margin-bottom:26px}#checkout-status{font-size:13px;margin:18px 0}#checkout-status:focus{outline:2px solid var(--taupe);outline-offset:5px}.offer-footnote{margin:26px 0 0;padding-top:22px;border-top:1px solid var(--line);font-size:13px;color:var(--taupe-dark)}.guarantee{text-align:center}.guarantee-number{display:block;font:80px/1 Georgia,serif;color:var(--taupe);margin:25px auto}.guarantee h2{margin-bottom:0}.faq{max-width:800px;margin:auto}.faq details{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;padding:22px 30px 22px 0;font-size:16px;font-weight:700;list-style:none;position:relative}.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:'+';position:absolute;right:3px;top:18px;font-weight:400;font-size:26px}.faq details[open] summary::after{content:'−'}.faq details p{padding-right:20px;color:var(--taupe-dark);font-size:14px}.closing{text-align:center;border-top:1px dashed var(--line)}.closing h2{max-width:650px;margin:0 auto 32px}footer{padding:30px 20px;border-top:1px solid var(--line);text-align:center;font-size:12px;color:var(--taupe-dark)}footer p{margin-bottom:8px}footer a{display:inline-block;margin-top:10px;padding:6px}
/* Sem JavaScript, todo o conteúdo permanece visível. */
[data-reveal].is-revealing{animation:soft-reveal var(--reveal-duration) ease both}@keyframes soft-reveal{from{opacity:.35;transform:translateY(var(--reveal-distance))}to{opacity:1;transform:translateY(0)}}
@media(min-width:700px){.container{width:min(1120px,calc(100% - 80px))}.section{padding-block:88px}header a{width:380px}header p{font-size:11px}.video-section{padding-top:36px}.video-placeholder{width:340px}h1{font-size:66px;max-width:900px;margin-inline:auto}h2{font-size:46px}.lead{font-size:18px}.journey-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.split{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px;align-items:center}.testimonials{grid-template-columns:repeat(3,minmax(0,1fr))}.process-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}.creation-gallery{grid-template-columns:1.2fr 1fr;grid-template-rows:repeat(2,1fr);gap:20px}.creation-gallery>:first-child{grid-column:1;grid-row:1/3;height:100%}.creation-gallery>:not(:first-child){aspect-ratio:4/3}.bonus{grid-template-columns:1fr 1fr;gap:48px;align-items:center;padding-bottom:40px}.bonus:nth-child(even) .media{order:2}.bonus:nth-child(3),.bonus:nth-child(4){background:var(--sand);padding:30px;border:0;border-radius:4px}.offer-layout{grid-template-columns:1.2fr 1fr;align-items:center;gap:60px}.offer-panel{padding:42px 28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}.button:hover{transform:none}[data-reveal].is-revealing{animation:none}}

/* Refinamentos: barra azul, movimento sequencial e detalhes artesanais. */
header{background:var(--taupe);border-bottom-color:transparent}
/* O arquivo oficial tem fundo claro: uma placa discreta preserva seu contraste. */
header a{background:var(--cream);padding:10px 14px;border-radius:3px}
header p{color:var(--taupe-dark);font-weight:700;font-size:11px;letter-spacing:1.2px}
header a:focus-visible{outline-color:var(--taupe-dark)}
.motion-reveal{animation:editorial-reveal var(--reveal-duration) cubic-bezier(.22,1,.36,1) var(--reveal-delay,0ms) both}
@keyframes editorial-reveal{from{opacity:.18;transform:translateY(var(--reveal-distance))}to{opacity:1;transform:translateY(0)}}
.button{transition:background .3s ease,box-shadow .3s ease,transform .3s ease}
.button span{transition:transform .3s ease}
.button:active{transform:translateY(0);box-shadow:none}
/* Parallax apenas decorativo: não desloca textos, imagens ou áreas de toque. */
.guarantee{position:relative;isolation:isolate}
.guarantee::before{content:'';position:absolute;width:132px;height:132px;left:calc(50% - 66px);top:92px;border:1px dashed var(--line);border-radius:50%;transform:translateY(var(--thread-offset,0px));pointer-events:none;z-index:-1}
@media(hover:hover) and (pointer:fine){
  .button:hover{transform:translateY(-3px);box-shadow:0 8px 20px var(--shadow-hover)}
  .button:hover span{transform:translate(3px,-2px)}
  .journey-gallery .media,.testimonials .media,.creation-gallery .media{transition:transform .45s cubic-bezier(.22,1,.36,1),box-shadow .45s ease}
  .journey-gallery .media:hover,.testimonials .media:hover,.creation-gallery .media:hover{transform:translateY(-3px);box-shadow:0 8px 20px var(--shadow-soft)}
  .media img{transition:transform .7s ease}
  .media:hover img{transform:scale(1.015)}
}
@media(min-width:700px){.guarantee::before{top:116px}}
@media(prefers-reduced-motion:reduce){
  .motion-reveal{animation:none}
  .guarantee::before{transform:none}
  .button,.button span,.journey-gallery .media,.testimonials .media,.creation-gallery .media,.media img{transition:none}
  .button:hover,.button:hover span,.journey-gallery .media:hover,.testimonials .media:hover,.creation-gallery .media:hover,.media:hover img{transform:none}
}
header p{color:var(--taupe-dark)}


/* Teste de paleta: somente cores, sem alterar layout ou movimento. */
.button,.button.light{background:var(--rose);border-color:var(--rose);color:var(--taupe-dark)}
.button:hover,.button.light:hover{background:var(--rose-hover);border-color:var(--rose-hover)}
.blue{color:var(--taupe-dark)}
.blue h2,.blue h3{color:var(--taupe-dark)}
.blue .media{background:var(--sand);color:var(--taupe-dark);border-color:var(--line)}
.blue .media::before{border-color:var(--line)}
.offer-list li{border-bottom-color:var(--line)}
.number,.guarantee-number{color:var(--rose)}
.media::before{border-color:var(--line)}


/* Paleta suave: azul original nos títulos onde o contraste é suficiente. */
h1,h2{color:var(--taupe)}
/* Azul sobre areia não atinge contraste para títulos: usar sua tonalidade escura. */
.soft h2,.soft h3,.bonus:nth-child(3) h3,.bonus:nth-child(4) h3{color:var(--taupe-dark)}
.blue h2,.blue h3{color:var(--taupe-dark)}
.number{color:var(--taupe-dark)}


/* Azul + rosa antigo: faixas fortes separadas por superfícies claras. */

header{background:var(--rose)}
h1,h2,h3{color:var(--taupe-dark)}
.blue h2,.blue h3{color:var(--taupe-dark)}
.soft{color:var(--taupe-dark)}
.soft .media{color:var(--taupe-dark)}
#oferta,.closing{background:var(--rose);color:var(--taupe-dark)}
#oferta h2,.closing h2{color:var(--taupe-dark)}
.offer-panel{color:var(--taupe-dark)}
.number{color:var(--taupe-dark)}
.bonus:nth-child(3) p:last-child,.bonus:nth-child(4) p:last-child{color:var(--taupe-dark)}
/* Sem JS: galeria horizontal utilizável com rolagem nativa. */
.testimonial-carousel{min-width:0}
.testimonials{display:flex;gap:18px;overflow-x:auto;padding:18px 0 24px;scroll-snap-type:x proximity}
.testimonials>.media{flex:0 0 86%;max-width:none;margin:0;scroll-snap-align:center;border-radius:10px;box-shadow:0 5px 15px var(--shadow-soft)}
.testimonials:focus-visible{outline:2px solid var(--taupe-dark);outline-offset:3px}
.testimonials.carousel-ready{display:block;overflow:hidden;scroll-snap-type:none;touch-action:pan-y;cursor:grab}
.testimonials.carousel-ready.is-dragging{cursor:grabbing}
.carousel-track,.carousel-group{display:flex;gap:18px;width:max-content}
.carousel-track{will-change:transform}
.carousel-group{flex-shrink:0}
.carousel-group .media{width:var(--carousel-card-width);max-width:none;flex-shrink:0;margin:0;border-radius:10px;box-shadow:0 5px 15px var(--shadow-soft);transform:scale(var(--card-scale,1));opacity:var(--card-opacity,1);transition:transform .25s ease,opacity .25s ease}
.carousel-group img{pointer-events:none;user-select:none}
@media(min-width:700px){.testimonials>.media{flex-basis:calc((100% - 36px)/3)}}
@media(prefers-reduced-motion:reduce){.carousel-track{will-change:auto}.carousel-group .media{transition:none;transform:none;opacity:1}}
.carousel-track{position:relative}


/* Efeitos premium: apenas movimento, sem alterações de cores ou layout. */
.premium-text-reveal{animation:premium-text var(--reveal-duration,800ms) cubic-bezier(.22,1,.36,1) var(--reveal-delay,0ms) both}
@keyframes premium-text{from{opacity:0;transform:translateY(var(--reveal-distance,26px))}to{opacity:1;transform:translateY(0)}}
.premium-image.image-revealing{animation:premium-mask var(--image-reveal-duration,1000ms) cubic-bezier(.22,1,.36,1) both}
.premium-image.reveal-sideways.image-revealing{animation-name:premium-mask-side}
.premium-image.image-revealing>img,.premium-image.image-revealing>span{animation:premium-image-zoom var(--image-reveal-duration,1000ms) cubic-bezier(.22,1,.36,1) both}
@keyframes premium-mask{from{clip-path:inset(100% 0 0 0)}to{clip-path:inset(0 0 0 0)}}
@keyframes premium-mask-side{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
@keyframes premium-image-zoom{from{transform:scale(var(--image-reveal-zoom,1.04))}to{transform:scale(1)}}
.premium-parallax{translate:0 var(--premium-offset,0px)}
@media(prefers-reduced-motion:reduce){
  .premium-text-reveal,.premium-image.image-revealing,.premium-image.image-revealing>img,.premium-image.image-revealing>span{animation:none}
  .premium-parallax{translate:none}
}


/* PNG original dos logotipos, sem fundo adicional. */
header a{background:transparent}

/* Fotografias reais: mantém os espaços e mostra o conteúdo completo. */
.media.has-image img{object-fit:contain;object-position:center}
[data-asset="quem-somos"] img{object-position:center center}
.testimonials .media img{object-fit:contain}

/* Fotografias preenchidas e sem molduras; depoimentos preservados. */
.media.has-image:not(.testimonials .media){padding:0;border:0;outline:none;box-shadow:none}
.media.has-image:not(.testimonials .media):hover{box-shadow:none}
.media.has-image:not(.testimonials .media) img{width:100%;height:100%;object-fit:cover;object-position:center}
[data-asset="apresentacao"] img{object-position:center 56%}
[data-asset="quem-somos"] img{object-position:center 50%}
/* Galeria independente: dois cards menores lado a lado no celular. */
.creation-gallery>.gallery-carousel{grid-column:1/-1;aspect-ratio:auto;min-width:0;position:relative}
.gallery-viewport{overflow-x:auto;overflow-y:hidden;aspect-ratio:2.08;border-radius:4px;touch-action:pan-y;outline-offset:4px}
.gallery-viewport:focus-visible{outline:2px solid var(--taupe-dark)}
.gallery-track,.gallery-group{display:flex;gap:12px;width:max-content;height:100%}
.gallery-track{position:relative}
.gallery-group{flex-shrink:0}
.gallery-photo{flex-shrink:0;width:var(--gallery-card-width,calc((100vw - 52px)/2));height:100%;aspect-ratio:auto}
.gallery-viewport.gallery-ready{overflow:hidden;cursor:grab}
.gallery-viewport.is-dragging{cursor:grabbing}
.gallery-photo img{user-select:none;pointer-events:none}
@media(min-width:700px){
  .creation-gallery{grid-template-rows:auto}
  .creation-gallery>.media:first-child{grid-row:1;height:auto}
  .creation-gallery>.gallery-carousel{grid-column:2;grid-row:1;align-self:stretch}
  .gallery-viewport{position:absolute;inset:0;aspect-ratio:auto;height:100%}
  .gallery-track,.gallery-group{gap:20px}
}

/* Ajustes pontuais: composição floral inteira, nova foto e CTA final. */
.media.has-image[data-asset="apresentacao"]{aspect-ratio:783 / 978}
.media.has-image[data-asset="apresentacao"] img{object-fit:contain;object-position:center}
.media.has-image[data-asset="apresentacao"]:hover img{transform:none}
.media.has-image[data-asset="jornada-bastidor"] img{object-position:center 65%}
.closing .button{background:var(--sand);border:0;padding:18px 23px;color:var(--taupe-dark);outline:none;box-shadow:none}
.closing .button span{color:var(--taupe-dark)}
.closing .button:hover{background:color-mix(in srgb,var(--sand) 95%,var(--taupe));border:0;outline:none;box-shadow:none}
.closing .button:active{border:0;outline:none;box-shadow:none}
.closing .button::before,.closing .button::after{content:none}
.closing .button:focus-visible{outline:2px solid var(--taupe-dark);outline-offset:5px}

/* Logo: redução de 20% somente até 767px, incluindo tablets pequenos. */
@media(max-width:699px){header a{width:min(272px,80%)}}
@media(min-width:700px) and (max-width:767px){header a{width:304px}}

/* Barra superior mais compacta somente no celular; logo e vídeo preservados. */
@media(max-width:767px){header{padding-top:9px;padding-bottom:5px}}

/* Preserva a posição da vitrine após retirar seus controles visuais. */
.testimonial-spacer{height:56.75px}



/* No mobile, não combinar máscara recortada com um trilho em movimento.
   Mantém a entrada suave de uma única vez, sem alterar dimensões ou enquadramento. */
@media(max-width:767px){
  .gallery-viewport.premium-image.image-revealing{animation-name:premium-gallery-mobile}
  @keyframes premium-gallery-mobile{from{opacity:.35;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
  .testimonials .carousel-group .media{transition:none}
}

/* Diagnóstico reversível: somente entradas por scroll no mobile.
   Não seleciona trilhos/cards internos dos carrosséis nem o parallax (translate). */
@media(max-width:767px){
  html.diagnostic-no-mobile-reveal .premium-text-reveal,
  html.diagnostic-no-mobile-reveal .premium-image,
  html.diagnostic-no-mobile-reveal .premium-image.image-revealing,
  html.diagnostic-no-mobile-reveal .premium-image>img,
  html.diagnostic-no-mobile-reveal .premium-image>span,
  html.diagnostic-no-mobile-reveal .motion-reveal,
  html.diagnostic-no-mobile-reveal [data-reveal].is-revealing{
    animation:none!important;
    opacity:1!important;
    transform:none!important;
    clip-path:none!important;
  }
}

/* Entrada mobile estável: pré-estado apenas fora da tela; nunca usa opacity:0,
   clip-path ou delay. O estado final coincide com o estilo normal do elemento. */
@media(max-width:767px){
  .mobile-reveal-prepared{opacity:.45;transform:translateY(30px)}
  .mobile-reveal-running{opacity:1;transform:translateY(0);transition:opacity .75s cubic-bezier(.22,1,.36,1),transform .75s cubic-bezier(.22,1,.36,1)}
}
@media(prefers-reduced-motion:reduce){
  .mobile-reveal-prepared,.mobile-reveal-running{opacity:1;transform:none;transition:none}
}
