@layer base, layout, components, responsive;
@layer base {
  :root { color-scheme: light; --canvas:#fcf4eb; --paper:#fffcf7; --ink:#2b211c; --muted:#766153; --clay:#9e5a48; --line:#e5d6c6; --peach:#f0dfce; --ease:cubic-bezier(.23,1,.32,1); font-family:ui-rounded,'SF Pro Rounded',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; color:var(--ink); background:var(--canvas); font-synthesis:none; }
  * { box-sizing:border-box; }
  body { margin:0; -webkit-font-smoothing:antialiased; }
  a { color:inherit; text-decoration-thickness:1px; text-underline-offset:5px; }
  button { font:inherit; cursor:pointer; }
  img { max-width:100%; height:auto; }
  button, a, summary { -webkit-tap-highlight-color:transparent; }
  :focus-visible { outline:3px solid var(--clay); outline-offset:5px; border-radius:4px; }
  p { line-height:1.75; }
  h1,h2,h3,p { margin-top:0; }
  h1,h2 { font-family:Georgia,'Times New Roman',serif; font-weight:400; letter-spacing:-.055em; text-wrap:balance; }
  h1 em,h2 em { color:var(--clay); font-weight:400; }
  h3 { font-weight:550; letter-spacing:-.04em; line-height:1.2; }
  ::selection { background:#e9c3ae; color:var(--ink); }
  section[id] { scroll-margin-top:36px; }
}
@layer layout {
  .wrap { width:min(1180px,calc(100% - 104px)); margin-inline:auto; }
  .site-header { display:flex; justify-content:space-between; align-items:center; padding-block:28px; border-bottom:1px solid var(--line); }
  .site-header nav { display:flex; align-items:center; gap:30px; }
  .site-header nav a { font-size:14px; text-decoration:none; padding-block:14px; color:var(--muted); }
  .site-header nav a[aria-current] { color:var(--clay); text-decoration:underline; }
  .hero { display:grid; grid-template-columns:1.12fr 1fr; align-items:center; gap:60px; padding-block:70px 75px; }
  .hero-copy { padding-bottom:30px; }
  .hero h1 { font-size:clamp(60px,6.65vw,92px); line-height:1.03; margin:22px 0 30px; }
  .hero-intro { color:var(--muted); font-size:18px; max-width:445px; line-height:1.7; margin-bottom:28px; }
  .hero-actions { display:flex; gap:24px; align-items:center; }
  .hero-visual { position:relative; display:flex; flex-direction:column; align-items:center; padding-top:3px; }
  .hero-visual::before { content:''; width:430px; max-width:105%; aspect-ratio:1; position:absolute; top:95px; border-radius:50%; background:#f1e0ce; z-index:-1; }
  .section { padding-block:108px; }
  .section-intro { max-width:600px; margin-bottom:48px; }
  .section-intro h2,.together-grid h2,.quiet-grid h2,.closing h2 { font-size:clamp(40px,4.25vw,60px); line-height:1.12; margin:20px 0 24px; }
  .section-intro>p:last-child,.together-grid p,.closing>p { color:var(--muted); font-size:17px; }
  .moment-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:44px; }
  .moment-grid article { border-top:1px solid var(--line); padding-top:22px; }
  .moment-grid img { display:block; object-fit:contain; margin:24px 0 18px; width:90px; height:90px; }
  .moment-grid h3 { font-size:29px; margin-bottom:18px; }
  .moment-grid p { font-size:15px; color:var(--muted); margin-bottom:0; }
  .together-section { background:#f1e4d6; }
  .together-grid { display:grid; grid-template-columns:1fr 1fr; gap:80px; padding-block:64px; align-items:center; }
  .together-art { display:flex; align-items:center; justify-content:center; }
  .together-art img { width:100%; height:auto; }
  .plus-section .section-intro { text-align:center; margin-inline:auto; }
  .plans { display:grid; grid-template-columns:1fr 1fr; gap:24px; max-width:960px; margin-inline:auto; }
  .quiet-section { background:#2b2922; color:#f4e7d6; padding-block:84px; }
  .quiet-grid { display:grid; grid-template-columns:1.1fr 1fr; gap:80px; align-items:center; }
  .quiet-grid h2 { margin-bottom:0; }
  .quiet-grid h2 em { color:#dca48d; }
  .quiet-grid p { color:#d4c2ac; }
  .closing { text-align:center; max-width:860px; }
  .closing>img { margin-bottom:22px; }
  .closing>p { max-width:550px; margin-inline:auto; }
  .closing-actions { display:flex; justify-content:center; align-items:center; gap:28px; flex-wrap:wrap; margin-top:28px; }
  .site-footer { border-top:1px solid var(--line); }
  .footer-top { display:flex; align-items:center; flex-wrap:wrap; gap:24px; padding-block:38px; }
  .footer-top>p { color:var(--muted); font-size:14px; margin:0; }
  .footer-top nav { display:flex; gap:28px; margin-left:auto; font-size:14px; }
  .footer-top nav a { padding-block:12px; text-decoration:none; }
  .footer-bottom { border-top:1px solid var(--line); padding-block:20px; display:flex; justify-content:space-between; gap:16px; font-size:12px; color:var(--muted); }
  .document-page { padding-bottom:100px; }
  .document-heading { max-width:880px; margin-block:64px 42px; }
  .document-heading h1 { font-size:clamp(42px,6vw,76px); line-height:1.08; margin:18px 0 24px; }
  .document-heading>p:last-child { font-size:19px; max-width:680px; color:var(--muted); }
  .article-layout { display:grid; grid-template-columns:220px 1fr; gap:80px; margin-top:60px; }
  .article-body { max-width:750px; min-width:0; }
  .article-body section+section { margin-top:46px; }
  .article-body h2 { font-size:34px; margin-bottom:20px; letter-spacing:-.04em; }
  .article-body h3 { font-size:22px; margin-block:28px 16px; }
  .article-body p { color:#685448; line-height:1.85; }
  .article-body a { color:var(--clay); overflow-wrap:anywhere; }
  .standalone { margin-top:55px; }
}
@layer components {
  .wordmark { display:inline-flex; align-items:center; gap:9px; text-decoration:none; white-space:nowrap; }
  .wordmark>span { font-size:27px; font-weight:650; letter-spacing:-1.3px; }
  .wordmark img { width:46px; height:46px; }
  .wordmark-dot { color:var(--clay); }
  .button { display:inline-flex; justify-content:center; align-items:center; gap:24px; background:var(--clay); color:var(--paper); border-radius:100px; padding:18px 25px; text-decoration:none; font-size:14px; font-weight:600; line-height:1.2; min-height:52px; transition:transform 150ms var(--ease),background-color 150ms ease; }
  .button:active { transform:scale(.98); }
  .button>span { font-size:20px; line-height:.8; }
  .availability { font-size:12px; color:var(--muted); line-height:1.6; }
  .small-note { font-size:12px; margin-top:16px; color:var(--muted); }
  .text-link { display:inline-flex; align-items:center; gap:15px; min-height:44px; color:var(--clay); font-size:14px; font-weight:600; text-decoration:none; border-bottom:1px solid currentColor; }
  .orbit-label { position:absolute; right:-10px; top:38px; font-family:Georgia,serif; font-size:22px; font-style:italic; color:var(--clay); transform:rotate(9deg); z-index:2; }
  .phone { --phone-bg:#fcf4eb; --phone-card:#fffcf7; --phone-ink:#2b211c; --phone-muted:#7c6a5e; --phone-line:#eaddcd; width:308px; border-radius:44px; padding:19px 18px 10px; border:6px solid #4c3c32; background:var(--phone-bg); color:var(--phone-ink); box-shadow:0 28px 65px -25px #59402e55,0 0 0 2px #b4a38e; transform:rotate(-4deg); }
  .phone[data-mode="night"] { --phone-bg:#100c09; --phone-card:#1e1712; --phone-ink:#e4d3c0; --phone-muted:#bba28f; --phone-line:#453326; }
  .phone-status { display:flex; align-items:center; justify-content:space-between; font-size:10px; font-weight:700; position:relative; padding:0 6px 23px; }
  .island { position:absolute; width:82px; height:22px; background:#241c17; border-radius:20px; left:calc(50% - 41px); top:-6px; }
  .phone-brand { display:flex; align-items:center; gap:5px; font-size:16px; margin-bottom:17px; }
  .phone-brand>span { margin-left:auto; color:var(--phone-muted); }
  .baby-summary { display:flex; align-items:center; gap:11px; border:1px solid var(--phone-line); border-radius:16px; padding:12px; background:var(--phone-card); }
  .baby-face { width:34px; height:34px; border-radius:50%; background:#efc2ab; color:#5d3b30; display:grid; place-items:center; font-size:27px; }
  .baby-summary strong { display:block; font-size:15px; margin-bottom:3px; }
  .baby-summary div>span { font-size:10px; color:var(--phone-muted); }
  .baby-summary>span { margin-left:auto; color:var(--phone-muted); }
  .phone-tabs { display:flex; gap:4px; background:var(--phone-line); padding:4px; border-radius:12px; margin-top:14px; font-size:11px; text-align:center; }
  .phone-tabs span { flex:1; padding:8px; }
  .phone-tabs .active { background:var(--phone-card); border-radius:9px; font-weight:600; }
  .phone-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:3px; padding-block:22px; }
  .phone-stats span { display:block; font-size:8px; color:var(--phone-muted); margin-bottom:5px; }
  .phone-stats strong { font-size:15px; letter-spacing:-.6px; }
  .phone-day { margin-bottom:8px; }
  .phone-day strong { font-size:13px; display:block; }
  .phone-day span { font-size:9px; color:var(--phone-muted); }
  .phone-entry { display:flex; align-items:center; gap:8px; border-bottom:1px solid var(--phone-line); padding-block:13px; }
  .phone-entry img { object-fit:contain; width:30px; height:30px; }
  .phone-entry div { flex:1; }
  .phone-entry strong { font-size:11px; display:block; margin-bottom:4px; }
  .phone-entry span { font-size:9px; color:var(--phone-muted); }
  .phone-entry b { font-size:10px; font-weight:500; }
  .phone-controls { display:flex; gap:7px; padding-top:27px; }
  .phone-controls>div { flex:1; display:flex; flex-direction:column; align-items:center; gap:6px; font-size:10px; font-weight:600; background:var(--phone-card); border:1px solid var(--phone-line); border-radius:14px; padding:13px 0; }
  .phone-controls img { width:28px; height:28px; object-fit:contain; }
  .home-indicator { width:90px; height:4px; border-radius:5px; background:var(--phone-ink); margin:17px auto 0; }
  .demo-controls { display:flex; padding:4px; border:1px solid var(--line); border-radius:30px; background:var(--paper); margin-top:30px; gap:4px; }
  .demo-controls button { display:flex; align-items:center; gap:7px; border:0; border-radius:22px; color:var(--muted); background:transparent; padding:10px 18px; font-size:12px; min-height:44px; }
  .demo-controls button[aria-pressed="true"] { background:var(--peach); color:var(--ink); }
  .demo-caption { font-size:11px; color:var(--muted); margin:12px 0 0; text-align:center; }
  .promise-strip { border-block:1px solid var(--line); }
  .promise-strip>.wrap { display:flex; justify-content:space-between; align-items:center; padding-block:26px; gap:20px; font-size:13px; color:var(--muted); }
  .promise-strip i { color:#b7856c; font-style:normal; font-size:17px; }
  .plan { border:1px solid var(--line); padding:38px; border-radius:18px; }
  .plan-plus { background:#f1e4d6; border-color:#d9b29a; }
  .plan h3 { font-size:31px; margin:0 0 26px; }
  .plan-price { font-family:Georgia,serif; font-size:29px; letter-spacing:-1px; line-height:1.2; }
  .plan-price span { display:block; font:12px/1.5 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; letter-spacing:0; color:var(--muted); margin-top:9px; }
  .plan ul { padding:22px 0 0; list-style:none; border-top:1px solid var(--line); margin-top:25px; }
  .plan li { font-size:14px; padding:8px 0 8px 26px; position:relative; line-height:1.5; }
  .plan li::before { content:'✓'; position:absolute; left:0; color:var(--clay); }
  .plan-disclosure { font-size:12px; color:var(--muted); margin-top:25px; }
  .plus-mark { float:right; color:var(--clay); }
  .breadcrumbs { display:flex; gap:12px; color:var(--muted); font-size:13px; padding-top:30px; align-items:center; }
  .breadcrumbs a { padding-block:12px; }
  .contact-panel { display:flex; align-items:center; justify-content:space-between; gap:40px; padding:36px; border-radius:18px; background:var(--peach); }
  .contact-panel h2 { font-size:34px; margin:16px 0; }
  .contact-panel p:last-child { max-width:660px; margin:0; }
  .contact-panel .button { flex-shrink:0; }
  .contact-panel a:not(.button) { overflow-wrap:anywhere; }
  .article-index { position:sticky; top:32px; align-self:start; border-top:1px solid var(--line); padding-top:20px; }
  .article-index p { font-size:13px; font-weight:600; color:var(--muted); margin-bottom:12px; }
  .article-index a { display:block; font-size:14px; color:var(--muted); padding:12px 0; text-decoration:none; }
  .policy-date { font-size:12px; color:var(--muted); }
  details { border-bottom:1px solid var(--line); }
  summary { cursor:pointer; padding:22px 28px 22px 0; font-size:17px; font-weight:550; line-height:1.5; list-style:none; position:relative; }
  summary::-webkit-details-marker { display:none; }
  summary::after { content:'+'; position:absolute; right:0; top:22px; color:var(--clay); }
  details[open]>summary::after { content:'−'; }
  details p { padding:0 24px 15px 0; }
  .skip-link { position:fixed; top:8px; left:8px; transform:translateY(-160%); z-index:10; background:var(--ink); color:var(--paper); padding:14px; }
  .skip-link:focus { transform:translateY(0); }
  @media (hover:hover) and (pointer:fine) { .button:hover { background:#844a3b; }.site-header nav a:hover,.footer-top nav a:hover,.article-index a:hover { color:var(--clay); text-decoration:underline; } }
}
@layer responsive {
  @media (min-width:1440px) { .hero { min-height:810px; } }
  @media (max-width:1000px) { .wrap { width:calc(100% - 64px); }.hero { gap:30px; }.hero h1 { font-size:68px; }.orbit-label { right:-8px; font-size:18px; }.phone { width:280px; }.hero-intro { font-size:16px; }.together-grid,.quiet-grid { gap:40px; }.moment-grid { gap:25px; }.footer-top>p { display:none; }.article-layout { grid-template-columns:180px 1fr; gap:38px; } }
  @media (max-width:760px) { .wrap { width:calc(100% - 40px); }.site-header { padding-block:16px; }.wordmark>span { font-size:24px; }.wordmark img { width:39px; height:39px; }.site-header nav { gap:18px; }.site-header nav a { font-size:12px; }.product-link { display:none; }.hero { grid-template-columns:1fr; padding-top:45px; gap:18px; }.hero-copy { text-align:center; padding:0; }.hero h1 { font-size:68px; margin-top:20px; }.hero h1 em br { display:none; }.hero-intro { margin-inline:auto; max-width:340px; }.hero-actions { justify-content:center; }.hero-visual { padding-top:30px; }.phone { width:290px; }.orbit-label { right:calc(50% - 180px); top:54px; }.demo-caption { max-width:250px; }.promise-strip>.wrap { display:grid; grid-template-columns:1fr 1fr; font-size:12px; gap:18px 10px; text-align:center; }.promise-strip i { display:none; }.section { padding-block:70px; }.section-intro h2,.together-grid h2,.quiet-grid h2,.closing h2 { font-size:43px; }.section-intro>p:last-child,.together-grid p,.closing>p { font-size:16px; }.moment-grid { grid-template-columns:1fr; gap:35px; }.moment-grid article { display:grid; grid-template-columns:1fr 90px; column-gap:20px; }.moment-grid img { grid-column:2; grid-row:1; margin:0; }.moment-grid h3 { grid-column:1; font-size:28px; margin:20px 0 15px; }.moment-grid p { grid-column:1 / -1; }.together-grid { grid-template-columns:1fr; gap:20px; padding-block:45px 65px; }.together-art img { max-width:300px; }.plans { grid-template-columns:1fr; }.plan { padding:28px; }.quiet-grid { grid-template-columns:1fr; gap:30px; }.quiet-section { padding-block:65px; }.footer-top { gap:24px; padding-block:28px; flex-direction:column; align-items:start; }.footer-top nav { margin-left:0; gap:26px; flex-wrap:wrap; }.footer-bottom { flex-wrap:wrap; line-height:1.6; }.footer-bottom>span:nth-child(2) { order:3; width:100%; }.document-heading { margin-top:36px; }.document-heading h1 { font-size:49px; }.document-heading>p:last-child { font-size:17px; }.contact-panel { flex-direction:column; align-items:start; gap:25px; padding:27px; }.article-layout { grid-template-columns:1fr; margin-top:36px; gap:32px; }.article-index { position:static; display:flex; flex-wrap:wrap; column-gap:20px; }.article-index p { width:100%; }.article-index a { padding-block:10px; }.article-body h2 { font-size:31px; }.breadcrumbs { padding-top:20px; } }
  @media (max-width:380px) { .site-header nav { gap:12px; }.hero h1 { font-size:58px; }.orbit-label { right:0; top:28px; font-size:17px; }.hero-actions { gap:15px; }.button { padding-inline:20px; }.wordmark { gap:4px; }.phone { width:270px; }.document-heading h1 { font-size:43px; } }
  @media (prefers-reduced-motion:reduce) { *,*::before,*::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; } .button:active { transform:none; } }
}
