/* Massoterapeuta Já — layout integrado a partir do protótipo HTML aprovado */
:root{
  --mj-green:#034d52;--mj-green2:#00666b;--mj-dark:#012f32;--mj-soft:#f6f4ee;--mj-cream:#fffaf1;
  --mj-gold:#c5912e;--mj-red:#c94d4d;--mj-text:#092c2e;--mj-muted:#697b78;--mj-border:#e7dfd0;
  --mj-shadow:0 12px 34px rgba(1,48,51,.09);--mj-radius:18px;
  --portal-primary:var(--mj-green);--portal-bg:#fff;--portal-card:#fff;--portal-line:var(--mj-border);--portal-muted:var(--mj-muted);
  --theme-primary:var(--mj-green);--theme-primary-2:var(--mj-dark);--theme-bg:#fff;--theme-card:#fff;--theme-line:var(--mj-border);--theme-text:var(--mj-text);--theme-muted:var(--mj-muted);--theme-shadow:var(--mj-shadow);
}
body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;background:#fff;color:var(--mj-text)}
.container{width:min(1180px,calc(100% - 32px));max-width:1180px}
/* Cabeçalho do portal */
.site-header,.navbar.sticky-top{position:sticky!important;top:0;z-index:1030;background:#fff!important;border-bottom:1px solid var(--mj-border)!important;box-shadow:none!important}
.site-header .nav-wrap,.navbar .container{min-height:72px;display:flex;align-items:center;gap:24px}
.site-header .brand,.navbar-brand,.brand{font-weight:850!important;color:var(--mj-dark)!important;font-size:1.28rem!important;letter-spacing:-.02em;text-decoration:none!important;white-space:nowrap}
.site-header .brand img,.navbar-brand img{display:block!important;width:clamp(210px,22vw,300px);height:auto;max-height:62px;object-fit:contain;object-position:left center}
.site-header nav a,.navbar-nav .nav-link{color:var(--mj-text)!important;font-size:.92rem;font-weight:650}
.site-header nav a:hover,.navbar-nav .nav-link:hover{color:var(--mj-green)!important}
.menu-toggle{border:1px solid var(--mj-border);background:#fff;color:var(--mj-green);border-radius:12px;padding:9px 12px}
/* Botões */
.btn,.button,button[type=submit],input[type=submit]{border-radius:12px;font-weight:800}
.btn-primary,.btn.primary,.search-submit,.search-btn-main,.hero-search button,.hero-form button,.cta-primary{background:linear-gradient(135deg,var(--mj-green),var(--mj-green2))!important;border-color:var(--mj-green)!important;color:#fff!important;box-shadow:0 7px 20px rgba(8,122,80,.18)}
.btn-outline-primary,.btn.outline{background:#fff!important;border:1px solid #cfe0d7!important;color:var(--mj-green)!important}
/* Hero/home */
.hero,.hero-template,.home-hero,.premium-hero{background:linear-gradient(90deg,rgba(1,47,50,.96),rgba(1,47,50,.56)),url('../img/hero-massoterapia-v2815.jpg') center/cover!important;color:#fff}
.hero-template,.home-hero{min-height:440px;display:flex;align-items:center}
.hero-template h1,.home-hero h1,.hero h1{font-size:clamp(2.4rem,5vw,4.9rem)!important;line-height:.98!important;letter-spacing:-.04em!important;max-width:780px}
.hero-template p,.home-hero p,.hero p{color:#e8f3ee!important;max-width:700px;font-size:1.08rem}
/* Títulos de página */
.page-header,.page-premium-hero,.search-page-heading,.category-hero,.local-hero{background:linear-gradient(135deg,#f6fbf8,#f4eee4)!important;color:var(--mj-text)!important;border-bottom:1px solid var(--mj-border)}
.page-header h1,.page-premium-hero h1,.search-page-heading h1{color:var(--mj-text)!important;font-weight:850!important;letter-spacing:-.04em}
.page-header p,.page-premium-hero p{color:var(--mj-muted)!important}
.eyebrow{color:var(--mj-green)!important;text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;font-weight:850}
/* Cards, formulários e blocos */
.card,.filter-box,.contact-card,.form-card,.info-panel,.detail-card,.ad-card,.list-card,.search-filter,.search-card,.signup-form-card,.signup-benefits,.premium-card,.page-card,.booking-public-card{border:1px solid var(--mj-border)!important;border-radius:var(--mj-radius)!important;box-shadow:var(--mj-shadow)!important;background:#fff!important}
input,select,textarea,.form-control,.form-select,.search-control{border-radius:12px!important;border-color:var(--mj-border)!important}
input:focus,select:focus,textarea:focus,.form-control:focus,.form-select:focus,.search-control:focus{border-color:var(--mj-green)!important;box-shadow:0 0 0 .2rem rgba(8,122,80,.11)!important}
.badge,.tag,.pill{border-radius:999px!important}
/* Busca e cards públicos */
.search-card{overflow:hidden;transition:.2s ease}
.search-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(23,62,48,.11)!important}
.search-card-image{background:linear-gradient(135deg,#dceadf,#f1e6d8)!important}
.search-card-category,.search-card-price{color:var(--mj-green)!important}
/* Rodapé */
.footer-template,.footer-bs,.footer{background:#012f32!important;color:#d9e7e4!important;border:0!important}
.footer-template .container,.footer-bs .container,.footer .container{padding-top:44px;padding-bottom:24px}
.footer-template h2,.footer-template h3,.footer-template h4,.footer-bs h5,.footer h4{color:#fff!important}
.footer-template a,.footer-bs a,.footer a{color:#d9e7e4!important}
.footer-template a:hover,.footer-bs a:hover,.footer a:hover{color:#fff!important}
/* Login e cadastro */
.login-page,.auth-page,.auth-wrap{background:linear-gradient(135deg,#f3f8f4,#faf5ec)!important;min-height:calc(100vh - 72px)}
.login-card,.auth-card,.signup-form-card{border-radius:24px!important}
/* Logomarca oficial: exibida apenas nos componentes de marca, sem alterar outras imagens. */
/* Utilitários */
.section-soft,.bg-light,.soft-section{background:var(--mj-soft)!important}.section-cream{background:var(--mj-cream)!important}
.text-primary{color:var(--mj-green)!important}.bg-primary{background:var(--mj-green)!important}
@media(max-width:980px){.site-header .nav-wrap,.navbar .container{min-height:64px}.site-header nav{width:100%}.container{width:min(100% - 20px,1180px)}}

/* v31.1 — integração segura da identidade teal + dourado
   Mantém os seletores da v30 e evita sobrescritas globais que causavam regressões. */
.site-header{background:rgba(255,253,249,.98)!important;border-bottom-color:#eadfca!important}
.site-header nav a:hover,.navbar-nav .nav-link:hover{color:var(--mj-gold)!important}
.nav-cta,.site-header .nav-cta,.search-button,.search-panel-reference .search-button{background:linear-gradient(135deg,#d7a139,#a86d0a)!important;border-color:#b77c15!important;color:#fff!important}
.btn-outline-primary,.btn.outline{border-color:#d8ba77!important;color:#805b16!important}
.hero-reference-overlay{background:linear-gradient(90deg,#012f32 0%,rgba(1,47,50,.96) 40%,rgba(1,47,50,.72) 62%,rgba(1,47,50,.16) 100%)!important}
.hero-reference h1 em,.hero-reference-badge i,.hero-reference-benefits i{color:#e7bc65!important}
.search-panel-reference .search-field label,.search-panel-reference .search-input i{color:#8b631c!important}
.footer-template a:hover,.footer-bs a:hover,.footer a:hover{color:#e7bc65!important}
@media(max-width:991px){.site-header .brand img,.navbar-brand img{width:205px;max-height:54px}}
@media(max-width:560px){.site-header .brand img,.navbar-brand img{width:165px;max-height:46px}}

/* v31.5 — identidade oficial global teal + dourado */
:root{
  --mj-teal:#034d52;--mj-teal-2:#00666b;--mj-teal-dark:#012f32;--mj-gold:#c5912e;--mj-gold-2:#e7bc65;
  --mj-cream:#fffaf1;--mj-ivory:#fbfaf6;--mj-soft:#f4f1e9;--mj-text:#092c2e;--mj-muted:#687b78;--mj-line:#e7dfd0;
  --theme-primary:var(--mj-teal)!important;--theme-primary-2:var(--mj-teal-dark)!important;--theme-accent:var(--mj-gold)!important;
  --theme-gold:var(--mj-gold)!important;--theme-bg:var(--mj-ivory)!important;--theme-bg-2:var(--mj-soft)!important;--theme-text:var(--mj-text)!important;
  --theme-muted:var(--mj-muted)!important;--theme-line:var(--mj-line)!important;--theme-card:#fff!important;
  --portal-primary:var(--mj-teal)!important;--portal-primary-2:var(--mj-teal-dark)!important;--portal-bg:var(--mj-ivory)!important;
}
body{background:var(--mj-ivory)!important;color:var(--mj-text)!important}
/* Marca oficial */
.site-header{background:rgba(255,253,248,.98)!important;border-bottom:1px solid var(--mj-line)!important;box-shadow:0 8px 28px rgba(1,48,51,.045)!important}
.nav-shell{min-height:92px!important}.brand-logo{width:clamp(245px,25vw,390px)!important;max-height:76px!important;object-fit:contain!important;object-position:left center!important}
.nav-menu>a{color:#163c3e!important}.nav-menu>a:hover{background:#eef5f1!important;color:var(--mj-teal)!important}
.nav-cta{background:linear-gradient(135deg,#d9a63f,#aa710d)!important;border-color:#b77c15!important;color:#fff!important;box-shadow:0 10px 24px rgba(197,145,46,.22)!important}
.nav-cta:hover{background:linear-gradient(135deg,#c18b22,#8e5a07)!important;color:#fff!important}
.menu-toggle,.nav-nearby-mobile{border-color:var(--mj-line)!important;background:#fff!important;color:var(--mj-teal)!important}
/* Home / hero */
.hero-reference{background:var(--mj-teal-dark)!important}.hero-reference-photo{width:58%!important;background-position:center 38%!important}
.hero-reference-overlay{background:linear-gradient(90deg,#012f32 0%,rgba(1,47,50,.98) 42%,rgba(1,47,50,.78) 62%,rgba(1,47,50,.16) 100%)!important}
.hero-reference:after{background:linear-gradient(180deg,rgba(0,20,22,.06),rgba(0,20,22,.18))!important}
.hero-reference-badge{border-color:rgba(231,188,101,.36)!important;background:rgba(3,77,82,.34)!important;color:#eff8f5!important}.hero-reference-badge i{color:var(--mj-gold-2)!important}
.hero-reference h1{color:#fff!important}.hero-reference h1 em{color:var(--mj-gold-2)!important}.hero-reference-lead{color:#eaf3ef!important}.hero-reference-benefits{color:#e7f0ed!important}.hero-reference-benefits i{color:var(--mj-gold-2)!important}
.search-panel-reference{background:rgba(255,254,250,.98)!important;border-color:#dfd3b7!important;box-shadow:0 18px 45px rgba(1,48,51,.2)!important}.search-panel-reference .search-field+.search-field{border-left-color:#e8dfcd!important}.search-panel-reference label,.search-panel-reference i{color:#8b6318!important}.search-panel-reference input{color:var(--mj-text)!important}.search-button{background:linear-gradient(135deg,#d9a63f,#aa710d)!important;color:#fff!important}
/* Todas as seções e páginas públicas */
.section-wrap,.page-premium,.page-shell-premium,.search-page{background:var(--mj-ivory)!important}.luxury-section,.blog-home-section{background:#fffefb!important}.section-soft{background:#f3eee4!important}
.section-heading>div>span,.search-results-head span,.local-neighborhood-head span,.section-kicker,.eyebrow{color:#a87414!important}.section-heading h2,.search-results-head h2,.local-neighborhood-head h2,.page-premium-hero h1{color:var(--mj-text)!important}.section-heading p,.page-premium-hero p{color:var(--mj-muted)!important}.section-link{color:var(--mj-teal)!important;border-color:#d8bd72!important}
.page-premium-hero{background:radial-gradient(circle at 10% 10%,rgba(231,188,101,.18),transparent 32%),radial-gradient(circle at 92% 4%,rgba(3,77,82,.10),transparent 30%),linear-gradient(135deg,#fffdf8,#f1f6f3)!important}.page-premium-hero:after{border-color:rgba(197,145,46,.18)!important;box-shadow:0 0 0 38px rgba(197,145,46,.025),0 0 0 76px rgba(3,77,82,.018)!important}
.category-tile,.listing-card,.blog-card,.category-premium-card,.search-luxury-sidebar,.search-card,.contact-form-card,.signup-form-card,.booking-form-premium,.booking-auth-card,.plan-premium-card,.blog-premium-card{background:#fff!important;border-color:var(--mj-line)!important;box-shadow:0 12px 36px rgba(1,48,51,.065)!important}.category-tile:hover,.listing-card:hover,.blog-card:hover,.category-premium-card:hover{border-color:#d8bd72!important;box-shadow:0 22px 48px rgba(1,48,51,.12)!important}
.category-icon,.category-premium-icon,.booking-profile-icon,.booking-auth-icon,.contact-channel i,.signup-benefit i{background:#f6efd9!important;color:#9b6b12!important}.listing-category,.listing-rating i,.category-premium-count,.blog-card span,.blog-premium-card>span{color:#a87414!important}.listing-card h3 a,.category-title,.blog-card h3,.blog-premium-card h2 a{color:var(--mj-text)!important}
.luxury-btn,.btn-consulte,.search-submit,.search-btn-main,.premium-form-submit .luxury-btn{background:linear-gradient(135deg,#d9a63f,#aa710d)!important;border-color:#b77c15!important;color:#fff!important}.luxury-btn:hover,.btn-consulte:hover,.search-submit:hover,.search-btn-main:hover{background:linear-gradient(135deg,#c18b22,#8e5a07)!important;color:#fff!important}.luxury-btn.light{background:#fff!important;color:var(--mj-teal)!important;border:1px solid #d8bd72!important}
.contact-premium-info,.booking-guide-card,.signup-benefits{background:linear-gradient(155deg,#034d52,#012f32)!important}.contact-premium-info>span,.booking-guide-card>span,.signup-benefits>span{color:var(--mj-gold-2)!important}.contact-premium-info>p,.booking-guide-card p,.signup-benefits>p,.signup-benefit span{color:#c7d9d5!important}
.page-bottom-cta,.professional-cta{background:linear-gradient(125deg,#f7efdc,#e9dbb7)!important;border-color:#dcc784!important}.page-bottom-cta h2,.professional-cta h2{color:var(--mj-text)!important}.page-bottom-cta span,.professional-cta span{color:#9b6b12!important}
/* Rodapé */
.site-footer{background:linear-gradient(155deg,#012f32,#034d52)!important;color:#d7e5e2!important}.site-footer .footer-brand{display:inline-flex!important;background:#fffaf1!important;border:1px solid rgba(231,188,101,.38)!important;padding:8px 14px!important;border-radius:16px!important}.site-footer .footer-logo{width:min(320px,100%)!important;max-height:90px!important;filter:none!important}.site-footer h3{color:#fff!important}.site-footer p,.site-footer a:not(.brand){color:#bcd0cc!important}.site-footer a:not(.brand):hover{color:var(--mj-gold-2)!important}.footer-bottom{border-color:rgba(231,188,101,.2)!important;color:#9fb5b0!important}
/* Formulários e detalhes */
.premium-field input,.premium-field select,.premium-field textarea,.search-control,.form-control,.form-select,input,select,textarea{border-color:var(--mj-line)!important}.premium-field input:focus,.premium-field select:focus,.premium-field textarea:focus,.search-control:focus,.form-control:focus,.form-select:focus{border-color:var(--mj-gold)!important;box-shadow:0 0 0 3px rgba(197,145,46,.12)!important}
/* Proteção contra resíduos do tema marrom */
[style*="#795744"],[style*="#6f4f3d"]{color:var(--mj-teal)!important}
@media(max-width:991px){.nav-shell{min-height:76px!important}.brand-logo{width:235px!important;max-height:62px!important}.hero-reference-photo{width:100%!important}.hero-reference-overlay{background:linear-gradient(90deg,rgba(1,47,50,.98),rgba(1,47,50,.85),rgba(1,47,50,.62))!important}}
@media(max-width:560px){.brand-logo{width:195px!important;max-height:54px!important}.site-footer .footer-logo{width:230px!important}}

/* v31.6 — logo oficial original enviado pelo cliente (2048x682) */
.site-header-reference .brand-with-logo{display:flex!important;align-items:center!important;line-height:0!important;flex:0 0 auto!important}
.site-header-reference .brand-logo{display:block!important;width:clamp(285px,28vw,410px)!important;height:auto!important;max-height:84px!important;object-fit:contain!important;object-position:left center!important;filter:none!important}
.site-footer .footer-brand.brand-with-logo{display:inline-flex!important;align-items:center!important}
.site-footer .footer-logo{display:block!important;width:min(390px,100%)!important;height:auto!important;max-height:130px!important;object-fit:contain!important;filter:none!important}
@media(max-width:991px){.site-header-reference .brand-logo{width:260px!important;max-height:72px!important}}
@media(max-width:560px){.site-header-reference .brand-logo{width:210px!important;max-height:62px!important}.site-footer .footer-logo{width:285px!important;max-height:105px!important}}
