/*
Theme Name: Tektel Advisor
Description: GeneratePress child theme for Tektel. Trusted advisor, hometown feel.
Author: Tektel
Template: generatepress
Version: 0.2.0
Text Domain: tektel-advisor
*/
@font-face{font-family:Fraunces;font-weight:600;font-style:normal;font-display:swap;src:url(fonts/fraunces-600.woff2) format("woff2")}
@font-face{font-family:Inter;font-weight:400 600;font-style:normal;font-display:swap;src:url(fonts/inter-latin.woff2) format("woff2")}
@font-face{font-family:"Fraunces Fb";src:local("Georgia");size-adjust:104%;ascent-override:90%;descent-override:23%;line-gap-override:0}
@font-face{font-family:"Inter Fb";src:local("Arial");size-adjust:107%;ascent-override:90%;descent-override:22%;line-gap-override:0}
:root{--tt-bg:#FAF6EF;--tt-alt:#F1EADD;--tt-surf:#FFF;--tt-ink:#1F2430;--tt-soft:#4B5163;--tt-acc:#3F56CA;--tt-accd:#2C3E9E;--tt-warm:#9A4A22;--tt-night:#161B33;--tt-line:#DDD3C1;--tt-ok:#1B6B3A;--tt-err:#B42318;
--tt-head:"Fraunces","Fraunces Fb",Georgia,serif;--tt-body:"Inter","Inter Fb",system-ui,Arial,sans-serif;
--s-1:clamp(.875rem,.85rem + .1vw,.9375rem);--s0:clamp(1rem,.97rem + .2vw,1.125rem);--s1:clamp(1.25rem,1.15rem + .5vw,1.5rem);--s2:clamp(1.5rem,1.3rem + 1vw,2.125rem);--s3:clamp(1.875rem,1.5rem + 1.9vw,3rem);--s4:clamp(2.25rem,1.6rem + 3.2vw,4rem);
--sp-m:clamp(24px,1.2rem + 1.5vw,48px);--sp-l:clamp(48px,2rem + 5vw,112px);--measure:42rem;--wide:72rem;--r:8px;--sh:0 8px 24px rgba(31,36,48,.07);--sh2:0 2px 4px rgba(31,36,48,.08),0 16px 32px rgba(31,36,48,.12);--ease:cubic-bezier(.2,.7,.2,1)}
html{scroll-behavior:smooth}
[id]{scroll-margin-top:96px}
::selection{background:var(--tt-acc);color:#fff}
body,.site,.site-content{background:var(--tt-bg)}
body{color:var(--tt-ink);font-family:var(--tt-body);font-size:var(--s0);line-height:1.65;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:var(--tt-head);color:var(--tt-ink);font-weight:600;line-height:1.15;letter-spacing:-.01em;text-wrap:balance}
h1{font-size:var(--s4)}h2{font-size:var(--s3)}h3{font-size:var(--s1)}
p{text-wrap:pretty}
a{color:var(--tt-accd);text-underline-offset:3px}a:hover{color:var(--tt-acc)}
:focus-visible{outline:3px solid var(--tt-acc);outline-offset:3px;border-radius:4px}
.tt-cta :focus-visible,.site-footer :focus-visible{outline-color:#fff}
.skip-link.screen-reader-text:focus{background:var(--tt-night);color:#fff;padding:12px 24px;border-radius:var(--r);z-index:100000}
a[href^="tel:"]{white-space:nowrap}
@media(max-width:767px){.entry-content a[href^="tel:"],.tt-footer a[href^="tel:"]{display:inline-flex;align-items:center;min-height:44px;font-weight:600}}
.page .site-content{display:block}.page .content-area{width:100%}
.page .inside-article,.page.separate-containers .inside-article{padding:0;background:transparent}
.page .site-main>article,.page .entry-content{margin:0}.page .grid-container{max-width:none}.page .entry-header,.page .sidebar{display:none}
/* header: desktop = header.site-header (sticky); <=768px GP swaps in #mobile-header (sticky/fixed) and hides .site-header */
.site-header{position:sticky;top:0;z-index:50;background:var(--tt-bg)!important;border-bottom:1px solid var(--tt-line);transition:box-shadow .25s var(--ease)}
.admin-bar .site-header{top:32px}
.tt-scrolled .site-header,.tt-scrolled #mobile-header{box-shadow:0 4px 20px rgba(31,36,48,.1)}
.site-header .inside-header{align-items:center;padding:16px 20px;transition:padding .25s var(--ease)}
.tt-scrolled .site-header .inside-header{padding-top:8px;padding-bottom:8px}
.site-header .header-image{height:44px;width:auto;aspect-ratio:1024/241;transition:height .25s var(--ease)}
.tt-scrolled .site-header .header-image{height:36px}
.navigation-branding img{width:auto!important;height:40px!important}
.site-header .main-navigation,.site-header .main-navigation ul ul,.site-header .main-navigation .main-nav ul li a{background:transparent}
.site-header .main-navigation .inside-navigation{display:flex;align-items:center;justify-content:flex-end;gap:8px}
.main-navigation .main-nav ul li a{font-weight:500;color:var(--tt-ink);font-size:.975rem;transition:color .15s}
.main-navigation .main-nav ul li:hover>a,.main-navigation .main-nav ul li[class*="current-menu-"]>a{color:var(--tt-accd);background:transparent}
.site-header .main-navigation ul ul{background:var(--tt-surf);box-shadow:var(--sh);border:1px solid var(--tt-line);border-radius:0 0 var(--r) var(--r)}
.menu-toggle{color:var(--tt-ink);min-height:44px;min-width:44px}
.tt-hcta{display:flex;align-items:center;gap:16px;white-space:nowrap}
.tt-hcta__num{min-height:44px;align-items:center;font-weight:600;color:var(--tt-ink)!important;text-decoration:none;display:inline-flex}
.tt-hcta__ico{display:none!important;align-items:center;justify-content:center;width:44px;height:44px;padding:0!important;line-height:1;border-radius:50%;background:var(--tt-accd);color:#fff!important;flex:none}
.tt-hcta__ico:hover{background:var(--tt-night)}
.tt-hcta__ico svg{display:block;width:20px;height:20px;margin:0;fill:#fff}
.tt-hcta .tt-btn,.main-navigation .tt-hcta a.tt-btn{display:inline-flex;color:#fff!important;text-transform:none;letter-spacing:0;font-size:.95rem;background:var(--tt-accd);border-color:var(--tt-accd)}
.tt-hcta .tt-btn:hover{background:var(--tt-night);border-color:var(--tt-night)}
@media(max-width:1023px){
#mobile-header{background:var(--tt-bg)!important;border-bottom:1px solid var(--tt-line);z-index:10000}
#mobile-header .inside-navigation{display:flex;flex-wrap:nowrap;align-items:center;gap:8px;padding:6px 8px 6px 16px;min-height:64px}
#mobile-header .site-logo{margin-right:auto;flex:none}
#mobile-header .site-logo{line-height:0;display:flex;align-items:center}
#mobile-header .main-nav{display:none}
#mobile-header .tt-hcta{order:2;gap:8px}
#mobile-header .menu-toggle{order:3;margin:0;padding:0 12px;line-height:44px;display:block!important;background:transparent}
#mobile-header .tt-hcta__num{display:none}
}
@media(max-width:599px){#mobile-header .tt-hcta__ico{display:inline-flex!important}#mobile-header .tt-hcta .tt-btn{display:none}}
/* slideout (GP Premium offside menu): dimmed backdrop = the full-screen nav, panel = .inside-navigation sliding in from the right */
@keyframes ttfade{from{opacity:0}}
@keyframes ttslide{from{transform:translateX(100%)}}
.slideout-navigation.main-navigation{background:rgba(22,27,51,.55)!important}
.slideout-navigation.is-open{animation:ttfade .2s ease}
.slideout-navigation .inside-navigation{margin:0 0 0 auto;max-width:none!important;width:min(86vw,360px);height:100%;box-sizing:border-box;background:var(--tt-bg);box-shadow:var(--sh2);padding:12px 12px 32px;display:flex;flex-direction:column;overflow-y:auto}
.slideout-navigation.is-open .inside-navigation{animation:ttslide .28s var(--ease)}
.slideout-navigation button.slideout-exit{align-self:flex-end;min-width:44px;height:44px!important;color:var(--tt-ink);cursor:pointer;background:transparent;border:0;padding:0 12px!important;margin:0 0 8px}
.slideout-navigation.main-navigation .main-nav{width:100%!important;max-width:none;margin:0!important;padding:0!important;text-align:left!important}
.slideout-navigation.main-navigation .main-nav ul{display:block;width:100%;text-align:left}
.slideout-navigation.main-navigation .main-nav ul li{display:block;float:none;width:100%;text-align:left}
.slideout-navigation.main-navigation .main-nav ul li a{display:flex!important;width:100%!important;justify-content:flex-start!important;text-align:left!important;color:var(--tt-ink);font:600 1.25rem/1.3 var(--tt-head);text-transform:none;letter-spacing:0;padding:12px 16px;min-height:48px;align-items:center;border-bottom:1px solid var(--tt-line);box-sizing:border-box}
.slideout-navigation .main-nav ul li a:hover{color:var(--tt-accd)}
.slideout-navigation .dropdown-menu-toggle{margin-left:auto}
.slideout-navigation.main-navigation .main-nav ul ul{padding-left:16px;box-shadow:none;border:0;background:transparent}
.slideout-navigation.main-navigation .main-nav ul ul li a{font:500 1rem/1.3 var(--tt-body)}
/* buttons */
.wp-block-button__link,.tt-btn{font-family:var(--tt-body);font-weight:600;font-size:1rem;background:var(--tt-accd);color:#fff;border:2px solid var(--tt-accd);border-radius:999px;padding:12px 24px;min-height:44px;align-items:center;text-decoration:none;line-height:1.2;transition:background .15s,color .15s,transform .2s var(--ease),box-shadow .2s var(--ease)}
.wp-block-button__link:hover,.wp-block-button__link:focus-visible,.tt-btn:hover{background:var(--tt-night);border-color:var(--tt-night);color:#fff;transform:translateY(-2px);box-shadow:var(--sh2)}
.wp-block-button__link:active,.tt-btn:active{transform:none;box-shadow:none}
.is-style-outline>.wp-block-button__link{background:transparent;color:var(--tt-accd);border-color:var(--tt-accd)}
.is-style-outline>.wp-block-button__link:hover{background:var(--tt-accd);color:#fff}
.tt-btn--s{padding:8px 20px;font-size:.95rem}
/* sections */
.tt-section{padding:var(--sp-l) 20px;margin:0}
:is(.tt-section,.tt-section>.wp-block-group__inner-container)>*{max-width:var(--measure);margin-left:auto;margin-right:auto}
:is(.tt-section,.tt-section>.wp-block-group__inner-container)>.wp-block-columns,:is(.tt-section,.tt-section>.wp-block-group__inner-container)>.wp-block-latest-posts{max-width:var(--wide)}
.tt-section h2{margin-top:0;margin-bottom:24px}
.tt-section p{margin-top:0;margin-bottom:1.1em}
.tt-section .wp-block-buttons{gap:12px;margin-top:24px}
.tt-section ul{padding-left:1.2rem}
.tt-hero{padding-top:clamp(48px,2rem + 6vw,128px);padding-bottom:clamp(48px,2rem + 6vw,128px);background-color:var(--tt-bg);background-image:linear-gradient(95deg,var(--tt-bg) 0,rgba(250,246,239,.94) 48%,rgba(250,246,239,.2) 100%),var(--tt-hero-image,none);background-size:cover;background-position:center right;border-bottom:1px solid var(--tt-line)}
:is(.tt-hero,.tt-hero>.wp-block-group__inner-container)>*{max-width:var(--wide)}
.tt-hero h1{max-width:20ch;margin:0 auto 16px 0}
.tt-hero p{font-size:var(--s1);color:var(--tt-soft);max-width:38rem;line-height:1.5}
:is(.tt-hero,.tt-hero>.wp-block-group__inner-container)>.wp-block-buttons,:is(.tt-hero,.tt-hero>.wp-block-group__inner-container)>p,:is(.tt-hero,.tt-hero>.wp-block-group__inner-container)>h1{margin-left:max(0px,calc((100% - var(--wide))/2))}
.tt-features,.tt-testimonial{background:var(--tt-alt)}
.tt-features .wp-block-columns{gap:24px;margin-bottom:24px}
.tt-card{background:var(--tt-surf);border:1px solid var(--tt-line);border-top:4px solid var(--tt-acc);border-radius:var(--r);padding:24px;box-shadow:var(--sh);transition:transform .25s var(--ease),box-shadow .25s var(--ease)}
.tt-card:hover{transform:translateY(-4px);box-shadow:var(--sh2)}
.tt-card h3{margin:0 0 8px}.tt-card p{margin:0;color:var(--tt-soft);font-size:.975rem}
:is(.tt-story,.tt-story>.wp-block-group__inner-container)>h2::before{content:"Case story";display:block;font:600 var(--s-1)/1 var(--tt-body);letter-spacing:.12em;text-transform:uppercase;color:var(--tt-warm);margin-bottom:12px}
.tt-story p:first-of-type{font-family:var(--tt-head);font-size:var(--s1);line-height:1.5}
:is(.tt-testimonial,.tt-testimonial>.wp-block-group__inner-container)>h2{max-width:var(--wide)}
.tt-quotes{display:grid;gap:24px;grid-template-columns:1fr;max-width:var(--wide);margin:0 auto}
@media(min-width:900px){.tt-quotes{grid-template-columns:repeat(3,1fr)}.tt-quotes--1{grid-template-columns:1fr;max-width:var(--measure)}.tt-quotes--2{grid-template-columns:repeat(2,1fr)}}
.tt-quote{background:var(--tt-surf);border:1px solid var(--tt-line);border-top:4px solid var(--tt-warm);border-radius:var(--r);padding:24px;margin:0;box-shadow:var(--sh);display:flex;flex-direction:column;justify-content:space-between;gap:16px;text-align:left}
.tt-quote p{font:600 var(--s1)/1.4 var(--tt-head);color:var(--tt-ink);margin:0}
.tt-quote cite{display:block;font-style:normal;font-family:var(--tt-body);font-size:var(--s-1);line-height:1.5;color:var(--tt-soft)}
.tt-quote cite .tt-who{display:block;font-weight:600;color:var(--tt-ink);font-size:1rem}
.tt-quote cite .tt-role{display:block}
.tt-faq details{border-bottom:1px solid var(--tt-line);padding:8px 0;max-width:var(--measure);margin:0 auto;interpolate-size:allow-keywords}
.tt-faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:44px;padding:8px 0;font:600 var(--s1)/1.3 var(--tt-head)}
.tt-faq summary::-webkit-details-marker{display:none}
.tt-faq summary::after{content:"";flex:none;width:10px;height:10px;border:solid var(--tt-accd);border-width:0 2px 2px 0;transform:rotate(45deg);transition:transform .25s var(--ease)}
.tt-faq details[open] summary::after{transform:rotate(-135deg)}
.tt-faq details::details-content{block-size:0;overflow:hidden;transition:block-size .3s var(--ease),content-visibility .3s allow-discrete}
.tt-faq details[open]::details-content{block-size:auto}
.tt-faq details p{margin:0 0 16px;color:var(--tt-soft)}
.tt-cta{background:var(--tt-night);color:var(--tt-bg);text-align:center}
.tt-cta h2,.tt-cta p{color:var(--tt-bg)}.tt-cta a:not(.wp-block-button__link){color:#fff}
.tt-cta .wp-block-buttons{justify-content:center}
.tt-cta .wp-block-button__link{background:var(--tt-bg);color:var(--tt-night);border-color:var(--tt-bg)}
.tt-cta .wp-block-button__link:hover{background:#fff;border-color:#fff;color:var(--tt-night)}
.tt-cta .is-style-outline>.wp-block-button__link{background:transparent;color:var(--tt-bg)}
.tt-cta .is-style-outline>.wp-block-button__link:hover{background:var(--tt-bg);color:var(--tt-night)}
:is(.tt-features,.tt-features>.wp-block-group__inner-container)>h2,.tt-latest-wrap>h2{max-width:var(--wide)}
.wp-block-latest-posts.tt-latest{display:grid;gap:24px;padding:0;list-style:none;grid-template-columns:1fr}
@media(min-width:768px){.wp-block-latest-posts.tt-latest{grid-template-columns:repeat(3,1fr)}}
.tt-latest li{background:var(--tt-surf);border:1px solid var(--tt-line);border-radius:var(--r);overflow:hidden;margin:0;display:flex;flex-direction:column;transition:transform .25s var(--ease),box-shadow .25s var(--ease)}
.tt-latest li:hover{transform:translateY(-4px);box-shadow:var(--sh2)}
.tt-latest .wp-block-latest-posts__featured-image img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;display:block}
.tt-latest a.wp-block-latest-posts__post-title{display:block;font:600 var(--s1)/1.25 var(--tt-head);color:var(--tt-ink);text-decoration:none;padding:16px 24px 0}
.tt-latest a.wp-block-latest-posts__post-title{min-height:44px}
.tt-latest a.wp-block-latest-posts__post-title:hover{color:var(--tt-accd)}
.tt-latest .wp-block-latest-posts__post-date{padding:8px 24px 0;font-size:var(--s-1);color:var(--tt-soft)}
.tt-latest .wp-block-latest-posts__post-excerpt{padding:8px 24px 24px;font-size:.95rem;color:var(--tt-soft)}
/* reveal (JS adds .tt-js and .tt-rv/.in; reduced motion never gets .tt-js) */
.tt-js .tt-rv{opacity:0;transform:translateY(16px);transition:opacity .35s var(--ease),transform .35s var(--ease);transition-delay:calc(var(--i,0)*70ms)}
.tt-js .tt-rv.in{opacity:1;transform:none}
/* footer */
.site-footer,.site-info{background:var(--tt-night);color:var(--tt-bg)}
.site-info{padding:0;text-align:left}.site-footer a{color:#fff}
.tt-footer{max-width:var(--wide);margin:0 auto;padding:var(--sp-m) 20px 24px}
.tt-footer__grid{display:grid;gap:32px;grid-template-columns:1fr}
@media(min-width:768px){.tt-footer__grid{grid-template-columns:1.4fr 1fr 1fr 1fr}}
.tt-footer h2{font:600 var(--s-1)/1.2 var(--tt-body);letter-spacing:.12em;text-transform:uppercase;color:#C9CCE6;margin:0 0 8px}
.tt-footer ul{list-style:none;margin:0;padding:0}
.tt-footer li a,.tt-footer p a{display:inline-flex;align-items:center;min-height:44px}
.tt-footer p{margin:0 0 8px;color:var(--tt-bg);font-size:.95rem}
.tt-footer__tag{font-family:var(--tt-head);font-size:var(--s1)!important;line-height:1.3;color:#fff!important}
.tt-footer__legal{border-top:1px solid rgba(250,246,239,.2);margin-top:24px;padding-top:16px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px}
.tt-footer__legal p{color:#C9CCE6;font-size:var(--s-1)}
.tt-top{position:fixed;right:16px;bottom:16px;width:44px;height:44px;border-radius:50%;border:0;background:var(--tt-accd);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--sh2);opacity:0;transform:translateY(12px);pointer-events:none;transition:opacity .25s,transform .25s var(--ease),background .15s;z-index:60}
.tt-top.is-on{opacity:1;transform:none;pointer-events:auto}
/* 404 */
.error404 .site-main{max-width:var(--measure);margin:0 auto;padding:var(--sp-l) 20px;text-align:center}
/* Gravity Forms */
.gform_wrapper{--gf-color-primary:var(--tt-accd);--gf-radius:var(--r);--gf-ctrl-border-color:#8B8472;--gf-ctrl-radius:var(--r)}
.gform_wrapper .gfield_label,.gform_wrapper legend.gfield_label{font:600 .95rem/1.4 var(--tt-body);color:var(--tt-ink)}
.gform_wrapper input:not([type=checkbox],[type=radio],[type=submit]),.gform_wrapper textarea,.gform_wrapper select{font:inherit;min-height:48px;padding:12px 16px;background:var(--tt-surf);border:1px solid #8B8472;border-radius:var(--r);color:var(--tt-ink);transition:border-color .15s,box-shadow .15s}
.gform_wrapper input:focus,.gform_wrapper textarea:focus,.gform_wrapper select:focus{border-color:var(--tt-acc);box-shadow:0 0 0 3px rgba(63,86,202,.25);outline:0}
.gform_wrapper input:user-invalid,.gform_wrapper textarea:user-invalid,.gform_wrapper .gfield_error input,.gform_wrapper .gfield_error textarea{border-color:var(--tt-err);box-shadow:0 0 0 3px rgba(180,35,24,.15)}
.gform_wrapper input:user-valid:not([type=submit]):not(:placeholder-shown){border-color:var(--tt-ok)}
.gform_wrapper .gfield_validation_message,.gform_wrapper .validation_message,.gform_wrapper .gform_validation_errors h2{color:var(--tt-err);font-size:.95rem;font-weight:600}
.gform_wrapper .gform_validation_errors{border:1px solid var(--tt-err);border-radius:var(--r);background:#FEF3F2}
.gform_wrapper .gform_button,.gform_wrapper input[type=submit]{background:var(--tt-accd);color:#fff;border:2px solid var(--tt-accd);border-radius:999px;padding:12px 32px;min-height:48px;font-weight:600;cursor:pointer;transition:background .15s,transform .2s var(--ease),box-shadow .2s var(--ease)}
.gform_wrapper .gform_button:hover{background:var(--tt-night);transform:translateY(-2px);box-shadow:var(--sh2)}
.gform_confirmation_message{position:relative;background:#FFF8EC;border:1px solid #E8D5B0;border-left:6px solid var(--tt-ok);border-radius:var(--r);padding:24px 24px 24px 80px;color:var(--tt-ink);box-shadow:var(--sh);font-size:1.0625rem}
.gform_confirmation_message::before{content:"";position:absolute;left:24px;top:24px;width:40px;height:40px;border-radius:50%;background:var(--tt-ok) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/24px no-repeat}
@media(max-width:420px){.header-image,.tt-scrolled .header-image{height:34px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,::before,::after{animation:none!important;transition:none!important}}
@media print{.site-header,.tt-top,.tt-footer__grid,.tt-hcta,.main-navigation,.wp-block-buttons,.tt-cta{display:none!important}body,.site,.site-content,.tt-section{background:#fff!important;color:#000!important}.tt-section{padding:16px 0}a{color:#000}a[href^="http"]::after{content:" (" attr(href) ")";font-size:.85em;word-break:break-all}.tt-js .tt-rv{opacity:1;transform:none}}
/* Audit fixes 2026-11-10: 44px tap targets everywhere, readable logo link, roomier meta links, bigger checkboxes */
.main-navigation .main-nav ul li a{min-width:44px;text-align:center}
.main-navigation .main-nav ul ul li a{min-height:44px;display:flex;align-items:center}
.site-logo a,.site-branding a{display:inline-flex;align-items:center;min-height:44px}
.tt-top{width:44px!important;height:44px!important}
.entry-meta a,.cat-links a,.tags-links a,.comments-link a{display:inline-block;padding:12px 4px;margin:-12px 0}
.gform_wrapper input[type=checkbox],.gform_wrapper input[type=radio]{width:20px;height:20px;accent-color:var(--tt-accd)}
.gform_wrapper .gchoice label{min-height:44px;display:inline-flex;align-items:center}
.tt-footer a{display:inline-flex;align-items:center;min-height:44px;min-width:44px}
/* Round 1 audit fixes */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.tt-top svg{width:20px;height:20px;fill:none;stroke:#fff;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;flex:none}
.page .featured-image,.page .page-header-image,.page .page-header-image-single{display:none}
.entry-meta,.entry-meta a,.byline,.posted-on,.cat-links,.tags-links{color:var(--tt-soft)}
@media(max-width:768px){.tt-hero{background-image:none}.tt-has-hero-img .tt-hero::after{content:"";display:block;aspect-ratio:16/9;margin-top:32px;border-radius:var(--r);background:var(--tt-alt) var(--tt-hero-image) center/cover no-repeat;box-shadow:var(--sh)}}
@media print{.site-header,#mobile-header,.slideout-navigation,.footer-bar,.tt-footer__grid>div:nth-child(n+3){display:none!important}.tt-footer__grid{display:block}.site-info a::after,.tt-footer a::after{content:none!important}.site-info,.site-footer,.tt-footer,.tt-footer p,.tt-footer h2,.tt-footer__tag,.tt-footer__legal p{background:#fff!important;color:#000!important}.tt-footer a{color:#000!important;text-decoration:none}.tt-footer h2{text-transform:none}}
/* Round 3: beat GP Premium button/typography defaults seen on real staging markup */
h1,h2,h3,h4{text-transform:none}
.wp-block-buttons .wp-block-button .wp-block-button__link,.gform_wrapper .gform_button{text-transform:none;letter-spacing:0;font-size:1rem;background:var(--tt-accd);border-color:var(--tt-accd);color:#fff}
.wp-block-buttons .wp-block-button .wp-block-button__link:hover{background:var(--tt-night);border-color:var(--tt-night);color:#fff}
.wp-block-buttons .wp-block-button.is-style-outline .wp-block-button__link{background:transparent;color:var(--tt-accd)}
.wp-block-buttons .wp-block-button.is-style-outline .wp-block-button__link:hover{background:var(--tt-accd);color:#fff}
.tt-cta .wp-block-buttons .wp-block-button .wp-block-button__link{background:var(--tt-bg);color:var(--tt-night);border-color:var(--tt-bg)}
.tt-cta .wp-block-buttons .wp-block-button .wp-block-button__link:hover{background:#fff;border-color:#fff;color:var(--tt-night)}
.tt-cta .wp-block-buttons .is-style-outline .wp-block-button__link{background:transparent;color:var(--tt-bg);border-color:var(--tt-bg)}
.tt-cta .wp-block-buttons .is-style-outline .wp-block-button__link:hover{background:var(--tt-bg);color:var(--tt-night)}
.tt-hcta .tt-btn{align-self:center;min-height:44px}
.tt-hcta .tt-btn,.main-navigation .tt-hcta a.tt-btn{line-height:1.2;height:auto;padding-top:10px;padding-bottom:10px}
.tt-section>.wp-block-group__inner-container{max-width:none!important;width:100%;margin:0!important;padding:0!important}
.tt-btn,.wp-block-button__link,.tt-hcta__ico{box-sizing:border-box}
.tt-testimonial .tt-quotes{max-width:var(--wide);width:100%}
@media(min-width:900px){.tt-testimonial .tt-quotes--1{max-width:var(--measure)}}
.tt-testimonial .tt-quote{margin:0;padding:24px;border-left:1px solid var(--tt-line);quotes:none}
.tt-testimonial .tt-quote p{max-width:none;margin:0}
.site-info,.site-info .footer-bar a,.tt-footer,.tt-footer h2{text-transform:none}
.tt-footer h2{text-transform:uppercase}
.footer-bar .widget_media_image img{filter:brightness(0) invert(1)}
.error404 .inside-article{text-align:center;max-width:44rem;margin:0 auto}
.tt-404-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:24px}
.tt-404-actions .tt-btn{display:inline-flex}
.tt-btn--ghost{background:transparent;color:var(--tt-accd)}
.tt-btn--ghost:hover{background:var(--tt-accd);color:#fff}
.tt-404-links{color:var(--tt-soft);margin-top:16px}
.error404 #primary,.error404 .content-area,.search #primary{width:100%;float:none;margin:0 auto}
.error404 .inside-article{margin:0 auto;max-width:44rem}
.search-form{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}
.search-form .search-field{min-height:44px;padding:10px 16px;border:1px solid var(--tt-line);border-radius:999px;background:#fff;color:var(--tt-ink)}
.search-form .search-submit{min-height:44px;padding:10px 20px;border:0;border-radius:999px;background:var(--tt-accd);color:#fff;font-weight:600;text-transform:none;cursor:pointer}
.search-form .search-submit:hover{background:var(--tt-ink)}
.error404 .site-main,.search .site-main{margin-left:auto!important;margin-right:auto!important}
.tt-slide-cta{padding:24px 40px;border-top:1px solid var(--tt-line);margin-top:8px}.tt-slide-cta .tt-btn{display:inline-flex;width:100%;justify-content:center}.tt-slide-cta p{margin:8px 0 0;font-size:.9rem;color:var(--tt-soft);text-align:center}
.slideout-navigation .tt-slide-cta a.tt-btn{color:#fff!important;text-transform:none!important;letter-spacing:0!important;font-family:var(--tt-body)!important;font-weight:600;font-size:1rem!important;width:100%!important;padding:12px 20px!important;line-height:1.2!important;justify-content:center}
/* Logo, Phil's iPhone 2026-11-11 showed it squashed (iOS Safari flex sizing). Explicit box + contain = never distorted in any engine. 1656x389 = 4.257:1 */
img.is-logo-image{object-fit:contain!important;max-width:none!important;max-height:none!important;min-height:0!important;flex:none!important;align-self:center!important}
#mobile-header img.is-logo-image{width:170px!important;height:40px!important}
@media (min-width:769px){.site-header img.is-logo-image{width:187px!important;height:44px!important}#site-navigation img.is-logo-image,.navigation-branding img.is-logo-image{width:170px!important;height:40px!important}}
/* ===== Round 4: one container grid, one clean header row, split hero ===== */
.tt-section{padding-left:max(24px,calc((100% - var(--wide))/2));padding-right:max(24px,calc((100% - var(--wide))/2))}
.tt-section>.wp-block-group__inner-container>*,.tt-section>:not(.wp-block-group__inner-container){max-width:var(--measure);margin-left:0!important;margin-right:0!important}
.tt-section .wp-block-columns,.tt-section .wp-block-latest-posts,.tt-section .tt-quotes,.tt-testimonial .tt-quotes{max-width:none!important;width:100%}
.tt-features h2,.tt-testimonial h2,.tt-latest-wrap h2{max-width:none!important}
.tt-testimonial .tt-quotes--1{max-width:var(--measure)!important}
.tt-faq details{margin:0}
.tt-cta .wp-block-group__inner-container>*{margin-left:auto!important;margin-right:auto!important}
.tt-hero{background-image:none}
.tt-hero .wp-block-group__inner-container>*{max-width:36rem}
.tt-hero h1{max-width:none}
@media(min-width:769px){.tt-has-hero-img .tt-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,5vw,72px);align-items:center}
.tt-has-hero-img .tt-hero::after{content:"";display:block;aspect-ratio:4/3;border-radius:var(--r);background:var(--tt-alt) var(--tt-hero-image) center/cover no-repeat;box-shadow:var(--sh2)}}
/* header: container-aligned; phone number text only from 1200px */
.site-header .inside-header.grid-container{max-width:calc(var(--wide) + 48px);width:100%;margin:0 auto;box-sizing:border-box;padding-left:24px;padding-right:24px;flex-wrap:nowrap}
.site-header .main-navigation .main-nav ul li a{padding-left:14px;padding-right:14px}
@media(max-width:1199px){.tt-hcta__num{display:none!important}}
/* below 1024px the mobile header + slideout are used (GP only switches at 768, so force it) */
@media(min-width:769px) and (max-width:1023px){.site-header{display:none!important}#mobile-header{display:block!important;position:sticky;top:0}.admin-bar #mobile-header{top:32px}#mobile-header .main-nav{display:none}}
#mobile-header .inside-navigation{max-width:calc(var(--wide) + 48px);margin:0 auto;box-sizing:border-box;padding:6px 24px}
#mobile-header .menu-toggle{padding:0 8px;font-size:13px}
#mobile-header{--lw:clamp(150px,52vw,190px)}
#mobile-header .site-logo img.is-logo-image{width:var(--lw)!important;height:calc(var(--lw)/4.2578)!important}
@media(max-width:600px){#mobile-header .inside-navigation{padding:6px 12px 6px 16px;gap:4px}}
@media(min-width:1024px){.site-header .inside-header.grid-container{justify-content:space-between}.site-header .main-navigation{margin-left:auto}.site-header .main-navigation .inside-navigation{justify-content:flex-end}.site-header .main-nav{order:1}.site-header .tt-hcta{order:2;margin-left:16px}}
#mobile-header .site-logo{margin-left:0}
.site-header .site-logo,.site-header .inside-header>.site-logo{margin-left:0}
#mobile-header .tt-hcta__num{display:none!important}
.main-navigation .inside-navigation::before,.main-navigation .inside-navigation::after,.site-header .inside-header::before,.site-header .inside-header::after{display:none!important}
@media(max-width:600px){#mobile-header .inside-navigation{padding-left:24px;padding-right:8px}}
@media(max-width:400px){#mobile-header .menu-toggle{padding:0 4px}#mobile-header{--lw:clamp(150px,50vw,190px)}}
img.is-logo-image,#mobile-header .site-logo img.is-logo-image{padding:0!important}
@media(min-width:1024px){#site-navigation .main-nav{order:1!important}#site-navigation .tt-hcta{order:2!important;margin-left:12px}}
.tt-hcta__num{line-height:44px}
