/* Fachada Beauty 2.1 — foco no catálogo e no agendamento, como no sistema Maciel. */
body:not(:has(.admin-layout)){--rose:#ad667e;--rose-dark:#774357;--line:#eadcdf}
.site-head{border-bottom:1px solid #ead9df;box-shadow:0 4px 16px #51293e06}
.topbar{min-height:78px}
.nav{gap:24px}
.nav a:not(.btn){font-size:13px;font-weight:700}
.brand-mark{border-radius:13px;background:#f6e7eb}
.hero{background:linear-gradient(110deg,#fbf3f1,#f1e2df);border-bottom:1px solid #eadcdf}
.hero-inner{min-height:475px;gap:32px}
.hero h1{font-family:'Playfair Display',Georgia,serif;font-size:clamp(44px,5vw,70px);line-height:1.12;letter-spacing:-.045em}
.hero-copy>p{font-size:15px;line-height:1.8}
.hero-detail{margin-top:30px}
.hero-image{height:435px}
.hero-image .photo-main{height:91%;width:76%;border:5px solid #fff7f4;object-position:center}
.hero-image .photo-small{height:38%;bottom:6%;border-width:6px}
.hero-float{right:0;top:16%;max-width:165px}
.btn{border-radius:12px;min-height:44px}
.btn.primary{background:#995c73;border-color:#995c73;box-shadow:none}
.btn.primary:hover{background:#85475f;border-color:#85475f}
.btn.outline{border-color:#caaab5}
.section{padding:68px 0}
.section-head{text-align:left;margin:0 0 30px;max-width:800px}
.section-head h2{font-size:clamp(31px,3.4vw,46px);margin:7px 0 10px}
.section-head p{max-width:620px;font-size:14px}
.category-tabs{justify-content:flex-start;margin:0 0 22px}
.category-tabs button{border-radius:10px;padding:10px 16px;font-size:12px}
.services{grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.service{border-radius:17px;box-shadow:0 5px 18px #7c5b5c0b;transform:none!important}
.service:hover{box-shadow:0 15px 28px #73515d18;border-color:#dcb9c4}
.service img{height:200px}
.service-body{padding:18px}
.service h3{font-size:22px}
.service p{font-size:13px;min-height:34px}
.service-footer{margin-top:14px}
.service-footer button{border-radius:9px;border:1px solid #d6b6c1;padding:8px 12px;font-weight:750}
.booking-section{background:linear-gradient(120deg,#fbf5f3,#f6ebe9);padding:75px 0;border-top:1px solid #ebdfe0;border-bottom:1px solid #ebdfe0}
.booking-layout{grid-template-columns:minmax(260px,.82fr) minmax(0,1.18fr);gap:42px}
.booking-intro h2{font-size:clamp(31px,3.3vw,47px)}
.booking-card{border-radius:19px;box-shadow:0 12px 30px #5d39430d;padding:26px}
.booking-card h3{font:600 27px 'Playfair Display',Georgia,serif}
.booking-steps{gap:15px}
.step-num{width:34px;height:34px;border-radius:10px}
.hours{background:#fdfaf9}
.hours button{min-height:41px}
.banner{background:#fffaf8}
.banner-photo{border-radius:24px;height:340px}
.banner h2{font-size:clamp(31px,3.3vw,45px)}
.public-team{background:#f8f2f0;padding:65px 0}
.public-team-card{border-radius:17px;padding:20px}
.public-faq{padding:65px 0}
.public-faq h2{font-size:clamp(31px,3.3vw,45px)}
.mobile-booking-bar .btn{border-radius:10px}
@media(max-width:1100px){
 .services{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:820px){
 .topbar{min-height:70px}
 .hero-inner{min-height:0;grid-template-columns:1fr;padding-top:44px}
 .hero-image{height:330px;margin-top:15px}
 .hero h1{font-size:clamp(40px,7vw,61px)}
 .booking-layout{grid-template-columns:1fr}
 .booking-intro>p{max-width:620px}
}
@media(max-width:600px){
 .hero-inner{padding-top:34px}
 .hero h1{font-size:44px}
 .hero-copy>p{font-size:13px}
 .hero-detail{gap:12px}
 .hero-image{height:290px}
 .section{padding:48px 0}
 .section-head{margin-bottom:20px}
 .section-head h2{font-size:32px}
 .services{grid-template-columns:1fr;gap:13px}
 .service{display:grid;grid-template-columns:120px minmax(0,1fr);min-height:155px}
 .service img{height:100%;min-height:155px;max-height:200px}
 .service-body{padding:12px 14px}
 .service h3{font-size:19px;line-height:1.15}
 .service p{font-size:11px;line-height:1.5;min-height:0;margin-top:5px}
 .service .tag{font-size:9px;letter-spacing:.08em}
 .service-footer{flex-direction:row;align-items:center;gap:7px;margin-top:8px;flex-wrap:wrap}
 .service-footer strong{font-size:14px}
 .service-footer button{font-size:10px;padding:7px 10px}
 .booking-section{padding:48px 0}
 .booking-card{padding:19px 15px}
 .booking-intro h2{font-size:36px}
 .banner-photo{height:250px}
 .public-team{padding:46px 0}
 .public-faq{padding:46px 0}
 .footer{padding-bottom:95px}
}
