*{box-sizing:border-box}html{scroll-behavior:auto!important;scrollbar-width:none}html::-webkit-scrollbar{display:none}body{margin:0;background:#07090c;color:#fff;font-family:Arial,Helvetica,sans-serif;overflow-x:clip}a{color:inherit}img{max-width:100%}button,input,textarea{font:inherit}button{cursor:pointer}video{max-width:100%}html[data-tour-controlled] body{overscroll-behavior:none}html[data-tour-controlled]::-webkit-scrollbar{display:none}:focus-visible{outline:3px solid #AAFBDC;outline-offset:4px}
/* Calvary shared traced CTA treatment — sitewide primary conversion system */
@property --cal-cta-trace-angle{syntax:"<angle>";initial-value:0deg;inherits:false}
@keyframes calCtaTrace{to{--cal-cta-trace-angle:360deg}}

.cal-cta-primary,
.cal-cta-phone,
a[href="/contact/"][class*="cta"],
a[href="/contact/"][class*="primary"],
a[class*="hero__cta"],
a[class*="hero__primary"],
a[class*="final__cta"],
a[class*="final__primary"]{
  position:relative;
  overflow:hidden;
  border:1px solid transparent;
  border-radius:8px;
  background:
    linear-gradient(rgba(17,20,25,.80),rgba(17,20,25,.80)) padding-box,
    conic-gradient(from var(--cal-cta-trace-angle),rgba(255,255,255,.13) 0 76%,rgba(239,53,59,.22) 82%,#ef353b 89%,rgba(239,53,59,.30) 94%,rgba(255,255,255,.13) 100%) border-box;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.025),0 14px 34px rgba(0,0,0,.22);
  animation:calCtaTrace 5.6s linear infinite;
  transition:transform .2s ease,box-shadow .2s ease,filter .2s ease
}

.cal-cta-phone{animation-delay:-2.8s}

.cal-cta-primary:hover,
.cal-cta-phone:hover,
a[href="/contact/"][class*="cta"]:hover,
a[href="/contact/"][class*="primary"]:hover,
a[class*="hero__cta"]:hover,
a[class*="hero__primary"]:hover,
a[class*="final__cta"]:hover,
a[class*="final__primary"]:hover{
  transform:translateY(-2px);
  filter:brightness(1.08);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04),0 16px 38px rgba(0,0,0,.28),0 0 22px rgba(220,31,38,.11)
}

.cal-cta-primary>span{transition:transform .2s ease}
.cal-cta-primary:hover>span{transform:translateX(4px)}

/* Normalize the accent end-cap where the section markup already supplies a b/i arrow. */
a[href="/contact/"][class*="cta"]>b:last-child,
a[href="/contact/"][class*="cta"]>i:last-child,
a[href="/contact/"][class*="primary"]>b:last-child,
a[href="/contact/"][class*="primary"]>i:last-child,
a[class*="hero__cta"]>b:last-child,
a[class*="hero__cta"]>i:last-child,
a[class*="hero__primary"]>b:last-child,
a[class*="hero__primary"]>i:last-child,
a[class*="final__cta"]>b:last-child,
a[class*="final__cta"]>i:last-child,
a[class*="final__primary"]>b:last-child,
a[class*="final__primary"]>i:last-child{
  display:grid;
  place-items:center;
  width:36px;
  height:36px;
  min-width:36px;
  margin:-9px -10px -9px 0;
  background:#dc1f26;
  color:#fff;
  font-size:17px;
  font-style:normal;
  line-height:1
}

@media(prefers-reduced-motion:reduce){
  .cal-cta-primary,
  .cal-cta-phone,
  a[href="/contact/"][class*="cta"],
  a[href="/contact/"][class*="primary"],
  a[class*="hero__cta"],
  a[class*="hero__primary"],
  a[class*="final__cta"],
  a[class*="final__primary"]{animation:none!important}
}


.cal-hero {
  position: relative;
  isolation: isolate;
  width: 100%;
  padding: 0 0 58px;
  overflow: hidden;
  background: #07090c;
}
.cal-hero__ambient {position:absolute;z-index:0;inset:0;overflow:hidden;background:linear-gradient(315deg,#07090c 2%,#11151a 30%,#270b0e 55%,#101318 76%,#07090c 98%);background-size:400% 400%;animation:calHeroAmbientGradient 18s ease infinite;pointer-events:none}
.cal-hero__ambient::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 78% 36%,rgba(220,31,38,.17),transparent 30%),radial-gradient(circle at 18% 66%,rgba(255,255,255,.035),transparent 32%);mix-blend-mode:screen;opacity:.72}
.cal-hero__ambient::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,rgba(255,255,255,.018) 0 1px,transparent 1px 88px),repeating-linear-gradient(0deg,rgba(255,255,255,.012) 0 1px,transparent 1px 88px);mask-image:linear-gradient(to bottom,rgba(0,0,0,.7),rgba(0,0,0,.22) 72%,transparent);opacity:.65}
.cal-hero__wave{position:absolute;z-index:0;top:-38%;left:-58%;width:170%;height:34%;border-radius:50% 50% 46% 54%/72% 68% 32% 28%;background:linear-gradient(180deg,rgba(220,31,38,.12),rgba(220,31,38,.035));transform-origin:50% 50%;animation:calHeroWaveDiagLR 15s -4s linear infinite;opacity:.84;filter:blur(.2px);will-change:transform}
.cal-hero__wave:nth-child(2){top:-42%;left:auto;right:-58%;width:176%;height:38%;border-radius:48% 52% 55% 45%/68% 72% 28% 32%;background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.012));animation:calHeroWaveDiagRL 20s -11s linear infinite;opacity:.68}
.cal-hero__wave:nth-child(3){top:-46%;left:-64%;width:182%;height:42%;border-radius:52% 48% 44% 56%/70% 66% 34% 30%;background:linear-gradient(180deg,rgba(220,31,38,.075),rgba(220,31,38,.018));animation:calHeroWaveDiagLR 24s -16s linear infinite;opacity:.74}
.cal-hero__stage{position:relative;z-index:1;width:70vw;max-width:70vw;aspect-ratio:16/9;margin:0 auto;overflow:hidden;background:transparent;border:0;box-shadow:none}
.cal-hero__video{display:block;width:100%;height:100%;object-fit:contain;object-position:center;background:transparent;pointer-events:none;-webkit-mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.25) 3%,rgba(0,0,0,.70) 7%,#000 13%,#000 87%,rgba(0,0,0,.70) 93%,rgba(0,0,0,.25) 97%,transparent 100%),linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.25) 3%,rgba(0,0,0,.70) 7%,#000 13%,#000 94%,rgba(0,0,0,.65) 97%,transparent 100%);mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.25) 3%,rgba(0,0,0,.70) 7%,#000 13%,#000 87%,rgba(0,0,0,.70) 93%,rgba(0,0,0,.25) 97%,transparent 100%),linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.25) 3%,rgba(0,0,0,.70) 7%,#000 13%,#000 94%,rgba(0,0,0,.65) 97%,transparent 100%);-webkit-mask-composite:source-in;mask-composite:intersect;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%}
.cal-hero__headline{position:absolute;z-index:3;top:23.3%;left:35.2%;width:41%;max-width:690px;color:#fff}
.cal-hero__eyebrow{display:flex;align-items:center;gap:9px;margin:0 0 9px;color:#fff;font:800 clamp(7px,.52vw,11px)/1.2 Inter,Arial,sans-serif;letter-spacing:.15em;text-transform:uppercase;white-space:nowrap}
.cal-hero__diamond{width:7px;height:7px;flex:0 0 auto;background:#e31d25;transform:rotate(45deg);box-shadow:0 0 9px rgba(227,29,37,.45)}
.cal-hero__eyebrow-text{display:inline-flex;align-items:center;gap:.42em}
.cal-hero__headline-top{margin:0;color:#fff;font:900 clamp(25px,2.65vw,50px)/.9 "Arial Black",Arial,sans-serif;letter-spacing:-.055em;text-transform:uppercase;text-shadow:0 2px 18px rgba(0,0,0,.34)}
.cal-hero__line{display:block}.cal-hero__headline-top strong{color:#e31d25;font:inherit;margin:3px 0}
.cal-hero__support-main{position:absolute;z-index:4;inset:0;pointer-events:none;color:#fff;font:900 clamp(10px,.82vw,17px)/1.04 Inter,Arial,sans-serif;letter-spacing:.02em;text-align:center;text-transform:none}
.cal-hero__support-line{position:absolute;left:1.5%;right:1.5%;white-space:nowrap;text-shadow:0 2px 4px rgba(0,0,0,.92),0 0 1px rgba(255,255,255,.18)}
.cal-hero__support-line--above{bottom:9.1%;--support-shift:22px}.cal-hero__support-line--below{bottom:4.45%;--support-shift:-22px}
.cal-hero__reveal-word{display:inline-block;opacity:0;visibility:hidden;filter:blur(11px);transform:translateY(8px) scale(1.055);text-shadow:0 2px 12px rgba(0,0,0,.5)}
.cal-hero__support-line .cal-hero__reveal-word--support{opacity:0;visibility:hidden;filter:blur(16px);transform:translateX(var(--support-shift)) scale(1.055);letter-spacing:.045em;text-shadow:0 0 14px rgba(255,255,255,.18),0 0 28px rgba(255,255,255,.08),0 2px 10px rgba(0,0,0,.94);will-change:opacity,filter,transform,letter-spacing}
.cal-hero.is-video-complete .cal-hero__reveal-word:not(.cal-hero__reveal-word--support){animation:calHeroWordResolve .46s cubic-bezier(.16,.78,.18,1) forwards;animation-delay:calc(.03s + var(--i)*.05s)}
.cal-hero.is-video-complete .cal-hero__support-line--above .cal-hero__reveal-word--support{animation:calHeroSupportReverseDissolve .70s cubic-bezier(.16,.78,.18,1) forwards;animation-delay:calc(.10s + var(--o)*.075s)}
.cal-hero.is-video-complete .cal-hero__support-line--below .cal-hero__reveal-word--support{animation:calHeroSupportReverseDissolve .70s cubic-bezier(.16,.78,.18,1) forwards;animation-delay:calc(.30s + var(--o)*.075s)}
@keyframes calHeroAmbientGradient{0%{background-position:0 0}50%{background-position:100% 100%}100%{background-position:0 0}}
@keyframes calHeroWaveDiagLR{0%{transform:translate3d(-10%,-52%,0) rotate(22deg)}18%{transform:translate3d(5%,-22%,0) rotate(20deg)}38%{transform:translate3d(-2%,18%,0) rotate(22deg)}58%{transform:translate3d(10%,56%,0) rotate(20deg)}78%{transform:translate3d(3%,95%,0) rotate(22deg)}100%{transform:translate3d(18%,142%,0) rotate(20deg)}}
@keyframes calHeroWaveDiagRL{0%{transform:translate3d(10%,-52%,0) rotate(-22deg)}18%{transform:translate3d(-5%,-22%,0) rotate(-20deg)}38%{transform:translate3d(2%,18%,0) rotate(-22deg)}58%{transform:translate3d(-10%,56%,0) rotate(-20deg)}78%{transform:translate3d(-3%,95%,0) rotate(-22deg)}100%{transform:translate3d(-18%,142%,0) rotate(-20deg)}}
@keyframes calHeroWordResolve{0%{opacity:0;visibility:hidden;filter:blur(11px);transform:translateY(8px) scale(1.055);text-shadow:0 2px 14px rgba(0,0,0,.58)}12%{visibility:visible;opacity:.15}60%{opacity:.9;filter:blur(2px);transform:translateY(1px) scale(1.008)}100%{opacity:1;visibility:visible;filter:blur(0);transform:none;text-shadow:0 2px 10px rgba(0,0,0,.46)}}
@keyframes calHeroSupportReverseDissolve{0%{opacity:0;visibility:hidden;filter:blur(16px);transform:translateX(var(--support-shift)) scale(1.055);letter-spacing:.045em}14%{visibility:visible;opacity:.12}38%{opacity:.34;filter:blur(10px);transform:translateX(calc(var(--support-shift)*.62)) scale(1.035)}68%{opacity:.82;filter:blur(3px);transform:translateX(calc(var(--support-shift)*.18)) scale(1.01);letter-spacing:.027em}100%{opacity:1;visibility:visible;filter:blur(0);transform:translateX(0) scale(1);letter-spacing:.02em}}
@media(max-width:1250px){.cal-hero{padding:38px 0 48px}.cal-hero__stage{width:78vw;max-width:78vw}.cal-hero__headline{left:34.8%;width:42%;top:22.8%}.cal-hero__support-main{font-size:clamp(9px,.78vw,14px)}.cal-hero__support-line--above{bottom:9%}.cal-hero__support-line--below{bottom:4.35%}}
@media(max-width:900px){.cal-hero{padding:28px 0 38px}.cal-hero__stage{width:calc(100% - 30px);max-width:none}.cal-hero__headline{top:21.8%;left:34%;width:44%}.cal-hero__headline-top{font-size:clamp(21px,3.45vw,33px)}.cal-hero__eyebrow{font-size:7px}.cal-hero__support-main{font-size:clamp(8px,1.02vw,11px)}}
@media(max-width:650px){
  .cal-hero{min-height:430px;padding:0;overflow:hidden;background:#07090c}
  .cal-hero__ambient{animation:none;background:linear-gradient(145deg,#07090c 0%,#11151a 45%,#250b0e 72%,#07090c 100%);background-size:100% 100%}
  .cal-hero__ambient::before{background:radial-gradient(circle at 82% 24%,rgba(220,31,38,.22),transparent 34%),radial-gradient(circle at 14% 78%,rgba(255,255,255,.045),transparent 32%);opacity:.82}
  .cal-hero__ambient::after{opacity:.38;mask-image:linear-gradient(to bottom,#000,transparent 94%)}
  .cal-hero__wave{display:none}
  .cal-hero__stage{width:100%;max-width:none;min-height:430px;aspect-ratio:auto;margin:0;padding:72px 24px 58px;display:flex;flex-direction:column;justify-content:center;overflow:hidden}
  .cal-hero__video{display:none!important}
  .cal-hero__headline{position:relative;top:auto;left:auto;width:100%;max-width:520px;margin:0;padding:0;background:transparent;border:0}
  .cal-hero__eyebrow{align-items:flex-start;gap:8px;margin:0 0 17px;font-size:9px;line-height:1.35;letter-spacing:.12em;white-space:normal}
  .cal-hero__diamond{width:7px;height:7px;margin-top:2px}
  .cal-hero__eyebrow-text{display:inline-flex;flex-wrap:wrap;gap:.28em .42em}
  .cal-hero__headline-top{font-size:clamp(38px,11vw,50px);line-height:.9;letter-spacing:-.06em;text-shadow:0 3px 22px rgba(0,0,0,.42)}
  .cal-hero__headline-top .cal-hero__line,.cal-hero__headline-top strong.cal-hero__line{display:block;white-space:nowrap;margin:2px 0}
  .cal-hero__support-main{position:relative;z-index:4;inset:auto;width:100%;max-width:520px;margin:24px 0 0;padding:0;color:#c4c8ce;font-size:13px;line-height:1.52;font-weight:650;letter-spacing:0;text-align:left;pointer-events:none}
  .cal-hero__support-line{position:static;display:inline;left:auto;right:auto;white-space:normal;margin:0;text-shadow:none}
  .cal-hero__support-line--above{--support-shift:0;margin-right:.22em}
  .cal-hero__support-line--below{--support-shift:0}
  .cal-hero__reveal-word,.cal-hero__support-line .cal-hero__reveal-word--support{opacity:1!important;visibility:visible!important;filter:none!important;transform:none!important;animation:none!important;letter-spacing:inherit!important;will-change:auto;text-shadow:none}
  .cal-hero__headline-top .cal-hero__reveal-word{color:inherit;text-shadow:0 2px 14px rgba(0,0,0,.42)}
}
@media(max-width:390px){.cal-hero__stage{padding-left:20px;padding-right:20px}.cal-hero__headline-top{font-size:clamp(36px,10.8vw,43px)}.cal-hero__support-main{font-size:12.5px}}
@media(prefers-reduced-motion:reduce){.cal-hero__ambient,.cal-hero__wave{animation:none!important}.cal-hero__reveal-word{opacity:1!important;visibility:visible!important;filter:none!important;transform:none!important;animation:none!important;letter-spacing:inherit!important}}


.cal-intro {
  --red: #dc1f26;
  --black: #0b0d10;
  --muted: #69707a;

  position: relative;
  z-index: 2;

  margin-top: -54px;
  padding: 164px 0 126px;

  overflow: hidden;
  background: #f3f3f1;
  color: var(--black);
}

.cal-intro::before {
  content: "";
  position: absolute;
  z-index: 0;
  inset: 0;
  background:
    linear-gradient(115deg, transparent 0 57%, rgba(220,31,38,0.035) 57% 57.15%, transparent 57.15% 100%),
    repeating-linear-gradient(90deg, rgba(16,19,24,0.026) 0 1px, transparent 1px 72px),
    repeating-linear-gradient(0deg, rgba(16,19,24,0.018) 0 1px, transparent 1px 72px);
  pointer-events: none;
}

.cal-intro__transition {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 92px;
  overflow: hidden;
  background:
    linear-gradient(176deg, rgba(220,31,38,0.34) 0 33%, transparent 33.4%),
    linear-gradient(178deg, #dc1f26 0 14%, transparent 14.4%),
    #f3f3f1;
  pointer-events: none;
}

.cal-intro__transition span {
  display: none;
}

.cal-intro::after {
  content: "";
  position: absolute;
  z-index: 0;
  width: 520px;
  height: 520px;
  right: -250px;
  top: 110px;
  border: 1px solid rgba(220,31,38,0.10);
  transform: rotate(45deg);
  pointer-events: none;
}

.cal-intro__inner {
  position: relative;
  z-index: 2;
  width: min(1320px, calc(100% - 64px));
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 0.88fr;
  align-items: center;
  gap: clamp(60px, 8vw, 130px);
}

.cal-intro__eyebrow {
  display: flex;
  align-items: center;
  gap: 11px;
  margin-bottom: 20px;
  color: #555b63;
  font: 800 11px/1.2 Inter, Arial, sans-serif;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.cal-intro__eyebrow span {
  width: 8px;
  height: 8px;
  background: var(--red);
  transform: rotate(45deg);
}

.cal-intro h2 {
  max-width: 720px;
  margin: 0;
  font-family: "Arial Black", Arial, sans-serif;
  font-size: clamp(44px, 4.5vw, 72px);
  font-weight: 900;
  line-height: 0.98;
  letter-spacing: -0.05em;
  text-transform: uppercase;
}

.cal-intro h2 strong {
  display: block;
  margin-top: 7px;
  color: var(--red);
  font: inherit;
}

.cal-intro__copy {
  max-width: 680px;
  margin-top: 30px;
  color: var(--muted);
  font: 400 17px/1.75 Inter, Arial, sans-serif;
}

.cal-intro__copy p { margin: 0 0 18px; }
.cal-intro__copy strong { color: #20242a; }

.cal-intro__link {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-top: 14px;
  color: var(--black);
  font: 800 12px/1 Inter, Arial, sans-serif;
  letter-spacing: 0.08em;
  text-decoration: none;
  text-transform: uppercase;
}

.cal-intro__link span {
  color: var(--red);
  font-size: 21px;
  transition: transform 0.2s ease;
}

.cal-intro__link:hover span { transform: translateX(5px); }

.cal-intro__visual {
  position: relative;
  isolation: isolate;
}

.cal-intro__visual::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: -18px 26px 28px -18px;
  background: rgba(220,31,38,0.10);
  border: 1px solid rgba(220,31,38,0.18);
  clip-path: polygon(0 0, 88% 0, 100% 14%, 100% 100%, 12% 100%, 0 88%);
}

.cal-intro__image {
  position: relative;
  z-index: 1;
  width: 100%;
  aspect-ratio: 4 / 3;
  display: grid;
  place-items: center;
  background-image:
    linear-gradient(135deg, rgba(11,13,16,0.10), rgba(11,13,16,0.24)),
    url("/web-design/tour/media/e2e917edd4fc94bc.webp");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  color: rgba(255,255,255,0.25);
  font: 800 11px/1 Inter, Arial, sans-serif;
  letter-spacing: 0.18em;
  border-top: 3px solid var(--red);
  clip-path: polygon(0 0, 88% 0, 100% 14%, 100% 100%, 12% 100%, 0 88%);
}

.cal-intro__image > span {
  display: none;
}

.cal-intro__stat{position:absolute;z-index:2;left:-42px;bottom:-30px;width:min(360px,85%);padding:27px 30px 26px 32px;background:#090b0e;color:#fff;border:0;clip-path:polygon(8% 0,100% 0,100% 78%,92% 100%,0 100%,0 22%);filter:drop-shadow(-13px 12px 0 #dc1f26) drop-shadow(10px -9px 0 rgba(239,53,59,.30)) drop-shadow(0 22px 44px rgba(0,0,0,.46))}

.cal-intro__stat strong,
.cal-intro__stat span { display: block; }

.cal-intro__stat strong {
  margin-bottom: 6px;
  font: 900 15px/1.2 Inter, Arial, sans-serif;
  text-transform: uppercase;
}

.cal-intro__stat span {
  color: #aaaeb5;
  font: 400 12px/1.5 Inter, Arial, sans-serif;
}

@media (max-width: 900px) {
  .cal-intro {
    margin-top: -34px;
    padding: 116px 0 100px;
  }
  .cal-intro__inner {
    width: calc(100% - 40px);
    grid-template-columns: 1fr;
    gap: 60px;
  }
  .cal-intro__visual { max-width: 650px; }
}

@media (max-width: 650px) {
  .cal-intro__transition { height: 66px; }
}

@media (max-width: 600px) {
  .cal-intro {
    margin-top: -22px;
    padding: 92px 0 112px;
  }
  .cal-intro__inner { width: calc(100% - 32px); }
  .cal-intro h2 { font-size: clamp(38px, 11vw, 52px); }
  .cal-intro__copy { font-size: 15px; }
  .cal-intro__visual::before { inset: -10px 12px 18px -10px; }
  .cal-intro__image { clip-path: polygon(0 0, 90% 0, 100% 10%, 100% 100%, 0 100%); }
  .cal-intro__stat {
    left: 16px;
    right: 16px;
    bottom: -45px;
    width: auto;
  }
}

/* Layered hero-to-intro handoff */
.cal-intro__transition{
  height:104px;
  background:
    linear-gradient(176.4deg,#07090c 0 29%,transparent 29.45%),
    linear-gradient(177.7deg,#dc1f26 0 37%,transparent 37.45%),
    linear-gradient(179deg,rgba(239,53,59,.28) 0 44%,transparent 44.45%),
    #f3f3f1;
}
.cal-intro__transition span:first-child{
  display:block;
  position:absolute;
  right:0;
  top:31px;
  width:31%;
  height:2px;
  background:linear-gradient(90deg,transparent,rgba(239,53,59,.82));
  transform:rotate(-1.1deg);
  transform-origin:right center;
}
.cal-intro__transition span:nth-child(2){
  display:block;
  position:absolute;
  left:7%;
  top:53px;
  width:12%;
  height:1px;
  background:linear-gradient(90deg,rgba(220,31,38,.72),transparent);
  transform:rotate(-1.4deg);
}
@media(max-width:650px){
  .cal-intro__transition{height:72px}
  .cal-intro__transition span:first-child{top:21px;width:38%}
  .cal-intro__transition span:nth-child(2){top:36px;width:18%}
}

/* Blueprint Attached Information Slab depth */
.cal-intro__stat{background:linear-gradient(90deg,#dc1f26 0 4px,#090b0e 4px 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.055),inset 0 -1px 0 rgba(255,255,255,.025);filter:drop-shadow(-13px 12px 0 #dc1f26) drop-shadow(10px -9px 0 rgba(239,53,59,.30)) drop-shadow(0 22px 44px rgba(0,0,0,.44))}


.cal-generator{--red:#dc1f26;--red-bright:#ef353b;position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);height:760px;min-height:760px;max-height:760px;overflow-x:clip;overflow-y:visible;background:radial-gradient(circle at 82% 24%,rgba(220,31,38,.10),transparent 28%),linear-gradient(108deg,transparent 0 67%,rgba(255,255,255,.025) 67% 67.12%,transparent 67.12% 100%),#090b0e;color:#fff}.cal-generator::before{content:"";position:absolute;z-index:5;left:0;top:0;width:46%;height:11px;background:var(--red);clip-path:polygon(0 0,100% 0,96% 100%,0 100%);pointer-events:none}.cal-generator::after{content:"";position:absolute;z-index:5;left:0;bottom:-58px;width:57%;height:116px;background:linear-gradient(174deg,rgba(220,31,38,.28) 0 31%,transparent 31.5%),linear-gradient(176deg,var(--red) 0 13%,transparent 13.5%);clip-path:polygon(0 0,100% 28%,94% 68%,0 100%);pointer-events:none}.cal-generator__media{position:relative;align-self:stretch;height:760px;min-height:760px;max-height:760px;overflow:hidden;background:radial-gradient(circle at 38% 46%,rgba(220,31,38,.13),transparent 30%),linear-gradient(142deg,rgba(255,255,255,.035),transparent 42%),#111419;clip-path:polygon(0 0,100% 0,100% 88%,90% 100%,0 100%)}.cal-generator__media::before,.cal-generator__media::after{content:"";position:absolute;pointer-events:none}.cal-generator__media::before{z-index:0;left:7%;top:20%;width:78%;height:48%;background:linear-gradient(132deg,rgba(220,31,38,.24),rgba(220,31,38,.03));clip-path:polygon(8% 0,100% 14%,88% 100%,0 78%);transform:rotate(-4deg)}.cal-generator__media::after{z-index:0;left:-8%;top:57%;width:76%;height:2px;background:linear-gradient(90deg,transparent,rgba(239,53,59,.82),rgba(239,53,59,.16),transparent);transform:rotate(-10deg);transform-origin:center}.cal-generator__photo{position:absolute;z-index:2;left:13%;top:17%;width:66%;height:58%;background-image:linear-gradient(180deg,rgba(5,7,9,.03),rgba(5,7,9,.24)),url("/web-design/tour/media/7c45b8b592b15d10.webp");background-size:cover;background-position:center 56%;box-shadow:0 30px 70px rgba(0,0,0,.42);clip-path:polygon(6% 0,100% 0,100% 83%,87% 100%,0 92%,0 12%)}.cal-generator__photo::after{content:"";position:absolute;inset:0;background:linear-gradient(132deg,rgba(220,31,38,.10),transparent 34%),linear-gradient(0deg,rgba(5,7,9,.40),transparent 32%);pointer-events:none}.cal-generator__media-frame{position:absolute;z-index:1;left:8%;top:11%;width:78%;height:66%;pointer-events:none;transform:rotate(2deg)}.cal-generator__media-frame::before,.cal-generator__media-frame::after{content:"";position:absolute;pointer-events:none}.cal-generator__media-frame::before{inset:0 7% 10% 3%;border-top:1px solid rgba(255,255,255,.13);border-right:1px solid rgba(255,255,255,.09);clip-path:polygon(4% 0,100% 9%,91% 100%,0 84%)}.cal-generator__media-frame::after{left:2%;bottom:5%;width:57%;height:28%;border-left:2px solid rgba(239,53,59,.72);border-bottom:1px solid rgba(239,53,59,.36);transform:skewX(-18deg) rotate(-4deg)}.cal-generator__dealer{position:absolute;z-index:3;right:10%;bottom:13%;min-width:230px;padding:19px 25px 19px 27px;border:0;background:#090b0e;color:#fff;clip-path:polygon(0 0,88% 0,100% 27%,100% 100%,7% 100%,0 79%);filter:drop-shadow(13px 12px 0 #dc1f26) drop-shadow(-9px -8px 0 rgba(239,53,59,.30)) drop-shadow(0 22px 44px rgba(0,0,0,.46));backdrop-filter:none}.cal-generator__dealer span,.cal-generator__dealer strong{display:block}.cal-generator__dealer span{margin-bottom:5px;color:var(--red-bright);font:900 10px/1 Inter,Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase}.cal-generator__dealer strong{color:#fff;font:900 16px/1.2 Inter,Arial,sans-serif;text-transform:uppercase}.cal-generator__content{position:relative;z-index:2;min-width:0;height:760px;display:flex;flex-direction:column;justify-content:center;padding:46px clamp(46px,7vw,112px) 50px;overflow:hidden;box-sizing:border-box}.cal-generator__content::after{content:"";position:absolute;z-index:-1;right:-220px;top:110px;width:470px;height:470px;border:1px solid rgba(220,31,38,.08);transform:rotate(45deg);pointer-events:none}.cal-generator__eyebrow{margin-bottom:14px;color:var(--red-bright);font:800 10px/1 Inter,Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase}.cal-generator h2{max-width:760px;margin:0;font:900 clamp(42px,4.25vw,68px)/.96 "Arial Black",Arial,sans-serif;letter-spacing:-.052em;text-transform:uppercase}.cal-generator h2 strong{display:block;margin-top:7px;color:var(--red-bright);font:inherit}.cal-generator__content>p{max-width:690px;margin:15px 0 0;color:#a6abb2;font:400 15px/1.56 Inter,Arial,sans-serif}.cal-generator__accordion{width:100%;max-width:690px;height:246px;min-height:246px;max-height:246px;margin-top:22px;overflow:hidden;box-sizing:border-box;padding:0 20px 0 8px}.cal-generator__cheat-sheet{width:100%;height:246px;margin:0;padding:0;overflow:hidden;transform:skewX(-4deg);transform-origin:50% 50%;transition:transform .3s ease}.cal-generator__cheat-sheet.is-active{transform:translate3d(4px,0,0) skewX(-4deg)}.cal-generator__cheat-sheet dt,.cal-generator__cheat-sheet dd{box-sizing:border-box}.cal-generator__cheat-sheet dt{position:relative;height:48px;margin:0;border-top:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.005);transition:transform .25s ease,background .25s ease,border-color .25s ease,border-left-width .25s ease}.cal-generator__cheat-sheet dt:last-of-type{border-bottom:1px solid rgba(255,255,255,.12)}.cal-generator__cheat-sheet dt:hover,.cal-generator__cheat-sheet dt.is-open{border-left:4px solid var(--red-bright);background:linear-gradient(90deg,rgba(220,31,38,.10),rgba(220,31,38,.015) 58%,transparent)}.cal-generator__cheat-sheet dt:hover{transform:translateX(10px)}.cal-generator__cheat-sheet button{width:100%;height:48px;display:grid;grid-template-columns:42px minmax(0,1fr) 34px;align-items:center;gap:12px;padding:0 8px 0 10px;border:0;background:transparent;color:#fff;text-align:left;cursor:pointer;transform:skewX(4deg)}.cal-generator__cheat-sheet button:focus-visible{outline:2px solid var(--red-bright);outline-offset:-2px}.cal-generator__accordion-num{color:var(--red-bright);font:900 9px/1 Inter,Arial,sans-serif;letter-spacing:.10em}.cal-generator__cheat-sheet button strong{min-width:0;color:#f7f7f7;font:900 12px/1.3 Inter,Arial,sans-serif;letter-spacing:.01em;text-transform:uppercase}.cal-generator__accordion-icon{position:relative;width:28px;height:28px;justify-self:end;border:1px solid rgba(255,255,255,.14);transform:rotate(45deg);transition:border-color .25s ease,background .25s ease}.cal-generator__accordion-icon::before,.cal-generator__accordion-icon::after{content:"";position:absolute;left:50%;top:50%;width:10px;height:1px;background:var(--red-bright);transform:translate(-50%,-50%) rotate(-45deg);transition:opacity .28s ease}.cal-generator__accordion-icon::after{transform:translate(-50%,-50%) rotate(45deg)}.cal-generator__cheat-sheet dt.is-open .cal-generator__accordion-icon{border-color:rgba(239,53,59,.55);background:rgba(220,31,38,.08)}.cal-generator__cheat-sheet dt.is-open .cal-generator__accordion-icon::after{opacity:0}.cal-generator__cheat-sheet dd{height:0;max-height:0;margin:0 0 0 25px;padding:0;overflow:hidden;opacity:0;background:rgba(255,255,255,.018);transform:skewX(4deg) translateY(-4px);transition:height .28s ease,max-height .28s ease,opacity .2s ease,transform .28s ease}.cal-generator__cheat-sheet dd.is-open{height:54px;max-height:54px;opacity:1;transform:skewX(4deg) translateY(0)}.cal-generator__cheat-sheet dd p{max-width:590px;margin:0;padding:9px 44px 10px 28px;color:#9fa5ad;font:400 12px/1.45 Inter,Arial,sans-serif}.cal-generator__link{display:inline-flex;align-items:center;gap:12px;width:fit-content;margin-top:20px;color:#fff;font:800 10px/1 Inter,Arial,sans-serif;letter-spacing:.09em;text-decoration:none;text-transform:uppercase}.cal-generator__link span{color:var(--red-bright);font-size:19px;transition:transform .2s ease}.cal-generator__link:hover span{transform:translateX(5px)}@media(max-width:1180px) and (min-width:901px){.cal-generator__content{padding-left:46px;padding-right:46px}.cal-generator h2{font-size:clamp(42px,4.6vw,56px)}.cal-generator__content>p{font-size:14px}}@media(max-width:900px){.cal-generator{grid-template-columns:1fr;height:auto;min-height:0;max-height:none}.cal-generator::after{width:76%;height:82px;bottom:-40px}.cal-generator__media{height:500px;min-height:500px;max-height:none;clip-path:polygon(0 0,100% 0,100% 92%,91% 100%,0 100%)}.cal-generator__photo{left:12%;top:13%;width:68%;height:62%}.cal-generator__media-frame{left:8%;top:8%;width:80%;height:72%}.cal-generator__dealer{right:9%;bottom:10%}.cal-generator__content{height:auto;padding:80px 34px 96px;overflow:visible}.cal-generator__content::after{display:none}.cal-generator__accordion{height:auto;min-height:0;max-height:none;padding-right:8px;overflow:visible}.cal-generator__cheat-sheet{height:auto;overflow:visible}.cal-generator__cheat-sheet dt,.cal-generator__cheat-sheet button{height:auto;min-height:62px}.cal-generator__cheat-sheet dd{height:0;max-height:0}.cal-generator__cheat-sheet dd.is-open{height:auto;max-height:var(--answer-height,180px)}}@media(max-width:600px){.cal-generator__media{height:390px;min-height:390px}.cal-generator__photo{left:8%;top:12%;width:77%;height:58%;background-position:center 56%}.cal-generator__media-frame{left:5%;top:8%;width:88%;height:68%}.cal-generator__dealer{left:18px;right:46px;bottom:25px;min-width:0}.cal-generator__content{padding:72px 22px 84px}.cal-generator h2{font-size:clamp(38px,11vw,52px)}.cal-generator__content>p{font-size:14px}.cal-generator__cheat-sheet button{grid-template-columns:32px minmax(0,1fr) 30px;gap:9px;padding-left:7px}.cal-generator__cheat-sheet button strong{font-size:11px}.cal-generator__cheat-sheet dd p{padding:10px 28px 17px 18px;font-size:12px}.cal-generator__accordion-icon{width:25px;height:25px}}@media(prefers-reduced-motion:reduce){.cal-generator__cheat-sheet,.cal-generator__cheat-sheet dt,.cal-generator__cheat-sheet dd,.cal-generator__accordion-icon,.cal-generator__accordion-icon::before,.cal-generator__accordion-icon::after,.cal-generator__link span{transition:none!important}}

.cal-generator.cal-skew-ready .cal-generator__media,
.cal-generator.cal-skew-ready .cal-generator__content{
  opacity:.46;
  will-change:transform,opacity;
  transition:transform .92s cubic-bezier(.72,.01,.28,1),opacity .74s ease;
}
.cal-generator.cal-skew-ready .cal-generator__media{
  transform:translate3d(-18vw,18%,0) skewX(-8deg) scale(.96);
  transform-origin:100% 0;
}
.cal-generator.cal-skew-ready .cal-generator__content{
  transform:translate3d(18vw,-18%,0) skewX(8deg) scale(.96);
  transform-origin:0 100%;
}
.cal-generator.cal-skew-ready.is-skew-visible .cal-generator__media,
.cal-generator.cal-skew-ready.is-skew-visible .cal-generator__content{
  opacity:1;
  transform:translate3d(0,0,0) skewX(0) scale(1);
}
@media(max-width:900px){
  .cal-generator.cal-skew-ready .cal-generator__media{transform:translate3d(0,56px,0) skewX(-3deg) scale(.985)}
  .cal-generator.cal-skew-ready .cal-generator__content{transform:translate3d(0,-56px,0) skewX(3deg) scale(.985)}
  .cal-generator.cal-skew-ready.is-skew-visible .cal-generator__media,
  .cal-generator.cal-skew-ready.is-skew-visible .cal-generator__content{transform:none}
}
@media(prefers-reduced-motion:reduce){
  .cal-generator.cal-skew-ready .cal-generator__media,
  .cal-generator.cal-skew-ready .cal-generator__content{opacity:1!important;transform:none!important;transition:none!important}
}

/* Intro-to-generator + generator-to-split handoffs */
.cal-generator::before{
  top:-1px;
  width:64%;
  height:44px;
  background:
    linear-gradient(177.2deg,#f3f3f1 0 24%,transparent 24.5%),
    linear-gradient(178.4deg,#dc1f26 0 38%,transparent 38.5%),
    linear-gradient(180deg,rgba(239,53,59,.24) 0 52%,transparent 52.5%);
  clip-path:polygon(0 0,100% 0,94% 58%,78% 100%,0 72%);
}
.cal-generator::after{
  left:0;
  bottom:-62px;
  width:63%;
  height:126px;
  background:
    linear-gradient(174deg,rgba(239,53,59,.22) 0 39%,transparent 39.5%),
    linear-gradient(176deg,#dc1f26 0 21%,transparent 21.5%),
    linear-gradient(178deg,rgba(9,11,14,.92) 0 9%,transparent 9.5%);
  clip-path:polygon(0 0,100% 27%,93% 71%,0 100%);
}
@media(max-width:900px){
  .cal-generator::before{width:82%;height:32px}
  .cal-generator::after{width:82%;height:88px;bottom:-42px}
}

/* Blueprint Attached Information Slab depth */
.cal-generator__dealer{background:linear-gradient(270deg,#dc1f26 0 4px,#090b0e 4px 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.055),inset 0 -1px 0 rgba(255,255,255,.025);filter:drop-shadow(13px 12px 0 #dc1f26) drop-shadow(-9px -8px 0 rgba(239,53,59,.30)) drop-shadow(0 22px 44px rgba(0,0,0,.46))}


.cal-split {
  --split-red: #dc1f26;
  --split-black: #030405;
  --split-charcoal: #101317;

  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;

  padding: 10px;

  overflow: hidden;

  background: #020304;
}

.cal-split__panel {
  position: relative;
  isolation: isolate;

  min-height: 760px;

  overflow: hidden;

  background:
    linear-gradient(135deg, rgba(255,255,255,0.055), transparent 16%),
    linear-gradient(315deg, rgba(255,255,255,0.025), transparent 18%),
    var(--split-black);

  clip-path: polygon(
    0 22px,
    22px 0,
    38% 0,
    40% 9px,
    77% 9px,
    79% 0,
    calc(100% - 22px) 0,
    100% 22px,
    100% calc(100% - 22px),
    calc(100% - 22px) 100%,
    73% 100%,
    71% calc(100% - 9px),
    29% calc(100% - 9px),
    27% 100%,
    22px 100%,
    0 calc(100% - 22px)
  );

  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,0.035),
    inset 0 0 34px rgba(0,0,0,0.72);
}

.cal-split__panel::before {
  content: "";

  position: absolute;
  z-index: 4;
  inset: 7px;

  border: 1px solid rgba(116,124,132,0.34);

  clip-path: polygon(
    0 16px,
    16px 0,
    calc(100% - 18px) 0,
    100% 18px,
    100% calc(100% - 16px),
    calc(100% - 16px) 100%,
    16px 100%,
    0 calc(100% - 16px)
  );

  box-shadow:
    inset 0 0 0 1px rgba(0,0,0,0.88),
    0 0 0 1px rgba(0,0,0,0.78);

  pointer-events: none;
}

.cal-split__panel::after {
  content: "";

  position: absolute;
  z-index: 5;
  top: 11px;
  left: 18px;

  width: 150px;
  height: 5px;

  background:
    linear-gradient(90deg, var(--split-red) 0 84px, transparent 84px),
    repeating-linear-gradient(125deg, var(--split-red) 0 5px, transparent 5px 10px);
  background-size: 92px 100%, 48px 100%;
  background-position: 0 0, 100px 0;
  background-repeat: no-repeat;

  clip-path: polygon(0 0, 100% 0, calc(100% - 5px) 100%, 0 100%);

  filter: drop-shadow(0 0 7px rgba(220,31,38,0.28));

  pointer-events: none;
}

.cal-split__image {
  position: absolute;
  z-index: 0;
  inset: 15px;

  display: grid;
  place-items: center;

  overflow: hidden;

  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;

  color: rgba(255,255,255,0.2);

  font: 800 11px/1 Inter, Arial, sans-serif;
  letter-spacing: 0.15em;

  clip-path: polygon(
    0 13px,
    13px 0,
    calc(100% - 17px) 0,
    100% 17px,
    100% calc(100% - 13px),
    calc(100% - 13px) 100%,
    13px 100%,
    0 calc(100% - 13px)
  );
}

.cal-split__image::before {
  content: "";

  position: absolute;
  z-index: 1;
  inset: 0;

  border: 1px solid rgba(255,255,255,0.07);

  box-shadow:
    inset 0 0 0 7px rgba(0,0,0,0.14),
    inset 0 0 42px rgba(0,0,0,0.24);

  pointer-events: none;
}

.cal-split__image::after {
  content: "";

  position: absolute;
  z-index: 1;
  right: 16px;
  bottom: 12px;

  width: 104px;
  height: 5px;

  background:
    repeating-linear-gradient(125deg, var(--split-red) 0 5px, transparent 5px 10px);

  opacity: 0.9;

  transform: skewX(-16deg);

  pointer-events: none;
}

.cal-split__image > span {
  display: none;
}

.cal-split__panel--residential .cal-split__image {
  background-image:
    linear-gradient(
      0deg,
      rgba(5,7,9,0.95),
      rgba(5,7,9,0.28)
    ),
    url("/web-design/tour/media/0f8cb07623ce550f.webp");
}

.cal-split__panel--commercial .cal-split__image {
  background-image:
    linear-gradient(
      0deg,
      rgba(5,7,9,0.95),
      rgba(5,7,9,0.28)
    ),
    url("/web-design/tour/media/5db337d21ec75b33.webp");
}

.cal-split__content {
  position: absolute;
  z-index: 3;

  left: clamp(54px, 6vw, 96px);
  right: clamp(54px, 6vw, 96px);
  bottom: 70px;

  color: white;
}

.cal-split__label {
  display: block;

  margin-bottom: 17px;

  color: #ef353b;

  font: 800 10px/1 Inter, Arial, sans-serif;

  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.cal-split h2 {
  max-width: 600px;

  margin: 0;

  font: 900 clamp(38px, 3.8vw, 62px)/0.98 "Arial Black", Arial, sans-serif;

  letter-spacing: -0.05em;
  text-transform: uppercase;
}

.cal-split h2 strong {
  display: block;

  margin-top: 5px;

  color: #ef353b;

  font: inherit;
}

.cal-split p {
  max-width: 590px;

  margin: 25px 0 0;

  color: #c1c5ca;

  font: 400 15px/1.7 Inter, Arial, sans-serif;
}

.cal-split a {
  display: inline-block;

  margin-top: 28px;

  color: #fff;

  font: 800 10px/1 Inter, Arial, sans-serif;

  letter-spacing: 0.09em;
  text-decoration: none;
  text-transform: uppercase;
}

@media (max-width: 850px) {
  .cal-split {
    grid-template-columns: 1fr;
    gap: 10px;
    padding: 10px;
  }

  .cal-split__panel {
    min-height: 620px;

    clip-path: polygon(
      0 18px,
      18px 0,
      40% 0,
      43% 8px,
      77% 8px,
      80% 0,
      calc(100% - 18px) 0,
      100% 18px,
      100% calc(100% - 18px),
      calc(100% - 18px) 100%,
      18px 100%,
      0 calc(100% - 18px)
    );
  }

  .cal-split__panel::before {
    inset: 6px;
  }

  .cal-split__panel::after {
    top: 10px;
    left: 14px;
    width: 118px;
  }

  .cal-split__image {
    inset: 12px;
  }

  .cal-split__content {
    left: 42px;
    right: 42px;
    bottom: 56px;
  }
}

@media (max-width: 520px) {
  .cal-split {
    gap: 8px;
    padding: 8px;
  }

  .cal-split__panel {
    min-height: 590px;
  }

  .cal-split__panel::after {
    top: 8px;
    left: 12px;
    width: 98px;
    height: 4px;
  }

  .cal-split__image {
    inset: 10px;
  }

  .cal-split__image::after {
    right: 10px;
    bottom: 9px;
    width: 74px;
    height: 4px;
  }

  .cal-split__content {
    left: 32px;
    right: 32px;
    bottom: 46px;
  }

  .cal-split h2 {
    font-size: clamp(36px, 10.5vw, 48px);
  }

  .cal-split p {
    font-size: 14px;
  }
}

.cal-split.cal-skew-ready .cal-split__panel {
  opacity: .46;
  will-change: transform, opacity;
  transition: transform .92s cubic-bezier(.72,.01,.28,1), opacity .74s ease;
}

.cal-split.cal-skew-ready .cal-split__panel--residential {
  transform: translate3d(-18vw,18%,0) skewX(-8deg) scale(.96);
  transform-origin: 100% 0;
}

.cal-split.cal-skew-ready .cal-split__panel--commercial {
  transform: translate3d(18vw,-18%,0) skewX(8deg) scale(.96);
  transform-origin: 0 100%;
}

.cal-split.cal-skew-ready.is-skew-visible .cal-split__panel {
  opacity: 1;
  transform: translate3d(0,0,0) skewX(0) scale(1);
}

@media (max-width: 850px) {
  .cal-split.cal-skew-ready .cal-split__panel--residential {
    transform: translate3d(-28px,56px,0) skewX(-3deg) scale(.985);
  }

  .cal-split.cal-skew-ready .cal-split__panel--commercial {
    transform: translate3d(28px,-56px,0) skewX(3deg) scale(.985);
  }

  .cal-split.cal-skew-ready.is-skew-visible .cal-split__panel {
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .cal-split.cal-skew-ready .cal-split__panel {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
}

/* Desktop finished-state diagonal: top-left to bottom-right () */
@media (min-width: 851px) {
  .cal-split {
    --split-overlap: clamp(110px, 9vw, 184px);
    --split-half-overlap: clamp(55px, 4.5vw, 92px);

    position: relative;
    display: flex;
    grid-template-columns: none;
    gap: 0;
  }

  .cal-split::after {
    content: "";
    position: absolute;
    z-index: 8;
    top: 10px;
    bottom: 10px;
    left: 50%;
    width: calc(var(--split-overlap) + 14px);
    transform: translateX(-50%);
    background: linear-gradient(90deg, #020304 0%, #11151a 48%, #020304 100%);
    clip-path: polygon(0 0, 14px 0, 100% 100%, calc(100% - 14px) 100%);
    filter: drop-shadow(0 0 8px rgba(0,0,0,.65));
    pointer-events: none;
  }

  .cal-split__panel {
    flex: 0 0 calc(50% + var(--split-half-overlap));
    width: calc(50% + var(--split-half-overlap));
  }

  .cal-split__panel--residential {
    clip-path: polygon(
      0 22px,
      22px 0,
      calc(100% - var(--split-overlap)) 0,
      100% 100%,
      22px 100%,
      0 calc(100% - 22px)
    );
  }

  .cal-split__panel--commercial {
    margin-left: calc(var(--split-overlap) * -1);
    clip-path: polygon(
      0 0,
      calc(100% - 22px) 0,
      100% 22px,
      100% calc(100% - 22px),
      calc(100% - 22px) 100%,
      var(--split-overlap) 100%
    );
  }

  .cal-split__panel--residential .cal-split__content {
    right: clamp(145px, 9vw, 190px);
  }

  .cal-split__panel--commercial .cal-split__content {
    left: clamp(145px, 9vw, 190px);
  }
}


.calvary-header,.calvary-header *{box-sizing:border-box}.calvary-header{--cal-red:#dc1f26;--cal-red-bright:#f02d34;--cal-black:#080a0d;--cal-white:#fff;--cal-muted:#aeb3ba;position:fixed;top:0;left:0;right:0;width:100%;z-index:9999;margin:0;padding:0;background:linear-gradient(to bottom,rgba(8,10,13,.82) 0%,rgba(8,10,13,.48) 62%,rgba(8,10,13,0) 100%);border-bottom:1px solid rgba(255,255,255,.06);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-family:Arial,Helvetica,sans-serif}.calvary-header__inner{width:100%;height:60px;margin:0;padding:4px 38px 0;display:flex;align-items:center;gap:0}.calvary-header__logo{flex:0 0 185px;width:185px;height:56px;display:flex;align-items:center;justify-content:center;margin:0;padding:0;overflow:visible;text-decoration:none}.calvary-header__logo img{display:block;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:0;object-fit:contain;object-position:center;transform:none;transform-origin:center}.calvary-header__nav{flex:0 0 auto;display:flex;align-items:center;justify-content:flex-end;gap:28px;margin:0 24px 0 auto;padding:0}.calvary-header__nav>a,.cal-nav-console__toggle{margin:0;color:var(--cal-white);font-size:13px;font-weight:700;line-height:1;text-transform:uppercase;letter-spacing:.1em;text-decoration:none;transition:color .2s ease}.calvary-header__nav>a{padding:0}.calvary-header__nav>a:hover,.cal-nav-console__toggle:hover,.cal-nav-console:is(:hover,:focus-within,.is-open)>.cal-nav-console__toggle{color:var(--cal-red-bright)}
.cal-nav-console{position:relative;margin:0;padding:0}.cal-nav-console__toggle{height:40px;padding:0;display:inline-flex;align-items:center;gap:9px;border:0;background:transparent;cursor:pointer}.cal-nav-console__diamond{position:relative;width:16px;height:16px;flex:0 0 auto;border:1px solid rgba(255,255,255,.18);transform:rotate(45deg);transition:transform .34s cubic-bezier(.2,.75,.2,1),background .25s,border-color .25s}.cal-nav-console__diamond:before,.cal-nav-console__diamond:after{content:"";position:absolute;left:50%;top:50%;width:7px;height:1px;background:var(--cal-red-bright);transform:translate(-50%,-50%) rotate(-45deg)}.cal-nav-console__diamond:after{transform:translate(-50%,-50%) rotate(45deg)}.cal-nav-console:is(:hover,:focus-within,.is-open) .cal-nav-console__diamond{transform:rotate(135deg);border-color:rgba(239,53,59,.55);background:rgba(220,31,38,.08)}.cal-nav-console__menu{position:absolute;z-index:60;top:calc(100% + 8px);left:50%;width:460px;padding-top:6px;opacity:0;visibility:hidden;pointer-events:none;transform:translate(-50%,12px);filter:drop-shadow(0 28px 45px rgba(0,0,0,.34));transition:opacity .22s ease,transform .28s ease,visibility .22s ease}.cal-nav-console--areas .cal-nav-console__menu{width:430px}.cal-nav-console__menu:before{content:"";position:absolute;z-index:-1;inset:-8px 18px 22px -12px;background:rgba(220,31,38,.09);border:1px solid rgba(220,31,38,.16);clip-path:polygon(0 0,92% 0,100% 12%,100% 100%,8% 100%,0 88%)}.cal-nav-console:is(:hover,:focus-within,.is-open) .cal-nav-console__menu{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}.cal-nav-console__head{position:relative;z-index:9;width:100%;min-height:72px;padding:0 20px 0 22px;display:flex;align-items:center;justify-content:space-between;gap:22px;border:1px solid rgba(255,255,255,.12);border-top:3px solid var(--cal-red);background:linear-gradient(135deg,rgba(255,255,255,.055),transparent 34%),#0d1014;color:#fff;clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,12px 100%,0 calc(100% - 12px));transition:filter .25s ease,background .25s ease}.cal-nav-console__head:before{content:"SYSTEM";position:absolute;right:58px;top:13px;color:#5c626a;font:800 7px/1 Arial,Helvetica,sans-serif;letter-spacing:.14em}.cal-nav-console__head span,.cal-nav-console__head small,.cal-nav-console__head strong{display:block}.cal-nav-console__head small{margin-bottom:6px;color:var(--cal-red-bright);font:900 8px/1 Arial,Helvetica,sans-serif;letter-spacing:.16em;text-transform:uppercase}.cal-nav-console__head strong{font:850 18px/1.08 Arial,Helvetica,sans-serif;letter-spacing:-.02em;text-transform:uppercase}.cal-nav-console__head>i{position:relative;width:30px;height:30px;flex:0 0 auto;border:1px solid rgba(255,255,255,.16);transform:rotate(45deg);transition:transform .34s cubic-bezier(.2,.75,.2,1),background .25s,border-color .25s}.cal-nav-console__head>i:before,.cal-nav-console__head>i:after{content:"";position:absolute;left:50%;top:50%;width:10px;height:1px;background:var(--cal-red-bright);transform:translate(-50%,-50%) rotate(-45deg)}.cal-nav-console__head>i:after{transform:translate(-50%,-50%) rotate(45deg)}.cal-nav-console:is(:hover,:focus-within,.is-open) .cal-nav-console__head{background:linear-gradient(135deg,rgba(239,53,59,.08),transparent 38%),#111419;filter:brightness(1.06)}.cal-nav-console:is(:hover,:focus-within,.is-open) .cal-nav-console__head>i{transform:rotate(135deg);border-color:rgba(239,53,59,.55);background:rgba(220,31,38,.08)}.cal-nav-console__list{position:relative;z-index:5;display:grid;gap:5px;max-height:0;padding-top:7px;overflow:hidden;transition:max-height .58s cubic-bezier(.2,.75,.2,1)}.cal-nav-console:is(:hover,:focus-within,.is-open) .cal-nav-console__list{max-height:650px}.cal-nav-console__list a{position:relative;min-height:48px;padding:0 16px;display:grid;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:12px;overflow:hidden;border:1px solid rgba(255,255,255,.08);background:linear-gradient(105deg,rgba(220,31,38,.07),transparent 24%),#111419;color:#fff;text-decoration:none;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,8px 100%,0 calc(100% - 8px));opacity:0;transform:translateX(calc(var(--dir) * 115%)) skewX(calc(var(--dir) * 15deg)) scaleY(.55);transform-origin:center;transition:transform .46s cubic-bezier(.18,.78,.2,1),opacity .28s ease,background .2s,border-color .2s;transition-delay:calc(var(--i) * 36ms)}.cal-nav-console:is(:hover,:focus-within,.is-open) .cal-nav-console__list a{opacity:1;transform:translateX(0) skewX(0) scaleY(1)}.cal-nav-console__list a:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--cal-red);transform:scaleY(0);transform-origin:center;transition:transform .2s ease}.cal-nav-console__list a:hover,.cal-nav-console__list a:focus-visible{z-index:8;background:linear-gradient(90deg,rgba(220,31,38,.16),rgba(220,31,38,.025) 54%,transparent),#15191e;border-color:rgba(239,53,59,.35);transform:translateX(7px) scale(1.012)}.cal-nav-console__list a:hover:before,.cal-nav-console__list a:focus-visible:before{transform:scaleY(1)}.cal-nav-console__list small{color:var(--cal-red-bright);font:900 8px/1 Arial,Helvetica,sans-serif;letter-spacing:.12em}.cal-nav-console__list strong{color:#fff;font:850 12px/1.18 Arial,Helvetica,sans-serif;text-transform:uppercase}.cal-nav-console__list span{justify-self:end;color:#737a83;font:800 7px/1 Arial,Helvetica,sans-serif;letter-spacing:.09em;text-transform:uppercase}
.calvary-header__actions{flex:0 0 auto;display:flex;align-items:center;gap:16px;margin:0;padding:0}.calvary-header__phone{display:flex;flex-direction:column;justify-content:center;gap:2px;margin:0;padding:0;text-align:right;text-decoration:none}.calvary-header__phone-label{margin:0;padding:0;color:var(--cal-red-bright);font-size:10px;font-weight:800;line-height:1;text-transform:uppercase;letter-spacing:.15em}.calvary-header__phone-number{margin:0;padding:0;color:var(--cal-white);font-size:15px;font-weight:800;line-height:1.1}.calvary-header__cta{height:46px;min-height:46px;padding:0 21px;margin:0;display:inline-flex;align-items:center;justify-content:center;gap:10px;color:var(--cal-white);background:var(--cal-red);font-size:12px;font-weight:800;line-height:1;text-transform:uppercase;letter-spacing:.09em;text-decoration:none;transition:background .2s ease,transform .2s ease}.calvary-header__cta:hover{background:var(--cal-red-bright);transform:translateY(-2px)}.calvary-header__cta svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8}.calvary-header__menu-toggle{width:45px;height:45px;display:none;align-items:center;justify-content:center;flex-direction:column;gap:5px;margin-left:auto;padding:0;border:1px solid rgba(255,255,255,.15);background:transparent;cursor:pointer}.calvary-header__menu-toggle span{display:block;width:20px;height:2px;background:var(--cal-white);transition:transform .25s ease,opacity .25s ease}.calvary-header.is-menu-open .calvary-header__menu-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}.calvary-header.is-menu-open .calvary-header__menu-toggle span:nth-child(2){opacity:0}.calvary-header.is-menu-open .calvary-header__menu-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.calvary-mobile-nav{display:none;max-height:0;overflow:hidden;background:#0c0f12;border-top:1px solid rgba(255,255,255,.08);transition:max-height .35s ease}.calvary-header.is-menu-open .calvary-mobile-nav{max-height:1200px}.calvary-mobile-nav__inner{width:min(92%,680px);margin:0 auto;padding:18px 0 28px}.calvary-mobile-nav__inner>a,.cal-mobile-console__toggle{width:100%;min-height:52px;display:flex;align-items:center;justify-content:space-between;color:var(--cal-white);background:transparent;font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;text-decoration:none;border:0;border-bottom:1px solid rgba(255,255,255,.08);cursor:pointer}.cal-mobile-console{width:100%;border-bottom:1px solid rgba(255,255,255,.08)}.cal-mobile-console__toggle{border-bottom:0;padding:0;gap:18px}.cal-mobile-console__toggle>i{position:relative;width:24px;height:24px;margin-right:4px;flex:0 0 auto;border:1px solid rgba(255,255,255,.16);transform:rotate(45deg);transition:transform .34s cubic-bezier(.2,.75,.2,1),background .25s,border-color .25s}.cal-mobile-console__toggle>i:before,.cal-mobile-console__toggle>i:after{content:"";position:absolute;left:50%;top:50%;width:9px;height:1px;background:var(--cal-red-bright);transform:translate(-50%,-50%) rotate(-45deg)}.cal-mobile-console__toggle>i:after{transform:translate(-50%,-50%) rotate(45deg)}.cal-mobile-console.is-open .cal-mobile-console__toggle>i{transform:rotate(135deg);border-color:rgba(239,53,59,.55);background:rgba(220,31,38,.08)}.cal-mobile-console__list{display:grid;gap:5px;max-height:0;padding:0 0 0 14px;overflow:hidden;transition:max-height .58s cubic-bezier(.2,.75,.2,1),padding .3s ease}.cal-mobile-console.is-open .cal-mobile-console__list{max-height:900px;padding-top:8px;padding-bottom:13px}.cal-mobile-console__list a{position:relative;min-height:56px;padding:0 13px;display:grid;grid-template-columns:50px minmax(0,1fr) auto;align-items:center;gap:10px;overflow:hidden;border:1px solid rgba(255,255,255,.08);background:linear-gradient(105deg,rgba(220,31,38,.07),transparent 24%),#111419;color:#fff;text-decoration:none;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,8px 100%,0 calc(100% - 8px));opacity:0;transform:translateX(calc(var(--dir) * 46px)) skewX(calc(var(--dir) * 5deg)) scaleY(.82);transform-origin:center;transition:transform .46s cubic-bezier(.18,.78,.2,1),opacity .28s ease,background .2s,border-color .2s;transition-delay:calc(var(--i) * 36ms)}.cal-mobile-console.is-open .cal-mobile-console__list a{opacity:1;transform:translateX(0) skewX(0) scaleY(1)}.cal-mobile-console__list a:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--cal-red);transform:scaleY(0);transform-origin:center;transition:transform .2s ease}.cal-mobile-console__list a:focus-visible:before,.cal-mobile-console__list a:active:before{transform:scaleY(1)}.cal-mobile-console__list small{color:var(--cal-red-bright);font:900 8px/1 Arial,Helvetica,sans-serif;letter-spacing:.11em}.cal-mobile-console__list strong{color:#fff;font:850 11px/1.2 Arial,Helvetica,sans-serif;text-transform:uppercase}.cal-mobile-console__list span{justify-self:end;color:#737a83;font:800 7px/1 Arial,Helvetica,sans-serif;letter-spacing:.08em;text-transform:uppercase}.calvary-mobile-nav__actions{padding-top:24px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.calvary-mobile-nav__phone,.calvary-mobile-nav__cta{min-height:54px;display:flex;align-items:center;justify-content:center;text-align:center;text-decoration:none}.calvary-mobile-nav__phone{flex-direction:column;color:var(--cal-white);background:#161a1f;font-size:15px;font-weight:800}.calvary-mobile-nav__phone small{margin-bottom:3px;color:var(--cal-red-bright);font-size:9px;text-transform:uppercase;letter-spacing:.12em}.calvary-mobile-nav__cta{color:var(--cal-white);background:var(--cal-red);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
@property --cal-header-trace-angle{syntax:"<angle>";initial-value:0deg;inherits:false}@keyframes calHeaderCtaTrace{to{--cal-header-trace-angle:360deg}}.calvary-header__cta,.calvary-mobile-nav__phone,.calvary-mobile-nav__cta{position:relative;overflow:hidden;border:1px solid transparent;border-radius:7px;background:linear-gradient(rgba(17,20,25,.8),rgba(17,20,25,.8)) padding-box,conic-gradient(from var(--cal-header-trace-angle),rgba(255,255,255,.13) 0 76%,rgba(240,45,52,.22) 82%,#f02d34 89%,rgba(240,45,52,.28) 94%,rgba(255,255,255,.13) 100%) border-box;box-shadow:inset 0 0 0 1px rgba(255,255,255,.025),0 10px 24px rgba(0,0,0,.24);animation:calHeaderCtaTrace 4.8s linear infinite;transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}.calvary-header__cta:hover,.calvary-mobile-nav__phone:hover,.calvary-mobile-nav__cta:hover{transform:translateY(-2px);filter:brightness(1.08);box-shadow:inset 0 0 0 1px rgba(255,255,255,.04),0 12px 30px rgba(0,0,0,.3),0 0 20px rgba(220,31,38,.1)}.calvary-header__cta svg{transition:transform .2s ease}.calvary-header__cta:hover svg{transform:translateX(3px)}
@media(min-width:1101px){body.admin-bar .calvary-header{top:32px}}@media(max-width:1100px){header.wp-block-template-part{position:sticky;top:0;z-index:9999;width:100%}.calvary-header{position:relative;top:auto;left:auto;right:auto;padding:0;background:linear-gradient(90deg,rgba(220,31,38,.075),transparent 36%),#080a0d;border-bottom:1px solid rgba(255,255,255,.11);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:0 8px 24px rgba(0,0,0,.22)}.calvary-header:after{content:"";position:absolute;z-index:2;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent 0,rgba(220,31,38,.82) 20%,rgba(220,31,38,.18) 54%,transparent 82%);pointer-events:none}.calvary-header__nav,.calvary-header__actions{display:none}.calvary-header__menu-toggle{display:flex}.calvary-mobile-nav{display:block}.calvary-header__inner{height:60px;padding:4px 24px 0}.calvary-header__logo{flex-basis:175px;width:175px;height:56px}.calvary-header__logo img{transform:none}.calvary-header.is-menu-open .calvary-mobile-nav{max-height:calc(100vh - 60px);max-height:calc(100dvh - 60px);overflow-y:auto;overscroll-behavior:contain}}
@media(max-width:600px){.calvary-header__inner{height:58px;padding:4px 16px 0}.calvary-header__logo{flex-basis:165px;width:165px;height:54px}.calvary-header__logo img{transform:none}.calvary-header.is-menu-open .calvary-mobile-nav{max-height:calc(100vh - 58px);max-height:calc(100dvh - 58px)}.calvary-mobile-nav__actions{grid-template-columns:1fr}.cal-mobile-console__list{padding-left:10px}.cal-mobile-console__list a{min-height:58px;grid-template-columns:47px minmax(0,1fr)}.cal-mobile-console__list span{display:none}}
@media(prefers-reduced-motion:reduce){.calvary-header__cta,.calvary-mobile-nav__phone,.calvary-mobile-nav__cta{animation:none!important}.cal-nav-console__toggle,.cal-nav-console__diamond,.cal-nav-console__menu,.cal-nav-console__head,.cal-nav-console__head>i,.cal-nav-console__list,.cal-nav-console__list a,.cal-mobile-console__toggle>i,.cal-mobile-console__list,.cal-mobile-console__list a{transition:none!important}.cal-nav-console__list a,.cal-mobile-console__list a{opacity:1;transform:none}}


.cgp-preview,
.cgp-preview *{box-sizing:border-box}

.cgp-preview{position:relative;z-index:70;width:100%;height:0;margin:0;padding:0;overflow:visible;background:transparent;pointer-events:none}
.cgp-stage{position:fixed;z-index:70;inset:0;width:100%;height:100vh;height:100svh;overflow:hidden;isolation:isolate;background:transparent;opacity:0;visibility:hidden;pointer-events:none}
.cgp-stage.is-active{visibility:visible}
.cgp-scrim{position:absolute;z-index:0;inset:0;opacity:0;background:transparent;pointer-events:none}

.cgp-world{--cgp-stream-size:min(70vmin,37vw,700px);--cgp-cluster-gap:clamp(72px,7.5vw,138px);--cgp-core-half:min(37vmin,380px);position:absolute;z-index:2;left:0;top:0;width:230vw;height:100%;transform:translate3d(0,0,0);will-change:transform;pointer-events:none}
.cgp-cluster{--g:clamp(7px,.48vw,10px);position:absolute;aspect-ratio:1;display:grid;grid:auto-flow 1fr / repeat(3,1fr);gap:var(--g);opacity:0;transform-origin:50% 50%;filter:drop-shadow(0 24px 54px rgba(0,0,0,.42));will-change:transform,opacity}
.cgp-cluster--core{left:50vw;top:43vh;width:min(74vmin,760px)}
.cgp-cluster--b{left:calc(50vw + var(--cgp-core-half) + var(--cgp-cluster-gap));top:16%;width:var(--cgp-stream-size)}
.cgp-cluster--c{left:calc(50vw + var(--cgp-core-half) + var(--cgp-cluster-gap) + var(--cgp-stream-size) + var(--cgp-cluster-gap));top:16%;width:var(--cgp-stream-size)}
.cgp-cluster--d{left:calc(50vw + var(--cgp-core-half) + var(--cgp-cluster-gap) + var(--cgp-stream-size) + var(--cgp-cluster-gap) + var(--cgp-stream-size) + var(--cgp-cluster-gap));top:16%;width:var(--cgp-stream-size)}

/* Exact stream-cluster spacing from the last known-good gallery state. */
.cgp-cluster--b,.cgp-cluster--c,.cgp-cluster--d{--g:clamp(8px,.55vw,12px)}
.cgp-cluster--b .cgp-item:nth-child(1),.cgp-cluster--c .cgp-item:nth-child(1),.cgp-cluster--d .cgp-item:nth-child(1){transform:translate(-18px,-18px)}
.cgp-cluster--b .cgp-item:nth-child(2),.cgp-cluster--c .cgp-item:nth-child(2),.cgp-cluster--d .cgp-item:nth-child(2){transform:translate(24px,-20px)}
.cgp-cluster--b .cgp-item:nth-child(3),.cgp-cluster--c .cgp-item:nth-child(3),.cgp-cluster--d .cgp-item:nth-child(3){transform:translate(-26px,24px)}
.cgp-cluster--b .cgp-item:nth-child(4),.cgp-cluster--c .cgp-item:nth-child(4),.cgp-cluster--d .cgp-item:nth-child(4){transform:translate(20px,20px)}

.cgp-item{position:relative;min-width:0;min-height:0;margin:0;overflow:hidden;background:#101318}
.cgp-item:nth-child(1){grid-area:1 / 1 / 2 / 2;clip-path:polygon(31% 0,100% 0,100% 100%,0 100%,0 31%)}
.cgp-item:nth-child(2){grid-area:1 / 2 / span 2 / span 2;clip-path:polygon(0 0,100% 0,100% 100%,calc(50% + var(--g)/4) 100%,0 calc(50% - var(--g)/4))}
.cgp-item:nth-child(3){grid-area:2 / 1 / span 2 / span 2;clip-path:polygon(0 0,calc(50% - var(--g)/4) 0,100% calc(50% + var(--g)/4),100% 100%,0 100%)}
.cgp-item:nth-child(4){grid-area:3 / 3 / 4 / 4;clip-path:polygon(0 0,100% 0,100% 69%,69% 100%,0 100%)}
.cgp-photo{position:absolute;inset:-10%;will-change:transform}
.cgp-photo img{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.94) contrast(1.035)}
.cgp-item::after{content:"";position:absolute;z-index:2;inset:0;box-shadow:inset 0 0 0 1px rgba(255,255,255,.055);pointer-events:none}

.cgp-cluster--core .cgp-item:nth-child(1) img{object-position:52% 50%}
.cgp-cluster--core .cgp-item:nth-child(2) img{object-position:100% 50%}
.cgp-cluster--core .cgp-item:nth-child(3) .cgp-photo{inset:0}
.cgp-cluster--core .cgp-item:nth-child(3) img{object-fit:cover;object-position:100% 50%}
.cgp-cluster--core .cgp-item:nth-child(4) img{object-position:48% 46%}
.cgp-cluster--b .cgp-item:nth-child(1) img{object-position:50% 44%}
.cgp-cluster--b .cgp-item:nth-child(2) img{object-position:52% 52%}
.cgp-cluster--b .cgp-item:nth-child(3) img{object-position:50% 56%}
.cgp-cluster--b .cgp-item:nth-child(4) img{object-position:50% 48%}
.cgp-cluster--c .cgp-item:nth-child(1) img{object-position:50% 50%}
.cgp-cluster--c .cgp-item:nth-child(2) img{object-position:50% 48%}
.cgp-cluster--c .cgp-item:nth-child(3) img{object-position:52% 48%}
.cgp-cluster--c .cgp-item:nth-child(4) img{object-position:50% 50%}
.cgp-cluster--d .cgp-item:nth-child(1) img{object-position:50% 50%}
.cgp-cluster--d .cgp-item:nth-child(2) img{object-position:52% 50%}
.cgp-cluster--d .cgp-item:nth-child(3) img{object-position:50% 50%}
.cgp-cluster--d .cgp-item:nth-child(4) img{object-position:50% 50%}

.cgp-control{position:absolute;z-index:12;left:50%;bottom:clamp(18px,2.2vh,28px);width:min(900px,calc(100% - 110px));height:28px;transform:translateX(-50%);display:grid;grid-template-columns:18px minmax(0,1fr) 18px;align-items:center;gap:8px;opacity:0;pointer-events:none;filter:drop-shadow(0 10px 20px rgba(0,0,0,.30))}
.cgp-control__mark,.cgp-control__end{display:block;width:12px;height:12px;border:1px solid rgba(255,255,255,.28);transform:rotate(45deg);background:#090b0e}
.cgp-control__mark{border-color:rgba(239,53,59,.74)}
.cgp-scroll{width:100%;height:18px;overflow-x:auto;overflow-y:hidden;pointer-events:auto;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#ef353b rgba(255,255,255,.12);border-top:1px solid rgba(255,255,255,.16);border-bottom:1px solid rgba(255,255,255,.06);background:linear-gradient(90deg,rgba(220,31,38,.12),rgba(255,255,255,.02) 18%,rgba(255,255,255,.02) 82%,rgba(220,31,38,.12));outline:none}
.cgp-scroll:focus-visible{box-shadow:0 0 0 1px rgba(239,53,59,.78),0 0 0 4px rgba(239,53,59,.10)}
.cgp-scroll__space{width:400%;height:1px}
.cgp-scroll::-webkit-scrollbar{height:9px}
.cgp-scroll::-webkit-scrollbar-track{background:rgba(255,255,255,.09)}
.cgp-scroll::-webkit-scrollbar-thumb{min-width:72px;border:2px solid #090b0e;border-radius:0;background:#ef353b}
.cgp-scroll::-webkit-scrollbar-thumb:hover{background:#ff4148}
.cgp-scroll::-webkit-scrollbar-button{display:none}

/* Blueprint image handoff: purposeful overlap, sharp geometry, and a functional compare control. */
.cgp-before-after{--cgp-ba-split:50%;position:absolute;z-index:1;left:50%;top:43%;width:min(58vw,900px,98.7svh);aspect-ratio:4 / 3;opacity:0;transform:translate3d(calc(-50% - 80vw),calc(-50% + 5vh),0) rotate(-5deg) scale(.92);transform-origin:50% 50%;will-change:transform,opacity;pointer-events:none;filter:drop-shadow(0 30px 70px rgba(0,0,0,.34))}
.cgp-before-after__offset{position:absolute;z-index:0;inset:14px -18px -16px 18px;background:linear-gradient(135deg,rgba(239,53,59,.92),#b7181e);clip-path:polygon(4% 0,100% 0,100% 92%,92% 100%,0 100%,0 8%);opacity:.74;pointer-events:none}
.cgp-before-after__frame{position:absolute;z-index:1;inset:0;overflow:hidden;background:#090b0e;clip-path:polygon(4% 0,100% 0,100% 92%,92% 100%,0 100%,0 8%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.10)}
.cgp-before-after__frame::after{content:"";position:absolute;z-index:3;inset:0;background:linear-gradient(180deg,rgba(9,11,14,.06),transparent 24%,transparent 72%,rgba(9,11,14,.28)),linear-gradient(125deg,rgba(220,31,38,.06),transparent 35%);pointer-events:none}
.cgp-before-after__image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.94) contrast(1.035);pointer-events:none;user-select:none;-webkit-user-drag:none}
.cgp-before-after__image--before{z-index:1}
.cgp-before-after__image--after{z-index:2;clip-path:inset(0 0 0 var(--cgp-ba-split))}
.cgp-before-after__label{position:absolute;z-index:6;top:18px;padding:8px 10px 7px;border:1px solid rgba(255,255,255,.16);background:rgba(9,11,14,.78);color:#fff;font:800 9px/1 Inter,Arial,sans-serif;letter-spacing:.17em;text-transform:uppercase;box-shadow:0 10px 24px rgba(0,0,0,.18);pointer-events:none}
.cgp-before-after__label--before{left:22px}
.cgp-before-after__label--after{right:22px}
.cgp-before-after__divider{position:absolute;z-index:7;left:var(--cgp-ba-split);top:0;bottom:0;width:2px;transform:translateX(-50%);background:rgba(255,255,255,.92);box-shadow:0 0 0 1px rgba(9,11,14,.20),0 0 18px rgba(255,255,255,.22);pointer-events:none}
.cgp-before-after__node{position:absolute;z-index:8;left:var(--cgp-ba-split);top:50%;width:44px;height:44px;background:linear-gradient(135deg,#ef353b,#b7181e);border:2px solid #fff;transform:translate(-50%,-50%) rotate(45deg);box-shadow:0 0 0 4px rgba(9,11,14,.32),0 0 24px rgba(239,53,59,.34);pointer-events:none}
.cgp-before-after__node::before,.cgp-before-after__node::after{content:"";position:absolute;top:50%;width:8px;height:8px;border-top:2px solid #fff;border-right:2px solid #fff}
.cgp-before-after__node::before{left:8px;transform:translateY(-50%) rotate(180deg)}
.cgp-before-after__node::after{right:8px;transform:translateY(-50%)}
.cgp-before-after__range{position:absolute;z-index:10;inset:0;width:100%;height:100%;margin:0;opacity:0;appearance:none;-webkit-appearance:none;background:transparent;cursor:ew-resize;pointer-events:auto}
.cgp-before-after__range::-webkit-slider-runnable-track{height:100%;background:transparent}
.cgp-before-after__range::-webkit-slider-thumb{-webkit-appearance:none;width:48px;height:100%;background:transparent;border:0;cursor:ew-resize}
.cgp-before-after__range::-moz-range-track{height:100%;background:transparent;border:0}
.cgp-before-after__range::-moz-range-thumb{width:48px;height:100%;background:transparent;border:0;border-radius:0;cursor:ew-resize}
.cgp-before-after__range:focus-visible{opacity:.001;outline:2px solid #ef353b;outline-offset:-6px}

.cgp-before-after__slab{position:absolute;z-index:9;left:clamp(24px,3vw,44px);bottom:clamp(20px,2.6vh,30px);min-width:min(330px,46%);padding:13px 17px 12px 19px;background:linear-gradient(90deg,#dc1f26 0 4px,rgba(9,11,14,.92) 4px 100%);color:#fff;clip-path:polygon(0 0,94% 0,100% 24%,100% 100%,6% 100%,0 76%);box-shadow:0 18px 42px rgba(0,0,0,.30);pointer-events:none}
.cgp-before-after__slab span,.cgp-before-after__slab strong{display:block}
.cgp-before-after__slab span{color:#ef353b;font:800 8px/1 Inter,Arial,sans-serif;letter-spacing:.15em;text-transform:uppercase}
.cgp-before-after__slab strong{margin-top:6px;color:#fff;font:800 12px/1.25 Inter,Arial,sans-serif;text-transform:uppercase}

@media(max-width:1100px) and (min-width:901px){.cgp-before-after{width:min(64vw,820px,93.3svh)}.cgp-before-after__slab{min-width:min(300px,52%)}}
@media(max-width:900px){.cgp-preview,.cgp-stage{display:none!important}}
@media(prefers-reduced-motion:reduce){.cgp-preview,.cgp-stage{display:none!important}}

.tour-gallery{height:100vh;position:relative;background:#07090c;padding:32px 5vw;overflow:hidden}.tour-gallery-label{display:flex;justify-content:space-between;align-items:center;font:800 12px/1.5 Arial,sans-serif;letter-spacing:.1em}.tour-gallery-label span{color:#ef353b}.tour-gallery .cgp-before-after{position:absolute;left:50%;top:53%;width:78%;height:72%;aspect-ratio:auto;opacity:1;transform:translate(-50%,-50%);pointer-events:auto}.tour-gallery .cgp-before-after__frame{clip-path:polygon(4% 0,100% 0,100% 92%,92% 100%,0 100%,0 8%)}.tour-gallery .cgp-before-after__frame img{width:100%;height:100%;object-fit:cover;object-position:top}.tour-gallery .cgp-before-after__frame:after{display:none}@media(max-width:800px){.tour-gallery-label{font-size:10px;gap:20px}.tour-gallery .cgp-before-after{width:88%;height:70%}}