.public-page,.bio-page{background:#f6f4ee;color:var(--brand-dark);min-height:100vh}.demo-notice{text-align:center;background:#e9e5ef;color:#5c5367;padding:9px 18px;font-size:12px}.public-top{max-width:1200px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:32px 40px}.text-link{display:inline-flex;align-items:center;gap:8px;font-size:13px}.text-link svg,.location svg{width:18px;height:18px}.public-shell{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;max-width:1200px;margin:32px auto 64px;padding:0 40px}.public-intro{padding-top:38px;position:sticky;top:40px;align-self:start}.public-intro h1,.bio-card h1{font-family:Cormorant,Georgia,serif;font-weight:400;font-size:clamp(48px,5.5vw,76px);line-height:.98;letter-spacing:-2px;margin:24px 0}.public-intro h1 i,.bio-card h1 i{color:var(--brand);font-weight:400}.public-intro>p:not(.eyebrow){font-size:18px;max-width:330px;line-height:1.65;color:#706874}.location{display:flex;gap:8px;align-items:center;font-size:13px;margin:22px 0}.how-it-works{display:grid;gap:17px;margin:46px 0}.how-it-works span{display:flex;align-items:center;gap:14px;font-size:14px}.how-it-works b{font-weight:400;color:#7d6b89;border:1px solid #d7cedd;border-radius:50%;width:30px;height:30px;display:grid;place-items:center;font-size:11px}.public-note{border-top:1px solid #ddd8d4;padding-top:22px;font-size:13px;line-height:1.7;max-width:320px}.public-note p{color:#77707a}.public-form{padding:32px;box-shadow:0 16px 70px #483d4410}.wide{width:100%;justify-content:center}.public-footer{display:flex;align-items:center;justify-content:space-between;max-width:1120px;margin:0 auto 32px;padding:24px 0;border-top:1px solid #e3ded9;font-size:12px;color:#817981}.honeypot{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}.booking-success{text-align:center;padding:60px 4px}.booking-success h2{font-family:Cormorant,Georgia,serif;font-size:40px;font-weight:400;line-height:1.1}.booking-success p{line-height:1.7;margin:24px 0}.bio-page{display:grid;place-items:center;padding:40px 20px;background:radial-gradient(ellipse at 10% 10%,#e8dfeb 0,transparent 50%),#f6f4ee}.bio-card{max-width:480px;width:100%;text-align:center;background:#fffdf8;border:1px solid #e4ded7;border-radius:28px;overflow:hidden;padding:0 36px 30px}.bio-art{height:130px;position:relative;overflow:hidden;margin:0 -36px 32px;background:#e4dbdd}.bio-art span{position:absolute;width:200px;height:200px;border:1px solid #fff8;border-radius:50%;top:-90px;left:calc(50% - 100px)}.bio-art span:nth-child(2){transform:translate(-100px,50px)}.bio-art span:nth-child(3){transform:translate(100px,50px);background:var(--brand);opacity:.28}.bio-card .studio-lockup{justify-content:center}.bio-card>.eyebrow{margin-top:22px;font-size:10px}.bio-card h1{font-size:58px;margin:20px 0}.bio-card>p{color:#736b74;line-height:1.7}.bio-links{display:grid;gap:12px;margin:30px 0}.bio-links>.button{min-height:58px;justify-content:space-between}.bio-services{text-align:left;border:1px solid #e6e0dc;padding:18px;border-radius:12px;font-size:14px}.bio-services summary{cursor:pointer}.bio-services p{display:flex;justify-content:space-between;gap:12px;font-size:13px}.bio-card footer{margin-top:28px;display:flex;justify-content:center}.manage-shell{max-width:670px;margin:32px auto;padding:0 20px}.manage-shell>.studio-lockup{justify-content:center;margin-bottom:30px}.manage-shell h1{font-size:30px;line-height:1.2}.manage-detail{display:grid;gap:12px;border-block:1px solid #e9e4e0;padding:24px 0;margin:24px 0}.manage-detail p{margin:0}.manage-shell .card{padding:30px}.manage-shell form{margin-top:26px}.manage-shell .button{white-space:normal}.manage-shell footer{display:flex;justify-content:center;margin-top:25px}@media(max-width:850px){.public-shell{grid-template-columns:1fr;gap:30px;max-width:650px}.public-intro{position:static;padding-top:0}.public-intro h1{font-size:60px}.how-it-works{display:none}.public-note{display:none}.public-intro>p:not(.eyebrow){max-width:none}.public-footer{margin:0 30px 24px}.public-top{padding:24px 30px}}@media(max-width:500px){.public-top{padding:20px}.public-top .text-link{font-size:11px;max-width:100px}.public-shell{padding:0 16px;margin:12px auto 30px;gap:16px}.public-intro{padding:10px 6px}.public-intro h1{font-size:51px;margin:16px 0}.public-intro>p:not(.eyebrow){font-size:15px}.location{margin:14px 0}.public-form{padding:22px 17px}.public-footer{margin:0 20px 20px;gap:20px}.public-footer>span{max-width:150px;font-size:11px}.bio-card{padding-inline:24px}.bio-art{margin-inline:-24px}.manage-shell .card{padding:24px 18px}}

/* v3 — catálogo por categoria, complementos bloqueados e escolha da profissional */
.public-page .catalog-group{font-size:11px;letter-spacing:1.8px;text-transform:uppercase;color:var(--brand-dark);opacity:.6;margin:20px 0 8px}
.public-page .addons-block{border-top:1px dashed rgba(0,0,0,.12);padding-top:18px;margin-top:6px}
.public-page .addons-block.is-locked .service-options{opacity:.45}
.public-page .addons-block.is-locked .service-pick{cursor:not-allowed}
.public-page .professional-options{display:grid;gap:10px}
.public-page .professional-pick{display:flex;align-items:center;gap:12px;border:1px solid rgba(0,0,0,.12);border-radius:12px;padding:14px;cursor:pointer;background:#fffefb}
.public-page .professional-pick:has(input:checked){border-color:var(--brand);box-shadow:0 0 0 1px var(--brand)}
.public-page .professional-pick span{display:flex;flex-direction:column}
.public-page .professional-pick small{opacity:.65}
.manage-shell .with-who{opacity:.75}

/* v4 — um cartão por serviço principal */
.public-page .group-card{border:1px solid rgba(0,0,0,.12);border-radius:16px;padding:22px;margin:0 0 18px;background:#fffefb}
.public-page .group-card legend{font-size:15px;font-weight:500;padding:0 8px}
.public-page .group-card legend span{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:8px;background:var(--brand);color:#fff;font-size:11px;margin-right:8px}
.public-page .group-card .slots{margin-top:14px}
.public-page .group-card .professional-options{margin-top:16px}
.public-page .success-booking{border-top:1px solid rgba(0,0,0,.1);padding:16px 0;margin-top:8px}
.public-page .success-booking strong{display:block;font-size:17px}
.public-page .success-booking p{margin:4px 0 10px;opacity:.75;font-size:14px}
