@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Manrope:wght@400;500;600&display=swap";:root{color:#1c2926;background:#f5f1e9;font-family:DM Sans,system-ui,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--ink: #1c2926;--paper: #f5f1e9;--cream: #ebe5da;--sage: #aebbad;--sage-dark: #52675f;--line: rgba(28, 41, 38, .18)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:var(--paper);color:var(--ink)}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}.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-shell{overflow:hidden}.site-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;min-height:76px;padding:0 5vw;border-bottom:1px solid var(--line);background:#f5f1e9ed;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.brand{display:inline-flex;align-items:center;gap:11px;font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.brand-mark{display:grid;width:32px;height:32px;place-items:center;border:1px solid var(--ink);border-radius:50%;font-family:Manrope,sans-serif;font-size:12px}.nav{display:flex;align-items:center;gap:30px;font-size:12px}.nav a:not(.nav-cta){opacity:.74;transition:opacity .2s ease}.nav a:not(.nav-cta):hover{opacity:1}.nav-cta{padding:12px 18px;border:1px solid var(--ink);transition:background .2s ease,color .2s ease}.nav-cta:hover{background:var(--ink);color:var(--paper)}.menu-button{display:none;border:0;background:transparent;padding:10px}.menu-button span:not(.sr-only){display:block;width:23px;height:1px;margin:5px 0;background:var(--ink)}.hero{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);min-height:calc(100vh - 76px);border-bottom:1px solid var(--line)}.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:9vw 7vw 8vw 8vw}.eyebrow{margin:0 0 24px;font-size:10px;font-weight:600;letter-spacing:.19em;text-transform:uppercase}.hero h1,.section-heading h2,.approach h2,.about h2,.contact h2{margin:0;font-family:Manrope,sans-serif;font-weight:400;letter-spacing:-.045em;line-height:.98}.hero h1{max-width:850px;font-size:clamp(50px,6.4vw,104px)}.hero-lede{max-width:620px;margin:34px 0 0;color:#1c2926bd;font-size:clamp(16px,1.35vw,20px);line-height:1.6}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:38px;flex-wrap:wrap}.button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;padding:0 22px;font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;transition:transform .2s ease,background .2s ease}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--ink);color:var(--paper)}.text-link{display:inline-flex;align-items:center;gap:10px;border-bottom:1px solid currentColor;padding-bottom:4px;font-size:12px}.hero-art{position:relative;display:flex;min-height:620px;align-items:center;justify-content:center;overflow:hidden;background:var(--sage)}.hero-art:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 70% 24%,rgba(255,255,255,.35),transparent 34%),linear-gradient(150deg,rgba(255,255,255,.08),transparent 44%)}.hero-art p{position:absolute;right:7%;bottom:7%;z-index:2;margin:0;color:#1c2926b8;font-family:Manrope,sans-serif;font-size:12px;line-height:1.35;text-align:right;text-transform:uppercase;letter-spacing:.12em}.art-orbit{position:absolute;border:1px solid rgba(28,41,38,.18);border-radius:50%}.orbit-one{width:75%;aspect-ratio:1}.orbit-two{width:46%;aspect-ratio:1}.tooth-form{position:relative;z-index:1;width:min(48%,310px);aspect-ratio:.76;border-radius:46% 46% 38% 38%/31% 31% 63% 63%;background:linear-gradient(145deg,#fffdf8,#dfddd4);box-shadow:0 30px 80px #1c292624;transform:rotate(4deg)}.tooth-form:before,.tooth-form:after{content:"";position:absolute;bottom:-17%;width:40%;height:48%;background:inherit}.tooth-form:before{left:3%;border-radius:0 0 38% 70%;transform:rotate(9deg)}.tooth-form:after{right:3%;border-radius:0 0 70% 38%;transform:rotate(-9deg)}.tooth-highlight{position:absolute;inset:9% 14% auto auto;width:22%;height:34%;border-radius:50%;background:#ffffff7a;filter:blur(8px)}.trust-strip{display:grid;grid-template-columns:repeat(4,1fr);padding:0 5vw;border-bottom:1px solid var(--line)}.trust-strip p{margin:0;padding:22px 18px;border-right:1px solid var(--line);color:#1c2926ad;font-size:10px;letter-spacing:.08em;text-align:center;text-transform:uppercase}.trust-strip p:last-child{border-right:0}.section{padding:clamp(90px,10vw,160px) 7vw}.section-heading{display:grid;grid-template-columns:1fr minmax(380px,1.45fr) 1fr;align-items:start;gap:40px;margin-bottom:70px}.section-heading h2{font-size:clamp(42px,5vw,76px)}.section-heading>p:last-child{max-width:430px;margin:4px 0 0 auto;color:#1c2926a8;font-size:14px;line-height:1.7}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-card{position:relative;min-height:360px;padding:28px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:background .25s ease}.service-card:hover{background:var(--cream)}.card-number{color:#1c292675;font-size:10px;letter-spacing:.12em}.service-card h3{margin:112px 0 18px;font-family:Manrope,sans-serif;font-size:23px;font-weight:500;letter-spacing:-.03em}.service-card p{margin:0;color:#1c2926a3;font-size:13px;line-height:1.65}.card-arrow{position:absolute;right:28px;bottom:24px;font-size:18px}.approach{display:grid;grid-template-columns:1.05fr .95fr;gap:8vw;padding:clamp(90px,10vw,150px) 8vw;background:var(--ink);color:var(--paper)}.eyebrow-light{color:#f5f1e99e}.approach h2{max-width:760px;font-size:clamp(46px,5.3vw,82px)}.approach-intro>p:last-child{max-width:570px;margin:34px 0 0;color:#f5f1e99e;line-height:1.75}.principle-list{border-top:1px solid rgba(245,241,233,.18)}.principle{display:grid;grid-template-columns:58px 1fr;gap:12px;padding:30px 0;border-bottom:1px solid rgba(245,241,233,.18)}.principle>span{color:#f5f1e96b;font-size:10px}.principle h3{margin:0 0 9px;font-family:Manrope,sans-serif;font-size:23px;font-weight:400}.principle p{margin:0;color:#f5f1e98f;font-size:13px;line-height:1.65}.about{display:grid;grid-template-columns:.9fr 1.1fr;gap:9vw;align-items:center}.about-visual{min-height:650px;display:grid;place-items:center;background:var(--cream)}.about-frame{position:relative;display:grid;width:68%;aspect-ratio:.8;place-items:center;border:1px solid rgba(28,41,38,.26)}.about-frame strong{font-family:Manrope,sans-serif;font-size:clamp(70px,9vw,140px);font-weight:400;letter-spacing:-.08em}.about-line{position:absolute;background:#1c29263b}.line-one{width:1px;height:120%;transform:rotate(28deg)}.line-two{width:130%;height:1px;transform:rotate(-18deg)}.about-dot{position:absolute;width:9px;height:9px;border-radius:50%;background:var(--ink)}.dot-one{top:14%;left:11%}.dot-two{right:13%;bottom:19%}.about-copy h2{max-width:700px;font-size:clamp(44px,5vw,74px)}.about-copy>p:not(.eyebrow){max-width:620px;color:#1c2926a8;font-size:15px;line-height:1.78}.about-copy>p:nth-of-type(2){margin-top:30px}.about-stat{display:grid;grid-template-columns:140px 1fr;gap:20px;max-width:540px;margin-top:44px;padding-top:22px;border-top:1px solid var(--line)}.about-stat strong{font-size:13px}.about-stat span{color:#1c292694;font-size:12px;line-height:1.55}.contact{padding:clamp(90px,11vw,170px) 8vw;border-top:1px solid var(--line);text-align:center}.contact h2{max-width:900px;margin:0 auto;font-size:clamp(50px,7vw,108px)}.contact>p:not(.eyebrow){max-width:580px;margin:30px auto 0;color:#1c29269e;font-size:15px;line-height:1.7}.contact-actions{display:flex;justify-content:center;align-items:center;gap:28px;flex-wrap:wrap;margin-top:38px}.button-dark{background:var(--sage-dark);color:#fff}.text-link-dark{color:var(--ink)}.contact small{display:block;margin-top:25px;color:#1c292670;font-size:10px}.site-footer{display:grid;grid-template-columns:1fr auto;gap:60px;padding:55px 6vw 34px;background:#d8d3c8}.footer-brand{margin:0 0 8px;font-family:Manrope,sans-serif;font-size:20px}.site-footer>div:first-child>p:last-child{margin:0;color:#1c292694;font-size:12px}.footer-links{display:flex;gap:24px;align-items:start;font-size:11px}.footer-meta{grid-column:1 / -1;margin:30px 0 0;padding-top:20px;border-top:1px solid rgba(28,41,38,.16);color:#1c29267a;font-size:10px}@media(max-width:1000px){.hero{grid-template-columns:1fr}.hero-copy{min-height:72vh;padding:12vw 8vw}.hero-art{min-height:540px}.section-heading{grid-template-columns:1fr}.section-heading>p:last-child{margin-left:0}.service-grid{grid-template-columns:repeat(2,1fr)}.approach,.about{grid-template-columns:1fr}.about-visual{min-height:520px}}@media(max-width:720px){.site-header{min-height:68px;padding:0 20px}.menu-button{display:block}.nav{position:absolute;top:68px;left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:0;padding:12px 20px 22px;border-bottom:1px solid var(--line);background:var(--paper)}.nav-open{display:flex}.nav a{padding:15px 0;border-bottom:1px solid var(--line)}.nav .nav-cta{margin-top:10px;padding:14px 16px;border:1px solid var(--ink);text-align:center}.hero{min-height:auto}.hero-copy{min-height:610px;padding:72px 22px 68px}.hero h1{font-size:clamp(48px,15vw,72px)}.hero-lede{margin-top:26px}.hero-art{min-height:480px}.trust-strip{grid-template-columns:repeat(2,1fr);padding:0}.trust-strip p{border-bottom:1px solid var(--line)}.section{padding:88px 22px}.section-heading{gap:22px;margin-bottom:45px}.service-grid{grid-template-columns:1fr}.service-card{min-height:300px}.service-card h3{margin-top:82px}.approach{padding:88px 22px;gap:64px}.about{gap:60px}.about-visual{min-height:440px}.about-copy{padding-bottom:10px}.about-stat{grid-template-columns:1fr;gap:8px}.contact{padding:95px 22px}.site-footer{grid-template-columns:1fr;gap:34px;padding:48px 22px 28px}.footer-links{flex-wrap:wrap}.footer-meta{margin-top:5px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
