html,body{margin:0;padding:0;background:#1a0520;color:#f5eee6;-webkit-font-smoothing:antialiased}
*{box-sizing:border-box}
a{color:#e3c8ec;text-decoration:none}
a:hover{color:#fbf5f8}
ul{margin:0;padding:0;list-style:none}
::selection{background:#c99ade;color:#2a0b31}

:root{
  --serif:'Cormorant Garamond',serif;
  --sans:'Jost',sans-serif;
  --ink:#fbf5f8;
  --lilac:#e3c8ec;
  --lilac-2:#d7b1e6;
  --plum:#2a0b31;
}

/* NAV */
.nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;gap:24px;height:68px;padding:0 clamp(16px,4vw,40px);background:linear-gradient(180deg,rgba(26,5,32,.72),rgba(26,5,32,0));backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.nav__brand{display:flex;flex-direction:column;line-height:1;flex:none;color:var(--ink)}
.nav__brand b{font-family:var(--serif);font-style:italic;font-size:24px;font-weight:500}
.nav__brand small{font:400 9px/1 var(--sans);letter-spacing:.34em;text-transform:uppercase;color:var(--lilac-2);margin-top:4px}
.nav__links{flex:1;display:flex;justify-content:flex-end;gap:26px;overflow-x:auto;scrollbar-width:none;white-space:nowrap}
.nav__links::-webkit-scrollbar{display:none}
.nav__links a{font:400 12px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:#eadff0;padding:8px 0}
.nav__links a:hover{color:#fff}
.nav__wa{flex:none;display:flex;align-items:center;height:40px;padding:0 18px;border-radius:999px;border:1px solid rgba(233,220,239,.35);font:500 11px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--ink)}
.nav__wa:hover{background:rgba(233,220,239,.12)}

/* SECTION SHELL (stack) */
.stack{position:relative;top:0;min-height:100vh;overflow:hidden;display:flex;align-items:center;background:var(--plum);box-shadow:0 -40px 80px rgba(10,0,15,.55)}
.stack .bgimg{position:absolute;inset:-18% 0;background-position:center;background-size:cover;filter:saturate(.8)}
.overlay{position:absolute;inset:0;pointer-events:none}
.ov-l{background:linear-gradient(90deg,rgba(36,9,42,.94) 0%,rgba(70,20,82,.72) 48%,rgba(36,9,42,.88) 100%)}
.ov-r{background:linear-gradient(270deg,rgba(36,9,42,.94) 0%,rgba(70,20,82,.7) 50%,rgba(36,9,42,.86) 100%)}
.ov-v{background:linear-gradient(180deg,rgba(36,9,42,.86) 0%,rgba(70,20,82,.72) 40%,rgba(30,7,36,.9) 100%)}
.shade{position:absolute;inset:0;background:#0f0213;opacity:0;pointer-events:none}
.inner{position:relative;width:100%;max-width:1280px;margin:0 auto;padding:clamp(120px,14vh,150px) clamp(20px,5vw,48px) clamp(72px,10vh,110px)}

/* HEADINGS */
.eyebrow{display:flex;align-items:center;gap:14px;margin-bottom:28px}
.eyebrow--c{justify-content:center}
.eyebrow__n{font-family:var(--serif);font-style:italic;font-size:20px;color:var(--lilac-2)}
.eyebrow__line{width:48px;height:1px;background:rgba(233,220,239,.4)}
.eyebrow__t{font:500 11px/1 var(--sans);letter-spacing:.32em;text-transform:uppercase;color:#e9dcef}
.title{margin:0;font-variant-numeric:lining-nums;font-family:var(--serif);font-weight:300;font-size:clamp(46px,6vw,88px);line-height:.95;letter-spacing:-.01em;color:var(--ink)}
.title em{font-style:italic;color:var(--lilac)}
.lead{margin:28px 0 0;font:300 16px/1.7 var(--sans);color:#eadff0;text-wrap:pretty}
.head-c{max-width:820px;margin:0 auto 56px;text-align:center}

/* LAYOUTS */
.split{display:flex;flex-wrap:wrap;align-items:center;gap:clamp(40px,6vw,96px)}
.split--rev{flex-direction:row-reverse}
.split__text{flex:1 1 320px;max-width:440px}
.split__cards{flex:1.6 1 540px}
.grid{display:grid;gap:24px;align-items:stretch}
.g-280{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}
.g-260{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:20px}
.g-300{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}

.watermark-wrap{position:relative;padding-top:clamp(60px,8vw,120px)}
.watermark{position:absolute;top:0;left:0;right:0;text-align:center;font-family:var(--serif);font-style:italic;font-weight:400;font-size:clamp(150px,21vw,320px);line-height:.8;letter-spacing:-.03em;color:#f6ebf9;pointer-events:none;user-select:none}

/* SHARED CARD BITS */
.price{display:flex;align-items:baseline;gap:5px;color:var(--ink)}
.price--c{justify-content:center}
.price__cur{font:400 14px var(--sans)}
.price__v{font-variant-numeric:lining-nums;font-family:var(--serif);font-weight:500;line-height:1}
.price__cents{font:400 15px var(--sans);white-space:nowrap}
.alt{margin:6px 0 0;font:300 13px/1.5 var(--sans);color:#e3d2ea}
.pill{display:inline-block;padding:7px 14px;border-radius:999px;background:rgba(26,5,32,.55);border:1px solid rgba(233,220,239,.28);font:500 10px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:#f1e4f6}
.btn{display:flex;align-items:center;justify-content:center;border-radius:999px;font:500 12px/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;transition:filter .2s}
.btn:hover{filter:brightness(1.08)}
.dia{flex:none;width:5px;height:5px;margin-top:8px;transform:rotate(45deg);background:var(--lilac-2)}
.chk{flex:none;width:18px;height:18px;margin-top:1px;border-radius:5px;background:rgba(233,220,239,.18);border:1px solid rgba(233,220,239,.35);display:flex;align-items:center;justify-content:center;font-size:11px;color:var(--ink)}

/* STYLE A — completas */
.cardA{position:relative;overflow:hidden;display:flex;flex-direction:column;padding:28px 28px 26px;border-radius:28px;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 30px 80px -30px rgba(10,0,15,.7)}
.cardA__glow{position:absolute;left:-25%;right:-25%;bottom:-36%;height:60%;background:radial-gradient(ellipse at 50% 50%,rgba(214,140,240,.8),rgba(140,60,175,.42) 38%,transparent 68%);filter:blur(26px);pointer-events:none}
.cardA__body{position:relative;display:flex;flex-direction:column;flex:1}
.cardA__top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;min-height:32px}
.cardA h3{margin:0;font-variant-numeric:lining-nums;font-family:var(--serif);font-weight:500;font-size:30px;line-height:1.05;color:var(--ink)}
.cardA__badge{flex:none;padding:7px 12px;border-radius:999px;border:1px solid rgba(233,220,239,.4);font:500 10px/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:#f1e4f6}
.cardA .price{margin-top:22px}
.cardA .price__v{font-size:54px}
.cardA__pay{font:300 13px var(--sans);color:#d9c4e0;margin-left:6px}
.cardA .alt{min-height:20px;color:#d9c4e0}
.cardA .btn{margin-top:18px;height:48px}
.cardA__rule{height:1px;background:rgba(233,220,239,.14);margin:20px 0 18px}
.cardA ul{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:9px 18px}
.cardA li{display:flex;gap:10px;font:300 14px/1.4 var(--sans);color:#efe4f3}
.note{margin:16px 0 0;font-family:var(--serif);font-style:italic;font-size:17px;line-height:1.35;color:var(--lilac)}

/* STYLE B/C — amor */
.cardB{display:flex;flex-direction:column;align-items:center;text-align:center;padding:28px 24px;border-radius:24px;background:rgba(58,16,70,.24);backdrop-filter:blur(5px) saturate(1.1);-webkit-backdrop-filter:blur(5px) saturate(1.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 30px 70px -30px rgba(10,0,15,.8)}
.cardB--lg{padding:30px 30px 32px}
.cardB__pillwrap{margin-bottom:16px}
.cardB h3{margin:0;min-height:62px;display:flex;align-items:center;justify-content:center;font-variant-numeric:lining-nums;font-family:var(--serif);font-weight:500;font-size:28px;line-height:1.08;color:var(--ink);text-wrap:balance}
.cardB--lg h3{margin-top:20px;min-height:0;font-size:32px;line-height:1.05}
.cardB__sub{margin:6px 0 0;min-height:40px;font:300 13px/1.5 var(--sans);color:#efe0f4;text-wrap:pretty}
.cardB ul{display:grid;gap:11px;margin-top:20px;text-align:left;width:100%}
.cardB--lg ul{gap:12px;margin-top:24px}
.cardB li{display:flex;gap:11px;font:300 14px/1.45 var(--sans);color:#f3e9f6}
.cardB--lg li{gap:12px;font-size:15px}
.cardB__foot{margin-top:auto;padding-top:26px;width:100%}
.cardB--lg .cardB__foot{padding-top:28px}
.cardB .price__v{font-size:52px}
.cardB--lg .price__v{font-size:56px}
.cardB .btn{margin:20px auto 0;height:50px;max-width:240px;border:1px solid rgba(233,220,239,.4)}
.cardB--lg .btn{margin-top:22px}

/* STYLE D — profissional (medalhão) */
.g-med{row-gap:56px;padding-top:34px}
.cardD{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;padding:58px 26px 28px;border-radius:26px;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 30px 60px -28px rgba(10,0,15,.75)}
.cardD__med{position:absolute;top:-33px;left:50%;transform:translateX(-50%);width:66px;height:66px;border-radius:50%;box-shadow:0 0 0 6px rgba(26,5,32,.55);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-style:italic;font-size:24px}
.cardD__sub{font:500 10px/1 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--lilac-2)}
.cardD h3{margin:8px 0 0;min-height:64px;display:flex;align-items:center;font-variant-numeric:lining-nums;font-family:var(--serif);font-weight:500;font-size:27px;line-height:1.1;color:var(--ink);text-wrap:balance}
.cardD .price{margin-top:12px}
.cardD .price__cur{font-size:13px}
.cardD .price__v{font-size:52px}
.cardD .price__cents{font-size:14px}
.divider{display:flex;align-items:center;gap:10px;width:100%;margin:20px 0}
.divider span:first-child,.divider span:last-child{flex:1;height:1px;background:rgba(233,220,239,.2)}
.divider .divider__d{width:6px;height:6px;transform:rotate(45deg);border:1px solid var(--lilac-2)}
.cardD ul{display:grid;gap:10px;text-align:left;width:100%}
.cardD li{display:flex;gap:11px;font:300 14px/1.45 var(--sans);color:#efe4f3}
.cardD__foot{margin-top:auto;padding-top:26px;width:100%}
.cardD .btn{height:50px;border:1px solid rgba(215,177,230,.55)}

/* STYLE K — mensal (carta) */
.g-mensal{gap:22px}
.cardK{position:relative;display:flex;padding:10px;border-radius:14px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 30px 60px -28px rgba(10,0,15,.85)}
.cardK__in{flex:1;display:flex;flex-direction:column;align-items:center;text-align:center;padding:26px 20px 22px;border-radius:8px}
.cardK__num{font-family:var(--serif);font-size:22px;letter-spacing:.2em;color:#e8d6b3}
.cardK__badge{position:absolute;top:-12px;left:50%;transform:translateX(-50%);white-space:nowrap;padding:6px 12px;border-radius:2px;background:#d9c29a;color:var(--plum);font:500 10px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase}
.cardK__div{display:flex;align-items:center;gap:10px;width:70%;margin:12px 0 14px}
.cardK__div span:first-child,.cardK__div span:last-child{flex:1;height:1px}
.cardK__div .d{width:5px;height:5px;transform:rotate(45deg);background:#e8d6b3}
.cardK h3{margin:0;min-height:52px;display:flex;align-items:center;font-variant-numeric:lining-nums;font-family:var(--serif);font-weight:500;font-size:20px;line-height:1.2;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);text-wrap:balance}
.cardK ul{display:grid;gap:10px;margin-top:20px;text-align:left;width:100%}
.cardK li{display:flex;gap:11px;font:300 14px/1.45 var(--sans);color:#f3e9f6}
.cardK li .star{flex:none;font-family:var(--serif);font-size:14px;line-height:20px;color:#e8d6b3}
.cardK__foot{margin-top:auto;padding-top:24px;width:100%}
.cardK__price{padding:14px 10px}
.cardK .price{gap:4px}
.cardK .price__cur,.cardK .price__cents{font-size:13px}
.cardK .price__v{font-size:46px}
.cardK .alt{margin-top:4px;font-size:12px;line-height:1.4}
.cardK .btn{margin-top:16px;height:48px;border-radius:4px;border:1px solid #d9c29a;letter-spacing:.24em}

/* STYLE J — terapêuticas (anel) */
.g-j{gap:24px}
.g-j3{gap:22px}
.g-j4{gap:20px}
.ringJ{position:relative;display:flex;padding:1px;border-radius:28px}
.ringJ__glow{position:absolute;inset:-14% -10%;border-radius:50%;background:radial-gradient(closest-side,rgba(201,140,232,.55),rgba(120,50,150,.2) 60%,transparent);filter:blur(30px);pointer-events:none;z-index:0}
.cardJ{position:relative;z-index:1;flex:1;display:flex;flex-direction:column;padding:32px 30px 30px;border-radius:27px;backdrop-filter:blur(22px) saturate(1.2);-webkit-backdrop-filter:blur(22px) saturate(1.2)}
.cardJ__top{display:flex;justify-content:space-between;align-items:center;gap:12px}
.cardJ__num{font:500 10px/1 var(--sans);letter-spacing:.26em;text-transform:uppercase;color:var(--lilac)}
.cardJ__badge{padding:7px 12px;border-radius:999px;background:rgba(233,220,239,.16);border:1px solid rgba(233,220,239,.35);font:500 10px/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--ink)}
.cardJ h3{margin:18px 0 0;font-family:var(--serif);font-style:italic;font-weight:400;font-size:36px;line-height:1;color:var(--ink)}
.cardJ__sub{margin:8px 0 0;font:300 13px/1.5 var(--sans);color:#e3d2ea}
.cardJ__price{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-top:22px;padding:16px 18px;border-radius:16px;background:rgba(26,5,32,.4);border:1px solid rgba(233,220,239,.12)}
.cardJ .price{gap:4px}
.cardJ .price__cur,.cardJ .price__cents{font-size:13px}
.cardJ .price__v{font-size:44px}
.cardJ__alt{font:300 12px/1.35 var(--sans);color:#e3d2ea;text-align:right}
.cardJ ul{display:grid;gap:11px;margin-top:24px}
.cardJ li{display:flex;gap:12px;font:300 14px/1.5 var(--sans);color:#f3e9f6}
.cardJ li .dia{margin-top:9px;background:var(--lilac)}
.cardJ .note{margin-top:20px;padding-top:16px;border-top:1px solid rgba(233,220,239,.16);line-height:1.4}
.cardJ__foot{margin-top:auto;padding-top:28px}
.cardJ .btn{justify-content:space-between;height:52px;padding:0 8px 0 22px}
.cardJ .btn i{font-style:normal;width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;letter-spacing:0}

/* HERO */
#hero{background:var(--plum)}
.hero__blur{position:absolute;inset:-18% -5%;background:url(assets/hero.jpg) center/cover;filter:blur(48px) saturate(.9);opacity:.5}
.hero__photo{position:absolute;top:-6%;bottom:-6%;right:0;left:max(0px,calc(88vw - 640px));-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 38%);mask-image:linear-gradient(90deg,transparent 0%,#000 38%)}
.hero__photo img{width:100%;height:100%;object-fit:cover;object-position:30% 40%;display:block}
.hero__ov{background:linear-gradient(90deg,rgba(42,11,49,.96) 0%,rgba(42,11,49,.78) 34%,rgba(42,11,49,.05) 72%),linear-gradient(0deg,rgba(26,5,32,.85) 0%,transparent 40%)}
.hero__inner{padding:140px clamp(20px,5vw,48px) 100px}
.hero__text{max-width:580px}
.hero__eyebrow{display:flex;align-items:center;gap:14px;margin-bottom:32px}
.hero__eyebrow span:first-child{width:48px;height:1px;background:rgba(233,220,239,.5)}
.hero__eyebrow span:last-child{font:500 11px/1 var(--sans);letter-spacing:.34em;text-transform:uppercase;color:#e9dcef}
.hero h1{margin:0;font-variant-numeric:lining-nums;font-family:var(--serif);font-weight:300;font-size:clamp(56px,8.4vw,128px);line-height:.88;letter-spacing:-.015em;color:var(--ink)}
.hero h1 em{font-style:italic;font-weight:300;color:var(--lilac)}
.hero__quote{margin:36px 0 0;font-family:var(--serif);font-style:italic;font-size:clamp(22px,2.2vw,28px);line-height:1.35;color:#efe2f3;max-width:460px;text-wrap:pretty}
.hero__cta{display:flex;flex-wrap:wrap;align-items:center;gap:14px 28px;margin-top:44px}
.cta-main{display:inline-flex;align-items:center;gap:14px;height:56px;padding:0 30px;border-radius:999px;background:var(--lilac);color:var(--plum);font:500 12px/1 var(--sans);letter-spacing:.22em;text-transform:uppercase}
.cta-main:hover{background:var(--ink);color:var(--plum)}
.cta-main span{font-size:16px;letter-spacing:0}
.cta-link{font:400 12px/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--ink);padding:8px 0;border-bottom:1px solid rgba(233,220,239,.4)}

/* AVULSAS */
#avulsas{background:#3a0d45}
.avulsas__photo{position:relative;border-radius:240px 240px 24px 24px;overflow:hidden;aspect-ratio:4/5;max-height:76vh;box-shadow:0 40px 100px -30px rgba(10,0,15,.8)}
.avulsas__photo img{width:100%;height:100%;object-fit:cover;object-position:50% 30%;display:block}
.avulsas__tag{position:absolute;left:-14px;bottom:28px;padding:12px 18px;border-radius:999px;background:var(--ink);color:var(--plum);font-family:var(--serif);font-style:italic;font-size:20px}
.avulsas__list{margin-top:40px;border-top:1px solid rgba(233,220,239,.2)}
.av-row{display:flex;flex-wrap:wrap;align-items:center;gap:14px 28px;padding:24px 0;border-bottom:1px solid rgba(233,220,239,.2)}
.av-row__txt{flex:1 1 260px}
.av-row__head{display:flex;align-items:baseline;justify-content:space-between;gap:16px}
.av-row h3{margin:0;font-variant-numeric:lining-nums;font-family:var(--serif);font-weight:500;font-size:26px;line-height:1.1;color:var(--ink)}
.av-row__p{flex:none;font-family:var(--serif);font-size:26px;color:var(--lilac)}
.av-row__d{margin:6px 0 0;font:300 14px/1.55 var(--sans);color:#e3d2ea;text-wrap:pretty}
.av-row a{flex:none;display:flex;align-items:center;gap:10px;height:44px;padding:0 20px;border-radius:999px;border:1px solid rgba(233,220,239,.45);color:var(--ink);font:500 11px/1 var(--sans);letter-spacing:.22em;text-transform:uppercase}
.av-row a:hover{background:var(--lilac);color:var(--plum);border-color:var(--lilac)}

/* DEPOIMENTOS */
#depoimentos{display:block}
.depos{columns:3 260px;column-gap:20px}
.depo{break-inside:avoid;margin-bottom:20px;padding:8px;border-radius:22px;background:rgba(233,220,239,.08);border:1px solid rgba(233,220,239,.14)}
.depo img{width:100%;display:block;border-radius:16px}

/* FAQ */
#duvidas{background:#b9aec8}
.faq-list{flex:1.6 1 480px;border-top:1px solid rgba(42,11,49,.25)}
.faq-item{border-bottom:1px solid rgba(42,11,49,.25)}
.faq-q{all:unset;box-sizing:border-box;cursor:pointer;width:100%;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:26px 0}
.faq-q:focus-visible{outline:2px solid #53165c;outline-offset:4px}
.faq-q span:first-child{font-variant-numeric:lining-nums;font-family:var(--serif);font-weight:500;font-size:clamp(22px,2.2vw,28px);line-height:1.2;color:var(--plum)}
.faq-q span:last-child{flex:none;width:40px;height:40px;border-radius:50%;border:1px solid rgba(42,11,49,.35);display:flex;align-items:center;justify-content:center;font:300 20px/1 var(--sans);color:var(--plum)}
.faq-a{margin:-6px 0 0;padding:0 56px 26px 0;font:400 16px/1.7 var(--sans);color:#2f1238;text-wrap:pretty}

/* POLÍTICA */
#politica{flex-direction:column;justify-content:center;background:#53165c}
.politica__inner{max-width:920px;padding-bottom:60px;text-align:center}
.politica__txt{display:grid;gap:22px;margin-top:44px;font:300 17px/1.75 var(--sans);color:#efe4f3;text-wrap:pretty}
.politica__txt p{margin:0}
.politica__txt strong{font-weight:500;color:var(--ink)}
.footer{position:relative;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;max-width:1280px;width:100%;margin:0 auto;padding:28px clamp(20px,5vw,48px);border-top:1px solid rgba(233,220,239,.18);font:400 12px/1.4 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:#e3d2ea}

@media (max-width:640px){
  .faq-a{padding-right:0}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
}
