
    @font-face {
      font-family: "Inter Tight";
      font-style: normal;
      font-weight: 100 900;
      font-display: swap;
      src: url("inter-tight-cyrillic.woff2") format("woff2");
      unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
    }

    @font-face {
      font-family: "Inter Tight";
      font-style: normal;
      font-weight: 100 900;
      font-display: swap;
      src: url("inter-tight-latin.woff2") format("woff2");
      unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
    }

    :root {
      color-scheme: only light;
      --page: #f1f3ed;
      --white: #ffffff;
      --milk: #f7f8f3;
      --forest: #25462a;
      --forest-deep: #18351e;
      --sage: #73866b;
      --sage-soft: #dfe7da;
      --ink: #172018;
      --line: rgba(255,255,255,.22);
      --glass: rgba(237,243,234,.14);
      --glass-strong: rgba(240,245,237,.2);
      --radius: 34px;
      --font: "Inter Tight", Inter, "Helvetica Neue", Arial, sans-serif;
    }

    * { box-sizing: border-box; }

    html {
      background: var(--forest-deep);
      overflow-x: hidden;
      scroll-behavior: smooth;
      overscroll-behavior-y: none;
    }

    body {
      margin: 0;
      min-width: 320px;
      overflow-x: hidden;
      background: var(--page);
      overscroll-behavior-y: none;
      color: var(--ink);
      font-family: var(--font);
      -webkit-font-smoothing: antialiased;
      text-rendering: optimizeLegibility;
    }

    a { color: inherit; text-decoration: none; }

    button,
    summary { font: inherit; }

    .page {
      min-height: 100svh;
    }

    .hero {
      position: relative;
      isolation: isolate;
      overflow: hidden;
      width: 100%;
      min-height: 100svh;
      border: 0;
      border-radius: 0;
      background: var(--forest-deep);
      box-shadow: none;
    }

    .hero-media,
    .hero-media video,
    .hero-media img {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
    }

    .hero-media { z-index: -4; }

    .hero-media video,
    .hero-media img {
      object-fit: cover;
      object-position: 54% center;
    }

    .hero-media img { display: none; }

    .hero::before {
      position: absolute;
      z-index: -3;
      inset: 0;
      background:
        linear-gradient(90deg, rgba(9,17,11,.8) 0%, rgba(10,18,12,.55) 39%, rgba(10,18,12,.12) 72%, rgba(10,18,12,.1) 100%),
        linear-gradient(180deg, rgba(8,15,10,.34) 0%, transparent 30%, rgba(7,14,9,.1) 48%, rgba(6,13,8,.68) 100%);
      content: "";
      pointer-events: none;
    }

    .hero::after {
      position: absolute;
      z-index: -2;
      inset: 0;
      background:
        radial-gradient(circle at 84% 22%, rgba(214,227,208,.12), transparent 28%),
        linear-gradient(115deg, rgba(37,70,42,.26), transparent 45%);
      content: "";
      mix-blend-mode: screen;
      pointer-events: none;
    }

    .nav {
      position: fixed;
      z-index: 1000;
      top: 24px;
      right: 28px;
      left: 28px;
      display: grid;
      grid-template-columns: 1fr auto 1fr;
      align-items: center;
      min-height: 58px;
      padding: 0;
      border: 0;
      border-radius: 26px;
      background: transparent;
      box-shadow: none;
      transition: top 220ms ease, right 220ms ease, left 220ms ease, padding 220ms ease, background 220ms ease, border-color 220ms ease, border-radius 220ms ease, box-shadow 220ms ease;
    }

    .nav.is-scrolled {
      top: 0;
      right: 0;
      left: 0;
      padding: 8px 28px;
      border-bottom: 1px solid rgba(255,255,255,.14);
      border-radius: 0 0 24px 24px;
      background: rgba(19,45,26,.94);
      box-shadow: 0 12px 34px rgba(8,25,13,.2), inset 0 1px 0 rgba(255,255,255,.08);
      backdrop-filter: blur(24px) saturate(135%);
      -webkit-backdrop-filter: blur(24px) saturate(135%);
    }

    section[id],
    footer[id] { scroll-margin-top: 0; }

    .brand {
      display: inline-flex;
      align-items: center;
      justify-self: start;
      gap: 10px;
      width: max-content;
      color: var(--white);
      font-size: 20px;
      font-weight: 650;
      letter-spacing: -.045em;
    }
    .brand-logo { display: block; width: clamp(132px, 13vw, 178px); height: auto; max-height: 60px; object-fit: contain; filter: brightness(0) invert(1); }

    .brand-mark {
      display: grid;
      width: 40px;
      height: 40px;
      place-items: center;
      border: 1px solid rgba(255,255,255,.34);
      border-radius: 50%;
      background: rgba(245,248,241,.14);
      box-shadow: inset 0 1px 0 rgba(255,255,255,.18);
      backdrop-filter: blur(16px);
      -webkit-backdrop-filter: blur(16px);
    }

    .brand-mark svg { width: 20px; height: 20px; }

    .nav-glass {
      display: flex;
      align-items: center;
      gap: 6px;
      padding: 6px;
      border: 1px solid var(--line);
      border-radius: 999px;
      background: var(--glass);
      box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 12px 38px rgba(0,0,0,.12);
      backdrop-filter: blur(20px) saturate(130%);
      -webkit-backdrop-filter: blur(20px) saturate(130%);
    }

    .nav-glass a {
      padding: 11px 18px;
      border-radius: 999px;
      color: rgba(255,255,255,.8);
      font-size: 12px;
      font-weight: 560;
      letter-spacing: .01em;
      transition: color 180ms ease, background 180ms ease;
    }

    .nav-glass a:hover,
    .nav-glass a:focus-visible {
      background: rgba(247,250,244,.17);
      color: var(--white);
    }

    .nav-side {
      display: flex;
      align-items: center;
      justify-self: end;
      gap: 9px;
    }

    .nav-request {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      min-height: 46px;
      padding: 7px 8px 7px 17px;
      border: 1px solid var(--line);
      border-radius: 999px;
      background: var(--glass-strong);
      color: var(--white);
      font-size: 11px;
      font-weight: 620;
      backdrop-filter: blur(20px) saturate(130%);
      -webkit-backdrop-filter: blur(20px) saturate(130%);
      transition: background 180ms ease;
    }

    .nav-request:hover { background: rgba(244,248,241,.3); }

    .nav-request span {
      display: grid;
      width: 31px;
      height: 31px;
      place-items: center;
      border-radius: 50%;
      background: var(--milk);
      color: var(--forest);
    }

    .nav-request svg { width: 14px; height: 14px; }

    .mobile-menu { display: none; }

    .hero-content {
      position: absolute;
      right: clamp(28px,4.8vw,70px);
      bottom: clamp(36px,5vw,72px);
      left: clamp(28px,4.8vw,70px);
      display: flex;
      align-items: end;
      justify-content: space-between;
      gap: 48px;
    }

    .copy {
      width: min(650px, 66%);
      color: var(--white);
    }

    h1 {
      max-width: 760px;
      margin: 0;
      font-size: clamp(52px,5.15vw,82px);
      font-weight: 430;
      letter-spacing: -.058em;
      line-height: .98;
      text-wrap: balance;
    }

    .summary {
      max-width: 530px;
      margin: 24px 0 0;
      color: rgba(255,255,255,.75);
      font-size: clamp(15px,1.2vw,18px);
      font-weight: 430;
      letter-spacing: -.01em;
      line-height: 1.5;
    }

    .actions {
      display: flex;
      align-items: center;
      gap: 18px;
      margin-top: 30px;
    }

    .primary-cta {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-width: 270px;
      min-height: 54px;
      padding: 0 30px;
      border-radius: 11px;
      background: var(--milk);
      color: var(--forest-deep);
      box-shadow: 0 14px 34px rgba(0,0,0,.14);
      font-size: 13px;
      font-weight: 680;
      transition: transform 180ms ease, background 180ms ease;
    }

    .primary-cta:hover {
      background: var(--sage-soft);
      transform: translateY(-2px);
    }

    .social-rail {
      position: absolute;
      z-index: 6;
      top: 50%;
      right: 34px;
      display: grid;
      gap: 13px;
      transform: translateY(-42%);
    }

    .social-link {
      display: grid;
      width: 46px;
      height: 46px;
      place-items: center;
      border: 1px solid rgba(255,255,255,.46);
      border-radius: 50%;
      background: rgba(247,249,244,.9);
      color: var(--forest);
      box-shadow: 0 10px 28px rgba(0,0,0,.16);
      backdrop-filter: blur(18px);
      -webkit-backdrop-filter: blur(18px);
      transition: transform 180ms ease, background 180ms ease;
    }

    .social-link:hover {
      background: var(--white);
      transform: translateY(-2px);
    }

    .social-link svg { width: 20px; height: 20px; }

    :focus-visible {
      outline: 3px solid #55783c;
      outline-offset: 4px;
    }

    .section-shell {
      width: min(1420px, calc(100% - 72px));
      margin-inline: auto;
    }

    .site-section {
      padding: 116px 0;
    }

    .scroll-reveal {
      opacity: 0;
      filter: blur(5px);
      transform: translate3d(0, 46px, 0);
      transition:
        opacity 760ms cubic-bezier(.2,.7,.2,1),
        filter 760ms cubic-bezier(.2,.7,.2,1),
        transform 820ms cubic-bezier(.2,.7,.2,1);
      transition-delay: var(--reveal-delay, 0ms);
      will-change: opacity, filter, transform;
    }

    .scroll-reveal.reveal-card {
      transform: translate3d(0, 34px, 0) scale(.975);
    }

    .scroll-reveal.reveal-media {
      clip-path: inset(0 0 14% 0 round 30px);
      filter: blur(3px);
      transform: translate3d(0, 38px, 0) scale(1.035);
      transition-duration: 900ms;
    }

    .scroll-reveal.is-visible {
      opacity: 1;
      filter: blur(0);
      transform: translate3d(0, 0, 0) scale(1);
    }

    .scroll-reveal.reveal-media.is-visible {
      clip-path: inset(0 0 0 0 round 30px);
    }

    .hero-media {
      animation: hero-media-in 1200ms cubic-bezier(.2,.7,.2,1) both;
    }

    @keyframes hero-media-in {
      from { opacity: .5; transform: scale(1.035); }
      to { opacity: 1; transform: scale(1); }
    }

    .section-kicker {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      margin: 0 0 18px;
      color: var(--forest);
      font-size: 11px;
      font-weight: 720;
      letter-spacing: .14em;
      text-transform: uppercase;
    }

    .section-kicker::before {
      width: 8px;
      height: 8px;
      border-radius: 50%;
      background: #c7ef5b;
      box-shadow: 0 0 0 5px rgba(199,239,91,.18);
      content: "";
    }

    .section-heading {
      display: grid;
      grid-template-columns: minmax(0, 1.1fr) minmax(280px, .62fr);
      align-items: end;
      gap: 42px;
      margin-bottom: 52px;
    }

    .section-heading h2,
    .split-intro h2,
    .booking-copy h2 {
      margin: 0;
      color: var(--forest-deep);
      font-size: clamp(42px, 5.2vw, 72px);
      font-weight: 470;
      letter-spacing: -.055em;
      line-height: .98;
      text-wrap: balance;
    }

    .section-heading > p,
    .split-intro > p,
    .booking-copy > p {
      max-width: 510px;
      margin: 0;
      color: rgba(23,32,24,.66);
      font-size: 18px;
      line-height: 1.55;
    }

    .section-heading > p { justify-self: end; }

    .button-light,
    .button-dark,
    .card-button,
    .step-button,
    .submit-button {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 54px;
      padding: 0 26px;
      border: 0;
      border-radius: 12px;
      font-weight: 680;
      cursor: pointer;
      transition: transform 180ms ease, background 180ms ease, color 180ms ease;
    }

    .button-light,
    .card-button {
      background: var(--milk);
      color: var(--forest-deep);
    }

    .button-dark,
    .submit-button {
      background: var(--forest-deep);
      color: var(--white);
    }

    .button-light:hover,
    .button-dark:hover,
    .card-button:hover,
    .step-button:hover,
    .submit-button:hover { transform: translateY(-2px); }

    /* Services */
    .services { background: #f5f6f1; }

    .service-carousel {
      position: relative;
      padding: 34px 48px 48px;
      border-radius: 34px;
      background: #fff;
      box-shadow: 0 24px 70px rgba(29,48,31,.06);
    }

    .service-grid {
      display: flex;
      gap: 24px;
      overflow-x: auto;
      overscroll-behavior-inline: contain;
      scroll-padding-inline: 0;
      scroll-snap-type: x mandatory;
      scrollbar-width: none;
    }

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

    .service-arrow {
      position: absolute;
      z-index: 4;
      top: 50%;
      display: grid;
      width: 54px;
      height: 54px;
      padding: 0;
      place-items: center;
      border: 0;
      border-radius: 50%;
      background: #fff;
      color: var(--forest-deep);
      box-shadow: 0 14px 34px rgba(17,27,18,.18);
      cursor: pointer;
      transform: translateY(-50%);
      transition: color 180ms ease, background 180ms ease, opacity 180ms ease;
    }

    .service-arrow-prev { left: -27px; }
    .service-arrow-next { right: -27px; }

    .service-arrow:hover {
      background: var(--forest);
      color: #fff;
    }

    .service-arrow:disabled {
      color: rgba(23,32,24,.32);
      cursor: default;
      opacity: .62;
    }

    .service-arrow svg { width: 20px; height: 20px; }

    .service-card {
      position: relative;
      isolation: isolate;
      flex: 0 0 calc((100% - 48px) / 3);
      overflow: hidden;
      height: 620px;
      min-height: 620px;
      border-radius: 18px;
      background: #314533;
      color: #fff;
      scroll-snap-align: start;
    }

    .service-card img {
      position: absolute;
      z-index: -2;
      inset: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
      transition: transform 700ms cubic-bezier(.2,.72,.25,1);
    }

    .service-card:nth-child(1) img { object-position: 52% center; }
    .service-card:nth-child(2) img { object-position: 46% center; }
    .service-card:nth-child(3) img { object-position: 52% center; }
    .service-card:nth-child(4) img { object-position: center 58%; }
    .service-card:nth-child(6) img { object-position: center 54%; }
    .service-card:nth-child(7) img { object-position: center 56%; }

    .service-card::after {
      position: absolute;
      z-index: -1;
      inset: 0;
      background: linear-gradient(180deg, rgba(9,15,10,.02) 26%, rgba(9,15,10,.17) 48%, rgba(9,15,10,.92) 100%);
      content: "";
    }

    .service-card:hover img { transform: scale(1.025); }

    .service-content {
      position: absolute;
      right: 24px;
      bottom: 24px;
      left: 24px;
      display: flex;
      flex-direction: column;
      align-items: stretch;
      text-align: left;
    }

    .service-number {
      display: none;
    }

    .service-content h3 {
      margin: 0;
      color: #fff;
      font-size: clamp(25px, 2.1vw, 34px);
      font-weight: 540;
      letter-spacing: -.04em;
      line-height: 1;
    }

    .service-content p {
      max-width: 390px;
      min-height: 70px;
      margin: 16px 0 20px;
      color: rgba(255,255,255,.72);
      font-size: 15px;
      line-height: 1.48;
    }

    .service-card .card-button {
      width: 100%;
      min-height: 49px;
      border-radius: 12px;
    }

    /* Benefits */
    .benefits { background: var(--page); }

    .trust-card .index {
      display: grid;
      width: 42px;
      height: 42px;
      place-items: center;
      border: 1px solid currentColor;
      border-radius: 50%;
      font-size: 11px;
      font-weight: 700;
      opacity: .64;
    }

    .benefit-orbit {
      display: grid;
      grid-template-columns: minmax(230px, 1fr) minmax(420px, 1.5fr) minmax(230px, 1fr);
      grid-template-areas:
        "time photo away"
        "schedule photo regular";
      gap: 56px clamp(30px, 4vw, 68px);
      align-items: center;
      padding: 10px 0 0;
    }

    .benefit-photo {
      grid-area: photo;
      width: min(100%, 590px);
      aspect-ratio: 1;
      margin: 0;
      padding: 13px;
      justify-self: center;
      border: 1px solid rgba(37,70,42,.14);
      border-radius: 50%;
      background: rgba(255,255,255,.72);
    }

    .benefit-photo img {
      display: block;
      width: 100%;
      height: 100%;
      border-radius: 50%;
      object-fit: cover;
      object-position: 50% 50%;
    }

    .benefit-point {
      display: flex;
      max-width: 330px;
      flex-direction: column;
      align-items: center;
      justify-self: center;
      text-align: center;
    }

    .benefit-point--time { grid-area: time; }
    .benefit-point--schedule { grid-area: schedule; }
    .benefit-point--away { grid-area: away; }
    .benefit-point--regular { grid-area: regular; }

    .benefit-icon {
      display: grid;
      width: 64px;
      height: 64px;
      margin-bottom: 22px;
      place-items: center;
      color: #6f8668;
    }

    .benefit-icon svg {
      width: 100%;
      height: 100%;
      fill: none;
      stroke: currentColor;
      stroke-linecap: round;
      stroke-linejoin: round;
      stroke-width: 1.55;
    }

    .benefit-point h3 {
      margin: 0;
      color: var(--forest-deep);
      font-size: clamp(23px, 2vw, 30px);
      font-weight: 560;
      letter-spacing: -.035em;
      line-height: 1.08;
    }

    .benefit-point p {
      margin: 18px 0 0;
      color: rgba(23,32,24,.61);
      font-size: 15px;
      line-height: 1.58;
    }

    /* Process */
    .process {
      overflow: hidden;
      background: #f5f6f1;
    }

    .process .section-kicker {
      color: #2f7d38;
      letter-spacing: .22em;
    }

    .process .section-kicker::before { display: none; }

    .process .section-heading h2 { color: var(--forest-deep); }
    .process .section-heading > p { color: rgba(23,32,24,.61); }

    .process-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 24px;
      padding-top: 22px;
    }

    .process-step {
      position: relative;
      display: flex;
      min-height: 290px;
      padding: 64px 32px 32px;
      flex-direction: column;
      justify-content: flex-start;
      border: 1px solid rgba(37,70,42,.13);
      border-radius: 24px;
      background: var(--white);
      color: var(--ink);
    }

    .process-step .step-num {
      position: absolute;
      top: -26px;
      left: 30px;
      display: grid;
      width: 62px;
      height: 62px;
      place-items: center;
      border-radius: 50%;
      background: #c7ef5b;
      color: var(--forest-deep);
      box-shadow: 0 12px 24px rgba(91,133,53,.22);
      font-size: 24px;
      font-weight: 760;
      letter-spacing: -.03em;
    }

    .process-step h3 {
      margin: 0 0 14px;
      color: var(--forest-deep);
      font-size: clamp(25px, 2.15vw, 33px);
      font-weight: 620;
      letter-spacing: -.035em;
      line-height: 1.05;
    }

    .process-step p {
      margin: 0;
      color: rgba(23,32,24,.68);
      font-size: 17px;
      line-height: 1.55;
    }

    /* Scope */
    .scope { background: #fafbf8; }

    .scope-layout,
    .trust-intro,
    .booking-grid {
      display: grid;
      grid-template-columns: minmax(310px, .73fr) minmax(0, 1.27fr);
      gap: clamp(40px, 7vw, 110px);
    }

    .split-intro {
      position: sticky;
      top: 36px;
      align-self: start;
    }

    .split-intro h2 { font-size: clamp(42px, 4.5vw, 66px); }
    .split-intro > p { margin-top: 24px; }
    .split-intro .button-dark { margin-top: 30px; }

    .scope-note {
      grid-column: 1 / -1;
      margin: 0;
      color: rgba(23,32,24,.6);
      font-size: 14px;
      line-height: 1.5;
    }

    .scope-showcase {
      position: relative;
      isolation: isolate;
      overflow: hidden;
      min-height: 720px;
      border-radius: 34px;
      background: var(--sage-soft);
      box-shadow: 0 24px 70px rgba(24,53,30,.1);
    }

    .scope-scene {
      position: absolute;
      z-index: 1;
      inset: 0;
      opacity: 0;
      visibility: hidden;
      transition: opacity 420ms ease, visibility 420ms ease;
    }

    .scope-scene.is-active {
      opacity: 1;
      visibility: visible;
    }

    .scope-scene > img {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: cover;
    }

    .scope-scene::after {
      position: absolute;
      z-index: 1;
      inset: 0;
      background: linear-gradient(90deg, rgba(18,45,25,.08), rgba(18,45,25,.02) 52%, rgba(18,45,25,.2));
      content: "";
      pointer-events: none;
    }

    .scope-info-card {
      position: absolute;
      z-index: 3;
      top: 50px;
      right: 50px;
      display: flex;
      width: min(470px, 40%);
      min-height: 540px;
      padding: 38px;
      flex-direction: column;
      border: 1px solid rgba(255,255,255,.68);
      border-radius: 28px;
      background: rgba(250,251,247,.94);
      color: var(--ink);
      box-shadow: 0 22px 60px rgba(14,35,20,.16);
      backdrop-filter: blur(18px);
      -webkit-backdrop-filter: blur(18px);
    }

    .scope-info-head {
      display: flex;
      align-items: start;
      justify-content: space-between;
      gap: 24px;
    }

    .scope-info-card h3 {
      margin: 0;
      color: var(--forest-deep);
      font-size: clamp(30px, 3vw, 44px);
      font-weight: 560;
      letter-spacing: -.045em;
      line-height: 1;
    }

    .scope-info-card > p {
      margin: 24px 0 26px;
      color: rgba(23,32,24,.67);
      font-size: 17px;
      line-height: 1.55;
    }

    .scope-highlights {
      display: grid;
      gap: 10px;
      margin: 0 0 30px;
      padding: 0;
      list-style: none;
    }

    .scope-highlights li {
      position: relative;
      padding-left: 21px;
      color: rgba(23,32,24,.72);
      font-size: 14px;
      line-height: 1.45;
    }

    .scope-highlights li::before {
      position: absolute;
      top: .55em;
      left: 0;
      width: 7px;
      height: 7px;
      border-radius: 50%;
      background: var(--sage);
      content: "";
    }

    .scope-info-card .button-dark {
      width: 100%;
      margin-top: auto;
    }

    .scope-tabs {
      position: absolute;
      z-index: 5;
      right: 50%;
      bottom: 26px;
      display: flex;
      max-width: calc(100% - 64px);
      padding: 7px;
      gap: 4px;
      border: 1px solid rgba(255,255,255,.38);
      border-radius: 999px;
      background: rgba(39,61,36,.58);
      box-shadow: 0 16px 42px rgba(12,31,18,.2);
      backdrop-filter: blur(18px) saturate(120%);
      -webkit-backdrop-filter: blur(18px) saturate(120%);
      transform: translateX(50%);
    }

    .scope-tab {
      min-height: 46px;
      padding: 0 23px;
      border: 0;
      border-radius: 999px;
      background: transparent;
      color: rgba(255,255,255,.85);
      font-weight: 570;
      white-space: nowrap;
      cursor: pointer;
      transition: background 180ms ease, color 180ms ease;
    }

    .scope-tab:hover { background: rgba(255,255,255,.11); }

    .scope-tab[aria-selected="true"] {
      background: rgba(250,251,247,.92);
      color: var(--forest-deep);
    }

    /* Trust */
    .trust { background: var(--page); }

    .trust-intro {
      align-items: end;
      margin-bottom: 50px;
    }

    .trust-intro .split-intro { position: static; }

    .trust-lead {
      max-width: 630px;
      margin: 0;
      color: rgba(23,32,24,.64);
      font-size: 20px;
      line-height: 1.5;
    }

    .trust-grid {
      display: grid;
      grid-template-columns: repeat(12, minmax(0, 1fr));
      gap: 16px;
    }

    .trust-card {
      display: flex;
      min-height: 290px;
      padding: 28px;
      flex-direction: column;
      justify-content: space-between;
      border: 1px solid rgba(37,70,42,.09);
      border-radius: 27px;
      background: #fff;
    }

    .trust-card:nth-child(1),
    .trust-card:nth-child(4) { grid-column: span 4; }
    .trust-card:nth-child(2),
    .trust-card:nth-child(3) { grid-column: span 4; }
    .trust-card:nth-child(5) {
      grid-column: span 8;
      background: var(--sage-soft);
    }

    .trust-card h3 {
      max-width: 390px;
      margin: 0 0 11px;
      color: var(--forest-deep);
      font-size: 27px;
      font-weight: 540;
      letter-spacing: -.04em;
      line-height: 1.05;
    }

    .trust-card p {
      max-width: 520px;
      margin: 0;
      color: rgba(23,32,24,.61);
      font-size: 14px;
      line-height: 1.5;
    }

    /* Offer */
    .offer {
      padding: 26px 0 34px;
      background: #fafbf8;
    }

    .offer-card {
      position: relative;
      display: flex;
      overflow: hidden;
      min-height: 560px;
      padding: clamp(34px,5vw,74px);
      align-items: center;
      border-radius: 34px;
      background:
        linear-gradient(90deg, rgba(13,35,20,.92) 0%, rgba(24,54,31,.78) 38%, rgba(24,54,31,.24) 68%, rgba(24,54,31,.04) 100%),
        url("final-cta-cleaner.jpg?v=2") center / cover no-repeat;
      color: var(--white);
    }

    .offer-content {
      position: relative;
      z-index: 1;
      width: min(650px, 55%);
    }

    .offer-card small {
      display: block;
      margin-bottom: 24px;
      color: rgba(255,255,255,.72);
      font-size: 11px;
      font-weight: 720;
      letter-spacing: .14em;
      text-transform: uppercase;
    }

    .offer-card h2 {
      max-width: 650px;
      margin: 0;
      font-size: clamp(48px,5.6vw,82px);
      font-weight: 430;
      letter-spacing: -.058em;
      line-height: .94;
      text-wrap: balance;
    }

    .offer-content p {
      max-width: 520px;
      margin: 24px 0 28px;
      color: rgba(255,255,255,.76);
      font-size: 17px;
      line-height: 1.55;
    }

    .offer-cta {
      display: inline-flex;
      min-height: 58px;
      padding: 0 28px;
      align-items: center;
      justify-content: center;
      border-radius: 14px;
      background: var(--milk);
      color: var(--forest-deep);
      font-size: 14px;
      font-weight: 680;
      transition: transform 180ms ease, background 180ms ease;
    }

    .offer-cta span {
      display: grid;
      width: 44px;
      height: 44px;
      place-items: center;
      border-radius: 10px;
      background: var(--forest);
      color: var(--white);
      font-size: 20px;
    }

    .offer-cta:hover {
      background: var(--sage-soft);
      transform: translateY(-2px);
    }

    /* FAQ */
    .faq { background: #fafbf8; }
    .faq .scope-layout { align-items: start; }
    .faq-answer {
      max-width: 740px;
      padding: 0 68px 27px 0;
      color: rgba(23,32,24,.65);
      font-size: 15px;
      line-height: 1.55;
    }

    /* Booking */
    .booking {
      position: relative;
      overflow: hidden;
      background: var(--page);
    }



    .booking-copy {
      display: grid;
      grid-template-columns: 1fr .7fr;
      align-items: end;
      gap: 40px;
      margin-bottom: 46px;
    }

    .booking-copy > p { justify-self: end; }

    .booking-grid {
      grid-template-columns: minmax(0, 1.18fr) minmax(340px, .82fr);
      gap: 18px;
    }

    .wizard,
    .booking-aside {
      min-height: 650px;
      border-radius: 30px;
    }

    .wizard {
      padding: clamp(28px,4vw,54px);
      border: 1px solid rgba(37,70,42,.1);
      background: #fff;
    }

    .progress {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 7px;
      margin-bottom: 48px;
    }

    .progress span {
      height: 4px;
      border-radius: 999px;
      background: #e4e8e0;
    }

    .step-counter {
      margin: 0 0 14px;
      color: var(--sage);
      font-size: 11px;
      font-weight: 740;
      letter-spacing: .12em;
      text-transform: uppercase;
    }

    .wizard-step h3 {
      max-width: 680px;
      margin: 0 0 30px;
      color: var(--forest-deep);
      font-size: clamp(32px, 3.6vw, 50px);
      font-weight: 500;
      letter-spacing: -.05em;
      line-height: 1;
    }

    .choice-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0,1fr));
      gap: 11px;
    }

    .choice-grid input {
      position: absolute;
      opacity: 0;
      pointer-events: none;
    }

    .choice-grid label {
      display: flex;
      min-height: 62px;
      padding: 15px 18px;
      align-items: center;
      justify-content: space-between;
      gap: 14px;
      border: 1px solid rgba(37,70,42,.15);
      border-radius: 14px;
      color: var(--forest-deep);
      cursor: pointer;
      font-size: 15px;
      font-weight: 560;
      transition: border 180ms ease, background 180ms ease;
    }

    .choice-grid label::after {
      width: 18px;
      height: 18px;
      border: 1px solid rgba(37,70,42,.3);
      border-radius: 50%;
      content: "";
    }

    .choice-grid input:checked + label {
      border-color: var(--forest);
      background: var(--sage-soft);
    }

    .choice-grid input:checked + label::after {
      border: 5px solid var(--forest);
      background: #fff;
    }

    .field-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0,1fr));
      gap: 16px;
    }

    .field { display: grid; gap: 8px; }
    .field.full { grid-column: 1 / -1; }

    .field > span {
      color: rgba(23,32,24,.7);
      font-size: 12px;
      font-weight: 650;
    }

    .field input,
    .field select,
    .field textarea {
      width: 100%;
      min-height: 56px;
      padding: 0 16px;
      border: 1px solid rgba(37,70,42,.16);
      border-radius: 13px;
      background: #fbfcf9;
      color: var(--ink);
      font: inherit;
      font-size: 15px;
    }

    .field textarea {
      min-height: 108px;
      padding-top: 15px;
      resize: vertical;
    }

    .wizard-actions {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 14px;
      margin-top: 34px;
    }

    .step-button {
      min-width: 150px;
      background: var(--forest-deep);
      color: #fff;
      user-select: none;
    }

    .step-button.back {
      min-width: auto;
      padding-inline: 0;
      background: transparent;
      color: rgba(23,32,24,.58);
    }

    .submit-button { min-width: 190px; }

    .consent {
      display: flex;
      align-items: flex-start;
      gap: 10px;
      margin-top: 16px;
      color: rgba(23,32,24,.52);
      font-size: 11px;
      line-height: 1.4;
    }

    .consent input { margin-top: 2px; accent-color: var(--forest); }

    .booking-aside {
      display: flex;
      padding: clamp(30px,4vw,52px);
      flex-direction: column;
      justify-content: space-between;
      background: var(--sage);
      color: var(--white);
    }

    .booking-aside h3 {
      margin: 0;
      font-size: clamp(34px,4vw,58px);
      font-weight: 470;
      letter-spacing: -.05em;
      line-height: 1;
    }

    .booking-aside > div > p {
      max-width: 420px;
      margin: 20px 0 0;
      color: rgba(255,255,255,.68);
      line-height: 1.5;
    }

    .booking-notes {
      display: grid;
      gap: 0;
      margin-top: 40px;
      border-top: 1px solid rgba(255,255,255,.22);
    }

    .booking-notes span {
      display: flex;
      padding: 18px 0;
      align-items: center;
      gap: 12px;
      border-bottom: 1px solid rgba(255,255,255,.22);
      color: rgba(255,255,255,.82);
      font-size: 14px;
    }

    .booking-notes span::before {
      display: grid;
      width: 24px;
      height: 24px;
      place-items: center;
      border-radius: 50%;
      background: rgba(199,239,91,.9);
      color: var(--forest-deep);
      content: "✓";
      font-size: 12px;
      font-weight: 800;
    }

    .booking-phone {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 54px;
      margin-top: 28px;
      border-radius: 12px;
      background: var(--milk);
      color: var(--forest-deep);
      font-weight: 720;
    }

    /* Footer */
    .footer {
      padding: 54px 0 28px;
      background: var(--forest-deep);
      color: var(--white);
    }

    .footer-grid {
      display: grid;
      grid-template-columns: 1.2fr repeat(3, .6fr);
      gap: 50px;
      padding-bottom: 58px;
    }

    .footer-brand p {
      max-width: 320px;
      margin: 18px 0 0;
      color: rgba(255,255,255,.57);
      line-height: 1.5;
    }

    .footer h3 {
      margin: 0 0 18px;
      color: rgba(255,255,255,.48);
      font-size: 11px;
      font-weight: 700;
      letter-spacing: .12em;
      text-transform: uppercase;
    }

    .footer-links { display: grid; gap: 12px; }

    .footer-links a,
    .footer-links span {
      width: max-content;
      color: rgba(255,255,255,.78);
      font-size: 14px;
    }

    .footer-links a:hover { color: #c7ef5b; }

    .footer-bottom {
      display: flex;
      padding-top: 24px;
      align-items: center;
      justify-content: space-between;
      gap: 20px;
      border-top: 1px solid rgba(255,255,255,.12);
      color: rgba(255,255,255,.45);
      font-size: 11px;
    }

    @media (max-width: 980px) {
      .hero {
        min-height: 100svh;
      }

      .nav { top: 19px; right: 20px; left: 20px; padding: 0; border-radius: 22px; }
      .nav.is-scrolled { top: 0; padding: 7px 20px; border-radius: 0 0 20px 20px; }
      .nav-glass { display: none; }
      .nav-side {
        position: absolute;
        top: 6px;
        right: 56px;
        display: flex;
      }

      .nav-side .nav-request { display: none; }

      .nav {
        grid-template-columns: 1fr auto;
      }

      .mobile-menu {
        position: relative;
        display: block;
        justify-self: end;
      }

      .mobile-menu summary {
        display: grid;
        width: 46px;
        height: 46px;
        place-items: center;
        border: 1px solid rgba(255,255,255,.25);
        border-radius: 50%;
        background: rgba(239,244,236,.17);
        color: var(--white);
        cursor: pointer;
        list-style: none;
        backdrop-filter: blur(18px);
        -webkit-backdrop-filter: blur(18px);
      }

      .mobile-menu summary::-webkit-details-marker { display: none; }
      .mobile-menu summary svg { width: 19px; height: 19px; }

      .mobile-panel {
        position: absolute;
        top: 57px;
        right: 0;
        display: grid;
        width: 220px;
        padding: 9px;
        border: 1px solid rgba(255,255,255,.25);
        border-radius: 20px;
        background: rgba(26,46,29,.78);
        box-shadow: 0 18px 50px rgba(0,0,0,.18);
        backdrop-filter: blur(22px) saturate(120%);
        -webkit-backdrop-filter: blur(22px) saturate(120%);
      }

      .mobile-panel a {
        padding: 13px 14px;
        border-radius: 13px;
        color: rgba(255,255,255,.86);
        font-size: 13px;
        font-weight: 580;
      }

      .mobile-panel a:hover { background: rgba(255,255,255,.12); }

      .hero-content {
        right: 34px;
        bottom: 42px;
        left: 34px;
      }

      .copy { width: min(680px, 86%); }
      h1 { font-size: clamp(50px,8vw,70px); }

      .section-shell { width: min(100% - 40px, 1420px); }
      .site-section { padding: 92px 0; }
      .section-heading { grid-template-columns: 1fr; gap: 22px; }
      .section-heading > p { justify-self: start; }

      .service-carousel { padding: 28px 38px 38px; }
      .service-card:nth-child(n) {
        flex-basis: calc((100% - 24px) / 2);
        height: 560px;
        min-height: 560px;
      }

      .benefit-orbit {
        grid-template-columns: 1fr 1fr;
        grid-template-areas:
          "photo photo"
          "time away"
          "schedule regular";
        gap: 46px 34px;
      }
      .benefit-photo { width: min(620px, 76vw); }

      .process-grid { grid-template-columns: 1fr; gap: 46px; }
      .process-step { min-height: 230px; }

      .scope-layout,
      .trust-intro,
      .booking-grid { grid-template-columns: 1fr; gap: 42px; }
      .split-intro { position: static; }

      .scope-showcase { min-height: 760px; }
      .scope-info-card { width: min(440px, 52%); }
      .scope-tab { padding: 0 18px; }

      .trust-card:nth-child(n) { grid-column: span 6; }
      .trust-card:nth-child(5) { grid-column: span 12; }

      .proof-grid { grid-template-columns: 1fr; }
      .result-placeholder,
      .review-placeholder { min-height: 410px; }

      .offer-card {
        min-height: 530px;
        background-position: 62% center;
      }
      .offer-content { width: min(590px, 70%); }

      .booking-copy { grid-template-columns: 1fr; gap: 20px; }
      .booking-copy > p { justify-self: start; }
      .wizard,
      .booking-aside { min-height: auto; }
      .booking-aside { min-height: 500px; }

      .footer-grid { grid-template-columns: 1.2fr repeat(2,1fr); }
      .footer-grid > div:nth-child(4) { grid-column: 2; }
    }

    @media (max-width: 640px) {
      .hero {
        min-height: max(690px, 100svh);
      }

      .hero-media video,
      .hero-media img { object-position: 61% center; }

      .hero::before {
        background:
          linear-gradient(180deg, rgba(7,14,9,.36), rgba(7,14,9,.08) 30%, rgba(7,14,9,.4) 56%, rgba(6,13,8,.88) 100%),
          linear-gradient(90deg, rgba(8,16,10,.35), rgba(8,16,10,.08));
      }

      .nav { top: 16px; right: 16px; left: 16px; padding: 0; }
      .nav.is-scrolled { top: 0; padding: 6px 16px; }
      .brand { font-size: 18px; }
      .brand-mark { width: 38px; height: 38px; }

      .hero-content {
        right: 22px;
        bottom: 24px;
        left: 22px;
        display: block;
      }

      .copy { width: 100%; }

      h1 {
        max-width: 100%;
        font-size: clamp(31px,9.5vw,46px);
        letter-spacing: -.055em;
        line-height: 1;
      }

      .summary {
        max-width: 420px;
        margin-top: 17px;
        font-size: 15px;
        line-height: 1.45;
      }

      .actions {
        display: grid;
        grid-template-columns: 1fr;
        gap: 14px;
        margin-top: 23px;
      }

      .primary-cta {
        width: 100%;
      }

      .social-rail {
        top: 96px;
        right: 16px;
        gap: 10px;
        transform: none;
      }

      .social-link {
        width: 42px;
        height: 42px;
      }

      .section-shell { width: min(100% - 28px, 1420px); }
      .site-section { padding: 74px 0; }
      .section-kicker { margin-bottom: 14px; font-size: 10px; }
      .section-heading { margin-bottom: 32px; }
      .section-heading h2,
      .split-intro h2,
      .booking-copy h2 { font-size: clamp(36px, 11vw, 48px); }
      .section-heading > p,
      .split-intro > p,
      .booking-copy > p { font-size: 16px; }

      .service-carousel { padding: 14px; border-radius: 24px; }
      .service-grid { margin: 0; padding: 0 10vw 0 0; gap: 14px; }
      .service-arrow { width: 44px; height: 44px; }
      .service-arrow-prev { left: -8px; }
      .service-arrow-next { right: -8px; }
      .service-card:nth-child(n) {
        flex-basis: 100%;
        width: 100%;
        min-width: 100%;
        height: 520px;
        min-height: 520px;
      }
      .service-content { right: 18px; bottom: 18px; left: 18px; padding: 0; }
      .service-content h3 { font-size: 26px; }
      .service-content p { min-height: 0; font-size: 14px; }

      .benefit-orbit {
        grid-template-columns: 1fr;
        grid-template-areas:
          "photo"
          "time"
          "schedule"
          "away"
          "regular";
        gap: 0;
      }
      .benefit-photo { width: 100%; margin-bottom: 42px; padding: 8px; }
      .benefit-point {
        width: 100%;
        max-width: none;
        min-height: 0;
        padding: 28px 12px 30px;
        border-top: 1px solid rgba(37,70,42,.12);
      }
      .benefit-icon { width: 54px; height: 54px; margin-bottom: 17px; }
      .benefit-point h3 { font-size: 25px; }
      .benefit-point p { max-width: 390px; margin-top: 12px; font-size: 15px; }

      .process-grid { gap: 42px; padding-top: 18px; }
      .process-step { min-height: 220px; padding: 58px 24px 26px; }
      .process-step .step-num { left: 22px; width: 56px; height: 56px; font-size: 22px; }
      .process-step h3 { font-size: 27px; }
      .process-step p { font-size: 16px; }

      .scope-showcase { min-height: 790px; border-radius: 24px; }
      .scope-scene > img { object-position: 50% 28%; }
      .scope-scene::after { background: linear-gradient(0deg, rgba(18,45,25,.58), rgba(18,45,25,.02) 58%); }
      .scope-info-card {
        top: auto;
        right: 14px;
        bottom: 92px;
        left: 14px;
        width: auto;
        min-height: 405px;
        padding: 25px 22px;
        border-radius: 22px;
      }
      .scope-info-card h3 { font-size: 31px; }
      .scope-info-card > p { margin: 17px 0 18px; font-size: 15px; }
      .scope-highlights { gap: 7px; margin-bottom: 20px; }
      .scope-tabs {
        right: 14px;
        bottom: 18px;
        left: 14px;
        max-width: none;
        overflow-x: auto;
        justify-content: flex-start;
        transform: none;
        scrollbar-width: none;
      }
      .scope-tabs::-webkit-scrollbar { display: none; }
      .scope-tab { min-height: 43px; padding: 0 17px; }

      .trust-grid { grid-template-columns: 1fr; }
      .trust-card:nth-child(n) { grid-column: auto; min-height: 250px; padding: 24px; }

      .result-placeholder,
      .review-placeholder { min-height: 390px; padding: 28px; }

      .offer { padding: 12px 0 24px; }
      .offer-card {
        min-height: 590px;
        padding: 32px 26px;
        align-items: end;
        background:
          linear-gradient(0deg, rgba(13,35,20,.96) 0%, rgba(20,48,28,.78) 42%, rgba(20,48,28,.12) 78%),
          url("final-cta-cleaner.jpg?v=2") 68% center / cover no-repeat;
      }
      .offer-content { width: 100%; }
      .offer-card small { margin-bottom: 16px; }
      .offer-card h2 { max-width: 500px; font-size: clamp(43px, 13vw, 62px); }
      .offer-content p { margin: 18px 0 22px; font-size: 15px; }

      .faq-answer { padding-right: 0; }

      .booking-copy { margin-bottom: 30px; }
      .wizard { padding: 24px 18px; border-radius: 24px; }
      .progress { margin-bottom: 34px; }
      .choice-grid,
      .field-grid { grid-template-columns: 1fr; }
      .field.full { grid-column: auto; }
      .wizard-step h3 { font-size: 34px; }
      .step-button { min-width: 132px; }
      .submit-button { min-width: 164px; }
      .booking-aside { min-height: 470px; padding: 28px; border-radius: 24px; }

      .footer { padding-top: 44px; }
      .footer-grid { grid-template-columns: 1fr 1fr; gap: 38px 24px; }
      .footer-grid > div:first-child { grid-column: 1 / -1; }
      .footer-grid > div:nth-child(4) { grid-column: auto; }
      .footer-bottom { align-items: flex-start; flex-direction: column; }
    }

    @media (max-width: 380px) {
      .summary { font-size: 14px; }
    }

    @media (prefers-reduced-motion: reduce) {
      .hero-media video { display: none; }
      .hero-media img { display: block; }
      .hero-media { animation: none; }
      .scroll-reveal,
      .scroll-reveal.reveal-card,
      .scroll-reveal.reveal-media {
        opacity: 1;
        clip-path: none;
        filter: none;
        transform: none;
        transition: none;
      }
      html { scroll-behavior: auto; }
    }
  

    @supports (-webkit-touch-callout: none){.nav{top:max(16px,calc(env(safe-area-inset-top) + 8px))}.nav.is-scrolled{top:env(safe-area-inset-top)}}
