:root{--ink:#111719;--muted:#657176;--blue:#2b858b;--blue-dark:#14636a;--line:rgba(17,23,25,.1);--shadow:0 28px 80px rgba(21,61,66,.13)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:82px}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI","Noto Sans SC","Microsoft YaHei",sans-serif;color:var(--ink);background:#f7f9f9}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;width:100%}h1,h2,h3,p{margin-top:0}
.site-header{position:fixed;inset:0 0 auto;z-index:30;height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 clamp(18px,4vw,64px);background:rgba(249,251,251,.82);border-bottom:1px solid rgba(255,255,255,.5);backdrop-filter:blur(22px) saturate(150%)}.brand{display:flex;align-items:center;gap:9px;min-width:210px}.brand-symbol{position:relative;display:block;width:45px;height:38px;border:3px solid #1e2426;border-radius:8px}.brand-symbol:before{content:"";position:absolute;left:9px;top:-10px;width:25px;height:10px;border:3px solid #1e2426;border-bottom:0;border-radius:7px 7px 0 0}.brand-symbol i,.brand-symbol i:after{position:absolute;display:block;clip-path:polygon(10% 13%,30% 0,50% 8%,70% 0,90% 13%,100% 34%,88% 64%,72% 100%,56% 70%,44% 70%,28% 100%,12% 64%,0 34%)}.brand-symbol i{z-index:2;left:-9px;top:7px;width:29px;height:31px;background:#1e2426}.brand-symbol i:after{content:"";inset:4px;width:21px;height:23px;background:#f9fbfb}.brand-lockup{display:grid;line-height:1}.brand-lockup strong{font-family:"Microsoft YaHei UI Light","Noto Sans SC",sans-serif;font-size:25px;font-weight:300;letter-spacing:-.09em;white-space:nowrap}.brand-lockup small{margin-top:5px;font-family:"Arial Narrow","Roboto Condensed",sans-serif;font-size:8px;font-weight:700;letter-spacing:.08em;white-space:nowrap}.desktop-nav{display:flex;gap:28px;font-size:14px;color:#485257}.desktop-nav a:hover{color:var(--blue)}.header-actions{display:flex;align-items:center;gap:10px}.lang-toggle{border:0;background:transparent;padding:10px;cursor:pointer;color:#39464a}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 24px;border-radius:999px;background:var(--blue-dark);color:#fff;font-weight:650;box-shadow:0 10px 30px rgba(20,99,106,.2);transition:.2s}.button:hover{transform:translateY(-2px);background:#0e555b}.button-small{min-height:40px;padding:0 18px;font-size:14px}.menu-toggle{display:none;width:42px;height:42px;border:0;border-radius:50%;background:#eaf1f2}.menu-toggle span{display:block;width:18px;height:1.5px;background:#142326;margin:5px auto}.mobile-nav{display:none}
.hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;padding:140px clamp(20px,6vw,92px) clamp(52px,8vw,100px);overflow:hidden;color:#fff}.hero-image,.hero-shade{position:absolute;inset:0}.hero-image{background:url("assets/images/processed/hero-clinic-1920.jpg") center/cover no-repeat;transform:scale(1.01)}.hero-shade{background:linear-gradient(90deg,rgba(7,18,20,.8),rgba(7,18,20,.48) 52%,rgba(7,18,20,.06) 82%),linear-gradient(0deg,rgba(7,18,20,.35),transparent 50%)}.hero-copy{position:relative;z-index:1;max-width:820px}.eyebrow,.section-kicker{font-size:12px;font-weight:750;letter-spacing:.14em;text-transform:uppercase;color:var(--blue)}.hero .eyebrow{color:#bfe5e8}.hero h1{max-width:820px;font-size:clamp(48px,7.4vw,94px);line-height:1.02;letter-spacing:-.055em;margin-bottom:28px}.hero-lead{max-width:680px;font-size:clamp(17px,2vw,22px);line-height:1.7;color:rgba(255,255,255,.82)}.hero-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:34px}.glass-link{min-height:48px;display:inline-flex;align-items:center;padding:0 22px;border:1px solid rgba(255,255,255,.35);border-radius:999px;background:rgba(255,255,255,.1);backdrop-filter:blur(14px)}
.section{padding:clamp(72px,10vw,144px) clamp(20px,7vw,108px)}.intro{background:#fff}.intro-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:clamp(40px,8vw,130px)}.intro h2,.section-heading h2,.doctor h2,.international h2,.visit h2{font-size:clamp(38px,5.4vw,70px);line-height:1.06;letter-spacing:-.048em;margin-bottom:24px}.intro p,.section-heading p,.doctor-copy p,.international p,.visit p{font-size:18px;line-height:1.8;color:var(--muted)}.pill-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.pill-row span{padding:10px 14px;border:1px solid var(--line);border-radius:999px;font-size:13px}.services{background:#f0f4f4}.section-heading{max-width:850px;margin-bottom:52px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.service-grid article{min-height:310px;padding:30px;border-radius:30px;background:rgba(255,255,255,.86);border:1px solid rgba(255,255,255,.8);transition:.25s}.service-grid article:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.service-grid b{color:var(--blue);font-size:13px}.service-grid h3{margin:82px 0 15px;font-size:24px;letter-spacing:-.02em}.service-grid p{color:var(--muted);line-height:1.7}
.doctor{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(0,1.15fr);gap:clamp(42px,9vw,150px);align-items:center;background:#111b1e;color:#fff}.doctor-photo{height:min(740px,75vw);overflow:hidden;border-radius:40px;background:#dce1e2}.doctor-photo img{height:100%;object-fit:cover;object-position:center top}.doctor h2{color:#fff;margin-bottom:10px}.doctor-role{color:#9fd0d4!important}.doctor-copy ul{list-style:none;padding:0;margin:32px 0}.doctor-copy li{padding:16px 0;border-bottom:1px solid rgba(255,255,255,.14);font-size:17px}.fine-print{font-size:13px!important;color:rgba(255,255,255,.5)!important}
.environment{background:#fff}.gallery{display:grid;grid-template-columns:1.2fr .8fr;grid-template-rows:repeat(2,320px);gap:16px}.gallery figure{margin:0;border-radius:30px;overflow:hidden;background:#e7ecec}.gallery .wide{grid-row:1/3}.gallery img{height:100%;object-fit:cover;transition:transform .7s}.gallery figure:hover img{transform:scale(1.025)}.international{display:grid;grid-template-columns:220px minmax(0,850px);gap:clamp(30px,7vw,110px);background:linear-gradient(135deg,#e9f5f6,#f7f9f9)}
.visit{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.72fr);gap:clamp(40px,7vw,100px);background:#fff}.visit dl{margin:40px 0 0}.visit dl div{display:grid;grid-template-columns:140px 1fr;gap:20px;padding:20px 0;border-top:1px solid var(--line)}.visit dt{color:var(--muted)}.visit dd{margin:0;font-weight:600;line-height:1.6}.booking-card{align-self:start;padding:32px;border-radius:36px;background:#eef5f5;box-shadow:var(--shadow)}.booking-card h3{font-size:30px;margin-bottom:14px}.booking-card img{max-width:330px;margin:26px auto 0;border-radius:24px}.site-footer{display:grid;grid-template-columns:1fr auto;gap:34px;padding:48px clamp(20px,7vw,108px);background:#0d1517;color:rgba(255,255,255,.72)}.footer-brand{display:grid;gap:5px}.footer-brand strong{font-size:22px;color:#fff}.footer-brand span{font-size:10px;letter-spacing:.16em}.site-footer>div:nth-child(2){display:grid;gap:8px;text-align:right}.site-footer p{grid-column:1/-1;padding-top:25px;border-top:1px solid rgba(255,255,255,.12);font-size:12px;margin-bottom:0}
@media(max-width:1050px){.desktop-nav{display:none}.menu-toggle{display:block}.mobile-nav.is-open{display:grid;position:fixed;inset:76px 0 auto;z-index:29;padding:16px 20px 26px;gap:8px;background:rgba(249,251,251,.98);box-shadow:0 20px 35px rgba(0,0,0,.08)}.mobile-nav a{padding:14px;border-bottom:1px solid var(--line)}.service-grid{grid-template-columns:repeat(2,1fr)}.intro-grid,.doctor,.visit{grid-template-columns:1fr}.doctor-photo{height:620px;max-width:540px}.international{grid-template-columns:1fr}.booking-card{display:grid;grid-template-columns:1fr 260px;align-items:center;gap:24px}.booking-card img{margin:0}}
@media(max-width:700px){html{scroll-padding-top:68px}.site-header{height:68px;padding-inline:16px}.brand{min-width:170px;gap:7px}.brand-symbol{width:38px;height:33px}.brand-symbol:before{left:7px;width:21px}.brand-lockup strong{font-size:21px}.brand-lockup small{font-size:7px}.header-actions .button{display:none}.mobile-nav.is-open{top:68px}.hero{min-height:92svh;padding:120px 20px 52px}.hero-shade{background:linear-gradient(0deg,rgba(5,15,17,.9),rgba(5,15,17,.15) 78%)}.hero h1{font-size:48px}.hero-lead{font-size:17px}.glass-link,.hero-actions .button{width:100%;justify-content:center}.section{padding:72px 20px}.intro-grid{grid-template-columns:1fr;gap:22px}.intro h2,.section-heading h2,.doctor h2,.international h2,.visit h2{font-size:40px}.service-grid{grid-template-columns:1fr}.service-grid article{min-height:240px}.service-grid h3{margin-top:54px}.doctor-photo{height:460px;border-radius:28px}.gallery{grid-template-columns:1fr;grid-template-rows:360px 240px 240px}.gallery .wide{grid-row:auto}.booking-card{display:block;padding:24px}.booking-card img{margin:24px auto 0}.visit dl div{grid-template-columns:1fr;gap:7px}.site-footer{grid-template-columns:1fr;padding:42px 20px}.site-footer>div:nth-child(2){text-align:left}.site-footer p{grid-column:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.service-grid article,.gallery img,.button{transition:none}}

/* Official logo exported directly from the user-provided AI source. */
.brand{min-width:210px}
.brand img{width:205px;height:60px;object-fit:contain;object-position:left center}
.footer-brand{display:flex;align-items:center}
.footer-brand img{width:245px;max-width:100%;padding:8px;border-radius:12px;background:#fff}
@media(max-width:700px){.brand{min-width:165px}.brand img{width:165px;height:54px}}

/* Livelier brand treatment while preserving the official AI logo silhouette. */
.brand{padding:6px 11px;border:1px solid rgba(81,101,177,.18);border-radius:18px;background:linear-gradient(125deg,rgba(255,255,255,.96),rgba(235,244,250,.88) 46%,rgba(242,235,253,.86));box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 8px 24px rgba(43,80,117,.08)}
.brand-gradient-logo{display:block;width:205px;height:48px;background:linear-gradient(100deg,#4142a3 0%,#6951b8 38%,#2e8fa0 72%,#43a6a2 100%);-webkit-mask:url("assets/images/logo/maison-dental-logo-mask.png") center/contain no-repeat;mask:url("assets/images/logo/maison-dental-logo-mask.png") center/contain no-repeat}
.footer-brand{width:max-content;padding:7px 12px;border:1px solid rgba(255,255,255,.22);border-radius:20px;background:linear-gradient(125deg,rgba(255,255,255,.96),rgba(230,243,247,.92),rgba(239,232,250,.93))}
.footer-brand img{display:none}

/* Glass-gradient treatment for the six service cards. */
.service-grid article{position:relative;overflow:hidden;background:linear-gradient(112deg,rgba(255,255,255,.95) 0%,rgba(237,247,249,.78) 44%,rgba(246,240,252,.82) 100%);border:1px solid rgba(255,255,255,.94);box-shadow:inset 1px 1px 0 rgba(255,255,255,.95),inset -1px -1px 0 rgba(86,120,147,.07),0 18px 50px rgba(32,70,77,.08);backdrop-filter:blur(16px)}
.service-grid article:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(100deg,transparent 5%,rgba(255,255,255,.58) 42%,transparent 68%);transform:translateX(-85%);transition:transform .7s ease}
.service-grid article:hover:before{transform:translateX(85%)}
.service-grid article:nth-child(2n){background:linear-gradient(112deg,rgba(255,255,255,.96),rgba(241,244,252,.82) 48%,rgba(232,247,246,.8))}
.service-grid article:nth-child(3n){background:linear-gradient(112deg,rgba(255,255,255,.96),rgba(235,247,247,.82) 48%,rgba(241,237,251,.8))}

/* Darkened corners and a restrained high-end finish for clinic photography. */
.gallery figure{position:relative;box-shadow:0 24px 60px rgba(10,28,31,.18)}
.gallery figure:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at center,transparent 46%,rgba(5,13,15,.13) 76%,rgba(5,13,15,.35) 112%),linear-gradient(135deg,rgba(255,255,255,.07),transparent 42%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.15)}
.gallery img{filter:contrast(1.09) saturate(.94) brightness(.98)}
@media(max-width:700px){.brand{min-width:174px;padding:5px 8px;border-radius:15px}.brand-gradient-logo{width:158px;height:44px}.footer-brand .brand-gradient-logo{width:205px;height:48px}}

/* Raster gradient asset works for both file:// preview and local server preview. */
.brand-gradient-logo{display:block;width:205px;height:48px;object-fit:contain;object-position:left center;background:none;-webkit-mask:none;mask:none}
.footer-brand .brand-gradient-logo{width:205px;height:48px;padding:0;border-radius:0;background:transparent}
@media(max-width:700px){.brand-gradient-logo{width:158px;height:44px}.footer-brand .brand-gradient-logo{width:205px;height:48px}}

/* A restrained international-facing polish: warmer language, clearer steps, playful details. */
.brand{position:relative;overflow:hidden;isolation:isolate;border-color:rgba(91,89,190,.25);box-shadow:inset 0 1px 0 rgba(255,255,255,.96),inset 0 -1px 0 rgba(70,148,157,.1),0 10px 28px rgba(62,73,150,.13)}
.brand:before{content:"";position:absolute;z-index:-1;inset:-70% -25%;background:linear-gradient(110deg,transparent 28%,rgba(255,255,255,.85) 43%,transparent 58%);transform:translateX(-55%) rotate(8deg);transition:transform .8s ease}
.brand:hover:before{transform:translateX(55%) rotate(8deg)}
.brand:after{content:"";position:absolute;z-index:-2;width:70px;height:70px;right:-20px;bottom:-44px;border-radius:50%;background:rgba(69,170,165,.2);filter:blur(10px)}
.hero-trust{display:flex;flex-wrap:wrap;gap:9px;margin-top:26px}.hero-trust span{padding:9px 13px;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:rgba(255,255,255,.09);color:rgba(255,255,255,.88);font-size:12px;font-weight:650;letter-spacing:.02em;backdrop-filter:blur(12px)}
.service-grid h3{position:relative;font-family:"Avenir Next","Trebuchet MS","Microsoft YaHei UI",sans-serif;font-weight:700;letter-spacing:-.035em}.service-grid h3:after{content:"";display:block;width:34px;height:4px;margin-top:13px;border-radius:999px;background:linear-gradient(90deg,#6657b8,#3aa0a4)}.service-grid article:nth-child(2n) h3:after{background:linear-gradient(90deg,#2f969f,#74b6a4)}.service-grid article:nth-child(3n) h3:after{background:linear-gradient(90deg,#8d63b3,#d58aa2)}
.international{position:relative;overflow:hidden}.international:after{content:"";position:absolute;width:390px;height:390px;right:-180px;top:-190px;border-radius:50%;background:radial-gradient(circle,rgba(108,83,187,.18),rgba(57,159,161,.06) 55%,transparent 70%)}.international>div{position:relative;z-index:1}.visit-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:34px}.visit-steps article{padding:22px;border:1px solid rgba(255,255,255,.9);border-radius:24px;background:linear-gradient(135deg,rgba(255,255,255,.86),rgba(242,248,250,.66));box-shadow:0 14px 36px rgba(38,78,86,.07)}.visit-steps b{color:var(--blue);font-size:12px}.visit-steps h3{margin:34px 0 10px;font-family:"Avenir Next","Trebuchet MS","Microsoft YaHei UI",sans-serif;font-size:19px}.visit-steps p{margin:0;font-size:14px;line-height:1.65}
@media(max-width:700px){.hero-trust{gap:7px}.hero-trust span{font-size:11px}.visit-steps{grid-template-columns:1fr}.visit-steps article{padding:20px}.visit-steps h3{margin-top:22px}}
.map-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.map-links a{display:inline-flex;align-items:center;min-height:42px;padding:0 16px;border:1px solid rgba(72,93,103,.16);border-radius:999px;background:linear-gradient(135deg,#fff,#edf6f7);color:var(--blue-dark);font-weight:700;font-size:13px;box-shadow:0 8px 20px rgba(39,80,87,.07)}
.team-section{background:#111b1e;color:#fff}.team-section .section-heading h2{color:#fff}.team-section .section-heading>p:last-child{color:rgba(255,255,255,.64)}.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.doctor-card{overflow:hidden;border:1px solid rgba(255,255,255,.13);border-radius:30px;background:linear-gradient(150deg,rgba(255,255,255,.1),rgba(255,255,255,.035));box-shadow:0 22px 60px rgba(0,0,0,.18)}.doctor-card-photo{height:340px;overflow:hidden;background:#92979f}.doctor-card-photo img{height:100%;object-fit:cover;object-position:center top;transition:transform .6s ease}.doctor-card:hover .doctor-card-photo img{transform:scale(1.025)}.doctor-card-copy{padding:24px}.doctor-specialty{display:inline-flex;padding:7px 10px;border-radius:999px;background:linear-gradient(100deg,rgba(102,87,184,.34),rgba(58,160,164,.3));color:#d8f3f1;font-size:11px;font-weight:750;letter-spacing:.05em}.doctor-card h3{margin:18px 0 12px;color:#fff;font-size:24px}.doctor-card p{margin:0;color:rgba(255,255,255,.64);font-size:14px;line-height:1.72}.team-disclaimer{margin:24px 0 0;color:rgba(255,255,255,.48);font-size:12px}.team-grid .doctor-card:nth-child(2) .doctor-specialty{background:linear-gradient(100deg,rgba(177,91,151,.34),rgba(119,92,184,.3))}.team-grid .doctor-card:nth-child(3) .doctor-specialty{background:linear-gradient(100deg,rgba(189,91,142,.34),rgba(205,126,151,.28))}.team-grid .doctor-card:nth-child(4) .doctor-specialty{background:linear-gradient(100deg,rgba(61,154,159,.36),rgba(84,130,184,.3))}@media(max-width:1100px){.team-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.team-grid{grid-template-columns:1fr}.doctor-card-photo{height:390px}}html[lang="en"] .team-section,html[lang="en"] .team-only{display:none!important}

.legal-page,.not-found-page{min-height:100vh;background:linear-gradient(135deg,#edf6f7,#fff 48%,#f1ecf8)}.legal-shell{width:min(900px,calc(100% - 40px));margin:0 auto;padding:52px 0 90px}.legal-brand{display:block;width:240px;padding:10px 14px;border-radius:20px;background:#fff;box-shadow:0 14px 40px rgba(34,72,80,.1)}.legal-brand img{width:100%}.legal-shell article{margin-top:38px;padding:clamp(28px,6vw,62px);border:1px solid rgba(255,255,255,.9);border-radius:36px;background:rgba(255,255,255,.78);box-shadow:0 28px 80px rgba(39,72,78,.1);backdrop-filter:blur(18px)}.legal-shell h1{font-size:clamp(36px,6vw,62px);line-height:1.08}.legal-shell h2{margin-top:36px;font-size:24px}.legal-shell p{color:var(--muted);font-size:16px;line-height:1.8}.legal-shell .button{margin-top:26px}.not-found-page{display:grid;place-items:center;padding:30px}.not-found-page main{max-width:760px;text-align:center}.not-found-page img{width:min(360px,80vw);margin:0 auto 36px}.not-found-page h1{font-size:clamp(38px,7vw,72px);line-height:1.08}.not-found-page h1 span{color:var(--muted);font-size:.62em}.not-found-page .button{margin-top:18px}