/* PC chapter transitions; ordinary document flow on mobile and short windows. */
html.cs-page-mode{overflow:hidden;scroll-behavior:auto}
.cs-page-mode body{overflow:hidden;height:100svh}
.cs-page-mode .cs-home .cs-page{position:fixed;inset:var(--cs-header-height) 0 0;width:100%;height:calc(100svh - var(--cs-header-height));min-height:0;visibility:hidden;opacity:0;pointer-events:none;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;z-index:1;will-change:transform}
.cs-page-mode .cs-home .cs-page.is-current,.cs-page-mode .cs-home .cs-page.is-transitioning{visibility:visible;opacity:1}
.cs-page-mode .cs-home .cs-page.is-current{pointer-events:auto}
.cs-page:focus{outline:none}
.cs-page-mode .cs-home .pc-hero{background:#c4ddeb;padding:0;overflow:hidden}
.cs-page-mode .cs-home .hero-art{height:100%}
.cs-page-mode .cs-home .hero-art img{height:100%;width:100%;object-fit:cover;object-position:center center}
.cs-page-mode .cs-home .hero-copy{top:clamp(28px,7vh,85px)}
.cs-page-mode .premium-slider-section,.cs-page-mode .units-section{padding:24px 40px 18px}
.cs-page-mode .slider-heading{margin-bottom:10px}
.cs-page-mode .cs-home .slider-heading .premium-four{font-size:clamp(36px,5.5vh,60px)}
.cs-page-mode .premium-overline{font-size:clamp(17px,2.4vh,23px)}
.cs-page-mode .premium-slide{padding:5px 25px 12px 0}
.cs-page-mode .premium-slide figure img{height:clamp(230px,42vh,460px)}
.cs-page-mode .premium-text h3{font-size:clamp(32px,5vh,50px);margin:6px 0 12px}
.cs-page-mode .premium-message{min-height:0;padding:20px 24px}
.cs-page-mode .carousel-controls{margin-top:12px}
.cs-page-mode .units-heading h2{font-size:clamp(30px,4.5vh,45px);margin:4px 0}
.cs-page-mode .unit-active-title{font-size:clamp(28px,4vh,40px);margin:2px 0!important}
.cs-page-mode .unit-slide{padding:10px 0;gap:14px 30px}
.cs-page-mode .unit-slide-art,.cs-page-mode .unit-slide-plan{height:clamp(160px,calc(100svh - 415px),400px)}
.cs-page-mode .cs-home .closing-pitch{padding:24px 40px}
.cs-page-mode .closing-pitch>img{max-height:calc(100svh - var(--cs-header-height) - 48px);width:100%;object-fit:contain}
.cs-page-mode .cs-home .closing-pitch h2{margin:8px 0;font-size:clamp(30px,3vw,44px)}
.cs-page-mode .cs-home .closing-pitch .customer-benefits{margin:14px 0;gap:8px}
.cs-page-mode .cs-home .closing-pitch .benefit-card{min-height:90px;padding:10px 8px}
.cs-page-mode .cs-home .closing-pitch .benefit-card p{margin-bottom:5px!important}
.cs-page-mode .cs-home .closing-pitch .benefit-card strong{font-size:clamp(20px,2.6vh,25px)}
.cs-page-mode .contact-page{background:#f7f6f2;display:flex;flex-direction:column}
.cs-page-mode .cs-home .contact-page .customer-section{flex:1;min-height:390px;padding:28px max(40px,calc((100% - 1240px)/2));gap:45px}
.cs-page-mode .contact-page .cs-footer{flex-shrink:0;padding:20px 40px}
@media(min-width:991px) and (max-height:760px){
 .cs-page-mode .cs-home .hero-copy h1{font-size:clamp(45px,7.8vh,62px);margin-top:12px}
 .cs-page-mode .cs-home .hero-kicker{font-size:25px}
 .cs-page-mode .cs-home .hero-sub{font-size:27px}
 .cs-page-mode .cs-home .hero-copy{top:25px}
 .cs-page-mode .premium-slider-section,.cs-page-mode .units-section{padding-top:16px}
 .cs-page-mode .premium-lines p{font-size:17px}
 .cs-page-mode .cs-home .closing-pitch .contact-button{padding:9px 24px}
}

/* v14: larger, vertically centered premium and unit chapters. */
.cs-page-mode .cs-home .premium-slider-section,
.cs-page-mode .cs-home .units-section{
  display:flex;flex-direction:column;align-items:center;
  padding:clamp(20px,3vh,42px) 3vw;
}
.cs-page-mode .section-content{
  flex:0 0 auto;width:min(1600px,100%);margin-block:auto;
}
.cs-page-mode .section-content .slider-viewport,
.cs-page-mode .section-content .unit-viewport{
  width:100%;max-width:none;margin:0;
}
.cs-page-mode .section-content .slider-heading{
  width:100%;max-width:none;margin:0 0 clamp(14px,2vh,24px);
}
.cs-page-mode .cs-home .slider-heading .premium-four{
  font-size:clamp(44px,4vw,76px);line-height:1.12;margin:10px 0 0;
}
.cs-page-mode .section-content .premium-overline{
  font-size:clamp(19px,1.35vw,26px);line-height:1.5;
}
.cs-page-mode .section-content .premium-slide{
  grid-template-columns:.92fr 1.08fr;gap:clamp(30px,3vw,60px);padding:0 0 14px;
}
.cs-page-mode .section-content .premium-slide figure img{
  height:clamp(240px,calc(100svh - 355px),540px);width:100%;object-fit:cover;
}
.cs-page-mode .section-content .premium-text h3{
  font-size:clamp(38px,3.1vw,60px);line-height:1.2;margin:10px 0 24px;
}
.cs-page-mode .section-content .premium-text>.section-label{font-size:16px}
.cs-page-mode .section-content .premium-message{
  width:calc(100% + 75px);padding:clamp(24px,2.2vw,40px);min-height:0;
}
.cs-page-mode .section-content .premium-lines p{
  font-size:clamp(17px,1.15vw,22px);line-height:1.8;
}
.cs-page-mode .section-content .traffic-one-line{
  font-size:clamp(14px,1.03vw,20px)!important;letter-spacing:-.045em;
}
.cs-page-mode .section-content .premium-message a{font-size:16px}
.cs-page-mode .section-content .units-heading{margin-bottom:12px}
.cs-page-mode .section-content .units-heading h2{
  font-size:clamp(38px,3vw,58px);line-height:1.15;margin:8px 0 10px;
}
.cs-page-mode .section-content .units-heading>p:not(.section-label){font-size:20px;line-height:1.4}
.cs-page-mode .section-content .unit-active-title{
  font-size:clamp(34px,2.4vw,46px);line-height:1.2;margin:10px 0 0!important;
}
.cs-page-mode .section-content .unit-slide{gap:14px 36px;padding:8px 0}
.cs-page-mode .section-content .unit-slide-art,
.cs-page-mode .section-content .unit-slide-plan{
  height:clamp(180px,calc(100svh - 425px),560px);padding:14px 18px;
}
.cs-page-mode .section-content .unit-slide-plan{padding-top:34px}
.cs-page-mode .section-content .unit-slide-caption a{font-size:16px}
.cs-page-mode .section-content .carousel-controls{margin:16px 0 0;gap:16px}
@media(min-width:991px) and (max-height:760px){
  .cs-page-mode .cs-home .slider-heading .premium-four{font-size:44px}
  .cs-page-mode .section-content .slider-heading{margin-bottom:12px}
  .cs-page-mode .section-content .premium-text h3{font-size:36px;margin:6px 0 14px}
  .cs-page-mode .section-content .premium-message{padding:20px 24px}
  .cs-page-mode .section-content .premium-lines p{font-size:17px}
  .cs-page-mode .section-content .premium-message a{margin-top:12px}
  .cs-page-mode .section-content .units-heading h2{font-size:36px;margin:4px 0 6px}
  .cs-page-mode .section-content .units-heading>p:not(.section-label){font-size:18px}
  .cs-page-mode .section-content .unit-active-title{font-size:32px;margin-top:6px!important}
  .cs-page-mode .section-content .carousel-controls{margin-top:10px}
}
