@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Lora:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap');
:root{--forest:#163b2b;--deep:#102c21;--moss:#526d44;--sage:#b7ca98;--cream:#f8f7ed;--paper:#fffef8;--gold:#d9bf7a;--ink:#203c2d;--muted:#596855;--line:#d9dfcd;font-family:'DM Sans',sans-serif;color:var(--ink);background:var(--cream);font-synthesis:none;scroll-behavior:smooth;scroll-padding-top:6rem}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit}img{max-width:100%;display:block}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #c0a757;outline-offset:4px}button:disabled{cursor:default}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Lora',Georgia,serif;font-weight:500}p{line-height:1.75}h2{font-size:clamp(2rem,3.4vw,3.3rem);line-height:1.18;letter-spacing:-.045em;margin-bottom:1.2rem}h3{letter-spacing:-.025em}section{scroll-margin-top:5rem}[hidden]{display:none!important}.skip{position:absolute;top:-100px;left:10px;z-index:10;padding:12px;background:white}.skip:focus{top:10px}.section-wrap{max-width:1190px;margin-inline:auto;padding-inline:32px}.eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.16em;color:var(--moss);margin-bottom:1.4rem}.site-header{min-height:85px;padding:18px 4.5%;display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--paper);border-bottom:1px solid var(--line)}.brand{text-decoration:none;display:flex;align-items:center;gap:10px;font-family:'Lora',Georgia,serif;font-weight:600;font-size:1.6rem;letter-spacing:-.06em}.brand-mark{font-size:2rem;color:var(--moss);line-height:1}.site-header nav{display:flex;gap:28px}.site-header nav a{font-size:.9rem;text-decoration:none;font-weight:500;padding-block:12px}.site-header nav a:hover{text-decoration:underline;text-underline-offset:6px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:16px 24px;border:0;border-radius:12px;text-decoration:none;font-weight:700;font-size:.95rem;color:var(--cream);background:var(--forest);transition:background .15s}.button:hover{background:#2e5139}.button.small{min-height:45px;padding:11px 20px}.button.full,.mini-button.full{width:100%}.text-link{font-weight:600;text-underline-offset:5px;line-height:1.8}.hero{position:relative;min-height:620px;overflow:hidden;background:#e6e6c5;isolation:isolate}.hero-art{position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(249,248,231,.97) 0%,rgba(249,248,231,.85) 34%,rgba(249,248,231,.12) 72%),url('assets/today-art.jpg');background-size:cover;background-position:center;z-index:-1}.hero-content{max-width:1230px;margin:auto;padding:92px 52px 94px}.hero h1{font-size:clamp(3.5rem,6.4vw,6rem);line-height:1.07;letter-spacing:-.055em;max-width:700px;margin-bottom:25px}.hero h1 em{font-weight:400;color:var(--moss)}.hero-copy{max-width:465px;font-size:1.12rem;line-height:1.7}.hero-actions{display:flex;align-items:center;gap:25px;margin-top:30px;flex-wrap:wrap}.download-meta{font-size:.8rem;margin-top:16px;color:#485641}.hero-note{position:absolute;right:5%;bottom:38px;display:flex;align-items:center;gap:15px;border:1px solid #f5f4da99;border-radius:16px;background:#fbf9eadd;padding:16px 24px;box-shadow:0 6px 30px #1836240d}.hero-note span{font-size:2.2rem;color:var(--moss)}.hero-note p{font-size:.9rem;line-height:1.6;margin:0}.promise-strip{display:flex;justify-content:center;gap:65px;padding:21px 24px;color:#e6edcf;background:var(--forest);font-size:.85rem}.promise-strip span+span{border-left:1px solid #b5c99b55;padding-left:65px}.section-intro{max-width:710px;margin-bottom:48px}.section-intro p:not(.eyebrow){color:var(--muted);max-width:590px;font-size:1rem}.explore{padding-top:98px;padding-bottom:80px}.explore-layout{display:grid;grid-template-columns:1.1fr 350px .65fr;gap:38px;align-items:center}.demo-choices{display:flex;flex-direction:column;gap:12px;align-self:start;padding-top:40px}.demo-choice{border:1px solid transparent;border-radius:18px;background:transparent;text-align:left;padding:20px 14px;display:flex;align-items:center;gap:16px;color:var(--ink);min-height:100px;width:100%}.demo-choice.active{background:#e9eedb;border-color:#c7d2b2}.demo-choice:hover{background:#edf0e3}.demo-choice img{width:32px;height:32px}.demo-choice strong{display:block;font-size:1rem;line-height:1.4;font-weight:600}.demo-choice small{display:block;color:var(--muted);font-size:.85rem;margin-top:8px;line-height:1.5}.choice-number{font-size:.75rem;color:var(--moss);align-self:start;margin-left:auto;padding-top:2px}.tooth-icon{width:32px;font-size:2rem;color:var(--moss)}.demo-footnote{font-size:.9rem;color:var(--muted);margin:24px 14px}.phone-shell{background:var(--deep);color:#eef0df;border:7px solid #274434;box-shadow:0 26px 60px #173b281f;border-radius:42px;min-height:630px;overflow:hidden}.phone-top{padding:22px 17px 14px;display:flex;align-items:center;gap:10px}.avatar{width:40px;height:40px;background:#31553e;color:#d9e6c1;display:grid;place-items:center;border-radius:50%;font-weight:700}.phone-top strong{font-size:.95rem;display:block}.phone-top small{font-size:.75rem;color:#bacaa4;display:block;margin-top:4px}.sample-pill{margin-left:auto;font-size:.65rem;letter-spacing:.08em;border:1px solid #82976580;padding:6px;border-radius:6px;color:#d4dcbb}.demo-panel{padding:12px 17px 20px;min-height:520px}.mini-heading h3{font-size:1.3rem;margin-bottom:6px}.mini-heading p{font-size:.8rem;color:#becbae;margin-bottom:12px}.tree-frame{position:relative;height:215px;background:radial-gradient(ellipse,#29493399,transparent 70%);overflow:hidden}.tree-branches{width:100%;height:100%}.tree-branches path{fill:none;stroke:#928964;stroke-width:7;stroke-linecap:round}.tree-leaf{position:absolute;transform:translate(-50%,-50%);border:0;background:#b7ca98;width:38px;height:32px;border-radius:7px 22px 7px 22px;display:grid;place-items:center;color:#27452d;font-size:1.15rem;box-shadow:0 2px 8px #001b1140;min-width:38px}.tree-leaf:nth-child(2n){background:#d6ba78;border-radius:22px 7px 22px 7px}.tree-leaf:nth-child(3n){background:#c6aab3}.tree-leaf.selected{outline:2px solid #f6eccb;outline-offset:4px}.memory-detail{background:#234333;border-radius:15px;padding:15px;margin-bottom:16px}.memory-detail span{font-size:.65rem;letter-spacing:.1em;color:#d7c17f;display:block;margin-bottom:7px}.memory-detail strong{font-family:'Lora',serif;font-size:1.1rem;display:block;line-height:1.4}.memory-detail p{font-size:.8rem;color:#c1ccaf;margin:7px 0 0;line-height:1.6}.mini-form label{display:block;font-size:.8rem;color:#d6ddc6;margin-bottom:8px}.mini-form input{background:#254234;border:1px solid #607253;border-radius:10px;color:#fff8e9;padding:11px;min-width:0;min-height:46px;width:100%}.mini-form input::placeholder{color:#bac7ae}.inline-field{display:flex;gap:8px}.mini-button{min-height:46px;padding:10px 14px;border:0;border-radius:10px;background:#b8d29b;color:#203b29;font-weight:700;font-size:.8rem;white-space:nowrap}.mini-button:hover{background:#d1e2b9}.reset-link{border:0;background:transparent;color:inherit;text-decoration:underline;text-underline-offset:4px;min-height:40px;padding:10px 0;font-size:.75rem}.phone-bottom{padding:14px 18px 19px;display:flex;justify-content:space-between;color:#c7d1b9;border-top:1px solid #68805566;font-size:.7rem}.phone-bottom .current{color:#d5c181;font-weight:700}.demo-aside{padding-top:30px}.aside-kicker{font-family:'Lora',serif;color:var(--moss);font-size:1.55rem;line-height:1.4}.demo-aside p{font-size:.9rem;color:var(--muted);margin-top:24px}.aside-line{display:block;width:50px;height:1px;background:#bcc7a4}.demo-aside p.aside-small{font-size:.8rem}.demo-message{font-size:.9rem;min-height:30px;margin-top:24px;color:var(--moss)}.segmented{display:flex;background:#244435;border-radius:12px;padding:4px;margin:16px 0}.segmented button{flex:1;background:transparent;border:0;color:#d0dbbf;min-height:42px;border-radius:8px;font-size:.8rem}.segmented button.selected{background:#bdd2a1;color:#183b28}.feed-form{padding:12px 0}.amount-field{position:relative}.amount-field input{font-size:2.5rem;font-weight:500;padding:16px 50px 16px 18px}.amount-field span{position:absolute;right:15px;top:30px;font-size:.9rem;color:#c7d4b5}.unit-line{display:flex;justify-content:space-between;align-items:center;font-size:.8rem;color:#c4d1b7}.feeding-summary{display:flex;gap:25px;background:#244335;padding:18px;border-radius:14px;margin-top:18px}.feeding-summary strong,.feeding-summary small{display:block}.feeding-summary strong{font-family:'Lora',serif;font-size:1.5rem}.feeding-summary small{font-size:.65rem;margin-top:6px;color:#bfceb0;line-height:1.6}.demo-panel h4{font-size:.8rem;margin:20px 0 10px}.feed-history{list-style:none;padding:0;margin:0}.feed-history li{padding:10px 0;border-bottom:1px solid #75865e55;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:.8rem}.feed-history small{color:#c3cead;font-size:.75rem}.teeth-summary{font-size:.75rem;padding:10px;background:#284837;border-radius:9px}.mouth{height:210px;position:relative;margin:15px 0}.arch{position:absolute;inset:0}.tooth{position:absolute;width:30px;height:34px;border:1px solid #8c9c84;border-radius:11px 11px 14px 14px;background:#61715c;color:white;font-size:.7rem;touch-action:pan-y;user-select:none}.tooth.observed{background:#d4bc78;color:#263b23}.tooth.erupted{background:#b6ce92;color:#173b28}.tooth.selected{outline:2px solid #f9eabf;outline-offset:3px}.mouth-label{position:absolute;inset:80px 0 auto;text-align:center;font-size:.65rem;letter-spacing:.07em;pointer-events:none}.mouth-label span{display:block;margin:5px 0;font-size:.75rem;color:#bdcbae;letter-spacing:0}.tooth-detail{background:#254535;padding:13px;border-radius:13px}.tooth-detail strong{font-size:.8rem;display:block;line-height:1.5}.tooth-detail p{font-size:.8rem;margin:6px 0;color:#d0dcb9}.tooth-detail label{display:block;font-size:.7rem;color:#c5d2b6;margin-bottom:7px;line-height:1.5}.tooth-detail select{background:#173527;color:#edf2df;border:1px solid #718561;border-radius:8px;width:100%;padding:9px;font-size:.8rem;margin-bottom:8px;min-height:40px}.tooth-detail select:disabled{opacity:.65}.tiny-note{font-size:.7rem;margin:12px 0 0;color:#c7d1b8;line-height:1.6}.chapters{background:#e8ecdc;padding:76px 0}.chapters .section-intro{margin-bottom:30px}.stage-choices{display:flex;flex-wrap:wrap;gap:10px}.stage-choices button{border:1px solid #adbca0;border-radius:99px;background:transparent;color:var(--ink);padding:12px 22px;font-size:.9rem;min-height:45px}.stage-choices button.selected{background:var(--forest);border-color:var(--forest);color:var(--cream)}.stage-story{margin-top:35px;max-width:700px}.stage-story>span{font-size:.7rem;letter-spacing:.12em;color:var(--moss)}.stage-story h3{font-size:1.8rem;line-height:1.3;margin:12px 0}.stage-story p{color:var(--muted);max-width:620px}.stage-story div{display:flex;gap:9px;flex-wrap:wrap}.stage-story div span{font-size:.8rem;padding:8px 12px;background:#ffffff80;border-radius:6px}.features{padding-top:90px;padding-bottom:80px}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.feature-grid article{border-top:1px solid #b5c2a4;overflow:hidden;padding-top:20px}.feature-grid img{width:100%;height:160px;object-fit:cover;border-radius:14px}.feature-grid article>div{padding-top:23px}.feature-number{font-size:.7rem;color:var(--moss);letter-spacing:.1em}.feature-grid h3{font-size:1.6rem;margin:12px 0;line-height:1.3}.feature-grid p{font-size:.9rem;color:var(--muted)}.care-gallery{padding-bottom:100px}.screenshots{display:flex;gap:45px;justify-content:center}.screenshots figure{margin:0;width:220px}.screenshots img{border:6px solid #294734;border-radius:25px;box-shadow:0 12px 25px #163b2810;width:100%;height:auto}.screenshots figcaption{font-family:'Lora',serif;font-size:1rem;line-height:1.5;text-align:center;margin-top:20px}.requests{padding-block:80px;display:grid;grid-template-columns:1fr 1fr;gap:100px;border-top:1px solid var(--line)}.request-copy p{color:var(--muted)}.request-copy h2{max-width:400px}.request-copy .request-note{font-size:.85rem;margin-top:28px}.request-form{background:#eff1e5;border:1px solid var(--line);border-radius:22px;padding:30px}.request-form label{display:block;font-size:.9rem;margin-bottom:8px;font-weight:600}.request-form input,.request-form select,.request-form textarea{background:var(--paper);border:1px solid #b8c3a9;border-radius:10px;padding:13px;color:var(--ink);width:100%;margin-bottom:20px;min-height:48px;font-size:.95rem}.request-form textarea{resize:vertical}.form-note,#request-feedback{font-size:.8rem;color:var(--muted);line-height:1.6;margin:15px 0 0}.download-section{background:var(--forest);max-width:1126px;border-radius:24px;color:var(--cream);padding:45px;display:grid;grid-template-columns:1.2fr 1fr;gap:35px;margin-top:25px}.download-section .eyebrow{color:#c1d6a3;font-size:.65rem}.download-section h2{font-size:2.4rem;max-width:470px}.download-section p{color:#d4dfc4;font-size:.95rem;margin-bottom:0}.download-box{align-self:center;text-align:center}.download-box .button{background:#c2d4a2;color:#183b29}.download-box p{font-size:.8rem;margin:14px 0}.download-box>a:not(.button){font-size:.8rem;text-underline-offset:4px}.release-details{padding-block:30px 65px}.release-details details{max-width:950px;margin:auto}.release-details summary{font-size:.9rem;padding:15px 0;cursor:pointer;color:var(--muted)}.release-details details p,.release-details details a{font-size:.85rem;color:var(--muted)}footer{padding-block:35px;display:flex;align-items:center;gap:35px;justify-content:space-between;border-top:1px solid var(--line)}footer p{font-size:.8rem;color:var(--muted);margin:0}footer>a:last-child{font-size:.8rem}.noscript{padding:20px;text-align:center}
@media(min-width:1500px){.hero-art{background-position:center 44%}.hero{min-height:680px}.hero-content{padding-top:110px}}
@media(max-width:1050px){.explore-layout{grid-template-columns:1fr 350px;gap:35px}.demo-aside{display:none}.feature-grid{grid-template-columns:repeat(2,1fr);gap:35px}.feature-grid img{height:220px}.requests{gap:45px}.hero-note{display:none}.promise-strip{gap:30px}.promise-strip span+span{padding-left:30px}.download-section{margin-inline:32px}.site-header nav{gap:15px}}
@media(max-width:720px){.section-wrap{padding-inline:22px}.site-header{padding:15px 22px;min-height:76px;gap:12px}.brand{font-size:1.35rem}.site-header nav{display:none}.button.small{padding:10px 14px;font-size:.8rem}.hero{min-height:660px}.hero-content{padding:65px 25px 70px}.hero-art{background-image:linear-gradient(180deg,#f9f8e8f5 0%,#f9f8e8e6 42%,#f9f8e84d 100%),url('assets/today-art.jpg');background-position:center}.hero h1{font-size:3.5rem}.hero-copy{max-width:340px;font-size:1rem}.hero-actions{gap:18px;flex-direction:column;align-items:start}.promise-strip{gap:15px;font-size:.7rem;line-height:1.5;text-align:center;padding:20px 15px}.promise-strip span+span{padding-left:15px}.explore{padding-top:65px;padding-bottom:60px}.section-intro{margin-bottom:25px}.explore-layout{display:flex;flex-direction:column;gap:25px}.demo-choices{padding:0;width:100%;gap:8px}.demo-choice{padding:14px 12px;min-height:76px}.demo-choice small{margin-top:4px}.demo-footnote{display:none}.phone-shell{width:min(100%,350px);flex-shrink:0}.chapters{padding:55px 0}.stage-choices{gap:8px}.stage-choices button{padding:10px 14px;font-size:.85rem}.features{padding-top:65px;padding-bottom:35px}.feature-grid{gap:24px 18px}.feature-grid img{height:130px}.feature-grid h3{font-size:1.35rem}.feature-grid p{font-size:.85rem}.care-gallery{padding-bottom:65px}.screenshots{gap:18px;overflow-x:auto;justify-content:start;padding:10px 4px 20px;scroll-snap-type:x proximity}.screenshots figure{width:200px;flex-shrink:0;scroll-snap-align:start}.requests{grid-template-columns:1fr;padding-block:55px;gap:30px}.request-copy h2{max-width:unset}.request-form{padding:23px}.download-section{grid-template-columns:1fr;margin-inline:22px;padding:30px 24px;gap:25px}.download-section h2{font-size:2rem}.download-box{text-align:left}.release-details{padding-bottom:40px}footer{flex-wrap:wrap;gap:18px;padding-block:30px}footer p{width:100%;order:3}.eyebrow{font-size:.7rem}h2{font-size:2rem}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*{transition:none!important}}
.mini-button,.mini-form label,.segmented button,.feed-history li,.tooth-detail strong,.tooth-detail p,.tooth-detail select{font-size:.875rem}.tooth-detail label,.tiny-note{font-size:.75rem}.reset-link{font-size:.8rem}


/* Only individual teeth receive gestures; overlapping arch containers do not. */
.arch{pointer-events:none}.arch .tooth{pointer-events:auto}
