/* Compact, consistent presentation across the draft. */
body{color:#173d5b;font-family:"DM Sans",system-ui,-apple-system,"Segoe UI",sans-serif;font-weight:400}
input,select,textarea,button{font-family:inherit}
h1,h2,h3,h4,h5,h6{font-family:"Manrope",system-ui,-apple-system,"Segoe UI",sans-serif}
body main h1,body main h2{font-weight:800;letter-spacing:-.035em}
body main h3,body main h4{font-weight:700;letter-spacing:-.025em}
.gt-main-header a,.gt-btn{font-family:"DM Sans",system-ui,sans-serif;font-weight:700}
.gt-home-redesign h1,.gt-home-redesign h2,.gt-home-redesign h3,.gt-demo-redesign h1,.gt-demo-redesign h2,.gt-demo-redesign h3,.gt-core-redesign .gtc-hero h1{letter-spacing:-.035em}
body main p,body main li{font-weight:400}
body main strong,body main b{font-weight:700}
.gt-shell{max-width:1240px}
.gt-topbar{font-size:16px!important;line-height:1.5}
.gt-topbar .gt-topbar-inner{min-height:46px;padding-block:8px;gap:12px 24px}
.gt-topbar .gt-topbar-item a{font-size:16px!important}
.gt-topbar .gt-topbar-icon{width:18px;height:18px;flex-basis:18px}
@media(max-width:680px){.gt-topbar{font-size:15px!important}.gt-topbar .gt-topbar-item a{font-size:15px!important}.gt-topbar .gt-topbar-inner{min-height:42px}}
.gt-main-header .gt-navrow{gap:20px;min-height:74px}
.gt-main-header .gt-navlinks{gap:18px}
.gt-main-header .gt-navlinks>li>a{font-size:18px!important}
.gt-main-header .gt-header-actions .gt-btn{font-size:17px!important;min-height:48px;padding:12px 22px;line-height:1.25;border-radius:10px}
@media(max-width:1000px){.gt-main-header .gt-header-actions .gt-btn{font-size:16px!important;min-height:46px;padding:10px 16px}}
.gt-section{padding-block:42px}
.gt-core-redesign .gt-section{padding-block:34px}
.gt-section h2,.gth-section-head h2,.gth-support h2{font-size:clamp(27px,3vw,38px);line-height:1.2}
.gt-card,.gtc-card,.gts-card,.gth-audience-card{border-radius:14px}
.gth-hero{padding:44px 0}
.gth-hero-grid{gap:36px}
.gth-hero h1{font-size:clamp(38px,4.8vw,64px);line-height:1.06}
.gth-lead{font-size:18px;line-height:1.6}
.gth-actions{margin:22px 0 16px}
.gth-section-head{gap:26px;margin-bottom:22px}
.gth-audience-card{padding:24px}
.gth-audience-card h3{font-size:26px;margin:14px 0 10px}
.gth-audience-card>p,.gth-audience-card li{line-height:1.6}
.gth-audience-card ul{margin-bottom:18px}
.gth-trust-grid div{padding:16px 20px}
.gth-trust-grid strong{font-size:15px}
.gth-final{padding:32px 0}
.gth-final h2{font-size:clamp(28px,3vw,38px)}
.gt-footer{padding-top:34px}
.gt-footer-grid{gap:24px}
.gt-footer h2{font-size:15px}
.gt-footer a,.gt-footer p{font-size:17px!important;line-height:1.65!important}
.gt-footer p{color:#e0edf5!important}
.gt-footer h2{font-size:18px!important;line-height:1.4}
.gt-footer small,.gt-footer .gt-footer-bottom{font-size:16px!important;line-height:1.6}
.gt-menu-toggle{display:none}
.gt-mobile-login{display:none}
@media(max-width:1000px){.gt-main-header .gt-mobile-login{display:block}.gt-main-header .gt-mobile-login>a{font-weight:700;color:#075e9c}}
@media(min-width:1001px){
.gt-main-header .gt-nav-has-menu>a:after{content:"";display:inline-block;width:8px;height:8px;border-right:2.5px solid #0074ca;border-bottom:2.5px solid #0074ca;transform:rotate(45deg);margin-left:10px;vertical-align:3px;transition:transform .18s ease}
.gt-main-header .gt-nav-has-menu:hover>a:after,.gt-main-header .gt-nav-has-menu:focus-within>a:after{transform:translateY(3px) rotate(225deg)}
}
@media(max-width:1000px){
.gt-main-header .gt-menu-toggle{background:#e5f2fc;border:1px solid #9bc9e9;color:#0074ca}
.gt-main-header .gt-menu-toggle span{font-size:24px;line-height:1;font-weight:800}
.gt-main-header .gt-menu-toggle:hover,.gt-main-header .gt-menu-toggle:focus-visible{background:#d5eafb;border-color:#0074ca}
}
@media(min-width:1001px){
.gt-nav-has-menu{position:relative}
.gt-nav-menu{position:absolute;left:50%;top:calc(100% + 14px);width:310px;max-width:calc(100vw - 32px);padding:8px;background:white;border:1px solid #d6e6f0;border-radius:12px;box-shadow:0 14px 36px rgba(16,47,74,.12);opacity:0;visibility:hidden;transform:translateX(-50%) translateY(6px);z-index:100}
.gt-nav-menu:before{content:"";position:absolute;top:-16px;left:0;right:0;height:16px}
.gt-nav-has-menu:hover .gt-nav-menu,.gt-nav-has-menu:focus-within .gt-nav-menu{opacity:1;visibility:visible;transform:translateX(-50%)}
.gt-main-header .gt-nav-menu a{display:block;padding:12px 15px!important;font-size:17px!important;font-weight:600;line-height:1.45;border-radius:7px}
.gt-main-header .gt-nav-menu a:hover{background:#eef7fc;color:#0074ca}
}
@media(max-width:1000px){
.gt-navlinks.is-open{max-height:calc(100dvh - 110px);overflow-y:auto;overscroll-behavior:contain}
.gt-navlinks .gt-nav-has-menu{position:relative}
.gt-navlinks .gt-nav-has-menu>a{padding-right:52px}
.gt-navlinks .gt-nav-has-menu>a:after{display:none}
.gt-menu-toggle{display:flex;position:absolute;right:2px;top:2px;width:42px;height:42px;align-items:center;justify-content:center;border:0;background:transparent;color:#0b3555;border-radius:8px;cursor:pointer}
.gt-navlinks .gt-nav-has-menu.gt-menu-enhanced .gt-nav-menu{display:none!important}
.gt-navlinks .gt-nav-has-menu.gt-menu-expanded .gt-nav-menu{display:block!important}
.gt-menu-toggle[aria-expanded="true"] span{transform:rotate(180deg)}
.gt-main-header .gt-nav-menu a{min-height:48px;display:flex!important;align-items:center;font-size:17px!important;font-weight:600;padding:12px 14px!important;line-height:1.45!important}
}
@media(max-width:760px){
.gt-section,.gt-core-redesign .gt-section{padding-block:26px!important}
.gth-hero{padding:28px 0}
.gth-hero-grid{gap:24px}
.gth-section-head,.gth-final-grid{grid-template-columns:1fr;gap:16px}
.gth-actions .gt-btn{min-height:44px}
.gth-audience-card{padding:20px}
.gth-window{transform:none}
.gth-float-card{animation:none}
.gt-footer-grid{grid-template-columns:1fr 1fr!important}
.gt-footer-brand{grid-column:1/-1}
.gt-live-support-label{font-size:12px}
}
@media(max-width:420px){.gth-actions{display:grid}.gth-actions .gt-btn{width:100%}.gt-header-logo-lockup{max-width:145px}}
/* Keep contact information and the primary demo action visible on phones. */
@media(max-width:782px){
body .gt-topbar{display:block!important}
.gt-topbar .gt-topbar-inner{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding-block:8px}
.gt-topbar .gt-topbar-inner>div:first-child{display:block!important;font-size:14px;line-height:1.4}
.gt-topbar .gt-contact{display:flex!important;flex-wrap:wrap;gap:4px 14px}
.gt-topbar .gt-contact .gt-topbar-item{display:inline-flex!important}
.gt-topbar .gt-topbar-item a{font-size:14px!important}
.gt-main-header .gt-navrow{display:grid!important;grid-template-columns:minmax(0,1fr) 46px;gap:10px 12px;padding-block:12px;position:relative}
.gt-main-header .gt-brand{grid-column:1;grid-row:1}
.gt-main-header nav,.gt-main-header .gt-header-actions{display:contents!important}
.gt-main-header .gt-header-actions .gt-btn-ghost{display:none!important}
.gt-main-header .gt-header-actions .gt-btn-primary{display:flex!important;grid-column:1/-1;grid-row:2;justify-content:center;align-items:center;width:100%}
.gt-main-header .gt-mobile-toggle{display:inline-flex!important;grid-column:2;grid-row:1;width:46px;height:46px}
.gt-main-header .gt-navlinks{left:0;right:0;top:100%;max-height:65dvh}
}
/* Let enlarged navigation fit without crowding the logo or actions. */
@media(min-width:1400px){.gt-main-header .gt-shell{width:calc(100% - 64px);max-width:1480px}.gt-main-header .gt-brand{flex-shrink:0}}
@media(min-width:1001px) and (max-width:1399px){
.gt-main-header .gt-navrow{flex-wrap:wrap;gap:10px 20px;padding-block:12px}
.gt-main-header .gt-brand{flex-shrink:0}
.gt-main-header .gt-header-actions{margin-left:auto}
.gt-main-header nav{order:3;flex:0 0 100%;width:100%}
.gt-main-header .gt-navlinks{justify-content:center;flex-wrap:wrap;row-gap:12px}
}
@media(max-width:1000px){.gt-main-header .gt-navlinks{top:100%}.gt-main-header .gt-navlinks>li>a{font-size:18px!important}}
/* Readable supporting copy, labels and secondary links. */
body main p,body main li{font-size:18px;line-height:1.65}
/* Larger copy must remain fully visible in compact cards. */
body main .gtc-card p,body main .gtc-path p{display:block;-webkit-line-clamp:unset;overflow:visible}
body main .gth-audience-actions,body main .gtc-actions,body main .gt-hero-actions{flex-wrap:wrap}
@media(max-width:420px){.gt-footer-grid{grid-template-columns:1fr!important}.gt-footer a{overflow-wrap:anywhere}}
body main small,body main .gt-kicker,body main .gth-eyebrow{font-size:16px!important;line-height:1.5!important;letter-spacing:.025em!important}
body .gt-home-redesign .gth-hero--simple .gth-eyebrow{font-size:16px!important;color:#31536b;font-weight:700;letter-spacing:.025em}
body .gth-audience-card>small{color:#075e9c;font-size:16px!important;letter-spacing:.025em!important}
body .gth-audience-actions>a:not(.gt-btn),body main .gt-minor-link,body main .gt-minor-link a{font-size:17px!important;line-height:1.5;font-weight:700;color:#075e9c;text-underline-offset:4px}
body .gth-audience-actions>a:not(.gt-btn){text-decoration:underline}
body main .gth-audience-note,body main .gt-pricing-note,body main .gtd-form-card .gt-form-consent{font-size:16px!important;line-height:1.6!important;color:#365b73}
body .gth-final-actions span{font-size:16px;color:#e2f1fa}
body main .gth-audience-card>p,body main .gth-audience-card li{color:#365b73}
@media(max-width:760px){body main p,body main li{font-size:17px}body .gth-audience-actions{gap:16px}}
/* Keep account-help headings, labels and actions readable. */
body .gt-login-help h3{font-size:21px!important;line-height:1.35;margin:0 0 12px}
body .gt-login-help>a:not(.gt-btn){font-size:16px;line-height:1.5}
body .gt-login-help .gt-btn-primary,body .gt-login-help .gt-btn-primary:visited{color:#fff!important;background:#0869b2!important}
body .gt-login-help .gt-btn-ghost{color:#075e9c!important}
body .gt-login-panel .login-username label,body .gt-login-panel .login-password label,body .gt-login-panel .login-remember label{font-size:16px!important;line-height:1.5}
body .gt-login-panel input[type=text],body .gt-login-panel input[type=password]{font-size:17px;min-height:48px;max-width:100%;box-sizing:border-box}
body .gt-login-help p{margin:0 0 14px}
/* Focused, centered account sign-in experience. */
.gt-account-signin{padding:48px 0 56px;background:#fff}
.gt-account-signin>.gt-shell{max-width:560px}
.gt-account-signin-intro h1{font-size:clamp(32px,4vw,42px);line-height:1.15;margin:12px 0 18px}
.gt-account-signin-intro p{margin:0 0 28px;color:#365b73}
.gt-account-signin-form{padding:0;background:transparent;border:0;box-shadow:none}
.gt-account-signin-form .wppb-user-forms,.gt-account-signin-form form{width:100%;max-width:none}
.gt-account-signin-form input[type=text],.gt-account-signin-form input[type=password]{width:100%!important;min-height:52px;background:#f1f6fa}
.gt-account-signin-form .login-submit input[type=submit]{display:block;width:100%}
.gt-account-signin-form .login-remember{display:flex;align-items:center;gap:10px}
.gt-account-signin-form .login-remember label{margin:0}
.gt-account-recovery{display:flex;justify-content:center;gap:16px 24px;flex-wrap:wrap;padding:20px 0;border-bottom:1px solid #d6e6f0}
.gt-account-recovery a,.gt-account-signin-support a{font-size:17px;font-weight:700;color:#075e9c;text-decoration:underline;text-underline-offset:3px}
.gt-account-signin-support{padding-top:18px}
.gt-account-signin-support p{margin:0 0 10px}
body main .gt-account-access-note{font-size:16px;line-height:1.6;color:#365b73;margin-top:20px}
@media(max-width:760px){.gt-account-signin{padding:30px 0 36px}.gt-account-recovery{gap:16px}}
/* Shared action sizing across marketing, booking, login and contact pages. */
body .gt-btn,body .fluentform .ff-btn-submit,body .gt-login-panel input[type=submit],body .search-form .search-submit,body main form button[type=submit],body main form input[type=submit]{
font-family:"DM Sans",system-ui,sans-serif!important;font-size:17px!important;font-weight:700!important;line-height:1.3!important;min-height:48px!important;padding:12px 22px!important;border-radius:10px!important;box-sizing:border-box;max-width:100%;white-space:normal;text-align:center
}
@media(max-width:760px){
body .gt-btn,body .fluentform .ff-btn-submit,body .gt-login-panel input[type=submit],body .search-form .search-submit,body main form button[type=submit],body main form input[type=submit]{font-size:16px!important;min-height:46px!important;padding:11px 18px!important}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
