
/* ═══════════════════════════════════════════════
   TEXT REVEAL ANIMATIONS — Left-to-Right Clip-Path
   Same as wall2wallinteriors.co.in
   ═══════════════════════════════════════════════ */

/* Wrapper keeps overflow hidden for clip-path animation */
.text-reveal-line {
  display: inline-block;
  position: relative;
  overflow: hidden;
  vertical-align: bottom;
  padding-bottom: 0.12em;
  margin-bottom: -0.12em;
  max-width: 100%;
}

/* Initial state: hidden with clip from right */
[data-text-line], .reveal {
  display: inline-block;
  opacity: 0;
  clip-path: inset(0 100% 0 0);
  transform: translate3d(0, 0.3rem, 0);
  transition:
    clip-path 0.9s cubic-bezier(0.16, 1, 0.3, 1),
    transform 0.9s cubic-bezier(0.16, 1, 0.3, 1),
    opacity 0.7s ease;
  will-change: clip-path, transform, opacity;
}

/* Animated state: fully visible */
[data-text-line].in,
[data-text-line].is-visible,
[data-text-line].active,
.reveal.in,
.reveal.is-visible,
.reveal.active {
  opacity: 1;
  clip-path: inset(0 0% 0 0);
  transform: translate3d(0, 0, 0);
}

/* Stagger delays for sequential lines within headings */
.text-reveal-line:nth-child(1) [data-text-line],
[data-text-line]:nth-child(1)  { transition-delay: 0s; }

.text-reveal-line:nth-child(2) [data-text-line],
[data-text-line]:nth-child(2)  { transition-delay: 0.12s; }

.text-reveal-line:nth-child(3) [data-text-line],
[data-text-line]:nth-child(3)  { transition-delay: 0.22s; }

.text-reveal-line:nth-child(4) [data-text-line],
[data-text-line]:nth-child(4)  { transition-delay: 0.32s; }

/* Motion reveal for body text / paragraphs (fade up) */
[data-motion-reveal] {
  opacity: 0;
  transform: translate3d(0, 1.5rem, 0);
  transition: opacity 0.75s ease, transform 0.75s cubic-bezier(0.16, 1, 0.3, 1);
  transition-delay: 0.15s;
}

[data-motion-reveal].in,
[data-motion-reveal].is-visible {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

/* Service panel lines slide in */
[data-motion-line] {
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);
  transition-delay: 0.2s;
}

[data-motion-line].in,
[data-motion-line].is-visible {
  transform: scaleX(1);
}

/* Service panel articles fade in from below */
[data-motion-service] {
  opacity: 0;
  transform: translate3d(0, 2rem, 0);
  transition: opacity 0.6s ease, transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}

[data-motion-service].in,
[data-motion-service].is-visible {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

/* Hero section: auto-animate after preloader (not scroll-based) */
.opening [data-text-line] {
  transition-delay: 0s;
}

.opening .text-reveal-line:nth-child(1) [data-text-line] {
  transition-delay: 0.05s;
}

.opening .text-reveal-line:nth-child(2) [data-text-line] {
  transition-delay: 0.25s;
}

/* Hero subhead delay */
.opening [data-hero-subhead] {
  opacity: 0;
  transform: translate3d(0, 1rem, 0);
  transition: opacity 0.7s ease 0.55s, transform 0.7s cubic-bezier(0.16, 1, 0.3, 1) 0.55s;
}

.opening.hero-text-revealed [data-hero-subhead] {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}



/* Closing Reveal Section Canvas Frame Scrubber */
.closing-reveal {
  position: relative;
  height: 250vh;
  background: var(--color-canvas, #050403);
}

.closing-reveal__stage {
  position: sticky;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  overflow: hidden;
}

canvas[data-closing-canvas] {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.3s ease;
}

canvas[data-closing-canvas].is-ready {
  opacity: 1;
}

.closing-reveal__scrim {
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at center, rgba(5,4,3,0.3) 0%, rgba(5,4,3,0.85) 100%);
  pointer-events: none;
  z-index: 2;
}

.closing-reveal__content {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  z-index: 3;
  padding: 0 1.5rem;
}



html, body {
  margin: 0;
  padding: 0;
  width: 100%;
  min-height: 100vh;
  overflow-x: hidden;
  overflow-y: auto !important;
  background: #050403;
  color: #f5f5f0;
}

@font-face {
  font-family: "General Sans";
  src: url("../uploads/2026/08/GeneralSans-Light.woff2") format("woff2"),
       url("../uploads/2026/08/GeneralSans-Light.ttf") format("truetype");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "General Sans";
  src: url("../uploads/2026/08/GeneralSans-Regular.woff2") format("woff2"),
       url("../uploads/2026/08/GeneralSans-Regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "General Sans";
  src: url("../uploads/2026/08/GeneralSans-Medium.woff2") format("woff2"),
       url("../uploads/2026/08/GeneralSans-Medium.ttf") format("truetype");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "General Sans";
  src: url("../uploads/2026/08/GeneralSans-Semibold.woff2") format("woff2"),
       url("../uploads/2026/08/GeneralSans-Semibold.ttf") format("truetype");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "General Sans";
  src: url("../uploads/2026/08/GeneralSans-Bold.woff2") format("woff2"),
       url("../uploads/2026/08/GeneralSans-Bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}


/* Hero & Canvas Frame Scrubbing Engine Enhancements */
.opening {
  position: relative;
  height: 350vh; /* Scroll length for 240 frame sequence */
  background: var(--color-canvas, #050403);
}

.opening__stage {
  position: sticky;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  overflow: hidden;
}

.opening__hero-video,
canvas[data-scrub-canvas] {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  pointer-events: none;
}

canvas[data-scrub-canvas] {
  opacity: 0;
  transition: opacity 0.2s ease;
}

canvas[data-scrub-canvas].is-ready {
  display: block;
}

.opening__hero-scrim {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: radial-gradient(circle at center, rgba(5,4,3,0.2) 0%, rgba(5,4,3,0.7) 100%),
              linear-gradient(to bottom, rgba(5,4,3,0.4) 0%, transparent 40%, rgba(5,4,3,0.8) 100%);
  pointer-events: none;
  z-index: 2;
}

.opening__hero-copy {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  z-index: 3;
  padding: 0 1.5rem;
  transition: opacity 0.3s ease, transform 0.3s ease;
}

.hero-copy-inner h1 {
  font-family: var(--font-sans);
  font-size: clamp(2.5rem, 6.5vw, 5.5rem);
  font-weight: 400;
  line-height: 1.1;
  color: var(--color-text, #f5f5f0);
  letter-spacing: -0.02em;
  margin-bottom: 1.5rem;
}

.hero-copy-inner p {
  font-family: var(--font-sans);
  font-size: clamp(1rem, 1.8vw, 1.35rem);
  font-weight: 300;
  color: var(--color-muted, #a8a69f);
  max-width: 640px;
  margin: 0 auto;
}

/* Story Beats Crossfade Overlay */
.story-beats {
  position: absolute;
  bottom: 25%;
  left: clamp(2rem, 8vw, 8rem);
  z-index: 4;
  pointer-events: none;
}

.story-beat {
  font-family: var(--font-sans);
  font-size: clamp(1.25rem, 2.5vw, 2.25rem);
  font-weight: 300;
  color: var(--color-text, #f5f5f0);
  margin: 0;
  opacity: 0;
  transform: translate3d(0, 16px, 0);
  transition: opacity 0.4s ease, transform 0.4s ease;
  position: absolute;
  white-space: nowrap;
}

/* ── WhatsApp Floating Action Button ── */
/* Desktop: dark pill with label. Mobile: green circle icon only */
.floating-whatsapp {
  position: fixed;
  bottom: clamp(1.25rem, 3vw, 1.75rem);
  right: clamp(1.25rem, 3vw, 1.75rem);
  z-index: 9999;
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  padding: 0 1.35rem 0 1.05rem;
  height: 50px;
  background: #050403;
  color: #f5f5f0;
  border: 1px solid rgba(245, 245, 240, 0.22);
  border-radius: 9999px;
  font-family: var(--font-sans, 'General Sans', sans-serif);
  font-size: 0.9rem;
  font-weight: 500;
  letter-spacing: -0.01em;
  text-decoration: none;
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
  box-shadow: 0 10px 30px rgba(0,0,0,0.45), inset 0 1px rgba(255,255,255,0.12);
  transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1),
              opacity 0.3s,
              background-color 0.2s,
              color 0.2s,
              border-color 0.2s,
              box-shadow 0.2s;
}
.floating-whatsapp:hover {
  background: #f5f5f0;
  color: #050403;
  border-color: #f5f5f0;
  transform: translateY(-3px) scale(1.02);
  box-shadow: 0 14px 36px rgba(0,0,0,0.55), 0 4px 16px rgba(245,245,240,0.25);
}
.floating-whatsapp:active {
  transform: translateY(-1px) scale(0.98);
}
.floating-whatsapp__icon {
  flex-shrink: 0;
  width: 22px;
  height: 22px;
  fill: currentColor;
}
.floating-whatsapp__label {
  white-space: nowrap;
  color: inherit;
}
@media (max-width: 639px) {
  .floating-whatsapp {
    border-radius: 50%;
    width: 56px;
    height: 56px;
    padding: 0;
    justify-content: center;
    background: #25D366;
    color: #fff;
    border-color: transparent;
    box-shadow: 0 4px 20px rgba(37, 211, 102, 0.5);
  }
  .floating-whatsapp:hover {
    background: #1da851;
    color: #fff;
    border-color: transparent;
  }
  .floating-whatsapp__icon {
    width: 26px;
    height: 26px;
  }
  .floating-whatsapp__label {
    display: none;
  }
}

/* Preloader */
.preloader {
  position: fixed;
  inset: 0;
  background: #050403;
  z-index: 99999;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  transition: opacity 0.6s ease, visibility 0.6s ease;
}

.preloader.is-done {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.preloader-count {
  font-size: clamp(3rem, 10vw, 8rem);
  font-family: var(--font-sans);
  font-weight: 300;
  color: #f5f5f0;
}

.preloader-progress {
  width: 160px;
  height: 2px;
  background: rgba(255,255,255,0.15);
  margin-top: 1rem;
  position: relative;
  overflow: hidden;
}

.preloader-progress-bar {
  height: 100%;
  width: 0%;
  background: #f5f5f0;
  transition: width 0.1s linear;
}







body.w2w-global-shell {
  --w2w-canvas: #050403;
  --w2w-surface: #171615;
  --w2w-text: #f5f5f0;
  --w2w-muted: #a8a69f;
  --w2w-border: #302f2c;
  --w2w-font: "General Sans", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --w2w-page-pad: clamp(20px, 4vw, 64px);
  --w2w-space-sm: 16px;
  --w2w-space-md: 24px;
  --w2w-space-lg: clamp(32px, 4vw, 48px);
  --w2w-space-xl: clamp(72px, 9vw, 120px);
  --w2w-ease-out: cubic-bezier(0.16, 1, 0.3, 1);
}

body.w2w-global-shell [data-w2w-shell],
body.w2w-global-shell [data-w2w-shell] *,
body.w2w-global-shell [data-w2w-shell] *::before,
body.w2w-global-shell [data-w2w-shell] *::after {
  box-sizing: border-box;
}

body.w2w-global-shell [data-w2w-shell] {
  font-family: var(--w2w-font);
  font-size: 16px;
  line-height: 1.5;
}

body.w2w-global-shell [data-w2w-shell] a {
  text-decoration: none;
  -webkit-tap-highlight-color: transparent;
}

body.w2w-global-shell [data-w2w-shell] a:focus-visible,
body.w2w-global-shell [data-w2w-shell] button:focus-visible {
  outline: 2px solid var(--w2w-text);
  outline-offset: 4px;
}

body.w2w-global-shell .w2w-shell-top-anchor {
  position: absolute;
  top: 0;
  left: 0;
}

body.w2w-global-shell [data-w2w-shell] .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;
}

body.w2w-global-shell .site-nav[data-w2w-nav] {
  position: fixed;
  inset: 0 0 auto;
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--w2w-space-sm) var(--w2w-page-pad);
  color: var(--w2w-text);
  pointer-events: none;
  transition: transform 350ms var(--w2w-ease-out), opacity 300ms ease;
}

body.w2w-global-shell .site-nav[data-w2w-nav].is-hidden {
  transform: translateY(-120%);
  opacity: 0;
  pointer-events: none;
}

body.w2w-global-shell .site-nav__pill {
  width: 100%;
  max-width: 1400px;
  min-height: 64px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: clamp(32px, 7vw, 112px);
  padding: 7.2px 8px 7.2px 21.6px;
  border: 1px solid color-mix(in srgb, var(--w2w-text) 12%, transparent);
  border-radius: 10px;
  background: linear-gradient(
    180deg,
    color-mix(in srgb, var(--w2w-surface) 35%, transparent) 0%,
    color-mix(in srgb, var(--w2w-surface) 12%, transparent) 100%
  );
  box-shadow: inset 0 1px 0 color-mix(in srgb, var(--w2w-text) 10%, transparent),
    0 8px 30px rgba(0, 0, 0, 0.12);
  backdrop-filter: blur(16px) saturate(120%);
  -webkit-backdrop-filter: blur(16px) saturate(120%);
  pointer-events: auto;
}

body.w2w-global-shell .site-nav__identity,
body.w2w-global-shell .site-nav__controls,
body.w2w-global-shell .site-nav__links,
body.w2w-global-shell .site-nav__brand {
  display: flex;
  align-items: center;
}

body.w2w-global-shell .site-nav__identity {
  min-width: 0;
}

body.w2w-global-shell .site-nav__controls {
  gap: clamp(20px, 2.5vw, 36px);
}

body.w2w-global-shell .site-nav__brand {
  min-height: 44px;
  gap: 8px;
  color: var(--w2w-text);
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.01em;
  transition: opacity 160ms ease-out;
}

body.w2w-global-shell .site-nav__logo {
  width: auto;
  max-width: none;
  height: 1.15em;
  object-fit: contain;
  transform: translateY(-2px);
}

body.w2w-global-shell .site-nav__descriptor {
  min-width: max-content;
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  margin-left: 17.6px;
  border-left: 1px solid color-mix(in srgb, var(--w2w-text) 18%, transparent);
  padding-left: 17.6px;
  color: color-mix(in srgb, var(--w2w-text) 58%, transparent);
  font-size: 12.16px;
  font-weight: 400;
  letter-spacing: 0.025em;
  white-space: nowrap;
}

body.w2w-global-shell .site-nav__links {
  gap: clamp(21.6px, 2.4vw, 40px);
}

body.w2w-global-shell .site-nav__links a {
  position: relative;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  color: rgba(245, 245, 240, 0.84);
  font-size: 14.72px;
  font-weight: 400;
  line-height: 1.5;
  text-transform: none;
  transition: color 160ms ease-out;
}

body.w2w-global-shell .site-nav__links a::after {
  position: absolute;
  right: 0;
  bottom: 8.8px;
  left: 0;
  height: 1px;
  background: currentColor;
  content: "";
  transform: scaleX(0);
  transform-origin: right;
  transition: transform 300ms var(--w2w-ease-out);
}

body.w2w-global-shell .site-nav__links a:focus-visible::after,
body.w2w-global-shell .site-nav__links a[aria-current="page"]::after {
  transform: scaleX(1);
  transform-origin: left;
}

body.w2w-global-shell .site-nav .button {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid transparent;
  border-radius: 999px;
  padding: 10.4px 21.6px;
  background: var(--w2w-text);
  color: var(--w2w-canvas);
  font-family: var(--w2w-font);
  font-size: 16px;
  font-weight: 500;
  line-height: 1;
  text-transform: none;
  cursor: pointer;
  transition: opacity 160ms ease-out, transform 140ms ease-out, background-color 160ms ease-out;
}

body.w2w-global-shell .site-nav__cta {
  margin-left: clamp(24px, 3vw, 48px);
  white-space: nowrap;
}

body.w2w-global-shell .site-nav__cta:active {
  transform: translateY(1px) scale(0.98);
}

body.w2w-global-shell .site-nav__mobile-rail,
body.w2w-global-shell .site-nav__mobile-brand,
body.w2w-global-shell .site-nav__mobile-toggle-wrap,
body.w2w-global-shell .site-nav__mobile {
  display: none;
}

body.w2w-global-shell .site-footer[data-w2w-footer] {
  position: relative;
  z-index: 10;
  display: block !important;
  width: 100%;
  margin: 0;
  border-top: 1px solid var(--w2w-border);
  padding: clamp(56px, 6vw, 88px) var(--w2w-page-pad) var(--w2w-space-lg);
  background: var(--w2w-canvas);
  color: var(--w2w-text);
  font-family: var(--w2w-font);
}

body.w2w-global-shell .site-footer__details,
body.w2w-global-shell .site-footer__meta {
  width: min(100%, 1600px);
  margin-inline: auto;
}

body.w2w-global-shell .site-footer__details {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(144px, 0.38fr) minmax(144px, 0.37fr);
  gap: clamp(48px, 8vw, 144px);
  margin-top: 0;
  border-top: 0;
  padding-top: 0;
}

body.w2w-global-shell .site-footer__locations {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(32px, 5vw, 80px);
}

body.w2w-global-shell .site-footer address {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin: 0;
  color: var(--w2w-muted);
  font-family: var(--w2w-font);
  font-size: 14.4px;
  font-style: normal;
  line-height: 1.65;
}

body.w2w-global-shell .site-footer address strong,
body.w2w-global-shell .site-footer__label {
  color: var(--w2w-text);
  font-size: 11.52px;
  font-weight: 500;
  letter-spacing: 0.08em;
  line-height: 1.5;
  text-transform: uppercase;
}

body.w2w-global-shell .site-footer__link-group,
body.w2w-global-shell .site-footer__social,
body.w2w-global-shell .site-footer__nav,
body.w2w-global-shell .site-footer__social-list {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

body.w2w-global-shell .site-footer__nav,
body.w2w-global-shell .site-footer__social-list {
  margin-top: var(--w2w-space-sm);
}

body.w2w-global-shell .site-footer__nav a,
body.w2w-global-shell .site-footer__social-list a,
body.w2w-global-shell .site-footer__meta a {
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--w2w-muted);
  font-size: 14.4px;
  font-weight: 400;
  line-height: 1.5;
  text-transform: none;
  transition: color 180ms ease-out, transform 180ms var(--w2w-ease-out);
}

body.w2w-global-shell .site-footer__meta {
  display: flex;
  align-items: center;
  gap: var(--w2w-space-lg);
  margin-top: clamp(64px, 8vw, 112px);
  border-top: 1px solid var(--w2w-border);
  padding-top: var(--w2w-space-md);
  color: var(--w2w-muted);
  font-size: 12.8px;
  line-height: 1.5;
}

body.w2w-global-shell .site-footer__meta a:last-child {
  margin-left: auto;
}

body.w2w-global-shell .site-footer__nav a:active,
body.w2w-global-shell .site-footer__social-list a:active,
body.w2w-global-shell .site-footer__meta a:active {
  transform: translateY(1px);
}

body.w2w-global-shell [data-w2w-whatsapp] {
  position: relative;
  z-index: 900;
}

body.w2w-global-shell .floating-whatsapp {
  position: fixed;
  right: clamp(20px, 3vw, 32px);
  bottom: clamp(20px, 3vw, 32px);
  z-index: 900;
  height: 50px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9.6px;
  border: 1px solid color-mix(in srgb, var(--w2w-text) 22%, transparent);
  border-radius: 999px;
  padding: 0 21.6px 0 17.6px;
  background: var(--w2w-canvas);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.36);
  color: var(--w2w-text);
  font-size: 14.4px;
  font-weight: 500;
  letter-spacing: -0.01em;
  line-height: 1;
  text-transform: none;
  transition: transform 350ms var(--w2w-ease-out), opacity 300ms ease, background-color 200ms ease, color 200ms ease;
}

body.w2w-global-shell .floating-whatsapp.is-hidden {
  transform: translateY(140%) scale(0.85);
  opacity: 0;
  pointer-events: none;
}

body.w2w-global-shell .floating-whatsapp__icon {
  width: 22px;
  height: 22px;
  flex-shrink: 0;
}

@media (max-width: 899px) {
  body.w2w-global-shell .site-nav[data-w2w-nav] {
    padding-inline: var(--w2w-space-md);
  }

  body.w2w-global-shell .site-nav__pill {
    gap: var(--w2w-space-md);
    padding-left: 17.6px;
  }

  body.w2w-global-shell .site-nav__links {
    gap: 20px;
  }

  body.w2w-global-shell .site-nav__cta {
    margin-left: 20px;
    padding-inline: 18.4px;
  }

  body.w2w-global-shell .site-footer__details {
    grid-template-columns: minmax(0, 1.2fr) repeat(2, minmax(112px, 0.4fr));
    gap: clamp(32px, 6vw, 64px);
  }

  body.w2w-global-shell .site-footer__locations {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  body.w2w-global-shell .site-nav[data-w2w-nav] {
    min-height: 0;
    padding: 12px var(--w2w-page-pad);
  }

  body.w2w-global-shell .site-nav__pill {
    display: none;
  }

  body.w2w-global-shell .site-nav__mobile-rail {
    position: relative;
    z-index: 2;
    width: 100%;
    min-height: 54px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    border: 1px solid color-mix(in srgb, var(--w2w-text) 12%, transparent);
    border-radius: 10px;
    padding: 5.6px 5.6px 5.6px 17.6px;
    background: linear-gradient(
      180deg,
      color-mix(in srgb, var(--w2w-surface) 35%, transparent) 0%,
      color-mix(in srgb, var(--w2w-surface) 12%, transparent) 100%
    );
    box-shadow: inset 0 1px 0 color-mix(in srgb, var(--w2w-text) 10%, transparent),
      0 8px 30px rgba(0, 0, 0, 0.12);
    backdrop-filter: blur(16px) saturate(120%);
    -webkit-backdrop-filter: blur(16px) saturate(120%);
    pointer-events: auto;
  }

  body.w2w-global-shell .site-nav__mobile-brand {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    color: var(--w2w-text);
  }

  body.w2w-global-shell .site-nav__mobile-toggle-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    border-left: 1px solid color-mix(in srgb, var(--w2w-text) 14%, transparent);
    padding-left: 5.6px;
  }

  body.w2w-global-shell .site-nav__toggle {
    position: relative;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0;
    padding: 0;
    background: transparent;
    color: var(--w2w-text);
    cursor: pointer;
  }

  body.w2w-global-shell .site-nav__toggle::before {
    position: absolute;
    inset: -8px;
    content: "";
  }

  body.w2w-global-shell .site-nav__mobile {
    position: fixed;
    inset: 0;
    z-index: 1;
    display: none;
    flex-direction: column;
    justify-content: flex-end;
    align-items: center;
    padding: 100px var(--w2w-space-md) max(var(--w2w-space-lg), env(safe-area-inset-bottom));
    background: color-mix(in srgb, var(--w2w-canvas) 98%, transparent);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    opacity: 0;
    transform: translate3d(0, -12px, 0);
    transition: opacity 260ms var(--w2w-ease-out), transform 300ms var(--w2w-ease-out);
    pointer-events: auto;
  }

  body.w2w-global-shell .site-nav__mobile.is-open {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }

  body.w2w-global-shell .site-nav__toggle [data-line] {
    transform-box: fill-box;
    transform-origin: center;
    transition: transform 220ms var(--w2w-ease-out), opacity 160ms ease-out;
  }

  body.w2w-global-shell .site-nav.is-menu-open .site-nav__toggle [data-line="top"] {
    transform: translateY(6px) rotate(45deg);
  }

  body.w2w-global-shell .site-nav.is-menu-open .site-nav__toggle [data-line="mid"] {
    opacity: 0;
    transform: scaleX(0);
  }

  body.w2w-global-shell .site-nav.is-menu-open .site-nav__toggle [data-line="bot"] {
    transform: translateY(-6px) rotate(-45deg);
  }

  body.w2w-global-shell .site-nav__mobile-links,
  body.w2w-global-shell .site-nav__mobile-footer {
    width: 100%;
    max-width: 480px;
  }

  body.w2w-global-shell .site-nav__mobile-links {
    display: flex;
    flex-direction: column;
  }

  body.w2w-global-shell .site-nav__mobile-link {
    min-height: 68px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--w2w-space-sm);
    border-bottom: 1px solid var(--w2w-border);
    color: var(--w2w-text);
    font-size: 22.4px;
    font-weight: 300;
    letter-spacing: -0.02em;
    line-height: 1.25;
    text-transform: none;
  }

  body.w2w-global-shell .site-nav__mobile-link:last-child {
    border-bottom: 0;
  }

  body.w2w-global-shell .site-nav__mobile-arrow {
    flex: 0 0 auto;
    opacity: 0;
    transform: translateX(-8px);
    transition: opacity 180ms ease-out, transform 220ms var(--w2w-ease-out);
  }

  body.w2w-global-shell .site-nav__mobile-link:focus-visible .site-nav__mobile-arrow,
  body.w2w-global-shell .site-nav__mobile-link[aria-current="page"] .site-nav__mobile-arrow {
    opacity: 1;
    transform: translateX(0);
  }

  body.w2w-global-shell .site-nav__mobile-footer {
    display: flex;
    flex-direction: column;
    gap: var(--w2w-space-sm);
    border-top: 1px solid var(--w2w-border);
    padding-top: var(--w2w-space-md);
  }

  body.w2w-global-shell .site-nav__mobile-footer-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: var(--w2w-space-sm);
    color: var(--w2w-muted);
    font-size: 12.8px;
  }

  body.w2w-global-shell .site-nav__mobile-cta {
    width: 100%;
    min-height: 48px;
    font-size: 16px;
  }

  body.w2w-global-shell .site-footer[data-w2w-footer] {
    padding-top: clamp(80px, 19vw, 112px);
  }

  body.w2w-global-shell .site-footer__details {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(48px, 12vw, 64px) var(--w2w-space-xl);
  }

  body.w2w-global-shell .site-footer__locations {
    grid-column: 1 / -1;
    gap: var(--w2w-space-xl);
  }

  body.w2w-global-shell .site-footer__nav a {
    padding-block: 4px;
    font-size: 16.8px;
  }

  body.w2w-global-shell .site-footer__meta {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: var(--w2w-space-md) var(--w2w-space-lg);
  }

  body.w2w-global-shell .site-footer__meta > span {
    grid-column: 1 / -1;
    grid-row: 2;
    font-size: 12px;
  }

  body.w2w-global-shell .site-footer__meta > a:first-of-type {
    grid-column: 1;
    grid-row: 1;
  }

  body.w2w-global-shell .site-footer__meta > a:last-child {
    grid-column: 2;
    grid-row: 1;
    margin-left: 0;
  }

  body.w2w-global-shell .floating-whatsapp {
    right: 20px;
    bottom: 20px;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    padding: 0;
  }

  body.w2w-global-shell .floating-whatsapp__label {
    display: none;
  }

  body.w2w-global-shell .floating-whatsapp__icon {
    width: 26px;
    height: 26px;
  }
}

@media (hover: hover) and (pointer: fine) {
  body.w2w-global-shell .site-nav__brand:hover {
    opacity: 0.74;
  }

  body.w2w-global-shell .site-nav__links a:hover {
    color: var(--w2w-text);
  }

  body.w2w-global-shell .site-nav__links a:hover::after,
  body.w2w-global-shell .site-nav__mobile-link:hover .site-nav__mobile-arrow {
    transform: scaleX(1);
    transform-origin: left;
  }

  body.w2w-global-shell .site-nav__mobile-link:hover .site-nav__mobile-arrow {
    opacity: 1;
    transform: translateX(0);
  }

  body.w2w-global-shell .site-footer__nav a:hover,
  body.w2w-global-shell .site-footer__social-list a:hover,
  body.w2w-global-shell .site-footer__meta a:hover {
    color: var(--w2w-text);
  }

  body.w2w-global-shell .floating-whatsapp:hover {
    background: var(--w2w-text);
    color: var(--w2w-canvas);
    transform: translateY(-3px) scale(1.02);
  }
}

@media (prefers-reduced-transparency: reduce) {
  body.w2w-global-shell .site-nav__pill,
  body.w2w-global-shell .site-nav__mobile-rail,
  body.w2w-global-shell .site-nav__mobile {
    background: rgba(23, 22, 21, 0.97);
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.w2w-global-shell .site-nav[data-w2w-nav],
  body.w2w-global-shell .site-nav__mobile,
  body.w2w-global-shell .site-nav__mobile-arrow,
  body.w2w-global-shell .site-nav__toggle [data-line],
  body.w2w-global-shell .floating-whatsapp {
    transition: none !important;
  }
}

:root{color-scheme:dark;--color-canvas:#050403;--color-surface:#171615;--color-raised:#202020;--color-text:#f5f5f0;--color-muted:#a8a69f;--color-border:#302f2c;--color-worktable:#f2f0ea;--color-worktable-text:#11100e;--color-worktable-muted:#55514a;--color-worktable-line:#d8d4ca;--color-cta:#f5f5f0;--color-cta-text:#050403;--font-sans:"General Sans", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--display:clamp(2.75rem, 7.5vw, 6rem);--headline:clamp(2.15rem, 4.8vw, 4.5rem);--subhead:clamp(1.25rem, 2vw, 1.85rem);--space-xs:.5rem;--space-sm:1rem;--space-md:1.5rem;--space-lg:clamp(2rem, 4vw, 3rem);--space-xl:clamp(4.5rem, 9vw, 7.5rem);--page-pad:clamp(1.25rem, 4vw, 4rem);--radius-media:10px;--radius-card:10px;--radius-pill:9999px;--z-nav:20;--z-dialog:40;--z-preloader:60;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.77, 0, .175, 1);--duration-fast:.16s;--duration-ui:.24s}:root,html,html.wall2wall-cinematic-home,body.wall2wall-cinematic-home{text-size-adjust:100%!important;font-size:16px!important;font-family:var(--font-sans)!important;background-color:var(--color-canvas)!important;color:var(--color-text)!important;width:100%!important;margin:0!important;padding:0!important;line-height:1.5!important}html.wall2wall-cinematic-home,body.wall2wall-cinematic-home{touch-action:pan-y!important;overflow:clip visible!important}html.wall2wall-cinematic-home{margin-top:0!important;padding-top:0!important}body.wall2wall-cinematic-home{margin-top:0!important}#wpadminbar{display:none!important}body.wall2wall-cinematic-home #site-header,body.wall2wall-cinematic-home .site-header,body.wall2wall-cinematic-home #masthead,body.wall2wall-cinematic-home .ast-main-header-wrap,body.wall2wall-cinematic-home .header-wrapper,body.wall2wall-cinematic-home>header:not(.site-nav),body.wall2wall-cinematic-home>footer:not(.site-footer),body.wall2wall-cinematic-home #theme-header,body.wall2wall-cinematic-home .elementor-location-header{opacity:0!important;pointer-events:none!important;height:0!important;display:none!important}*,:before,:after{box-sizing:border-box}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}body.wall2wall-cinematic-home *,body.wall2wall-cinematic-home :before,body.wall2wall-cinematic-home :after{box-sizing:border-box!important}body.wall2wall-cinematic-home h1,body.wall2wall-cinematic-home h2,body.wall2wall-cinematic-home h3,body.wall2wall-cinematic-home h4,body.wall2wall-cinematic-home h5,body.wall2wall-cinematic-home h6{font-family:var(--font-sans)!important;text-transform:none!important}body.wall2wall-cinematic-home a{text-decoration:none!important}body.wall2wall-cinematic-home p{margin-bottom:0!important}body.wall2wall-cinematic-home input,body.wall2wall-cinematic-home textarea,body.wall2wall-cinematic-home button,body.wall2wall-cinematic-home select{font-family:var(--font-sans)!important;font-size:1rem!important}html{background:var(--color-canvas);color:var(--color-text);font-family:var(--font-sans);scroll-behavior:auto;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;scrollbar-width:thin;scrollbar-color:#f5f5f040 transparent}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-stopped{overflow:hidden}.lenis.lenis-scrolling iframe{pointer-events:none}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#f5f5f033;border-radius:9999px}::-webkit-scrollbar-thumb:hover{background:#f5f5f073}::-webkit-scrollbar-corner{background:0 0}body,body.wall2wall-cinematic-home{min-width:320px;color:var(--color-text);margin:0;overflow-x:clip;background-color:var(--color-canvas)!important}body.wall2wall-cinematic-home,.wall2wall-cinematic-home h1,.wall2wall-cinematic-home h2,.wall2wall-cinematic-home h3,.wall2wall-cinematic-home h4,.wall2wall-cinematic-home p,.wall2wall-cinematic-home button,.wall2wall-cinematic-home input,.wall2wall-cinematic-home textarea,.wall2wall-cinematic-home a{font-family:var(--font-sans)!important}.wall2wall-cinematic-home .studio-section__intro h2,.wall2wall-cinematic-home .service-panel h3,.wall2wall-cinematic-home .faq-section__header h2,.wall2wall-cinematic-home .closing-reveal__content h2,.wall2wall-cinematic-home .initiate-section__title{color:var(--color-text)!important}body:has(dialog[open]){overflow:hidden}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}img,video,canvas{max-width:100%;display:block}h1,h2,h3,p,figure{margin:0}h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}::selection{background:var(--color-text);color:var(--color-canvas)}:focus-visible{outline:2px solid var(--color-text);outline-offset:4px}.skip-link{z-index:100;background:var(--color-text);color:var(--color-canvas);transition:transform .16s var(--ease-out);border-radius:999px;padding:.65rem 1rem;text-decoration:none;position:fixed;top:.75rem;left:.75rem;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.section-shell{padding:var(--space-xl) var(--page-pad)}.button{cursor:pointer;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;min-height:44px;padding:.65rem 1.35rem;font-weight:500;line-height:1;text-decoration:none;transition:opacity .16s ease-out,transform .14s ease-out,background-color .16s ease-out;display:inline-flex}.button:active{transform:scale(.97)}.button:disabled{cursor:wait;opacity:.58}.button--primary{background:var(--color-text);color:var(--color-canvas)}.button--ghost{color:var(--color-text);background:#05040338;border-color:#f5f5f0bf}main>section,.site-footer{isolation:isolate;z-index:1;position:relative}.opening,.material-story,.closing-reveal{z-index:1;position:relative;overflow:clip}.studio-section,.faq-section,.initiate-section,.site-footer{transform:translateZ(0);z-index:10!important;background-color:var(--color-canvas,#050403)!important;position:relative!important}.worktable{z-index:2;background:color-mix(in srgb, var(--color-worktable) calc(var(--worktable-bg-opacity,1) * 100%), transparent);position:relative;transform:translateZ(0)}.opening__stage,.material-story__stage,.closing-reveal__stage{width:100%;height:100vh;height:var(--stage-height,100svh);background:var(--color-canvas);contain:layout paint;transform-origin:bottom;will-change:transform;overflow:hidden;position:sticky!important;top:0!important}@media (width>=900px) and (hover:hover){.opening__hero-video,.opening__stage canvas,.opening__stage picture,.opening__story-layer canvas,.opening__story-layer picture,.opening__story-layer>img,.material-story__stage canvas,.material-story__stage picture,.material-story__stage>img,.closing-reveal__stage canvas,.closing-reveal__stage picture,.closing-reveal__stage>img{-webkit-mask-composite:source-in, source-in;mask-image:linear-gradient(#0000 0%,#000000d9 6%,#000 12% 88%,#000000d9 94%,#0000 100%),linear-gradient(90deg,#0000 0%,#000000e6 3%,#000 7% 93%,#000000e6 97%,#0000 100%);mask-composite:intersect}}.opening__story-layer picture img,.opening__stage picture img,.material-story__stage picture img,.closing-reveal__stage picture img{object-fit:cover;width:100%;height:100%}[data-scrub-fallback]{transition:opacity .35s var(--ease-out)}[data-scrub-canvas].is-ready+picture,[data-scrub-canvas].is-ready~picture,[data-scrub-canvas].is-ready+[data-scrub-fallback]{opacity:0;pointer-events:none}[data-motion-section=studio],.worktable,#initiate-project{contain:layout paint}.text-reveal-line{vertical-align:bottom;will-change:clip-path;max-width:100%;margin-bottom:-.12em;padding-bottom:.12em;display:inline-block;position:relative;overflow:hidden}[data-text-line]{backface-visibility:hidden;transform-origin:0;transition:transform .7s cubic-bezier(.16,1,.3,1),opacity .6s;display:inline-block}[data-motion-reveal-blur]{will-change:transform, opacity, filter}.chapter-exit-veil{z-index:4;pointer-events:none;background:var(--color-canvas);position:absolute;inset:0;transform:translateZ(0);opacity:0!important}.chapter-exit-veil--walkthrough{background:var(--color-canvas)}[data-scrub-canvas]{opacity:0;backface-visibility:hidden;transform:translateZ(0)}[data-scrub-canvas].is-ready{opacity:1}[data-scrub-fallback]{object-fit:cover}[data-scrub-canvas].is-ready+[data-scrub-fallback]{opacity:0}.cinematic-scrim{z-index:2;pointer-events:none;background:linear-gradient(90deg,#050403b8 0%,#05040333 42%,#0504030f 72%);position:absolute;inset:0}.cinematic-scrim--walkthrough{background:0 0;display:none}.opening.is-static,.material-story.is-static,.closing-reveal.is-static{height:auto}.opening.is-static .opening__stage,.material-story.is-static .material-story__stage,.closing-reveal.is-static .closing-reveal__stage{min-height:100svh;position:relative}.opening.is-static .opening__hero-video,.opening.is-static .opening__hero-copy,.opening.is-static .opening__hero-scrim,.opening.is-static canvas,.material-story.is-static canvas,.closing-reveal.is-static canvas,.opening.is-static .story-beats,.material-story.is-static .story-beats{display:none}.opening.is-static .opening__story-layer>img,.material-story.is-static [data-scrub-fallback],.closing-reveal.is-static [data-scrub-fallback]{opacity:1}.opening.is-static .static-story-copy,.material-story.is-static .static-story-copy{display:grid}.studio-section__intro h2,.closing-reveal__content h2,.enquiry-dialog__intro h2{color:var(--color-text);font-size:var(--headline);letter-spacing:-.03em;font-weight:300;line-height:1.05}.worktable{color-scheme:light;background:var(--color-worktable);color:var(--color-worktable-text)}.worktable__inner{gap:var(--space-lg);grid-template-columns:repeat(12,minmax(0,1fr));align-items:end;display:grid}.worktable h2{max-width:15ch;font-size:var(--headline);letter-spacing:-.03em;grid-area:1/1/auto/7;font-weight:300;line-height:1.05}.worktable p{max-width:55ch;color:var(--color-worktable-muted);grid-area:1/8/auto/13;line-height:1.65}.worktable__hairline{width:100%;height:1px;margin-top:var(--space-lg);background:var(--color-worktable-line);transform-origin:0;grid-area:2/1/auto/-1}@keyframes spin{to{transform:rotate(1turn)}}@media (width<=899px){.opening,.material-story{height:165svh}.opening__hero-scrim,.cinematic-scrim{background:linear-gradient(#0504032e 0%,#0504031a 42%,#050403c2 100%)}.worktable__inner{grid-template-columns:1fr;gap:0}.worktable h2,.worktable p,.worktable__hairline{grid-column:auto}.worktable h2{grid-row:1}.worktable__hairline{margin:var(--space-lg) 0;grid-row:2}.worktable p{grid-row:3}}@media (hover:hover) and (pointer:fine){.button:hover{opacity:.94;transform:translateY(-1px)scale(1.02)}.button--primary:hover{box-shadow:0 4px 20px #f5f5f029}.button--ghost:hover{background:#f5f5f014;border-color:#f5f5f0ad}.button:hover svg{transform:translate(3px)}.site-footer__phone:hover svg,.site-footer__whatsapp:hover svg,.site-footer__social a:hover svg,.initiate-section__whatsapp-link:hover svg{transform:translate(3px,-3px)}}.has-text-reveal [data-character-reveal]:not(.text-reveal-ready),.has-text-reveal h2[data-motion-reveal]:not(.text-reveal-ready),.has-text-reveal main section:not(.closing-reveal) p:not([data-hero-subhead]):not([data-beat]):not([role=status]):not(.text-reveal-ready),.has-text-reveal main section h3:not(.text-reveal-ready),.has-text-reveal main section dt:not(.text-reveal-ready),.has-text-reveal main section dd:not(.text-reveal-ready),.has-text-reveal main section figcaption:not(.text-reveal-ready),.has-text-reveal .studio-stat:not(.text-reveal-ready),.has-text-reveal .faq-item__trigger:not(.text-reveal-ready),.has-text-reveal .site-footer__wordmark:not(.text-reveal-ready),.has-text-reveal .site-footer__statement:not(.text-reveal-ready),.has-text-reveal .site-footer__contact:not(.text-reveal-ready),.has-text-reveal .site-footer address:not(.text-reveal-ready),.has-text-reveal .site-footer__link-group:not(.text-reveal-ready),.has-text-reveal .site-footer__social:not(.text-reveal-ready),.has-text-reveal .site-footer__meta:not(.text-reveal-ready),.has-text-reveal .selected-works__all-link:not(.text-reveal-ready),.has-text-reveal .client-stories__reviews-link:not(.text-reveal-ready),.has-text-reveal .client-stories__meta:not(.text-reveal-ready){opacity:0;filter:blur(8px);transform:translateY(12px)}.has-text-reveal .text-reveal-ready{opacity:1;filter:none;transform:none}.reveal,.reveal-up,.reveal-left,[data-motion-reveal],.footer-reveal,.reveal.in,.reveal-up.in,.reveal-left.in,[data-motion-reveal].in,.footer-reveal.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}[data-text-line]{will-change:auto;opacity:1!important;transform:none!important}.button,.site-nav__brand,.site-nav__links a,.site-footer a,.enquiry-form input,.enquiry-form select,.enquiry-form textarea,.service-panel h3{transition-duration:.01ms!important;transform:none!important}.opening,.material-story,.closing-reveal{height:auto}.opening__stage,.material-story__stage,.closing-reveal__stage{will-change:auto;transform:none!important}.opening__transition-veil,[data-motion-chapter-media]{transform:none!important}.chapter-exit-veil{display:none!important}.opening__stage,.material-story__stage,.closing-reveal__stage{min-height:100svh;position:relative}.opening__hero-video,.opening__hero-scrim,[data-scrub-canvas],.story-beats{display:none!important}.reveal,.reveal-up,.footer-reveal{opacity:1!important;transition:none!important;transform:none!important}}img,picture img,.material__picture img,.closing-reveal__image img{transform:none!important}:root{--color-muted:#aaa8a1;--color-border:#34322f;--page-pad:clamp(1.25rem, 4.25vw, 4.5rem);--focus-ring:#fff}body{font-size:1rem;line-height:1.5}:focus-visible{outline-color:var(--focus-ring);outline-offset:5px;outline-width:2px}.button{transition:color var(--duration-ui) var(--ease-out), background-color var(--duration-ui) var(--ease-out), border-color var(--duration-ui) var(--ease-out), transform var(--duration-fast) var(--ease-out);position:relative;overflow:hidden}.button:after{content:"";opacity:0;pointer-events:none;transition:opacity var(--duration-ui) var(--ease-out);background:currentColor;position:absolute;inset:0}@media (hover:hover) and (pointer:fine){.button:hover{opacity:1;transform:translateY(-2px)}.button:hover:after{opacity:.055}.button--primary:hover{box-shadow:none}}@media (width<=639px){:root{--page-pad:clamp(1.125rem, 5vw, 1.5rem)}}@media (prefers-reduced-motion:reduce){.button:after{display:none}}:root{--content-max:100rem}.text-reveal-line{vertical-align:baseline;overflow:visible}[data-text-line]{clip-path:inset(-.2em 0);will-change:clip-path, transform, opacity}.studio-section,.faq-section__inner,.initiate-section__container,.site-footer__main,.site-footer__details,.site-footer__meta{width:min(100%, var(--content-max));margin-inline:auto}.button--secondary-pill{min-height:44px!important;color:var(--color-text)!important;white-space:nowrap!important;background:#05040338!important;border:1px solid #f5f5f0bf!important;border-radius:9999px!important;justify-content:center!important;align-items:center!important;gap:.6rem!important;padding:.65rem 1.35rem!important;font-size:.88rem!important;font-weight:500!important;text-decoration:none!important;transition:border-color .2s,background-color .2s,transform .14s!important;display:inline-flex!important}.button--secondary-pill:hover{color:#fff!important;background:#f5f5f014!important;border-color:#f5f5f0d9!important}.button--secondary-pill:active{transform:scale(.97)!important}.pointer-cursor{z-index:80;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease-out,visibility .18s ease-out;position:fixed;inset:0 auto auto 0}.pointer-cursor.is-visible{opacity:1;visibility:visible}.pointer-cursor:not(.is-visible) .pointer-cursor__dot,.pointer-cursor:not(.is-visible) .pointer-cursor__halo{opacity:0!important;visibility:hidden!important}.pointer-cursor__dot,.pointer-cursor__halo{pointer-events:none;will-change:transform;border-radius:50%;position:fixed;top:0;left:0}.pointer-cursor__dot{background:#fff;width:5px;height:5px;margin:-2.5px 0 0 -2.5px}.pointer-cursor__halo{width:34px;height:34px;transition:width .26s var(--ease-out), height .26s var(--ease-out), margin .26s var(--ease-out), border-color .26s var(--ease-out), background-color .26s var(--ease-out);background:#ffffff06;border:1px solid #ffffff9e;margin:-17px 0 0 -17px}.pointer-cursor.is-active .pointer-cursor__halo{background:#ffffff14;border-color:#ffffffd1;width:50px;height:50px;margin:-25px 0 0 -25px}.pointer-cursor.is-over-media .pointer-cursor__halo{background:#0504031f;border-color:#ffffffb8;width:58px;height:58px;margin:-29px 0 0 -29px}@media (width>=640px) and (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){html.has-pointer-cursor,html.has-pointer-cursor body,html.has-pointer-cursor a,html.has-pointer-cursor button,html.has-pointer-cursor summary,html.has-pointer-cursor input,html.has-pointer-cursor textarea,html.has-pointer-cursor label{cursor:none}}@media (width<=639px){.pointer-cursor{display:none}}@media (prefers-reduced-motion:reduce),(forced-colors:active){.pointer-cursor{display:none}[data-text-line]{will-change:auto;clip-path:none!important}}.has-text-reveal [data-motion-line]{transform-origin:0;transition:transform .75s cubic-bezier(.16,1,.3,1),opacity .75s cubic-bezier(.16,1,.3,1)}.has-text-reveal [data-motion-line]:not(.line-reveal-ready){opacity:.35;transform:scaleX(0)}@media (forced-colors:active){.has-text-reveal [data-motion-line]{opacity:1;transform:scaleX(1)}}html.is-preloading,html.is-preloading body { overflow-x: hidden; overflow-y: auto !important; }.preloader{z-index:var(--z-preloader);background:var(--color-canvas);color:var(--color-text);opacity:1;transition:opacity .28s var(--ease-out), transform .42s var(--ease-out);display:none;position:fixed;inset:0;overflow:hidden;transform:translate(0,0)}.has-preloader .preloader{display:block}.preloader.is-leaving{opacity:0;pointer-events:none;transform:translateY(-100%)}.preloader__inner{grid-template-rows:auto 1fr auto auto;gap:1rem;min-height:100%;padding:clamp(1.25rem,4vw,4rem);display:grid}.preloader__brand,.preloader__status{color:color-mix(in srgb, var(--color-text) 62%, transparent);letter-spacing:.04em;justify-content:space-between;align-items:center;gap:1rem;font-size:.75rem;display:flex}.preloader__logo{object-fit:contain;flex-shrink:0;width:auto;height:2rem}.preloader__statement{letter-spacing:-.04em;align-self:end;max-width:12ch;padding-bottom:clamp(2.5rem,8vh,6rem);font-size:clamp(2.5rem,7vw,6rem);font-weight:300;line-height:.96}.preloader__track{background:color-mix(in srgb, var(--color-text) 18%, transparent);height:1px;overflow:hidden}.preloader__track span{background:var(--color-text);transform-origin:0;width:100%;height:100%;transition:transform .22s var(--ease-out);display:block;transform:scaleX(0)}@media (prefers-reduced-motion:reduce){.preloader{transition:opacity .16s ease-out}.preloader.is-leaving{transform:none}}.site-nav{z-index:var(--z-nav);padding:var(--space-sm) var(--page-pad);color:var(--color-text);pointer-events:none;justify-content:center;align-items:center;transition:transform .35s cubic-bezier(.16,1,.3,1),opacity .3s;display:flex;position:fixed;inset:0 0 auto}.site-nav.is-hidden{opacity:0;pointer-events:none;transform:translateY(-120%)}.site-nav__pill{border:1px solid color-mix(in srgb, var(--color-text) 12%, transparent);border-radius:var(--radius-card);background:linear-gradient(180deg, color-mix(in srgb, var(--color-surface) 35%, transparent) 0%, color-mix(in srgb, var(--color-surface) 12%, transparent) 100%);width:100%;max-width:1400px;min-height:64px;box-shadow:inset 0 1px 0 color-mix(in srgb, var(--color-text) 10%, transparent), 0 8px 30px #0000001f;-webkit-backdrop-filter:blur(16px)saturate(120%);pointer-events:auto;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:clamp(2rem,7vw,7rem);padding:.45rem .5rem .45rem 1.35rem;display:grid}.site-nav__identity{align-items:center;min-width:0;display:flex}.site-nav__controls{align-items:center;gap:clamp(1.25rem,2.5vw,2.25rem);display:flex}.site-nav__brand{min-height:44px;color:var(--color-text);letter-spacing:-.01em;align-items:center;gap:.5rem;font-size:1rem;font-weight:500;text-decoration:none;transition:opacity .16s ease-out;display:inline-flex}.site-nav__logo{object-fit:contain;flex-shrink:0;width:auto;height:1.15em;transform:translateY(-2px)}.site-nav__descriptor{border-left:1px solid color-mix(in srgb, var(--color-text) 18%, transparent);min-width:max-content;min-height:28px;color:color-mix(in srgb, var(--color-text) 58%, transparent);letter-spacing:.025em;white-space:nowrap;align-items:center;margin-left:1.1rem;padding-left:1.1rem;font-size:.76rem;font-weight:400;display:inline-flex}.site-nav__links{align-items:center;gap:clamp(1.35rem,2.4vw,2.5rem);display:flex}.site-nav__links a{color:#f5f5f0d6;align-items:center;min-height:44px;font-size:.92rem;text-decoration:none;transition:color .16s ease-out;display:inline-flex;position:relative}.site-nav__links a:after{content:"";transform-origin:100%;height:1px;transition:transform .3s var(--ease-out);background:currentColor;position:absolute;bottom:.55rem;left:0;right:0;transform:scaleX(0)}.site-nav__links a:focus-visible:after{transform-origin:0;transform:scaleX(1)}.site-nav__cta{white-space:nowrap;min-height:44px;margin-left:clamp(1.5rem,3vw,3rem);padding-inline:1.35rem}.site-nav__cta:active{transform:translateY(1px)scale(.98)}.site-nav__toggle:active{transform:scale(.94)}.site-nav__mobile-rail,.site-nav__mobile-brand,.site-nav__mobile-toggle-wrap,.site-nav__mobile{display:none}@media (width<=899px){.site-nav{padding-inline:var(--space-md)}.site-nav__pill{gap:var(--space-md);padding-left:1.1rem}.site-nav__links{gap:1.25rem}.site-nav__cta{margin-left:1.25rem;padding-inline:1.15rem}}@media (width<=640px){.site-nav{z-index:var(--z-nav);min-height:0;padding:var(--space-sm) var(--space-md);pointer-events:none;justify-content:center;align-items:center;display:flex;position:fixed}.site-nav__pill{display:none}.site-nav__mobile-rail{z-index:2;border:1px solid color-mix(in srgb, var(--color-text) 12%, transparent);border-radius:var(--radius-card);background:linear-gradient(180deg, color-mix(in srgb, var(--color-surface) 35%, transparent) 0%, color-mix(in srgb, var(--color-surface) 12%, transparent) 100%);width:100%;min-height:60px;box-shadow:inset 0 1px 0 color-mix(in srgb, var(--color-text) 10%, transparent), 0 8px 30px #0000001f;-webkit-backdrop-filter:blur(16px)saturate(120%);pointer-events:auto;grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:.35rem .35rem .35rem 1.1rem;display:grid;position:relative}.site-nav__mobile-brand{min-height:44px;color:var(--color-text);letter-spacing:-.01em;flex-shrink:0;align-items:center;gap:.5rem;font-size:.9rem;font-weight:500;text-decoration:none;transition:opacity .16s ease-out;display:inline-flex}.site-nav__mobile-toggle-wrap{border-left:1px solid color-mix(in srgb, var(--color-text) 14%, transparent);justify-content:center;align-items:center;padding-left:.35rem;display:flex}.site-nav__toggle{width:40px;height:40px;color:var(--color-text);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;display:flex;position:relative}.site-nav__toggle:before{content:"";position:absolute;inset:-8px}.site-nav__mobile{z-index:1;padding:100px var(--space-md) max(var(--space-lg), env(safe-area-inset-bottom));background:color-mix(in srgb, var(--color-canvas) 98%, transparent);-webkit-backdrop-filter:blur(12px);opacity:0;transition:opacity .26s var(--ease-out), transform .3s var(--ease-out);pointer-events:auto;flex-direction:column;justify-content:flex-end;align-items:center;display:none;position:fixed;inset:0;transform:translateY(-12px)}.site-nav__mobile.is-open{opacity:1;transform:translate(0,0)}.site-nav__toggle [data-line]{transform-box:fill-box;transform-origin:50%;transition:transform .22s var(--ease-out), opacity .16s ease-out}.site-nav.is-menu-open .site-nav__toggle [data-line=top]{transform:translateY(6px)rotate(45deg)}.site-nav.is-menu-open .site-nav__toggle [data-line=mid]{opacity:0;transform:scaleX(0)}.site-nav.is-menu-open .site-nav__toggle [data-line=bot]{transform:translateY(-6px)rotate(-45deg)}.site-nav__mobile-links,.site-nav__mobile-footer{width:100%;max-width:480px}.site-nav__mobile-links{flex-direction:column;display:flex}.site-nav__mobile-link{justify-content:space-between;align-items:center;gap:var(--space-sm);border-bottom:1px solid var(--color-border);min-height:68px;color:var(--color-text);letter-spacing:-.02em;font-size:1.4rem;font-weight:300;text-decoration:none;display:flex}.site-nav__mobile-link:last-child{border-bottom:0}.site-nav__mobile-link:active{opacity:.72}.site-nav__mobile-arrow{opacity:0;transition:opacity .18s ease-out, transform .22s var(--ease-out);flex:none;transform:translate(-8px)}.site-nav__mobile-link:focus-visible .site-nav__mobile-arrow{opacity:1;transform:translate(0)}.site-nav__mobile-footer{gap:var(--space-sm);border-top:1px solid var(--color-border);padding-top:var(--space-md);flex-direction:column;display:flex}.site-nav__mobile-footer-row{justify-content:space-between;align-items:center;gap:var(--space-sm);color:var(--color-muted);flex-wrap:wrap;font-size:.8rem;display:flex}.site-nav__mobile-cta{width:100%;min-height:48px;font-size:1rem}}@media (hover:hover) and (pointer:fine){.site-nav__brand:hover{opacity:.74}.site-nav__links a:hover{color:var(--color-text)}.site-nav__links a:hover:after{transform-origin:0;transform:scaleX(1)}.site-nav__mobile-link:hover .site-nav__mobile-arrow{opacity:1;transform:translate(0)}}@media (prefers-reduced-transparency:reduce){.site-nav__pill,.site-nav__mobile-rail,.site-nav__mobile-brand,.site-nav__mobile-toggle-wrap,.site-nav__mobile{-webkit-backdrop-filter:none;background:#171615f7}}@media (prefers-reduced-motion:reduce){.site-nav__mobile,.site-nav__mobile-arrow,.site-nav__toggle [data-line]{transition:none!important}}@media (width<=639px){.site-nav{padding:.75rem var(--page-pad)}.site-nav__mobile-rail{min-height:54px}}.wall2wall-cinematic-home .opening__hero-copy h1,.wall2wall-cinematic-home .opening__hero-copy h1 *{color:var(--color-text)!important}.opening{background:var(--color-canvas);height:280svh}.opening__hero-video,.opening__stage canvas{object-fit:cover;will-change:transform, opacity;transform-origin:50%;width:100%;height:116%;position:absolute;top:-8%;left:0;transform:translateZ(0)}.opening__hero-video{z-index:1}.opening__stage canvas{z-index:2}.opening__hero-scrim{z-index:3;pointer-events:none;background:linear-gradient(90deg,#050403ad 0%,#05040326 52%,#05040314 100%);position:absolute;inset:0}.opening__hero-copy{z-index:5;left:var(--page-pad);opacity:1;filter:none;max-width:820px;position:absolute;bottom:clamp(3.5rem,9vh,7rem);transform:none!important}.hero-copy-inner{opacity:1;transition:opacity .8s}.opening__hero-copy h1,.opening__hero-copy p,.opening__hero-copy [data-text-line]{opacity:1;filter:none;transform:none!important}.opening__hero-copy h1{font-size:var(--display);letter-spacing:-.035em;font-weight:400;line-height:.96}.opening__hero-copy p{max-width:33ch;margin-top:var(--space-md);color:#f5f5f0c7;line-height:1.55}.opening__story-layer{z-index:4;opacity:0}.opening__transition-veil{z-index:5;background:var(--color-canvas);pointer-events:none;position:absolute;inset:0;transform:translateZ(0);opacity:0!important}.story-beats{z-index:4;padding:var(--page-pad);pointer-events:none;text-align:left;place-items:center start;display:grid;position:absolute;inset:0}@media (width>=769px){.story-beats{text-align:right;place-items:flex-end end;padding-bottom:clamp(3.5rem,9vh,7rem)}}.story-beats--left,.story-beats--right{text-align:left;justify-items:start}@media (width>=769px){.story-beats--left,.story-beats--right{text-align:right;justify-items:end}}.story-beat{max-width:18ch;color:var(--color-text);font-size:var(--headline);letter-spacing:-.025em;opacity:0;text-shadow:none;transform-style:preserve-3d;backface-visibility:hidden;transform-origin:0;will-change:transform, opacity, filter;grid-area:1/1;font-weight:300;line-height:1.08}@media (width>=769px){.story-beat{transform-origin:100%;text-align:right;max-width:15ch}}.static-story-copy{display:none}.opening.is-static .opening__story-layer{opacity:1;min-height:100svh;position:relative}.opening.is-static .opening__hero-copy{z-index:5;display:block}.static-story-copy{gap:var(--space-md);padding:var(--space-lg) var(--page-pad) var(--space-xl);color:var(--color-muted);font-size:clamp(1.25rem,3vw,2rem);font-weight:300}@media (width<=767px){.story-beat[data-mobile-hide=true]{display:none!important}}@media (width<=899px){.opening__hero-copy{left:var(--page-pad);right:auto;bottom:max(3rem, calc(env(safe-area-inset-bottom) + 2rem));text-align:left}.opening__hero-copy h1{letter-spacing:-.035em;text-shadow:none;font-size:clamp(2.75rem,11vw,4.5rem);line-height:.96}.opening__hero-copy p{max-width:28ch;margin-top:var(--space-md);color:#f5f5f0d9;text-shadow:none;line-height:1.5}.story-beats,.story-beats--left,.story-beats--right{padding-bottom:max(4rem, calc(env(safe-area-inset-bottom) + 3rem));text-align:left;place-items:end start}.story-beat{font-size:clamp(2.2rem,10vw,4rem)}}.has-text-reveal .static-story-copy p{opacity:1;filter:none;transform:none}@media (prefers-reduced-motion:reduce){.opening__transition-veil{opacity:0!important}.opening__story-layer{min-height:100svh;position:relative;opacity:1!important}.opening__hero-copy{z-index:5;display:block!important}.static-story-copy{display:grid}}.opening{height:220svh}.opening__hero-copy{max-width:min(65rem, calc(100vw - (2 * var(--page-pad))))}.opening__hero-copy h1{max-width:12ch;font-size:clamp(3.25rem,7.4vw,5.75rem);line-height:.94}.opening__hero-copy p{color:#f5f5f0d6;max-width:47ch;font-size:clamp(1rem,1.25vw,1.125rem)}@media (width<=899px){.opening{height:145svh}}@media (width<=639px){.opening__hero-copy{bottom:max(2rem, calc(env(safe-area-inset-bottom) + 1.25rem))}.opening__hero-copy h1{max-width:10ch;font-size:clamp(2.7rem,12.5vw,4rem);line-height:.96}.opening__hero-copy p{max-width:34ch;margin-top:1rem;font-size:.975rem;line-height:1.55}}.studio-section{max-width:1600px;min-height:100svh;scroll-margin-top:var(--space-lg);background:0 0;grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;gap:clamp(2rem,4vw,4rem);margin-inline:auto;display:grid}.studio-section__intro{grid-column:1/6;position:sticky;top:clamp(2rem,8vh,6rem)}.studio-section__statement{max-width:50ch;color:var(--color-muted);margin-top:clamp(2rem,4vw,3.5rem);font-size:clamp(1rem,1.3vw,1.15rem);line-height:1.7}.studio-stats{grid-template-columns:repeat(3,1fr);align-items:start;gap:clamp(1rem,2vw,1.75rem);margin-top:clamp(2.5rem,4vw,3.5rem);padding-block:clamp(1rem,2vw,1.5rem);display:grid}.studio-stat{flex-direction:column;gap:.2rem;display:flex}.studio-stat__number{color:var(--color-text);letter-spacing:-.04em;align-items:baseline;font-size:clamp(2rem,3.5vw,3.25rem);font-weight:300;line-height:1;display:flex}.studio-stat__plus{color:var(--color-muted);margin-left:.1rem;font-size:.6em;font-weight:300}.studio-stat__badge{color:var(--color-text);letter-spacing:-.02em;align-items:center;height:clamp(2rem,3.5vw,3.25rem);font-size:clamp(1.25rem,2.2vw,1.85rem);font-weight:300;line-height:1;display:inline-flex}.studio-stat__label{color:var(--color-text);letter-spacing:-.01em;margin-top:.15rem;font-size:clamp(.82rem,.88vw,.92rem);font-weight:400}.studio-stat__sub{color:var(--color-muted);font-size:clamp(.72rem,.75vw,.78rem);line-height:1.35}@media (width<=639px){.studio-stats{grid-template-columns:1fr;gap:2rem}.studio-stat__number{font-size:clamp(2.4rem,11vw,3.5rem)}.studio-stat__badge{height:auto;font-size:clamp(1.6rem,7vw,2.2rem)}}.service-composition{border-top:1px solid var(--color-border);scroll-margin-top:var(--space-xl);grid-column:7/13}.service-panel{grid-template-columns:minmax(11rem,.85fr) minmax(14rem,1fr);align-items:start;gap:clamp(1rem,2.5vw,2.5rem);padding-block:clamp(2.25rem,5vw,4.25rem);display:grid;position:relative}.service-panel__line{background:var(--color-border);transform-origin:0;height:1px;position:absolute;bottom:0;left:0;right:0;transform:scaleX(1)}.service-panel h3{max-width:17ch;color:var(--color-text);letter-spacing:-.025em;transition:color .24s ease-out, transform .32s var(--ease-out);padding-bottom:2px;font-size:clamp(1.35rem,2.1vw,2.15rem);font-weight:300;line-height:1.25}.service-panel p{max-width:38ch;color:var(--color-muted);line-height:1.65;transition:color .24s ease-out}@media (width<=899px){.studio-section{gap:var(--space-xl);grid-template-columns:1fr;min-height:auto}.studio-section__intro{grid-column:auto;position:static}.studio-section__intro h2 br{display:none}.service-composition{grid-column:auto}.service-panel{grid-template-columns:2.5rem minmax(10rem,.85fr) minmax(13rem,1fr)}}@media (hover:hover) and (pointer:fine){.service-panel:hover h3{color:var(--color-text);transform:translate(6px)}.service-panel:hover p{color:color-mix(in srgb, var(--color-text) 88%, transparent)}}@media (width<=639px){.studio-section{gap:clamp(3.5rem,18vw,5rem)}.studio-section__statement{margin-top:var(--space-lg)}.service-panel{gap:var(--space-xs);grid-template-columns:1fr;padding-block:clamp(1.75rem,8vw,2.5rem)}.service-panel h3{max-width:none}.service-panel p{grid-column:1;margin-top:.35rem}}.studio-section{min-height:auto;padding-block:clamp(7rem,11vw,10rem) clamp(8rem,13vw,12rem)}.studio-section__intro{top:clamp(6rem,10vh,8rem)}.studio-section__statement{max-width:44ch}.studio-stats{border-top:1px solid var(--color-border)}.studio-stat__number,.studio-stat__badge{font-variant-numeric:tabular-nums}.service-panel{padding-block:clamp(2rem,4vw,3.5rem)}.service-panel h3{font-size:clamp(1.35rem,1.8vw,1.9rem)}@media (width<=899px){.studio-section{padding-block:clamp(6rem,16vw,8rem)}.studio-section__intro{position:static}}@media (width<=639px){.studio-section{gap:3.5rem}.studio-section__intro h2{font-size:clamp(2.7rem,13vw,4rem)}.studio-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.75rem 1rem}.studio-stat:last-child{grid-column:1/-1}.service-panel{gap:.65rem;padding-block:1.75rem}}.material-story__stage canvas,.material-story__stage picture,.material-story__stage>img{object-fit:cover;will-change:transform, opacity;transform-origin:50%;width:100%;height:116%;position:absolute;top:-8%;left:0;transform:translateZ(0)}.chapter-exit-veil--material{background:var(--color-worktable)}.cinematic-scrim--material{background:linear-gradient(90deg,#05040340 0%,#0504030d 20%,#0000 40%),linear-gradient(270deg,#05040359 0%,#05040314 20%,#0000 40%),linear-gradient(#0000 65%,#0504030d 85%,#0504034d 100%),linear-gradient(#0504031a 0%,#0000 15%)}.material-story{background:var(--color-canvas);height:200svh}.material{background:var(--color-canvas);width:100%;height:100svh;position:relative;overflow:hidden}.material__image-wrap{width:100%;height:100%;position:absolute;inset:0}.material__gradient{pointer-events:none;background:linear-gradient(#0000 0%,#05040340 30%,#050403b3 65%,#050403f2 100%),linear-gradient(90deg,#050403e0 0%,#05040373 45%,#0000 100%);position:absolute;inset:0}.material__picture img{object-fit:cover;width:100%;height:100%;display:block}.material__content{bottom:clamp(3rem,10vh,7rem);left:var(--page-pad);z-index:5;max-width:clamp(320px,80vw,750px);color:var(--color-text,#f5f5f0);position:absolute}.material__title{letter-spacing:-.03em;margin-bottom:var(--space-xs);color:#fff;text-shadow:0 4px 30px #000000e6;font-size:clamp(2.5rem,6vw,4.75rem);font-weight:300;line-height:1.05}.material__subtitle{color:#f5f5f0eb;text-shadow:0 2px 20px #000000e6;font-size:clamp(1.1rem,2.2vw,1.4rem);font-weight:300;line-height:1.5}.material{min-height:46rem}.material__gradient{background:linear-gradient(#05040314 22%,#0504036b 54%,#050403eb 100%),linear-gradient(90deg,#050403c2 0%,#0504032e 55%,#0000 78%)}.material__content{max-width:62rem}.material__title{text-shadow:0 2px 16px #000000b8;max-width:12ch}.material__subtitle{text-shadow:0 2px 12px #000000b3;max-width:42ch;margin-top:1rem}@media (width<=899px){.material{min-height:42rem}}@media (width<=639px){.material{height:82svh;min-height:38rem}.material__content{right:var(--page-pad);bottom:max(2.5rem, calc(env(safe-area-inset-bottom) + 2rem))}.material__title{font-size:clamp(2.65rem,12vw,3.75rem)}.material__subtitle{font-size:1rem}}@media (width>=1025px){.material.material--desktop-image-height{height:auto;min-height:0}.material--desktop-image-height .material__image-wrap{height:auto;position:relative}.material--desktop-image-height .material__picture img{height:auto}}@media (width>=640px) and (width<=1024px){.material.material--tablet-image-height{height:auto;min-height:0}.material--tablet-image-height .material__image-wrap{height:auto;position:relative}.material--tablet-image-height .material__picture img{height:auto}}@media (width<=639px){.material.material--mobile-image-height{height:auto;min-height:0}.material--mobile-image-height .material__image-wrap{height:auto;position:relative}.material--mobile-image-height .material__picture img{height:auto}}.selected-works{z-index:2;border-bottom:1px solid var(--color-border);background:var(--color-canvas);color:var(--color-text);position:relative;overflow:clip}.selected-works__inner{width:min(calc(100% - (2 * var(--page-pad))), var(--content-max));margin-inline:auto;padding-block:clamp(6.5rem,11vw,10.5rem) clamp(8rem,14vw,13rem)}.selected-works__header{flex-direction:column;display:flex}.selected-works__header h2{max-width:9ch;color:var(--color-text);font-size:var(--headline);letter-spacing:-.038em;text-wrap:balance;margin:0 0 clamp(2rem,4vw,3rem);font-weight:300;line-height:.98}.selected-works__intro{border-top:1px solid var(--color-border);justify-content:space-between;align-items:flex-end;gap:1.5rem;padding-top:clamp(2rem,4vw,3rem);display:flex}.selected-works__intro p{max-width:38ch;color:var(--color-muted);text-wrap:pretty;margin:0;font-size:clamp(.95rem,1.2vw,1.08rem);line-height:1.6}.selected-works__all-link,.client-stories__reviews-link{border:1px solid color-mix(in srgb, var(--color-text) 58%, transparent);border-radius:var(--radius-pill);min-height:44px;color:var(--color-text);transition:color var(--duration-ui) var(--ease-out), background-color var(--duration-ui) var(--ease-out), border-color var(--duration-ui) var(--ease-out), transform var(--duration-fast) var(--ease-out);flex:none;justify-content:center;align-items:center;gap:.65rem;padding:.65rem 1.15rem;font-size:.82rem;font-weight:500;line-height:1;text-decoration:none;display:inline-flex}.selected-works__all-link svg,.client-stories__reviews-link svg{transition:transform var(--duration-ui) var(--ease-out)}.selected-works__grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(5.5rem,10vw,10rem) clamp(1.5rem,3vw,3.25rem);margin-top:clamp(4.5rem,8vw,7rem);display:grid}.selected-work-card{grid-column:2/12;min-width:0}.selected-work-card:nth-child(6n+2){grid-column:1/6}.selected-work-card:nth-child(6n+3){grid-column:8/13;margin-top:clamp(4rem,10vw,9rem)}.selected-work-card:nth-child(6n+4){grid-column:3/11}.selected-work-card:nth-child(6n+5){grid-column:1/6}.selected-work-card:nth-child(6n+6){grid-column:8/13;margin-top:clamp(3rem,7vw,6rem)}.selected-work-card:nth-child(6n+7),.selected-work-card--wide{grid-column:2/12;margin-top:0}.selected-work-card--standard:nth-child(odd){grid-column:1/6}.selected-work-card--standard:nth-child(2n){grid-column:8/13}.selected-work-card__content{color:inherit;text-decoration:none;display:block}.selected-work-card__content:focus-visible{border-radius:var(--radius-media);outline:2px solid var(--focus-ring,var(--color-text));outline-offset:6px}.selected-work-card__media{aspect-ratio:4/3;border-radius:var(--radius-media);background:var(--color-surface);isolation:isolate;position:relative;overflow:hidden}.selected-work-card--wide .selected-work-card__media,.selected-work-card:nth-child(6n+4) .selected-work-card__media,.selected-work-card:nth-child(6n+7) .selected-work-card__media{aspect-ratio:16/10}.selected-work-card__image-shell{width:100%;height:100%;transition:transform .7s var(--ease-out);display:block;transform:scale(1)}.selected-work-card__media img{object-fit:cover;width:100%;height:100%;display:block}.selected-work-card__veil{z-index:1;opacity:0;transition:opacity .42s var(--ease-out);background:linear-gradient(#0000 62%,#0504037a);position:absolute;inset:0}.selected-work-card__view{z-index:2;color:#fff;opacity:0;transition:opacity .32s var(--ease-out), transform .42s var(--ease-out);align-items:center;gap:.55rem;font-size:.8rem;display:inline-flex;position:absolute;bottom:1.2rem;right:1.2rem;transform:translateY(.65rem)}.selected-work-card__caption{grid-template-columns:minmax(9rem,.42fr) minmax(0,.58fr);align-items:start;gap:1rem;padding-top:.9rem;display:grid}.selected-work-card__caption h3,.selected-work-card__caption p{margin:0}.selected-work-card__caption h3{color:var(--color-text);letter-spacing:-.015em;font-size:clamp(.95rem,1.1vw,1.1rem);font-weight:500;line-height:1.35}.selected-work-card__category{color:color-mix(in srgb, var(--color-muted) 78%, transparent);text-transform:uppercase;letter-spacing:.08em;font-size:.68rem;line-height:1.35;margin-bottom:.28rem!important}.selected-work-card__description{max-width:42ch;color:var(--color-muted);text-wrap:pretty;font-size:clamp(.78rem,.85vw,.9rem);line-height:1.55}.selected-works__empty{color:var(--color-muted);margin:4rem 0 0}@media (hover:hover) and (pointer:fine){.selected-works__all-link:hover{border-color:var(--color-text);background:var(--color-text);color:var(--color-canvas);transform:translateY(-2px)}.selected-works__all-link:hover svg{transform:translate(3px)}.selected-work-card__content[href]:hover .selected-work-card__image-shell{transform:scale(1.025)}.selected-work-card__content[href]:hover .selected-work-card__veil{opacity:1}.selected-work-card__content[href]:hover .selected-work-card__view{opacity:1;transform:translate(0,0)}}@media (width<=1023px){.selected-works__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(4rem,9vw,6rem) clamp(1.25rem,3vw,2.25rem)}.selected-work-card,.selected-work-card:nth-child(n),.selected-work-card--wide,.selected-work-card--standard:nth-child(n){grid-column:auto;margin-top:0}.selected-work-card:first-child,.selected-work-card--wide{grid-column:1/-1}}@media (width<=639px){.selected-works__inner{padding-block:6rem 7.5rem}.selected-works__header h2{max-width:8ch;font-size:clamp(2.8rem,13vw,4rem)}.selected-works__intro{flex-direction:column;align-items:flex-start;gap:1.25rem}.selected-works__intro p{max-width:34ch}.selected-works__grid{grid-template-columns:1fr;gap:4.5rem;margin-top:3.75rem}.selected-work-card:first-child,.selected-work-card--wide{grid-column:auto}.selected-work-card__media,.selected-work-card--wide .selected-work-card__media,.selected-work-card:nth-child(n) .selected-work-card__media{aspect-ratio:4/3}.selected-work-card__caption{grid-template-columns:1fr;gap:.5rem}.selected-work-card__description{max-width:36ch;font-size:.86rem}}@media (prefers-reduced-motion:reduce),(forced-colors:active){.selected-work-card__image-shell,.selected-work-card__view,.selected-work-card__veil{transition:none;transform:none}.selected-work-card__veil,.selected-work-card__view{display:none}}.client-stories{z-index:2;border-bottom:1px solid var(--color-border);min-height:auto;color:var(--color-text);background:0 0;position:relative;overflow:clip}.client-stories__stage{width:min(calc(100% - (2 * var(--page-pad))), var(--content-max));margin-inline:auto;padding-block:clamp(6.5rem,10vw,9rem)}.client-stories__header{gap:var(--space-md);grid-template-columns:repeat(12,minmax(0,1fr));align-items:end;margin-bottom:clamp(3.5rem,6vw,5.5rem);display:grid}.client-stories__header h2{max-width:10ch;color:var(--color-text);font-size:var(--headline);letter-spacing:-.038em;text-wrap:balance;grid-column:1/7;margin:0;font-weight:300;line-height:.98}.client-stories__intro{text-align:right;flex-direction:column;grid-column:8/13;align-items:flex-end;gap:1.25rem;display:flex}.client-stories__intro .client-stories__reviews-badge{align-items:center;gap:.65rem;margin-top:1rem;display:flex}.reviews-badge__stars{gap:.15rem;display:flex}.reviews-badge__text{color:var(--color-muted);font-size:.95rem;font-weight:500}.reviews-badge__text strong{color:var(--color-text);margin-right:.2rem}.client-stories__intro p{max-width:38ch;color:var(--color-muted);text-wrap:pretty;margin:0;font-size:clamp(.95rem,1.2vw,1.08rem);line-height:1.6}.client-stories__meta{color:color-mix(in srgb, var(--color-muted) 84%, transparent);letter-spacing:.035em;justify-content:space-between;align-items:center;padding-bottom:1rem;font-size:.75rem;display:flex}.client-stories__cue-touch{display:none}.client-stories__viewport{scrollbar-width:none;scroll-snap-type:x proximity;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;width:100%;padding-block:2px;overflow:auto hidden}.client-stories__viewport::-webkit-scrollbar{display:none}.client-stories__viewport:focus-visible{border-radius:var(--radius-card);outline:2px solid var(--focus-ring,var(--color-text));outline-offset:5px}.client-stories__track{gap:var(--space-md);will-change:transform;width:max-content;margin:0;padding:0;list-style:none;display:flex}.client-story{border:1px solid var(--color-border);border-radius:var(--radius-card);scroll-snap-align:start;min-height:20rem;transition:background-color var(--duration-ui) var(--ease-out);background:0 0;flex:0 0 clamp(29rem,44vw,40rem);grid-template-rows:1fr auto;padding:clamp(2rem,2.5vw,2.5rem);display:grid}.client-story blockquote{width:100%;max-width:none;box-shadow:none;color:inherit;text-align:left;float:none;quotes:none;background:0 0;border:0;grid-template-columns:2rem minmax(0,1fr);align-content:center;gap:1rem;margin:0;padding:2rem 0;font-style:normal;display:grid}.client-story blockquote:before,.client-story blockquote:after{content:none}.client-story__quote-mark{color:var(--color-text);font-size:2.75rem;font-weight:300;line-height:.8}.client-story blockquote p{width:auto;max-width:34ch;color:color-mix(in srgb, var(--color-text) 78%, transparent);letter-spacing:-.015em;text-align:left;text-wrap:pretty;margin:0;padding:0;font-size:clamp(1.08rem,1.4vw,1.3rem);font-weight:300;line-height:1.5}body.wall2wall-cinematic-home .client-stories__header h2{letter-spacing:-.038em!important}body.wall2wall-cinematic-home .client-stories__track{margin:0!important;padding:0!important;list-style:none!important}body.wall2wall-cinematic-home .client-story{margin:0!important;list-style:none!important}body.wall2wall-cinematic-home .client-story blockquote{width:100%!important;max-width:none!important;box-shadow:none!important;color:inherit!important;font-size:inherit!important;font-style:normal!important;line-height:inherit!important;text-align:left!important;text-indent:0!important;float:none!important;quotes:none!important;background:0 0!important;border:0!important;margin:0!important;padding:2rem 0!important}body.wall2wall-cinematic-home .client-story blockquote:before,body.wall2wall-cinematic-home .client-story blockquote:after{content:none!important}body.wall2wall-cinematic-home .client-story blockquote p{width:auto!important;max-width:34ch!important;color:color-mix(in srgb, var(--color-text) 78%, transparent)!important;letter-spacing:-.015em!important;text-align:left!important;text-indent:0!important;margin:0!important;padding:0!important;font-size:clamp(1.08rem,1.4vw,1.3rem)!important;font-weight:300!important;line-height:1.5!important}body.wall2wall-cinematic-home .client-story__client{margin:0!important}body.wall2wall-cinematic-home .client-story__identity cite{font-style:normal!important}.client-story__client{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.85rem;padding-top:1rem;display:grid}.client-story__identity{flex-direction:column;gap:.2rem;min-width:0;display:flex}.client-story__identity cite{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;font-style:normal;font-weight:500;overflow:hidden}.client-story time{color:var(--color-muted);white-space:nowrap;font-size:.72rem;line-height:1.4}.client-story__date-mobile{display:none}.client-stories__controls{align-items:center;gap:1.5rem;margin-top:1.5rem;display:flex}.client-stories__progress{background:var(--color-border);width:100%;height:1px;position:relative;overflow:hidden}.client-stories__progress span{background:var(--color-text);transform-origin:0;transition:transform 80ms linear;position:absolute;inset:0;transform:scaleX(0)}.client-stories__buttons{gap:.5rem;display:flex}.client-stories__buttons button{border:1px solid var(--color-border);width:44px;height:44px;color:var(--color-text);cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out), background-color var(--duration-fast) var(--ease-out), opacity var(--duration-fast) var(--ease-out);background:0 0;border-radius:50%;flex:none;place-items:center;display:inline-grid}.client-stories__buttons button:disabled{cursor:default;opacity:.32}.client-stories__empty{color:var(--color-muted);margin:4rem 0 0}.client-stories.is-horizontal{height:var(--client-stories-height)}.client-stories.is-horizontal .client-stories__stage{height:var(--stage-height,100svh);flex-direction:column;justify-content:center;padding-block:clamp(2.5rem,5vh,4.5rem);display:flex;position:sticky;top:0}.client-stories.is-horizontal .client-stories__header{margin-bottom:clamp(2rem,4vh,3.5rem)}.client-stories.is-horizontal .client-stories__viewport{scroll-snap-type:none;overflow:hidden}.client-stories.is-horizontal .client-stories__controls{display:none}@media (hover:hover) and (pointer:fine){.client-story:hover{background:0 0}.client-stories__buttons button:not(:disabled):hover{border-color:var(--color-text);background:var(--color-text);color:var(--color-canvas)}}@media (width<=1023px){.client-stories__header{grid-template-columns:repeat(8,minmax(0,1fr))}.client-stories__header h2{grid-column:1/5}.client-stories__intro{grid-column:5/9}.client-stories__cue-desktop{display:none}.client-stories__cue-touch{display:inline}.client-story{flex-basis:clamp(23rem,74vw,34rem)}}@media (width<=639px){.client-stories__stage{width:100%;padding-block:6rem 7rem}.client-stories__header,.client-stories__meta,.client-stories__controls{margin-inline:var(--page-pad)}.client-stories__header{flex-direction:column;align-items:flex-start;gap:1.5rem;margin-bottom:3rem;display:flex}.client-stories__header h2{max-width:9ch;font-size:clamp(2.8rem,13vw,4rem)}.client-stories__intro{text-align:left;align-items:flex-start;gap:1rem}.client-stories__viewport{padding-inline:var(--page-pad);scroll-snap-type:x mandatory;scroll-padding-inline:var(--page-pad)}.client-stories__track{padding-right:var(--page-pad)}.client-story{scroll-snap-stop:always;flex-basis:min(84vw,23rem);min-height:18rem;padding:1.5rem}.client-story blockquote{grid-template-columns:1.5rem minmax(0,1fr);gap:.65rem}body.wall2wall-cinematic-home .client-story blockquote{padding-block:2rem!important}.client-story blockquote p{font-size:1.05rem}body.wall2wall-cinematic-home .client-story blockquote p{font-size:1.05rem!important}.client-story__date-desktop{display:none}.client-story__date-mobile{display:inline}}@media (prefers-reduced-motion:reduce),(forced-colors:active){.client-stories{overflow:visible;height:auto!important}.client-stories__stage{height:auto!important;position:static!important}.client-stories__viewport{overflow:visible}.client-stories__track{will-change:auto;grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr));gap:1px;width:auto;display:grid;transform:none!important}.client-story{min-height:27rem}.client-stories__controls,.client-stories__cue{display:none}}@media print{.client-stories{height:auto!important}.client-stories__stage{height:auto!important;position:static!important}.client-stories__viewport{overflow:visible}.client-stories__track{grid-template-columns:1fr 1fr;width:auto;display:grid;transform:none!important}.client-stories__controls{display:none}}.faq-section{width:100%;padding-top:var(--space-xl);padding-bottom:var(--space-xl);border-bottom:1px solid var(--color-border);background:var(--color-canvas);position:relative}.faq-section__inner{gap:var(--space-xl);grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);align-items:start;display:grid}.faq-section__header{position:sticky;top:6rem}.faq-section__header h2{font-size:var(--headline);letter-spacing:-.03em;color:var(--color-text);margin-bottom:var(--space-md);font-weight:300;line-height:1.08}.faq-section__subtitle{color:var(--color-muted);max-width:42ch;font-size:1.05rem;line-height:1.6}.faq-accordion{border-top:1px solid var(--color-border);flex-direction:column;display:flex}.faq-item{border-bottom:1px solid var(--color-border);transition:background-color var(--duration-ui) var(--ease-out)}.faq-item__trigger{cursor:pointer;user-select:none;color:var(--color-text);transition:color var(--duration-fast) var(--ease-out);align-items:center;gap:1.25rem;padding:1.75rem .5rem;list-style:none;display:flex}.faq-item__trigger::-webkit-details-marker{display:none}.faq-item__trigger:hover{color:#fff}.faq-item__trigger:focus-visible{outline:2px solid var(--color-text);outline-offset:4px;border-radius:4px}.faq-item__number{letter-spacing:.05em;color:var(--color-muted);font-size:.85rem;font-weight:400;font-family:var(--font-sans);opacity:.75;min-width:2.2ch;transition:color .3s ease-out,opacity .3s ease-out}.faq-item__question{letter-spacing:-.015em;color:var(--color-muted);flex:1;margin:0;padding-bottom:2px;font-size:clamp(1.1rem,2vw,1.35rem);font-weight:400;line-height:1.45;transition:color .3s ease-out}.faq-item__icon{width:28px;height:28px;color:var(--color-muted);transition:transform var(--duration-ui) var(--ease-out), color var(--duration-fast) var(--ease-out);justify-content:center;align-items:center;display:flex}.faq-item__trigger:hover .faq-item__icon{color:var(--color-text)}.faq-icon__vertical{transform-origin:50%;transition:transform var(--duration-ui) var(--ease-out)}.faq-item[open] .faq-icon__vertical{transform:scaleY(0)}.faq-item[open] .faq-item__icon{color:var(--color-text)}.faq-item__content{will-change:height, opacity;overflow:hidden}.faq-item:not([open]) .faq-item__content{display:none}.faq-item__inner{padding:0 .5rem 1.75rem 3rem}.faq-item__inner p{color:var(--color-muted);max-width:65ch;margin:0;font-size:1.025rem;line-height:1.7}@media (width<=900px){.faq-section__inner{gap:var(--space-lg);grid-template-columns:1fr}.faq-section__header{position:static}.faq-item__inner{padding-left:2.25rem}}.faq-section{padding-block:clamp(7rem,11vw,10rem)}.faq-section__inner{width:min(100%,100rem);margin-inline:auto}.faq-section__header h2{letter-spacing:-.038em}.faq-item__trigger{min-height:76px;transition:color var(--duration-fast) var(--ease-out);padding-inline:.75rem}.faq-item__inner{padding-right:clamp(1rem,4vw,4rem)}@media (hover:hover) and (pointer:fine){.faq-item:hover .faq-item__question,.faq-item[open] .faq-item__question{color:#fff}.faq-item:hover .faq-item__number,.faq-item[open] .faq-item__number{color:#fff;opacity:1}.faq-item:hover .faq-item__icon,.faq-item[open] .faq-item__icon{color:#fff}}@media (width<=639px){.faq-section{padding-block:6rem 7rem}.faq-section__header h2{font-size:clamp(2.8rem,13vw,4rem)}.faq-item__trigger{gap:.8rem;min-height:72px;padding-block:1rem;padding-inline:.25rem}.faq-item__question{font-size:1rem}.faq-item__inner{padding:.25rem .5rem 1.5rem 2rem}.faq-item__inner p{font-size:1rem}}.closing-reveal__stage canvas,.closing-reveal__stage picture,.closing-reveal__stage>img{object-fit:cover;will-change:transform, opacity;transform-origin:50%;width:100%;height:128%;position:absolute;top:-14%;left:0;transform:translateZ(0)}.closing-reveal__stage picture,.closing-reveal__stage>img{z-index:0}.closing-reveal__stage canvas{z-index:1}.closing-reveal.is-static .closing-reveal__content{opacity:1!important;pointer-events:auto!important;transform:none!important}.closing-reveal{background:var(--color-canvas);height:200svh}.closing-reveal:after{z-index:3;background:linear-gradient(to bottom, transparent, color-mix(in srgb, var(--color-canvas) 72%, var(--color-surface)));content:"";pointer-events:none;height:clamp(5rem,13vw,11rem);position:absolute;bottom:0;left:0;right:0}.closing-reveal__scrim{z-index:2;pointer-events:none;background:linear-gradient(90deg,#050403cc 0%,#0504032e 60%,#05040314 100%);position:absolute;inset:0}.closing-reveal__content{z-index:3;min-height:100svh;padding:var(--space-xl) var(--page-pad);flex-direction:column;justify-content:flex-end;align-items:flex-start;display:flex;position:relative}.closing-reveal__content h2{max-width:17ch}.closing-reveal__content p{max-width:48ch;margin-top:var(--space-md);color:#f5f5f0cc;line-height:1.6}.closing-reveal__actions{gap:var(--space-sm);margin-top:var(--space-lg);flex-wrap:wrap;display:flex}@media (width<=899px){.closing-reveal{height:165svh}}@media (width<=639px){.closing-reveal__content br{display:none}.closing-reveal{height:165svh}.closing-reveal__actions,.closing-reveal__actions .button{width:100%}}@media (prefers-reduced-motion:reduce){.closing-reveal [data-scrub-fallback]{opacity:1!important}.closing-reveal__content{opacity:1!important;pointer-events:auto!important;transform:none!important}}.closing-reveal{height:165svh}.closing-reveal__content h2{letter-spacing:-.038em}@media (width<=899px){.closing-reveal{height:135svh}}@media (width<=639px){.closing-reveal__content{padding-bottom:max(3rem, calc(env(safe-area-inset-bottom) + 2rem))}.closing-reveal__content h2{font-size:clamp(2.7rem,12.5vw,4rem)}}.enquiry-form{gap:var(--space-md);flex-direction:column;display:flex}.enquiry-form__card{gap:var(--space-md);background:color-mix(in srgb, var(--color-canvas) 85%, var(--color-surface));border:1px solid color-mix(in srgb, var(--color-border) 80%, transparent);border-radius:var(--radius-card);flex-direction:column;padding:1.25rem 1.35rem;transition:border-color .16s,box-shadow .16s;display:flex}.enquiry-form__card:focus-within{border-color:color-mix(in srgb, var(--color-border) 40%, var(--color-text))}.enquiry-form__card--footer{gap:var(--space-md);background:0 0;border:0;padding:.5rem 0 0}.enquiry-form__card-header{border-bottom:1px solid color-mix(in srgb, var(--color-border) 60%, transparent);align-items:center;gap:.6rem;padding-bottom:.5rem;display:flex}.enquiry-form__card-num{letter-spacing:.08em;color:var(--color-muted);font-size:.7rem;font-weight:600}.enquiry-form__card-title{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text);font-size:.82rem;font-weight:500}.enquiry-form__grid--2col{gap:var(--space-md);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.enquiry-field{flex-direction:column;gap:.45rem;display:flex}.enquiry-field__label{color:var(--color-text);font-size:.84rem;font-weight:400}.enquiry-field__required{color:#e2aa99}.enquiry-field__optional{color:var(--color-muted);margin-left:.3rem;font-size:.72rem;font-weight:400}.enquiry-field__input,.enquiry-field__textarea{outline:0;width:100%;min-height:48px;padding:.8rem 1rem;font-size:.92rem;transition:border-color .16s,box-shadow .16s,background-color .16s;border:1px solid color-mix(in srgb, var(--color-border) 90%, #444)!important;border-radius:var(--radius-card)!important;background:color-mix(in srgb, var(--color-canvas) 95%, #000)!important;color:var(--color-text)!important}.enquiry-field__textarea{resize:vertical;min-height:90px}.enquiry-field__input:focus,.enquiry-field__textarea:focus{border-color:var(--color-text)!important;background:color-mix(in srgb, var(--color-canvas) 75%, var(--color-surface))!important;box-shadow:0 0 0 3px color-mix(in srgb, var(--color-text) 18%, transparent)!important}.enquiry-chip-group{border:0;flex-direction:column;gap:.55rem;margin:0;padding:0;display:flex}.enquiry-chip-options{gap:.65rem;display:flex}.enquiry-chip-options--wrap{flex-wrap:wrap;gap:.65rem}.enquiry-chip{cursor:pointer;user-select:none;display:inline-flex;position:relative}.enquiry-chip input[type=radio]{opacity:0;pointer-events:none;width:0;height:0;position:absolute}.enquiry-chip__button{border:1px solid color-mix(in srgb, var(--color-border) 90%, #555);background:color-mix(in srgb, var(--color-canvas) 92%, var(--color-surface));min-height:44px;color:var(--color-text);white-space:nowrap;transition:color .16s ease, border-color .16s ease, background-color .16s ease, transform .14s var(--ease-out), box-shadow .16s ease;justify-content:center;align-items:center;gap:.45rem;padding:.6rem 1.3rem;font-size:.88rem;font-weight:400;display:inline-flex;border-radius:9999px!important}.enquiry-chip__check{width:12px;height:12px;display:none}.enquiry-chip input[type=radio]:checked+.enquiry-chip__button .enquiry-chip__check{display:inline-block}.enquiry-chip:hover .enquiry-chip__button{color:var(--color-text);border-color:var(--color-text);background:color-mix(in srgb, var(--color-canvas) 60%, var(--color-surface))}.enquiry-chip input[type=radio]:checked+.enquiry-chip__button{font-weight:600;box-shadow:0 4px 16px #f5f5f03d;background:var(--color-text)!important;color:var(--color-canvas)!important;border-color:var(--color-text)!important}.enquiry-chip input[type=radio]:focus-visible+.enquiry-chip__button{box-shadow:0 0 0 3px color-mix(in srgb, var(--color-text) 30%, transparent)}.enquiry-form__consent{cursor:pointer;color:var(--color-muted);align-items:flex-start;gap:.75rem;font-size:.84rem;line-height:1.45;display:flex}.enquiry-form__consent input{accent-color:var(--color-text);cursor:pointer;flex-shrink:0;width:18px;height:18px;margin-top:1px}.enquiry-form__submit{border-radius:var(--radius-pill);background:var(--color-cta);width:100%;min-height:50px;color:var(--color-cta-text);cursor:pointer;transition:transform .16s var(--ease-out), opacity .16s ease, background-color .16s ease;border:0;justify-content:center;align-items:center;gap:.6rem;font-size:.92rem;font-weight:500;display:inline-flex}.enquiry-form__submit:hover{transform:translateY(-1px)}.enquiry-form__submit:hover .enquiry-form__submit-arrow{transform:translate(4px)}.enquiry-form__submit-arrow{transition:transform .16s var(--ease-out)}.enquiry-form__submit[data-loading=true] span:after{content:"";border:1px solid;border-right-color:#0000;border-radius:50%;width:.8em;height:.8em;margin-left:.65em;animation:.7s linear infinite spin;display:inline-block}.enquiry-form__status{min-height:1.5em;color:var(--color-muted);font-size:.84rem;line-height:1.5}.enquiry-form__status a{color:var(--color-text);text-decoration:underline}.enquiry-form__status[data-state=success]{color:#a3e635}.enquiry-form__status[data-state=error]{color:#e2aa99}.honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.initiate-section{border-bottom:1px solid var(--color-border);background:radial-gradient(circle at 88% 12%, color-mix(in srgb, var(--color-surface) 72%, transparent), transparent 32rem), color-mix(in srgb, var(--color-canvas) 78%, var(--color-surface));width:100%;padding:clamp(6rem, 11vw, 10rem) var(--page-pad) clamp(7rem, 13vw, 12rem);color:var(--color-text);scroll-margin-top:4.5rem;position:relative}.initiate-section__container{grid-template-columns:minmax(18rem,.72fr) minmax(32rem,1.28fr);align-items:start;gap:clamp(4rem,10vw,10rem);width:min(100%,1320px);margin-inline:auto;display:grid}.initiate-section__header{position:sticky;top:7rem}.initiate-section__title{max-width:12ch;color:var(--color-text);font-size:var(--headline);letter-spacing:-.03em;margin-top:clamp(2rem,4vw,3.5rem);font-weight:300;line-height:1.02}.initiate-section__subtitle{max-width:43ch;margin-top:var(--space-lg);color:var(--color-muted);line-height:1.7}.initiate-section__highlights{gap:var(--space-lg);border-top:1px solid var(--color-border);padding-top:var(--space-lg);grid-template-columns:repeat(2,minmax(0,1fr));margin:clamp(2.75rem,5vw,4rem) 0 0;display:grid}.initiate-section__highlight-item{flex-direction:column;gap:.35rem;display:flex}.initiate-section__highlight-label{color:var(--color-muted);font-size:.72rem}.initiate-section__highlight-value{color:var(--color-text);margin:0;font-size:.9rem;line-height:1.5}.initiate-section__whatsapp-link{min-height:44px;margin-top:var(--space-md);color:var(--color-muted);align-items:center;gap:.5rem;font-size:.88rem;text-decoration:none;transition:color .18s ease-out;display:inline-flex}.initiate-section__whatsapp-link svg{transition:transform .22s var(--ease-out)}.initiate-section__body{min-width:0;scroll-margin-top:6rem}.enquiry-form[data-inline-form]{gap:0}.enquiry-form[data-inline-form] .enquiry-form__card{gap:var(--space-lg);border:0;border-top:1px solid var(--color-border);box-shadow:none;background:0 0;border-radius:0;padding:clamp(2rem,4vw,3.5rem) 0}.enquiry-form[data-inline-form] .enquiry-form__card:first-of-type{border-top:0;padding-top:0}.enquiry-form[data-inline-form] .enquiry-form__card:focus-within{border-color:var(--color-border)}.enquiry-form[data-inline-form] .enquiry-form__card-header{gap:var(--space-md);border:0;grid-template-columns:minmax(9rem,.45fr) minmax(0,1fr);padding:0;display:grid}.enquiry-form[data-inline-form] .enquiry-form__card-title{color:var(--color-text);letter-spacing:-.01em;text-transform:none;font-size:1.1rem;font-weight:400}.enquiry-form[data-inline-form] .enquiry-form__card-header p{color:var(--color-muted);text-align:right;font-size:.84rem;line-height:1.5}.enquiry-form[data-inline-form] .enquiry-field__input,.enquiry-form[data-inline-form] .enquiry-field__textarea{border:1px solid color-mix(in srgb, var(--color-border) 84%, var(--color-text))!important;background:color-mix(in srgb, var(--color-canvas) 78%, transparent)!important;border-radius:4px!important}.enquiry-form[data-inline-form] .enquiry-field__input:hover,.enquiry-form[data-inline-form] .enquiry-field__textarea:hover{border-color:color-mix(in srgb, var(--color-border) 48%, var(--color-text))!important}.enquiry-form[data-inline-form] :is(.enquiry-field__input,.enquiry-field__textarea):user-invalid{border-color:#b87868}.enquiry-form[data-inline-form] .enquiry-chip-group{margin-bottom:.5rem}.enquiry-form[data-inline-form] .enquiry-chip-group .enquiry-field__label{margin-bottom:.7rem;display:block}.enquiry-form[data-inline-form] .enquiry-chip-options{flex-wrap:wrap;gap:.75rem;display:flex}.enquiry-form[data-inline-form] .enquiry-chip__button{background:color-mix(in srgb, var(--color-surface) 60%, transparent);border:1px solid color-mix(in srgb, var(--color-border) 80%, transparent);justify-content:center;align-items:center;gap:.5rem;min-height:46px;padding:.7rem 1.45rem;font-size:.9rem;line-height:1.3;transition:all .2s cubic-bezier(.16,1,.3,1);display:inline-flex;border-radius:9999px!important}.enquiry-form[data-inline-form] .enquiry-chip:hover .enquiry-chip__button{border-color:var(--color-text);background:color-mix(in srgb, var(--color-text) 10%, transparent);transform:translateY(-1px)}.enquiry-form[data-inline-form] .enquiry-chip input[type=radio]:checked+.enquiry-chip__button{background:var(--color-text);border-color:var(--color-text);box-shadow:0 4px 16px #00000059;color:var(--color-canvas)!important}.enquiry-form[data-inline-form] .enquiry-form__card--footer{align-items:center;gap:var(--space-md) var(--space-lg);border-top:1px solid var(--color-border);grid-template-columns:minmax(0,1fr) auto;padding:clamp(2rem,4vw,3rem) 0 0;display:grid}.enquiry-form[data-inline-form] .enquiry-form__submit{width:auto;min-width:13rem;padding-inline:1.5rem}.enquiry-form[data-inline-form] .enquiry-form__status{grid-column:1/-1}@media (width<=899px){.initiate-section__container{grid-template-columns:1fr;gap:clamp(4rem,10vw,6rem)}.initiate-section__header{position:static}.initiate-section__title{max-width:14ch}.enquiry-dialog__shell{gap:var(--space-lg);padding-top:calc(var(--space-xl) + 1rem);grid-template-columns:1fr}}@media (hover:hover) and (pointer:fine){.initiate-section__whatsapp-link:hover,.enquiry-dialog__close:hover{color:var(--color-text)}}@media (width<=639px){.initiate-section{padding-block:clamp(5.5rem,20vw,7rem) clamp(6rem,22vw,8rem)}.initiate-section__container{grid-template-columns:1fr;gap:clamp(3.5rem,16vw,5rem)}.initiate-section__title{max-width:12ch;font-size:clamp(2.65rem,12vw,4rem)}.initiate-section__highlights{gap:var(--space-md);grid-template-columns:1fr}.enquiry-form[data-inline-form] .enquiry-form__card-header,.enquiry-form[data-inline-form] .enquiry-form__grid--2col,.enquiry-form[data-inline-form] .enquiry-form__card--footer{grid-template-columns:1fr}.enquiry-form[data-inline-form] .enquiry-form__card-header{gap:.35rem}.enquiry-form[data-inline-form] .enquiry-form__card-header p{text-align:left}.enquiry-form[data-inline-form] .enquiry-chip-options{flex-wrap:wrap}.enquiry-form[data-inline-form] .enquiry-form__submit{width:100%}.enquiry-dialog{inset:auto 0 0!important;border:1px solid var(--color-border)!important;background:var(--color-surface)!important;width:100vw!important;max-width:100vw!important;height:88svh!important;max-height:88svh!important;color:var(--color-text)!important;border-bottom:0!important;border-radius:20px 20px 0 0!important;flex-direction:column!important;margin:0!important;display:flex!important;position:fixed!important;inset:auto 0 0!important;overflow:hidden!important;box-shadow:0 -16px 60px #000000f2!important}.enquiry-dialog[open]{flex-direction:column!important;display:flex!important}.enquiry-dialog__mobile-header{border-bottom:1px solid var(--color-border);background:color-mix(in srgb, var(--color-canvas) 85%, var(--color-surface));z-index:10;flex-direction:column;flex-shrink:0;padding:.65rem 1.1rem .75rem;display:flex;position:relative}.enquiry-dialog__drag-handle{background:color-mix(in srgb, var(--color-border) 90%, var(--color-text));opacity:.45;border-radius:2px;width:40px;height:4px;margin:0 auto .6rem;display:block}.enquiry-dialog__mobile-header-content{justify-content:space-between;align-items:center;display:flex}.enquiry-dialog__mobile-title-group{flex-direction:column;gap:.15rem;display:flex}.enquiry-dialog__mobile-title-group .enquiry-dialog__badge{margin-bottom:0;padding:.25rem .6rem;font-size:.65rem}.enquiry-dialog__mobile-title{color:var(--color-text);font-size:1.25rem;font-weight:400;line-height:1.2}.enquiry-dialog__close--mobile{width:36px;height:36px;position:relative;top:auto;right:auto}.enquiry-dialog__close--desktop,.enquiry-dialog__sidebar{display:none}.enquiry-dialog__shell{flex-direction:column;flex:1;grid-template-columns:1fr;height:100%;min-height:0;max-height:100%;display:flex;overflow:hidden}.enquiry-dialog__body{-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;min-height:0;padding:1rem 1rem calc(2rem + env(safe-area-inset-bottom));flex:1;overflow-y:auto!important}.enquiry-form{flex-direction:column;gap:.85rem;display:flex}.enquiry-form__card{background:color-mix(in srgb, var(--color-canvas) 90%, var(--color-surface));border-radius:14px;padding:1rem 1.1rem}.enquiry-form__grid--2col{grid-template-columns:1fr}.enquiry-chip__button{min-height:38px;padding:.5rem .95rem;font-size:.82rem}}@media (prefers-reduced-motion:reduce){.enquiry-form__submit[data-loading=true] span:after{border-right-color:currentColor;animation:none}.enquiry-dialog,.enquiry-dialog::backdrop{transition:opacity .16s ease-out, overlay .16s allow-discrete, display .16s allow-discrete;transform:none}}.initiate-section{background:radial-gradient(circle at 92% 4%,#ffffff0b,#0000 29rem),#0b0a09}.initiate-section__title{letter-spacing:-.038em;margin-top:0}.enquiry-field__input,.enquiry-field__textarea{caret-color:var(--color-text)}.enquiry-field__input::placeholder,.enquiry-field__textarea::placeholder{color:#f5f5f09e}.enquiry-form__consent input{accent-color:var(--color-text)}@media (width<=639px){.initiate-section{padding-block:6rem 7rem}.initiate-section__title{font-size:clamp(2.7rem,12.5vw,4rem)}.enquiry-field__input,.enquiry-field__textarea{font-size:1rem}}.initiate-section__container{max-width:var(--content-max)}.site-footer__brand img{object-fit:contain;width:32px;height:auto}.site-footer{border-top:1px solid var(--color-border);background:var(--color-canvas);padding:clamp(3.5rem, 6vw, 5.5rem) var(--page-pad) var(--space-lg)}.site-footer__details{border-top:0;grid-template-columns:minmax(0,1.55fr) minmax(9rem,.38fr) minmax(9rem,.37fr);gap:clamp(3rem,8vw,9rem);margin-top:0;padding-top:0;display:grid}.site-footer__locations{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(2rem,5vw,5rem);display:grid}.site-footer address{flex-direction:column;gap:.75rem;font-size:.9rem;font-style:normal;line-height:1.65;display:flex}.site-footer address strong{color:var(--color-text);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:500}.site-footer address span{color:var(--color-muted)}.site-footer__link-group,.site-footer__social,.site-footer__nav,.site-footer__social-list{flex-direction:column;align-items:flex-start;display:flex}.site-footer__nav a,.site-footer__social a,.site-footer__social-list a,.site-footer__meta a{min-height:40px;color:var(--color-muted);transition:color .18s ease-out, transform .18s var(--ease-out);align-items:center;gap:6px;font-size:.9rem;text-decoration:none;display:inline-flex}.site-footer__nav,.site-footer__social a,.site-footer__social-list{margin-top:var(--space-sm)}.site-footer__meta{align-items:center;gap:var(--space-lg);border-top:1px solid var(--color-border);padding-top:var(--space-md);color:var(--color-muted);margin-top:clamp(4rem,8vw,7rem);font-size:.8rem;display:flex}.site-footer__meta a:last-child{margin-left:auto}.site-footer__phone:active,.site-footer__whatsapp:active,.site-footer__nav a:active,.site-footer__social a:active,.site-footer__meta a:active{transform:translateY(1px)}@media (width<=899px){.site-footer__main{grid-template-columns:minmax(0,1.1fr) minmax(17rem,.9fr);gap:clamp(3rem,8vw,5rem)}.site-footer__details{grid-template-columns:minmax(0,1.2fr) repeat(2,minmax(7rem,.4fr));gap:clamp(2rem,6vw,4rem)}.site-footer__locations{grid-template-columns:1fr}}@media (hover:hover) and (pointer:fine){.site-footer__nav a:hover,.site-footer__whatsapp:hover,.site-footer__social a:hover,.site-footer__meta a:hover{color:var(--color-text)}}@media (width<=639px){.site-footer{padding-top:clamp(5rem,19vw,7rem)}.site-footer__main,.site-footer__locations{grid-template-columns:1fr}.site-footer__details{grid-template-columns:repeat(2,1fr)}.site-footer__locations{grid-column:1/-1}.site-footer__main{gap:clamp(4.5rem,20vw,6.5rem)}.site-footer__wordmark{font-size:clamp(3.2rem,15vw,4.75rem)}.site-footer__contact{padding-bottom:0}.site-footer__contact a,.site-footer__nav a{padding-block:.25rem;font-size:1.05rem}.site-footer__details{gap:clamp(3rem, 12vw, 4rem) var(--space-xl)}.site-footer__locations{gap:var(--space-xl)}.site-footer__meta{gap:var(--space-md) var(--space-lg);grid-template-columns:1fr auto;align-items:center;display:grid}.site-footer__meta>span{color:color-mix(in srgb, var(--color-muted) 70%, transparent);grid-area:2/1/auto/-1;font-size:.75rem}.site-footer__meta>a:first-of-type{grid-area:1/1}.site-footer__meta>a:last-child{grid-area:1/2;margin-left:0}}.site-footer__wordmark{letter-spacing:-.038em}@media (width<=639px){.site-footer__wordmark{font-size:clamp(2.9rem,13.5vw,4.25rem)}}.button--whatsapp{background:var(--color-text,#f5f5f0);border:1px solid var(--color-text,#f5f5f0);border-radius:var(--radius-pill,9999px);align-items:center;gap:.65rem;padding:.85rem 1.6rem;font-size:.95rem;font-weight:500;text-decoration:none;transition:all .25s cubic-bezier(.16,1,.3,1);display:inline-flex;box-shadow:0 4px 20px #0006;color:var(--color-canvas,#050403)!important}.button--whatsapp:hover{border-color:var(--color-text,#f5f5f0);background:0 0;transform:translateY(-2px);box-shadow:0 8px 24px #0009;color:var(--color-text,#f5f5f0)!important}.button--whatsapp svg{fill:currentColor;flex-shrink:0}.floating-whatsapp{z-index:30;border-radius:var(--radius-pill,9999px);background:var(--color-canvas,#050403);height:50px;color:var(--color-text,#f5f5f0);border:1px solid color-mix(in srgb, var(--color-text,#f5f5f0) 22%, transparent);-webkit-backdrop-filter:blur(12px);letter-spacing:-.01em;justify-content:center;align-items:center;gap:.6rem;padding:0 1.35rem 0 1.1rem;font-size:.9rem;font-weight:500;text-decoration:none;transition:transform .35s cubic-bezier(.16,1,.3,1),opacity .3s,background-color .2s,color .2s,border-color .2s,box-shadow .2s;display:inline-flex;position:fixed;bottom:clamp(1.25rem,3vw,2rem);right:clamp(1.25rem,3vw,2rem);box-shadow:0 10px 30px #00000073,inset 0 1px #ffffff1f}.floating-whatsapp.is-hidden{opacity:0;pointer-events:none;transform:translateY(140%)scale(.85)}.floating-whatsapp:hover{background:var(--color-text,#f5f5f0);color:var(--color-canvas,#050403);border-color:var(--color-text,#f5f5f0);transform:translateY(-3px)scale(1.02);box-shadow:0 14px 36px #0009,0 4px 16px #f5f5f040}.floating-whatsapp:active{transform:translateY(-1px)scale(.98)}.floating-whatsapp__icon{flex-shrink:0;width:22px;height:22px}@media (width<=639px){.floating-whatsapp{border-radius:50%;width:56px;height:56px;padding:0;bottom:1.25rem;right:1.25rem}.floating-whatsapp__label{display:none}.floating-whatsapp__icon{width:26px;height:26px}}.manufacturing{z-index:10;color:#000;background:#fff;position:relative;overflow:clip}.manufacturing__inner{width:min(calc(100% - (2 * var(--page-pad))), 1600px);border-bottom:1px solid var(--color-border);grid-template-columns:repeat(12,minmax(0,1fr));align-items:center;gap:clamp(3rem,7vw,7rem) clamp(1.25rem,2.5vw,2.75rem);margin-inline:auto;padding-block:clamp(7rem,12vw,11rem) clamp(8rem,14vw,13rem);display:grid}.manufacturing__header{grid-column:1/8}.manufacturing__title{color:#000;font-size:var(--headline);letter-spacing:-.03em;text-wrap:balance;font-weight:300;line-height:1.05}.manufacturing__body{flex-direction:column;grid-column:8/-1;min-width:0;display:flex}.manufacturing__subtitle{color:#555;max-width:42ch;font-size:clamp(1rem,1.25vw,1.15rem);line-height:1.72}@media (width<=899px){.manufacturing__inner{grid-template-columns:1fr;gap:clamp(2rem,8vw,4rem);padding-block:clamp(5rem,14vw,7rem) clamp(6rem,16vw,8rem)}.manufacturing__header,.manufacturing__body{grid-column:1/-1}.manufacturing__title{max-width:none}.manufacturing__body{width:min(100%,38rem)}}@media (width<=639px){.manufacturing__inner{gap:2rem}.manufacturing__subtitle{font-size:1rem}}


/* ==========================================================================
   1. END-TO-END INTERIOR SOLUTIONS (SERVICE PANELS) FIXES
   ========================================================================== */
[data-motion-service],
.service-panel {
  opacity: 1 !important;
  transform: translate3d(0, 0, 0) !important;
  transition: opacity 0.5s ease, transform 0.5s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.service-panel h3 {
  color: #ffffff !important;
  font-weight: 400 !important;
  font-size: clamp(1.35rem, 2.1vw, 2.15rem) !important;
  transition: color 0.24s ease, transform 0.24s ease !important;
}

.service-panel p {
  color: #a8a69f !important;
  font-size: clamp(0.95rem, 1.2vw, 1.1rem) !important;
  line-height: 1.65 !important;
  transition: color 0.24s ease !important;
}

.service-panel:hover h3 {
  color: #d4af37 !important;
  transform: translate3d(6px, 0, 0) !important;
}

.service-panel:hover p {
  color: #ffffff !important;
}

/* ==========================================================================
   2. REVIEWS / TESTIMONIALS PINNED HORIZONTAL SCROLL SCRUBBING
   ========================================================================== */
@media (min-width: 768px) {
  .client-stories {
    position: relative !important;
    height: 320vh !important;
    padding-block: 0 !important;
    background: #050403 !important;
  }

  .client-stories__stage {
    position: sticky !important;
    top: 0 !important;
    height: 100vh !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    overflow: hidden !important;
    padding-block: 3rem !important;
    box-sizing: border-box !important;
  }

  .client-stories__viewport {
    width: 100% !important;
    overflow: hidden !important;
    position: relative !important;
    padding-inline: 0 !important;
  }

  .client-stories__track {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 2rem !important;
    width: max-content !important;
    will-change: transform !important;
    padding-inline: clamp(2rem, 5vw, 6rem) !important;
    transform: translate3d(0, 0, 0);
  }

  .client-story {
    flex: 0 0 clamp(22rem, 32vw, 28rem) !important;
    width: clamp(22rem, 32vw, 28rem) !important;
    min-height: 24rem !important;
    background: rgba(20, 20, 20, 0.85) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    border-radius: 12px !important;
    padding: 2.25rem !important;
    backdrop-filter: blur(8px) !important;
    transition: border-color 0.3s ease, transform 0.3s ease !important;
  }

  .client-story:hover {
    border-color: rgba(212, 175, 55, 0.4) !important;
    transform: translateY(-4px) !important;
  }
}

@media (max-width: 767px) {
  .client-stories__track {
    display: flex !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    gap: 1.25rem !important;
    padding-inline: 1.25rem !important;
  }

  .client-story {
    flex: 0 0 85vw !important;
    scroll-snap-align: start !important;
  }
}

/* ==========================================================================
   3. LUXURY FLOATING WHATSAPP WIDGET
   ========================================================================== */
.wa-widget-wrapper {
  position: fixed;
  bottom: 24px;
  right: 24px;
  z-index: 99999;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

.wa-widget-toggle {
  display: flex;
  align-items: center;
  gap: 10px;
  background: linear-gradient(135deg, #25D366 0%, #128C7E 100%);
  color: #ffffff;
  border: 1px solid rgba(255, 255, 255, 0.2);
  padding: 12px 20px 12px 14px;
  border-radius: 50px;
  cursor: pointer;
  box-shadow: 0 10px 25px rgba(37, 211, 102, 0.35), 0 4px 10px rgba(0, 0, 0, 0.3);
  position: relative;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.wa-widget-toggle:hover {
  transform: translateY(-3px) scale(1.03);
  box-shadow: 0 14px 30px rgba(37, 211, 102, 0.5), 0 6px 12px rgba(0, 0, 0, 0.4);
}

.wa-badge {
  position: absolute;
  top: -4px;
  left: 6px;
  background: #ff3b30;
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid #050403;
  animation: pulse-badge 2s infinite;
}

@keyframes pulse-badge {
  0% { transform: scale(1); }
  50% { transform: scale(1.15); }
  100% { transform: scale(1); }
}

.wa-btn-label {
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.3px;
  white-space: nowrap;
}

/* POPUP CARD */
.wa-widget-popup {
  position: absolute;
  bottom: 75px;
  right: 0;
  width: clamp(290px, 88vw, 360px);
  background: #121212;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.6), 0 0 1px rgba(255, 255, 255, 0.1);
  opacity: 0;
  visibility: hidden;
  transform: translateY(16px) scale(0.95);
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
  pointer-events: none;
}

.wa-widget-popup.is-open {
  opacity: 1;
  visibility: visible;
  transform: translateY(0) scale(1);
  pointer-events: auto;
}

.wa-widget-header {
  background: linear-gradient(135deg, #1b1b1b 0%, #0d0d0d 100%);
  padding: 16px;
  display: flex;
  align-items: center;
  gap: 12px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  position: relative;
}

.wa-widget-avatar {
  position: relative;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #1a1a1a;
  border: 1px solid rgba(255, 255, 255, 0.15);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.wa-widget-avatar img {
  width: 32px;
  height: auto;

}

.wa-status-dot {
  position: absolute;
  bottom: 2px;
  right: 2px;
  width: 10px;
  height: 10px;
  background: #25D366;
  border-radius: 50%;
  border: 2px solid #121212;
}

.wa-widget-title-area h4 {
  color: #ffffff;
  font-size: 15px;
  font-weight: 600;
  margin: 0;
}

.wa-widget-title-area p {
  color: #a0a0a0;
  font-size: 12px;
  margin: 2px 0 0 0;
}

.wa-online-text {
  color: #25D366;
  font-weight: 600;
}

.wa-widget-close {
  position: absolute;
  top: 14px;
  right: 14px;
  background: transparent;
  border: none;
  color: #888888;
  font-size: 16px;
  cursor: pointer;
  padding: 4px;
  line-height: 1;
  transition: color 0.2s ease;
}

.wa-widget-close:hover {
  color: #ffffff;
}

.wa-widget-body {
  padding: 18px;
  background: #0a0a0a;
}

.wa-message-bubble {
  background: #1e1e1e;
  border-radius: 12px 12px 12px 2px;
  padding: 14px 16px;
  border: 1px solid rgba(255, 255, 255, 0.06);
  position: relative;
}

.wa-message-bubble p {
  color: #e0e0e0;
  font-size: 13.5px;
  line-height: 1.5;
  margin: 0 0 8px 0;
}

.wa-message-bubble p:last-of-type {
  margin-bottom: 4px;
}

.wa-message-time {
  display: block;
  text-align: right;
  font-size: 11px;
  color: #777777;
  margin-top: 4px;
}

.wa-widget-footer {
  padding: 14px 16px 16px;
  background: #121212;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.wa-start-chat-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  background: #25D366;
  color: #ffffff !important;
  font-size: 14px;
  font-weight: 600;
  padding: 12px;
  border-radius: 10px;
  text-decoration: none !important;
  transition: background 0.25s ease, transform 0.2s ease;
}

.wa-start-chat-btn:hover {
  background: #20bd5a;
  transform: translateY(-1px);
}


/* ==========================================================================
   FIX FOR CLOSING CANVAS & REVIEW CARDS TEXT CLIPPING
   ========================================================================== */

/* Closing reveal canvas visibility fix */
canvas[data-closing-canvas] {
  opacity: 1 !important;
  visibility: visible !important;
  display: block !important;
}

.closing-reveal__stage {
  position: sticky !important;
  top: 0 !important;
  height: 100vh !important;
  width: 100% !important;
  overflow: hidden !important;
}

/* Reviews cards text clipping fix */
.client-stories {
  overflow: visible !important;
}

.client-stories__stage {
  min-height: 100vh !important;
  height: 100vh !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  overflow: hidden !important;
  padding-block: 2rem !important;
}

.client-stories__viewport {
  overflow: visible !important;
  padding-block: 1rem !important;
}

.client-story {
  height: auto !important;
  min-height: max-content !important;
  max-height: none !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  padding: 2.25rem 2rem !important;
  box-sizing: border-box !important;
  overflow: visible !important;
  background: rgba(18, 18, 18, 0.95) !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  border-radius: 14px !important;
}

body.wall2wall-cinematic-home .client-story blockquote {
  display: flex !important;
  flex-direction: column !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
  margin: 0 0 1.5rem 0 !important;
  padding: 0 !important;
  grid-template-columns: none !important;
  grid-template-rows: none !important;
}

body.wall2wall-cinematic-home .client-story blockquote p {
  font-size: clamp(0.98rem, 1.25vw, 1.15rem) !important;
  line-height: 1.65 !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
  white-space: normal !important;
  word-break: break-word !important;
  color: #e2e2e2 !important;
  margin: 0 !important;
  padding: 0 !important;
}

.client-story__client {
  margin-top: auto !important;
  padding-top: 1.25rem !important;
  border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
}
