/* ============================================================
   BARBEARIA — TEMA 1 · STUDIO MODERN
   Arquivo autocontido, com uma única paleta escura em todas as
   rotas públicas. A marca do estabelecimento continua dinâmica.
   ============================================================ */

body.sc-template-1{ background:var(--bb-bg); color:var(--bb-text); font-family:var(--bb-font-body); }

.bb-container{ max-width:1200px; margin:0 auto; padding:0 20px; }
.bb-section-head{ text-align:center; margin-bottom:44px; }
.bb-section-title{ font-family:var(--bb-font-head); font-size:clamp(2rem,4vw,3rem); font-weight:800; color:var(--bb-text); margin:0 0 8px; }
.bb-section-sub{ color:var(--bb-muted); margin:0; }
.bb-eyebrow{ display:inline-flex; align-items:center; gap:8px; color:var(--bb-primary); font-weight:800; font-size:.78rem; letter-spacing:.16em; text-transform:uppercase; }
.bb-btn{ display:inline-flex; align-items:center; gap:9px; padding:14px 28px; border-radius:10px; font-weight:700; font-size:.98rem; text-decoration:none; cursor:pointer; transition:transform .2s,box-shadow .2s,background .2s,color .2s; }
.bb-btn-primary{ background:var(--bb-primary); color:var(--bb-on-primary); box-shadow:0 14px 30px -14px color-mix(in srgb,var(--bb-primary) 60%,transparent); }
.bb-btn-primary:hover{ transform:translateY(-2px); }
.bb-btn-ghost{ background:transparent; color:var(--bb-text); border:1.5px solid var(--bb-line); }
.bb-btn-ghost:hover{ border-color:var(--bb-primary); color:var(--bb-primary); }
.bb-btn-oncolor{ background:var(--bb-on-primary); color:var(--bb-primary); } .bb-btn-oncolor:hover{ transform:translateY(-3px); }

.bb-hero{position:relative;isolation:isolate;min-height:clamp(590px,78vh,820px);display:flex;align-items:center;overflow:hidden;background:var(--bb-bg);}
.bb-hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(13,14,16,.34) 0%,rgba(13,14,16,.68) 56%,var(--bb-bg) 100%),linear-gradient(90deg,rgba(13,14,16,.62),rgba(13,14,16,.12) 50%,rgba(13,14,16,.56));}
.bb-hero-inner{position:relative;width:100%;display:flex;justify-content:center;padding:132px 20px 112px;}
.bb-hero-copy{max-width:880px;text-align:center;}
.bb-hero-title{ font-family:var(--bb-font-head); font-size:clamp(3.5rem,8vw,7.25rem); font-weight:800; line-height:.91; letter-spacing:-.045em;color:var(--bb-text); margin:18px 0 22px; text-wrap:balance; }
.bb-hero-desc{ color:color-mix(in srgb,var(--bb-text) 76%,transparent); font-size:clamp(1rem,1.4vw,1.18rem); line-height:1.72; max-width:620px; margin:0 auto 30px; }
.bb-hero-actions{ display:flex;justify-content:center;gap:14px; flex-wrap:wrap; margin-bottom:22px; }
.bb-hero-meta{ display:flex;justify-content:center;gap:22px; flex-wrap:wrap; color:color-mix(in srgb,var(--bb-text) 66%,transparent); font-size:.88rem; }
.bb-hero-meta i{ color:var(--bb-primary); margin-right:6px; }
.bb-hero-media{position:absolute;inset:-8%;z-index:-2;overflow:hidden;}
.bb-hero-media img{width:100%;height:100%;object-fit:cover;transform:scale(1.04);}
/* The theme-one hero is stable: it must not inherit legacy cards, rotations, or entrance animation. */
.bb-theme-one .bb-hero-copy,.bb-theme-one .bb-cta-inner{background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;backdrop-filter:none!important;transform:none!important;animation:none!important;opacity:1!important;}
.bb-theme-one .bb-hero-copy *,.bb-theme-one .bb-cta-inner *{animation:none!important;}

.bb-stats{ background:var(--bb-surface); border-top:1px solid var(--bb-line); border-bottom:1px solid var(--bb-line); padding:38px 0; }
.bb-stats-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:20px; text-align:center; }
.bb-stat-val{ font-family:var(--bb-font-head); font-size:clamp(1.8rem,3vw,2.6rem); font-weight:800; color:var(--bb-primary); }
.bb-stat-lbl{ color:var(--bb-muted); font-size:.85rem; text-transform:uppercase; letter-spacing:.04em; margin-top:6px; }

.bb-services{ background:var(--bb-bg); padding:80px 0; }
.bb-menu{ max-width:760px; margin:0 auto; display:flex; flex-direction:column; gap:6px; }
.bb-menu-row{ display:flex; align-items:baseline; gap:14px; padding:14px 0; border-bottom:1px solid var(--bb-line); }
.bb-menu-info{ display:flex; flex-direction:column; }
.bb-menu-name{ font-family:var(--bb-font-head); font-weight:700; font-size:1.1rem; color:var(--bb-text); }
.bb-menu-meta{ color:var(--bb-muted); font-size:.82rem; }
.bb-menu-dots{ flex:1; border-bottom:1px dotted var(--bb-line); transform:translateY(-4px); }
.bb-menu-price{ font-family:var(--bb-font-head); font-weight:800; color:var(--bb-primary); font-size:1.2rem; }

.bb-team-section{ background:var(--bb-surface); padding:80px 0; }
.bb-team{ display:grid; grid-template-columns:repeat(4,1fr); gap:24px; }
.bb-pro{ text-align:center; }
.bb-pro-img{ width:120px; height:120px; margin:0 auto 14px; border-radius:50%; overflow:hidden; background:var(--bb-elev); display:flex; align-items:center; justify-content:center; font-size:2rem; font-weight:800; color:var(--bb-primary); border:2px solid var(--bb-line); }
.bb-pro-img img{ width:100%; height:100%; object-fit:cover; }
.bb-pro-name{ font-family:var(--bb-font-head); font-size:1.15rem; font-weight:700; color:var(--bb-text); margin:0 0 4px; }
.bb-pro-role{ color:var(--bb-muted); font-size:.85rem; margin:0; }

.bb-gallery{ background:var(--bb-bg); padding:80px 0; }
.bb-marquee{ overflow:hidden; -webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent); mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent); }
.bb-marquee-track{ display:flex; gap:20px; width:max-content; animation:bb-marquee 40s linear infinite; }
.bb-marquee:hover .bb-marquee-track{ animation-play-state:paused; }
.bb-marquee-item{ flex:0 0 auto; width:340px; height:240px; border-radius:12px; overflow:hidden; }
.bb-marquee-item img{ width:100%; height:100%; object-fit:cover; transition:transform .5s; }
.bb-marquee-item:hover img{ transform:scale(1.06); }
@keyframes bb-marquee{ to{ transform:translateX(calc(-50% - 10px)); } }

.bb-reviews{ background:var(--bb-surface); padding:80px 0; }
.bb-reviews-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.bb-review{ background:var(--bb-bg); border:1px solid var(--bb-line); border-radius:14px; padding:28px; margin:0; }
.bb-review-stars{ color:var(--bb-primary); letter-spacing:2px; margin-bottom:12px; }
.bb-review blockquote{ margin:0 0 16px; color:var(--bb-text); line-height:1.6; }
.bb-review figcaption{ font-weight:700; color:var(--bb-text); }
.bb-review figcaption span{ display:block; color:var(--bb-muted); font-weight:400; font-size:.85rem; }

.bb-plans{ background:var(--bb-bg); padding:80px 0; }
.bb-plans-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; align-items:stretch; }
.bb-plan-card{ position:relative; background:var(--bb-surface); border:1px solid var(--bb-line); border-radius:16px; padding:40px 28px; text-align:center; display:flex; flex-direction:column; transition:transform .25s,border-color .25s,box-shadow .25s; }
.bb-plan-card:hover{ transform:translateY(-8px); border-color:var(--bb-primary); }
.bb-plan-card.featured{ border:2px solid var(--bb-primary); }
.bb-plan-badge{ position:absolute; top:-13px; left:50%; transform:translateX(-50%); background:var(--bb-primary); color:var(--bb-on-primary); font-size:.72rem; font-weight:800; padding:.3rem 1rem; border-radius:2rem; white-space:nowrap; }
.bb-plan-name{ font-family:var(--bb-font-head); font-size:1.3rem; font-weight:800; color:var(--bb-text); margin-bottom:14px; }
.bb-plan-price{ font-family:var(--bb-font-head); font-size:3rem; font-weight:800; color:var(--bb-primary); line-height:1; margin-bottom:14px; }
.bb-plan-price sup{ font-size:1.2rem; } .bb-plan-price sub{ font-size:.9rem; color:var(--bb-muted); }
.bb-plan-desc{ color:var(--bb-muted); font-size:.9rem; margin-bottom:22px; }
.bb-plan-btn{ margin-top:auto; justify-content:center; }

.bb-contact{ background:var(--bb-surface); padding:70px 0; }
.bb-contact-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:20px; max-width:900px; margin:0 auto; }
.bb-cinfo{ display:flex; gap:14px; align-items:flex-start; background:var(--bb-bg); border:1px solid var(--bb-line); border-radius:12px; padding:18px; }
.bb-cinfo i{ color:var(--bb-primary); font-size:1.2rem; margin-top:2px; }
.bb-cinfo b{ display:block; color:var(--bb-text); font-size:.9rem; }
.bb-cinfo span,.bb-cinfo a{ color:var(--bb-muted); font-size:.88rem; }

.bb-cta{ background:var(--bb-primary); padding:80px 0; text-align:center; }
.bb-cta-title{ font-family:var(--bb-font-head); font-size:clamp(2rem,4vw,3.2rem); font-weight:800; color:var(--bb-on-primary); margin:0 0 12px; }
.bb-cta-desc{ color:var(--bb-on-primary); opacity:.9; margin:0 0 26px; }

@media (max-width:860px){
  .bb-stats-grid,.bb-team{ grid-template-columns:repeat(2,1fr); }
  .bb-reviews-grid,.bb-plans-grid{ grid-template-columns:1fr; }
  .bb-marquee-item{ width:260px; height:190px; }
}

/* ── Funil de agendamento (/agendar) ── usa --pt-* (paleta própria por template×modo) */
.bk-hero{position:relative;overflow:hidden;background:var(--pt-bg);color:var(--pt-ink)}
/* Booking follows the same visual hierarchy as the service catalogue. */
.bb-booking-hero{isolation:isolate;min-height:480px;display:flex;align-items:center;background:var(--bb-bg);color:var(--bb-text)}
.bb-booking-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,var(--bb-bg) 13%,color-mix(in srgb,var(--bb-bg) 87%,transparent) 55%,color-mix(in srgb,var(--bb-bg) 38%,transparent) 100%)}
.bb-booking-hero .bk-hero-in{display:block;width:100%;max-width:1200px;padding:92px 20px 78px}
.bb-booking-hero .bk-hero-in>div:first-child{max-width:760px}
.bb-booking-hero .bk-eyebrow{color:var(--bb-text);border-color:var(--bb-line);background:color-mix(in srgb,var(--bb-bg) 72%,transparent)}
.bb-booking-hero .bk-eyebrow i{color:var(--bb-primary)}
.bb-booking-hero .bk-title{font-family:var(--bb-font-head);font-size:clamp(3rem,6vw,5.4rem);line-height:.94;letter-spacing:-.035em;color:var(--bb-text);text-transform:none}
.bb-booking-hero .bk-sub{max-width:580px;color:var(--bb-muted);font-size:1.05rem;line-height:1.7}
.bb-booking-hero .bk-hero-photo{position:absolute;inset:0;z-index:-2}
.bb-booking-hero .bk-hero-photo img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;border-radius:0;box-shadow:none;opacity:.42;filter:grayscale(.35) contrast(1.05)}
.bb-booking-hero .bk-hero-badge{display:none}
/* Estados de indisponibilidade continuam pertencendo ao tema escuro; o botão
   secundário não pode recuperar o branco do fluxo genérico. */
body.sc-template-1 .barber-booking-page-v2 .setup-block .barber-btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:.65rem;min-height:3.1rem;padding:.72rem 1.15rem!important;border:1px solid color-mix(in srgb,var(--pt-accent) 70%,var(--pt-line));border-radius:12px!important;background:color-mix(in srgb,var(--pt-accent) 12%,var(--pt-surface))!important;color:var(--pt-accent)!important;font-weight:800;box-shadow:none;}
body.sc-template-1 .barber-booking-page-v2 .setup-block .barber-btn-secondary:hover{background:var(--pt-accent)!important;border-color:var(--pt-accent);color:var(--pt-on-accent,#fff)!important;transform:translateY(-1px);}
.bk-hero-in{position:relative;z-index:1;width:100%;max-width:1200px;box-sizing:border-box;margin:0 auto;padding:96px clamp(20px,5vw,48px) 88px;display:grid;gap:2.5rem;align-items:center}
.bk-hero-in>*{min-width:0}
@media(min-width:1024px){.bk-hero-in{grid-template-columns:1.05fr .95fr}}
.bk-eyebrow{display:inline-flex;align-items:center;gap:.5rem;font-size:.72rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--pt-ink);border:1px solid var(--pt-line);background:color-mix(in srgb,var(--pt-ink) 8%,transparent);padding:.5rem 1rem;border-radius:999px;margin-bottom:1.2rem}
.bk-eyebrow i{color:var(--pt-accent)}
.bk-title{font-family:var(--pt-font);font-size:clamp(2.4rem,5.5vw,4rem);font-weight:800;line-height:1.02;text-transform:var(--pt-tt);margin:0}
.bk-sub{margin-top:1.25rem;max-width:42rem;font-size:1.05rem;line-height:1.7;color:var(--pt-muted)}
.bk-hero-photo{position:relative}
.bk-hero-photo img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--pt-radius);box-shadow:0 30px 70px -30px rgba(0,0,0,.55)}
.bk-hero-badge{position:absolute;right:1.1rem;bottom:1.1rem;display:inline-flex;align-items:center;gap:.5rem;background:var(--pt-accent);color:var(--pt-on-accent);font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:.6rem 1.1rem;border-radius:999px;box-shadow:0 12px 30px -10px rgba(0,0,0,.5)}
.bk-flow-strip{background:var(--pt-surface);border-top:1px solid var(--pt-line);border-bottom:1px solid var(--pt-line)}
.bk-flow-strip-in{width:100%;max-width:1200px;box-sizing:border-box;margin:0 auto;padding:1.75rem clamp(20px,5vw,48px);display:grid;gap:1.5rem}
@media(min-width:768px){.bk-flow-strip-in{grid-template-columns:repeat(3,1fr)}}
.bk-flow-step{display:flex;gap:.85rem}
.bk-flow-step div{min-width:0}
.bk-flow-step b{flex:none;width:2.2rem;height:2.2rem;border-radius:999px;display:grid;place-items:center;font-weight:900;font-size:.85rem;color:var(--pt-on-accent);background:var(--pt-accent)}
.bk-flow-step strong{display:block;font-size:.95rem;color:var(--pt-ink)}
.bk-flow-step span{font-size:.85rem;color:var(--pt-muted)}
@media(max-width:640px){
    .bk-hero{max-width:100vw}
    .bk-hero-in{display:block;width:auto;max-width:none;margin:0;padding:72px 20px 40px}
    .bk-title{font-size:clamp(1.95rem,8.2vw,2.22rem);line-height:1.08}
    .bk-sub{font-size:.96rem;line-height:1.6}
    .bk-hero-photo{margin-top:1.5rem}
    .bk-hero-photo img{aspect-ratio:16/10}
    .bk-flow-strip-in{gap:1.25rem}
}

.barber-booking-page-v2{background:var(--pt-bg) !important;color:var(--pt-ink)}
.barber-booking-page-v2 .barber-summary-card,
.barber-booking-page-v2 .barber-public-card{
    background:var(--pt-surface) !important;
    border-color:var(--pt-line) !important;
    border-radius:var(--pt-radius) !important;
    color:var(--pt-ink) !important;
    box-shadow:0 24px 60px -30px rgba(0,0,0,.4) !important;
}
.barber-booking-page-v2 .barber-summary-card h2,
.barber-booking-page-v2 .barber-form-step h3,
.barber-booking-page-v2 .barber-public-card h3{color:var(--pt-ink) !important}
.barber-booking-page-v2 .barber-summary-card h2,
.barber-booking-page-v2 .barber-form-step h3{font-family:var(--pt-font) !important;text-transform:var(--pt-tt);letter-spacing:-.01em}
.barber-booking-page-v2 .barber-hint,.barber-booking-page-v2 .svc-info p,.barber-booking-page-v2 .barber-summary-card p,.barber-booking-page-v2 .barber-cal-weekdays span{color:var(--pt-muted) !important}
.barber-booking-page-v2 .barber-label,.barber-booking-page-v2 .barber-cal-title,.barber-booking-page-v2 .barber-slots-label{color:var(--pt-ink) !important}
.barber-booking-page-v2 .barber-input,.barber-booking-page-v2 select.barber-input{background:var(--pt-elev) !important;color:var(--pt-ink) !important;border-color:var(--pt-line) !important}
.barber-booking-page-v2 .barber-service-options{gap:1rem !important}
.barber-booking-page-v2 .barber-service-card{border:1px solid var(--pt-line) !important;border-radius:var(--pt-radius) !important;background:var(--pt-surface) !important;color:var(--pt-ink) !important;padding:.9rem 1rem !important;gap:1rem !important;align-items:center !important;box-shadow:0 6px 18px -14px rgba(0,0,0,.3) !important}
.barber-booking-page-v2 .barber-service-card:hover{border-color:var(--pt-accent) !important;transform:translateY(-3px)}
.barber-booking-page-v2 .barber-service-card.selected{border-color:var(--pt-accent) !important;box-shadow:0 0 0 2px var(--pt-accent) !important}
.barber-booking-page-v2 .barber-service-card .svc-info h4{color:var(--pt-ink) !important;font-weight:800 !important}
.barber-booking-page-v2 .svc-icon-img{width:62px !important;height:62px !important;border-radius:max(0px,calc(var(--pt-radius) - 4px)) !important;background-size:cover !important;background-position:center !important;box-shadow:inset 0 0 0 1px var(--pt-line) !important;color:transparent !important}
.barber-booking-page-v2 .svc-check{margin-top:0 !important;align-self:flex-start}
.barber-booking-page-v2 .barber-pro-card{border:1px solid var(--pt-line) !important;border-radius:var(--pt-radius) !important;background:var(--pt-surface) !important;color:var(--pt-ink) !important;transition:transform .18s,box-shadow .18s,border-color .18s !important}
.barber-booking-page-v2 .barber-pro-card:hover{transform:translateY(-3px);border-color:var(--pt-accent) !important}
.barber-booking-page-v2 .barber-pro-card.selected{border-color:var(--pt-accent) !important;box-shadow:0 0 0 2px var(--pt-accent) !important}
.barber-booking-page-v2 .barber-pro-card .barber-pro-name,.barber-booking-page-v2 .barber-pro-card strong{color:var(--pt-ink) !important}
.barber-booking-page-v2 .text-slate-950,.barber-booking-page-v2 .text-slate-900,.barber-booking-page-v2 .text-slate-800,.barber-booking-page-v2 .text-zinc-900{color:var(--pt-ink) !important}
.barber-booking-page-v2 .text-slate-700,.barber-booking-page-v2 .text-slate-600,.barber-booking-page-v2 .text-slate-500,.barber-booking-page-v2 .text-zinc-600,.barber-booking-page-v2 .text-zinc-500{color:var(--pt-muted) !important}
.barber-booking-page-v2 .sum-val{color:var(--pt-ink) !important}
.barber-booking-page-v2 .sum-label{color:var(--pt-muted) !important}
.barber-booking-page-v2 .bg-slate-50,.barber-booking-page-v2 .bg-white{background:var(--pt-surface) !important}
.barber-booking-page-v2 .border-slate-200,.barber-booking-page-v2 .border-zinc-800{border-color:var(--pt-line) !important}
.barber-booking-page-v2 .barber-calendar{border:1px solid var(--pt-line) !important;border-radius:var(--pt-radius) !important;background:var(--pt-surface) !important;color:var(--pt-ink)}
.barber-booking-page-v2 .barber-cal-day{background:var(--pt-elev) !important;border:2px solid var(--pt-line) !important;color:var(--pt-ink) !important}
.barber-booking-page-v2 .barber-cal-day:hover:not(.empty-day){border-color:var(--pt-accent) !important}
.barber-booking-page-v2 .barber-cal-day.empty-day{background:transparent !important;border-color:transparent !important}
.barber-booking-page-v2 .barber-cal-day.selected{background:var(--pt-accent) !important;border-color:var(--pt-accent) !important;color:var(--pt-on-accent,#fff) !important}
.barber-booking-page-v2 .barber-cal-day:disabled,.barber-booking-page-v2 .barber-cal-day.disabled{opacity:.35}
.barber-booking-page-v2 .barber-slot-btn,.barber-booking-page-v2 .barber-slot-grid button{background:var(--pt-elev) !important;border:2px solid var(--pt-line) !important;border-radius:max(0px,calc(var(--pt-radius) - 6px)) !important;color:var(--pt-ink) !important}
.barber-booking-page-v2 .barber-slot-btn:hover{border-color:var(--pt-accent) !important}
.barber-booking-page-v2 .barber-slot-btn.selected{background:var(--pt-accent) !important;border-color:var(--pt-accent) !important;color:var(--pt-on-accent,#fff) !important}
.barber-booking-page-v2 .barber-booking-step{border-radius:var(--pt-radius) !important;background:var(--pt-surface) !important;border:1px solid var(--pt-line) !important;color:var(--pt-muted) !important}
.barber-booking-page-v2 .barber-booking-step-num{background:var(--pt-elev) !important;color:var(--pt-ink) !important}
.barber-booking-page-v2 .barber-booking-step.active{background:color-mix(in srgb,var(--pt-accent) 16%,var(--pt-surface)) !important;border-color:var(--pt-accent) !important;color:var(--pt-ink) !important}
.barber-booking-page-v2 .barber-booking-step.active .barber-booking-step-num,.barber-booking-page-v2 .barber-booking-step.done .barber-booking-step-num{background:var(--pt-accent) !important;color:var(--pt-on-accent,#fff) !important}
.barber-booking-page-v2 .barber-booking-step.done{cursor:pointer}
.barber-booking-page-v2 .barber-booking-step.done:hover{filter:brightness(.97)}
.barber-booking-page-v2 .payment-choice{background:var(--pt-surface) !important;border:1.5px solid var(--pt-line) !important;color:var(--pt-ink) !important}
.barber-booking-page-v2 .payment-choice strong{color:var(--pt-ink) !important}
.barber-booking-page-v2 .payment-choice span{color:var(--pt-muted) !important}
.barber-booking-page-v2 .payment-choice:has(input:checked){border-color:var(--pt-accent) !important;background:color-mix(in srgb,var(--pt-accent) 10%,var(--pt-surface)) !important}
.barber-booking-page-v2 .svc-totals{border-radius:var(--pt-radius) !important;background:color-mix(in srgb,var(--pt-accent) 8%,var(--pt-surface)) !important;border:1px solid var(--pt-line) !important;color:var(--pt-ink)}
.barber-booking-page-v2 .bk-flow-step b{color:var(--pt-on-accent,#fff) !important}

/* ── Loja de produtos (/agendar/produtos) ── */
.pp-page{background:var(--barber-bg);color:var(--barber-ink)}
.pp-hero{background:var(--barber-bg);color:var(--barber-ink);padding:96px 2rem 64px}
.pp-hero-in{position:relative;z-index:1;width:100%;max-width:1200px;box-sizing:border-box;margin:0 auto;display:grid;gap:2.5rem;align-items:center}
.pp-hero-in>*{min-width:0}
@media(min-width:1024px){.pp-hero-in{grid-template-columns:1.05fr .95fr}}
.pp-hero-tag{display:inline-flex;align-items:center;gap:.5rem;font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--barber-ink);border:1px solid var(--barber-line);background:var(--barber-soft);padding:.5rem 1rem;border-radius:999px;margin-bottom:1.2rem}
.pp-hero-tag i{color:var(--sc-primary)}
.pp-hero h1{font-family:var(--barber-font-display);font-size:clamp(2.4rem,5.5vw,3.6rem);font-weight:800;line-height:1.04;margin:0 0 1.1rem;letter-spacing:-.02em}
.pp-hero p{font-size:1.05rem;line-height:1.7;color:var(--barber-muted);margin:0;max-width:36rem}
.pp-hero-photo{position:relative}
.pp-hero-photo img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--sc-radius,16px);box-shadow:0 30px 70px -30px rgba(0,0,0,.55)}
.pp-hero-badge{position:absolute;right:1.1rem;bottom:1.1rem;display:inline-flex;align-items:center;gap:.5rem;background:var(--sc-primary);color:#fff;font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:.6rem 1.1rem;border-radius:999px;box-shadow:0 12px 30px -10px rgba(0,0,0,.5)}
@media(max-width:640px){.pp-hero{padding:72px 20px 40px}.pp-hero-photo{margin-top:1.5rem}.pp-hero-photo img{aspect-ratio:16/10}}
.pp-sec{max-width:1200px;margin:0 auto;padding:4rem 2rem}
.pp-filters{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:2rem;align-items:center}
.pp-filter-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem 1rem;border-radius:2rem;border:1.5px solid var(--barber-line);background:var(--barber-card);color:var(--barber-muted);font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s;text-decoration:none}
.pp-filter-btn:hover,.pp-filter-btn.active{border-color:var(--sc-primary);color:var(--sc-primary)}
.pp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:1.5rem}
.pp-card{background:var(--barber-card);border:1px solid var(--barber-line);border-radius:1rem;overflow:hidden;display:flex;flex-direction:column;transition:all .25s;position:relative}
.pp-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--sc-primary);transform:scaleX(0);transform-origin:left;transition:transform .3s}
.pp-card:hover::before{transform:scaleX(1)}
.pp-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(0,0,0,.08);border-color:var(--sc-primary)}
.pp-card-img{width:100%;height:200px;object-fit:cover;display:block;background:var(--barber-soft)}
.pp-card-img-placeholder{width:100%;height:160px;background:var(--barber-soft);display:flex;align-items:center;justify-content:center;font-size:2.5rem;color:var(--barber-line)}
.pp-card-body{padding:1.25rem;flex:1;display:flex;flex-direction:column;gap:.5rem}
.pp-card-cat{font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--sc-primary)}
.pp-card-name{font-size:.95rem;font-weight:700;color:var(--barber-ink);line-height:1.3}
.pp-card-desc{font-size:.8rem;color:var(--barber-muted);line-height:1.6;flex:1}
.pp-card-stock{font-size:.73rem;font-weight:600;padding:.25rem .6rem;border-radius:.375rem;display:inline-flex;align-items:center;gap:.3rem;width:fit-content}
.pp-card-stock.ok{background:#ecfdf5;color:#059669}
.pp-card-stock.low{background:#fffbeb;color:#d97706}
.pp-card-stock.out{background:#fef2f2;color:#dc2626}
.pp-card-foot{padding:.875rem 1.25rem;border-top:1px solid var(--barber-line);display:flex;align-items:center;justify-content:space-between;gap:.75rem}
.pp-price{font-size:1.2rem;font-weight:800;color:var(--sc-primary)}
.pp-price-unit{font-size:.7rem;color:var(--barber-muted);font-weight:500}
.pp-buy-btn{display:inline-flex;align-items:center;gap:.35rem;background:var(--sc-primary);color:#fff;font-size:.8rem;font-weight:700;padding:.5rem 1rem;border-radius:.5rem;text-decoration:none;transition:all .2s;border:none;cursor:pointer;white-space:nowrap}
.pp-buy-btn:hover{filter:brightness(.92)}
.pp-buy-btn:disabled,.pp-buy-btn[disabled]{opacity:.5;cursor:not-allowed}
.pp-empty{text-align:center;padding:5rem 2rem;color:var(--barber-muted)}
.pp-empty i{font-size:3rem;opacity:.3;display:block;margin-bottom:1rem}
.pp-cta{background:var(--sc-primary);padding:3.5rem 2rem;text-align:center}
.pp-cta h2{font-size:clamp(1.4rem,3vw,2rem);font-weight:900;color:#fff;margin-bottom:.75rem}
.pp-cta p{color:rgba(255,255,255,.85);margin-bottom:2rem;font-size:.95rem}
.pp-cta-btn-p,.pp-cta-btn-w{display:inline-flex;align-items:center;gap:.5rem;background:#fff;color:var(--sc-primary);font-weight:700;padding:.9rem 2.25rem;border-radius:.5rem;font-size:.95rem;text-decoration:none;transition:all .2s}
.pp-cta-btn-p:hover,.pp-cta-btn-w:hover{background:var(--sc-primary);color:#fff}
@media(max-width:480px){.pp-sec{padding:2.5rem 1.25rem}.pp-cta{padding:2.5rem 1.25rem}}

/* Catálogo T1: foto e conteúdo formam um único hero editorial, sem empilhar
   dois blocos desconectados antes dos produtos. */
body.sc-template-1 .pp-hero{
  width:min(1200px,calc(100% - 48px));margin:0 auto;padding:84px 0 64px;
  display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.78fr);
  grid-template-areas:'copy photo';gap:clamp(32px,6vw,88px);align-items:center;
}
body.sc-template-1 .pp-hero-in{grid-area:copy;display:block;margin:0;max-width:560px;padding:0}
body.sc-template-1 .pp-hero-photo{grid-area:photo}
body.sc-template-1 .pp-hero-photo img{aspect-ratio:5/4;min-height:340px}
@media(max-width:760px){
  body.sc-template-1 .pp-hero{width:calc(100% - 32px);padding:52px 0 40px;grid-template-columns:1fr;grid-template-areas:'copy' 'photo';gap:26px}
  body.sc-template-1 .pp-hero-photo{margin:0}
  body.sc-template-1 .pp-hero-photo img{min-height:0;aspect-ratio:16/10}
}

/* ============================================================
   APP — /agendar/app (.apx-*) · tokens --pt-* (via _page-theme)
   ============================================================ */
.apx{background:var(--pt-bg);color:var(--pt-ink);font-family:'Plus Jakarta Sans',system-ui,sans-serif;overflow-x:hidden}
.apx *{box-sizing:border-box}
.apx-hero{position:relative;overflow:hidden}
.apx-hero-bg{position:absolute;inset:0;z-index:0}.apx-hero-bg img{width:100%;height:100%;object-fit:cover;opacity:.32}
.apx-hero-bg::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,var(--pt-bg),transparent 70%),linear-gradient(90deg,var(--pt-bg) 25%,transparent)}
.apx-hero-in{position:relative;z-index:1;max-width:1140px;margin:0 auto;padding:88px 24px 60px}
.apx-eyebrow{display:inline-flex;align-items:center;gap:.5rem;font-size:.72rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--pt-accent);margin-bottom:1rem}
.apx-hero h1{font-family:var(--pt-font);font-size:clamp(2.4rem,5.5vw,4rem);line-height:1.04;margin:0 0 .8rem;font-weight:800;text-transform:var(--pt-tt)}
.apx-hero p{color:var(--pt-muted);font-size:1.05rem;line-height:1.7;max-width:38rem;margin:0}
.apx-wrap{max-width:1140px;margin:0 auto;padding:0 24px}
.apx-grid{display:grid;grid-template-columns:1fr;gap:22px;padding:56px 0 80px}
@media(min-width:760px){.apx-grid{grid-template-columns:1fr 1.1fr}}
.apx-card{border:1px solid var(--pt-line);border-radius:var(--pt-radius);background:var(--pt-surface);padding:34px}
.apx-card h2{font-family:var(--pt-font);font-size:1.4rem;margin:0 0 8px;font-weight:800}
.apx-card h2 i{color:var(--pt-accent)}
.apx-lead{color:var(--pt-muted);font-size:.92rem;line-height:1.6;margin:0 0 20px}
.apx-qr{width:206px;height:206px;margin:0 auto 18px;border-radius:14px;background:#fff;display:grid;place-items:center;padding:10px;box-shadow:0 12px 30px rgba(0,0,0,.25)}
.apx-qr canvas,.apx-qr img{width:100%;height:100%;border-radius:8px}
.apx-link{display:inline-flex;align-items:center;gap:.5rem;color:var(--pt-accent);font-weight:700;font-size:.86rem;text-decoration:none;border:1px solid var(--pt-line);padding:10px 18px;border-radius:var(--pt-radius)}
.apx-step{display:flex;gap:16px;align-items:flex-start;padding:14px 0;border-top:1px solid var(--pt-line)}
.apx-step:first-of-type{border-top:0}
.apx-step b{flex-shrink:0;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:.85rem;color:#fff;background:var(--pt-accent)}
.apx-step h4{margin:0 0 3px;font-size:.95rem;font-weight:800}
.apx-step p{margin:0;font-size:.84rem;color:var(--pt-muted);line-height:1.5}
.apx-code{margin-top:22px;display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--pt-elev);border:1px solid var(--pt-line);border-radius:var(--pt-radius);padding:12px 16px}
.apx-code code{font-family:monospace;font-weight:800;color:var(--pt-accent);letter-spacing:.04em;overflow-wrap:anywhere}
.apx-code button{background:none;border:0;color:var(--pt-muted);font-weight:700;font-size:.8rem;cursor:pointer}
.apx-code button:hover{color:var(--pt-accent)}
.apx-final{text-align:center;border:1px solid var(--pt-line);border-radius:var(--pt-radius);background:var(--pt-surface);padding:56px 28px;margin-bottom:84px}
.apx-final h2{font-family:var(--pt-font);font-size:clamp(1.8rem,4vw,2.6rem);margin:0 0 .8rem;font-weight:800}
.apx-final p{color:var(--pt-muted);max-width:32rem;margin:0 auto 1.8rem;line-height:1.7}
.apx-btn{display:inline-flex;align-items:center;gap:.5rem;background:var(--pt-accent);color:#fff;font-weight:800;padding:14px 30px;border-radius:var(--pt-radius);text-decoration:none;transition:transform .2s,filter .2s}
.apx-btn:hover{transform:translateY(-2px);filter:brightness(1.06)}
/* ============================================================
   VINCULAR / ÁREA DO CLIENTE (.vk-*) · tokens --pt-*
   ============================================================ */
.vk-card-header{padding:2rem 2rem 1.4rem;text-align:center}
.vk-logo{width:64px;height:64px;border-radius:50%;border:1px solid var(--pt-line);background:color-mix(in srgb,var(--pt-accent) 14%,var(--pt-surface));display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;overflow:hidden}
.vk-logo img{width:100%;height:100%;object-fit:cover;border-radius:50%}
.vk-card-header h1{font-family:var(--pt-font);font-size:1.3rem;font-weight:800;color:var(--pt-ink);margin:0 0 .35rem;line-height:1.2}
.vk-card-header p{font-size:.875rem;color:var(--pt-muted);margin:0}
.vk-card-body{padding:1.8rem 2rem 2rem}
.vk-hint{background:color-mix(in srgb,var(--pt-accent) 10%,var(--pt-surface));border:1px solid var(--pt-line);border-radius:calc(var(--pt-radius)*.5);padding:.875rem 1rem;font-size:.875rem;color:var(--pt-muted);margin-bottom:1.25rem;display:flex;align-items:flex-start;gap:.5rem}
.vk-hint i{margin-top:.15rem;flex-shrink:0;color:var(--pt-accent)}
.vk-label{display:block;font-size:.8rem;font-weight:700;color:var(--pt-ink);margin-bottom:.35rem}
.vk-input{width:100%;padding:.78rem 1rem;border:1px solid var(--pt-line);border-radius:calc(var(--pt-radius)*.5);font-size:.9rem;color:var(--pt-ink);background:var(--pt-elev);transition:border-color .2s,box-shadow .2s;font-family:inherit;box-sizing:border-box}
.vk-input:focus{outline:none;border-color:var(--pt-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--pt-accent) 16%,transparent)}
.vk-group{margin-bottom:1.05rem}
.vk-btn{width:100%;padding:.9rem;border:none;border-radius:calc(var(--pt-radius)*.5);background:var(--pt-accent);color:#fff;font-size:.95rem;font-weight:800;cursor:pointer;transition:filter .2s,transform .1s;font-family:inherit;margin-top:.5rem;display:flex;align-items:center;justify-content:center}
.vk-btn:hover{filter:brightness(1.08);transform:translateY(-1px)}
.vk-footer{text-align:center;margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--pt-line)}
.vk-footer a{font-size:.85rem;color:var(--pt-accent);font-weight:700;text-decoration:none}
.vk-footer a:hover{text-decoration:underline}
.vk-error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;border-radius:calc(var(--pt-radius)*.5);padding:.75rem 1rem;font-size:.85rem;margin-bottom:1rem}
.vk-auth-actions{display:grid;gap:.75rem;margin-top:.5rem}
.vk-auth-actions a{display:flex;align-items:center;justify-content:center;gap:.45rem;border-radius:calc(var(--pt-radius)*.5);padding:.85rem 1rem;font-weight:800;text-decoration:none;text-align:center}
.vk-auth-primary{background:var(--pt-accent);color:#fff}
.vk-auth-secondary{border:1px solid var(--pt-accent);color:var(--pt-accent);background:transparent}
@media(max-width:560px){.vk-card-header,.vk-card-body{padding-left:1.35rem;padding-right:1.35rem}}
/* ---- T1/T2 · vincular: hero + card ---- */
.vk-hero{position:relative;overflow:hidden;background:var(--pt-bg);color:var(--pt-ink);text-align:left}
.vk-hero-bg{position:absolute;inset:0;z-index:0}
.vk-hero-bg img{width:100%;height:100%;object-fit:cover;opacity:.42}
.vk-hero-bg::after{content:'';position:absolute;inset:0;background:linear-gradient(95deg,var(--pt-bg) 34%,color-mix(in srgb,var(--pt-bg) 55%,transparent) 70%,transparent)}
.vk-hero-inner{position:relative;z-index:1;max-width:1100px;margin:0 auto;padding:88px 24px 60px}
.vk-kicker{display:inline-flex;align-items:center;gap:.5rem;font-size:.72rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--pt-ink);border:1px solid var(--pt-line);background:color-mix(in srgb,var(--pt-ink) 8%,transparent);padding:.5rem 1rem;border-radius:999px;margin-bottom:1.1rem}
.vk-kicker i{color:var(--pt-accent)}
.vk-hero h1{font-family:var(--pt-font);font-size:clamp(2.2rem,5vw,3.6rem);line-height:1.04;margin:0 0 .7rem}
.vk-hero p{color:var(--pt-muted);font-size:1rem;max-width:560px;margin:0;line-height:1.65}
.vk-hero-centered{text-align:center;min-height:360px;display:flex;align-items:center}
.vk-hero-centered .vk-hero-inner{width:100%;padding-top:110px;padding-bottom:88px}
.vk-hero-centered .vk-kicker{justify-content:center}
.vk-hero-centered p{margin-left:auto;margin-right:auto}
.vk-shell{display:flex;justify-content:center;padding:3rem 1.5rem 4.5rem;background:var(--pt-bg)}
.vk-card{width:min(100%,500px);background:var(--pt-surface);border:1px solid var(--pt-line);border-radius:var(--pt-radius);box-shadow:0 26px 60px -30px rgba(0,0,0,.4);overflow:hidden}
.vk-card-header{border-bottom:1px solid var(--pt-line)}

/* ============================================================
   SERVIÇOS T1 — design system #bm (movido de public-modern)
   Autocontido: define seus próprios --bm-*. Só há #bm em /servicos T1.
   ============================================================ */
#bm{--bm-bg:#0a0a0b;--bm-surface:#151517;--bm-elev:#1c1c1f;--bm-line:rgba(255,255,255,.10);--bm-ink:#ffffff;--bm-muted:rgba(255,255,255,.62);--bm-accent:var(--sc-primary,#f97316);--bm-accent-2:var(--bm-accent);--bm-radius:20px;
  background:var(--bm-bg);color:var(--bm-ink);font-family:'Plus Jakarta Sans',system-ui,sans-serif;overflow:hidden;position:relative;}
#bm *{box-sizing:border-box}
#bm .bm-wrap{max-width:1200px;margin:0 auto;padding:0 24px}
#bm a{text-decoration:none}
#bm .bm-hero{position:relative;min-height:92vh;display:flex;align-items:center;overflow:hidden}
#bm .bm-hero.bm-hero-sm{min-height:62vh}
#bm .bm-hero-bg{position:absolute;inset:0;z-index:0}
#bm .bm-hero-bg img{width:100%;height:120%;object-fit:cover;filter:grayscale(.2) contrast(1.05)}
#bm .bm-hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(95deg,var(--bm-bg) 30%,color-mix(in srgb,var(--bm-bg) 88%,transparent) 54%,color-mix(in srgb,var(--bm-bg) 42%,transparent) 72%,transparent 94%),linear-gradient(0deg,var(--bm-bg) 4%,transparent 34%)}
#bm .bm-title,#bm .bm-sub{text-shadow:0 2px 28px rgba(0,0,0,.55)}
#bm .bm-hero-inner{position:relative;z-index:2;padding:120px 0 90px;max-width:720px}
#bm .bm-eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:.72rem;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:var(--bm-accent);margin-bottom:22px}
#bm .bm-eyebrow::before{content:"";width:34px;height:2px;background:var(--bm-accent)}
#bm .bm-title{font-family:'Playfair Display',Georgia,serif;font-size:clamp(3rem,8vw,6rem);line-height:.95;letter-spacing:-.02em;font-weight:800;margin:0}
#bm .bm-title em{font-style:italic;color:var(--bm-accent)}
#bm .bm-sub{font-size:1.12rem;line-height:1.7;color:var(--bm-muted);max-width:540px;margin:26px 0 36px}
#bm .bm-cta-row{display:flex;flex-wrap:wrap;gap:14px}
#bm .bm-btn{display:inline-flex;align-items:center;gap:10px;padding:16px 28px;border-radius:999px;font-weight:800;font-size:.95rem;transition:transform .2s,box-shadow .2s,background .2s;border:1px solid transparent;cursor:pointer}
#bm .bm-btn-primary{background:linear-gradient(135deg,var(--bm-accent),var(--bm-accent-2));color:#fff;box-shadow:0 14px 34px color-mix(in srgb,var(--bm-accent) 40%,transparent)}
#bm .bm-btn-primary:hover{transform:translateY(-3px);box-shadow:0 20px 44px color-mix(in srgb,var(--bm-accent) 50%,transparent)}
#bm .bm-btn-ghost{background:transparent;border-color:var(--bm-line);color:var(--bm-ink)}
#bm .bm-btn-ghost:hover{background:var(--bm-surface);transform:translateY(-3px)}
#bm .bm-scroll{position:absolute;left:50%;bottom:26px;transform:translateX(-50%);z-index:2;color:var(--bm-muted);font-size:1.3rem;animation:bmbob 1.8s ease-in-out infinite}
@keyframes bmbob{0%,100%{transform:translate(-50%,0)}50%{transform:translate(-50%,10px)}}
#bm .bm-section{padding:96px 0;position:relative}
#bm .bm-shead{max-width:640px;margin-bottom:48px}
#bm .bm-shead.center{margin-left:auto;margin-right:auto;text-align:center}
#bm .bm-skick{font-size:.72rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--bm-accent);margin-bottom:14px;display:block}
#bm .bm-stitle{font-family:'Playfair Display',serif;font-size:clamp(2rem,4.5vw,3.2rem);line-height:1.04;letter-spacing:-.02em;margin:0 0 14px;font-weight:800}
#bm .bm-stext{color:var(--bm-muted);font-size:1.05rem;line-height:1.7;margin:0}
#bm .bm-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--bm-line);border-radius:var(--bm-radius);overflow:hidden;background:var(--bm-surface)}
#bm .bm-stat{padding:34px 26px;text-align:center;border-right:1px solid var(--bm-line)}
#bm .bm-stat:last-child{border-right:0}
#bm .bm-stat b{display:block;font-family:'Playfair Display',serif;font-size:2.6rem;line-height:1;color:var(--bm-accent);letter-spacing:-.02em}
#bm .bm-stat span{display:block;margin-top:10px;font-size:.85rem;color:var(--bm-muted);font-weight:600}
#bm .bm-svc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
#bm .bm-svc{display:flex;align-items:center;gap:18px;padding:24px;border:1px solid var(--bm-line);border-radius:var(--bm-radius);background:var(--bm-surface);transition:transform .25s,border-color .25s,background .25s}
#bm .bm-svc:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--bm-accent) 45%,var(--bm-line));background:var(--bm-elev)}
#bm .bm-svc-ic{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;font-size:1.3rem;flex-shrink:0;background:color-mix(in srgb,var(--bm-accent) 14%,transparent);color:var(--bm-accent)}
#bm .bm-svc-img{width:72px;height:72px;border-radius:14px;flex-shrink:0;background-size:cover;background-position:center;background-color:var(--bm-elev);box-shadow:inset 0 0 0 1px var(--bm-line)}
#bm .bm-svc-bd{flex:1;min-width:0}
#bm .bm-svc-bd h3{margin:0;font-size:1.05rem;font-weight:800}
#bm .bm-svc-bd p{margin:4px 0 0;font-size:.82rem;color:var(--bm-muted)}
#bm .bm-svc-price{text-align:right;flex-shrink:0}
#bm .bm-svc-price b{font-family:'Playfair Display',serif;font-size:1.35rem;color:var(--bm-ink)}
#bm .bm-svc-price span{display:block;font-size:.7rem;color:var(--bm-muted);text-transform:uppercase;letter-spacing:.08em}
#bm .bm-feat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
#bm .bm-feat{border:1px solid var(--bm-line);border-radius:var(--bm-radius);background:var(--bm-surface);padding:26px;transition:transform .25s,border-color .25s}
#bm .bm-feat:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--bm-accent) 45%,var(--bm-line))}
#bm .bm-feat-ic{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;font-size:1.15rem;margin-bottom:16px;background:color-mix(in srgb,var(--bm-accent) 14%,transparent);color:var(--bm-accent)}
#bm .bm-feat h3{margin:0 0 8px;font-size:1rem;font-weight:800}
#bm .bm-feat p{margin:0;font-size:.85rem;color:var(--bm-muted);line-height:1.6}
#bm .bm-team{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
#bm .bm-pro{border:1px solid var(--bm-line);border-radius:var(--bm-radius);background:var(--bm-surface);padding:30px;text-align:center;transition:transform .25s,border-color .25s}
#bm .bm-pro:hover{transform:translateY(-5px);border-color:color-mix(in srgb,var(--bm-accent) 45%,var(--bm-line))}
#bm .bm-pro-av{width:88px;height:88px;border-radius:50%;margin:0 auto 18px;display:grid;place-items:center;font-family:'Playfair Display',serif;font-size:2rem;font-weight:800;color:#fff;background:linear-gradient(135deg,var(--bm-accent),var(--bm-accent-2))}
#bm .bm-pro h3{margin:0;font-size:1.1rem;font-weight:800}
#bm .bm-pro p{margin:5px 0 0;font-size:.85rem;color:var(--bm-muted)}
#bm .bm-quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
#bm .bm-quote{border:1px solid var(--bm-line);border-radius:var(--bm-radius);background:var(--bm-surface);padding:30px}
#bm .bm-quote .stars{color:var(--bm-accent);margin-bottom:14px;font-size:.85rem}
#bm .bm-quote p{margin:0 0 18px;line-height:1.7;font-size:.98rem}
#bm .bm-quote .who{display:flex;align-items:center;gap:12px}
#bm .bm-quote .who b{font-size:.92rem}
#bm .bm-quote .who span{font-size:.78rem;color:var(--bm-muted)}
#bm .bm-final{position:relative;border-radius:32px;overflow:hidden;padding:72px 48px;text-align:center;background:linear-gradient(135deg,#1a1206,var(--bm-bg));border:1px solid var(--bm-line)}
#bm .bm-final::before{content:"";position:absolute;right:-120px;top:-120px;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--bm-accent) 26%,transparent),transparent 70%)}
#bm .bm-final h2{position:relative;font-family:'Playfair Display',serif;font-size:clamp(2rem,4.5vw,3.2rem);margin:0 0 14px;letter-spacing:-.02em}
#bm .bm-final p{position:relative;color:var(--bm-muted);max-width:540px;margin:0 auto 30px;line-height:1.7}
#bm .bm-rv{opacity:0;transform:translateY(34px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}
#bm .bm-rv.bm-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){#bm .bm-rv{opacity:1;transform:none}#bm .bm-scroll{animation:none}}
@media (max-width:900px){
  #bm .bm-stats{grid-template-columns:repeat(2,1fr)}#bm .bm-stat:nth-child(2){border-right:0}#bm .bm-stat:nth-child(1),#bm .bm-stat:nth-child(2){border-bottom:1px solid var(--bm-line)}
  #bm .bm-svc-grid,#bm .bm-team,#bm .bm-quotes{grid-template-columns:1fr}
  #bm .bm-feat-grid{grid-template-columns:repeat(2,1fr)}
  #bm .bm-section{padding:64px 0}#bm .bm-final{padding:52px 24px}
}
@media (max-width:640px){
  #bm{max-width:100vw;overflow-x:hidden}
  #bm .bm-wrap{width:100%;max-width:100%;padding:0 28px}
  #bm .bm-hero{min-height:calc(100svh - 64px);align-items:center}
  #bm .bm-hero-inner{width:100%;max-width:22rem;padding:74px 0 82px}
  #bm .bm-title{font-size:clamp(2.65rem,13vw,3.45rem);line-height:.98}
  #bm .bm-sub{max-width:19.5rem;font-size:1rem;line-height:1.58;margin:24px 0 32px}
  #bm .bm-cta-row{align-items:stretch}
  #bm .bm-btn{width:100%;justify-content:center;padding:15px 20px}
  #bm .bm-scroll{bottom:20px}
}

/* ============================================================
   PLANOS (página pública da barbearia) + painel de planos escuro
   ============================================================ */
.bb-perks{ background:var(--bb-surface); padding:76px 0; }
.bb-perks-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; max-width:1000px; margin:0 auto; }
.bb-perk{ display:flex; gap:14px; align-items:flex-start; background:var(--bb-bg); border:1px solid var(--bb-line); border-radius:16px; padding:22px 24px; }
.bb-perk i{ color:var(--bb-primary); font-size:1.3rem; margin-top:2px; flex-shrink:0; width:24px; text-align:center; }
.bb-perk h3{ font-size:1rem; font-weight:700; color:var(--bb-text); margin:0 0 4px; }
.bb-perk p{ font-size:.9rem; line-height:1.55; color:var(--bb-muted); margin:0; }
.bb-plans-note{ text-align:center; color:var(--bb-muted); font-size:.9rem; margin-top:28px; }
.bb-plan-feats{ list-style:none; margin:0 0 22px; padding:0; text-align:left; display:grid; gap:10px; }
.bb-plan-feats li{ display:flex; gap:10px; align-items:flex-start; font-size:.9rem; color:var(--bb-muted); }
.bb-plan-feats li i{ color:var(--bb-primary); margin-top:3px; font-size:.8rem; }
@media(max-width:860px){ .bb-perks-grid{ grid-template-columns:1fr; } }
/* Painel de "Planos disponíveis" no agendar: escuro para combinar com o tema (T1) */
body.sc-template-1 .subscription-panel{ background:var(--barber-card); border-color:var(--barber-line); }
body.sc-template-1 .subscription-panel h3{ color:var(--barber-ink); }
body.sc-template-1 .subscription-panel p{ color:var(--barber-muted); }
body.sc-template-1 .subscription-pill{ background:var(--barber-bg); border-color:var(--barber-line); color:var(--barber-ink); }

/* ============================================================
   FLUXOS PÚBLICOS — mesma superfície do Tema 1
   Confirmação e pagamento têm markup próprio, mas não podem voltar
   para uma página clara no meio da jornada do cliente.
   ============================================================ */
body.sc-template-1 .confirm-hero,
body.sc-template-1 .payment-hero{background:linear-gradient(135deg,#19130d 0%,var(--pt-bg) 72%)!important;border-bottom:1px solid var(--pt-line)}
body.sc-template-1 .confirm-section,
body.sc-template-1 .payment-wrap{background:var(--pt-bg)!important;color:var(--pt-ink)}
body.sc-template-1 .confirm-card,
body.sc-template-1 .payment-card{background:var(--pt-surface)!important;border:1px solid var(--pt-line)!important;border-radius:var(--pt-radius)!important;box-shadow:0 24px 60px -32px rgba(0,0,0,.7)!important;color:var(--pt-ink)}
body.sc-template-1 .confirm-card-header,
body.sc-template-1 .confirm-row,
body.sc-template-1 .payment-summary{border-color:var(--pt-line)!important}
body.sc-template-1 .confirm-card-header,
body.sc-template-1 .confirm-row-label,
body.sc-template-1 .confirm-row-sub,
body.sc-template-1 .payment-row span,
body.sc-template-1 .payment-note{color:var(--pt-muted)!important}
body.sc-template-1 .confirm-row-value,
body.sc-template-1 .payment-title,
body.sc-template-1 .payment-row strong{color:var(--pt-ink)!important}
body.sc-template-1 .pix-box,
body.sc-template-1 .boleto-box{background:color-mix(in srgb,var(--pt-accent) 10%,var(--pt-surface))!important;border-color:var(--pt-accent)!important}
body.sc-template-1 .pix-code,
body.sc-template-1 .boleto-line{background:var(--pt-elev)!important;border-color:var(--pt-line)!important;color:var(--pt-ink)!important}
body.sc-template-1 .payment-actions .status-btn{background:var(--pt-elev)!important;color:var(--pt-ink)!important;border:1px solid var(--pt-line)!important}

/* Catálogo de serviços: composição exclusiva, porém com a mesma linguagem da home. */
.bb-studio-page{background:var(--bb-bg);color:var(--bb-text)}
.bb-studio-hero{position:relative;isolation:isolate;min-height:480px;display:flex;align-items:center;overflow:hidden;border-bottom:1px solid var(--bb-line)}
.bb-studio-hero-media{position:absolute;inset:0;z-index:-2}.bb-studio-hero-media img{width:100%;height:100%;object-fit:cover;opacity:.42;filter:grayscale(.35) contrast(1.05)}
.bb-studio-hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,var(--bb-bg) 13%,color-mix(in srgb,var(--bb-bg) 87%,transparent) 55%,color-mix(in srgb,var(--bb-bg) 38%,transparent) 100%)}
.bb-studio-hero-inner{width:100%;display:block;padding-top:92px;padding-bottom:78px}
.bb-studio-hero-note{display:none}
.bb-studio-hero h1{max-width:760px;margin:16px 0 18px;font-family:var(--bb-font-head);font-size:clamp(3rem,6vw,5.4rem);line-height:.94;letter-spacing:-.035em;color:var(--bb-text)}
.bb-studio-hero p{max-width:580px;margin:0 0 30px;color:var(--bb-muted);font-size:1.05rem;line-height:1.7}
.bb-studio-hero-note{display:none}
.bb-studio-hero-note i{color:var(--bb-primary);font-size:1.15rem}.bb-studio-hero-note strong{font-size:1rem}.bb-studio-hero-note span{font-size:.84rem;line-height:1.55;color:var(--bb-muted)}
.bb-services-catalog{padding:96px 0}.bb-section-head-left{text-align:left;max-width:650px;margin-left:0;margin-right:0}
.bb-service-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.bb-service-card{display:grid;grid-template-columns:132px minmax(0,1fr);min-height:184px;overflow:hidden;border:1px solid var(--bb-line);border-radius:16px;background:var(--bb-surface);color:var(--bb-text);text-decoration:none;transition:border-color .2s,transform .2s,box-shadow .2s}
.bb-service-card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--bb-primary) 72%,var(--bb-line));box-shadow:0 24px 42px -32px #000}.bb-service-card>img{width:100%;height:100%;object-fit:cover}
.bb-service-card-body{display:flex;flex-direction:column;gap:14px;padding:22px}.bb-service-card-top{display:flex;justify-content:space-between;gap:16px}.bb-service-card-top strong,.bb-service-card-top small{display:block}.bb-service-card-top strong{font-family:var(--bb-font-head);font-size:1.35rem;line-height:1.1}.bb-service-card-top small{margin-top:5px;color:var(--bb-muted);font-size:.78rem}.bb-service-card-top b{white-space:nowrap;color:var(--bb-primary);font-size:.95rem}.bb-service-card-description{font-size:.86rem;line-height:1.55;color:var(--bb-muted)}
.bb-service-card-link{margin-top:auto;color:var(--bb-primary);font-size:.83rem;font-weight:800}.bb-service-card-link i{margin-left:5px;transition:transform .2s}.bb-service-card:hover .bb-service-card-link i{transform:translateX(4px)}
.bb-empty-state{grid-column:1/-1;padding:54px 24px;text-align:center;border:1px dashed var(--bb-line);border-radius:16px;background:var(--bb-surface)}.bb-empty-state i{font-size:1.5rem;color:var(--bb-primary)}.bb-empty-state h3{margin:12px 0 5px;font-family:var(--bb-font-head)}.bb-empty-state p{margin:0;color:var(--bb-muted)}
.bb-studio-memberships{padding:88px 0;background:var(--bb-surface);border-top:1px solid var(--bb-line);border-bottom:1px solid var(--bb-line)}.bb-studio-memberships .bb-container{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:4rem;align-items:center}.bb-studio-memberships-copy .bb-section-title{font-size:clamp(2.2rem,4vw,3.5rem)}
.bb-studio-memberships-list{display:grid;gap:10px}.bb-studio-memberships-list article{display:grid;grid-template-columns:minmax(0,1fr) auto 38px;align-items:center;gap:18px;padding:19px 20px;border:1px solid var(--bb-line);border-radius:14px;background:var(--bb-bg)}.bb-studio-memberships-list strong,.bb-studio-memberships-list span{display:block}.bb-studio-memberships-list strong{font-family:var(--bb-font-head);font-size:1.15rem}.bb-studio-memberships-list span{margin-top:3px;color:var(--bb-muted);font-size:.8rem}.bb-studio-memberships-list b{font-size:.96rem;color:var(--bb-primary)}.bb-studio-memberships-list small{display:block;color:var(--bb-muted);font-size:.72rem;text-align:right}.bb-studio-memberships-list a{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--bb-primary);color:var(--bb-on-primary)}
.bb-studio-steps{padding:96px 0}.bb-studio-steps ol{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;padding:0;margin:0;list-style:none}.bb-studio-steps li{display:flex;gap:18px;padding:26px 20px;border-top:1px solid var(--bb-line)}.bb-studio-steps li b{font-family:var(--bb-font-head);font-size:1.65rem;line-height:1;color:var(--bb-primary)}.bb-studio-steps li strong,.bb-studio-steps li span{display:block}.bb-studio-steps li strong{margin-bottom:7px;font-size:.98rem}.bb-studio-steps li span{color:var(--bb-muted);font-size:.84rem;line-height:1.55}
@media(max-width:640px){
  .bb-container{padding:0 20px}.bb-hero{min-height:620px}.bb-hero-inner{padding:106px 20px 74px}.bb-hero-title{font-size:clamp(3.25rem,16vw,4.4rem);line-height:.92}.bb-hero::after{background:linear-gradient(180deg,rgba(13,14,16,.25),rgba(13,14,16,.73) 62%,var(--bb-bg)),linear-gradient(90deg,rgba(13,14,16,.58),rgba(13,14,16,.25))}.bb-hero-media{inset:0}.bb-hero-media img{transform:scale(1.04)}
  .bb-hero-actions,.bb-hero-actions .bb-btn{width:100%}.bb-hero-actions .bb-btn{justify-content:center}
  .bb-stats{padding:28px 0}.bb-stat{padding:4px 0}.bb-section-head{margin-bottom:30px}.bb-services,.bb-team-section,.bb-gallery,.bb-reviews,.bb-plans{padding:56px 0}
  .confirm-hero,.payment-hero{padding:3rem 1.25rem}.confirm-content{padding:0 16px}.confirm-card{border-radius:14px}.payment-wrap{padding:1.5rem 16px 3rem}
}
@media(max-width:860px){.bb-studio-hero-inner,.bb-studio-memberships .bb-container{grid-template-columns:1fr}.bb-studio-hero-note{max-width:330px}.bb-studio-steps ol{grid-template-columns:1fr}.bb-studio-steps li{padding-left:0}}
@media(max-width:640px){.bb-studio-hero{min-height:auto}.bb-studio-hero-inner{gap:2rem;padding-top:68px;padding-bottom:50px}.bb-studio-hero h1{font-size:clamp(2.7rem,14vw,3.8rem)}.bb-studio-hero-note{display:none}.bb-services-catalog,.bb-studio-memberships,.bb-studio-steps{padding:58px 0}.bb-service-cards{grid-template-columns:1fr}.bb-service-card{grid-template-columns:96px minmax(0,1fr);min-height:148px}.bb-service-card-body{padding:16px;gap:8px}.bb-service-card-top{gap:10px}.bb-service-card-top strong{font-size:1.1rem}.bb-service-card-description{display:none}.bb-studio-memberships-list article{grid-template-columns:minmax(0,1fr) auto 34px;padding:15px}.bb-studio-memberships-list a{width:34px;height:34px}.bb-studio-steps li{padding-top:20px}}
@media(max-width:640px){.bb-booking-hero{min-height:auto}.bb-booking-hero .bk-hero-in{padding:68px 20px 50px}.bb-booking-hero .bk-title{font-size:clamp(2.7rem,14vw,3.8rem);line-height:.96}.bb-booking-hero .bk-sub{font-size:.96rem;line-height:1.6}}

/* ============================================================
   HEROES PÚBLICOS T1 — uma única linguagem para a jornada inteira.
   A foto ocupa toda a área; conteúdo e contraste ficam acima dela.
   A animação é exclusiva da mídia e é desligada quando o navegador pede
   menos movimento.
   ============================================================ */
@keyframes bb-hero-photo-drift{
  0%{transform:scale(1.055) translate3d(-1.2%,-.8%,0)}
  50%{transform:scale(1.095) translate3d(1.1%,.7%,0)}
  100%{transform:scale(1.065) translate3d(-.4%,1.05%,0)}
}

body.sc-template-1 .bb-hero-media img,
body.sc-template-1 .bb-studio-hero-media img,
body.sc-template-1 .bb-booking-hero .bk-hero-photo img,
body.sc-template-1 .pp-hero-photo img,
body.sc-template-1 .apx-hero-bg img,
body.sc-template-1 .vk-hero-bg img,
body.sc-template-1 .ma-hero-bg img,
body.sc-template-1 .bb-status-hero-media img{
  transform:scale(1.055);
  transform-origin:center;
  will-change:transform;
}
@media (prefers-reduced-motion:no-preference){
  body.sc-template-1 .bb-hero-media img,
  body.sc-template-1 .bb-studio-hero-media img,
  body.sc-template-1 .bb-booking-hero .bk-hero-photo img,
  body.sc-template-1 .pp-hero-photo img,
  body.sc-template-1 .apx-hero-bg img,
  body.sc-template-1 .vk-hero-bg img,
  body.sc-template-1 .ma-hero-bg img,
  body.sc-template-1 .bb-status-hero-media img{animation:bb-hero-photo-drift 19s ease-in-out infinite alternate;}
}
@media (prefers-reduced-motion:reduce){
  body.sc-template-1 .bb-hero-media img,
  body.sc-template-1 .bb-studio-hero-media img,
  body.sc-template-1 .bb-booking-hero .bk-hero-photo img,
  body.sc-template-1 .pp-hero-photo img,
  body.sc-template-1 .apx-hero-bg img,
  body.sc-template-1 .vk-hero-bg img,
  body.sc-template-1 .ma-hero-bg img,
  body.sc-template-1 .bb-status-hero-media img{animation:none;transform:scale(1.04);}
}

/* O shell público libera overflow vertical nas sections. Heroes são exceção:
   a foto nunca pode atravessar o limite inferior e invadir a faixa seguinte. */
body.sc-template-1 .bb-hero,
body.sc-template-1 .bb-studio-hero,
body.sc-template-1 .bb-booking-hero,
body.sc-template-1 .pp-hero,
body.sc-template-1 .apx-hero,
body.sc-template-1 .vk-hero,
body.sc-template-1 .ma-hero-bm,
body.sc-template-1 .confirm-hero,
body.sc-template-1 .payment-hero{overflow:clip!important}
body.sc-template-1 .bb-hero-media{inset:0}
body.sc-template-1 .bb-stats{position:relative;z-index:1;padding:34px 0!important}
body.sc-template-1 .bb-stats-grid{align-items:center}

/* Produtos: remove a composição lateral antiga somente no Tema 1. */
body.sc-template-1 .pp-page{background:var(--bb-bg);color:var(--bb-text)}
body.sc-template-1 .pp-hero{position:relative;isolation:isolate;min-height:480px;display:flex;align-items:center;overflow:hidden;padding:0;background:var(--bb-bg);color:var(--bb-text)}
body.sc-template-1 .pp-hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,var(--bb-bg) 13%,color-mix(in srgb,var(--bb-bg) 87%,transparent) 55%,color-mix(in srgb,var(--bb-bg) 38%,transparent) 100%)}
body.sc-template-1 .pp-hero-photo{position:absolute;inset:0;z-index:-2;margin:0}
body.sc-template-1 .pp-hero-photo img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;border-radius:0;box-shadow:none;opacity:.42;filter:grayscale(.35) contrast(1.05)}
body.sc-template-1 .pp-hero-badge{display:none}
body.sc-template-1 .pp-hero-in{position:relative;z-index:1;display:block;width:100%;padding:92px 20px 78px}
body.sc-template-1 .pp-hero-tag{color:var(--bb-text);border-color:var(--bb-line);background:color-mix(in srgb,var(--bb-bg) 72%,transparent)}
body.sc-template-1 .pp-hero h1{font-family:var(--bb-font-head);font-size:clamp(3rem,6vw,5.4rem);line-height:.94;letter-spacing:-.035em;color:var(--bb-text);max-width:760px}
body.sc-template-1 .pp-hero p{max-width:580px;color:var(--bb-muted);font-size:1.05rem;line-height:1.7}

/* Confirmação e pagamento pertencem ao mesmo cenário, não a uma tela genérica. */
body.sc-template-1 .confirm-hero,
body.sc-template-1 .payment-hero{position:relative;isolation:isolate;min-height:380px;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:72px 20px;background:var(--bb-bg)!important;color:var(--bb-text);border-bottom:1px solid var(--bb-line)}
body.sc-template-1 .confirm-hero::before,
body.sc-template-1 .payment-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,var(--bb-bg) 13%,color-mix(in srgb,var(--bb-bg) 87%,transparent) 55%,color-mix(in srgb,var(--bb-bg) 38%,transparent) 100%)}
body.sc-template-1 .bb-status-hero-media{position:absolute;inset:0;z-index:-2}
body.sc-template-1 .bb-status-hero-media img{width:100%;height:100%;object-fit:cover;opacity:.42;filter:grayscale(.35) contrast(1.05)}
body.sc-template-1 .confirm-hero .container,
body.sc-template-1 .payment-hero-content{position:relative;z-index:1;width:min(100%,720px);text-align:center}
body.sc-template-1 .confirm-hero h1,
body.sc-template-1 .payment-hero h1{font-family:var(--bb-font-head);color:var(--bb-text)}
body.sc-template-1 .confirm-hero p,
body.sc-template-1 .payment-hero p{color:var(--bb-muted)}

/* Páginas auxiliares da jornada do cliente também usam o mesmo enquadramento. */
body.sc-template-1 .apx-hero,
body.sc-template-1 .vk-hero,
body.sc-template-1 .ma-hero-bm{isolation:isolate;min-height:480px;display:flex;align-items:center;background:var(--bb-bg);color:var(--bb-text)}
body.sc-template-1 .apx-hero-bg,
body.sc-template-1 .vk-hero-bg,
body.sc-template-1 .ma-hero-bg{z-index:-2}
body.sc-template-1 .apx-hero-bg::after,
body.sc-template-1 .vk-hero-bg::after,
body.sc-template-1 .ma-hero-bg::after{background:linear-gradient(90deg,var(--bb-bg) 13%,color-mix(in srgb,var(--bb-bg) 87%,transparent) 55%,color-mix(in srgb,var(--bb-bg) 38%,transparent) 100%)}
body.sc-template-1 .apx-hero-bg img,
body.sc-template-1 .vk-hero-bg img,
body.sc-template-1 .ma-hero-bg img{opacity:.42;filter:grayscale(.35) contrast(1.05)}
body.sc-template-1 .apx-hero-in,
body.sc-template-1 .vk-hero-inner,
body.sc-template-1 .ma-hero-in{position:relative;z-index:1;width:100%;padding-top:92px;padding-bottom:78px}
body.sc-template-1 .apx-hero h1,
body.sc-template-1 .vk-hero h1,
body.sc-template-1 .ma-hero-bm h1{font-family:var(--bb-font-head);font-size:clamp(3rem,6vw,5.4rem);line-height:.94;letter-spacing:-.035em;color:var(--bb-text);text-transform:none}
body.sc-template-1 .apx-hero p,
body.sc-template-1 .vk-hero p,
body.sc-template-1 .ma-hero-bm p{max-width:580px;color:var(--bb-muted);font-size:1.05rem;line-height:1.7}
body.sc-template-1 .vk-hero-centered p{margin-left:auto;margin-right:auto}

@media(max-width:640px){
  body.sc-template-1 .pp-hero{min-height:auto}
  body.sc-template-1 .pp-hero-in{padding:68px 20px 50px}
  body.sc-template-1 .pp-hero h1{font-size:clamp(2.7rem,14vw,3.8rem);line-height:.96}
  body.sc-template-1 .pp-hero p{font-size:.96rem;line-height:1.6}
  body.sc-template-1 .confirm-hero,
  body.sc-template-1 .payment-hero{min-height:330px;padding:58px 20px}
  body.sc-template-1 .apx-hero,
  body.sc-template-1 .vk-hero,
  body.sc-template-1 .ma-hero-bm{min-height:auto}
  body.sc-template-1 .apx-hero-in,
  body.sc-template-1 .vk-hero-inner,
  body.sc-template-1 .ma-hero-in{padding:68px 20px 50px}
  body.sc-template-1 .apx-hero h1,
  body.sc-template-1 .vk-hero h1,
  body.sc-template-1 .ma-hero-bm h1{font-size:clamp(2.7rem,14vw,3.8rem);line-height:.96}
  body.sc-template-1 .apx-hero p,
  body.sc-template-1 .vk-hero p,
  body.sc-template-1 .ma-hero-bm p{font-size:.96rem;line-height:1.6}
}

/* ============================================================
   AGENDAMENTO T1 — jornada editorial, não painel genérico.
   Preserva os campos e o JavaScript existentes; altera somente a composição.
   ============================================================ */
body.sc-template-1 .bb-booking-hero{min-height:520px;background:transparent!important;isolation:isolate}
body.sc-template-1 .bb-booking-hero .bk-hero-photo{inset:0;z-index:0}
body.sc-template-1 .bb-booking-hero::before{z-index:1;background:linear-gradient(180deg,rgba(13,14,16,.30) 0%,rgba(13,14,16,.68) 60%,var(--bb-bg) 100%),linear-gradient(90deg,rgba(13,14,16,.60),rgba(13,14,16,.10) 50%,rgba(13,14,16,.55))}
body.sc-template-1 .bb-booking-hero .bk-hero-in{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;text-align:center;padding:112px 20px 104px}
body.sc-template-1 .bb-booking-hero .bk-hero-in>div:first-child{max-width:760px}
body.sc-template-1 .bb-booking-hero .bk-eyebrow{margin-bottom:18px}
body.sc-template-1 .bb-booking-hero .bk-title{max-width:840px;margin:0;font-size:clamp(3.2rem,6vw,5.65rem)}
body.sc-template-1 .bb-booking-hero .bk-sub{margin:22px auto 0;max-width:610px}

body.sc-template-1 .bk-flow-strip{position:relative;z-index:4;margin:-42px 20px 0;background:transparent;border:0}
body.sc-template-1 .bk-flow-strip-in{width:min(100%,1120px);margin:0 auto;padding:0;gap:0;overflow:hidden;background:color-mix(in srgb,var(--bb-surface) 88%,#0d0e10);border:1px solid var(--bb-line);border-radius:18px;box-shadow:0 24px 52px -34px #000}
body.sc-template-1 .bk-flow-step{min-height:104px;align-items:center;gap:14px;padding:22px 26px;border-right:1px solid var(--bb-line)}
body.sc-template-1 .bk-flow-step:last-child{border-right:0}
body.sc-template-1 .bk-flow-step b{width:38px;height:38px;background:color-mix(in srgb,var(--bb-primary) 18%,var(--bb-elev));border:1px solid color-mix(in srgb,var(--bb-primary) 62%,var(--bb-line));color:var(--bb-primary)}
body.sc-template-1 .bk-flow-step strong{color:var(--bb-text);font-size:.92rem}
body.sc-template-1 .bk-flow-step span{display:block;margin-top:3px;color:var(--bb-muted);font-size:.8rem;line-height:1.45}

body.sc-template-1 .barber-booking-page-v2{position:relative;padding:88px 20px 96px!important;background:var(--bb-bg)!important}
body.sc-template-1 .barber-booking-page-v2::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,color-mix(in srgb,var(--bb-surface) 44%,transparent),transparent 260px);pointer-events:none}
body.sc-template-1 .barber-booking-shell-v2{position:relative;z-index:1;max-width:1120px!important;gap:24px!important}
body.sc-template-1 .barber-summary-card{border-radius:18px!important;padding:30px!important;background:linear-gradient(155deg,color-mix(in srgb,var(--bb-surface) 96%,#000),var(--bb-elev))!important;box-shadow:none!important}
body.sc-template-1 .barber-summary-card h2{font-family:var(--bb-font-head)!important;font-size:clamp(2rem,3vw,2.7rem)!important;line-height:.96}
body.sc-template-1 .barber-summary-card .mt-6{padding-top:20px;border-top:1px solid var(--bb-line)}
body.sc-template-1 .barber-public-card{border-radius:18px!important;background:var(--bb-surface)!important;box-shadow:0 30px 70px -48px #000!important}
body.sc-template-1 .barber-booking-steps{gap:8px!important;margin-bottom:28px!important;padding-bottom:22px;border-bottom:1px solid var(--bb-line)}
body.sc-template-1 .barber-booking-step{min-height:46px;border-radius:10px!important;background:transparent!important;border-color:transparent!important;padding:9px 10px!important;font-size:.78rem!important}
body.sc-template-1 .barber-booking-step.active{background:color-mix(in srgb,var(--bb-primary) 14%,var(--bb-elev))!important;border-color:color-mix(in srgb,var(--bb-primary) 55%,var(--bb-line))!important}
body.sc-template-1 .barber-booking-step-num{width:26px!important;height:26px!important;background:var(--bb-elev)!important;font-size:.75rem!important}
body.sc-template-1 .barber-booking-step.active .barber-booking-step-num,body.sc-template-1 .barber-booking-step.done .barber-booking-step-num{background:var(--bb-primary)!important;color:var(--bb-on-primary)!important}
body.sc-template-1 .barber-form-step h3{font-family:var(--bb-font-head)!important;font-size:clamp(1.8rem,3vw,2.45rem)!important;line-height:1;margin-bottom:10px!important}
body.sc-template-1 .svc-totals{margin:24px 0!important;padding:14px 18px!important;background:color-mix(in srgb,var(--bb-primary) 9%,var(--bb-elev))!important;border-color:color-mix(in srgb,var(--bb-primary) 24%,var(--bb-line))!important}
body.sc-template-1 .barber-service-card{min-height:92px!important;border-radius:14px!important;background:var(--bb-elev)!important}
body.sc-template-1 .barber-service-card:hover{background:color-mix(in srgb,var(--bb-primary) 8%,var(--bb-elev))!important;transform:none!important}
body.sc-template-1 .barber-service-card.selected{background:color-mix(in srgb,var(--bb-primary) 13%,var(--bb-elev))!important}
body.sc-template-1 .setup-block{min-height:330px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:var(--bb-surface)!important;border:1px solid var(--bb-line)!important;border-radius:18px!important}

@media(max-width:860px){
  body.sc-template-1 .bk-flow-strip{margin:-28px 14px 0}
  body.sc-template-1 .bk-flow-strip-in{grid-template-columns:1fr!important}
  body.sc-template-1 .bk-flow-step{min-height:auto;border-right:0;border-bottom:1px solid var(--bb-line);padding:16px 18px}
  body.sc-template-1 .bk-flow-step:last-child{border-bottom:0}
  body.sc-template-1 .barber-booking-page-v2{padding:66px 14px 74px!important}
}
@media(max-width:640px){
  body.sc-template-1 .bb-booking-hero{min-height:470px}
  body.sc-template-1 .bb-booking-hero .bk-hero-in{padding:96px 20px 84px}
  body.sc-template-1 .bb-booking-hero .bk-title{font-size:clamp(2.9rem,14vw,4.1rem)}
  body.sc-template-1 .barber-summary-card{padding:24px!important}
  body.sc-template-1 .barber-public-card{padding:22px!important}
}
