/* Integration-only corrections; the approved v11 stylesheet stays unchanged. */
.cl-approved-crm { min-width: 0; width: 100%; scroll-margin-top: 28px; }
.cl-approved-crm iframe { display: block; width: 100%; max-width: 100%; border: 0; }
.contact-inquiry { grid-template-columns: minmax(0, .75fr) minmax(0, 1.65fr); gap: 3vw; }
.cl-inquiry-arrow { display: inline-block; }
#inquiry-form { scroll-margin-top: 28px; }
.cl-inquiry-context { display: block; width: 100%; min-width: 0; padding: 0 0 28px; margin: 0 0 28px; border-bottom: 1px solid var(--line); }
.cl-inquiry-context h2 { font: 400 clamp(30px, 3vw, 44px)/1.1 var(--serif); margin: 0 0 16px; letter-spacing: -.025em; }
.cl-inquiry-context p { max-width: none; margin: 0 0 16px; }
.cl-inquiry-context textarea { display: block; box-sizing: border-box; width: 100%; max-width: 100%; padding: 14px; font: 14px/1.6 var(--sans); color: inherit; background: transparent; border: 1px solid var(--line); resize: vertical; }
.cl-inquiry-context button { margin-top: 12px; }
@media (max-width: 900px) {
  .cl-inquiry-arrow { transform: rotate(90deg); }
  .contact-inquiry { grid-template-columns: minmax(0, 1fr); gap: 32px; }
}
@media (max-width: 600px) {
  .contact-inquiry { padding-inline: 0; }
  .contact-inquiry > div:not(.cl-approved-crm), .contact-inquiry > form { margin-inline: 24px; }
  .cl-approved-crm { width: 100%; }
  .cl-approved-crm .cl-inquiry-context { width: auto; margin-inline: 16px; }
}
/* The original 620px sticky minimum causes title/caption overlap in shallow desktop windows. */
@media (min-width: 761px) and (max-height: 700px) and (prefers-reduced-motion: no-preference) {
  .collection-sticky { height: 100svh; min-height: 0; }
  .collection-title { top: 16%; }
  .collection-title h2 { font-size: clamp(56px, 12vh, 84px); margin-top: 12px; }
  .chapter-story { bottom: 66px; padding-top: 10px; padding-bottom: 10px; }
  .chapter-name { font-size: 24px; }
  .chapter-description { font-size: 13px; line-height: 1.4; margin: 8px 0; }
  .chapter-nav { bottom: 12px; }
}

/* Installation-led first screen, explicitly requested after approval of v11. */
.cl-monument { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:4vw; padding:0 3.4vw 32px; }
.cl-monument-copy { display:flex; flex-direction:column; justify-content:center; align-items:flex-start; padding:4vh 0; }
.cl-monument-copy > .eyebrow { font-size:10px; letter-spacing:.13em; margin-bottom:36px; }
.cl-monument h1 { font:400 clamp(48px,6.2vw,108px)/.94 var(--serif); letter-spacing:-.045em; margin:0; }
.cl-monument-line { font:400 clamp(28px,3vw,48px)/1.12 var(--serif); letter-spacing:-.02em; margin:32px 0 0; }
.cl-monument-foot { margin-top:clamp(30px,6vh,70px); }
.cl-monument-foot p { font-size:14px; line-height:1.6; }
.cl-monument-foot p span { display:block; font-size:12px; opacity:.7; }
.cl-monument-foot .text-link { margin-top:24px; font-size:13px; }
.cl-monument-photo { margin:0; min-width:0; align-self:center; }
.cl-monument-photo .image-button { display:block; width:100%; background:transparent; }
.cl-monument-photo img { display:block; width:100%; height:calc(100svh - 162px); min-height:460px; max-height:1000px; object-fit:contain; }
.cl-monument-photo figcaption { display:flex; justify-content:space-between; gap:12px; margin-top:12px; font-size:9px; letter-spacing:.09em; }
.cl-monument-photo .view-label { display:none; }
.cl-landscape-return h2 { font:400 clamp(76px,8.6vw,144px)/.82 var(--serif); letter-spacing:-.045em; text-shadow:0 1px 18px #11272033; }
.cl-landscape-return h2 em { display:block; padding-top:7px; }
.cl-home-installation .giga-heading { margin-bottom:40px; }
.cl-home-installation .giga-installation { display:block; }
.cl-home-installation .giga-intro { position:static; display:grid; grid-template-columns:1fr 1fr; gap:0 9vw; padding:0; }
.cl-home-installation .giga-intro .giga-scale, .cl-home-installation .giga-intro > .eyebrow { grid-column:1; }
.cl-home-installation .giga-intro > p:not(.giga-scale):not(.eyebrow) { grid-column:2; max-width:none; }
.cl-home-installation .giga-intro > .giga-scale { grid-row:1 / span 3; }
.cl-home-installation .giga-intro > .eyebrow { grid-row:4; margin:0; }
.cl-home-installation .giga-intro > p:nth-of-type(3) { grid-row:1; }
.cl-home-installation .giga-intro > p:nth-of-type(4) { grid-row:2; }
.cl-home-installation .giga-intro > .text-link { grid-column:2; grid-row:3; justify-self:start; }
.cl-home-installation .giga-case { margin-top:70px; }
@media (max-width:1000px) and (min-width:761px) {
 .cl-monument { gap:2vw; }
 .cl-monument h1 { font-size:6.1vw; }
 .cl-monument-copy > .eyebrow { max-width:230px; line-height:1.7; }
}
@media (max-width:760px) {
 .cl-monument { display:flex; flex-direction:column; padding:8px 22px 32px; gap:24px; }
 .cl-monument-copy { display:contents; }
 .cl-monument-copy > .eyebrow { margin:0; font-size:9px; }
 .cl-monument h1 { font-size:clamp(44px,11.6vw,80px); }
 .cl-monument-line { font-size:clamp(25px,6.6vw,38px); margin:-8px 0 0; }
 .cl-monument-line br { display:none; }
 .cl-monument-photo { order:1; width:100%; }
 .cl-monument-photo img { width:100%; height:auto; min-height:0; max-height:none; aspect-ratio:3/4; object-fit:contain; }
 .cl-monument-photo figcaption { display:none; }
 .cl-monument-photo figcaption span:last-child { display:none; }
 .cl-monument-foot { order:2; margin-top:0; }
 .cl-monument-foot .text-link { margin-top:16px; }
 .cl-landscape-return h2 { font-size:clamp(68px,17vw,110px); }
 .cl-home-installation .giga-intro { display:block; }
}
