
    :root {
      --paper: #ffffff;
      --paper-alt: #f5f5f5;
      --ink: #242424;
      --dark: #1d1d1d;
      --muted: #666666;
      --gold: #e3b25a;
      --logo-gold: #cca352;
      --line: rgba(36, 36, 36, .18);
      --line-dark: rgba(255, 255, 255, .2);
      --white: #ffffff;
      --gutter: clamp(20px, 4.2vw, 72px);
      --max: 1540px;
      --ease: cubic-bezier(.22, 1, .36, 1);
    }

    *, *::before, *::after { box-sizing: border-box; }
    html { scroll-behavior: smooth; }
    body {
      margin: 0;
      overflow-x: hidden;
      background: var(--paper);
      color: var(--ink);
      font-family: Manrope, "Helvetica Neue", Arial, sans-serif;
      -webkit-font-smoothing: antialiased;
      text-rendering: optimizeLegibility;
    }
    body.menu-open { overflow: hidden; }
    img { display: block; width: 100%; }
    a { color: inherit; text-decoration: none; }
    button { color: inherit; font: inherit; }
    h1, h2, h3, p { margin-top: 0; }
    h1, h2, h3 { font-weight: 400; }
    button, a { -webkit-tap-highlight-color: transparent; }
    :focus-visible { outline: 2px solid var(--gold); outline-offset: 4px; }

    .skip-link {
      position: fixed;
      z-index: 1000;
      top: 12px;
      left: 12px;
      padding: 12px 16px;
      transform: translateY(-140%);
      background: var(--white);
      color: var(--ink);
    }
    .skip-link:focus { transform: translateY(0); }

    .scroll-progress {
      position: fixed;
      z-index: 301;
      top: 0;
      left: 0;
      width: 0;
      height: 2px;
      background: var(--gold);
      pointer-events: none;
    }

    .site-header {
      position: fixed;
      z-index: 300;
      top: 0;
      left: 0;
      width: 100%;
      color: var(--white);
      transition: background-color .45s ease, backdrop-filter .45s ease;
    }
    .site-header.scrolled {
      background: rgba(22, 22, 22, .9);
      -webkit-backdrop-filter: blur(16px);
      backdrop-filter: blur(16px);
    }
    .nav-shell {
      width: min(100%, var(--max));
      height: 96px;
      margin: 0 auto;
      padding: 0 var(--gutter);
      display: grid;
      grid-template-columns: 1fr auto 1fr;
      align-items: center;
      border-bottom: 1px solid rgba(255, 255, 255, .24);
    }
    .brand {
      width: max-content;
      display: inline-flex;
      align-items: center;
      gap: 13px;
    }
    .brand img { width: 48px; height: 48px; object-fit: contain; }
    .brand-text { display: grid; gap: 1px; }
    .brand-text strong { font-size: 13px; font-weight: 600; letter-spacing: .13em; }
    .brand-text small { color: rgba(255,255,255,.68); font-size: 9px; letter-spacing: .15em; text-transform: uppercase; }
    .desktop-nav { display: flex; gap: clamp(24px, 2.5vw, 42px); align-items: center; }
    .desktop-nav a, .header-action { font-size: 13px; }
    .desktop-nav a { position: relative; }
    .desktop-nav a::after {
      content: "";
      position: absolute;
      right: 0;
      bottom: -7px;
      left: 0;
      height: 1px;
      transform: scaleX(0);
      transform-origin: right;
      background: currentColor;
      transition: transform .35s var(--ease);
    }
    .desktop-nav a:hover::after { transform: scaleX(1); transform-origin: left; }
    .header-tools { display: flex; justify-content: flex-end; align-items: center; gap: 20px; }
    .lang-switch { display: flex; align-items: center; gap: 7px; }
    .lang-button {
      padding: 0;
      border: 0;
      background: transparent;
      color: rgba(255,255,255,.58);
      font-size: 11px;
      cursor: pointer;
    }
    .lang-button.active { color: var(--gold); }
    .lang-divider { color: rgba(255,255,255,.3); font-size: 10px; }
    .menu-button {
      min-width: 74px;
      height: 38px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      border: 1px solid rgba(255,255,255,.5);
      border-radius: 999px;
      background: transparent;
      font-size: 11px;
      letter-spacing: .08em;
      cursor: pointer;
    }
    .menu-icon { position: relative; width: 15px; height: 8px; }
    .menu-icon::before, .menu-icon::after {
      content: "";
      position: absolute;
      left: 0;
      width: 15px;
      height: 1px;
      background: currentColor;
      transition: transform .35s var(--ease), top .35s var(--ease);
    }
    .menu-icon::before { top: 1px; }
    .menu-icon::after { top: 7px; }
    .menu-button[aria-expanded="true"] .menu-icon::before { top: 4px; transform: rotate(45deg); }
    .menu-button[aria-expanded="true"] .menu-icon::after { top: 4px; transform: rotate(-45deg); }

    .menu-overlay {
      position: fixed;
      z-index: 250;
      inset: 0;
      display: grid;
      grid-template-columns: minmax(260px, 34%) 1fr;
      visibility: hidden;
      opacity: 0;
      background: var(--dark);
      color: var(--white);
      transition: opacity .45s ease, visibility .45s;
    }
    .menu-overlay.open { visibility: visible; opacity: 1; }
    .menu-visual {
      position: relative;
      min-height: 100%;
      overflow: hidden;
      background: #101010;
    }
    .menu-visual::after { content: ""; position: absolute; inset: 0; background: rgba(0,0,0,.28); }
    .menu-visual img { height: 100%; object-fit: cover; }
    .menu-signature {
      position: absolute;
      z-index: 2;
      right: 32px;
      bottom: 32px;
      left: 32px;
    }
    .menu-signature img { width: min(230px, 80%); height: auto; object-fit: contain; }
    .menu-content {
      min-height: 100svh;
      padding: 138px var(--gutter) 42px;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
    }
    .menu-nav { display: grid; border-top: 1px solid var(--line-dark); }
    .menu-nav a {
      padding: 13px 0;
      display: flex;
      align-items: baseline;
      justify-content: space-between;
      gap: 20px;
      border-bottom: 1px solid var(--line-dark);
      font-size: clamp(29px, 4vw, 66px);
      line-height: 1.08;
      letter-spacing: -.045em;
    }
    .menu-nav a span:last-child { color: var(--gold); font-size: 15px; letter-spacing: 0; }
    .menu-contact {
      padding-top: 44px;
      display: flex;
      justify-content: space-between;
      gap: 24px;
      color: rgba(255,255,255,.66);
      font-size: 12px;
      line-height: 1.8;
    }

    .hero {
      position: relative;
      min-height: 760px;
      height: 100svh;
      overflow: hidden;
      display: flex;
      align-items: flex-end;
      color: var(--white);
      background: #161616;
    }
    .hero-media, .hero-shade { position: absolute; inset: 0; }
    .hero-media img { height: 100%; object-fit: cover; object-position: center 54%; transform: scale(1.015); }
    .hero-shade {
      background:
        linear-gradient(180deg, rgba(5,5,5,.3) 0%, rgba(5,5,5,.06) 36%, rgba(5,5,5,.75) 100%),
        linear-gradient(90deg, rgba(5,5,5,.28), transparent 62%);
    }
    .hero-inner {
      position: relative;
      z-index: 2;
      width: min(100%, var(--max));
      margin: 0 auto;
      padding: 160px var(--gutter) 52px;
    }
    .kicker {
      margin-bottom: 24px;
      color: var(--gold);
      font-size: 11px;
      font-weight: 500;
      letter-spacing: .17em;
      text-transform: uppercase;
    }
    .hero h1 {
      width: min(1010px, 90%);
      margin-bottom: 36px;
      font-size: clamp(55px, 7.7vw, 124px);
      line-height: .92;
      letter-spacing: -.063em;
    }
    .hero-actions { display: flex; align-items: center; gap: 18px; flex-wrap: wrap; }
    .pill-link {
      min-height: 58px;
      padding: 0 28px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 18px;
      border: 1px solid rgba(255,255,255,.7);
      border-radius: 999px;
      font-size: 14px;
      transition: color .3s ease, background .3s ease, border-color .3s ease;
    }
    .pill-link:hover { border-color: var(--white); background: var(--white); color: var(--ink); }
    .social-buttons { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 24px; }
    .social-buttons a { min-height: 44px; display: inline-flex; align-items: center; gap: 16px; padding: 10px 17px; border: 1px solid rgba(255,255,255,.5); border-radius: 999px; font-size: 14px; transition: background .2s ease, color .2s ease; }
    .social-buttons a:hover { background: var(--gold); border-color: var(--gold); color: var(--dark); }
    .social-buttons a span { color: var(--gold); }
    .social-buttons a:hover span { color: inherit; }
    .hero-index {
      margin-top: 72px;
      padding-top: 20px;
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 20px;
      border-top: 1px solid rgba(255,255,255,.3);
    }
    .hero-index a { display: grid; gap: 5px; color: rgba(255,255,255,.7); font-size: 11px; }
    .hero-index a span:first-child { color: var(--gold); font-size: 9px; letter-spacing: .12em; }
    .scroll-cue {
      position: absolute;
      z-index: 2;
      right: var(--gutter);
      bottom: 54px;
      width: 42px;
      height: 42px;
      display: grid;
      place-items: center;
      border: 1px solid rgba(255,255,255,.48);
      border-radius: 50%;
      font-size: 18px;
    }

    .section-shell { width: min(100%, var(--max)); margin: 0 auto; padding-inline: var(--gutter); }
    .studio-intro { padding: clamp(110px, 13vw, 200px) 0; background: var(--paper); }
    .intro-grid {
      display: grid;
      grid-template-columns: repeat(12, 1fr);
      gap: 28px;
    }
    .section-label { grid-column: 1 / span 3; font-size: 11px; letter-spacing: .15em; text-transform: uppercase; }
    .intro-main { grid-column: 4 / span 8; }
    .intro-main h2 {
      margin-bottom: 48px;
      font-size: clamp(42px, 5.7vw, 88px);
      line-height: .99;
      letter-spacing: -.055em;
    }
    .intro-columns {
      display: grid;
      grid-template-columns: 1.3fr .8fr;
      gap: clamp(32px, 6vw, 90px);
      align-items: start;
    }
    .intro-columns p { color: var(--muted); font-size: 15px; line-height: 1.75; }
    .benefits { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--line); }
    .benefits li { padding: 16px 0; display: grid; grid-template-columns: 24px 1fr; gap: 12px; border-bottom: 1px solid var(--line); font-size: 13px; line-height: 1.5; }
    .benefits li::before { content: "↗"; color: var(--gold); }

    .work-heading { padding: 30px var(--gutter); display: flex; justify-content: space-between; gap: 20px; align-items: baseline; background: var(--dark); color: var(--white); }
    .work-heading h2 { margin: 0; font-size: clamp(34px, 5vw, 76px); letter-spacing: -.05em; }
    .work-heading span { color: rgba(255,255,255,.6); font-size: 12px; }
    .project-panel {
      position: relative;
      min-height: 720px;
      height: min(88svh, 980px);
      overflow: hidden;
      color: var(--white);
      background: #161616;
    }
    .project-panel img { height: 100%; object-fit: cover; transition: transform 1.2s var(--ease); }
    .project-panel:hover img { transform: scale(1.025); }
    .project-panel::after {
      content: "";
      position: absolute;
      inset: 0;
      background: linear-gradient(180deg, rgba(0,0,0,.04) 35%, rgba(0,0,0,.75) 100%);
    }
    .project-panel.is-light::after { background: linear-gradient(180deg, rgba(0,0,0,.08) 36%, rgba(0,0,0,.78) 100%); }
    .project-content {
      position: absolute;
      z-index: 2;
      right: var(--gutter);
      bottom: 48px;
      left: var(--gutter);
    }
    .project-topline { margin-bottom: 20px; display: flex; justify-content: space-between; gap: 20px; color: rgba(255,255,255,.72); font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
    .project-content h3 {
      max-width: 1100px;
      margin: 0;
      font-size: clamp(44px, 6vw, 96px);
      line-height: .96;
      letter-spacing: -.055em;
    }

    .render-collection {
      overflow: hidden;
      padding: clamp(110px, 12vw, 190px) 0;
      background: var(--paper);
    }
    .render-collection.dark { background: var(--dark); color: var(--white); }
    .collection-head {
      margin-bottom: 68px;
      display: grid;
      grid-template-columns: repeat(12, 1fr);
      gap: 28px;
      align-items: end;
    }
    .collection-title { grid-column: 1 / span 8; }
    .collection-title h2 { margin-bottom: 0; font-size: clamp(46px, 6.2vw, 96px); line-height: .96; letter-spacing: -.058em; }
    .collection-copy { grid-column: 9 / span 4; }
    .collection-copy p { margin-bottom: 24px; color: var(--muted); font-size: 14px; line-height: 1.7; }
    .dark .collection-copy p { color: rgba(255,255,255,.58); }
    .collection-controls { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
    .motion-toggle {
      min-height: 46px;
      padding: 0 17px;
      display: inline-flex;
      align-items: center;
      gap: 9px;
      border: 1px solid var(--line);
      border-radius: 999px;
      background: transparent;
      font-size: 11px;
      cursor: pointer;
    }
    .dark .motion-toggle { border-color: var(--line-dark); }
    .motion-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--gold); box-shadow: 0 0 0 5px rgba(227,178,90,.12); }
    .motion-paused .motion-dot { background: #8a8984; box-shadow: none; }
    .render-track {
      width: 100%;
      padding: 0 var(--gutter) 26px;
      display: grid;
      grid-auto-flow: column;
      grid-auto-columns: min(72vw, 1080px);
      gap: clamp(18px, 2.5vw, 38px);
      overflow-x: auto;
      overscroll-behavior-inline: contain;
      scroll-snap-type: inline mandatory;
      scrollbar-width: thin;
      scrollbar-color: var(--gold) rgba(36,36,36,.12);
    }
    .dark .render-track { scrollbar-color: var(--gold) rgba(255,255,255,.13); }
    .render-card { scroll-snap-align: start; }
    .render-button { width: 100%; padding: 0; border: 0; background: transparent; color: inherit; text-align: left; cursor: zoom-in; }
    .render-media { display: block; position: relative; aspect-ratio: 16 / 9; overflow: hidden; background: #d8d7d2; }
    .render-media::after { content: "+"; position: absolute; z-index: 2; right: 18px; bottom: 18px; width: 42px; height: 42px; display: grid; place-items: center; border-radius: 50%; background: rgba(29,29,29,.84); color: var(--white); font-size: 20px; }
    .render-media img { height: 100%; object-fit: cover; }
    .render-meta { padding-top: 15px; display: flex; justify-content: space-between; gap: 20px; border-top: 1px solid var(--line); font-size: 13px; }
    .render-meta span:last-child { color: var(--muted); font-size: 11px; text-align: right; }
    .dark .render-meta { border-color: var(--line-dark); }
    .dark .render-meta span:last-child { color: rgba(255,255,255,.48); }

    .motion-media img { transform: scale(1.04); backface-visibility: hidden; }
    .motion-media.is-active img { will-change: transform; }
    body.motion-paused .motion-media img { animation-play-state: paused !important; }

    .floorplans {
      overflow: hidden;
      padding: clamp(110px, 12vw, 190px) 0;
      background: var(--paper-alt);
    }
    .floorplan-head {
      margin-bottom: 70px;
      display: grid;
      grid-template-columns: repeat(12, 1fr);
      gap: 28px;
      align-items: end;
    }
    .floorplan-title { grid-column: 1 / span 8; }
    .floorplan-title h2 { margin-bottom: 0; font-size: clamp(46px, 6.2vw, 96px); line-height: .96; letter-spacing: -.058em; }
    .floorplan-copy { grid-column: 9 / span 4; }
    .floorplan-copy p { margin-bottom: 24px; color: var(--muted); font-size: 14px; line-height: 1.7; }
    .slider-tools { display: flex; gap: 8px; }
    .round-button {
      width: 46px;
      height: 46px;
      border: 1px solid var(--line);
      border-radius: 50%;
      background: transparent;
      cursor: pointer;
      transition: background .25s ease, color .25s ease;
    }
    .round-button:hover { background: var(--ink); color: var(--white); }
    .dark .round-button { border-color: var(--line-dark); }
    .dark .round-button:hover { background: var(--white); color: var(--ink); }
    .floorplan-track {
      width: 100%;
      padding: 0 var(--gutter) 26px;
      display: grid;
      grid-auto-flow: column;
      grid-auto-columns: min(68vw, 980px);
      gap: clamp(18px, 2.5vw, 38px);
      overflow-x: auto;
      overscroll-behavior-inline: contain;
      scroll-snap-type: inline mandatory;
      scrollbar-width: thin;
      scrollbar-color: var(--gold) rgba(36,36,36,.12);
    }
    .floorplan-card { scroll-snap-align: start; }
    .floorplan-button { width: 100%; padding: 0; border: 0; background: transparent; text-align: left; cursor: zoom-in; }
    .floorplan-media { position: relative; aspect-ratio: 3 / 2; overflow: hidden; background: #e8e5df; }
    .floorplan-media::after { content: "+"; position: absolute; right: 18px; bottom: 18px; width: 42px; height: 42px; display: grid; place-items: center; border-radius: 50%; background: rgba(29,29,29,.86); color: var(--white); font-size: 20px; }
    .floorplan-media img { height: 100%; object-fit: cover; transition: transform .9s var(--ease); }
    .floorplan-button:hover img { transform: scale(1.025); }
    .floorplan-meta { padding-top: 15px; display: flex; justify-content: space-between; gap: 20px; border-top: 1px solid var(--line); font-size: 13px; }
    .floorplan-meta span:last-child { color: var(--muted); font-size: 11px; text-align: right; }

    .services { padding: clamp(110px, 12vw, 190px) 0; background: var(--dark); color: var(--white); }
    .services-head { margin-bottom: 64px; display: grid; grid-template-columns: repeat(12, 1fr); gap: 28px; }
    .services-head h2 { grid-column: 1 / span 7; margin: 0; font-size: clamp(48px, 6.5vw, 98px); line-height: .95; letter-spacing: -.06em; }
    .services-head p { grid-column: 9 / span 4; margin: 0; align-self: end; color: rgba(255,255,255,.58); font-size: 14px; line-height: 1.7; }
    .service-list { border-top: 1px solid var(--line-dark); }
    .service-row {
      padding: 27px 0;
      display: grid;
      grid-template-columns: 70px minmax(260px, 1.5fr) minmax(280px, 1fr) 40px;
      gap: 28px;
      align-items: start;
      border-bottom: 1px solid var(--line-dark);
      transition: color .25s ease, padding .35s var(--ease);
    }
    .service-row:hover { padding-inline: 10px; color: var(--gold); }
    .service-num { color: rgba(255,255,255,.42); font-size: 11px; }
    .service-row h3 { margin: 0; font-size: clamp(22px, 2.2vw, 34px); line-height: 1.12; letter-spacing: -.035em; }
    .service-row p { margin: 2px 0 0; color: rgba(255,255,255,.54); font-size: 13px; line-height: 1.65; }
    .service-arrow { text-align: right; font-size: 22px; }

    .studio-story { background: var(--paper); }
    .story-grid { min-height: 820px; display: grid; grid-template-columns: 1.08fr .92fr; }
    .story-media { min-height: 640px; }
    .story-media img { height: 100%; object-fit: cover; object-position: center; }
    .story-copy { padding: clamp(70px, 9vw, 145px) var(--gutter); display: flex; flex-direction: column; justify-content: center; }
    .story-copy h2 { margin-bottom: 34px; font-size: clamp(42px, 5.1vw, 78px); line-height: .98; letter-spacing: -.055em; }
    .story-copy p { max-width: 590px; color: var(--muted); font-size: 14px; line-height: 1.78; }
    .simple-link { width: max-content; margin-top: 18px; padding-bottom: 7px; display: inline-flex; gap: 22px; border-bottom: 1px solid currentColor; font-size: 13px; }

    .contact-cta {
      position: relative;
      min-height: 820px;
      display: grid;
      place-items: center;
      overflow: hidden;
      color: var(--white);
      text-align: center;
      background: #151515;
    }
    .contact-cta > img { position: absolute; inset: 0; height: 100%; object-fit: cover; }
    .contact-cta::after { content: ""; position: absolute; inset: 0; background: rgba(7,7,7,.62); }
    .contact-inner { position: relative; z-index: 2; width: min(100%, 1080px); padding: 120px var(--gutter); }
    .contact-inner h2 { margin-bottom: 30px; font-size: clamp(50px, 7vw, 108px); line-height: .94; letter-spacing: -.06em; }
    .contact-inner p { max-width: 670px; margin: 0 auto 36px; color: rgba(255,255,255,.72); font-size: 15px; line-height: 1.7; }
    .contact-links { display: flex; justify-content: center; gap: 14px; flex-wrap: wrap; }

    .footer { padding: 88px 0 28px; background: var(--dark); color: var(--white); }
    .footer-top { padding-bottom: 72px; display: grid; grid-template-columns: 1.6fr 1fr 1fr 1fr; gap: 40px; border-bottom: 1px solid var(--line-dark); }
    .footer-brand img { width: 190px; height: auto; margin-bottom: 24px; }
    .footer-brand p { color: rgba(255,255,255,.52); font-size: 12px; line-height: 1.8; }
    .footer-col strong { display: block; margin-bottom: 20px; color: var(--gold); font-size: 10px; font-weight: 500; letter-spacing: .16em; text-transform: uppercase; }
    .footer-col a, .footer-col span { display: block; width: max-content; max-width: 100%; margin: 9px 0; color: rgba(255,255,255,.64); font-size: 12px; line-height: 1.6; }
    .footer-col a:hover { color: var(--white); }
    .footer-bottom { padding-top: 24px; display: flex; justify-content: space-between; gap: 20px; color: rgba(255,255,255,.34); font-size: 10px; }

    .lightbox {
      width: min(94vw, 1500px);
      max-width: none;
      height: min(92svh, 980px);
      padding: 0;
      border: 0;
      background: #101010;
      color: var(--white);
    }
    .lightbox::backdrop { background: rgba(0,0,0,.84); backdrop-filter: blur(6px); }
    .lightbox-shell { position: relative; height: 100%; display: grid; grid-template-rows: 1fr auto; }
    .lightbox-media { min-height: 0; display: grid; place-items: center; padding: 30px; }
    .lightbox-media img { width: 100%; height: 100%; object-fit: contain; }
    .lightbox-caption { min-height: 72px; padding: 20px 26px; display: flex; align-items: center; justify-content: space-between; gap: 20px; border-top: 1px solid var(--line-dark); font-size: 12px; }
    .lightbox-close { position: absolute; z-index: 2; top: 16px; right: 16px; width: 46px; height: 46px; border: 1px solid rgba(255,255,255,.45); border-radius: 50%; background: rgba(0,0,0,.55); color: var(--white); cursor: pointer; }

    @keyframes cinematic-drift {
      from { transform: scale(1.045) translate3d(-1.2%, -.4%, 0); }
      to { transform: scale(1.115) translate3d(1.25%, .6%, 0); }
    }
    @keyframes cinematic-drift-reverse {
      from { transform: scale(1.11) translate3d(1.2%, .5%, 0); }
      to { transform: scale(1.045) translate3d(-1.1%, -.45%, 0); }
    }

    @media (prefers-reduced-motion: no-preference) {
      .js .reveal { opacity: 0; transform: translateY(34px); transition: opacity .8s var(--ease), transform .8s var(--ease); }
      .js .reveal.is-visible { opacity: 1; transform: translateY(0); }
      .motion-media.is-active img { animation: cinematic-drift 15s ease-in-out infinite alternate; }
      .render-card:nth-child(even) .motion-media.is-active img,
      .project-panel:nth-of-type(even).motion-media.is-active img { animation-name: cinematic-drift-reverse; animation-duration: 17s; }
    }

    @media (prefers-reduced-motion: reduce) { .motion-toggle { display: none; } }

    @media (max-width: 1080px) {
      .desktop-nav { display: none; }
      .nav-shell { grid-template-columns: 1fr auto; }
      .header-tools { grid-column: 2; }
      .header-action { display: none; }
      .intro-main { grid-column: 4 / -1; }
      .floorplan-title { grid-column: 1 / span 7; }
      .floorplan-copy { grid-column: 8 / -1; }
      .collection-title { grid-column: 1 / span 7; }
      .collection-copy { grid-column: 8 / -1; }
      .services-head h2 { grid-column: 1 / span 7; }
      .services-head p { grid-column: 8 / -1; }
      .service-row { grid-template-columns: 50px 1.35fr 1fr 28px; gap: 20px; }
    }

    @media (max-width: 760px) {
      :root { --gutter: 20px; }
      .nav-shell { height: 76px; }
      .brand { gap: 9px; }
      .brand img { width: 40px; height: 40px; }
      .brand-text small { display: none; }
      .header-tools { gap: 12px; }
      .menu-button { min-width: 48px; width: 48px; padding: 0; }
      .menu-button > span:last-child { display: none; }
      .menu-overlay { grid-template-columns: 1fr; }
      .menu-visual { display: none; }
      .menu-content { padding-top: 112px; }
      .menu-nav a { font-size: clamp(30px, 10vw, 48px); }
      .menu-contact { display: grid; }
      .hero { min-height: 700px; }
      .hero-inner { padding-top: 130px; padding-bottom: 32px; }
      .hero h1 { width: 100%; margin-bottom: 28px; font-size: clamp(51px, 15.5vw, 72px); }
      .hero-index { margin-top: 56px; grid-template-columns: 1fr 1fr; row-gap: 16px; }
      .scroll-cue { display: none; }
      .intro-grid, .floorplan-head, .collection-head, .services-head { display: block; }
      .section-label { margin-bottom: 34px; }
      .intro-main h2 { margin-bottom: 38px; }
      .intro-columns { grid-template-columns: 1fr; gap: 32px; }
      .work-heading { display: block; }
      .work-heading span { display: block; margin-top: 12px; }
      .project-panel { min-height: 600px; height: 78svh; }
      .project-content { bottom: 30px; }
      .project-topline { margin-bottom: 12px; }
      .project-content h3 { font-size: clamp(42px, 12vw, 64px); }
      .floorplan-title { margin-bottom: 30px; }
      .floorplan-head { margin-bottom: 48px; }
      .floorplan-copy p { max-width: 520px; }
      .floorplan-track { grid-auto-columns: 86vw; gap: 16px; }
      .collection-title { margin-bottom: 30px; }
      .collection-head { margin-bottom: 48px; }
      .collection-copy p { max-width: 520px; }
      .render-track { grid-auto-columns: 88vw; gap: 16px; }
      .services-head h2 { margin-bottom: 30px; }
      .service-row { grid-template-columns: 34px 1fr 26px; gap: 14px; }
      .service-row p { grid-column: 2 / -1; }
      .story-grid { min-height: 0; grid-template-columns: 1fr; }
      .story-media { min-height: 520px; }
      .story-copy { padding-block: 96px; }
      .contact-cta { min-height: 700px; }
      .footer-top { grid-template-columns: 1fr 1fr; }
      .footer-brand { grid-column: 1 / -1; padding-bottom: 16px; }
      .footer-bottom { display: grid; }
      .lightbox { width: 100vw; height: 100svh; }
      .lightbox-media { padding: 12px; }
      .lightbox-caption { align-items: flex-start; flex-direction: column; gap: 7px; }
    }

    @media (max-width: 430px) {
      .brand-text strong { font-size: 11px; }
      .lang-switch { display: none; }
      .hero-actions .pill-link { width: 100%; }
      .project-panel { min-height: 560px; }
      .footer-top { grid-template-columns: 1fr; }
      .footer-brand { grid-column: auto; }
    }
      .footer-col .back-to-top { font-size: 24px; }
    .contact-inner h2 { font-size: clamp(32px, 4.5vw, 68px); line-height: 1.15; }
  