:root {
      --bg: #F1EDE4;
      --paper: #F6F2EA;
      --ink: #192735;
      --navy: #465D73;
      --navy-dark: #263C50;
      --navy-soft: #AEBAC3;
      --orange: #E85D3F;
      --orange-soft: #F2A18E;
      --line: rgba(25, 39, 53, .22);
      --line-strong: rgba(25, 39, 53, .42);
      --white: #FFFDF8;
      --max: 1680px;
      --pad: clamp(20px, 3.4vw, 64px);
    }

    * { box-sizing: border-box; }
    html { scroll-behavior: smooth; }

    body {
      margin: 0;
      color: var(--ink);
      background: var(--bg);
      font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
      -webkit-font-smoothing: antialiased;
      text-rendering: optimizeLegibility;
    }

    a { color: inherit; text-decoration: none; }
    button, input, textarea { font: inherit; }

    .page {
      overflow: clip;
      min-height: 100vh;
    }

    .shell {
      width: min(100%, var(--max));
      margin: 0 auto;
      padding-inline: var(--pad);
    }

    .eyebrow {
      font-size: 12px;
      line-height: 1;
      letter-spacing: .12em;
      text-transform: uppercase;
      font-weight: 700;
    }

    .nav {
      position: sticky;
      top: 0;
      z-index: 30;
      background: var(--bg);
      border-bottom: 1px solid var(--line);
    }

    .nav__inner {
      min-height: 86px;
      display: grid;
      grid-template-columns: 1fr auto 1fr;
      align-items: center;
      gap: 24px;
    }

    .brand {
      font-weight: 800;
      letter-spacing: -.045em;
      font-size: clamp(20px, 1.6vw, 27px);
      white-space: nowrap;
    }

     .brand__dot { color: var(--orange); }

    .brand__descriptor {
      display: inline-block;
      margin-left: 24px;
      padding-left: 24px;
      border-left: 1px solid var(--line);
      font-size: 14px;
      font-weight: 500;
      letter-spacing: -.02em;
      color: var(--navy);
      vertical-align: middle;
    }


    .nav__contacts {
      display: flex;
      justify-content: flex-end;
      align-items: center;
      gap: 22px;
      font-size: 15px;
      white-space: nowrap;
      font-weight: 500;
    }

    .nav__social {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      color: var(--navy);
      transition: color .2s ease, transform .2s ease;
    }

    .nav__social:hover {
      color: var(--orange);
      transform: translateY(-1px);
    }

    .nav__social-icon {
      width: 27px;
      height: 27px;
      display: grid;
      place-items: center;
      color: var(--navy);
      border: 1px solid currentColor;
      border-radius: 50%;
      flex: 0 0 27px;
    }

    .nav__social .nav__social-icon--tg,
    .nav__social .nav__social-icon--wa { border: 0; color: #fff; }
    .nav__social-icon--tg { background: #229ed9; }
    .nav__social-icon--wa { background: #25d366; }

    .nav__social-icon--tg img,
    .nav__social-icon--wa img { width: 17px; height: 17px; object-fit: contain; filter: brightness(0) invert(1); }
    .nav__social-icon--tg img { transform: translateX(-1px); }


    .nav__phone {
      display: inline-flex;
      align-items: center;
      gap: 8px;
    }

    .nav__phone-icon {
      width: 27px;
      height: 27px;
      display: grid;
      place-items: center;
      color: var(--orange);
      border: 1px solid currentColor;
      border-radius: 50%;
      flex: 0 0 27px;
    }

    .nav__phone-icon svg {
      width: 15px;
      height: 15px;
    }

    .nav__phone {
      color: var(--navy);
      font-size: 16px;
      font-weight: 700;
      letter-spacing: -.02em;
      padding-left: 2px;
    }

    .nav__phone:hover { color: var(--orange); }

    .nav__links {
      display: flex;
      align-items: center;
      gap: 28px;
      font-size: 14px;
    }

    .nav__actions {
      display: flex;
      justify-content: flex-end;
      align-items: center;
      gap: 18px;
    }

    .nav__link,
    .text-link {
      position: relative;
    }

    @media (min-width: 981px) and (max-width: 1100px) {
      .nav__inner { grid-template-columns: 1fr auto; min-height: 72px; }
      .nav__links, .nav__contacts { display: none; }
      .nav__actions { grid-column: 2; }
      .menu-btn { display: block; }
      .mobile-nav { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .35s ease; border-top: 0 solid var(--line); }
      .mobile-nav__inner { overflow: hidden; display: flex; flex-direction: column; gap: 0; }
      .nav.is-open .mobile-nav { grid-template-rows: 1fr; border-top-width: 1px; }
      .mobile-nav a { padding: 17px var(--pad); border-bottom: 1px solid var(--line); font-size: 20px; }
      .nav.is-open .menu-btn span:first-child { top: 21px; transform: rotate(45deg); }
      .nav.is-open .menu-btn span:last-child { top: 21px; transform: rotate(-45deg); }
    }

    .nav__link::after,
    .text-link::after {
      content: "";
      position: absolute;
      left: 0;
      bottom: -5px;
      width: 100%;
      height: 1px;
      background: currentColor;
      transform: scaleX(0);
      transform-origin: right;
      transition: transform .35s cubic-bezier(.2,.8,.2,1);
    }

    .nav__link:hover::after,
    .text-link:hover::after {
      transform: scaleX(1);
      transform-origin: left;
    }

    .button {
      min-height: 46px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 14px;
      padding: 0 20px;
      border: 1px solid var(--ink);
      border-radius: 999px;
      background: transparent;
      color: var(--ink);
      font-size: 14px;
      font-weight: 700;
      cursor: pointer;
      transition: background .25s ease, color .25s ease, border-color .25s ease;
    }

    .button:hover {
      background: var(--ink);
      color: var(--white);
    }

    .button--orange {
      color: var(--white);
      background: var(--orange);
      border-color: var(--orange);
    }

    .button--orange:hover {
      color: var(--white);
      background: var(--navy-dark);
      border-color: var(--navy-dark);
    }

    .button__arrow {
      font-size: 19px;
      line-height: 1;
      transform: translateY(-1px);
    }

    .hero {
      min-height: calc(100vh - 86px);
      min-height: calc(100svh - 86px);
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      position: relative;
      padding-top: clamp(38px, 6vh, 86px);
      border-bottom: 1px solid var(--line);
    }

    .hero__top {
      position: relative;
      z-index: 3;
    }

    .hero__kicker {
      display: flex;
      align-items: center;
      gap: 12px;
      margin-bottom: clamp(30px, 6vh, 76px);
    }

    .hero__kicker::before {
      content: "";
      width: 34px;
      height: 9px;
      border-radius: 999px;
      background: var(--orange);
    }

    h1 {
      margin: 0;
      max-width: 1320px;
      font-size: clamp(64px, 9.6vw, 164px);
      line-height: .86;
      letter-spacing: -.075em;
      font-weight: 500;
    }

    h1 .accent { color: var(--navy); }

    .hero__bottom {
      position: relative;
      z-index: 3;
      display: grid;
      grid-template-columns: 1.25fr .75fr;
      gap: 64px;
      align-items: end;
      padding-block: clamp(46px, 7vh, 86px);
    }

    .hero__lead {
      max-width: 780px;
      margin: 0;
      font-size: clamp(20px, 2.2vw, 35px);
      line-height: 1.06;
      letter-spacing: -.035em;
    }

    .hero__cta {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      gap: 22px;
      max-width: 410px;
      justify-self: end;
    }

    .hero__cta p {
      margin: 0;
      font-size: 14px;
      line-height: 1.45;
      opacity: .7;
    }

    .compass {
      position: absolute;
      z-index: 1;
      right: clamp(-80px, 2vw, 20px);
      top: 42%;
      width: clamp(290px, 38vw, 660px);
      aspect-ratio: 1;
      transform: translateY(-50%);
      opacity: .64;
      pointer-events: none;
    }

    .compass::before,
    .compass::after {
      content: "";
      position: absolute;
      inset: 0;
      border: 1px solid rgba(70, 93, 115, .25);
      border-radius: 50%;
    }

    .compass::after {
      inset: 16%;
      border-color: rgba(70, 93, 115, .35);
    }

    .compass__line {
      position: absolute;
      left: 50%;
      top: 4%;
      width: 1px;
      height: 92%;
      background: linear-gradient(to bottom, transparent, rgba(70,93,115,.48) 13%, rgba(70,93,115,.48) 87%, transparent);
      transform-origin: 50% 50%;
    }

    .compass__line:nth-child(2) { transform: rotate(45deg); }
    .compass__line:nth-child(3) { transform: rotate(90deg); }
    .compass__line:nth-child(4) { transform: rotate(135deg); }

    .compass__needle {
      position: absolute;
      left: 50%;
      top: 50%;
      width: 32%;
      height: 32%;
      background: var(--orange);
      clip-path: polygon(50% 0, 64% 50%, 50% 100%, 36% 50%);
      transform: translate(-50%, -50%) rotate(25deg);
      animation: needle 9s ease-in-out infinite alternate;
      opacity: .94;
    }

    .compass__core {
      position: absolute;
      left: 50%;
      top: 50%;
      width: 11%;
      aspect-ratio: 1;
      border-radius: 50%;
      background: var(--bg);
      border: 1px solid rgba(25,39,53,.28);
      transform: translate(-50%, -50%);
    }

    @keyframes needle {
      from { transform: translate(-50%, -50%) rotate(18deg); }
      to { transform: translate(-50%, -50%) rotate(42deg); }
    }

    .ticker {
      border-bottom: 1px solid var(--line);
      overflow: hidden;
      background: var(--navy);
      color: var(--white);
    }

    .ticker__track {
      display: flex;
      width: max-content;
      animation: ticker 34s linear infinite;
      will-change: transform;
    }

    .ticker__item {
      display: flex;
      align-items: center;
      gap: 32px;
      padding: 21px 22px;
      font-size: 15px;
      white-space: nowrap;
    }

    .ticker__dot {
      width: 9px;
      height: 9px;
      border-radius: 50%;
      background: var(--orange);
      display: inline-block;
    }

    @keyframes ticker {
      to { transform: translateX(-50%); }
    }

    .section {
      border-bottom: 1px solid var(--line);
    }

    .section__head {
      padding-top: 28px;
      display: grid;
      grid-template-columns: 180px 1fr;
      gap: 36px;
      align-items: start;
    }

    .section__index {
      font-size: 13px;
      opacity: .58;
    }

    .section__title {
      margin: 0;
      font-size: clamp(48px, 7vw, 112px);
      line-height: .9;
      letter-spacing: -.065em;
      font-weight: 500;
    }

    .section__intro {
      max-width: 760px;
      margin: 30px 0 0;
      font-size: clamp(20px, 2.2vw, 32px);
      line-height: 1.08;
      letter-spacing: -.03em;
    }

    .services {
      padding-block: clamp(68px, 10vw, 150px);
    }

    .service-group {
      display: grid;
      grid-template-columns: minmax(250px, .75fr) 1.25fr;
      gap: clamp(40px, 7vw, 120px);
      padding: clamp(54px, 8vw, 110px) 0;
      border-top: 1px solid var(--line-strong);
    }

    .service-group:first-child { margin-top: 70px; }

    .service-group__title {
      position: sticky;
      top: 24px;
      align-self: start;
    }

    .service-group__label {
      margin-bottom: 24px;
      color: var(--orange);
    }

    .service-group h3 {
      margin: 0;
      font-size: clamp(50px, 6vw, 95px);
      line-height: .9;
      letter-spacing: -.06em;
      font-weight: 500;
      color: var(--navy);
    }

    .service-list {
      list-style: none;
      padding: 0;
      margin: 0;
    }

    .service-list li {
      border-top: 1px solid var(--line);
    }

    .service-list li:last-child {
      border-bottom: 1px solid var(--line);
    }

    .service-link {
      min-height: 74px;
      display: grid;
      grid-template-columns: 42px 1fr 32px;
      gap: 16px;
      align-items: center;
      padding: 12px 0;
      transition: padding .25s ease, color .25s ease;
    }

    .service-link:hover {
      padding-left: 12px;
      color: var(--orange);
    }

    .service-link__num {
      font-size: 12px;
      opacity: .52;
    }

    .service-link__name {
      font-size: clamp(18px, 1.7vw, 27px);
      letter-spacing: -.025em;
    }

    .service-link__arrow {
      font-size: 24px;
      text-align: right;
      transition: transform .25s ease;
    }

    .service-link:hover .service-link__arrow {
      transform: translateX(5px);
    }

    .statement {
      min-height: 76vh;
      min-height: 76svh;
      display: flex;
      align-items: center;
      background: var(--navy-dark);
      color: var(--white);
    }

    .statement__inner {
      padding-block: clamp(90px, 13vw, 200px);
    }

    .statement h2 {
      max-width: 1450px;
      margin: 0;
      font-size: clamp(50px, 7.8vw, 126px);
      line-height: .91;
      letter-spacing: -.065em;
      font-weight: 500;
    }

    .statement h2 em {
      color: var(--orange-soft);
      font-style: normal;
    }

    .proof {
      padding-block: clamp(90px, 12vw, 180px);
    }

    .proof__grid {
      display: grid;
      grid-template-columns: .85fr 1.15fr;
      gap: 80px;
      margin-top: 74px;
      border-top: 1px solid var(--line-strong);
    }

    .proof__aside {
      padding-top: 24px;
      font-size: 14px;
      line-height: 1.5;
      max-width: 360px;
      opacity: .72;
    }

    .proof__list {
      list-style: none;
      margin: 0;
      padding: 0;
    }

    .proof__item {
      display: grid;
      grid-template-columns: 76px 1fr;
      gap: 24px;
      padding: 34px 0 40px;
      border-bottom: 1px solid var(--line);
    }

    .proof__num {
      width: 45px;
      height: 45px;
      border-radius: 50%;
      display: grid;
      place-items: center;
      border: 1px solid var(--navy);
      color: var(--navy);
      font-size: 13px;
    }

    .proof__item h3 {
      margin: 0 0 10px;
      font-size: clamp(27px, 2.8vw, 45px);
      line-height: 1;
      letter-spacing: -.045em;
      font-weight: 500;
    }

    .proof__item p {
      max-width: 630px;
      margin: 0;
      font-size: 16px;
      line-height: 1.48;
      opacity: .67;
    }

    .process {
      padding-block: clamp(90px, 12vw, 180px);
      background: var(--paper);
    }

    .process__top {
      display: grid;
      grid-template-columns: 1fr .9fr;
      gap: 80px;
      align-items: end;
      margin-bottom: clamp(64px, 9vw, 120px);
    }

    .process__title {
      margin: 0;
      font-size: clamp(54px, 7vw, 110px);
      line-height: .9;
      letter-spacing: -.06em;
      font-weight: 500;
    }

    .process__lead {
      max-width: 560px;
      margin: 0 0 8px auto;
      font-size: clamp(19px, 2vw, 29px);
      line-height: 1.13;
      letter-spacing: -.025em;
    }

    .process__steps {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      border-top: 1px solid var(--line-strong);
      border-bottom: 1px solid var(--line-strong);
    }

    .process__steps--five {
      grid-template-columns: repeat(5, 1fr);
    }

    .step {
      min-height: 330px;
      padding: 26px 26px 30px 0;
      border-right: 1px solid var(--line);
      display: flex;
      flex-direction: column;
      justify-content: space-between;
    }

    .step + .step { padding-left: 26px; }
    .step:last-child { border-right: 0; }

    .step__num {
      color: var(--orange);
      font-size: 12px;
      font-weight: 700;
    }

    .step__bottom h3 {
      margin: 0 0 12px;
      font-size: clamp(25px, 2.3vw, 38px);
      line-height: 1;
      letter-spacing: -.04em;
      font-weight: 500;
    }

    .step__bottom p {
      margin: 0;
      line-height: 1.45;
      opacity: .65;
      font-size: 14px;
    }

    .cta {
      position: relative;
      min-height: 82vh;
      min-height: 82svh;
      display: flex;
      align-items: center;
      overflow: hidden;
      background: var(--navy);
      color: var(--white);
    }

    .cta__inner {
      position: relative;
      z-index: 3;
      padding-block: clamp(90px, 12vw, 180px);
    }

    .cta .eyebrow {
      color: rgba(255,255,255,.62);
      margin-bottom: 42px;
    }

    .cta h2 {
      max-width: 1230px;
      margin: 0;
      font-size: clamp(62px, 9vw, 150px);
      line-height: .86;
      letter-spacing: -.07em;
      font-weight: 500;
    }

    .cta h2 span { color: var(--orange-soft); }

    .cta__bottom {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 70px;
      align-items: end;
      margin-top: 68px;
    }

    .cta__text {
      max-width: 540px;
      margin: 0;
      font-size: clamp(18px, 1.8vw, 27px);
      line-height: 1.15;
      letter-spacing: -.02em;
      color: rgba(255,255,255,.78);
    }

    .cta__actions {
      display: flex;
      justify-content: flex-end;
      gap: 12px;
      flex-wrap: wrap;
    }

    .cta .button {
      color: var(--white);
      border-color: rgba(255,255,255,.62);
    }

    .cta .button:hover {
      background: var(--white);
      color: var(--navy-dark);
      border-color: var(--white);
    }

    .cta .button--orange {
      background: var(--orange);
      border-color: var(--orange);
    }

    .cta .button--orange:hover {
      background: var(--white);
      color: var(--navy-dark);
      border-color: var(--white);
    }

    .cta__orb {
      position: absolute;
      width: min(54vw, 840px);
      aspect-ratio: 1;
      border: 1px solid rgba(255,255,255,.14);
      border-radius: 50%;
      right: -8%;
      top: -18%;
    }

    .cta__orb::before,
    .cta__orb::after {
      content: "";
      position: absolute;
      border-radius: 50%;
      border: 1px solid rgba(255,255,255,.11);
    }

    .cta__orb::before { inset: 16%; }
    .cta__orb::after { inset: 32%; background: rgba(232,93,63,.12); border-color: rgba(232,93,63,.32); }

    .footer {
      color: var(--white);
      background: var(--ink);
      padding-top: 34px;
    }

    .footer__grid {
      display: grid;
      grid-template-columns: 1.3fr .7fr .7fr 1fr;
      gap: 48px;
      padding: 36px 0 80px;
      border-top: 1px solid rgba(255,255,255,.18);
    }

    .footer__brand {
      font-size: clamp(27px, 2.6vw, 42px);
      letter-spacing: -.05em;
      font-weight: 700;
    }

    .footer__col h3 {
      margin: 0 0 22px;
      font-size: 11px;
      letter-spacing: .12em;
      text-transform: uppercase;
      color: rgba(255,255,255,.45);
    }

    .footer__col p,
    .footer__col a {
      display: block;
      margin: 0 0 9px;
      font-size: 14px;
      line-height: 1.48;
      color: rgba(255,255,255,.82);
    }

    .footer__address { margin-top: 22px; }
    .footer__col .footer__address-label { color: rgba(255,255,255,.55); font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }

    .footer__bottom {
      display: flex;
      justify-content: space-between;
      gap: 30px;
      padding: 20px 0 24px;
      border-top: 1px solid rgba(255,255,255,.18);
      color: rgba(255,255,255,.42);
      font-size: 12px;
    }

    .menu-btn {
      display: none;
      width: 45px;
      height: 45px;
      border: 1px solid var(--line-strong);
      border-radius: 50%;
      background: transparent;
      cursor: pointer;
      padding: 0;
      position: relative;
    }

    .menu-btn span {
      position: absolute;
      left: 12px;
      width: 19px;
      height: 1px;
      background: var(--ink);
      transition: transform .25s ease, top .25s ease;
    }

    .menu-btn span:first-child { top: 18px; }
    .menu-btn span:last-child { top: 25px; }

    .mobile-nav {
      display: none;
    }

    .reveal {
      opacity: 0;
      transform: translateY(20px);
      transition: opacity .75s ease, transform .75s cubic-bezier(.2,.7,.2,1);
    }

    .reveal.is-visible {
      opacity: 1;
      transform: none;
    }


    .lead-form {
      padding-block: clamp(90px, 12vw, 180px);
      background: var(--navy-dark);
      color: var(--white);
      border-bottom: 1px solid rgba(255,255,255,.14);
    }

    .lead-form__head {
      max-width: 980px;
      margin-bottom: clamp(48px, 7vw, 86px);
    }

    .lead-form__head .eyebrow {
      color: rgba(255,255,255,.58);
      margin-bottom: 26px;
    }

    .lead-form__title {
      margin: 0;
      max-width: 1040px;
      font-size: clamp(48px, 7vw, 108px);
      line-height: .92;
      letter-spacing: -.065em;
      font-weight: 500;
    }

    .lead-form__title span { color: var(--orange-soft); }

    .lead-form__intro {
      max-width: 680px;
      margin: 26px 0 0;
      font-size: clamp(18px, 1.8vw, 25px);
      line-height: 1.2;
      letter-spacing: -.02em;
      color: rgba(255,255,255,.72);
    }

    .lead-form__card {
      padding: clamp(28px, 3vw, 44px);
      border: 1px solid rgba(255,255,255,.2);
      background: rgba(255,255,255,.045);
    }

    .lead-form__fields {
      display: grid;
      grid-template-columns: 1fr 1fr auto;
      gap: 12px;
      align-items: end;
    }

    .lead-form__field {
      display: flex;
      flex-direction: column;
      gap: 9px;
    }

    .lead-form__field label {
      font-size: 11px;
      line-height: 1;
      letter-spacing: .12em;
      text-transform: uppercase;
      color: rgba(255,255,255,.48);
      font-weight: 700;
    }

    .lead-form__field input,
    .lead-form__field textarea {
      width: 100%;
      min-height: 58px;
      border: 1px solid rgba(255,255,255,.25);
      border-radius: 0;
      background: rgba(255,255,255,.035);
      color: var(--white);
      padding: 0 16px;
      outline: none;
      transition: border-color .2s ease, background .2s ease;
    }

    .lead-form__field textarea {
      min-height: 58px;
      padding: 16px;
      resize: vertical;
    }

    .lead-form__field input::placeholder,
    .lead-form__field textarea::placeholder {
      color: rgba(255,255,255,.38);
    }

    .lead-form__field input:focus,
    .lead-form__field textarea:focus {
      border-color: var(--orange-soft);
      background: rgba(255,255,255,.06);
    }

    .lead-form__submit {
      min-height: 58px;
      white-space: nowrap;
    }

    .lead-form__consent {
      margin-top: 20px;
      display: flex;
      align-items: flex-start;
      gap: 10px;
      max-width: 760px;
      font-size: 12px;
      line-height: 1.45;
      color: rgba(255,255,255,.5);
    }

    .lead-form__consent input {
      width: 15px;
      height: 15px;
      margin: 2px 0 0;
      flex: 0 0 auto;
      accent-color: var(--orange);
    }

    .lead-form__consent a {
      color: rgba(255,255,255,.78);
      text-decoration: underline;
      text-underline-offset: 3px;
    }

    .lead-form__status {
      margin-top: 16px;
      min-height: 1.4em;
      color: var(--orange-soft);
      font-size: 13px;
    }

    .faq {
      padding-block: clamp(90px, 12vw, 180px);
      background: var(--paper);
    }

    .faq__head {
      display: grid;
      grid-template-columns: 180px 1fr;
      gap: 36px;
      align-items: start;
      margin-bottom: clamp(52px, 7vw, 86px);
    }

    .faq__title {
      margin: 0;
      font-size: clamp(50px, 7vw, 108px);
      line-height: .9;
      letter-spacing: -.065em;
      font-weight: 500;
    }

    .faq__list { border-top: 1px solid var(--line-strong); }

    .faq__item { border-bottom: 1px solid var(--line); }

    .faq__question {
      width: 100%;
      min-height: 92px;
      display: grid;
      grid-template-columns: 1fr 36px;
      align-items: center;
      gap: 28px;
      padding: 20px 0;
      border: 0;
      background: transparent;
      color: var(--ink);
      text-align: left;
      cursor: pointer;
      font-size: clamp(19px, 2vw, 29px);
      line-height: 1.08;
      letter-spacing: -.03em;
    }

    .faq__arrow {
      width: 34px;
      height: 34px;
      display: grid;
      place-items: center;
      border: 1px solid var(--line-strong);
      border-radius: 50%;
      font-size: 18px;
      transition: transform .3s ease, background .25s ease, color .25s ease;
    }

    .faq__item.is-open .faq__arrow {
      transform: rotate(45deg);
      background: var(--ink);
      color: var(--white);
    }

    .faq__answer {
      display: grid;
      grid-template-rows: 0fr;
      transition: grid-template-rows .35s ease;
    }

    .faq__answer-inner { overflow: hidden; }

    .faq__answer p {
      max-width: 820px;
      margin: 0;
      padding: 0 64px 28px 0;
      font-size: 16px;
      line-height: 1.55;
      color: rgba(25,39,53,.67);
    }

    .faq__item.is-open .faq__answer {
      grid-template-rows: 1fr;
    }

    @media (max-width: 980px) {
      .nav__inner {
        grid-template-columns: 1fr auto;
        min-height: 72px;
      }

      .nav__links { display: none; }
      .nav__contacts { display: none; }
      .nav__actions { grid-column: 2; }
      .menu-btn { display: block; }

      .mobile-nav {
        display: grid;
        grid-template-rows: 0fr;
        transition: grid-template-rows .35s ease;
        border-top: 0 solid var(--line);
      }

      .mobile-nav__inner {
        overflow: hidden;
        display: flex;
        flex-direction: column;
        gap: 0;
      }

      .nav.is-open .mobile-nav {
        grid-template-rows: 1fr;
        border-top-width: 1px;
      }

      .mobile-nav a {
        padding: 17px var(--pad);
        border-bottom: 1px solid var(--line);
        font-size: 20px;
      }

      .nav.is-open .menu-btn span:first-child { top: 21px; transform: rotate(45deg); }
      .nav.is-open .menu-btn span:last-child { top: 21px; transform: rotate(-45deg); }

      .hero { min-height: auto; }
      .hero__bottom,
      .proof__grid,
      .process__top,
      .cta__bottom {
        grid-template-columns: 1fr;
      }

      .hero__cta,
      .process__lead {
        justify-self: start;
        margin-left: 0;
      }

      .compass {
        top: 49%;
        right: -22%;
        opacity: .35;
      }

      .section__head {
        grid-template-columns: 90px 1fr;
      }

      .service-group {
        grid-template-columns: 1fr;
      }

      .service-group__title {
        position: static;
      }

      .proof__grid { gap: 40px; }

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

      .process__steps--five {
        grid-template-columns: 1fr 1fr;
      }

      .step:nth-child(2) { border-right: 0; }
      .step:nth-child(-n+2) { border-bottom: 1px solid var(--line); }

      .cta__actions { justify-content: flex-start; }

      .footer__grid {
        grid-template-columns: 1.25fr 1fr;
      }
    }

    @media (max-width: 640px) {
      :root { --pad: 18px; }

      .hero { padding-top: 28px; }
      .hero__kicker { margin-bottom: 34px; }
      h1 { font-size: clamp(57px, 18vw, 92px); }
      .brand__descriptor { display: none; }

      .hero__bottom {
        gap: 34px;
        padding-block: 48px;
      }

      .compass {
        width: 350px;
        top: 48%;
        right: -170px;
      }

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

      .section__title {
        font-size: clamp(50px, 16vw, 78px);
      }

      .service-group:first-child { margin-top: 54px; }

      .service-link {
        grid-template-columns: 30px 1fr 24px;
      }

      .proof__grid { grid-template-columns: 1fr; }
      .proof__item {
        grid-template-columns: 54px 1fr;
        gap: 16px;
      }

      .process__steps {
        grid-template-columns: 1fr;
        border-bottom: 0;
      }

      .step,
      .step + .step {
        min-height: 250px;
        padding: 24px 0;
        border-right: 0;
        border-bottom: 1px solid var(--line);
      }

      .cta__bottom { gap: 36px; }
      .cta__actions {
        flex-direction: column;
        align-items: stretch;
      }

      .footer__grid {
        grid-template-columns: 1fr;
        gap: 36px;
      }

      .footer__bottom {
        flex-direction: column;
        gap: 8px;
      }
    }


    @media (max-width: 980px) {
      .lead-form__fields {
        grid-template-columns: 1fr 1fr;
      }

      .lead-form__submit {
        grid-column: 1 / -1;
        justify-self: start;
      }

      .faq__head {
        grid-template-columns: 90px 1fr;
      }
    }

    @media (max-width: 640px) {
      .lead-form__fields {
        grid-template-columns: 1fr;
      }

      .lead-form__submit {
        grid-column: auto;
        width: 100%;
      }

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

      .faq__question {
        grid-template-columns: 1fr 34px;
        gap: 16px;
        min-height: 82px;
      }

      .faq__answer p {
        padding-right: 0;
        padding-bottom: 24px;
      }
    }

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

    .modal[aria-hidden="true"] { display: none; }
    .modal[aria-hidden="false"] {
      position: fixed;
      inset: 0;
      z-index: 100;
      display: grid;
      place-items: center;
      padding: 24px;
      background: rgba(25, 39, 53, .58);
    }
    .modal__backdrop { position: absolute; inset: 0; }
    .modal__dialog {
      position: relative;
      z-index: 1;
      width: min(100%, 560px);
      padding: clamp(24px, 4vw, 48px);
      background: var(--paper);
      color: var(--ink);
      box-shadow: 0 24px 80px rgba(25, 39, 53, .28);
    }
    .modal__close { position: absolute; top: 12px; right: 16px; border: 0; background: transparent; font-size: 28px; cursor: pointer; }
    .modal__form { display: grid; gap: 10px; }
    .modal__form input, .modal__form select, .modal__form textarea { width: 100%; padding: 12px; border: 1px solid var(--line-strong); background: var(--white); }
    .modal__form button { margin-top: 8px; padding: 12px 18px; border: 0; background: var(--orange); color: var(--white); cursor: pointer; }

/* Page styles: transport-damage-valuation.html */
.nav__social-icon {
      width: 27px;
      height: 27px;
      display: grid;
      place-items: center;
      color: var(--orange);
      border: 1px solid currentColor;
      border-radius: 50%;
      flex: 0 0 27px;
    }
.nav__social-icon--tg svg {
      width: 17px;
      height: 17px;
    }
.nav__social-icon--max img {
      width: 17px;
      height: 17px;
      display: block;
      object-fit: contain;
    }
.ticker {
      margin-top: 15px;
      border-bottom: 1px solid var(--line);
      overflow: hidden;
      background: var(--navy);
      color: var(--white);
    }
.statement { position: relative; overflow: hidden; }
.statement__inner { position: relative; z-index: 2; }
.statement__graphic {
      position: absolute;
      z-index: 1;
      right: clamp(-40px, 5vw, 90px);
      top: 50%;
      width: min(42vw, 610px);
      aspect-ratio: 1;
      transform: translateY(-50%) rotate(-4deg);
      opacity: .72;
      pointer-events: none;
    }
.statement__graphic svg { width: 100%; height: 100%; display: block; overflow: visible; }
.statement__graphic .g-grid { stroke: rgba(255,255,255,.16); stroke-width: 1; fill: none; }
.statement__graphic .g-main { stroke: rgba(255,255,255,.62); stroke-width: 1.5; fill: none; }
.statement__graphic .g-accent { stroke: var(--orange-soft); stroke-width: 3; fill: none; }
.statement__graphic .g-fill { fill: rgba(255,255,255,.045); stroke: rgba(255,255,255,.18); stroke-width: 1; }
.statement__graphic .g-dot { fill: var(--orange-soft); }
.process__steps {
      position: relative;
      display: grid;
      grid-template-columns: repeat(5, minmax(0, 1fr));
      align-items: start;
      border-top: 1px solid var(--line-strong);
      padding-bottom: 18px;
    }
.process__steps--five {
      grid-template-columns: repeat(5, minmax(0, 1fr));
    }
.step {
      position: relative;
      min-height: 270px;
      padding: 24px 26px 30px 0;
      border-right: 1px solid var(--line);
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      transition: transform .35s cubic-bezier(.2,.8,.2,1);
    }
/* Последовательность читается как лесенка: каждый следующий этап ниже предыдущего. */
    .process__steps--five .step:nth-child(1) { margin-top: 0; }
.process__steps--five .step:nth-child(2) { margin-top: 42px; }
.process__steps--five .step:nth-child(3) { margin-top: 84px; }
.process__steps--five .step:nth-child(4) { margin-top: 126px; }
.process__steps--five .step:nth-child(5) { margin-top: 168px; }
.step__num {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 48px;
      height: 48px;
      border: 1px solid var(--orange);
      border-radius: 50%;
      color: var(--orange);
      font-size: 12px;
      font-weight: 700;
      letter-spacing: .03em;
      flex: 0 0 auto;
    }
.step__bottom {
      position: relative;
      margin-top: 54px;
      padding-top: 22px;
      border-top: 1px solid var(--line);
    }
.step__bottom::before {
      content: "";
      position: absolute;
      top: -24px;
      left: 24px;
      width: 1px;
      height: 24px;
      background: linear-gradient(to bottom, var(--orange), var(--line));
    }
.step__bottom h3 {
      margin: 0 0 12px;
      max-width: 250px;
      font-size: clamp(25px, 2.25vw, 39px);
      line-height: .96;
      letter-spacing: -.045em;
      font-weight: 500;
    }
.step__bottom p {
      max-width: 250px;
      margin: 0;
      line-height: 1.48;
      opacity: .64;
      font-size: 14px;
    }
.step:not(:last-child)::after {
      content: "↘";
      position: absolute;
      right: -9px;
      bottom: 30px;
      z-index: 2;
      width: 18px;
      height: 18px;
      display: grid;
      place-items: center;
      color: var(--orange);
      background: var(--paper);
      font-size: 15px;
    }
.step:hover { transform: translateY(-4px); }
.modal__consents {
      display: grid;
      gap: 10px;
      margin-top: 2px;
    }
.lead-form__field input {
      width: 100%;
      min-height: 58px;
      border: 1px solid rgba(255,255,255,.25);
      border-radius: 0;
      background: rgba(255,255,255,.035);
      color: var(--white);
      padding: 0 16px;
      outline: none;
      transition: border-color .2s ease, background .2s ease;
    }
.lead-form__field input::placeholder {
      color: rgba(255,255,255,.38);
    }
.lead-form__field input:focus {
      border-color: var(--orange-soft);
      background: rgba(255,255,255,.06);
    }
.lead-form__consents {
      margin-top: 20px;
      display: grid;
      gap: 10px;
      max-width: 760px;
    }
.lead-form__consent {
      margin-top: 0;
      display: flex;
      align-items: flex-start;
      gap: 10px;
      font-size: 12px;
      line-height: 1.45;
      color: rgba(255,255,255,.5);
    }
.hero--service { min-height: min(820px, calc(100svh - 86px)); }
.hero--service .hero__bottom { padding-top: clamp(46px, 7vh, 86px); padding-bottom: clamp(22px, 4vh, 50px); }
@media (min-width: 981px){ .hero--service .hero__bottom{ transform: translateY(-72px); } }
/* Precise service hero layout */
.hero--service .hero__kicker { margin-bottom: clamp(24px, 4vh, 52px); }
.hero--service h1 { font-size: clamp(48px, 7vw, 112px); }
@media (min-width: 981px) and (max-height: 760px) {
  .hero--service .hero__bottom { transform: none; }
}
    .hero--service .hero__top {
      position: relative;
      z-index: 3;
    }
.hero--service .hero__lead {
      max-width: 760px;
      margin: clamp(28px, 4vh, 48px) 0 0;
      font-size: clamp(16px, 1.6vw, 24px);
      line-height: 1.06;
      letter-spacing: -.035em;
    }
.hero--service .hero__bottom {
      position: absolute;
      left: var(--pad);
      right: var(--pad);
      bottom: clamp(34px, 5vh, 64px);
      width: auto;
      padding: 0;
      display: block;
      z-index: 6;
      pointer-events: none;
    }
.hero--service .hero__cta {
      position: relative;
      z-index: 7;
      width: min(420px, 38vw);
      margin-left: auto;
      padding-right: 8px;
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      gap: 18px;
      pointer-events: auto;
    }
.hero--service .service-stats {
      position: relative;
      z-index: 8;
      display: flex;
      gap: 28px;
      margin: 0 0 0 0;
      transform: translateX(-2px);
    }
.hero--service .hero__cta .button {
      position: relative;
      z-index: 9;
      margin: 0;
      transform: none;
    }
@media (max-width: 980px) {
      .hero--service .hero__lead {
        margin-top: clamp(24px, 4vh, 40px);
      }

      .hero--service .hero__bottom {
        position: relative;
        left: auto;
        right: auto;
        bottom: auto;
        width: auto;
        padding: 36px var(--pad) 28px;
      }

      .hero--service .hero__cta {
        width: auto;
        margin-left: 0;
        padding-right: 0;
      }
    }
.vehicle-visual{top:54%;}
.vehicle-card{position:relative;aspect-ratio:.78;padding:26px;border:1px solid rgba(25,39,53,.34);background:rgba(246,242,234,.72);box-shadow:18px 18px 0 rgba(70,93,115,.10);}
.vehicle-drawing{position:absolute;inset:20% 9% 28%;display:flex;align-items:center;justify-content:center;}
.vehicle-shadow{position:absolute;left:8%;right:8%;bottom:16%;height:10%;border-radius:50%;background:rgba(70,93,115,.12);}
.vehicle-body{position:relative;width:84%;height:42%;margin-top:8%;border:2px solid rgba(25,39,53,.42);border-radius:20% 18% 14% 14% / 32% 32% 18% 18%;background:rgba(70,93,115,.07);}
.vehicle-roof{position:absolute;left:22%;top:-43%;width:56%;height:56%;border:2px solid rgba(25,39,53,.42);border-bottom:0;border-radius:55% 55% 0 0 / 85% 85% 0 0;transform:skewX(-8deg);}
.vehicle-window{position:absolute;top:-28%;height:22%;background:rgba(70,93,115,.16);border:1px solid rgba(25,39,53,.25);transform:skewX(-8deg);}
.vehicle-window--rear{left:26%;width:19%;}
.vehicle-window--front{left:47%;width:23%;}
.vehicle-wheel{position:absolute;bottom:-19%;width:18%;aspect-ratio:1;border-radius:50%;background:var(--ink);border:7px solid var(--paper);box-shadow:0 0 0 1px rgba(25,39,53,.35);}
.vehicle-wheel--rear{left:9%}
.vehicle-wheel--front{right:9%}
.vehicle-light{position:absolute;right:4%;top:33%;width:5%;height:13%;border-radius:30%;background:var(--orange);transform:skewY(-12deg);}
.service-visual { position:absolute; z-index:1; right:clamp(20px,8vw,150px); top:53%; width:min(38vw,580px); transform:translateY(-50%) rotate(4deg); opacity:.96; pointer-events:none; }
.property-card { position:relative; aspect-ratio:.78; padding:26px; border:1px solid rgba(25,39,53,.34); background:rgba(246,242,234,.72); box-shadow:18px 18px 0 rgba(70,93,115,.10); }
.property-card__top,.property-card__meta { display:flex; justify-content:space-between; gap:20px; font-size:10px; letter-spacing:.12em; text-transform:uppercase; }
.property-card__top { color:rgba(25,39,53,.56); }
.property-card__plan { position:absolute; inset:18% 12% 25%; border:1px solid rgba(25,39,53,.28); }
.plan-line { position:absolute; background:rgba(25,39,53,.33); }
.p1{left:37%;top:0;width:1px;height:100%}
.p2{left:0;top:58%;width:100%;height:1px}
.p3{left:63%;top:58%;width:1px;height:42%}
.p4{left:0;top:31%;width:63%;height:1px}
.plan-dot { position:absolute; width:14px;height:14px;border-radius:50%;background:var(--orange);right:14%;bottom:13%; }
.property-card__meta{position:absolute;left:26px;right:26px;bottom:26px;align-items:end}
.property-card__meta strong{max-width:180px;font-size:20px;line-height:1;letter-spacing:-.04em;text-transform:none;font-weight:500;text-align:right}
.service-stats{display:flex;gap:28px;margin-bottom:18px;position:relative;top:12px}
.service-stats span{display:flex;flex-direction:column;gap:4px}
.service-stats strong{font-size:16px;line-height:1}
.service-stats small{font-size:11px;opacity:.55;text-transform:uppercase;letter-spacing:.1em}
.purpose-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:78px;border-top:1px solid var(--line-strong)}
.purpose-card{min-height:0;padding:25px 24px 30px 0;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.purpose-card:nth-child(3n+2),.purpose-card:nth-child(3n+3){padding-left:24px}
.purpose-card:nth-child(3n+3){border-right:0}

.purpose-card h3{margin:0 0 12px;font-size:clamp(26px,2.1vw,38px);line-height:.98;letter-spacing:-.04em;font-weight:500}
.purpose-card p{margin:0;max-width:360px;font-size:15px;line-height:1.45;opacity:.64}
.objects-section{padding-bottom:clamp(100px,12vw,180px)}
.objects-list{margin-top:78px;border-top:1px solid var(--line-strong)}
.object-row{min-height:120px;display:grid;grid-template-columns:minmax(0,1fr) 50px;align-items:center;gap:24px;padding:18px 0;border-bottom:1px solid var(--line)}

.object-row h3{margin:0 0 7px;font-size:clamp(27px,3vw,48px);line-height:1;letter-spacing:-.05em;font-weight:500}
.object-row p{margin:0;font-size:15px;opacity:.62}
.object-row>b{width:38px;height:38px;border:1px solid var(--line-strong);border-radius:50%;display:grid;place-items:center;color:var(--orange);font-size:17px;font-weight:400}
.included-section{padding-block:clamp(48px,6vw,96px)}
.included-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:36px;border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong)}
.included-grid article{min-height:0;padding:24px 24px 28px 0;border-right:1px solid var(--line);display:block}
.included-grid article+article{padding-left:24px}
.included-grid article:last-child{border-right:0}
.included-grid h3{margin:0 0 12px;font-size:clamp(24px,2vw,34px);line-height:1;letter-spacing:-.04em;font-weight:500}
.included-grid p{margin:0;font-size:14px;line-height:1.48;opacity:.64}
.docs-section{padding-block:clamp(100px,12vw,180px)}
.docs-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:start}
.docs-column .section__title{margin-top:0}
.doc-list{list-style:none;padding:0;margin:58px 0 0;border-top:1px solid var(--line-strong)}
.doc-list li{min-height:62px;display:grid;grid-template-columns:44px 1fr;align-items:center;border-bottom:1px solid var(--line);font-size:17px}
.doc-list span{color:var(--orange);font-size:11px;font-weight:700}
.expertise-card{margin-top:70px;padding:36px;background:var(--navy-dark);color:var(--white);min-height:390px;display:flex;flex-direction:column;justify-content:space-between}
.expertise-card h3{margin:0 0 16px;font-size:clamp(34px,4vw,62px);line-height:.92;letter-spacing:-.055em;font-weight:500}
.expertise-card p{margin:0;max-width:520px;font-size:16px;line-height:1.5;color:rgba(255,255,255,.68)}
.expertise-card .text-link{margin-top:34px;color:var(--orange-soft);font-size:15px}
.expertise-card .text-link span{margin-left:8px}
.pricing-section{padding-block:clamp(100px,12vw,180px);background:var(--paper)}
.pricing-panel{display:grid;grid-template-columns:1fr .75fr;gap:90px;padding:60px 0;border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong)}
.pricing-side{display:flex;flex-direction:column;gap:24px;justify-content:flex-end}
.pricing-metric{display:flex;flex-direction:column;gap:8px;padding-bottom:20px;border-bottom:1px solid var(--line)}
.pricing-metric span{font-size:10px;letter-spacing:.12em;text-transform:uppercase;opacity:.5}
.pricing-metric strong{font-size:clamp(28px,2.5vw,46px);line-height:.95;letter-spacing:-.045em;font-weight:500}
.result-section{padding-block:clamp(100px,12vw,180px)}
.result-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}
.report-card{position:relative;min-height:460px;padding:34px;background:#faf7f0;border:1px solid rgba(25,39,53,.3);transform:rotate(-2deg);box-shadow:24px 24px 0 rgba(70,93,115,.09)}
.report-card__head{display:flex;justify-content:space-between;gap:20px;font-size:10px;letter-spacing:.1em;text-transform:uppercase;opacity:.55}
.report-card__rule{height:1px;background:var(--line);margin:26px 0}
.report-card__body{display:grid;grid-template-columns:1fr auto;gap:15px 24px;font-size:14px}
.report-card__body>span{font-size:10px;letter-spacing:.11em;opacity:.5}
.report-card__body>strong{text-align:right;font-weight:500}
.report-card__value{grid-column:1/-1;margin-top:25px;padding-top:25px;border-top:1px solid var(--line-strong);display:flex;flex-direction:column;gap:8px}
.report-card__value span{font-size:10px;letter-spacing:.11em;opacity:.5}
.report-card__value strong{font-size:clamp(34px,3.6vw,60px);line-height:.9;letter-spacing:-.055em;font-weight:500}
.report-card__stamp{position:absolute;right:26px;bottom:26px;width:88px;height:88px;border:1px solid rgba(232,93,63,.7);color:var(--orange);border-radius:50%;display:grid;place-items:center;font-size:11px;letter-spacing:.1em;transform:rotate(-12deg)}
.seo-section{padding-block:clamp(100px,12vw,180px);background:var(--paper)}
.seo-copy{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:0;margin-top:76px;border-top:1px solid var(--line-strong)}
.seo-copy>div{padding:28px 26px 0 0;border-right:1px solid var(--line)}
.seo-copy>div+div{padding-left:26px}
.seo-copy>div:last-child{border-right:0}
.seo-copy h3{margin:0 0 13px;font-size:clamp(23px,1.8vw,31px);line-height:1;letter-spacing:-.035em;font-weight:500}
.seo-copy p{margin:0;font-size:15px;line-height:1.55;opacity:.67}
.seo-detail { display:grid; grid-template-columns:1.05fr .95fr; gap:70px; margin-top:70px; padding-top:34px; border-top:1px solid var(--line-strong); }
.seo-detail h3 { margin:0 0 18px; font-size:clamp(34px,3.8vw,56px); line-height:.96; letter-spacing:-.05em; font-weight:500; }
.seo-detail p { margin:0; font-size:16px; line-height:1.55; opacity:.67; max-width:680px; }
.seo-factors { display:grid; grid-template-columns:1fr 1fr; gap:0; border-top:1px solid var(--line); }
.seo-factors > div { padding:20px 20px 22px 0; border-bottom:1px solid var(--line); }
.seo-factors > div:nth-child(odd) { border-right:1px solid var(--line); }
.seo-factors > div:nth-child(even) { padding-left:20px; }
.seo-factors strong { display:block; font-size:20px; line-height:1.05; letter-spacing:-.025em; font-weight:500; margin-bottom:9px; }
.seo-factors p { font-size:14px; max-width:none; }
.seo-note { margin:42px 0 0; max-width:1050px; font-size:15px; line-height:1.55; opacity:.62; }
.choice-section{padding-block:clamp(90px,11vw,165px);background:var(--navy-dark);color:var(--white)}
.choice-head{display:grid;grid-template-columns:.72fr 1.28fr;gap:70px;align-items:start}
.choice-title{margin:24px 0 0;max-width:760px;font-size:clamp(44px,5.5vw,82px);line-height:.92;letter-spacing:-.06em;font-weight:500}
.choice-title .accent{color:var(--orange-soft)}
.choice-intro{max-width:700px;margin:0;font-size:18px;line-height:1.5;color:rgba(255,255,255,.68)}
.choice-grid{display:grid;grid-template-columns:1fr 1fr;margin-top:70px;border-top:1px solid rgba(255,255,255,.22);border-bottom:1px solid rgba(255,255,255,.22)}
.choice-card{min-height:350px;padding:28px 30px 32px 0;display:flex;flex-direction:column;justify-content:space-between;border-right:1px solid rgba(255,255,255,.18)}
.choice-card+ .choice-card{padding-left:30px;padding-right:0;border-right:0}
.choice-card__label{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--orange-soft);font-weight:700}
.choice-card h3{margin:62px 0 14px;font-size:clamp(30px,3.1vw,50px);line-height:.96;letter-spacing:-.05em;font-weight:500}
.choice-card p{margin:0;max-width:600px;font-size:15px;line-height:1.52;color:rgba(255,255,255,.66)}
.choice-card ul{list-style:none;margin:28px 0 0;padding:0;display:grid;gap:11px}
.choice-card li{position:relative;padding-left:18px;font-size:14px;line-height:1.45;color:rgba(255,255,255,.74)}
.choice-card li::before{content:"";position:absolute;left:0;top:.58em;width:7px;height:1px;background:var(--orange)}
.choice-note{margin:34px 0 0;max-width:1000px;font-size:14px;line-height:1.5;color:rgba(255,255,255,.5)}
.modal{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:24px;background:rgba(25,39,53,.58);opacity:0;visibility:hidden;transition:opacity .25s ease,visibility .25s ease}
.modal.is-open{opacity:1;visibility:visible}
.modal__dialog{position:relative;width:min(100%,680px);max-height:calc(100svh - 48px);overflow:auto;padding:clamp(28px,4vw,46px);background:var(--paper);color:var(--ink);border:1px solid rgba(25,39,53,.22);box-shadow:24px 24px 0 rgba(70,93,115,.12);transform:translateY(18px);transition:transform .28s cubic-bezier(.2,.8,.2,1)}
.modal.is-open .modal__dialog{transform:none}
.modal__close{position:absolute;right:18px;top:18px;width:38px;height:38px;border:1px solid var(--line-strong);border-radius:50%;background:transparent;color:var(--ink);font-size:22px;line-height:1;cursor:pointer}
.modal__eyebrow{margin-bottom:20px}
.modal__title{margin:0;max-width:560px;font-size:clamp(40px,5.4vw,76px);line-height:.92;letter-spacing:-.06em;font-weight:500}
.modal__intro{max-width:560px;margin:18px 0 30px;font-size:17px;line-height:1.45;opacity:.68}
.modal__form{display:grid;gap:16px}
.modal__field{display:flex;flex-direction:column;gap:8px}
.modal__field label{font-size:11px;line-height:1;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:rgba(25,39,53,.56)}
.modal__field input,.modal__field select,.modal__field textarea{width:100%;border:1px solid rgba(25,39,53,.26);border-radius:0;background:rgba(255,255,255,.24);color:var(--ink);padding:14px 15px;outline:none;transition:border-color .2s ease,background .2s ease}
.modal__field textarea{min-height:120px;resize:vertical}
.modal__field input:focus,.modal__field select:focus,.modal__field textarea:focus{border-color:var(--navy);background:rgba(255,255,255,.42)}
.modal__consent{display:flex;align-items:flex-start;gap:10px;margin-top:2px;font-size:12px;line-height:1.45;opacity:.7}
.modal__consent input{width:15px;height:15px;margin:2px 0 0;flex:0 0 auto;accent-color:var(--orange)}
.modal__consent a{text-decoration:underline;text-underline-offset:3px}
.modal__actions{display:flex;justify-content:flex-end;margin-top:4px}
.modal__actions .button{min-width:210px}
.no-scroll{overflow:hidden}
.text-link{border:0;background:none;padding:0;cursor:pointer;font:inherit;text-align:left}
.text-link::after{display:none}
@media(max-width:980px){.statement__graphic{width:470px;right:-120px;opacity:.35}.seo-detail{grid-template-columns:1fr;gap:42px}.seo-factors{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.service-stats{top:8px}.ticker{margin-top:15px}.statement__graphic{width:330px;right:-150px;opacity:.24}.seo-factors{grid-template-columns:1fr}.seo-factors>div,.seo-factors>div:nth-child(even){border-right:0;padding-left:0;padding-right:0}}
.damage-mark{position:absolute;display:block;width:30px;height:3px;background:var(--orange);border-radius:999px;transform:rotate(-24deg);opacity:.95;box-shadow:0 0 0 1px rgba(232,93,63,.08)}
.damage-mark::after{content:"";position:absolute;left:8px;top:-6px;width:17px;height:3px;background:var(--orange);transform:rotate(48deg);border-radius:999px}
.damage-mark--one{left:46%;top:48%;transform:rotate(-38deg)}
.damage-mark--two{left:58%;top:56%;width:22px;transform:rotate(22deg)}
.damage-mark--three{left:39%;top:61%;width:18px;transform:rotate(66deg)}
.damage-card .property-card__meta strong{color:var(--orange)}
@media(max-width:980px){.service-visual{width:340px;right:-40px;top:52%;opacity:.34}.purpose-grid{grid-template-columns:1fr 1fr}.purpose-card:nth-child(3n+3){border-right:1px solid var(--line)}.purpose-card:nth-child(2n){border-right:0}.purpose-card:nth-child(3n+2),.purpose-card:nth-child(3n+3){padding-left:24px}.included-grid{grid-template-columns:1fr 1fr}.included-grid article:nth-child(2){border-right:0}.included-grid article:nth-child(-n+2){border-bottom:1px solid var(--line)}.docs-grid,.pricing-panel,.result-grid{grid-template-columns:1fr}.expertise-card{margin-top:30px}.seo-copy{grid-template-columns:1fr}.seo-copy>div{border-right:0;border-bottom:1px solid var(--line);padding:28px 0}.seo-copy>div+div{padding-left:0}.seo-copy>div:last-child{border-bottom:0}.lead-form__fields{grid-template-columns:1fr 1fr}.lead-form__field--wide{grid-column:1/-1}}
@media(max-width:640px){.service-visual{width:280px;right:-105px;top:50%}.hero--service .hero__bottom{padding-top:46px;padding-bottom:28px}.service-stats{gap:18px;margin-bottom:14px}.purpose-grid,.included-grid{grid-template-columns:1fr}.purpose-card,.purpose-card:nth-child(3n+2),.purpose-card:nth-child(3n+3){padding-left:0;padding-right:0;border-right:0}.included-grid article,.included-grid article+article{border-right:0;padding-left:0;padding-right:0;min-height:0}.included-grid article:not(:last-child){border-bottom:1px solid var(--line)}.object-row{grid-template-columns:minmax(0,1fr) 40px;gap:14px}.object-row p{max-width:240px}.expertise-card{min-height:350px;padding:28px}.report-card{min-height:400px}.lead-form__fields{grid-template-columns:1fr}.lead-form__field--wide{grid-column:auto}}
@media (max-width: 980px) {
      .nav__inner {
        grid-template-columns: 1fr auto;
        min-height: 72px;
      }

      .nav__links { display: none; }
      .nav__contacts { display: none; }
      .nav__actions { grid-column: 2; }
      .menu-btn { display: block; }

      .mobile-nav {
        display: grid;
        grid-template-rows: 0fr;
        transition: grid-template-rows .35s ease;
        border-top: 0 solid var(--line);
      }

      .mobile-nav__inner {
        overflow: hidden;
        display: flex;
        flex-direction: column;
        gap: 0;
      }

      .nav.is-open .mobile-nav {
        grid-template-rows: 1fr;
        border-top-width: 1px;
      }

      .mobile-nav a {
        padding: 17px var(--pad);
        border-bottom: 1px solid var(--line);
        font-size: 20px;
      }

      .nav.is-open .menu-btn span:first-child { top: 21px; transform: rotate(45deg); }
      .nav.is-open .menu-btn span:last-child { top: 21px; transform: rotate(-45deg); }

      .hero { min-height: auto; }
      .hero__bottom,
      .proof__grid,
      .process__top,
      .cta__bottom {
        grid-template-columns: 1fr;
      }

      .hero__cta,
      .process__lead {
        justify-self: start;
        margin-left: 0;
      }

      .compass {
        top: 49%;
        right: -22%;
        opacity: .35;
      }

      .section__head {
        grid-template-columns: 90px 1fr;
      }

      .service-group {
        grid-template-columns: 1fr;
      }

      .service-group__title {
        position: static;
      }

      .proof__grid { gap: 40px; }

      .process__steps {
        grid-template-columns: 1fr 1fr;
        padding-bottom: 0;
      }

      .process__steps--five {
        grid-template-columns: 1fr 1fr;
      }

      .process__steps--five .step:nth-child(n) { margin-top: 0; }
      .step { min-height: 300px; }
      .step:nth-child(2n) { border-right: 0; }
      .step:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
      .step:not(:last-child)::after { display: none; }

      .cta__actions { justify-content: flex-start; }

      .footer__grid {
        grid-template-columns: 1.25fr 1fr;
      }
    }
@media (max-width: 640px) {
      :root { --pad: 18px; }

      .hero { padding-top: 28px; }
      .hero__kicker { margin-bottom: 34px; }
      h1 { font-size: clamp(57px, 18vw, 92px); }
      .brand__descriptor { display: none; }

      .hero__bottom {
        gap: 34px;
        padding-block: 48px;
      }

      .compass {
        width: 350px;
        top: 48%;
        right: -170px;
      }

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

      .section__title {
        font-size: clamp(50px, 16vw, 78px);
      }

      .service-group:first-child { margin-top: 54px; }

      .service-link {
        grid-template-columns: 30px 1fr 24px;
      }

      .proof__grid { grid-template-columns: 1fr; }
      .proof__item {
        grid-template-columns: 54px 1fr;
        gap: 16px;
      }

      .process__steps {
        grid-template-columns: 1fr;
        border-bottom: 0;
        padding-bottom: 0;
      }

      .process__steps--five .step:nth-child(n) { margin-top: 0; }

      .step,
      .step + .step {
        min-height: 260px;
        padding: 22px 0 26px;
        border-right: 0;
        border-bottom: 1px solid var(--line);
      }

      .step:last-child { border-bottom: 0; }
      .step:not(:last-child)::after { display: none; }
      .step__bottom { margin-top: 44px; }

      .cta__bottom { gap: 36px; }
      .cta__actions {
        flex-direction: column;
        align-items: stretch;
      }

      .footer__grid {
        grid-template-columns: 1fr;
        gap: 36px;
      }

      .footer__bottom {
        flex-direction: column;
        gap: 8px;
      }
    }

/* Page styles: apartment-damage-valuation.html */
@media(max-width:980px){.service-visual{width:340px;right:-40px;top:53%;opacity:.34}.purpose-grid{grid-template-columns:1fr 1fr}.purpose-card:nth-child(3n+3){border-right:1px solid var(--line)}.purpose-card:nth-child(2n){border-right:0}.purpose-card:nth-child(3n+2),.purpose-card:nth-child(3n+3){padding-left:24px}.included-grid{grid-template-columns:1fr 1fr}.included-grid article:nth-child(2){border-right:0}.included-grid article:nth-child(-n+2){border-bottom:1px solid var(--line)}.docs-grid,.pricing-panel,.result-grid{grid-template-columns:1fr}.expertise-card{margin-top:30px}.seo-copy{grid-template-columns:1fr}.seo-copy>div{border-right:0;border-bottom:1px solid var(--line);padding:28px 0}.seo-copy>div+div{padding-left:0}.seo-copy>div:last-child{border-bottom:0}.lead-form__fields{grid-template-columns:1fr 1fr}.lead-form__field--wide{grid-column:1/-1}}
/* Water-damage hero illustration */
    .damage-property-card{position:relative;width:100%;aspect-ratio:1.42;border:1px solid rgba(25,39,53,.42);background:rgba(246,242,234,.56);box-shadow:26px 26px 0 rgba(70,93,115,.12);transform:rotate(4deg);padding:24px;overflow:hidden}
.damage-plan{position:absolute;left:10%;right:10%;top:17%;bottom:22%;border:1px solid rgba(25,39,53,.26);overflow:hidden;background:linear-gradient(180deg,rgba(255,253,248,.72),rgba(232,228,218,.46))}
.room-wall{position:absolute;background:rgba(25,39,53,.12)}
.wall-back{left:0;right:0;top:0;height:3px}
.wall-side{right:0;top:0;bottom:0;width:3px}
.floor-area{position:absolute;left:7%;right:7%;bottom:9%;height:48%;border:1px solid rgba(25,39,53,.15);transform:skewY(-2deg);background:repeating-linear-gradient(90deg,transparent 0 11%,rgba(25,39,53,.045) 11.5% 12%)}
.furniture{position:absolute;border:1px solid rgba(25,39,53,.34);background:rgba(246,242,234,.82)}
.sofa{left:14%;top:20%;width:31%;height:19%;border-radius:12px 12px 6px 6px}
.sofa span{position:absolute;left:8%;right:8%;top:18%;height:35%;border-top:1px solid rgba(25,39,53,.28);border-bottom:1px solid rgba(25,39,53,.18)}
.sofa i{position:absolute;left:8%;right:8%;bottom:-7px;height:7px;border-left:1px solid rgba(25,39,53,.3);border-right:1px solid rgba(25,39,53,.3)}
.cabinet{right:13%;top:18%;width:20%;height:29%}
.cabinet i{display:block;height:50%;border-bottom:1px solid rgba(25,39,53,.2)}
.cabinet i:last-child{border-bottom:0}
.rug{left:27%;bottom:17%;width:37%;height:18%;border-radius:50%;border-style:dashed;background:rgba(70,93,115,.06)}
.puddle{position:absolute;background:rgba(70,93,115,.17);border:1px solid rgba(70,93,115,.28);filter:blur(.1px)}
.puddle-main{left:25%;right:16%;bottom:10%;height:24%;border-radius:48% 52% 55% 45% / 48% 40% 60% 52%;transform:rotate(-5deg)}
.puddle-small{left:18%;bottom:29%;width:13%;height:8%;border-radius:50%}
.water-drop{position:absolute;width:10px;height:14px;border:1.5px solid var(--navy);border-radius:70% 70% 65% 65%;transform:rotate(45deg);opacity:.62;background:rgba(174,186,195,.16)}
.water-drop.d1{left:48%;top:43%}
.water-drop.d2{left:63%;top:54%;width:8px;height:11px}
.water-drop.d3{right:26%;top:39%;width:8px;height:11px}

/* Page styles: review-expertise.html */
.review-visual { position:absolute; z-index:1; right:clamp(20px,7vw,130px); top:53%; width:min(38vw,580px); transform:translateY(-50%) rotate(3deg); opacity:.98; pointer-events:none; }
.review-card { position:relative; padding:22px 24px 24px; background:var(--paper); border:1px solid var(--line-strong); box-shadow:12px 16px 0 rgba(25,39,53,.08); min-height:360px; }
.review-card__top { display:flex; justify-content:space-between; font-size:11px; letter-spacing:.13em; opacity:.58; padding-bottom:15px; border-bottom:1px solid var(--line); }
.review-sheet { margin-top:20px; border:1px solid var(--line); padding:18px 18px 20px; background:var(--white); position:relative; }
.review-sheet__title { font-size:12px; letter-spacing:.12em; opacity:.58; margin-bottom:16px; }
.review-sheet__line { height:9px; background:rgba(25,39,53,.10); margin:9px 0; }
.review-sheet__line.short { width:64%; }
.review-sheet__flag { display:flex; align-items:center; gap:10px; margin-top:20px; font-size:12px; }
.review-sheet__flag .mark { width:24px; height:24px; display:grid; place-items:center; border:1px solid var(--orange); color:var(--orange); font-weight:700; }
.review-card__bottom { display:flex; justify-content:space-between; align-items:end; gap:20px; margin-top:18px; }
.review-card__amount { font-size:34px; line-height:1; letter-spacing:-.05em; }
.review-card__label { font-size:11px; opacity:.55; margin-top:7px; }
@media(max-width:980px){.review-visual{width:340px;right:-40px;top:53%;opacity:.34}}
@media(max-width:640px){.review-visual{width:280px;right:-105px;top:50%}}
.materials-pricing-section{padding-block:clamp(90px,10vw,150px)}
.materials-pricing-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:80px;align-items:stretch}
.materials-side{background:var(--ink);color:var(--white);padding:38px 40px 42px;min-height:100%;display:flex;flex-direction:column;justify-content:space-between}
.materials-side__top h3{margin:0 0 16px;font-size:clamp(34px,3.8vw,58px);line-height:.93;letter-spacing:-.055em;font-weight:500}
.materials-side__top p,.materials-side__price p{margin:0;max-width:520px;font-size:16px;line-height:1.5;color:rgba(255,255,255,.68)}
.materials-side__price{margin-top:52px;padding-top:28px;border-top:1px solid rgba(255,255,255,.2)}
.materials-side__price strong{display:block;margin:18px 0 14px;font-size:clamp(46px,5vw,76px);line-height:.9;letter-spacing:-.06em;font-weight:500}
.materials-side__price strong span{color:var(--orange-soft)}
.materials-side .button{align-self:flex-start;margin-top:34px}
.materials-pricing-section .doc-list{margin-top:46px}
.materials-pricing-section .docs-column .section__title{margin-top:0}
@media (max-width: 980px) {
      .nav__inner {
        grid-template-columns: 1fr auto;
        min-height: 72px;
      }

      .nav__links { display: none; }
      .nav__contacts { display: none; }
      .nav__actions { grid-column: 2; }
      .menu-btn { display: block; }

      .mobile-nav {
        display: grid;
        grid-template-rows: 0fr;
        transition: grid-template-rows .35s ease;
        border-top: 0 solid var(--line);
      }

      .mobile-nav__inner {
        overflow: hidden;
        display: flex;
        flex-direction: column;
        gap: 0;
      }

      .nav.is-open .mobile-nav {
        grid-template-rows: 1fr;
        border-top-width: 1px;
      }

      .mobile-nav a {
        padding: 17px var(--pad);
        border-bottom: 1px solid var(--line);
        font-size: 20px;
      }

      .nav.is-open .menu-btn span:first-child { top: 21px; transform: rotate(45deg); }
      .nav.is-open .menu-btn span:last-child { top: 21px; transform: rotate(-45deg); }

      .hero { min-height: auto; }
      .hero__bottom,
      .proof__grid,
      .process__top,
      .cta__bottom {
        grid-template-columns: 1fr;
      }

      .hero__cta,
      .process__lead {
        justify-self: start;
        margin-left: 0;
      }

      .compass {
        top: 49%;
        right: -22%;
        opacity: .35;
      }

      .section__head {
        grid-template-columns: 90px 1fr;
      }

      .service-group {
        grid-template-columns: 1fr;
      }

      .service-group__title {
        position: static;
      }

      .materials-pricing-grid {
        grid-template-columns: 1fr;
        gap: 40px;
      }

      .proof__grid { gap: 40px; }

      .process__steps {
        grid-template-columns: 1fr 1fr;
        padding-bottom: 0;
      }

      .process__steps--five {
        grid-template-columns: 1fr 1fr;
      }

      .process__steps--five .step:nth-child(n) { margin-top: 0; }
      .step { min-height: 300px; }
      .step:nth-child(2n) { border-right: 0; }
      .step:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
      .step:not(:last-child)::after { display: none; }

      .cta__actions { justify-content: flex-start; }

      .footer__grid {
        grid-template-columns: 1.25fr 1fr;
      }
    }
@media (max-width: 640px) {
      :root { --pad: 18px; }

      .hero { padding-top: 28px; }
      .hero__kicker { margin-bottom: 34px; }
      h1 { font-size: clamp(57px, 18vw, 92px); }
      .brand__descriptor { display: none; }

      .hero__bottom {
        gap: 34px;
        padding-block: 48px;
      }

      .compass {
        width: 350px;
        top: 48%;
        right: -170px;
      }

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

      .section__title {
        font-size: clamp(50px, 16vw, 78px);
      }

      .service-group:first-child { margin-top: 54px; }

      .service-link {
        grid-template-columns: 30px 1fr 24px;
      }

      .materials-side { padding: 30px 24px 32px; }
      .materials-side__top h3 { margin-top: 0; }

      .proof__grid { grid-template-columns: 1fr; }
      .proof__item {
        grid-template-columns: 54px 1fr;
        gap: 16px;
      }

      .process__steps {
        grid-template-columns: 1fr;
        border-bottom: 0;
        padding-bottom: 0;
      }

      .process__steps--five .step:nth-child(n) { margin-top: 0; }

      .step,
      .step + .step {
        min-height: 260px;
        padding: 22px 0 26px;
        border-right: 0;
        border-bottom: 1px solid var(--line);
      }

      .step:last-child { border-bottom: 0; }
      .step:not(:last-child)::after { display: none; }
      .step__bottom { margin-top: 44px; }

      .cta__bottom { gap: 36px; }
      .cta__actions {
        flex-direction: column;
        align-items: stretch;
      }

      .footer__grid {
        grid-template-columns: 1fr;
        gap: 36px;
      }

      .footer__bottom {
        flex-direction: column;
        gap: 8px;
      }
    }

/* Page styles: handwriting-expertise.html */
.handwriting-visual .handwriting-card { min-height: 390px; }
.handwriting-sheet { padding-bottom: 16px; }
.signature-svg { width: 100%; height: auto; color: var(--navy); display:block; }
.handwriting-markers { display:flex; gap:18px; margin-top:12px; font-size:11px; opacity:.72; }
.handwriting-markers b { color:var(--orange); font-size:16px; margin-right:5px; }
.handwriting-graphic .g-main { stroke-width: 2; }

/* Page styles: construction-technical-expertise.html */
.construction-svg { width:100%; height:auto; display:block; color:var(--ink); }
.construction-card { min-height:390px; }
.construction-sheet { padding-bottom:16px; }
.construction-visual { transform:translateY(-50%) rotate(-3deg); }
.construction-graphic { transform:translateY(-50%) rotate(2deg); }

/* Page styles: document-expertise.html */
.document-visual { transform:translateY(-50%) rotate(-3deg); }
.document-card { min-height:360px; }
.document-sheet .construction-svg { width:100%; height:auto; display:block; color:var(--ink); margin-top:6px; }
.document-graphic { transform: translateY(-50%) rotate(3deg); }

.section__head:not(:has(> .section__index)) {
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
}
