/* deployment-build:8d5139a3e871ad549a1a */
*, *::before, *::after { box-sizing: border-box; }

      :root {
        --navy: #142f42;
        --ink: #29424e;
        --muted: #5b6f77;
        --blue: #dff2f7;
        --blue-strong: #9ed5e7;
        --paper: #fbfaf6;
        --white: #fff;
        --yellow: #f7d97d;
        --red: #b84538;
        --line: #d9e1e1;
      }

      html {
        scroll-behavior: smooth;
        background: #e4e9e8;
        -webkit-text-size-adjust: 100%;
      }

      body {
        margin: 0;
        color: var(--ink);
        background: #e4e9e8;
        font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
        overflow-x: hidden;
        -webkit-font-smoothing: antialiased;
      }

      a { color: inherit; }

      .page {
        width: min(100%, 980px);
        min-height: 100vh;
        margin: 0 auto;
        overflow: hidden;
        background: var(--paper);
        box-shadow: 0 0 48px rgba(28, 55, 65, .12);
      }

      .kicker {
        margin: 0 0 10px;
        color: #5b7f8d;
        font-size: 9px;
        font-weight: 800;
        letter-spacing: .17em;
        text-transform: uppercase;
      }

      .hero {
        position: relative;
        margin: 38px 7% 72px;
      }

      .hero-photo {
        position: relative;
        height: 455px;
        overflow: hidden;
        border: 1px solid var(--line);
        background: #dfe8e7;
      }

      .hero-photo img {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: 50% 37%;
      }

      .hero-note {
        position: absolute;
        top: 18px;
        left: 18px;
        min-width: 210px;
        padding: 14px 17px 13px;
        color: var(--navy);
        background: rgba(255,255,255,.93);
        box-shadow: 4px 5px 0 rgba(158,213,231,.82);
        transform: rotate(-1.2deg);
      }

      .hero-note h1 {
        display: block;
        margin: 0;
        font: 500 23px/1 Georgia, serif;
        letter-spacing: -.025em;
      }

      .hero-note small {
        display: block;
        margin-top: 6px;
        color: #66808a;
        font-size: 8px;
        letter-spacing: .02em;
      }

      .reach {
        position: absolute;
        right: 22px;
        bottom: -42px;
        width: min(470px, 62%);
        padding: 22px 24px 21px;
        color: var(--white);
        background: var(--navy);
        box-shadow: 8px 8px 0 var(--blue-strong);
      }

      .reach small {
        display: block;
        margin-bottom: 7px;
        color: var(--blue-strong);
        font-size: 8px;
        font-weight: 800;
        letter-spacing: .14em;
        text-transform: uppercase;
      }

      .reach h2 {
        margin: 0;
        font: 500 26px/1.04 Georgia, serif;
        letter-spacing: -.02em;
      }

      .reach p {
        margin: 9px 0 14px;
        color: rgba(255,255,255,.68);
        font-size: 10px;
        line-height: 1.5;
      }

      .arrow-link {
        display: inline-flex;
        align-items: center;
        gap: 10px;
        padding-bottom: 3px;
        border-bottom: 2px solid currentColor;
        font-size: 10px;
        font-weight: 800;
        text-decoration: none;
      }

      button.arrow-link {
        appearance: none;
        padding: 0 0 3px;
        border: 0;
        border-bottom: 2px solid currentColor;
        color: inherit;
        background: none;
        cursor: pointer;
        font-family: inherit;
        text-align: left;
      }

      .reach .protected-action {
        min-width: 112px;
        min-height: 44px;
        padding: 10px 0 7px;
        justify-content: space-between;
        font-size: 12px;
      }

      .arrow-link:focus-visible,
      .social-links a:focus-visible,
      .work-contact a:focus-visible,
      .legal-links button:focus-visible {
        outline: 2px solid var(--blue-strong);
        outline-offset: 4px;
      }

      .protected-action:disabled,
      .protected-action[aria-busy="true"] {
        cursor: wait;
        opacity: .72;
      }

      .arrow-link::after {
        content: "→";
        font-size: 15px;
      }

      .section {
        padding: 58px 7%;
        border-top: 1px solid var(--line);
      }

      .section-head {
        display: grid;
        grid-template-columns: 1fr .72fr;
        gap: 48px;
        align-items: end;
        margin-bottom: 28px;
      }

      .section-head h2 {
        margin: 0;
        color: var(--navy);
        font: 500 clamp(34px, 5vw, 52px)/.96 Georgia, serif;
        letter-spacing: -.04em;
      }

      .section-head p {
        margin: 0 0 3px;
        color: var(--muted);
        font-size: 11px;
        line-height: 1.55;
      }

      .notes {
        background:
          linear-gradient(rgba(223,242,247,.43), rgba(223,242,247,.43)),
          var(--paper);
      }

      .article-list {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 12px;
      }

      .article-card {
        position: relative;
        min-height: 180px;
        padding: 24px 52px 22px 23px;
        border: 1px solid var(--line);
        color: inherit;
        background: var(--white);
        cursor: pointer;
        font: inherit;
        text-align: left;
        transition: transform .18s ease, box-shadow .18s ease;
      }

      .article-card:hover,
      .article-card:focus-visible {
        z-index: 1;
        outline: 0;
        box-shadow: 6px 6px 0 var(--blue-strong);
        transform: translate(-2px, -2px);
      }

      .article-card::after {
        content: "↗";
        position: absolute;
        top: 21px;
        right: 20px;
        color: #5a8493;
        font: 500 20px/1 Georgia, serif;
      }

      .article-card small {
        display: block;
        margin-bottom: 8px;
        color: var(--red);
        font-size: 7px;
        font-weight: 800;
        letter-spacing: .13em;
        text-transform: uppercase;
      }

      .article-card strong {
        display: block;
        max-width: 360px;
        color: var(--navy);
        font: 600 23px/1.03 Georgia, serif;
      }

      .article-card span {
        display: block;
        max-width: 360px;
        margin-top: 10px;
        color: var(--muted);
        font-size: 10px;
        line-height: 1.52;
      }

      .article-card b {
        display: inline-block;
        margin-top: 17px;
        padding-bottom: 3px;
        border-bottom: 1px solid currentColor;
        color: #477586;
        font-size: 8px;
        letter-spacing: .02em;
      }

      .work-contact {
        display: grid;
        grid-template-columns: 1fr auto;
        gap: 24px;
        align-items: center;
        margin-top: 16px;
        padding: 21px 23px;
        border: 1px solid var(--line);
        background: rgba(255,255,255,.9);
        box-shadow: 5px 5px 0 rgba(158,213,231,.42);
      }

      .work-contact h3 {
        margin: 0;
        color: var(--navy);
        font: 550 21px/1.05 Georgia, serif;
        letter-spacing: -.02em;
      }

      .work-contact p {
        max-width: 540px;
        margin: 7px 0 0;
        color: var(--muted);
        font-size: 9px;
        line-height: 1.5;
      }

      .work-contact a {
        padding-bottom: 4px;
        color: #477586;
        border-bottom: 1px solid currentColor;
        font-size: 10px;
        font-weight: 800;
        text-decoration: none;
        white-space: nowrap;
      }

      body.modal-open {
        overflow: hidden;
      }

      .article-dialog {
        width: min(920px, calc(100% - 28px));
        max-width: 920px;
        max-height: min(90vh, 900px);
        margin: auto;
        padding: 0;
        overflow: hidden;
        border: 0;
        color: var(--ink);
        background: var(--paper);
        box-shadow: 0 24px 90px rgba(8, 27, 38, .32);
      }

      .article-dialog::backdrop {
        background: rgba(8, 27, 38, .72);
        backdrop-filter: blur(4px);
      }

      .article-close {
        position: absolute;
        z-index: 4;
        top: 14px;
        right: 14px;
        display: grid;
        width: 39px;
        height: 39px;
        padding: 0;
        border: 1px solid rgba(20,47,66,.18);
        border-radius: 50%;
        place-items: center;
        color: var(--navy);
        background: rgba(255,255,255,.94);
        cursor: pointer;
        font: 400 24px/1 Georgia, serif;
      }

      .article-scroll {
        max-height: min(90vh, 900px);
        overflow-y: auto;
        overscroll-behavior: contain;
      }

      .article-cover {
        display: grid;
        grid-template-columns: 1.1fr .9fr;
        min-height: 330px;
        color: var(--white);
        background: var(--navy);
      }

      .article-cover-copy {
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
        padding: 54px 7% 48px;
      }

      .article-cover-copy .kicker {
        color: var(--blue-strong);
      }

      .article-cover h2 {
        max-width: 560px;
        margin: 0;
        font: 500 clamp(38px, 6vw, 62px)/.93 Georgia, serif;
        letter-spacing: -.045em;
      }

      .article-cover p {
        max-width: 510px;
        margin: 18px 0 0;
        color: rgba(255,255,255,.68);
        font-size: 12px;
        line-height: 1.6;
      }

      .article-visual {
        display: grid;
        min-height: 330px;
        padding: 54px 36px 36px;
        place-items: center;
        background: var(--blue);
      }

      .article-visual svg {
        width: 100%;
        max-width: 280px;
        height: auto;
      }

      .article-content {
        padding: 52px 7% 64px;
        color: #4f636b;
        font-size: 13px;
        line-height: 1.72;
      }

      .article-content > p:first-child {
        max-width: 760px;
        margin: 0 0 35px;
        color: var(--navy);
        font: 500 23px/1.38 Georgia, serif;
      }

      .article-content section {
        max-width: 760px;
        margin: 36px 0 0;
      }

      .article-content h3 {
        margin: 0 0 12px;
        color: var(--navy);
        font: 600 29px/1.05 Georgia, serif;
        letter-spacing: -.025em;
      }

      .article-content p {
        margin: 11px 0;
      }

      .article-content ul,
      .article-content ol {
        margin: 15px 0;
        padding-left: 20px;
      }

      .article-content li {
        margin: 9px 0;
        padding-left: 4px;
      }

      .article-content .article-disclaimer {
        max-width: 760px;
        margin: 42px 0 0;
        padding-top: 16px;
        border-top: 1px solid var(--line);
        color: var(--muted);
        font-size: 10px;
      }

      .article-callout {
        max-width: 760px;
        margin: 36px 0 0;
        padding: 22px 24px;
        border-left: 5px solid var(--yellow);
        color: var(--navy);
        background: #f7f1df;
      }

      .article-callout.red {
        border-color: var(--red);
        background: #f8e9e4;
      }

      .article-callout strong {
        display: block;
        margin-bottom: 7px;
        font: 600 19px/1.15 Georgia, serif;
      }

      .article-callout p {
        margin: 0;
        color: #617077;
        font-size: 11px;
      }

      .mini-plan {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 10px;
        max-width: 760px;
        margin: 26px 0 0;
      }

      .mini-plan div {
        min-height: 132px;
        padding: 18px;
        border: 1px solid var(--line);
        background: var(--white);
      }

      .mini-plan small {
        display: block;
        margin-bottom: 9px;
        color: var(--red);
        font-size: 7px;
        font-weight: 800;
        letter-spacing: .11em;
        text-transform: uppercase;
      }

      .mini-plan strong {
        display: block;
        color: var(--navy);
        font: 600 17px/1.1 Georgia, serif;
      }

      .mini-plan span {
        display: block;
        margin-top: 8px;
        color: var(--muted);
        font-size: 9px;
        line-height: 1.5;
      }

      .guide-newsletter {
        display: grid;
        grid-template-columns: 1.05fr .95fr;
        gap: 16px;
      }

      .guide,
      .newsletter {
        min-height: 300px;
        padding: 30px;
      }

      .guide {
        color: var(--white);
        background: var(--navy);
      }

      .guide .kicker { color: var(--blue-strong); }

      .guide h2,
      .newsletter h2 {
        max-width: 360px;
        margin: 0;
        font: 500 35px/1 Georgia, serif;
        letter-spacing: -.035em;
      }

      .checklist {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 8px 18px;
        margin: 22px 0;
        padding: 0;
      }

      .checklist li {
        position: relative;
        padding-left: 19px;
        color: rgba(255,255,255,.7);
        font-size: 9px;
        line-height: 1.45;
        list-style: none;
      }

      .checklist li::before {
        content: "□";
        position: absolute;
        left: 0;
        color: var(--blue-strong);
      }

      .newsletter {
        border: 1px solid var(--line);
        background: var(--white);
      }

      .newsletter p {
        margin: 15px 0 23px;
        color: var(--muted);
        font-size: 10px;
        line-height: 1.55;
      }

      .sr-only {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
        border: 0;
      }

      .support {
        background: #f6f2e9;
      }

      .support-grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 12px;
      }

      .support-card {
        position: relative;
        min-height: 270px;
        overflow: hidden;
        padding: 23px;
        border: 1px solid var(--line);
        background: var(--white);
      }

      .support-card h3 {
        max-width: 220px;
        margin: 0;
        color: var(--navy);
        font: 550 26px/1.02 Georgia, serif;
        letter-spacing: -.025em;
      }

      .support-card p {
        margin: 11px 0 18px;
        color: var(--muted);
        font-size: 9px;
        line-height: 1.5;
      }

      .wishlist-card {
        padding-bottom: 102px;
      }

      .wishlist-card img {
        position: absolute;
        right: -18px;
        bottom: -31px;
        width: 145px;
        height: 145px;
        border: 7px solid var(--white);
        border-radius: 50%;
        object-fit: cover;
        object-position: center;
        background: #dfe8e6;
        box-shadow: 0 6px 20px rgba(20,47,66,.14);
      }

      .coffee-card {
        min-height: 266px;
        padding-right: 43%;
        background: var(--yellow);
        border-color: rgba(20,47,66,.2);
      }

      .coffee-card > .kicker,
      .coffee-card > p {
        color: var(--navy);
      }

      .coffee-receipt {
        position: absolute;
        top: 28px;
        right: 23px;
        bottom: 25px;
        display: flex;
        width: 33%;
        padding: 28px 18px 19px;
        flex-direction: column;
        justify-content: space-between;
        color: var(--navy);
        border: 1px solid rgba(20,47,66,.13);
        background:
          linear-gradient(rgba(158,213,231,.14) 1px, transparent 1px),
          #fffdf8;
        background-size: 100% 22px;
        box-shadow: 7px 8px 0 rgba(20,47,66,.12);
        transform: rotate(1.6deg);
        pointer-events: none;
      }

      .coffee-receipt::before {
        content: "";
        position: absolute;
        top: -12px;
        left: 50%;
        width: 70px;
        height: 24px;
        background: rgba(223,235,218,.88);
        transform: translateX(-50%) rotate(-2deg);
      }

      .coffee-receipt small {
        color: #6d8790;
        font-size: 8px;
        font-style: normal;
        font-weight: 800;
        letter-spacing: .14em;
        text-transform: uppercase;
      }

      .coffee-receipt strong {
        max-width: 120px;
        font: 500 22px/1.02 Georgia, serif;
        letter-spacing: -.025em;
      }

      .coffee-receipt i {
        padding-top: 12px;
        color: #577886;
        border-top: 1px solid rgba(20,47,66,.18);
        font-size: 9px;
        font-style: normal;
        font-weight: 750;
      }

      .kit-card {
        grid-column: 1 / -1;
        padding: 0;
        color: var(--white);
        background: var(--navy);
      }

      .kit-card h3 { color: var(--white); }
      .kit-card p { color: rgba(255,255,255,.58); }

      .kit-heading {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 30px;
        align-items: end;
        padding: 27px;
      }

      .kit-heading p { margin: 0; }

      .kit-products {
        display: grid;
        grid-template-columns: 1fr;
        border-top: 1px solid rgba(255,255,255,.17);
      }

      .kit-product {
        display: grid;
        grid-template-columns: 32% 68%;
        min-height: 320px;
        color: var(--white);
        text-decoration: none;
      }

      .kit-product--reverse {
        grid-template-columns: 68% 32%;
        border-top: 1px solid rgba(255,255,255,.17);
      }

      .kit-product img {
        width: 100%;
        height: 100%;
        min-height: 320px;
        object-fit: cover;
        object-position: center 36%;
      }

      .kit-product-copy {
        display: flex;
        flex-direction: column;
        justify-content: center;
        padding: 31px;
      }

      .kit-product-copy small {
        color: var(--blue-strong);
        font-size: 8px;
        font-weight: 800;
        letter-spacing: .11em;
        text-transform: uppercase;
      }

      .kit-product-copy strong {
        display: block;
        margin: 8px 0;
        font: 550 28px/1.05 Georgia, serif;
      }

      .kit-product-copy span {
        color: rgba(255,255,255,.62);
        font-size: 9px;
        line-height: 1.5;
      }

      .kit-product-copy b {
        align-self: flex-start;
        margin-top: 15px;
        padding-bottom: 3px;
        border-bottom: 1px solid currentColor;
        font-size: 8px;
      }

      .affiliate-disclosure {
        margin: 0;
        padding: 14px 27px 18px;
        color: rgba(255,255,255,.68);
        border-top: 1px solid rgba(255,255,255,.17);
        font-size: 8px;
        line-height: 1.5;
      }

      .footer {
        display: grid;
        grid-template-columns: 1fr auto;
        gap: 24px;
        align-items: center;
        padding: 30px 7% 34px;
        border-top: 1px solid var(--line);
      }

      .footer strong {
        display: block;
        color: var(--navy);
        font: 600 19px/1 Georgia, serif;
      }

      .footer small {
        display: block;
        margin-top: 5px;
        color: var(--muted);
        font-size: 8px;
      }

      .social-links {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-end;
        gap: 17px;
      }

      .social-links a {
        color: #477586;
        font-size: 9px;
        font-weight: 750;
        text-decoration: none;
        border-bottom: 1px solid currentColor;
      }

      .health-disclaimer {
        grid-column: 1 / -1;
        max-width: 620px;
        margin: 0;
        color: var(--muted);
        font-size: 8px;
        line-height: 1.5;
      }

      .legal-links {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        padding: 0 20px calc(28px + env(safe-area-inset-bottom));
        color: var(--muted);
        font-size: 9px;
      }

      .legal-links button {
        appearance: none;
        padding: 4px 1px;
        border: 0;
        color: inherit;
        background: none;
        cursor: pointer;
        font: inherit;
      }

      @media (max-width: 700px) {
        .hero {
          margin: 22px 20px 34px;
        }

        .hero-photo {
          height: 310px;
        }

        .hero-photo img {
          object-position: 50% 37%;
        }

        .hero-note {
          top: 13px;
          left: 12px;
          min-width: 184px;
          padding: 12px 14px 11px;
        }

        .hero-note strong {
          font-size: 20px;
        }

        .hero-note small {
          margin-top: 5px;
          font-size: 7px;
        }

        .reach {
          position: relative;
          right: auto;
          bottom: auto;
          width: calc(100% - 14px);
          margin: -54px 0 0 14px;
          padding: 19px 20px;
          box-shadow: 6px 6px 0 var(--blue-strong);
        }

        .reach h2 { font-size: 24px; }

        .section {
          padding: 47px 20px;
        }

        .section-head {
          grid-template-columns: 1fr;
          gap: 13px;
          margin-bottom: 23px;
        }

        .section-head h2 {
          font-size: 39px;
        }

        .article-list {
          grid-template-columns: 1fr;
          gap: 8px;
        }

        .article-card {
          min-height: 165px;
          padding: 21px 46px 20px 20px;
        }

        .article-card strong {
          font-size: 21px;
        }

        .work-contact {
          grid-template-columns: 1fr;
          gap: 14px;
          padding: 20px;
        }

        .article-dialog {
          width: 100%;
          max-width: none;
          max-height: 100dvh;
          margin: 0;
        }

        .article-scroll {
          max-height: 100dvh;
        }

        .article-cover {
          grid-template-columns: 1fr;
        }

        .article-cover-copy {
          min-height: 330px;
          padding: 66px 24px 31px;
        }

        .article-cover h2 {
          font-size: 43px;
        }

        .article-cover p {
          font-size: 11px;
        }

        .article-visual {
          min-height: 250px;
          padding: 30px;
        }

        .article-content {
          padding: 37px 24px 52px;
          font-size: 12px;
        }

        .article-content > p:first-child {
          font-size: 21px;
        }

        .article-content h3 {
          font-size: 27px;
        }

        .mini-plan {
          grid-template-columns: 1fr;
        }

        .guide-newsletter {
          grid-template-columns: 1fr;
        }

        .guide,
        .newsletter {
          min-height: auto;
          padding: 27px 23px;
        }

        .guide h2,
        .newsletter h2 {
          font-size: 31px;
        }

        .support-grid {
          grid-template-columns: 1fr;
        }

        .support-card {
          min-height: 225px;
        }

        .coffee-card {
          min-height: 250px;
          padding-right: 42%;
        }

        .coffee-receipt {
          top: 26px;
          right: 18px;
          bottom: 24px;
          width: 34%;
          padding: 25px 14px 16px;
        }

        .coffee-receipt strong {
          font-size: 18px;
        }

        .kit-card {
          grid-column: auto;
          min-height: auto;
        }

        .kit-heading {
          grid-template-columns: 1fr;
          gap: 8px;
          padding: 24px;
        }

        .kit-products {
          grid-template-columns: 1fr;
        }

        .kit-product {
          grid-template-columns: 42% 58%;
          min-height: 205px;
        }

        .kit-product--reverse {
          grid-template-columns: 58% 42%;
        }

        .kit-product img {
          min-height: 205px;
        }

        .kit-product-copy {
          padding: 17px;
        }

        .kit-product-copy strong {
          font-size: 21px;
        }

        .footer {
          grid-template-columns: 1fr;
          padding: 25px 20px 29px;
        }

        .social-links {
          justify-content: flex-start;
        }
      }

      @media (max-width: 370px) {
        .checklist { grid-template-columns: 1fr; }
      }

html.is-handoff,
html.is-handoff body {
  width: 100%;
  height: 100%;
  min-height: 100%;
  overflow: hidden;
  overscroll-behavior: none;
}

html.is-handoff body {
  display: block;
  padding: 0;
}

html.is-handoff body > :not(.handoff-splash):not(noscript) {
  display: none !important;
}

.handoff-splash {
  display: none;
}

html.is-handoff .handoff-splash {
  position: fixed;
  z-index: 2147483647;
  inset: 0;
  display: grid;
  width: 100vw;
  height: 100dvh;
  min-height: 100%;
  padding: 24px;
  place-items: center;
  overflow: hidden;
  color: #f4f6f8;
  background: radial-gradient(circle at 50% 42%, #21191b 0, #0a0b0d 48%);
  font: 15px/1.4 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  text-align: center;
  touch-action: none;
}

.handoff-splash-inner {
  display: grid;
  width: min(100%, 340px);
  gap: 8px;
  justify-items: center;
}

.handoff-heart {
  color: #ffd7e0;
  font: 30px/1 Georgia, serif;
  animation: handoff-heart 1.1s ease-in-out infinite alternate;
}

.handoff-splash strong {
  font-size: 14px;
  font-weight: 550;
  letter-spacing: .01em;
}

@keyframes handoff-heart {
  to { opacity: .72; transform: scale(1.08); }
}

.gate-feedback {
  display: grid;
  gap: 5px;
  margin-top: 8px;
}

.reach-status,
.notice {
  margin: 0;
  color: rgba(255,255,255,.72);
  font-size: 10px;
  line-height: 1.4;
}

.reach-status:empty,
.notice:empty {
  display: none;
}

.is-busy .notice:not(:empty)::before {
  content: "";
  display: inline-block;
  width: 9px;
  height: 9px;
  margin-right: 7px;
  border: 1.5px solid rgba(158,213,231,.3);
  border-top-color: var(--blue-strong);
  border-radius: 50%;
  animation: notice-spin .75s linear infinite;
  vertical-align: -1px;
}

@keyframes notice-spin {
  to { transform: rotate(360deg); }
}

.turnstile-mount {
  display: grid;
  height: 0;
  min-height: 0;
  padding: 0;
  place-items: center;
  overflow: hidden;
}

.turnstile-mount.is-verifying {
  width: 100%;
  height: auto;
  min-height: 68px;
  padding: 4px 0;
  overflow: visible;
}

html.is-handoff .handoff-splash-inner .turnstile-mount.is-verifying {
  width: 100%;
  padding-top: 10px;
}

.sheet {
  width: min(calc(100% - 20px), 464px);
  max-height: min(78svh, 608px);
  margin: auto auto 0;
  padding: 38px 22px calc(24px + env(safe-area-inset-bottom));
  border: 1px solid var(--line);
  border-radius: 24px 24px 0 0;
  color: var(--ink);
  background: rgba(251,250,246,.98);
  box-shadow: 0 -16px 64px rgba(20,47,66,.25);
  backdrop-filter: blur(24px);
  -webkit-backdrop-filter: blur(24px);
}

.sheet::backdrop {
  background: rgba(8,27,38,.66);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}

.sheet-handle {
  position: absolute;
  top: 12px;
  left: 50%;
  width: 45px;
  height: 4px;
  border-radius: 99px;
  background: rgba(20,47,66,.18);
  transform: translateX(-50%);
}

.sheet-close {
  position: absolute;
  top: 12px;
  right: 14px;
  display: grid;
  width: 36px;
  height: 36px;
  padding: 0;
  border: 1px solid var(--line);
  border-radius: 50%;
  place-items: center;
  color: var(--navy);
  background: var(--white);
  cursor: pointer;
  font-size: 21px;
}

.sheet h2 {
  margin: 0 0 13px;
  color: var(--navy);
  font: 600 24px/1.05 Georgia, serif;
  letter-spacing: -.02em;
}

.sheet p {
  margin: 11px 0 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.55;
}

.sheet button:focus-visible {
  outline: 2px solid var(--blue-strong);
  outline-offset: 3px;
}

.check-sheet { text-align: center; }

.check-mark {
  display: grid;
  width: 68px;
  height: 68px;
  margin: 0 auto 16px;
  border: 1px solid rgba(215,101,84,.25);
  border-radius: 50%;
  place-items: center;
  color: var(--red);
  background: #f8e9e4;
  box-shadow: 0 13px 38px rgba(20,47,66,.12);
  font-size: 18px;
  font-weight: 800;
}

.check-confirm {
  width: 100%;
  min-height: 54px;
  margin-top: 19px;
  padding: 13px 16px;
  border: 1px solid var(--navy);
  border-radius: 2px;
  color: var(--white);
  background: var(--navy);
  cursor: pointer;
  font-weight: 760;
}

.check-confirm:disabled,
.escape-actions button:disabled,
.android-browser-choices button:disabled {
  cursor: wait;
  opacity: .55;
}

.hcaptcha-mount { min-height: 0; }
.captcha-disclosure { font-size: 10px !important; }
.captcha-disclosure a { color: var(--muted); }

.escape-sheet { text-align: left; }

.escape-sheet.is-launching {
  text-align: center;
}

.escape-sheet.is-launching .sheet-close,
.escape-sheet.is-launching .native-exit-cue,
.escape-sheet.is-launching .escape-guide,
.escape-sheet.is-launching .android-browser-choices,
.escape-sheet.is-launching .escape-actions,
.escape-sheet.is-launching .escape-status,
.escape-sheet.is-launching .escape-footnote {
  display: none;
}

.escape-sheet.is-launching .escape-mark {
  margin-inline: auto;
  animation: escape-launch-pulse .8s ease-in-out infinite alternate;
}

.escape-sheet.is-launching h2 {
  margin-bottom: 5px;
}

.escape-sheet.is-launching [data-escape-copy] {
  margin-top: 0;
}

@keyframes escape-launch-pulse {
  to { opacity: .7; transform: translateY(-2px) scale(1.04); }
}

.native-exit-cue {
  position: fixed;
  z-index: 2;
  right: max(10px, env(safe-area-inset-right));
  bottom: calc(6px + env(safe-area-inset-bottom));
  display: grid;
  grid-template-columns: auto 54px;
  align-items: center;
  gap: 5px;
  pointer-events: none;
  color: var(--white);
  filter: drop-shadow(0 2px 8px rgba(8,27,38,.42));
}

.native-exit-cue[hidden] { display: none; }

.native-exit-cue span {
  padding: 7px 10px;
  border-radius: 999px;
  background: rgba(8,27,38,.82);
  font-size: 12px;
  font-weight: 780;
  letter-spacing: .01em;
}

.native-exit-cue svg {
  width: 54px;
  height: 42px;
  overflow: visible;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 2.5;
}

.escape-sheet[data-recovery-profile="snapchat-ios"] {
  padding-bottom: calc(72px + env(safe-area-inset-bottom));
}

.escape-sheet[data-recovery-profile="snapchat-ios"] .escape-guide {
  border-color: rgba(71,117,134,.34);
  box-shadow: 0 10px 30px rgba(20,47,66,.09);
}

.escape-sheet[data-recovery-profile="snapchat-ios"] .escape-guide strong {
  font-size: 15px;
}

.escape-sheet[data-recovery-profile="snapchat-ios"] .escape-copy-link {
  min-height: 38px;
  border-color: transparent;
  color: var(--muted);
  background: transparent;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.escape-sheet[data-recovery-profile="snapchat-ios"] .escape-status,
.escape-sheet[data-recovery-profile="snapchat-ios"] .escape-footnote {
  display: none;
}

.escape-sheet[data-recovery-profile="tiktok-ios"] .escape-guide {
  border-color: rgba(71,117,134,.34);
  box-shadow: 0 10px 30px rgba(20,47,66,.09);
}

.escape-sheet[data-recovery-profile="tiktok-ios"] .escape-guide strong {
  font-size: 15px;
}

.escape-sheet[data-recovery-profile="tiktok-ios"] .escape-copy-link {
  min-height: 38px;
  border-color: transparent;
  color: var(--muted);
  background: transparent;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.escape-sheet[data-recovery-profile="tiktok-ios"] .escape-status,
.escape-sheet[data-recovery-profile="tiktok-ios"] .escape-footnote {
  display: none;
}

.escape-mark {
  display: grid;
  width: 58px;
  height: 58px;
  margin: 0 0 16px;
  border: 1px solid var(--line);
  border-radius: 16px;
  place-items: center;
  color: var(--navy);
  background: var(--blue);
}

.escape-mark svg {
  width: 26px;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.75;
}

.escape-guide {
  display: grid;
  grid-template-columns: 38px minmax(0,1fr);
  align-items: center;
  gap: 13px;
  margin-top: 16px;
  padding: 13px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: var(--white);
}

.menu-dots {
  display: flex;
  width: 38px;
  height: 38px;
  align-items: center;
  justify-content: center;
  gap: 3px;
  border-radius: 11px;
  background: var(--blue);
}

.escape-mark.is-centered { margin-inline: auto; }

.menu-dots span {
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: var(--navy);
}

.menu-dots.is-browser-icon span { display: none; }
.menu-dots.is-browser-icon::before {
  content: "\2197";
  color: var(--navy);
  font-size: 22px;
  font-weight: 760;
  line-height: 1;
}

.escape-guide strong,
.escape-guide small {
  display: block;
}

.escape-guide strong {
  color: var(--navy);
  font-size: 13px;
  line-height: 1.3;
}

.escape-guide small {
  margin-top: 4px;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.35;
}

.android-browser-choices { margin-top: 14px; }
.android-browser-choices[hidden] { display: none; }
.android-browser-choices > span {
  display: block;
  margin: 0 0 7px;
  color: var(--muted);
  font-size: 11px;
}
.android-browser-choices > div {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 7px;
}
.android-browser-choices button {
  min-height: 43px;
  padding: 8px 6px;
  border: 1px solid var(--line);
  border-radius: 12px;
  color: var(--navy);
  background: var(--white);
  cursor: pointer;
  font-size: 11px;
  font-weight: 720;
}

.escape-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 9px;
  margin-top: 14px;
}
.escape-actions.is-android { grid-template-columns: 1fr; }
.escape-actions.is-single { grid-template-columns: 1fr; }
.escape-actions button {
  min-height: 51px;
  padding: 11px 12px;
  border-radius: 2px;
  cursor: pointer;
  font-weight: 760;
}
.escape-retry {
  border: 1px solid var(--navy);
  color: var(--white);
  background: var(--navy);
}
.escape-copy-link {
  border: 1px solid var(--line);
  color: var(--navy);
  background: var(--white);
}
.escape-status {
  min-height: 18px;
  margin-top: 11px !important;
  color: #477586 !important;
  font-size: 11px !important;
  text-align: center;
}
.escape-footnote {
  margin-top: 4px !important;
  color: var(--muted) !important;
  font-size: 10px !important;
  text-align: center;
}

.noscript {
  position: fixed;
  z-index: 2147483647;
  inset: 0;
  display: grid;
  padding: 32px;
  place-items: center;
  color: var(--navy);
  background: var(--paper);
  text-align: center;
}

.is-busy .protected-action::after {
  animation: busy-pulse .8s ease-in-out infinite alternate;
}

@keyframes busy-pulse {
  to { transform: translateX(3px); }
}

@media (max-width: 368px) {
  .escape-actions { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}
