/* TTG v28 shared frame. Loaded last to unify shell geometry without changing page content. */
:root{--ttg-font:Poppins,Arial,Helvetica,sans-serif;--ttg-content:1360px;--ttg-gutter:32px;--ttg-hero-pad:48px;--ttg-section-pad:64px;--ttg-header-height:88px;--ttg-navy:#0b1d2e;--ttg-aqua:#8be3f2}
html{scroll-padding-top:calc(var(--ttg-header-height) + 16px);scrollbar-gutter:stable}
body.u28-site{font-family:var(--ttg-font);margin:0}
body.u28-site :is(button,input,select,textarea,h1,h2,h3,h4,h5,h6,p,a,summary,label,li,dt,dd){font-family:var(--ttg-font)}
body.u28-site .shell{width:100%;max-width:none;margin:0;padding:0}
body.u28-site .layout{display:block;margin:0;padding:0;gap:0}
body.u28-site .content-panel{display:block;min-width:0;margin:0;padding:0;gap:0;border:0;border-radius:0}
body.u28-site .page{margin:0;border:0;border-radius:0;box-shadow:none;width:100%;max-width:none}
body.u28-site .page.live-page{padding:0}
body.u28-site .site-header.ttg17-header{position:sticky;top:0;z-index:50;width:100%;margin:0;border:0;border-bottom:1px solid #284354;border-radius:0;box-shadow:none;background:#0c1b2c;backdrop-filter:none}
body.u28-site .site-header.ttg17-header .nav-wrap{width:100%;max-width:var(--ttg-content);min-height:var(--ttg-header-height);margin:0 auto;padding:12px var(--ttg-gutter);gap:18px}
body.u28-site .site-header .brand{min-width:0;flex:0 0 248px;margin:0;padding:0}
body.u28-site .site-header .brand img{width:100%;max-width:248px;height:auto;margin:0;padding:0;object-fit:contain}
body.u28-site .site-header .nav-links{flex-wrap:nowrap;gap:0;margin:0;padding:0}
body.u28-site .site-header.ttg17-header .nav-links .nav-link,
body.u28-site .site-header .u28-resources-utility{font-family:var(--ttg-font)!important;font-size:14px!important;font-weight:600!important;line-height:1.5!important;padding:12px 8px!important;white-space:nowrap}
body.u28-site .site-header .cta{gap:14px;flex-shrink:0}
body.u28-site .site-header .cta>.btn{min-height:48px;font-family:var(--ttg-font);font-size:14px;line-height:1.45;font-weight:600;padding:12px 20px;border-radius:999px;background:linear-gradient(100deg,#a4e9f4,#63cdf0);color:#082638;border:0;white-space:nowrap}
body.u28-site .site-header .u28-resources-utility{border:0;border-bottom:2px solid transparent;border-radius:0;background:none;color:#d4e6f0}
body.u28-site .site-header .u28-resources-utility:is(:hover,.active){border-bottom-color:var(--ttg-aqua);color:var(--ttg-aqua)}
body.u28-site .u28-mobile-resources{display:none}
body.u28-site .site-header :is(a,button):focus-visible{outline:3px solid #f3c96c;outline-offset:4px}
body.u28-site .u28-page-hero{margin:0;border-radius:0;border-left:0;border-right:0;min-height:0;padding-top:var(--ttg-hero-pad)!important;padding-bottom:var(--ttg-hero-pad)!important}
body.u28-site :is(.t13-wrap,.a12-wrap,.s16-wrap,.w19-wrap,.v26-wrap,.c24-contact-wrap){width:100%;max-width:var(--ttg-content)!important;margin-inline:auto;padding-inline:var(--ttg-gutter)!important}
body.u28-site .c24-contact-wrap{padding-top:var(--ttg-hero-pad);padding-bottom:var(--ttg-hero-pad)}
body.u28-site .u28-page-hero.v7-hero{padding-inline:max(var(--ttg-gutter),calc((100% - var(--ttg-content))/2 + var(--ttg-gutter)))!important}
body.u28-site .u28-page-hero :is(.sv18-copy,.w19-hero-copy,.a12-hero-copy,.s16-hero-copy){padding-top:0!important}
body.u28-site :is(.v7-hero,.a12-hero,.w19-hero,.t13-deliver-hero,.s16-hero,.v26-hero) :is(.v7-kicker,.a12-eyebrow,.w19-kicker,.t13-kicker,.s16-kicker){margin-top:0}
body.u28-site :is(.t13-detail,.a12-section,.s16-section,.w19-featured,.w19-library){padding-block:var(--ttg-section-pad)}
body.u28-site :is(.v7-section,.v7-service-area-grid,.v7-case-layout,.v8-story-content,.v7-close,.v7-section-tail,.c24-story-body,.v26-policy){margin-left:auto;margin-right:auto;width:calc(100% - 2 * var(--ttg-gutter));max-width:calc(var(--ttg-content) - 2 * var(--ttg-gutter))}
body.u28-site :is(.v7-section,.v7-service-area-grid,.v7-case-layout,.v8-story-content,.v7-close,.c24-story-body){margin-top:32px;margin-bottom:32px}
body.u28-site .t19-footer{margin:0;border-radius:0}
body.u28-site .t19-footer-wrap{width:100%;max-width:var(--ttg-content);margin:auto;padding:48px var(--ttg-gutter) 24px}
body.u28-site .t19-footer :is(a,button){font-family:var(--ttg-font)}
body.u28-site .t19-footer nav.c24-footer-policies{display:flex;flex-flow:row wrap;align-items:center;gap:8px 28px;border-top:0;margin-top:0}
body.u28-site .t19-footer nav.c24-footer-policies :is(a,button){display:inline-flex;align-items:center;gap:.3em;min-height:44px;margin:0;padding:6px 0;border:0;border-radius:0;background:none;box-shadow:none;font-family:var(--ttg-font);font-size:14px;font-weight:400;line-height:1.6;letter-spacing:normal;text-decoration:none;color:#bcd6e5;text-align:left;cursor:pointer}
body.u28-site .t19-footer nav.c24-footer-policies :is(a,button):is(:hover,:focus-visible){color:#a4edf7;text-decoration:underline;text-underline-offset:4px}
body.u28-site .t19-footer nav.c24-footer-policies :is(a,button):focus-visible{outline:3px solid #f3c96c;outline-offset:4px}
body.u28-site .t19-footer-routes a{font-size:15px;line-height:1.6;min-height:44px;align-items:center}
@media(max-width:1150px){
 :root{--ttg-header-height:80px;--ttg-gutter:28px;--ttg-hero-pad:40px;--ttg-section-pad:52px}
 body.u28-site .site-header .brand{flex-basis:232px}
 body.u28-site .site-header .cta{margin-left:auto}
 body.u28-site .site-header .u28-resources-utility{display:none}
 body.u28-site .site-header .v7-menu-toggle{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 15px;margin:0}
 body.u28-site .site-header #v7-primary-nav{display:none;position:absolute;left:0;right:0;top:100%;background:#0c1b2c;padding:12px var(--ttg-gutter) 18px;border-bottom:1px solid #284354;box-shadow:0 14px 24px #00101f44;max-height:calc(100svh - var(--ttg-header-height));overflow-y:auto;overscroll-behavior:contain}
 body.u28-site .site-header #v7-primary-nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:3px}
 body.u28-site .site-header #v7-primary-nav.is-open :is(.nav-link,.u28-mobile-resources,.v7-mobile-contact,.t13-mobile-support){display:block;min-height:44px}
}
@media(max-width:640px){
 :root{--ttg-header-height:74px;--ttg-gutter:20px;--ttg-hero-pad:32px;--ttg-section-pad:40px}
 body.u28-site .site-header .nav-wrap{gap:14px;padding-block:10px}
 body.u28-site .site-header .brand{flex:0 1 220px}
 body.u28-site .site-header .brand img{max-width:220px}
 body.u28-site .site-header .cta{display:none}
 body.u28-site .site-header .v7-menu-toggle{margin-left:auto;font-size:14px}
 body.u28-site .t19-footer-wrap{padding-top:36px}
 body.u28-site .t19-footer nav.c24-footer-policies{display:flex;flex-direction:column;align-items:flex-start;gap:0}
 body.u28-site :is(.v7-section,.v7-service-area-grid,.v7-case-layout,.v8-story-content,.v7-close,.c24-story-body){margin-block:24px}
}