/* Compact site navigation; panels stay inside the current viewport. */
.nav .container.nav-inner{max-width:1240px;width:calc(100% - 40px);min-height:76px;height:auto}
.nav .brand-text strong{font-size:22px}.nav .brand-text small{font-size:10px}
.nav .menu{min-width:0;flex-wrap:wrap;justify-content:center}
.nav .nav-actions{flex-shrink:0;gap:8px}.nav .nav-actions .btn{font-size:13px;padding:10px 15px}
.nav .function-mega,.nav .service-mega{max-height:var(--website-menu-space,calc(100dvh - 90px));border-radius:0 0 16px 16px}
.nav .mega-grid,.nav .service-mega-grid{grid-template-columns:245px minmax(0,1fr);min-height:0;height:auto;align-items:stretch}
.nav .mega-side,.nav .service-mega-side{padding:14px;min-height:0;background:#f4f6f7}
.nav .mega-side-title,.nav .service-mega-title{font-size:15px;margin-bottom:10px;line-height:1.45}
.nav .mega-side-title small,.nav .service-mega-title small{font-size:12px;font-weight:400!important}
.nav .mega-cat,.nav .service-cat{padding:8px;gap:8px;border-radius:9px}
.nav .mega-cat strong,.nav .service-cat strong,.nav .mega-link strong,.nav .service-link strong{font-size:13px;line-height:1.5;font-weight:600}
.nav .mega-cat small,.nav .service-cat small,.nav .mega-link small,.nav .service-link small{font-size:11px;line-height:1.5}
.nav .mega-cat-icon,.nav .service-cat-icon,.nav .mega-link-icon,.nav .service-link-icon{width:30px;height:30px;border-radius:8px}
.nav .mega-panel,.nav .service-mega-panel{padding:18px;min-height:0;height:auto}
.nav .mega-panel-head,.nav .service-panel-head{min-height:130px;background:#153e48;border-radius:12px}
.nav .mega-panel-head-content,.nav .service-panel-head-content{padding:20px}
.nav .mega-panel-head-content h3,.nav .service-panel-head-content h3{font-size:21px;line-height:1.45;color:#fff;margin:6px 0}
.nav .mega-panel-head-content p,.nav .service-panel-head-content p{font-size:13px;color:#f0f8fa;line-height:1.6}
.nav .mega-panel-head-content b,.nav .service-panel-head-content b{font-size:12px;color:#fff}
.nav .mega-links,.nav .service-links{gap:10px;margin-top:12px}
.nav a.mega-link,.nav a.service-link{padding:12px;gap:10px;border-radius:10px;min-width:0;overflow-wrap:anywhere}
.website-menu-icon{flex-shrink:0;vertical-align:middle}
.nav :is(.mega-cat,.service-cat,.mega-link,.service-link)>.website-menu-icon{width:30px;height:30px;padding:5px;background:#e5f7fa;color:#0089ab;border-radius:8px}
.nav .site-extra-links a{display:flex;align-items:center;gap:8px;white-space:normal}
.nav .site-extra-links{max-height:var(--website-menu-space,65dvh);overflow:auto;max-width:calc(100vw - 32px)}
.website-footer-menus{display:flex;flex-wrap:wrap;gap:16px;padding:16px 0}
.website-footer-menus a{display:inline-flex;align-items:center;gap:8px}
.managed-content .container{max-width:900px}.managed-content.managed-wide .container{max-width:1240px}
.managed-content .page-title{color:var(--page-accent);font-size:clamp(26px,4vw,38px);line-height:1.4;overflow-wrap:anywhere}
.managed-content .page-title .website-menu-icon{width:32px;height:32px}
.managed-content .page-body{line-height:1.85;overflow-wrap:anywhere}
.managed-content .page-body img{max-width:100%;height:auto}.managed-content .page-body table{display:block;max-width:100%;overflow:auto}
.managed-content .page-body a{color:var(--page-accent);text-decoration:underline}
@media(min-width:981px){
 .nav .function-mega,.nav .service-mega{width:min(820px,100%);left:50%;right:auto;transform:translateX(-50%)}
 .nav .mega-grid,.nav .service-mega-grid{grid-template-columns:220px minmax(0,1fr)}
 .nav .mega-side,.nav .service-mega-side{padding:12px}
 .nav .mega-panel,.nav .service-mega-panel{padding:14px}
 .nav .mega-panel-head-content,.nav .service-panel-head-content{padding:16px}
 .nav .mega-panel-head-content h3,.nav .service-panel-head-content h3{font-size:19px}
 .nav a.mega-link,.nav a.service-link{padding:10px;gap:8px}
 .nav .mega-side,.nav .service-mega-side,.nav .mega-panel,.nav .service-mega-panel{max-height:var(--website-menu-space,calc(100dvh - 90px));overflow-y:auto;overscroll-behavior:contain}
}
@media(max-width:1100px){.nav .brand-text strong{font-size:18px}.nav .nav-inner{gap:10px}.nav .nav-actions .btn{padding:9px 11px}}
@media(max-width:980px){
 .nav .container.nav-inner{min-height:68px;height:68px;width:calc(100% - 28px)}
 .nav .menu{flex-wrap:nowrap;justify-content:flex-start;max-height:var(--website-menu-space,calc(100dvh - 78px));overflow-y:auto;overscroll-behavior:contain}
 .nav .menu> *{flex-shrink:0;width:100%;min-width:0}
 .nav .function-mega,.nav .service-mega{max-height:none;overflow:visible}
 .nav .mega-grid,.nav .service-mega-grid{grid-template-columns:1fr}
 .nav .mega-side,.nav .service-mega-side{border-right:0;padding:10px}
 .nav .mega-panel,.nav .service-mega-panel{padding:12px}
 .nav .mega-menu-list,.nav .service-mega-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:640px){
 .nav .brand-text strong{font-size:17px}
 .nav .mega-cat small,.nav .service-cat small{display:none}
 .nav .mega-links,.nav .service-links{grid-template-columns:1fr}
 .nav .mega-panel-head-content h3,.nav .service-panel-head-content h3{font-size:18px}
 .nav .mega-panel-head-content,.nav .service-panel-head-content{padding:14px}
}

.nav .site-extra-menu summary:after{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-left:5px}

.nav .partners-menu{position:relative}
.nav .partners-menu summary{list-style:none}
.nav .partners-menu summary::-webkit-details-marker{display:none}
.nav .partners-menu[open]>summary{color:#0089ab;background:#e5f7fa}
.nav .partners-menu[open] .menu-chevron{transform:rotate(225deg)}
.nav .partners-dropdown{position:absolute;top:calc(100% + 10px);left:50%;transform:translateX(-50%);width:400px;max-width:calc(100vw - 40px);max-height:var(--website-menu-space,70dvh);overflow:auto;background:#fff;border:1px solid #d7e6ea;border-radius:12px;padding:8px;box-shadow:0 14px 40px #183e4826;z-index:120}
.nav a.partner-link{display:flex;align-items:center;gap:10px;padding:10px;border-radius:10px;white-space:normal;color:#183e48;text-align:left}
.nav a.partner-link:hover,.nav a.partner-link:focus-visible{background:#e5f7fa}
.nav .partner-link>.website-menu-icon{color:#0089ab;width:30px;height:30px;padding:5px;background:#e5f7fa;border-radius:8px}
.nav .partner-link strong{display:block;font-size:13px;line-height:1.5;font-weight:600}
.nav .partner-link small{display:block;font-size:11px;line-height:1.5;color:#626b70;margin-top:3px}
@media(max-width:980px){
 .nav .partners-dropdown{position:static;transform:none;width:100%;max-width:100%;max-height:none;padding:4px;box-shadow:none;margin-top:6px}
 .nav a.partner-link{padding:10px;gap:8px}
}

.nav .menu-link.active{color:#007f9d;background:#e5f7fa;box-shadow:none}

/* Consistent, tighter spacing between public website sections. */
.index-home > section,
.index-home > section#pricing{padding-block:24px}
.index-home > .hero{padding-block:28px 20px}
.index-home :is(.section-head,.pricing-head,.review-head,.news-top){margin-bottom:18px}
.site-page{padding-block:28px 32px}
.site-page .site-page-head{margin-bottom:20px}
body > footer{padding-block:28px 20px!important}

/* Newsletter now lives in the footer's rightmost column. */
@media(max-width:640px){
 .index-home > section,
 .index-home > section#pricing{padding-block:16px}
 .index-home > .hero{padding-block:20px 16px}
 .index-home :is(.section-head,.pricing-head,.review-head,.news-top){margin-bottom:14px}
 .site-page{padding-block:20px 24px}
 .site-page .site-page-head{margin-bottom:16px}
 body > footer{padding-block:24px 16px!important}
}

body.website-readable > footer .footer-grid:has(.footer-newsletter){grid-template-columns:minmax(205px,1.25fr) repeat(3,minmax(105px,.7fr)) minmax(225px,1.2fr)!important;gap:clamp(16px,2vw,30px)!important}
body.website-readable > footer .footer-newsletter{min-width:0}
body.website-readable > footer .footer-newsletter .site-newsletter{display:block;margin:0;padding:0;background:none;border:0;box-shadow:none}
body.website-readable > footer .footer-newsletter label{display:block;margin:2px 0 12px;color:#8fe0ee;font-size:14px;font-weight:800}
body.website-readable > footer .footer-newsletter p{margin:0 0 12px;color:#c7dee6;font-size:13px;line-height:1.6}
body.website-readable > footer .footer-newsletter .site-newsletter-controls{display:grid;gap:8px}
body.website-readable > footer .footer-newsletter input{width:100%;min-width:0;min-height:42px;padding:10px 12px;border:1px solid rgba(180,219,230,.65);border-radius:9px;background:#fff;color:#173e4c;font:inherit;font-size:13px}
body.website-readable > footer .footer-newsletter input:focus-visible{outline:2px solid #71d8eb;outline-offset:2px}
body.website-readable > footer .footer-newsletter .btn{width:100%;min-height:42px;margin:0;border-radius:9px;background:#087e9b;color:#fff;font-size:13px;box-shadow:none}
body.website-readable > footer .footer-newsletter .btn:hover{background:#0999b8}
@media(max-width:1100px){body.website-readable > footer .footer-grid:has(.footer-newsletter){grid-template-columns:repeat(3,minmax(0,1fr))!important}body.website-readable > footer .footer-newsletter{grid-column:span 2}}
@media(max-width:640px){body.website-readable > footer .footer-grid:has(.footer-newsletter){grid-template-columns:1fr!important}body.website-readable > footer .footer-newsletter{grid-column:auto}}
