 @charset "UTF-8";
/*!
* Start Bootstrap - SB Admin v7.0.7 (https://startbootstrap.com/template/sb-admin)
* Copyright 2013-2023 Start Bootstrap
* Licensed under MIT (https://github.com/StartBootstrap/startbootstrap-sb-admin/blob/master/LICENSE)
*/
/*!
 * Bootstrap  v5.2.3 (https://getbootstrap.com/)
 * Copyright 2011-2022 The Bootstrap Authors
 * Copyright 2011-2022 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
 */
 /* ========== CSS VARIABLES ========== */
        :root {
            --primary: #2a9d8f;
            --primary-dark: #1f7a6e;
            --primary-light: #52c4b6;
            --secondary: #264653;
            --accent: #e9c46a;
            --teal-soft: #e0f5f3;
            --teal-mid: #b2e4df;
            --white: #ffffff;
            --light-bg: #f4faf9;
            --text-dark: #1a2e2d;
            --text-muted: #5c7a78;
            --border: #d0ebe8;
            --shadow-sm: 0 2px 12px rgba(42,157,143,0.10);
            --shadow-md: 0 6px 28px rgba(42,157,143,0.15);
            --shadow-lg: 0 12px 48px rgba(42,157,143,0.18);
            --radius: 12px;
            --radius-lg: 20px;
        }
        * { box-sizing: border-box; }
        html { scroll-behavior: smooth; }
        body { font-family: 'Open Sans', sans-serif; color: var(--text-dark); background: var(--white); overflow-x: hidden; }
        h1,h2,h3,h4,h5,h6 { font-family: 'Poppins', sans-serif; font-weight: 700; }
        a { text-decoration: none; color: inherit; }

        /* ── UTILITIES ── */
        .section-tag { display:inline-block; background:var(--teal-soft); color:var(--primary); font-family:'Poppins',sans-serif; font-size:.75rem; font-weight:700; letter-spacing:2px; text-transform:uppercase; padding:6px 16px; border-radius:50px; margin-bottom:14px; }
        .section-title { font-size:clamp(1.8rem,3.5vw,2.6rem); color:var(--secondary); line-height:1.2; }
        .section-subtitle { color:var(--text-muted); font-size:1rem; line-height:1.7; }
        .divider { width:60px; height:4px; background:linear-gradient(90deg,var(--primary),var(--primary-light)); border-radius:4px; margin:12px 0 20px; }
        .divider.center { margin:12px auto 20px; }
        .fade-up { opacity:0; transform:translateY(30px); transition:opacity .6s ease,transform .6s ease; }
        .fade-up.visible { opacity:1; transform:translateY(0); }

        /* ── TOPBAR ── */
        .topbar { background:var(--secondary); color:rgba(255,255,255,.85); font-size:.82rem; padding:8px 0; }
        .topbar a { color:rgba(255,255,255,.85); transition:color .3s; }
        .topbar a:hover { color:var(--accent); }
        .topbar .social-icons a { display:inline-flex; align-items:center; justify-content:center; width:28px; height:28px; background:rgba(255,255,255,.1); border-radius:50%; font-size:.75rem; margin-left:6px; transition:background .3s; }
        .topbar .social-icons a:hover { background:var(--primary); color:#fff; }

        /* ── NAVBAR ── */
        .navbar-wrapper { position:sticky; top:0; z-index:1050; background:var(--white); box-shadow:0 2px 16px rgba(42,157,143,.12); }
        .navbar-brand-logo { display:flex; align-items:center; gap:12px; }
        .brand-icon { width:44px; height:44px; background:linear-gradient(135deg,var(--primary),var(--primary-light)); border-radius:12px; display:flex; align-items:center; justify-content:center; color:white; font-size:1.2rem; flex-shrink:0; }
        .brand-text span.brand-main { font-family:'Poppins',sans-serif; font-size:1.15rem; font-weight:800; color:var(--secondary); display:block; line-height:1; }
        .brand-text span.brand-sub { font-size:.68rem; color:var(--primary); font-weight:600; letter-spacing:1.5px; text-transform:uppercase; }
        .navbar-nav .nav-link { font-family:'Poppins',sans-serif; font-weight:600; font-size:.9rem; color:var(--secondary)!important; padding:8px 14px!important; border-radius:8px; transition:all .3s; }
        .navbar-nav .nav-link:hover,.navbar-nav .nav-link.active { color:var(--primary)!important; background:var(--teal-soft); }
        .btn-appt { background:linear-gradient(135deg,var(--primary),var(--primary-light)); color:white!important; border-radius:50px!important; padding:8px 22px!important; font-size:.85rem!important; box-shadow:var(--shadow-sm); transition:all .3s!important; }
        .btn-appt:hover { transform:translateY(-1px); box-shadow:var(--shadow-md)!important; }

        /* ── HERO ── */
        .hero-section { background:linear-gradient(135deg,var(--secondary) 0%,#1a3a38 60%,var(--primary-dark) 100%); min-height:88vh; display:flex; align-items:center; position:relative; overflow:hidden; padding:80px 0; }
        .hero-section::before { content:''; position:absolute; top:-80px; right:-80px; width:500px; height:500px; background:radial-gradient(circle,rgba(42,157,143,.25) 0%,transparent 70%); border-radius:50%; }
        .hero-badge { display:inline-flex; align-items:center; gap:8px; background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.2); color:var(--accent); font-size:.78rem; font-weight:600; letter-spacing:2px; text-transform:uppercase; padding:7px 18px; border-radius:50px; margin-bottom:22px; }
        .hero-title { font-size:clamp(2.4rem,5vw,3.8rem); color:var(--white); line-height:1.15; margin-bottom:20px; }
        .hero-title em { font-style:normal; color:var(--primary-light); }
        .hero-desc { color:rgba(255,255,255,.75); font-size:1.05rem; line-height:1.8; max-width:520px; margin-bottom:36px; }
        .hero-btns { display:flex; flex-wrap:wrap; gap:14px; margin-bottom:48px; }
        .btn-hero-primary { background:linear-gradient(135deg,var(--primary),var(--primary-light)); color:white; padding:14px 34px; border-radius:50px; font-family:'Poppins',sans-serif; font-weight:600; font-size:.92rem; border:none; box-shadow:0 8px 24px rgba(42,157,143,.4); transition:all .3s; display:inline-flex; align-items:center; gap:8px; }
        .btn-hero-primary:hover { transform:translateY(-2px); box-shadow:0 12px 32px rgba(42,157,143,.5); color:white; }
        .btn-hero-outline { background:transparent; color:white; padding:13px 34px; border-radius:50px; font-family:'Poppins',sans-serif; font-weight:600; font-size:.92rem; border:2px solid rgba(255,255,255,.4); transition:all .3s; display:inline-flex; align-items:center; gap:8px; }
        .btn-hero-outline:hover { background:rgba(255,255,255,.1); border-color:rgba(255,255,255,.7); color:white; }
        .hero-stats { display:flex; gap:32px; flex-wrap:wrap; }
        .hero-stat .stat-num { font-family:'Poppins',sans-serif; font-size:1.8rem; font-weight:800; color:var(--white); line-height:1; }
        .hero-stat .stat-num span { color:var(--primary-light); }
        .hero-stat .stat-label { font-size:.78rem; color:rgba(255,255,255,.6); margin-top:2px; }
        .hero-main-card { background:white; border-radius:var(--radius-lg); overflow:hidden; box-shadow:var(--shadow-lg); position:relative; }
        .hero-main-card img { width:100%; height:380px; object-fit:cover; display:block; }
        .hero-card-overlay { position:absolute; bottom:0; left:0; right:0; background:linear-gradient(0deg,rgba(38,70,83,.92) 0%,transparent 100%); padding:28px 24px 24px; }
        .hero-card-overlay h5 { color:white; font-size:1rem; margin-bottom:4px; }
        .hero-card-overlay p { color:rgba(255,255,255,.7); font-size:.82rem; margin:0; }
        .hero-float-card { position:absolute; background:white; border-radius:var(--radius); padding:14px 18px; box-shadow:var(--shadow-md); display:flex; align-items:center; gap:12px; }
        .hero-float-card.top-right { top:0; right:-10px; }
        .hero-float-card.bottom-left { bottom:10px; left:-10px; }
        .float-icon { width:40px; height:40px; border-radius:10px; display:flex; align-items:center; justify-content:center; font-size:1rem; flex-shrink:0; }
        .float-icon.green { background:var(--teal-soft); color:var(--primary); }
        .float-icon.amber { background:#fff8e1; color:#f4a614; }
        .float-card-text .num { font-family:'Poppins',sans-serif; font-weight:700; font-size:1rem; color:var(--secondary); }
        .float-card-text .lbl { font-size:.72rem; color:var(--text-muted); }

        /* ── ABOUT ── */
        .about-section { padding:90px 0; background:var(--white); }
        .about-img-main { width:100%; border-radius:var(--radius-lg); object-fit:cover; height:480px; box-shadow:var(--shadow-lg); }
        .about-image-wrapper { position:relative; }
        .about-badge-card { position:absolute; bottom:-20px; right:-20px; background:linear-gradient(135deg,var(--primary),var(--primary-dark)); color:white; border-radius:var(--radius); padding:20px 24px; text-align:center; box-shadow:var(--shadow-md); min-width:140px; }
        .about-badge-card .big-num { font-family:'Poppins',sans-serif; font-size:2.5rem; font-weight:800; line-height:1; }
        .about-badge-card .big-label { font-size:.78rem; opacity:.85; margin-top:4px; }
        .about-stats { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-top:28px; }
        .about-stat-card { background:var(--light-bg); border-radius:var(--radius); padding:18px; border:1px solid var(--border); transition:all .3s; }
        .about-stat-card:hover { border-color:var(--primary); box-shadow:var(--shadow-sm); transform:translateY(-2px); }
        .about-stat-card .icon { width:42px; height:42px; background:var(--teal-soft); color:var(--primary); border-radius:10px; display:flex; align-items:center; justify-content:center; font-size:1.1rem; margin-bottom:10px; }
        .about-stat-card h5 { font-size:1.1rem; color:var(--secondary); margin-bottom:2px; }
        .about-stat-card p { font-size:.78rem; color:var(--text-muted); margin:0; }

        /* ── TREATMENTS ── */
        .treatments-section { padding:90px 0; background:var(--light-bg); }
        .treatment-card { background:white; border-radius:var(--radius-lg); padding:32px 24px; border:1px solid var(--border); text-align:center; transition:all .35s; height:100%; position:relative; overflow:hidden; }
        .treatment-card::before { content:''; position:absolute; top:0; left:0; right:0; height:4px; background:linear-gradient(90deg,var(--primary),var(--primary-light)); opacity:0; transition:opacity .35s; }
        .treatment-card:hover { transform:translateY(-6px); box-shadow:var(--shadow-lg); border-color:var(--teal-mid); }
        .treatment-card:hover::before { opacity:1; }
        .treatment-icon { width:72px; height:72px; background:var(--teal-soft); color:var(--primary); border-radius:18px; display:flex; align-items:center; justify-content:center; font-size:1.6rem; margin:0 auto 20px; transition:all .35s; }
        .treatment-card:hover .treatment-icon { background:linear-gradient(135deg,var(--primary),var(--primary-light)); color:white; }
        .treatment-card h5 { font-size:1.05rem; color:var(--secondary); margin-bottom:10px; }
        .treatment-card p { font-size:.85rem; color:var(--text-muted); line-height:1.6; margin:0; }

        /* ── WHY CHOOSE US ── */
        .why-section { padding:90px 0; background:white; }
        .why-feature-card { display:flex; gap:18px; padding:24px; border-radius:var(--radius); border:1px solid var(--border); background:var(--light-bg); transition:all .3s; height:100%; }
        .why-feature-card:hover { border-color:var(--primary); box-shadow:var(--shadow-sm); transform:translateY(-3px); }
        .why-icon { width:52px; height:52px; flex-shrink:0; background:linear-gradient(135deg,var(--primary),var(--primary-light)); color:white; border-radius:14px; display:flex; align-items:center; justify-content:center; font-size:1.2rem; }
        .why-feature-card h5 { font-size:1rem; color:var(--secondary); margin-bottom:6px; }
        .why-feature-card p { font-size:.84rem; color:var(--text-muted); line-height:1.6; margin:0; }
        .why-img-wrap { border-radius:var(--radius-lg); overflow:hidden; box-shadow:var(--shadow-lg); }
        .why-img-wrap img { width:100%; height:520px; object-fit:cover; display:block; }

        /* ── TESTIMONIALS ── */
        .testimonials-section { padding:90px 0; background:linear-gradient(135deg,var(--secondary) 0%,#1a3a38 100%); position:relative; overflow:hidden; }
        .testimonials-section .section-tag { background:rgba(255,255,255,.1); color:var(--primary-light); }
        .testimonials-section .section-title { color:white; }
        .testimonials-section .divider { background:linear-gradient(90deg,var(--primary-light),rgba(255,255,255,.3)); }
        .testimonial-card { background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.12); border-radius:var(--radius-lg); padding:32px 28px; transition:all .3s; height:100%; }
        .testimonial-card:hover { background:rgba(255,255,255,.1); border-color:rgba(42,157,143,.4); transform:translateY(-4px); }
        .t-stars { color:var(--accent); font-size:.9rem; margin-bottom:16px; }
        .t-text { color:rgba(255,255,255,.82); font-size:.9rem; line-height:1.75; font-style:italic; margin-bottom:24px; }
        .t-quote { font-size:2rem; color:var(--primary-light); line-height:1; margin-bottom:4px; font-family:Georgia,serif; }
        .t-author { display:flex; align-items:center; gap:14px; }
        .t-avatar { width:48px; height:48px; border-radius:50%; background:linear-gradient(135deg,var(--primary),var(--primary-light)); display:flex; align-items:center; justify-content:center; color:white; font-family:'Poppins',sans-serif; font-weight:700; font-size:1.1rem; flex-shrink:0; }
        .t-name { font-family:'Poppins',sans-serif; font-weight:600; color:white; font-size:.92rem; }
        .t-role { font-size:.78rem; color:rgba(255,255,255,.5); }

        /* ── CTA ── */
        .cta-section { padding:80px 0; background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%); position:relative; overflow:hidden; }
        .cta-section h2 { color:white; font-size:clamp(1.8rem,3vw,2.4rem); }
        .cta-section p { color:rgba(255,255,255,.82); font-size:1rem; }
        .btn-cta-white { background:white; color:var(--primary); padding:14px 34px; border-radius:50px; font-family:'Poppins',sans-serif; font-weight:700; font-size:.92rem; border:none; box-shadow:0 8px 24px rgba(0,0,0,.15); transition:all .3s; display:inline-block; }
        .btn-cta-white:hover { transform:translateY(-2px); color:var(--primary-dark); }
        .btn-cta-outline { background:transparent; color:white; padding:13px 34px; border-radius:50px; font-family:'Poppins',sans-serif; font-weight:600; font-size:.92rem; border:2px solid rgba(255,255,255,.5); transition:all .3s; display:inline-block; }
        .btn-cta-outline:hover { background:rgba(255,255,255,.1); border-color:white; color:white; }

        /* ── CONTACT ── */
        .contact-section { padding:90px 0; background:var(--light-bg); }
        .contact-info-card { background:linear-gradient(135deg,var(--secondary),#1a3a38); border-radius:var(--radius-lg); padding:40px 36px; height:100%; }
        .contact-info-card h3 { color:white; margin-bottom:8px; }
        .contact-info-card > p { color:rgba(255,255,255,.7); font-size:.88rem; margin-bottom:32px; }
        .contact-item { display:flex; gap:16px; margin-bottom:24px; align-items:flex-start; }
        .contact-item .ci-icon { width:44px; height:44px; background:rgba(42,157,143,.2); border:1px solid rgba(42,157,143,.3); color:var(--primary-light); border-radius:12px; display:flex; align-items:center; justify-content:center; font-size:1rem; flex-shrink:0; }
        .contact-item .ci-label { font-size:.72rem; color:rgba(255,255,255,.5); text-transform:uppercase; letter-spacing:1px; margin-bottom:2px; }
        .contact-item .ci-value { color:white; font-weight:600; font-size:.88rem; }
        .contact-social { display:flex; gap:10px; margin-top:32px; }
        .contact-social a { width:38px; height:38px; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.15); color:rgba(255,255,255,.7); border-radius:10px; display:flex; align-items:center; justify-content:center; font-size:.85rem; transition:all .3s; }
        .contact-social a:hover { background:var(--primary); color:white; border-color:var(--primary); }
        .contact-form-card { background:white; border-radius:var(--radius-lg); padding:40px 36px; box-shadow:var(--shadow-md); height:100%; }
        .contact-form-card h3 { color:var(--secondary); margin-bottom:6px; }
        .contact-form-card > p { color:var(--text-muted); font-size:.88rem; margin-bottom:28px; }
        .form-label { font-size:.82rem; font-weight:600; color:var(--secondary); margin-bottom:6px; font-family:'Poppins',sans-serif; }
        .form-control, .form-select { border:1.5px solid var(--border); border-radius:10px; padding:11px 16px; font-size:.88rem; color:var(--text-dark); background:var(--light-bg); transition:border-color .3s,box-shadow .3s; }
        .form-control:focus, .form-select:focus { border-color:var(--primary); box-shadow:0 0 0 3px rgba(42,157,143,.12); background:white; outline:none; }
        .btn-submit { background:linear-gradient(135deg,var(--primary),var(--primary-light)); color:white; padding:13px 36px; border-radius:50px; font-family:'Poppins',sans-serif; font-weight:600; font-size:.9rem; border:none; width:100%; box-shadow:0 6px 20px rgba(42,157,143,.3); transition:all .3s; cursor:pointer; }
        .btn-submit:hover { transform:translateY(-2px); box-shadow:0 10px 28px rgba(42,157,143,.4); }
        .btn-submit:disabled { opacity:.6; cursor:not-allowed; transform:none; }
        .alert-form { display:none; border-radius:10px; padding:14px 18px; font-size:.88rem; font-weight:600; margin-top:14px; align-items:center; gap:10px; }
        .alert-form.show { display:flex; }
        .alert-success-form { background:var(--teal-soft); border:1px solid var(--teal-mid); color:var(--primary-dark); }
        .alert-error-form { background:#fff0f0; border:1px solid #ffc9c9; color:#c0392b; }

        /* ── FOOTER ── */
        .footer-main { background:var(--secondary); padding:64px 0 40px; }
        .footer-heading { font-size:.72rem; letter-spacing:2px; text-transform:uppercase; color:var(--primary-light); margin-bottom:20px; font-family:'Poppins',sans-serif; }
        .footer-links { list-style:none; padding:0; margin:0; }
        .footer-links li { margin-bottom:10px; }
        .footer-links a { color:rgba(255,255,255,.65); font-size:.85rem; transition:color .3s; display:flex; align-items:center; gap:8px; }
        .footer-links a:hover { color:var(--primary-light); }
        .footer-contact-item { display:flex; gap:12px; margin-bottom:14px; align-items:flex-start; }
        .footer-contact-item i { color:var(--primary-light); margin-top:3px; font-size:.9rem; flex-shrink:0; }
        .footer-contact-item span { color:rgba(255,255,255,.65); font-size:.84rem; line-height:1.5; }
        .footer-bottom { background:rgba(0,0,0,.25); padding:16px 0; }
        .footer-bottom p { color:rgba(255,255,255,.5); font-size:.8rem; margin:0; }
        .footer-bottom a { color:var(--primary-light); }

        /* ── WHATSAPP FLOAT ── */
        .whatsapp-float { position:fixed; bottom:80px; right:24px; width:56px; height:56px; background:#25D366; color:white; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:1.5rem; box-shadow:0 6px 24px rgba(37,211,102,.4); z-index:1000; transition:all .3s; animation:pulse-wa 2.5s infinite; }
        .whatsapp-float:hover { background:#1ebe5d; color:white; transform:scale(1.1); }
        @keyframes pulse-wa { 0%,100% { box-shadow:0 6px 24px rgba(37,211,102,.4); } 50% { box-shadow:0 6px 32px rgba(37,211,102,.7); } }
        .whatsapp-tooltip { position:absolute; right:68px; background:white; color:var(--secondary); font-size:.75rem; font-weight:600; padding:5px 12px; border-radius:6px; white-space:nowrap; box-shadow:var(--shadow-sm); opacity:0; pointer-events:none; transition:opacity .3s; }
        .whatsapp-float:hover .whatsapp-tooltip { opacity:1; }

        /* ── BACK TO TOP ── */
        .back-to-top { position:fixed; bottom:24px; right:24px; width:44px; height:44px; background:linear-gradient(135deg,var(--primary),var(--primary-light)); color:white; border-radius:12px; display:flex; align-items:center; justify-content:center; font-size:1rem; z-index:999; opacity:0; pointer-events:none; transition:all .3s; box-shadow:var(--shadow-sm); border:none; cursor:pointer; }
        .back-to-top.visible { opacity:1; pointer-events:all; }
        .back-to-top:hover { transform:translateY(-3px); box-shadow:var(--shadow-md); }

        /* ── RESPONSIVE ── */
        @media (max-width:991px) {
            .hero-section { min-height:auto; padding:60px 0; }
            .about-badge-card { right:0; }
            .contact-form-card, .contact-info-card { padding:28px 22px; }
        }
        @media (max-width:576px) {
            .hero-stats { gap:20px; }
            .hero-btns { flex-direction:column; }
            .about-stats { grid-template-columns:1fr; }
        }