/*
Theme Name: TradeVantage
Author: TradeVantage
Description: A focused, responsive website for TradeVantage. Edit the homepage in Appearance > Editor.
Version: 1.1.0
Requires at least: 6.4
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: tradevantage
*/

@font-face{font-family:Manrope;font-style:normal;font-weight:400 800;font-display:swap;src:url('assets/fonts/manrope-latin.ttf') format('truetype')}
:root{--tv-paper:#fafafa;--tv-ink:#25272a;--tv-muted:#606369;--tv-line:#dedfe1;--tv-accent:#b40021;--tv-white:#fff;--tv-max:1280px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:24px}
body{margin:0;background:var(--tv-paper);color:var(--tv-ink);font-family:Manrope,sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
a{color:inherit;text-underline-offset:5px}
a,button{transition:color .15s ease,background-color .15s ease,border-color .15s ease}
a:focus-visible,button:focus-visible{outline:3px solid var(--tv-accent);outline-offset:6px}
img{display:block;max-width:100%;height:auto}
h1,h2,h3,p,figure{margin:0}
h1,h2,h3{font-family:Manrope,sans-serif;line-height:1.1;font-weight:600;letter-spacing:-.055em}
.wp-site-blocks>*,.wp-block-template-part,.tv-home>*{margin-block-start:0!important}
.tv-container{width:calc(100% - 96px);max-width:var(--tv-max);margin-inline:auto!important}
.tv-header{padding-block:25px;border-bottom:1px solid var(--tv-line)}
.tv-header-row{display:flex;align-items:center;justify-content:space-between;gap:24px}
.tv-brand{display:flex;align-items:center;gap:12px}
.tv-brand .wp-block-site-logo:empty{display:none}
.tv-brand .wp-block-site-logo img{max-width:220px;width:auto;max-height:54px;object-fit:contain}
.tv-brand:has(.wp-block-site-logo img) .tv-wordmark{display:none}
.tv-wordmark{font-size:27px!important;line-height:1.2;font-weight:750;letter-spacing:-1.4px;margin:0!important}
.tv-wordmark a{text-decoration:none}
.tv-wordmark span{font-weight:450}
.tv-nav{display:flex;align-items:center;gap:32px;font-size:14px;font-weight:600}
.tv-nav a{text-decoration:none}
.tv-nav a:hover{color:var(--tv-accent)}
.tv-nav .tv-contact-link{padding:10px 18px;border:1px solid var(--tv-ink);border-radius:3px}
.tv-nav .tv-contact-link:hover{background:var(--tv-ink);color:var(--tv-paper)}
.tv-hero{display:grid;grid-template-columns:1.3fr 1fr;align-items:end;gap:64px;padding-top:68px;padding-bottom:56px}
.tv-hero h1{font-size:clamp(48px,5.3vw,76px);line-height:1.06;max-width:780px;letter-spacing:-.063em}
.tv-hero-copy{padding-bottom:5px;max-width:435px}
.tv-hero-copy>p{color:var(--tv-muted);font-size:18px;line-height:1.7;margin:0 0 24px!important}
.tv-cta{display:inline-flex;align-items:center;gap:24px;background:var(--tv-accent);color:white;text-decoration:none;font-size:14px;font-weight:700;line-height:1.4;padding:16px 22px;border-radius:3px}
.tv-cta:hover{background:#90001a}
.tv-cta svg{width:18px;height:18px;flex-shrink:0}
.tv-photo-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.tv-photo-row figure{margin:0!important;overflow:hidden}
.tv-photo-row img{width:100%;height:300px;object-fit:cover;filter:saturate(.8)}
.tv-photo-metalwork img{object-position:40% 50%}
.tv-photo-electrical img{object-position:50% 45%}
.tv-photo-commercial img{object-position:46% 45%}
.tv-trades{padding-block:23px;border-bottom:1px solid var(--tv-line);display:flex;justify-content:space-between;align-items:baseline;gap:24px}
.tv-trades p{font-size:14px;line-height:1.6}
.tv-trades .tv-trades-title{font-weight:700;color:var(--tv-ink)}
.tv-trades .tv-trades-list{color:var(--tv-muted);text-align:right}
.tv-about{display:grid;grid-template-columns:1.3fr 1fr;gap:64px;padding-block:64px}
.tv-about h2{font-size:clamp(30px,3.2vw,44px);max-width:480px}
.tv-about-copy>p{color:var(--tv-muted);font-size:16px;line-height:1.8;margin:0 0 16px!important;max-width:460px}
.tv-about-copy>p:last-child{margin-bottom:0!important}
.tv-about-copy strong{color:var(--tv-ink);font-weight:700}
.tv-contact{background:var(--tv-ink);color:var(--tv-paper);padding-block:56px}
.tv-contact-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:64px}
.tv-contact h2{font-size:clamp(36px,3.6vw,50px);margin-bottom:18px}
.tv-contact-intro{max-width:350px;color:#d2cfc7;font-size:16px;line-height:1.75;margin:0 0 24px!important}
.tv-phone{font-size:22px;font-weight:600;letter-spacing:-.02em;text-decoration:none;border-bottom:1px solid #8e8b80;padding-bottom:5px;display:inline-block}
.tv-phone:hover{color:#ffb6c3}
.tv-people{display:grid;grid-template-columns:1fr;gap:24px;padding-top:5px}
.tv-person+.tv-person{border-top:1px solid #54524b;padding-top:24px}
.tv-person h3{font-size:18px;letter-spacing:-.02em;font-weight:600;margin-bottom:4px}
.tv-person p{color:#c6c2b9;font-size:13px;margin-bottom:9px!important}
.tv-person a{font-size:17px;font-weight:500;word-break:break-word;text-decoration:none;border-bottom:1px solid #8e8b80;padding-bottom:3px}
.tv-person a:hover{color:#ffb6c3}
.tv-contact a:focus-visible{outline-color:#ffb6c3}
.tv-footer{padding-block:23px}
.tv-footer-row{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:12px;color:var(--tv-muted)}
.tv-footer a{text-decoration:none}
.tv-footer a:hover{text-decoration:underline}
.tv-footer-brand{font-size:17px;font-weight:700;letter-spacing:-.6px;color:var(--tv-ink)}
.tv-page{max-width:850px;margin:48px auto;padding-inline:24px;min-height:50vh}
.tv-page h1{font-size:42px;margin-bottom:32px}
.tv-page p{margin-block:18px}
.tv-skip-link{position:absolute;top:-100px;left:16px;z-index:100000;background:var(--tv-ink);color:white;padding:12px 20px}
.tv-skip-link:focus{top:12px}
.editor-styles-wrapper{background:var(--tv-paper);font-family:Manrope,sans-serif}
@media(min-width:1500px){.tv-photo-row img{height:330px}}
@media(max-width:1000px){.tv-container{width:calc(100% - 64px)}.tv-hero,.tv-about,.tv-contact-grid{gap:40px;grid-template-columns:1.1fr 1fr}.tv-hero h1{font-size:60px}.tv-photo-row img{height:240px}.tv-trades{display:block}.tv-trades .tv-trades-list{text-align:left;margin-top:5px}.tv-nav{gap:20px}}
@media(max-width:700px){.tv-container{width:calc(100% - 40px)}.tv-header{padding-block:21px}.tv-wordmark{font-size:24px!important}.tv-nav{gap:16px}.tv-nav .tv-about-link{display:none}.tv-nav .tv-contact-link{padding:8px 13px;font-size:13px}.tv-brand .wp-block-site-logo img{max-width:170px;max-height:44px}.tv-hero{grid-template-columns:1fr;gap:24px;padding-top:42px;padding-bottom:32px}.tv-hero h1{font-size:clamp(44px,10vw,62px);max-width:620px}.tv-hero-copy{max-width:530px;padding:0}.tv-hero-copy>p{font-size:16px;line-height:1.7;margin-bottom:20px!important}.tv-cta{padding:14px 19px}.tv-photo-row{gap:7px}.tv-photo-row img{height:210px}.tv-trades{padding-block:20px}.tv-trades p{font-size:12px;line-height:1.8}.tv-about{grid-template-columns:1fr;gap:24px;padding-block:40px}.tv-about h2{max-width:350px;font-size:34px}.tv-about-copy>p{font-size:15px}.tv-contact{padding-block:40px}.tv-contact-grid{grid-template-columns:1fr;gap:35px}.tv-contact h2{font-size:38px}.tv-contact-intro{font-size:15px;margin-bottom:20px!important}.tv-people{gap:20px}.tv-person+.tv-person{padding-top:20px}.tv-person a{font-size:16px}.tv-footer-row{align-items:flex-start;font-size:11px}.tv-footer-brand{font-size:15px}}
@media(max-width:420px){.tv-photo-row img{height:170px}.tv-hero h1{font-size:45px}.tv-wordmark{font-size:21px!important}.tv-nav .tv-contact-link{padding:8px 11px}.tv-footer-row{flex-direction:column;gap:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}a,button{transition:none}}

/* Display the supplied artwork without changing the original PNG. */
.tv-logo-frame{display:block;position:relative;width:290px;aspect-ratio:6.1;overflow:hidden;margin:0!important}
.tv-nav{flex-shrink:0;white-space:nowrap}
.tv-logo-frame img{position:absolute;top:-54%;left:0;width:100%;max-width:none;height:auto}
.tv-brand:has(.wp-block-site-logo img) .tv-logo-frame{display:none}
@media(max-width:700px){.tv-logo-frame{width:220px}.tv-header-row{gap:12px}}
@media(max-width:420px){.tv-logo-frame{width:170px}.tv-header-row{gap:8px}.tv-nav .tv-contact-link{padding:8px;font-size:12px}.tv-hero h1{font-size:clamp(38px,10.7vw,45px)}}
@media(max-width:360px){.tv-logo-frame{width:150px}}

/* Material relationships and commercial/industrial audience. */
.tv-value{background:#f0f1f2;padding-block:56px}
.tv-value h2,.tv-sectors h2,.tv-process h2{font-size:clamp(30px,3.2vw,44px);line-height:1.14}
.tv-three-column{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;margin-top:32px!important}
.tv-feature{border-top:1px solid #bcbec2;padding-top:22px}
.tv-feature h3{font-size:21px;line-height:1.3;letter-spacing:-.025em;margin:0 0 14px!important}
.tv-feature p,.tv-sector-intro p,.tv-section-intro{font-size:16px;line-height:1.8;color:var(--tv-muted)}
.tv-sectors{display:grid;grid-template-columns:1.3fr 1fr;gap:64px;padding-block:64px;border-bottom:1px solid var(--tv-line)}
.tv-sector-intro h2{margin-bottom:24px}
.tv-sector-intro p{max-width:590px;margin-top:16px!important}
.tv-sector-list p{font-size:17px;font-weight:600;line-height:1.5;padding-block:17px;margin:0!important;border-bottom:1px solid var(--tv-line)}
.tv-sector-list p:first-child{padding-top:0}
.tv-sector-list p:last-child{border-bottom:0;padding-bottom:0}
.tv-process{padding-block:56px}
.tv-section-intro{max-width:680px;margin-top:20px!important}
.tv-contact-intro{max-width:430px}
@media(max-width:1000px){.tv-sectors{gap:40px;grid-template-columns:1.1fr 1fr}.tv-three-column{gap:24px}.tv-feature h3{font-size:19px}}
@media(max-width:700px){.tv-photo-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.tv-photo-row figure:first-child{grid-column:1/-1}.tv-photo-row img{height:190px}.tv-photo-row figure:first-child img{height:230px}.tv-value{padding-block:40px}.tv-three-column{grid-template-columns:1fr;gap:24px;margin-top:26px!important}.tv-feature{padding-top:20px}.tv-feature h3{font-size:21px;margin-bottom:10px!important}.tv-feature p,.tv-sector-intro p,.tv-section-intro{font-size:15px}.tv-sectors{grid-template-columns:1fr;gap:28px;padding-block:40px}.tv-value h2,.tv-sectors h2,.tv-process h2{font-size:32px}.tv-sector-list p{font-size:15px;padding-block:13px}.tv-process{padding-block:40px}.tv-contact h2{font-size:38px}}
