
/* V4.7 — revisão visual completa / mobile first */
:root{
  --v47-bg:#0c0c0d;
  --v47-card:#121214;
  --v47-card-2:#171719;
  --v47-line:rgba(255,255,255,.085);
  --v47-gold:#b8935b;
  --v47-gold-hi:#d3ac77;
  --v47-text:#f3f0eb;
  --v47-muted:#99938b;
  --v47-radius:18px;
}
html,body{background:var(--v47-bg)}
body.public-v250{overflow-x:hidden}
.screen{animation:v47Screen .18s ease both}
@keyframes v47Screen{from{opacity:.15;transform:translateY(3px)}to{opacity:1;transform:none}}

/* Header */
.site-header{background:rgba(12,12,13,.92)!important;border-bottom-color:var(--v47-line)!important;backdrop-filter:blur(18px) saturate(1.15)!important}
.header-inner{height:74px!important}
.brand-logo-updated .brand-mark.image-mark{filter:none!important}
.brand-copy-clean strong{color:var(--v47-text)!important}
.account-link{border:1px solid var(--v47-line);border-radius:999px;padding:9px 13px!important;font-size:12px!important}
.account-link:hover{border-color:rgba(211,172,119,.35);color:var(--v47-gold-hi)}

/* Home cover */
.home-v46{max-width:1180px;margin:0 auto;padding:18px 20px 32px!important}
.home-cover-v46{border-radius:26px!important;border:1px solid var(--v47-line)!important;box-shadow:0 24px 70px rgba(0,0,0,.33)!important;background:#101012!important}
.home-cover-shade-v46{background:linear-gradient(180deg,rgba(4,4,5,.08) 12%,rgba(4,4,5,.18) 44%,rgba(4,4,5,.92) 100%)!important}
.home-cover-content-v46{max-width:660px!important}
.home-cover-content-v46 h1{max-width:11ch!important;font-size:clamp(48px,6vw,74px)!important;line-height:.91!important}
.home-cover-content-v46 p{max-width:42ch!important;color:#ddd7cf!important;font-size:15px!important}
.home-cover-location-v46{border-color:rgba(211,172,119,.30)!important;background:rgba(12,12,14,.62)!important}
.home-cover-book-v46{background:linear-gradient(145deg,#d6af70,#b78a50)!important;border:1px solid #d8b77f!important;box-shadow:0 12px 34px rgba(184,147,91,.28)!important}
.home-cover-book-v46:active{transform:scale(.985)!important}
.home-shortcuts-v46{margin-top:12px!important}
.home-shortcuts-v46 button{border-radius:16px!important;background:linear-gradient(145deg,#121214,#101012)!important;border-color:var(--v47-line)!important;min-height:68px!important}
.home-shortcuts-v46 button strong{font-size:13px!important}

/* Page headers */
.page{padding-top:42px!important;padding-bottom:80px!important}
.page-head{margin-bottom:24px!important;padding-bottom:20px!important;border-bottom:1px solid var(--v47-line)!important}
.page-head .kicker{margin-bottom:8px!important;color:var(--v47-gold-hi)!important;font-size:10px!important;letter-spacing:.13em!important;text-transform:uppercase!important}
.page-head h2{font-family:"Cormorant Garamond",serif!important;font-size:clamp(42px,5.4vw,62px)!important;line-height:.95!important;font-weight:600!important;letter-spacing:.005em!important}
.page-head p{margin:9px 0 0!important;max-width:58ch!important;color:var(--v47-muted)!important;font-size:13px!important;line-height:1.55!important}

/* Booking progress */
.mobile-progress{border:1px solid var(--v47-line)!important;border-radius:16px!important;background:linear-gradient(145deg,#131315,#101012)!important;padding:14px 15px!important;margin-bottom:18px!important}
.mobile-progress>div:first-child{margin-bottom:2px}
.mobile-progress strong{font-size:11px!important;color:var(--v47-gold-hi)!important;letter-spacing:.04em}
.mobile-progress span{font-size:11px!important;color:#a8a29a!important}
.progress-track{height:3px!important;border-radius:99px!important;background:#242426!important;margin-top:8px!important}
.progress-track i{border-radius:99px;background:linear-gradient(90deg,#ad8048,#d3ac77)!important}
.desktop-progress{gap:8px!important;margin-bottom:24px!important}
.desktop-step{border-radius:14px!important;border-color:var(--v47-line)!important;background:#111113!important}

/* Booking cards */
.booking-main{min-width:0}
.booking-stage{min-width:0}
.stage-head{margin-bottom:20px!important}
.stage-head>span{font-size:10px!important;letter-spacing:.10em!important;text-transform:uppercase;color:var(--v47-gold-hi)!important}
.stage-head h3{font-family:"Cormorant Garamond",serif!important;font-size:clamp(34px,4.2vw,48px)!important;font-weight:600!important;line-height:1!important;margin-top:5px!important}
.stage-note{color:var(--v47-muted)!important}
.choice-list{display:grid!important;gap:9px!important}
.choice-item{border:1px solid var(--v47-line)!important;border-radius:15px!important;background:linear-gradient(145deg,#131315,#101012)!important;padding:14px 15px!important;min-height:78px!important;transition:.16s ease!important}
.choice-item:hover,.choice-item.active{border-color:rgba(211,172,119,.42)!important;background:linear-gradient(145deg,rgba(184,147,91,.09),#111113)!important}
.choice-index{color:#766e63!important;font-size:18px!important}
.choice-copy strong{font-size:14px!important;color:var(--v47-text)!important}
.choice-copy small{font-size:11px!important;color:var(--v47-muted)!important;line-height:1.45!important;margin-top:3px!important}
.choice-price{font-family:"Cormorant Garamond",serif!important;font-size:27px!important;font-weight:600!important;color:var(--v47-gold-hi)!important}
.schedule-quick-actions{margin-bottom:14px!important}
.schedule-quick-actions .primary-action,.schedule-quick-actions .secondary-action{border-radius:12px!important}
.calendar-panel,.times-panel{border-radius:18px!important;border-color:var(--v47-line)!important;background:linear-gradient(145deg,#131315,#101012)!important}
.calendar-box{border-radius:14px!important;background:#0f0f11!important}
.calendar-day{border-radius:10px!important}
.calendar-day.active{box-shadow:0 8px 22px rgba(184,147,91,.22)!important}
.time-chip{border-radius:11px!important;background:#101012!important}
.time-chip.active{background:linear-gradient(145deg,#d2ab6e,#b88a50)!important;color:#16120d!important;box-shadow:0 8px 22px rgba(184,147,91,.20)!important}
.quick-booking-review{border-radius:15px!important;border-color:rgba(184,147,91,.25)!important;background:rgba(184,147,91,.06)!important}
.customer-fields .field input{border-radius:12px!important;background:#101012!important}
.booking-summary{border-radius:18px!important;background:linear-gradient(145deg,#131315,#101012)!important;border-color:var(--v47-line)!important}

/* Buttons */
.primary-action,.secondary-action,.next-day-action{border-radius:12px!important}
.primary-action{box-shadow:0 9px 26px rgba(184,147,91,.17)!important}
.primary-action:hover:not(:disabled){transform:translateY(-1px)}

/* Services */
.service-groups{gap:26px!important}
.service-group{border:1px solid var(--v47-line);border-radius:18px;background:linear-gradient(145deg,#121214,#0f0f11);overflow:hidden}
.service-group-head{padding:16px 17px!important;border-bottom-color:var(--v47-line)!important;background:rgba(255,255,255,.012)}
.service-group-head h3{font-family:"Cormorant Garamond",serif!important;font-size:30px!important;font-weight:600!important}
.plain-list{border-top:0!important}
.list-row{padding:15px 17px!important;border-bottom-color:var(--v47-line)!important}
.list-row:last-child{border-bottom:0!important}
.list-index{font-size:18px!important;color:#6f695f!important}
.list-copy h4{font-size:14px!important}
.list-copy p{font-size:11px!important;color:var(--v47-muted)!important;line-height:1.45!important}
.list-meta{font-size:11px!important}
.list-price{font-family:"Cormorant Garamond",serif!important;font-size:27px!important;font-weight:600!important}
.list-action{padding:7px 10px!important;border:1px solid rgba(184,147,91,.24)!important;border-radius:999px!important;font-size:10px!important}

/* Products */
.product-filters{gap:7px!important;margin-bottom:3px}
.product-filter{border-radius:999px!important;min-height:38px!important;background:#111113!important;border-color:var(--v47-line)!important}
.product-filter.active{background:rgba(184,147,91,.15)!important;color:var(--v47-gold-hi)!important;border-color:rgba(211,172,119,.34)!important}
.product-grid{gap:14px!important}
.product-card-public{border-radius:18px!important;background:linear-gradient(145deg,#121214,#0f0f11)!important;border-color:var(--v47-line)!important;box-shadow:0 12px 36px rgba(0,0,0,.10)}
.product-photo{background:#111113!important}
.product-card-body{padding:15px!important}
.product-card-body h3{font-family:"Cormorant Garamond",serif!important;font-size:25px!important;font-weight:600!important;line-height:1.05!important}
.product-card-body p{font-size:11px!important;color:var(--v47-muted)!important}
.product-card-bottom strong{font-family:"Cormorant Garamond",serif!important;font-size:25px!important;font-weight:600!important}
.product-category{border-radius:999px!important;background:rgba(10,10,12,.72)!important;backdrop-filter:blur(8px)}

/* Local */
.local-map-card,.local-support-card{border-radius:18px!important;border-color:var(--v47-line)!important;background:linear-gradient(145deg,#121214,#0f0f11)!important;overflow:hidden!important}
.local-map-frame{background:#111113!important}
.local-address-block{padding:18px!important}
.local-address-block h3{font-family:"Cormorant Garamond",serif!important;font-weight:600!important;line-height:1.15!important}
.local-support-grid{gap:12px!important}
.local-support-card{padding:18px!important}
.local-contact-actions{gap:8px!important}
.public-review{border-color:var(--v47-line)!important}

/* Modal/cart */
.cart-fab{border-radius:999px!important;box-shadow:0 10px 28px rgba(0,0,0,.28)!important}
.cart-modal-v250{border-radius:20px!important}

/* Bottom navigation */
@media(max-width:860px){
  body.public-v250{padding-bottom:calc(74px + env(safe-area-inset-bottom))!important}
  .site-header .container{width:calc(100% - 28px)!important}
  .header-inner{height:66px!important}
  .brand-logo-updated .brand-mark.image-mark{width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important}
  .brand-copy-clean strong{font-size:18px!important;letter-spacing:.06em!important}

  .home-v46{padding:10px 10px 24px!important}
  .home-cover-v46{height:clamp(430px,64svh,560px)!important;min-height:430px!important;border-radius:20px!important}
  .home-cover-content-v46{left:18px!important;right:18px!important;bottom:18px!important}
  .home-cover-content-v46 h1{font-size:clamp(39px,11.6vw,52px)!important;max-width:9.5ch!important}
  .home-cover-content-v46 p{font-size:13px!important;max-width:31ch!important}
  .home-cover-actions-v46{grid-template-columns:minmax(0,1fr) auto!important;gap:12px!important}
  .home-cover-book-v46{min-height:50px!important}
  .home-shortcuts-v46{grid-template-columns:1fr 1fr!important;gap:8px!important}
  .home-shortcuts-v46 button{min-height:64px!important;padding:12px 13px!important}

  .page{padding:28px 0 38px!important}
  .page-head{margin-bottom:18px!important;padding-bottom:16px!important}
  .page-head h2{font-size:38px!important}
  .page-head p{font-size:12px!important;margin-top:6px!important}

  .choice-item{grid-template-columns:30px minmax(0,1fr) auto!important;padding:13px 12px!important;min-height:76px!important}
  .choice-price{font-size:23px!important}
  .choice-copy small{font-size:10px!important}
  .schedule-quick-actions{grid-template-columns:1fr 1fr!important;gap:7px!important}
  .schedule-quick-actions #firstAvailableBtn{grid-column:1/-1!important}
  .calendar-panel,.times-panel{border-radius:16px!important}
  .times-panel{padding:13px!important}
  .slot-grid{gap:7px!important}
  .time-chip{min-height:46px!important}
  .quick-booking-review{padding:13px!important}
  .stage-actions{gap:9px!important}

  .service-group{border-radius:16px!important}
  .service-group-head{padding:14px!important}
  .list-row{grid-template-columns:28px minmax(0,1fr) auto!important;gap:9px!important;padding:14px!important;min-height:86px!important}
  .list-meta{grid-column:2!important;margin-top:-5px!important}
  .list-end{grid-column:3!important;grid-row:1/3!important}
  .list-price{font-size:24px!important}

  .product-grid{grid-template-columns:1fr 1fr!important;gap:9px!important}
  .product-card-body{padding:11px!important;gap:12px!important}
  .product-card-body h3{font-size:19px!important}
  .product-card-body p{font-size:10px!important;line-height:1.35!important}
  .product-card-bottom{display:grid!important;gap:8px!important}
  .product-card-bottom .primary-action{width:100%!important}

  .local-map-card{border-radius:16px!important}
  .local-map-frame{height:220px!important}
  .local-support-grid{grid-template-columns:1fr!important}

  .mobile-nav.mobile-nav-fab{height:calc(70px + env(safe-area-inset-bottom))!important;padding-inline:4px!important;background:rgba(12,12,13,.98)!important;border-top-color:var(--v47-line)!important}
  .mobile-nav.mobile-nav-fab button,.mobile-nav.mobile-nav-fab .mobile-book{height:70px!important;min-height:70px!important;gap:5px!important;padding:8px 2px 6px!important}
  .mobile-nav.mobile-nav-fab button .nav-ico,.mobile-nav.mobile-nav-fab .mobile-book .nav-ico{width:23px!important;height:23px!important;min-width:23px!important;min-height:23px!important}
  .mobile-nav.mobile-nav-fab button .nav-ico svg,.mobile-nav.mobile-nav-fab .mobile-book .nav-ico svg{width:23px!important;height:23px!important}
  .mobile-nav.mobile-nav-fab button small,.mobile-nav.mobile-nav-fab .mobile-book small{font-size:9px!important;font-weight:600!important}
  .mobile-nav.mobile-nav-fab .mobile-book{color:#c79d61!important;background:linear-gradient(180deg,rgba(184,147,91,.10),rgba(184,147,91,.025))!important}
  .mobile-nav.mobile-nav-fab button.active,.mobile-nav.mobile-nav-fab .mobile-book.active{color:var(--v47-gold-hi)!important}
  .mobile-nav.mobile-nav-fab button.active:after,.mobile-nav.mobile-nav-fab .mobile-book.active:after{left:32%!important;right:32%!important;height:2px!important}
  .cart-fab{bottom:82px!important}
}

@media(max-width:520px){
  .product-grid{grid-template-columns:1fr!important}
  .product-card-public{display:grid!important;grid-template-columns:128px minmax(0,1fr)!important}
  .product-photo{height:100%!important;aspect-ratio:auto!important;min-height:155px!important}
  .product-card-body{min-width:0!important}
  .product-card-body h3{font-size:21px!important}
  .product-card-bottom{grid-template-columns:1fr!important}
}
@media(max-width:390px){
  .home-cover-v46{height:clamp(410px,61svh,510px)!important}
  .home-cover-content-v46 h1{font-size:36px!important}
  .home-cover-actions-v46{grid-template-columns:1fr!important;gap:8px!important}
  .home-cover-link-v46{justify-self:start!important}
  .choice-item{grid-template-columns:26px minmax(0,1fr) auto!important}
  .choice-price{font-size:21px!important}
  .product-card-public{grid-template-columns:112px minmax(0,1fr)!important}
}
@media(prefers-reduced-motion:reduce){.screen,.choice-item,.primary-action,.home-shortcuts-v46 button{animation:none!important;transition:none!important}}
