/* TireTag Industrial Premium. Loaded last; operational layouts and state colors remain owned by their features. */
:root {
    --brand-graphite: #2b2f33;
    --brand-ivory: #f5f3ec;
    --brand-orange: #ff6a00;
    --brand-action: #c44800;
    --tt-sidebar-bg: #2b2f33;
    --tt-sidebar-bg-active: #4b3527;
    --tt-app-bg: #f5f3ec;
    --tt-surface: #fff;
    --tt-border: #dedbd3;
    --tt-border-strong: #bdbbb4;
    --tt-text: #2b2f33;
    --tt-muted: #555b5d;
    --tt-muted-soft: #606567;
    --tt-shadow: 0 2px 8px #2b2f3308;
    --rz-primary: #c44800;
    --rz-primary-light: #fff1e5;
    --rz-primary-lighter: #fff7f0;
    --rz-primary-dark: #a93c00;
    --rz-primary-darker: #833000;
    --rz-on-primary: #fff;
    --rz-link-color: #ad3f00;
    --rz-link-hover-color: #833000;
    --rz-body-background-color: #f5f3ec;
    --rz-text-font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --landing-ink: #2b2f33;
    --landing-muted: #555b5d;
    --landing-soft: #f5f3ec;
    --landing-line: #dedbd3;
    --landing-red: #c44800;
    --landing-red-dark: #a93c00;
}
.tt-app-shell { font-family:var(--rz-text-font-family); }
.tt-brand-mark { width:84px; height:84px; object-fit:contain; border-radius:16px; }
.tt-sidebar .tt-footer-logo { width:166px; height:auto; background:var(--brand-ivory); border-radius:4px; }
.tt-app-shell .tt-nav-menu .rz-navigation-item-link:hover { background:#3c4145; }
.tt-app-shell .tt-nav-menu .rz-navigation-item-active > .rz-navigation-item-wrapper { border-left:3px solid var(--brand-orange); }
.tt-app-shell .rz-button.rz-primary { --rz-button-background-color:var(--brand-action); }
.tt-app-shell :is(.rz-textbox,.rz-dropdown,.rz-spinner,.rz-datepicker) { border-radius:6px; }
.tt-app-shell :is(h1,h2,h3) { letter-spacing:-.02em; }
.tt-app-shell :is(button,a,input,select):focus-visible { outline:3px solid var(--brand-action); outline-offset:3px; }
/* Preserve theme toggle: structural surfaces also follow the selected dark theme. */
html:has(link[href*="-dark"]) {
    --tt-app-bg:#202326; --tt-surface:#2b2f33; --tt-border:#4b5053; --tt-border-strong:#65696c;
    --tt-text:#f5f3ec; --tt-muted:#d2d0c9; --tt-muted-soft:#c0bfb9;
    --rz-body-background-color:#202326; --rz-primary:#ff8a38; --rz-on-primary:#202326;
}
.landing-layout { background:var(--brand-ivory); }
.landing-header { background:var(--brand-ivory); backdrop-filter:none; color:var(--brand-graphite); border-bottom:1px solid var(--landing-line); }
.landing-header__inner { max-width:1360px; padding:20px 32px; }
.brand-wordmark { width:205px; height:auto; display:block; }
.landing-brand { border:0; background:none; padding:0; }
.landing-nav__link { font-weight:500; }
.landing-layout .landing-cta { border-radius:6px; box-shadow:none; }
.landing-layout .landing-cta--primary, .landing-header .landing-cta { background:var(--brand-orange); color:#202326; box-shadow:none; }
.landing-layout .landing-cta--primary:hover, .landing-header .landing-cta:hover { background:#eb6000; }
.landing-layout :is(a,button):focus-visible { outline:3px solid #2b2f33; outline-offset:4px; }
.brand-hero { max-width:1360px; margin:auto; display:grid; grid-template-columns:1fr 1.1fr; align-items:stretch; }
.brand-hero-copy { padding:clamp(40px,6vw,84px) 40px; align-self:center; }
.brand-eyebrow { font-size:12px!important; font-weight:700; letter-spacing:.12em; color:#a63b00; }
.brand-hero h1 { font-size:clamp(40px,4.5vw,66px); letter-spacing:-.045em; line-height:1.07; max-width:12ch; margin:20px 0 24px; }
.brand-hero-copy > p:not(.brand-eyebrow) { font-size:19px; line-height:1.65; max-width:34ch; margin-bottom:30px; }
.brand-hero > img { width:100%; height:100%; min-height:470px; object-fit:cover; object-position:65% center; }
.brand-process { display:grid; grid-template-columns:1fr 1.15fr; gap:32px; padding-top:40px; padding-bottom:48px; border-bottom:1px solid var(--landing-line); }
.brand-patch { display:flex; align-items:center; gap:16px; }
.brand-patch img { width:48%; height:auto; mix-blend-mode:multiply; }
.brand-patch h2 { font-size:22px; line-height:1.2; letter-spacing:-.02em; }
.brand-patch p { font-size:14px; line-height:1.6; color:var(--landing-muted); }
.brand-process-steps { list-style:none; display:grid; grid-template-columns:repeat(3,1fr); gap:16px; padding:0; margin:0; align-items:start; }
.brand-process-steps li { display:flex; flex-direction:column; align-items:center; text-align:center; padding:12px 8px; }
.brand-step-number { display:grid; place-items:center; border:1px solid #7c807e; border-radius:50%; width:30px; height:30px; font-size:16px; margin-bottom:20px; }
.brand-process-steps img { width:110px; height:113px; object-fit:contain; mix-blend-mode:multiply; }
.brand-process-steps .rzi { height:113px; display:grid; align-items:center; font-size:58px; color:#c44800; }
.brand-process-steps h3 { font-size:16px; margin:18px 0 8px; }
.brand-process-steps p { font-size:13px; color:var(--landing-muted); line-height:1.5; margin:0; }
.landing-flow, .landing-roles { background:#fff; }
.landing-final, .landing-footer { background:var(--brand-graphite); }
.landing-final .landing-cta { background:var(--brand-orange); color:#202326; }
.landing-phone { border-color:#2b2f33; }
.landing-role-card { box-shadow:none; border-color:var(--landing-line); }
@media(max-width:1080px) { .landing-nav { display:none; } .landing-header__inner { grid-template-columns:auto 1fr; } .brand-process { grid-template-columns:1fr; } .brand-patch img { width:220px; } }
@media(max-width:700px) {
    .landing-header__inner { padding:16px 20px; gap:12px; }
    .brand-wordmark { width:154px; }
    .landing-actions { flex-wrap:wrap; gap:8px; }
    .landing-actions .landing-cta { display:none; }
    .brand-hero { display:flex; flex-direction:column; }
    .brand-hero-copy { padding:36px 24px; width:100%; }
    .brand-hero h1 { max-width:14ch; }
    .brand-hero > img { height:290px; min-height:0; }
    .brand-process { gap:20px; }
    .brand-patch img { width:42%; }
    .brand-process-steps { gap:4px; }
    .brand-process-steps li { padding:8px 2px; }
    .brand-process-steps img { width:90px; }
    .brand-process-steps h3 { font-size:14px; }
}
@media(prefers-reduced-motion:reduce) { .landing-layout * { scroll-behavior:auto!important; transition:none!important; } }
/* Theme-specific component surfaces: Radzen's runtime theme has its own card selectors. */
.tt-app-shell { --tt-blue:var(--brand-action); --rz-scrollbar-color:#969992; --rz-scrollbar-background-color:transparent; }
.tt-app-shell .tt-nav-menu .rz-navigation-item-link-active { border-left-color:var(--brand-orange); }
.tt-app-shell .rz-card { background:var(--tt-surface); color:var(--tt-text); }
html:has(link[href*="-dark"]) .tt-app-shell { --tt-blue:#ff9b56; --brand-action:#ff9b56; --rz-input-background-color:#303639; --rz-input-text-color:#f5f3ec; }
html:has(link[href*="-dark"]) .tt-app-shell :is(.rz-card,.tt-control-metric,.tt-customer-stats,.tt-customer-toolbar,.tt-global-search-results) { background:#2b2f33!important; color:#f5f3ec; }
html:has(link[href*="-dark"]) .tt-app-shell :is(.tt-muted,.tt-control-metric span) { color:#d2d0c9; }
html:has(link[href*="-dark"]) .tt-app-shell .rz-button.rz-primary { color:#202326; }
