:root{color-scheme:dark;--ink:#061e29;--deep:#041720;--white:#f4f8f7;--muted:#a6bcc4;--mint:#9fe5d5;--border:#ffffff24}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--ink);color:var(--white);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--mint);outline-offset:6px}img{display:block;width:100%;height:100%;object-fit:cover}figure,p,h1,h2{margin:0}h1,h2{font-weight:400;line-height:1.08;letter-spacing:-.045em}h2{font-size:clamp(2.5rem,4.5vw,4.4rem)}.serif{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-weight:400;color:var(--mint);letter-spacing:-.055em}h1 span,h2 span{display:block}.eyebrow{font-size:.75rem;text-transform:uppercase;letter-spacing:.19em;font-weight:600;color:var(--mint);margin-bottom:28px}.section-wrap{max-width:1440px;margin:auto;padding:110px 7%}.site-header{position:absolute;z-index:3;inset:0 0 auto;display:flex;align-items:center;justify-content:space-between;padding:29px 5%;gap:24px;border-bottom:1px solid var(--border)}.brand{font-size:1.4rem;font-weight:700;letter-spacing:-.045em;display:flex;align-items:center;line-height:1.2;white-space:nowrap}.brand>span:last-child{font-weight:400}.brand-mark{font-size:.75rem;letter-spacing:.01em;font-weight:400!important;display:grid;place-items:center;width:31px;height:34px;border:1px solid #b5ebe2;border-radius:50% 50% 45% 45%;margin-right:10px;color:var(--mint)}.desktop-nav{display:flex;gap:34px;font-size:.875rem}.desktop-nav a{transition:color .2s}.desktop-nav a:hover,.back-top:hover{color:var(--mint)}.languages{display:flex;gap:3px}.languages button{border:0;background:transparent;color:#d2e0e5;cursor:pointer;min-height:44px;min-width:40px;font-size:.875rem;border-radius:3px}.languages button[aria-pressed=true]{background:#ffffff19;color:#fff;box-shadow:inset 0 -2px var(--mint)}.hero{min-height:800px;min-height: min(960px,100svh);position:relative;display:flex;align-items:center;background:#032139;isolation:isolate}.hero-photo{position:absolute;inset:0 0 0 auto;width:68%;object-position:50% 45%;z-index:-3}.hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#051e2b 3%,#051e2bf0 20%,#051e2b88 46%,#041c2820 77%),linear-gradient(0deg,#061e29 0%,transparent 23%,#02172344 100%)}.hero-content{padding:180px 7% 150px;width:100%}.hero h1{font-size:clamp(3.2rem,6vw,6rem);max-width:1000px}.hero-description{max-width:400px;color:#c1d2d9;font-size:1.0625rem;margin:30px 0 32px}.store-status{border:1px solid #ffffff45;display:inline-flex;align-items:center;gap:13px;padding:14px 21px;border-radius:5px;background:#061e2945;font-size:.875rem;max-width:100%;text-align:left}.store-status svg{width:22px;height:27px;flex-shrink:0}.hero-bottom{position:absolute;bottom:35px;left:7%;right:7%;display:flex;justify-content:space-between;align-items:center;font-size:.875rem;color:#bfd1d9}.hero-bottom a{display:flex;gap:25px;align-items:center}.hero-note{font-size:.75rem;letter-spacing:.05em}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:12%}.intro-grid h2{max-width:560px}.lead{font-size:1.125rem;color:#c1d0d5;line-height:1.85}.muted{color:var(--muted);margin-top:22px}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:70px;padding-top:30px;border-top:1px solid var(--border)}.principles>div{display:flex;gap:20px;align-items:baseline}.principles span{font-size:.75rem;color:var(--mint)}.principles p{font-size:.9375rem}.training{padding-top:25px;display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}.training-photo{position:relative;height:670px}.training-photo img{object-position:center 45%}.training-photo:after{content:'';position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#00182399)}.training-photo figcaption{position:absolute;bottom:28px;left:30px;z-index:1;font-size:.75rem;letter-spacing:.08em}.section-copy h2{margin-bottom:30px}.section-copy .lead{max-width:450px}.small-note{display:flex;align-items:flex-start;gap:20px;margin-top:35px;color:var(--muted);font-size:.9375rem;max-width:380px}.line-mark{height:1px;width:35px;background:var(--mint);margin-top:13px;flex-shrink:0}.recovery{position:relative;min-height:670px;isolation:isolate;display:flex;align-items:center}.recovery>img{position:absolute;inset:0;z-index:-3;object-position:center 52%}.recovery-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#021e26d9 0%,#021e26b0 42%,#021e2630),linear-gradient(0deg,#061e2944,#061e2922)}.recovery-content{width:100%;max-width:1440px;margin:auto;padding:100px 7%}.recovery h2{max-width:700px;margin-bottom:30px}.recovery .lead{max-width:470px;color:#e0e8e9}.quiet-label{display:block;margin-top:45px;font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--mint)}.ocean-heading{display:grid;grid-template-columns:1fr 1.35fr;gap:8%;align-items:start;margin-bottom:55px}.ocean-heading .eyebrow{padding-top:12px}.ocean-heading h2{max-width:700px}.ocean figure{height:650px;position:relative;overflow:hidden}.ocean figure img{object-position:center 44%}.ocean figcaption{position:absolute;bottom:0;left:0;right:0;padding:55px 30px 25px;display:flex;justify-content:space-between;background:linear-gradient(transparent,#031c26bb);font-size:.875rem}.ocean figcaption span:last-child{font-size:.75rem;letter-spacing:.08em}.closing{text-align:center;padding-top:25px;padding-bottom:100px}.closing h2{font-size:clamp(2.6rem,5.6vw,5rem)}.closing>p:not(.eyebrow):not(.store-status){color:var(--muted);margin:24px 0 30px}.closing .eyebrow{margin-bottom:24px}.site-footer{display:flex;justify-content:space-between;align-items:center;gap:25px;margin:0 7%;padding:35px 0;border-top:1px solid var(--border);font-size:.75rem;color:var(--muted)}.site-footer .brand{font-size:1.125rem;color:var(--white)}.back-top{display:flex;gap:22px;font-size:.875rem}.skip-link{position:fixed;left:20px;top:-100px;z-index:10;background:var(--white);color:var(--ink);padding:12px 20px}.skip-link:focus{top:15px}@media(min-width:1500px){.hero-content{max-width:1440px;margin:auto}.hero-photo{width:65%}}@media(max-width:1000px){.desktop-nav{gap:20px}.site-header{padding:22px 5%}.hero h1{font-size:4.4rem}.hero-photo{width:80%;object-position:52% center}.hero-shade{background:linear-gradient(90deg,#051e2bf0,#051e2b88 53%,#051e2b22),linear-gradient(0deg,#061e29,transparent 30%)}.section-wrap{padding:80px 6%}.training{gap:7%;padding-top:10px}.training-photo{height:600px}.principles{gap:20px}.principles>div{gap:10px}.ocean figure{height:540px}.intro-grid{gap:7%}.hero-note{display:none}}@media(max-width:700px){.site-header{padding:16px 5%;gap:12px}.brand{font-size:1.2rem}.brand-mark{width:26px;height:30px;margin-right:7px}.languages button{min-width:35px}.desktop-nav{display:none}.hero{min-height:800px;min-height:100svh;align-items:flex-end}.hero-photo{width:100%;object-position:58% 35%}.hero-shade{background:linear-gradient(0deg,#061e29 0%,#061e29e0 21%,#061e2990 48%,#061e290a 78%,#061e2990 100%)}.hero-content{padding:340px 6% 125px}.hero h1{font-size:clamp(2.8rem,10vw,4.3rem)}.hero .eyebrow{font-size:.75rem;margin-bottom:20px}.hero-description{font-size:1rem;max-width:350px;margin:25px 0}.hero-bottom{bottom:27px;left:6%;right:6%}.section-wrap{padding:65px 6%}.intro-grid,.training,.ocean-heading{grid-template-columns:1fr;gap:30px}.intro-grid h2{max-width:440px}h2{font-size:clamp(2.5rem,9vw,3.6rem)}.lead{font-size:1.0625rem}.principles{grid-template-columns:1fr;gap:17px;margin-top:35px;padding-top:25px}.principles>div{gap:25px}.training{padding-top:10px;gap:40px}.training-photo{height:560px;height:145vw;max-height:650px}.section-copy{padding:0 0 10px}.recovery{min-height:670px}.recovery>img{object-position:43% center}.recovery-shade{background:linear-gradient(90deg,#021e26cf,#021e2688)}.recovery-content{padding:70px 6%}.recovery h2{font-size:clamp(2.5rem,8.8vw,3.6rem)}.ocean-heading{gap:0;margin-bottom:30px}.ocean-heading .eyebrow{padding-top:0}.ocean figure{height:115vw;max-height:650px}.ocean figure img{object-position:51% center}.ocean figcaption{padding:55px 20px 20px}.ocean figcaption span:last-child{display:none}.closing{padding-top:5px}.site-footer{flex-wrap:wrap;margin:0 6%;gap:25px}.site-footer>p{order:3;width:100%;font-size:.75rem}.back-top{font-size:.8125rem;gap:12px}.store-status{padding:13px 16px;font-size:.8125rem}html[lang=ru] .hero h1{font-size:clamp(2.7rem,9.6vw,4rem)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
/* Blend the portrait edge into the desktop background without changing the photo. */
@media(min-width:1001px){.hero-shade{background:linear-gradient(90deg,#061e29 0%,#061e29 32%,#061e2999 48%,#061e2910 78%),linear-gradient(0deg,#061e29 0%,transparent 23%,#02172344 100%)}}

/* Quiet editorial principles; shared by all three languages. */
.principles {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(30px, 5vw, 76px);
  margin-top: 76px;
  padding-top: 0;
  border-top: 0;
}
.principles > div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 24px;
  padding-top: 22px;
  border-top: 1px solid var(--border);
}
.principles p {
  max-width: 24ch;
  color: var(--white);
  font-size: clamp(1.125rem, 1.55vw, 1.375rem);
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: -.01em;
  text-wrap: balance;
}
@media (max-width: 700px) {
  .principles {
    grid-template-columns: minmax(0, 1fr);
    gap: 34px;
    margin-top: 44px;
    padding-top: 0;
  }
  .principles > div {
    gap: 16px;
    padding-top: 20px;
  }
  .principles p {
    max-width: 28ch;
    font-size: 1.125rem;
  }
}

/* Keep more space above the manta in the wide desktop crop. */
@media (min-width: 1001px) {
  .ocean figure img { object-position: center 22%; }
}

/* Display the full original portrait as a centered desktop photographic plate. */
@media (min-width: 1200px) {
  .ocean figure { height: 900px; }
  .ocean figure img { object-fit: contain; object-position: center; }
  .ocean figcaption { max-width: calc(900px * 1342 / 1520); margin-inline: auto; }
}

/* A continuous ocean-blue surface beneath the photographic sections. */
body {
  background: linear-gradient(180deg, #061e29 0%, #051e2b 35%, #032139 72%, #051e2b 100%);
}
.ocean-heading {
  display: block;
  text-align: center;
}
.ocean-heading h2 { margin-inline: auto; }
@media (min-width: 1200px) {
  .ocean-heading { max-width: calc(900px * 1342 / 1520); margin-inline: auto; }
}

/* One caption system, based on the original Training photo caption. */
.photo-caption,
.training-photo .photo-caption,
.ocean .photo-caption {
  position: absolute;
  inset: auto 0 0;
  z-index: 1;
  margin-block: 0;
  padding: 55px 30px 28px;
  color: var(--white);
  font-family: inherit;
  font-size: .75rem;
  font-weight: 400;
  line-height: 1.65;
  letter-spacing: .08em;
  text-transform: none;
  opacity: 1;
}
.ocean .photo-caption span { font: inherit; letter-spacing: inherit; }
.recovery .photo-caption { background: linear-gradient(transparent, #031c26bb); }
.recovery-content { padding-bottom: 110px; }

/* Shared footer navigation and quiet information-page layout. */
.site-footer { flex-wrap: wrap; }
.footer-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 14px 28px;
  flex-basis: 100%;
  order: 4;
  padding-top: 12px;
  font-size: .875rem;
}
.footer-nav a:hover, .home-link:hover { color: var(--mint); }
.info-page { min-height: 100svh; display: flex; flex-direction: column; }
.info-page .site-header { position: relative; }
.info-content {
  width: min(100%, 900px);
  margin-inline: auto;
  padding: 90px 6% 120px;
  flex: 1;
}
.info-content h1 { font-size: clamp(2.25rem, 4.5vw, 4rem); margin: 30px 0; overflow-wrap: anywhere; }
.home-link { color: var(--mint); font-size: .875rem; }
@media (max-width: 700px) {
  .photo-caption,
  .training-photo .photo-caption,
  .ocean .photo-caption { padding: 55px 20px 20px; }
  .info-content { padding-block: 55px 80px; }
  .footer-nav { gap: 12px 24px; }
}

/* Readable policy content, scoped exclusively to the privacy document. */
.privacy-document { margin-top: 44px; color: var(--white); overflow-wrap: anywhere; }
.privacy-document section + section { margin-top: 40px; }
.privacy-document h2 {
  font-size: 1.375rem;
  line-height: 1.4;
  letter-spacing: -.01em;
  margin-bottom: 20px;
}
.privacy-document p, .privacy-document ul { margin: 0 0 20px; }
.privacy-document ul { padding-left: 1.5em; }
.privacy-document li + li { margin-top: 6px; }
.privacy-document a { color: var(--mint); text-decoration: underline; text-underline-offset: .2em; }

/* Align the note with its section heading; preserve its previous text width. */
.training .small-note > .line-mark { display: none; }
.training .small-note { gap: 0; padding-right: calc(35px + 20px); }

/* Real app screens, with a quiet device frame and no image cropping. */
.showcase-heading { max-width: 760px; margin: 0 auto 66px; text-align: center; }
.showcase-heading .lead { max-width: 580px; margin: 26px auto 0; }
.app-showcase { background: radial-gradient(ellipse at 50% 48%, #12607828, transparent 68%); }
.app-gallery { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); align-items: start; gap: clamp(24px,4vw,64px); }
.app-card { min-width: 0; }
.app-phone { max-width: 292px; margin-inline: auto; padding: 7px; background: #08151e; border: 1px solid #91bdc955; border-radius: 33px; box-shadow: 0 28px 60px #0005, inset 0 0 0 2px #ffffff0b; }
.app-phone img { width: 100%; height: auto; object-fit: contain; border-radius: 26px; }
.app-card:nth-child(2) .app-phone { max-width: 312px; }
.app-card:not(:nth-child(2)) { padding-top: 28px; }
.app-card figcaption { margin-top: 32px; }
.app-number { color: var(--mint); font-size: .75rem; letter-spacing: .15em; }
.app-card h3 { font-size: 1.3rem; font-weight: 400; line-height: 1.35; margin: 12px 0; }
.app-card figcaption p { color: var(--muted); font-size: .9375rem; }
.app-pro { display: grid; grid-template-columns: 1.2fr 1fr; align-items: center; gap: 10%; }
.pro-copy h2 { margin-bottom: 30px; }
.pro-features { list-style: none; padding: 0; margin: 32px 0 0; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 28px; }
.pro-features li { border-top: 1px solid var(--border); padding: 16px 0; font-size: .9375rem; }
.pro-screen .app-phone { max-width: 320px; }
.reveal { transition: opacity .7s ease, transform .7s ease; }
.reveal-pending { opacity: 0; transform: translateY(18px); }
@media(max-width:700px) {
  .showcase-heading { margin-bottom: 40px; text-align: left; }
  .app-gallery { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; gap: 24px; padding: 8px 6% 30px; margin-inline: -6.82%; scrollbar-color: var(--mint) var(--deep); }
  .app-card { flex: 0 0 84%; scroll-snap-align: center; }
  .app-card:not(:nth-child(2)) { padding-top: 0; }
  .app-card .app-phone, .app-card:nth-child(2) .app-phone { max-width: 280px; }
  .app-card figcaption { max-width: 310px; margin-inline: auto; }
  .app-pro { grid-template-columns: minmax(0,1fr); gap: 44px; }
  .pro-features { gap: 0 20px; }
  .pro-screen .app-phone { max-width: 280px; }
}
@media(prefers-reduced-motion:reduce) { .reveal-pending { opacity: 1; transform: none; } }
