:root{color-scheme:light;--ink:#302c35;--muted:#665b65;--rose:#a94b69;--rose-dark:#79354f;--blush:#fff7f7;--petal:#f9e4ea;--line:#e9d5db;--mint:#dff2eb;--white:#fff;--display:Georgia,'Times New Roman',serif;--body:'Avenir Next',Avenir,'Segoe UI',system-ui,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--blush);color:var(--ink);font:400 1.0625rem/1.65 var(--body);-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto}
a{color:var(--rose-dark);text-underline-offset:.2em}
a:hover{text-decoration-thickness:2px}
a:focus-visible,summary:focus-visible{outline:3px solid var(--rose);outline-offset:4px;border-radius:4px}
::selection{background:#f0bdcc;color:var(--ink)}
.wrap{width:min(100% - 3rem,1180px);margin-inline:auto}
.skip-link{position:absolute;inset-block-start:-10rem;inset-inline-start:1rem;background:var(--ink);color:var(--white);z-index:10;padding:.6rem 1rem}
.skip-link:focus{inset-block-start:1rem}
.site-header{position:relative;z-index:2;border-bottom:1px solid var(--line);background:rgba(255,247,247,.97)}
.header-inner{min-height:86px;display:flex;align-items:center;gap:2rem}
.brand{display:inline-flex;align-items:center;gap:.7rem;text-decoration:none;color:var(--ink);white-space:nowrap;font-size:1.45rem;font-weight:700;letter-spacing:-.045em}
.brand img{border-radius:12px}
.site-header nav{display:flex;align-items:center;gap:1.5rem;margin-inline-start:auto}
.site-header nav a{text-decoration:none;color:var(--muted);font-size:.9rem;font-weight:600;white-space:nowrap}
.site-header nav a[aria-current=page],.site-header nav a:hover{color:var(--rose-dark)}
.language{position:relative;min-width:8.2rem}
.language summary{cursor:pointer;list-style:none;border:1px solid var(--line);background:var(--white);border-radius:999px;padding:.45rem .8rem;font-size:.85rem;font-weight:600;display:flex;justify-content:space-between;gap:.5rem;white-space:nowrap}
.language summary::-webkit-details-marker{display:none}
.language-list{position:absolute;inset-block-start:calc(100% + .45rem);inset-inline-end:0;min-width:11rem;background:var(--white);border:1px solid var(--line);border-radius:12px;padding:.35rem;box-shadow:0 16px 34px rgba(48,44,53,.12);max-height:60vh;overflow:auto}
.language-list a{display:block;padding:.35rem .55rem;border-radius:6px;color:var(--ink);text-decoration:none;font-size:.88rem}
.language-list a:hover,.language-list a[aria-current=page]{background:var(--petal)}
.hero{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr);align-items:center;gap:2rem;min-height:650px;padding-block:4.5rem 4rem}
.hero-copy{padding-block:2rem;max-width:650px}
.eyebrow{color:var(--rose);font-weight:700;font-size:.94rem;letter-spacing:.02em;margin:0 0 1.1rem}
h1,h2,h3,p{margin-block-start:0}
h1,h2{font-family:var(--display);font-weight:500;letter-spacing:-.048em}
h1{font-size:clamp(3.4rem,6vw,6.1rem);line-height:1.035;margin-block-end:1.5rem;max-width:11ch}
.lead{font-size:clamp(1.13rem,1.5vw,1.32rem);line-height:1.62;color:var(--muted);max-width:36rem}
.hero-actions{display:flex;align-items:center;gap:1.6rem;flex-wrap:wrap;margin-top:2.3rem}
.availability{display:inline-flex;align-items:center;min-height:3.2rem;background:var(--rose-dark);color:white;border-radius:999px;padding:.68rem 1.25rem;font-size:.93rem;font-weight:650}
.text-link{font-weight:700;text-decoration:none;font-size:.95rem}
.text-link span{font-size:1.2rem;margin-inline-start:.3rem}
.hero-art{height:580px;display:flex;align-items:center;justify-content:center;position:relative;isolation:isolate}
.hero-art:before{content:'';position:absolute;width:min(100%,520px);aspect-ratio:1;background:#f6dbe4;border-radius:51% 49% 45% 55%;transform:rotate(-14deg);z-index:-2}
.hero-art:after{content:'';position:absolute;bottom:3.5%;width:68%;height:18px;background:rgba(121,53,79,.16);filter:blur(16px);border-radius:50%;z-index:-1}
.orbit{position:absolute;border:1px solid rgba(169,75,105,.36);border-radius:50%;pointer-events:none;z-index:-1}
.orbit-one{width:96%;height:76%;transform:rotate(28deg)}
.orbit-two{width:85%;height:91%;transform:rotate(-26deg)}
.app-screen{height:min(100%,555px);width:auto;border:7px solid #28262b;border-radius:38px;box-shadow:0 26px 60px rgba(87,51,62,.25);background:white;object-fit:cover}
.features{padding-block:5.5rem 6.2rem}
.section-heading{display:flex;align-items:center;gap:1rem;border-bottom:1px solid var(--line);padding-block-end:1.5rem;margin-block-end:2rem}
.section-heading h2{font-size:clamp(2.3rem,4vw,3.6rem);line-height:1.15;margin:0;max-width:18ch}
.line-flower{font-size:2.4rem;color:var(--rose);line-height:1}
.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
.feature{padding:1rem 1.2rem 0 0;max-width:27rem}
.feature-mark{display:block;color:var(--rose);font:2.4rem/1 var(--display);min-height:3.6rem}
.feature h3{font-size:1.17rem;line-height:1.3;margin-bottom:.65rem}
.feature p{font-size:1rem;color:var(--muted);line-height:1.65}
.story-band{background:var(--mint);overflow:hidden}
.story-layout{display:grid;grid-template-columns:310px 1fr;align-items:center;gap:4rem;min-height:360px;padding-block:2.5rem}
.story-illustration{display:grid;place-items:center}
.story-illustration img{width:225px;border-radius:50%;box-shadow:0 0 0 18px rgba(255,255,255,.24)}
.story-layout h2,.safety h2{font-size:clamp(2.3rem,3.5vw,3.4rem);line-height:1.14;max-width:17ch;margin-bottom:1rem}
.story-layout p,.safety p{font-size:1.1rem;color:#3e5550;max-width:37rem}
.safety{display:grid;grid-template-columns:90px 1fr;gap:2rem;align-items:start;padding-block:6rem}
.safety-rule{height:4px;width:60px;background:var(--rose);border-radius:2px;margin-top:1.35rem}
.safety p{color:var(--muted)}
.legal-page{display:grid;grid-template-columns:minmax(220px,.65fr) minmax(0,1fr);gap:5rem;padding-block:5.3rem 7rem;min-height:65vh}
.legal-heading{position:sticky;top:2rem;align-self:start}
.legal-heading h1{font-size:clamp(3rem,4.5vw,4.6rem);max-width:10ch;overflow-wrap:anywhere}
.legal-heading .lead{font-size:1.1rem}
.updated{font-size:.86rem;color:var(--muted);margin-top:2rem}
.legal-section{border-top:1px solid var(--line);padding-block:1.5rem 1.7rem}
.legal-section h2{font-family:var(--body);font-size:1.2rem;font-weight:750;letter-spacing:-.02em;margin-bottom:.45rem}
.legal-section p{color:var(--muted);font-size:1rem;line-height:1.75;margin:0;max-width:68ch}
.site-footer{background:#322f35;color:#fff;padding-block:3rem}
.footer-inner{display:grid;grid-template-columns:1fr auto auto;align-items:start;gap:3rem}
.footer-inner strong{font-size:1.45rem;letter-spacing:-.04em}
.footer-inner p{font-size:.9rem;color:#dbcbd1;margin:.45rem 0 0}
.site-footer nav{display:grid;grid-template-columns:repeat(2,auto);gap:.3rem 1.5rem}
.site-footer a{color:#f8d7e1;font-size:.88rem}
.odev-link{white-space:nowrap}
[dir=rtl] .feature{padding:1rem 0 0 1.2rem}
[dir=rtl] .hero-art{direction:ltr}
@media(max-width:900px){.header-inner{flex-wrap:wrap;padding-block:.9rem;gap:.8rem 1rem}.site-header nav{order:3;width:100%;margin:0;overflow-x:auto;gap:1.2rem;padding-block:.4rem}.language{margin-inline-start:auto}.hero{grid-template-columns:1fr 360px;min-height:560px}.hero-art{height:460px}.app-screen{height:445px}.legal-page{gap:2.5rem}}
@media(max-width:720px){.wrap{width:min(100% - 2rem,1180px)}.hero{grid-template-columns:1fr;gap:.4rem;padding-block:3.2rem 2rem}.hero-copy{padding:0}.hero h1{font-size:clamp(3.3rem,12vw,5rem)}.hero-art{height:470px}.app-screen{height:445px}.hero-art:before{width:390px}.features{padding-block:3.5rem 4rem}.feature-grid{grid-template-columns:1fr;gap:1rem}.feature{max-width:none;padding-top:0}.feature-mark{min-height:2.8rem}.story-layout{grid-template-columns:1fr;gap:.2rem;padding-block:2.7rem 3rem;text-align:center}.story-layout h2,.story-layout p{margin-inline:auto}.story-illustration img{width:150px}.safety{grid-template-columns:1fr;gap:.3rem;padding-block:4rem}.legal-page{display:block;padding-block:3.5rem 4.5rem}.legal-heading{position:static;margin-bottom:2.5rem}.legal-heading h1{max-width:14ch}.footer-inner{grid-template-columns:1fr;gap:2rem}.site-footer nav{justify-content:start}}
@media(max-width:410px){.brand{font-size:1.25rem}.brand img{width:35px;height:35px}.language{min-width:7.2rem}.hero-art{height:425px}.app-screen{height:400px}.hero-actions{gap:1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
