
@font-face{font-family:Inter;src:url('/assets/fonts/inter.woff') format('woff');font-weight:100 900;font-display:swap}
@font-face{font-family:Montserrat;src:url('/assets/fonts/montserrat.woff') format('woff');font-weight:100 900;font-display:swap}

    :root {
      --navy: #0f2d3a;
      --navy-deep: #09212b;
      --teal: #0f9d8e;
      --teal-dark: #087b70;
      --sand: #f6f4ef;
      --white: #ffffff;
      --graphite: #6b7280;
      --ink: #142b34;
      --line: rgba(15,45,58,.14);
      --shadow: 0 24px 70px rgba(9,33,43,.14);
      --radius: 1.5rem;
    }

    * { box-sizing: border-box; }
    html { scroll-behavior: smooth; }
    body {
      margin: 0;
      color: var(--ink);
      background: var(--sand);
      font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      font-size: 16px;
      line-height: 1.6;
      overflow-x: hidden;
    }
    img { display: block; max-width: 100%; }
    h1, h2, h3, .brand-word { font-family: Montserrat, Inter, sans-serif; }
    a { color: inherit; text-decoration: none; }
    button, input, select, textarea { font: inherit; }
    button, a { -webkit-tap-highlight-color: transparent; }
    :focus-visible { outline: 3px solid rgba(15,157,142,.45); outline-offset: 4px; }

    .shell { width: min(1180px, calc(100% - 40px)); margin-inline: auto; }
    .eyebrow {
      margin: 0 0 16px;
      color: var(--teal-dark);
      font-size: .82rem;
      font-weight: 800;
      letter-spacing: .18em;
      text-transform: uppercase;
    }
    .section-title {
      margin: 0;
      color: var(--navy);
      font-size: clamp(2.25rem, 5vw, 4.4rem);
      line-height: .98;
      letter-spacing: -.06em;
    }
    .section-copy { max-width: 640px; margin: 22px 0 0; color: #53666d; font-size: 1.05rem; }

    .topbar {
      background: var(--navy-deep);
      color: rgba(255,255,255,.74);
      font-size: .78rem;
      font-weight: 700;
      letter-spacing: .15em;
      text-transform: uppercase;
    }
    .topbar .shell { min-height: 38px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
    .topbar strong { color: white; }
    .topbar-meta { display: flex; align-items: center; gap: 28px; }
    .status { display: flex; align-items: center; gap: 9px; }
    .status::before { content: ""; width: 8px; height: 8px; border-radius: 99px; background: var(--teal); box-shadow: 0 0 0 5px rgba(15,157,142,.16); }

    .site-header {
      position: sticky;
      top: 0;
      z-index: 20;
      background: rgba(246,244,239,.91);
      backdrop-filter: blur(16px);
      border-bottom: 1px solid rgba(15,45,58,.08);
    }
    .nav { min-height: 86px; display: flex; align-items: center; justify-content: space-between; gap: 28px; }
    .brand { display: inline-flex; align-items: center; gap: 13px; color: var(--navy); }
    .brand-mark { width: 48px; height: 48px; flex: 0 0 auto; }
    .brand-word { font-size: 1.28rem; font-weight: 900; letter-spacing: -.04em; }
    .brand-word span { color: var(--teal); }
    .brand-tag { display: block; margin-top: -5px; color: #64777e; font-size: .55rem; font-weight: 800; letter-spacing: .17em; }
    .nav-links { display: flex; align-items: center; gap: 30px; font-size: .9rem; font-weight: 750; }
    .nav-links a:not(.button):hover { color: var(--teal-dark); }
    .button {
      min-height: 52px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      padding: 0 22px;
      border: 1px solid transparent;
      border-radius: 999px;
      background: var(--teal);
      color: white;
      font-weight: 800;
      line-height: 1;
      cursor: pointer;
      box-shadow: 0 12px 30px rgba(15,157,142,.22);
      transition: transform .2s ease, background .2s ease, box-shadow .2s ease;
    }
    .button:hover { background: var(--teal-dark); transform: translateY(-2px); box-shadow: 0 16px 34px rgba(15,157,142,.26); }
    .button.secondary { color: var(--navy); background: transparent; border-color: rgba(15,45,58,.2); box-shadow: none; }
    .button.secondary:hover { background: white; border-color: white; }
    .menu-toggle { display: none; border: 0; background: transparent; color: var(--navy); padding: 10px; cursor: pointer; }

    .hero { position: relative; padding: 76px 0 86px; isolation: isolate; }
    .hero::before {
      content: "";
      position: absolute;
      z-index: -1;
      width: 520px;
      height: 520px;
      right: -280px;
      top: -100px;
      border: 110px solid rgba(15,157,142,.08);
      transform: rotate(45deg);
    }
    .hero-grid { display: grid; grid-template-columns: 1.02fr .98fr; gap: 68px; align-items: center; }
    .hero h1 {
      max-width: 770px;
      margin: 0;
      color: var(--navy);
      font-size: clamp(3.5rem, 7vw, 6.7rem);
      line-height: .9;
      letter-spacing: -.075em;
    }
    .hero h1 span { color: var(--teal); }
    .hero-lead { max-width: 600px; margin: 26px 0 0; color: #52666e; font-size: clamp(1.05rem, 1.8vw, 1.23rem); }
    .hero-actions { display: flex; flex-wrap: wrap; gap: 13px; margin-top: 34px; }
    .micro-proof { margin-top: 30px; display: flex; align-items: center; gap: 14px; color: #5a6d73; font-size: .92rem; font-weight: 650; }
    .avatar-stack { display: flex; }
    .avatar-stack span { width: 31px; height: 31px; display: grid; place-items: center; margin-left: -7px; border: 2px solid var(--sand); border-radius: 50%; background: var(--navy); color: white; font-size: .65rem; }
    .avatar-stack span:first-child { margin-left: 0; background: var(--teal); }

    .hero-media { position: relative; min-height: 590px; }
    .hero-photo {
      width: 91%;
      height: 540px;
      margin-left: auto;
      object-fit: cover;
      object-position: 36% center;
      border-radius: 34px 34px 100px 34px;
      box-shadow: var(--shadow);
    }
    .hero-media::after {
      content: "";
      position: absolute;
      z-index: -1;
      right: -23px;
      top: 32px;
      width: 88%;
      height: 90%;
      border: 2px solid rgba(15,157,142,.35);
      border-radius: 34px 34px 100px 34px;
    }
    .direction-card {
      position: absolute;
      left: 0;
      bottom: 0;
      max-width: 305px;
      padding: 26px;
      border-radius: 22px;
      background: var(--navy);
      color: white;
      box-shadow: 0 22px 55px rgba(9,33,43,.28);
    }
    .direction-card svg { width: 30px; color: var(--teal); }
    .direction-card strong { display: block; margin: 12px 0 4px; font-size: 1.15rem; }
    .direction-card span { color: rgba(255,255,255,.67); font-size: .9rem; }

    .trust-strip { border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); background: rgba(255,255,255,.45); }
    .trust-grid { display: grid; grid-template-columns: repeat(3, 1fr); }
    .trust-item { min-height: 116px; display: flex; align-items: center; gap: 16px; padding: 24px 34px; border-right: 1px solid var(--line); }
    .trust-item:last-child { border-right: 0; }
    .trust-icon { width: 44px; height: 44px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 50%; background: rgba(15,157,142,.12); color: var(--teal-dark); font-weight: 900; }
    .trust-item strong { display: block; color: var(--navy); }
    .trust-item span:not(.trust-icon) { display: block; color: #62757c; font-size: .86rem; }

    section { scroll-margin-top: 100px; }
    .services { padding: 130px 0 115px; }
    .section-head { display: flex; align-items: end; justify-content: space-between; gap: 50px; }
    .service-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin-top: 54px; }
    .service-card {
      position: relative;
      min-height: 350px;
      padding: 32px;
      border: 1px solid var(--line);
      border-radius: var(--radius);
      background: rgba(255,255,255,.62);
      overflow: hidden;
      transition: transform .25s ease, box-shadow .25s ease, background .25s ease;
    }
    .service-card:hover { transform: translateY(-8px); background: white; box-shadow: 0 24px 60px rgba(9,33,43,.10); }
    .service-no { color: var(--teal-dark); font-size: .78rem; font-weight: 900; letter-spacing: .18em; }
    .service-card h3 { margin: 84px 0 12px; color: var(--navy); font-size: 1.7rem; letter-spacing: -.04em; }
    .service-card p { margin: 0; color: #5d7077; }
    .service-link { position: absolute; left: 32px; bottom: 28px; display: flex; align-items: center; gap: 10px; color: var(--navy); font-weight: 850; }
    .service-link i { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 50%; background: var(--teal); color: white; font-style: normal; }
    .service-card.featured { background: var(--navy); color: white; border-color: var(--navy); }
    .service-card.featured h3, .service-card.featured .service-link { color: white; }
    .service-card.featured p { color: rgba(255,255,255,.66); }
    .service-card.featured::after { content: "↑"; position: absolute; right: -16px; top: 24px; color: rgba(15,157,142,.18); font-size: 13rem; font-weight: 900; line-height: 1; }

    .process { padding: 115px 0; background: var(--navy); color: white; }
    .process .eyebrow { color: #70d9cf; }
    .process .section-title { color: white; max-width: 720px; }
    .process-grid { display: grid; grid-template-columns: 1fr 1.15fr; gap: 90px; align-items: start; }
    .steps { border-top: 1px solid rgba(255,255,255,.18); }
    .step { display: grid; grid-template-columns: 55px 1fr; gap: 20px; padding: 28px 0; border-bottom: 1px solid rgba(255,255,255,.18); }
    .step-no { color: var(--teal); font-weight: 900; }
    .step h3 { margin: 0 0 8px; font-size: 1.22rem; }
    .step p { margin: 0; color: rgba(255,255,255,.62); }

    .fleet { padding: 100px 0 120px; background: white; }
    .fleet-card { position: relative; min-height: 580px; display: flex; align-items: end; padding: 46px; border-radius: 32px; overflow: hidden; }
    .fleet-card::before { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(9,33,43,.02) 25%, rgba(9,33,43,.88) 100%); z-index: 1; }
    .fleet-card img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
    .fleet-copy { position: relative; z-index: 2; max-width: 660px; color: white; }
    .fleet-copy .eyebrow { color: #77ddd4; }
    .fleet-copy h2 { margin: 0; font-size: clamp(2.5rem, 5vw, 4.7rem); line-height: .98; letter-spacing: -.06em; }
    .fleet-copy p { max-width: 580px; margin: 18px 0 0; color: rgba(255,255,255,.73); font-size: 1.05rem; }

    .values { padding: 110px 0; background: var(--sand); }
    .values-grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: 90px; align-items: start; }
    .values-list { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
    .value { padding: 26px; border-radius: 20px; background: white; border: 1px solid var(--line); }
    .value b { display: block; margin-bottom: 7px; color: var(--navy); font-size: 1.08rem; }
    .value span { color: #61747b; font-size: .93rem; }

    .quote { padding: 105px 0; background: linear-gradient(135deg, #e8f4f1 0%, #f6f4ef 52%, #eef0eb 100%); }
    .quote-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 74px; align-items: start; }
    .quote-points { display: grid; gap: 14px; margin-top: 32px; }
    .quote-point { display: flex; gap: 12px; align-items: center; color: #52666e; font-weight: 650; }
    .quote-point i { width: 25px; height: 25px; display: grid; place-items: center; border-radius: 50%; background: var(--teal); color: white; font-size: .8rem; font-style: normal; }
    .quote-form { padding: 34px; border-radius: 26px; background: white; box-shadow: var(--shadow); }
    .form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
    .field { display: grid; gap: 7px; }
    .field.full { grid-column: 1 / -1; }
    .field label { color: var(--navy); font-size: .86rem; font-weight: 800; }
    .field input, .field select, .field textarea {
      width: 100%;
      border: 1px solid rgba(15,45,58,.17);
      border-radius: 12px;
      background: #fbfcfa;
      color: var(--ink);
      padding: 14px 15px;
      min-height: 52px;
    }
    .field textarea { min-height: 110px; resize: vertical; }
    .quote-form .button { width: 100%; margin-top: 20px; }
    .fine-print { margin: 12px 0 0; color: #78878c; font-size: .78rem; text-align: center; }
    .form-success { display: none; padding: 30px 0; text-align: center; }
    .form-success.show { display: block; }
    .form-success .success-icon { width: 64px; height: 64px; display: grid; place-items: center; margin: 0 auto 18px; border-radius: 50%; background: rgba(15,157,142,.12); color: var(--teal-dark); font-size: 1.8rem; font-weight: 900; }
    .form-success h3 { margin: 0 0 7px; color: var(--navy); font-size: 1.65rem; }
    .form-success p { margin: 0; color: #63767d; }

    .footer { padding: 60px 0 28px; background: var(--navy-deep); color: white; }
    .footer-grid { display: grid; grid-template-columns: 1.25fr .75fr .75fr; gap: 60px; }
    .footer .brand { color: white; }
    .footer .brand-tag { color: rgba(255,255,255,.52); }
    .footer-copy { max-width: 430px; margin-top: 18px; color: rgba(255,255,255,.58); }
    .footer h3 { margin: 0 0 16px; color: #70d9cf; font-size: .8rem; letter-spacing: .15em; text-transform: uppercase; }
    .footer-links { display: grid; gap: 10px; color: rgba(255,255,255,.72); }
    .footer-bottom { display: flex; justify-content: space-between; gap: 30px; margin-top: 52px; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.12); color: rgba(255,255,255,.42); font-size: .78rem; }

    @media (max-width: 980px) {
      .topbar-meta > span:last-child { display: none; }
      .nav-links { position: absolute; left: 20px; right: 20px; top: calc(100% + 10px); display: none; align-items: stretch; flex-direction: column; gap: 5px; padding: 20px; border-radius: 18px; background: white; box-shadow: var(--shadow); }
      .nav-links.open { display: flex; }
      .nav-links a { padding: 11px 8px; }
      .menu-toggle { display: block; }
      .hero-grid, .process-grid, .values-grid, .quote-grid { grid-template-columns: 1fr; }
      .hero { padding-top: 58px; }
      .hero-media { min-height: 510px; max-width: 700px; }
      .hero-photo { height: 470px; }
      .service-grid { grid-template-columns: 1fr 1fr; }
      .service-card:last-child { grid-column: 1 / -1; }
      .process-grid, .values-grid, .quote-grid { gap: 54px; }
      .fleet-card { min-height: 520px; }
    }

    @media (max-width: 680px) {
      .shell { width: min(100% - 28px, 1180px); }
      .topbar .shell { justify-content: center; min-height: 34px; }
      .topbar > .shell > span { display: none; }
      .nav { min-height: 74px; }
      .brand-mark { width: 42px; height: 42px; }
      .brand-tag { display: none; }
      .hero { padding: 45px 0 66px; }
      .hero h1 { font-size: clamp(3.25rem, 17vw, 5rem); }
      .hero-actions { display: grid; }
      .button { width: 100%; }
      .hero-media { min-height: 430px; margin-top: 10px; }
      .hero-photo { width: 94%; height: 400px; border-radius: 24px 24px 70px 24px; }
      .direction-card { max-width: 260px; padding: 20px; }
      .trust-grid { grid-template-columns: 1fr; }
      .trust-item { min-height: auto; border-right: 0; border-bottom: 1px solid var(--line); padding: 20px 0; }
      .trust-item:last-child { border-bottom: 0; }
      .services, .process, .fleet, .values, .quote { padding: 82px 0; }
      .section-head { align-items: start; flex-direction: column; gap: 22px; }
      .service-grid { grid-template-columns: 1fr; margin-top: 38px; }
      .service-card:last-child { grid-column: auto; }
      .service-card { min-height: 325px; }
      .values-list, .form-grid { grid-template-columns: 1fr; }
      .fleet-card { min-height: 500px; padding: 28px; border-radius: 24px; }
      .fleet-card img { object-position: 37% center; }
      .quote-form { padding: 22px; }
      .field.full { grid-column: auto; }
      .footer-grid { grid-template-columns: 1fr; gap: 36px; }
      .footer-bottom { flex-direction: column; gap: 8px; }
    }

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

    /* Premium motion system */
    .page-loader {
      position: fixed;
      inset: 0;
      z-index: 1000;
      display: grid;
      place-items: center;
      background: var(--navy-deep);
      color: white;
      pointer-events: none;
      animation: loaderLeave .7s cubic-bezier(.77,0,.18,1) .72s forwards;
    }
    .loader-lockup { display: grid; place-items: center; gap: 14px; animation: loaderPulse .8s ease both; }
    .loader-lockup svg { width: 72px; filter: drop-shadow(0 16px 30px rgba(0,0,0,.22)); }
    .loader-lockup span { color: rgba(255,255,255,.65); font-size: .72rem; font-weight: 800; letter-spacing: .24em; }
    @keyframes loaderPulse { from { opacity: 0; transform: translateY(18px) scale(.94); } to { opacity: 1; transform: none; } }
    @keyframes loaderLeave { to { visibility: hidden; transform: translateY(-100%); } }

    .scroll-progress { position: fixed; z-index: 80; left: 0; top: 0; width: 100%; height: 3px; transform: scaleX(0); transform-origin: left; background: linear-gradient(90deg,var(--teal),#70d9cf); box-shadow: 0 0 18px rgba(15,157,142,.45); }
    .pointer-glow { position: fixed; z-index: 0; width: 420px; height: 420px; border-radius: 50%; pointer-events: none; opacity: .2; background: radial-gradient(circle,rgba(15,157,142,.18),transparent 66%); transform: translate(-50%,-50%); transition: opacity .3s ease; }
    .site-header { transition: box-shadow .3s ease, background .3s ease; }
    .site-header.scrolled { background: rgba(246,244,239,.96); box-shadow: 0 12px 36px rgba(9,33,43,.08); }

    .route-line { position: absolute; z-index: -1; inset: 8% auto auto 2%; width: 68%; opacity: .34; pointer-events: none; }
    .route-line path { fill: none; stroke: var(--teal); stroke-width: 2; stroke-dasharray: 9 13; animation: routeMove 18s linear infinite; }
    .route-line circle { fill: var(--teal); filter: drop-shadow(0 0 6px rgba(15,157,142,.5)); }
    @keyframes routeMove { to { stroke-dashoffset: -440; } }
    .hero-copy > * { opacity: 0; transform: translateY(30px); animation: heroEnter .85s cubic-bezier(.2,.75,.2,1) forwards; }
    .hero-copy > *:nth-child(1) { animation-delay: .72s; }
    .hero-copy > *:nth-child(2) { animation-delay: .82s; }
    .hero-copy > *:nth-child(3) { animation-delay: .92s; }
    .hero-copy > *:nth-child(4) { animation-delay: 1.02s; }
    .hero-copy > *:nth-child(5) { animation-delay: 1.12s; }
    @keyframes heroEnter { to { opacity: 1; transform: none; } }
    .hero h1 .line { display: block; overflow: hidden; }
    .hero h1 .line:first-child { color: var(--navy); }
    .hero h1 .line:last-child { color: var(--teal); }
    .hero h1 .line:last-child { padding-bottom: .1em; }
    .hero-media { opacity: 0; transform: translateY(24px) scale(.98); animation: mediaEnter 1s cubic-bezier(.2,.75,.2,1) .88s forwards; }
    @keyframes mediaEnter { to { opacity: 1; transform: none; } }
    .hero-photo { will-change: transform; transform: translate3d(0,var(--hero-parallax,0),0) scale(1.035); transition: filter .4s ease; }
    .hero-media:hover .hero-photo { filter: saturate(1.06) contrast(1.02); }
    .orbit-badge { position: absolute; right: -18px; bottom: 44px; width: 116px; height: 116px; display: grid; place-items: center; border-radius: 50%; background: var(--sand); color: var(--navy); box-shadow: 0 18px 45px rgba(9,33,43,.18); animation: badgeFloat 5s ease-in-out infinite; }
    .orbit-badge::before { content: ""; position: absolute; inset: 10px; border: 1px dashed rgba(15,45,58,.28); border-radius: 50%; animation: badgeSpin 16s linear infinite; }
    .orbit-badge b { position: relative; z-index: 1; color: var(--teal); font-size: 2.35rem; line-height: 1; }
    .orbit-badge span { position: absolute; bottom: 20px; font-size: .56rem; font-weight: 850; letter-spacing: .14em; }
    @keyframes badgeFloat { 50% { transform: translateY(-10px); } }
    @keyframes badgeSpin { to { transform: rotate(360deg); } }
    .direction-card svg { animation: arrowLift 2.8s ease-in-out infinite; }
    @keyframes arrowLift { 50% { transform: translateY(-6px); } }

    .marquee { overflow: hidden; padding: 17px 0; background: var(--teal); color: white; white-space: nowrap; }
    .marquee-track { display: inline-flex; min-width: max-content; align-items: center; gap: 32px; animation: marqueeMove 28s linear infinite; }
    .marquee-track span { display: inline-flex; align-items: center; gap: 32px; font-size: .82rem; font-weight: 900; letter-spacing: .18em; text-transform: uppercase; }
    .marquee-track span::after { content: "↑"; color: var(--navy); font-size: 1.15rem; }
    @keyframes marqueeMove { to { transform: translateX(-50%); } }

    .motion-ready [data-reveal] { opacity: 0; transform: translateY(44px); transition: opacity .8s cubic-bezier(.2,.75,.2,1) var(--delay,0s), transform .8s cubic-bezier(.2,.75,.2,1) var(--delay,0s); }
    .motion-ready [data-reveal].is-visible { opacity: 1; transform: none; }
    .service-card { isolation: isolate; transform-style: preserve-3d; }
    .service-card::before { content: ""; position: absolute; z-index: -1; inset: 0; opacity: 0; background: radial-gradient(500px circle at var(--mx,50%) var(--my,50%),rgba(15,157,142,.13),transparent 42%); transition: opacity .3s ease; }
    .service-card:hover::before { opacity: 1; }
    .service-card.featured::before { background: radial-gradient(500px circle at var(--mx,50%) var(--my,50%),rgba(112,217,207,.18),transparent 42%); }
    .step { transition: padding-left .35s ease, background .35s ease; }
    .step:hover { padding-left: 14px; background: linear-gradient(90deg,rgba(15,157,142,.09),transparent); }
    .fleet-card img { will-change: transform; transform: translate3d(0,var(--fleet-parallax,0),0) scale(1.07); }

    .statement { position: relative; overflow: hidden; padding: 94px 0; background: var(--teal); color: white; }
    .statement::before { content: "N"; position: absolute; right: -3vw; top: -140px; color: rgba(255,255,255,.1); font-size: min(38vw,520px); font-weight: 900; line-height: 1; letter-spacing: -.15em; transform: rotate(-5deg); }
    .statement-grid { position: relative; display: grid; grid-template-columns: 1fr auto; gap: 50px; align-items: center; }
    .statement h2 { max-width: 830px; margin: 0; font-size: clamp(2.8rem,6vw,6rem); line-height: .94; letter-spacing: -.07em; }
    .statement-arrow { width: 106px; height: 106px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.42); border-radius: 50%; font-size: 3rem; transition: transform .35s ease, background .35s ease; }
    .statement a:hover .statement-arrow { transform: rotate(45deg) scale(1.06); background: white; color: var(--teal); }

    .faq { padding: 120px 0; background: white; }
    .faq-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 90px; align-items: start; }
    .faq-list { border-top: 1px solid var(--line); }
    .faq details { border-bottom: 1px solid var(--line); }
    .faq summary { position: relative; list-style: none; padding: 26px 54px 26px 0; color: var(--navy); font-size: 1.08rem; font-weight: 800; cursor: pointer; }
    .faq summary::-webkit-details-marker { display: none; }
    .faq summary::after { content: "+"; position: absolute; right: 4px; top: 20px; width: 34px; height: 34px; display: grid; place-items: center; border-radius: 50%; background: rgba(15,157,142,.1); color: var(--teal-dark); font-size: 1.35rem; transition: transform .3s ease, background .3s ease; }
    .faq details[open] summary::after { transform: rotate(45deg); background: var(--teal); color: white; }
    .faq-answer { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .4s ease; }
    .faq details[open] .faq-answer { grid-template-rows: 1fr; }
    .faq-answer > div { overflow: hidden; }
    .faq-answer p { margin: 0; padding: 0 54px 26px 0; color: #60737a; }

    .floating-quote { position: fixed; z-index: 25; right: 22px; bottom: 22px; min-height: 54px; display: flex; align-items: center; gap: 11px; padding: 0 18px 0 10px; border-radius: 999px; background: var(--navy); color: white; font-size: .86rem; font-weight: 850; box-shadow: 0 18px 45px rgba(9,33,43,.28); transform: translateY(120px); transition: transform .45s cubic-bezier(.2,.75,.2,1), background .25s ease; }
    .floating-quote.show { transform: translateY(0); }
    .floating-quote i { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 50%; background: var(--teal); font-style: normal; }
    .floating-quote:hover { background: var(--teal-dark); }

    @media (max-width: 980px) {
      .faq-grid { grid-template-columns: 1fr; gap: 48px; }
      .statement-grid { grid-template-columns: 1fr; }
      .statement-arrow { width: 84px; height: 84px; }
      .orbit-badge { right: -4px; }
    }
    @media (max-width: 680px) {
      .pointer-glow, .route-line { display: none; }
      .orbit-badge { width: 94px; height: 94px; right: 0; bottom: 36px; }
      .orbit-badge b { font-size: 1.9rem; }
      .orbit-badge span { bottom: 15px; }
      .faq, .statement { padding: 78px 0; }
      .statement-arrow { width: 72px; height: 72px; font-size: 2.35rem; }
      .floating-quote { right: 14px; bottom: 14px; }
    }
    @media (hover: none), (pointer: coarse) { .pointer-glow { display: none; } }
    @media (prefers-reduced-motion: reduce) {
      .page-loader { display: none; }
      .hero-copy > *, .hero-media { opacity: 1; transform: none; animation: none; }
      .route-line path, .orbit-badge, .orbit-badge::before, .direction-card svg, .marquee-track { animation: none; }
      .motion-ready [data-reveal] { opacity: 1; transform: none; }
    }
  
.nav-links{gap:22px}.nav-services{position:relative}.nav-services summary{cursor:pointer;list-style:none;padding:10px 0;display:flex;align-items:center;gap:8px}.nav-services summary::-webkit-details-marker{display:none}.nav-services summary::after{content:'+';font-size:1.1rem;color:var(--teal-dark)}.nav-services[open] summary::after{content:'−'}.service-menu{position:absolute;top:100%;left:-22px;width:270px;padding:16px;background:white;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:12px;display:grid;gap:4px}.service-menu a{padding:10px;font-size:.94rem}.service-menu a:hover{background:var(--sand)}.nav-links a[aria-current=page]{color:var(--teal-dark)}
.subhero{padding:68px 0 78px;border-bottom:1px solid var(--line)}.breadcrumbs{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:42px;color:var(--graphite);font-size:.9rem}.breadcrumbs a:hover{text-decoration:underline}.subhero-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:70px;align-items:end}.subhero h1{margin:0;font-size:clamp(2.7rem,6vw,5.6rem);letter-spacing:-.065em;line-height:1.05;max-width:950px}.subhero h1 em{font-style:normal;color:var(--teal-dark)}.subhero .lead{font-size:1.16rem;color:#52666e;max-width:760px;margin:26px 0 0}.hero-aside{border-left:1px solid var(--line);padding-left:30px;color:#52666e}.hero-aside strong{display:block;color:var(--navy);font-size:1.35rem;margin-bottom:12px}.hero-aside .button{margin-top:20px}.content-section{padding:78px 0;border-bottom:1px solid var(--line)}.content-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:80px}.content-grid h2{font-size:clamp(2rem,3vw,3rem);letter-spacing:-.055em;line-height:1.15;margin:0}.content-grid p{color:#52666e}.lined-list{margin:0;padding:0;list-style:none}.lined-list li{padding:20px 0;border-bottom:1px solid var(--line)}.lined-list li:first-child{padding-top:0}.lined-list li:last-child{border:0}.lined-list strong{display:block;font-size:1.2rem;color:var(--navy);margin-bottom:6px}.lined-list p{margin:0}.note{margin-top:30px;padding:22px;border-left:3px solid var(--teal);background:white;color:#52666e}.page-image{width:100%;height:400px;object-fit:cover;border-radius:16px;margin-top:40px}.editorial{padding:85px 0}.story-list{margin-top:36px}.story-row{display:grid;grid-template-columns:160px 1fr 155px;gap:30px;align-items:center;padding:32px 0;border-top:1px solid var(--line)}.story-row:last-child{border-bottom:1px solid var(--line)}.story-row .category{color:var(--teal-dark);font-weight:700;font-size:.9rem}.story-row h3{font-size:1.7rem;line-height:1.2;letter-spacing:-.04em;margin:0 0 12px}.story-row h3 a:hover{color:var(--teal-dark)}.story-row p{margin:0;max-width:680px;color:#52666e}.text-link{font-weight:750;border-bottom:1px solid var(--teal);padding-bottom:4px;width:fit-content}.story-row .reading{font-size:.9rem;color:var(--graphite);margin-bottom:14px}.article-layout{display:grid;grid-template-columns:230px 1fr;gap:85px;padding:68px 0}.article-toc{position:sticky;top:120px;align-self:start}.article-toc strong{display:block;margin-bottom:18px}.article-toc a{display:block;color:#52666e;padding:8px 0;font-size:.94rem}.article-toc a:hover{color:var(--teal-dark)}.article-body{max-width:760px}.article-body section{margin-bottom:46px;scroll-margin-top:130px}.article-body h2{font-size:2rem;letter-spacing:-.04em;line-height:1.15}.article-body p,.article-body li{font-size:1.05rem;line-height:1.85;color:#52666e}.article-body li{margin-bottom:12px}.article-body ul,.article-body ol{padding-left:24px}.related{background:white}.demo-label{color:#52666e;font-size:.92rem;line-height:1.6;text-align:left}.quick-service{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}.quick-service a{padding:12px 18px;border:1px solid var(--line);border-radius:8px;font-weight:700}.quick-service a:hover{background:white;color:var(--teal-dark)}
@media(max-width:980px){.nav-services summary{padding:11px 8px}.service-menu{position:static;width:100%;border:0;box-shadow:none;padding:4px 12px;background:var(--sand)}.subhero-grid{gap:32px;grid-template-columns:1fr}.hero-aside{max-width:640px}.content-grid{gap:38px;grid-template-columns:1fr}.article-layout{gap:40px;grid-template-columns:190px 1fr}.story-row{grid-template-columns:110px 1fr}.story-action{grid-column:2}}
@media(max-width:680px){.subhero{padding:35px 0 48px}.breadcrumbs{margin-bottom:30px}.subhero h1{font-size:clamp(2.6rem,12vw,4.4rem)}.subhero .lead{font-size:1.05rem}.hero-aside{padding-left:20px}.content-section,.editorial{padding:52px 0}.story-row{grid-template-columns:1fr;gap:12px}.story-action{grid-column:auto}.article-layout{display:block;padding:40px 0}.article-toc{position:static;border-bottom:1px solid var(--line);padding-bottom:24px;margin-bottom:34px}.article-toc a{padding:6px 0}.page-image{height:270px}.footer-bottom{flex-direction:column;gap:10px}.quick-service a{width:100%}}

.skip-link{position:fixed;z-index:1200;top:10px;left:10px;padding:12px 18px;background:white;border:2px solid var(--teal);transform:translateY(-150%)}.skip-link:focus{transform:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}
.brand-lockup{width:230px;height:auto}.nav{position:relative}.nav-services{position:static}.service-menu{left:auto;right:0;top:100%;width:min(940px,100%);padding:30px;border-radius:0 0 14px 14px;background:var(--sand);border-top:3px solid var(--teal)}.mega-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:22px;font-size:.9rem;color:#52666e}.mega-heading a{font-weight:750;border-bottom:1px solid var(--teal);padding:0}.mega-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.mega-grid>a{display:flex;flex-direction:column;gap:12px;padding:20px;border-left:1px solid var(--line);border-radius:0}.mega-grid>a:hover{background:white}.mega-grid strong{font-family:Montserrat,sans-serif;font-size:1.2rem}.mega-grid>a>span:last-child{font-weight:400;color:#52666e;line-height:1.6}.mega-no{color:var(--teal-dark);font-size:.9rem}
.hero{padding:65px 0 75px}.hero h1{font-size:clamp(3.1rem,5.5vw,5.8rem);line-height:1.04;letter-spacing:-.065em}.hero-copy>*{animation-delay:.1s!important}.hero-media{animation-delay:.2s;min-height:540px}.hero-photo{width:100%;height:510px;border-radius:4px 4px 72px 4px;object-position:35% center;box-shadow:none}.hero-media::after{display:none}.route-line,.pointer-glow{display:none}.direction-card{left:-26px;bottom:2px;border-radius:4px;max-width:310px;padding:24px}.hero-service-links{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px;color:#52666e;font-size:.9rem}.hero-service-links a{border-bottom:1px solid var(--line);padding-bottom:6px}.hero-service-links a:hover{color:var(--teal-dark)}.photo-caption{position:absolute;right:18px;bottom:45px;background:var(--sand);padding:8px 14px;font-size:.8rem;font-weight:700}.button{border-radius:8px;box-shadow:none;line-height:1.25}.button:hover{box-shadow:none}.service-card{border-radius:6px;min-height:320px;border:0;border-top:3px solid var(--line);box-shadow:none}.service-card h3{margin-top:62px}.service-card.featured{border-top-color:var(--teal)}.service-card:hover{transform:translateY(-5px)}.trust-icon{font-variant-numeric:tabular-nums;line-height:1}.subhero{padding-top:45px}.subhero h1{line-height:1.1;letter-spacing:-.055em}.hero-aside{font-size:1rem}.content-section h2{line-height:1.18}.article-body{max-width:720px}.article-toc{padding-left:20px;border-left:2px solid var(--teal)}
body[data-service=flyttstadning] .subhero{background:white}body[data-service=foretagsflytt] .subhero{background:var(--navy);color:white}body[data-service=foretagsflytt] .subhero .lead,body[data-service=foretagsflytt] .breadcrumbs,body[data-service=foretagsflytt] .hero-aside{color:#d6e5e8}body[data-service=foretagsflytt] .subhero h1 em,body[data-service=foretagsflytt] .hero-aside strong,body[data-service=foretagsflytt] .eyebrow{color:#70d9cf}.clean-feature{background:var(--teal-dark);color:white}.clean-feature .eyebrow{color:#d6f0ed}.clean-feature h2{font-size:clamp(2.5rem,5vw,4.8rem);letter-spacing:-.05em}.clean-scope{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.clean-scope>div{border-top:1px solid #ffffff60;padding-top:24px}.clean-scope span{display:block;font-size:1rem;margin-bottom:20px;color:#d6f0ed}.clean-scope strong{font-family:Montserrat;font-size:1.5rem}.clean-scope p{color:#e4f6f3}.business-ribbon{background:var(--teal);padding:34px 0}.business-ribbon .shell{display:flex;flex-wrap:wrap;align-items:center;gap:26px;color:white}.business-ribbon strong{font-family:Montserrat;font-size:1.65rem}.business-ribbon span{margin-right:auto}
.quote-planner{background:#eeece6}.quote-planner .quote-grid{grid-template-columns:.9fr 1.1fr;gap:65px;align-items:start}.planner-form{border-radius:8px;box-shadow:0 20px 60px #0f2d3a0a;padding:32px}.planner-intro{position:sticky;top:120px}.planner-benefits{list-style:none;padding:0;counter-reset:benefit;margin:32px 0}.planner-benefits li{counter-increment:benefit;padding:16px 0;border-top:1px solid var(--line);display:flex;gap:20px;align-items:center}.planner-benefits li::before{content:'0' counter(benefit);color:var(--teal-dark);font-weight:800}.planner-note{font-size:.9rem;color:#52666e;line-height:1.65;margin-top:22px}.planner-progress{display:flex;gap:14px;padding-bottom:22px;margin-bottom:26px;border-bottom:1px solid var(--line);flex-wrap:wrap;font-size:.875rem;color:#6b7280}.planner-progress .active{font-weight:800;color:var(--teal-dark)}.planner-step h3{font-size:1.5rem;letter-spacing:-.04em;margin:0 0 25px}.planner-service{width:100%;padding:16px;border:1px solid var(--line);background:var(--sand);color:var(--navy);font-weight:750;margin-bottom:24px;border-radius:6px}.planner-controls{display:flex;gap:12px;justify-content:flex-end;margin-top:30px}.planner-controls .button{min-width:130px}.planner-controls .secondary{margin-right:auto}.check-line{display:flex!important;gap:10px;align-items:center;margin-top:12px;font-weight:400!important}.check-line input{width:18px;height:18px;min-height:18px}.request-summary{margin:0}.request-summary>div{display:grid;grid-template-columns:120px 1fr;gap:15px;padding:12px 0;border-top:1px solid var(--line)}.request-summary dt{font-size:.875rem;color:#62757c}.request-summary dd{margin:0;color:var(--navy);overflow-wrap:anywhere}.planner-error{color:#8c2929;background:#fff0ed;padding:15px;margin-bottom:20px;border-radius:6px}.planner-step{min-height:270px}input,select,textarea{font-size:1rem!important}.field input,.field select,.field textarea{border-radius:6px}.field input:focus,.field textarea:focus,.field select:focus{outline:2px solid var(--teal);outline-offset:2px}
@media(min-width:981px){.nav-links{gap:24px}.nav{gap:18px}.nav-links>.button{min-height:46px;padding:0 18px}}
@media(max-width:980px){.service-menu{position:static;width:100%;padding:16px;box-shadow:none;border:0}.mega-grid{grid-template-columns:1fr;gap:0}.mega-grid>a{padding:14px 8px;border-left:0;border-top:1px solid var(--line);gap:6px}.mega-no{display:none}.mega-heading{font-size:.875rem;margin-bottom:14px}.mega-grid>a>span:last-child{font-size:.9rem}.brand-lockup{width:215px}.quote-planner .quote-grid{grid-template-columns:1fr;gap:35px}.planner-intro{position:static}.hero-media{min-height:490px}.hero-photo{height:460px}.hero-grid{gap:50px}.clean-scope{gap:24px}.nav-links{max-height:calc(100dvh - 115px);overflow:auto}}
@media(max-width:680px){.hero{padding:38px 0 55px}.hero h1{font-size:clamp(2.75rem,11vw,4.8rem);letter-spacing:-.065em}.hero .eyebrow{font-size:.75rem;letter-spacing:.08em}.hero-media{min-height:430px}.hero-photo{width:100%;height:350px;object-position:35% center;border-radius:4px 4px 42px 4px}.direction-card{left:14px;right:14px;max-width:none;bottom:0;padding:18px}.direction-card strong{margin:0 0 5px}.direction-card svg{display:none}.photo-caption{bottom:96px;font-size:.75rem;right:12px}.brand-lockup{width:190px}.mega-heading{align-items:start;flex-direction:column}.hero-service-links{gap:16px;font-size:.875rem}.planner-form{padding:22px 18px}.planner-progress{gap:12px;font-size:.875rem}.planner-controls{flex-wrap:wrap}.planner-controls .button{width:auto;flex:1;min-width:100px}.request-summary>div{grid-template-columns:95px 1fr}.clean-scope{grid-template-columns:1fr}.clean-feature h2{font-size:2.7rem}.business-ribbon .shell{gap:12px}.business-ribbon span{width:100%}.business-ribbon strong{font-size:1.25rem}.quote-planner .section-title{font-size:2.5rem}.footer .brand-lockup{width:215px}.service-card h3{margin-top:45px}.content-grid{gap:26px}.article-toc{margin-top:5px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.hero-copy>*,.hero-media{opacity:1;transform:none}.motion-ready [data-reveal]{opacity:1;transform:none}}

/* Keep vehicle photos less cropped, including on small screens. */
.hero-photo{width:88%;height:auto;max-height:450px;margin:28px auto 0;object-fit:contain;object-position:center;transform:none;background:var(--sand)}
.fleet-card{min-height:480px;background:var(--navy)}
.fleet-card img{object-fit:contain;object-position:center;transform:none}
.page-image{height:auto;max-height:480px;object-fit:contain;background:var(--sand)}
@media(max-width:680px){.fleet-card{min-height:500px}.fleet-card img{object-position:center top}.hero-photo{width:88%;height:auto;max-height:350px;margin:20px auto 0;object-position:center}}

/* A quieter, practical expression for MoveNord. */
.nav-links>a,.nav-services summary{font-weight:600}.button{font-weight:600;border-radius:3px;box-shadow:none}.button:hover{transform:none;box-shadow:none}.eyebrow{letter-spacing:.08em;font-weight:600}.section-title{letter-spacing:-.035em;line-height:1.14;font-weight:650}.natural-home .hero::before,.natural-home .hero::after{display:none}.natural-home .hero{padding:64px 0 56px;background:#fff}.natural-home .hero-grid{grid-template-columns:1fr 1fr;gap:72px;align-items:center}.natural-home .hero-copy>*{animation:none;opacity:1;transform:none}.natural-home .hero .eyebrow{font-size:.9rem;letter-spacing:.025em;text-transform:none;color:#52666e;margin:0 0 26px}.natural-home .hero h1{font-size:clamp(2.7rem,4.1vw,4rem);line-height:1.1;letter-spacing:-.045em;font-weight:650;max-width:560px;margin:0 0 28px;color:var(--navy)}.natural-home .hero-lead{font-size:1.1rem;line-height:1.8;margin:0;max-width:520px;color:#344f59}.hero-detail{font-size:1rem;line-height:1.8;color:#62747b;margin:18px 0 0;max-width:490px}.natural-home .hero-actions{gap:24px;margin-top:30px;align-items:center}.plain-link{font-size:.95rem;font-weight:500;text-decoration:underline;text-underline-offset:5px}.natural-home .hero-media{margin:0;min-height:0;animation:none;transform:none;opacity:1}.natural-home .hero-photo{display:block;width:100%;height:auto;max-height:none;margin:0;border-radius:0;object-fit:contain;transform:none}.natural-home .hero-media figcaption{font-size:.875rem;color:#62747b;padding-top:13px}.natural-home .services{background:#fff;padding:48px 0 72px;border-top:1px solid var(--line)}.natural-home .service-grid{grid-template-columns:repeat(2,1fr);gap:0 54px;margin-top:32px}.natural-home .service-card{background:transparent!important;border-radius:0;border:0;border-top:1px solid var(--line);padding:30px 0;min-height:0;box-shadow:none!important;transform:none!important}.natural-home .service-card::before,.natural-home .service-card::after{display:none}.natural-home .service-card h3{margin:0 0 13px;font-size:1.5rem;letter-spacing:-.025em}.natural-home .service-card p{margin:0 0 20px}.natural-home .service-link{position:static;margin:0;font-weight:600;font-size:.95rem;text-decoration:underline;text-underline-offset:5px}.natural-home .service-card.featured{color:var(--navy)}.natural-home .service-card.featured p{color:#52666e}.natural-home .service-card.featured a{color:var(--navy)}.natural-home .service-card:last-child{grid-column:auto}.natural-home .fleet-card{border-radius:0}.natural-home .fleet-copy h2{font-size:clamp(2rem,3.5vw,3.5rem);letter-spacing:-.035em}.natural-home .statement{background:#fff}.natural-home .floating-quote{display:none}
@media(max-width:980px){.natural-home .hero-grid{gap:36px}.natural-home .hero-actions{align-items:flex-start;flex-direction:column;gap:20px}}
@media(max-width:680px){.natural-home .hero{padding:38px 0}.natural-home .hero-grid{grid-template-columns:1fr;gap:34px}.natural-home .hero h1{font-size:2.8rem;letter-spacing:-.04em}.natural-home .hero-actions{display:flex}.natural-home .hero-actions .button{width:auto}.natural-home .hero-photo{width:100%;height:auto;max-height:none;margin:0}.natural-home .service-grid{grid-template-columns:1fr}.natural-home .services{padding:38px 0 45px}.natural-home .service-card{padding:26px 0}}


/* Fix: statement section was white-on-white on the natural home theme. */
.natural-home .statement h2{color:var(--navy)}
.natural-home .statement::before{color:rgba(15,45,58,.05)}
.natural-home .statement .statement-arrow{border-color:rgba(15,45,58,.35);color:var(--navy)}
.natural-home .statement a:hover .statement-arrow{background:var(--navy);color:white}

/* New homepage hero: dark, confident, fact strip replaces paragraph copy. */
.intro-hero{background:linear-gradient(160deg,var(--navy) 0%,var(--navy-deep) 100%);color:#fff;padding:72px 0 0}
.intro-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:64px;align-items:center;padding-bottom:60px}
.intro-copy h1{margin:0;font-size:clamp(2.7rem,3.9vw,3.55rem);line-height:1.05;letter-spacing:-.04em;font-weight:650}
.intro-copy h1 span{display:block}
.intro-copy h1 .accent{color:#5fd0c3}
.intro-lead{max-width:520px;margin:24px 0 0;color:#c2d4d8;font-size:1.12rem;line-height:1.75}
.intro-actions{display:flex;flex-wrap:wrap;gap:16px;margin-top:34px}
.intro-actions .button{width:auto}
.button.ghost{background:transparent;border-color:rgba(255,255,255,.4);color:#fff;box-shadow:none}
.button.ghost:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.6)}
.intro-media{margin:0}
.intro-media img{width:100%;height:480px;object-fit:cover;object-position:35% center;border-radius:6px 6px 72px 6px;box-shadow:0 30px 70px rgba(0,0,0,.35)}
.intro-facts{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.16);padding-bottom:8px}
.intro-facts>div{padding:28px 34px 36px 0}
.intro-facts>div+div{padding-left:34px;border-left:1px solid rgba(255,255,255,.16)}
.intro-facts strong{display:block;margin-bottom:7px;font-family:Montserrat,Inter,sans-serif;font-size:1.02rem}
.intro-facts span{color:#aec2c7;font-size:.94rem;line-height:1.65}
@media(max-width:980px){
  .intro-grid{grid-template-columns:1fr;gap:38px;padding-bottom:44px}
  .intro-media img{height:380px}
  .intro-facts{grid-template-columns:1fr;padding-bottom:16px}
  .intro-facts>div{padding:18px 0}
  .intro-facts>div+div{padding-left:0;border-left:0;border-top:1px solid rgba(255,255,255,.16)}
}
@media(max-width:680px){
  .intro-hero{padding-top:44px}
  .intro-copy h1{font-size:2.55rem}
  .intro-actions .button{width:100%}
  .intro-media img{height:300px;border-radius:6px 6px 48px 6px}
}
