/* Cada catálogo tem uma direção visual própria, com a fotografia em primeiro plano. */
.catalog-header{position:absolute;inset:0 0 auto;z-index:10;border:0;height:105px;color:var(--ink)}
.catalog-hero{position:relative;isolation:isolate;max-width:none;min-height:790px;min-height: min(900px,100svh);display:flex;align-items:center;padding:160px 7% 100px;overflow:hidden}
.catalog-hero figure{position:absolute;inset:0 0 0 auto;width:65%;max-width:none;z-index:-2}
.catalog-hero figure img{width:100%;height:100%;border-radius:0;object-fit:cover;object-position:50% 25%}
.catalog-hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,var(--paper) 5%,var(--paper) 30%,transparent 76%)}
.catalog-intro{position:relative;z-index:2;width:52%;max-width:650px}
.catalog-intro h1{font-size:clamp(65px,7.2vw,112px);font-family:var(--serif);font-weight:400;line-height:.97;letter-spacing:-3px;margin:32px 0}
.catalog-intro h1 em{font-size:1.04em}
.catalog-intro>p:not(.eyebrow){max-width:340px;font-size:12px;line-height:1.9}
.catalog-hero figcaption{position:absolute;bottom:27px;right:28px;left:25%;text-align:right;font-size:9px;color:#fff;line-height:1.8;text-shadow:0 1px 6px #000;background:#17171988;width:fit-content;margin-left:auto;padding:5px 10px;border-radius:3px}
.catalog-options{max-width:1440px;border:0;padding:85px 6%}
.catalog-section-heading{margin-bottom:50px}
.catalog-section-heading h2{font-family:var(--serif);font-size:70px}
.catalog-plans{grid-template-columns:1fr;gap:55px}
.catalog-plan{display:grid;grid-template-columns:1.1fr 1fr;border:0;border-radius:0;min-height:650px;overflow:hidden}
.catalog-plan>img{height:100%;min-height:650px;max-height:820px;aspect-ratio:auto;object-fit:cover;object-position:50% 20%}
.catalog-plan:nth-child(even)>img{order:2}
.plan-content{padding:55px clamp(25px,4.5vw,70px);justify-content:center}
.plan-content h3{font-size:60px;font-weight:400;letter-spacing:-1px;margin:20px 0}
.catalog-price{font-size:43px;margin:12px 0 5px}
.plan-content ul{flex:0;margin:24px 0 30px}
.plan-content .button{align-self:start;min-width:220px;font-size:11px}
.catalog-decor{position:absolute;inset:0;pointer-events:none;z-index:1;overflow:hidden}
.theme-gestante{--paper:#171515;--ink:#f4e9dc;--muted:#c5b9ad;--line:#615147;--catalog-accent:#dfbd94}
.theme-gestante .catalog-header>span{color:#e4c7a5}
.theme-gestante .catalog-plan{background:#282220}
.theme-gestante .catalog-information{background:#27211e}
.theme-gestante .catalog-hero:before{content:'';position:absolute;width:42vw;height:42vw;border:1px solid #d7aa7155;border-radius:50%;left:-23vw;bottom:-16vw;z-index:0}
.theme-gestante .catalog-intro:before{content:'✦';display:block;color:var(--catalog-accent);font-size:35px;margin-bottom:22px}
.theme-gestante .catalog-options>.catalog-section-heading{border-left:1px solid var(--catalog-accent);padding-left:28px}
.theme-infantil{--paper:#e8dff0;--ink:#352b46;--muted:#665b75;--line:#b8a4c2;--catalog-accent:#604477;color-scheme:light}
.theme-infantil .catalog-hero figure{width:64%}
.theme-infantil .catalog-intro h1{font-family:var(--sans);font-size:clamp(55px,5.8vw,88px);font-weight:500;letter-spacing:-4px;line-height:1.06}
.theme-infantil .catalog-intro h1 em{font-family:var(--serif);color:#77548a}
.theme-infantil .button-dark{background:#66467b;color:#fff7ff;border-radius:30px}
.theme-infantil .catalog-plan{background:#d5e6df;border-radius:90px 10px 90px 10px}
.theme-infantil .catalog-plan:nth-child(2){background:#eed5df;border-radius:10px 90px 10px 90px}
.theme-infantil .catalog-plan:nth-child(3){background:#dce6f1}
.theme-infantil .catalog-plan>img{background:#e6dedf;object-fit:contain}
.theme-infantil .catalog-section-heading h2{color:#644b77}
.theme-infantil .catalog-information{background:#d7e6df}
.theme-infantil .catalog-closing{background:#e9d9dc;border-radius:90px 90px 0 0}
.baby-balloon{position:absolute;width:45px;height:56px;border-radius:50% 50% 46% 46%;background:var(--balloon-color);left:var(--x);top:var(--y);box-shadow:inset -5px -6px 14px #0001,inset 7px 7px 13px #fff6;transform:rotate(var(--tilt));animation:catalog-balloon 7s ease-in-out var(--delay) infinite}
.baby-balloon:before{content:'';position:absolute;left:19px;bottom:-4px;width:7px;height:7px;background:var(--balloon-color);transform:rotate(45deg)}
.baby-balloon:after{content:'';position:absolute;left:22px;top:60px;height:75px;width:1px;background:#806e8b88;transform:rotate(8deg);transform-origin:top}
.baby-spark{position:absolute;left:12%;bottom:8%;color:#8c6f9d;font-size:45px;transform:rotate(12deg)}
.theme-natal{--paper:#102c24;--ink:#f5ebd9;--muted:#d4c9b5;--line:#657363;--catalog-accent:#dec18b}
.theme-natal .catalog-hero figure{width:72%;opacity:.85}
.theme-natal .catalog-hero:after{background:linear-gradient(90deg,#102c24 2%,#102c24e8 28%,#102c2433 83%),linear-gradient(0deg,#102c24,transparent 28%)}
.theme-natal .catalog-intro h1{font-size:clamp(76px,8vw,126px)}
.theme-natal .catalog-plan{background:#1c382c;border:1px solid #9b855d66;display:flex;min-height:0;position:relative}
.theme-natal .catalog-plans{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.theme-natal .plan-content{padding:35px 28px}
.theme-natal .plan-content:before{content:'✦';display:block;text-align:center;font-size:28px;color:#dec18b;margin-bottom:20px}
.theme-natal .plan-content h3{font-size:42px}
.theme-natal .plan-content ul{flex:1}
.theme-natal .plan-content .button{min-width:0;align-self:stretch}
.theme-natal .catalog-information{background:#e7dcc7;color:#263d31;--muted:#59614f;--line:#a8ad97;--catalog-accent:#536a50}
.theme-natal .catalog-closing{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at bottom,#244b35,#102c24 70%)}
.holiday-star{position:absolute;color:#ebce8e;left:var(--x);top:var(--y);font-size:var(--size);opacity:.7;animation:holiday-twinkle 4s ease-in-out var(--delay) infinite}
.holiday-tree{position:absolute;bottom:-4px;width:180px;height:260px;color:#759577;opacity:.3}
.holiday-tree.tree-left{left:-25px;transform:rotate(-5deg)}
.holiday-tree.tree-right{right:-30px;width:225px;height:320px;transform:rotate(4deg)}
.santa-flight{position:absolute;top:15%;left:-320px;width:280px;color:#efcf95;opacity:0;animation:santa-crossing 24s linear 2s infinite;filter:drop-shadow(0 0 6px #e5c17f22)}
@keyframes catalog-balloon{0%,100%{translate:0 0;rotate:-3deg}50%{translate:4px -14px;rotate:3deg}}
@keyframes holiday-twinkle{0%,100%{opacity:.25;scale:.8}50%{opacity:.9;scale:1.12}}
@keyframes santa-crossing{0%{translate:0 30px;opacity:0}5%{opacity:.7}55%{translate:calc(100vw + 640px) -40px;opacity:.7}56%,100%{translate:calc(100vw + 640px) -40px;opacity:0}}
@media(max-width:900px){.catalog-hero{min-height:780px}.catalog-intro h1{font-size:75px}.catalog-plan{grid-template-columns:1fr 1fr;min-height:570px}.catalog-plan>img{min-height:570px}.plan-content{padding:35px 25px}.plan-content h3{font-size:47px}.theme-natal .catalog-plans{grid-template-columns:1fr}.theme-natal .plan-content{padding:35px}.theme-natal .plan-content h3{font-size:48px}.theme-natal .plan-content .button{align-self:start}}
@media(max-width:650px){.catalog-header{height:85px}.catalog-hero{min-height:900px;min-height:108svh;align-items:end;padding:460px 25px 65px}.catalog-hero figure,.theme-infantil .catalog-hero figure,.theme-natal .catalog-hero figure{width:100%;inset:0;bottom:auto;height:72%;opacity:1}.catalog-hero figure img{height:100%;object-position:50% 15%}.catalog-hero:after{background:linear-gradient(0deg,var(--paper) 0%,var(--paper) 18%,transparent 85%)}.catalog-intro{width:100%;max-width:none}.catalog-intro h1{font-size:66px;margin:23px 0}.catalog-intro>p:not(.eyebrow){font-size:12px;max-width:330px}.catalog-hero figcaption{bottom:auto;top:105px;right:17px;left:auto;max-width:190px;font-size:8px}.theme-gestante .catalog-intro:before{font-size:25px;margin-bottom:12px}.theme-infantil .catalog-intro h1{font-size:57px;letter-spacing:-2px}.theme-infantil .catalog-hero:after{background:linear-gradient(0deg,#e8dff0 0%,#e8dff0 18%,#e8dff0cc 35%,transparent 80%)}.theme-natal .catalog-hero:after{background:linear-gradient(0deg,#102c24 0%,#102c24 16%,#102c24cc 43%,#102c2411 85%)}.theme-natal .catalog-intro h1{font-size:78px}.catalog-options{padding:50px 20px}.catalog-section-heading h2{font-size:53px}.catalog-plans{gap:30px}.catalog-plan{grid-template-columns:1fr;min-height:0}.catalog-plan>img{height:530px;min-height:0;max-height:75svh;aspect-ratio:auto;object-fit:cover;object-position:50% 10%}.catalog-plan:nth-child(even)>img{order:0}.plan-content{padding:32px 25px}.plan-content h3{font-size:51px}.theme-infantil .catalog-plan{border-radius:55px 8px 55px 8px}.theme-infantil .catalog-plan:nth-child(2){border-radius:8px 55px 8px 55px}.theme-infantil .catalog-plan>img{object-fit:contain;background:transparent}.theme-natal .plan-content{padding:32px 25px}.santa-flight{top:18%;width:210px}.baby-balloon{width:34px;height:43px}.baby-balloon:before{left:14px}.baby-balloon:after{left:17px;top:46px;height:50px}.baby-spark{left:auto;right:7%;bottom:7%}.catalog-closing h2{font-family:var(--serif)}}
@media(prefers-reduced-motion:reduce){.baby-balloon,.holiday-star,.santa-flight{animation:none}.santa-flight{left:auto;right:6%;top:16%;opacity:.5}.holiday-star{opacity:.65}}

/* Hierarquia do plano intermediário, sem alegações de vendas ou popularidade. */
.catalog-plan{position:relative}
.plan-badge{position:absolute;right:22px;top:20px;z-index:2;display:inline-flex;align-items:center;border-radius:30px;padding:9px 16px;background:var(--catalog-accent);color:var(--paper);font-size:10px;font-weight:700;letter-spacing:.3px;box-shadow:0 4px 15px #0002}
.catalog-plan.is-featured{outline:2px solid var(--catalog-accent);outline-offset:-2px;box-shadow:0 15px 50px #0002}
.catalog-plan.is-featured .plan-content>.eyebrow{margin-top:20px}
.theme-gestante .catalog-plan.is-featured{background:#322820}
.theme-infantil .catalog-plan.is-featured{background:#eddae7;outline-color:#8a679e}
.theme-infantil .plan-badge{background:#68497c;color:#fff7ff}
.theme-natal .catalog-plan.is-featured{background:#e9ddc5;color:#273d2e;--muted:#586150;--line:#b2b29c;--catalog-accent:#536846;overflow:visible;transform:translateY(-14px)}
.theme-natal .is-featured .plan-content{padding-top:45px}
.theme-natal .is-featured .plan-content:before{color:#69784f}
.theme-natal .is-featured .plan-badge{top:-16px;right:20px;background:#dec18b;color:#263b2b;padding:10px 18px}
.theme-natal .is-featured .button{background:#304e36;color:#fff2db}
@media(max-width:900px){.theme-natal .catalog-plan.is-featured{transform:none;margin:12px 0}.theme-natal .is-featured .plan-content{padding-top:42px}}
@media(max-width:650px){.plan-badge{font-size:10px;top:18px;right:18px}.catalog-plan.is-featured .plan-content>.eyebrow{margin-top:0}.theme-natal .is-featured .plan-badge{top:-15px}}

.catalog-carousel-nav{display:none}
@media(max-width:650px){
 .catalog-plans,.theme-natal .catalog-plans{
  display:flex;gap:14px;align-items:stretch;position:relative;
  overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;
  overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;
  margin:0 -20px;padding:22px 28px 25px;scroll-padding-inline:28px;
  scrollbar-width:none;
 }
 .catalog-plans::-webkit-scrollbar{display:none}
 .catalog-plans>.catalog-plan{flex:0 0 100%;min-width:0;scroll-snap-align:center;scroll-snap-stop:normal;display:flex;flex-direction:column;box-shadow:none}
 .catalog-plans>.catalog-plan:nth-child(even)>img{order:0}
 .catalog-plans>.catalog-plan>img{height:290px;min-height:0;max-height:none;width:100%;flex-shrink:0}
 .catalog-plans .plan-content{flex:1;padding:30px 24px;justify-content:start}
 .catalog-plans .plan-content h3{font-size:44px}
 .catalog-plans .plan-content ul{flex:1}
 .catalog-plans .plan-content .button{min-width:0;align-self:stretch}
 .theme-natal .catalog-plans>.catalog-plan.is-featured{margin:0;transform:none}
 .theme-natal .catalog-plans .is-featured .plan-content{padding-top:42px}
 .catalog-carousel-nav{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:12px;padding:0 8px;margin-top:2px}
 .carousel-arrow{width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:transparent;color:var(--ink);font-size:21px}
 .carousel-arrow:disabled{opacity:.25;cursor:default}
 .carousel-center{text-align:center;min-width:0}
 .carousel-status{font-size:10px;color:var(--muted);margin-bottom:6px}
 .carousel-dots{display:flex;align-items:center;justify-content:center;gap:0}
 .carousel-dot{width:30px;height:28px;display:grid;place-items:center;background:none;border:0;padding:0;color:var(--ink)}
 .carousel-dot:before{content:'';width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.3;transition:width .2s,opacity .2s}
 .carousel-dot[aria-current=true]:before{width:18px;border-radius:8px;opacity:1;background:var(--catalog-accent)}
 .carousel-hint{font-size:9px;color:var(--muted);margin-top:3px}
}
@media(prefers-reduced-motion:reduce){.carousel-dot:before{transition:none}}

/* Baralho 3D no celular: o palco cresce com o maior cartão, sem prender a página. */
@media(max-width:650px){
 .catalog-plans,.theme-natal .catalog-plans{
  display:grid;grid-template-columns:minmax(0,1fr);gap:0;padding:32px 0 30px;
  overflow:visible;scroll-snap-type:none;perspective:1200px;isolation:isolate;
  touch-action:pan-y;user-select:none;-webkit-user-select:none;
 }
 .catalog-plans>.catalog-plan,.theme-natal .catalog-plans>.catalog-plan.is-featured{
  grid-area:1/1;justify-self:center;width:calc(100% - 76px);max-width:440px;margin:0;
  transform:translate3d(var(--deck-x,0px),var(--deck-y,0px),var(--deck-z,0px)) rotateY(var(--deck-angle,0deg)) rotateZ(var(--deck-tilt,0deg));
  transform-origin:50% 45%;transition:transform .75s cubic-bezier(.22,.8,.25,1),filter .6s,opacity .6s;
  z-index:var(--deck-layer,1);filter:brightness(var(--deck-light,1));
  backface-visibility:hidden;-webkit-backface-visibility:hidden;will-change:transform;
  box-shadow:0 16px 35px #0003;
 }
 .catalog-plans>.catalog-plan[data-deck-position=front]{--deck-x:0px;--deck-y:0px;--deck-z:0px;--deck-angle:0deg;--deck-tilt:0deg;--deck-layer:3;--deck-light:1}
 .catalog-plans>.catalog-plan[data-deck-position=left]{--deck-x:-48px;--deck-y:13px;--deck-z:-70px;--deck-angle:-28deg;--deck-tilt:-4deg;--deck-layer:1;--deck-light:.88;cursor:pointer}
 .catalog-plans>.catalog-plan[data-deck-position=right]{--deck-x:48px;--deck-y:13px;--deck-z:-70px;--deck-angle:28deg;--deck-tilt:4deg;--deck-layer:1;--deck-light:.88;cursor:pointer}
 .catalog-plans>.catalog-plan[data-deck-position]:not([data-deck-position=front]) .plan-content .button{pointer-events:none}
 .catalog-plans>.catalog-plan.deck-leaving-left{animation:deck-send-left .75s cubic-bezier(.22,.7,.25,1) both}
 .catalog-plans>.catalog-plan.deck-leaving-right{animation:deck-send-right .75s cubic-bezier(.22,.7,.25,1) both}
 .catalog-plans .plan-content{padding-inline:21px}
 .catalog-plans .plan-content h3{font-size:39px}
 .catalog-plans .catalog-price{font-size:36px}
 .catalog-plans .plan-content .button{font-size:10px;padding:13px 10px}
 .catalog-carousel-nav{position:relative;z-index:4}
}
@keyframes deck-send-left{
 0%{transform:translate3d(0,0,0) rotateY(0deg) rotateZ(0deg);z-index:4}
 45%{transform:translate3d(-48%,0,45px) rotateY(-65deg) rotateZ(-7deg);z-index:4}
 55%{z-index:1}
 100%{transform:translate3d(-48px,13px,-70px) rotateY(-28deg) rotateZ(-4deg);z-index:1}
}
@keyframes deck-send-right{
 0%{transform:translate3d(0,0,0) rotateY(0deg) rotateZ(0deg);z-index:4}
 45%{transform:translate3d(48%,0,45px) rotateY(65deg) rotateZ(7deg);z-index:4}
 55%{z-index:1}
 100%{transform:translate3d(48px,13px,-70px) rotateY(28deg) rotateZ(4deg);z-index:1}
}
@media(prefers-reduced-motion:reduce){.catalog-plans>.catalog-plan{animation:none!important;transition:none!important}}
