/* Original OdonClinic concept. No third-party template assets or runtime. */
:root{color-scheme:light;--ink:#34222d;--muted:#76666d;--rose:#cc6286;--berry:#512b3b;--cream:#fbf8f4;--paper:#fffefa;--border:#e8ddd9;--radius:24px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:100px}
body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}a:hover{text-decoration:none}
a:focus-visible{outline:3px solid var(--rose);outline-offset:4px}
button:focus-visible{outline:3px solid var(--rose);outline-offset:4px}
::selection{background:#f7c7d9;color:#241923}
h1,h2,h3,p{margin-top:0}
h1,h2{font-weight:500;letter-spacing:-.062em;line-height:1.08}
h1 em,h2 em{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.075em}
.container{width:min(1240px,calc(100% - 88px));margin-inline:auto}
.skip{position:absolute;top:-70px;left:12px;z-index:100;background:#fff;padding:12px}.skip:focus{top:12px}
.proposal{min-height:35px;padding:7px 20px;text-align:center;letter-spacing:.12em;font-size:10px;font-weight:700;text-transform:uppercase;background:#34222d;color:#fff}
.header{background:var(--cream);border-bottom:1px solid #34222d10}
.header-row{height:92px;display:flex;align-items:center;gap:32px}
.brand{font-size:27px;letter-spacing:-.075em;font-weight:800;line-height:1;display:inline-flex;align-items:center;white-space:nowrap;gap:9px}
.brand-mark{width:34px;height:34px;border-radius:12px 12px 18px 18px;background:var(--rose);display:grid;place-items:center;color:#fff;font-size:22px;font-weight:400;letter-spacing:0;transform:rotate(-8deg)}
.brand-accent{color:var(--rose)}
.nav{display:flex;align-items:center;gap:34px;margin-inline:auto}
.nav a{font-size:13px;font-weight:650;color:#5c4a53;transition:color .2s}
.nav a:hover,.text-link:hover{color:var(--rose)}
.header-cta{font-size:13px;font-weight:700;background:var(--berry);color:#fff;border-radius:99px;padding:12px 22px;white-space:nowrap}
.header-cta span{margin-left:17px}
.header-cta:hover,.button-primary:hover{background:#6f3b52}
.hero{display:grid;grid-template-columns:1fr .97fr;gap:min(7vw,88px);align-items:center;min-height:690px;padding-block:66px 85px}
.hero-copy{max-width:610px}
.eyebrow{display:flex;align-items:center;gap:10px;letter-spacing:.20em;font-size:11px;font-weight:750;line-height:1.5;margin:0 0 30px;color:#a15c73}
.eyebrow-dot{width:8px;height:8px;border-radius:50%;background:var(--rose)}
h1{font-size:clamp(58px,6.1vw,95px);max-width:670px;margin-bottom:26px}
h1 em{display:block;color:var(--rose)}
.hero-lead{max-width:460px;color:#6e6065;font-size:17px;line-height:1.8;margin-bottom:32px}
.actions{display:flex;align-items:center;flex-wrap:wrap;gap:28px}
.button{border-radius:100px;display:inline-flex;align-items:center;gap:28px;justify-content:space-between;min-height:54px;padding:14px 25px;font-size:13px;font-weight:750;line-height:1.2;transition:transform .2s,background .2s}
.button:hover{transform:translateY(-2px)}
.button-primary{background:var(--berry);color:#fff}
.text-link{font-weight:700;font-size:13px;border-bottom:1px solid currentColor;padding-block:7px;display:inline-flex;gap:20px;align-items:center}
.microcopy{font-size:11px;color:#8a7a7f;line-height:1.5;max-width:460px;margin:26px 0 0}
.hero-art{height:560px;position:relative;overflow:hidden;border-radius:180px 180px 32px 32px;background:linear-gradient(145deg,#f3c9d3,#de9aae 58%,#c47c96);isolation:isolate}
.hero-art:before{content:"";position:absolute;inset:11% 13% 18%;border-radius:50%;border:1px solid #fff9;transform:rotate(-22deg)}
.orb{position:absolute;border-radius:50%;border:1px solid #fffc}
.orb-a{width:280px;height:280px;top:-130px;right:-100px}
.orb-b{width:400px;height:400px;bottom:-230px;left:-165px;border-width:45px;border-color:#ffffff2e}
.smile-art{position:absolute;width:80%;height:80%;inset:10%;filter:drop-shadow(0 35px 35px #74374b32);transform:rotate(-6deg)}
.floating-tag{position:absolute;bottom:34px;left:29px;background:#fffdfa;color:#4b303d;border-radius:40px;padding:13px 18px;font-size:13px;font-weight:700;box-shadow:0 14px 40px #7f35442d;display:flex;align-items:center;gap:12px}
.tag-star{display:grid;place-items:center;background:#f4dce3;color:var(--berry);width:30px;height:30px;border-radius:50%;font-size:20px}
.vertical-label{position:absolute;right:13px;top:38%;writing-mode:vertical-rl;color:#fff;letter-spacing:.25em;font-size:9px}
.intro-band{background:#f0e7e2}
.intro-inner{min-height:192px;display:flex;align-items:center;gap:48px}
.intro-index{font-size:10px;letter-spacing:.20em;font-weight:800;color:#a16978;min-width:180px}
.intro-inner p{font-family:Georgia,serif;font-size:clamp(24px,2.8vw,40px);line-height:1.27;letter-spacing:-.04em;max-width:710px;margin:0}
.intro-inner strong{color:#a64e6d;font-style:italic;font-weight:400}
.intro-spark{margin-left:auto;font-size:76px;color:var(--rose);line-height:1}
.section{padding-block:123px 132px}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:70px;margin-bottom:48px}
.section-heading .eyebrow{margin-bottom:20px}
h2{font-size:clamp(44px,5vw,70px);max-width:710px;margin-bottom:0}
.section-heading h2 em{color:var(--rose)}
.section-heading>p{max-width:290px;line-height:1.8;font-size:14px;color:var(--muted);margin-bottom:3px}
.services{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}
.service{min-height:332px;border:1px solid var(--border);border-radius:var(--radius);background:var(--paper);padding:24px;display:flex;flex-direction:column;transition:transform .25s,border-color .25s}
.service:hover{transform:translateY(-4px);border-color:#d2abb9}
.service-number{font-size:11px;font-weight:700;letter-spacing:.12em;color:#b293a0}
.service-symbol{height:96px;display:flex;align-items:center;color:var(--rose);font:82px/1 Georgia,serif;margin-bottom:7px}
.service h3{font-size:22px;font-weight:650;letter-spacing:-.04em;margin-bottom:9px}
.service p{font-size:13px;color:var(--muted);line-height:1.75;margin-bottom:16px}
.service a{margin-top:auto;color:#ac5572;font-size:12px;font-weight:750;border-top:1px solid #efe5e3;padding-top:15px;display:flex;justify-content:space-between;align-items:center}
.about{background:#f3eae6}
.about-grid{display:grid;grid-template-columns:.92fr 1fr;gap:clamp(60px,9vw,140px);align-items:center;padding-block:90px}
.about-graphic{height:480px;background:#532c3d;color:#fff3ed;border-radius:24px;position:relative;overflow:hidden;display:flex;align-items:center;padding:65px}
.about-graphic:before{content:"";position:absolute;inset:14px;border:1px solid #ffffff30;border-radius:16px}
.about-graphic-text{font-size:clamp(73px,8vw,115px);font-weight:800;line-height:.89;letter-spacing:-.11em;position:relative;z-index:2}
.about-graphic-text i{font-family:Georgia,serif;color:#ef98b4;font-weight:400}
.about-circle{position:absolute;width:380px;height:380px;border-radius:50%;border:75px solid #e08aa82e;bottom:-180px;right:-150px}
.about-index{position:absolute;right:36px;top:34px;font-size:10px;letter-spacing:.20em;color:#ffffffaa}
.about-content .eyebrow{margin-bottom:25px}
.about-content h2{margin-bottom:30px}
.about-content h2 em{color:#bf6a87}
.about-content p:not(.eyebrow){color:#786972;line-height:1.9;font-size:15px;max-width:470px}
.about-content .text-link{margin-top:15px}
.contact{padding-block:105px 112px}
.contact-card{background:#422435;border-radius:32px;display:grid;grid-template-columns:1.35fr .65fr;color:#fff;min-height:420px;overflow:hidden}
.contact-copy{padding:clamp(42px,6vw,75px)}
.eyebrow.light{color:#f9a6c0}
.contact h2{font-size:clamp(47px,5vw,72px);max-width:650px;margin-bottom:27px}
.contact h2 em{color:#ed9db8}
.contact-copy>p:not(.eyebrow){max-width:490px;color:#f0dce4;font-size:15px;line-height:1.8}
.button-light{background:#fff5f0;color:#4d2636;margin-top:15px}
.button-light:hover{background:#f6d6e3}
.contact-note{font-size:11px!important;margin-top:20px;opacity:.8}
.contact-art{position:relative;display:grid;place-items:center;overflow:hidden}
.contact-art span{font-size:280px;line-height:1;color:#e18ea8;position:relative;z-index:2;font-weight:300;transform:rotate(-15deg)}
.contact-arc{position:absolute;width:490px;height:490px;border-radius:50%;border:60px solid #ffffff12;top:-65px;left:0}
.footer{border-top:1px solid var(--border);background:#fffdfa}
.footer-inner{min-height:230px;padding-block:54px;display:flex;align-items:start;justify-content:space-between;gap:40px}
.footer .brand{font-size:24px}
.footer p{font-size:12px;color:#88777e;margin:20px 0 0}
.footer nav{display:flex;gap:30px;margin-top:13px}
.footer nav a{font-size:12px;font-weight:650}
.footer-inner>span{font-size:10px;color:#a18e96;letter-spacing:.16em;margin-top:15px}
@media(max-width:1024px){.container{width:min(100% - 52px,1240px)}.hero{gap:35px;min-height:0}.hero-art{height:490px}.services{grid-template-columns:repeat(2,1fr)}.about-grid{gap:55px}.about-graphic{height:390px;padding:35px}.footer-inner{flex-wrap:wrap}}
@media(max-width:680px){html{scroll-padding-top:35px}.container{width:calc(100% - 36px)}.proposal{font-size:9px;padding-inline:12px}.header-row{height:auto;min-height:83px;gap:15px;justify-content:space-between;flex-wrap:wrap;padding-block:16px}.brand{font-size:24px}.brand-mark{width:29px;height:29px;font-size:18px}.header-cta{font-size:12px;padding:10px 15px}.header-cta span{margin-left:7px}.nav{order:3;width:100%;justify-content:space-between;gap:8px;margin:0}.nav a{font-size:12px}.hero{grid-template-columns:1fr;gap:46px;padding-block:60px 62px}.hero-copy{max-width:100%}h1{font-size:clamp(54px,12vw,78px)}.hero-lead{font-size:16px}.hero-art{height:440px;max-width:500px;width:100%;margin:auto}.intro-inner{padding-block:40px;min-height:auto;display:block}.intro-index{display:block;margin-bottom:18px}.intro-spark{display:none}.section{padding-block:72px 83px}.section-heading{display:block;margin-bottom:32px}.section-heading>p{margin-top:23px;max-width:460px}.services{gap:12px}.service{padding:21px;min-height:310px}.service-symbol{height:72px;font-size:60px}.service h3{font-size:20px}.about-grid{grid-template-columns:1fr;gap:50px;padding-block:68px}.about-graphic{height:350px}.about-graphic-text{font-size:92px}.contact{padding-block:72px 78px}.contact-card{grid-template-columns:1fr}.contact-copy{padding:45px 30px}.contact-art{display:none}.footer-inner{display:block;padding-block:43px}.footer nav{margin-top:27px;flex-wrap:wrap;gap:15px 26px}.footer-inner>span{display:block;margin-top:33px}}
@media(max-width:390px){.services{grid-template-columns:1fr}.service{min-height:260px}.actions{gap:17px}.button{padding-inline:20px}.hero-art{height:365px}.about-graphic-text{font-size:73px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}