/* Tex Roof theme — generated tokens */
:root{
  --navy-900:#19243D;--navy-700:#2A3A5E;--navy-100:#E8EBF2;
  --orange-500:#EE611C;--orange-600:#C94E10;--orange-100:#FDECE2;
  --gray-50:#F6F7F9;--gray-600:#4B5563;--success:#1F8A4C;--white:#fff;
  --font-head:Barlow,'Helvetica Neue',Arial,sans-serif;--font-body:Inter,system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --wrap:1200px;--radius:8px;--radius-lg:12px;--shadow:0 4px 20px rgba(25,36,61,.08);--shadow-lg:0 16px 48px rgba(25,36,61,.16);
  --sec:clamp(4rem,8vw,6rem);--header-h:76px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{overflow-x:clip}
body{margin:0;font-family:var(--font-body);color:var(--navy-900);background:#fff;line-height:1.6;-webkit-font-smoothing:antialiased}
img,svg,video{max-width:100%;height:auto;display:block}
a{color:var(--orange-600)}a:hover{color:var(--navy-900)}
h1,h2,h3,h4{font-family:var(--font-head);font-weight:800;line-height:1.12;letter-spacing:-.01em;margin:0 0 .5em;text-wrap:balance}
h1{font-size:clamp(2.25rem,4.5vw,3.25rem)}h2{font-size:clamp(1.875rem,3.4vw,2.5rem)}h3{font-size:clamp(1.375rem,2vw,1.625rem);font-weight:700;line-height:1.25}
p{margin:0 0 1.1em}
:focus-visible{outline:3px solid var(--orange-500);outline-offset:3px;border-radius:4px}
.tr-skip{position:absolute;left:-999px;top:8px;background:var(--navy-900);color:#fff;padding:.6rem 1rem;z-index:1000;border-radius:var(--radius)}
.tr-skip:focus{left:8px}
.tr-ico{width:1.25em;height:1.25em;flex:none}
.tr-wrap{width:min(var(--wrap),100% - 2.5rem);margin-inline:auto}
@media (max-width:600px){.tr-wrap{width:calc(100% - 2rem)}}

/* WP layout resets: our sections manage their own padding */
.tr-main{padding:0}
body{padding-left:0!important;padding-right:0!important}
.has-global-padding{padding-left:0!important;padding-right:0!important}
.wp-block-post-content>*{margin-block:0}
.entry-content>*+*{margin-block-start:0}

/* ---------- Buttons ---------- */
.btn,.wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;background:var(--orange-500);color:#fff;font-weight:700;font-size:1.1875rem;line-height:1.2;padding:.9rem 1.6rem;border-radius:var(--radius);text-decoration:none;border:2px solid transparent;cursor:pointer;transition:background .15s,color .15s,transform .05s}
.btn:hover,.wp-block-button__link:hover{background:var(--orange-600);color:#fff}
.btn-outline{font-weight:600}
.btn:active{transform:translateY(1px)}
.btn-navy{background:var(--navy-900);color:#fff}.btn-navy:hover{background:var(--navy-700);color:#fff}
.btn-outline{background:transparent;border-color:var(--navy-900);color:var(--navy-900)}.btn-outline:hover{background:var(--navy-900);color:#fff}
.btn-white{background:#fff;color:var(--navy-900)}.btn-white:hover{background:var(--navy-100);color:var(--navy-900)}
.btn-block{width:100%}
.btn-lg{font-size:1.25rem;padding:1.05rem 2rem}
.tr-inline-call{font-weight:600;white-space:nowrap}

/* ---------- Header ---------- */
header.wp-block-template-part,.tr-header{position:sticky;top:0;z-index:100}
.tr-header{background:#fff;border-bottom:1px solid var(--navy-100)}
.admin-bar header.wp-block-template-part,.admin-bar .tr-header{top:32px}
@media (max-width:782px){.admin-bar header.wp-block-template-part,.admin-bar .tr-header{top:46px}}
.tr-header-in{overflow:visible;min-width:0}
.tr-header-in{display:flex;align-items:center;gap:1.5rem;min-height:var(--header-h)}
.tr-logo{display:block;width:190px;flex:none}.tr-logo img{width:100%;height:auto}
.tr-nav{margin-left:auto;min-width:0}
.tr-menu,.tr-sub{list-style:none;margin:0;padding:0}
.tr-menu{display:flex;gap:.25rem;align-items:center}
.tr-menu>li{position:relative}
.tr-menu a,.tr-nav-toggle{display:flex;align-items:center;gap:.25rem;padding:.6rem .8rem;color:var(--navy-900);text-decoration:none;font-weight:500;font-size:.98rem;border-radius:6px;background:none;border:0;font-family:inherit;cursor:pointer;white-space:nowrap}
.tr-menu a:hover,.tr-nav-toggle:hover{background:var(--gray-50)}
.tr-nav-toggle .tr-ico{transition:transform .2s}
.has-sub.is-open .tr-nav-toggle .tr-ico{transform:rotate(180deg)}
.tr-sub{position:absolute;top:100%;left:0;min-width:260px;background:#fff;box-shadow:var(--shadow-lg);border-radius:var(--radius-lg);padding:.5rem;display:none;border-top:3px solid var(--orange-500)}
.has-sub.is-open>.tr-sub{display:block}
.tr-sub a{padding:.55rem .8rem;font-weight:500}
.tr-sub-hub a{font-weight:600;border-bottom:1px solid var(--navy-100);border-radius:6px 6px 0 0;margin-bottom:.25rem}
.tr-header-cta{display:flex;align-items:center;gap:1rem;margin-left:.5rem;flex:none}
.tr-header-cta .btn{white-space:nowrap}
.tr-header-phone{display:flex;align-items:center;gap:.6rem;color:var(--navy-900);text-decoration:none;font-family:var(--font-head);font-weight:800;font-size:1.3rem;line-height:1.05;white-space:nowrap;flex:none;padding:.5rem .9rem;border:2px solid var(--orange-500);border-radius:var(--radius);transition:background .15s,color .15s}
.tr-header-phone:hover{background:var(--orange-500);color:#fff}
.tr-header-phone:hover .tr-ico,.tr-header-phone:hover small{color:#fff}
.tr-header-phone .tr-ico{color:var(--orange-500);width:1.6rem;height:1.6rem}
.tr-header-phone small{display:block;font-family:var(--font-body);font-weight:500;font-size:.72rem;color:var(--gray-600)}
.tr-burger{display:none;width:44px;height:44px;border:0;background:none;padding:10px;cursor:pointer;flex-direction:column;justify-content:space-between}
.tr-burger span{display:block;height:3px;background:var(--navy-900);border-radius:2px;transition:transform .2s,opacity .2s}
.tr-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(10px) rotate(45deg)}
.tr-burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.tr-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-10px) rotate(-45deg)}
.tr-nav-mobile-cta{display:none}
@media (max-width:1500px){
  .tr-menu a,.tr-nav-toggle{padding:.6rem .6rem;font-size:.92rem}
  .tr-header-phone{font-size:1.15rem}
  .tr-logo{width:160px}
}
@media (max-width:1300px){
  .tr-header-in{gap:1rem}
  .tr-header-cta{gap:.6rem}
}
@media (max-width:1100px){
  .tr-menu a,.tr-nav-toggle{padding:.6rem .45rem;font-size:.88rem}
}
@media (max-width:1200px){
  .tr-burger{display:flex}
  .tr-header-phone{font-size:1.1rem;padding:.4rem .7rem}
  .tr-header-phone small{display:none}
  .tr-nav{position:fixed;inset:var(--header-h) 0 0 0;background:#fff;overflow:auto;padding:1rem 1.25rem 6rem;display:none;margin:0}
  .tr-nav.is-open{display:block}
  .tr-menu{flex-direction:column;align-items:stretch;gap:0}
  .tr-menu a,.tr-nav-toggle{padding:.9rem .5rem;font-size:1.1rem;border-bottom:1px solid var(--navy-100);border-radius:0;width:100%;justify-content:space-between}
  .tr-sub{position:static;box-shadow:none;border:0;padding:0 0 .5rem .75rem;min-width:0}
  .tr-sub a{font-size:1rem;border-bottom:0;padding:.6rem .5rem}
  .tr-nav-mobile-cta{display:grid;gap:.75rem;margin-top:1.25rem}
  body.tr-nav-open{overflow:hidden}
}

/* Mobile sticky bar */
.tr-mobile-bar{display:none}
@media (max-width:1200px){
  .tr-mobile-bar{display:grid;grid-template-columns:1fr 1fr;position:fixed;bottom:0;left:0;right:0;z-index:90;box-shadow:0 -4px 20px rgba(25,36,61,.15);padding-bottom:env(safe-area-inset-bottom)}
  .tr-mb-call,.tr-mb-cta{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem;font-weight:600;font-size:1.05rem;text-decoration:none}
  .tr-mb-call{background:var(--navy-900);color:#fff}
  .tr-mb-cta{background:var(--orange-500);color:#fff;font-weight:700}
  body{padding-bottom:64px}
}

/* ---------- Breadcrumbs ---------- */
.tr-crumbs-wrap{width:min(var(--wrap),100% - 2.5rem);margin:1rem auto 0}
.tr-crumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.35rem;font-size:.9rem;color:var(--gray-600)}
.tr-crumbs li+li::before{content:"/";margin-right:.35rem;color:var(--navy-100)}
.tr-crumbs a{color:var(--gray-600);text-decoration:none}.tr-crumbs a:hover{color:var(--navy-900);text-decoration:underline}
.tr-home .tr-crumbs-wrap{display:none}

/* ---------- Sections ---------- */
.tr-section{padding-block:var(--sec)}
.tr-section-tight{padding-block:calc(var(--sec) * .6)}
.tr-bg-gray{background:var(--gray-50)}
.tr-bg-navy{background:var(--navy-900);color:#fff}
.tr-bg-navy h2,.tr-bg-navy h3{color:#fff}
.tr-bg-navy a:not(.btn){color:#fff}
.tr-bg-tint{background:var(--navy-100)}
.tr-section-head{max-width:720px;margin-bottom:2.5rem}
.tr-section-head.is-center{margin-inline:auto;text-align:center}
.tr-lead{font-size:clamp(1.125rem,1.6vw,1.375rem);color:var(--gray-600);line-height:1.5}
.tr-bg-navy .tr-lead{color:rgba(255,255,255,.82)}
.tr-prose{max-width:760px}
.tr-prose h2{margin-top:2.5rem}.tr-prose h3{margin-top:2rem}
.tr-prose ul,.tr-prose ol{padding-left:1.25rem}.tr-prose li{margin-bottom:.4rem}
.tr-two{display:grid;grid-template-columns:1.1fr .9fr;gap:3.5rem;align-items:center}
.tr-two.is-reverse>:first-child{order:2}
.tr-two img{border-radius:var(--radius-lg);aspect-ratio:4/3;object-fit:cover;width:100%}
@media (max-width:900px){.tr-two{grid-template-columns:1fr;gap:2rem}.tr-two.is-reverse>:first-child{order:0}}

/* ---------- Hero ---------- */
.tr-hero{position:relative;background:var(--navy-900);color:#fff;isolation:isolate;overflow:hidden}
.tr-hero-bg{position:absolute;inset:0;z-index:-1}
.tr-hero-bg img{width:100%;height:100%;object-fit:cover;object-position:center 30%}
.tr-hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(25,36,61,.94) 0%,rgba(25,36,61,.82) 45%,rgba(25,36,61,.55) 100%)}
.tr-hero-in{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,440px);gap:3rem;align-items:center;padding-block:clamp(3.5rem,7vw,6rem)}
.tr-hero h1{color:#fff;margin-bottom:1rem;font-size:clamp(2.25rem,4.8vw,3.5rem)}
.tr-hero .tr-lead{color:rgba(255,255,255,.88);max-width:560px;margin-bottom:1.75rem}
.tr-hero-actions{display:flex;flex-wrap:wrap;gap:.9rem;margin-bottom:2rem}
.tr-hero-actions .btn-outline{border-color:rgba(255,255,255,.7);color:#fff}
.tr-hero-actions .btn-outline:hover{background:#fff;color:var(--navy-900);border-color:#fff}
.tr-hero-actions .btn-outline .tr-ico{color:var(--orange-500)}
.tr-hero .tr-trust{--trust-color:#fff}
.tr-hero-form{position:relative}
/* the roofline: one deliberate accent — orange peak above the form card */
.tr-hero-form::before{content:"";position:absolute;left:50%;top:-22px;width:64px;height:64px;transform:translateX(-50%) rotate(45deg);background:var(--orange-500);border-radius:6px 6px 0 0;clip-path:polygon(0 0,100% 0,100% 45%,55% 45%,45% 45%,0 45%);z-index:2}
.tr-hero-form .tr-form{position:relative;z-index:1}
@media (max-width:900px){
  .tr-hero-in{grid-template-columns:1fr;gap:2.5rem}
  .tr-hero-form{margin-top:1rem}
}

/* ---------- Trust bar ---------- */
.tr-trust{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.75rem 2rem;font-weight:500;font-size:.98rem;color:var(--trust-color,var(--navy-900))}
.tr-trust li{display:flex;align-items:center;gap:.5rem}
.tr-trust .tr-ico{color:var(--orange-500);width:1.35rem;height:1.35rem}
.tr-trustbar{background:var(--gray-50);border-block:1px solid var(--navy-100);padding-block:1rem}
.tr-trustbar .tr-trust{justify-content:space-between}
@media (max-width:700px){.tr-trustbar .tr-trust{display:grid;grid-template-columns:1fr 1fr;gap:.6rem 1rem;font-size:.9rem}}

/* Google badge */
.tr-gbadge{display:inline-flex;align-items:center;gap:.55rem;color:inherit;text-decoration:none;font-weight:500;background:#fff;color:var(--navy-900);padding:.5rem .85rem;border-radius:999px;box-shadow:var(--shadow);font-size:.95rem}
.tr-gbadge .tr-ico-g{width:1.35rem;height:1.35rem}
.tr-stars{color:#F5A623;letter-spacing:.05em}

/* ---------- Grids & cards ---------- */
.tr-grid{display:grid;gap:1.5rem}
.tr-grid-2{grid-template-columns:repeat(2,1fr)}
.tr-grid-3{grid-template-columns:repeat(3,1fr)}
.tr-grid-4{grid-template-columns:repeat(4,1fr)}
@media (max-width:900px){.tr-grid-3,.tr-grid-4{grid-template-columns:repeat(2,1fr)}}
@media (max-width:600px){.tr-grid-2,.tr-grid-3,.tr-grid-4{grid-template-columns:1fr}}
.tr-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--navy-100);border-radius:var(--radius-lg);padding:1.75rem;text-decoration:none;color:var(--navy-900);transition:border-color .15s,transform .15s}
.tr-card:hover{border-color:var(--orange-500);transform:translateY(-2px);color:var(--navy-900)}
.tr-card h3{margin-bottom:.5rem}
.tr-card p{color:var(--gray-600);margin-bottom:1rem;flex:1}
.tr-card-more{color:var(--orange-600);font-weight:600}
.tr-card img{border-radius:var(--radius);aspect-ratio:4/3;object-fit:cover;width:100%;margin-bottom:1rem}

/* Feature list (why us) */
.tr-features{list-style:none;padding:0;margin:0;display:grid;gap:1.25rem}
.tr-features li{display:grid;grid-template-columns:2.25rem 1fr;gap:.9rem;align-items:start}
.tr-features .tr-ico{width:2.25rem;height:2.25rem;padding:.45rem;background:var(--orange-100);color:var(--orange-600);border-radius:8px}
.tr-features strong{display:block;font-family:var(--font-head);font-weight:700;font-size:1.15rem;margin-bottom:.15rem}
.tr-features span{color:var(--gray-600)}

/* Stats */
.tr-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;text-align:left}
.tr-stats div{border-left:3px solid var(--orange-500);padding-left:1rem}
.tr-stats b{display:block;font-family:var(--font-head);font-weight:800;font-size:clamp(2rem,3.5vw,2.75rem);line-height:1}
.tr-stats span{color:var(--gray-600);font-size:.95rem}
.tr-bg-navy .tr-stats span{color:rgba(255,255,255,.75)}
@media (max-width:700px){.tr-stats{grid-template-columns:1fr 1fr}}

/* Process steps (a real sequence, so numbering is earned) */
.tr-steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;counter-reset:step}
.tr-steps li{counter-increment:step;position:relative;padding-top:3.25rem}
.tr-steps li::before{content:counter(step);position:absolute;top:0;left:0;width:2.5rem;height:2.5rem;border-radius:50%;background:var(--navy-900);color:#fff;font-family:var(--font-head);font-weight:800;font-size:1.2rem;display:grid;place-items:center}
.tr-steps strong{display:block;font-family:var(--font-head);font-weight:700;font-size:1.2rem;margin-bottom:.35rem}
.tr-steps span{color:var(--gray-600)}
@media (max-width:900px){.tr-steps{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.tr-steps{grid-template-columns:1fr}}

/* ---------- Reviews ---------- */
.tr-review{background:#fff;border-radius:var(--radius-lg);padding:1.75rem;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:.75rem;height:100%}
.tr-review .tr-stars{font-size:1.1rem}
.tr-review blockquote{margin:0;font-size:1.02rem;flex:1}
.tr-review footer{display:flex;align-items:center;justify-content:space-between;gap:.75rem;font-size:.92rem;color:var(--gray-600)}
.tr-review footer b{color:var(--navy-900)}
.tr-review .tr-ico-g{width:1.25rem;height:1.25rem}
.tr-reviews-more{margin-top:2rem;text-align:center}

/* ---------- FAQ ---------- */
.tr-faqs{max-width:820px}
.tr-faq{border-bottom:1px solid var(--navy-100)}
.tr-faq summary{list-style:none;cursor:pointer;padding:1.15rem 2.5rem 1.15rem 0;font-family:var(--font-head);font-weight:700;font-size:1.2rem;position:relative}
.tr-faq summary::-webkit-details-marker{display:none}
.tr-faq summary::after{content:"";position:absolute;right:.5rem;top:50%;width:.6rem;height:.6rem;border-right:2px solid var(--orange-600);border-bottom:2px solid var(--orange-600);transform:translateY(-70%) rotate(45deg);transition:transform .2s}
.tr-faq[open] summary::after{transform:translateY(-30%) rotate(-135deg)}
.tr-faq>div{padding:0 0 1.25rem;color:var(--gray-600);max-width:70ch}
.tr-faq>div p:last-child{margin-bottom:0}

/* ---------- Lead form ---------- */
.tr-form{background:#fff;color:var(--navy-900);border-radius:var(--radius-lg);padding:1.75rem;box-shadow:var(--shadow-lg);display:grid;gap:.9rem}
.tr-form-title{margin:0;font-size:1.5rem}
.tr-form-sub{margin:-.4rem 0 .2rem;color:var(--gray-600);font-size:.95rem}
.tr-field{display:grid;gap:.3rem}
.tr-field label{font-weight:500;font-size:.9rem}
.tr-form input,.tr-form select,.tr-form textarea{width:100%;font:inherit;font-size:1rem;padding:.8rem .9rem;border:1.5px solid #C9CFDB;border-radius:var(--radius);background:#fff;color:var(--navy-900);min-height:48px}
.tr-form input:focus,.tr-form select:focus,.tr-form textarea:focus{outline:none;border-color:var(--navy-900);box-shadow:0 0 0 3px var(--orange-100)}
.tr-row{display:grid;grid-template-columns:1fr 1.4fr;gap:.9rem}
.tr-form .btn{margin-top:.25rem;padding:1rem}
.tr-form-note{display:flex;align-items:center;gap:.4rem;margin:0;font-size:.82rem;color:var(--gray-600)}
.tr-form-note .tr-ico{color:var(--success)}
.tr-hp{position:absolute;left:-9999px;opacity:0;height:0;overflow:hidden}
.tr-form.is-compact{box-shadow:none;border:1px solid var(--navy-100)}
@media (max-width:480px){.tr-row{grid-template-columns:1fr}.tr-form{padding:1.35rem}}

/* Form section (used mid-page / contact) */
.tr-form-section{display:grid;grid-template-columns:1fr minmax(340px,460px);gap:3rem;align-items:start}
@media (max-width:900px){.tr-form-section{grid-template-columns:1fr}}

/* ---------- CTA banner ---------- */
.tr-cta{background:var(--navy-900);color:#fff;border-radius:var(--radius-lg);padding:clamp(2rem,4vw,3.5rem);display:grid;grid-template-columns:1.4fr auto;gap:2rem;align-items:center;position:relative;overflow:hidden}
.tr-cta::before{content:"";position:absolute;right:-60px;top:-60px;width:240px;height:240px;border:18px solid var(--orange-500);border-bottom:0;border-left:0;transform:rotate(45deg);opacity:.9}
.tr-cta h2{color:#fff;margin-bottom:.4rem}
.tr-cta p{color:rgba(255,255,255,.82);margin:0}
.tr-cta-actions{display:grid;gap:.75rem;position:relative}
.tr-cta-actions .tr-call{display:flex;align-items:center;justify-content:center;gap:.6rem;color:#fff;text-decoration:none;font-family:var(--font-head);font-weight:800;font-size:1.6rem}
.tr-cta-actions .tr-call .tr-ico{color:var(--orange-500)}
@media (max-width:800px){.tr-cta{grid-template-columns:1fr}.tr-cta::before{display:none}}

/* ---------- Chips ---------- */
.tr-chips{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.6rem}
.tr-chips a{display:inline-block;padding:.5rem .95rem;border:1.5px solid var(--navy-100);border-radius:999px;color:var(--navy-900);text-decoration:none;font-weight:500;font-size:.95rem;background:#fff}
.tr-chips a:hover{border-color:var(--orange-500);color:var(--navy-900)}

/* ---------- Before / After ---------- */
.tr-ba{position:relative;aspect-ratio:4/3;border-radius:var(--radius-lg);overflow:hidden;user-select:none;touch-action:pan-y}
.tr-ba img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.tr-ba .tr-ba-after{clip-path:inset(0 0 0 var(--pos,50%))}
.tr-ba-handle{position:absolute;top:0;bottom:0;left:var(--pos,50%);width:3px;background:#fff;transform:translateX(-50%);box-shadow:0 0 0 1px rgba(0,0,0,.2)}
.tr-ba-handle::after{content:"";position:absolute;top:50%;left:50%;width:44px;height:44px;border-radius:50%;background:var(--orange-500);transform:translate(-50%,-50%);box-shadow:var(--shadow);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2319243D' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 6l-5 6 5 6M15 6l5 6-5 6'/%3E%3C/svg%3E");background-size:24px;background-repeat:no-repeat;background-position:center}
.tr-ba-label{position:absolute;bottom:.75rem;padding:.3rem .7rem;background:rgba(25,36,61,.85);color:#fff;font-size:.8rem;font-weight:600;border-radius:4px}
.tr-ba-label.is-before{left:.75rem}.tr-ba-label.is-after{right:.75rem}
.tr-ba input[type=range]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0}

/* ---------- Blog ---------- */
.tr-article{padding-bottom:var(--sec)}
.tr-article .wp-block-post-title{margin-top:1rem}
.tr-meta{color:var(--gray-600);font-size:.95rem;margin-bottom:1.5rem}
.tr-meta p{margin:0}
.tr-article .wp-block-post-featured-image{margin-block:1.5rem 2.5rem}
.tr-post-card .wp-block-post-title{font-size:1.3rem;margin:1rem 0 .4rem}
.tr-post-card .wp-block-post-title a{color:var(--navy-900);text-decoration:none}
.tr-post-card .wp-block-post-excerpt{color:var(--gray-600);font-size:.98rem}
.tr-blog{padding-block:2rem var(--sec)}
.tr-blog .wp-block-query{margin-top:2.5rem}
.tr-404{padding-block:var(--sec);text-align:left}

/* ---------- Footer ---------- */
.tr-footer{background:var(--navy-900);color:rgba(255,255,255,.82);padding-block:var(--sec) 2rem;margin-top:0}
.tr-footer a{color:#fff;text-decoration:none}.tr-footer a:hover{text-decoration:underline;color:#fff}
.tr-footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:3rem}
.tr-logo-footer{width:220px;margin-bottom:1.25rem}
.tr-footer h3{color:#fff;font-size:1.1rem;margin-bottom:1rem}
.tr-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}
.tr-footer-contact{display:grid;gap:.35rem}
.tr-footer-contact a:first-child{font-family:var(--font-head);font-weight:800;font-size:1.5rem;color:#fff}
.tr-footer .tr-gbadge{margin-top:1rem}
.tr-footer-social{display:flex;gap:1rem;margin-top:1rem}
.tr-footer-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-top:3rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.15);font-size:.88rem;color:rgba(255,255,255,.6)}
.tr-footer-bottom a{margin-left:1.25rem;color:rgba(255,255,255,.75)}
@media (max-width:900px){.tr-footer-grid{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.tr-footer-grid{grid-template-columns:1fr;gap:2rem}}

/* ---------- Utilities ---------- */
.tr-mt-2{margin-top:2rem}.tr-mt-3{margin-top:3rem}.tr-mb-0{margin-bottom:0}
.tr-center{text-align:center}
.tr-muted{color:var(--gray-600)}
.tr-checklist{list-style:none;padding:0;margin:0 0 1.5rem;display:grid;gap:.6rem}
.tr-checklist li{display:flex;gap:.6rem;align-items:flex-start}
.tr-checklist li::before{content:"";flex:none;width:1.35rem;height:1.35rem;margin-top:.15rem;border-radius:50%;background:var(--orange-100) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23C94E10'%3E%3Cpath d='M9.5 16.2l-4-4 1.4-1.4 2.6 2.6 7.6-7.6 1.4 1.4z'/%3E%3C/svg%3E") center/1rem no-repeat}
.tr-bg-navy .tr-checklist li::before{background-color:rgba(255,255,255,.12)}

@media (max-width:600px){.tr-header-phone-txt{display:none}.tr-header-phone{padding:.45rem;border:0}.tr-header-phone .tr-ico{width:1.8rem;height:1.8rem}}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
@media print{.tr-header,.tr-mobile-bar,.tr-footer,.tr-cta{display:none}}

/* Projects */
.tr-project h3{margin-bottom:.75rem}.tr-project .tr-ba{margin-bottom:1rem}.tr-project p{color:var(--gray-600)}
.tr-legal{padding-block:3rem var(--sec)}.tr-legal h1{margin-bottom:1rem}.tr-legal h2{font-size:1.4rem;margin-top:2rem}
.tr-thanks{padding-block:var(--sec);text-align:center}.tr-thanks .tr-ico{width:4rem;height:4rem;color:var(--success);margin:0 auto 1rem}