/* Controls have their own neutral colors; the preview consumes brand tokens. */
.design-panel { width: 340px; max-height: min(820px, calc(100dvh - 40px)); padding: 20px; scrollbar-width: thin; }
.customizer-tabs { display: grid; grid-template-columns: 1fr 1fr; border-bottom: 1px solid var(--control-rule); margin: 0 0 18px; }
.customizer-tabs button { padding: 10px; border: 0; border-bottom: 2px solid transparent; background: transparent; color: #626862; }
.customizer-tabs button[aria-selected="true"] { border-bottom-color: #252b25; color: #202420; font-weight: 600; }
.color-controls { border: 0; margin: 20px 0 12px; padding: 0; display: grid; gap: 10px; }
.color-controls legend { padding: 0; margin-bottom: 12px; font-weight: 600; }
.color-control { display: flex; align-items: center; justify-content: space-between; gap: 14px; }
.color-inputs { display: flex; gap: 7px; align-items: center; }
.color-inputs input[type="color"] { appearance: none; width: 34px; height: 34px; padding: 3px; background: #fff; border: 1px solid var(--control-rule); border-radius: 6px; cursor: pointer; }
.color-inputs input[type="color"]::-webkit-color-swatch-wrapper { padding: 0; }
.color-inputs input[type="color"]::-webkit-color-swatch { border: 0; border-radius: 3px; }
.color-inputs input[type="text"] { width: 94px; height: 34px; border: 1px solid var(--control-rule); border-radius: 5px; background: #fff; padding: 6px 9px; font: 12px/1.4 ui-monospace, monospace; text-transform: uppercase; color: #202420; }
.color-inputs input[aria-invalid="true"] { border-color: #b43d33; }
.control-error { font-size: 12px; color: #a12b22; margin-block: 10px; }
.control-text-button { padding: 8px 0; border: 0; background: none; font-size: 12px; text-decoration: underline; text-underline-offset: 3px; }
.section-control-note { margin: 0 0 16px; color: #5c625b; }
#section-selectors { display: grid; gap: 15px; }
.section-control label { display: block; font-weight: 600; margin-bottom: 5px; }
.section-control select { width: 100%; min-height: 40px; padding: 8px; border: 1px solid var(--control-rule); border-radius: 6px; color: #202420; background: #fff; font: inherit; }
/* Contact placement is an either/or, so it reads as a switch, not a select. */
.section-control--switch { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 4px 12px; margin-bottom: 18px; padding-bottom: 16px; border-bottom: 1px solid var(--control-rule); }
.section-control--switch label { margin: 0; }
.section-control--switch input {
  grid-column: 2; grid-row: 1 / span 2; appearance: none; -webkit-appearance: none;
  position: relative; width: 40px; height: 24px; margin: 0; flex: none;
  border: 1px solid var(--control-rule); border-radius: 999px; background: var(--control-paper);
  cursor: pointer; transition: background-color .18s ease, border-color .18s ease;
}
.section-control--switch input::after {
  content: ""; position: absolute; inset-block-start: 2px; inset-inline-start: 2px;
  width: 18px; height: 18px; border-radius: 50%; background: #9aa29a;
  transition: transform .18s ease, background-color .18s ease;
}
.section-control--switch input:checked { background: var(--control-ink); border-color: var(--control-ink); }
.section-control--switch input:checked::after { transform: translateX(16px); background: var(--control-paper); }
.section-control-hint { grid-column: 1; margin: 0; color: #5c625b; font-size: 12px; line-height: 1.45; }
#reset-sections { margin-top: 12px; }
.design-panel :focus-visible { outline-color: #46584b; }
@media (max-width: 40rem) {
 .design-panel { right: 12px; bottom: 12px; width: min(340px, calc(100vw - 24px)); max-height: calc(100dvh - 24px); padding: 16px; }
}

/* Adapters use the library's section vocabulary while retaining each authored
   element in its original parent. Extra specificity overrides cinema geometry
   when a static component is selected inside the Immersive proposal. */
html body .component-override[data-section-component] { padding-block: var(--vb-space-section); }
html body .component-override[data-section-component] .vb-cinema__scroll { block-size: auto; padding-block: 0; }
html body .component-override[data-section-component] .vb-cinema__viewport { position: relative; block-size: auto; min-height: 0; overflow: visible; isolation: auto; max-inline-size: none; margin: 0; }
html body .component-override[data-section-component] .vb-cinema__media { position: relative; inset: auto; width: 100%; height: auto; inline-size: 100%; block-size: auto; aspect-ratio: 4/3; clip-path: none; }
html body .component-override[data-section-component] .vb-cinema__chapters,
html body .component-override[data-section-component] .vb-cinema__chapter { position: relative; inset: auto; width: auto; max-width: none; padding: 0; opacity: 1; visibility: visible; transform: none; background: none; }
html body .component-override[data-section-component] .vbs-hero-horizon-frame__target { display: none; }
html body .component-override[data-section-component] .component-hero-layout { display: grid; gap: 1.5rem 4rem; min-height: 0; max-width: calc(var(--vb-max-wide) + 2 * var(--vb-gutter)); padding-inline: var(--vb-gutter); margin-inline: auto; isolation: auto; }
html body .component-override[data-section-component] .component-hero-layout::after { content: none; }
html body .component-override[data-section-component] .component-hero-heading { position: relative; inset: auto; padding: 0; background: none; }
html body .component-override[data-section-component] .component-hero-heading h1 { font-size: var(--vb-fs-display-1); color: var(--vb-color-ink); max-width: 20ch; }
html body .component-override[data-section-component] .component-hero-copy { display: grid; gap: 1.5rem; max-width: 40ch; justify-self: start; align-content: start; }
html body .component-override[data-section-component] .component-hero-copy .vb-cinema__chapter { display: grid; gap: 1.5rem; }
html body .component-override[data-section-component] .component-hero-copy p { color: var(--vb-color-ink-soft); }
html body .component-override[data-section-component] .component-hero-media { position: relative; inset: auto; z-index: auto; height: auto; aspect-ratio: 4/3; border-radius: var(--vb-radius-card); grid-row: auto; }
html body .component-override[data-section-component="hero-split-portrait"] .component-hero-layout { grid-template-columns: 1fr 1fr; }
html body .component-override[data-section-component="hero-split-portrait"] .component-hero-heading { grid-column: 1; align-self: end; }
html body .component-override[data-section-component="hero-split-portrait"] .component-hero-copy { grid-column: 1; }
html body .component-override[data-section-component="hero-split-portrait"] .component-hero-media { grid-column: 2; grid-row: 1 / 3; aspect-ratio: 4/5; }
html body .component-override[data-section-component="hero-centered-stack"] .component-hero-layout { grid-template-columns: 1fr; justify-items: center; text-align: center; }
html body .component-override[data-section-component="hero-centered-stack"] .component-hero-heading,
html body .component-override[data-section-component="hero-centered-stack"] .component-hero-copy { grid-column: 1; grid-row: auto; justify-self: center; }
html body .component-override[data-section-component="hero-centered-stack"] .component-hero-copy .vb-cinema__chapter { justify-items: center; }
html body .component-override[data-section-component="hero-centered-stack"] .component-hero-media { grid-column: 1; grid-row: auto; width: 100%; aspect-ratio: 21/9; margin-top: 2rem; }

html body .component-override[data-section-component] .component-project-layout { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(2rem, 6vw, 6rem); padding-inline: var(--vb-gutter); max-width: calc(var(--vb-max-content) + 2 * var(--vb-gutter)); margin-inline: auto; }
html body .component-override[data-section-component] .component-project-copy { display: grid; align-content: center; gap: 1.5rem; }
html body .component-override[data-section-component] .component-project-copy .vb-cinema__chapter { display: grid; gap: 1.5rem; }
html body .component-override[data-section-component] .component-project-copy .vb-cinema__chapter > * { max-width: none; }
html body .component-override[data-section-component] .component-project-media { display: grid; gap: 1rem; padding: 0; align-content: start; }
html body .component-override[data-section-component] .component-project-media > figure { position: relative; inset: auto; width: 100%; aspect-ratio: 4/3; }
html body .component-override[data-section-component="intro-offset-collage"] .component-project-media { order: -1; }
html body .component-override[data-section-component="intro-offset-collage"] .component-project-media > figure:last-child:not(:first-child) { width: 65%; margin: -18% -10% 0 auto; aspect-ratio: 1; }
html body .component-override[data-section-component="hero-centered-stack"] .component-project-layout { grid-template-columns: 1fr; text-align: center; }
html body .component-override[data-section-component="hero-centered-stack"] .component-project-copy { justify-items: center; max-width: 58ch; margin-inline: auto; order: -1; }
html body .component-override[data-section-component="hero-centered-stack"] .component-project-copy > * { max-width: none; }
html body .component-override[data-section-component="hero-centered-stack"] .component-project-media { grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)); }

html body .component-override[data-section-component].immersive-spaces .vbs-showcase-sticky-scroll__layout { display: block; }
html body .component-override[data-section-component].immersive-spaces .vbs-showcase-sticky-scroll__rail { position: relative; top: auto; max-width: 55ch; }
html body .component-override[data-section-component] .spaces-layout { display: block; }
html body .component-override[data-section-component] .component-spaces-items { display: grid; margin-top: 3rem; gap: clamp(3rem, 6vw, 6rem); max-width: none; }
html body .component-override[data-section-component] .component-spaces-item { width: 100%; inline-size: 100%; margin: 0; padding: 0; position: relative; }
html body .component-override[data-section-component] .component-spaces-copy { display: grid; gap: 1rem; max-width: 45ch; }
html body .component-override[data-section-component="solution-alternating-rows"] .component-spaces-items { grid-template-columns: 1fr; }
html body .component-override[data-section-component="solution-alternating-rows"] .component-spaces-item { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(2rem, 5vw, 5rem); align-items: center; }
html body .component-override[data-section-component="solution-alternating-rows"] .component-spaces-item:nth-child(even) > :first-child { order: 2; }
html body .component-override[data-section-component="solution-alternating-rows"] .component-spaces-item .vb-media { aspect-ratio: 4/3; height: auto; }
html body .component-override[data-section-component="gallery-parallax-columns"] .component-spaces-items { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2rem; align-items: start; }
html body .component-override[data-section-component="gallery-parallax-columns"] .component-spaces-item { display: grid; gap: 1.5rem; }
html body .component-override[data-section-component="gallery-parallax-columns"] .component-spaces-item:nth-child(2) { margin-top: 5rem; }
html body .component-override[data-section-component="gallery-parallax-columns"] .component-spaces-item:nth-child(3) { margin-top: 2rem; }
html body .component-override[data-section-component="gallery-parallax-columns"] .component-spaces-item .vb-media { height: auto; aspect-ratio: 4/5; }

html body .component-override[data-section-component="listing-property-finder"] .section-heading { border-bottom: var(--vb-border-hair) solid var(--vb-color-rule); padding-bottom: 2.5rem; margin-bottom: 2.5rem; }
html body .component-override[data-section-component="listing-property-finder"] .embed-shell { padding: 0; }
html body .component-override[data-section-component="showcase-sticky-scroll"] .component-module-layout { display: grid; grid-template-columns: minmax(0, .7fr) minmax(0, 1.6fr); gap: 1.5rem 3rem; }
html body .component-override[data-section-component="showcase-sticky-scroll"] .section-heading { display: grid; grid-template-columns: 1fr; align-self: start; gap: 1.5rem; margin: 0; }
html body .component-override[data-section-component="showcase-sticky-scroll"] .embed-shell { min-width: 0; }
html body .component-override[data-section-component="showcase-sticky-scroll"] .embed-caption,
html body .component-override[data-section-component="showcase-sticky-scroll"] .embed-warning { grid-column: 2; }

html body .component-override[data-section-component] .component-favorites-layout { display: grid; position: relative; width: 100%; height: auto; padding: 0; max-width: var(--vb-max-content); gap: 3rem; margin-inline: auto; overflow: visible; }
html body .component-override[data-section-component] .vbs-cta-cursor-lookbook__title { position: relative; inset: auto; transform: none; width: auto; max-width: none; text-align: inherit; font-size: var(--vb-fs-display-1); }
html body .component-override[data-section-component] .vbs-cta-cursor-lookbook__statement { width: auto; min-width: 0; padding: 0; margin: 0; text-align: inherit; }
html body .component-override[data-section-component] .vbs-cta-cursor-lookbook__card { display: block; position: relative; inset: auto; transform: none; opacity: 1; width: 100%; aspect-ratio: auto; overflow: visible; }
html body .component-override[data-section-component] .vbs-cta-cursor-lookbook__medias { position: relative; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 1rem; width: 100%; height: auto; transform: none; }
html body .component-override[data-section-component] .vbs-cta-cursor-lookbook__media { position: relative; inset: auto; visibility: visible; width: 100%; height: auto; aspect-ratio: 4/5; }
html body .component-override[data-section-component="cta-centered-rule"] .component-favorites-layout { grid-template-columns: 1fr; text-align: center; justify-items: center; }
html body .component-override[data-section-component="cta-centered-rule"] .favorites-copy { align-items: center; order: -1; }
html body .component-override[data-section-component="cta-centered-rule"] .favorites-image { width: min(100%, 48rem); max-height: 460px; }
html body .component-override[data-section-component="cta-centered-rule"] .favorites-copy .vb-btn { width: min(100%, 30rem); border-inline: 0; border-radius: 0; padding-block: 1.25rem; }
html body .component-override[data-section-component="cta-split-panel"] { background: var(--vb-color-paper-on-dark); color: var(--vb-color-ink-on-dark); padding-inline: var(--vb-gutter); }
html body .component-override[data-section-slot="favorites"][data-section-component="cta-split-panel"] :is(h2, p, .vbs-cta-cursor-lookbook__link) { color: inherit; }
html body .component-override[data-section-component="cta-split-panel"] .component-favorites-layout { grid-template-columns: 1fr 1fr; align-items: center; }
html body .component-override[data-section-component="cta-split-panel"] .vbs-cta-cursor-lookbook__card { grid-column: 1 / -1; }

html body .component-override[data-section-component="contact-split-form"] .lead-form { box-shadow: var(--vb-shadow-card); border-radius: var(--vb-radius-lg); }
html body .component-override[data-section-component="contact-split-form"] .contact-copy { position: sticky; top: calc(var(--livya-header-height, 84px) + 2rem); }
html body .component-override[data-section-component="contact-brief-ledger"] .contact-composition { display: block; }
html body .component-override[data-section-component="contact-brief-ledger"] .contact-copy { display: grid; grid-template-columns: 1.2fr 1fr; gap: 1.5rem 4rem; padding: 0 0 3rem; }
html body .component-override[data-section-component="contact-brief-ledger"] .contact-copy > h2 { grid-column: 1; grid-row: 2 / 5; }
html body .component-override[data-section-component="contact-brief-ledger"] .contact-copy > p:not(:first-child),
html body .component-override[data-section-component="contact-brief-ledger"] .contact-selection-note { grid-column: 2; margin: 0; }
html body .component-override[data-section-component="contact-brief-ledger"] .lead-form { border-radius: 0; box-shadow: none; border-inline: 0; padding-inline: 0; background: transparent; }

html body .component-override[data-section-component="header-centered-split"] { padding-block: 0; position: sticky; top: 0; z-index: 50; }
html body .component-override[data-section-component="header-centered-split"] .vbs-header-classic-bar__inner { display: grid; grid-template-columns: 1fr auto 1fr; gap: 1rem; padding-block: 1rem; }
html body .component-override[data-section-component="header-centered-split"] .vbs-header-classic-bar__brand { grid-column: 2; grid-row: 1; }
html body .component-override[data-section-component="header-centered-split"] .favorites-nav { grid-column: 3; grid-row: 1; justify-self: end; }
html body .component-override[data-section-component="header-centered-split"] .vbs-header-classic-bar__nav { grid-row: 2; grid-column: 1 / -1; justify-self: center; }
html body .component-override[data-section-component="header-centered-split"] .vbs-header-classic-bar__disclosure { grid-row: 1; grid-column: 1; margin: 0; }
html body .component-override[data-section-component="footer-fat-columns"] .vbs-footer-minimal-rule__row { display: grid; grid-template-columns: 1fr 1fr; align-items: start; }
html body .component-override[data-section-component="footer-fat-columns"] .vbs-footer-minimal-rule__links { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; }
html body .component-override[data-section-component="footer-fat-columns"] .vbs-footer-minimal-rule__legal { grid-column: 1 / -1; border-top: var(--vb-border-hair) solid var(--vb-color-rule); padding-top: 1.5rem; width: 100%; }
/* Additional compositions retain the library geometry, adapted to the media
   and copy available in each proposal. No fabricated labels or extra fields. */
html body .component-override[data-section-slot="header"] { position: sticky; top: 0; z-index: 50; padding-block: 0; }
html body .component-override[data-section-component="header-framed-rule"] { padding: 1.5rem var(--vb-gutter) .75rem; border: 0; }
html body .component-override[data-section-component="header-framed-rule"] .vbs-header-classic-bar__inner { display: flex; gap: 1.5rem; padding: .75rem 1.5rem; min-height: 76px; }
html body .component-override[data-section-component="header-framed-rule"] .vbs-header-classic-bar__brand { flex: none; margin: -1.5rem 0 0; padding-inline: .75rem; transform: none; align-self: start; }
html body .component-override[data-section-component="header-framed-rule"] .vbs-header-classic-bar__nav { margin-inline: auto 0; }
html body .component-override[data-section-component="header-float-capsule"] { padding: .75rem var(--vb-gutter); background: transparent; border: 0; backdrop-filter: none; }
html body .component-override[data-section-component="header-float-capsule"] .vbs-header-classic-bar__inner { min-height: 70px; padding: .5rem 1.5rem; border-radius: var(--vb-radius-pill); animation: none; }
html body .component-override[data-section-component="header-float-capsule"] .favorites-nav { padding: .65rem 1rem; border-radius: var(--vb-radius-pill); background: var(--vb-color-accent-soft); color: var(--vb-color-accent); }
html body .component-override[data-section-component="header-ruled-cells"] .vbs-header-classic-bar__inner { gap: 0; align-items: stretch; }
html body .component-override[data-section-component="header-ruled-cells"] .vbs-header-classic-bar__list { align-items: stretch; gap: 0; }
html body .component-override[data-section-component="header-ruled-cells"] .vbs-header-classic-bar__list li { display: flex; border-left: var(--vb-border-hair) solid var(--vb-color-rule); }
html body .component-override[data-section-component="header-ruled-cells"] .vbs-header-classic-bar__link { display: flex; align-items: center; padding: 1rem clamp(.75rem, 1.5vw, 1.5rem); }
html body .component-override[data-section-component="header-ruled-cells"] .favorites-nav { padding-inline: 1.25rem; border-inline: var(--vb-border-hair) solid var(--vb-color-rule); background: var(--vb-color-accent-soft); color: var(--vb-color-accent); }
html body .component-override[data-section-component="header-ruled-cells"] .vbs-header-classic-bar__disclosure { align-self: center; padding-left: 1rem; }

html body .component-override[data-section-component="hero-overlap-bleed"] .component-hero-layout { grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 0; }
html body .component-override[data-section-component="hero-overlap-bleed"] .component-hero-media { grid-column: 4 / -1; grid-row: 1 / 3; margin: 0; aspect-ratio: 4/3; border-radius: 0; }
html body .component-override[data-section-component="hero-overlap-bleed"] .component-hero-heading { grid-column: 1 / 10; grid-row: 2; align-self: end; z-index: 1; padding: 1.5rem 2rem 0 0; background: var(--vb-color-paper); }
html body .component-override[data-section-component="hero-overlap-bleed"] .component-hero-copy { grid-column: 1 / 7; grid-row: 3; max-width: 44ch; padding-top: 2rem; }
html body .component-override[data-section-component="hero-masthead-columns"] .component-hero-layout { grid-template-columns: minmax(0, 1fr) minmax(0, 1.8fr); gap: 2.5rem; }
html body .component-override[data-section-component="hero-masthead-columns"] .component-hero-heading { grid-column: 1 / -1; grid-row: 1; }
html body .component-override[data-section-component="hero-masthead-columns"] .component-hero-heading h1 { max-width: none; font-size: clamp(3rem, 7vw, calc(var(--vb-fs-display-1) * 1.5)); }
html body .component-override[data-section-component="hero-masthead-columns"] .component-hero-copy { grid-column: 1; grid-row: 2; align-self: start; border-right: var(--vb-border-hair) solid var(--vb-color-rule); padding-right: 2.5rem; }
html body .component-override[data-section-component="hero-masthead-columns"] .component-hero-media { grid-column: 2; grid-row: 2; aspect-ratio: 16/9; margin: 0; }
html body .component-override[data-section-component="hero-curtain-arch"] { padding-top: 0; }
html body .component-override[data-section-component="hero-curtain-arch"] .component-hero-layout { grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); gap: 2rem 4rem; }
html body .component-override[data-section-component="hero-curtain-arch"] .component-hero-media { grid-column: 1 / -1; grid-row: 1; margin: 0; border-radius: 0; aspect-ratio: 21/9; }
html body .component-override[data-section-component="hero-curtain-arch"] .component-hero-heading { grid-column: 1; grid-row: 2; }
html body .component-override[data-section-component="hero-curtain-arch"] .component-hero-copy { grid-column: 2; grid-row: 2; align-self: center; }

html body .component-override[data-section-component="intro-manifesto-rule"] .component-project-layout { grid-template-columns: minmax(0, 1fr) minmax(0, 2.2fr); gap: 3rem; border-block: var(--vb-border-hair) solid var(--vb-color-rule); padding-block: 3rem; }
html body .component-override[data-section-component="intro-manifesto-rule"] .component-project-media { grid-column: 1; grid-row: 1; gap: 1.5rem; }
html body .component-override[data-section-component="intro-manifesto-rule"] .component-project-copy { grid-column: 2; grid-row: 1; align-content: start; }
html body .component-override[data-section-component="intro-manifesto-rule"] .component-project-copy h2 { max-width: 18ch; font-size: var(--vb-fs-display-1); }
html body .component-override[data-section-component="intro-manifesto-rule"] .component-project-media > figure { aspect-ratio: 4/5; }
html body .component-override[data-section-component="showcase-editorial-case-study"] .component-project-layout { grid-template-columns: 1fr; gap: 3rem; }
html body .component-override[data-section-component="showcase-editorial-case-study"] .component-project-copy { order: -1; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: 1.5rem 4rem; align-items: end; }
html body .component-override[data-section-component="showcase-editorial-case-study"] .component-project-copy > h2 { grid-column: 1; grid-row: 1 / 4; font-size: var(--vb-fs-display-1); }
html body .component-override[data-section-component="showcase-editorial-case-study"] .component-project-copy > :not(h2) { grid-column: 2; }
html body .component-override[data-section-component="showcase-editorial-case-study"] .component-project-copy > .vb-cinema__chapter { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: 4rem; align-items: end; }
html body .component-override[data-section-component="showcase-editorial-case-study"] .vbs-intro-cinematic-aperture__details { border-left: var(--vb-border-hair) solid var(--vb-color-rule); padding-left: 2rem; }
html body .component-override[data-section-component="showcase-editorial-case-study"] .component-project-media { grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); gap: 2rem; }
html body .component-override[data-section-component="showcase-editorial-case-study"] .component-project-media > figure { height: 100%; aspect-ratio: 4/3; border-radius: 0; }
html body .component-override[data-section-component="showcase-editorial-case-study"] .component-project-media > figure:last-child { aspect-ratio: 2/3; }
html body .component-override[data-section-component="showcase-editorial-case-study"] .component-project-media.vb-cinema__media { aspect-ratio: 21/9; border-radius: 0; }

html body .component-override[data-section-component] .component-spaces-copy { grid-template-columns: 1fr; }
html body .component-override[data-section-component="gallery-modern-lightbox"] .component-spaces-items { grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); grid-auto-rows: auto; gap: 2rem; }
html body .component-override[data-section-component="gallery-modern-lightbox"] .component-spaces-item { grid-column: 2; display: grid; gap: 1rem; align-content: start; }
html body .component-override[data-section-component="gallery-modern-lightbox"] .component-spaces-item:first-child { grid-column: 1; grid-row: 1 / 3; }
html body .component-override[data-section-component="gallery-modern-lightbox"] .component-spaces-item .vb-media { aspect-ratio: 16/9; border-radius: var(--vb-radius-card); }
html body .component-override[data-section-component="gallery-modern-lightbox"] .component-spaces-item:first-child .vb-media { aspect-ratio: 3/4; }
html body .component-override[data-section-component="gallery-modern-lightbox"] .component-spaces-copy { padding-block: .5rem 1rem; border-bottom: var(--vb-border-hair) solid var(--vb-color-rule); }
html body .component-override [data-component-gallery-trigger] { cursor: pointer; }
html body .component-override [data-component-gallery-trigger]:focus-visible { outline: 3px solid var(--vb-color-accent); outline-offset: 5px; }
html body .component-override[data-section-component="portfolio-masonry-grid"] .component-spaces-items { grid-template-columns: repeat(3, minmax(0, 1fr)); grid-auto-rows: auto; gap: 1.5rem; align-items: start; }
html body .component-override[data-section-component="portfolio-masonry-grid"] .component-spaces-item { display: flex; padding: 0; border: var(--vb-border-hair) solid var(--vb-color-rule); }
html body .component-override[data-section-component="portfolio-masonry-grid"] .component-spaces-item .vb-media { flex: none; aspect-ratio: 4/5; }
html body .component-override[data-section-component="portfolio-masonry-grid"] .component-spaces-item:nth-child(2) .vb-media { aspect-ratio: 4/3; }
html body .component-override[data-section-component="portfolio-masonry-grid"] .component-spaces-item:nth-child(3) .vb-media { aspect-ratio: 1; }
html body .component-override[data-section-component="portfolio-masonry-grid"] .component-spaces-copy { padding: 1.5rem; }
html body .component-override[data-section-component="showcase-fullbleed-pills"] > .vb-container { max-width: none; padding-inline: 0; }
html body .component-override[data-section-component="showcase-fullbleed-pills"] :is(.section-heading, .vbs-showcase-sticky-scroll__rail, .spaces-bottom) { padding-inline: var(--vb-gutter); }
html body .component-override[data-section-component="showcase-fullbleed-pills"] .component-spaces-items { grid-template-columns: 1fr; gap: 1rem; }
html body .component-override[data-section-component="showcase-fullbleed-pills"] .component-spaces-item { display: grid; min-height: clamp(32rem, 60vw, 48rem); isolation: isolate; overflow: hidden; }
html body .component-override[data-section-component="showcase-fullbleed-pills"] .component-spaces-item .vb-media { grid-area: 1 / 1; height: 100%; aspect-ratio: auto; border-radius: 0; }
html body .component-override[data-section-component="showcase-fullbleed-pills"] .component-spaces-item::after { content: ''; position: absolute; z-index: 1; inset: 0; pointer-events: none; background: linear-gradient(0deg, rgb(0 0 0 / .82), rgb(0 0 0 / .05) 85%); }
html body .component-override[data-section-component="showcase-fullbleed-pills"] .component-spaces-copy { position: relative; inset: auto; grid-area: 1 / 1; align-self: end; z-index: 2; max-width: 52ch; padding: clamp(1.5rem, 4vw, 4rem) var(--vb-gutter); }
html body .component-override[data-section-component="showcase-fullbleed-pills"] .component-spaces-copy h3 { justify-self: start; padding: .6em 1em; font-size: var(--vb-fs-h3); background: var(--vb-color-paper); color: var(--vb-color-ink); }
html body .component-override[data-section-component="showcase-fullbleed-pills"] .component-spaces-copy p { color: #fff; }
html body .component-override[data-section-component="showcase-fullbleed-pills"] .component-spaces-copy h3:hover { background: var(--vb-color-paper); color: var(--vb-color-ink); }

html body .component-override[data-section-component="hero-centered-stack"] .component-module-layout { display: block; }
html body .component-override[data-section-component="hero-centered-stack"] .section-heading { display: grid; grid-template-columns: 1fr; gap: 1.5rem; justify-items: center; text-align: center; max-width: 55rem; margin: 0 auto 3rem; }
html body .component-override[data-section-component="hero-centered-stack"] .section-heading p { max-width: 54ch; }
html body .component-override[data-section-component="hero-centered-stack"] .embed-shell { aspect-ratio: auto; margin: 0; }
html body .component-override[data-section-component="showcase-editorial-case-study"] .section-heading { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); align-items: end; padding-block: 0 3rem; margin: 0; }
html body .component-override[data-section-component="showcase-editorial-case-study"] .section-heading h2 { font-size: var(--vb-fs-display-1); }
html body .component-override[data-section-component="showcase-editorial-case-study"] .section-heading p { border-left: var(--vb-border-hair) solid var(--vb-color-rule); padding-left: 2rem; }
html body .component-override[data-section-component="showcase-editorial-case-study"] .embed-shell { padding: clamp(.75rem, 2vw, 2rem); border-radius: 0; background: var(--vb-color-paper-muted); border: var(--vb-border-hair) solid var(--vb-color-rule); }

html body .component-override[data-section-component="cta-statement-bleed"] { border-block: var(--vb-border-hair) solid var(--vb-color-rule); padding-inline: var(--vb-gutter); }
html body .component-override[data-section-component="cta-statement-bleed"] .component-favorites-layout { grid-template-columns: 1fr; }
html body .component-override[data-section-component="cta-statement-bleed"] .favorites-copy { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem 3rem; order: -1; }
html body .component-override[data-section-component="cta-statement-bleed"] h2 { grid-column: 1 / -1; width: 100%; margin-top: 0; max-width: none; font-size: clamp(3rem, 8vw, calc(var(--vb-fs-display-1) * 1.5)); }
html body .component-override[data-section-component="cta-statement-bleed"] .favorites-copy .vb-btn { grid-column: 2; justify-self: end; }
html body .component-override[data-section-component="cta-statement-bleed"] .favorites-image { width: 100%; aspect-ratio: 21/9; }
html body .component-override[data-section-component="cta-statement-bleed"] .vbs-cta-cursor-lookbook__statement { order: 1; justify-self: end; max-width: 48ch; }
html body .component-override[data-section-component="cta-statement-bleed"] .vbs-cta-cursor-lookbook__card { order: 2; }
html body .component-override[data-section-component="hero-split-portrait"] .component-favorites-layout { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: center; }
html body .component-override[data-section-component="hero-split-portrait"] .favorites-copy { grid-column: 1; grid-row: 1; }
html body .component-override[data-section-component="hero-split-portrait"] .favorites-image { grid-column: 2; grid-row: 1; aspect-ratio: 4/5; }
html body .component-override[data-section-component="hero-split-portrait"] .vbs-cta-cursor-lookbook__title { grid-column: 1; grid-row: 1; align-self: end; }
html body .component-override[data-section-component="hero-split-portrait"] .vbs-cta-cursor-lookbook__statement { grid-column: 1; grid-row: 2; align-self: start; }
html body .component-override[data-section-component="hero-split-portrait"] .vbs-cta-cursor-lookbook__card { grid-column: 2; grid-row: 1 / 3; }
html body .component-override[data-section-component="hero-split-portrait"] .vbs-cta-cursor-lookbook__medias { grid-template-columns: 1fr 1fr; }
html body .component-override[data-section-component="hero-split-portrait"] .vbs-cta-cursor-lookbook__media:first-child { grid-column: 1 / -1; aspect-ratio: 16/9; }

html body .component-override[data-section-component="cta-centered-rule"] .contact-composition { display: grid; grid-template-columns: 1fr; max-width: 54rem; gap: 3rem; }
html body .component-override[data-section-component="cta-centered-rule"] .contact-copy { text-align: center; padding: 0; max-width: 44rem; margin-inline: auto; }
html body .component-override[data-section-component="cta-centered-rule"] .contact-copy :is(h2, p) { max-width: none; }
html body .component-override[data-section-component="cta-centered-rule"] .contact-selection-note { justify-content: center; margin-inline: auto; }
html body .component-override[data-section-component="cta-centered-rule"] .lead-form { padding: 2.5rem 0 0; border: 0; border-top: var(--vb-border-hair) solid var(--vb-color-rule); border-radius: 0; background: transparent; box-shadow: none; }
html body .component-override[data-section-slot="contact"][data-section-component="cta-split-panel"] { background: var(--vb-color-paper); color: var(--vb-color-ink); }
html body .component-override[data-section-component="cta-split-panel"] .contact-composition { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 0; align-items: stretch; }
html body .component-override[data-section-component="cta-split-panel"] .contact-copy { display: flex; flex-direction: column; justify-content: center; padding: clamp(1.5rem, 4vw, 4rem); background: var(--vb-color-paper-on-dark); color: var(--vb-color-ink-on-dark); }
html body .component-override[data-section-component="cta-split-panel"] .contact-copy :is(h2, p) { color: inherit; }
html body .component-override[data-section-component="cta-split-panel"] .contact-copy .heart { color: inherit; }
html body .component-override[data-section-component="cta-split-panel"] .lead-form { border-radius: 0; box-shadow: none; background: var(--vb-color-paper-muted); }

html body .component-override[data-section-component="footer-statement-mark"] .vbs-footer-minimal-rule__row { display: grid; grid-template-columns: 1fr; gap: 3rem; }
html body .component-override[data-section-component="footer-statement-mark"] .vbs-footer-minimal-rule__brand { grid-row: 3; display: block; width: 100%; }
html body .component-override[data-section-component="footer-statement-mark"] .livya-logo { width: 100%; height: auto; aspect-ratio: 235/76; color: var(--vb-color-ink-soft); }
html body .component-override[data-section-component="footer-statement-mark"] .vbs-footer-minimal-rule__links { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 1.5rem; }
html body .component-override[data-section-component="footer-statement-mark"] .vbs-footer-minimal-rule__link { font: var(--vb-weight-heading) var(--vb-fs-h2)/var(--vb-lh-h2) var(--vb-font-display); }
html body .component-override[data-section-component="footer-statement-mark"] .vbs-footer-minimal-rule__legal { flex-direction: row; justify-content: space-between; padding-top: 1.5rem; border-top: var(--vb-border-hair) solid var(--vb-color-rule); }

@media (max-width: 75rem) {
 html body .component-override[data-section-slot="header"]:not([data-section-component="header-centered-split"]) .vbs-header-classic-bar__nav { display: none; }
 html body .component-override[data-section-slot="header"]:not([data-section-component="header-centered-split"]) .vbs-header-classic-bar__disclosure { display: block; margin-left: 1rem; }
 html body .component-override[data-section-slot="header"] .favorites-nav { margin-left: auto; }
}
@media (max-width: 63.999rem) {
 html body .component-override[data-section-component] :is(.component-hero-layout, .component-project-layout, .component-module-layout, .component-favorites-layout),
 html body .component-override[data-section-component="solution-alternating-rows"] .component-spaces-item,
 html body .component-override[data-section-component="gallery-parallax-columns"] .component-spaces-items { grid-template-columns: 1fr; }
 html body .component-override[data-section-component] :is(.component-hero-media, .component-hero-copy, .component-hero-heading, .embed-caption, .embed-warning) { grid-column: 1; grid-row: auto; }
 html body .component-override[data-section-component="solution-alternating-rows"] .component-spaces-item:nth-child(even) > :first-child { order: 0; }
 html body .component-override[data-section-component="gallery-parallax-columns"] .component-spaces-item { margin: 0; }
 html body .component-override[data-section-component="contact-split-form"] .contact-copy { position: relative; top: auto; }
 html body .component-override[data-section-component="contact-brief-ledger"] .contact-copy { display: block; }
 html body .component-override[data-section-component="contact-brief-ledger"] .contact-copy > * + * { margin-top: 1.5rem; }
 html body .component-override[data-section-component] .vbs-cta-cursor-lookbook__medias { grid-template-columns: repeat(2, minmax(0, 1fr)); }
 html body .component-override[data-section-component="hero-overlap-bleed"] .component-hero-media { grid-row: 1; aspect-ratio: 4/3; }
 html body .component-override[data-section-component="hero-overlap-bleed"] .component-hero-heading { grid-row: 2; padding: 1.5rem 0 0; }
 html body .component-override[data-section-component="hero-curtain-arch"] .component-hero-media { grid-row: 1; aspect-ratio: 16/9; }
 html body .component-override[data-section-component="hero-masthead-columns"] .component-hero-copy { border-right: 0; padding-right: 0; }
 html body .component-override[data-section-component="hero-masthead-columns"] .component-hero-media { grid-row: 3; }
 html body .component-override[data-section-component="intro-manifesto-rule"] :is(.component-project-copy, .component-project-media) { grid-column: 1; grid-row: auto; }
 html body .component-override[data-section-component="intro-manifesto-rule"] .component-project-copy { order: -1; }
 html body .component-override[data-section-component="intro-manifesto-rule"] .component-project-media { grid-template-columns: repeat(auto-fit, minmax(min(100%, 180px), 1fr)); }
 html body .component-override[data-section-component="showcase-editorial-case-study"] :is(.component-project-copy, .component-project-copy > .vb-cinema__chapter, .section-heading) { grid-template-columns: 1fr; gap: 1.5rem; }
 html body .component-override[data-section-component="showcase-editorial-case-study"] .component-project-copy > :is(h2, :not(h2), .vb-cinema__chapter) { grid-column: 1; grid-row: auto; }
 html body .component-override[data-section-component="showcase-editorial-case-study"] :is(.vbs-intro-cinematic-aperture__details, .section-heading p) { border-left: 0; padding-left: 0; }
 html body .component-override[data-section-component="gallery-modern-lightbox"] .component-spaces-items { grid-template-columns: 1fr 1fr; }
 html body .component-override[data-section-component="gallery-modern-lightbox"] .component-spaces-item { grid-column: auto; }
 html body .component-override[data-section-component="gallery-modern-lightbox"] .component-spaces-item:first-child { grid-column: 1 / -1; grid-row: auto; }
 html body .component-override[data-section-component="gallery-modern-lightbox"] .component-spaces-item:first-child .vb-media { aspect-ratio: 16/9; }
 html body .component-override[data-section-component="portfolio-masonry-grid"] .component-spaces-items { grid-template-columns: 1fr 1fr; }
 html body .component-override[data-section-component="cta-statement-bleed"] .favorites-copy { grid-template-columns: 1fr; }
 html body .component-override[data-section-component="cta-statement-bleed"] .favorites-copy .vb-btn { grid-column: 1; justify-self: start; }
 html body .component-override[data-section-component="hero-split-portrait"] :is(.favorites-copy, .favorites-image, .vbs-cta-cursor-lookbook__title, .vbs-cta-cursor-lookbook__statement, .vbs-cta-cursor-lookbook__card) { grid-column: 1; grid-row: auto; }
 html body .component-override[data-section-component="cta-split-panel"] .contact-composition { grid-template-columns: 1fr; }
}
@media (max-width: 40rem) {
 html body .component-override[data-section-component="header-framed-rule"] .vbs-header-classic-bar__inner { padding-inline: .5rem; gap: .5rem; }
 html body .component-override[data-section-component="header-float-capsule"] .vbs-header-classic-bar__inner { padding-inline: 1rem; gap: .5rem; }
 html body .component-override[data-section-component="hero-curtain-arch"] .component-hero-media { aspect-ratio: 4/3; }
 html body .component-override[data-section-component="showcase-editorial-case-study"] .component-project-media { grid-template-columns: 1fr; }
 html body .component-override[data-section-component="showcase-editorial-case-study"] .component-project-media > figure { height: auto; aspect-ratio: 4/3; }
 html body .component-override[data-section-component="showcase-editorial-case-study"] .component-project-media.vb-cinema__media { aspect-ratio: 4/3; }
 html body .component-override[data-section-component="gallery-modern-lightbox"] .component-spaces-items,
 html body .component-override[data-section-component="portfolio-masonry-grid"] .component-spaces-items { grid-template-columns: 1fr; }
 html body .component-override[data-section-component="gallery-modern-lightbox"] .component-spaces-item { grid-column: 1; }
 html body .component-override[data-section-component="showcase-fullbleed-pills"] .component-spaces-item { min-height: 32rem; }
}
