*{box-sizing:border-box}html{scroll-behavior:smooth}:root{--main-color:#f6c955;--bg-color:#08090b;--text-color:#f5f5f5}body{margin:0;background:var(--bg-color);color:var(--text-color);font-family:Inter,Arial,sans-serif}a{text-decoration:none;color:inherit}.topbar{height:108px;display:flex;align-items:center;justify-content:space-between;padding:0 7%;border-bottom:1px solid #282a2f;background:#07080a;position:sticky;top:0;z-index:10}.brand,.footer-brand{display:flex;align-items:center;gap:14px}.brand span,.footer-brand span{display:block;font-size:12px;letter-spacing:4px;color:#eee}.brand strong,.footer-brand strong{display:block;font-size:30px;letter-spacing:2px}.brand-mark{color:var(--main-color);font-size:42px;line-height:1}nav{display:flex;gap:48px;color:#b9b9bd}nav a{padding:39px 0 34px;position:relative}nav a.active,nav a:hover{color:#fff}nav a.active:after{content:"";position:absolute;left:0;right:0;bottom:30px;height:3px;background:var(--main-color)}.btn{display:inline-flex;align-items:center;gap:8px;border:0;border-radius:16px;padding:17px 27px;font-size:16px;font-weight:700;cursor:pointer}.btn-gold{background:var(--main-color);color:#101114}.hero{min-height:400px;display:grid;grid-template-columns:46% 54%;background:#050607}.hero-copy{padding:70px 8% 60px}.eyebrow,.section-title span{display:inline-block;width:38px;height:4px;background:var(--main-color)}.hero h1{font-size:62px;line-height:1.03;margin:20px 0}.hero h1 span{color:var(--main-color)}.hero p{color:#bbb;font-size:17px;margin-bottom:28px}.hero-image{min-height:400px;background:radial-gradient(circle at 65% 45%,#6c5a3b 0,#282522 18%,#111214 48%,#050607 75%);position:relative;overflow:hidden}.hero-image:after{content:"FOTO PRINCIPAL";position:absolute;inset:0;display:grid;place-items:center;color:#888;letter-spacing:3px;font-size:13px}.section{padding:55px 7%}.section-title{font-size:13px;letter-spacing:2px;color:#bbb;display:flex;align-items:center;gap:16px;margin-bottom:28px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.card{border:1px solid #303238;border-radius:12px;padding:30px;background:#0d0f12}.icon{width:70px;height:70px;border-radius:50%;background:var(--main-color);color:#101114;display:grid;place-items:center;font-size:27px;margin-bottom:22px}.card h3{font-size:23px;margin:0 0 10px}.price{font-size:22px;font-weight:800;color:var(--main-color)}.booking-wrap{padding:25px 5% 80px}.booking{border:1px solid #292c32;border-radius:14px;background:#0d0f12;padding:38px}.booking h2{font-size:38px;margin:0 0 8px}.muted{color:#a8a9ad}.steps{display:flex;justify-content:flex-end;gap:38px;margin:0 0 35px}.step{display:flex;align-items:center;gap:8px;color:#92949a;font-size:13px}.step b{width:34px;height:34px;border-radius:50%;border:1px solid #555;display:grid;place-items:center}.step.active{color:var(--main-color)}.step.active b{background:var(--main-color);color:#111;border-color:var(--main-color)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:25px}label{display:flex;flex-direction:column;gap:9px;font-size:14px;font-weight:600}select,input{height:54px;border:1px solid #383b42;background:#0a0c0f;color:#eee;border-radius:12px;padding:0 15px;font-size:15px}select:focus,input:focus{outline:2px solid var(--main-color)}.confirmation{margin-top:20px;border:1px solid #3f3f2b;border-radius:12px;padding:20px;color:var(--main-color);background:#11120d}footer{border-top:1px solid #2a2c30;padding:40px 7%;display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:30px;color:#c7c7ca}.copyright{grid-column:1/-1;border-top:1px solid #292b30;padding-top:22px;text-align:center;font-size:12px;color:#777}.footer-brand strong{font-size:22px}@media(max-width:850px){.topbar{height:auto;padding:18px 5%;gap:15px;flex-wrap:wrap}nav{order:3;width:100%;justify-content:center;gap:25px}nav a{padding:10px 0}.hero{grid-template-columns:1fr}.hero-image{min-height:260px}.hero h1{font-size:45px}.cards{grid-template-columns:1fr}.steps{justify-content:flex-start;overflow:auto}.form-grid{grid-template-columns:1fr}footer{grid-template-columns:1fr}.copyright{grid-column:auto}.topbar>.btn{display:none}}


/* Planos v7 */
.plans-section{padding-top:35px}.plans-heading{font-size:34px;margin:0 0 8px}.plans-intro{margin:0 0 26px}.plan-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.plan-card{position:relative;border:1px solid #303238;border-radius:16px;padding:28px;background:#0d0f12}.plan-badge{display:inline-block;background:rgba(246,201,85,.12);color:var(--main-color);border:1px solid rgba(246,201,85,.25);border-radius:999px;padding:7px 10px;font-size:11px;font-weight:800;letter-spacing:1px}.plan-card h3{font-size:24px;margin:18px 0 8px}.plan-price{font-size:30px;font-weight:800;color:var(--main-color)}.plan-price small{font-size:13px;color:#aaa;margin-left:4px}.plan-card ul{list-style:none;padding:0;margin:22px 0 0;display:grid;gap:10px;color:#d0d0d3}.plan-card li:before{content:'✓';color:var(--main-color);font-weight:800;margin-right:9px}
@media(max-width:900px){.plan-cards{grid-template-columns:1fr}.plans-heading{font-size:28px}}
/* V10 */
.brand-logo{width:52px;height:52px;border-radius:12px;object-fit:cover}.hero-image.has-photo{background-size:cover;background-position:center}.hero-image.has-photo:after{display:none}.hero-placeholder{position:absolute;inset:0;display:grid;place-items:center;color:#8d8d8d;letter-spacing:2px;font-size:12px}.hero-image.has-photo .hero-placeholder{display:none}.barber-cards,.review-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.barber-card,.review-card{border:1px solid #303238;border-radius:16px;padding:24px;background:#0d0f12}.barber-photo{width:96px;height:96px;border-radius:50%;object-fit:cover;background:#202226;margin-bottom:16px}.barber-photo-placeholder{width:96px;height:96px;border-radius:50%;display:grid;place-items:center;background:#202226;font-size:34px;margin-bottom:16px}.barber-card h3{margin:0 0 7px;font-size:22px}.review-summary{font-size:28px;font-weight:800;color:var(--main-color);margin-bottom:20px}.review-card .stars{color:var(--main-color);letter-spacing:2px}.review-form{margin-top:28px;border:1px solid #303238;border-radius:16px;padding:24px;background:#0d0f12}@media(max-width:900px){.barber-cards,.review-cards{grid-template-columns:1fr}}

/* V11: interface mais simples e focada em ação */
.plan-subscribe{width:100%;justify-content:center;margin-top:22px}.topbar nav a{font-weight:700}.hero-copy p{max-width:560px}.section{max-width:1200px;margin:auto}.booking{max-width:1050px;margin:auto}@media(max-width:850px){#servicos,#equipe,#avaliacoes{padding-top:36px;padding-bottom:36px}.hero-copy{padding-top:42px}.hero h1{font-size:38px}.btn{min-height:52px;justify-content:center}}


/* V13.3 — atalho do parceiro para editar a própria barbearia */
.btn-owner{background:#171a1f;color:var(--main-color);border:1px solid #4a4226;white-space:nowrap}
.btn-owner:hover{background:#22251f;border-color:var(--main-color)}
.owner-edit-float{display:none;position:fixed;right:18px;bottom:18px;z-index:50;background:var(--main-color);color:#101114;border-radius:999px;padding:14px 18px;font-weight:800;box-shadow:0 12px 32px rgba(0,0,0,.38);border:1px solid rgba(255,255,255,.16)}
@media(max-width:850px){.owner-edit-float:not([hidden]){display:inline-flex;align-items:center;gap:8px}.topbar #ownerEditBtn{display:none!important}}

/* V16 — pequenos refinamentos de usabilidade */
.customer-fields{margin-top:14px}
#bookingForm button[type="submit"]:disabled{opacity:.65;cursor:wait}
input:focus,select:focus,textarea:focus{outline:2px solid var(--main-color,var(--main-color));outline-offset:1px}
@media (max-width:700px){.booking{padding-left:18px;padding-right:18px}.topbar nav{overflow-x:auto;white-space:nowrap}}


/* V17 — checkout Pix */
.payment-modal[hidden]{display:none}.payment-modal{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:18px}.payment-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.78);backdrop-filter:blur(5px)}.payment-box{position:relative;z-index:1;width:min(520px,100%);max-height:92vh;overflow:auto;background:#0d0f12;border:1px solid #34363d;border-radius:20px;padding:28px;box-shadow:0 24px 80px rgba(0,0,0,.55)}.payment-box h2{font-size:30px;margin:14px 0 5px}.payment-box label{margin-top:14px}.payment-close{position:absolute;right:16px;top:12px;border:0;background:transparent;color:#fff;font-size:32px;cursor:pointer}.payment-box .btn{width:100%;justify-content:center;margin-top:16px}.payment-secondary{background:#202329;color:#fff;border:1px solid #3b3f47}.pix-qr{display:block;width:min(280px,90%);aspect-ratio:1;margin:18px auto;background:#fff;border-radius:12px;padding:8px}.pix-code{width:100%;min-height:88px;resize:none;border:1px solid #383b42;background:#090b0e;color:#eee;border-radius:12px;padding:12px}.payment-status{text-align:center;font-weight:700}.payment-error{color:#ff8b8b;min-height:20px;margin-bottom:0}.payment-success{color:#76e6a1;font-weight:800;text-align:center}.payment-box button:disabled{opacity:.6;cursor:wait}

/* V18 — Pix + cartão Mercado Pago */
.payment-methods{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:6px}.payment-methods .btn{margin-top:16px}.card-checkout-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:18px 0}.payment-link{border:0;background:transparent;color:var(--main-color);font-weight:800;cursor:pointer}.payment-box:has(#cardResult:not([hidden])){width:min(650px,100%)}#cardPaymentBrick_container{min-height:260px}#cardStatusText{margin-top:14px;text-align:center}@media(max-width:620px){.payment-methods{grid-template-columns:1fr}.payment-box{padding:20px}}

/* V18.2 — personalização e praticidade sem mudar a estrutura */
body{transition:background-color .2s ease,color .2s ease}.btn-gold,.icon,.step.active b{background:var(--main-color)!important}.price,.step.active,.hero h1 span,.brand-mark{color:var(--main-color)!important}.mobile-book-cta{display:none}
@media(max-width:850px){body{padding-bottom:78px}.mobile-book-cta{display:flex;position:fixed;left:16px;right:16px;bottom:14px;z-index:50;min-height:52px;align-items:center;justify-content:center;border-radius:14px;background:var(--main-color);color:#101114;font-weight:900;box-shadow:0 12px 32px rgba(0,0,0,.38)}.booking{padding:24px 18px}.booking h2{font-size:30px}.section{padding-left:5%;padding-right:5%}}

/* V18.4 — UX audit */
.service-card{cursor:pointer;transition:transform .15s ease,border-color .15s ease}.service-card:hover,.service-card:focus{transform:translateY(-2px);border-color:var(--main-color);outline:none}.service-hint{display:block;margin-top:14px;color:var(--main-color);font-weight:800}.booking select:disabled,.booking input:disabled{opacity:.65}.payment-error:empty{display:none}@media(max-width:700px){.service-card{padding:22px}.booking h2{font-size:30px}}


/* V18.6 — e-mail informado uma vez por sessão, fora do agendamento */
.email-gate[hidden]{display:none}.email-gate{position:fixed;inset:0;z-index:260;display:grid;place-items:center;padding:18px}.email-gate-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.82);backdrop-filter:blur(6px)}.email-gate-box{position:relative;z-index:1;width:min(460px,100%);background:#0d0f12;border:1px solid #34363d;border-radius:20px;padding:28px;box-shadow:0 24px 80px rgba(0,0,0,.55)}.email-gate-box h2{font-size:30px;margin:14px 0 8px}.email-gate-box .btn{width:100%;justify-content:center;margin-top:12px}.booking-email-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:18px 0 24px;padding:13px 15px;border:1px solid #30343a;border-radius:12px;background:#111318;color:#d9dadd;font-size:14px}.booking-email-bar strong{color:var(--main-color);word-break:break-all}.booking-email-bar button{border:0;background:transparent;color:var(--main-color);font-weight:800;cursor:pointer;white-space:nowrap}@media(max-width:620px){.email-gate-box{padding:22px}.booking-email-bar{align-items:flex-start;flex-direction:column}.booking-email-bar button{padding:0}}

/* V18.8 — login do cliente */
.client-auth-box label{display:block;margin-top:14px}.client-auth-box input{width:100%;margin-top:7px}.client-auth-box .btn{width:100%;justify-content:center}.client-auth-box .payment-secondary{margin-top:10px}.client-forgot{display:block;width:100%;text-align:center;margin-top:14px;padding:8px}.payment-account{margin:14px 0 2px;padding:12px 14px;border:1px solid #30343a;border-radius:12px;background:#111318;color:#d9dadd}.payment-account strong{color:var(--main-color);word-break:break-all}


/* V20 — área do cliente, entrada limpa e mobile */
.nav-account{border:1px solid #454850;background:#17191e;color:var(--main-color);border-radius:10px;padding:9px 12px;font-weight:800;cursor:pointer}.booking-account-actions{display:flex;gap:12px}.client-area-box{width:min(720px,100%)}.client-plan-summary{margin:18px 0;padding:16px;border:1px solid #343840;border-radius:14px;background:#111318}.client-plan-summary strong{color:var(--main-color)}.client-bookings{display:grid;gap:12px;margin-top:18px}.client-booking{display:grid;grid-template-columns:110px 1fr auto;gap:14px;align-items:center;border:1px solid #30343a;border-radius:14px;padding:15px;background:#101216}.client-booking.closed{opacity:.62}.client-booking-date{color:var(--main-color);font-weight:900}.client-booking-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.client-booking-actions button{border:1px solid #3b3f47;background:#202329;color:#fff;border-radius:9px;padding:9px 11px;font-weight:800;cursor:pointer}.client-booking-actions .danger{border-color:#633;background:#271515;color:#ffb0b0}.root-landing #servicos,.root-landing #planos,.root-landing #equipe,.root-landing #avaliacoes,.root-landing #agendar,.root-landing footer,.root-landing .mobile-book-cta,.root-landing nav{display:none!important}.root-landing .hero{min-height:calc(100vh - 86px)}.root-landing .hero-copy p{max-width:620px}.root-landing .hero-image{display:none}.root-landing .hero{grid-template-columns:1fr}.root-landing .hero-copy{max-width:850px}.root-landing .hero h1 span{white-space:nowrap}
@media(max-width:700px){.client-booking{grid-template-columns:1fr}.client-booking-actions{justify-content:flex-start}.client-area-box{padding:20px}.booking-account-actions{width:100%;justify-content:space-between}.topbar nav{display:none}.hero-copy{padding-left:5%;padding-right:5%}.hero h1{font-size:36px}.plan-card,.barber-card,.review-card{padding:20px}}
