.ct-homepage{margin-top:0}.ct-home-hero{position:relative;overflow:hidden;background:linear-gradient(115deg,#f5fbff 0%,#fff 61%);padding:clamp(44px,6vw,81px) 24px}.ct-home-hero:after{content:"";position:absolute;width:480px;height:480px;border-radius:50%;background:#eaf3f8;right:-250px;bottom:-320px;z-index:0}.ct-home-hero__grid{position:relative;z-index:1;gap:clamp(35px,6vw,80px)}.ct-home-title{max-width:780px;margin-bottom:18px;font-size:clamp(2.15rem,4.2vw,3.45rem)}.ct-home-intro{max-width:700px;color:#3b5265}.ct-home-actions{margin-top:30px}.ct-home-actions .is-style-outline .wp-block-button__link{border-color:var(--ct-blue);color:var(--ct-navy)}.ct-section{padding:clamp(58px,7vw,92px) 24px}.ct-section--intro{max-width:1280px;width:100%;margin-inline:auto}.ct-section--soft{background:var(--ct-light-blue)}.ct-section--cream{background:var(--ct-cream)}.ct-about-strip{border-radius:24px;background:#fff;box-shadow:var(--ct-shadow);margin-top:70px;margin-bottom:70px;padding:45px}.ct-about-mark{text-align:center}@media(max-width:781px){.ct-home-hero{padding:39px 20px}.ct-section{padding:52px 20px}.ct-about-strip{border-radius:0;margin:0;padding:52px 20px}.ct-card-grid{display:grid!important;grid-template-columns:1fr}.ct-card-grid>.wp-block-column{width:auto!important;flex-basis:auto!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.wp-block-button__link{transition:none}.wp-block-button__link:hover{transform:none}}


/* v1.2.2 — homepage restoration after permalink activation */
body.home .ct-homepage,
body.home .ct-home-hero,
body.home .ct-section,
body.home .ct-contact-band {
  width:100%;
}

body.home .ct-home-hero {
  display:block!important;
  position:relative!important;
  overflow:hidden!important;
  background:linear-gradient(115deg,#f5fbff 0%,#fff 61%)!important;
  padding:clamp(44px,6vw,81px) 24px!important;
}

body.home .ct-home-hero__grid,
body.home .ct-section--intro,
body.home .ct-section--soft > .wp-block-group,
body.home .ct-section--cream > .wp-block-group,
body.home .ct-section:not(.ct-section--soft):not(.ct-section--cream):not(.ct-about-strip),
body.home .ct-contact-band__inner {
  width:100%!important;
  max-width:1280px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

body.home .ct-home-title {
  display:block!important;
  max-width:780px!important;
  font-size:clamp(2.15rem,4.2vw,3.45rem)!important;
}

body.home .ct-home-actions,
body.home .wp-block-buttons {
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
  gap:12px;
  flex-wrap:wrap;
}

body.home .wp-block-button {
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
}

body.home .wp-block-button__link {
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:46px;
  padding:12px 22px!important;
  border-radius:999px!important;
  font-weight:700!important;
  text-decoration:none!important;
}

body.home .ct-home-actions .wp-block-button:not(.is-style-outline) .wp-block-button__link {
  background:var(--ct-orange)!important;
  color:#17324D!important;
  border:2px solid var(--ct-orange)!important;
}

body.home .ct-home-actions .is-style-outline .wp-block-button__link {
  background:#fff!important;
  color:var(--ct-navy)!important;
  border:2px solid var(--ct-blue)!important;
}

body.home .ct-section {
  padding:clamp(58px,7vw,92px) 24px!important;
}

body.home .ct-section--intro {
  max-width:1280px!important;
}

body.home .ct-contact-band {
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  background:#0b3d6b!important;
  color:#fff!important;
  padding:34px 24px!important;
}

body.home .ct-contact-band h2,
body.home .ct-contact-band p,
body.home .ct-contact-band .wp-block-heading {
  color:#fff!important;
}

body.home .ct-contact-band .wp-block-button__link {
  background:var(--ct-orange)!important;
  border-color:var(--ct-orange)!important;
  color:#fff!important;
}

@media(max-width:781px){
  body.home .ct-home-hero{padding:39px 20px!important}
  body.home .ct-section{padding:52px 20px!important}
  body.home .ct-contact-band{padding:32px 20px!important}
}
