/* =====================================================
   MASSAGE PORTUGAL — Front-Office
   Paleta: Verde teal · Bege cálido · Castanho · Âmbar
   ===================================================== */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Playfair+Display:ital,wght@0,600;1,500&display=swap');

:root {
    --primary:         #058789;
    --primary-dark:    #04696b;
    --primary-light:   #06a5a7;
    --primary-pale:    rgba(5,135,137,.08);
    --secondary:       #503d2e;
    --secondary-light: #6a5543;
    --accent:          #d54b1a;
    --accent-light:    #e76a44;
    --accent-pale:     rgba(213,75,26,.08);
    --gold:            #c49a3c;
    --gold-light:      #e3a72f;
    --gold-pale:       rgba(196,154,60,.1);
    --beige:           #f0ecc9;
    --beige-dark:      #e8e2b0;
    --beige-light:     #f8f5e6;
    --sand:            #faf7ed;
    --dark:            #2c2018;
    --dark-mid:        #3d2e1e;
    --gray:            #7a6e64;
    --gray-light:      #b5aca3;
    --gray-lighter:    #ede9e3;
    --white:           #ffffff;
    --success:         #27ae60;
    --danger:          #e74c3c;
    --warning:         #e3a72f;
    --info:            #3498db;
    --grad-primary:    linear-gradient(135deg, #058789, #06a5a7);
    --grad-warm:       linear-gradient(135deg, #503d2e, #d54b1a);
    --grad-gold:       linear-gradient(135deg, #c49a3c, #e3a72f);
    --grad-hero:       linear-gradient(160deg, rgba(44,32,24,.92) 0%, rgba(5,135,137,.75) 100%);
    --grad-dark:       linear-gradient(135deg, #2c2018, #3d2e1e);
    --shadow-sm:       0 1px 3px rgba(44,32,24,.08);
    --shadow:          0 4px 16px rgba(44,32,24,.12);
    --shadow-md:       0 8px 24px rgba(44,32,24,.14);
    --shadow-lg:       0 16px 40px rgba(44,32,24,.16);
    --shadow-xl:       0 24px 56px rgba(44,32,24,.20);
    --shadow-green:    0 8px 24px rgba(5,135,137,.25);
    --shadow-hover:    0 20px 48px rgba(5,135,137,.2);
    --radius-xs:       6px;
    --radius-sm:       10px;
    --radius:          14px;
    --radius-lg:       20px;
    --radius-xl:       28px;
    --radius-full:     9999px;
    --transition:      all .22s cubic-bezier(.4,0,.2,1);
    --transition-slow: all .35s cubic-bezier(.4,0,.2,1);
}

*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:'Inter',sans-serif;color:var(--dark);line-height:1.65;background:var(--sand);min-height:100vh;padding-top:80px;overflow-x:hidden;}
h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2;color:var(--dark);}

/* Gradiente de texto */
.gradient-text{background:var(--grad-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.gradient-text-warm{background:var(--grad-warm);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}

/* Scrollbar */
::-webkit-scrollbar{width:10px;}
::-webkit-scrollbar-track{background:var(--beige-light);}
::-webkit-scrollbar-thumb{background:var(--primary);border-radius:5px;}
::-webkit-scrollbar-thumb:hover{background:var(--primary-dark);}

/* ── Navbar ── */
.navbar,.navbar-moderno{background:rgba(255,255,255,.97)!important;backdrop-filter:blur(14px);box-shadow:0 2px 20px rgba(44,32,24,.08)!important;border-bottom:1px solid rgba(5,135,137,.12)!important;transition:var(--transition);}
.navbar-brand,.navbar-logo{font-weight:800;font-size:22px;text-decoration:none;display:flex;align-items:center;gap:10px;color:var(--dark)!important;}
.navbar-brand i,.navbar-logo i{background:var(--grad-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;font-size:28px;}
.navbar-brand span,.navbar-logo span{background:var(--grad-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;}
.nav-link{color:var(--dark)!important;font-weight:500;padding:9px 18px!important;border-radius:var(--radius-full)!important;transition:var(--transition);display:flex;align-items:center;gap:7px;}
.nav-link i{color:var(--primary);font-size:16px;}
.nav-link:hover,.nav-link.active{background:var(--primary-pale)!important;color:var(--primary)!important;}

.btn-login{background:transparent;border:2px solid var(--primary);color:var(--primary)!important;padding:9px 22px;border-radius:var(--radius-full);font-weight:600;font-size:14px;text-decoration:none;display:inline-flex;align-items:center;gap:8px;transition:var(--transition);}
.btn-login:hover{background:var(--primary);color:white!important;transform:translateY(-2px);box-shadow:var(--shadow-green);}
.btn-registar{background:var(--grad-primary);color:white!important;padding:9px 22px;border-radius:var(--radius-full);font-weight:600;font-size:14px;text-decoration:none;border:none;display:inline-flex;align-items:center;gap:8px;transition:var(--transition);}
.btn-registar:hover{transform:translateY(-2px);box-shadow:var(--shadow-green);color:white!important;}
.btn-outline-gradient{border:2px solid var(--primary);color:var(--primary);background:transparent;padding:8px 20px;border-radius:var(--radius-full);font-weight:600;font-size:14px;text-decoration:none;display:inline-flex;align-items:center;gap:8px;transition:var(--transition);}
.btn-outline-gradient:hover{background:var(--primary);color:white;transform:translateY(-2px);box-shadow:var(--shadow-green);}

.navbar-toggler{border:none!important;padding:8px 12px!important;border-radius:var(--radius-sm)!important;background:var(--grad-primary)!important;}
.navbar-toggler span{display:block;width:22px;height:2px;background:white;margin:5px 0;border-radius:2px;transition:var(--transition);}

/* Dropdown usuario */
.dropdown-menu{border-radius:var(--radius-lg)!important;border:1px solid var(--gray-lighter)!important;box-shadow:var(--shadow-xl)!important;}
.dropdown-item{padding:10px 18px!important;color:var(--dark);font-size:14px;}
.dropdown-item:hover{background:var(--primary-pale)!important;color:var(--primary);}
.dropdown-item i{color:var(--primary);width:18px;}

/* ── Botões flutuantes ── */
.floating-buttons{position:fixed;bottom:30px;right:30px;z-index:999;display:flex;flex-direction:column;gap:14px;}
.floating-btn{width:52px;height:52px;border-radius:50%;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:20px;color:white;box-shadow:var(--shadow-md);transition:var(--transition-slow);}
.floating-btn:hover{transform:scale(1.12) translateY(-4px);}
.search-btn{background:var(--grad-primary);}
.top-btn{background:var(--grad-dark);opacity:0;visibility:hidden;transform:translateY(20px);}
.top-btn.show{opacity:1;visibility:visible;transform:translateY(0);}

/* ── Page header ── */
.page-header,.page-header-moderno{background-size:cover!important;background-position:center!important;padding:100px 0;text-align:center;color:white;margin-top:-80px;margin-bottom:50px;position:relative;overflow:hidden;}
.page-header::after,.page-header-moderno::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 20% 60%, rgba(5,135,137,.18) 0%, transparent 60%);pointer-events:none;}
.page-header h1,.page-header-moderno h1{color:white!important;-webkit-text-fill-color:white!important;font-size:48px;font-weight:800;text-shadow:0 4px 20px rgba(0,0,0,.25);position:relative;z-index:2;}
.page-header p,.page-header-moderno p{font-size:18px;opacity:.9;position:relative;z-index:2;color:rgba(255,255,255,.92);}
.page-header h1 span{background:var(--grad-gold);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}

/* ── Cards massagistas / spas ── */
.card-moderno,.card-massagista,.card-spa,.card-pesquisa{background:white;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow);transition:var(--transition-slow);border:1px solid var(--gray-lighter);}
.card-moderno:hover,.card-massagista:hover,.card-spa:hover,.card-pesquisa:hover{transform:translateY(-8px);box-shadow:var(--shadow-hover);border-color:rgba(5,135,137,.25);}
.card-moderno-img-wrapper,.card-massagista-img-wrapper,.card-pesquisa-img-wrapper{position:relative;width:100%;height:260px;overflow:hidden;}
.card-moderno-img,.card-massagista-img,.card-pesquisa-img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease;}
.card-moderno:hover .card-moderno-img,.card-massagista:hover .card-massagista-img,.card-pesquisa:hover .card-pesquisa-img{transform:scale(1.08);}
.card-moderno-body,.card-massagista-body,.card-pesquisa-body{padding:22px 24px;text-align:center;}
.card-moderno-title,.card-massagista-nome,.card-pesquisa-nome{font-size:18px;font-weight:700;color:var(--dark);margin-bottom:6px;}
.card-moderno-text{color:var(--gray);line-height:1.6;margin-bottom:18px;}
.card-massagista-local,.card-pesquisa-local{display:flex;align-items:center;justify-content:center;gap:5px;color:var(--gray);font-size:13px;margin-bottom:14px;}
.card-massagista-local i,.card-pesquisa-local i{color:var(--primary);}
.card-massagista-footer,.card-pesquisa-footer{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;border-top:1px solid var(--gray-lighter);background:var(--beige-light);font-size:12px;color:var(--gray);}
.card-massagista-footer i{color:var(--primary);margin-right:4px;}
.card-massagista-visitas{display:flex;align-items:center;gap:5px;color:var(--gray);font-size:13px;}
.card-massagista-visitas i{color:var(--primary);}

/* Badge destaque */
.badge-destaque-card,.badge-oficial{position:absolute;top:14px;left:14px;background:var(--grad-warm);color:white;padding:6px 14px;border-radius:var(--radius-full);font-size:11px;font-weight:700;display:flex;align-items:center;gap:5px;z-index:2;box-shadow:var(--shadow-sm);letter-spacing:.4px;text-transform:uppercase;}

/* Badges */
.badge-moderno{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:var(--radius-full);font-size:12px;font-weight:600;background:var(--beige);color:var(--secondary);}
.badge-primary{background:var(--primary-pale);color:var(--primary);}
.badge-success{background:rgba(39,174,96,.1);color:var(--success);}
.badge-destaque{background:var(--accent-pale);color:var(--accent);}
.badge-gold{background:var(--gold-pale);color:var(--gold);}

/* ── Filtros ── */
.filtros-card{background:white;border-radius:var(--radius-lg);padding:28px 30px;box-shadow:var(--shadow);margin-bottom:36px;border:1px solid var(--gray-lighter);}
.filtros-card h5{color:var(--primary);font-weight:700;}
.form-select,.form-control{border:2px solid var(--gray-lighter)!important;border-radius:var(--radius-sm)!important;color:var(--dark)!important;background-color:white!important;transition:var(--transition);padding:10px 14px;}
.form-select:focus,.form-control:focus{border-color:var(--primary)!important;box-shadow:0 0 0 3px rgba(5,135,137,.12)!important;outline:none;}
.btn-filtrar{background:var(--grad-primary);color:white;border:none;padding:10px 24px;border-radius:var(--radius-full);font-weight:600;font-size:14px;cursor:pointer;transition:var(--transition);display:inline-flex;align-items:center;gap:8px;}
.btn-filtrar:hover{transform:translateY(-3px);box-shadow:var(--shadow-green);color:white;}
.btn-limpar{background:transparent;border:2px solid var(--gray-lighter);color:var(--gray);padding:8px 18px;border-radius:var(--radius-full);font-weight:600;font-size:13px;cursor:pointer;transition:var(--transition);}
.btn-limpar:hover{border-color:var(--primary);color:var(--primary);}

/* ── Grids ── */
.grid-massagistas,.grid-pesquisa,.grid-spas,.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;}
@media(max-width:1200px){.grid-massagistas,.grid-pesquisa,.grid-spas,.grid-4{grid-template-columns:repeat(3,1fr);}}
@media(max-width:992px){.grid-massagistas,.grid-pesquisa,.grid-spas,.grid-4{grid-template-columns:repeat(2,1fr);}}
@media(max-width:576px){.grid-massagistas,.grid-pesquisa,.grid-spas,.grid-4{grid-template-columns:1fr;}}

/* ── Paginação ── */
.pagination-custom{display:flex;justify-content:center;gap:8px;margin-top:48px;flex-wrap:wrap;}
.page-link-custom{width:42px;height:42px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);background:white;color:var(--dark);text-decoration:none;font-weight:500;font-size:14px;border:1.5px solid var(--gray-lighter);transition:var(--transition);}
.page-link-custom:hover,.page-link-custom.active{background:var(--grad-primary);color:white;border-color:transparent;transform:translateY(-2px);box-shadow:var(--shadow-green);}
.pagination .page-link{border-radius:var(--radius-sm)!important;border-color:var(--gray-lighter)!important;color:var(--primary)!important;transition:var(--transition);}
.pagination .page-item.active .page-link{background:var(--grad-primary)!important;border-color:transparent!important;color:white!important;}

/* ── Hero ── */
.hero-section{background-size:cover!important;background-position:center!important;background-attachment:fixed;min-height:92vh;display:flex;align-items:center;position:relative;margin-top:-80px;overflow:hidden;}
.hero-section::before{content:'';position:absolute;inset:0;background:var(--grad-hero);}
.hero-content{position:relative;z-index:2;color:white;}
.hero-titulo{font-size:clamp(36px,5vw,68px);font-weight:800;line-height:1.1;margin-bottom:20px;color:white;text-shadow:0 4px 24px rgba(0,0,0,.2);}
.hero-titulo span{background:var(--grad-gold);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.hero-subtitulo{font-size:clamp(16px,2vw,20px);color:rgba(255,255,255,.88);margin-bottom:36px;line-height:1.7;}
.hero-btn-primary{background:var(--grad-primary);color:white;padding:14px 32px;border-radius:var(--radius-full);font-weight:700;font-size:16px;text-decoration:none;display:inline-flex;align-items:center;gap:10px;transition:var(--transition-slow);box-shadow:var(--shadow-green);}
.hero-btn-primary:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(5,135,137,.35);color:white;}
.hero-btn-secondary{background:rgba(255,255,255,.15);color:white;padding:14px 32px;border-radius:var(--radius-full);font-weight:600;font-size:16px;text-decoration:none;display:inline-flex;align-items:center;gap:10px;border:2px solid rgba(255,255,255,.4);backdrop-filter:blur(8px);transition:var(--transition-slow);}
.hero-btn-secondary:hover{background:rgba(255,255,255,.25);border-color:rgba(255,255,255,.7);transform:translateY(-4px);color:white;}
.hero-stat{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);border-radius:var(--radius);padding:18px 24px;backdrop-filter:blur(8px);text-align:center;color:white;}
.hero-stat .num{font-size:32px;font-weight:800;color:white;}
.hero-stat .lbl{font-size:13px;opacity:.8;margin-top:4px;}

/* ── Destaques carrossel ── */
.destaques-carrossel{background:var(--beige-light);padding:56px 0;position:relative;overflow:hidden;}
.destaques-carrossel::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 70% 50%, rgba(5,135,137,.06) 0%, transparent 70%);}
.secao-titulo{font-size:clamp(24px,3vw,36px);font-weight:800;color:var(--dark);margin-bottom:8px;}
.secao-subtitulo{color:var(--gray);font-size:16px;}

/* ── Formulários email/contacto ── */
.form-control-custom{border:2px solid var(--gray-lighter)!important;border-radius:var(--radius-sm)!important;padding:12px 16px;font-size:15px;transition:var(--transition);background:var(--sand);color:var(--dark);}
.form-control-custom:focus{border-color:var(--primary)!important;box-shadow:0 0 0 3px rgba(5,135,137,.12)!important;background:white;}
.btn-enviar{background:var(--grad-primary);color:white;border:none;padding:13px 28px;border-radius:var(--radius-full);font-weight:700;font-size:15px;cursor:pointer;transition:var(--transition-slow);display:inline-flex;align-items:center;gap:8px;}
.btn-enviar:hover{transform:translateY(-3px);box-shadow:var(--shadow-green);color:white;}
.btn-voltar{border:2px solid var(--primary);color:var(--primary);background:transparent;padding:11px 26px;border-radius:var(--radius-full);font-weight:600;font-size:14px;text-decoration:none;display:inline-flex;align-items:center;gap:8px;transition:var(--transition);}
.btn-voltar:hover{background:var(--primary);color:white;}

/* ── Perfil detalhe ── */
.perfil-section{padding:32px 0;border-bottom:1px solid var(--gray-lighter);}
.perfil-section:last-child{border-bottom:none;}
.perfil-section-title{font-size:18px;font-weight:700;color:var(--primary);margin-bottom:20px;display:flex;align-items:center;gap:10px;}
.perfil-section-title i{color:var(--accent);}
.email-card,.email-card-spa{background:var(--beige-light);border-radius:var(--radius);padding:28px;border:1px solid var(--beige-dark);}
.contato-item{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--gray-lighter);font-size:14px;}
.contato-item:last-child{border-bottom:none;}
.contato-item i{color:var(--primary);width:20px;text-align:center;font-size:18px;}

/* ── Footer ── */
.footer-moderno{background:var(--dark);color:white;margin-top:80px;position:relative;overflow:hidden;}
.footer-moderno::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 80% 20%, rgba(5,135,137,.12) 0%, transparent 60%);pointer-events:none;}
.footer-wave{position:absolute;top:-1px;left:0;width:100%;line-height:0;}
.footer-wave svg{width:100%;height:auto;color:var(--sand);}
.footer-content{position:relative;z-index:2;max-width:1400px;margin:0 auto;padding:60px 32px 30px;}
.footer-grid{display:grid;grid-template-columns:1.5fr 2fr;gap:60px;margin-bottom:50px;}
.footer-logo{display:flex;align-items:center;gap:14px;margin-bottom:18px;}
.footer-logo i{font-size:38px;color:var(--primary-light);}
.footer-logo h3{font-size:22px;font-weight:800;color:white;margin:0;}
.footer-description{color:rgba(255,255,255,.6);margin-bottom:24px;line-height:1.8;font-size:14px;}
.footer-social{display:flex;gap:12px;}
.social-link{width:42px;height:42px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:50%;display:flex;align-items:center;justify-content:center;color:white;font-size:18px;transition:var(--transition);text-decoration:none;}
.social-link:hover{background:var(--primary);border-color:var(--primary);transform:translateY(-4px);}
.footer-links{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;}
.footer-section h4{font-size:15px;font-weight:700;color:white;margin-bottom:18px;padding-bottom:10px;position:relative;}
.footer-section h4::after{content:'';position:absolute;bottom:0;left:0;width:36px;height:2px;background:var(--grad-primary);border-radius:2px;}
.footer-section ul{list-style:none;padding:0;}
.footer-section ul li{margin-bottom:10px;}
.footer-section ul li a{color:rgba(255,255,255,.55);text-decoration:none;font-size:14px;display:flex;align-items:center;gap:7px;transition:var(--transition);}
.footer-section ul li a i{font-size:12px;color:var(--primary-light);}
.footer-section ul li a:hover{color:white;transform:translateX(4px);}
.footer-bottom{margin-top:40px;padding-top:28px;border-top:1px solid rgba(255,255,255,.08);display:flex;justify-content:space-between;align-items:center;color:rgba(255,255,255,.45);font-size:13px;}
@media(max-width:992px){.footer-grid{grid-template-columns:1fr;gap:36px;}.footer-links{grid-template-columns:repeat(2,1fr);}.footer-bottom{flex-direction:column;gap:16px;text-align:center;}}
@media(max-width:576px){.footer-links{grid-template-columns:1fr;}}

/* ── Animações ── */
@keyframes fadeInUp{from{opacity:0;transform:translateY(28px);}to{opacity:1;transform:translateY(0);}}
@keyframes fadeIn{from{opacity:0;}to{opacity:1;}}
@keyframes slideInRight{from{opacity:0;transform:translateX(28px);}to{opacity:1;transform:translateX(0);}}
@keyframes slideInLeft{from{opacity:0;transform:translateX(-28px);}to{opacity:1;transform:translateX(0);}}
.animate-fade-up{animation:fadeInUp .7s ease forwards;}
.animate-fade-in{animation:fadeIn .9s ease forwards;}
.animate-slide-left{animation:slideInLeft .7s ease forwards;}
.animate-slide-right{animation:slideInRight .7s ease forwards;}
.delay-100{animation-delay:.1s;}.delay-200{animation-delay:.2s;}.delay-300{animation-delay:.3s;}.delay-400{animation-delay:.4s;}.delay-500{animation-delay:.5s;}

/* ── Utilitários ── */
.container{max-width:1400px;margin:0 auto;padding:0 24px;}
.gradient-bg{background:var(--grad-primary);}
.text-primary{color:var(--primary)!important;}
.text-accent{color:var(--accent)!important;}
.shadow-hover{transition:var(--transition);}
.shadow-hover:hover{box-shadow:var(--shadow-xl);transform:translateY(-4px);}

/* ── Responsive navbar ── */
@media(max-width:991.98px){
    .navbar-toggler{display:block!important;}
    .navbar-collapse{position:absolute;top:100%;left:0;right:0;background:rgba(255,255,255,.98);backdrop-filter:blur(16px);padding:20px;border-radius:0 0 var(--radius-lg) var(--radius-lg);box-shadow:var(--shadow-lg);border-top:1px solid var(--gray-lighter);}
    .nav-link{padding:11px 16px!important;border-radius:var(--radius-sm)!important;}
    .page-header h1,.page-header-moderno h1{font-size:32px;}
}
@media(max-width:575.98px){
    .navbar-brand{font-size:18px!important;}
    .page-header h1,.page-header-moderno h1{font-size:26px;}
    .filtros-card{padding:18px;}
}

/* ============================================================
   MELHORIAS RESPONSIVIDADE FRONT OFFICE
   ============================================================ */

@media (max-width: 768px) {
    /* Navbar */
    .navbar { padding: 8px 16px; }

    /* Hero */
    .hero-section { min-height: 70vh; background-attachment: scroll !important; }
    .hero-section h1 { font-size: 28px !important; }
    .hero-section p  { font-size: 14px !important; }

    /* Page headers */
    .page-header,
    .page-header-moderno { padding: 60px 0 !important; }
    .page-header h1,
    .page-header-moderno h1 { font-size: 28px !important; }

    /* Grids */
    .grid-massagistas,
    .grid-pesquisa,
    .grid-spas,
    .grid-4 { grid-template-columns: 1fr 1fr !important; gap: 14px !important; }

    /* Cards */
    .card-moderno,
    .card-massagista,
    .card-spa,
    .card-pesquisa { border-radius: 16px; }
    .card-moderno-img-wrapper,
    .card-massagista-img-wrapper,
    .card-pesquisa-img-wrapper { height: 200px; }

    /* Footer */
    footer .row { flex-direction: column; }
    footer .col-lg-4,
    footer .col-lg-3,
    footer .col-lg-2 { width: 100%; margin-bottom: 24px; }

    /* Search/filter forms */
    .filtros-card { padding: 20px !important; }
    .filtros-card .row > [class*="col-"] { margin-bottom: 12px; }

    /* Swiper buttons */
    .swiper-button-prev,
    .swiper-button-next { display: none; }

    /* Destaques */
    .destaques-carrossel { padding: 32px 0; }

    /* Stats section */
    .stats-section .row { gap: 16px; }

    /* Botoes no hero */
    .hero-buttons,
    .hero-actions { flex-direction: column; gap: 10px; align-items: center; }
    .hero-buttons a,
    .hero-actions a { width: 100%; max-width: 280px; text-align: center; }
}

@media (max-width: 480px) {
    body { padding-top: 70px; }

    .grid-massagistas,
    .grid-pesquisa,
    .grid-spas,
    .grid-4 { grid-template-columns: 1fr !important; }

    .page-header h1,
    .page-header-moderno h1 { font-size: 22px !important; }

    .filtros-card { padding: 14px !important; }

    /* Tabelas no front */
    table { min-width: 400px; }
    .table-responsive,
    .table-responsive-wrapper { overflow-x: auto; }

    /* Margem inferior dos cards */
    .card-moderno,
    .card-massagista,
    .card-spa { margin-bottom: 16px; }
}
