@charset "UTF-8";

/* October 7 mobile compositions and October 8 desktop columns. Reference canvas: 841 CSS px.
   Scale geometry with the canvas; keep small-screen copy readable. */
.home {
    --pl-u: min(1px, .1189060642vw);
    font-feature-settings: "locl" 0;
}
/* These structural groups have no mobile layout box. */
.pl-hero__schedule, .pl-hero__message { display: contents; }
.pl-hero__wave, .pl-hero__contours, .pl-hero__cta-arrow { display: none; }
.pl-reference-cta,
.pl-hero .pl-reference-cta {
    display: flex;
    width: 100%;
    min-height: max(58px, calc(124 * var(--pl-u)));
    padding: .75em .65em;
    border-radius: max(18px, calc(32 * var(--pl-u)));
    border: 2px solid #7eeded77;
    background: linear-gradient(175deg, #54e6df, #10cdca);
    color: #002e40;
    box-shadow: 0 18px 40px #08c8c52b;
    font-size: clamp(17px, calc(36 * var(--pl-u)), 36px);
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: -.035em;
    white-space: normal;
    text-align: center;
}
.home .pl-header__inner { min-height: calc(260 * var(--pl-u)); }
.home .pl-header.is-stuck .pl-header__inner { min-height: max(70px, calc(128 * var(--pl-u))); }
.home .pl-header .pl-container { padding-inline: max(20px, calc(50 * var(--pl-u))); }
.home .pl-header .plab-brand-lockup__image { width: calc(340 * var(--pl-u)); height: auto; }
.home .pl-header.is-stuck .plab-brand-lockup__image { width: calc(306 * var(--pl-u)); }
.home .pl-burger { width: max(44px, calc(70 * var(--pl-u))); height: max(44px, calc(70 * var(--pl-u))); }
.home .pl-burger__box { width: max(28px, calc(60 * var(--pl-u))); height: max(22px, calc(42 * var(--pl-u))); }
.home .pl-burger__box span { height: max(2px, calc(5 * var(--pl-u))); }
.home .pl-header.is-stuck { background: linear-gradient(110deg, #052b3d, #074052); }

/* C â€” one centered launch/date/timer/message flow. */
.pl-reference-hero.pl-hero {
    padding: calc(282 * var(--pl-u)) 0 calc(207 * var(--pl-u));
    background-color: #002d40;
    background-image: radial-gradient(circle at calc(2 * var(--pl-u)) calc(2 * var(--pl-u)), #528c9d3b calc(1.6 * var(--pl-u)), transparent calc(2.1 * var(--pl-u))),
        radial-gradient(ellipse at 100% 25%, #0041544d, transparent 68%),
        radial-gradient(ellipse at 0 85%, #005e704d, transparent 55%),
        linear-gradient(120deg, #002233, #002e40 55%, #002435);
    background-size: calc(56 * var(--pl-u)) calc(56 * var(--pl-u)), auto, auto, auto;
}
.pl-reference-hero__inner { max-width: 841px; padding-inline: calc(48 * var(--pl-u)); margin-inline: auto; }
/* Keep the schedule spacing, without decorative lines competing with the copy. */
.pl-reference-hero .pl-reference-curve { visibility: hidden; }
.pl-reference-hero .pl-reference-curve--matte { max-width: 720px; margin-inline: auto; color: #537780; }
.pl-reference-hero .pl-hero__date { display: block; }
.pl-reference-hero .pl-hero__date > span { display: block; color: #b7e9fc; font-size: clamp(17px, calc(32 * var(--pl-u)), 32px); line-height: 1.375; }
.pl-reference-hero .pl-hero__date time { display: block; margin-top: calc(10 * var(--pl-u)); color: #26e0d7; font-size: clamp(38px, calc(87 * var(--pl-u)), 87px); font-weight: 800; line-height: 1.2; letter-spacing: -.035em; white-space: nowrap; }
.pl-reference-hero .pl-hero__date + .pl-reference-curve { margin-top: calc(12 * var(--pl-u)); height: calc(58 * var(--pl-u)); }
.pl-reference-hero .plab-countdown { width: 100%; margin: calc(30 * var(--pl-u)) 0 0; gap: calc(18 * var(--pl-u)); }
.pl-reference-hero .plab-countdown__label { font-size: clamp(15px, calc(32 * var(--pl-u)), 32px); color: #b7e9fc; line-height: 1.375; }
.pl-reference-hero .plab-countdown__units { display: grid; width: 100%; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: calc(24 * var(--pl-u)); }
.pl-reference-hero .plab-countdown__unit { min-width: 0; padding: 0; gap: calc(8 * var(--pl-u)); }
.pl-reference-hero .plab-countdown__value { font-size: clamp(35px, calc(91 * var(--pl-u)), 91px); line-height: 1.1; letter-spacing: -.035em; font-weight: 800; color: #f8fcff; font-variant-numeric: tabular-nums; }
.pl-reference-hero .plab-countdown__name { font-size: clamp(12px, calc(32 * var(--pl-u)), 32px); line-height: 1.3; color: #b7e9fc; }
.pl-reference-hero .plab-countdown__unit + .plab-countdown__unit::before { content: ":"; position: absolute; left: calc(-23 * var(--pl-u)); top: 0; width: calc(22 * var(--pl-u)); height: auto; margin: 0; background: none; box-shadow: none; color: #23ded5; font-size: clamp(32px, calc(90 * var(--pl-u)), 90px); font-weight: 650; line-height: 1.15; }
.pl-reference-hero .plab-countdown + .pl-reference-curve { margin-top: calc(28 * var(--pl-u)); height: calc(60 * var(--pl-u)); }
.pl-reference-hero .pl-h1 { margin-top: calc(72 * var(--pl-u)); font-size: clamp(27px, calc(62 * var(--pl-u)), 62px); line-height: 1.31; font-weight: 700; letter-spacing: -.04em; text-wrap: initial; }
.pl-reference-hero .pl-hero__slogan-line,
.pl-reference-hero .pl-hero__slogan-line > span { display: block; }
.pl-reference-hero .pl-hero__slogan-line--0 { color: #f8fcff; }
.pl-reference-hero .pl-hero__slogan-line--1 { color: #a9e4ff; }
.pl-reference-hero .pl-hero__slogan-line--2 { color: #22dfd5; }
.pl-reference-hero .pl-lead { max-width: 710px; margin: calc(62 * var(--pl-u)) auto 0; color: #c0eaf9; font-size: clamp(16px, calc(32 * var(--pl-u)), 32px); line-height: 1.6; letter-spacing: -.025em; }
.pl-reference-hero .pl-reference-cta { margin-top: calc(66 * var(--pl-u)); }

/* Carry the approved wave into the stacked mobile scene, clear of the CTA. */
@media (max-width: 1199px) {
    .pl-reference-hero.pl-hero { padding-bottom: max(112px, calc(207 * var(--pl-u))); }
    .pl-home > .pl-reference-hero::before { background: none; }
    .pl-hero__wave {
        display: block;
        position: absolute;
        left: 0;
        bottom: -1px;
        width: 100%;
        height: clamp(72px, 18vw, 120px);
        pointer-events: none;
    }
    .pl-reference-hero + .pl-transition { display: none; }
}

/* A â€” spacious light offer with one free-month panel and two price columns. */
.pl-launch { padding: calc(82 * var(--pl-u)) 0 calc(135 * var(--pl-u)); }
.pl-launch.pl-reference-light { background: linear-gradient(115deg, #f6fbfd, #fcfdff 50%, #f4fbfd); }
.pl-launch__inner { max-width: 841px; margin-inline: auto; padding-inline: calc(36 * var(--pl-u)); }
.pl-launch h2 { font-size: clamp(25px, calc(50 * var(--pl-u)), 50px); line-height: 1.2; letter-spacing: -.04em; font-weight: 700; color: #062c3b; }
.pl-launch h2 span,
.pl-launch__date span,
.pl-launch__terms span { display: block; }
.pl-launch__date { display: block; margin-top: calc(20 * var(--pl-u)); font-size: clamp(40px, calc(86 * var(--pl-u)), 86px); font-weight: 800; line-height: 1.06; letter-spacing: -.055em; }
.pl-launch__date span { white-space: nowrap; }
.pl-launch .pl-reference-curve { width: calc(100% + 52 * var(--pl-u)); margin: calc(-38 * var(--pl-u)) calc(-26 * var(--pl-u)) 0; }
.pl-launch__open { margin-top: calc(24 * var(--pl-u)); font-size: clamp(17px, calc(36 * var(--pl-u)), 36px); line-height: 1.35; color: #496d89; letter-spacing: -.035em; }
.pl-launch__panel { margin-top: calc(36 * var(--pl-u)); padding: calc(48 * var(--pl-u)) calc(28 * var(--pl-u)) calc(40 * var(--pl-u)); border-radius: max(22px, calc(48 * var(--pl-u))); background: linear-gradient(110deg, #d2fbf4, #e7fbfc 48%, #d4f6ff); }
.pl-launch__free h3 { margin: 0; font-size: clamp(23px, calc(44 * var(--pl-u)), 44px); line-height: 1.23; letter-spacing: -.03em; font-weight: 700; color: #052d3e; }
.pl-launch__zero { font-size: clamp(76px, calc(166 * var(--pl-u)), 166px); font-weight: 800; line-height: .98; letter-spacing: -.05em; }
.pl-launch__caption { display: block; color: #527590; font-size: clamp(15px, calc(32 * var(--pl-u)), 32px); line-height: 1.4; letter-spacing: -.035em; }
.pl-launch__free > .pl-launch__caption { font-size: clamp(16px, calc(34 * var(--pl-u)), 34px); }
.pl-launch__prices { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: calc(30 * var(--pl-u)); padding-top: calc(38 * var(--pl-u)); border-top: 1px solid #73e0e2; }
.pl-launch__prices > div { min-width: 0; padding-inline: calc(12 * var(--pl-u)); }
.pl-launch__prices > div + div { border-left: 1px solid #73e0e2; }
.pl-launch__prices dt { font-size: clamp(14px, calc(32 * var(--pl-u)), 32px); font-weight: 700; line-height: 1.4; color: #082e40; letter-spacing: -.05em; }
.pl-launch__prices dd { margin: 0; }
.pl-launch__prices strong { display: block; margin-top: calc(4 * var(--pl-u)); font-size: clamp(40px, calc(94 * var(--pl-u)), 94px); line-height: 1.15; letter-spacing: -.055em; font-weight: 800; white-space: nowrap; }
.pl-launch__prices .pl-launch__caption { margin-top: calc(14 * var(--pl-u)); }
.pl-launch__period { display: block; margin-top: calc(-10 * var(--pl-u)); font-size: clamp(23px, calc(50 * var(--pl-u)), 50px); font-weight: 650; line-height: 1.2; color: #007989; white-space: nowrap; }
.pl-launch__terms { margin-top: calc(40 * var(--pl-u)); font-size: clamp(16px, calc(34 * var(--pl-u)), 34px); line-height: 1.45; letter-spacing: -.035em; color: #527590; }
.pl-launch .pl-reference-cta { width: calc(100% - 44 * var(--pl-u)); margin: calc(38 * var(--pl-u)) auto 0; }
.pl-pillars-section { padding-top: 2rem; }


@media (max-width: 1099px) {
    .home .pl-js .pl-nav,
    .pl-js .home .pl-nav { padding-top: max(95px, calc(150 * var(--pl-u))); }
}
@media (max-width: 430px) {
    .pl-launch__prices dt { min-height: 2.8em; display: flex; align-items: center; justify-content: center; }
    .pl-launch__prices .pl-launch__caption { font-size: 14px; }
    .pl-reference-hero .pl-h1 { letter-spacing: -.045em; }
}
/* A no-script navigation expands in normal flow instead of covering the date. */
html:not(.pl-js) .home .pl-header { position: relative; background: #052e41; }
html:not(.pl-js) .home .pl-header__inner { min-height: 80px; }
html:not(.pl-js) .pl-reference-hero.pl-hero { padding-top: 3rem; }

/* Match the supplied upright Cyrillic letterforms and four-line hero title. */
.pl-reference-hero .pl-hero__slogan-line--1 > span:last-child { font-size: .94em; letter-spacing: -.045em; }
@media (max-width: 430px) {
    .pl-reference-hero .pl-hero__slogan-line--1 > span:last-child { font-size: .85em; }
}
.pl-launch__zero, .pl-launch__prices strong{ letter-spacing: -.025em; }

/* Desktop compositions: role-based sizes, separate from the mobile artboards.
   No viewport-height lock: larger text and low screens reflow naturally. */
@media (min-width: 1024px) {
    .home .pl-header__inner,
    .home .pl-header.is-stuck .pl-header__inner { min-height: 72px; }
    .home .pl-header .pl-container { padding-inline: var(--pl-gutter); }
    .home .pl-header .plab-brand-lockup__image,
    .home .pl-header.is-stuck .plab-brand-lockup__image { width: 180px; }
    .home .pl-burger { width: 48px; height: 48px; }
    .home .pl-burger__box { width: 30px; height: 22px; }
    .home .pl-burger__box span { height: 2px; }
    .home .pl-js .pl-nav, .pl-js .home .pl-nav { padding-top: 92px; }
    .pl-reference-cta, .pl-hero .pl-reference-cta {
        width: min(100%, 360px); min-height: 50px; padding: .75rem 1.25rem;
        border-radius: 1rem; font-size: 1rem; margin-inline: auto;
    }
    .pl-launch { padding-block: 64px; }
    .pl-launch__inner { max-width: 800px; padding-inline: 24px; }
    .pl-launch h2 { font-size: 34px; }
    .pl-launch__date { margin-top: 14px; font-size: 60px; line-height: 1.08; }
    .pl-launch .pl-reference-curve { width: 100%; height: 28px; margin: 8px 0 0; }
    .pl-launch__open { margin-top: 16px; font-size: 18px; }
    .pl-launch__panel { margin-top: 24px; padding: 24px; border-radius: 24px; }
    .pl-launch__free h3 { font-size: 24px; }
    .pl-launch__zero { margin-block: 8px; font-size: 64px; line-height: 1.05; }
    .pl-launch__caption, .pl-launch__free > .pl-launch__caption { font-size: 17px; line-height: 1.5; }
    .pl-launch__prices { margin-top: 20px; padding-top: 20px; }
    .pl-launch__prices > div { padding-inline: 20px; }
    .pl-launch__prices dt { font-size: 20px; letter-spacing: -.025em; }
    .pl-launch__prices strong { font-size: 44px; }
    .pl-launch__period { margin-top: 0; font-size: 24px; }
    .pl-launch__prices .pl-launch__caption { margin-top: 8px; }
    .pl-launch__terms { margin-top: 24px; font-size: 17px; line-height: 1.5; }
    .pl-launch .pl-reference-cta { width: min(100%, 360px); margin-top: 24px; }
}
@media (min-width: 1024px) and (max-width: 1199px) {
    .pl-reference-hero.pl-hero { padding: 88px 0 28px; }
    .pl-reference-hero__inner { max-width: 800px; padding-inline: 24px; }
    .pl-reference-hero .pl-hero__date > span { font-size: 18px; line-height: 1.4; }
    .pl-reference-hero .pl-hero__date time { margin-top: 4px; font-size: 64px; line-height: 1.1; }
    .pl-reference-hero .pl-hero__date + .pl-reference-curve { margin-top: 4px; height: 16px; }
    .pl-reference-hero .plab-countdown { margin-top: 8px; gap: 6px; }
    .pl-reference-hero .plab-countdown__label { font-size: 18px; line-height: 1.3; }
    .pl-reference-hero .plab-countdown__units { max-width: 520px; gap: 24px; }
    .pl-reference-hero .plab-countdown__unit { gap: 2px; }
    .pl-reference-hero .plab-countdown__value { font-size: 56px; line-height: 1.05; }
    .pl-reference-hero .plab-countdown__name { font-size: 14px; }
    .pl-reference-hero .plab-countdown__unit + .plab-countdown__unit::before { left: -24px; width: 24px; font-size: 48px; line-height: 1.15; }
    .pl-reference-hero .plab-countdown + .pl-reference-curve { margin-top: 8px; height: 16px; }
    .pl-reference-hero .pl-h1 { margin-top: 14px; font-size: 34px; line-height: 1.2; }
    .pl-reference-hero .pl-hero__slogan-line > span,
    .pl-reference-hero .pl-hero__slogan-line--1 > span:last-child { display: inline; font-size: inherit; letter-spacing: inherit; }
    .pl-reference-hero .pl-lead { max-width: 680px; margin-top: 14px; font-size: 18px; line-height: 1.5; }
    .pl-reference-hero .pl-reference-cta { margin-top: 18px; }

}
@media (min-width: 1100px) {
    .home .pl-js .pl-nav, .pl-js .home .pl-nav { padding-top: 0; }
}
@media (min-width: 1024px) and (max-width: 1199px) and (max-height: 800px) {
    .pl-reference-hero.pl-hero { padding-bottom: 24px; }
    .pl-reference-hero .pl-hero__date time { font-size: 56px; }
    .pl-reference-hero .pl-hero__date + .pl-reference-curve,
    .pl-reference-hero .plab-countdown + .pl-reference-curve { height: 12px; }
    .pl-reference-hero .plab-countdown { margin-top: 6px; gap: 4px; }
    .pl-reference-hero .plab-countdown__value { font-size: 48px; }
    .pl-reference-hero .plab-countdown__unit + .plab-countdown__unit::before { font-size: 42px; }
    .pl-reference-hero .pl-h1 { margin-top: 10px; font-size: 32px; }
    .pl-reference-hero .pl-lead { margin-top: 10px; font-size: 17px; }
    .pl-reference-hero .pl-reference-cta { margin-top: 14px; }
}
/* The compact stacked scene also needs clear space above its wave. */
@media (min-width: 1024px) and (max-width: 1199px) {
    .pl-reference-hero.pl-hero { padding-bottom: 160px; }
}
/* Owner-approved desktop scene; tablet and mobile retain their original flow. */
@media (min-width: 1200px) {
    .home .pl-header .pl-container { max-width: 1288px; padding: 0 0 0 86px; }
    .home .pl-header__inner { min-height: 108px; gap: 24px; }
    .home .pl-header .plab-brand-lockup__image { width: 195px; }
    .home .pl-header .pl-brand { gap: 24px; }
    .home .pl-header .pl-brand__line { display: block; max-width: 180px; padding-left: 24px; font-size: 16px; text-align: left; }
    .home .pl-nav__link { padding-inline: 12px; font-size: 16px; }
    .home .pl-nav__item--cta { margin-left: 12px; }
    .home .pl-nav__item--cta .pl-btn { border-radius: 99px; min-height: 56px; padding-inline: 28px; font-size: 16px; white-space: nowrap; }
    .pl-reference-hero.pl-hero { padding: 172px 0 155px; background-size: 54px 54px, auto, auto, auto; }
    .pl-home > .pl-reference-hero::before { background: none; }
    .pl-reference-hero__inner { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 1.44fr) minmax(0, 1fr); gap: 76px; width: calc(100% - 96px); max-width: 1270px; padding: 0; text-align: left; }
    .pl-hero__message { display: block; grid-column: 1; grid-row: 1; min-width: 0; }
    .pl-hero__schedule { display: block; grid-column: 2; grid-row: 1; position: relative; min-width: 0; padding-top: 18px; }
    .pl-reference-hero .pl-h1 { margin: 0; max-width: none; font-size: clamp(48px, 3.965vw, 60px); line-height: 1; font-weight: 750; letter-spacing: -.045em; }
    .pl-reference-hero .pl-hero__slogan-line--1 > span { display: inline; }
    .pl-reference-hero .pl-hero__slogan-line--1 > span:last-child { font-size: .925em; letter-spacing: inherit; }
    .pl-reference-hero .pl-lead { max-width: 690px; margin: 26px 0 0; font-size: clamp(20px, 1.55vw, 23px); line-height: 1.5; letter-spacing: -.025em; }
    .pl-reference-hero .pl-reference-cta { width: fit-content; max-width: 100%; min-height: 70px; margin: 36px 0 0; padding: 16px 34px; gap: 22px; border-radius: 24px; font-size: clamp(18px, 1.52vw, 23px); letter-spacing: -.04em; }
    .pl-hero__cta-arrow { display: block; flex: none; width: 24px; height: 24px; }
    .pl-reference-hero .pl-reference-cta:hover { background: linear-gradient(175deg, #83f3ec, #22ded7); }
    .pl-reference-hero .pl-reference-cta:focus-visible { outline: 3px solid #fff; outline-offset: 6px; }
    .pl-reference-hero .pl-hero__date > span { color: #d6eef2; font-size: 23px; line-height: 1.35; }
    .pl-reference-hero .pl-hero__date time { margin-top: 8px; font-size: clamp(66px, 5.42vw, 82px); line-height: 1.15; letter-spacing: -.045em; }
    .pl-reference-hero .pl-hero__date + .pl-reference-curve { display: block; max-width: none; height: 1px; margin: 24px 0 30px; background: linear-gradient(90deg, #86b4c266, #86b4c210); }
    .pl-reference-hero .pl-hero__date + .pl-reference-curve svg { display: none; }
    .pl-reference-hero .plab-countdown { margin: 0; gap: 16px; justify-items: start; }
    .pl-reference-hero .plab-countdown__label { font-size: 21px; color: #d6eef2; line-height: 1.4; }
    .pl-reference-hero .plab-countdown__units { max-width: none; gap: 24px; }
    .pl-reference-hero .plab-countdown__unit { gap: 8px; align-items: center; }
    .pl-reference-hero .plab-countdown__value { font-size: clamp(46px, 3.965vw, 60px); line-height: 1.1; }
    .pl-reference-hero .plab-countdown__name { font-size: 18px; line-height: 1.3; color: #d6eef2; }
    .pl-reference-hero .plab-countdown__unit + .plab-countdown__unit::before { left: -24px; width: 24px; font-size: clamp(42px, 3.7vw, 56px); line-height: 1.15; }
    .pl-reference-hero .plab-countdown + .pl-reference-curve { display: none; }
    .pl-hero__wave { display: block; position: absolute; width: 100%; left: 0; pointer-events: none; }
    .pl-hero__wave { height: 185px; bottom: -1px; }
    .pl-reference-hero + .pl-transition { display: none; }
    .pl-launch.pl-reference-light { background: #f6fbfd; padding-top: 48px; }
    .pl-home > .pl-launch::before { background: none; }
    .pl-launch h2 { font-size: 42px; line-height: 1.15; }
    .pl-launch__date { font-size: 76px; margin-top: 12px; }
}

@media (min-width: 1200px) and (max-width: 1399px) {
    .home .pl-header .pl-container { width: calc(100% - 64px); padding-inline: 0; }
    .home .pl-header .pl-brand__line { max-width: 150px; padding-left: 16px; font-size: 14px; }
    .home .pl-header .pl-brand { gap: 16px; }
    .home .pl-nav__link { padding-inline: 9px; font-size: 14px; }
    .home .pl-nav__item--cta .pl-btn { padding-inline: 22px; }
}
