/* Additions for the rebuilt inner pages */
.untree_co-hero.inner-page, .untree_co-hero.inner-page > .container > .row { height: 62vh; min-height: 480px; }
.untree_co-hero.inner-page.overlay:before { background: rgba(0, 0, 0, 0.55); }
@media (max-width: 767.98px) { .untree_co-hero.inner-page, .untree_co-hero.inner-page > .container > .row { min-height: 440px; } }
@media (max-width: 991.98px) { .untree_co-hero.inner-page { background-attachment: scroll; } }
.untree_co-hero.inner-page .heading { margin-top: 90px; }
.untree_co-hero.inner-page .desc { max-width: 640px; }
.pb-panel { background: #111; border: 1px solid #222; border-radius: 6px; padding: 30px; }
.pb-panel h3 { font-size: 20px; margin-bottom: 15px; }
.pb-panel-dark { background: #0084c2; border-color: #0084c2; }
.pb-panel-dark a:not(.btn) { color: #fff; text-decoration: underline; }
.pb-panel-dark .btn-primary { background: #000; border-color: #000; }
.pb-panel-dark .btn-primary:hover { background: #fff; border-color: #fff; color: #000; }
.pb-price { font-size: 36px; font-weight: 700; color: #0084c2; margin-bottom: 10px; line-height: 1; }
.pb-panel-dark .pb-price { color: #fff; }
.pb-price-note { font-size: 13px; text-transform: uppercase; letter-spacing: .05rem; opacity: .75; }
.pb-big-link { font-size: 20px; color: #fff; }
.pb-big-link:hover { color: #0084c2; }
.pb-cta { border-top: 1px solid #222; border-bottom: 1px solid #222; background: #0a0a0a; }
.pb-cta .btn { margin-left: 4px; }
.pb-article h2 { font-size: 26px; margin: 40px 0 15px; }
.pb-article h3 { font-size: 20px; margin: 25px 0 10px; }
.pb-article a, .pb-panel a:not(.btn), .pb-post-card h3 a, .untree_co-section p a:not(.btn) { color: #0084c2; }
.pb-article a:hover, .untree_co-section p a:not(.btn):hover { color: #fff; }
.pb-breadcrumb { font-size: 14px; opacity: .8; }
.pb-post-card h3 { font-size: 22px; }
.pb-post-card h3 a { color: #fff; }
.pb-post-card h3 a:hover { color: #0084c2; }
.pb-steps { padding-left: 20px; }
.pb-steps li { margin-bottom: 18px; }
.pb-map { display: block; position: relative; overflow: hidden; border: 1px solid #222; max-height: 420px; }
.pb-map img { width: 100%; height: 420px; object-fit: cover; filter: grayscale(.3) brightness(.6); transition: .3s filter ease; }
.pb-map:hover img { filter: none; }
.pb-map-label { position: absolute; left: 0; right: 0; bottom: 0; padding: 18px 24px; background: rgba(0, 0, 0, .75); color: #fff; font-size: 18px; }
.pb-map:hover .pb-map-label { color: #0084c2; }
.pb-social-inline li { display: inline-block; margin: 0 6px; }

/* FAQ accordion: native <details>, no script */
.pb-faq-item { border-bottom: 1px solid #222; }
.pb-faq-item > summary { list-style: none; cursor: pointer; position: relative; padding: 18px 0 18px 30px; }
.pb-faq-item > summary::-webkit-details-marker { display: none; }
.pb-faq-item > summary h3 { font-size: 18px; margin: 0; color: #fff; font-family: "Karla", sans-serif; text-transform: none; letter-spacing: normal; }
.pb-faq-item > summary:hover h3 { color: #0084c2; }
.pb-faq-item > summary:before { position: absolute; left: 0; top: 22px; font-family: 'icomoon'; content: "\f067"; color: #0084c2; font-size: 14px; }
.pb-faq-item[open] > summary:before { content: "\f068"; }
.pb-faq-body { padding: 0 0 20px 30px; }
.pb-faq-body a { color: #0084c2; }

/* Desktop dropdown also opens for keyboard users */
.site-nav .site-navigation .site-menu .has-children:focus-within > .dropdown { visibility: visible; opacity: 1; margin-top: 0; }

/* Mobile menu: native <details>, no script */
.pb-mnav { position: relative; z-index: 2000; }
.pb-mnav > summary { display: block; list-style: none; }
.pb-mnav > summary::-webkit-details-marker { display: none; }
.pb-mnav[open] > summary { position: fixed; top: 28px; right: 24px; z-index: 3001; }
.pb-mnav[open] > summary.burger:before, .pb-mnav[open] > summary.burger:after { background: #000; top: 15px; }
.pb-mnav[open] > summary.burger:before { transform: rotate(45deg); }
.pb-mnav[open] > summary.burger:after { transform: rotate(-45deg); }
.pb-mnav[open] > summary.burger span { opacity: 0; }
.pb-mnav-panel { position: fixed; top: 0; right: 0; width: 270px; max-width: 85vw; height: 100vh; overflow-y: auto; background: #fff; padding: 80px 30px 30px; text-align: left; box-shadow: -10px 0 40px rgba(0, 0, 0, .5); z-index: 3000; }
.pb-mnav-panel ul { list-style: none; margin: 0; padding: 0; }
.pb-mnav-panel li a, .pb-mnav-panel .pb-mnav-group > span { display: block; padding: 10px 0; color: #000; font-size: 16px; letter-spacing: .03rem; }
.pb-mnav-panel li a:hover, .pb-mnav-panel li.active > a { color: #0084c2; }
.pb-mnav-panel .pb-mnav-group > span { color: #888; font-size: 13px; padding-bottom: 2px; }
.pb-mnav-panel .pb-mnav-group ul { padding-left: 15px; border-left: 2px solid #0084c2; }

/* Reviews: horizontal scroll-snap row instead of the JS carousel */
.pb-reviews { display: flex; gap: 30px; overflow-x: auto; scroll-snap-type: x mandatory; padding-bottom: 20px; scrollbar-color: #0084c2 #111; }
.pb-reviews .item { flex: 0 0 100%; scroll-snap-align: start; }
@media (min-width: 992px) { .pb-reviews .item { flex: 0 0 calc(50% - 15px); } }
.pb-reviews::-webkit-scrollbar { height: 6px; }
.pb-reviews::-webkit-scrollbar-track { background: #111; }
.pb-reviews::-webkit-scrollbar-thumb { background: #0084c2; border-radius: 3px; }
.pb-reviews-hint { font-size: 14px; opacity: .7; }
