:root{--ink:#173b3a;--muted:#5f7775;--teal:#0b6d69;--mint:#d8eee9;--pale:#f4faf8;--white:#fff;--line:#cfe0dc;--coral:#ef8d78;--max:1240px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:'Noto Sans Thai','DM Sans',sans-serif;line-height:1.65;font-size:16px}.shell{width:min(var(--max),calc(100% - 48px));margin:auto}.header{height:88px;padding:0 max(24px,calc((100vw - var(--max))/2));display:flex;align-items:center;justify-content:space-between;gap:30px;background:rgba(255,255,255,.93);backdrop-filter:blur(14px);position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line)}.logo{display:inline-flex;align-items:center;gap:11px;text-decoration:none;color:var(--ink);line-height:1}.logo-mark{display:grid;place-items:center;width:40px;height:40px;border-radius:50% 50% 45% 45%;background:var(--teal);color:white;font:500 22px 'Playfair Display'}.logo b{display:block;font:600 17px 'DM Sans';letter-spacing:.12em}.logo small{display:block;font:500 8px 'DM Sans';letter-spacing:.18em;color:#66807e;margin-top:5px}.header nav{display:flex;gap:34px}.header nav a,.footer>a{font-size:14px;color:var(--ink);text-decoration:none}.header-actions{display:flex;align-items:center;gap:18px}.lang{background:none;border:0;color:#78908e;font:500 12px 'DM Sans';cursor:pointer}.nav-cta{padding:11px 20px;border-radius:999px;background:var(--teal);color:white;text-decoration:none;font-size:14px}.hero{min-height:710px;display:grid;grid-template-columns:1.04fr .96fr;gap:70px;align-items:center;padding:64px 0 82px}.kicker{font:600 11px 'DM Sans';letter-spacing:.17em;text-transform:uppercase;color:var(--teal)}h1,h2{font-family:'Playfair Display','Noto Sans Thai',serif;font-weight:500;letter-spacing:-.035em}.hero h1{font-size:clamp(54px,6vw,86px);line-height:1.07;margin:25px 0 28px}.hero-intro{font-size:18px;color:var(--muted);max-width:660px}.hero-actions{display:flex;align-items:center;gap:30px;margin:38px 0 52px}.button{display:inline-flex;justify-content:center;align-items:center;min-height:52px;padding:0 26px;border-radius:999px;border:0;background:var(--teal);color:#fff;font:500 15px 'Noto Sans Thai','DM Sans';text-decoration:none;cursor:pointer;transition:.2s}.button:hover{transform:translateY(-2px)}.soft-link{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--line);padding-bottom:5px}.trust-row{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);padding-top:20px}.trust-row strong{display:block;font-size:20px}.trust-row span{display:block;color:#768d8b;font-size:12px}.hero-visual{height:580px;position:relative}.hero-visual:before{content:"";position:absolute;inset:24px -24px -24px 24px;border:1px solid var(--mint);border-radius:190px 18px}.hero-visual img{width:100%;height:100%;object-fit:cover;position:relative;border-radius:190px 18px;filter:saturate(.88)}.availability{position:absolute;left:-38px;bottom:70px;background:white;padding:16px 20px;border-radius:6px;box-shadow:0 15px 40px rgba(19,67,64,.14);font-size:13px;display:flex;align-items:center;gap:10px}.availability i{width:8px;height:8px;background:#3aaf7e;border-radius:50%}.micro-note{position:absolute;right:-15px;top:55px;width:110px;height:110px;border-radius:50%;background:var(--coral);color:white;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;transform:rotate(7deg)}.micro-note b{font:600 12px 'DM Sans';letter-spacing:.12em}.micro-note span{font:500 7px/1.4 'DM Sans';letter-spacing:.08em;margin-top:6px}.ticker{overflow:hidden;background:var(--teal);color:white;padding:15px 0;white-space:nowrap;font:500 10px 'DM Sans';letter-spacing:.16em}.ticker div{width:max-content;animation:slide 22s linear infinite}.ticker i{display:inline-block;width:5px;height:5px;border-radius:50%;background:#73d2c4;margin:0 28px 2px}@keyframes slide{to{transform:translateX(-35%)}}.care,.steps{padding:130px 0}.section-intro{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:end;margin-bottom:75px}.section-intro .kicker{grid-column:1/-1}.section-intro h2,.approach h2,.contact h2{font-size:clamp(42px,5vw,66px);line-height:1.08;margin:0}.section-intro>p:last-child{color:var(--muted);font-size:17px}.services{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line)}.service{min-height:360px;padding:26px;border-right:1px solid var(--line);display:flex;flex-direction:column}.service:last-child{border:0}.service.feature{background:var(--teal);color:white;transform:translateY(-14px);box-shadow:0 18px 40px rgba(11,109,105,.15)}.service>span{font:500 10px 'DM Sans';color:#77918e}.service.feature>span,.service.feature p{color:#c9e1dd}.service-icon{font:400 46px 'Playfair Display';margin:auto 0 30px;color:var(--coral)}.service h3{font-size:21px;margin:0 0 12px}.service p{color:var(--muted);font-size:14px;margin:0}.approach{background:var(--pale);padding:130px 0}.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.clinic-image{height:570px;position:relative}.clinic-image img{width:100%;height:100%;object-fit:cover;border-radius:5px 120px 5px 5px}.clinic-image span{position:absolute;left:-22px;bottom:36px;background:var(--coral);color:white;padding:11px 18px;font:500 10px 'DM Sans';letter-spacing:.13em}.approach-copy h2{margin:20px 0 28px}.approach-copy>p:not(.kicker){color:var(--muted);font-size:17px}.approach-copy ul{list-style:none;padding:15px 0 0;margin:0}.approach-copy li{padding:13px 0;border-bottom:1px solid var(--line)}.approach-copy li:before{content:"✓";color:var(--teal);margin-right:14px}.step-list{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}.step-list article{padding:30px;min-height:190px;border-right:1px solid var(--line)}.step-list b{font:500 11px 'DM Sans';color:var(--coral)}.step-list h3{margin:42px 0 8px}.step-list p{font-size:14px;color:var(--muted)}.review-section{background:var(--teal);color:white;padding:100px 0}.review-grid{display:grid;grid-template-columns:.6fr 1.4fr;gap:80px;align-items:center}.review-score{display:flex;align-items:center;gap:24px}.review-score>span{font:500 95px/1 'Playfair Display'}.review-score>div{color:#ffd37e}.review-score small{display:block;color:#c7dfdb;font-size:11px}.review-section blockquote{margin:0;border-left:1px solid rgba(255,255,255,.3);padding-left:55px}.review-section blockquote p{font:500 clamp(25px,3vw,37px)/1.55 'Playfair Display','Noto Sans Thai';margin:0 0 18px}.review-section cite{font-style:normal;color:#b7d8d4}.contact{padding:130px 0;display:grid;grid-template-columns:.9fr 1.1fr;gap:110px}.contact-copy h2{margin:20px 0}.contact-copy>p:last-child{color:var(--muted)}.appointment{display:grid;grid-template-columns:1fr 1fr;gap:24px}.appointment label{display:flex;flex-direction:column}.appointment label:nth-child(3){grid-column:1/-1}.appointment input,.appointment select{height:52px;border:0;border-bottom:1px solid #9fb7b3;background:transparent;font:400 16px 'Noto Sans Thai';outline:none}.appointment .button{width:max-content}.form-note{font-size:11px;color:#8da19f}.success{grid-column:1/-1;background:#e4f4ef;color:var(--teal);padding:14px}.footer{border-top:1px solid var(--line);padding:42px 0 35px;display:grid;grid-template-columns:1fr 1fr auto;align-items:center}.footer p{color:var(--muted)}.footer>small{grid-column:1/-1;border-top:1px solid var(--line);padding-top:22px}.reveal{opacity:0;transform:translateY(18px);transition:.75s}.reveal.visible{opacity:1;transform:none}@media(max-width:900px){.header nav{display:none}.hero,.approach-grid,.contact,.section-intro{grid-template-columns:1fr}.services{grid-template-columns:1fr 1fr}.service.feature{transform:none}.step-list{grid-template-columns:1fr 1fr}.review-grid{grid-template-columns:1fr}}@media(max-width:620px){.shell{width:calc(100% - 32px)}.header{height:74px;padding:0 16px}.nav-cta{display:none}.hero{min-height:auto;padding-top:52px;gap:45px}.hero h1{font-size:48px}.hero-actions{flex-direction:column;align-items:flex-start}.hero-visual{height:440px}.availability{left:10px;bottom:20px}.care,.approach,.steps,.contact{padding:90px 0}.services,.step-list,.appointment{grid-template-columns:1fr}.service{min-height:280px;border-right:0;border-bottom:1px solid var(--line)}.step-list article{border-right:0;border-bottom:1px solid var(--line)}.appointment label:nth-child(3){grid-column:auto}.review-score>span{font-size:74px}.footer{grid-template-columns:1fr}}
