/* V75 — clean cinematic hero handoff + clearer mural wall-size builder */

/* The old gallery layout intentionally overlapped its legacy hero by 30px.
   With the cinematic hero, keep all following content fully below the hero. */
body.v73-has-cinematic-hero.page-gallery .gallery-intro-stats{
  position:relative;
  z-index:2;
  margin:34px auto 46px!important;
  padding-top:0!important;
  transform:none!important;
}
body.v73-has-cinematic-hero.page-gallery .gallery-intro-stats>div{
  min-height:112px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-shadow:0 14px 34px rgba(7,16,22,.12);
}

/* Give full-width strips breathing room after the cinematic information rail. */
body.v73-has-cinematic-hero.page-events .event-marquee{
  position:relative;
  z-index:2;
  margin-top:20px!important;
  border-top:1px solid rgba(7,16,22,.08);
  border-bottom:1px solid rgba(7,16,22,.08);
}
body.v73-has-cinematic-hero.page-index .v38-type-band,
body.v73-has-cinematic-hero.page-services .v38-type-band{
  margin-top:20px!important;
}

/* Mural wall-size chooser */
body.theme-v38.page-murals .wall-size-builder{
  grid-column:1/-1;
  padding:22px;
  margin-bottom:4px;
  border:1px solid #cfd8dc;
  border-radius:24px;
  background:linear-gradient(145deg,#ffffff,#f0f5f6);
  box-shadow:0 15px 35px rgba(7,16,22,.08);
}
body.theme-v38.page-murals .wall-size-builder-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:24px;
  align-items:end;
  margin-bottom:18px;
}
body.theme-v38.page-murals .wall-size-builder-head .eyebrow{
  color:#0f93aa;
  font-size:10px;
  font-weight:900;
  letter-spacing:.14em;
}
body.theme-v38.page-murals .wall-size-builder-head h3{
  margin:6px 0 5px;
  font-family:'Space Grotesk',Arial,sans-serif;
  font-size:clamp(22px,2.2vw,31px);
  line-height:1.04;
  letter-spacing:-.035em;
}
body.theme-v38.page-murals .wall-size-builder-head p{
  margin:0;
  max-width:660px;
  color:#52636b;
  font-size:13px;
  line-height:1.55;
}
body.theme-v38.page-murals .wall-size-live{
  min-width:205px;
  padding:13px 16px;
  border-radius:17px;
  background:#071016;
  color:#fff;
  text-align:right;
}
body.theme-v38.page-murals .wall-size-live strong,
body.theme-v38.page-murals .wall-size-live span{display:block}
body.theme-v38.page-murals .wall-size-live strong{font-size:14px;line-height:1.25}
body.theme-v38.page-murals .wall-size-live span{margin-top:4px;color:#29e5ff;font-size:12px;font-weight:900}

body.theme-v38.page-murals .wall-size-presets{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
body.theme-v38.page-murals .wall-size-preset{
  min-height:92px;
  padding:14px 15px;
  text-align:left;
  border:1px solid #cbd5d9;
  border-radius:17px;
  background:#fff;
  color:#071016;
  cursor:pointer;
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease,background .2s ease;
}
body.theme-v38.page-murals .wall-size-preset:hover,
body.theme-v38.page-murals .wall-size-preset:focus-visible{
  transform:translateY(-2px);
  border-color:#22c6dc;
  box-shadow:0 10px 24px rgba(7,16,22,.10);
}
body.theme-v38.page-murals .wall-size-preset.is-active{
  border-color:#071016;
  background:#071016;
  color:#fff;
  box-shadow:0 12px 26px rgba(7,16,22,.18);
}
body.theme-v38.page-murals .wall-size-preset small,
body.theme-v38.page-murals .wall-size-preset strong,
body.theme-v38.page-murals .wall-size-preset span{display:block}
body.theme-v38.page-murals .wall-size-preset small{font-size:8px;font-weight:950;letter-spacing:.12em;color:#0d9db4}
body.theme-v38.page-murals .wall-size-preset strong{margin:7px 0 4px;font-size:17px;line-height:1}
body.theme-v38.page-murals .wall-size-preset span{font-size:11px;color:#6b7b82}
body.theme-v38.page-murals .wall-size-preset.is-active small{color:#29e5ff}
body.theme-v38.page-murals .wall-size-preset.is-active span{color:#b9c8cf}
body.theme-v38.page-murals .wall-size-custom:not(.is-active){background:linear-gradient(145deg,#f8fbfc,#eaf8fb);border-style:dashed}

body.theme-v38.page-murals .wall-dimension{
  padding:16px;
  border:1px solid #d7dfe2;
  border-radius:18px;
  background:#fff;
}
body.theme-v38.page-murals .wall-dimension>span{font-size:13px;font-weight:900}
body.theme-v38.page-murals .wall-dimension>span small{font-weight:700;color:#73838a}
body.theme-v38.page-murals .wall-dimension>small{color:#718088;font-size:10px;line-height:1.45}
body.theme-v38.page-murals .wall-dimension input{
  font-size:22px;
  font-weight:900;
  padding:13px 14px;
  border-color:#bfcbd0;
}
body.theme-v38.page-murals .wall-dimension input:focus{
  outline:3px solid rgba(41,229,255,.18);
  border-color:#159db4;
}

@media(max-width:980px){
  body.theme-v38.page-murals .wall-size-presets{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.theme-v38.page-murals .wall-size-builder-head{grid-template-columns:1fr}
  body.theme-v38.page-murals .wall-size-live{text-align:left;min-width:0;width:fit-content}
}

@media(max-width:720px){
  body.v73-has-cinematic-hero.page-gallery .gallery-intro-stats{
    margin:24px auto 34px!important;
  }
  body.v73-has-cinematic-hero.page-events .event-marquee{margin-top:14px!important}
  body.theme-v38.page-murals .wall-size-builder{padding:16px;border-radius:20px}
  body.theme-v38.page-murals .wall-size-presets{
    display:flex;
    gap:9px;
    overflow-x:auto;
    scroll-snap-type:x proximity;
    padding-bottom:5px;
    -webkit-overflow-scrolling:touch;
  }
  body.theme-v38.page-murals .wall-size-preset{
    flex:0 0 190px;
    scroll-snap-align:start;
  }
  body.theme-v38.page-murals .wall-size-live{width:100%}
  body.theme-v38.page-murals .estimate-controls{grid-template-columns:1fr!important}
  body.theme-v38.page-murals .wall-dimension{grid-column:1/-1}
}

@media(prefers-reduced-motion:reduce){
  body.theme-v38.page-murals .wall-size-preset{transition:none!important}
}
