:root{--red-950:#3b0610;--red-900:#640915;--red-800:#8f1022;--red-700:#b90f2a;--red-600:#d91f3b;--red-100:#ffe8e8;--rose-50:#fff6f5;--ink:#21191a;--muted:#6e5f61;--line:#ead5d2;--white:#fff;--gold:#bf8741;--green:#0e7a63;--shadow:0 18px 45px rgba(88,8,20,.13)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.65;background:#fffdfc}img,svg{max-width:100%;height:auto}a{color:var(--red-700);text-decoration:none}a:hover{color:var(--red-900)}.wrap{width:min(1160px,calc(100% - 36px));margin:0 auto}.topbar{background:var(--red-950);color:#fff2f2;font-size:14px}.topbar .wrap{min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:18px}.topbar a{color:#fff2f2;font-weight:750}.topbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:14px;flex:0 0 auto}.topbar-actions>a:not(.map-icon-link){white-space:nowrap}.map-icon-link{width:38px;height:38px;display:inline-grid;place-items:center;flex:0 0 auto;border:1px solid rgba(255,255,255,.24);border-radius:50%;background:rgba(255,255,255,.08)}.map-icon-link:before{content:"";width:18px;height:18px;display:block;background:currentColor;clip-path:path("M9 18S2.5 11.7 2.5 7.4C2.5 3.3 5.4.5 9 .5s6.5 2.8 6.5 6.9C15.5 11.7 9 18 9 18ZM9 9.7a2.4 2.4 0 1 0 0-4.8 2.4 2.4 0 0 0 0 4.8Z")}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.site-header{position:sticky;top:0;z-index:20;background:rgba(255,253,252,.95);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.nav{min-height:86px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{display:inline-flex;align-items:center;width:280px}.menu{display:flex;align-items:center;justify-content:flex-end;gap:18px;flex-wrap:wrap;font-size:14px;font-weight:750}.menu a{color:#332829}.menu a[aria-current=page],.menu a:hover{color:var(--red-700)}.menu .btn-primary,.menu .btn-primary:hover{color:#fff}.menu-toggle{display:none;width:46px;height:46px;place-items:center;gap:5px;padding:0;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--red-900);cursor:pointer;box-shadow:0 10px 24px rgba(88,8,20,.08)}.menu-toggle span{display:block;width:20px;height:2px;border-radius:2px;background:currentColor;transition:transform .2s ease,opacity .2s ease}.site-header.is-open .menu-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}.site-header.is-open .menu-toggle span:nth-child(2){opacity:0}.site-header.is-open .menu-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:12px 18px;border-radius:6px;border:1px solid transparent;font-weight:800;line-height:1.2}.btn-primary{background:var(--red-700);color:#fff;box-shadow:0 12px 24px rgba(185,15,42,.24)}.btn-primary:hover{background:var(--red-900);color:#fff}.btn-outline{border-color:rgba(185,15,42,.28);color:var(--red-800);background:#fff}.hero,.page-hero{background:linear-gradient(115deg,var(--red-950),var(--red-700));color:#fff}.hero .wrap{min-height:660px;display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:48px;padding:62px 0 72px}.page-hero{padding:76px 0}.eyebrow{margin:0 0 12px;color:var(--gold);text-transform:uppercase;font-size:13px;font-weight:900;letter-spacing:1.8px}.hero h1,.page-hero h1{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(40px,5vw,76px);line-height:1.02;letter-spacing:0}.hero p,.page-hero p{max-width:760px;margin:22px 0 0;font-size:19px;color:#ffe8e5}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}.hero-actions .btn-outline{background:rgba(255,255,255,.08);color:#fff;border-color:rgba(255,255,255,.34)}.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:34px}.stat{border:1px solid rgba(255,255,255,.18);border-radius:8px;padding:16px;background:rgba(255,255,255,.08)}.stat strong{display:block;font-size:28px}.stat span{display:block;color:#ffe4e0;font-size:13px;line-height:1.35}.doctor-card{background:#fff;color:var(--ink);border-radius:8px;padding:16px;box-shadow:var(--shadow)}.doctor-photo{aspect-ratio:4/4.5;width:100%;object-fit:cover;object-position:center top;border-radius:7px;background:var(--red-100)}.doctor-card h2{margin:16px 0 4px;font-size:27px;line-height:1.2}.doctor-card p{margin:0;color:var(--muted);font-size:15px}.doctor-card .reg{margin-top:12px;padding:10px 12px;background:var(--rose-50);border:1px solid var(--line);border-radius:6px;color:var(--red-900);font-weight:800}.section{padding:80px 0}.section.alt{background:var(--rose-50)}.section-title{max-width:780px;margin-bottom:34px}.section-title h2,.content h2{margin:0 0 12px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(30px,3vw,48px);line-height:1.1}.section-title p,.content p{color:var(--muted)}.grid{display:grid;gap:22px}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.card{background:#fff;border:1px solid var(--line);border-radius:8px;padding:26px;box-shadow:0 12px 30px rgba(88,8,20,.06)}.card h3{margin:0 0 10px;font-size:22px;line-height:1.2}.card p{margin:0;color:var(--muted)}.image-card{overflow:hidden;padding:0}.image-card .service-visual{display:block;width:100%;aspect-ratio:16/9.5;object-fit:cover;border-bottom:1px solid var(--line);background:var(--rose-50)}.image-card .card-body{padding:24px 26px 28px}.icon{width:42px;height:42px;display:inline-grid;place-items:center;margin-bottom:16px;border-radius:8px;color:#fff;background:var(--red-700);font-weight:900}.split{display:grid;grid-template-columns:.95fr 1.05fr;gap:44px;align-items:center}.feature-list{display:grid;gap:14px;padding:0;margin:22px 0 0;list-style:none}.feature-list li{display:grid;grid-template-columns:26px 1fr;gap:11px;color:var(--muted)}.feature-list li:before{content:"✓";width:26px;height:26px;display:grid;place-items:center;border-radius:50%;color:#fff;background:var(--green);font-size:14px;font-weight:900}.service-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:24px}.service-links a{min-height:76px;display:flex;align-items:center;padding:16px;border-radius:8px;border:1px solid var(--line);background:#fff;color:var(--ink);font-weight:800}.site-footer{background:#1f1214;color:#f8e7e3;padding:56px 0 24px}.footer-grid{display:grid;grid-template-columns:1.3fr .8fr .9fr;gap:32px}.footer-logo{width:260px;filter:brightness(0) invert(1)}.site-footer h3{margin-top:0;color:#fff}.site-footer a{color:#ffd2cc}.footer-links{display:grid;gap:8px}.fineprint{margin-top:36px;padding-top:20px;border-top:1px solid rgba(255,255,255,.12);color:#d9beb9;font-size:13px}@media (max-width:920px){.hero .wrap,.split,.footer-grid{grid-template-columns:1fr}.hero .wrap{min-height:auto;padding-top:44px}.grid-3,.grid-2,.service-links{grid-template-columns:1fr 1fr}}@media (max-width:680px){.topbar .wrap,.hero-actions{align-items:stretch;flex-direction:column}.topbar .wrap{min-height:46px;display:grid;grid-template-columns:1fr;align-items:center;gap:8px;padding:8px 0}.topbar span{font-size:12px}.topbar-actions{justify-content:flex-start;gap:10px;flex-wrap:wrap}.topbar-actions>a:not(.map-icon-link){font-size:12px}.topbar .map-icon-link{width:34px;height:34px}.nav{position:relative;min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:12px}.brand{width:min(220px,calc(100% - 62px))}.menu-toggle{display:inline-grid}.menu{position:absolute;top:calc(100% + 1px);left:0;right:0;display:none;grid-template-columns:1fr 1fr;gap:8px;padding:14px;border:1px solid var(--line);border-radius:0 0 8px 8px;background:rgba(255,253,252,.98);box-shadow:0 18px 36px rgba(88,8,20,.16);backdrop-filter:blur(12px)}.site-header.is-open .menu{display:grid}.menu a{min-height:44px;display:flex;align-items:center;justify-content:center;padding:10px 8px;border:1px solid var(--line);border-radius:6px;background:#fff;font-size:14px;text-align:center}.menu a[aria-current=page]{color:#fff;border-color:var(--red-700);background:var(--red-700)}.menu .btn{grid-column:1/-1;min-height:48px;margin-top:4px;box-shadow:none}.menu .btn-primary,.menu .btn-primary:hover{color:#fff;border-color:var(--red-700);background:var(--red-700)}.hero h1,.page-hero h1{font-size:36px;line-height:1.08}.page-hero{padding:48px 0 54px}.page-hero p,.hero p{font-size:16px}.hero .wrap{padding:42px 0 54px}.hero-stats,.grid-3,.grid-2,.service-links{grid-template-columns:1fr}.section{padding:58px 0}}
.site-footer{background:#1b0f12;color:#f6e7e4;padding:60px 0 24px}.footer-grid{display:grid;grid-template-columns:1.2fr .75fr 1.05fr;gap:56px;align-items:start}.footer-brand{display:inline-flex;align-items:center;max-width:310px;padding:12px 16px;border:1px solid rgba(255,255,255,.16);border-radius:8px;background:#fff;box-shadow:0 18px 36px rgba(0,0,0,.2)}.footer-logo{display:block;width:280px;filter:none}.footer-about p{max-width:500px;margin:22px 0 0;color:#e7cfcc}.footer-memberships{display:grid;gap:8px;margin-top:22px;color:#ffe2dd;font-weight:750}.site-footer h3{margin:0 0 18px;color:#fff;font-size:21px}.site-footer a{color:#ffd6d0}.footer-links{display:grid;gap:11px}.footer-links a{color:#f2c9c4;font-weight:750}.footer-links a:hover,.contact-row:hover{color:#fff}.footer-contact{display:grid;gap:12px}.contact-row{display:grid;grid-template-columns:34px 1fr;gap:12px;align-items:start;color:#f2d1cc;font-weight:700;line-height:1.45}.contact-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:8px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);color:#ffd6d0}.contact-icon svg{width:18px;height:18px;display:block;fill:currentColor}.fineprint{margin-top:38px;padding-top:20px;border-top:1px solid rgba(255,255,255,.12);color:#ccb0ad;font-size:13px}@media (max-width:920px){.footer-grid{grid-template-columns:1fr 1fr;gap:34px}.footer-about{grid-column:1/-1}}@media (max-width:680px){.site-footer{padding:44px 0 22px}.footer-grid{grid-template-columns:1fr;gap:30px}.footer-brand{max-width:100%;padding:10px 12px}.footer-logo{width:min(270px,100%)}.contact-row{grid-template-columns:32px 1fr}.fineprint{margin-top:28px}}
html,body{max-width:100%;overflow-x:hidden}.topbar-message{display:inline-flex;align-items:center;gap:6px}.topbar-message:before{content:"";width:17px;height:17px;display:inline-block;background:currentColor;clip-path:path("M4 5.8C4 3.7 5.7 2 7.8 2h8.4C18.3 2 20 3.7 20 5.8v5.8c0 2.1-1.7 3.8-3.8 3.8H10l-5.2 4.1c-.3.2-.8 0-.8-.4V5.8Zm4.6 2.3h6.8a1 1 0 1 0 0-2H8.6a1 1 0 1 0 0 2Zm0 4h4.8a1 1 0 1 0 0-2H8.6a1 1 0 1 0 0 2Z")}.topbar-phone{display:inline-flex;align-items:center;gap:6px}.topbar-phone:before{content:"";display:none;width:17px;height:17px;background:currentColor;clip-path:path("M6.6 10.8c1.5 3 3.7 5.1 6.6 6.6l2.2-2.2c.3-.3.8-.4 1.2-.2 1.3.4 2.7.7 4.1.7.7 0 1.3.6 1.3 1.3v3.6c0 .7-.6 1.3-1.3 1.3C10.4 22 2 13.6 2 3.3 2 2.6 2.6 2 3.3 2H7c.7 0 1.3.6 1.3 1.3 0 1.4.2 2.8.7 4.1.1.4 0 .9-.3 1.2l-2.1 2.2Z")}@media (max-width:680px){.topbar{overflow:hidden}.topbar .wrap{width:min(100% - 24px,1160px);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px 0}.topbar .wrap>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-actions{min-width:0;display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:nowrap}.topbar-phone,.topbar-message{width:34px;height:34px;display:inline-grid;place-items:center;border:1px solid rgba(255,255,255,.24);border-radius:50%;background:rgba(255,255,255,.08);font-size:0;flex:0 0 34px}.topbar-phone:before{display:block;width:17px;height:17px}.topbar-message:before{width:17px;height:17px}.topbar-phone-text,.topbar-message-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.topbar .map-icon-link{width:34px;height:34px}.hero .wrap,.nav,.section .wrap,.page-hero .wrap{max-width:calc(100vw - 36px)}}
.hero h1,.page-hero h1,.section-title h2,.content h2{font-family:"Avenir Next","Montserrat","Inter",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-weight:850;letter-spacing:0;line-height:1.08}.hero h1,.page-hero h1{font-size:clamp(38px,5vw,72px)}.section-title h2,.content h2{font-size:clamp(28px,3vw,46px)}@media (max-width:680px){.hero h1,.page-hero h1{font-size:34px;line-height:1.1}.section-title h2,.content h2{font-size:28px;line-height:1.15}}

/* Loader and refined text transitions */
.page-loader{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;align-content:center;gap:14px;background:radial-gradient(circle at 50% 35%,#fff7f5 0,#fff 34%,#fff1ef 100%);color:var(--red-800);transition:opacity .55s ease,visibility .55s ease;animation:loaderAutoHide .45s ease 1.75s forwards}.page-loader p{margin:0;font-weight:900;letter-spacing:1.8px;text-transform:uppercase;font-size:13px;color:var(--red-900)}.page-loader>span{width:136px;height:4px;overflow:hidden;border-radius:999px;background:#f4d8d4}.page-loader>span:before{content:"";display:block;width:48%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--red-900),var(--red-600));animation:loaderLine 1.05s ease-in-out infinite}.loader-mark{width:92px;height:92px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(145deg,var(--red-600),var(--red-900));box-shadow:0 22px 52px rgba(100,9,21,.24);animation:loaderPulse 1.25s ease-in-out infinite}.loader-mark svg{width:62px;height:72px;overflow:visible}.loader-tooth{fill:#fff}.loader-pearl{fill:#f8deda}.loader-smile{fill:none;stroke:#fff;stroke-width:7;stroke-linecap:round;opacity:.86;stroke-dasharray:62;animation:loaderSmile 1.25s ease-in-out infinite}.is-loaded .page-loader{opacity:0;visibility:hidden;pointer-events:none}.anim-ready .reveal-item{opacity:0;transform:translateY(24px);transition:opacity .75s ease,transform .75s cubic-bezier(.22,1,.36,1);transition-delay:var(--reveal-delay,0ms);will-change:opacity,transform}.anim-ready .reveal-item.is-visible{opacity:1;transform:translateY(0)}.anim-ready .hero .doctor-card.reveal-item,.anim-ready .split .doctor-card.reveal-item{transform:translateY(18px) scale(.98)}.anim-ready .hero .doctor-card.reveal-item.is-visible,.anim-ready .split .doctor-card.reveal-item.is-visible{transform:translateY(0) scale(1)}.btn{transition:transform .22s ease,box-shadow .22s ease,background-color .22s ease,color .22s ease,border-color .22s ease}.btn:hover{transform:translateY(-2px)}.card,.doctor-card,.service-links a{transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}.card:hover,.doctor-card:hover,.service-links a:hover{transform:translateY(-4px);box-shadow:0 18px 42px rgba(88,8,20,.12);border-color:rgba(185,15,42,.22)}@keyframes loaderPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.06)}}@keyframes loaderLine{0%{transform:translateX(-115%)}50%{transform:translateX(65%)}100%{transform:translateX(230%)}}@keyframes loaderSmile{0%,100%{stroke-dashoffset:62;opacity:.45}50%{stroke-dashoffset:0;opacity:.95}}@keyframes loaderAutoHide{to{opacity:0;visibility:hidden;pointer-events:none}}@media (prefers-reduced-motion:reduce){.page-loader{animation:none;display:none}.loader-mark,.loader-smile,.page-loader>span:before{animation:none}.anim-ready .reveal-item{opacity:1;transform:none;transition:none}.btn,.card,.doctor-card,.service-links a{transition:none}.btn:hover,.card:hover,.doctor-card:hover,.service-links a:hover{transform:none}}

/* Mobile topbar bounce and richer homepage sections */
.process-card span{width:48px;height:48px;display:grid;place-items:center;margin-bottom:18px;border-radius:8px;background:var(--red-700);color:#fff;font-weight:900}.process-card h3{font-size:24px}.local-seo{background:linear-gradient(115deg,#fff,var(--rose-50))}.local-seo .card{border-color:rgba(185,15,42,.18)}@media (max-width:680px){.topbar .wrap{grid-template-columns:minmax(0,1fr) auto;overflow:hidden}.topbar-track{display:block;min-width:0;max-width:100%;overflow:hidden;white-space:nowrap}.topbar-scroll{display:inline-block;min-width:max-content;font-size:13px;font-weight:750;line-height:34px;will-change:transform;animation:topbarTextBounce 9s ease-in-out infinite alternate}.topbar-actions{position:relative;z-index:2;padding-left:8px;background:var(--red-950)}.process-grid{gap:16px}.process-card{padding:24px}.local-seo .hero-actions{align-items:stretch}}@keyframes topbarTextBounce{0%,12%{transform:translateX(0)}88%,100%{transform:translateX(calc(-100% + min(54vw,220px)))}}
@media (prefers-reduced-motion:reduce){.topbar-scroll{animation:none}}

/* Stronger text bounce while scrolling */
.anim-ready .reveal-item{opacity:0;transform:translateY(34px) scale(.96);transition:none;will-change:transform,opacity}.anim-ready .reveal-item.is-visible{opacity:1;transform:translateY(0) scale(1);animation:textBounceIn .78s cubic-bezier(.18,.89,.32,1.28) both;animation-delay:var(--reveal-delay,0ms)}.anim-ready .hero .doctor-card.reveal-item,.anim-ready .split .doctor-card.reveal-item,.anim-ready .hero .doctor-card.reveal-item.is-visible,.anim-ready .split .doctor-card.reveal-item.is-visible{transform:none}.anim-ready .card .reveal-item.is-visible,.anim-ready .doctor-card .reveal-item.is-visible{animation-duration:.68s}@keyframes textBounceIn{0%{opacity:0;transform:translateY(34px) scale(.96)}58%{opacity:1;transform:translateY(-9px) scale(1.018)}76%{transform:translateY(5px) scale(.995)}90%{transform:translateY(-2px) scale(1.004)}100%{opacity:1;transform:translateY(0) scale(1)}}@media (prefers-reduced-motion:reduce){.anim-ready .reveal-item,.anim-ready .reveal-item.is-visible{opacity:1;transform:none;animation:none}}

/* Contact map and accurate mobile call icon */
.topbar-icon{display:none;width:18px;height:18px;fill:currentColor}.map-frame{overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--rose-50);box-shadow:0 18px 42px rgba(88,8,20,.1)}.map-frame iframe{display:block;width:100%;height:min(62vh,460px);min-height:320px;border:0}.contact-map-section .hero-actions{margin-top:24px}@media (max-width:680px){.topbar-phone:before{display:none!important}.topbar-phone .topbar-icon{display:block}.map-frame iframe{height:360px;min-height:300px}.contact-map-section .hero-actions{align-items:stretch}}

/* Smooth performance tuning for scroll animations */
.anim-ready .reveal-item{opacity:0;transform:translate3d(0,18px,0);transition:opacity .45s ease,transform .45s cubic-bezier(.22,1,.36,1);transition-delay:var(--reveal-delay,0ms);animation:none;will-change:opacity,transform}.anim-ready .reveal-item.is-visible{opacity:1;transform:translate3d(0,0,0);animation:softBounceIn .46s cubic-bezier(.22,1,.36,1) both;animation-delay:var(--reveal-delay,0ms)}@keyframes softBounceIn{0%{opacity:0;transform:translate3d(0,18px,0)}70%{opacity:1;transform:translate3d(0,-3px,0)}100%{opacity:1;transform:translate3d(0,0,0)}}@media (max-width:680px){.anim-ready .reveal-item{transition:opacity .32s ease,transform .32s ease;will-change:auto}.anim-ready .reveal-item.is-visible{animation:none}.topbar-scroll{animation-duration:13s}}@media (prefers-reduced-motion:reduce){.anim-ready .reveal-item,.anim-ready .reveal-item.is-visible{opacity:1;transform:none;transition:none;animation:none}.topbar-scroll{animation:none}}
