﻿/* Teckvora corporate design system: Poppins, clear hierarchy, consistent page layouts. */
:root.tk-corporate { --tk-ink:#142d2a; --tk-muted:#62726e; --tk-accent:#075b48; --tk-border:#e1e9e6; --tk-soft:#ffffff; --tk-pale:#f6f7f8; }
html.tk-corporate body { font-family:"Poppins",Arial,sans-serif!important; font-size:15px; }
.tk-corporate :is(button,input,select,textarea) { font-family:inherit; }
.tk-corporate #root { --tv-green:#075b48; --tv-ink:#142d2a; --tv-muted:#62726e; }
.tk-corporate #root :is(h1,h2,h3,h4,h5,h6) { font-family:"Poppins",Arial,sans-serif!important; font-style:normal; }
.tk-corporate #root main p { line-height:1.85; }
.tk-corporate #root a { text-underline-offset:4px; }
.tk-corporate #root .corp-container { width:min(1240px,calc(100% - 80px)); margin-inline:auto; }
.tk-corporate #root .corp-eyebrow { display:block; color:#087158; font-size:11px; font-weight:600; letter-spacing:.12em; margin-bottom:16px; }
.tk-corporate #root main > div:not(.tv-home) { padding-top:0!important; }
.tk-corporate #root main > div:not(.tv-home):not(.corp-about):not(.corp-contact) { padding:64px max(40px,calc((100vw - 1240px)/2)) 88px!important; }
.tk-corporate #root main :is(.max-w-7xl,.max-w-6xl) { max-width:1240px!important; }
.tk-corporate #root main > div:not(.tv-home) :is(h1,h2,p):has(+h1),
.tk-corporate #root main > div:not(.tv-home) h1,
.tk-corporate #root main > div:not(.tv-home) div.text-center.mb-20,
.tk-corporate #root main > div:not(.tv-home) div.border-l-4:has(>h1),
.tk-corporate #root main > div:not(.tv-home) div.mb-24:has(>h3) { display:block!important; }
.tk-corporate #root main > div:not(.tv-home) h1 { font-size:clamp(34px,4vw,52px)!important; font-weight:600!important; letter-spacing:-.04em!important; line-height:1.25!important; margin-bottom:22px!important; }
.tk-corporate #root main > div:not(.tv-home) :is(h2,h3)[class*="text-4xl"],
.tk-corporate #root main > div:not(.tv-home) :is(h2,h3)[class*="text-5xl"],
.tk-corporate #root main > div:not(.tv-home) :is(h2,h3)[class*="text-6xl"],
.tk-corporate #root main > div:not(.tv-home) :is(h2,h3)[class*="text-7xl"] { font-size:clamp(30px,3vw,40px)!important; font-weight:600!important; line-height:1.3!important; }
.tk-corporate #root main .sci-fi-glass { border-radius:12px!important; background:#fff!important; box-shadow:0 5px 24px #123e2d05!important; }
.tk-corporate #root main .sci-fi-glass p { font-size:14px!important; }
.tk-corporate #root main [class*="tracking-"] { letter-spacing:normal; }
.tk-corporate #root main [class*="uppercase"][class*="text-xs"] { font-size:11px; letter-spacing:.1em; font-weight:600; }
.tk-corporate #root main [class*="mb-40"] { margin-bottom:85px; }
.tk-corporate #root main [class*="mb-24"] { margin-bottom:44px; }
.tk-corporate #root main [class*="text-[10rem]"] { opacity:.45; }
.tk-corporate #root main [class*="font-black"] { font-weight:600; }
.tk-corporate #root main [class*="max-w-7xl"].px-6,
.tk-corporate #root main [class*="max-w-6xl"].px-6 { padding-inline:0!important; }
.tk-corporate #root main form :is(input,select,textarea) { font-size:14px; min-height:48px; border-radius:6px!important; }
.tk-corporate #root main label { text-transform:none!important; letter-spacing:0!important; font-size:12px!important; font-weight:500; }
.tk-corporate #root .tv-button { display:inline-flex; align-items:center; justify-content:center; gap:20px; padding:15px 23px; border-radius:6px; background:#075b48; border:1px solid #075b48; color:#fff; font-size:13px; font-weight:500; text-decoration:none; transition:background .2s; }
.tk-corporate #root .tv-button:hover { background:#034836; transform:none; }
.tk-corporate #root .tv-button:disabled { opacity:.6; cursor:wait; }
.tk-corporate #root header.corp-header { position:sticky!important; top:0!important; width:100%!important; background:#fff!important; border-bottom:1px solid #e4ebe7!important; box-shadow:none!important; }
.tk-corporate #root header.corp-header::after { display:none; }
.tk-corporate #root header.corp-header>nav.corp-nav { width:min(1360px,calc(100% - 64px)); max-width:1360px; height:84px; min-height:84px; margin:auto; padding:0!important; display:flex; align-items:center; justify-content:space-between; gap:30px; }
.corp-brand { flex-shrink:0; }
.tk-corporate #root .corp-brand img { width:154px; height:auto!important; }
.corp-nav-links { display:flex; align-items:center; gap:24px; }
.tk-corporate #root .corp-nav-links a { font-size:12px; font-weight:500; text-decoration:none; color:#52635e!important; min-height:44px; display:flex; align-items:center; }
.tk-corporate #root .corp-nav-links a:hover,
.tk-corporate #root .corp-nav-links a.active { color:#075b48!important; }
.tk-corporate #root .corp-nav-links a.active { box-shadow:inset 0 -2px #075b48; }
.corp-service-link { display:flex; align-items:center; gap:3px; }
.corp-service-link button { padding:8px 3px; background:transparent; border:0; font-size:12px; cursor:pointer; }
.corp-dropdown { position:relative; }
.corp-dropdown-panel { position:absolute; top:calc(100% + 12px); left:-20px; width:290px; padding:10px; background:white; border:1px solid #e1e9e6; box-shadow:0 14px 40px #123e2d16; border-radius:10px; max-height:60vh; overflow:auto; }
.tk-corporate #root .corp-dropdown-panel a { min-height:42px; padding:10px 12px; border-radius:5px; font-size:12px; justify-content:space-between; }
.corp-dropdown-panel a:hover { background:#f6f7f8; }
.tk-corporate #root header a.corp-nav-cta { display:flex; align-items:center; gap:17px; background:#075b48; color:#fff!important; padding:13px 18px; border-radius:6px; font-size:11px; font-weight:500; white-space:nowrap; }
.tk-corporate #root header button.corp-menu-toggle { display:none; border:1px solid #e1e9e6; background:#fff; border-radius:5px; width:44px; height:44px; font-size:25px; align-items:center; justify-content:center; }
.tk-corporate #root .tv-home { --tv-ink:#142d2a; --tv-green:#075b48; --tv-muted:#62726e; }
.tk-corporate #root .tv-home .tv-wrap { width:min(1240px,calc(100% - 80px)); }
.tk-corporate #root .tv-home #home.tv-hero { background:#ffffff; border-bottom:1px solid #e6eeea; }
.tk-corporate #root .tv-home #home.tv-hero>.tv-hero-grid { grid-template-columns:minmax(0,1.05fr) minmax(0,1fr); gap:64px; padding-block:76px; }
.tk-corporate #root .tv-home #home h1 { font-family:"Poppins",Arial,sans-serif!important; font-size:clamp(36px,3.8vw,52px)!important; letter-spacing:-.045em!important; font-weight:600!important; line-height:1.22!important; margin:20px 0 23px!important; }
.tk-corporate #root .tv-home em { font-family:"Poppins",Arial,sans-serif!important; font-style:normal; font-weight:600; color:#087158; }
.tk-corporate #root .tv-home #home h1>em { margin-top:0; }
.tk-corporate #root .tv-home .tv-kicker { font-size:11px; font-weight:600; letter-spacing:.1em; }
.tk-corporate #root .tv-home h2 { font-size:clamp(30px,3vw,40px)!important; font-weight:600!important; line-height:1.3; letter-spacing:-.035em; }
.tk-corporate #root .tv-home h3 { font-size:21px; font-weight:600; line-height:1.4; }
.tk-corporate #root .tv-home p { font-size:14px; line-height:1.9; }
.tk-corporate #root .tv-home .tv-lead { font-size:15px; line-height:1.9; max-width:540px; }
.tk-corporate #root .tv-home .tv-link { font-size:13px; font-weight:500; }
.tk-corporate #root .tv-home .tv-section { padding-block:85px; }
.tk-corporate #root .tv-home #home .tv-visual { padding:0; background:#0d2925; border-radius:14px; overflow:hidden; box-shadow:0 18px 55px #1f514518; }
.tk-corporate #root .tv-home #home .tv-photo-frame { height:390px; border-radius:0; background:#0d2925; }
.tk-corporate #root .tv-home #home .tv-photo-frame>img { width:100%; height:100%; object-fit:cover; object-position:center; opacity:.85; }
.tk-corporate #root .tv-home #home .tv-photo-frame::after { inset:40% 0 0; background:linear-gradient(transparent,#0d2925); }
.tk-corporate #root .tv-home #home .tv-photo-label { position:absolute; top:auto; left:25px; bottom:23px; font-family:inherit; color:#fff; font-size:10px; letter-spacing:.13em; }
.corp-visual-caption { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:22px 25px; border-top:1px solid #ffffff14; color:#fff; }
.corp-visual-caption strong { display:block; font-size:15px; font-weight:500; }
.corp-visual-caption small { display:block; color:#adc7bc; font-size:10px; margin-top:6px; }
.corp-visual-caption>span { width:36px; height:36px; border-radius:50%; background:#ffffff0d; display:grid; place-items:center; color:#9ed5bc; }
.tk-corporate #root .tv-home .tv-hero-note { font-size:10px; margin-top:28px; }
.tk-corporate #root .tv-home .tv-capabilities { background:white; border:0; border-top:1px solid #e1e9e6; }
.tk-corporate #root .tv-home .tv-capabilities>.tv-wrap { padding-block:25px; }
.tk-corporate #root .tv-home .tv-capabilities p { font-size:13px; font-weight:500; }
.tk-corporate #root .tv-home .tv-capabilities i { color:#9eb6aa; font-size:11px; }
.tk-corporate #root .tv-home .tv-section-head>p { max-width:370px; }
.tk-corporate #root .tv-home .tv-service { background:#fff; border-radius:10px; border-color:#e1e9e6; padding:30px; }
.tk-corporate #root .tv-home .tv-service:hover { transform:translateY(-3px); box-shadow:0 10px 35px #1d4b3c09; }
.tk-corporate #root .tv-home .tv-card-top { margin-bottom:28px; }
.tk-corporate #root .tv-home .tv-card-top>svg { padding:13px; box-sizing:content-box; font-size:23px; background:#f6f7f8; border-radius:10px; }
.tk-corporate #root .tv-home .tv-tags>span { font-size:10px; border:0; background:#f6f7f8; border-radius:3px; }
.tk-corporate #root .tv-home .tv-work { background:#ffffff; }
.tk-corporate #root .tv-home .tv-project-image { height:270px; border-radius:10px; }
.tk-corporate #root .tv-home .tv-project .tv-kicker { font-size:9px; }
.tk-corporate #root .tv-home .tv-project p { font-size:13px!important; }
.tk-corporate #root .tv-home .tv-about { gap:70px; }
.tk-corporate #root .tv-home .tv-about-image { height:420px; }
.tk-corporate #root .tv-home .tv-about-image span { font-size:10px; }
.tk-corporate #root .tv-home .tv-process { background:#ffffff; }
.tk-corporate #root .tv-home .tv-process-grid article>span { font-family:inherit; font-size:22px; font-weight:600; color:#087158; }
.tk-corporate #root .tv-home .tv-process-grid article { border-color:#d5e2dc; }
.tk-corporate #root .tv-home .tv-cta { background:#063e32; padding-block:65px; }
.tk-corporate #root .tv-home .tv-cta h2 { font-size:clamp(32px,3.7vw,47px)!important; font-weight:600!important; }
.tk-corporate #root .tv-home .tv-cta .tv-button-light { background:#fff; border-color:#fff; color:#075b48; }
.tk-corporate #root .tv-home .tv-cta-star,.tk-corporate #root .tv-home .tv-back-top { display:none; }
.tk-corporate #root .tv-home .tv-values { font-size:12px; gap:16px; }
.tk-corporate #root .corp-page-hero { background:#ffffff; border-bottom:1px solid #e2ebe6; padding:65px 0!important; }
.tk-corporate #root .corp-page-hero h1 { font-size:clamp(34px,4vw,52px)!important; font-weight:600!important; line-height:1.25!important; max-width:950px; }
.tk-corporate #root .corp-page-hero h1 span { color:#087158; }
.tk-corporate #root .corp-page-hero p { font-size:15px; max-width:720px; margin:0; }
.tk-corporate #root .corp-about-story { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; padding-block:85px; }
.tk-corporate #root :is(.corp-about,.corp-contact) h2 { font-size:clamp(28px,3vw,37px); font-weight:600; line-height:1.35; letter-spacing:-.035em; margin-bottom:24px; }
.tk-corporate #root :is(.corp-about,.corp-contact) p { font-size:14px; margin-bottom:20px; }
.corp-about-story img { width:100%; height:410px; object-fit:cover; border-radius:12px; }
.corp-about-story .tv-button { margin-top:10px; }
.corp-soft { background:#ffffff; }
.corp-values { display:grid; grid-template-columns:1.25fr 1fr 1fr 1fr; gap:38px; padding-block:70px; }
.corp-values article>svg { font-size:25px; color:#087158; margin-bottom:24px; }
.tk-corporate #root .corp-values h3 { font-size:17px; font-weight:600; margin-bottom:15px; }
.tk-corporate #root .corp-values p { font-size:12px; }
.corp-about-cta { display:flex; justify-content:space-between; align-items:center; gap:30px; padding-block:80px; }
.corp-contact-grid { display:grid; grid-template-columns:.85fr 1.15fr; align-items:start; gap:90px; padding-block:85px; }
.corp-contact-methods { display:grid; gap:25px; margin-top:35px; }
.corp-contact-methods>div { display:flex; gap:18px; align-items:center; }
.corp-contact-methods>div>span { width:48px; height:48px; background:#f6f7f8; border-radius:8px; display:grid; place-items:center; color:#087158; }
.tk-corporate #root .corp-contact-methods h3 { font-size:12px; font-weight:500; margin:0 0 5px; color:#62726e!important; }
.tk-corporate #root .corp-contact-methods :is(a,p) { font-size:13px; margin:0; color:#173c30; text-decoration:none; }
.corp-contact-note { padding:22px; background:#ffffff; border-left:3px solid #087158; font-size:12px; line-height:1.9; margin-top:35px; color:#5a7566; }
.corp-contact-form { padding:36px; background:#fff; border:1px solid #e1e9e6; border-radius:12px; box-shadow:0 10px 45px #214d3b07; }
.tk-corporate #root .corp-contact-form h2 { font-size:23px; margin-bottom:8px; }
.tk-corporate #root .corp-contact-form form>p { font-size:11px; margin-bottom:25px; }
.corp-form-row { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-bottom:22px; }
.tk-corporate #root .corp-contact-form label { display:block; margin-bottom:8px; color:#244237!important; }
.tk-corporate #root .corp-contact-form :is(input,select,textarea) { width:100%; background:#fafcfb!important; border:1px solid #dce6e0!important; padding:13px; font-size:12px; }
.corp-contact-form textarea { resize:vertical; margin-bottom:22px; min-height:140px; }
.corp-contact-form .tv-button { width:100%; }
.tk-corporate #root .corp-contact-form .corp-form-error { color:#ac2733; font-size:12px; }
.corp-form-success { padding:50px 0; text-align:center; }
.corp-form-success>svg { color:#087158; margin:0 auto 25px; font-size:45px; }
.tk-corporate #root footer.corp-footer { margin:0!important; padding:0!important; background:#ffffff!important; border:0!important; border-top:1px solid #e1e9e6!important; }
.tk-corporate #root .corp-footer-grid { display:grid; grid-template-columns:1.4fr .7fr 1.1fr 1fr; gap:60px; padding-block:65px; }
.tk-corporate #root .corp-footer-brand img { width:157px; height:auto; }
.tk-corporate #root .corp-footer p { font-size:12px; color:#6c7b73; line-height:1.9; margin-top:18px; }
.tk-corporate #root .corp-footer-grid h3 { font-size:13px; font-weight:600; margin-bottom:22px; }
.tk-corporate #root .corp-footer-grid>div:not(:first-child)>a { display:block; color:#586f62; font-size:11px; padding-block:7px; text-decoration:none; line-height:1.7; }
.tk-corporate #root .corp-footer-grid a:hover { color:#075b48; }
.corp-footer-location { font-size:10px; color:#087158; }
.tk-corporate #root .corp-footer-contact { display:flex!important; align-items:center; gap:14px; font-weight:500; color:#075b48!important; margin-top:12px; }
.tk-corporate #root .corp-footer-bottom { display:flex; align-items:center; justify-content:space-between; gap:20px; padding-block:20px; border-top:1px solid #dce7df; font-size:10px; color:#78887d; }
.corp-footer-bottom button { width:35px; height:35px; border:1px solid #d6e2da; border-radius:5px; display:grid; place-items:center; background:#fff; color:#075b48; cursor:pointer; }
@media(max-width:1200px) { .corp-nav-links { gap:16px; } .tk-corporate #root .corp-nav-links a { font-size:11px; } .tk-corporate #root header a.corp-nav-cta { font-size:10px; padding:12px; gap:10px; } .tk-corporate #root .corp-footer-grid { gap:35px; } }
@media(max-width:1099px) { .tk-corporate #root header button.corp-menu-toggle { display:flex; } .tk-corporate #root header.corp-header>nav.corp-nav { gap:20px; } .corp-nav-links { display:none; } .corp-nav-links[data-open="true"] { display:flex; position:absolute; top:100%; left:0; right:0; background:#fff; border-block:1px solid #e1e9e6; flex-direction:column; align-items:stretch; padding:20px 35px; gap:2px; max-height:calc(100dvh - 84px); overflow:auto; box-shadow:0 15px 30px #193d2810; } .tk-corporate #root .corp-nav-links a { font-size:14px; } .corp-service-link { justify-content:space-between; } .corp-dropdown-panel { position:static; width:100%; border:0; box-shadow:none; background:#ffffff; margin-bottom:10px; } .tk-corporate #root header a.corp-nav-cta { margin-left:auto; } .corp-values { grid-template-columns:1fr 1fr; } .corp-contact-grid { gap:40px; } }
@media(max-width:760px) { .tk-corporate #root .corp-container,.tk-corporate #root .tv-home .tv-wrap { width:calc(100% - 40px); } .tk-corporate #root header.corp-header>nav.corp-nav { width:calc(100% - 40px); height:72px; min-height:72px; } .tk-corporate #root .corp-brand img { width:140px; } .tk-corporate #root header a.corp-nav-cta { display:none; } .corp-nav-links[data-open="true"] { max-height:calc(100dvh - 72px); } .tk-corporate #root .tv-home #home.tv-hero>.tv-hero-grid { grid-template-columns:minmax(0,1fr); gap:35px; padding-block:45px; } .tk-corporate #root .tv-home #home h1 { font-size:clamp(33px,7vw,45px)!important; } .tk-corporate #root .tv-home #home .tv-photo-frame { height:280px; } .tk-corporate #root .tv-home .tv-section { padding-block:60px; } .tk-corporate #root .tv-home h2 { font-size:29px!important; } .tk-corporate #root .tv-home .tv-about { gap:35px; } .tk-corporate #root .tv-home .tv-capabilities p { font-size:11px!important; } .tk-corporate #root main>div:not(.tv-home):not(.corp-about):not(.corp-contact) { padding:40px 20px 60px!important; } .tk-corporate #root .corp-page-hero { padding-block:45px!important; } .tk-corporate #root main>div:not(.tv-home) h1 { font-size:33px!important; } .corp-about-story,.corp-contact-grid { grid-template-columns:1fr!important; gap:35px!important; padding-block:55px!important; } .corp-about-story img { height:300px; } .corp-values { grid-template-columns:1fr; padding-block:55px; gap:30px; } .corp-about-cta { flex-direction:column; align-items:flex-start; padding-block:55px; gap:15px; } .corp-contact-form { padding:24px; } .corp-form-row { grid-template-columns:1fr; } .tk-corporate #root .corp-contact-form :is(input,select,textarea) { font-size:16px; } .tk-corporate #root .corp-footer-grid { grid-template-columns:1fr 1fr; gap:35px 20px; padding-block:45px; } .corp-footer-brand { grid-column:1/-1; } .tk-corporate #root .corp-footer-bottom { flex-wrap:wrap; font-size:9px; } .corp-footer-bottom>span:nth-child(2) { display:none; } }

.tk-corporate #root .corp-services-intro { max-width:680px; margin:0 auto; font-size:15px; }
.tk-corporate #root main>div:not(.tv-home):not(.corp-about):not(.corp-contact)>div>div.text-center.mb-20 { background:#ffffff; padding:45px 30px; border:1px solid #e3ece6; border-radius:12px; margin-bottom:50px; }
.tk-corporate #root main>div:not(.tv-home) .mb-12.border-l-4:has(h1) { border-left:0; padding:35px; background:#ffffff; border-radius:10px; }
.tk-corporate.tk-light #root .tv-home #home.tv-hero { background:#ffffff!important; }
.tk-corporate.tk-light #root .tv-home #home.tv-hero>.tv-hero-grid { padding-block:68px!important; }
@media(max-width:760px) { .tk-corporate.tk-light #root .tv-home #home.tv-hero>.tv-hero-grid { padding-block:40px!important; } }
.tk-corporate.tk-light #root>div>main:not(:has(#home)) h1 { font-size:clamp(34px,4vw,50px)!important; line-height:1.25!important; font-weight:600!important; }
@media(max-width:760px){ .tk-corporate.tk-light #root>div>main:not(:has(#home)) h1 { font-size:32px!important; } }
.tk-corporate #root main>div.corp-careers { padding:0!important; }
.corp-hiring { padding-block:75px; }
.tk-corporate #root .corp-hiring h2 { font-size:32px; font-weight:600; margin-bottom:35px; letter-spacing:-.03em; }
.corp-hiring-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
.corp-hiring-grid article { border:1px solid #e1e9e6; border-radius:10px; padding:25px; }
.corp-hiring-grid article>div { display:flex; align-items:center; justify-content:space-between; margin-bottom:30px; color:#075b48; }
.corp-hiring-grid article>div>span { font-size:23px; }
.corp-hiring-grid small { font-size:12px; color:#8ba194; }
.tk-corporate #root .corp-hiring h3 { font-size:17px; font-weight:600; margin-bottom:15px; }
.tk-corporate #root .corp-hiring p { font-size:12px; }
.tk-corporate #root .corp-careers #openings { width:min(1240px,calc(100% - 80px)); margin:auto; padding:60px 0 80px!important; border-top:1px solid #e1e9e6; }
.tk-corporate #root .corp-careers #openings>.max-w-5xl { max-width:none; }
.tk-corporate #root .corp-careers .corp-page-hero .tv-link { display:inline-flex; align-items:center; gap:18px; margin-top:25px; color:#075b48; font-size:13px; font-weight:500; }
@media(max-width:1000px){ .corp-hiring-grid { grid-template-columns:1fr 1fr; } }
@media(max-width:760px){ .corp-hiring { padding-block:50px; } .corp-hiring-grid { grid-template-columns:1fr; } .tk-corporate #root .corp-careers #openings { width:calc(100% - 40px); padding-block:45px!important; } .tk-corporate #root .corp-hiring h2 { font-size:28px; } }

/* White canvas and image-led page layouts. Keep brand green for accents and actions. */
:root.tk-corporate { --tk-soft:#f7f8f9; --tk-pale:#f7f8f9; }
.tk-corporate.tk-light #root .tv-home #home.tv-hero,
.tk-corporate.tk-light #root .tv-home .tv-work,
.tk-corporate.tk-light #root .tv-home .tv-process,
.tk-corporate.tk-light #root .corp-soft,
.tk-corporate.tk-light #root .corp-page-hero,
.tk-corporate.tk-light #root footer.corp-footer { background:#fff!important; }
.tk-corporate.tk-light #root .tv-home #home.tv-hero>.tv-hero-grid { background:transparent!important; }
.tk-corporate #root .tv-home .tv-project-image,
.tk-corporate #root .tv-home .tv-quotes figure { background:#f4f5f6!important; }
.tk-corporate #root .tv-home .tv-card-top>svg,
.tk-corporate #root .tv-home .tv-tags>span,
.tk-corporate #root .corp-contact-methods>div>span { background:#f6f7f8; }
.tk-corporate #root .corp-contact-note { background:#fff; border:1px solid #e5e9e7; border-left:3px solid #075b48; }
.corp-banner-grid { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); align-items:center; gap:65px; }
.corp-banner-copy { min-width:0; }
.tk-corporate.tk-light #root>div>main:not(:has(#home)) .corp-banner-grid h1 { font-size:clamp(34px,3.2vw,46px)!important; }
.corp-banner-photo { height:330px; border-radius:12px; overflow:hidden; background:#f3f4f5; position:relative; }
.corp-banner-photo img { display:block; width:100%; height:100%; object-fit:cover; }
.corp-banner-photo::after { content:""; position:absolute; bottom:0; left:24px; width:65px; height:4px; background:#075b48; }
.tk-corporate #root main>div.corp-insights,
.tk-corporate #root main>div.corp-services-directory { padding:0!important; }
.tk-corporate #root .corp-services-directory>.max-w-6xl { width:min(1240px,calc(100% - 80px)); }
.corp-services-directory .corp-page-hero .corp-container { width:100%!important; }
.corp-services-directory .corp-page-hero { margin-bottom:50px; }
.corp-services-directory>.max-w-6xl { padding-bottom:55px; }
.corp-services-directory .sci-fi-glass { overflow:hidden; }
.tk-corporate #root .corp-service-card-image { display:block; width:calc(100% + 64px); max-width:none; margin:-32px -32px 25px; height:185px; object-fit:cover; }
.tk-corporate #root .tv-service-photo { display:block; width:calc(100% + 60px); max-width:none; height:180px; object-fit:cover; margin:-30px -30px 25px; border-radius:9px 9px 0 0; }
.tk-corporate #root .tv-home .tv-card-top { margin-bottom:22px; }
.tk-corporate #root .tv-home .tv-service h3 { max-width:none; }
.corp-detail-hero { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:60px; align-items:center; }
.corp-detail-hero>img { width:100%; height:350px; object-fit:cover; border-radius:12px; }
.corp-ecommerce-hero { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:60px; align-items:center; text-align:left; }
.corp-ecommerce-hero>img { width:100%; height:430px; object-fit:cover; border-radius:12px; }
.corp-ecommerce-hero .mx-auto { margin-left:0; }
.corp-ecommerce-hero .justify-center { justify-content:flex-start; }
.corp-ecommerce-secondary { width:100%; height:220px; object-fit:cover; border-radius:10px; margin-bottom:30px; }
.corp-insights-content { padding-block:60px 80px; }
.corp-featured-post { display:grid; grid-template-columns:1.15fr 1fr; gap:40px; align-items:center; border:1px solid #e3e9e6; border-radius:12px; overflow:hidden; color:inherit; text-decoration:none; margin-bottom:35px; }
.corp-featured-post>img { width:100%; height:360px; object-fit:cover; }
.corp-featured-post>div { padding:30px 30px 30px 0; }
.tk-corporate #root .corp-featured-post h2 { font-size:28px; line-height:1.4; font-weight:600; margin-bottom:15px; letter-spacing:-.03em; }
.tk-corporate #root .corp-featured-post p { font-size:13px; line-height:1.9; margin-bottom:25px; }
.corp-read-more { display:flex; align-items:center; gap:16px; font-size:12px; font-weight:500; color:#075b48; }
.corp-read-more svg { font-size:11px; }
.corp-post-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:25px; }
.corp-post-card { border:1px solid #e3e9e6; border-radius:10px; overflow:hidden; text-decoration:none; display:flex; flex-direction:column; }
.corp-post-card>img { width:100%; height:220px; object-fit:cover; }
.corp-post-card>div { padding:25px; flex:1; display:flex; flex-direction:column; }
.tk-corporate #root .corp-post-card h2 { font-size:19px; font-weight:600; line-height:1.5; margin-bottom:15px; }
.tk-corporate #root .corp-post-card p { font-size:12px; margin-bottom:22px; }
.corp-post-card .corp-read-more { margin-top:auto; }
.corp-post-status { text-align:center; padding:45px 0; font-size:14px; }
.corp-post-status h2 { font-size:25px; margin-bottom:15px; }
.corp-post-status .tv-button { margin-top:20px; }
/* The hiring process is intentionally short; open roles follow immediately. */
.tk-corporate #root .corp-hiring { padding-block:32px; border-bottom:1px solid #e5eae7; }
.tk-corporate #root .corp-hiring>.corp-eyebrow { margin-bottom:8px; }
.tk-corporate #root .corp-hiring h2 { font-size:22px; margin-bottom:22px; }
.tk-corporate #root .corp-hiring-grid { gap:25px; }
.tk-corporate #root .corp-hiring-grid article { padding:0; border:0; border-radius:0; }
.tk-corporate #root .corp-hiring-grid article>div { margin-bottom:10px; justify-content:flex-start; gap:12px; }
.tk-corporate #root .corp-hiring-grid article>div>span { font-size:18px; }
.tk-corporate #root .corp-hiring-grid small { font-size:10px; }
.tk-corporate #root .corp-hiring h3 { font-size:14px; margin-bottom:6px; }
.tk-corporate #root .corp-hiring p { font-size:11px; margin:0; }
.tk-corporate #root .corp-careers #openings { padding-top:40px!important; border-top:0; }
@media(max-width:1050px) {
 .corp-banner-grid,.corp-detail-hero,.corp-ecommerce-hero { gap:35px; }
 .corp-banner-photo { height:310px; }
 .corp-featured-post { gap:25px; }
 .corp-post-grid { grid-template-columns:1fr 1fr; }
}
@media(max-width:760px) {
 .corp-banner-grid,.corp-detail-hero,.corp-ecommerce-hero { grid-template-columns:minmax(0,1fr); gap:30px; }
 .tk-corporate.tk-light #root>div>main:not(:has(#home)) .corp-banner-grid h1 { font-size:32px!important; }
 .corp-banner-photo { height:240px; }
 .tk-corporate #root .corp-page-hero { padding-block:35px!important; }
 .tk-corporate #root .corp-services-directory>.max-w-6xl { width:calc(100% - 40px); }
 .corp-services-directory .corp-page-hero { margin-bottom:35px; }
 .corp-detail-hero>img { height:260px; }
 .corp-ecommerce-hero>img { height:300px; }
 .corp-featured-post { grid-template-columns:minmax(0,1fr); gap:0; }
 .corp-featured-post>img { height:240px; }
 .corp-featured-post>div { padding:25px; }
 .tk-corporate #root .corp-featured-post h2 { font-size:23px; }
 .corp-post-grid { grid-template-columns:minmax(0,1fr); }
 .corp-insights-content { padding-block:35px 55px; }
 .tk-corporate #root .corp-hiring-grid { grid-template-columns:1fr 1fr; gap:22px; }
 .tk-corporate #root .corp-hiring { padding-block:25px; }
 .tk-corporate #root .corp-hiring h2 { font-size:20px; }
}

