:root{--ink:#10252e;--muted:#62747b;--teal:#0b7584;--deep:#073f4a;--mint:#e9f7f5;--gold:#e4b65f;--paper:#fff;--soft:#f4f8f8;--line:#dbe6e8;--shadow:0 20px 55px rgba(13,42,51,.10)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;line-height:1.65;background:var(--paper)}a{text-decoration:none;color:inherit}.container{width:min(1160px,92%);margin:auto}.site-header{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.nav{height:78px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:11px}.brand-logo{width:42px;height:42px;border-radius:13px;background:var(--teal);color:#fff;display:grid;place-items:center;font-size:27px;font-weight:900;box-shadow:0 8px 20px #0b75843a}.brand b{display:block;font-size:15px}.brand small{display:block;color:var(--muted);font-size:10px;margin-top:-2px}nav{display:flex;gap:25px;align-items:center;font-size:13px;font-weight:750;color:#445860}nav a:hover{color:var(--teal)}.nav-btn{background:var(--teal);color:#fff!important;padding:11px 16px;border-radius:9px}.menu{display:none;border:0;background:none;font-size:25px}.hero{padding:95px 0 80px;background:linear-gradient(135deg,#effaf8,#fff 55%,#fff8ec)}.hero-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:80px;align-items:center}.eyebrow,.kicker,.tag{font-size:10px;letter-spacing:.16em;font-weight:850;color:var(--teal)}h1{font-size:clamp(44px,6vw,72px);line-height:1.03;letter-spacing:-.055em;margin:15px 0 22px}h1 span{color:var(--teal)}h2{font-size:clamp(29px,4vw,45px);line-height:1.12;letter-spacing:-.035em;margin:10px 0 18px}h3{line-height:1.2}p{color:var(--muted)}.hero-lead{font-size:18px;max-width:670px}.actions{display:flex;gap:12px;margin:30px 0}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:10px;padding:13px 19px;font-weight:800;font-size:13px;cursor:pointer}.primary{background:var(--teal);color:#fff;box-shadow:0 10px 25px #0b75842b}.light{background:#fff;border:1px solid var(--line)}.gold{background:var(--gold);color:#18282d}.micro{display:flex;gap:22px;flex-wrap:wrap;font-size:11px;color:var(--muted)}.hero-doctor{background:#fff;border:1px solid var(--line);border-radius:25px;overflow:hidden;box-shadow:var(--shadow)}.doctor-photo{height:270px;background:linear-gradient(145deg,#d9f0ed,#f8ead1);display:grid;place-items:center}.photo-placeholder{width:150px;height:180px;border-radius:75px 75px 25px 25px;background:#fff6;display:grid;place-items:center;font-size:55px;font-weight:900;color:#0b7584}.doctor-info{padding:27px}.doctor-info h2{font-size:29px;margin:8px 0 2px}.doctor-info p{margin:0}.doctor-info a{display:block;margin-top:20px;color:var(--teal);font-weight:800;font-size:13px}.quick{border-bottom:1px solid var(--line)}.quickgrid{display:grid;grid-template-columns:repeat(4,1fr)}.quickgrid>div{padding:25px 18px;border-right:1px solid var(--line)}.quickgrid>div:last-child{border:0}.quick b,.quick span{display:block}.quick b{font-size:16px}.quick span{font-size:11px;color:var(--muted)}.section{padding:95px 0}.soft{background:var(--soft)}.intro-grid,.two{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:32px}.text-link{color:var(--teal);font-weight:800;font-size:13px}.cards{display:grid;gap:16px}.cards.four{grid-template-columns:repeat(4,1fr)}.cards article{background:#fff;border:1px solid var(--line);border-radius:17px;padding:26px;min-height:220px}.cards article i{font-style:normal;display:grid;place-items:center;width:43px;height:43px;border-radius:12px;background:var(--mint);color:var(--teal);font-weight:900}.cards h3{font-size:19px;margin:20px 0 8px}.cards p{font-size:13px}.cta{padding:65px 0}.cta-inner{background:var(--deep);color:#fff;border-radius:22px;padding:42px 48px;display:flex;align-items:center;justify-content:space-between;gap:30px}.cta h2{margin-bottom:5px}.cta p{color:#bcd0d3}.page-hero{padding:85px 0 75px;background:linear-gradient(135deg,#eef9f7,#fff)}.page-hero p{font-size:17px;max-width:700px}.page-hero.dark{background:var(--deep);color:#fff}.page-hero.dark h1{color:#fff}.page-hero.dark p{color:#bfd1d5}.number-list{border-left:2px solid var(--teal);padding-left:28px}.number-list>div{padding:14px 0}.number-list b{color:var(--gold)}.number-list h3{margin:5px 0}.number-list p{margin:0;font-size:13px}.contact-card{display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:center}.map-placeholder{min-height:260px;border-radius:20px;background:#e8f1f1;display:grid;place-items:center;text-align:center;color:#557077;padding:25px}.doctor-profile{display:grid;grid-template-columns:.75fr 1.25fr;gap:70px;align-items:center}.large-photo{height:480px;border-radius:28px;background:linear-gradient(145deg,#dcefeb,#f8ecd6);display:flex;flex-direction:column;justify-content:flex-end;padding:30px;position:relative;overflow:hidden}.large-photo>div{font-size:200px;font-weight:900;color:#0b75841a;position:absolute;right:-10px;top:50px}.large-photo span{font-weight:800}.profile-points{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:25px 0}.profile-points span{background:var(--soft);padding:10px;border-radius:8px;font-size:12px}.note,.privacy{background:#fff8e9;border:1px solid #f0dfb9;border-radius:10px;padding:14px;font-size:12px;color:#6b5b3c}.service-large{grid-template-columns:1fr 1fr}.service-large article{min-height:280px}.service-large h2{font-size:28px}.service-large a{color:var(--teal);font-weight:800;font-size:13px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.steps>div{border-top:2px solid var(--line);padding-top:18px}.steps b{color:var(--gold)}.steps h3{margin:7px 0}.steps p{font-size:13px}.check{list-style:none;padding:0}.check li{padding:8px 0;font-size:14px}.check li:before{content:"✓";color:var(--teal);font-weight:900;margin-right:9px}.info-panel{background:#fff;border:1px solid var(--line);border-radius:18px;padding:28px;box-shadow:var(--shadow)}.form-section{background:#f7faf9}.form-layout{display:grid;grid-template-columns:.65fr 1.35fr;gap:55px}.sticky{position:sticky;top:105px}.form-card,.admin-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:30px;box-shadow:0 10px 35px #0d2a3310}.form-title{margin-bottom:20px}.row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.row.three{grid-template-columns:1fr 1fr 1fr}label{display:block;font-size:12px;font-weight:800;color:#42555d;margin-bottom:15px}input,select,textarea{width:100%;display:block;margin-top:7px;border:1px solid #d2dfe1;border-radius:8px;padding:12px;font:inherit;font-size:13px;outline:none;background:#fff;color:var(--ink)}input:focus,select:focus,textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px #0b758412}.upload-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.upload{border:1.5px dashed #bdd0d2;padding:15px;border-radius:11px}.upload small{color:var(--muted)}.consent{display:flex;gap:10px;font-weight:500}.consent input{width:auto;margin-top:3px}.full{width:100%}.form-note{font-size:11px}.alert{padding:14px 16px;border-radius:10px;margin-bottom:18px;font-size:13px}.alert.error{background:#fff0ef;color:#9b3329;border:1px solid #f0c8c3}.alert.success{background:#edf9f6;color:#116b63;border:1px solid #bce3dc}.success-card{text-align:center;background:#fff;border:1px solid var(--line);border-radius:20px;padding:45px;box-shadow:var(--shadow)}.success-icon{width:62px;height:62px;border-radius:50%;background:var(--mint);color:var(--teal);display:grid;place-items:center;margin:0 auto 18px;font-size:28px;font-weight:900}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-item{padding:28px;border:1px solid var(--line);border-radius:15px}.contact-item span{font-size:10px;letter-spacing:.14em;color:var(--teal);font-weight:900}.contact-item h3{font-size:18px}.map-placeholder.big{grid-column:1/-1;min-height:330px}.legal h2{font-size:25px;margin-top:35px}.legal p{max-width:800px}footer{background:#0b252d;color:#c7d6d9;padding-top:55px}.footgrid{display:grid;grid-template-columns:1.4fr .6fr .8fr;gap:55px;padding-bottom:40px}.footgrid h4{color:#fff}.footgrid a{display:block;font-size:12px;margin:8px 0}.footgrid p{font-size:12px}.copyright{text-align:center;border-top:1px solid #ffffff18;padding:17px;font-size:10px;color:#8da4a9}
.admin-bg{background:#f1f6f6}.admin-shell{display:flex;min-height:100vh}.sidebar{width:245px;background:#092d36;color:#c4d4d7;padding:22px;position:fixed;top:0;bottom:0}.admin-brand{display:flex;gap:10px;align-items:center;color:#fff;margin-bottom:40px}.admin-brand small{display:block;color:#90aeb4;font-size:10px}.sidebar nav{display:flex;flex-direction:column;align-items:stretch;gap:5px}.sidebar nav a{padding:11px 12px;border-radius:8px;color:#b9cbcf;font-size:13px}.sidebar nav a:hover{background:#ffffff0d;color:#fff}.admin-main{margin-left:245px;width:calc(100% - 245px);padding:35px 45px}.admin-top{display:flex;justify-content:space-between;align-items:end;margin-bottom:28px}.admin-top h1{font-size:38px;margin:6px 0}.user-pill{background:#fff;border:1px solid var(--line);padding:9px 13px;border-radius:30px;font-size:11px}.dash-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:25px}.dash-cards>div{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px}.dash-cards span,.dash-cards b{display:block}.dash-cards span{font-size:11px;color:var(--muted)}.dash-cards b{font-size:30px;margin-top:5px}.admin-card-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:18px}.admin-card h2{font-size:24px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:12px}th{text-align:left;color:#708187;font-size:10px;text-transform:uppercase;letter-spacing:.08em}th,td{padding:14px 10px;border-bottom:1px solid #e8eeee;vertical-align:top}td b,td small{display:block}td small{font-size:10px;color:var(--muted);margin-top:3px}.status{display:inline-block;padding:5px 8px;border-radius:20px;font-size:10px;font-weight:800}.status.pending{background:#fff5dc;color:#8a651c}.status.confirmed{background:#e9f7f5;color:#0d6b63}.status.completed{background:#edf0ff;color:#4b59a1}.status.cancelled{background:#fff0ef;color:#9c332c}.view{color:var(--teal);font-weight:800}.filters{display:flex;gap:8px;margin-bottom:18px;flex-wrap:wrap}.filters a{background:#fff;border:1px solid var(--line);padding:8px 12px;border-radius:8px;font-size:11px}.filters a.active{background:var(--teal);color:#fff}.detail-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:18px}.detail-list p{display:flex;justify-content:space-between;border-bottom:1px solid #e7eeee;padding:9px 0;margin:0;font-size:12px}.detail-list span{color:var(--muted)}.text-box{background:var(--soft);border-radius:10px;padding:13px;font-size:13px;margin-bottom:20px}.file-link{display:block;color:var(--teal);font-size:12px;font-weight:800;padding:12px 0;border-bottom:1px solid var(--line)}.login-card{width:min(430px,92%);margin:8vh auto;background:#fff;border:1px solid var(--line);border-radius:20px;padding:35px;box-shadow:var(--shadow)}.login-card h1{font-size:36px;margin-top:35px}.back-site{display:block;text-align:center;color:var(--teal);font-size:12px;margin-top:20px}.admin-card small{color:var(--muted)}@media(max-width:900px){.hero-grid,.intro-grid,.two,.doctor-profile,.form-layout,.detail-grid{grid-template-columns:1fr;gap:35px}.cards.four,.steps{grid-template-columns:1fr 1fr}.quickgrid{grid-template-columns:1fr 1fr}.sidebar{position:static;width:100%;min-height:auto}.admin-shell{display:block}.admin-main{margin:0;width:100%;padding:25px}.sidebar nav{flex-direction:row;overflow:auto}.dash-cards{grid-template-columns:1fr 1fr}.appointment-form{}.sticky{position:static}.large-photo{height:350px}}@media(max-width:650px){nav{display:none;position:absolute;left:4%;right:4%;top:70px;background:#fff;border:1px solid var(--line);padding:14px;border-radius:12px;flex-direction:column;align-items:stretch}.site-header nav.show{display:flex}.menu{display:block}.hero{padding:55px 0}.hero h1{font-size:45px}.actions{flex-direction:column}.quickgrid,.cards.four,.steps,.row,.row.three,.upload-row,.contact-grid,.service-large{grid-template-columns:1fr}.section{padding:65px 0}.section-head,.cta-inner,.admin-top{align-items:start;flex-direction:column}.cta-inner{padding:30px}.footgrid{grid-template-columns:1fr}.admin-main{padding:20px 14px}.dash-cards{grid-template-columns:1fr 1fr}.form-card,.admin-card{padding:20px}.profile-points{grid-template-columns:1fr}.sidebar{padding:14px}.sidebar nav a{white-space:nowrap}.admin-top h1{font-size:31px}}/* Doctor Login Button */

.doctor-login {
    color: var(--teal) !important;
    border: 1px solid var(--teal);
    padding: 9px 14px;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 800;
    transition: all 0.2s ease;
}

.doctor-login:hover {
    background: var(--teal);
    color: #ffffff !important;
}}


/* =====================================================
   FINAL CLINIC LOGO SIZE FIX
   ===================================================== */

.site-header .brand img.clinic-logo,
header.site-header img.clinic-logo {
    display: block !important;
    width: 55px !important;
    height: 55px !important;
    max-width: 55px !important;
    max-height: 55px !important;
    min-width: 55px !important;
    min-height: 55px !important;
    object-fit: contain !important;
    object-position: center center !important;
    flex: 0 0 55px !important;
    border: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

.site-header .brand {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    height: 58px !important;
    overflow: hidden !important;
}

.site-header .brand > span {
    display: block !important;
    min-width: 0 !important;
}

.site-header .brand b {
    display: block !important;
    font-size: 13px !important;
    line-height: 1.25 !important;
}

.site-header .brand small {
    display: block !important;
    font-size: 9px !important;
    line-height: 1.25 !important;
    margin-top: 2px !important;
}

footer .brand img.clinic-logo,
footer img.clinic-logo {
    width: 55px !important;
    height: 55px !important;
    max-width: 55px !important;
    max-height: 55px !important;
    object-fit: contain !important;
}

@media (max-width: 650px) {
    .site-header .brand img.clinic-logo,
    header.site-header img.clinic-logo {
        width: 45px !important;
        height: 45px !important;
        max-width: 45px !important;
        max-height: 45px !important;
        min-width: 45px !important;
        min-height: 45px !important;
        flex-basis: 45px !important;
    }

    .site-header .brand {
        height: 50px !important;
    }
}
/* =========================================
   FULL DOCTOR PHOTO - NO CROP / NO ZOOM
========================================= */

.hero-doctor .doctor-photo {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: hidden !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #f3f8f7;
    display: block !important;
    border-radius: 22px 22px 0 0;
}

.hero-doctor .doctor-image {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: center center !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
}
/* =========================================
   DOCTOR PHOTO BUBBLE ANIMATION
========================================= */

.hero-doctor .doctor-photo {
    position: relative !important;
}

/* Floating bubbles */
.hero-doctor .doctor-photo::before,
.hero-doctor .doctor-photo::after {
    content: "";
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
    z-index: 2;
}

/* Bubble - top right */
.hero-doctor .doctor-photo::before {
    width: 18px;
    height: 18px;
    right: 18px;
    top: 18px;
    background: rgba(13, 135, 151, 0.18);
    border: 1px solid rgba(13, 135, 151, 0.25);
    animation: photoBubble1 3.5s ease-in-out infinite;
}

/* Bubble - bottom left */
.hero-doctor .doctor-photo::after {
    width: 12px;
    height: 12px;
    left: 20px;
    bottom: 22px;
    background: rgba(240, 183, 76, 0.25);
    border: 1px solid rgba(240, 183, 76, 0.35);
    animation: photoBubble2 4s ease-in-out infinite;
}

@keyframes photoBubble1 {
    0%, 100% {
        transform: translate(0, 0) scale(1);
        opacity: .55;
    }

    50% {
        transform: translate(-8px, 12px) scale(1.35);
        opacity: .9;
    }
}

@keyframes photoBubble2 {
    0%, 100% {
        transform: translate(0, 0) scale(1);
        opacity: .45;
    }

    50% {
        transform: translate(10px, -14px) scale(1.4);
        opacity: .85;
    }
}