:root {
  --ink:#181a1b; --muted:#686d70; --paper:#f8f8f5; --card:#fff;
  --blue:#3778f6; --line:#e5e6e1; --mint:#d7f0df; --night:#272e32;
  --serif:Georgia,"Times New Roman",serif;
}

/* Contact and support form */
.contact-page {
  padding-bottom:clamp(76px,9vw,132px);
}
.contact-hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(280px,.58fr);
  align-items:end;
  gap:clamp(36px,8vw,120px);
  padding-top:clamp(70px,9vw,128px);
  padding-bottom:clamp(56px,7vw,96px);
}
.contact-hero h1 {
  max-width:760px;
  margin:0;
  font-size:clamp(56px,7.2vw,104px);
  line-height:.9;
}
.contact-hero > p {
  max-width:450px;
  margin:0 0 8px;
  color:var(--muted);
  font-size:clamp(15px,1.35vw,18px);
  line-height:1.7;
}
.contact-layout {
  display:grid;
  grid-template-columns:minmax(0,1.47fr) minmax(310px,.73fr);
  align-items:start;
  gap:18px;
}
.support-form,
.contact-aside__card {
  border:1px solid #dde1dd;
  background:#fff;
  box-shadow:0 24px 64px rgba(30,38,41,.07);
}
.support-form {
  position:relative;
  display:grid;
  gap:26px;
  min-height:700px;
  padding:clamp(28px,4.2vw,58px);
  border-radius:32px;
  overflow:hidden;
}
.support-form::before {
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:4px;
  background:linear-gradient(90deg,#3778f6 0 35%,#a7e6c2 35% 69%,#ece7ff 69%);
  content:"";
}
.support-form__heading {
  display:grid;
  gap:8px;
  padding-bottom:8px;
}
.support-form__heading > span,
.contact-aside__card > span {
  color:#7a8588;
  font:700 10px/1.3 "DM Mono",monospace;
  letter-spacing:.11em;
}
.support-form__heading h2,
.contact-aside__card h2 {
  margin:8px 0 0;
  font-size:clamp(26px,3vw,42px);
  line-height:1.05;
  letter-spacing:-.055em;
}
.support-form__heading p {
  margin:0;
  color:#8a9091;
  font-size:12px;
}
.support-form__grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.support-field {
  position:relative;
  display:grid;
  gap:9px;
}
.support-field > span {
  color:#4f575a;
  font-size:12px;
  font-weight:800;
}
.support-field > span b {
  color:var(--blue);
}
.support-field input,
.support-field select,
.support-field textarea {
  width:100%;
  border:1px solid #dfe3df;
  border-radius:15px;
  outline:0;
  background:#fafbf9;
  color:var(--ink);
  font:500 14px/1.5 Manrope,Arial,sans-serif;
  transition:border-color .2s,box-shadow .2s,background .2s;
}
.support-field input,
.support-field select {
  height:56px;
  padding:0 17px;
}
.support-field select {
  appearance:none;
  padding-right:46px;
  background-image:linear-gradient(45deg,transparent 50%,#687174 50%),linear-gradient(135deg,#687174 50%,transparent 50%);
  background-position:calc(100% - 22px) 25px,calc(100% - 17px) 25px;
  background-size:5px 5px,5px 5px;
  background-repeat:no-repeat;
}
.support-field textarea {
  min-height:186px;
  padding:16px 17px 30px;
  resize:vertical;
}
.support-field input::placeholder,
.support-field textarea::placeholder {
  color:#a2a8a7;
}
.support-field input:focus,
.support-field select:focus,
.support-field textarea:focus {
  border-color:#7da7fb;
  background:#fff;
  box-shadow:0 0 0 4px rgba(55,120,246,.1);
}
.support-field:has(input:user-invalid) input,
.support-field:has(textarea:user-invalid) textarea {
  border-color:#e58f8f;
}
.support-field > small {
  position:absolute;
  right:14px;
  bottom:10px;
  color:#969d9d;
  font:600 10px "DM Mono",monospace;
}
.support-upload {
  border:1px dashed #c8cfcb;
  border-radius:18px;
  background:linear-gradient(135deg,#fbfcfa,#f5f8f6);
  transition:border-color .2s,background .2s,transform .2s;
}
.support-upload.is-dragging {
  border-color:var(--blue);
  background:#f0f5ff;
  transform:translateY(-2px);
}
.support-upload > label {
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:14px;
  min-height:96px;
  padding:18px;
  cursor:pointer;
}
.support-upload__icon {
  display:grid;
  width:48px;
  height:48px;
  place-items:center;
  border-radius:15px;
  background:#e8efff;
  color:var(--blue);
  font-size:25px;
  font-weight:400;
}
.support-upload label > span:nth-child(2) {
  display:grid;
  gap:3px;
}
.support-upload b {
  font-size:13px;
}
.support-upload small,
.support-upload em {
  color:#858d8e;
  font-size:11px;
  font-style:normal;
}
.support-upload em {
  padding:7px 10px;
  border-radius:100px;
  background:#fff;
  white-space:nowrap;
}
.support-file-list {
  display:grid;
  gap:7px;
  margin:0;
  padding:0 18px 18px;
  list-style:none;
}
.support-file-list:empty {
  display:none;
}
.support-file-list li {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  align-items:center;
  gap:10px;
  padding:10px 12px;
  border:1px solid #e5e8e5;
  border-radius:11px;
  background:#fff;
  color:#444b4d;
  font-size:11px;
}
.support-file-list li span {
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.support-file-list li small {
  color:#8d9495;
  font:600 10px "DM Mono",monospace;
}
.support-file-list button {
  width:25px;
  height:25px;
  border:0;
  border-radius:50%;
  background:#f0f2f0;
  color:#687072;
  cursor:pointer;
}
.support-consent {
  display:flex;
  align-items:flex-start;
  gap:11px;
  color:#747b7d;
  font-size:11px;
  line-height:1.55;
  cursor:pointer;
}
.support-consent input {
  flex:0 0 17px;
  width:17px;
  height:17px;
  margin:1px 0 0;
  accent-color:var(--blue);
}
.support-consent a,
.contact-email a {
  color:var(--ink);
  font-weight:800;
  text-decoration:underline;
  text-decoration-color:#b8c8e9;
  text-underline-offset:3px;
}
.support-honeypot {
  position:absolute!important;
  left:-10000px!important;
  width:1px!important;
  height:1px!important;
  opacity:0!important;
}
.support-form__footer {
  display:flex;
  align-items:center;
  gap:18px;
  min-height:58px;
}
.support-submit {
  border:0;
  cursor:pointer;
}
.support-submit i {
  font-size:17px;
  font-style:normal;
}
.support-submit:disabled {
  cursor:wait;
  opacity:.62;
  transform:none;
}
.support-form__status {
  margin:0;
  color:#b84b4b;
  font-size:12px;
  font-weight:700;
}
.support-form__status.is-success {
  color:#2e8050;
}
.support-form.is-complete > :not(.support-success) {
  display:none;
}
.support-success {
  align-self:center;
  display:grid;
  grid-template-columns:auto 1fr;
  gap:20px;
  padding:clamp(16px,4vw,54px);
}
.support-success[hidden] {
  display:none;
}
.support-success > span {
  display:grid;
  width:58px;
  height:58px;
  place-items:center;
  border-radius:18px;
  background:#dff4e6;
  color:#23814a;
  font-size:25px;
}
.support-success p:first-child {
  margin:1px 0 8px;
  color:#4f8c66;
  font:700 10px "DM Mono",monospace;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.support-success h2 {
  margin:0 0 13px;
  font-size:clamp(30px,4vw,48px);
  line-height:1.05;
  letter-spacing:-.055em;
}
.support-success p {
  max-width:460px;
  color:#687072;
}
.support-success button {
  padding:0;
  border:0;
  border-bottom:1px solid #929a9b;
  background:none;
  color:var(--ink);
  font:800 12px Manrope,Arial,sans-serif;
  cursor:pointer;
}
.contact-aside {
  position:sticky;
  top:18px;
  display:grid;
  gap:18px;
}
.contact-aside__card {
  padding:clamp(26px,3vw,38px);
  border-radius:27px;
}
.contact-aside__card h2 {
  font-size:clamp(27px,2.7vw,39px);
}
.contact-aside__card p,
.contact-aside__card li {
  color:#6e7678;
  font-size:12px;
  line-height:1.7;
}
.contact-aside__card ul {
  display:grid;
  gap:9px;
  margin:22px 0 0;
  padding:0;
  list-style:none;
}
.contact-aside__card li {
  position:relative;
  padding-left:19px;
}
.contact-aside__card li::before {
  position:absolute;
  top:.65em;
  left:0;
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--blue);
  content:"";
}
.contact-aside__card--dark {
  border-color:#272e32;
  background:#272e32;
  color:#fff;
  box-shadow:0 30px 70px rgba(22,28,31,.19);
}
.contact-aside__card--dark > span,
.contact-aside__card--dark p {
  color:#b8c1c3;
}
.contact-response {
  display:flex;
  align-items:flex-start;
  gap:12px;
  margin-top:26px;
  padding-top:22px;
  border-top:1px solid #475055;
}
.contact-response i {
  width:9px;
  height:9px;
  margin-top:5px;
  border-radius:50%;
  background:#9ee3ba;
  box-shadow:0 0 0 6px rgba(158,227,186,.1);
}
.contact-response span {
  display:grid;
  gap:4px;
}
.contact-response b {
  font-size:12px;
}
.contact-response small {
  color:#aab5b7;
  font-size:10px;
  line-height:1.5;
}
.contact-email {
  margin:4px 8px 0;
  color:#81898a;
  font-size:11px;
}

@media (max-width: 820px) {
  .contact-hero {
    grid-template-columns:1fr;
    gap:24px;
    padding-top:54px;
    padding-bottom:44px;
  }
  .contact-hero h1 {
    font-size:clamp(52px,15vw,78px);
  }
  .contact-hero > p {
    max-width:580px;
  }
  .contact-layout {
    grid-template-columns:1fr;
  }
  .contact-aside {
    position:static;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .contact-email {
    grid-column:1 / -1;
  }
}

@media (max-width: 560px) {
  .contact-page {
    padding-bottom:70px;
  }
  .contact-hero.section,
  .contact-layout.section {
    width:min(100% - 24px,1180px);
  }
  .contact-hero {
    padding-top:46px;
    padding-bottom:32px;
  }
  .contact-hero h1 {
    font-size:clamp(48px,14.5vw,68px);
  }
  .contact-hero > p {
    font-size:14px;
  }
  .support-form {
    gap:22px;
    min-height:0;
    padding:28px 18px 24px;
    border-radius:23px;
  }
  .support-form__grid,
  .contact-aside {
    grid-template-columns:1fr;
  }
  .support-field input,
  .support-field select {
    height:54px;
    font-size:16px;
  }
  .support-field textarea {
    min-height:172px;
    font-size:16px;
  }
  .support-upload > label {
    grid-template-columns:auto 1fr;
    min-height:104px;
    padding:15px;
  }
  .support-upload em {
    grid-column:2;
    justify-self:start;
    padding:0;
    background:none;
  }
  .support-file-list {
    padding:0 14px 14px;
  }
  .support-form__footer {
    align-items:stretch;
    flex-direction:column;
  }
  .support-submit {
    width:100%;
    min-height:56px;
  }
  .support-success {
    grid-template-columns:1fr;
    padding:8px 2px;
  }
  .contact-aside__card {
    border-radius:23px;
  }
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; overflow-x:hidden; background:var(--paper); color:var(--ink); font:16px/1.55 Manrope,Arial,sans-serif; }
a { color:inherit; text-decoration:none; }
h1,h2,h3,p { margin-top:0; }
.section { width:min(1180px,calc(100% - 40px)); margin-inline:auto; }

.site-header { width:min(1280px,calc(100% - 40px)); height:84px; margin:auto; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.brand { font-size:20px; font-weight:800; letter-spacing:-.07em; }
.brand span { margin:0 1px; color:var(--blue); font-size:.78em; }
.site-header nav { display:flex; gap:25px; color:#606568; font-size:13px; font-weight:700; }
.site-header nav a,.footer a { transition:color .2s ease; }
.site-header nav a:hover,.footer a:hover { color:var(--blue); }
.button { display:inline-flex; align-items:center; justify-content:center; gap:15px; padding:17px 23px; border-radius:100px; background:var(--ink); color:#fff; font-size:13px; font-weight:800; transition:transform .2s,background .2s; }
.button:hover { transform:translateY(-2px); background:var(--blue); }
.button--small { padding:11px 16px; font-size:12px; }
.button__apple,.button__globe { width:16px; height:16px; flex:0 0 16px; fill:currentColor; }
.button__globe { fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.button--small .button__apple,.button--small .button__globe { width:14px; height:14px; flex-basis:14px; }
.eyebrow { display:flex; align-items:center; gap:9px; margin:0 0 17px; color:#73797d; font-size:10px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.eyebrow span { width:7px; height:7px; border-radius:50%; background:var(--blue); }
.text-link { display:inline-flex; align-items:center; gap:9px; font-size:13px; font-weight:800; }
.text-link span { font-size:17px; transition:transform .2s; }
.text-link:hover span { transform:translateX(3px); }

.hero { min-height:700px; display:grid; grid-template-columns:1.04fr .96fr; align-items:center; gap:32px; padding:62px 0 74px; }
.hero__copy { max-width:650px; }
h1 { margin-bottom:26px; font-size:clamp(46px,5.2vw,77px); line-height:.99; letter-spacing:-.078em; }
h1 em,h2 em { font-family:var(--serif); font-weight:400; letter-spacing:-.09em; }
h1 em { color:var(--blue); }
.hero__text { max-width:510px; margin-bottom:0; color:var(--muted); font-size:16px; line-height:1.68; }
.hero__actions { display:flex; align-items:center; gap:25px; margin-top:31px; }
.microcopy { margin:16px 0 0; color:#8a8e90; font-size:11px; }

.hero__visual { position:relative; min-height:575px; display:grid; place-items:center; isolation:isolate; }
.halo { position:absolute; border:1px solid #e1e4e1; border-radius:50%; z-index:-1; }
.halo--one { width:500px; height:500px; }
.halo--two { width:678px; height:678px; border-color:#edf0ec; }
.iphone { position:relative; padding:7px; border:7px solid #1a1b1d; border-radius:55px; background:#222426; box-shadow:0 36px 65px #29313130, inset 0 0 0 1px #5b5f61; overflow:hidden; }
.iphone--hero { width:min(372px,76vw); padding:8px; border:8px solid #17191b; border-radius:54px; background:linear-gradient(112deg,#0f1011 0%,#3f4346 43%,#17191a 61%,#080909 100%); box-shadow:0 34px 58px #1f272b30,0 0 0 1px #686c6f,inset 0 0 0 1px #060707; aspect-ratio:9 / 19.5; transform:rotate(-4deg); }
.iphone--hero::before { position:absolute; z-index:5; top:24%; right:-11px; width:4px; height:57px; border-radius:0 4px 4px 0; background:#25282a; box-shadow:0 -78px 0 #25282a; content:""; }
.iphone--hero::after { position:absolute; z-index:5; top:18%; left:-11px; width:4px; height:34px; border-radius:4px 0 0 4px; background:#25282a; box-shadow:0 50px 0 #25282a,0 98px 0 #25282a; content:""; }
.iphone__screen { height:100%; overflow:hidden; border-radius:43px; background:#fbfbfa; }
.iphone__safe-area { position:absolute; z-index:6; top:8px; left:8px; right:8px; height:46px; display:flex; align-items:center; justify-content:space-between; padding:0 28px; border-radius:37px 37px 0 0; background:linear-gradient(180deg,#fbfcff 0%,#f7f9fd 72%,#f7f9fd00 100%); color:#16191b; font:800 11px Manrope,Arial,sans-serif; pointer-events:none; }
.iphone__system-icons { display:flex; align-items:center; gap:5px; }
.iphone__system-icons i:first-child { width:13px; height:8px; border-radius:2px 2px 0 0; border-top:2px solid #17191b; border-left:2px solid transparent; border-right:2px solid transparent; }
.iphone__system-icons i:nth-child(2) { width:11px; height:8px; border-radius:2px; background:linear-gradient(90deg,#17191b 2px,transparent 2px 4px,#17191b 4px 6px,transparent 6px 8px,#17191b 8px); opacity:.88; }
.iphone__system-icons b { position:relative; width:20px; height:10px; border:1.7px solid #17191b; border-radius:3px; }
.iphone__system-icons b::before { position:absolute; inset:2px 4px 2px 2px; border-radius:1px; background:#17191b; content:""; }
.iphone__system-icons b::after { position:absolute; top:3px; right:-4px; width:2px; height:4px; border-radius:0 2px 2px 0; background:#17191b; content:""; }
.iphone__island,.mini-island { position:absolute; z-index:7; top:18px; left:50%; width:31%; height:19px; border:1px solid #2a2c2e; border-radius:100px; background:#0b0c0d; box-shadow:inset 0 1px 1px #4b4d4e,0 1px 2px #00000024; transform:translateX(-50%); }
.statusbar { display:flex; justify-content:space-between; padding:9px 14px 0; color:#242729; font-size:8px; font-weight:800; }
.app-screen--day { padding:27px 15px 11px; color:#272b2e; }
.app-heading { display:flex; justify-content:space-between; margin-top:12px; color:#81888c; font-size:7px; }
.app-title { display:grid; margin:18px 0 14px; }
.app-title small { color:#81888c; font-size:9px; }
.app-title strong { font-size:22px; letter-spacing:-.08em; }
.app-title i { color:#438061; font-size:8px; font-style:normal; }
.week { display:flex; justify-content:space-between; margin-bottom:14px; text-align:center; color:#a0a5a5; font-size:7px; line-height:1.8; }
.week span { display:grid; justify-items:center; }
.week b { color:#5f6667; font-size:9px; }
.week .active { width:26px; padding:2px 0; border-radius:9px; background:var(--blue); color:#fff; }
.week .active b { color:#fff; }
.day-list { display:grid; gap:8px; }
.day-item { display:grid; grid-template-columns:29px 22px 1fr; align-items:center; min-height:50px; padding:6px; border-radius:10px; }
.day-item time { color:#798183; font:7px "DM Mono",monospace; }
.day-item em { display:grid; width:18px; height:18px; place-items:center; border-radius:6px; background:#fff; font-size:9px; font-style:normal; }
.day-item div { display:grid; gap:1px; }
.day-item b { font-size:9px; }
.day-item small { color:#7c8384; font-size:7px; }
.item--blue { background:#e9f0ff; }.item--lilac { background:#eeeafa; }.item--green { background:#e5f2e8; }
.ai-tip { display:flex; align-items:flex-start; gap:7px; margin-top:12px; padding:10px; border-radius:10px; background:#202b36; color:#fff; }
.ai-tip span { color:#86d5ed; }.ai-tip p { margin:0; font-size:7px; line-height:1.5; }
.tabbar { display:flex; align-items:center; justify-content:space-around; margin-top:14px; color:#919899; font-size:12px; }
.tabbar b { display:grid; width:28px; height:28px; place-items:center; border-radius:10px; background:var(--blue); color:#fff; font-size:20px; }
.floating-note { position:absolute; display:flex; align-items:center; gap:10px; padding:12px; border:1px solid #e7e9e7; border-radius:15px; background:#fff; box-shadow:0 16px 30px #28303013; font-size:10px; }
.floating-note > span:first-child { display:grid; width:28px; height:28px; place-items:center; border-radius:9px; background:#eff2ff; color:var(--blue); }
.floating-note small { display:block; color:#919697; font-size:8px; }.floating-note b { font-size:9px; }
.floating-note--left { top:29%; left:-8px; }.floating-note--right { right:-13px; bottom:20%; }
.floating-note .ring { border:3px solid #a7dab7!important; background:#eff8f1!important; color:#3d8a58; font-size:8px; }
.device-caption { display:none; }

/* Hero iPhone: CSS-built app skeleton tuned to the phone body. */
.iphone--hero {
  width:min(324px,70vw);
  padding:6px;
  border:6px solid #17191b;
  border-radius:44px;
  overflow:visible;
  background:
    linear-gradient(90deg,#111315 0 18%,#323638 42%,#111315 68%,#070808 100%);
  box-shadow:
    0 28px 58px #1b232830,
    0 7px 12px #11161918,
    0 0 0 1px #5d6265,
    inset 0 0 0 1px #050606,
    inset 0 1px 0 #6a6f72;
  aspect-ratio:9 / 19.5;
  transform:rotate(-3.5deg);
}
.iphone--hero::before {
  top:23%;
  right:-10px;
  width:3px;
  height:54px;
  border-radius:0 5px 5px 0;
  background:#202326;
  box-shadow:0 -72px 0 #202326,0 1px 0 #4f5558 inset;
}
.iphone--hero::after {
  top:18%;
  left:-10px;
  width:3px;
  height:31px;
  border-radius:5px 0 0 5px;
  background:#202326;
  box-shadow:0 47px 0 #202326,0 91px 0 #202326,0 1px 0 #4f5558 inset;
}
.iphone--hero .iphone__screen {
  position:relative;
  height:100%;
  visibility:visible;
  overflow:hidden;
  border-radius:35px;
  background:
    radial-gradient(circle at 50% -7%,#edf5ff 0 17%,transparent 38%),
    linear-gradient(180deg,#fbfcff 0%,#f7f9fd 34%,#f3f5fb 100%);
  box-shadow:
    inset 0 0 0 1px #e7ebf2,
    inset 0 12px 22px #dfe8f650,
    inset 0 -20px 28px #e8edf566;
}
.iphone--hero .iphone__safe-area,
.actual-shot--hero {
  display:none;
}
.iphone--hero .iphone__island {
  z-index:20;
  top:16px;
  width:31%;
  height:17px;
  border:0;
  background:
    radial-gradient(circle at 82% 50%,#202426 0 2px,transparent 3px),
    linear-gradient(180deg,#121416,#060707);
  box-shadow:
    0 1px 0 #ffffff18,
    0 2px 4px #00000036,
    inset 0 0 0 1px #1f2326,
    inset 0 1px 1px #51565a55;
}
.iphone--hero .statusbar {
  position:relative;
  z-index:8;
  display:flex;
  align-items:center;
  justify-content:space-between;
  height:38px;
  padding:0 23px;
  color:#171a1c;
  font-size:9px;
  font-weight:800;
}
.iphone--hero .statusbar span:first-child {
  min-width:34px;
}
.iphone--hero .statusbar span:last-child {
  width:40px;
  height:12px;
  overflow:hidden;
  color:transparent;
  background:
    linear-gradient(#171a1c,#171a1c) 0 6px / 9px 2px no-repeat,
    linear-gradient(#171a1c,#171a1c) 11px 4px / 3px 4px no-repeat,
    linear-gradient(#171a1c,#171a1c) 16px 2px / 3px 6px no-repeat,
    linear-gradient(#171a1c,#171a1c) 21px 0 / 3px 8px no-repeat,
    linear-gradient(90deg,#171a1c 0 62%,transparent 62%) 28px 1px / 16px 8px no-repeat;
  border-radius:2px;
}
.iphone--hero .statusbar span:last-child::after {
  display:block;
  width:16px;
  height:8px;
  margin-left:26px;
  border:1px solid #171a1c;
  border-radius:2px;
  content:"";
}
.iphone--hero .app-screen--day {
  display:flex;
  flex-direction:column;
  gap:8px;
  padding:0 13px 13px;
  color:#1f2428;
}
.iphone--hero .app-heading {
  position:relative;
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin:0;
  padding:10px 11px 8px;
  border:1px solid #e8eef8;
  border-radius:0 0 20px 20px;
  background:#f3f8ffcc;
  box-shadow:0 8px 18px #dce8f577;
}
.iphone--hero .app-heading::before {
  position:absolute;
  top:31px;
  left:11px;
  right:11px;
  height:1px;
  background:#e5edf8;
  content:"";
}
.iphone--hero .app-heading small {
  display:block;
  width:95px;
  height:9px;
  overflow:hidden;
  color:transparent;
  border-radius:999px;
  background:linear-gradient(90deg,#15191e 0 43%,#2f7df6 43% 100%);
}
.iphone--hero .app-heading b {
  display:block;
  width:14px;
  height:14px;
  overflow:hidden;
  color:transparent;
  border-radius:4px;
  background:
    linear-gradient(#2f7df6,#2f7df6) 3px 2px / 8px 2px no-repeat,
    linear-gradient(#2f7df6,#2f7df6) 3px 6px / 8px 1.5px no-repeat,
    linear-gradient(#2f7df6,#2f7df6) 3px 10px / 8px 1.5px no-repeat,
    #eaf2ff;
}
.iphone--hero .app-title {
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  gap:5px 8px;
  margin:0;
  padding:14px 12px 12px;
  border:1px solid #e7ebf0;
  border-radius:18px;
  background:linear-gradient(180deg,#ffffff,#fbfcff);
  box-shadow:0 10px 22px #dfe7f35f;
}
.iphone--hero .app-title small {
  width:64px;
  height:9px;
  overflow:hidden;
  color:transparent;
  border-radius:999px;
  background:#dce4f1;
}
.iphone--hero .app-title strong {
  width:105px;
  height:17px;
  overflow:hidden;
  color:transparent;
  border-radius:999px;
  background:#20252b;
}
.iphone--hero .app-title i {
  grid-column:2;
  grid-row:1 / span 2;
  align-self:center;
  display:grid;
  width:62px;
  height:29px;
  place-items:center;
  overflow:hidden;
  border-radius:14px;
  background:#0788ff;
  color:#fff;
  font:800 10px Manrope,Arial,sans-serif;
}
.iphone--hero .week {
  display:grid;
  grid-template-columns:repeat(7,1fr);
  gap:4px;
  margin:0;
  padding:0 3px;
  color:#777f89;
  font-size:7px;
  line-height:1.45;
}
.iphone--hero .week span {
  min-height:27px;
  border-radius:11px;
  display:grid;
  place-items:center;
}
.iphone--hero .week b {
  color:#1f2428;
  font-size:9px;
}
.iphone--hero .week .active {
  width:auto;
  min-height:31px;
  padding:0;
  border-radius:13px;
  background:#0a8cff;
  box-shadow:0 6px 10px #0a8cff2d;
}
.iphone--hero .week .active,
.iphone--hero .week .active b {
  color:#fff;
}
.iphone--hero .day-list {
  display:grid;
  gap:7px;
}
.iphone--hero .day-item {
  position:relative;
  display:grid;
  grid-template-columns:33px 30px 1fr;
  gap:7px;
  min-height:51px;
  align-items:center;
  padding:8px 10px;
  border:1px solid #eef1f4;
  border-radius:16px;
  background:#fff;
  box-shadow:0 8px 18px #e0e7f166;
}
.iphone--hero .day-item::before {
  position:absolute;
  top:11px;
  bottom:11px;
  left:53px;
  width:1px;
  background:linear-gradient(#ffb23c,#ffb23c);
  opacity:.45;
  content:"";
}
.iphone--hero .day-item:nth-child(2)::before {
  background:#3cc0d8;
}
.iphone--hero .day-item:nth-child(3)::before {
  background:#2ecf62;
}
.iphone--hero .day-item time {
  color:#4c545c;
  font-size:7px;
  font-weight:800;
}
.iphone--hero .day-item em {
  width:25px;
  height:25px;
  border-radius:10px;
  background:
    radial-gradient(circle,#ff8f00 0 3px,transparent 4px),
    #fff2d9;
  color:transparent;
}
.iphone--hero .day-item:nth-child(2) em {
  background:radial-gradient(circle,#25b8cd 0 3px,transparent 4px),#ddf8fb;
}
.iphone--hero .day-item:nth-child(3) em {
  background:radial-gradient(circle,#29c860 0 3px,transparent 4px),#e0f8e8;
}
.iphone--hero .day-item div {
  display:grid;
  gap:5px;
}
.iphone--hero .day-item b,
.iphone--hero .day-item small {
  display:block;
  overflow:hidden;
  color:transparent;
  border-radius:999px;
}
.iphone--hero .day-item b {
  width:92px;
  height:10px;
  background:#1d242a;
}
.iphone--hero .day-item small {
  width:128px;
  height:7px;
  background:#d9e0e9;
}
.iphone--hero .ai-tip {
  display:grid;
  grid-template-columns:26px 1fr;
  gap:9px;
  margin:0;
  padding:11px;
  border:1px solid #ffeac8;
  border-radius:18px;
  background:linear-gradient(180deg,#fffdf9,#fff8ec);
  color:#1f2428;
  box-shadow:0 10px 20px #eadcc84d;
}
.iphone--hero .ai-tip span {
  display:grid;
  width:25px;
  height:25px;
  place-items:center;
  border-radius:9px;
  background:#fff1d8;
  color:#ff9900;
  font-size:13px;
}
.iphone--hero .ai-tip p {
  margin:0;
  color:transparent;
}
.iphone--hero .ai-tip p::before,
.iphone--hero .ai-tip p::after {
  display:block;
  height:8px;
  border-radius:999px;
  background:#f3b15d;
  content:"";
}
.iphone--hero .ai-tip p::before {
  width:145px;
  margin:3px 0 6px;
}
.iphone--hero .ai-tip p::after {
  width:96px;
  background:#f2d3a3;
}
.iphone--hero .tabbar {
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:0;
  margin:auto 1px 0;
  padding:9px 8px;
  border:1px solid #eef1f4;
  border-radius:24px;
  background:#fff;
  box-shadow:0 -8px 24px #cbd4df42,0 8px 20px #dfe6ef52;
}
.iphone--hero .tabbar span,
.iphone--hero .tabbar b {
  position:relative;
  display:grid;
  width:100%;
  height:31px;
  place-items:end center;
  overflow:hidden;
  color:#4e555b;
  border-radius:15px;
  background:transparent;
  font-size:0;
}
.iphone--hero .tabbar span::before,
.iphone--hero .tabbar b::before {
  display:block;
  width:13px;
  height:13px;
  margin-bottom:9px;
  border-radius:4px;
  background:#555b61;
  content:"";
}
.iphone--hero .tabbar span:first-child {
  background:#dfeeff;
}
.iphone--hero .tabbar span:first-child::before {
  background:#0a84ff;
}
.iphone--hero .tabbar b::before {
  width:15px;
  height:15px;
  border-radius:50%;
  background:#22262a;
}

/* Final hero direction: real app screen inside a clean iPhone shell, like the feature cards. */
.iphone--hero {
  width:min(338px,72vw);
  padding:6px;
  border:6px solid #181a1c;
  border-radius:44px;
  overflow:hidden;
  background:#111315;
  box-shadow:
    0 30px 58px #1f272b30,
    0 12px 22px #11161918,
    0 0 0 1px #5f6467,
    inset 0 0 0 1px #060707,
    inset 0 1px 0 #697074;
  transform:rotate(-3.5deg);
}
.iphone--hero::before {
  top:23%;
  right:-9px;
  width:3px;
  height:54px;
  border-radius:0 5px 5px 0;
  background:#202326;
  box-shadow:0 -72px 0 #202326;
}
.iphone--hero::after {
  top:18%;
  left:-9px;
  width:3px;
  height:31px;
  border-radius:5px 0 0 5px;
  background:#202326;
  box-shadow:0 47px 0 #202326,0 91px 0 #202326;
}
.iphone--hero .iphone__screen,
.iphone--hero .iphone__safe-area {
  visibility:hidden;
}
.iphone--hero .iphone__island {
  z-index:8;
  top:16px;
  width:31%;
  height:17px;
  border:0;
  background:
    radial-gradient(circle at 78% 50%,#1d2124 0 2px,transparent 3px),
    linear-gradient(180deg,#111315,#070808);
  box-shadow:
    0 1px 0 #ffffff18,
    0 2px 4px #00000036,
    inset 0 0 0 1px #1f2326,
    inset 0 1px 1px #51565a55;
}
.actual-shot--hero {
  position:absolute;
  z-index:2;
  inset:6px;
  display:block;
  width:calc(100% - 12px);
  height:calc(100% - 12px);
  border-radius:35px;
  background:#f7f9fd;
  object-fit:cover;
  object-position:top center;
}

/* 1:1 outline match with the app-card reference phone. */
.iphone--hero {
  width:min(300px,68vw);
  padding:5px;
  border:5px solid #17191b;
  border-radius:39px;
  overflow:hidden;
  background:#17191b;
  box-shadow:
    0 24px 44px #20283324,
    0 4px 10px #10141614,
    inset 0 0 0 1px #303438;
  transform:rotate(-4deg);
}
.iphone--hero::before,
.iphone--hero::after {
  display:none;
}
.iphone--hero .iphone__island {
  z-index:8;
  top:14px;
  width:30%;
  height:15px;
  border:0;
  border-radius:999px;
  background:#090a0b;
  box-shadow:
    0 1px 0 #ffffff20,
    0 1px 3px #00000034,
    inset 0 1px 1px #2d3134;
}
.actual-shot--hero {
  inset:5px;
  width:calc(100% - 10px);
  height:calc(100% - 10px);
  border-radius:33px;
  object-fit:cover;
  object-position:top center;
}

.proof { display:flex; align-items:center; justify-content:space-between; padding:28px 0 112px; border-top:1px solid var(--line); color:#808587; font-size:11px; }
.proof > div { display:flex; align-items:center; gap:15px; color:#73787b; font-size:10px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.proof span { width:4px; height:4px; border-radius:50%; background:#b8bdba; }

.screens { padding-bottom:145px; }
.section-heading { max-width:650px; }.section-heading h2 { margin-bottom:20px; font-size:clamp(38px,4.3vw,62px); line-height:1; letter-spacing:-.075em; }
.section-heading > p:not(.eyebrow) { max-width:495px; color:var(--muted); font-size:14px; }
.screen-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:16px; margin-top:48px; }
.screen-card { position:relative; min-height:500px; overflow:hidden; padding:30px; border:1px solid var(--line); border-radius:20px; background:#fff; }
.screen-card__copy { position:relative; z-index:2; max-width:250px; }.feature-number { margin-bottom:10px; color:#8f9696; font:10px "DM Mono",monospace; }
.screen-card h3 { margin-bottom:10px; font-size:22px; line-height:1.12; letter-spacing:-.06em; }
.screen-card__copy > p:last-child { margin-bottom:0; color:var(--muted); font-size:12px; line-height:1.6; }
.mini-phone { position:absolute; right:38px; bottom:-95px; width:215px; height:440px; padding:32px 13px 20px; overflow:hidden; border:6px solid #17191b; border-radius:39px; background:linear-gradient(180deg,#fbfcff,#f6f8fc); box-shadow:0 24px 42px #20242830,0 0 0 1px #5f6467,inset 0 0 0 1px #eef2f7; color:#262a2c; }
.mini-phone::before { position:absolute; z-index:6; top:0; left:0; right:0; height:42px; border-radius:32px 32px 0 0; background:linear-gradient(180deg,#fbfcff 0%,#f8fbff 74%,#f8fbff00 100%); content:""; pointer-events:none; }
.actual-card-shot { position:absolute; margin-top: 25px; inset:0; display:block; width:100%; height:100%; border-radius:30px; background:#f7f8fb; object-fit:cover; object-position:top center; }
.mini-island { z-index:7; top:10px; width:31%; height:15px; border:0; background:linear-gradient(180deg,#111315,#070808); box-shadow:inset 0 1px 1px #555b5f66,0 1px 3px #00000028; }
.mini-status { display:flex; justify-content:space-between; color:#4e5555; font-size:7px; font-weight:800; }.mini-status span { letter-spacing:-1px; }
.overline { display:block; margin-top:25px; color:#8b9292; font-size:7px; font-weight:800; letter-spacing:.12em; }
.mini-phone h4 { margin:7px 0; font-size:17px; line-height:1.1; letter-spacing:-.07em; }
.screen-card--voice { background:#eaf1ff; }.screen-card--voice .mini-phone { transform:rotate(-5deg); }.voice-orb { display:flex; align-items:center; justify-content:center; gap:4px; height:110px; margin:19px 0 14px; border-radius:50%; background:#e9f0ff; }.voice-orb i { width:4px; border-radius:10px; background:#3978f5; }.voice-orb i:nth-child(1),.voice-orb i:nth-child(7) { height:12px; }.voice-orb i:nth-child(2),.voice-orb i:nth-child(6) { height:25px; }.voice-orb i:nth-child(3),.voice-orb i:nth-child(5) { height:43px; }.voice-orb i:nth-child(4) { height:31px; }
.transcript { padding:10px; border-radius:9px; background:#f2f4f4; color:#5d6666; font-size:8px; line-height:1.5; }.mini-phone button { width:100%; margin-top:12px; padding:9px; border:0; border-radius:9px; background:#3778f6; color:#fff; font:800 8px Manrope,Arial,sans-serif; }
.screen-card--ai { background:#f0edf9; }.screen-card--ai .mini-phone { right:55px; transform:rotate(5deg); background:#fcfbff; }.chat-head { display:grid; grid-template-columns:24px 1fr; align-items:center; margin-top:22px; }.chat-head span { display:grid; width:20px; height:20px; grid-row:span 2; place-items:center; border-radius:7px; background:#ded6f6; color:#7650dc; }.chat-head b { font-size:9px; }.chat-head small { color:#8d9294; font-size:7px; }.bubble { width:84%; margin-top:14px; padding:8px; border-radius:9px; font-size:8px; line-height:1.45; }.bubble--user { margin-left:auto; border-bottom-right-radius:2px; background:#3978f5; color:#fff; }.bubble--ai { border-bottom-left-radius:2px; background:#f0eef4; }.suggestions { display:grid; gap:5px; margin-top:10px; }.suggestions span { padding:6px; border:1px solid #e5e3eb; border-radius:7px; color:#6245bb; font-size:7px; }.composer { position:absolute; bottom:17px; left:13px; right:13px; padding:8px; border:1px solid #e5e5e6; border-radius:9px; color:#909596; font-size:7px; }.composer b { float:right; display:grid; width:14px; height:14px; place-items:center; border-radius:4px; background:#272d31; color:#fff; }
.screen-card--route { background:#e7f2e9; }.screen-card--route .mini-phone { right:50px; background:#daeade; transform:rotate(-3deg); }.map { position:absolute; top:52px; left:0; right:0; height:230px; overflow:hidden; background:repeating-linear-gradient(32deg,transparent 0 24px,#c7dccd 25px 27px),repeating-linear-gradient(110deg,transparent 0 39px,#c9ddd0 40px 42px); }.route-line { position:absolute; top:64px; left:28px; width:145px; height:110px; border:3px solid #3978f5; border-color:#3978f5 transparent transparent #3978f5; border-radius:60px 0 0 0; transform:rotate(18deg); }.pin { position:absolute; width:12px; height:12px; border:3px solid #fff; border-radius:50%; background:#3978f5; box-shadow:0 2px 5px #345; }.pin--one { top:60px; left:35px; }.pin--two { top:99px; left:101px; }.pin--three { top:158px; right:33px; }.route-sheet { position:absolute; z-index:1; left:7px; right:7px; bottom:7px; padding:13px; border-radius:13px; background:#fff; box-shadow:0 5px 14px #506b5822; }.route-sheet small { color:#8b9390; font-size:6px; font-weight:800; letter-spacing:.1em; }.route-sheet h4 { margin:3px 0 8px; font-size:16px; }.route-sheet p { display:flex; gap:5px; margin:4px 0; color:#5e6867; font-size:7px; }.route-sheet p span { color:#3978f5; }.route-sheet p b { margin-left:auto; color:#89918e; font-weight:500; }
.screen-card--focus { background:#292f33; color:#fff; }.screen-card--focus .screen-card__copy > p:last-child { color:#c0c9c8; }.screen-card--focus .feature-number { color:#a3b0b1; }.screen-card--focus .mini-phone { right:50px; background:#f8fbf8; transform:rotate(4deg); }.focus-ring { display:grid; width:132px; height:132px; place-content:center; margin:26px auto 17px; border:10px solid #d6f1df; border-right-color:#40aa70; border-bottom-color:#40aa70; border-radius:50%; text-align:center; }.focus-ring b { font-size:20px; letter-spacing:-.07em; }.focus-ring small { color:#858d8c; font-size:7px; }.focus-bars { display:flex; align-items:end; justify-content:center; gap:5px; height:35px; }.focus-bars i { width:7px; border-radius:5px 5px 0 0; background:#9bd5af; }.focus-bars i:nth-child(1){height:12px}.focus-bars i:nth-child(2){height:21px}.focus-bars i:nth-child(3){height:16px}.focus-bars i:nth-child(4){height:30px;background:#46aa71}.focus-bars i:nth-child(5){height:24px}.focus-bars i:nth-child(6){height:33px}.focus-bars i:nth-child(7){height:18px}.focus-stat { display:flex; align-items:center; gap:7px; margin:15px 7px; padding:8px; border-radius:8px; background:#eff7f1; }.focus-stat > span { display:grid; width:20px; height:20px; place-items:center; border-radius:6px; background:#ccebd6; color:#328759; }.focus-stat small,.focus-stat b { display:block; font-size:7px; }.focus-stat small { color:#88908e; }
.real-gallery { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; align-items:start; max-width:860px; margin:74px auto 0; }
.real-gallery__item { margin:0; }
.real-gallery__item--raised { margin-top:42px; }
.real-gallery__device { position:relative; padding:8px; border:8px solid #161718; border-radius:42px; background:linear-gradient(110deg,#101112 0%,#43474a 42%,#1b1d1f 60%,#080909 100%); box-shadow:0 22px 38px #1e272b32,0 0 0 1px #676b6d,inset 0 0 0 1px #070808; }
.real-gallery__device::before { position:absolute; z-index:2; top:17px; left:50%; width:31%; height:15px; border:1px solid #2a2c2e; border-radius:100px; background:#0b0c0d; box-shadow:inset 0 1px 1px #4b4d4e; content:""; transform:translateX(-50%); }
.real-gallery__device::after { position:absolute; z-index:3; top:24%; right:-12px; width:4px; height:53px; border-radius:0 4px 4px 0; background:#25282a; box-shadow:0 -72px 0 #25282a; content:""; }
.real-gallery__device img { position:relative; z-index:1; display:block; width:100%; border-radius:27px; aspect-ratio:430 / 932; object-fit:cover; object-position:top; }
.real-gallery figcaption { display:grid; gap:2px; padding:12px 4px 0; }
.real-gallery figcaption b { font-size:13px; letter-spacing:-.04em; }.real-gallery figcaption span { color:var(--muted); font-size:10px; }
.gallery-note { margin:44px 0 0; color:#858b8b; font-size:10px; letter-spacing:.06em; text-align:center; text-transform:uppercase; }

.daily-flow { padding-top:0; padding-bottom:125px; }.daily-flow__heading { max-width:590px; margin-bottom:46px; }.daily-flow__heading h2 { margin-bottom:18px; font-size:clamp(40px,4.7vw,66px); line-height:.98; letter-spacing:-.078em; }.daily-flow__heading > p:last-child { max-width:510px; color:var(--muted); font-size:15px; line-height:1.65; }.daily-flow__grid { display:grid; grid-template-columns:repeat(3,1fr); gap:15px; margin-bottom:15px; }.daily-flow__step { display:grid; min-height:270px; grid-template-columns:37px 1fr; gap:15px; padding:26px 23px; border:1px solid var(--line); border-radius:19px; background:#fff; box-shadow:0 18px 38px #252d2f08; }.daily-flow__step:nth-child(2) { background:#edf3ff; }.daily-flow__step:nth-child(3) { background:#edf6ef; }.daily-flow__step > b { color:#3f7fe5; font:11px "DM Mono",monospace; }.daily-flow__step > div { display:flex; flex-direction:column; }.daily-flow__step span { color:#7c8584; font:10px "DM Mono",monospace; text-transform:uppercase; }.daily-flow__step h3 { margin:18px 0 12px; font-size:20px; line-height:1.08; letter-spacing:-.055em; }.daily-flow__step p { margin:0; color:var(--muted); font-size:12px; line-height:1.65; }.daily-flow__comfort { display:grid; grid-template-columns:.8fr 1.2fr; gap:8%; padding:34px; border-radius:20px; background:#282f32; color:#fff; }.daily-flow__comfort .feature-number { color:#a6cfb2; }.daily-flow__comfort h3 { max-width:350px; margin:0; font-size:26px; line-height:1.04; letter-spacing:-.06em; }.daily-flow__comfort ul { display:grid; gap:15px; margin:0; padding:0; list-style:none; }.daily-flow__comfort li { display:grid; grid-template-columns:145px 1fr; gap:12px; padding-bottom:14px; border-bottom:1px solid #4a5455; }.daily-flow__comfort li:last-child { padding-bottom:0; border-bottom:0; }.daily-flow__comfort li b { color:#ecf2ef; font-size:12px; }.daily-flow__comfort li span { color:#bac3c1; font-size:11px; line-height:1.55; }.feature-strip { padding:105px 0; background:#edf1ec; }.feature-strip__inner { display:grid; grid-template-columns:1fr 1fr; gap:12%; align-items:end; }.feature-strip h2 { margin-bottom:0; font-size:clamp(38px,4.2vw,58px); line-height:1; letter-spacing:-.075em; }.feature-strip ul { margin:0; padding:0; list-style:none; }.feature-strip li { display:flex; align-items:center; gap:16px; padding:14px 0; border-bottom:1px solid #d7ddd7; font-size:13px; font-weight:700; }.feature-strip li:first-child { border-top:1px solid #d7ddd7; }.feature-strip li b { color:#72a080; font:10px "DM Mono",monospace; }

.story { display:grid; grid-template-columns:1.15fr .85fr; gap:9%; align-items:center; width:100%; padding:130px max(20px,calc((100% - 1180px)/2)); }.story__visual { position:relative; height:420px; overflow:hidden; border-radius:18px; background:#d5e6d9; }.story__sun { position:absolute; top:42px; right:16%; width:280px; height:280px; border-radius:50%; background:#eef4d6; }.story__line { position:absolute; top:76px; left:12%; display:grid; height:330px; align-content:space-between; border-left:1px dashed #85a38c; }.story__line i { display:block; width:9px; height:9px; margin-left:-5px; border:2px solid #60846b; border-radius:50%; background:#d5e6d9; }.story__note { position:absolute; right:10%; bottom:60px; width:210px; padding:17px; border-radius:12px; background:#fff; box-shadow:0 12px 30px #6a837422; }.story__note span,.story__note small { display:block; color:#8a9290; font-size:9px; }.story__note b { display:block; margin:6px 0 2px; font-size:12px; }.story__copy h2 { font-size:clamp(38px,4.4vw,61px); line-height:1; letter-spacing:-.075em; }.story__copy > p:not(.eyebrow) { max-width:370px; color:var(--muted); font-size:14px; }

.reviews { padding:15px 0 145px; }.review-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:15px; align-items:start; margin-top:48px; }.review { display:flex; min-height:245px; flex-direction:column; justify-content:space-between; margin:0; padding:25px; border:1px solid var(--line); border-radius:17px; background:#fff; }.review--offset { margin-top:38px; background:#e8eefc; }.review blockquote { margin:0; font-size:16px; line-height:1.5; letter-spacing:-.025em; }.review figcaption { display:flex; align-items:center; gap:10px; margin-top:22px; }.review figcaption > span { display:grid; width:29px; height:29px; place-items:center; border-radius:50%; background:#f0ede5; font-size:11px; font-weight:800; }.review figcaption b,.review figcaption small { display:block; font-size:10px; }.review figcaption small { color:#888e8e; }

.final-cta { position:relative; min-height:380px; overflow:hidden; margin-top:64px; margin-bottom:55px; padding:65px 7%; border-radius:22px; background:var(--night); color:#fff; }.final-cta h2 { margin-bottom:15px; font-size:clamp(42px,5vw,68px); line-height:.98; letter-spacing:-.075em; }.final-cta > div:first-child > p:not(.eyebrow) { margin-bottom:25px; color:#bac2c1; font-size:14px; }.final-cta__actions { display:flex; flex-wrap:wrap; gap:12px; align-items:center; }.eyebrow--light { color:#b8c5c2; }.eyebrow--light span { background:#a4e0bb; }.button--light { background:#f7f8f5; color:#202426; }.button--light:hover { background:#a4e0bb; }.final-cta__orb { position:absolute; right:-25px; bottom:-60px; display:grid; width:325px; height:325px; place-items:center; border:1px solid #4a5558; border-radius:50%; color:#b5e6c4; font-size:44px; box-shadow:0 0 0 46px #313a3c,0 0 0 92px #374144; }
.footer { display:grid; grid-template-columns:1fr 1fr 1.5fr auto; align-items:center; width:min(1180px,calc(100% - 40px)); gap:18px; margin:auto; padding:10px 0 35px; color:#7b8081; font-size:11px; }.footer p { margin:0; }.footer div { display:flex; justify-content:flex-end; gap:20px; }.footer small { white-space:nowrap; }

.pricing-page { padding:70px 0 115px; }.pricing-intro { max-width:760px; margin:0 auto 45px; text-align:center; }.pricing-intro .eyebrow { justify-content:center; }.pricing-intro h1 { margin-bottom:19px; font-size:clamp(43px,5.5vw,72px); }.pricing-intro > p:last-child { max-width:620px; margin:auto; color:var(--muted); font-size:15px; }.pricing-includes { margin:0 0 42px; padding:22px 25px; border:1px solid var(--line); border-radius:20px; background:#fff; box-shadow:0 16px 36px #252d2f08; }.pricing-includes > p { margin:0 0 16px; color:#879090; }.pricing-includes > div { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }.pricing-includes article { display:grid; gap:7px; padding-right:14px; border-right:1px solid var(--line); }.pricing-includes article:last-child { padding-right:0; border-right:0; }.pricing-includes b { color:#202527; font-size:14px; letter-spacing:-.03em; }.pricing-includes span { color:#737a7b; font-size:11px; line-height:1.55; }.price-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:15px; align-items:stretch; }.price-card { position:relative; display:flex; min-height:525px; flex-direction:column; padding:25px; border:1px solid var(--line); border-radius:19px; background:#fff; }.price-card h2 { margin:0 0 12px; font-size:29px; letter-spacing:-.065em; }.price { display:flex; align-items:baseline; gap:7px; margin:0; }.price b { font-size:35px; letter-spacing:-.07em; }.price span { color:#8b9091; font-size:11px; }.price-description { min-height:53px; margin:19px 0; color:var(--muted); font-size:12px; }.price-card ul { display:grid; gap:11px; margin:0 0 25px; padding:0; list-style:none; font-size:12px; }.price-card li:before { content:"✓"; display:inline-grid; width:15px; height:15px; place-items:center; margin-right:9px; border-radius:50%; background:#e5f3e8; color:#37855a; font-size:9px; font-weight:800; }.price-card .button { margin-top:auto; }.button--outline { border:1px solid #252d2f; background:#fff; color:#252d2f; }.button--outline:hover { border-color:var(--blue); background:#eef4ff; color:var(--blue); }.price-card small { margin-top:11px; color:#858b8c; font-size:9px; line-height:1.4; text-align:center; }.price-card--free { border-color:#cbd8ff; background:linear-gradient(155deg,#f7faff 0%,#fff 52%); }.price-card--free .badge { background:#e5edff; color:#2874dc; }.price-card--featured { transform:translateY(-12px); border-color:#272e32; background:#272e32; color:#fff; }.price-card--featured .feature-number,.price-card--featured .price span,.price-card--featured .price-description,.price-card--featured small { color:#b9c1c2; }.price-card--featured li:before { background:#a5e1bc; color:#21432d; }.price-card--featured .button { background:#a5e1bc; color:#18241e; }.badge { position:absolute; top:18px; right:17px; margin:0; padding:5px 8px; border-radius:20px; background:#3d4b4b; color:#bcecc9; font-size:8px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }.pricing-note { max-width:500px; margin:35px auto 0; color:#8d9393; font-size:11px; text-align:center; }

.privacy-page { padding:42px 0 115px; }
.privacy-hero { position:relative; overflow:hidden; padding:86px 0 72px; border-top:1px solid var(--line); }
.privacy-hero:after { position:absolute; right:0; bottom:32px; width:280px; height:280px; border:1px solid #e4e7e1; border-radius:50%; box-shadow:0 0 0 58px #eef1ec,0 0 0 116px #f3f4f0; content:""; z-index:-1; }
.privacy-hero h1 { max-width:780px; margin-bottom:22px; font-size:clamp(54px,8vw,104px); line-height:.86; letter-spacing:-.085em; }
.privacy-hero > p:not(.eyebrow) { max-width:610px; margin-bottom:28px; color:var(--muted); font-size:17px; line-height:1.65; }
.privacy-hero__meta { display:flex; flex-wrap:wrap; gap:10px; align-items:center; color:#6f7678; font-size:12px; font-weight:800; }
.privacy-hero__meta span,.privacy-hero__meta a { display:inline-flex; align-items:center; min-height:38px; padding:0 14px; border:1px solid var(--line); border-radius:999px; background:#fff; box-shadow:0 10px 20px #20282a0b; }
.privacy-hero__meta a { color:var(--blue); }
.privacy-summary { display:grid; grid-template-columns:repeat(3,1fr); gap:15px; margin-bottom:54px; }
.privacy-summary article { min-height:210px; padding:25px; border:1px solid var(--line); border-radius:19px; background:#fff; box-shadow:0 18px 38px #252d2f0c; }
.privacy-summary article:nth-child(2) { background:#eaf1ff; }
.privacy-summary article:nth-child(3) { background:#eef5ed; }
.privacy-summary span { display:block; margin-bottom:38px; color:#8a9292; font:10px "DM Mono",monospace; }
.privacy-summary h2 { margin-bottom:12px; font-size:22px; line-height:1.05; letter-spacing:-.06em; }
.privacy-summary p { margin:0; color:var(--muted); font-size:12px; line-height:1.65; }
.privacy-layout { display:grid; grid-template-columns:240px minmax(0,1fr); gap:42px; align-items:start; }
.privacy-toc { position:sticky; top:22px; display:grid; gap:6px; padding:18px; border:1px solid var(--line); border-radius:18px; background:#fff; box-shadow:0 18px 38px #252d2f0c; }
.privacy-toc p { margin:0 0 10px; color:#8a9292; font:10px "DM Mono",monospace; text-transform:uppercase; }
.privacy-toc a { padding:9px 11px; border-radius:11px; color:#596063; font-size:12px; font-weight:800; transition:background .2s,color .2s; }
.privacy-toc a:hover { background:#eef4ff; color:var(--blue); }
.privacy-document { padding:clamp(28px,5vw,58px); border:1px solid var(--line); border-radius:24px; background:#fff; box-shadow:0 26px 70px #252d2f12; }
.privacy-document h2 { margin:42px 0 13px; padding-top:2px; font-size:28px; line-height:1.08; letter-spacing:-.065em; }
.privacy-document h2:first-of-type { margin-top:34px; }
.privacy-document p,.privacy-document li { color:#62696c; font-size:15px; line-height:1.78; }
.privacy-document p { margin-bottom:16px; }
.privacy-document ul { display:grid; gap:9px; margin:0 0 18px; padding-left:20px; }
.privacy-document strong { color:#1c2022; }
.privacy-document a { color:var(--blue); font-weight:800; }
.privacy-notice { margin-bottom:30px; padding:20px 22px; border:1px solid #cfe1ff; border-radius:18px; background:#eef5ff; color:#52606a; font-size:14px; line-height:1.7; }
.privacy-notice strong { display:block; margin-bottom:5px; color:#1c2022; font-size:15px; }
.privacy-document--full { overflow:hidden; }
/* A long legal document can never satisfy the global reveal threshold. Keep it readable without JavaScript. */
.privacy-document--full.reveal { opacity:1; transform:none; }
.privacy-document--full > h1 { margin:0 0 10px; color:#171b1d; font-size:clamp(38px,6vw,68px); line-height:.92; letter-spacing:-.075em; }
.privacy-document--full > h3 { margin:26px 0 9px; color:#1c2022; font-size:18px; line-height:1.25; letter-spacing:-.035em; }
.privacy-document--full .meta { margin:0 0 28px; color:var(--blue); font:800 12px "DM Mono",monospace; letter-spacing:.02em; text-transform:uppercase; }
.privacy-document--full .notice,
.privacy-document--full .summary,
.privacy-document--full .toc { margin:28px 0; padding:22px 24px; border:1px solid #cfe1ff; border-radius:19px; background:#eef5ff; }
.privacy-document--full .notice.warning { border-color:#f3d9ae; background:#fff7e8; }
.privacy-document--full .notice p,
.privacy-document--full .summary p,
.privacy-document--full .toc p { margin-bottom:12px; }
.privacy-document--full .notice p:last-child,
.privacy-document--full .summary p:last-child,
.privacy-document--full .toc p:last-child { margin-bottom:0; }
.privacy-document--full .summary h2,
.privacy-document--full .toc h2 { margin:0 0 12px; padding:0; font-size:20px; letter-spacing:-.05em; }
.privacy-document--full .summary ul { margin:0; }
.privacy-document--full .toc ol { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 22px; margin:0; padding-left:20px; }
.privacy-document--full .toc li { margin:0; break-inside:avoid; }
.privacy-document--full .small { font-size:13px; }

.reveal { opacity:0; transform:translateY(20px); transition:opacity .7s ease,transform .7s ease; }.reveal.is-visible { opacity:1; transform:none; }.reveal--delay { transition-delay:.12s; }.reveal--delay-2 { transition-delay:.22s; }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; }.reveal { opacity:1; transform:none; transition:none; } }
@media (max-width:1100px) { .pricing-includes > div,.price-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.pricing-includes article:nth-child(2) { border-right:0; }.pricing-includes article:nth-child(-n+2) { padding-bottom:15px; border-bottom:1px solid var(--line); }.pricing-includes article:nth-child(n+3) { padding-top:15px; }.price-card--featured { transform:none; } }
@media (max-width:960px) { .daily-flow__comfort { grid-template-columns:1fr; gap:28px; }.daily-flow__comfort h3 { max-width:500px; } }
@media (max-width:960px) {
  .hero { grid-template-columns:1fr; padding-top:38px; gap:35px; }.hero__copy { max-width:700px; text-align:center; }.hero__copy .eyebrow,.hero__actions { justify-content:center; }.hero__text { margin-inline:auto; }.hero__visual { min-height:540px; }
  .screen-card { min-height:465px; }.screen-card__copy { max-width:240px; }.mini-phone { right:21px; width:195px; height:400px; }.screen-card--ai .mini-phone,.screen-card--route .mini-phone,.screen-card--focus .mini-phone { right:25px; }
  .real-gallery { grid-template-columns:repeat(2,minmax(0,250px)); justify-content:center; max-width:540px; margin-inline:auto; }.real-gallery__item--raised { margin-top:0; }
  .feature-strip__inner { gap:7%; }.story { grid-template-columns:1fr; gap:50px; padding-top:100px; padding-bottom:100px; }.story__copy { text-align:center; }.story__copy .eyebrow { justify-content:center; }.story__copy > p:not(.eyebrow) { margin-inline:auto; }
  .privacy-summary { grid-template-columns:1fr; }.privacy-summary article { min-height:auto; }.privacy-layout { grid-template-columns:1fr; gap:24px; }.privacy-toc { position:relative; top:auto; grid-template-columns:repeat(4,1fr); }.privacy-toc p { grid-column:1 / -1; }
  .footer { grid-template-columns:1fr 1fr; }.footer p,.footer small { display:none; }.footer div { justify-content:flex-end; }
}
@media (max-width:680px) {
  .section { width:calc(100% - 28px); }.site-header { width:calc(100% - 28px); height:74px; }.site-header nav { display:none; }.site-header .button { padding:10px 13px; }
  h1 { font-size:clamp(43px,13vw,64px); }.hero { min-height:auto; padding-bottom:45px; }.hero__text { font-size:15px; }.hero__actions { display:grid; gap:15px; }.hero__actions .button { width:100%; }.hero__visual { min-height:520px; margin:0 -14px -22px; transform:none; }.hero__visual .iphone--hero { width:min(300px,68vw); transform:rotate(-4deg); }.halo--one { width:430px; height:430px; }.halo--two { width:545px; height:545px; }
  .floating-note { max-width:132px; gap:7px; padding:9px; border-radius:13px; font-size:9px; }.floating-note > span:first-child { width:24px; height:24px; }.floating-note small { font-size:7px; }.floating-note b { font-size:8px; line-height:1.2; }.floating-note--left { left:0; top:31%; }.floating-note--right { right:0; bottom:23%; }
  .proof { display:block; padding-bottom:80px; text-align:center; }.proof > div { justify-content:center; margin-top:15px; }.proof > div strong:nth-of-type(3),.proof > div strong:nth-of-type(4),.proof > div span:nth-of-type(n+2) { display:none; }
  .screens { padding-bottom:90px; }.screen-grid { grid-template-columns:1fr; margin-top:32px; }.screen-card { min-height:475px; padding:25px; }.screen-card__copy { max-width:220px; }.screen-card h3 { font-size:20px; }.mini-phone { right:20px; width:195px; height:400px; }.screen-card--ai .mini-phone,.screen-card--route .mini-phone,.screen-card--focus .mini-phone { right:24px; }.daily-flow { padding-bottom:75px; }.daily-flow__heading { margin-bottom:30px; }.daily-flow__grid { grid-template-columns:1fr; }.daily-flow__step { min-height:0; grid-template-columns:30px 1fr; padding:23px 20px; }.daily-flow__step h3 { margin-top:12px; }.daily-flow__comfort { padding:25px 20px; }.daily-flow__comfort li { grid-template-columns:1fr; gap:5px; }.feature-strip { padding:70px 0; }.feature-strip__inner { grid-template-columns:1fr; gap:35px; }.feature-strip li { font-size:12px; }
  .real-gallery { grid-template-columns:repeat(2,minmax(0,150px)); gap:13px; margin-top:50px; }.real-gallery figcaption b { font-size:12px; }.real-gallery figcaption span { font-size:9px; }.gallery-note { margin-top:32px; font-size:9px; }
  .story { padding:70px 28px; }.story__visual { height:310px; }.story__sun { top:25px; width:210px; height:210px; }.story__line { top:45px; height:240px; }.story__note { right:7%; bottom:30px; }
  .reviews { padding-bottom:90px; }.review-grid { grid-template-columns:1fr; margin-top:30px; }.review--offset { margin-top:0; }.review { min-height:195px; }.final-cta { width:calc(100% - 28px); min-height:370px; margin-top:36px; padding:48px 27px; }.final-cta__orb { right:-40px; width:220px; height:220px; }.footer { display:flex; flex-wrap:wrap; width:calc(100% - 28px); }.footer div { width:100%; justify-content:flex-start; flex-wrap:wrap; gap:12px; }
  .privacy-page { padding-top:20px; }.privacy-hero { padding:54px 0 46px; }.privacy-hero h1 { font-size:clamp(48px,17vw,76px); }.privacy-hero > p:not(.eyebrow) { font-size:15px; }.privacy-hero:after { right:-120px; bottom:10px; }.privacy-hero__meta { align-items:stretch; }.privacy-hero__meta span,.privacy-hero__meta a { width:100%; justify-content:center; }.privacy-summary { gap:12px; margin-bottom:30px; }.privacy-summary article { padding:22px; }.privacy-summary span { margin-bottom:24px; }.privacy-toc { grid-template-columns:1fr 1fr; padding:14px; }.privacy-toc a { padding:8px; font-size:11px; }.privacy-document { padding:24px 20px; border-radius:19px; }.privacy-document h2 { font-size:23px; }.privacy-document p,.privacy-document li { font-size:14px; line-height:1.72; }.privacy-document--full > h1 { font-size:40px; }.privacy-document--full .notice,.privacy-document--full .summary,.privacy-document--full .toc { margin:22px 0; padding:18px; border-radius:16px; }.privacy-document--full .toc ol { grid-template-columns:1fr; gap:7px; }.privacy-document--full .summary h2,.privacy-document--full .toc h2 { font-size:19px; }
  .pricing-page { padding-top:45px; }.pricing-includes { padding:19px; }.pricing-includes > div,.price-grid { grid-template-columns:1fr; }.pricing-includes article,.pricing-includes article:nth-child(2) { padding:0 0 14px; border-right:0; border-bottom:1px solid var(--line); }.pricing-includes article:nth-child(n+3) { padding-top:0; }.pricing-includes article:last-child { padding-bottom:0; border-bottom:0; }.price-grid { max-width:480px; margin:auto; }.price-card--featured { transform:none; }.price-card { min-height:420px; }
}

/* Final hero alignment and scale pass. */
.hero__visual {
  min-height:690px;
  place-items:center;
  transform:translateY(-8px);
}
.hero__visual .iphone--hero {
  width:min(380px,78vw);
  transform:translateX(4px) rotate(-4deg);
}
.hero__visual .actual-shot--hero {
  inset:5px;
  width:calc(100% - 10px);
  height:calc(100% - 10px);
}
.hero__visual .halo--one {
  width:580px;
  height:580px;
}
.hero__visual .halo--two {
  width:760px;
  height:760px;
}
.hero__visual .floating-note--left {
  top:33%;
  left:4%;
}
.hero__visual .floating-note--right {
  right:2%;
  bottom:31%;
}
.proof {
  margin-top:-34px;
}
@media (max-width:960px) {
  .hero__visual {
    min-height:640px;
    transform:none;
  }
  .hero__visual .iphone--hero {
    width:min(360px,72vw);
    transform:rotate(-4deg);
  }
  .proof {
    margin-top:0;
  }
}
@media (max-width:680px) {
  .hero__visual {
    min-height:590px;
    margin:0 -14px -6px;
  }
  .hero__visual .iphone--hero {
    width:min(340px,78vw);
  }
  .hero__visual .floating-note--left {
    left:0;
    top:30%;
  }
  .hero__visual .floating-note--right {
    right:0;
    bottom:28%;
  }
}

/* Desktop hero correction: make the product visual dominant and centered. */
@media (min-width:961px) {
  .hero {
    min-height:760px;
    grid-template-columns:.92fr 1.08fr;
    gap:12px;
    padding-bottom:96px;
  }
  .hero__visual {
    min-height:720px;
    transform:translate(-18px,-34px);
  }
  .hero__visual .iphone--hero {
    width:min(500px,38vw);
    transform:rotate(-4deg);
  }
  .hero__visual .halo--one {
    width:660px;
    height:660px;
  }
  .hero__visual .halo--two {
    width:850px;
    height:850px;
  }
  .hero__visual .floating-note--left {
    top:30%;
    left:3%;
  }
  .hero__visual .floating-note--right {
    right:-1%;
    bottom:36%;
  }
  .proof {
    margin-top:-86px;
  }
}

/* Product hero visual v2: isolated from old .mini-phone/.iphone rules. */
.product-hero-stage {
  position:relative;
  min-height:560px;
  display:grid;
  place-items:center;
  transform:none;
}
.product-hero-stage .halo--one {
  width:560px;
  height:560px;
}
.product-hero-stage .halo--two {
  width:720px;
  height:720px;
}
.product-hero-phone {
  position:relative !important;
  right:auto !important;
  bottom:auto !important;
  width:245px !important;
  height:auto !important;
  aspect-ratio:9 / 19.5;
  padding:0 !important;
  overflow:hidden !important;
  border:6px solid #17191b !important;
  border-radius:46px !important;
  background:#17191b !important;
  color:#262a2c;
  box-shadow:0 34px 70px #18212628,0 10px 18px #1014161c,inset 0 0 0 1px #3b4044 !important;
  transform:translate(8px,4px) rotate(-4deg) !important;
  z-index:2;
}
.product-hero-phone::before {
  position:absolute;
  z-index:6;
  top:0;
  left:0;
  right:0;
  height:44px;
  border-radius:40px 40px 0 0;
  background:linear-gradient(180deg,#fbfcff 0%,#f8fbff 72%,#f8fbff00 100%);
  content:"";
  pointer-events:none;
}
.product-hero-phone .iphone__safe-area,
.product-hero-phone .iphone__screen {
  display:none !important;
}
.product-hero-phone .iphone__island {
  z-index:8;
  top:14px;
  width:30%;
  height:15px;
  border:0;
  border-radius:999px;
  background:#090a0b;
  box-shadow:0 1px 0 #ffffff20,0 2px 5px #00000034,inset 0 1px 1px #2d3134;
}
.product-hero-shot {
  position:absolute !important;
  z-index:3 !important;
  inset:0 !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  margin:0 !important;
  border-radius:40px !important;
  object-fit:cover !important;
  object-position:top center !important;
}
.product-hero-stage .floating-note--left {
  top:31%;
  left:10%;
}
.product-hero-stage .floating-note--right {
  right:6%;
  bottom:29%;
  z-index:4;
}
@media (min-width:961px) {
  .hero {
    grid-template-columns:.9fr 1.1fr;
    min-height:700px;
    padding-bottom:78px;
  }
  .product-hero-stage {
    transform:translate(-14px,-6px);
  }
  .proof {
    margin-top:-46px;
  }
}
@media (max-width:960px) {
  .product-hero-stage {
    min-height:680px;
  }
  .product-hero-phone {
    width:min(410px,72vw) !important;
    height:auto !important;
    aspect-ratio:9 / 19.5;
    transform:rotate(-4deg) !important;
  }
}
@media (max-width:680px) {
  .product-hero-stage {
    min-height:600px;
    margin:0 -14px -10px;
  }
  .product-hero-phone {
    width:min(340px,78vw) !important;
  }
  .product-hero-stage .floating-note--left {
    left:0;
    top:31%;
  }
  .product-hero-stage .floating-note--right {
    right:0;
    bottom:29%;
  }
}

/* Mobile conversion and rendering pass — keep this final so it wins over legacy hero rules. */
.screens__swipe-hint {
  display:none;
}

.product-hero-label {
  display:none;
}

@media (max-width:680px) {
  html,
  body {
    max-width:100%;
    overflow-x:clip;
  }

  .site-header {
    position:sticky;
    z-index:50;
    top:0;
    width:100%;
    height:116px;
    padding:0 14px;
    align-items:flex-start;
    border-bottom:1px solid rgba(26,31,33,.08);
    background:rgba(248,248,245,.9);
    box-shadow:0 9px 30px rgba(24,31,35,.05);
    backdrop-filter:blur(18px) saturate(1.15);
    -webkit-backdrop-filter:blur(18px) saturate(1.15);
  }

  .site-header .brand {
    flex:0 1 auto;
    margin-top:15px;
    font-size:18px;
    white-space:nowrap;
  }

  .site-header nav {
    position:absolute;
    z-index:2;
    right:0;
    bottom:9px;
    left:0;
    display:flex !important;
    width:auto;
    gap:7px;
    padding:0 14px;
    overflow-x:auto;
    overscroll-behavior-inline:contain;
    scroll-snap-type:x proximity;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
  }

  .site-header nav::-webkit-scrollbar {
    display:none;
  }

  .site-header nav a {
    min-height:33px;
    flex:0 0 auto;
    padding:8px 11px;
    border:1px solid rgba(37,45,47,.09);
    border-radius:999px;
    background:rgba(255,255,255,.82);
    color:#525a5c;
    font-size:11px;
    line-height:15px;
    white-space:nowrap;
    scroll-snap-align:start;
    box-shadow:0 5px 14px rgba(23,30,33,.035);
  }

  .site-header nav a[lang] {
    border-color:#252d2f;
    background:#252d2f;
    color:#fff;
  }

  .site-header .button--small {
    min-width:0;
    flex:0 0 auto;
    gap:7px;
    margin-top:13px;
    padding:9px 12px;
    font-size:0;
    line-height:1;
    white-space:nowrap;
  }

  .site-header .button--small::before {
    content:"Web";
    font-size:11px;
  }

  .site-header .button--small .button__globe {
    width:13px;
    height:13px;
    flex:0 0 13px;
  }

  /* The first viewport must never be blank while IntersectionObserver is starting. */
  .reveal,
  .reveal--delay,
  .reveal--delay-2 {
    opacity:1 !important;
    transform:none !important;
    transition:none !important;
  }

  .hero {
    gap:10px;
    padding-top:28px;
    padding-bottom:30px;
  }

  .hero__copy {
    position:relative;
    z-index:3;
  }

  .hero h1 {
    font-size:clamp(39px,12.5vw,52px);
    line-height:.98;
    letter-spacing:-.078em;
  }

  .hero__text {
    max-width:35rem;
    font-size:14px;
    line-height:1.6;
  }

  .hero__actions {
    width:100%;
    max-width:390px;
    margin-inline:auto;
    justify-items:center;
  }

  .hero__actions .button {
    min-height:54px;
  }

  .microcopy {
    box-sizing:border-box;
    width:100%;
    max-width:280px;
    margin-inline:auto;
    padding-inline:12px;
    text-align:center;
    text-wrap:balance;
    overflow-wrap:anywhere;
    line-height:1.55;
  }

  .hero__actions .text-link {
    justify-self:center;
  }

  .hero__visual.product-hero-stage {
    position:relative;
    isolation:isolate;
    width:100%;
    min-height:550px;
    margin:14px 0 0;
    overflow:hidden;
    border:1px solid rgba(105,123,122,.16);
    border-radius:28px;
    background:
      radial-gradient(circle at 82% 15%,rgba(255,255,255,.94) 0 8%,transparent 30%),
      linear-gradient(145deg,#edf3ff 0%,#f3f6f1 52%,#e7f2eb 100%);
    box-shadow:0 24px 65px rgba(31,43,47,.10);
    transform:none;
  }

  .product-hero-stage::after {
    position:absolute;
    z-index:0;
    right:-72px;
    bottom:-78px;
    width:270px;
    height:270px;
    border:1px solid rgba(93,119,115,.13);
    border-radius:50%;
    box-shadow:0 0 0 48px rgba(255,255,255,.19),0 0 0 96px rgba(255,255,255,.12);
    content:"";
    pointer-events:none;
  }

  .product-hero-label {
    position:absolute;
    z-index:6;
    top:18px;
    left:18px;
    display:flex;
    align-items:center;
    gap:7px;
    margin:0;
    padding:8px 11px;
    border:1px solid rgba(125,144,143,.18);
    border-radius:999px;
    background:rgba(255,255,255,.76);
    color:#626c6d;
    font:700 9px "DM Mono",monospace;
    letter-spacing:.035em;
    text-transform:uppercase;
    box-shadow:0 9px 24px rgba(35,46,49,.08);
    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
  }

  .product-hero-label span {
    width:6px;
    height:6px;
    border-radius:50%;
    background:#3978f5;
    box-shadow:0 0 0 4px rgba(57,120,245,.11);
  }

  .product-hero-phone {
    position:absolute !important;
    top:auto !important;
    right:auto !important;
    bottom:-28px !important;
    left:50% !important;
    width:min(238px,72vw) !important;
    border-width:5px !important;
    border-radius:41px !important;
    transform:translateX(-50%) rotate(-2deg) !important;
    box-shadow:0 28px 52px rgba(24,33,38,.22),0 8px 16px rgba(16,20,22,.12),inset 0 0 0 1px #3b4044 !important;
  }

  .product-hero-shot {
    border-radius:37px !important;
  }

  .product-hero-stage .halo--one {
    width:360px;
    height:360px;
    opacity:.62;
  }

  .product-hero-stage .halo--two {
    width:480px;
    height:480px;
    opacity:.5;
  }

  .product-hero-stage .floating-note--left {
    z-index:7;
    left:12px;
    top:34%;
  }

  .product-hero-stage .floating-note--right {
    z-index:7;
    right:12px;
    bottom:21%;
  }

  .proof {
    margin-top:0;
    padding-top:22px;
    padding-bottom:68px;
  }

  /* Real screenshots become a tactile, space-efficient swipe gallery on phones. */
  .screens {
    width:100%;
    padding-bottom:82px;
  }

  .screens > .section-heading {
    width:calc(100% - 28px);
    margin-inline:auto;
  }

  .screens__swipe-hint {
    display:flex;
    width:calc(100% - 28px);
    align-items:center;
    justify-content:space-between;
    margin:20px auto 13px;
    color:#717879;
    font:700 10px "DM Mono",monospace;
    letter-spacing:.04em;
    text-transform:uppercase;
  }

  .screens__swipe-hint span {
    display:grid;
    width:31px;
    height:31px;
    place-items:center;
    border:1px solid #d9deda;
    border-radius:50%;
    background:#fff;
    color:var(--blue);
    font-size:16px;
    box-shadow:0 8px 20px rgba(24,31,35,.07);
    animation:swipe-cue 1.8s ease-in-out infinite;
  }

  .screen-grid {
    display:flex;
    gap:12px;
    margin:0;
    padding:0 14px 18px;
    overflow-x:auto;
    overscroll-behavior-inline:contain;
    scroll-padding-inline:14px;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
  }

  .screen-grid::-webkit-scrollbar {
    display:none;
  }

  .screen-card {
    min-width:0;
    min-height:500px;
    flex:0 0 min(86vw,340px);
    padding:24px;
    border-radius:22px;
    scroll-snap-align:center;
    scroll-snap-stop:always;
    box-shadow:0 20px 42px rgba(26,34,38,.08);
  }

  .screen-card:first-child {
    scroll-snap-align:start;
  }

  .screen-card__copy {
    max-width:220px;
  }

  .screen-card .mini-phone,
  .screen-card--ai .mini-phone,
  .screen-card--route .mini-phone,
  .screen-card--focus .mini-phone {
    right:18px;
    bottom:-72px;
    width:min(205px,60vw);
    height:420px;
  }

  .daily-flow__heading h2,
  .feature-strip h2 {
    font-size:clamp(36px,11vw,47px);
  }

  .daily-flow__comfort h3 {
    font-size:25px;
  }

  .final-cta {
    min-height:410px;
    overflow:hidden;
    padding:44px 23px;
    border-radius:20px;
  }

  .final-cta h2 {
    position:relative;
    z-index:2;
    font-size:clamp(37px,11vw,48px);
  }

  .final-cta > div:first-child {
    position:relative;
    z-index:2;
  }

  .final-cta__orb {
    right:-95px;
    bottom:-50px;
    width:245px;
    height:245px;
    opacity:.58;
  }

  .privacy-hero h1,
  .pricing-intro h1 {
    overflow-wrap:anywhere;
    font-size:clamp(40px,12vw,52px);
  }

  .footer {
    gap:19px;
    padding-bottom:28px;
  }
}

@media (max-width:360px) {
  .site-header {
    height:112px;
    padding-inline:12px;
  }

  .site-header .brand {
    margin-top:14px;
    font-size:17px;
  }

  .site-header .button--small {
    margin-top:12px;
    padding:8px 10px;
  }

  .site-header nav {
    bottom:7px;
    padding-inline:12px;
  }

  .hero h1 {
    font-size:38px;
  }

  .product-hero-phone {
    bottom:-22px !important;
    width:min(222px,72vw) !important;
  }

  .hero__visual.product-hero-stage {
    min-height:520px;
  }

  .floating-note {
    max-width:118px;
    padding:8px;
  }
}

/* Product knowledge architecture: features, news, roadmap and help. */
.sr-only {
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}
.site-header .nav-features {
  display:flex;
  align-items:center;
}

.site-header .nav-features > a {
  display:inline-flex;
  align-items:center;
  gap:6px;
}

.nav-chevron {
  color:var(--blue);
  font-size:10px;
  transition:transform .2s ease;
}

.feature-mega {
  position:fixed;
  z-index:120;
  top:72px;
  left:50%;
  display:grid;
  width:min(1060px,calc(100% - 40px));
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:8px;
  padding:14px;
  border:1px solid rgba(31,39,41,.1);
  border-radius:24px;
  background:rgba(250,250,247,.96);
  box-shadow:0 28px 80px rgba(24,31,34,.16),inset 0 1px 0 #fff;
  opacity:0;
  visibility:hidden;
  transform:translate(-50%,-8px);
  transition:opacity .2s ease,transform .2s ease,visibility .2s;
  backdrop-filter:blur(24px) saturate(1.2);
  -webkit-backdrop-filter:blur(24px) saturate(1.2);
}

.nav-features:hover .feature-mega,
.nav-features:focus-within .feature-mega {
  opacity:1;
  visibility:visible;
  transform:translate(-50%,0);
}

.nav-features:hover .nav-chevron,
.nav-features:focus-within .nav-chevron {
  transform:rotate(180deg);
}

.feature-mega a {
  display:grid;
  min-width:0;
  gap:9px;
  padding:15px 13px;
  border-radius:17px;
  color:#4e5658;
  transition:background .2s ease,transform .2s ease,color .2s ease;
}

.feature-mega a:hover {
  background:#fff;
  color:#1e2426;
  transform:translateY(-2px);
}

.feature-mega__icon,
.feature-icon {
  display:grid;
  place-items:center;
  border:1px solid rgba(48,65,69,.08);
  border-radius:50%;
  background:linear-gradient(145deg,#f5f8ff,#dce9ff);
  color:#3978f5;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 10px 25px rgba(41,67,78,.09);
}

.feature-mega__icon {
  width:46px;
  height:46px;
  font-size:18px;
}

.feature-mega a:nth-child(2) .feature-mega__icon { background:linear-gradient(145deg,#fff5de,#f8dfb5); color:#d88316; }
.feature-mega a:nth-child(3) .feature-mega__icon { background:linear-gradient(145deg,#f5edff,#ded0ff); color:#7650dc; }
.feature-mega a:nth-child(4) .feature-mega__icon { background:linear-gradient(145deg,#eaf9ef,#ccebd6); color:#34865a; }
.feature-mega a:nth-child(5) .feature-mega__icon { background:linear-gradient(145deg,#eafafa,#cceef1); color:#2092a5; }
.feature-mega a:nth-child(6) .feature-mega__icon { background:linear-gradient(145deg,#fff0ee,#ffd9d2); color:#ce6555; }
.feature-mega b { font-size:11px; line-height:1.2; }
.feature-mega small { color:#8a9192; font-size:8px; line-height:1.35; }

.content-page {
  padding-bottom:110px;
}

.subpage-hero {
  position:relative;
  overflow:hidden;
  padding:96px 0 75px;
  border-top:1px solid var(--line);
}

.subpage-hero::after {
  position:absolute;
  z-index:-1;
  top:-230px;
  right:-170px;
  width:590px;
  height:590px;
  border:1px solid #dfe5df;
  border-radius:50%;
  box-shadow:0 0 0 72px #f0f3ef,0 0 0 144px #f5f6f2;
  content:"";
}

.subpage-hero__inner {
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);
  gap:8%;
  align-items:end;
}

.subpage-hero h1 {
  max-width:830px;
  margin-bottom:24px;
  font-size:clamp(54px,7.2vw,96px);
  line-height:.9;
}

.subpage-hero__lead {
  max-width:560px;
  margin:0;
  color:var(--muted);
  font-size:17px;
  line-height:1.7;
}

.subpage-hero__aside {
  padding:24px;
  border:1px solid var(--line);
  border-radius:22px;
  background:rgba(255,255,255,.78);
  box-shadow:0 22px 55px rgba(31,39,42,.08);
  backdrop-filter:blur(16px);
}

.subpage-hero__aside b {
  display:block;
  margin-bottom:8px;
  font-size:19px;
  letter-spacing:-.045em;
}

.subpage-hero__aside p {
  margin:0;
  color:var(--muted);
  font-size:12px;
}

.feature-directory {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:15px;
  padding:34px 0 105px;
}

.feature-tile {
  position:relative;
  display:flex;
  min-height:330px;
  flex-direction:column;
  overflow:hidden;
  padding:28px;
  border:1px solid var(--line);
  border-radius:24px;
  background:#fff;
  box-shadow:0 18px 48px rgba(30,38,41,.07);
  transition:transform .25s ease,box-shadow .25s ease;
}

.feature-tile:hover {
  transform:translateY(-5px);
  box-shadow:0 27px 65px rgba(30,38,41,.12);
}

.feature-tile:nth-child(2) { background:#fff6e7; }
.feature-tile:nth-child(3) { background:#f2edff; }
.feature-tile:nth-child(4) { background:#eaf5ed; }
.feature-tile:nth-child(5) { background:#e9f7f7; }
.feature-tile:nth-child(6) { background:#fff0ed; }

.feature-icon {
  width:72px;
  height:72px;
  margin-bottom:54px;
  font-size:28px;
}

.feature-tile:nth-child(2) .feature-icon { background:#fff; color:#d88316; }
.feature-tile:nth-child(3) .feature-icon { background:#fff; color:#7650dc; }
.feature-tile:nth-child(4) .feature-icon { background:#fff; color:#34865a; }
.feature-tile:nth-child(5) .feature-icon { background:#fff; color:#2092a5; }
.feature-tile:nth-child(6) .feature-icon { background:#fff; color:#ce6555; }

.feature-tile h2 {
  margin-bottom:11px;
  font-size:27px;
  line-height:1.02;
  letter-spacing:-.065em;
}

.feature-tile p {
  max-width:280px;
  margin:0;
  color:#697173;
  font-size:12px;
  line-height:1.65;
}

.feature-tile__arrow {
  position:absolute;
  right:24px;
  bottom:24px;
  display:grid;
  width:42px;
  height:42px;
  place-items:center;
  border-radius:50%;
  background:#1f2527;
  color:#fff;
  font-size:17px;
}

.detail-hero {
  display:grid;
  grid-template-columns:minmax(0,.95fr) minmax(420px,1.05fr);
  gap:8%;
  align-items:center;
  min-height:720px;
  padding:70px 0 90px;
}

.detail-hero h1 {
  margin-bottom:25px;
  font-size:clamp(52px,6.4vw,88px);
  line-height:.9;
}

.detail-hero__lead {
  max-width:530px;
  margin-bottom:31px;
  color:var(--muted);
  font-size:17px;
  line-height:1.7;
}

.detail-hero__visual {
  position:relative;
  display:grid;
  min-height:620px;
  place-items:center;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:30px;
  background:linear-gradient(145deg,#edf3ff,#eef4ed);
  box-shadow:0 30px 80px rgba(26,35,39,.12);
}

.detail-hero__visual--ai { background:linear-gradient(145deg,#f3eeff,#edf3ff); }
.detail-hero__visual--insights { background:linear-gradient(145deg,#283033,#344043); }
.detail-hero__visual--focus { background:linear-gradient(145deg,#e8f7ee,#eff8f7); }
.detail-hero__visual--memory { background:linear-gradient(145deg,#fff1ec,#f1f4ed); }

.detail-phone {
  --detail-screen-safe-top:38px;
  position:absolute;
  bottom:-112px;
  width:275px;
  aspect-ratio:9 / 19.5;
  overflow:hidden;
  border:7px solid #17191b;
  border-radius:48px;
  background:#f6f8fb;
  box-shadow:0 32px 62px rgba(21,29,33,.3),inset 0 0 0 1px #51575b;
  transform:rotate(-3deg);
}

.detail-phone::before {
  position:absolute;
  z-index:4;
  top:10px;
  left:50%;
  width:32%;
  height:18px;
  border-radius:999px;
  border:1px solid #24272a;
  background:linear-gradient(180deg,#050607,#0c0d0f);
  box-shadow:0 1px 2px rgba(255,255,255,.18) inset,0 2px 5px rgba(0,0,0,.18);
  content:"";
  transform:translateX(-50%);
}

.detail-phone img {
  position:absolute;
  z-index:1;
  top:var(--detail-screen-safe-top);
  right:0;
  bottom:0;
  left:0;
  display:block;
  width:100%;
  height:calc(100% - var(--detail-screen-safe-top));
  border-radius:0 0 39px 39px;
  object-fit:cover;
  object-position:top center;
}

.detail-float {
  position:absolute;
  z-index:5;
  display:grid;
  gap:3px;
  padding:13px 15px;
  border:1px solid rgba(38,47,50,.1);
  border-radius:16px;
  background:rgba(255,255,255,.9);
  box-shadow:0 16px 35px rgba(26,35,39,.12);
  backdrop-filter:blur(14px);
}

.detail-float--left { top:31%; left:7%; }
.detail-float--right { right:6%; bottom:22%; }
.detail-float small { color:#8b9293; font-size:8px; }
.detail-float b { font-size:11px; }

.feature-proof {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  padding:0 0 90px;
}

.feature-proof article,
.how-step,
.use-case {
  border:1px solid var(--line);
  border-radius:20px;
  background:#fff;
  box-shadow:0 16px 40px rgba(27,35,38,.055);
}

.feature-proof article { padding:26px; }
.feature-proof b { display:block; margin-bottom:8px; font-size:17px; letter-spacing:-.04em; }
.feature-proof p { margin:0; color:var(--muted); font-size:12px; line-height:1.65; }

.content-heading {
  max-width:700px;
  margin-bottom:42px;
}

.content-heading h2 {
  margin-bottom:15px;
  font-size:clamp(42px,5vw,68px);
  line-height:.96;
  letter-spacing:-.075em;
}

.content-heading > p:last-child { max-width:570px; color:var(--muted); }

.how-grid,
.use-case-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

.how-grid { margin-bottom:90px; }
.how-step { min-height:230px; padding:26px; }
.how-step > span { color:var(--blue); font:10px "DM Mono",monospace; }
.how-step h3 { margin:48px 0 10px; font-size:21px; line-height:1.08; letter-spacing:-.055em; }
.how-step p { margin:0; color:var(--muted); font-size:12px; line-height:1.65; }

.use-case-grid { margin-bottom:90px; }
.use-case { padding:24px; }
.use-case b { display:block; margin-bottom:8px; font-size:16px; }
.use-case p { margin:0; color:var(--muted); font-size:12px; }

.privacy-callout,
.contact-callout {
  display:grid;
  grid-template-columns:1fr auto;
  gap:30px;
  align-items:center;
  margin:15px 0 90px;
  padding:34px;
  border-radius:23px;
  background:#282f32;
  color:#fff;
}

.privacy-callout h2,
.contact-callout h2 { margin-bottom:8px; font-size:31px; letter-spacing:-.06em; }
.privacy-callout p,
.contact-callout p { max-width:670px; margin:0; color:#bac3c1; font-size:13px; }

.related-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

.related-card {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  min-height:100px;
  padding:20px;
  border:1px solid var(--line);
  border-radius:18px;
  background:#fff;
  font-size:13px;
  font-weight:800;
}

.related-card span:last-child { color:var(--blue); font-size:18px; }

.news-featured {
  display:grid;
  grid-template-columns:1.1fr .9fr;
  overflow:hidden;
  margin:34px 0 16px;
  border:1px solid var(--line);
  border-radius:26px;
  background:#282f32;
  color:#fff;
}

.news-featured__copy { padding:46px; }
.news-meta { margin-bottom:18px; color:#9fb3ae; font:10px "DM Mono",monospace; text-transform:uppercase; }
.news-featured h2 { margin-bottom:18px; font-size:clamp(38px,4.7vw,64px); line-height:.96; letter-spacing:-.075em; }
.news-featured p { max-width:560px; color:#bdc6c4; }
.news-featured__visual { position:relative; min-height:420px; background:radial-gradient(circle at 50% 45%,#aacfb8 0 5%,transparent 6%),repeating-radial-gradient(circle at 50% 50%,transparent 0 49px,#52615e 50px 51px); }
.news-featured__visual::after { position:absolute; top:50%; left:50%; color:#b7efc8; content:"✦"; font-size:50px; transform:translate(-50%,-50%); }

.news-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin-bottom:100px;
}

.news-card {
  min-height:280px;
  padding:26px;
  border:1px solid var(--line);
  border-radius:21px;
  background:#fff;
}

.news-card:nth-child(2) { background:#edf3ff; }
.news-card:nth-child(3) { background:#eef5ed; }
.news-card h2 { margin:50px 0 12px; font-size:24px; line-height:1.05; letter-spacing:-.06em; }
.news-card p { color:var(--muted); font-size:12px; }
.news-card > span:last-child { color:var(--blue); font-size:12px; font-weight:800; }

.roadmap-board {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:15px;
  margin-bottom:100px;
}

.roadmap-column {
  padding:20px;
  border:1px solid var(--line);
  border-radius:22px;
  background:#f1f3ef;
}

.roadmap-column__title {
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:16px;
  font-size:13px;
}

.roadmap-column__title span { padding:3px 8px; border-radius:999px; background:#fff; color:#737a7b; font-size:9px; }
.roadmap-item { margin-top:10px; padding:18px; border-radius:16px; background:#fff; box-shadow:0 10px 24px rgba(25,34,37,.05); }
.roadmap-item b { display:block; margin-bottom:7px; font-size:13px; }
.roadmap-item p { margin:0; color:var(--muted); font-size:10px; line-height:1.55; }
.roadmap-item small { display:inline-flex; margin-top:12px; padding:4px 7px; border-radius:999px; background:#edf3ff; color:#3978f5; font-size:8px; }
.roadmap-column:nth-child(2) .roadmap-item small { background:#fff2d9; color:#bf7718; }
.roadmap-column:nth-child(3) .roadmap-item small { background:#e5f3e8; color:#37855a; }

.article-shell {
  display:grid;
  grid-template-columns:220px minmax(0,760px);
  gap:56px;
  align-items:start;
  justify-content:center;
  padding:75px 0 115px;
}

.article-aside { position:sticky; top:25px; color:#7d8586; font-size:11px; }
.article-aside a { display:block; margin-top:14px; color:var(--blue); font-weight:800; }
.article-body h1 { font-size:clamp(48px,6vw,78px); line-height:.93; }
.article-body h2 { margin:48px 0 14px; font-size:31px; letter-spacing:-.06em; }
.article-body h3 { margin:30px 0 10px; font-size:20px; }
.article-body p,.article-body li { color:#596163; font-size:16px; line-height:1.85; }
.article-body ul,.article-body ol { display:grid; gap:9px; }
.article-body .article-lead { color:#303638; font-size:21px; line-height:1.55; }
.article-note { margin:34px 0; padding:24px; border:1px solid #d8e4ff; border-radius:18px; background:#eef4ff; }

.help-hero {
  padding:90px 0 55px;
  text-align:center;
}

.help-hero .eyebrow { justify-content:center; }
.help-hero h1 { margin-bottom:20px; font-size:clamp(54px,7.2vw,92px); }
.help-hero > p { max-width:650px; margin:0 auto; color:var(--muted); font-size:16px; }

.help-search {
  position:relative;
  max-width:720px;
  margin:36px auto 0;
}

.help-search::before { position:absolute; top:50%; left:21px; content:"⌕"; color:var(--blue); font-size:24px; transform:translateY(-50%); }
.help-search input { width:100%; height:64px; padding:0 24px 0 54px; border:1px solid #dcdeda; border-radius:20px; outline:none; background:#fff; color:#252b2d; font:600 14px Manrope,Arial,sans-serif; box-shadow:0 20px 50px rgba(28,37,40,.09); }
.help-search input:focus { border-color:#9cbcfb; box-shadow:0 20px 55px rgba(55,120,246,.13); }

.help-category-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin:25px 0 90px;
}

.help-category {
  min-height:210px;
  padding:25px;
  border:1px solid var(--line);
  border-radius:21px;
  background:#fff;
  box-shadow:0 15px 40px rgba(27,35,38,.055);
}

.help-category:nth-child(2),.help-category:nth-child(5) { background:#edf3ff; }
.help-category:nth-child(3),.help-category:nth-child(6) { background:#eef5ed; }
.help-category span { font-size:25px; }
.help-category h2 { margin:38px 0 9px; font-size:21px; letter-spacing:-.055em; }
.help-category p { margin:0; color:var(--muted); font-size:11px; }

.help-section {
  display:grid;
  grid-template-columns:280px minmax(0,1fr);
  gap:55px;
  padding:72px 0;
  border-top:1px solid var(--line);
}

.help-section__intro { position:sticky; top:25px; align-self:start; }
.help-section__intro h2 { font-size:35px; line-height:1; letter-spacing:-.07em; }
.help-section__intro p { color:var(--muted); font-size:12px; }
.help-articles { display:grid; gap:10px; }
.help-article { padding:21px 22px; border:1px solid var(--line); border-radius:17px; background:#fff; }
.help-article h3 { margin:0; font-size:16px; letter-spacing:-.035em; }
.help-article p { margin:10px 0 0; color:var(--muted); font-size:12px; line-height:1.7; }
.help-article ol,.help-article ul { display:grid; gap:6px; margin:12px 0 0; padding-left:18px; color:#60686a; font-size:12px; }
.help-article[hidden] { display:none; }
.help-empty { padding:28px; border:1px dashed #cfd5d1; border-radius:18px; color:#7c8585; text-align:center; }
.help-empty[hidden] { display:none; }

details.help-article summary { cursor:pointer; font-size:15px; font-weight:800; list-style:none; }
details.help-article summary::-webkit-details-marker { display:none; }
details.help-article summary::after { float:right; color:var(--blue); content:"+"; font-size:19px; }
details.help-article[open] summary::after { content:"−"; }

@media (max-width:1050px) {
  .feature-mega { grid-template-columns:repeat(3,1fr); }
  .subpage-hero__inner,.detail-hero { grid-template-columns:1fr; }
  .subpage-hero__aside { max-width:620px; }
  .detail-hero { gap:45px; }
  .detail-hero__visual { min-height:590px; }
  .feature-directory,.news-grid,.help-category-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width:680px) {
  .site-header .nav-features { display:contents; }
  .site-header .nav-features > a { display:flex; }
  .nav-chevron,.feature-mega { display:none; }
  .content-page { padding-bottom:70px; }
  .subpage-hero { padding:60px 0 48px; }
  .subpage-hero::after { top:-170px; right:-210px; width:430px; height:430px; }
  .subpage-hero__inner { gap:32px; }
  .subpage-hero h1 { font-size:clamp(45px,14vw,62px); }
  .subpage-hero__lead { font-size:14px; }
  .subpage-hero__aside { padding:20px; }
  .feature-directory { display:flex; gap:12px; margin-inline:-14px; padding:20px 14px 75px; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none; }
  .feature-directory::-webkit-scrollbar { display:none; }
  .feature-tile { min-height:310px; flex:0 0 min(85vw,325px); padding:24px; scroll-snap-align:center; }
  .feature-icon { margin-bottom:45px; }
  .detail-hero { min-height:auto; padding:52px 0 70px; }
  .detail-hero h1 { font-size:clamp(47px,14vw,64px); }
  .detail-hero__lead { font-size:14px; }
  .detail-hero__visual { min-height:520px; border-radius:24px; }
  .detail-phone { bottom:-75px; width:min(238px,72vw); border-width:5px; border-radius:42px; }
  .detail-phone img { border-radius:36px; }
  .detail-float { padding:10px 11px; }
  .detail-float--left { left:10px; }.detail-float--right { right:10px; }
  .feature-proof,.how-grid,.use-case-grid,.related-grid,.news-grid,.roadmap-board,.help-category-grid { grid-template-columns:1fr; }
  .feature-proof { padding-bottom:70px; }
  .how-grid,.use-case-grid,.news-grid,.roadmap-board,.help-category-grid { margin-bottom:70px; }
  .content-heading h2 { font-size:42px; }
  .privacy-callout,.contact-callout { grid-template-columns:1fr; padding:26px 22px; }
  .news-featured { grid-template-columns:1fr; }
  .news-featured__copy { padding:30px 23px; }
  .news-featured__visual { min-height:260px; }
  .article-shell { grid-template-columns:1fr; gap:25px; padding:55px 0 80px; }
  .article-aside { position:relative; top:auto; padding-bottom:20px; border-bottom:1px solid var(--line); }
  .article-body h1 { font-size:47px; }
  .article-body p,.article-body li { font-size:14px; }
  .article-body .article-lead { font-size:18px; }
  .help-hero { padding:58px 0 38px; }
  .help-hero h1 { font-size:50px; }
  .help-search input { height:58px; }
  .help-section { grid-template-columns:1fr; gap:24px; padding:55px 0; }
  .help-section__intro { position:relative; top:auto; }
}

@keyframes swipe-cue {
  0%,100% { transform:translateX(0); }
  50% { transform:translateX(4px); }
}

@media (prefers-reduced-motion:reduce) {
  .screens__swipe-hint span {
    animation:none;
  }
}

/* Premium mobile navigation: one glass rail instead of a row of separate pills. */
@media (max-width:680px) {
  .site-header nav {
    right:10px;
    bottom:8px;
    left:10px;
    width:auto;
    gap:0;
    align-items:center;
    justify-content:space-between;
    padding:4px;
    border:1px solid rgba(33,41,43,.09);
    border-radius:17px;
    background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(242,245,242,.88));
    box-shadow:
      0 13px 30px rgba(24,31,34,.09),
      0 2px 5px rgba(24,31,34,.035),
      inset 0 1px 0 rgba(255,255,255,.95);
    backdrop-filter:blur(18px) saturate(1.2);
    -webkit-backdrop-filter:blur(18px) saturate(1.2);
  }

  .site-header nav a {
    position:relative;
    box-sizing:border-box;
    height:34px;
    min-height:34px;
    padding:9px 8px;
    border:0;
    border-radius:12px;
    background:transparent;
    box-shadow:none;
    color:#50585a;
    font-family:Manrope,Arial,sans-serif;
    font-size:9.5px;
    font-weight:700;
    line-height:16px;
    letter-spacing:-.015em;
  }

  .site-header nav a + a::before {
    position:absolute;
    top:10px;
    bottom:10px;
    left:0;
    width:1px;
    background:rgba(33,41,43,.08);
    content:"";
  }

  .site-header nav a:hover,
  .site-header nav a:focus-visible {
    background:rgba(255,255,255,.82);
    color:#1f2527;
    outline:none;
  }

  .site-header nav a[lang] {
    position:relative;
    z-index:3;
    margin-left:4px;
    padding-inline:10px;
    border:1px solid rgba(255,255,255,.1);
    background:linear-gradient(145deg,#303638,#1d2224);
    color:#fff;
    box-shadow:0 5px 12px rgba(19,24,26,.16),inset 0 1px 0 rgba(255,255,255,.12);
  }

  .site-header nav a[lang]::before {
    display:none;
  }
}

@media (max-width:360px) {
  .site-header nav {
    right:8px;
    left:8px;
  }

  .site-header nav a {
    padding-inline:8px;
  }
}

/* Editorial stories — real product screens, development history and privacy. */
.news-featured--story {
  background:
    radial-gradient(circle at 82% 22%,rgba(118,179,255,.22),transparent 30%),
    linear-gradient(135deg,#20272b 0%,#2a3235 100%);
}

.news-featured__visual--screens {
  isolation:isolate;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 48%,rgba(185,239,203,.18) 0 4%,transparent 5%),
    repeating-radial-gradient(circle at 50% 50%,transparent 0 55px,rgba(142,166,160,.22) 56px 57px);
}

.news-featured__visual--screens::after { display:none; }

.news-featured__visual--screens img {
  position:absolute;
  bottom:-96px;
  width:210px;
  border:5px solid #17191a;
  border-radius:31px;
  background:#fff;
  box-shadow:0 30px 60px rgba(0,0,0,.36);
}

.news-featured__visual--screens img:first-child {
  z-index:2;
  left:12%;
  transform:rotate(-8deg);
}

.news-featured__visual--screens img:last-child {
  right:8%;
  bottom:-70px;
  transform:rotate(7deg);
}

.news-featured--text-only {
  position:relative;
  isolation:isolate;
  display:block;
  min-height:430px;
  background:
    radial-gradient(circle at 78% 50%,rgba(174,235,198,.2) 0 5px,transparent 7px),
    radial-gradient(circle at 78% 50%,transparent 0 68px,rgba(139,166,159,.19) 69px 70px,transparent 71px 118px,rgba(139,166,159,.16) 119px 120px,transparent 121px 172px,rgba(139,166,159,.12) 173px 174px,transparent 175px),
    radial-gradient(circle at 82% 18%,rgba(118,179,255,.2),transparent 32%),
    linear-gradient(135deg,#20272b 0%,#2a3235 100%);
}

.news-featured--text-only::after {
  position:absolute;
  z-index:1;
  top:50%;
  left:78%;
  color:#b7efc8;
  content:"✦";
  font-size:34px;
  transform:translate(-50%,-50%);
}

.news-featured--text-only .news-featured__copy {
  position:relative;
  z-index:2;
  max-width:760px;
  min-height:430px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.news-grid--stories { grid-template-columns:repeat(2,minmax(0,1fr)); }
.news-grid--stories .news-card { min-height:310px; }
.news-grid--stories .news-card:nth-child(2) { background:#eef5ed; }
.news-grid--stories .news-card:nth-child(3) { background:#edf3ff; }
.news-grid--stories .news-card:nth-child(4) { background:#fff6e7; }
.news-card--privacy { background:linear-gradient(145deg,#24302d,#2f3c38)!important; color:#fff; }
.news-card--privacy p { color:#c3cfca; }
.news-card--privacy > span:last-child { color:#a8efc1; }

.story-article > h1 { max-width:760px; }
.story-article code {
  padding:2px 6px;
  border:1px solid #e1e4df;
  border-radius:6px;
  background:#f1f3ef;
  color:#384042;
  font:12px "DM Mono",monospace;
}

.inline-link {
  color:var(--blue);
  font-weight:800;
  text-decoration:underline;
  text-decoration-color:rgba(55,120,246,.3);
  text-underline-offset:3px;
}

.article-aside__facts {
  display:grid;
  gap:4px;
  margin-top:35px;
  padding:17px;
  border:1px solid #dfe5f2;
  border-radius:18px;
  background:#eef3ff;
  box-shadow:0 14px 35px rgba(34,50,77,.06);
}

.article-aside__facts b {
  margin-top:8px;
  color:var(--blue);
  font-size:28px;
  line-height:1;
  letter-spacing:-.07em;
}

.article-aside__facts small {
  color:#677176;
  font-size:9px;
  line-height:1.4;
}

.article-aside__facts--green {
  border-color:#d8e8dd;
  background:#ecf5ef;
}

.article-aside__facts--green b { color:#38855a; }

.story-hero-image {
  position:relative;
  display:grid;
  min-height:680px;
  place-items:center;
  overflow:hidden;
  margin:42px 0 38px;
  border:1px solid #dfe5e1;
  border-radius:30px;
  background:
    radial-gradient(circle at 50% 48%,transparent 0 118px,#d9e2de 119px 120px,transparent 121px 195px,#e5eae7 196px 197px,transparent 198px),
    linear-gradient(145deg,#eef5ff,#eff6ed 68%,#fff8eb);
  box-shadow:0 28px 70px rgba(33,45,48,.09);
}

.story-hero-image::before,
.story-hero-image::after {
  position:absolute;
  width:160px;
  height:160px;
  border-radius:50%;
  filter:blur(35px);
  content:"";
}

.story-hero-image::before { top:8%; left:8%; background:rgba(87,145,255,.18); }
.story-hero-image::after { right:5%; bottom:8%; background:rgba(106,202,141,.18); }

.story-hero-image img {
  position:relative;
  z-index:2;
  display:block;
  width:min(285px,68%);
  height:auto;
  object-fit:cover;
  object-position:top;
  border:7px solid #17191a;
  border-radius:49px;
  box-shadow:0 35px 65px rgba(26,34,37,.27),inset 0 0 0 1px #565b5d;
  transform:rotate(-3deg);
}

.story-hero-image figcaption,
.story-screen-gallery figcaption {
  color:#7a8283;
  font-size:10px;
  line-height:1.5;
}

.story-hero-image figcaption {
  position:absolute;
  z-index:3;
  right:25px;
  bottom:22px;
  max-width:210px;
  padding:10px 12px;
  border:1px solid rgba(45,57,59,.08);
  border-radius:12px;
  background:rgba(255,255,255,.83);
  backdrop-filter:blur(12px);
}

.article-note--fact {
  border-color:#d9e4dc;
  background:#eef6f0;
}

.article-note b { display:block; margin-bottom:7px; color:#252b2d; font-size:15px; }
.article-note p { margin:0; font-size:13px; line-height:1.7; }

.dev-timeline {
  position:relative;
  display:grid;
  gap:0;
  margin:30px 0 54px;
  padding:10px 0;
}

.dev-timeline::before {
  position:absolute;
  top:12px;
  bottom:12px;
  left:109px;
  width:1px;
  background:linear-gradient(#80aaf9,#a7dfba);
  content:"";
}

.dev-timeline__item {
  position:relative;
  display:grid;
  grid-template-columns:90px 1fr;
  gap:39px;
  padding:18px 0;
}

.dev-timeline__item::before {
  position:absolute;
  top:25px;
  left:104px;
  width:11px;
  height:11px;
  border:3px solid var(--paper);
  border-radius:50%;
  background:var(--blue);
  box-shadow:0 0 0 1px #87aef8;
  content:"";
}

.dev-timeline__item:nth-child(n+4)::before { background:#51a875; box-shadow:0 0 0 1px #8ac7a3; }
.dev-timeline time { padding-top:3px; color:#687274; font:10px "DM Mono",monospace; text-transform:uppercase; }
.dev-timeline h3 { margin:0 0 7px; font-size:19px; letter-spacing:-.045em; }
.dev-timeline p { margin:0; font-size:14px; line-height:1.7; }

.article-capability-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin:28px 0 52px;
}

.article-capability-grid section {
  min-height:205px;
  padding:23px;
  border:1px solid var(--line);
  border-radius:20px;
  background:#fff;
  box-shadow:0 18px 38px rgba(31,41,44,.045);
}

.article-capability-grid section:nth-child(2) { background:#eef3ff; }
.article-capability-grid section:nth-child(3) { background:#eef5ed; }
.article-capability-grid section:nth-child(4) { background:#fff6e8; }
.article-capability-grid span { color:var(--blue); font:9px "DM Mono",monospace; }
.article-capability-grid h3 { margin:48px 0 7px; font-size:20px; line-height:1.05; letter-spacing:-.05em; }
.article-capability-grid p { margin:0; font-size:12px; line-height:1.65; }

.story-screen-gallery {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:11px;
  margin:44px 0 58px;
}

.story-screen-gallery > div {
  display:grid;
  min-width:0;
  padding:16px 16px 18px;
  border:1px solid #dde2de;
  border-radius:22px;
  background:linear-gradient(160deg,#f7f9ff,#eef4f1);
  box-shadow:0 18px 42px rgba(29,40,43,.07);
}

.story-screen-gallery > div:nth-child(2) { background:linear-gradient(160deg,#f4efff,#f4f2fa); }
.story-screen-gallery > div:nth-child(3) { background:linear-gradient(160deg,#e9f4ee,#f5f3ed); }
.story-screen-gallery img {
  display:block;
  width:100%;
  height:370px;
  margin-bottom:15px;
  object-fit:contain;
  object-position:top center;
  filter:drop-shadow(0 14px 17px rgba(26,34,37,.13));
}
.story-screen-gallery b { font-size:13px; }
.story-screen-gallery span { margin-top:3px; color:#7c8485; font-size:9px; }
.story-screen-gallery figcaption { grid-column:1/-1; padding:3px 3px 0; }
.story-screen-gallery--two { grid-template-columns:repeat(2,minmax(0,1fr)); }
.story-screen-gallery--two img { height:500px; }

.privacy-principle {
  display:grid;
  grid-template-columns:70px 1fr;
  gap:18px;
  align-items:center;
  margin:40px 0 46px;
  padding:25px;
  border:1px solid #d3e6d9;
  border-radius:23px;
  background:linear-gradient(135deg,#e7f5ec,#f4f8f2);
}

.privacy-principle > span {
  display:grid;
  width:70px;
  height:70px;
  place-items:center;
  border-radius:50%;
  background:#2d413a;
  color:#b8f0c9;
  font-size:27px;
  box-shadow:0 14px 30px rgba(41,68,58,.17);
}

.privacy-principle b { display:block; margin-bottom:5px; font-size:18px; }
.privacy-principle p { margin:0; font-size:13px; line-height:1.65; }

.privacy-flow {
  display:grid;
  grid-template-columns:1fr auto 1fr auto 1fr;
  gap:11px;
  align-items:center;
  margin:32px 0 56px;
}

.privacy-flow section {
  min-height:190px;
  padding:19px;
  border:1px solid #dfe4e0;
  border-radius:18px;
  background:#fff;
}

.privacy-flow section:nth-of-type(2) { background:#eef3ff; }
.privacy-flow section:nth-of-type(3) { background:#eef5ed; }
.privacy-flow section > span { display:block; margin-bottom:48px; color:#568268; font:9px "DM Mono",monospace; }
.privacy-flow b { display:block; font-size:13px; line-height:1.25; }
.privacy-flow p { margin:7px 0 0; font-size:10px; line-height:1.55; }
.privacy-flow i { color:#9da6a3; font-style:normal; }

.article-capability-grid--privacy section { min-height:225px; }
.article-capability-grid--privacy span { color:#39845a; }

.article-end-cta {
  display:grid;
  grid-template-columns:1fr auto;
  gap:25px;
  align-items:end;
  overflow:hidden;
  margin-top:65px;
  padding:35px;
  border-radius:25px;
  background:
    radial-gradient(circle at 87% 20%,rgba(121,171,255,.24),transparent 32%),
    #282f32;
  color:#fff;
}

.article-end-cta > div > span { color:#9fb0ad; font:9px "DM Mono",monospace; text-transform:uppercase; }
.article-end-cta h2 { max-width:500px; margin:12px 0 9px; color:#fff; font-size:34px; line-height:1; }
.article-end-cta p { max-width:520px; margin:0; color:#bdc6c4; font-size:12px; line-height:1.6; }
.article-end-cta--green { background:radial-gradient(circle at 87% 20%,rgba(165,238,190,.23),transparent 32%),#25302d; }

@media (max-width:1050px) {
  .news-featured__visual--screens img { width:180px; }
  .article-shell { grid-template-columns:180px minmax(0,720px); gap:38px; }
}

@media (max-width:680px) {
  .article-shell {
    grid-template-columns:minmax(0,1fr);
    gap:25px;
    padding:55px 0 80px;
  }

  .article-body,
  .story-article { min-width:0; }

  .news-featured__visual--screens img { width:155px; bottom:-78px; }
  .news-featured__visual--screens img:last-child { bottom:-58px; }
  .news-grid--stories { grid-template-columns:1fr; }
  .news-grid--stories .news-card { min-height:270px; }

  .article-aside__facts {
    grid-template-columns:auto 1fr auto 1fr auto 1fr;
    gap:7px;
    align-items:center;
    margin-top:20px;
    padding:13px;
  }
  .article-aside__facts b { margin:0; font-size:21px; }
  .article-aside__facts small { font-size:7px; }

  .story-hero-image { min-height:560px; margin-inline:-5px; border-radius:24px; }
  .story-hero-image img { width:min(245px,78%); height:auto; border-width:6px; border-radius:42px; }
  .story-hero-image figcaption { right:12px; bottom:12px; left:12px; max-width:none; }

  .dev-timeline::before { left:12px; }
  .dev-timeline__item { grid-template-columns:1fr; gap:7px; padding:21px 0 21px 38px; }
  .dev-timeline__item::before { top:26px; left:7px; }
  .dev-timeline time { color:var(--blue); }

  .article-capability-grid { grid-template-columns:1fr; }
  .article-capability-grid section { min-height:185px; }
  .article-capability-grid h3 { margin-top:38px; }

  .story-screen-gallery,
  .story-screen-gallery--two {
    display:flex;
    gap:12px;
    margin-inline:-14px;
    padding:0 14px 10px;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
  }
  .story-screen-gallery::-webkit-scrollbar { display:none; }
  .story-screen-gallery > div { flex:0 0 min(78vw,310px); scroll-snap-align:center; }
  .story-screen-gallery img,.story-screen-gallery--two img { height:440px; }
  .story-screen-gallery figcaption { flex:0 0 78vw; align-self:center; }

  .privacy-principle { grid-template-columns:52px 1fr; padding:20px; }
  .privacy-principle > span { width:52px; height:52px; font-size:21px; }
  .privacy-flow { grid-template-columns:1fr; }
  .privacy-flow section { min-height:auto; }
  .privacy-flow section > span { margin-bottom:28px; }
  .privacy-flow i { transform:rotate(90deg); justify-self:center; }

  .article-end-cta { grid-template-columns:1fr; padding:28px 22px; }
  .article-end-cta h2 { font-size:30px; }
  .article-end-cta .button { width:100%; }
}

/* Mobile UI v3 — one authoritative header and responsive finishing layer. */
.contact-callout,
.privacy-callout {
  margin-right:auto;
  margin-left:auto;
}

@media (max-width:820px) {
  .site-header.site-header--enhanced {
    position:sticky;
    z-index:100;
    top:0;
    display:flex;
    width:100%;
    height:120px;
    padding:0 14px;
    align-items:flex-start;
    justify-content:space-between;
    border-bottom:1px solid rgba(29,37,39,.075);
    background:rgba(248,248,245,.9);
    box-shadow:0 12px 34px rgba(24,31,34,.055);
    backdrop-filter:blur(22px) saturate(1.18);
    -webkit-backdrop-filter:blur(22px) saturate(1.18);
  }

  .site-header--enhanced > .brand {
    position:relative;
    z-index:3;
    margin-top:15px;
    font-size:18px;
    line-height:28px;
    white-space:nowrap;
  }

  .site-header--enhanced > .button--small {
    position:relative;
    z-index:3;
    min-width:0;
    min-height:36px;
    gap:6px;
    margin-top:11px;
    padding:10px 13px;
    font-size:0;
    line-height:1;
    white-space:nowrap;
    box-shadow:0 9px 22px rgba(23,29,31,.14);
  }

  .site-header--enhanced > .button--small::before {
    content:"Web";
    font-size:11px;
  }

  .site-header--enhanced > .button--small .button__globe {
    width:13px;
    height:13px;
    flex:0 0 13px;
  }

  .site-header--enhanced .mobile-tabbar {
    position:absolute;
    z-index:4;
    right:12px;
    bottom:8px;
    left:12px;
    display:flex!important;
    width:auto;
    height:48px;
    gap:3px;
    align-items:center;
    justify-content:stretch;
    padding:5px;
    overflow:hidden;
    border:1px solid rgba(39,48,50,.09);
    border-radius:19px;
    background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(239,243,240,.9));
    box-shadow:
      0 14px 32px rgba(24,31,34,.09),
      0 2px 7px rgba(24,31,34,.035),
      inset 0 1px 0 rgba(255,255,255,.98);
    backdrop-filter:blur(20px) saturate(1.25);
    -webkit-backdrop-filter:blur(20px) saturate(1.25);
    scrollbar-width:none;
  }

  .site-header--enhanced .mobile-tabbar::-webkit-scrollbar { display:none; }
  .site-header--enhanced .nav-features { display:contents; }
  .site-header--enhanced .feature-mega,
  .site-header--enhanced .nav-chevron { display:none; }

  .site-header--enhanced .mobile-tabbar > a,
  .site-header--enhanced .mobile-tabbar > .nav-features > a {
    position:relative;
    display:flex;
    min-width:0;
    height:36px;
    min-height:36px;
    flex:1 1 0;
    align-items:center;
    justify-content:center;
    padding:0 5px;
    overflow:hidden;
    border:0;
    border-radius:13px;
    background:transparent;
    box-shadow:none;
    color:#596164;
    font-size:0;
    font-weight:750;
    line-height:1;
    letter-spacing:-.02em;
    text-align:center;
    white-space:nowrap;
    text-overflow:clip;
    transition:background .2s ease,color .2s ease,box-shadow .2s ease,transform .2s ease;
  }

  .site-header--enhanced .mobile-tabbar > .nav-features > a { flex-grow:1.18; }

  .site-header--enhanced .mobile-tabbar a::after {
    display:block;
    overflow:hidden;
    content:attr(data-mobile-label);
    font-size:10.5px;
    line-height:1;
    text-overflow:ellipsis;
  }

  .site-header--enhanced .mobile-tabbar a::before { display:none!important; }

  .site-header--enhanced .mobile-tabbar a:hover,
  .site-header--enhanced .mobile-tabbar a:focus-visible {
    background:rgba(255,255,255,.72);
    color:#202628;
    outline:none;
  }

  .site-header--enhanced .mobile-tabbar .nav-active {
    background:#fff;
    color:#286ceb;
    box-shadow:0 5px 14px rgba(28,41,45,.09),inset 0 0 0 1px rgba(40,108,235,.08);
  }

  .site-header--enhanced .mobile-tabbar .nav-active::before {
    position:absolute;
    bottom:4px;
    left:50%;
    display:block!important;
    width:4px;
    height:4px;
    border-radius:50%;
    background:#3778f6;
    content:"";
    transform:translateX(-50%);
  }

  .site-header--enhanced .mobile-tabbar .nav-language {
    min-width:40px;
    flex:0 0 40px;
    margin-left:2px;
    border:1px solid rgba(255,255,255,.1);
    background:linear-gradient(145deg,#31383a,#1d2224);
    color:#fff;
    box-shadow:0 7px 15px rgba(18,24,26,.18),inset 0 1px 0 rgba(255,255,255,.13);
  }

  .site-header--enhanced .mobile-tabbar .nav-language::after {
    font-size:10px;
    letter-spacing:.04em;
  }
}

@media (max-width:680px) {
  main,
  .content-page,
  .privacy-page,
  .pricing-page { max-width:100%; }

  .content-page { padding-bottom:28px; }

  .subpage-hero {
    padding-top:48px;
    padding-bottom:42px;
  }

  .subpage-hero h1,
  .detail-hero h1,
  .article-body h1,
  .help-hero h1,
  .privacy-hero h1,
  .pricing-intro h1 {
    overflow-wrap:break-word;
    word-break:normal;
    text-wrap:balance;
  }

  .article-body h1 { font-size:clamp(38px,12vw,47px); }
  .article-body h2 { margin-top:40px; font-size:27px; line-height:1.05; }

  .contact-callout,
  .privacy-callout {
    width:calc(100% - 28px);
    gap:20px;
    margin:0 auto 44px!important;
    padding:25px 21px;
    border-radius:21px;
  }

  .contact-callout h2,
  .privacy-callout h2 {
    font-size:27px;
    line-height:1.04;
  }

  .contact-callout p,
  .privacy-callout p { font-size:12px; line-height:1.65; }
  .contact-callout .button,
  .privacy-callout .button { width:100%; min-height:52px; }

  .pricing-page { padding-top:36px; }
  .pricing-intro { margin-bottom:34px; }
  .pricing-includes { margin-bottom:35px; border-radius:20px; }
  .price-grid { gap:14px; }
  .price-card { min-height:0; padding:24px 21px; border-radius:21px; }
  .price-card h2 { font-size:27px; }
  .price-card .price b { font-size:39px; }
  .price-card .button { width:100%; min-height:52px; }

  .privacy-layout { gap:18px; }
  .privacy-toc { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .privacy-toc a { min-width:0; overflow-wrap:anywhere; }
  .privacy-document { overflow:hidden; }

  .help-category { min-height:185px; }
  .help-category h2 { margin-top:28px; }
  .help-section { padding:48px 0; }

  .news-featured,
  .news-card,
  .feature-tile,
  .help-category,
  .roadmap-column { max-width:100%; }

  .footer {
    width:calc(100% - 28px);
    gap:14px;
    margin-top:0;
    padding:24px 0 32px;
    border-top:1px solid var(--line);
  }

  .footer > .brand { width:100%; }
  .footer div { gap:10px 14px; }
  .footer a { line-height:1.35; }
}

@media (max-width:340px) {
  .site-header.site-header--enhanced { height:116px; padding-inline:11px; }
  .site-header--enhanced > .brand { margin-top:14px; font-size:17px; }
  .site-header--enhanced > .button--small { margin-top:10px; padding-inline:11px; }
  .site-header--enhanced .mobile-tabbar { right:8px; bottom:7px; left:8px; height:46px; padding:4px; gap:2px; }
  .site-header--enhanced .mobile-tabbar > a,
  .site-header--enhanced .mobile-tabbar > .nav-features > a { height:36px; min-height:36px; padding-inline:3px; }
  .site-header--enhanced .mobile-tabbar a::after { font-size:9.4px; }
  .site-header--enhanced .mobile-tabbar .nav-language { min-width:36px; flex-basis:36px; }
}

/* Real product footage and current Russian app screens. */
.product-demo {
  padding-top:126px;
  padding-bottom:132px;
}

.product-demo__heading {
  display:grid;
  grid-template-columns:minmax(0,1.18fr) minmax(280px,.82fr);
  gap:72px;
  align-items:end;
  margin-bottom:56px;
}

.product-demo__heading h2 {
  max-width:720px;
  margin:0;
  font-size:clamp(48px,6.1vw,78px);
  line-height:.96;
  letter-spacing:-.073em;
}

.product-demo__heading > p {
  max-width:470px;
  margin:0 0 6px;
  color:var(--muted);
  font-size:15px;
  line-height:1.75;
}

.product-demo__videos {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  align-items:stretch;
}

.product-video {
  position:relative;
  min-width:0;
  aspect-ratio:9 / 17.3;
  overflow:hidden;
  border:1px solid rgba(28,35,38,.08);
  border-radius:31px;
  background:
    radial-gradient(circle at 50% 20%,rgba(91,149,255,.2),transparent 42%),
    #edf1f8;
  box-shadow:
    0 30px 70px rgba(24,31,34,.12),
    0 4px 13px rgba(24,31,34,.06),
    inset 0 1px 0 rgba(255,255,255,.84);
  isolation:isolate;
  transform:translateZ(0);
}

.product-video::before {
  position:absolute;
  z-index:3;
  inset:0;
  border:1px solid rgba(255,255,255,.38);
  border-radius:inherit;
  content:"";
  pointer-events:none;
}

.product-video--primary {
  background:
    radial-gradient(circle at 48% 22%,rgba(91,149,255,.23),transparent 46%),
    #edf2fa;
}

.product-video__media {
  position:absolute;
  z-index:0;
  inset:0;
  width:100%;
  height:100%;
  border:0;
  background:#eef2f8;
  object-fit:cover;
  object-position:center;
  transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .45s ease;
}

.product-video:hover .product-video__media {
  transform:scale(1.015);
}

.product-video__shade {
  position:absolute;
  z-index:1;
  inset:0;
  background:
    linear-gradient(180deg,rgba(17,23,26,.02) 44%,rgba(17,23,26,.22) 67%,rgba(17,23,26,.9) 100%),
    linear-gradient(90deg,rgba(255,255,255,.05),transparent 20% 80%,rgba(0,0,0,.04));
  pointer-events:none;
}

.product-video__copy {
  position:absolute;
  z-index:2;
  right:28px;
  bottom:28px;
  left:28px;
  color:#fff;
  text-shadow:0 2px 18px rgba(0,0,0,.22);
  pointer-events:none;
}

.product-video__copy p {
  margin:0 0 11px;
  color:rgba(255,255,255,.72);
  font:700 9px/1.2 "DM Mono",monospace;
  letter-spacing:.12em;
}

.product-video__copy h3 {
  max-width:310px;
  margin:0 0 9px;
  font-size:clamp(22px,2.1vw,30px);
  line-height:1.02;
  letter-spacing:-.055em;
}

.product-video__copy span {
  display:block;
  max-width:320px;
  color:rgba(255,255,255,.76);
  font-size:11px;
  line-height:1.55;
}

.product-video__control {
  position:absolute;
  z-index:5;
  top:18px;
  right:18px;
  display:grid;
  width:44px;
  height:44px;
  padding:0;
  place-items:center;
  border:1px solid rgba(255,255,255,.62);
  border-radius:50%;
  background:rgba(255,255,255,.78);
  box-shadow:0 12px 28px rgba(26,33,36,.15);
  color:#1b2022;
  cursor:pointer;
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  transition:transform .2s ease,background .2s ease,color .2s ease;
}

.product-video__control:hover {
  background:#fff;
  color:var(--blue);
  transform:scale(1.05);
}

.product-video__control:focus-visible {
  outline:3px solid rgba(55,120,246,.35);
  outline-offset:3px;
}

.product-video__control span {
  margin-left:2px;
  font-size:12px;
  line-height:1;
}

.product-video.is-playing .product-video__control span {
  margin-left:0;
  font-size:13px;
}

.product-demo__gallery-heading {
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:30px;
  margin:94px 0 34px;
  padding-bottom:26px;
  border-bottom:1px solid var(--line);
}

.product-demo__gallery-heading .feature-number {
  margin:0;
}

.product-demo__gallery-heading h3 {
  max-width:560px;
  margin:0;
  font-size:clamp(28px,3.1vw,42px);
  line-height:1;
  letter-spacing:-.055em;
}

.product-demo__screens {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
  align-items:start;
}

.product-shot {
  min-width:0;
  margin:0;
}

.product-shot__phone {
  position:relative;
  overflow:hidden;
  padding:36px 7px 7px;
  border:1px solid #080a0b;
  border-radius:35px;
  background:
    linear-gradient(120deg,#101214 0%,#3b4043 36%,#111315 64%,#060707 100%);
  box-shadow:
    0 24px 52px rgba(25,31,34,.14),
    0 5px 14px rgba(25,31,34,.07),
    inset 0 0 0 1px rgba(255,255,255,.2);
  aspect-ratio:auto;
  transform:translateZ(0);
  transition:transform .5s cubic-bezier(.2,.72,.2,1),box-shadow .5s ease;
}

.product-shot__phone::after {
  position:absolute;
  inset:7px;
  border:1px solid rgba(255,255,255,.35);
  border-radius:28px;
  background:linear-gradient(180deg,rgba(247,249,252,.98) 0 29px,rgba(247,249,252,.88) 31px,transparent 33px);
  box-shadow:inset 0 0 20px rgba(32,43,49,.06);
  content:"";
  pointer-events:none;
}

/* iPhone 16 Pro Max Dynamic Island — shared by every product screenshot. */
.product-shot__phone::before {
  position:absolute;
  z-index:3;
  top:14px;
  left:50%;
  width:29%;
  height:18px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:999px;
  background:
    radial-gradient(circle at 78% 48%,#17191a 0 2px,#050506 2.6px 100%),
    linear-gradient(180deg,#090a0b,#000);
  box-shadow:
    0 1px 1px rgba(255,255,255,.12) inset,
    0 -1px 2px rgba(0,0,0,.75) inset,
    0 2px 5px rgba(0,0,0,.2);
  content:"";
  pointer-events:none;
  transform:translateX(-50%);
}

.product-shot:hover .product-shot__phone {
  box-shadow:
    0 34px 70px rgba(25,31,34,.19),
    0 7px 18px rgba(25,31,34,.08),
    inset 0 0 0 1px rgba(255,255,255,.2);
  transform:translateY(-7px);
}

.product-shot__phone img {
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:1290 / 2796;
  border-radius:0 0 28px 28px;
  object-fit:cover;
}

.product-shot__image {
  overflow:hidden;
  border:1px solid rgba(35,44,46,.08);
  border-radius:18px;
  background:#fff;
  box-shadow:0 15px 34px rgba(25,31,34,.1);
  transform:translateZ(0);
  transition:transform .45s cubic-bezier(.2,.72,.2,1),box-shadow .45s ease;
}

.product-shot__image img {
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:1290 / 2796;
  object-fit:cover;
  object-position:top center;
}

.product-shot:hover .product-shot__image {
  box-shadow:0 22px 46px rgba(25,31,34,.14);
  transform:translateY(-5px);
}

.product-shot figcaption {
  display:grid;
  gap:7px;
  padding:22px 5px 0;
}

.product-shot figcaption b {
  font-size:15px;
  line-height:1.25;
  letter-spacing:-.035em;
}

.product-shot figcaption span {
  color:#797e80;
  font-size:10px;
  line-height:1.6;
}

.product-demo__note {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  margin:55px 0 0;
  color:#858a8c;
  font-size:10px;
  text-align:center;
}

.product-demo__note span {
  color:#53b779;
  font-size:8px;
}

@media (max-width:960px) {
  .product-demo {
    padding-top:102px;
    padding-bottom:108px;
  }

  .product-demo__heading {
    grid-template-columns:1fr;
    gap:25px;
    margin-bottom:42px;
  }

  .product-demo__heading > p {
    max-width:620px;
  }

  .product-demo__videos {
    grid-template-columns:repeat(3,minmax(280px,1fr));
    width:calc(100vw - max(20px,(100vw - 1180px)/2));
    margin-right:calc(50% - 50vw);
    padding:5px 20px 34px 0;
    overflow-x:auto;
    overscroll-behavior-x:contain;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
  }

  .product-demo__videos::-webkit-scrollbar {
    display:none;
  }

  .product-video {
    scroll-snap-align:start;
  }

  .product-demo__gallery-heading {
    margin-top:68px;
  }

  .product-demo__screens {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:42px 18px;
  }
}

@media (max-width:680px) {
  .product-demo {
    width:100%;
    padding:78px 0 84px;
    overflow:hidden;
  }

  .product-demo__heading,
  .product-demo__gallery-heading,
  .product-demo__note {
    width:calc(100% - 34px);
    margin-right:auto;
    margin-left:auto;
  }

  .product-demo__heading {
    gap:21px;
    margin-bottom:32px;
  }

  .product-demo__heading h2 {
    font-size:clamp(43px,13.4vw,58px);
    line-height:.94;
  }

  .product-demo__heading > p {
    font-size:13px;
    line-height:1.68;
  }

  .product-demo__videos {
    grid-template-columns:repeat(3,82vw);
    width:100%;
    gap:12px;
    margin:0;
    padding:4px 17px 30px;
    scroll-padding-inline:17px;
  }

  .product-video {
    width:82vw;
    max-height:680px;
    border-radius:26px;
    box-shadow:
      0 22px 48px rgba(24,31,34,.12),
      0 3px 10px rgba(24,31,34,.05);
  }

  .product-video__copy {
    right:21px;
    bottom:22px;
    left:21px;
  }

  .product-video__copy h3 {
    font-size:25px;
  }

  .product-video__control {
    top:14px;
    right:14px;
    width:41px;
    height:41px;
  }

  .product-demo__gallery-heading {
    display:grid;
    gap:12px;
    margin-top:57px;
    margin-bottom:27px;
    padding-bottom:20px;
  }

  .product-demo__gallery-heading h3 {
    font-size:32px;
  }

  .product-demo__screens {
    display:flex;
    width:100%;
    gap:13px;
    padding:4px 17px 32px;
    overflow-x:auto;
    overscroll-behavior-x:contain;
    scroll-padding-inline:17px;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
  }

  .product-demo__screens::-webkit-scrollbar {
    display:none;
  }

  .product-shot {
    width:71vw;
    min-width:71vw;
    scroll-snap-align:start;
  }

  .product-shot__phone {
    padding:34px 6px 6px;
    border-radius:31px;
    box-shadow:
      0 20px 45px rgba(25,31,34,.13),
      0 4px 12px rgba(25,31,34,.06);
  }

  .product-shot__phone::after {
    inset:6px;
    border-radius:25px;
  }

  .product-shot__phone img {
    border-radius:0 0 25px 25px;
  }

  .product-shot figcaption {
    padding:18px 4px 0;
  }

  .product-shot figcaption b {
    font-size:14px;
  }

  .product-shot figcaption span {
    max-width:250px;
  }

  .product-demo__note {
    margin-top:19px;
    line-height:1.55;
  }
}

@media (prefers-reduced-motion:reduce) {
  .product-video__media,
  .product-shot__phone {
    transition:none;
  }

  .product-shot__image {
    transition:none;
  }

  .product-video:hover .product-video__media,
  .product-shot:hover .product-shot__phone {
    transform:none;
  }

  .product-shot:hover .product-shot__image {
    transform:none;
  }
}

/* Global responsive correction pass: navigation, centered sections and media presentation. */
.site-header .nav-features {
  position:relative;
  height:100%;
}

.hero {
  overflow:clip;
}

.site-header .nav-features > a {
  height:100%;
}

.nav-features:hover .feature-mega,
.nav-features:focus-within .feature-mega,
.nav-features.is-open .feature-mega {
  opacity:1;
  visibility:visible;
  transform:translate(-50%,0);
}

.nav-features.is-open .nav-chevron {
  transform:rotate(180deg);
}

.help-category-grid {
  margin:25px auto 90px;
}

.privacy-callout,
.contact-callout {
  margin-right:auto;
  margin-left:auto;
}

.help-category {
  display:flex;
  min-width:0;
  flex-direction:column;
}

.help-category h2 {
  margin-top:auto;
}

.product-demo,
.product-demo__gallery-heading {
  scroll-margin-top:120px;
}

.product-demo__videos {
  gap:20px;
}

.product-video {
  border-radius:28px;
  background:#edf2f8;
}

.product-video:nth-child(2) {
  background:#f1effb;
}

.product-video:nth-child(3) {
  background:#edf5ef;
}

.product-video__control {
  top:50%;
  right:auto;
  left:50%;
  width:62px;
  height:62px;
  background:rgba(255,255,255,.88);
  transform:translate(-50%,-50%);
}

.product-video__control:hover {
  transform:translate(-50%,-50%) scale(1.06);
}

.product-video__control span {
  position:relative;
  display:block;
  width:15px;
  height:18px;
  margin:0;
}

.product-video__control span::before {
  position:absolute;
  top:1px;
  left:2px;
  width:0;
  height:0;
  border-top:8px solid transparent;
  border-bottom:8px solid transparent;
  border-left:13px solid currentColor;
  content:"";
}

.product-video.is-playing .product-video__control {
  top:18px;
  right:18px;
  left:auto;
  width:44px;
  height:44px;
  transform:none;
}

.product-video.is-playing .product-video__control:hover {
  transform:scale(1.05);
}

.product-video.is-playing .product-video__control span {
  width:14px;
  height:15px;
}

.product-video.is-playing .product-video__control span::before {
  top:1px;
  left:1px;
  width:4px;
  height:13px;
  border:0;
  background:currentColor;
  box-shadow:8px 0 0 currentColor;
}

.product-demo__gallery-heading {
  display:grid;
  grid-template-columns:minmax(180px,.7fr) minmax(360px,1.3fr);
}

.product-demo__screens {
  gap:18px;
  padding:20px;
  border:1px solid rgba(35,44,46,.07);
  border-radius:34px;
  background:linear-gradient(145deg,#f0f3ef,#f3f4f1);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.86);
}

.product-shot {
  padding:10px 10px 17px;
  border:1px solid rgba(35,44,46,.07);
  border-radius:25px;
  background:rgba(255,255,255,.72);
  box-shadow:0 15px 35px rgba(28,36,39,.055);
}

.product-shot:nth-child(2) {
  background:rgba(236,243,255,.82);
}

.product-shot:nth-child(3) {
  background:rgba(237,247,239,.86);
}

.product-shot:nth-child(4) {
  background:rgba(244,239,255,.82);
}

.product-shot figcaption {
  padding-right:3px;
  padding-left:3px;
}

.news-featured--story {
  grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);
  min-height:430px;
}

.news-featured__copy {
  position:relative;
  z-index:3;
  align-self:center;
}

.news-featured__visual--screens {
  min-width:0;
  min-height:430px;
}

.news-featured__visual--screens img {
  top:38px;
  width:190px;
  bottom:auto;
  border-width:4px;
  border-radius:29px;
}

.news-featured__visual--screens img:first-child {
  left:10%;
  transform:rotate(-6deg);
}

.news-featured__visual--screens img:last-child {
  top:18px;
  right:7%;
  bottom:auto;
  transform:rotate(6deg);
}

@media (max-width:1050px) {
  .news-featured--story {
    grid-template-columns:minmax(0,1fr) minmax(320px,.88fr);
  }

  .news-featured__visual--screens img {
    width:165px;
  }

  .product-demo__screens {
    padding:17px;
  }
}

@media (max-width:960px) {
  .product-demo__gallery-heading {
    display:grid;
    grid-template-columns:1fr;
    align-items:start;
  }

  .product-demo__screens {
    gap:16px;
  }

  .product-video__control {
    width:58px;
    height:58px;
  }
}

@media (max-width:680px) {
  .site-header--enhanced .nav-features {
    height:auto;
  }

  .site-header--enhanced .nav-features > a {
    height:36px;
  }

  .help-category-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    margin-top:18px;
    margin-bottom:64px;
  }

  .help-category {
    min-height:174px;
    padding:19px;
    border-radius:19px;
  }

  .help-category span {
    font-size:21px;
  }

  .help-category h2 {
    margin-bottom:7px;
    font-size:17px;
    line-height:1.05;
  }

  .help-category p {
    font-size:9.5px;
    line-height:1.5;
  }

  .help-search input {
    padding-right:16px;
    font-size:12px;
  }

  .privacy-title-long {
    display:inline-block;
    font-size:.68em;
    letter-spacing:-.055em;
    white-space:nowrap;
  }

  .product-demo__videos {
    gap:13px;
  }

  .product-video__control {
    width:56px;
    height:56px;
  }

  .product-video.is-playing .product-video__control {
    top:14px;
    right:14px;
    width:41px;
    height:41px;
  }

  .product-demo__screens {
    gap:13px;
    padding:4px 17px 32px;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
  }

  .product-shot {
    padding:9px 9px 16px;
    border-radius:24px;
  }

  .news-featured--story {
    grid-template-columns:1fr;
    min-height:0;
  }

  .news-featured__visual--screens {
    min-height:290px;
  }

  .news-featured__visual--screens img {
    top:34px;
    width:142px;
  }

  .news-featured__visual--screens img:first-child {
    left:12%;
  }

  .news-featured__visual--screens img:last-child {
    top:18px;
    right:11%;
  }
}

@media (max-width:360px) {
  .help-category-grid {
    grid-template-columns:1fr;
  }

  .help-category {
    min-height:150px;
  }
}

/* Feature phone safe area: keep the app UI below the iPhone 16 Pro Max island. */
@media (max-width:760px) {
  .detail-phone {
    --detail-screen-safe-top:32px;
  }

  .detail-phone::before {
    top:8px;
    height:16px;
  }

  .news-featured--text-only {
    min-height:340px;
    background:
      radial-gradient(circle at 91% 26%,rgba(174,235,198,.14) 0 4px,transparent 6px),
      radial-gradient(circle at 91% 26%,transparent 0 50px,rgba(139,166,159,.12) 51px 52px,transparent 53px 91px,rgba(139,166,159,.09) 92px 93px,transparent 94px),
      linear-gradient(135deg,#20272b 0%,#2a3235 100%);
  }

  .news-featured--text-only::after {
    top:24%;
    left:91%;
    font-size:23px;
    opacity:.65;
  }

  .news-featured--text-only .news-featured__copy {
    min-height:340px;
    padding:31px 24px;
  }
}

/* Keep pricing CTAs on one baseline even when the note wraps to two lines. */
.price-card > small {
  display:flex;
  min-height:26px;
  align-items:flex-start;
  justify-content:center;
}

/* Life Tracker logo 20260726 */
.brand {
  display:inline-flex;
  align-items:center;
  letter-spacing:normal;
}
.brand__logo {
  display:block;
  width:42px;
  height:42px;
  border-radius:11px;
  object-fit:cover;
}
.footer .brand__logo {
  width:38px;
  height:38px;
  border-radius:10px;
}
