/* Service pages: shared frame for the Business/Individual service subpages */

/* Current-nav underline for dropdown parents (chevron lives on ::after) */
.nav-toggle.is-current{position:relative}
.nav-toggle.is-current::before{content:'';position:absolute;left:15px;right:15px;bottom:6px;height:2px;background:var(--navy)}
.nav-toggle.is-current::after{content:'';position:static;left:auto;right:auto;bottom:auto;height:7px;width:7px;background:none}

/* Banner */
.page-hero{position:relative;overflow:hidden;min-height:426px;padding:176px 40px 0;text-align:center;color:#fff;background:url('/images/office-meeting.webp') 50% 50%/cover no-repeat fixed}
.page-hero::before{content:'';position:absolute;inset:0;background:rgba(0,0,0,.65)}
.page-hero>*{position:relative}
.page-hero__eyebrow{margin:0 0 10px;font-size:20px;line-height:30px;letter-spacing:2px;text-transform:uppercase}
.page-hero h1{font-size:50px;line-height:61px;color:#fff}

/* Two-column wrapper: sidebar x40-463, content x514-1400 at 1440px */
.svc-wrap{max-width:1440px;margin:0 auto;padding:60px 40px;display:grid;grid-template-columns:423px 1fr;column-gap:51px;align-items:start}
.svc-main{padding-top:8px;min-width:0}

/* Sidebar */
.hours{background:var(--tint);padding:30px 30px 28px}
.hours h3{font-size:24px;line-height:28px;margin:0 0 10px}
.hours__row{margin:0 0 8px;padding:5px 0 5px 35px;font-size:15px;line-height:23px;background:url('/images/icons/clock.png') 0 50%/auto no-repeat}
.hours__row:last-child{margin-bottom:0}
.cta-card{position:relative;margin-top:30px;padding:30px 20px;text-align:center;color:#fff;background:url('/images/office-meeting.webp') 50% 50%/cover no-repeat}
.cta-card::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,#0878a5 24%,#192f5d 100%);opacity:.9}
.cta-card>*{position:relative}
.cta-card h2{font-size:32px;line-height:37px;margin:0 0 35px;color:#fff}
.btn-outline{width:196px;margin:0 auto;border:1px solid #fff;color:#fff;background:transparent;font-weight:700;transition:background .2s,color .2s}
.btn-outline:hover{background:#fff;color:var(--teal)}
.svc-side__logo{width:252px;height:71px;margin:40px auto 0;object-fit:contain}

/* Content column */
.svc-h2{font-size:30px;line-height:39px;margin:0 0 10px}
.svc-lead{margin:0;font-size:16px;line-height:25px}
.svc-photo{display:block;width:100%;height:450px;margin-top:32px;object-fit:cover}
.svc-split{display:grid;grid-template-columns:369px minmax(0,1fr);column-gap:30px;margin-top:30px}
.svc-split__img{position:relative;min-height:196px}
.svc-split__img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.svc-split__text{padding:10px 50px 10px 0}
.svc-split__text .eyebrow{margin:0 0 10px;line-height:26px}
.svc-split__text .svc-h2{margin:0 0 13px}
.svc-p{margin:0;font-size:16px;line-height:22.08px}
.svc-p--gap{margin-bottom:22px}
.svc-p--gap-lg{margin-bottom:26px}
.svc-p--loose{line-height:32.91px}
.svc-p--top{margin-top:22px}
.svc-p--top-loose{margin-top:33px}
.svc-p--bold{font-weight:700}
.svc-sub{margin:25px 0 0;font-size:18px;line-height:24.84px;font-weight:700}
.svc-block{margin:9px 0}
.svc-list{margin:0;padding-left:32px;list-style:disc;font-size:16px;line-height:22.08px}
.svc-list--roomy{line-height:24.96px}

/* Green split band */
.svc-band{display:grid;grid-template-columns:5fr 7fr}
.svc-band__img{position:relative;min-height:329px}
.svc-band__img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.svc-band__panel{padding:60px 50px 60px 60px;color:#fff;background:linear-gradient(135deg,#27631e 5%,#52a745 100%)}
.svc-band__panel .eyebrow{color:#fff;line-height:26px;margin:0 0 10px}
.svc-band__panel .svc-h2{color:#fff;margin:0 0 17px}
.svc-band__panel .svc-h2--tight{margin:10px 0 10px}
.svc-band__panel .svc-h2--after-p{margin-top:18px}
.svc-band__panel .svc-sub{color:#fff}
.svc-band__panel .svc-body{margin:0;font-size:16px;line-height:25px}

@media (max-width:1024px){
  .page-hero{min-height:320px;padding:120px 20px 0;background-attachment:scroll}
  .page-hero h1{font-size:40px;line-height:1.2}
  .svc-wrap{grid-template-columns:1fr;row-gap:40px;padding:40px 20px}
  .svc-side{max-width:560px;width:100%;margin:0 auto}
  .svc-side__logo{display:none}
  .svc-photo{height:auto;aspect-ratio:886/450}
  .svc-split{grid-template-columns:1fr}
  .svc-split__img{min-height:260px}
  .svc-split__text{padding:24px 0}
  .svc-band{grid-template-columns:1fr}
  .svc-band__img{min-height:280px}
  .svc-band__panel{padding:40px 24px}
  .nav-toggle.is-current::before{content:none}
  .nav-toggle.is-current::after{content:'';margin:-4px 0 0 8px}
}
@media (max-width:767px){
  .page-hero{min-height:260px;padding-top:100px}
  .page-hero__eyebrow{font-size:16px}
  .page-hero h1{font-size:32px}
  .svc-h2{font-size:26px;line-height:1.25}
}

/* Individual-page spacing helpers */
.svc-lead--gap{margin-bottom:25px}
.svc-lead--gap-sm{margin-bottom:22px}
.svc-lead--gap-end{margin-bottom:43px}
.svc-p--end{margin-bottom:21px}
.svc-photo--end{margin-bottom:30px}

/* Batch 3 additions: HR, compliance, CPR, career and retirement pages */
.svc-body{margin:0;font-size:16px;line-height:25px}
.svc-body--br{margin-bottom:25px}
.svc-body--blank{margin-bottom:25px}
.svc-list--end{padding-bottom:25px}
.svc-tail{margin-bottom:10px}
.svc-h2--mid{margin-top:10px}
.svc-split+.svc-h2--mid{margin-top:8px}
.svc-photo+.svc-h2--mid{margin-top:30px}
.svc-h3{margin:25px 0;font-size:30px;line-height:35px}
.svc-eyebrow-lead{margin:0 0 12px;line-height:26px}
.svc-sub--lg{margin:0 0 25px;line-height:27px}
.svc-split--tight{margin-top:0}
.svc-more{color:#fff}
.svc-cta-box{margin-top:32px;padding:20px 10px 20px;text-align:center;color:#fff;background:var(--navy)}
.svc-cta-box p{margin:0}
.svc-cta-box__title{font-size:20px;line-height:30px;font-weight:700}
.svc-cta-box__link{font-size:18px;line-height:27px;font-weight:700;font-style:italic}
.svc-cta-box__link a{color:#fff;text-decoration:underline}

.svc-split+.svc-sub--lg{margin-top:10px}
.svc-split--tight .svc-split__text{padding-top:11px}
.svc-band__panel .svc-body--blank{margin-bottom:25px}
.svc-split__text .svc-h2--lh37{line-height:37px}
.svc-split__text .svc-h2--lh36{line-height:36.33px}
.svc-split__text .svc-h2--mb10{margin-bottom:10px}
.svc-list--25{line-height:25px}
.svc-mt20{margin-top:20px}
.svc-h2.svc-mt22{margin-top:22px}
.svc-mt25{margin-top:25px}
.svc-h2.svc-mt20{margin-top:20px}
.svc-split+.svc-h2.svc-mt20{margin-top:20px}
.svc-h2--cert{margin:34px 0 25px;line-height:35px}
.svc-tail-2{margin-bottom:2px}
.svc-list--w792{max-width:792px}
.svc-p--gap1{margin-bottom:23px}
.svc-block--ret{margin:7px 0 11px}
.svc-photo--m33{margin-top:33px}
.svc-p--t23{margin-bottom:23px}
.svc-p--gap21{margin-bottom:21px}
.svc-list--25 strong,.svc-body strong{font-weight:700}
.svc-band--404{min-height:404px}

/* Narrow laptops: the sidebar frame is too tight between 1025px and 1180px, so stack it like tablets */
@media (min-width:1025px) and (max-width:1180px){
  .svc-wrap{grid-template-columns:1fr;row-gap:40px;padding:40px 20px}
  .svc-side{max-width:560px;width:100%;margin:0 auto}
  .svc-side__logo{display:none}
  .svc-photo{height:auto;aspect-ratio:886/450}
  .svc-split{grid-template-columns:1fr}
  .svc-split__img{min-height:260px}
  .svc-split__text{padding:24px 0}
}
