/* Only loaded on the public toll calculator: keep navigation in normal flow. */
header.header-with-topbar{position:relative!important;height:auto!important}
header .header-top-bar,header .jhb-main-nav{position:relative!important;top:0!important;left:0!important;right:0!important}
@media(min-width:992px){header .jhb-main-nav>.blackBG{background:#172b35!important}}
@media(max-width:991px){header .jhb-main-nav>.blackBG{background:white!important;border-bottom:1px solid #dce3e5}}
.tc .tc-hero{padding-top:64px!important;padding-bottom:64px!important}
.tc .tc-hero-grid{align-items:start;gap:52px;grid-template-columns:1.15fr 1fr}
.tc-hero .tc-eyebrow{display:block}
.tc-hero h1{font-size:clamp(38px,4vw,62px)}
.tc-hero-visual{margin:0;border-radius:20px;overflow:hidden;background:white;border:1px solid #dce3e5;box-shadow:0 22px 55px #172b3514;transform:none}
.tc-hero-visual>img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:48% 60%;transition:transform .5s}
.tc-hero-visual:hover>img{transform:scale(1.025)}
.tc-hero-visual figcaption{position:relative;background:white;padding:24px}
.tc-hero-visual figcaption strong,.tc-hero-visual figcaption>span,.tc-hero-visual figcaption small{display:block}
.tc-hero-visual figcaption strong{font-size:20px;line-height:1.35;margin:10px 0}
.tc-hero-visual figcaption>span:not(.tc-eyebrow){font-size:13px;color:#5a6b72;line-height:1.6}
.tc-hero-visual figcaption small{font-size:10px;color:#73828a;margin-top:8px}
.tc-map-empty{position:relative;overflow:hidden;isolation:isolate;padding:0}
.tc-map-empty>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 62%;z-index:-2}
.tc-map-empty:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#172b35e8,#172b3599 62%,#172b3520);z-index:-1}
.tc .tc-map-empty-copy{text-align:left;align-self:flex-start;max-width:540px;padding:44px;color:white}
.tc .tc-map-empty-copy h3{color:white;font-size:34px}
.tc .tc-map-empty-copy p{color:#eff4f5;font-size:16px}
.tc .tc-map-empty-copy .tc-eyebrow{color:#f5bac0}
.tc-map-empty-copy small{color:#d4dce0;font-size:11px}
.tc-faq-section{background:white;border-top:1px solid #dce3e5}
.tc-faq-search{max-width:680px;margin:28px 0}
.tc-faq-search label{display:block;font-size:13px;font-weight:600;margin-bottom:8px}
.tc-faq-search input{width:100%;border:1px solid #b8c6cc;border-radius:10px;padding:15px 18px;background:#f8faf9;font:inherit;color:#172b35}
.tc-faq-search p{font-size:12px;margin:8px 0}
.tc-faq-list{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:start}
.tc-faq-item{border:1px solid #dce3e5;border-radius:12px;background:#f8faf9;transition:border-color .2s,box-shadow .2s}
.tc-faq-item[hidden]{display:none}
.tc-faq-item:hover,.tc-faq-item[open]{border-color:#9a1520;box-shadow:0 6px 20px #172b3508}
.tc-faq-item summary{display:flex;gap:13px;align-items:baseline;padding:20px 22px;cursor:pointer;font-size:15px;line-height:1.5;font-weight:600;list-style:none}
.tc-faq-item summary::-webkit-details-marker{display:none}
.tc-faq-item summary:after{content:'+';margin-left:auto;color:#9a1520;font-size:21px;line-height:1}
.tc-faq-item[open] summary:after{content:'−'}
.tc-faq-number{font-size:11px;color:#9a1520;flex-shrink:0;letter-spacing:.06em}
.tc-faq-answer{padding:0 22px 22px}
.tc-faq-answer p{font-size:14px;margin:12px 0}
.tc-faq-answer a{font-size:12px;color:#9a1520;text-decoration:underline}
@media(max-width:991px){.tc .tc-hero-grid{gap:26px}.tc-hero-visual figcaption{padding:20px}.tc .tc-hero{padding-top:40px!important}}
@media(max-width:767px){.tc .tc-hero-grid,.tc-faq-list{grid-template-columns:1fr}.tc .tc-hero{padding-top:32px!important;padding-bottom:40px!important}.tc-hero-visual>img{aspect-ratio:3/2}.tc .tc-map-empty-copy{padding:26px}.tc .tc-map-empty-copy h3{font-size:27px}.tc-faq-item summary{padding:18px}.tc-faq-answer{padding:0 18px 18px}}
@media(prefers-reduced-motion:reduce){.tc-hero-visual>img{transition:none}.tc-hero-visual:hover>img{transform:none}}

.tc .jhb-scroll-enter{animation:none!important;opacity:1!important;translate:none!important}

.tc-class-picker{margin-bottom:20px}.tc-class-picker label{display:block;font-weight:600;color:#182d36;margin-bottom:8px}.tc-class-picker select{width:100%;min-height:54px;border:1px solid #cad7dc;border-radius:10px;padding:12px;background:#fff;color:#182d36;font:inherit}.tc-class-picker select:focus{outline:3px solid #af1a2e33;border-color:#a51522}.tc-class-picker p{font-size:14px;line-height:1.6;margin:10px 0}.tc-class-picker>a{font-size:14px;color:#9a1520}
