/* TAIGA Smart Product v7 — landing-specific shell, configurator typography and sticky estimate */

/* This is a precise product landing, not the global discovery configurator. */
body.taiga-configurator-page .tc-directions{display:none!important}
body.taiga-configurator-page .tc-header__inner{grid-template-columns:180px 1fr auto!important}
body.taiga-configurator-page .tc-header__product{justify-self:start}

/* Prevent an overflow ancestor from disabling position: sticky. */
.tsp-v4{overflow:visible!important;font-family:Arial,Helvetica,sans-serif!important}
.tsp-v4 *{font-family:inherit}

/* Match /configurator/ display hierarchy instead of the oversized landing treatment. */
.tsp-v4 h1{
  font-size:clamp(38px,3.2vw,66px)!important;
  line-height:.94!important;
  letter-spacing:-.055em!important;
  font-weight:700!important;
  text-transform:uppercase!important;
}
.tsp-v4 h2{
  font-size:clamp(34px,3vw,58px)!important;
  line-height:.96!important;
  letter-spacing:-.05em!important;
  font-weight:700!important;
  text-transform:uppercase!important;
}
.tsp-v4 h3{font-size:22px!important;line-height:1.04!important;letter-spacing:-.035em!important;font-weight:700!important}
.tsp-v4-hero__lead,.tsp-v4-section__title p,.tsp-v4-config__head p{font-size:15px!important;line-height:1.55!important}
.tsp-v4-overline,.tsp-v4-anchor a,.tsp-v4-summary__eyebrow{font-size:11px!important;font-weight:700!important;letter-spacing:.18em!important}
.tsp-v4-btn{border-radius:2px!important;min-height:52px!important;padding:0 20px!important;font-size:12px!important;text-transform:uppercase!important}
.tsp-v4-pills a{border-radius:2px!important}
.tsp-v4-profile,.tsp-v4-colors,.tsp-v4-area,.tsp-v4-config__choices,.tsp-v4-summary{border-radius:3px!important}

/* No duplicate Smart Product topbar from older v6 iterations. */
.tsp-v6-topbar{display:none!important}

/* Keep the estimate visible while the long palette/configurator is being scrolled. */
.tsp-v4-config,.tsp-v4-config__grid,.tsp-v4-config__choices{overflow:visible!important}
.tsp-v4-config__grid{align-items:start!important}
.tsp-v4-summary{
  position:sticky!important;
  top:124px!important;
  align-self:start!important;
  z-index:35!important;
  max-height:calc(100vh - 142px);
  overflow:auto!important;
  scrollbar-width:thin;
  overscroll-behavior:contain;
}

/* Calculation state */
.tsp-v4-summary{isolation:isolate}
.tsp-v4-summary:after{
  content:"";
  position:absolute;
  z-index:50;
  left:0;right:0;top:0;
  height:3px;
  opacity:0;
  transform:scaleX(.08);
  transform-origin:left center;
  background:linear-gradient(90deg,rgba(255,255,255,.18),#fff,rgba(255,255,255,.18));
  transition:opacity .18s ease;
}
.is-calculating .tsp-v4-summary:after{
  opacity:1;
  animation:tsp-v7-progress 1.05s cubic-bezier(.4,0,.2,1) infinite;
}
@keyframes tsp-v7-progress{
  0%{transform:translateX(-35%) scaleX(.18)}
  50%{transform:translateX(42%) scaleX(.52)}
  100%{transform:translateX(118%) scaleX(.18)}
}
.tsp-v6-calc-state{
  display:flex;
  align-items:center;
  gap:9px;
  margin:-4px 0 15px;
  padding:9px 10px;
  border:1px solid rgba(255,255,255,.11);
  background:rgba(255,255,255,.045);
  font-size:10px;
  line-height:1.3;
  color:#c7c2ba;
}
.tsp-v6-calc-state i{
  width:7px;height:7px;flex:0 0 7px;border-radius:50%;background:#9b958c;
  box-shadow:0 0 0 0 rgba(255,255,255,.25);
}
.is-calculating .tsp-v6-calc-state i{background:#fff;animation:tsp-v7-pulse 1s ease-out infinite}
@keyframes tsp-v7-pulse{0%{box-shadow:0 0 0 0 rgba(255,255,255,.35)}100%{box-shadow:0 0 0 8px rgba(255,255,255,0)}}
.is-calculating [data-estimate-total],
.is-calculating [data-estimate-lines]{opacity:.46;transition:opacity .18s ease}
[data-estimate-total],[data-estimate-lines]{transition:opacity .18s ease}

/* The two half-width steps must share one baseline. */
.tsp-v4-choice-row>.tsp-v4-choice-block{padding-top:20px!important;margin-top:0!important}
.tsp-v4-choice-row>.tsp-v4-choice-block .tsp-v4-choice-head{min-height:48px!important;margin:0 0 13px!important;padding:0!important;align-items:flex-start!important}
.tsp-v4-choice-row>.tsp-v4-choice-block .tsp-v4-choice-head>span{margin-top:0!important}

@media(max-width:1100px){
  body.taiga-configurator-page .tc-header__inner{grid-template-columns:130px 1fr auto!important}
  .tsp-v4-summary{position:relative!important;top:auto!important;max-height:none!important;overflow:visible!important}
}
@media(max-width:680px){
  body.taiga-configurator-page .tc-header__inner{grid-template-columns:1fr auto!important}
  .tsp-v4 h1{font-size:clamp(38px,11vw,54px)!important}
  .tsp-v4 h2{font-size:clamp(32px,9vw,46px)!important}
}
