

    /* ── HERO — full bleed, text centred ── */
    .kiss-hero {
      position: relative;
      min-height: 100vh;
      display: flex;
      align-items: center;
      justify-content: center;
      text-align: center;
      padding-top: var(--nav-h);
      overflow: hidden;
      background: var(--navy);
    }

    .kiss-hero__bg {
      position: absolute; inset: 0; z-index: 0;
    }
    .kiss-hero__bg img {
      width: 100%; height: 100%;
      object-fit: cover; object-position: center;
    }
    .kiss-hero__overlay {
      position: absolute; inset: 0; z-index: 1;
      background: linear-gradient(
        to bottom,
        rgba(0,0,0,.20) 0%,
        rgba(0,0,0,.35) 50%,
        rgba(0,0,0,.45) 100%
      );
    }

    .kiss-hero__content {
      position: relative; z-index: 2;
      padding: 80px var(--pad);
      max-width: 900px;
    }

    .kiss-hero__label {
      font-size: 10px; font-weight: 400;
      letter-spacing: .28em; text-transform: uppercase;
      color: var(--yellow); margin-bottom: 28px;
      display: block;
    }

    .kiss-hero__h1 {
      font-family: 'Pacifico', cursive;
      font-size: clamp(52px, 8vw, 120px);
      line-height: .88; letter-spacing: .02em;
      color: var(--yellow); margin-bottom: 32px;
    }

    .kiss-hero__sub {
      font-size: 17px; font-weight: 300;
      line-height: 1.75; color: var(--yellow);
      max-width: 520px; margin: 0 auto;
    }

    /* Scroll indicator */
    .kiss-hero__scroll {
      position: absolute; bottom: 40px; left: 50%;
      transform: translateX(-50%); z-index: 2;
      display: flex; flex-direction: column;
      align-items: center; gap: 8px;
    }

    .kiss-hero__scroll span {
      font-size: 9px; letter-spacing: .24em;
      text-transform: uppercase; color: rgba(255,255,255,.25);
    }

    .kiss-hero__scroll-line {
      width: 1px; height: 48px;
      background: linear-gradient(to bottom, rgba(255,255,255,.2), transparent);
      animation: scrollline 2s ease-in-out infinite;
    }

    .kiss-hero__scroll {
      transition: opacity .4s;
    }

    .kiss-hero__scroll--hidden {
      opacity: 0;
      pointer-events: none;
    }

    @keyframes scrollline {
      0%, 100% { opacity: .3; transform: scaleY(1); }
      50%       { opacity: .8; transform: scaleY(1.1); }
    }

    /* ── SECTIONS ── */
    .kiss-section {
      padding: 112px 0;
      border-top: 1px solid var(--border);
    }

    .kiss-section:first-of-type { border-top: none; }

    .kiss-section__inner {
      display: grid;
      grid-template-columns: 280px 1fr;
      gap: 80px;
      align-items: start;
    }

    .kiss-section__left {
      position: sticky;
      top: calc(var(--nav-h) + 32px);
    }

    .kiss-section__num {
      font-family: var(--display);
      font-size: 80px; line-height: 1;
      letter-spacing: .01em; color: var(--border);
      display: block; margin-bottom: 4px;
    }

    .kiss-section__label {
      font-size: 10px; letter-spacing: .22em;
      text-transform: uppercase; color: var(--light);
      display: block; margin-bottom: 20px;
    }

    .kiss-section__h {
      font-family: var(--display);
      font-size: clamp(28px, 3vw, 40px);
      line-height: .95; letter-spacing: .02em;
      color: var(--ink);
    }

    /* Prose right */
    .kiss-prose__p {
      font-size: 16px; font-weight: 300;
      line-height: 1.85; color: var(--mid);
      margin-bottom: 24px;
    }
    .kiss-prose__p:last-of-type { margin-bottom: 0; }

    /* Pull quote */
    .kiss-pull {
      margin: 48px 0;
      padding: 36px 0;
      border-top: 2px solid var(--ink);
      border-bottom: 2px solid var(--ink);
    }

    .kiss-pull__text {
      font-family: var(--display);
      font-size: clamp(28px, 3.5vw, 44px);
      line-height: .98; letter-spacing: .02em;
      color: var(--ink);
    }

    /* Principles list */
    .kiss-principles {
      list-style: none;
      margin: 36px 0 0;
    }

    .kiss-principle {
      display: grid;
      grid-template-columns: 28px 1fr;
      gap: 20px;
      padding: 28px 0;
      border-top: 1px solid var(--border);
    }

    .kiss-principle:last-child { border-bottom: 1px solid var(--border); }

    .kiss-principle__dot {
      width: 6px; height: 6px;
      background: var(--sage); border-radius: 50%;
      margin-top: 8px; flex-shrink: 0;
    }

    .kiss-principle__body h4 {
      font-size: 15px; font-weight: 500;
      color: var(--ink); margin-bottom: 8px;
      letter-spacing: -.01em;
    }

    .kiss-principle__body p {
      font-size: 15px; font-weight: 300;
      color: var(--mid); line-height: 1.75;
    }

    /* ── FINAL STATEMENT ── */
    .kiss-final {
      background: var(--white);
      padding: 120px var(--pad);
      text-align: center;
    }

    .kiss-final__h {
      font-family: 'Bungee', cursive;
      font-size: clamp(40px, 6vw, 84px);
      line-height: .9; letter-spacing: .02em;
      color: var(--navy); margin-bottom: 48px;
    }

    .kiss-final__sub {
      font-size: 16px; font-weight: 300;
      line-height: 1.8; color: var(--navy);
      max-width: 480px; margin: 0 auto 52px;
    }

    .btn--white-outline {
      display: inline-block; text-decoration: none;
      font-size: 11px; font-weight: 500;
      letter-spacing: .14em; text-transform: uppercase;
      padding: 13px 28px; color: var(--white);
      background: var(--red);
      border-radius: 6px;
      transition: background .2s;
    }
    .btn--white-outline:hover {
      background: var(--red-dark);
    }

    /* ── RESPONSIVE ── */
    @media (max-width: 900px) {
      .kiss-section__inner {
        grid-template-columns: 1fr;
        gap: 40px;
      }
      .kiss-section__left { position: static; }
      .kiss-section__num { font-size: 56px; }
    }

    @media (max-width: 600px) {
      .kiss-hero__h1 { font-size: clamp(60px, 18vw, 100px); }
    }
  