/* Brickworks Supply adaptation layer.
   Keeps the South Lake template structure while shifting brand, color, and content rhythm. */

:root {
    --primary: #d71920;
    --primary-rgb: 215, 25, 32;
    --primary-hover: #b71319;
    --accent: #d71920;
    --accent-rgb: 215, 25, 32;
    --text-on-primary: #ffffff;
    --bg-primary: #090909;
    --bg-secondary: #121212;
    --bg-tertiary: #1f1f1f;
    --bg-card: rgba(18, 18, 18, 0.72);
    --text-main: #d8d8d8;
    --text-muted: #8f8f8f;
    --border-color: rgba(255, 255, 255, 0.13);
    --border-hover: rgba(215, 25, 32, 0.45);
}

html[data-theme="black"][data-theme],
html[data-theme="white"][data-theme] {
    background: #090909;
}

body.theme-royal-dark {
    background:
        linear-gradient(180deg, #080808 0%, #141414 42%, #0b0b0b 100%);
}

.site-header {
    background: rgba(8, 8, 8, 0.84);
    border-bottom-color: rgba(255, 255, 255, 0.12);
}

.site-header.scrolled {
    background: rgba(8, 8, 8, 0.96);
}

.brand-logo-wrap,
.drawer-brand .brand-logo,
.footer-logo {
    height: 46px;
}

.brand-logo,
.footer-logo {
    filter: none;
}

.site-nav {
    gap: 1.45rem;
}

.nav-link,
.drawer-main a,
.site-footer nav a {
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.header-call-btn,
.drawer-call-btn,
.btn-primary,
.v3-solid-btn,
.form-submit-btn,
.sticky-mobile-cta {
    background: var(--primary);
    color: #fff;
    border-color: var(--primary);
}

.header-call-btn:hover,
.btn-primary:hover,
.v3-solid-btn:hover,
.form-submit-btn:hover {
    background: var(--primary-hover);
    color: #fff;
}

.hero {
    min-height: 88vh;
}

.hero-overlay {
    background:
        linear-gradient(90deg, rgba(0, 0, 0, 0.82) 0%, rgba(0, 0, 0, 0.54) 42%, rgba(0, 0, 0, 0.18) 100%),
        linear-gradient(0deg, rgba(0, 0, 0, 0.64) 0%, rgba(0, 0, 0, 0.08) 58%);
}

.section-label {
    color: #fff;
    border-color: rgba(215, 25, 32, 0.55);
    background: rgba(215, 25, 32, 0.16);
}

.hero-headline,
.section-title,
.v3-display {
    letter-spacing: 0;
}

.hero-headline {
    line-height: 0.95;
    max-width: 860px;
    text-shadow: 0 8px 28px rgba(0, 0, 0, 0.6);
}

.hero-headline > span,
.hero-headline .word-mask,
.text-split .word-mask {
    overflow: visible;
}



.hero-tagline {
    max-width: 720px;
}

.v3-products {
    background: #0b0f15;
    color: #f5f5f5;
}

.v3-products .section-label {
    color: #d71920;
    border-color: rgba(215, 25, 32, 0.28);
    background: rgba(215, 25, 32, 0.08);
}

.v3-products .v3-display,
.v3-products p {
    color: #d8d8d8;
}

.v3-products .v3-display {
    color: #fff;
}

.v3-products .v3-text-link {
    color: #fff;
}

.v3-product-card,
.v3-project-card,
.svc-card,
.stat-card,
.v3-guarantee-grid article,
.review-card,
.contact-form-card {
    border-radius: 0;
}

.v3-product-card img,
.v3-project-card img,
.svc-img-wrap img {
    filter: saturate(0.94) contrast(1.05);
}

.v3-capabilities {
    background:
        linear-gradient(90deg, rgba(0, 0, 0, 0.82), rgba(0, 0, 0, 0.42)),
        url("../assets/images/brickworks/stone-home.webp") center/cover;
}

.v3-proof {
    background: #d71920;
    color: #fff;
}

.guarantees-marquee {
    background: #111;
    color: #fff;
}

.reviews-section {
    background: #f4f2ee;
    color: #151515;
}

.reviews-section .section-title,
.reviews-section .section-sub,
.reviews-section .review-text,
.reviews-section .review-author strong {
    color: #151515;
}

.projects-section {
    background: #0b0b0b;
}

.gallery-pill.active {
    background: var(--primary);
    border-color: var(--primary);
    color: #fff;
}

.live-dispatch-section {
    display: none;
}

.faq-section {
    background: #f4f2ee;
    color: #151515;
}

.faq-section .section-title,
.faq-section .section-sub,
.faq-question,
.faq-answer {
    color: #151515;
}

.merged-contact-cta {
    background:
        linear-gradient(90deg, rgba(0, 0, 0, 0.86), rgba(0, 0, 0, 0.5)),
        url("../assets/images/brickworks/showroom-detail.webp") center/cover;
}

.site-footer {
    background: #050505;
}

@media (max-width: 760px) {
    .brand-logo-wrap,
    .drawer-brand .brand-logo {
        height: 36px;
    }

    .hero {
        min-height: 82vh;
    }

    .hero-headline {
        font-size: clamp(2rem, 9vw, 2.4rem);
        line-height: 1;
        max-width: 340px;
    }
}

/* Brickworks contrast pass 1: make the reused template readable before deeper layout work. */
:root {
    --brickworks-ink: #f7f3ed;
    --brickworks-ink-soft: #d9d0c4;
    --brickworks-ink-muted: #b9afa4;
    --brickworks-panel: rgba(12, 12, 12, 0.88);
    --brickworks-panel-solid: #111111;
    --brickworks-panel-soft: rgba(255, 255, 255, 0.055);
    --brickworks-paper: #f6f1e8;
    --brickworks-paper-ink: #17110d;
    --brickworks-paper-muted: #4f453c;
}

body.theme-royal-dark {
    color: var(--brickworks-ink);
    background:
        radial-gradient(circle at 12% 0%, rgba(215, 25, 32, 0.16), transparent 30rem),
        linear-gradient(180deg, #050505 0%, #111 46%, #070707 100%);
}

.site-header,
.nav-drawer {
    color: #ffffff;
}

.nav-link,
.drawer-main a,
.site-footer nav a,
.footer-phone,
.drawer-footer,
.hero-tagline,
.section-sub,
.v3-section-copy p,
.about-desc p,
.svc-body p,
.process-card p,
.v3-guarantee-head p,
.v3-guarantee-grid p,
.merged-cta-copy p,
.contact-detail-item span,
.contact-detail-item a,
.footer-brand-block p,
.footer-bottom p {
    color: var(--brickworks-ink-soft);
}

.section-title,
.v3-display,
.hero-headline,
.svc-card h3,
.process-card h3,
.v3-guarantee-grid h3,
.review-author strong,
.contact-detail-item strong,
.footer-phone {
    color: #ffffff;
}

.section-label {
    color: #ffffff;
    border-color: rgba(255, 255, 255, 0.2);
    background: rgba(215, 25, 32, 0.42);
    box-shadow: 0 12px 34px rgba(0, 0, 0, 0.24);
}

.hero-overlay {
    background:
        radial-gradient(circle at 70% 28%, rgba(215, 25, 32, 0.12), transparent 30%),
        linear-gradient(90deg, rgba(0, 0, 0, 0.92) 0%, rgba(0, 0, 0, 0.72) 44%, rgba(0, 0, 0, 0.32) 100%),
        linear-gradient(0deg, rgba(0, 0, 0, 0.86) 0%, rgba(0, 0, 0, 0.18) 62%);
}

.hero-tagline {
    text-shadow: 0 8px 26px rgba(0, 0, 0, 0.72);
}

.v3-products,
.services-section,
.projects-section {
    background:
        radial-gradient(circle at 90% 0%, rgba(215, 25, 32, 0.11), transparent 28rem),
        #090909;
}

.about-section,
.v3-guarantees,
.process-section,
.merged-contact-cta {
    background:
        radial-gradient(circle at 8% 8%, rgba(215, 25, 32, 0.1), transparent 26rem),
        linear-gradient(180deg, #14100d 0%, #090909 100%);
    color: var(--brickworks-ink);
}

.v3-products .section-label {
    color: #ffffff;
    border-color: rgba(255, 255, 255, 0.18);
    background: rgba(215, 25, 32, 0.46);
}

.v3-products .v3-display,
.v3-products p,
.v3-products .v3-text-link {
    color: #ffffff;
}

.v3-product-card,
.v3-project-card,
.svc-card,
.stat-card,
.process-card,
.v3-guarantee-grid article,
.contact-form-card,
.faq-item {
    background: var(--brickworks-panel);
    border: 1px solid rgba(255, 255, 255, 0.15);
    color: var(--brickworks-ink);
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.36);
}

.v3-product-card::after,
.v3-project-card::after,
.svc-card::before {
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.08), rgba(0, 0, 0, 0.88) 78%);
}

.v3-product-card strong,
.v3-project-card strong,
.svc-card h3,
.stat-card strong,
.process-card h3 {
    color: #ffffff;
    text-shadow: 0 5px 22px rgba(0, 0, 0, 0.58);
}

.svc-card p,
.process-card p,
.v3-guarantee-grid p,
.faq-answer,
.review-text {
    color: var(--brickworks-ink-soft);
}

.v3-capabilities {
    background:
        linear-gradient(90deg, rgba(0, 0, 0, 0.9), rgba(0, 0, 0, 0.64)),
        linear-gradient(0deg, rgba(0, 0, 0, 0.38), rgba(0, 0, 0, 0.18)),
        url("../assets/images/brickworks/stone-home.webp") center/cover;
    color: #ffffff;
}

.v3-capabilities :is(.v3-display, p, li, .v3-text-link) {
    color: #ffffff;
    text-shadow: 0 5px 20px rgba(0, 0, 0, 0.52);
}

.v3-proof {
    background: #b71319;
    color: #ffffff;
}

.v3-proof-content span {
    color: #ffffff;
    text-shadow: 0 5px 18px rgba(0, 0, 0, 0.26);
}

.reviews-section,
.faq-section {
    background: var(--brickworks-paper);
    color: var(--brickworks-paper-ink);
}

.reviews-section :is(.section-title, .section-sub, .review-text, .review-author strong),
.faq-section :is(.section-title, .section-sub, .faq-question, .faq-answer) {
    color: var(--brickworks-paper-ink);
}

.reviews-section .section-sub,
.faq-section .section-sub,
.faq-section .faq-answer {
    color: var(--brickworks-paper-muted);
}

.reviews-section .review-card,
.faq-section .faq-item {
    background: #ffffff;
    border-color: rgba(23, 17, 13, 0.14);
    color: var(--brickworks-paper-ink);
    box-shadow: 0 18px 45px rgba(44, 31, 22, 0.12);
}

.gallery-pill,
.gallery-nav {
    color: #ffffff;
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(255, 255, 255, 0.22);
}

.gallery-pill:hover:not(.active),
.gallery-nav:hover:not(:disabled),
.gallery-nav:focus-visible,
.gallery-pill:focus-visible {
    background: rgba(215, 25, 32, 0.24);
    border-color: rgba(215, 25, 32, 0.62);
    color: #ffffff;
}

.merged-contact-cta {
    background:
        linear-gradient(90deg, rgba(0, 0, 0, 0.93), rgba(0, 0, 0, 0.68)),
        linear-gradient(0deg, rgba(0, 0, 0, 0.52), rgba(0, 0, 0, 0.1)),
        url("../assets/images/brickworks/showroom-detail.webp") center/cover;
}

.contact-form-card {
    background: rgba(7, 7, 7, 0.9);
}

.form-group label,
.checkbox-container {
    color: var(--brickworks-ink-soft);
}

.form-group input[type="text"],
.form-group input[type="email"],
.form-group input[type="tel"],
.form-group input[type="number"],
.form-group textarea {
    background: rgba(255, 255, 255, 0.96);
    border-color: rgba(255, 255, 255, 0.22);
    color: #111111;
}

.form-group input::placeholder,
.form-group textarea::placeholder {
    color: #6b625a;
}

.form-group input:focus,
.form-group textarea:focus {
    background: #ffffff;
    border-color: rgba(215, 25, 32, 0.74);
    box-shadow: 0 0 0 4px rgba(215, 25, 32, 0.18);
}

.checkbox-custom {
    background: rgba(255, 255, 255, 0.96);
    border-color: rgba(255, 255, 255, 0.32);
}

.checkbox-container input:checked ~ .checkbox-custom {
    background: var(--primary);
    border-color: var(--primary);
}

.site-footer {
    background: #050505;
    border-top: 1px solid rgba(255, 255, 255, 0.12);
}

@media (max-width: 760px) {
    .hero-overlay {
        background:
            linear-gradient(180deg, rgba(0, 0, 0, 0.82), rgba(0, 0, 0, 0.72)),
            linear-gradient(0deg, rgba(0, 0, 0, 0.92), rgba(0, 0, 0, 0.18));
    }

    .section-sub,
    .v3-section-copy p,
    .svc-body p,
    .process-card p,
    .v3-guarantee-grid p,
    .merged-cta-copy p {
        color: var(--brickworks-ink-soft);
    }
}

/* Brickworks final visual system: clean consolidated rules. */
:root{
  --bw-heading:"Inter Tight","Helvetica Neue",Helvetica,Arial,sans-serif;
  --bw-body:"Inter Tight","Helvetica Neue",Helvetica,Arial,sans-serif;
  --bw-black:#050505;--bw-ink:#221b16;--bw-paper:#fff;
  --bw-bronze:#7a4c2f;--bw-bronze-hover:#6a3f27;--bw-gold:#cc9f53;
  --bw-text:#f7f3ed;--bw-muted:#d9d0c4;--bw-panel:rgba(18,18,18,.92);
  --primary:var(--bw-bronze);--primary-rgb:122,76,47;--primary-hover:var(--bw-bronze-hover);
  --accent:var(--bw-bronze);--accent-rgb:122,76,47;--text-on-primary:#fff;
  --bg-primary:var(--bw-black);--bg-secondary:#111;--bg-tertiary:#1b1b1b;--bg-card:var(--bw-panel);
  --text-main:var(--bw-text);--text-muted:var(--bw-muted);--border-color:rgba(213,187,166,.22);
}
html[data-theme]{background:var(--bw-black);--primary:var(--bw-bronze);--primary-hover:var(--bw-bronze-hover);--accent:var(--bw-bronze);--text-main:var(--bw-text);--text-muted:var(--bw-muted);--bg-primary:var(--bw-black);--bg-secondary:#111;--bg-card:var(--bw-panel)}
html[data-theme="contrast"]{--bw-bronze:#fff;--bw-bronze-hover:#d9d0c4;--primary:#fff;--primary-hover:#d9d0c4;--text-on-primary:#050505}
body,button,input,select,textarea{font-family:var(--bw-body)}
body.theme-royal-dark{color:var(--bw-text);background:radial-gradient(circle at 12% 0%,rgba(213,187,166,.16),transparent 30rem),linear-gradient(180deg,#050505 0%,#111 46%,#070707 100%)}
.hero-headline,.section-title,.v3-display,.v3-product-card strong,.v3-project-card strong,.svc-card h3,.process-card h3,.v3-guarantee-grid h3,.review-author strong,.faq-question,.contact-detail-item strong,.section-label,.nav-link,.drawer-main a,.btn,.header-call-btn,.drawer-call-btn,.v3-solid-btn,.form-submit-btn,.contact-submit{font-family:var(--bw-heading)}
.hero-headline,.section-title,.v3-display{letter-spacing:-.045em;line-height:.96;font-weight:800;color:#fff}.hero-headline{max-width:900px;text-shadow:0 8px 34px rgba(0,0,0,.84),0 2px 10px rgba(0,0,0,.7)}
.site-header,.nav-drawer{color:#fff;background:rgba(0,0,0,.94);border-bottom-color:rgba(213,187,166,.22)}.site-header.scrolled{background:rgba(0,0,0,.98)}
.brand-logo-wrap,.drawer-brand .brand-logo,.footer-logo{height:46px}.site-header .brand-logo,.nav-drawer .brand-logo,.drawer-brand .brand-logo,.site-footer .footer-logo{filter:brightness(0) invert(1) contrast(1.18);opacity:1}
.nav-link,.drawer-main a,.site-footer nav a{color:var(--bw-muted);text-transform:uppercase;letter-spacing:.04em}.nav-link:hover,.drawer-main a:hover,.site-footer nav a:hover,.v3-text-link,.inline-link,.footer-link,.contact-detail-item a{color:#f2c889}
.header-call-btn,.drawer-call-btn,.btn-primary,.btn.btn-primary,.v3-solid-btn,.form-submit-btn,.contact-submit,.sticky-mobile-cta,.gallery-pill.active,.section-label{color:#fff;background:var(--bw-bronze);border-color:rgba(255,255,255,.22);text-shadow:0 1px 2px rgba(0,0,0,.35)}
.header-call-btn:hover,.drawer-call-btn:hover,.btn-primary:hover,.btn.btn-primary:hover,.v3-solid-btn:hover,.form-submit-btn:hover,.contact-submit:hover,.gallery-pill.active:hover{color:#fff;background:var(--bw-bronze-hover)}.btn.btn-outline{color:#fff;background:rgba(0,0,0,.72);border-color:rgba(255,255,255,.68)}
.hero{min-height:88vh;background-color:var(--bw-black)}.hero-overlay{background:linear-gradient(180deg,rgba(0,0,0,.88),rgba(0,0,0,.7)),linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.54) 48%,rgba(0,0,0,.2) 100%)}
.hero-tagline,.section-sub,.v3-section-copy p,.about-desc p,.svc-body p,.process-card p,.v3-guarantee-head p,.v3-guarantee-grid p,.merged-cta-copy p,.contact-detail-item span,.footer-brand-block p,.footer-bottom p{color:var(--bw-muted)}
.v3-products,.about-section,.services-section,.v3-guarantees,.process-section,.projects-section,.merged-contact-cta,.site-footer{color:var(--bw-text);background-color:var(--bw-black);background-image:none}.v3-products .v3-display,.v3-products p,.about-section .section-title,.about-section p,.services-section .section-title,.services-section .section-sub,.services-section p,.v3-guarantees .v3-display,.v3-guarantees p,.process-section .section-title,.process-section .section-sub,.projects-section .section-title,.projects-section .section-sub,.projects-section .v3-display,.projects-section p{color:var(--bw-text);text-shadow:none}
.v3-products .v3-text-link,.services-section .v3-text-link,.projects-section .v3-text-link{color:#f2c889}.gallery-pill:not(.active){color:var(--bw-text);background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.24)}
.v3-product-card,.v3-project-card,.svc-card,.stat-card,.process-card,.v3-guarantee-grid article,.project-card,.contact-detail-item,.contact-form-card,.merged-contact-card{color:#fff;background:var(--bw-panel);border-color:rgba(213,187,166,.22);border-radius:20px}.v3-product-card :is(h3,h4,p,span,strong),.v3-project-card :is(h3,h4,p,span,strong),.svc-card :is(h3,p),.stat-card :is(h3,p),.process-card :is(h3,p),.v3-guarantee-grid article :is(h3,p,span,strong),.project-card :is(h3,h4,p,span,strong),.contact-detail-item :is(strong,span,a){color:#fff}
.v3-product-card img,.v3-project-card img,.svc-img-wrap img,.project-card img{filter:saturate(.94) contrast(1.05)}.v3-product-card strong,.v3-project-card strong{background:rgba(0,0,0,.76);border-radius:14px;padding:.7rem .85rem}
.reviews-section,.faq-section{color:var(--bw-ink);background:#fff;background-image:none}.reviews-section :is(.section-title,.section-sub,.review-text,.review-author strong,.review-author span),.faq-section :is(.section-title,.section-sub,.faq-question,.faq-answer,.faq-answer p){color:var(--bw-ink);text-shadow:none}.review-card,.faq-item{color:var(--bw-ink);background:#fff;border-color:rgba(84,85,90,.18)}.review-card :is(p,span),.faq-item :is(p,span){color:#4d4540}
.reviews-cta{color:#fff;background:#111;border:1px solid rgba(213,187,166,.24);border-radius:22px;padding:22px;box-shadow:0 18px 46px rgba(0,0,0,.18)}.reviews-cta p{color:#fff}.reviews-cta .btn.btn-outline{color:#111;background:#fff;border-color:#fff}
.form-group label,.contact-form-card h3,.contact-form-card p{color:var(--bw-ink)}.form-group input,.form-group textarea,.form-group select{color:#111;background:#fff;border-color:rgba(213,187,166,.42)}.form-group input::placeholder,.form-group textarea::placeholder{color:#5f564e}.live-dispatch-section{display:none}
html[data-theme="contrast"] .gallery-pill:not(.active){color:#f8f8f8;background:#050505;border-color:#f8f8f8}html[data-theme="contrast"] :is(.header-call-btn,.drawer-call-btn,.btn-primary,.btn.btn-primary,.v3-solid-btn,.form-submit-btn,.contact-submit,.sticky-mobile-cta,.gallery-pill.active,.section-label){color:#050505;background:#fff;border-color:#fff;text-shadow:none}
@media(max-width:760px){.brand-logo-wrap,.drawer-brand .brand-logo{height:36px}.hero{min-height:82vh}.hero-headline{font-size:clamp(2rem,9vw,2.4rem);line-height:1;max-width:340px;letter-spacing:-.052em}.section-title,.v3-display{line-height:1.02;letter-spacing:-.035em}.hero-overlay{background:linear-gradient(180deg,rgba(0,0,0,.94),rgba(0,0,0,.8)),linear-gradient(0deg,rgba(0,0,0,.96),rgba(0,0,0,.32))}}

/* Specific theme surface pins, kept clean and without important overrides. */
html[data-theme] .reviews-section,
html[data-theme] .faq-section{
  color:var(--bw-ink);
  background:#fff;
  background-image:none;
}
html[data-theme] .reviews-section :is(.section-title,.section-sub,.review-text,.review-author strong,.review-author span),
html[data-theme] .faq-section :is(.section-title,.section-sub,.faq-question,.faq-answer,.faq-answer p){
  color:var(--bw-ink);
  text-shadow:none;
}
html[data-theme] :is(.v3-products,.about-section,.services-section,.v3-guarantees,.process-section,.projects-section){
  color:var(--bw-text);
  background:#050505;
  background-image:none;
}
html[data-theme] :is(.v3-products,.about-section,.services-section,.v3-guarantees,.process-section,.projects-section) :is(.section-title,.section-sub,.v3-display,h2,h3,h4,p,strong,span,li){
  color:var(--bw-text);
  text-shadow:none;
}
html[data-theme] :is(.v3-products,.about-section,.services-section,.v3-guarantees,.process-section,.projects-section) :is(.v3-product-card,.v3-project-card,.svc-card,.stat-card,.process-card,.v3-guarantee-grid article,.project-card,.scroll-card){
  color:#fff;
  background:var(--bw-panel);
  border-color:rgba(213,187,166,.22);
}
html[data-theme] :is(.v3-products,.about-section,.services-section,.v3-guarantees,.process-section,.projects-section) :is(.v3-product-card,.v3-project-card,.svc-card,.stat-card,.process-card,.v3-guarantee-grid article,.project-card,.scroll-card) :is(h3,h4,p,strong,span,li,i){
  color:#fff;
}
html[data-theme="contrast"] :is(.services-section,.services-section .section-title,.services-section .section-sub,.services-section p,.services-section .svc-card h3,.services-section .svc-card p){
  color:#090909;
}
html[data-theme="contrast"] .services-section :is(.svc-card,.scroll-card){
  background:#f4f4f2;
  border-color:#090909;
}

/* Specificity bump against the template theme engine, without important. */
[data-theme][data-theme] .reviews-section,
[data-theme][data-theme] .faq-section{
  color:var(--bw-ink);
  background:#fff;
  background-image:none;
}
[data-theme][data-theme] .reviews-section :is(.section-title,.section-sub,.review-text,.review-author strong,.review-author span),
[data-theme][data-theme] .faq-section :is(.section-title,.section-sub,.faq-question,.faq-answer,.faq-answer p){color:var(--bw-ink);text-shadow:none}
[data-theme][data-theme] :is(.v3-products,.about-section,.services-section,.v3-guarantees,.process-section,.projects-section){
  color:var(--bw-text);
  background:#050505;
  background-image:none;
}
[data-theme][data-theme] :is(.v3-products,.about-section,.services-section,.v3-guarantees,.process-section,.projects-section) :is(.section-title,.section-sub,.v3-display,h2,h3,h4,p,strong,span,li){color:var(--bw-text);text-shadow:none}
[data-theme][data-theme] :is(.v3-products,.about-section,.services-section,.v3-guarantees,.process-section,.projects-section) :is(.v3-product-card,.v3-project-card,.svc-card,.stat-card,.process-card,.v3-guarantee-grid article,.project-card,.scroll-card){color:#fff;background:var(--bw-panel);border-color:rgba(213,187,166,.22)}
[data-theme][data-theme] :is(.v3-products,.about-section,.services-section,.v3-guarantees,.process-section,.projects-section) :is(.v3-product-card,.v3-project-card,.svc-card,.stat-card,.process-card,.v3-guarantee-grid article,.project-card,.scroll-card) :is(h3,h4,p,strong,span,li,i){color:#fff}
[data-theme="contrast"][data-theme] .services-section,
[data-theme="contrast"][data-theme] .services-section :is(.section-title,.section-sub,p,.svc-card h3,.svc-card p){color:#090909;background:#f4f4f2}

/* Dark theme review/FAQ contrast follows the theme surface instead of fighting it. */
[data-theme="deep-blue"][data-theme] :is(.reviews-section,.faq-section),
[data-theme="obsidian"][data-theme] :is(.reviews-section,.faq-section),
[data-theme="steel"][data-theme] :is(.reviews-section,.faq-section),
[data-theme="foundry"][data-theme] :is(.reviews-section,.faq-section),
[data-theme="safety"][data-theme] :is(.reviews-section,.faq-section),
[data-theme="textured"][data-theme] :is(.reviews-section,.faq-section){color:var(--bw-text)}
[data-theme="deep-blue"][data-theme] :is(.reviews-section,.faq-section) :is(.section-title,.section-sub,h2,h3,p,strong,span,.faq-question,.faq-answer),
[data-theme="obsidian"][data-theme] :is(.reviews-section,.faq-section) :is(.section-title,.section-sub,h2,h3,p,strong,span,.faq-question,.faq-answer),
[data-theme="steel"][data-theme] :is(.reviews-section,.faq-section) :is(.section-title,.section-sub,h2,h3,p,strong,span,.faq-question,.faq-answer),
[data-theme="foundry"][data-theme] :is(.reviews-section,.faq-section) :is(.section-title,.section-sub,h2,h3,p,strong,span,.faq-question,.faq-answer),
[data-theme="safety"][data-theme] :is(.reviews-section,.faq-section) :is(.section-title,.section-sub,h2,h3,p,strong,span,.faq-question,.faq-answer),
[data-theme="textured"][data-theme] :is(.reviews-section,.faq-section) :is(.section-title,.section-sub,h2,h3,p,strong,span,.faq-question,.faq-answer){color:var(--bw-text)}
/* Two-theme surface system. These selectors intentionally sit at the end of the adaptation layer. */
.theme-swatch.black{background:radial-gradient(circle at 35% 35%,#7a4c2f 0%,#050505 72%)}
.theme-swatch.white{background:radial-gradient(circle at 35% 35%,#ffffff 0%,#f7f4ef 48%,#7a4c2f 100%);border-color:rgba(35,27,22,.28)}
.theme-swatch.black-accent{background:radial-gradient(circle at 35% 35%,#2f2f2f 0%,#050505 72%);border-color:rgba(255,255,255,.24)}

html[data-theme="black"][data-theme],
html[data-theme="black-accent"][data-theme]{
  --bw-bg:#050505;--bw-bg-alt:#111;--bw-card:rgba(18,18,18,.92);
  --bw-text:#f7f3ed;--bw-muted:#d9d0c4;--bw-ink:#221b16;--bw-paper:#fff;
  --bw-border:rgba(213,187,166,.22);--bw-soft-border:rgba(213,187,166,.16);
}

html[data-theme="black-accent"][data-theme]{
  --bw-bronze:#050505;--bw-bronze-hover:#1d1d1d;--bw-gold:#111111;
  --primary:#050505;--primary-rgb:5,5,5;--primary-hover:#1d1d1d;
  --accent:#050505;--accent-rgb:5,5,5;
  --bw-border:rgba(0,0,0,.22);--bw-soft-border:rgba(0,0,0,.14);
}

html[data-theme="black-accent"][data-theme] :is(.header-call-btn,.drawer-call-btn,.btn-primary,.btn.btn-primary,.v3-solid-btn,.form-submit-btn,.contact-submit,.sticky-mobile-cta,.gallery-pill.active,.theme-btn.active,.section-label){
  color:#ffffff;background:#050505;border-color:#050505;text-shadow:0 1px 1px rgba(0,0,0,.55);
}
html[data-theme="black-accent"][data-theme] :is(.header-call-btn,.drawer-call-btn,.btn-primary,.btn.btn-primary,.v3-solid-btn,.form-submit-btn,.contact-submit,.sticky-mobile-cta,.gallery-pill.active):hover{
  color:#ffffff;background:#1d1d1d;border-color:#1d1d1d;
}

html[data-theme="black-accent"][data-theme] :is(.v3-product-card,.v3-project-card,.svc-card,.stat-card,.process-card,.v3-guarantee-grid article,.project-card,.contact-detail-item,.contact-form-card,.merged-contact-card,.location-finder-visual,.location-search-panel,.location-card,.resource-pathway-card){
  border-color:rgba(0,0,0,.24);
}

html[data-theme="black-accent"][data-theme] :is(.location-stats span,.location-card-topline span,.resource-pathway-card span,.checkbox-custom,.stat-icon-wrap,.scroll-wheel){
  border-color:#050505;
}
html[data-theme="black-accent"][data-theme] :is(.location-stats span,.location-card-topline span,.resource-pathway-card span){
  border-left-color:#050505;
}
html[data-theme="black-accent"][data-theme] :is(input:checked + .checkbox-custom,.checkbox-container input:checked + .checkbox-custom,.scroll-wheel){
  background:#050505;
}
html[data-theme="black-accent"][data-theme] .process-num{
  color:rgba(0,0,0,.18);
  -webkit-text-fill-color:rgba(0,0,0,.18);
  border-color:rgba(0,0,0,.18);
}

html[data-theme="white"][data-theme]{
  --bw-bg:#fff;--bw-bg-alt:#f7f4ef;--bw-card:#fff;
  --bw-text:#231b16;--bw-muted:#5a5048;--bw-ink:#231b16;--bw-paper:#fff;
  --bw-border:rgba(35,27,22,.14);--bw-soft-border:rgba(122,76,47,.16);
  --bg-primary:#fff;--bg-secondary:#f7f4ef;--bg-card:#fff;
  --text-main:#231b16;--text-muted:#5a5048;
}

html[data-theme="black"][data-theme] body.theme-royal-dark{
  color:var(--bw-text);
  background:radial-gradient(circle at 12% 0%,rgba(213,187,166,.16),transparent 30rem),linear-gradient(180deg,#050505 0%,#111 46%,#070707 100%);
}

html[data-theme="white"][data-theme] body.theme-royal-dark{
  color:var(--bw-text);
  background:#fff;
}

html[data-theme="black"][data-theme] :is(.v3-products,.about-section,.services-section,.v3-guarantees,.process-section,.projects-section,.merged-contact-cta){
  color:var(--bw-text);
  background:#050505;
  background-image:none;
}

html[data-theme="white"][data-theme] :is(.v3-products,.about-section,.services-section,.v3-guarantees,.process-section,.projects-section,.reviews-section,.faq-section){
  color:var(--bw-text);
  background:var(--bw-bg-alt);
  background-image:none;
}

html[data-theme="white"][data-theme] :is(.about-section,.v3-guarantees,.projects-section,.faq-section){
  background:#fff;
}

html[data-theme="black"][data-theme] :is(.v3-products,.about-section,.services-section,.v3-guarantees,.process-section,.projects-section,.reviews-section,.faq-section) :is(.section-title,.section-sub,.v3-display,h2,h3,h4,p,strong,span,li,.faq-question,.faq-answer,.review-text),
html[data-theme="black"][data-theme] :is(.v3-products,.about-section,.services-section,.v3-guarantees,.process-section,.projects-section) :is(.v3-product-card,.v3-project-card,.svc-card,.stat-card,.process-card,.v3-guarantee-grid article,.project-card,.scroll-card) :is(h3,h4,p,strong,span,li,i){
  color:var(--bw-text);
  text-shadow:none;
}

html[data-theme="white"][data-theme] :is(.v3-products,.about-section,.services-section,.v3-guarantees,.process-section,.projects-section,.reviews-section,.faq-section) :is(.section-title,.section-sub,.v3-display,h2,h3,h4,p,strong,span,li,.faq-question,.faq-answer,.review-text,.review-author strong,.review-author span){
  color:var(--bw-text);
  text-shadow:none;
}

html[data-theme="black"][data-theme] :is(.v3-product-card,.v3-project-card,.svc-card,.stat-card,.process-card,.v3-guarantee-grid article,.project-card,.scroll-card,.contact-detail-item,.merged-contact-card){
  color:#fff;
  background:var(--bw-card);
  border-color:var(--bw-border);
}

html[data-theme="white"][data-theme] :is(.v3-product-card,.v3-project-card,.svc-card,.stat-card,.process-card,.v3-guarantee-grid article,.project-card,.scroll-card,.review-card,.faq-item){
  color:var(--bw-text);
  background:#fff;
  border-color:var(--bw-border);
  box-shadow:0 18px 45px rgba(35,27,22,.08);
}

html[data-theme="white"][data-theme] :is(.v3-product-card,.v3-project-card,.svc-card,.stat-card,.process-card,.v3-guarantee-grid article,.project-card,.scroll-card,.review-card,.faq-item) :is(h3,h4,p,strong,span,li,i){
  color:var(--bw-text);
}

html[data-theme="white"][data-theme] :is(.v3-product-card strong,.v3-project-card strong){
  color:#fff;
  background:rgba(35,27,22,.82);
}

html[data-theme="black"][data-theme] :is(.reviews-section,.faq-section){
  color:var(--bw-ink);
  background:#fff;
  background-image:none;
}

html[data-theme="black"][data-theme] :is(.reviews-section,.faq-section) :is(.section-title,.section-sub,.review-text,.review-author strong,.review-author span,.faq-question,.faq-answer,.faq-answer p){
  color:var(--bw-ink);
  text-shadow:none;
}

html[data-theme="black"][data-theme] .site-footer,
html[data-theme="white"][data-theme] .site-footer,
html[data-theme="black"][data-theme] .site-header,
html[data-theme="white"][data-theme] .site-header,
html[data-theme="black"][data-theme] .nav-drawer,
html[data-theme="white"][data-theme] .nav-drawer{
  color:#fff;
  background:rgba(0,0,0,.96);
  border-color:rgba(213,187,166,.22);
}

html[data-theme="black"][data-theme] .site-header .brand-logo,
html[data-theme="white"][data-theme] .site-header .brand-logo,
html[data-theme="black"][data-theme] .nav-drawer .brand-logo,
html[data-theme="white"][data-theme] .nav-drawer .brand-logo,
html[data-theme="black"][data-theme] .drawer-brand .brand-logo,
html[data-theme="white"][data-theme] .drawer-brand .brand-logo,
html[data-theme="black"][data-theme] .site-footer .footer-logo,
html[data-theme="white"][data-theme] .site-footer .footer-logo{
  filter:brightness(0) invert(1) contrast(1.18);
  opacity:1;
}

/* Brickworks two-theme contrast finish. */
html[data-theme][data-theme] :is(.nav-link, .drawer-main a, .site-footer nav a) { color: #f7f3ed; }
html[data-theme][data-theme] :is(.nav-link, .drawer-main a, .site-footer nav a):hover { color: #f2c889; }
html[data-theme][data-theme] :is(.v3-text-link, .inline-link, .footer-link, .stat-card h3, .svc-card h3, .process-card h3, .v3-guarantee-grid h3, .review-card h3, .faq-item h3) { font-family: var(--bw-heading); }
html[data-theme="black"][data-theme] .v3-text-link { color: #f2c889; }
html[data-theme="white"][data-theme] .v3-text-link { color: #633b25; }
html[data-theme][data-theme] :is(.section-label, .section-label *, .gallery-pill.active, .gallery-pill.active *) { color: #ffffff; }

html[data-theme="black"][data-theme] :is(.reviews-section, .faq-section) :is(.section-title, .section-title *, .v3-display, .v3-display *, .section-sub, .section-sub *, .review-text, .review-author strong, .review-author span, .faq-question, .faq-question *, .faq-answer, .faq-answer *, .faq-answer p) { color: #231b16; text-shadow: none; }

html[data-theme="white"][data-theme] :is(.v3-products, .services-section, .process-section, .reviews-section) { color: #231b16; background: #f7f4ef; background-image: none; }
html[data-theme="white"][data-theme] :is(.about-section, .v3-guarantees, .projects-section, .faq-section) { color: #231b16; background: #ffffff; background-image: none; }
html[data-theme="white"][data-theme] :is(.v3-products, .about-section, .services-section, .v3-guarantees, .process-section, .projects-section, .reviews-section, .faq-section) :is(.section-title, .section-title *, .section-sub, .section-sub *, .v3-display, .v3-display *, h2, h3, h4, p, li, strong, span, .faq-question, .faq-question *, .faq-answer, .faq-answer *, .review-text, .review-author strong, .review-author span) { color: #231b16; text-shadow: none; }
html[data-theme="white"][data-theme] :is(.v3-product-card, .v3-project-card, .svc-card, .stat-card, .process-card, .v3-guarantee-grid article, .project-card, .scroll-card, .review-card, .faq-item) { color: #231b16; background: #ffffff; border-color: rgba(35, 27, 22, .14); box-shadow: 0 18px 45px rgba(35, 27, 22, .08); }
html[data-theme="white"][data-theme] :is(.v3-product-card, .v3-project-card, .svc-card, .stat-card, .process-card, .v3-guarantee-grid article, .project-card, .scroll-card, .review-card, .faq-item) :is(h3, h4, p, strong, span, li, i) { color: #231b16; }

html[data-theme][data-theme] :is(.v3-product-card strong, .v3-project-card strong) { color: #ffffff; background: rgba(0, 0, 0, .78); border-radius: 14px; padding: .7rem .85rem; }
html[data-theme][data-theme] .contact-form-card { color: #231b16; background: #ffffff; border-color: rgba(213, 187, 166, .28); }
html[data-theme][data-theme] .contact-form-card :is(h3, p, label, .checkbox-container, .section-sub-label) { color: #231b16; }
html[data-theme][data-theme] :is(.contact-detail-item, .merged-contact-card) { color: #ffffff; background: rgba(18, 18, 18, .94); border-color: rgba(213, 187, 166, .22); }
html[data-theme][data-theme] :is(.contact-detail-item, .merged-contact-card) :is(strong, span, a, p) { color: #ffffff; }

html[data-theme="black"][data-theme] .v3-recent-projects {
  color: #f7f3ed;
  background: #050505;
  background-image: none;
}

html[data-theme="white"][data-theme] .v3-recent-projects {
  color: #231b16;
  background: #ffffff;
  background-image: none;
}

html[data-theme][data-theme] .v3-recent-projects :is(.section-label, .section-label *) { color: #ffffff; }
html[data-theme="black"][data-theme] .v3-recent-projects :is(.section-title, .section-title *, .section-sub, .section-sub *, .v3-display, .v3-display *, h2, h3, h4, p, li, strong, span) { color: #f7f3ed; text-shadow: none; }
html[data-theme="white"][data-theme] .v3-recent-projects :is(.section-title, .section-title *, .section-sub, .section-sub *, .v3-display, .v3-display *, h2, h3, h4, p, li, strong, span) { color: #231b16; text-shadow: none; }
html[data-theme][data-theme] .v3-recent-projects .v3-text-link { color: var(--bw-bronze-hover); }
html[data-theme="black"][data-theme] .v3-recent-projects .v3-text-link { color: #f2c889; }

html[data-theme][data-theme] .site-footer nav a {
  font-family: var(--bw-heading);
}

html[data-theme="white"][data-theme] :is(.v3-product-card strong, .v3-project-card strong),
html[data-theme="black"][data-theme] :is(.v3-product-card strong, .v3-project-card strong) {
  color: #ffffff;
  background: rgba(0, 0, 0, .78);
}

html[data-theme="white"][data-theme] .v3-products .v3-product-card strong,
html[data-theme="white"][data-theme] .v3-recent-projects .v3-project-card strong {
  color: #ffffff;
  background: rgba(0, 0, 0, .78);
}

/* Radius and white-theme surface normalization. */
:root {
  --bw-radius-card: 0px;
  --bw-radius-control: 0px;
  --bw-radius-input: 0px;
}

html[data-theme][data-theme] :is(.about-showcase, .about-slider-shell, .about-slider-stage, .about-slide, .parallax-wrap, .v3-product-card, .v3-project-card, .svc-card, .stat-card, .process-card, .v3-guarantee-grid article, .project-card, .scroll-card, .review-card, .faq-item, .contact-form-card, .contact-detail-item, .merged-contact-card) {
  border-radius: var(--bw-radius-card);
  overflow: hidden;
}

html[data-theme][data-theme] :is(.section-label, .btn, .header-call-btn, .drawer-call-btn, .v3-solid-btn, .form-submit-btn, .contact-submit, .gallery-pill, .theme-btn, .sticky-mobile-cta, .reviews-cta .btn) {
  border-radius: var(--bw-radius-control);
}

html[data-theme][data-theme] :is(input, textarea, select, .form-group input, .form-group textarea, .form-group select) {
  border-radius: var(--bw-radius-input);
}

html[data-theme][data-theme] :is(.v3-product-card img, .v3-project-card img, .svc-img-wrap, .svc-img-wrap img, .project-card img) {
  border-radius: var(--bw-radius-card);
}

html[data-theme="white"][data-theme] :is(.stat-card, .svc-card, .process-card, .v3-guarantee-grid article, .review-card, .faq-item) {
  color: #231b16;
  background: #ffffff;
  border-color: rgba(35, 27, 22, .14);
  box-shadow: 0 18px 45px rgba(35, 27, 22, .08);
}

html[data-theme="white"][data-theme] :is(.stat-card, .svc-card, .process-card, .v3-guarantee-grid article, .review-card, .faq-item) :is(h3, h4, p, strong, span, li, i, .faq-question, .faq-answer, .faq-answer p) {
  color: #231b16;
}

html[data-theme="white"][data-theme] .projects-section .project-card {
  color: #ffffff;
  background: rgba(18, 18, 18, .94);
  border-color: rgba(213, 187, 166, .22);
}

html[data-theme="white"][data-theme] .projects-section .project-card :is(h3, h4, p, strong, span, li, i, a) {
  color: #ffffff;
}

html[data-theme][data-theme] .gallery-pill {
  font-family: var(--bw-heading);
}

html[data-theme="white"][data-theme] :is(.about-section .stat-card, .services-section .svc-card, .process-section .process-card, .v3-guarantees .v3-guarantee-grid article) {
  color: #231b16;
  background: #ffffff;
  border-color: rgba(35, 27, 22, .14);
  box-shadow: 0 18px 45px rgba(35, 27, 22, .08);
}

html[data-theme="white"][data-theme] :is(.about-section .stat-card, .services-section .svc-card, .process-section .process-card, .v3-guarantees .v3-guarantee-grid article) :is(h3, h4, p, strong, span, li, i, svg, path) {
  color: #231b16;
  stroke: #231b16;
  fill: none;
}

html[data-theme="white"][data-theme] :is(.about-section .stat-icon-wrap, .services-section .svc-icon, .process-section .process-number, .v3-guarantees .v3-guarantee-grid i) {
  color: #7a4c2f;
}

/* Squared Brickworks cleanup: no rounded controls, no slate/blue leftovers. */
html[data-theme][data-theme] :is(.about-showcase, .about-slider-shell, .about-slider-stage, .about-slide, .parallax-wrap, .v3-product-card, .v3-project-card, .svc-card, .stat-card, .process-card, .v3-guarantee-grid article, .project-card, .scroll-card, .review-card, .faq-item, .contact-form-card, .contact-detail-item, .merged-contact-card, .reviews-cta, .section-label, .btn, .header-call-btn, .drawer-call-btn, .v3-solid-btn, .form-submit-btn, .contact-submit, .gallery-pill, .gallery-nav, .theme-btn, .sticky-mobile-cta, input, textarea, select, .form-group input, .form-group textarea, .form-group select, .v3-product-card strong, .v3-project-card strong, .svc-img-wrap, .svc-img-wrap img, .project-card img, .v3-product-card img, .v3-project-card img) {
  border-radius: 0;
}

html[data-theme][data-theme] :is(.section-label, .section-label *, .btn-primary, .btn-primary *, .header-call-btn, .header-call-btn *, .drawer-call-btn, .drawer-call-btn *, .v3-solid-btn, .v3-solid-btn *, .form-submit-btn, .form-submit-btn *, .contact-submit, .contact-submit *, .sticky-mobile-cta, .sticky-mobile-cta *, .gallery-pill.active, .gallery-pill.active *) {
  color: #ffffff;
}

html[data-theme][data-theme] :is(.section-label, .btn-primary, .header-call-btn, .drawer-call-btn, .v3-solid-btn, .form-submit-btn, .contact-submit, .sticky-mobile-cta, .gallery-pill.active) {
  background: #7a4c2f;
  border-color: #7a4c2f;
  text-shadow: none;
}

html[data-theme][data-theme] .gallery-pill:not(.active) {
  color: #231b16;
  background: #ffffff;
  border-color: rgba(35, 27, 22, .28);
}

html[data-theme="black"][data-theme] .gallery-pill:not(.active) {
  color: #f7f3ed;
  background: #111111;
  border-color: rgba(213, 187, 166, .28);
}

html[data-theme="black"][data-theme] .contact-form-card {
  color: #f7f3ed;
  background: #111111;
  border-color: rgba(213, 187, 166, .28);
}

html[data-theme="black"][data-theme] .contact-form-card :is(h3, p, label, .checkbox-container, .section-sub-label) {
  color: #f7f3ed;
}

html[data-theme="black"][data-theme] .contact-form-card .section-sub-label {
  color: #f2c889;
}

html[data-theme="black"][data-theme] .contact-form-card :is(input, textarea, select) {
  color: #111111;
  background: #ffffff;
  border-color: rgba(213, 187, 166, .42);
}

html[data-theme="white"][data-theme] .contact-form-card :is(input, textarea, select) {
  color: #111111;
  background: #ffffff;
  border-color: rgba(35, 27, 22, .24);
}

/* Final squared contrast cleanup for the two live themes. */
html[data-theme][data-theme] .section-label,
html[data-theme][data-theme] .section-label:is(span, strong),
html[data-theme][data-theme] :is(.v3-products, .about-section, .services-section, .projects-section, .process-section, .reviews-section, .faq-section, .merged-contact-cta, .v3-guarantees, .v3-recent-projects) .section-label {
  color: #ffffff;
  background: #7a4c2f;
  border-color: #7a4c2f;
  border-radius: 0;
}

html[data-theme][data-theme] .theme-btn {
  color: #f7f3ed;
  background: rgba(17, 17, 17, .94);
  border-color: rgba(213, 187, 166, .28);
  border-radius: 0;
}

html[data-theme="white"][data-theme] .theme-btn {
  color: #231b16;
  background: #ffffff;
  border-color: rgba(35, 27, 22, .22);
}

html[data-theme][data-theme] .theme-btn.active {
  color: #ffffff;
  background: #7a4c2f;
  border-color: #7a4c2f;
}

html[data-theme][data-theme] :is(.section-label, .btn-primary, .header-call-btn, .drawer-call-btn, .v3-solid-btn, .form-submit-btn, .contact-submit, .sticky-mobile-cta, .gallery-pill.active, .theme-btn.active) :is(span, strong, small, i) {
  color: #ffffff;
}

/* Final visible-straggler cleanup from browser audit. */
html[data-theme="white"][data-theme][data-theme] .section-label,
html[data-theme="white"][data-theme][data-theme] .section-label.scroll-item,
html[data-theme="white"][data-theme][data-theme] :is(.v3-products, .about-section, .services-section, .projects-section, .process-section, .reviews-section, .faq-section, .merged-contact-cta, .v3-guarantees, .v3-recent-projects) .section-label.scroll-item {
  color: #ffffff;
  background: #7a4c2f;
  border-color: #7a4c2f;
}

html[data-theme][data-theme] .reviews-section :is(.splide__slide, .review-card, .review-card p, .review-author strong, .review-author span) {
  color: #231b16;
}

html[data-theme][data-theme] .reviews-cta,
html[data-theme][data-theme] .reviews-cta p {
  color: #ffffff;
  background: #111111;
}

html[data-theme][data-theme] .project-photo-count {
  color: #ffffff;
  background: #7a4c2f;
  border-color: #7a4c2f;
}

html[data-theme][data-theme] .project-card :is(small, p, span) {
  color: #f7f3ed;
}

html[data-theme="white"][data-theme][data-theme] .merged-contact-cta :is(.section-title, .section-title *, .title-split-word, .word-mask, .word-mask *, .merged-cta-copy p) {
  color: #ffffff;
  -webkit-text-fill-color: #ffffff;
}

html[data-theme][data-theme] .site-footer :is(p, span, a) {
  color: #d5bba6;
}

html[data-theme="white"][data-theme][data-theme] .reviews-section .reviews-cta p {
  color: #ffffff;
  background: #111111;
}

/* Whole-site Brickworks brand normalization. */
html[data-theme][data-theme] body :is(h1, h2, h3, h4, h5, h6, p, span, a, button, label, strong, small, li, summary, input, textarea, select, .process-num) {
  font-family: var(--bw-body);
}

html[data-theme][data-theme] body :is(.hero-headline, .section-title, .v3-display, .title-split-word, .section-label, .btn, .header-call-btn, .drawer-call-btn, .v3-solid-btn, .form-submit-btn, .contact-submit, .faq-question, .process-num) {
  font-family: var(--bw-heading);
}

html[data-theme][data-theme] .title-split-word {
  -webkit-text-fill-color: currentColor;
}

html[data-theme="black"][data-theme] .title-split-word {
  color: #f7f3ed;
}

html[data-theme="white"][data-theme] .title-split-word {
  color: #231b16;
}

html[data-theme="white"][data-theme][data-theme] .merged-contact-cta .title-split-word {
  color: #ffffff;
  -webkit-text-fill-color: #ffffff;
}

html[data-theme][data-theme] .theme-switcher-toggle {
  color: #ffffff;
  background: #7a4c2f;
  border-color: #7a4c2f;
}

html[data-theme][data-theme] .theme-switcher-toggle i {
  color: #ffffff;
  -webkit-text-fill-color: #ffffff;
}

html[data-theme][data-theme] .checkbox-custom {
  background: rgba(122, 76, 47, .08);
  border-color: rgba(122, 76, 47, .42);
}

html[data-theme][data-theme] input:checked + .checkbox-custom,
html[data-theme][data-theme] .checkbox-container input:checked + .checkbox-custom {
  background: #7a4c2f;
  border-color: #7a4c2f;
}

html[data-theme][data-theme] .scroll-wheel {
  background: #7a4c2f;
  border-color: rgba(255, 255, 255, .72);
}

html[data-theme][data-theme] .stat-icon-wrap {
  background: rgba(122, 76, 47, .10);
  border-color: rgba(122, 76, 47, .28);
}

html[data-theme][data-theme] .process-num {
  color: rgba(122, 76, 47, .18);
  -webkit-text-fill-color: rgba(122, 76, 47, .18);
  border-color: rgba(122, 76, 47, .18);
}

html[data-theme][data-theme] .contact-details-list {
  gap: 1rem;
}

html[data-theme][data-theme] .contact-detail-item {
  padding: 1.25rem 1.35rem;
  gap: 1.15rem;
  align-items: flex-start;
}

html[data-theme][data-theme] .contact-detail-item > div {
  gap: .45rem;
  padding-top: .15rem;
}

html[data-theme][data-theme] .contact-detail-item span,
html[data-theme][data-theme] .contact-detail-item a {
  line-height: 1.55;
}

@media (max-width: 640px) {
  html[data-theme][data-theme] .contact-detail-item {
    padding: 1.15rem;
    gap: 1rem;
  }
}

/* Hero image clarity pass: lighter overlays, no white hero gradient */
html[data-theme][data-theme] .hero-overlay {
  background:
    linear-gradient(90deg, rgba(0, 0, 0, .64) 0%, rgba(0, 0, 0, .38) 48%, rgba(0, 0, 0, .10) 100%),
    linear-gradient(0deg, rgba(0, 0, 0, .42) 0%, rgba(0, 0, 0, .05) 62%);
}

html[data-theme="white"][data-theme] .hero-overlay {
  background:
    linear-gradient(90deg, rgba(0, 0, 0, .58) 0%, rgba(0, 0, 0, .32) 48%, rgba(0, 0, 0, .08) 100%),
    linear-gradient(0deg, rgba(0, 0, 0, .34) 0%, rgba(0, 0, 0, .03) 62%);
}

html[data-theme][data-theme] .hero::after {
  background: linear-gradient(to bottom, transparent 0%, rgba(0, 0, 0, .10) 62%, rgba(0, 0, 0, .22) 100%);
}

html[data-theme="white"][data-theme] .hero::after {
  background: linear-gradient(to bottom, transparent 0%, rgba(0, 0, 0, .06) 62%, rgba(0, 0, 0, .14) 100%);
}

@media (max-width: 760px) {
  html[data-theme][data-theme] .hero-overlay {
    background:
      linear-gradient(90deg, rgba(0, 0, 0, .70) 0%, rgba(0, 0, 0, .48) 54%, rgba(0, 0, 0, .20) 100%),
      linear-gradient(0deg, rgba(0, 0, 0, .50) 0%, rgba(0, 0, 0, .10) 62%);
  }

  html[data-theme="white"][data-theme] .hero-overlay {
    background:
      linear-gradient(90deg, rgba(0, 0, 0, .64) 0%, rgba(0, 0, 0, .42) 54%, rgba(0, 0, 0, .16) 100%),
      linear-gradient(0deg, rgba(0, 0, 0, .42) 0%, rgba(0, 0, 0, .08) 62%);
  }
}


/* Brickworks connected data, location finder, and resource pathways */
.connected-supply-section,
.location-finder-section,
.resource-pathways-section {
    background: var(--bw-section-dark, #050505);
    color: var(--bw-ink-on-dark, #f6f2ee);
    padding: clamp(72px, 9vw, 128px) 0;
}

/* Connected Supply app-style dashboard page */
body.connected-page-body > .site-header,
body.connected-page-body > .drawer-overlay,
body.connected-page-body > .nav-drawer,
body.connected-page-body > .site-footer,
body.connected-page-body > .sticky-mobile-cta{
  display:none !important;
}

html[data-theme][data-theme] body.connected-page-body{
  background:#f4f1eb;
  overflow-x:hidden;
}

html[data-theme="black"][data-theme] body.connected-page-body,
html[data-theme="black-accent"][data-theme] body.connected-page-body{
  background:#050505;
}

html[data-theme][data-theme] .connected-dashboard-page{
  min-height:100vh;
  overflow:visible;
  background:#f4f1eb;
  color:#15120f;
}

html[data-theme="black"][data-theme] .connected-dashboard-page,
html[data-theme="black-accent"][data-theme] .connected-dashboard-page{
  background:#050505;
  color:#f7f2eb;
}

html[data-theme][data-theme] .supply-command-center{
  --dash-bg:#f4f1eb;
  --dash-surface:#ffffff;
  --dash-elevated:#fbfaf7;
  --dash-ink:#14110e;
  --dash-muted:#6f665c;
  --dash-faint:#8c8379;
  --dash-border:rgba(28,22,16,.13);
  --dash-border-strong:rgba(28,22,16,.19);
  --dash-accent:#c8612e;
  --dash-accent-strong:#a9481f;
  --dash-accent-soft:rgba(200,97,46,.13);
  --dash-good:#1f7a3f;
  --dash-good-soft:rgba(31,122,63,.11);
  --dash-warning:#b16700;
  --dash-warning-soft:rgba(177,103,0,.12);
  --dash-blue:#1e6da8;
  --dash-blue-soft:rgba(30,109,168,.12);
  min-height:100vh;
  padding:0;
  background:
    radial-gradient(circle at 30% 0%, rgba(200,97,46,.10), transparent 360px),
    linear-gradient(180deg,#f9f7f2 0%, var(--dash-bg) 48%, #eee8df 100%);
  color:var(--dash-ink);
  font-family:"Inter Tight", Arial, sans-serif;
}

html[data-theme="black"][data-theme] .supply-command-center,
html[data-theme="black-accent"][data-theme] .supply-command-center{
  --dash-bg:#050505;
  --dash-surface:#101010;
  --dash-elevated:#151515;
  --dash-ink:#ffffff;
  --dash-muted:rgba(255,255,255,.68);
  --dash-faint:rgba(255,255,255,.46);
  --dash-border:rgba(255,255,255,.13);
  --dash-border-strong:rgba(255,255,255,.2);
  --dash-accent:#d7a06d;
  --dash-accent-strong:#f0c198;
  --dash-accent-soft:rgba(215,160,109,.15);
  --dash-good:#8edb9f;
  --dash-good-soft:rgba(142,219,159,.13);
  --dash-warning:#f2bd68;
  --dash-warning-soft:rgba(242,189,104,.14);
  --dash-blue:#8fc8ff;
  --dash-blue-soft:rgba(143,200,255,.13);
  background:
    linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px),
    radial-gradient(circle at 35% 0%, rgba(215,160,109,.12), transparent 430px),
    #050505;
  background-size:42px 42px, 42px 42px, auto, auto;
}

html[data-theme][data-theme] .supply-icon-sprite{
  position:absolute;
  width:0;
  height:0;
  overflow:hidden;
}

html[data-theme][data-theme] .supply-svg-icon{
  width:1.08em;
  height:1.08em;
  flex:0 0 auto;
  display:inline-block;
  fill:none;
  stroke:currentColor;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round;
  vertical-align:-.16em;
}

html[data-theme][data-theme] .supply-app-shell{
  display:grid;
  grid-template-columns:248px minmax(0,1fr) 336px;
  min-height:100vh;
}

html[data-theme][data-theme] .supply-app-sidebar{
  position:sticky;
  top:0;
  height:100vh;
  display:flex;
  flex-direction:column;
  gap:26px;
  padding:24px 16px;
  background:
    radial-gradient(circle at 40% 0%, rgba(255,255,255,.10), transparent 240px),
    linear-gradient(180deg,#111 0%,#050505 100%);
  border-right:1px solid rgba(255,255,255,.1);
  color:#fff;
  z-index:3;
}

html[data-theme][data-theme] .supply-app-brand{
  display:block;
  padding:2px 6px 10px;
}

html[data-theme][data-theme] .supply-app-brand img{
  width:168px;
  max-width:100%;
  height:auto;
  display:block;
  filter:brightness(0) invert(1);
}

html[data-theme][data-theme] .supply-app-nav{
  display:grid;
  gap:8px;
}

html[data-theme][data-theme] .supply-app-nav a{
  display:grid;
  grid-template-columns:26px minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  min-height:48px;
  padding:10px 12px;
  border:1px solid transparent;
  color:rgba(255,255,255,.82);
  font-size:.92rem;
  font-weight:850;
  text-decoration:none;
}

html[data-theme][data-theme] .supply-app-nav a.active,
html[data-theme][data-theme] .supply-app-nav a:hover{
  background:linear-gradient(135deg,#d66a32,#a9441f);
  border-color:rgba(255,255,255,.18);
  color:#fff;
}

html[data-theme][data-theme] .supply-app-nav i{
  color:currentColor !important;
  -webkit-text-fill-color:currentColor !important;
  font-size:.96rem;
  text-align:center;
}

html[data-theme][data-theme] .supply-app-nav .supply-svg-icon{
  width:1.14rem;
  height:1.14rem;
  justify-self:center;
  opacity:.96;
}

html[data-theme][data-theme] .supply-app-nav em{
  display:grid;
  place-items:center;
  min-width:22px;
  height:22px;
  border-radius:999px;
  background:#d66a32;
  color:#fff;
  font-size:.72rem;
  font-style:normal;
  font-weight:900;
}

html[data-theme][data-theme] .supply-branch-card{
  margin-top:auto;
  padding:18px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.055);
}

html[data-theme][data-theme] .supply-branch-card span,
html[data-theme][data-theme] .supply-kicker,
html[data-theme][data-theme] .supply-stat-grid span,
html[data-theme][data-theme] .supply-detail-list dt{
  display:block;
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
}

html[data-theme][data-theme] .supply-branch-card span{
  color:rgba(255,255,255,.55);
}

html[data-theme][data-theme] .supply-branch-card strong{
  display:block;
  margin:7px 0 6px;
  color:#fff;
  font-size:1.08rem;
  line-height:1;
}

html[data-theme][data-theme] .supply-branch-card a{
  color:#d7a06d;
  font-size:.78rem;
  font-weight:900;
  text-decoration:none;
}

html[data-theme][data-theme] .supply-dashboard-canvas{
  min-width:0;
  padding:34px 28px 38px;
}

html[data-theme][data-theme] .supply-command-bar{
  display:grid;
  grid-template-columns:minmax(320px,1fr) minmax(420px,.94fr);
  gap:28px;
  align-items:start;
  margin-bottom:22px;
}

html[data-theme][data-theme] .supply-kicker{
  margin-bottom:10px;
  color:var(--dash-accent-strong);
}

html[data-theme="black"][data-theme] .supply-kicker,
html[data-theme="black-accent"][data-theme] .supply-kicker{
  color:var(--dash-accent);
}

html[data-theme][data-theme] .supply-command-bar h1{
  margin:0;
  color:var(--dash-ink);
  font-size:clamp(2.1rem, 3.1vw, 3.45rem);
  line-height:.92;
  letter-spacing:-.055em;
}

html[data-theme][data-theme] .supply-command-bar p{
  margin:10px 0 0;
  color:var(--dash-muted);
  font-size:1rem;
  line-height:1.45;
}

html[data-theme][data-theme] .supply-command-actions{
  display:grid;
  grid-template-columns:minmax(220px,1fr) auto auto;
  gap:12px;
  justify-content:end;
}

html[data-theme][data-theme] .supply-search{
  min-height:48px;
  display:flex;
  align-items:center;
  gap:10px;
  padding:0 15px;
  border:1px solid var(--dash-border);
  background:var(--dash-surface);
  color:var(--dash-muted);
}

html[data-theme][data-theme] .supply-search input{
  width:100%;
  border:0;
  outline:0;
  background:transparent;
  color:var(--dash-ink);
  font:inherit;
  font-size:.9rem;
}

html[data-theme][data-theme] .supply-search input::placeholder{
  color:var(--dash-faint);
}

html[data-theme][data-theme] .supply-search:focus-within{
  border-color:var(--dash-accent);
  box-shadow:0 0 0 3px var(--dash-accent-soft);
}

html[data-theme][data-theme] .supply-command-actions button,
html[data-theme][data-theme] .supply-command-actions a,
html[data-theme][data-theme] .supply-filter-row button,
html[data-theme][data-theme] .supply-filter-row a,
html[data-theme][data-theme] .supply-table-footer button,
html[data-theme][data-theme] .supply-detail-head button{
  min-height:48px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  border:1px solid var(--dash-border);
  background:var(--dash-surface);
  color:var(--dash-ink);
  padding:0 16px;
  font-family:"Inter Tight", Arial, sans-serif;
  font-size:.86rem;
  font-weight:850;
  text-decoration:none;
  cursor:pointer;
}

html[data-theme][data-theme] .supply-command-actions button:hover,
html[data-theme][data-theme] .supply-filter-row button:hover,
html[data-theme][data-theme] .supply-filter-row a:hover,
html[data-theme][data-theme] .supply-table-footer button:hover,
html[data-theme][data-theme] .supply-detail-head button:hover{
  border-color:var(--dash-accent);
  background:var(--dash-accent-soft);
}

html[data-theme][data-theme] .supply-command-actions button:focus-visible,
html[data-theme][data-theme] .supply-command-actions a:focus-visible,
html[data-theme][data-theme] .supply-filter-row button:focus-visible,
html[data-theme][data-theme] .supply-filter-row a:focus-visible,
html[data-theme][data-theme] .supply-table-footer button:focus-visible,
html[data-theme][data-theme] .supply-detail-head button:focus-visible,
html[data-theme][data-theme] .supply-project-table tbody tr:focus-visible{
  outline:3px solid var(--dash-accent-soft);
  outline-offset:2px;
}

html[data-theme][data-theme] .supply-command-actions a{
  border-color:var(--dash-accent);
  background:var(--dash-accent);
  color:#fff;
}

html[data-theme="black"][data-theme] .supply-command-actions a,
html[data-theme="black-accent"][data-theme] .supply-command-actions a{
  color:#050505;
}

html[data-theme][data-theme] .supply-stat-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin-bottom:18px;
}

html[data-theme][data-theme] .supply-stat-grid article{
  min-height:136px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:22px 20px;
  border:1px solid var(--dash-border);
  background:var(--dash-surface);
  box-shadow:0 22px 55px rgba(20,14,8,.06);
}

html[data-theme="black"][data-theme] .supply-stat-grid article,
html[data-theme="black-accent"][data-theme] .supply-stat-grid article{
  box-shadow:none;
}

html[data-theme][data-theme] .supply-stat-grid span{
  color:var(--dash-muted);
}

html[data-theme][data-theme] .supply-stat-grid strong{
  display:block;
  margin:12px 0 7px;
  color:var(--dash-ink);
  font-size:2.2rem;
  line-height:1;
  letter-spacing:-.04em;
}

html[data-theme][data-theme] .supply-stat-grid small{
  display:flex;
  align-items:center;
  gap:5px;
  color:var(--dash-muted);
  font-size:.8rem;
}

html[data-theme][data-theme] .supply-stat-grid article > i,
html[data-theme][data-theme] .supply-stat-grid article > .supply-stat-icon{
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  flex:0 0 54px;
  border-radius:999px;
  background:var(--dash-accent-soft);
  color:var(--dash-accent-strong) !important;
  -webkit-text-fill-color:var(--dash-accent-strong) !important;
  font-size:1.16rem;
}

html[data-theme][data-theme] .supply-stat-grid article > .supply-stat-icon .supply-svg-icon{
  width:1.45rem;
  height:1.45rem;
}

html[data-theme="black"][data-theme] .supply-stat-grid article > i,
html[data-theme="black"][data-theme] .supply-stat-grid article > .supply-stat-icon,
html[data-theme="black-accent"][data-theme] .supply-stat-grid article > i,
html[data-theme="black-accent"][data-theme] .supply-stat-grid article > .supply-stat-icon{
  color:var(--dash-accent) !important;
  -webkit-text-fill-color:var(--dash-accent) !important;
}

html[data-theme][data-theme] .supply-panel,
html[data-theme][data-theme] .supply-detail-panel{
  border:1px solid var(--dash-border);
  background:var(--dash-surface);
  color:var(--dash-ink);
}

html[data-theme][data-theme] .supply-project-queue{
  margin-bottom:14px;
}

html[data-theme][data-theme] .supply-panel-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:19px 20px;
  border-bottom:1px solid var(--dash-border);
}

html[data-theme][data-theme] .supply-panel-head.compact{
  min-height:58px;
  padding:16px 18px;
}

html[data-theme][data-theme] .supply-panel-head h2{
  margin:0;
  color:var(--dash-ink);
  font-size:1.12rem;
  line-height:1.05;
  letter-spacing:-.025em;
}

html[data-theme][data-theme] .supply-panel-head p{
  margin:7px 0 0;
  color:var(--dash-muted);
  font-size:.87rem;
}

html[data-theme][data-theme] .supply-panel-head a,
html[data-theme][data-theme] .supply-panel-head span{
  color:var(--dash-accent-strong);
  font-size:.78rem;
  font-weight:850;
  text-decoration:none;
}

html[data-theme="black"][data-theme] .supply-panel-head a,
html[data-theme="black"][data-theme] .supply-panel-head span,
html[data-theme="black-accent"][data-theme] .supply-panel-head a,
html[data-theme="black-accent"][data-theme] .supply-panel-head span{
  color:var(--dash-accent);
}

html[data-theme][data-theme] .supply-filter-row{
  display:flex;
  align-items:center;
  gap:10px;
}

html[data-theme][data-theme] .supply-filter-row button,
html[data-theme][data-theme] .supply-filter-row a{
  min-height:36px;
  min-width:138px;
  padding:0 13px;
  font-size:.78rem;
}

html[data-theme][data-theme] .supply-filter-row button.is-filtered{
  border-color:var(--dash-accent);
  background:var(--dash-accent-soft);
  color:var(--dash-accent-strong);
}

html[data-theme="black"][data-theme] .supply-filter-row button.is-filtered,
html[data-theme="black-accent"][data-theme] .supply-filter-row button.is-filtered{
  color:var(--dash-accent);
}

html[data-theme][data-theme] .supply-table-wrap{
  overflow:auto;
}

html[data-theme][data-theme] .supply-project-table{
  width:100%;
  min-width:920px;
  border-collapse:collapse;
  color:var(--dash-ink);
}

html[data-theme][data-theme] .supply-project-table th,
html[data-theme][data-theme] .supply-project-table td{
  padding:15px 20px;
  border-bottom:1px solid var(--dash-border);
  text-align:left;
  font-size:.86rem;
  white-space:nowrap;
}

html[data-theme][data-theme] .supply-project-table th{
  color:var(--dash-muted);
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.045em;
  text-transform:uppercase;
}

html[data-theme][data-theme] .supply-project-table tbody tr:hover{
  background:var(--dash-elevated);
}

html[data-theme][data-theme] .supply-project-table tbody tr{
  cursor:pointer;
  transition:background .16s ease, box-shadow .16s ease, transform .16s ease;
}

html[data-theme][data-theme] .supply-project-table tbody tr.is-selected{
  background:var(--dash-accent-soft);
  box-shadow:inset 3px 0 0 var(--dash-accent);
}

html[data-theme][data-theme] .supply-project-table tbody tr[hidden]{
  display:none;
}

html[data-theme][data-theme] .status-pill{
  display:inline-flex;
  align-items:center;
  min-height:25px;
  padding:0 11px;
  border-radius:5px;
  font-size:.75rem;
  font-weight:850;
  color:var(--dash-ink);
  background:rgba(20,14,8,.07);
}

html[data-theme][data-theme] .status-pill.reserved{
  color:var(--dash-good);
  background:var(--dash-good-soft);
}

html[data-theme][data-theme] .status-pill.quote{
  color:var(--dash-warning);
  background:var(--dash-warning-soft);
}

html[data-theme][data-theme] .status-pill.progress{
  color:var(--dash-blue);
  background:var(--dash-blue-soft);
}

html[data-theme][data-theme] .status-pill.pending{
  color:var(--dash-muted);
  background:rgba(127,120,110,.12);
}

html[data-theme][data-theme] .supply-table-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:14px 18px;
  color:var(--dash-muted);
  font-size:.82rem;
}

html[data-theme][data-theme] .supply-empty-state{
  display:grid;
  place-items:center;
  gap:7px;
  min-height:168px;
  padding:30px;
  border-top:1px solid var(--dash-border);
  color:var(--dash-muted);
  text-align:center;
}

html[data-theme][data-theme] .supply-empty-state[hidden]{
  display:none !important;
}

html[data-theme][data-theme] .supply-empty-state .supply-svg-icon{
  width:2rem;
  height:2rem;
  color:var(--dash-accent-strong);
}

html[data-theme][data-theme] .supply-empty-state strong{
  color:var(--dash-ink);
  font-size:1rem;
}

html[data-theme][data-theme] .supply-empty-state span{
  font-size:.84rem;
}

html[data-theme][data-theme] .supply-table-footer div{
  display:flex;
  gap:6px;
}

html[data-theme][data-theme] .supply-table-footer button{
  min-width:34px;
  min-height:32px;
  padding:0 10px;
  font-size:.78rem;
}

html[data-theme][data-theme] .supply-table-footer button.active{
  border-color:var(--dash-accent);
  background:var(--dash-accent);
  color:#fff;
}

html[data-theme="black"][data-theme] .supply-table-footer button.active,
html[data-theme="black-accent"][data-theme] .supply-table-footer button.active{
  color:#050505;
}

html[data-theme][data-theme] .supply-lower-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(260px,.78fr) minmax(310px,.95fr);
  gap:14px;
  align-items:start;
}

html[data-theme][data-theme] .supply-mini-table{
  display:grid;
}

html[data-theme][data-theme] .supply-mini-table div{
  display:grid;
  grid-template-columns:minmax(145px,1fr) repeat(3,minmax(70px,.46fr));
  gap:12px;
  align-items:center;
  padding:11px 18px;
  border-bottom:1px solid var(--dash-border);
  font-size:.79rem;
}

html[data-theme][data-theme] .supply-mini-table div:first-child{
  color:var(--dash-muted);
  font-size:.68rem;
  font-weight:900;
  letter-spacing:.045em;
  text-transform:uppercase;
}

html[data-theme][data-theme] .supply-mini-table strong{
  color:var(--dash-ink);
}

html[data-theme][data-theme] .supply-mini-table span{
  color:var(--dash-muted);
}

html[data-theme][data-theme] .supply-mini-table em{
  color:var(--dash-good);
  font-style:normal;
  font-weight:850;
}

html[data-theme][data-theme] .supply-panel > small{
  display:block;
  padding:13px 18px 16px;
  color:var(--dash-muted);
  font-size:.78rem;
}

html[data-theme][data-theme] .supply-quote-pipeline article{
  position:relative;
  display:grid;
  grid-template-columns:50px minmax(0,1fr) 28px;
  gap:8px 12px;
  align-items:center;
  padding:15px 18px 15px 22px;
  border-bottom:1px solid var(--dash-border);
}

html[data-theme][data-theme] .supply-quote-pipeline article::before{
  content:"";
  position:absolute;
  left:0;
  top:14px;
  bottom:14px;
  width:3px;
  background:var(--pipeline-color,var(--dash-accent));
}

html[data-theme][data-theme] .supply-quote-pipeline strong{
  grid-row:span 2;
  color:var(--dash-ink);
  font-size:1.75rem;
  line-height:1;
}

html[data-theme][data-theme] .supply-quote-pipeline span{
  color:var(--dash-ink);
  font-weight:850;
  font-size:.88rem;
}

html[data-theme][data-theme] .supply-quote-pipeline small{
  color:var(--dash-muted);
  font-size:.78rem;
}

html[data-theme][data-theme] .supply-quote-pipeline i{
  grid-row:span 2;
  color:var(--dash-faint) !important;
  -webkit-text-fill-color:var(--dash-faint) !important;
  font-size:1.2rem;
}

html[data-theme][data-theme] .supply-delivery-list{
  display:grid;
}

html[data-theme][data-theme] .supply-delivery-list article{
  display:grid;
  grid-template-columns:74px minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  padding:14px 18px;
  border-bottom:1px solid var(--dash-border);
}

html[data-theme][data-theme] .supply-delivery-list time{
  color:var(--dash-muted);
  font-size:.78rem;
  font-weight:850;
}

html[data-theme][data-theme] .supply-delivery-list strong{
  display:block;
  color:var(--dash-ink);
  font-size:.86rem;
}

html[data-theme][data-theme] .supply-delivery-list span{
  display:block;
  margin-top:3px;
  color:var(--dash-muted);
  font-size:.76rem;
}

html[data-theme][data-theme] .supply-delivery-list em{
  padding:6px 8px;
  border-radius:4px;
  background:var(--dash-blue-soft);
  color:var(--dash-blue);
  font-size:.68rem;
  font-style:normal;
  font-weight:900;
}

html[data-theme][data-theme] .supply-delivery-list em.onsite{
  background:var(--dash-good-soft);
  color:var(--dash-good);
}

html[data-theme][data-theme] .supply-dispatch-board{
  margin-bottom:14px;
  overflow:hidden;
}

html[data-theme][data-theme] .supply-tracking-toggle{
  display:flex;
  align-items:center;
  gap:8px;
}

html[data-theme][data-theme] .supply-tracking-toggle button{
  min-height:36px;
  border:1px solid var(--dash-border);
  background:var(--dash-surface);
  color:var(--dash-muted);
  padding:0 13px;
  font-family:"Inter Tight", Arial, sans-serif;
  font-size:.76rem;
  font-weight:900;
  letter-spacing:.035em;
  text-transform:uppercase;
  cursor:pointer;
}

html[data-theme][data-theme] .supply-tracking-toggle button:hover,
html[data-theme][data-theme] .supply-tracking-toggle button.active{
  border-color:var(--dash-accent);
  background:var(--dash-accent);
  color:#fff;
}

html[data-theme="black"][data-theme] .supply-tracking-toggle button.active,
html[data-theme="black-accent"][data-theme] .supply-tracking-toggle button.active{
  color:#050505;
}

html[data-theme][data-theme] .supply-dispatch-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(290px,.42fr);
  gap:14px;
  align-items:stretch;
  padding:14px;
}

html[data-theme][data-theme] .supply-map-card,
html[data-theme][data-theme] .supply-load-chart{
  min-width:0;
  border:1px solid var(--dash-border);
  background:var(--dash-elevated);
}

html[data-theme][data-theme] .supply-map-card{
  display:flex;
  flex-direction:column;
}

html[data-theme][data-theme] .supply-map-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:15px 18px;
  border-bottom:1px solid var(--dash-border);
}

html[data-theme][data-theme] .supply-map-toolbar-main,
html[data-theme][data-theme] .supply-map-toolbar-meta{
  display:flex;
  align-items:flex-start;
  gap:6px;
}

html[data-theme][data-theme] .supply-map-toolbar-main{
  min-width:0;
  flex-direction:column;
}

html[data-theme][data-theme] .supply-map-toolbar-meta{
  flex:0 0 auto;
  align-items:flex-end;
  flex-direction:column;
  text-align:right;
}

html[data-theme][data-theme] .supply-map-toolbar-main span,
html[data-theme][data-theme] .supply-map-toolbar-meta span,
html[data-theme][data-theme] .supply-map-toolbar-meta strong{
  display:flex;
  align-items:center;
  gap:8px;
  color:var(--dash-ink);
  font-size:.82rem;
  font-weight:900;
}

html[data-theme][data-theme] .supply-map-toolbar-main small{
  display:block;
  color:var(--dash-muted);
  font-size:.72rem;
  font-weight:750;
}

html[data-theme][data-theme] .supply-map-toolbar-meta span{
  color:var(--dash-muted);
  font-size:.66rem;
  letter-spacing:.06em;
  text-transform:uppercase;
}

html[data-theme][data-theme] .supply-map-toolbar-meta span i{
  width:8px;
  height:8px;
  border-radius:999px;
  background:var(--dash-good);
  box-shadow:0 0 0 5px var(--dash-good-soft);
}

html[data-theme][data-theme] .supply-map-toolbar-meta strong{
  color:var(--dash-accent-strong);
}

html[data-theme="black"][data-theme] .supply-map-toolbar-meta strong,
html[data-theme="black-accent"][data-theme] .supply-map-toolbar-meta strong{
  color:var(--dash-accent);
}

html[data-theme][data-theme] .supply-route-map{
  position:relative;
  flex:1 1 auto;
  min-height:520px;
  overflow:hidden;
  isolation:isolate;
  background:
    radial-gradient(circle at 18% 58%, rgba(200,97,46,.12), transparent 95px),
    radial-gradient(circle at 88% 24%, rgba(30,109,168,.12), transparent 140px),
    linear-gradient(rgba(20,14,8,.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(20,14,8,.04) 1px, transparent 1px),
    linear-gradient(135deg, rgba(255,255,255,.96), rgba(239,233,223,.78));
  background-size:auto, auto, 32px 32px, 32px 32px, auto;
}

html[data-theme][data-theme] .supply-leaflet-map{
  position:absolute;
  inset:0;
  z-index:1;
  display:none;
  background:#f1ece3;
}

html[data-theme][data-theme] .supply-route-map.has-leaflet-map .supply-leaflet-map{
  display:block;
}

html[data-theme][data-theme] .supply-route-map.has-leaflet-map > .supply-route-terrain,
html[data-theme][data-theme] .supply-route-map.has-leaflet-map > .supply-route-lines,
html[data-theme][data-theme] .supply-route-map.has-leaflet-map > .map-zone,
html[data-theme][data-theme] .supply-route-map.has-leaflet-map > .supply-map-marker,
html[data-theme][data-theme] .supply-route-map.has-leaflet-map > .supply-job-pin{
  opacity:0;
  pointer-events:none;
}

html[data-theme="black"][data-theme] .supply-route-map,
html[data-theme="black-accent"][data-theme] .supply-route-map{
  background:
    radial-gradient(circle at 18% 58%, rgba(215,160,109,.18), transparent 100px),
    radial-gradient(circle at 88% 24%, rgba(143,200,255,.10), transparent 150px),
    linear-gradient(rgba(255,255,255,.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.055) 1px, transparent 1px),
    #090909;
  background-size:auto, auto, 32px 32px, 32px 32px, auto;
}

html[data-theme="black"][data-theme] .supply-leaflet-map,
html[data-theme="black-accent"][data-theme] .supply-leaflet-map{
  background:#050505;
}

html[data-theme][data-theme] .supply-route-map::before,
html[data-theme][data-theme] .supply-route-map::after{
  content:"";
  position:absolute;
  z-index:0;
  pointer-events:none;
}

html[data-theme][data-theme] .supply-route-map::before{
  inset:9%;
  border:1px solid rgba(127,120,110,.11);
  background:
    linear-gradient(28deg, transparent 46%, rgba(127,120,110,.16) 47%, rgba(127,120,110,.16) 48%, transparent 49%),
    linear-gradient(151deg, transparent 52%, rgba(127,120,110,.12) 53%, rgba(127,120,110,.12) 54%, transparent 55%);
  opacity:.9;
}

html[data-theme][data-theme] .supply-route-map::after{
  right:-32px;
  top:-28px;
  width:178px;
  height:112%;
  background:linear-gradient(180deg, rgba(30,109,168,.16), rgba(30,109,168,.04));
  transform:rotate(4deg);
}

html[data-theme="black"][data-theme] .supply-route-map::before,
html[data-theme="black-accent"][data-theme] .supply-route-map::before{
  border-color:rgba(255,255,255,.08);
  background:
    linear-gradient(28deg, transparent 46%, rgba(255,255,255,.12) 47%, rgba(255,255,255,.12) 48%, transparent 49%),
    linear-gradient(151deg, transparent 52%, rgba(255,255,255,.10) 53%, rgba(255,255,255,.10) 54%, transparent 55%);
}

html[data-theme][data-theme] .supply-route-terrain{
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
}

html[data-theme][data-theme] .supply-road-label,
html[data-theme][data-theme] .supply-map-water{
  position:absolute;
  display:inline-flex;
  align-items:center;
  min-height:22px;
  padding:0 7px;
  border:1px solid rgba(127,120,110,.14);
  background:rgba(255,255,255,.62);
  color:var(--dash-faint);
  font-size:.58rem;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
}

html[data-theme][data-theme] .road-294{left:43%;top:19%;transform:rotate(-22deg);}
html[data-theme][data-theme] .road-55{left:37%;top:64%;transform:rotate(26deg);}
html[data-theme][data-theme] .road-88{left:58%;top:47%;transform:rotate(18deg);}

html[data-theme][data-theme] .supply-map-water{
  right:14px;
  top:38%;
  min-height:70px;
  writing-mode:vertical-rl;
  justify-content:center;
  color:rgba(30,109,168,.62);
}

html[data-theme="black"][data-theme] .supply-road-label,
html[data-theme="black-accent"][data-theme] .supply-road-label,
html[data-theme="black"][data-theme] .supply-map-water,
html[data-theme="black-accent"][data-theme] .supply-map-water{
  background:rgba(7,7,7,.62);
  border-color:rgba(255,255,255,.1);
}

html[data-theme][data-theme] .supply-route-lines{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  pointer-events:none;
  z-index:2;
}

html[data-theme][data-theme] .supply-route-map .leaflet-container{
  width:100%;
  height:100%;
  background:#efe9df;
  font-family:"Inter Tight", Arial, sans-serif;
  z-index:1;
}

html[data-theme="black"][data-theme] .supply-route-map .leaflet-container,
html[data-theme="black-accent"][data-theme] .supply-route-map .leaflet-container{
  background:#050505;
}

html[data-theme][data-theme] .supply-route-map .leaflet-pane,
html[data-theme][data-theme] .supply-route-map .leaflet-top,
html[data-theme][data-theme] .supply-route-map .leaflet-bottom{
  z-index:2;
}

html[data-theme][data-theme] .supply-route-map .leaflet-control-container{
  font-family:"Inter Tight", Arial, sans-serif;
}

html[data-theme][data-theme] .supply-route-map .leaflet-control-attribution{
  border:1px solid var(--dash-border);
  background:rgba(255,255,255,.78);
  color:var(--dash-muted);
  font-size:8px;
}

html[data-theme="black"][data-theme] .supply-route-map .leaflet-control-attribution,
html[data-theme="black-accent"][data-theme] .supply-route-map .leaflet-control-attribution{
  background:rgba(5,5,5,.78);
}

html[data-theme][data-theme] .supply-route-map .leaflet-control-attribution a{
  color:var(--dash-accent-strong);
}

html[data-theme="black"][data-theme] .supply-route-map .leaflet-control-attribution a,
html[data-theme="black-accent"][data-theme] .supply-route-map .leaflet-control-attribution a{
  color:var(--dash-accent);
}

html[data-theme][data-theme] .supply-leaflet-hub-marker,
html[data-theme][data-theme] .supply-leaflet-site-marker,
html[data-theme][data-theme] .supply-leaflet-truck-marker{
  background:transparent;
  border:0;
}

html[data-theme][data-theme] .supply-leaflet-hub-dot,
html[data-theme][data-theme] .supply-leaflet-site-dot,
html[data-theme][data-theme] .supply-leaflet-truck-dot{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  display:block;
  border-radius:999px;
}

html[data-theme][data-theme] .supply-leaflet-hub-dot{
  width:14px;
  height:14px;
  border:2px solid var(--dash-surface);
  background:var(--dash-ink);
  box-shadow:0 0 0 6px rgba(20,14,8,.08), 0 6px 16px rgba(20,14,8,.18);
}

html[data-theme][data-theme] .supply-leaflet-site-dot{
  width:12px;
  height:12px;
  border:2px solid var(--dash-surface);
  background:var(--dash-blue);
  box-shadow:0 0 0 5px var(--dash-blue-soft), 0 6px 16px rgba(20,14,8,.13);
}

html[data-theme][data-theme] .supply-leaflet-truck-dot{
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  border:2px solid var(--dash-surface);
  background:var(--dash-accent);
  color:#fff;
  box-shadow:0 0 0 6px var(--dash-accent-soft), 0 12px 24px rgba(20,14,8,.18);
}

html[data-theme][data-theme] .supply-leaflet-truck-dot::before{
  content:"";
  width:14px;
  height:10px;
  display:block;
  border:2px solid currentColor;
  border-radius:2px;
  box-shadow:8px 2px 0 -3px currentColor;
}

html[data-theme][data-theme] .supply-leaflet-truck-marker.active .supply-leaflet-truck-dot{
  transform:translate(-50%,-50%) scale(1.12);
  box-shadow:0 0 0 8px var(--dash-accent-soft), 0 18px 34px rgba(20,14,8,.22);
}

html[data-theme][data-theme] .supply-leaflet-truck-marker.enroute:not(.active) .supply-leaflet-truck-dot{
  background:var(--dash-elevated);
  color:var(--dash-muted);
  box-shadow:0 0 0 5px rgba(127,120,110,.12), 0 10px 20px rgba(20,14,8,.12);
}

html[data-theme][data-theme] .supply-leaflet-truck-marker.onsite .supply-leaflet-truck-dot{
  background:var(--dash-good);
  box-shadow:0 0 0 6px var(--dash-good-soft), 0 12px 24px rgba(20,14,8,.16);
}

html[data-theme][data-theme] .supply-leaflet-truck-marker.scheduled .supply-leaflet-truck-dot{
  background:var(--dash-blue);
  color:#fff;
  box-shadow:0 0 0 6px var(--dash-blue-soft), 0 12px 24px rgba(20,14,8,.16);
}

html[data-theme][data-theme] .supply-leaflet-truck-marker.loading .supply-leaflet-truck-dot,
html[data-theme][data-theme] .supply-leaflet-truck-marker.exception .supply-leaflet-truck-dot{
  background:var(--dash-warning);
  box-shadow:0 0 0 6px var(--dash-warning-soft), 0 12px 24px rgba(20,14,8,.16);
}

html[data-theme][data-theme] .supply-leaflet-hub-marker.active .supply-leaflet-hub-dot,
html[data-theme][data-theme] .supply-leaflet-site-marker.active .supply-leaflet-site-dot{
  box-shadow:0 0 0 7px var(--dash-accent-soft), 0 10px 22px rgba(20,14,8,.16);
}

html[data-theme="black"][data-theme] .supply-leaflet-truck-dot,
html[data-theme="black-accent"][data-theme] .supply-leaflet-truck-dot{
  color:#050505;
}

html[data-theme="black"][data-theme] .supply-leaflet-truck-marker.enroute:not(.active) .supply-leaflet-truck-dot,
html[data-theme="black-accent"][data-theme] .supply-leaflet-truck-marker.enroute:not(.active) .supply-leaflet-truck-dot{
  background:#1d1d1d;
  color:#fff;
}

html[data-theme="black"][data-theme] .supply-leaflet-truck-marker.scheduled .supply-leaflet-truck-dot,
html[data-theme="black-accent"][data-theme] .supply-leaflet-truck-marker.scheduled .supply-leaflet-truck-dot{
  color:#050505;
}

html[data-theme="black"][data-theme] .supply-leaflet-hub-dot,
html[data-theme="black-accent"][data-theme] .supply-leaflet-hub-dot{
  background:#fff;
  box-shadow:0 0 0 6px rgba(255,255,255,.08);
}

html[data-theme][data-theme] .supply-route-map .supply-leaflet-tooltip{
  border:1px solid var(--dash-border-strong);
  border-radius:0;
  background:rgba(255,255,255,.9);
  color:var(--dash-ink);
  box-shadow:0 10px 18px rgba(20,14,8,.12);
  font-family:"Inter Tight", Arial, sans-serif;
  font-size:.62rem;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}

html[data-theme="black"][data-theme] .supply-route-map .supply-leaflet-tooltip,
html[data-theme="black-accent"][data-theme] .supply-route-map .supply-leaflet-tooltip{
  background:rgba(14,14,14,.9);
  color:#fff;
  box-shadow:none;
}

html[data-theme][data-theme] .route-line{
  fill:none;
  stroke:var(--dash-muted);
  stroke-width:1.7;
  stroke-dasharray:6 7;
  stroke-linecap:round;
  opacity:.38;
  transition:opacity .2s ease, stroke-width .2s ease, filter .2s ease;
}

html[data-theme][data-theme] .route-line.active{
  stroke:var(--dash-accent);
  stroke-width:2.8;
  stroke-dasharray:none;
  opacity:.95;
  filter:drop-shadow(0 0 8px var(--dash-accent-soft));
}

html[data-theme][data-theme] .map-zone{
  position:absolute;
  z-index:3;
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:0 9px;
  border:1px solid var(--dash-border);
  background:rgba(255,255,255,.72);
  color:var(--dash-muted);
  font-size:.66rem;
  font-weight:900;
  letter-spacing:.045em;
  text-transform:uppercase;
}

html[data-theme="black"][data-theme] .map-zone,
html[data-theme="black-accent"][data-theme] .map-zone{
  background:rgba(15,15,15,.78);
}

html[data-theme][data-theme] .zone-city{left:10%;top:15%;}
html[data-theme][data-theme] .zone-suburbs{right:9%;top:12%;}
html[data-theme][data-theme] .zone-yard{left:8%;bottom:13%;}

html[data-theme][data-theme] .supply-map-marker,
html[data-theme][data-theme] .supply-job-pin{
  position:absolute;
  left:var(--x);
  top:var(--y);
  transform:translate(-50%,-50%);
}

html[data-theme][data-theme] .supply-map-marker{
  border:0;
  background:transparent;
  color:var(--dash-ink);
  cursor:pointer;
  z-index:5;
}

html[data-theme][data-theme] .supply-map-marker .supply-svg-icon{
  width:1rem;
  height:1rem;
}

html[data-theme][data-theme] .supply-map-marker.hub{
  display:flex;
  align-items:center;
  gap:6px;
  padding:7px 10px;
  border:1px solid var(--dash-border-strong);
  background:var(--dash-surface);
  box-shadow:0 8px 22px rgba(20,14,8,.08);
  color:var(--dash-ink);
  font-size:.68rem;
  font-weight:900;
  white-space:nowrap;
}

html[data-theme="black"][data-theme] .supply-map-marker.hub,
html[data-theme="black-accent"][data-theme] .supply-map-marker.hub{
  box-shadow:none;
}

html[data-theme][data-theme] .supply-map-marker.hub.active{
  border-color:var(--dash-accent);
  color:var(--dash-accent-strong);
  box-shadow:0 0 0 5px var(--dash-accent-soft), 0 12px 26px rgba(20,14,8,.12);
}

html[data-theme="black"][data-theme] .supply-map-marker.hub.active,
html[data-theme="black-accent"][data-theme] .supply-map-marker.hub.active{
  color:var(--dash-accent);
}

html[data-theme][data-theme] .supply-map-marker.truck{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border:2px solid var(--dash-surface);
  border-radius:999px;
  background:var(--dash-accent);
  color:#fff;
  box-shadow:0 0 0 6px var(--dash-accent-soft), 0 16px 30px rgba(20,14,8,.18);
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease, color .18s ease;
}

html[data-theme][data-theme] .supply-map-marker.truck::before{
  content:attr(data-label) " / " attr(data-phase);
  position:absolute;
  left:50%;
  bottom:calc(100% + 8px);
  transform:translateX(-50%);
  min-width:max-content;
  padding:5px 8px;
  border:1px solid var(--dash-border-strong);
  background:rgba(255,255,255,.88);
  color:var(--dash-ink);
  font-size:.62rem;
  font-weight:900;
  letter-spacing:.03em;
  text-transform:uppercase;
  box-shadow:0 10px 18px rgba(20,14,8,.12);
}

html[data-theme][data-theme] .supply-map-marker.truck::after{
  content:"";
  position:absolute;
  inset:-9px;
  border:1px solid var(--dash-accent);
  border-radius:999px;
  opacity:.35;
  animation:supplyTruckPulse 1.8s ease-in-out infinite;
}

html[data-theme][data-theme] .supply-map-marker.truck:not(.active){
  background:var(--dash-elevated);
  color:var(--dash-muted);
  box-shadow:0 0 0 5px rgba(127,120,110,.12), 0 12px 22px rgba(20,14,8,.08);
}

html[data-theme][data-theme] .supply-map-marker.truck:hover,
html[data-theme][data-theme] .supply-map-marker.truck.active{
  transform:translate(-50%,-50%) scale(1.08);
}

html[data-theme][data-theme] .supply-map-marker.truck.onsite{
  background:var(--dash-good);
  color:#fff;
}

html[data-theme][data-theme] .supply-map-marker.truck.loading{
  background:var(--dash-warning);
  color:#fff;
}

html[data-theme="black"][data-theme] .supply-map-marker.truck,
html[data-theme="black-accent"][data-theme] .supply-map-marker.truck{
  color:#050505;
}

html[data-theme="black"][data-theme] .supply-map-marker.truck::before,
html[data-theme="black-accent"][data-theme] .supply-map-marker.truck::before{
  background:rgba(14,14,14,.9);
  color:#fff;
  box-shadow:none;
}

html[data-theme="black"][data-theme] .supply-map-marker.truck:not(.active):not(.onsite):not(.loading),
html[data-theme="black-accent"][data-theme] .supply-map-marker.truck:not(.active):not(.onsite):not(.loading){
  background:#1d1d1d;
  color:#fff;
}

html[data-theme][data-theme] .supply-job-pin{
  z-index:4;
  padding:5px 7px;
  border:1px solid var(--dash-border);
  background:rgba(255,255,255,.84);
  color:var(--dash-ink);
  font-size:.64rem;
  font-weight:900;
  white-space:nowrap;
}

html[data-theme="black"][data-theme] .supply-job-pin,
html[data-theme="black-accent"][data-theme] .supply-job-pin{
  background:rgba(15,15,15,.86);
}

html[data-theme][data-theme] .supply-job-pin.is-active{
  border-color:var(--dash-accent);
  color:var(--dash-accent-strong);
}

html[data-theme="black"][data-theme] .supply-job-pin.is-active,
html[data-theme="black-accent"][data-theme] .supply-job-pin.is-active{
  color:var(--dash-accent);
}

html[data-theme][data-theme] .supply-map-hud{
  position:absolute;
  left:16px;
  bottom:16px;
  width:min(420px, calc(100% - 32px));
  z-index:6;
  padding:16px;
  border:1px solid var(--dash-border-strong);
  background:rgba(255,255,255,.88);
  color:var(--dash-ink);
  backdrop-filter:blur(14px);
  box-shadow:0 18px 46px rgba(20,14,8,.13);
}

html[data-theme="black"][data-theme] .supply-map-hud,
html[data-theme="black-accent"][data-theme] .supply-map-hud{
  background:rgba(12,12,12,.88);
  box-shadow:none;
}

html[data-theme][data-theme] .supply-map-hud > span{
  display:flex;
  align-items:center;
  gap:7px;
  color:var(--dash-accent-strong);
  font-size:.68rem;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
}

html[data-theme="black"][data-theme] .supply-map-hud > span,
html[data-theme="black-accent"][data-theme] .supply-map-hud > span{
  color:var(--dash-accent);
}

html[data-theme][data-theme] .supply-map-hud h3{
  margin:9px 0 12px;
  color:var(--dash-ink);
  font-size:1.35rem;
  line-height:1.02;
  letter-spacing:-.035em;
}

html[data-theme][data-theme] .supply-map-hud dl{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin:0;
}

html[data-theme][data-theme] .supply-map-hud div{
  min-width:0;
}

html[data-theme][data-theme] .supply-map-hud dt,
html[data-theme][data-theme] .supply-map-hud dd{
  margin:0;
}

html[data-theme][data-theme] .supply-map-hud dt{
  color:var(--dash-muted);
  font-size:.65rem;
  font-weight:900;
  letter-spacing:.045em;
  text-transform:uppercase;
}

html[data-theme][data-theme] .supply-map-hud dd{
  margin-top:3px;
  color:var(--dash-ink);
  font-size:.78rem;
  font-weight:850;
}

html[data-theme][data-theme] .supply-map-legend{
  position:absolute;
  right:16px;
  top:16px;
  z-index:6;
  display:flex;
  align-items:center;
  gap:8px;
  padding:9px 10px;
  border:1px solid var(--dash-border);
  background:rgba(255,255,255,.78);
  color:var(--dash-muted);
  backdrop-filter:blur(12px);
  font-size:.62rem;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}

html[data-theme="black"][data-theme] .supply-map-legend,
html[data-theme="black-accent"][data-theme] .supply-map-legend{
  background:rgba(12,12,12,.8);
}

html[data-theme][data-theme] .supply-map-legend span{
  display:inline-flex;
  align-items:center;
  gap:5px;
}

html[data-theme][data-theme] .supply-map-legend i{
  width:9px;
  height:9px;
  border-radius:999px;
  display:inline-block;
  background:var(--dash-accent);
}

html[data-theme][data-theme] .supply-map-legend i.branch{background:var(--dash-ink);}
html[data-theme][data-theme] .supply-map-legend i.truck{background:var(--dash-accent);}
html[data-theme][data-theme] .supply-map-legend i.site{background:var(--dash-blue);}

html[data-theme][data-theme] .supply-tracking-stack{
  min-width:0;
  display:grid;
  grid-template-rows:auto auto auto;
  align-content:start;
  gap:14px;
}

html[data-theme][data-theme] .supply-route-inspector{
  border:1px solid var(--dash-border);
  background:
    radial-gradient(circle at 100% 0%, var(--dash-accent-soft), transparent 120px),
    var(--dash-elevated);
  padding:16px;
  min-width:0;
}

html[data-theme][data-theme] .supply-route-inspector-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:10px;
}

html[data-theme][data-theme] .supply-route-inspector-head span{
  color:var(--dash-muted);
  font-size:.66rem;
  font-weight:900;
  letter-spacing:.07em;
  text-transform:uppercase;
}

html[data-theme][data-theme] .supply-route-inspector-head strong{
  color:var(--dash-accent-strong);
  font-size:.76rem;
  font-weight:950;
}

html[data-theme="black"][data-theme] .supply-route-inspector-head strong,
html[data-theme="black-accent"][data-theme] .supply-route-inspector-head strong{
  color:var(--dash-accent);
}

html[data-theme][data-theme] .supply-route-inspector h3{
  margin:0;
  color:var(--dash-ink);
  font-size:1.32rem;
  line-height:1;
  letter-spacing:-.035em;
}

html[data-theme][data-theme] .supply-route-inspector p{
  margin:6px 0 13px;
  color:var(--dash-muted);
  font-size:.8rem;
  font-weight:750;
}

html[data-theme][data-theme] .supply-route-progress{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  margin-bottom:14px;
}

html[data-theme][data-theme] .supply-route-progress span{
  height:8px;
  overflow:hidden;
  background:rgba(127,120,110,.14);
}

html[data-theme][data-theme] .supply-route-progress i{
  display:block;
  width:var(--progress,50%);
  height:100%;
  background:linear-gradient(90deg,var(--dash-accent),var(--dash-accent-strong));
  transition:width .24s ease;
}

html[data-theme][data-theme] .supply-route-progress em{
  color:var(--dash-ink);
  font-size:.78rem;
  font-style:normal;
  font-weight:950;
}

html[data-theme][data-theme] .supply-route-inspector dl{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin:0;
}

html[data-theme][data-theme] .supply-route-inspector dt,
html[data-theme][data-theme] .supply-route-inspector dd{
  margin:0;
}

html[data-theme][data-theme] .supply-route-inspector dt{
  color:var(--dash-muted);
  font-size:.61rem;
  font-weight:900;
  letter-spacing:.045em;
  text-transform:uppercase;
}

html[data-theme][data-theme] .supply-route-inspector dd{
  margin-top:3px;
  color:var(--dash-ink);
  font-size:.73rem;
  font-weight:850;
  line-height:1.18;
}

html[data-theme][data-theme] .supply-dispatch-board[data-delivery-view="capacity"] .route-line:not(.active){
  opacity:.18;
}

html[data-theme][data-theme] .supply-dispatch-board[data-delivery-view="capacity"] .supply-map-marker.truck:not(.active){
  opacity:.76;
}

html[data-theme][data-theme] .supply-dispatch-board[data-delivery-view="capacity"] .supply-route-progress i,
html[data-theme][data-theme] .supply-dispatch-board[data-delivery-view="capacity"] .supply-dispatch-list i::before{
  background:linear-gradient(90deg,var(--dash-blue),var(--dash-accent));
}

html[data-theme][data-theme] .supply-dispatch-board[data-delivery-view="exceptions"] .route-line,
html[data-theme][data-theme] .supply-dispatch-board[data-delivery-view="exceptions"] .supply-map-marker.truck,
html[data-theme][data-theme] .supply-dispatch-board[data-delivery-view="exceptions"] .supply-job-pin{
  opacity:.32;
}

html[data-theme][data-theme] .supply-dispatch-board[data-delivery-view="exceptions"] .route-line[data-delivery-route="bw405"],
html[data-theme][data-theme] .supply-dispatch-board[data-delivery-view="exceptions"] .supply-map-marker.truck[data-delivery-id="bw405"],
html[data-theme][data-theme] .supply-dispatch-board[data-delivery-view="exceptions"] .supply-job-pin[data-delivery-pin="bw405"]{
  opacity:1;
}

html[data-theme][data-theme] .supply-dispatch-board[data-delivery-view="exceptions"] .route-line.active,
html[data-theme][data-theme] .supply-dispatch-board[data-delivery-view="exceptions"] .supply-map-marker.truck.active,
html[data-theme][data-theme] .supply-dispatch-board[data-delivery-view="exceptions"] .supply-job-pin.is-active{
  opacity:1;
}

html[data-theme][data-theme] .supply-dispatch-board[data-delivery-view="exceptions"] .route-line[data-delivery-route="bw405"]{
  stroke:var(--dash-warning);
  stroke-width:3.4;
}

html[data-theme][data-theme] .supply-dispatch-board[data-delivery-view="exceptions"] .supply-dispatch-list button:not([data-alert="watch"]){
  opacity:.58;
}

html[data-theme][data-theme] .supply-dispatch-list{
  display:grid;
  gap:10px;
}

html[data-theme][data-theme] .supply-dispatch-list button{
  position:relative;
  display:grid;
  grid-template-columns:38px minmax(0,1fr) auto;
  gap:6px 10px;
  align-items:center;
  min-height:86px;
  padding:13px;
  border:1px solid var(--dash-border);
  background:var(--dash-elevated);
  color:var(--dash-ink);
  font-family:"Inter Tight", Arial, sans-serif;
  text-align:left;
  cursor:pointer;
}

html[data-theme][data-theme] .supply-dispatch-list button.active,
html[data-theme][data-theme] .supply-dispatch-list button:hover{
  border-color:var(--dash-accent);
  background:var(--dash-accent-soft);
}

html[data-theme][data-theme] .supply-dispatch-list button > span{
  grid-row:span 2;
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:var(--dash-accent-soft);
  color:var(--dash-accent-strong);
}

html[data-theme="black"][data-theme] .supply-dispatch-list button > span,
html[data-theme="black-accent"][data-theme] .supply-dispatch-list button > span{
  color:var(--dash-accent);
}

html[data-theme][data-theme] .supply-dispatch-list strong{
  color:var(--dash-ink);
  font-size:.93rem;
  line-height:1;
}

html[data-theme][data-theme] .supply-dispatch-list small{
  grid-column:2 / -1;
  color:var(--dash-muted);
  font-size:.74rem;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

html[data-theme][data-theme] .supply-dispatch-list em{
  padding:5px 7px;
  border-radius:4px;
  background:var(--dash-blue-soft);
  color:var(--dash-blue);
  font-size:.64rem;
  font-style:normal;
  font-weight:900;
  white-space:nowrap;
}

html[data-theme][data-theme] .supply-dispatch-list em.onsite{
  background:var(--dash-good-soft);
  color:var(--dash-good);
}

html[data-theme][data-theme] .supply-dispatch-list em.loading{
  background:var(--dash-warning-soft);
  color:var(--dash-warning);
}

html[data-theme][data-theme] .supply-dispatch-list i{
  position:absolute;
  left:13px;
  right:13px;
  bottom:10px;
  height:3px;
  overflow:hidden;
  background:rgba(127,120,110,.14);
}

html[data-theme][data-theme] .supply-dispatch-list i::before{
  content:"";
  display:block;
  width:var(--progress,50%);
  height:100%;
  background:var(--dash-accent);
}

html[data-theme][data-theme] .supply-chart-bars{
  display:grid;
  gap:12px;
  padding:16px 18px 18px;
}

html[data-theme][data-theme] .supply-chart-bars div{
  display:grid;
  grid-template-columns:88px 42px minmax(0,1fr);
  gap:10px;
  align-items:center;
}

html[data-theme][data-theme] .supply-chart-bars span{
  color:var(--dash-muted);
  font-size:.74rem;
  font-weight:900;
}

html[data-theme][data-theme] .supply-chart-bars strong{
  color:var(--dash-ink);
  font-size:.78rem;
  text-align:right;
}

html[data-theme][data-theme] .supply-chart-bars i{
  height:9px;
  overflow:hidden;
  background:rgba(127,120,110,.14);
}

html[data-theme][data-theme] .supply-chart-bars i::before{
  content:"";
  display:block;
  width:var(--bar,50%);
  height:100%;
  background:linear-gradient(90deg,var(--dash-accent),var(--dash-accent-strong));
}

@keyframes supplyTruckPulse{
  0%,100%{transform:scale(.82);opacity:.22;}
  50%{transform:scale(1.18);opacity:.55;}
}

@keyframes supplyRouteFlow{
  to{stroke-dashoffset:-26;}
}

html[data-theme][data-theme] .supply-detail-rail{
  position:sticky;
  top:0;
  height:100vh;
  overflow:auto;
  display:flex;
  flex-direction:column;
  gap:16px;
  padding:24px 20px;
  border-left:1px solid var(--dash-border);
  background:rgba(255,255,255,.58);
  backdrop-filter:blur(16px);
  color:var(--dash-ink);
}

html[data-theme][data-theme] .supply-detail-rail.is-updating .supply-detail-panel{
  box-shadow:0 0 0 3px var(--dash-accent-soft);
}

html[data-theme="black"][data-theme] .supply-detail-rail,
html[data-theme="black-accent"][data-theme] .supply-detail-rail{
  background:rgba(12,12,12,.86);
}

html[data-theme][data-theme] .supply-user-strip{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height:56px;
}

html[data-theme][data-theme] .supply-user-strip > span{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:var(--dash-ink);
  font-weight:850;
}

html[data-theme][data-theme] .supply-bell{
  position:relative;
}

html[data-theme][data-theme] .supply-bell em{
  position:absolute;
  top:-10px;
  right:-10px;
  display:grid;
  place-items:center;
  width:20px;
  height:20px;
  border-radius:999px;
  background:var(--dash-accent);
  color:#fff;
  font-size:.66rem;
  font-style:normal;
  font-weight:900;
}

html[data-theme="black"][data-theme] .supply-bell em,
html[data-theme="black-accent"][data-theme] .supply-bell em{
  color:#050505;
}

html[data-theme][data-theme] .supply-user-strip div{
  display:grid;
  grid-template-columns:44px minmax(0,1fr);
  gap:10px;
  align-items:center;
}

html[data-theme][data-theme] .supply-user-strip div > strong{
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  border-radius:999px;
  background:#17130f;
  color:#fff;
  font-size:.9rem;
}

html[data-theme][data-theme] .supply-user-strip div span{
  display:block;
  color:var(--dash-ink);
  font-weight:900;
  line-height:1.1;
}

html[data-theme][data-theme] .supply-user-strip div small{
  display:block;
  margin-top:2px;
  color:var(--dash-muted);
  font-size:.72rem;
  font-weight:650;
}

html[data-theme][data-theme] .supply-detail-panel{
  padding:18px;
}

html[data-theme][data-theme] .supply-detail-panel .supply-panel-head{
  margin:-18px -18px 16px;
  border-bottom-color:var(--dash-border);
}

html[data-theme][data-theme] .supply-detail-head{
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:flex-start;
  padding-bottom:16px;
  border-bottom:1px solid var(--dash-border);
}

html[data-theme][data-theme] .supply-detail-head h2{
  margin:0 0 7px;
  color:var(--dash-ink);
  font-size:1.45rem;
  letter-spacing:-.035em;
}

html[data-theme][data-theme] .supply-detail-head p{
  margin:0;
  color:var(--dash-muted);
  font-weight:800;
}

html[data-theme][data-theme] .supply-detail-head button{
  min-width:36px;
  min-height:36px;
  padding:0;
  color:var(--dash-muted);
}

html[data-theme][data-theme] .supply-detail-list{
  display:grid;
  gap:10px;
  margin:16px 0 0;
}

html[data-theme][data-theme] .supply-detail-list div{
  display:grid;
  grid-template-columns:minmax(86px,.75fr) minmax(0,1fr);
  gap:12px;
}

html[data-theme][data-theme] .supply-detail-list dt{
  color:var(--dash-muted);
  letter-spacing:0;
  text-transform:none;
}

html[data-theme][data-theme] .supply-detail-list dd{
  margin:0;
  color:var(--dash-ink);
  font-size:.88rem;
  font-weight:800;
}

html[data-theme][data-theme] .supply-detail-list dd[data-status-key="quote"] .detail-dot{
  background:var(--dash-warning);
}

html[data-theme][data-theme] .supply-detail-list dd[data-status-key="progress"] .detail-dot{
  background:var(--dash-blue);
}

html[data-theme][data-theme] .supply-detail-list dd[data-status-key="pending"] .detail-dot{
  background:var(--dash-faint);
}

html[data-theme][data-theme] .detail-dot{
  display:inline-block;
  width:8px;
  height:8px;
  margin-right:8px;
  border-radius:999px;
  background:var(--dash-good);
}

html[data-theme][data-theme] .supply-workflow-tabs{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:6px;
  margin-bottom:14px;
}

html[data-theme][data-theme] .supply-workflow-tabs .api-tab{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:38px;
  border:1px solid var(--dash-border);
  background:var(--dash-elevated);
  color:var(--dash-muted);
  font-family:"Inter Tight", Arial, sans-serif;
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
  cursor:pointer;
}

html[data-theme][data-theme] .supply-workflow-tabs .api-tab:hover{
  border-color:var(--dash-accent);
  color:var(--dash-accent-strong);
}

html[data-theme][data-theme] .supply-workflow-tabs .api-tab.active{
  border-color:var(--dash-accent);
  background:var(--dash-accent);
  color:#fff;
}

html[data-theme="black"][data-theme] .supply-workflow-tabs .api-tab.active,
html[data-theme="black-accent"][data-theme] .supply-workflow-tabs .api-tab.active{
  color:#050505;
}

html[data-theme][data-theme] .supply-workflow-panels .api-panel[hidden]{
  display:none !important;
}

html[data-theme][data-theme] .supply-progress-list{
  position:relative;
  display:grid;
  gap:0;
  margin:0;
  padding:0;
  list-style:none;
}

html[data-theme][data-theme] .supply-progress-list li{
  position:relative;
  padding:0 0 19px 34px;
  border-left:1px solid var(--dash-border-strong);
}

html[data-theme][data-theme] .supply-progress-list li:last-child{
  padding-bottom:0;
}

html[data-theme][data-theme] .supply-progress-list li::before{
  content:"";
  position:absolute;
  left:-7px;
  top:0;
  width:13px;
  height:13px;
  border:1px solid var(--dash-faint);
  border-radius:999px;
  background:var(--dash-surface);
}

html[data-theme][data-theme] .supply-progress-list li.done::before{
  border-color:var(--dash-good);
  background:var(--dash-good);
  box-shadow:inset 0 0 0 3px var(--dash-surface);
}

html[data-theme][data-theme] .supply-progress-list li.current::before{
  border-color:var(--dash-accent);
  background:var(--dash-surface);
  box-shadow:inset 0 0 0 3px var(--dash-accent);
}

html[data-theme][data-theme] .supply-progress-list strong{
  display:block;
  color:var(--dash-ink);
  font-size:.88rem;
}

html[data-theme][data-theme] .supply-progress-list span{
  display:block;
  margin-top:4px;
  color:var(--dash-muted);
  font-size:.76rem;
}

html[data-theme][data-theme] .supply-activity-feed{
  display:grid;
  gap:0;
}

html[data-theme][data-theme] .supply-activity-feed article{
  display:grid;
  grid-template-columns:36px minmax(0,1fr);
  gap:11px;
  padding:12px 0;
  border-bottom:1px solid var(--dash-border);
}

html[data-theme][data-theme] .supply-activity-feed article:first-child{
  padding-top:0;
}

html[data-theme][data-theme] .supply-activity-feed article > span{
  display:grid;
  place-items:center;
  width:36px;
  height:36px;
  border-radius:999px;
  background:var(--dash-accent);
  color:#fff;
  font-size:.74rem;
  font-weight:900;
}

html[data-theme="black"][data-theme] .supply-activity-feed article > span,
html[data-theme="black-accent"][data-theme] .supply-activity-feed article > span{
  color:#050505;
}

html[data-theme][data-theme] .supply-activity-feed strong{
  display:block;
  color:var(--dash-ink);
  font-size:.84rem;
  line-height:1.25;
}

html[data-theme][data-theme] .supply-activity-feed small{
  display:block;
  margin-top:4px;
  color:var(--dash-muted);
  font-size:.74rem;
}

html[data-theme][data-theme] .supply-detail-cta{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  margin-top:18px;
  border:1px solid var(--dash-accent);
  color:var(--dash-accent-strong);
  font-size:.86rem;
  font-weight:900;
  text-decoration:none;
}

html[data-theme="black"][data-theme] .supply-detail-cta,
html[data-theme="black-accent"][data-theme] .supply-detail-cta{
  color:var(--dash-accent);
}

@media (max-width:1360px){
  html[data-theme][data-theme] .supply-app-shell{
    grid-template-columns:224px minmax(0,1fr);
  }

  html[data-theme][data-theme] .supply-detail-rail{
    grid-column:2;
    position:relative;
    top:auto;
    height:auto;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    align-items:start;
    border-left:0;
    border-top:1px solid var(--dash-border);
  }

  html[data-theme][data-theme] .supply-user-strip{
    grid-column:1 / -1;
  }

  html[data-theme][data-theme] .supply-command-bar{
    grid-template-columns:1fr;
  }
}

@media (max-width:1080px){
  html[data-theme][data-theme] .supply-stat-grid,
  html[data-theme][data-theme] .supply-lower-grid,
  html[data-theme][data-theme] .supply-detail-rail{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  html[data-theme][data-theme] .supply-dispatch-layout{
    grid-template-columns:1fr;
  }

  html[data-theme][data-theme] .supply-tracking-stack{
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-template-rows:auto;
  }

  html[data-theme][data-theme] .supply-route-inspector,
  html[data-theme][data-theme] .supply-dispatch-list{
    grid-column:auto;
  }
}

@media (max-width:900px){
  html[data-theme][data-theme] .supply-app-shell{
    grid-template-columns:1fr;
  }

  html[data-theme][data-theme] .supply-app-sidebar{
    position:relative;
    height:auto;
    padding:18px;
  }

  html[data-theme][data-theme] .supply-app-nav{
    display:flex;
    gap:8px;
    overflow-x:auto;
    padding-bottom:4px;
  }

  html[data-theme][data-theme] .supply-app-nav a{
    min-width:max-content;
  }

  html[data-theme][data-theme] .supply-branch-card{
    display:none;
  }

  html[data-theme][data-theme] .supply-dashboard-canvas{
    padding:24px 18px;
  }

  html[data-theme][data-theme] .supply-detail-rail{
    grid-column:auto;
    grid-template-columns:1fr;
    padding:18px;
  }

  html[data-theme][data-theme] .supply-command-actions{
    grid-template-columns:1fr;
  }
}

@media (max-width:640px){
  html[data-theme][data-theme] .supply-stat-grid,
  html[data-theme][data-theme] .supply-lower-grid,
  html[data-theme][data-theme] .supply-detail-rail,
  html[data-theme][data-theme] .supply-tracking-stack{
    grid-template-columns:1fr;
  }

  html[data-theme][data-theme] .supply-command-bar h1{
    font-size:2.2rem;
  }

  html[data-theme][data-theme] .supply-panel-head,
  html[data-theme][data-theme] .supply-table-footer{
    align-items:flex-start;
    flex-direction:column;
  }

  html[data-theme][data-theme] .supply-filter-row{
    width:100%;
    flex-direction:column;
    align-items:stretch;
  }

  html[data-theme][data-theme] .supply-filter-row button,
  html[data-theme][data-theme] .supply-filter-row a{
    width:100%;
  }

  html[data-theme][data-theme] .supply-tracking-toggle{
    width:100%;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    overflow:visible;
    padding-bottom:0;
  }

  html[data-theme][data-theme] .supply-tracking-toggle button{
    min-width:0;
    padding:0 8px;
    font-size:.68rem;
  }

  html[data-theme][data-theme] .supply-dispatch-layout{
    padding:12px;
  }

  html[data-theme][data-theme] .supply-route-map{
    min-height:420px;
  }

  html[data-theme][data-theme] .supply-map-toolbar{
    align-items:flex-start;
    flex-direction:column;
  }

  html[data-theme][data-theme] .supply-map-toolbar-meta{
    width:100%;
    align-items:flex-start;
    text-align:left;
  }

  html[data-theme][data-theme] .supply-map-marker.hub span,
  html[data-theme][data-theme] .map-zone,
  html[data-theme][data-theme] .supply-road-label,
  html[data-theme][data-theme] .supply-map-water,
  html[data-theme][data-theme] .supply-map-legend{
    display:none;
  }

  html[data-theme][data-theme] .supply-map-marker.truck::before{
    opacity:0;
  }

  html[data-theme][data-theme] .supply-map-marker.truck.active::before{
    opacity:1;
  }

  html[data-theme][data-theme] .supply-map-hud{
    left:12px;
    right:12px;
    bottom:12px;
    width:auto;
  }

  html[data-theme][data-theme] .supply-map-hud{
    padding:12px;
  }

  html[data-theme][data-theme] .supply-map-hud h3{
    font-size:1.06rem;
    margin:7px 0 10px;
  }

  html[data-theme][data-theme] .supply-map-hud dl{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
  }

  html[data-theme][data-theme] .supply-map-hud dt{
    font-size:.58rem;
  }

  html[data-theme][data-theme] .supply-map-hud dd{
    font-size:.68rem;
  }

  html[data-theme][data-theme] .supply-route-inspector dl{
    grid-template-columns:1fr;
  }

  html[data-theme][data-theme] .supply-stat-grid article{
    min-height:112px;
  }

  html[data-theme][data-theme] .supply-mini-table{
    overflow:auto;
  }

  html[data-theme][data-theme] .supply-mini-table div{
    min-width:520px;
  }

  html[data-theme][data-theme] .supply-delivery-list article{
    grid-template-columns:1fr;
    align-items:start;
  }
}

[data-theme="white"] .connected-supply-section,
[data-theme="white"] .location-finder-section,
[data-theme="white"] .resource-pathways-section {
    background: #f4f1ec;
    color: #151515;
}

.connected-supply-section {
    position: relative;
    overflow: hidden;
    scroll-margin-top: 118px;
    background:
        radial-gradient(circle at 14% 18%, rgba(var(--primary-rgb), 0.2), transparent 30rem),
        linear-gradient(135deg, #050505 0%, #111111 52%, #050505 100%);
}

.connected-supply-section::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(rgba(255, 255, 255, 0.045) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.045) 1px, transparent 1px);
    background-size: 44px 44px;
    -webkit-mask-image: linear-gradient(90deg, transparent, #000 18%, #000 82%, transparent);
    mask-image: linear-gradient(90deg, transparent, #000 18%, #000 82%, transparent);
    pointer-events: none;
}

.connected-supply-section > .container {
    position: relative;
    z-index: 1;
}

.connected-supply-layout {
    display: grid;
    grid-template-columns: minmax(0, 0.92fr) minmax(340px, 1.08fr);
    gap: clamp(28px, 5vw, 72px);
    align-items: center;
    margin-bottom: clamp(26px, 4vw, 48px);
}

.connected-supply-copy p {
    max-width: 66ch;
    color: rgba(255, 255, 255, 0.76);
    line-height: 1.75;
}

.connected-supply-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px 22px;
    margin-top: 26px;
}

.connected-supply-dashboard,
.api-feature-card {
    border: 1px solid rgba(213, 187, 166, 0.22);
    background: rgba(12, 12, 12, 0.86);
    color: #ffffff;
    box-shadow: 0 28px 80px rgba(0, 0, 0, 0.34);
}

.connected-supply-dashboard {
    padding: clamp(18px, 2.5vw, 28px);
}

.api-window-bar {
    display: flex;
    align-items: center;
    gap: 8px;
    padding-bottom: 18px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.13);
}

.api-window-bar span {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.34);
}

.api-window-bar span:first-child {
    background: var(--primary, #a8774f);
}

.api-window-bar strong {
    margin-left: auto;
    color: rgba(255, 255, 255, 0.72);
    font-size: 0.78rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.api-status-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin: 18px 0;
}

.api-status-grid article {
    min-height: 132px;
    padding: 16px;
    border: 1px solid rgba(255, 255, 255, 0.13);
    background: rgba(255, 255, 255, 0.055);
}

.api-status-grid span,
.api-status-grid small {
    display: block;
    color: rgba(255, 255, 255, 0.64);
    font-size: 0.74rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.api-status-grid strong {
    display: block;
    margin: 0.7rem 0 0.36rem;
    color: #ffffff;
    font-family: var(--bw-heading);
    font-size: clamp(1.45rem, 2.7vw, 2.2rem);
    line-height: 1;
    letter-spacing: -0.04em;
}

.connected-supply-dashboard pre {
    margin: 0;
    overflow: auto;
    padding: 18px;
    border: 1px solid rgba(255, 255, 255, 0.13);
    background: #050505;
    color: #f7f3ed;
    font-size: clamp(0.78rem, 1.15vw, 0.94rem);
    line-height: 1.65;
}

.connected-supply-dashboard code {
    font-family: "SFMono-Regular", Consolas, "Liberation Mono", monospace;
}

.connected-supply-cards {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: clamp(14px, 2vw, 22px);
}

.api-feature-card {
    min-height: 100%;
    padding: clamp(22px, 2.6vw, 32px);
}

.api-feature-card i {
    display: grid;
    place-items: center;
    width: 54px;
    height: 54px;
    margin-bottom: 20px;
    border: 1px solid rgba(255, 255, 255, 0.22);
    background: rgba(255, 255, 255, 0.08);
    color: #ffffff;
    font-size: 1.25rem;
}

.api-feature-card h3 {
    color: #ffffff;
    font-size: clamp(1.1rem, 1.5vw, 1.36rem);
    line-height: 1.08;
    margin-bottom: 0.7rem;
}

.api-feature-card p {
    color: rgba(255, 255, 255, 0.74);
    line-height: 1.65;
}

html[data-theme][data-theme] .connected-supply-layout{
    grid-template-columns: minmax(310px, .74fr) minmax(620px, 1.26fr);
    align-items: center;
}

html[data-theme][data-theme] .connected-benefit-list{
    display: grid;
    gap: 12px;
    margin-top: 28px;
}

html[data-theme][data-theme] .connected-benefit-list article{
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 13px;
    align-items: center;
    padding: 13px;
    border: 1px solid rgba(255, 255, 255, .12);
    background: rgba(255, 255, 255, .055);
}

html[data-theme][data-theme] .connected-benefit-list i{
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    background: #ffffff;
    color: #050505;
    font-size: .88rem;
}

html[data-theme][data-theme] .connected-benefit-list strong,
html[data-theme][data-theme] .connected-benefit-list span{
    display: block;
}

html[data-theme][data-theme] .connected-benefit-list strong{
    color: #ffffff;
    font-family: var(--bw-heading, "Inter Tight", sans-serif);
    font-size: .98rem;
    line-height: 1;
}

html[data-theme][data-theme] .connected-benefit-list span{
    margin-top: 5px;
    color: rgba(255, 255, 255, .64);
    font-size: .76rem;
    line-height: 1.35;
}

html[data-theme][data-theme] .supply-dashboard-shell{
    overflow: hidden;
    scroll-margin-top: 118px;
    padding: clamp(16px, 2vw, 22px);
    border: 1px solid rgba(255, 255, 255, .15);
    background:
        linear-gradient(rgba(255, 255, 255, .035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, .035) 1px, transparent 1px),
        radial-gradient(circle at 96% 4%, rgba(215, 176, 131, .18), transparent 260px),
        #070707;
    background-size: 32px 32px, 32px 32px, auto, auto;
    color: #ffffff;
    box-shadow: 0 34px 92px rgba(0, 0, 0, .38);
}

html[data-theme][data-theme] .supply-dashboard-top{
    display: grid;
    grid-template-columns: minmax(118px, .4fr) minmax(0, 1fr) auto;
    gap: 16px;
    align-items: center;
    padding-bottom: 16px;
    border-bottom: 1px solid rgba(255, 255, 255, .12);
}

html[data-theme][data-theme] .supply-dashboard-brand strong,
html[data-theme][data-theme] .supply-dashboard-brand span,
html[data-theme][data-theme] .supply-project-title small,
html[data-theme][data-theme] .supply-dashboard-clock,
html[data-theme][data-theme] .supply-kpi-grid span,
html[data-theme][data-theme] .supply-card-head span,
html[data-theme][data-theme] .supply-bottom-grid span{
    font-family: var(--bw-heading, "Inter Tight", sans-serif);
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

html[data-theme][data-theme] .supply-dashboard-brand strong{
    display: block;
    color: #ffffff;
    font-size: 1.02rem;
    line-height: .9;
    letter-spacing: -.02em;
}

html[data-theme][data-theme] .supply-dashboard-brand span{
    display: block;
    margin-top: 5px;
    color: rgba(255, 255, 255, .48);
    font-size: .54rem;
}

html[data-theme][data-theme] .supply-project-title small{
    display: block;
    color: rgba(255, 255, 255, .54);
    font-size: .62rem;
}

html[data-theme][data-theme] .supply-project-title h3{
    margin: 5px 0 3px;
    color: #ffffff;
    font-family: var(--bw-heading, "Inter Tight", sans-serif);
    font-size: clamp(1.65rem, 2.6vw, 2.35rem);
    line-height: .94;
    letter-spacing: -.05em;
}

html[data-theme][data-theme] .supply-project-title p{
    margin: 0;
    color: rgba(255, 255, 255, .58);
    font-size: .76rem;
}

html[data-theme][data-theme] .supply-dashboard-clock{
    display: inline-flex;
    align-items: center;
    gap: 8px;
    justify-content: center;
    padding: 11px 12px;
    border: 1px solid rgba(255, 255, 255, .16);
    background: rgba(255, 255, 255, .055);
    color: #ffffff;
    font-size: .66rem;
}

html[data-theme][data-theme] .supply-dashboard-clock i{
    color: #d7b083;
}

html[data-theme][data-theme] .supply-kpi-grid{
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    border: 1px solid rgba(255, 255, 255, .11);
    border-bottom: 0;
    margin-top: 16px;
}

html[data-theme][data-theme] .supply-kpi-grid article{
    min-width: 0;
    padding: 14px;
    border-right: 1px solid rgba(255, 255, 255, .1);
    background: rgba(255, 255, 255, .04);
}

html[data-theme][data-theme] .supply-kpi-grid article:last-child{
    border-right: 0;
}

html[data-theme][data-theme] .supply-kpi-grid i{
    display: block;
    color: #d7b083;
    font-size: .88rem;
    margin-bottom: 10px;
}

html[data-theme][data-theme] .supply-kpi-grid span,
html[data-theme][data-theme] .supply-kpi-grid small{
    display: block;
    color: rgba(255, 255, 255, .5);
    font-size: .58rem;
}

html[data-theme][data-theme] .supply-kpi-grid strong{
    display: block;
    margin: 7px 0 4px;
    color: #ffffff;
    font-family: var(--bw-heading, "Inter Tight", sans-serif);
    font-size: 1rem;
    line-height: 1;
}

html[data-theme][data-theme] .supply-dashboard-tabs{
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 9px;
    margin: 16px 0;
}

html[data-theme][data-theme] .supply-dashboard-tabs .api-tab{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 48px;
    border: 1px solid rgba(255, 255, 255, .12);
    background: rgba(255, 255, 255, .06);
    color: #ffffff;
    font-family: var(--bw-heading, "Inter Tight", sans-serif);
    font-size: .72rem;
    font-weight: 900;
    letter-spacing: .07em;
    text-transform: uppercase;
    cursor: pointer;
}

html[data-theme][data-theme] .supply-dashboard-tabs .api-tab i{
    color: rgba(255, 255, 255, .7);
}

html[data-theme][data-theme] .supply-dashboard-tabs .api-tab.active{
    background: #ffffff;
    color: #050505;
    border-color: #ffffff;
}

html[data-theme][data-theme] .supply-dashboard-tabs .api-tab.active i{
    color: #050505;
}

html[data-theme][data-theme] .supply-panel-layout{
    display: grid;
    grid-template-columns: minmax(0, 1.28fr) minmax(190px, .72fr);
    gap: 12px;
    align-items: start;
}

html[data-theme][data-theme] .supply-main-card,
html[data-theme][data-theme] .supply-side-stack article,
html[data-theme][data-theme] .supply-bottom-grid article{
    border: 1px solid rgba(255, 255, 255, .12);
    background: rgba(0, 0, 0, .22);
}

html[data-theme][data-theme] .supply-main-card{
    padding: 15px;
}

html[data-theme][data-theme] .supply-card-head{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 12px;
}

html[data-theme][data-theme] .supply-card-head h4,
html[data-theme][data-theme] .supply-side-stack h4{
    margin: 0;
    color: #ffffff;
    font-family: var(--bw-heading, "Inter Tight", sans-serif);
    font-size: .94rem;
    line-height: 1;
}

html[data-theme][data-theme] .supply-card-head span{
    color: rgba(255, 255, 255, .48);
    font-size: .55rem;
}

html[data-theme][data-theme] .supply-data-table{
    display: grid;
    gap: 7px;
}

html[data-theme][data-theme] .supply-data-table [role="row"]{
    display: grid;
    grid-template-columns: minmax(115px, 1.15fr) .72fr .72fr .78fr;
    align-items: center;
    gap: 9px;
    padding: 10px;
    border: 1px solid rgba(255, 255, 255, .09);
    background: rgba(255, 255, 255, .035);
    color: rgba(255, 255, 255, .72);
    font-size: .72rem;
    line-height: 1.25;
}

html[data-theme][data-theme] .supply-data-table [role="row"]:first-child{
    background: transparent;
    border-color: transparent;
    padding-top: 0;
    color: rgba(255, 255, 255, .42);
    font-family: var(--bw-heading, "Inter Tight", sans-serif);
    font-size: .56rem;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

html[data-theme][data-theme] .supply-data-table strong{
    color: #ffffff;
    font-family: var(--bw-heading, "Inter Tight", sans-serif);
    font-size: .84rem;
    line-height: 1;
}

html[data-theme][data-theme] .supply-data-table em{
    display: block;
    margin-top: 4px;
    color: #d7b083;
    font-style: normal;
    font-size: .58rem;
    letter-spacing: .06em;
    text-transform: uppercase;
}

html[data-theme][data-theme] .supply-data-table .is-good,
html[data-theme][data-theme] .supply-data-table .is-limited{
    color: #ffffff;
    font-weight: 800;
}

html[data-theme][data-theme] .supply-data-table .is-good::before,
html[data-theme][data-theme] .supply-data-table .is-limited::before{
    content: "";
    display: inline-block;
    width: 7px;
    height: 7px;
    margin-right: 7px;
    background: #d7b083;
    vertical-align: 1px;
}

html[data-theme][data-theme] .supply-data-table .is-limited::before{
    background: #ffffff;
}

html[data-theme][data-theme] .supply-main-card > a{
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 13px;
    color: #d7b083;
    font-family: var(--bw-heading, "Inter Tight", sans-serif);
    font-size: .68rem;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

html[data-theme][data-theme] .supply-side-stack{
    display: grid;
    gap: 12px;
}

html[data-theme][data-theme] .supply-side-stack article{
    padding: 14px;
}

html[data-theme][data-theme] .supply-side-stack dl{
    display: grid;
    gap: 8px;
    margin: 12px 0 0;
}

html[data-theme][data-theme] .supply-side-stack dl div{
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 10px;
    padding-bottom: 8px;
    border-bottom: 1px solid rgba(255, 255, 255, .08);
}

html[data-theme][data-theme] .supply-side-stack dl div:last-child{
    padding-bottom: 0;
    border-bottom: 0;
}

html[data-theme][data-theme] .supply-side-stack dt,
html[data-theme][data-theme] .supply-side-stack dd{
    margin: 0;
    color: rgba(255, 255, 255, .55);
    font-size: .67rem;
}

html[data-theme][data-theme] .supply-side-stack dd{
    color: #ffffff;
    font-weight: 800;
    text-align: right;
}

html[data-theme][data-theme] .supply-side-stack ol{
    display: grid;
    gap: 10px;
    margin: 12px 0 0;
    padding: 0;
    list-style: none;
}

html[data-theme][data-theme] .supply-side-stack li{
    position: relative;
    padding-left: 16px;
}

html[data-theme][data-theme] .supply-side-stack li::before{
    content: "";
    position: absolute;
    left: 0;
    top: 4px;
    width: 7px;
    height: 7px;
    border: 1px solid rgba(255, 255, 255, .24);
    background: #070707;
}

html[data-theme][data-theme] .supply-side-stack li.done::before,
html[data-theme][data-theme] .supply-side-stack li.current::before{
    background: #d7b083;
    border-color: #d7b083;
}

html[data-theme][data-theme] .supply-side-stack li strong,
html[data-theme][data-theme] .supply-side-stack li span{
    display: block;
}

html[data-theme][data-theme] .supply-side-stack li strong{
    color: #ffffff;
    font-size: .74rem;
}

html[data-theme][data-theme] .supply-side-stack li span{
    margin-top: 3px;
    color: rgba(255, 255, 255, .52);
    font-size: .63rem;
}

html[data-theme][data-theme] .supply-bottom-grid{
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

html[data-theme][data-theme] .supply-bottom-grid article{
    min-width: 0;
    padding: 14px;
}

html[data-theme][data-theme] .supply-bottom-grid span,
html[data-theme][data-theme] .supply-bottom-grid small{
    display: block;
    color: rgba(255, 255, 255, .5);
    font-size: .56rem;
}

html[data-theme][data-theme] .supply-bottom-grid strong{
    display: block;
    margin: 7px 0 4px;
    color: #ffffff;
    font-family: var(--bw-heading, "Inter Tight", sans-serif);
    font-size: .9rem;
    line-height: 1.04;
}

[data-theme="white"] .connected-supply-section {
    background:
        radial-gradient(circle at 14% 18%, rgba(var(--primary-rgb), 0.12), transparent 30rem),
        linear-gradient(135deg, #ffffff 0%, #f7f4ef 58%, #ffffff 100%);
}

[data-theme="white"] .connected-supply-section::before {
    background:
        linear-gradient(rgba(23, 19, 15, 0.055) 1px, transparent 1px),
        linear-gradient(90deg, rgba(23, 19, 15, 0.055) 1px, transparent 1px);
}

[data-theme="white"] .connected-supply-copy p {
    color: rgba(23, 19, 15, 0.72);
}

[data-theme="white"] .connected-supply-dashboard,
[data-theme="white"] .api-feature-card {
    background: #ffffff;
    color: #17130f;
    border-color: rgba(23, 19, 15, 0.14);
    box-shadow: 0 20px 54px rgba(23, 19, 15, 0.08);
}

[data-theme="white"] .api-window-bar {
    border-bottom-color: rgba(23, 19, 15, 0.13);
}

[data-theme="white"] .api-window-bar span {
    background: rgba(23, 19, 15, 0.26);
}

[data-theme="white"] .api-window-bar span:first-child {
    background: #050505;
}

[data-theme="white"] .api-window-bar strong,
[data-theme="white"] .api-status-grid span,
[data-theme="white"] .api-status-grid small,
[data-theme="white"] .api-feature-card p {
    color: rgba(23, 19, 15, 0.68);
}

[data-theme="white"] .api-status-grid article {
    background: #f7f4ef;
    border-color: rgba(23, 19, 15, 0.13);
}

[data-theme="white"] .api-status-grid strong,
[data-theme="white"] .api-feature-card h3 {
    color: #17130f;
}

[data-theme="white"] .api-feature-card i {
    color: #ffffff;
    background: #050505;
    border-color: #050505;
}

html[data-theme="white"][data-theme] .connected-benefit-list article{
    background: rgba(23, 19, 15, .04);
    border-color: rgba(23, 19, 15, .12);
}

html[data-theme="white"][data-theme] .connected-benefit-list strong{
    color: #17130f;
}

html[data-theme="white"][data-theme] .connected-benefit-list span{
    color: rgba(23, 19, 15, .64);
}

html[data-theme="white"][data-theme] .connected-benefit-list i{
    background: #050505;
    color: #ffffff;
}

html[data-theme="black"][data-theme] .connected-benefit-list i,
html[data-theme="black-accent"][data-theme] .connected-benefit-list i{
    color: #050505 !important;
    -webkit-text-fill-color: #050505 !important;
}

html[data-theme="white"][data-theme] .connected-benefit-list i{
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

@media (max-width: 980px) {
    .connected-supply-layout,
    .connected-supply-cards {
        grid-template-columns: 1fr 1fr;
    }

    .connected-supply-copy {
        grid-column: 1 / -1;
    }

    html[data-theme][data-theme] .connected-supply-layout{
        grid-template-columns: 1fr;
    }

    html[data-theme][data-theme] .supply-dashboard-shell{
        max-width: 860px;
        margin-inline: auto;
    }
}

@media (max-width: 640px) {
    .connected-supply-layout,
    .connected-supply-cards,
    .api-status-grid {
        grid-template-columns: 1fr;
    }

    .api-window-bar {
        align-items: flex-start;
        flex-wrap: wrap;
    }

    .api-window-bar strong {
        width: 100%;
        margin: 8px 0 0;
    }

    html[data-theme][data-theme] .connected-benefit-list article{
        grid-template-columns: 38px minmax(0, 1fr);
    }

    html[data-theme][data-theme] .connected-benefit-list i{
        width: 38px;
        height: 38px;
    }

    html[data-theme][data-theme] .supply-dashboard-shell{
        margin-inline: -20px;
        padding: 14px;
    }

    html[data-theme][data-theme] .supply-dashboard-top,
    html[data-theme][data-theme] .supply-kpi-grid,
    html[data-theme][data-theme] .supply-panel-layout,
    html[data-theme][data-theme] .supply-bottom-grid{
        grid-template-columns: 1fr;
    }

    html[data-theme][data-theme] .supply-dashboard-clock{
        width: 100%;
        box-sizing: border-box;
    }

    html[data-theme][data-theme] .supply-kpi-grid article{
        border-right: 0;
        border-bottom: 1px solid rgba(255, 255, 255, .1);
    }

    html[data-theme][data-theme] .supply-kpi-grid article:last-child{
        border-bottom: 0;
    }

    html[data-theme][data-theme] .supply-dashboard-tabs{
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
    }

    html[data-theme][data-theme] .supply-dashboard-tabs .api-tab{
        min-height: 46px;
        font-size: .66rem;
    }

    html[data-theme][data-theme] .supply-data-table{
        gap: 9px;
    }

    html[data-theme][data-theme] .supply-data-table [role="row"]{
        grid-template-columns: 1fr 1fr;
        gap: 8px 12px;
        font-size: .68rem;
    }

    html[data-theme][data-theme] .supply-data-table [role="row"]:first-child{
        display: none;
    }
}

.location-finder-layout {
    display: grid;
    grid-template-columns: minmax(0, 0.95fr) minmax(320px, 1.05fr);
    gap: clamp(28px, 5vw, 72px);
    align-items: center;
    margin-bottom: clamp(30px, 5vw, 56px);
}

.location-finder-copy p {
    color: currentColor;
    opacity: 0.76;
    max-width: 62ch;
}

.location-stats {
    display: grid;
    gap: 10px;
    margin-top: 24px;
    color: currentColor;
}

.location-stats span {
    display: block;
    border-left: 3px solid #a8774f;
    padding-left: 14px;
    letter-spacing: 0.02em;
}

.location-stats strong {
    font-size: clamp(2rem, 5vw, 4rem);
    line-height: 1;
    margin-right: 8px;
}

.location-finder-visual,
.location-card,
.resource-pathway-card,
.location-search-panel {
    border-radius: 0;
}

.location-finder-visual {
    overflow: hidden;
    border: 1px solid rgba(168, 119, 79, 0.45);
    min-height: 360px;
    background: #111;
}

.location-finder-visual img {
    width: 100%;
    height: 100%;
    min-height: 360px;
    object-fit: cover;
    display: block;
}

.location-search-panel {
    border: 1px solid rgba(168, 119, 79, 0.45);
    background: rgba(255, 255, 255, 0.06);
    padding: clamp(18px, 3vw, 28px);
    margin-bottom: 26px;
}

[data-theme="white"] .location-search-panel {
    background: #ffffff;
    border-color: rgba(0, 0, 0, 0.16);
}

.location-search-panel label {
    display: block;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-bottom: 12px;
}

.location-search-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 12px;
}

.location-search-row input,
.location-search-row button {
    min-height: 52px;
    border-radius: 0;
    font: inherit;
}

.location-search-row input {
    border: 1px solid rgba(255, 255, 255, 0.22);
    background: rgba(0, 0, 0, 0.28);
    color: #fff;
    padding: 0 16px;
}

[data-theme="white"] .location-search-row input {
    border-color: rgba(0, 0, 0, 0.2);
    background: #f4f1ec;
    color: #151515;
}

.location-search-row button {
    border: 0;
    background: #8f5f3d;
    color: #fff;
    font-weight: 800;
    padding: 0 18px;
    cursor: pointer;
}

.location-search-meta {
    margin: 12px 0 0;
    opacity: 0.72;
}

.location-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    max-height: 720px;
    overflow: auto;
    padding-right: 6px;
}

.location-card {
    border: 1px solid rgba(255, 255, 255, 0.14);
    background: rgba(255, 255, 255, 0.055);
    padding: 20px;
    display: grid;
    gap: 12px;
}

[data-theme="white"] .location-card {
    background: #ffffff;
    border-color: rgba(0, 0, 0, 0.14);
}

.location-card[hidden] {
    display: none;
}

.location-card-topline,
.location-card dl div,
.location-card-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.location-card-topline span,
.location-card-topline small {
    color: #d5bba6;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    font-size: 0.78rem;
}

[data-theme="white"] .location-card-topline span,
[data-theme="white"] .location-card-topline small {
    color: #7a4f31;
}

.location-card h3 {
    margin: 0;
    font-size: clamp(1.25rem, 2vw, 1.7rem);
}

.location-card p {
    margin: 0;
    opacity: 0.78;
}

.location-card dl {
    margin: 0;
    display: grid;
    gap: 7px;
}

.location-card dt {
    font-weight: 800;
    opacity: 0.72;
}

.location-card dd {
    margin: 0;
    text-align: right;
}

.location-card-actions a,
.resource-pathway-card a {
    color: inherit;
    text-decoration: none;
    font-weight: 800;
    border-bottom: 1px solid #a8774f;
    padding-bottom: 2px;
}

.resource-pathway-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    margin-top: clamp(28px, 5vw, 52px);
}

.resource-pathway-card {
    border: 1px solid rgba(255, 255, 255, 0.14);
    background: rgba(255, 255, 255, 0.055);
    padding: clamp(22px, 3vw, 30px);
    min-height: 260px;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

[data-theme="white"] .resource-pathway-card {
    background: #fff;
    border-color: rgba(0, 0, 0, 0.14);
}

.resource-pathway-card span {
    color: #d5bba6;
    font-weight: 900;
}

[data-theme="white"] .resource-pathway-card span {
    color: #7a4f31;
}

.resource-pathway-card h3,
.resource-pathway-card p {
    margin: 0;
}

.resource-pathway-card p {
    opacity: 0.76;
}

.resource-pathway-card a {
    margin-top: auto;
    width: fit-content;
}

@media (max-width: 980px) {
    .location-finder-layout,
    .location-grid,
    .resource-pathway-grid {
        grid-template-columns: 1fr;
    }

    .location-search-row {
        grid-template-columns: 1fr;
    }

    .location-grid {
        max-height: none;
        overflow: visible;
        padding-right: 0;
    }
}

/* Locations and resources final content polish */
.location-view-actions {
    display: flex;
    justify-content: center;
    margin-top: 18px;
}

.location-view-toggle {
    min-height: 52px;
    border: 1px solid #8f5f3d;
    border-radius: 0;
    background: #8f5f3d;
    color: #fff;
    padding: 0 22px;
    font: inherit;
    font-weight: 850;
    cursor: pointer;
}

.location-view-toggle[hidden] {
    display: none;
}

[data-theme="white"] .location-view-toggle {
    background: #5f3a24;
    border-color: #5f3a24;
    color: #fff;
}

.location-card p,
.location-search-meta,
.resource-pathway-card p {
    line-height: 1.55;
}

.location-card-actions a:hover,
.resource-pathway-card a:hover,
.location-view-toggle:hover {
    opacity: 0.82;
}

@media (max-width: 640px) {
    .location-card dl div,
    .location-card-actions {
        align-items: flex-start;
        flex-direction: column;
    }

    .location-card dd {
        text-align: left;
    }
}

/* Header transparency polish */
html[data-theme="black"][data-theme] .site-header:not(.scrolled),
html[data-theme="white"][data-theme] .site-header:not(.scrolled),
.site-header:not(.scrolled) {
    background: transparent;
    border-bottom-color: transparent;
    box-shadow: none;
    backdrop-filter: none;
}

html[data-theme="black"][data-theme] .site-header.scrolled,
html[data-theme="white"][data-theme] .site-header.scrolled,
.site-header.scrolled {
    background: rgba(0, 0, 0, 0.92);
    border-bottom-color: rgba(213, 187, 166, 0.22);
    backdrop-filter: blur(16px);
}

html[data-theme="white"][data-theme] .site-header.scrolled {
    background: rgba(255, 255, 255, 0.94);
    border-bottom-color: rgba(0, 0, 0, 0.12);
}

/* Planning notes carousel overflow containment */
.reviews-slider-container,
#testimonials-splide,
#testimonials-splide .splide__track {
    overflow: hidden;
}

#testimonials-splide .splide__track {
    clip-path: none;
}

/* Horizontal overflow guard for off-canvas and motion elements */
html,
body {
    max-width: 100%;
    overflow-x: hidden;
}

/* Masons First testimonial and partner-logo marquee */
.testimonials-slider {
    margin-bottom: clamp(34px, 5vw, 64px);
}

.masons-partner-marquee {
    border: 1px solid rgba(255, 255, 255, 0.14);
    background: rgba(255, 255, 255, 0.05);
    overflow: hidden;
    padding: clamp(24px, 4vw, 38px) 0;
}

[data-theme="white"] .masons-partner-marquee {
    background: #fff;
    border-color: rgba(0, 0, 0, 0.12);
}

.masons-partner-head {
    max-width: 780px;
    margin: 0 auto clamp(22px, 3vw, 32px);
    padding: 0 24px;
    text-align: center;
}

.masons-partner-head span {
    display: inline-block;
    color: #d5bba6;
    font-size: 0.78rem;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    margin-bottom: 10px;
}

[data-theme="white"] .masons-partner-head span {
    color: #7a4f31;
}

.masons-partner-head p {
    margin: 0;
    opacity: 0.78;
    line-height: 1.55;
}

.masons-logo-marquee {
    position: relative;
    overflow: hidden;
    width: 100%;
}

.masons-logo-marquee::before,
.masons-logo-marquee::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    width: min(12vw, 120px);
    z-index: 2;
    pointer-events: none;
}

.masons-logo-marquee::before {
    left: 0;
    background: linear-gradient(90deg, #111 0%, rgba(17, 17, 17, 0) 100%);
}

.masons-logo-marquee::after {
    right: 0;
    background: linear-gradient(270deg, #111 0%, rgba(17, 17, 17, 0) 100%);
}

[data-theme="white"] .masons-logo-marquee::before {
    background: linear-gradient(90deg, #fff 0%, rgba(255, 255, 255, 0) 100%);
}

[data-theme="white"] .masons-logo-marquee::after {
    background: linear-gradient(270deg, #fff 0%, rgba(255, 255, 255, 0) 100%);
}

.masons-logo-track {
    display: flex;
    align-items: center;
    gap: clamp(18px, 3vw, 34px);
    width: max-content;
    animation: masonsLogoMarquee 36s linear infinite;
    will-change: transform;
}

.masons-logo-marquee:hover .masons-logo-track {
    animation-play-state: paused;
}

.masons-logo-track img {
    display: block;
    width: clamp(280px, 30vw, 430px);
    height: auto;
    padding: 18px;
    background: #fff;
    border: 1px solid rgba(0, 0, 0, 0.1);
    box-shadow: 0 22px 48px rgba(0, 0, 0, 0.18);
}

@keyframes masonsLogoMarquee {
    from { transform: translate3d(0, 0, 0); }
    to { transform: translate3d(-50%, 0, 0); }
}

@media (prefers-reduced-motion: reduce) {
    .masons-logo-track {
        animation: none;
        flex-wrap: wrap;
        justify-content: center;
        width: auto;
        padding: 0 18px;
    }
}

@media (max-width: 640px) {
    .masons-partner-marquee {
        padding-top: 24px;
        padding-bottom: 24px;
    }

    .masons-logo-track img {
        width: 280px;
        padding: 14px;
    }
}

/* Compact logo strip directly below hero */
.masons-logo-strip-section {
    background: #0b0b0b;
    color: #fff;
    padding: clamp(18px, 3vw, 34px) 0;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

[data-theme="white"] .masons-logo-strip-section {
    background: #f7f4ef;
    color: #231b16;
    border-color: rgba(0, 0, 0, 0.12);
}

.masons-logo-strip-section .container {
    max-width: 100%;
    padding-inline: 0;
}

.masons-logo-strip-section .masons-partner-marquee {
    padding: 0;
    border: 0;
    background: transparent;
}

.masons-logo-strip-section .masons-partner-head {
    max-width: 760px;
    margin-bottom: 14px;
}

.masons-logo-strip-section .masons-partner-head span {
    font-size: 0.72rem;
    margin-bottom: 6px;
}

.masons-logo-strip-section .masons-partner-head p {
    font-size: 0.9rem;
    line-height: 1.45;
}

.masons-logo-strip-section .masons-logo-track {
    gap: clamp(12px, 2vw, 22px);
    animation-duration: 44s;
}

.masons-logo-strip-section .masons-logo-track img {
    width: clamp(210px, 20vw, 280px);
    padding: 10px 12px;
    box-shadow: none;
    border-color: rgba(0, 0, 0, 0.08);
}

@media (max-width: 640px) {
    .masons-logo-strip-section {
        padding: 18px 0 22px;
    }

    .masons-logo-strip-section .masons-partner-head {
        padding-inline: 18px;
    }

    .masons-logo-strip-section .masons-logo-track img {
        width: 220px;
        padding: 8px 10px;
    }
}

/* Expanded Masons First logo strip sizing */
.masons-logo-strip-section .masons-logo-track {
    gap: clamp(10px, 1.6vw, 18px);
    animation-duration: 76s;
}

.masons-logo-strip-section .masons-logo-track img {
    width: clamp(150px, 15vw, 210px);
    padding: 8px 10px;
    box-shadow: none;
    border-color: rgba(0, 0, 0, 0.08);
}

@media (max-width: 640px) {
    .masons-logo-strip-section .masons-logo-track img {
        width: 165px;
        padding: 7px 8px;
    }
}

/* Header logo contrast by scroll state */
html[data-theme="black"][data-theme] .site-header .brand-logo,
html[data-theme="white"][data-theme] .site-header:not(.scrolled) .brand-logo {
    filter: brightness(0) invert(1) contrast(1.18);
}

html[data-theme="white"][data-theme] .site-header.scrolled .brand-logo {
    filter: none;
}

html[data-theme="white"][data-theme] .site-header.scrolled .logo-light,
html[data-theme="white"][data-theme] .site-header.scrolled .logo-dark {
    opacity: 1;
}

/* Final white Masons First partner strip */
html[data-theme][data-theme] .masons-logo-strip-section,
.masons-logo-strip-section {
    background: #ffffff;
    color: #151515;
    padding: clamp(14px, 2.2vw, 24px) 0;
    border-top: 1px solid rgba(0, 0, 0, 0.08);
    border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}

html[data-theme][data-theme] .masons-logo-strip-section .masons-partner-marquee,
.masons-logo-strip-section .masons-partner-marquee {
    background: #ffffff;
    border: 0;
    padding: 0;
}

.masons-logo-strip-section .masons-partner-head {
    max-width: 680px;
    margin-bottom: 10px;
}

html[data-theme][data-theme] .masons-logo-strip-section .masons-partner-head span,
.masons-logo-strip-section .masons-partner-head span {
    color: #111111;
    font-size: 0.68rem;
    letter-spacing: 0.13em;
    margin-bottom: 4px;
}

html[data-theme][data-theme] .masons-logo-strip-section .masons-partner-head p,
.masons-logo-strip-section .masons-partner-head p {
    color: rgba(17, 17, 17, 0.68);
    font-size: 0.84rem;
    line-height: 1.4;
}

.masons-logo-strip-section .masons-logo-marquee::before {
    background: linear-gradient(90deg, #fff 0%, rgba(255, 255, 255, 0) 100%);
}

.masons-logo-strip-section .masons-logo-marquee::after {
    background: linear-gradient(270deg, #fff 0%, rgba(255, 255, 255, 0) 100%);
}

.masons-logo-strip-section .masons-logo-track {
    gap: clamp(18px, 2.6vw, 34px);
    animation-duration: 82s;
}

html[data-theme][data-theme] .masons-logo-strip-section .masons-logo-track img,
.masons-logo-strip-section .masons-logo-track img {
    width: clamp(96px, 8vw, 138px);
    height: auto;
    padding: 0;
    background: transparent;
    border: 0;
    box-shadow: none;
    opacity: 0.82;
    filter: none;
}

@media (max-width: 640px) {
    .masons-logo-strip-section {
        padding: 12px 0 16px;
    }

    .masons-logo-strip-section .masons-partner-head {
        margin-bottom: 8px;
        padding-inline: 18px;
    }

    .masons-logo-strip-section .masons-partner-head p {
        font-size: 0.8rem;
    }

    html[data-theme][data-theme] .masons-logo-strip-section .masons-logo-track img,
    .masons-logo-strip-section .masons-logo-track img {
        width: 104px;
    }
}



/* Material-swatch eyebrow chips: subtle brown wood grain treatment. */
html[data-theme][data-theme] .section-label,
html[data-theme][data-theme] .section-label:is(span, strong),
html[data-theme][data-theme] :is(.v3-products, .about-section, .services-section, .projects-section, .process-section, .reviews-section, .faq-section, .merged-contact-cta, .v3-guarantees, .v3-recent-projects, .locations-section, .resources-section, .masons-logo-strip) .section-label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.05rem;
  padding: .58rem 1.35rem .52rem;
  color: #fff7ec;
  border: 1px solid rgba(255, 236, 204, .24);
  border-radius: 0;
  background-color: #7a4c2f;
  background-image:
    linear-gradient(90deg, rgba(55, 29, 14, .34), rgba(139, 85, 45, .18) 18%, rgba(70, 37, 18, .22) 38%, rgba(170, 104, 54, .16) 61%, rgba(65, 35, 17, .30)),
    repeating-linear-gradient(100deg, rgba(255, 221, 173, .13) 0px, rgba(255, 221, 173, .13) 1px, rgba(96, 49, 22, .18) 1px, rgba(96, 49, 22, .18) 4px, rgba(140, 80, 38, .10) 4px, rgba(140, 80, 38, .10) 9px),
    radial-gradient(circle at 18% 45%, rgba(255, 225, 168, .16), transparent 23%),
    radial-gradient(circle at 78% 35%, rgba(60, 28, 12, .22), transparent 27%);
  background-size: 100% 100%, 42px 100%, 140px 70px, 180px 80px;
  background-blend-mode: multiply, normal, screen, multiply;
  box-shadow: inset 0 1px 0 rgba(255, 244, 219, .14), inset 0 -1px 0 rgba(35, 17, 8, .28);
  text-shadow: 0 1px 1px rgba(0, 0, 0, .36);
}

html[data-theme][data-theme] .section-label::before {
  display: none;
}

html[data-theme][data-theme] .hero-content .section-label {
  border-color: rgba(255, 236, 204, .32);
  background-color: rgba(122, 76, 47, .92);
}

html[data-theme][data-theme] .section-label :is(span, strong, small, i) {
  color: #fff7ec;
}


/* Safe SVG wood-grain texture override for eyebrow chips. */
html[data-theme][data-theme] .section-label,
html[data-theme][data-theme] .hero-content .section-label {
  background-image:
    linear-gradient(90deg, rgba(52, 26, 11, .32), rgba(148, 88, 44, .18) 28%, rgba(68, 33, 14, .24) 55%, rgba(162, 99, 50, .16)),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='32' viewBox='0 0 120 32'%3E%3Cpath d='M0 8 C20 2 38 12 58 7 S94 4 120 10' fill='none' stroke='%23e7b16f' stroke-opacity='.22' stroke-width='1'/%3E%3Cpath d='M0 18 C22 12 42 24 62 17 S98 15 120 22' fill='none' stroke='%23341408' stroke-opacity='.22' stroke-width='1.2'/%3E%3Cpath d='M0 26 C18 21 42 30 64 24 S98 23 120 28' fill='none' stroke='%23f0c17f' stroke-opacity='.14' stroke-width='1'/%3E%3Cpath d='M15 0 C22 8 20 18 12 32 M73 0 C82 7 78 21 88 32' fill='none' stroke='%23341408' stroke-opacity='.12' stroke-width='1'/%3E%3C/svg%3E");
  background-size: 100% 100%, 120px 32px;
  background-repeat: repeat;
  background-position: center;
}

/* Black accent eyebrow chips: replace the brown swatch with a charcoal material texture. */
html[data-theme="black-accent"][data-theme] .section-label,
html[data-theme="black-accent"][data-theme] .section-label:is(span, strong),
html[data-theme="black-accent"][data-theme] :is(.v3-products, .about-section, .services-section, .projects-section, .process-section, .reviews-section, .faq-section, .merged-contact-cta, .v3-guarantees, .v3-recent-projects, .locations-section, .resources-section, .masons-logo-strip) .section-label,
html[data-theme="black-accent"][data-theme] .hero-content .section-label {
  color: #ffffff;
  background-color: #050505;
  border-color: rgba(255, 255, 255, .20);
  background-image:
    linear-gradient(90deg, rgba(255, 255, 255, .08), rgba(0, 0, 0, .28) 28%, rgba(255, 255, 255, .055) 55%, rgba(0, 0, 0, .34)),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='32' viewBox='0 0 120 32'%3E%3Cpath d='M0 8 C20 2 38 12 58 7 S94 4 120 10' fill='none' stroke='%23ffffff' stroke-opacity='.15' stroke-width='1'/%3E%3Cpath d='M0 18 C22 12 42 24 62 17 S98 15 120 22' fill='none' stroke='%23000000' stroke-opacity='.38' stroke-width='1.2'/%3E%3Cpath d='M0 26 C18 21 42 30 64 24 S98 23 120 28' fill='none' stroke='%23ffffff' stroke-opacity='.10' stroke-width='1'/%3E%3Cpath d='M15 0 C22 8 20 18 12 32 M73 0 C82 7 78 21 88 32' fill='none' stroke='%23ffffff' stroke-opacity='.08' stroke-width='1'/%3E%3C/svg%3E");
  background-size: 100% 100%, 120px 32px;
  background-repeat: repeat;
  background-position: center;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .16), inset 0 -1px 0 rgba(0, 0, 0, .62);
  text-shadow: 0 1px 1px rgba(0, 0, 0, .55);
}

html[data-theme][data-theme] .section-label::before {
  display: none;
}

html[data-theme][data-theme] .section-label :is(span, strong, small, i) {
  color: #ffffff;
}



/* Black accent texture override for eyebrow chips. */
html[data-theme="black-accent"][data-theme] .section-label,
html[data-theme="black-accent"][data-theme] .section-label:is(span, strong),
html[data-theme="black-accent"][data-theme] :is(.v3-products, .about-section, .services-section, .projects-section, .process-section, .reviews-section, .faq-section, .merged-contact-cta, .v3-guarantees, .v3-recent-projects, .locations-section, .resources-section, .masons-logo-strip) .section-label,
html[data-theme="black-accent"][data-theme] .hero-content .section-label {
  color: #ffffff;
  background-color: #080808;
  border-color: rgba(255, 255, 255, .22);
  background-image:
    linear-gradient(90deg, rgba(255, 255, 255, .08), rgba(0, 0, 0, .18) 28%, rgba(255, 255, 255, .055) 56%, rgba(0, 0, 0, .22)),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='32' viewBox='0 0 120 32'%3E%3Cpath d='M0 8 C20 2 38 12 58 7 S94 4 120 10' fill='none' stroke='%23ffffff' stroke-opacity='.13' stroke-width='1'/%3E%3Cpath d='M0 18 C22 12 42 24 62 17 S98 15 120 22' fill='none' stroke='%23000000' stroke-opacity='.40' stroke-width='1.2'/%3E%3Cpath d='M0 26 C18 21 42 30 64 24 S98 23 120 28' fill='none' stroke='%23ffffff' stroke-opacity='.08' stroke-width='1'/%3E%3Cpath d='M15 0 C22 8 20 18 12 32 M73 0 C82 7 78 21 88 32' fill='none' stroke='%23000000' stroke-opacity='.32' stroke-width='1'/%3E%3C/svg%3E");
  background-size: 100% 100%, 120px 32px;
  background-repeat: repeat;
  background-position: center;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .10), inset 0 -1px 0 rgba(0, 0, 0, .46);
  text-shadow: 0 1px 1px rgba(0, 0, 0, .55);
}

html[data-theme][data-theme] .section-label :is(span, strong, small, i) {
  color: #ffffff;
}

/* Final Black Accent theme lock: make every bronze/brown action surface black. */
html[data-theme="black-accent"][data-theme][data-theme] :is(.header-call-btn,.drawer-call-btn,.btn-primary,.btn.btn-primary,.v3-solid-btn,.form-submit-btn,.contact-submit,.sticky-mobile-cta,.gallery-pill.active,.theme-btn.active,.section-label,.location-card-actions a,.resource-pathway-card a){
  color:#ffffff;
  background:#050505;
  border-color:#050505;
}

html[data-theme="black-accent"][data-theme][data-theme] :is(.header-call-btn,.drawer-call-btn,.btn-primary,.btn.btn-primary,.v3-solid-btn,.form-submit-btn,.contact-submit,.sticky-mobile-cta,.gallery-pill.active,.theme-btn.active,.location-card-actions a,.resource-pathway-card a):hover{
  color:#ffffff;
  background:#1d1d1d;
  border-color:#1d1d1d;
}

html[data-theme="black-accent"][data-theme][data-theme] :is(.v3-text-link,.inline-link,.footer-link,.contact-detail-item a){
  color:#ffffff;
}

html[data-theme="black-accent"][data-theme][data-theme] :is(.reviews-section,.faq-section,.location-finder-section,.resource-pathways-section,.masons-logo-strip) :is(.v3-text-link,.inline-link,.footer-link,.contact-detail-item a,.location-card-actions a,.resource-pathway-card a){
  color:#050505;
}

/* Black Accent secondary actions stay outline-only. */
html[data-theme="black-accent"][data-theme][data-theme] .btn.btn-outline,
html[data-theme="black-accent"][data-theme][data-theme] .reviews-cta .btn.btn-outline,
html[data-theme="black-accent"][data-theme][data-theme] .hero-btns .btn.btn-outline {
  background: transparent;
  color: #ffffff;
  border-color: rgba(255,255,255,.72);
  text-shadow: 0 1px 1px rgba(0,0,0,.55);
}

html[data-theme="black-accent"][data-theme][data-theme] .btn.btn-outline:hover,
html[data-theme="black-accent"][data-theme][data-theme] .reviews-cta .btn.btn-outline:hover,
html[data-theme="black-accent"][data-theme][data-theme] .hero-btns .btn.btn-outline:hover {
  background: #ffffff;
  color: #050505;
  border-color: #ffffff;
  text-shadow: none;
}

html[data-theme="black-accent"][data-theme][data-theme] :is(.reviews-section,.faq-section,.location-finder-section,.resource-pathways-section,.masons-logo-strip) .btn.btn-outline {
  background: transparent;
  color: #050505;
  border-color: rgba(5,5,5,.72);
  text-shadow: none;
}

html[data-theme="black-accent"][data-theme][data-theme] :is(.reviews-section,.faq-section,.location-finder-section,.resource-pathways-section,.masons-logo-strip) .btn.btn-outline:hover {
  background: #050505;
  color: #ffffff;
  border-color: #050505;
}

/* White Accent theme: white mode surfaces with black accent actions. */
.theme-swatch.white-accent{
  background:linear-gradient(135deg,#ffffff 0 54%,#050505 54% 100%);
  border-color:rgba(5,5,5,.36);
}

html[data-theme="white"][data-accent="black"]{
  --bw-bronze:#050505;
  --bw-bronze-hover:#1d1d1d;
  --bw-gold:#111111;
  --primary:#050505;
  --primary-rgb:5,5,5;
  --primary-hover:#1d1d1d;
  --accent:#050505;
  --accent-rgb:5,5,5;
  --bw-border:rgba(5,5,5,.20);
  --bw-soft-border:rgba(5,5,5,.12);
}

html[data-theme="white"][data-accent="black"][data-theme] :is(.header-call-btn,.drawer-call-btn,.btn-primary,.btn.btn-primary,.v3-solid-btn,.form-submit-btn,.contact-submit,.sticky-mobile-cta,.gallery-pill.active,.theme-btn.active,.section-label,.location-card-actions a,.resource-pathway-card a){
  color:#ffffff;
  background:#050505;
  border-color:#050505;
  text-shadow:0 1px 1px rgba(0,0,0,.45);
}

html[data-theme="white"][data-accent="black"][data-theme] :is(.header-call-btn,.drawer-call-btn,.btn-primary,.btn.btn-primary,.v3-solid-btn,.form-submit-btn,.contact-submit,.sticky-mobile-cta,.gallery-pill.active,.theme-btn.active,.location-card-actions a,.resource-pathway-card a):hover{
  color:#ffffff;
  background:#1d1d1d;
  border-color:#1d1d1d;
}

html[data-theme="white"][data-accent="black"][data-theme] :is(.v3-text-link,.inline-link,.footer-link,.contact-detail-item a,.location-card-actions a,.resource-pathway-card a){
  color:#050505;
}

html[data-theme="white"][data-accent="black"][data-theme] :is(.v3-product-card,.v3-project-card,.svc-card,.stat-card,.process-card,.v3-guarantee-grid article,.project-card,.contact-detail-item,.contact-form-card,.merged-contact-card,.location-finder-visual,.location-search-panel,.location-card,.resource-pathway-card){
  border-color:rgba(5,5,5,.22);
}

html[data-theme="white"][data-accent="black"][data-theme] :is(.location-stats span,.location-card-topline span,.resource-pathway-card span,.checkbox-custom,.stat-icon-wrap,.scroll-wheel){
  border-color:#050505;
}
html[data-theme="white"][data-accent="black"][data-theme] :is(.location-stats span,.location-card-topline span,.resource-pathway-card span){
  border-left-color:#050505;
}
html[data-theme="white"][data-accent="black"][data-theme] :is(input:checked + .checkbox-custom,.checkbox-container input:checked + .checkbox-custom,.scroll-wheel){
  background:#050505;
}

html[data-theme="white"][data-accent="black"][data-theme] .btn.btn-outline,
html[data-theme="white"][data-accent="black"][data-theme] :is(.reviews-section,.faq-section,.location-finder-section,.resource-pathways-section,.masons-logo-strip) .btn.btn-outline{
  background:transparent;
  color:#050505;
  border-color:rgba(5,5,5,.72);
  text-shadow:none;
}

html[data-theme="white"][data-accent="black"][data-theme] .hero-btns .btn.btn-outline{
  background:transparent;
  color:#ffffff;
  border-color:rgba(255,255,255,.72);
  text-shadow:0 1px 1px rgba(0,0,0,.55);
}

html[data-theme="white"][data-accent="black"][data-theme] .btn.btn-outline:hover,
html[data-theme="white"][data-accent="black"][data-theme] :is(.reviews-section,.faq-section,.location-finder-section,.resource-pathways-section,.masons-logo-strip) .btn.btn-outline:hover{
  background:#050505;
  color:#ffffff;
  border-color:#050505;
}

html[data-theme="white"][data-accent="black"][data-theme] .hero-btns .btn.btn-outline:hover{
  background:#ffffff;
  color:#050505;
  border-color:#ffffff;
  text-shadow:none;
}

/* White Accent contrast fix for dark review CTA card. */
html[data-theme="white"][data-accent="black"][data-theme] .reviews-section .reviews-cta,
html[data-theme="white"][data-accent="black"][data-theme] .reviews-section .reviews-cta.scroll-item{
  background:#050505;
  color:#ffffff;
  border-color:#050505;
}

html[data-theme="white"][data-accent="black"][data-theme] .reviews-section .reviews-cta p{
  color:#ffffff;
}

html[data-theme="white"][data-accent="black"][data-theme] .reviews-section .reviews-cta .btn.btn-outline{
  background:transparent;
  color:#ffffff;
  border-color:rgba(255,255,255,.76);
  text-shadow:0 1px 1px rgba(0,0,0,.45);
}

html[data-theme="white"][data-accent="black"][data-theme] .reviews-section .reviews-cta .btn.btn-outline:hover{
  background:#ffffff;
  color:#050505;
  border-color:#ffffff;
  text-shadow:none;
}

/* Published homepage pathway pass. */
#home > .masons-logo-strip-section{order:2;}
#home > .v3-products{order:3;}
#home > .about-section{order:4;}
#home > .services-section{order:5;}
#home > .design-cladding-section{order:6;}
#home > .v3-capabilities{order:7;}
#home > .v3-recent-projects{order:8;}
#home > .v3-proof{order:9;}
#home > .trade-updates-section{order:10;}
#home > .v3-guarantees{order:11;}
#home > .process-section{order:12;}
#home > .guarantees-marquee{order:13;}
#home > .reviews-section{order:14;}
#home > .projects-section{order:15;}
#home > .faq-section{order:16;}
#home > .connected-supply-section{order:17;}
#home > .location-finder-section{order:18;}
#home > .resource-pathways-section{order:19;}
#home > .merged-contact-cta{order:20;}

.utility-bar{border-bottom:1px solid rgba(255,255,255,.10);background:rgba(5,5,5,.72);backdrop-filter:blur(16px);}
.utility-row{min-height:34px;display:flex;align-items:center;justify-content:flex-end;gap:clamp(14px,2.4vw,30px);font:700 .72rem/1 var(--bw-heading);text-transform:uppercase;letter-spacing:.08em;}
.utility-row a,.drawer-utility-links a{color:#f7f3ed;text-decoration:none;opacity:.84;}
.utility-row a:hover,.drawer-utility-links a:hover{opacity:1;color:#fff;}
.drawer-utility-links{display:grid;gap:.75rem;padding:1rem 0;border-bottom:1px solid rgba(255,255,255,.12);margin-bottom:1rem;}

.trade-updates-section,.design-cladding-section{padding:clamp(76px,9vw,130px) 0;background:#050505;color:#f7f3ed;}
.trade-update-grid,.design-cladding-grid{display:grid;gap:clamp(18px,2.5vw,28px);}
.trade-update-grid{grid-template-columns:repeat(4,minmax(0,1fr));}
.trade-update-card,.design-feature-card,.cladding-feature-card{border:1px solid var(--bw-border,rgba(213,187,166,.22));background:var(--bw-panel,rgba(18,18,18,.92));color:#fff;border-radius:0;padding:clamp(22px,3vw,34px);}
.trade-update-card span,.resource-pathway-card span{display:inline-flex;margin-bottom:1rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#fff;background:#050505;border:1px solid rgba(255,255,255,.18);padding:.42rem .7rem;}
.trade-update-card h3,.trade-update-card p,.trade-update-card a{color:#fff;}
.trade-update-card a,.resource-pathway-card a{font-weight:800;text-transform:uppercase;letter-spacing:.05em;}
.design-cladding-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
.design-feature-card,.cladding-feature-card{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1fr);align-items:center;gap:clamp(22px,3vw,38px);padding:0;overflow:hidden;}
.cladding-feature-card{grid-template-columns:minmax(0,1fr) minmax(0,.92fr);}
.feature-media img{display:block;width:100%;height:100%;min-height:360px;object-fit:cover;}
.feature-copy{padding:clamp(24px,4vw,46px);}
.feature-copy p,.cladding-mini-grid span{color:var(--bw-muted,#d9d0c4);line-height:1.7;}
.cladding-mini-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:1.3rem 0;}
.cladding-mini-grid div{border:1px solid rgba(255,255,255,.16);padding:1rem;background:rgba(255,255,255,.05);}
.cladding-mini-grid strong{display:block;color:#fff;margin-bottom:.35rem;}
.resource-pathway-grid{grid-template-columns:repeat(4,minmax(0,1fr));}
.site-footer nav{display:flex;flex-wrap:wrap;gap:.75rem 1.1rem;max-width:760px;}
html[data-theme="white"] .trade-updates-section,html[data-theme="white"] .design-cladding-section{background:#f7f4ef;color:#231b16;}
html[data-theme="white"] .trade-update-card,html[data-theme="white"] .design-feature-card,html[data-theme="white"] .cladding-feature-card{background:#fff;color:#231b16;border-color:rgba(35,27,22,.14);}
html[data-theme="white"] .trade-update-card h3,html[data-theme="white"] .trade-update-card p,html[data-theme="white"] .trade-update-card a,html[data-theme="white"] .feature-copy p,html[data-theme="white"] .cladding-mini-grid span,html[data-theme="white"] .cladding-mini-grid strong{color:#231b16;}
html[data-theme="white"] .cladding-mini-grid div{background:#f7f4ef;border-color:rgba(35,27,22,.14);}
@media(max-width:980px){.trade-update-grid,.design-cladding-grid,.resource-pathway-grid{grid-template-columns:1fr 1fr}.design-feature-card,.cladding-feature-card{grid-template-columns:1fr}.utility-row{justify-content:center;flex-wrap:wrap;padding:.45rem 0;}}
@media(max-width:640px){.trade-update-grid,.design-cladding-grid,.resource-pathway-grid{grid-template-columns:1fr}.utility-bar{display:none}.feature-media img{min-height:240px;}}

/* Published homepage visual polish pass. */
.site-header,
.site-header.scrolled{padding:0;}
.site-header .header-row{padding:clamp(.82rem,1.4vw,1.1rem) 0;}
.site-header:not(.scrolled){background:transparent;}
.site-header.scrolled{background:rgba(5,5,5,.94);}
.utility-bar{margin:0;padding:0;background:rgba(5,5,5,.94);border-bottom:1px solid rgba(255,255,255,.12);}
.utility-row{min-height:32px;padding:0;}
.utility-row a:first-child{color:#fff;}
.trade-updates-section{position:relative;overflow:hidden;background:#060606;}
.trade-updates-section::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 12% 12%, rgba(var(--primary-rgb),.20), transparent 28%),linear-gradient(135deg, rgba(255,255,255,.05), transparent 42%);pointer-events:none;}
.trade-updates-section > .container{position:relative;z-index:1;}
.trade-updates-head{max-width:860px;margin-inline:auto;}
.trade-update-card{min-height:100%;display:grid;grid-template-rows:auto 1fr;padding:0;overflow:hidden;background:rgba(18,18,18,.92);}
.trade-card-visual{min-height:138px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg, rgba(var(--primary-rgb),.88), rgba(5,5,5,.92)),repeating-linear-gradient(45deg, rgba(255,255,255,.08) 0 1px, transparent 1px 12px);border-bottom:1px solid rgba(255,255,255,.14);}
.trade-card-visual i{width:62px;height:62px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.35);color:#fff;font-size:1.45rem;background:rgba(0,0,0,.20);}
.trade-card-body{padding:clamp(22px,2.6vw,32px);display:flex;flex-direction:column;align-items:flex-start;gap:.72rem;}
.trade-card-body span{margin-bottom:.1rem;}
.trade-card-body h3{font-size:clamp(1.15rem,1.6vw,1.45rem);line-height:1.08;}
.trade-card-body p{line-height:1.65;}
.trade-card-body a{margin-top:auto;color:#fff;border-bottom:1px solid currentColor;text-decoration:none;}
.design-cladding-section{background:#050505;position:relative;overflow:hidden;}
.design-cladding-section::before{content:"";position:absolute;inset:auto 0 0 0;height:44%;background:linear-gradient(180deg, transparent, rgba(255,255,255,.05));pointer-events:none;}
.design-cladding-section > .container{position:relative;z-index:1;}
.feature-section-head{max-width:920px;margin:0 auto clamp(28px,4vw,48px);text-align:center;}
.feature-section-head .section-title,.feature-section-head .section-sub{color:#fff;}
.feature-section-head .section-sub{color:rgba(255,255,255,.72);}
.design-cladding-grid{align-items:stretch;}
.feature-story-card{display:grid;grid-template-columns:1fr;gap:0;padding:0;min-height:100%;background:#101010;border:1px solid rgba(255,255,255,.14);overflow:hidden;}
.feature-story-card .feature-media{position:relative;min-height:320px;overflow:hidden;}
.feature-story-card .feature-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg, transparent 46%, rgba(0,0,0,.70));}
.feature-story-card .feature-media img{min-height:320px;transition:transform .7s ease;}
.feature-story-card:hover .feature-media img{transform:scale(1.035);}
.feature-story-card .feature-media > span{position:absolute;left:18px;bottom:18px;z-index:2;color:#fff;border:1px solid rgba(255,255,255,.35);background:rgba(0,0,0,.50);padding:.5rem .75rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800;font-size:.72rem;}
.feature-story-card .feature-copy{padding:clamp(26px,3.5vw,42px);}
.feature-story-card .feature-copy h3{color:#fff;font-family:var(--bw-heading);font-size:clamp(1.65rem,2.7vw,2.55rem);line-height:1.02;letter-spacing:-.03em;margin:.65rem 0 .85rem;}
.feature-chip-row{display:flex;flex-wrap:wrap;gap:.55rem;margin:1.1rem 0 1.35rem;}
.feature-chip-row span,.cladding-mini-grid div{border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.06);}
.feature-chip-row span{color:#fff;padding:.52rem .72rem;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;font-weight:800;}
html[data-theme="white"] .trade-updates-section,html[data-theme="white"] .design-cladding-section{background:#ffffff;color:#17130f;}
html[data-theme="white"] .trade-updates-section::before{background:radial-gradient(circle at 14% 10%, rgba(var(--primary-rgb),.13), transparent 30%),linear-gradient(135deg, rgba(5,5,5,.035), transparent 48%);}
html[data-theme="white"] .feature-section-head .section-title,html[data-theme="white"] .feature-section-head .section-sub{color:#17130f;}
html[data-theme="white"] .trade-update-card,html[data-theme="white"] .feature-story-card{background:#fff;border-color:rgba(23,19,15,.16);box-shadow:0 20px 54px rgba(23,19,15,.08);}
html[data-theme="white"] .trade-card-visual{background:linear-gradient(135deg, #111, rgba(var(--primary-rgb),.78)),repeating-linear-gradient(45deg, rgba(255,255,255,.09) 0 1px, transparent 1px 12px);}
html[data-theme="white"] .trade-card-body h3,html[data-theme="white"] .trade-card-body p,html[data-theme="white"] .feature-story-card .feature-copy h3,html[data-theme="white"] .feature-story-card .feature-copy p{color:#17130f;}
html[data-theme="white"] .trade-card-body a{color:#17130f;}
html[data-theme="white"] .feature-chip-row span,html[data-theme="white"] .cladding-mini-grid div{color:#17130f;background:#f7f4ef;border-color:rgba(23,19,15,.15);}
html[data-theme="white"] .cladding-mini-grid span,html[data-theme="white"] .cladding-mini-grid strong{color:#17130f;}
@media(max-width:980px){.site-header .header-row{padding:.85rem 0;}.feature-story-card .feature-media{min-height:260px;}}

/* Published homepage visual polish pass 2. */
html[data-theme][data-theme] .trade-updates-section,
html[data-theme][data-theme] .design-cladding-section{padding:clamp(68px,7vw,98px) 0;}
html[data-theme][data-theme] .trade-update-grid{gap:clamp(14px,1.7vw,22px);align-items:stretch;}
html[data-theme][data-theme] .trade-update-card.scroll-card{min-height:auto;display:flex;flex-direction:column;padding:0;overflow:hidden;border:1px solid rgba(255,255,255,.16);background:linear-gradient(180deg,rgba(22,22,22,.98),rgba(10,10,10,.96));box-shadow:0 22px 70px rgba(0,0,0,.34);}
html[data-theme][data-theme] .trade-card-visual{min-height:112px;background:linear-gradient(135deg,rgba(var(--primary-rgb),.82),rgba(5,5,5,.94)),repeating-linear-gradient(135deg,rgba(255,255,255,.08) 0 1px,transparent 1px 11px);}
html[data-theme][data-theme] .trade-card-visual i{width:56px;height:56px;box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 14px 34px rgba(0,0,0,.28);}
html[data-theme][data-theme] .trade-card-body{padding:clamp(20px,2vw,26px);gap:.62rem;}
html[data-theme][data-theme] .trade-card-body h3{margin:0;font-size:clamp(1.08rem,1.38vw,1.32rem);letter-spacing:-.02em;}
html[data-theme][data-theme] .trade-card-body p{margin:0;line-height:1.55;color:rgba(255,255,255,.78);}
html[data-theme][data-theme] .trade-card-body a{margin-top:auto;padding-top:.62rem;}
html[data-theme][data-theme] .design-cladding-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(20px,2.4vw,32px);}
html[data-theme][data-theme] .feature-story-card.design-feature-card,
html[data-theme][data-theme] .feature-story-card.cladding-feature-card{display:flex;flex-direction:column;min-height:auto;gap:0;padding:0;overflow:hidden;background:#101010;border:1px solid rgba(255,255,255,.16);box-shadow:0 26px 80px rgba(0,0,0,.36);}
html[data-theme][data-theme] .feature-story-card .feature-media{min-height:260px;max-height:320px;}
html[data-theme][data-theme] .feature-story-card .feature-media img{min-height:260px;}
html[data-theme][data-theme] .feature-story-card .feature-copy{padding:clamp(24px,3vw,34px);}
html[data-theme][data-theme] .feature-story-card .feature-copy h3{margin:.65rem 0 .72rem;font-size:clamp(1.55rem,2.15vw,2.18rem);line-height:1.03;}
html[data-theme][data-theme] .feature-story-card .feature-copy p{margin:0 0 1.1rem;line-height:1.62;color:rgba(255,255,255,.76);}
html[data-theme][data-theme] .feature-chip-row{margin:.9rem 0 1.15rem;}
html[data-theme][data-theme] .feature-story-card .btn.btn-outline{background:transparent;color:#fff;border-color:rgba(255,255,255,.68);box-shadow:none;}
html[data-theme="white"][data-theme] .feature-story-card .btn.btn-outline{background:transparent;color:#17130f;border-color:rgba(23,19,15,.62);}
html[data-theme="black-accent"][data-theme] .trade-card-visual,
html[data-theme="white"][data-accent="black"] .trade-card-visual{background:linear-gradient(135deg,#050505,#2a2a2a),repeating-linear-gradient(135deg,rgba(255,255,255,.08) 0 1px,transparent 1px 11px);}
html[data-theme="white"][data-theme] .trade-card-body p,
html[data-theme="white"][data-theme] .feature-story-card .feature-copy p{color:rgba(23,19,15,.72);}
@media(max-width:980px){html[data-theme][data-theme] .trade-update-grid,html[data-theme][data-theme] .design-cladding-grid{grid-template-columns:1fr 1fr;}html[data-theme][data-theme] .feature-story-card .feature-media{min-height:230px;}}
@media(max-width:680px){html[data-theme][data-theme] .trade-update-grid,html[data-theme][data-theme] .design-cladding-grid{grid-template-columns:1fr;}html[data-theme][data-theme] .trade-card-visual{min-height:96px;}}

/* White-theme premium pass for the Advanced Cladding feature card. */
html[data-theme][data-theme] .feature-story-card .feature-media img{display:block;width:100%;height:100%;object-fit:cover;color:transparent;font-size:0;}
html[data-theme="white"][data-theme] .feature-story-card.cladding-feature-card{background:#080808;color:#fff;border-color:rgba(5,5,5,.88);box-shadow:0 30px 84px rgba(5,5,5,.22);}
html[data-theme="white"][data-theme] .feature-story-card.cladding-feature-card .feature-copy h3,
html[data-theme="white"][data-theme] .feature-story-card.cladding-feature-card .feature-copy p{color:#fff;}
html[data-theme="white"][data-theme] .feature-story-card.cladding-feature-card .cladding-mini-grid div{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.18);}
html[data-theme="white"][data-theme] .feature-story-card.cladding-feature-card .cladding-mini-grid strong,
html[data-theme="white"][data-theme] .feature-story-card.cladding-feature-card .cladding-mini-grid span{color:#fff;}
html[data-theme="white"][data-theme] .feature-story-card.cladding-feature-card .v3-solid-btn{background:#fff;color:#050505;border-color:#fff;}
html[data-theme="white"][data-theme] .feature-story-card.cladding-feature-card .section-label{border-color:rgba(255,255,255,.28);}
/* White-theme premium pass for the Design Before You Build card. */
html[data-theme="white"][data-theme] .feature-story-card.design-feature-card{background:#080808;color:#fff;border-color:rgba(5,5,5,.88);box-shadow:0 30px 84px rgba(5,5,5,.20);}
html[data-theme="white"][data-theme] .feature-story-card.design-feature-card .feature-copy h3,
html[data-theme="white"][data-theme] .feature-story-card.design-feature-card .feature-copy p,
html[data-theme="white"][data-theme] .feature-story-card.design-feature-card .section-label{color:#fff;}
html[data-theme="white"][data-theme] .feature-story-card.design-feature-card .feature-chip-row span{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.18);color:#fff;}
html[data-theme="white"][data-theme] .feature-story-card.design-feature-card .btn.btn-outline{color:#fff;border-color:rgba(255,255,255,.70);}
html[data-theme="white"][data-theme] .feature-story-card.design-feature-card .btn.btn-outline:hover{background:#fff;color:#050505;border-color:#fff;}
/* White-theme Trade Updates premium pass. */
html[data-theme="white"][data-theme] .trade-updates-section{background:linear-gradient(180deg,#ffffff 0%,#f5f1eb 100%);}
html[data-theme="white"][data-theme] .trade-updates-head .section-title,
html[data-theme="white"][data-theme] .trade-updates-head .section-sub{color:#17130f;}
html[data-theme="white"][data-theme] .trade-update-card.scroll-card{background:#ffffff;border-color:rgba(5,5,5,.16);box-shadow:0 24px 70px rgba(23,19,15,.11);}
html[data-theme="white"][data-theme] .trade-card-visual{background:linear-gradient(135deg,#181410,#3a2a20);border-bottom:1px solid rgba(5,5,5,.10);}
html[data-theme="white"][data-accent="black"] .trade-card-visual{background:linear-gradient(135deg,#050505,#242424);}
html[data-theme="white"][data-theme] .trade-card-visual i{color:#fff;border-color:rgba(255,255,255,.38);background:rgba(255,255,255,.08);}
html[data-theme="white"][data-theme] .trade-card-body h3,
html[data-theme="white"][data-theme] .trade-card-body p{color:#17130f;}
html[data-theme="white"][data-theme] .trade-card-body p{color:rgba(23,19,15,.72);}
html[data-theme="white"][data-theme] .trade-card-body a{color:#17130f;border-bottom-color:#17130f;}
html[data-theme="white"][data-theme] .trade-card-body span{background:#17130f;color:#fff;border-color:#17130f;}
html[data-theme="white"][data-accent="black"] .trade-card-body span{background:#050505;border-color:#050505;}
/* Audit-visible background colors for white Trade Updates cards. */
html[data-theme="white"][data-theme] .trade-updates-section{background-color:#ffffff;}
html[data-theme="white"][data-theme] .trade-card-visual{background-color:#181410;}
html[data-theme="white"][data-accent="black"] .trade-card-visual{background-color:#050505;}

/* Feature image badge polish pass. */
html[data-theme][data-theme] .feature-story-card .feature-media > span{
  left:18px;
  top:18px;
  bottom:auto;
  display:inline-flex;
  align-items:center;
  gap:.55rem;
  min-height:36px;
  padding:.58rem .86rem .54rem 1rem;
  color:#fff;
  background:rgba(5,5,5,.82);
  border:1px solid rgba(255,255,255,.24);
  border-left:4px solid var(--bw-bronze,#7a4c2f);
  box-shadow:0 14px 34px rgba(0,0,0,.32), inset 0 1px 0 rgba(255,255,255,.12);
  backdrop-filter:blur(12px);
  text-shadow:0 1px 1px rgba(0,0,0,.55);
  font-size:.70rem;
  line-height:1;
  letter-spacing:.11em;
}
html[data-theme][data-theme] .feature-story-card .feature-media > span::after{
  content:"";
  width:6px;
  height:6px;
  background:currentColor;
  opacity:.72;
}
html[data-theme="black-accent"][data-theme] .feature-story-card .feature-media > span,
html[data-theme="white"][data-accent="black"] .feature-story-card .feature-media > span{
  border-left-color:#fff;
  background:rgba(5,5,5,.88);
}
html[data-theme="white"][data-theme] .feature-story-card .feature-media > span{
  color:#fff;
  background:rgba(5,5,5,.86);
  border-color:rgba(255,255,255,.26);
  border-left-color:var(--bw-bronze,#7a4c2f);
}
@media(max-width:640px){
  html[data-theme][data-theme] .feature-story-card .feature-media > span{left:14px;top:14px;font-size:.66rem;padding:.52rem .72rem .49rem .82rem;}
}

/* Final feature badge accent correction. */
html[data-theme="white"][data-accent="black"] .feature-story-card .feature-media > span{
  border-left-color:#ffffff;
}

/* Remove duplicate feature image overlay labels. */
html[data-theme][data-theme] .design-cladding-section .feature-media > span{
  display:none;
}

/* Light theme hierarchy pass: one surface, type, and elevation system for
   both White and White Accent. Accent selection remains token-driven. */
html[data-theme="white"][data-theme] {
  --bw-light-canvas: #ffffff;
  --bw-light-band: #f5f2ed;
  --bw-light-surface: #ffffff;
  --bw-light-ink: #181512;
  --bw-light-muted: #625b55;
  --bw-light-border: rgba(24, 21, 18, .14);
  --bw-light-border-strong: rgba(24, 21, 18, .24);
  --bw-light-shadow: 0 14px 36px rgba(24, 21, 18, .075);
  --bw-light-shadow-hover: 0 20px 48px rgba(24, 21, 18, .12);
  --bw-bg: var(--bw-light-canvas);
  --bw-bg-alt: var(--bw-light-band);
  --bw-card: var(--bw-light-surface);
  --bw-text: var(--bw-light-ink);
  --bw-muted: var(--bw-light-muted);
  --bw-border: var(--bw-light-border);
  --bg-primary: var(--bw-light-canvas);
  --bg-secondary: var(--bw-light-band);
  --bg-card: var(--bw-light-surface);
  --text-main: var(--bw-light-ink);
  --text-muted: var(--bw-light-muted);
}

html[data-theme="white"][data-theme] body.theme-royal-dark {
  color: var(--bw-light-ink);
  background: var(--bw-light-canvas);
}

/* Alternating bands establish page rhythm without introducing new layouts. */
html[data-theme="white"][data-theme] :is(
  .masons-logo-strip-section,
  .about-section,
  .v3-recent-projects,
  .v3-guarantees,
  .design-cladding-section,
  .reviews-section,
  .faq-section,
  .resource-pathways-section
) {
  color: var(--bw-light-ink);
  background-color: var(--bw-light-canvas);
  background-image: none;
}

html[data-theme="white"][data-theme] :is(
  .v3-products,
  .trade-updates-section,
  .services-section,
  .process-section,
  .projects-section,
  .location-finder-section
) {
  color: var(--bw-light-ink);
  background-color: var(--bw-light-band);
  background-image: none;
}

/* Preserve the three deliberate dark pauses in the light experience. */
html[data-theme="white"][data-theme] :is(.v3-capabilities, .v3-proof, .merged-contact-cta) {
  background-color: #050505;
}

html[data-theme="white"][data-theme] :is(
  .v3-products,
  .about-section,
  .v3-recent-projects,
  .trade-updates-section,
  .v3-guarantees,
  .services-section,
  .design-cladding-section,
  .process-section,
  .reviews-section,
  .projects-section,
  .faq-section,
  .location-finder-section,
  .resource-pathways-section
) :is(.section-title, .section-title *, .v3-display, .v3-display *, h2, h3, h4) {
  color: var(--bw-light-ink);
  -webkit-text-fill-color: currentColor;
  text-shadow: none;
}

html[data-theme="white"][data-theme] :is(
  .section-header .section-sub,
  .v3-section-copy > p,
  .v3-guarantee-head > p,
  .location-finder-copy > p,
  .trade-card-body > p,
  .resource-pathway-card > p,
  .review-text,
  .faq-answer p
) {
  color: var(--bw-light-muted);
}

html[data-theme="white"][data-theme] :is(.section-header, .trade-updates-head, .v3-guarantee-head) {
  margin-bottom: clamp(2rem, 4vw, 3.5rem);
}

html[data-theme="white"][data-theme] :is(.section-header, .trade-updates-head) .section-title,
html[data-theme="white"][data-theme] .v3-guarantee-head .v3-display {
  max-width: 18ch;
}

html[data-theme="white"][data-theme] .section-header.centered :is(.section-title, .section-sub),
html[data-theme="white"][data-theme] .trade-updates-head :is(.section-title, .section-sub) {
  margin-inline: auto;
}

/* Repeated content cards share one border and one restrained elevation. */
html[data-theme="white"][data-theme] :is(
  .stat-card,
  .svc-card,
  .process-card,
  .v3-guarantee-grid article,
  .review-card,
  .faq-item,
  .trade-update-card.scroll-card,
  .location-search-panel,
  .location-card,
  .resource-pathway-card,
  .contact-form-card
) {
  color: var(--bw-light-ink);
  background: var(--bw-light-surface);
  border: 1px solid var(--bw-light-border);
  box-shadow: var(--bw-light-shadow);
}

html[data-theme="white"][data-theme] :is(
  .stat-card,
  .svc-card,
  .process-card,
  .v3-guarantee-grid article,
  .review-card,
  .faq-item,
  .trade-update-card.scroll-card,
  .location-card,
  .resource-pathway-card
):hover {
  border-color: var(--bw-light-border-strong);
  box-shadow: var(--bw-light-shadow-hover);
}

html[data-theme="white"][data-theme] :is(
  .stat-card,
  .svc-card,
  .process-card,
  .v3-guarantee-grid article,
  .review-card,
  .faq-item,
  .trade-update-card,
  .location-card,
  .resource-pathway-card
) :is(h3, h4, strong, .faq-question, .faq-question *) {
  color: var(--bw-light-ink);
}

html[data-theme="white"][data-theme] :is(
  .stat-card,
  .svc-card,
  .process-card,
  .v3-guarantee-grid article,
  .review-card,
  .faq-item,
  .trade-update-card,
  .location-card,
  .resource-pathway-card
) :is(p, li, small, .review-author span, .faq-answer, .faq-answer p) {
  color: var(--bw-light-muted);
}

/* Inputs sit one level below their white form surface. */
html[data-theme="white"][data-theme] .contact-form-card :is(input, textarea, select),
html[data-theme="white"][data-theme] .location-search-row input {
  color: var(--bw-light-ink);
  background: #faf9f7;
  border-color: var(--bw-light-border-strong);
  box-shadow: none;
}

html[data-theme="white"][data-theme] .contact-form-card :is(input, textarea, select):focus,
html[data-theme="white"][data-theme] .location-search-row input:focus {
  background: #ffffff;
  border-color: var(--primary);
  box-shadow: 0 0 0 3px rgba(var(--primary-rgb), .12);
}

/* Keep editorial image cards and dark CTA blocks intentionally high contrast. */
html[data-theme="white"][data-theme] :is(
  .v3-product-card,
  .v3-project-card,
  .projects-section .project-card,
  .feature-story-card.design-feature-card,
  .feature-story-card.cladding-feature-card,
  .reviews-cta,
  .contact-detail-item,
  .merged-contact-card
) {
  color: #ffffff;
  background-color: #080808;
  border-color: rgba(5, 5, 5, .88);
}

html[data-theme="white"][data-theme] :is(
  .feature-story-card.design-feature-card,
  .feature-story-card.cladding-feature-card,
  .reviews-cta,
  .contact-detail-item,
  .merged-contact-card
) :is(h3, h4, p, strong, span, a, i) {
  color: #ffffff;
}

/* Accent mode changes actions, not hierarchy. */
html[data-theme="white"][data-theme] :is(.section-label, .theme-btn.active) {
  box-shadow: none;
}

html[data-theme="white"][data-theme] .theme-btn:not(.active) {
  color: var(--bw-light-ink);
  background: #ffffff;
  border-color: var(--bw-light-border);
}

@media (max-width: 680px) {
  html[data-theme="white"][data-theme] :is(.section-header, .trade-updates-head, .v3-guarantee-head) {
    margin-bottom: 1.75rem;
  }

  html[data-theme="white"][data-theme] :is(
    .stat-card,
    .svc-card,
    .process-card,
    .v3-guarantee-grid article,
    .review-card,
    .faq-item,
    .trade-update-card.scroll-card,
    .location-search-panel,
    .location-card,
    .resource-pathway-card,
    .contact-form-card
  ) {
    box-shadow: 0 10px 26px rgba(24, 21, 18, .065);
  }
}

/* Mobile density pass: restore header gutters and keep the full location
   directory usable without turning the page into twenty full-height cards. */
@media (max-width: 980px) {
  html[data-theme][data-theme] .site-header .header-row {
    width: 100%;
    max-width: none;
    padding: .85rem 24px;
    box-sizing: border-box;
  }
}

@media (max-width: 680px) {
  html[data-theme][data-theme] .location-grid {
    max-height: min(68vh, 540px);
    overflow-y: auto;
    overscroll-behavior: contain;
    scroll-padding-block: 12px 88px;
    gap: 10px;
    padding: 8px;
    background: rgba(24, 21, 18, .035);
    border: 1px solid var(--bw-light-border, rgba(24, 21, 18, .14));
  }

  html[data-theme][data-theme] .location-card {
    gap: 8px;
    padding: 14px 16px;
    box-shadow: none;
  }

  html[data-theme][data-theme] .location-card h3 {
    font-size: 1.1rem;
  }

  html[data-theme][data-theme] .location-card p {
    font-size: .9rem;
    line-height: 1.42;
  }

  html[data-theme][data-theme] .location-card dl {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px 14px;
  }

  html[data-theme][data-theme] .location-card dl div {
    display: block;
  }

  html[data-theme][data-theme] .location-card dt {
    margin-bottom: 2px;
    font-size: .72rem;
    letter-spacing: .06em;
    text-transform: uppercase;
  }

  html[data-theme][data-theme] .location-card dd {
    font-size: .88rem;
  }

  html[data-theme][data-theme] .location-card-actions a {
    min-height: 38px;
    padding: .58rem .65rem;
    font-size: .76rem;
  }
}

/* Specificity lock for legacy section-qualified light rules above. */
html[data-theme="white"][data-theme][data-theme] :is(
  .v3-products,
  .about-section,
  .v3-recent-projects,
  .trade-updates-section,
  .v3-guarantees,
  .services-section,
  .design-cladding-section,
  .process-section,
  .reviews-section,
  .projects-section,
  .faq-section,
  .location-finder-section,
  .resource-pathways-section
) :is(.section-title, .section-title *, .v3-display, .v3-display *, h2, h3, h4) {
  color: var(--bw-light-ink);
  -webkit-text-fill-color: currentColor;
}

html[data-theme="white"][data-theme][data-theme] :is(
  .about-section .stat-card,
  .services-section .svc-card,
  .process-section .process-card,
  .v3-guarantees .v3-guarantee-grid article,
  .reviews-section .review-card,
  .faq-section .faq-item,
  .trade-updates-section .trade-update-card.scroll-card,
  .location-finder-section .location-search-panel,
  .location-finder-section .location-card,
  .resource-pathways-section .resource-pathway-card
) {
  color: var(--bw-light-ink);
  background: var(--bw-light-surface);
  border-color: var(--bw-light-border);
  box-shadow: var(--bw-light-shadow);
}

html[data-theme="white"][data-accent="black"][data-theme] :is(
  .about-section .stat-card,
  .services-section .svc-card,
  .process-section .process-card,
  .v3-guarantees .v3-guarantee-grid article,
  .reviews-section .review-card,
  .faq-section .faq-item,
  .trade-updates-section .trade-update-card.scroll-card,
  .location-finder-section .location-search-panel,
  .location-finder-section .location-card,
  .resource-pathways-section .resource-pathway-card
) {
  border-color: var(--bw-light-border);
  box-shadow: var(--bw-light-shadow);
}

html[data-theme="white"][data-theme][data-theme] .resource-pathway-card > span {
  color: #ffffff;
  background: var(--primary);
  border-color: var(--primary);
}

html[data-theme="white"][data-theme][data-theme] .location-card-actions {
  justify-content: flex-start;
  gap: .75rem;
  margin-top: .25rem;
}

html[data-theme="white"][data-theme][data-theme] .location-card-actions a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: .7rem .9rem;
  color: var(--primary);
  background: transparent;
  border: 1px solid var(--primary);
  line-height: 1.1;
  text-decoration: none;
}

html[data-theme="white"][data-theme][data-theme] .location-card-actions a:last-child {
  color: #ffffff;
  background: var(--primary);
}

html[data-theme="white"][data-accent="black"][data-theme][data-theme] .location-card-actions a:first-child {
  color: #050505;
  background: transparent;
  border-color: #050505;
}

@media (max-width: 640px) {
  html[data-theme="white"][data-theme][data-theme] .location-card-actions {
    width: 100%;
    flex-direction: row;
    align-items: stretch;
  }

  html[data-theme="white"][data-theme][data-theme] .location-card-actions a {
    flex: 1 1 0;
  }
}

/* White-theme contrast and Trade Updates redesign. The marquee remains a
   deliberate dark pause; its copy must not inherit the light-theme ink. */
html[data-theme="white"][data-theme][data-theme] .v3-proof {
  color: #ffffff;
  background: #050505;
  border-color: rgba(255, 255, 255, .14);
}

html[data-theme="white"][data-theme][data-theme] .v3-proof-content span {
  color: #ffffff;
  -webkit-text-fill-color: #ffffff;
  text-shadow: none;
}

html[data-theme="white"][data-theme][data-theme] .v3-proof-content span::after {
  background: var(--primary);
}

html[data-theme="white"][data-accent="black"][data-theme] .v3-proof-content span::after {
  background: #ffffff;
}

html[data-theme="white"][data-theme][data-theme] .trade-update-grid {
  gap: clamp(14px, 1.7vw, 22px);
}

html[data-theme="white"][data-theme][data-theme] .trade-update-card.scroll-card {
  position: relative;
  display: block;
  min-height: 310px;
  overflow: hidden;
  color: var(--bw-light-ink);
  background: var(--bw-light-surface);
  border: 1px solid var(--bw-light-border);
  box-shadow: var(--bw-light-shadow);
}

html[data-theme="white"][data-theme][data-theme] .trade-update-card.scroll-card:hover {
  border-color: var(--bw-light-border-strong);
  box-shadow: var(--bw-light-shadow-hover);
  transform: translateY(-3px);
}

html[data-theme="white"][data-theme][data-theme] .trade-card-visual {
  position: absolute;
  z-index: 2;
  top: clamp(20px, 2vw, 26px);
  right: clamp(20px, 2vw, 26px);
  width: 46px;
  height: 46px;
  min-height: 0;
  padding: 0;
  color: var(--primary);
  background: transparent;
  border: 1px solid var(--bw-light-border-strong);
}

html[data-theme="white"][data-theme][data-theme] .trade-card-visual i {
  width: 44px;
  height: 44px;
  color: var(--primary);
  background: transparent;
  border: 0;
  box-shadow: none;
  font-size: 1.05rem;
}

html[data-theme="white"][data-theme][data-theme] .trade-card-body {
  min-height: 310px;
  padding: clamp(22px, 2.4vw, 30px);
  padding-right: clamp(76px, 6vw, 90px);
  gap: .8rem;
}

html[data-theme="white"][data-theme][data-theme] .trade-card-body > span {
  max-width: 100%;
  margin: 0 0 .7rem;
  padding: 0;
  color: var(--primary);
  background: transparent;
  border: 0;
  font-size: .72rem;
  line-height: 1.25;
  letter-spacing: .11em;
}

html[data-theme="white"][data-theme][data-theme] .trade-card-body h3 {
  color: var(--bw-light-ink);
  font-size: clamp(1.2rem, 1.55vw, 1.45rem);
  line-height: 1.08;
}

html[data-theme="white"][data-theme][data-theme] .trade-card-body p {
  color: var(--bw-light-muted);
  line-height: 1.58;
}

html[data-theme="white"][data-theme][data-theme] .trade-card-body a {
  width: fit-content;
  margin-top: auto;
  padding: .7rem 0 .22rem;
  color: var(--primary);
  background: transparent;
  border: 0;
  border-bottom: 1px solid currentColor;
  line-height: 1.2;
}

@media (max-width: 680px) {
  html[data-theme="white"][data-theme][data-theme] .trade-update-card.scroll-card,
  html[data-theme="white"][data-theme][data-theme] .trade-card-body {
    min-height: 0;
  }

  html[data-theme="white"][data-theme][data-theme] .trade-card-body {
    padding: 22px 76px 24px 22px;
  }

  html[data-theme="white"][data-theme][data-theme] .trade-card-visual {
    top: 20px;
    right: 20px;
  }
}

/* Published mirror project coverage grid. */
#home > .project-coverage-section{order:8;}
.project-coverage-section{padding:clamp(72px,8vw,112px) 0;background:#fff;color:#111;}
.coverage-head{text-align:center;margin:0 auto clamp(28px,4vw,42px);}
.coverage-title{font-family:var(--bw-heading);font-size:clamp(2rem,3.5vw,3.15rem);line-height:1.02;letter-spacing:-.045em;margin:0;color:#111;}
.coverage-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(18px,2.5vw,32px) clamp(20px,2.8vw,38px);}
.coverage-card{position:relative;display:block;min-height:128px;overflow:hidden;text-decoration:none;color:#fff;background:#111;border:0;box-shadow:none;}
.coverage-card img{display:block;width:100%;height:128px;object-fit:cover;transition:transform .45s ease,filter .45s ease;}
.coverage-card::after{content:"";position:absolute;inset:auto 0 0 0;height:42px;background:rgba(35,35,38,.82);z-index:1;}
.coverage-card span{position:absolute;left:14px;right:14px;bottom:0;z-index:2;height:42px;display:flex;align-items:center;gap:.5rem;color:#fff;font:800 .82rem/1 var(--bw-heading);letter-spacing:-.02em;text-shadow:0 1px 1px rgba(0,0,0,.55);}
.coverage-card i{font-size:.72rem;transition:transform .25s ease;}
.coverage-card:hover img{transform:scale(1.035);filter:saturate(1.05) contrast(1.04);}
.coverage-card:hover i{transform:translateX(4px);}
html[data-theme="black"] .project-coverage-section,html[data-theme="black-accent"] .project-coverage-section{background:#050505;color:#fff;}
html[data-theme="black"] .coverage-title,html[data-theme="black-accent"] .coverage-title{color:#fff;}
html[data-theme="black"] .coverage-card::after,html[data-theme="black-accent"] .coverage-card::after{background:rgba(5,5,5,.84);}
html[data-theme="white"][data-accent="black"] .coverage-card::after{background:rgba(5,5,5,.84);}
html[data-theme][data-theme] .svc-card:hover .svc-icon{transform:none;background:inherit;color:inherit;border-color:inherit;}
html[data-theme][data-theme] .svc-card:hover .svc-icon svg{transform:none;}
@media(max-width:980px){.coverage-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.coverage-card img{height:160px;}}
@media(max-width:560px){.coverage-grid{grid-template-columns:1fr;}.coverage-card img{height:176px;}}

/* Coverage grid square image polish pass. */
.project-coverage-section{padding:clamp(84px,9vw,132px) 0;}
.coverage-head{margin:0 auto clamp(32px,4.5vw,52px);}
.coverage-grid{gap:clamp(18px,2.2vw,30px);}
.coverage-card{aspect-ratio:1 / 1;min-height:0;background:#050505;border:1px solid rgba(0,0,0,.08);box-shadow:0 22px 60px rgba(0,0,0,.12);}
.coverage-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.coverage-card::after{content:"";position:absolute;inset:0;height:auto;background:linear-gradient(180deg,rgba(0,0,0,.04) 0%,rgba(0,0,0,.18) 45%,rgba(0,0,0,.78) 100%);z-index:1;transition:opacity .35s ease;}
.coverage-card span{left:18px;right:18px;bottom:18px;height:auto;min-height:0;align-items:center;padding:0;color:#fff;font-size:clamp(.9rem,1vw,1.02rem);letter-spacing:-.015em;text-shadow:0 2px 8px rgba(0,0,0,.72),0 1px 1px rgba(0,0,0,.75);}
.coverage-card span::before{content:"";width:3px;height:18px;background:currentColor;opacity:.72;display:inline-block;}
.coverage-card i{margin-left:.15rem;font-size:.75rem;}
.coverage-card:hover{box-shadow:0 28px 76px rgba(0,0,0,.18);}
.coverage-card:hover::after{opacity:.95;}
html[data-theme="black"] .coverage-card,html[data-theme="black-accent"] .coverage-card{border-color:rgba(255,255,255,.12);box-shadow:0 26px 76px rgba(0,0,0,.42);}
html[data-theme="black"] .coverage-card::after,html[data-theme="black-accent"] .coverage-card::after,html[data-theme="white"][data-accent="black"] .coverage-card::after{background:linear-gradient(180deg,rgba(0,0,0,.06) 0%,rgba(0,0,0,.20) 44%,rgba(0,0,0,.82) 100%);}
html[data-theme="white"] .coverage-card span,html[data-theme="white"][data-accent="black"] .coverage-card span{color:#fff;}
@media(max-width:980px){.coverage-card img{height:100%;}.coverage-card{aspect-ratio:1 / 1;}}
@media(max-width:560px){.coverage-card img{height:100%;}.coverage-card span{left:16px;right:16px;bottom:16px;}}

/* Coverage overlay text contrast lock. */
html[data-theme][data-theme] .project-coverage-section .coverage-card span,
html[data-theme][data-theme] .project-coverage-section .coverage-card span i{
  color:#ffffff;
}

html[data-theme="white"][data-theme] .project-coverage-section .coverage-card span,
html[data-theme="white"][data-theme] .project-coverage-section .coverage-card span i,
html[data-theme="white"][data-accent="black"] .project-coverage-section .coverage-card span,
html[data-theme="white"][data-accent="black"] .project-coverage-section .coverage-card span i{
  color:#ffffff;
}
/* Final coverage grid overlay text lock for all themes. */
html[data-theme][data-theme] .project-coverage-section .coverage-card span,
html[data-theme][data-theme] .project-coverage-section .coverage-card span *,
html[data-theme][data-theme] .project-coverage-section .coverage-card span::before{
  color:#ffffff;
  -webkit-text-fill-color:#ffffff;
}

html[data-theme][data-theme] .project-coverage-section .coverage-card span{
  text-shadow:0 2px 10px rgba(0,0,0,.82),0 1px 1px rgba(0,0,0,.9);
}

/* Masons First marquee: individual staggered blur reveal. */
.masons-partner-marquee.scroll-item,
.masons-partner-marquee.scroll-item.is-visible{
  opacity:1;
  transform:none;
  filter:none;
  animation:none;
}

.masons-partner-marquee .masons-partner-head,
.masons-partner-marquee .masons-logo-track img{
  opacity:0;
  transform:translateY(22px) scale(.965);
  filter:blur(12px);
  will-change:opacity, transform, filter;
}

.masons-partner-marquee.is-visible .masons-partner-head{
  animation:masonsLogoBlurIn .8s cubic-bezier(.22,1,.36,1) forwards;
}

.masons-partner-marquee.is-visible .masons-logo-track img{
  animation:masonsLogoBlurIn .9s cubic-bezier(.22,1,.36,1) forwards;
}

.masons-partner-marquee.is-visible .masons-logo-track img:nth-child(1),
.masons-partner-marquee.is-visible .masons-logo-track img:nth-child(17){animation-delay:.08s;}
.masons-partner-marquee.is-visible .masons-logo-track img:nth-child(2),
.masons-partner-marquee.is-visible .masons-logo-track img:nth-child(18){animation-delay:.15s;}
.masons-partner-marquee.is-visible .masons-logo-track img:nth-child(3),
.masons-partner-marquee.is-visible .masons-logo-track img:nth-child(19){animation-delay:.22s;}
.masons-partner-marquee.is-visible .masons-logo-track img:nth-child(4),
.masons-partner-marquee.is-visible .masons-logo-track img:nth-child(20){animation-delay:.29s;}
.masons-partner-marquee.is-visible .masons-logo-track img:nth-child(5),
.masons-partner-marquee.is-visible .masons-logo-track img:nth-child(21){animation-delay:.36s;}
.masons-partner-marquee.is-visible .masons-logo-track img:nth-child(6),
.masons-partner-marquee.is-visible .masons-logo-track img:nth-child(22){animation-delay:.43s;}
.masons-partner-marquee.is-visible .masons-logo-track img:nth-child(7),
.masons-partner-marquee.is-visible .masons-logo-track img:nth-child(23){animation-delay:.50s;}
.masons-partner-marquee.is-visible .masons-logo-track img:nth-child(8),
.masons-partner-marquee.is-visible .masons-logo-track img:nth-child(24){animation-delay:.57s;}
.masons-partner-marquee.is-visible .masons-logo-track img:nth-child(9),
.masons-partner-marquee.is-visible .masons-logo-track img:nth-child(25){animation-delay:.64s;}
.masons-partner-marquee.is-visible .masons-logo-track img:nth-child(10),
.masons-partner-marquee.is-visible .masons-logo-track img:nth-child(26){animation-delay:.71s;}
.masons-partner-marquee.is-visible .masons-logo-track img:nth-child(11),
.masons-partner-marquee.is-visible .masons-logo-track img:nth-child(27){animation-delay:.78s;}
.masons-partner-marquee.is-visible .masons-logo-track img:nth-child(12),
.masons-partner-marquee.is-visible .masons-logo-track img:nth-child(28){animation-delay:.85s;}
.masons-partner-marquee.is-visible .masons-logo-track img:nth-child(13),
.masons-partner-marquee.is-visible .masons-logo-track img:nth-child(29){animation-delay:.92s;}
.masons-partner-marquee.is-visible .masons-logo-track img:nth-child(14),
.masons-partner-marquee.is-visible .masons-logo-track img:nth-child(30){animation-delay:.99s;}
.masons-partner-marquee.is-visible .masons-logo-track img:nth-child(15),
.masons-partner-marquee.is-visible .masons-logo-track img:nth-child(31){animation-delay:1.06s;}
.masons-partner-marquee.is-visible .masons-logo-track img:nth-child(16),
.masons-partner-marquee.is-visible .masons-logo-track img:nth-child(32){animation-delay:1.13s;}

@keyframes masonsLogoBlurIn{
  to{
    opacity:1;
    transform:translateY(0) scale(1);
    filter:blur(0);
  }
}

@media (prefers-reduced-motion: reduce){
  .masons-partner-marquee .masons-partner-head,
  .masons-partner-marquee .masons-logo-track img{
    opacity:1;
    transform:none;
    filter:none;
    animation:none;
  }
}

/* Masons First marquee final stagger polish: title + logos blur in separately. */
.masons-logo-strip-section .masons-partner-marquee.scroll-item,
.masons-logo-strip-section .masons-partner-marquee.scroll-item.is-visible{
  opacity:1;
  transform:none;
  filter:none;
  animation:none;
}

.masons-logo-strip-section .masons-partner-head{
  opacity:1;
  transform:none;
  filter:none;
  animation:none;
}

.masons-logo-strip-section .masons-partner-head span,
.masons-logo-strip-section .masons-partner-head p,
.masons-logo-strip-section .masons-logo-track img{
  opacity:0;
  transform:translateY(26px) scale(.965);
  filter:blur(14px);
  will-change:opacity, transform, filter;
}

.masons-logo-strip-section .masons-partner-marquee:not(.is-visible) .masons-partner-head span,
.masons-logo-strip-section .masons-partner-marquee:not(.is-visible) .masons-partner-head p,
.masons-logo-strip-section .masons-partner-marquee:not(.is-visible) .masons-logo-track img{
  opacity:0;
  transform:translateY(26px) scale(.965);
  filter:blur(14px);
}

.masons-logo-strip-section .masons-partner-marquee.is-visible .masons-partner-head span{
  animation:masonsLogoBlurIn .85s .02s cubic-bezier(.22,1,.36,1) forwards;
}

.masons-logo-strip-section .masons-partner-marquee.is-visible .masons-partner-head p{
  animation:masonsLogoBlurIn .85s .12s cubic-bezier(.22,1,.36,1) forwards;
}

.masons-logo-strip-section .masons-partner-marquee.is-visible .masons-logo-track img{
  animation-name:masonsLogoBlurIn;
  animation-duration:.95s;
  animation-timing-function:cubic-bezier(.22,1,.36,1);
  animation-fill-mode:forwards;
}

.masons-logo-strip-section .masons-partner-marquee.is-visible .masons-logo-track img:nth-child(1),
.masons-logo-strip-section .masons-partner-marquee.is-visible .masons-logo-track img:nth-child(17){animation-delay:.16s;}
.masons-logo-strip-section .masons-partner-marquee.is-visible .masons-logo-track img:nth-child(2),
.masons-logo-strip-section .masons-partner-marquee.is-visible .masons-logo-track img:nth-child(18){animation-delay:.23s;}
.masons-logo-strip-section .masons-partner-marquee.is-visible .masons-logo-track img:nth-child(3),
.masons-logo-strip-section .masons-partner-marquee.is-visible .masons-logo-track img:nth-child(19){animation-delay:.30s;}
.masons-logo-strip-section .masons-partner-marquee.is-visible .masons-logo-track img:nth-child(4),
.masons-logo-strip-section .masons-partner-marquee.is-visible .masons-logo-track img:nth-child(20){animation-delay:.37s;}
.masons-logo-strip-section .masons-partner-marquee.is-visible .masons-logo-track img:nth-child(5),
.masons-logo-strip-section .masons-partner-marquee.is-visible .masons-logo-track img:nth-child(21){animation-delay:.44s;}
.masons-logo-strip-section .masons-partner-marquee.is-visible .masons-logo-track img:nth-child(6),
.masons-logo-strip-section .masons-partner-marquee.is-visible .masons-logo-track img:nth-child(22){animation-delay:.51s;}
.masons-logo-strip-section .masons-partner-marquee.is-visible .masons-logo-track img:nth-child(7),
.masons-logo-strip-section .masons-partner-marquee.is-visible .masons-logo-track img:nth-child(23){animation-delay:.58s;}
.masons-logo-strip-section .masons-partner-marquee.is-visible .masons-logo-track img:nth-child(8),
.masons-logo-strip-section .masons-partner-marquee.is-visible .masons-logo-track img:nth-child(24){animation-delay:.65s;}
.masons-logo-strip-section .masons-partner-marquee.is-visible .masons-logo-track img:nth-child(9),
.masons-logo-strip-section .masons-partner-marquee.is-visible .masons-logo-track img:nth-child(25){animation-delay:.72s;}
.masons-logo-strip-section .masons-partner-marquee.is-visible .masons-logo-track img:nth-child(10),
.masons-logo-strip-section .masons-partner-marquee.is-visible .masons-logo-track img:nth-child(26){animation-delay:.79s;}
.masons-logo-strip-section .masons-partner-marquee.is-visible .masons-logo-track img:nth-child(11),
.masons-logo-strip-section .masons-partner-marquee.is-visible .masons-logo-track img:nth-child(27){animation-delay:.86s;}
.masons-logo-strip-section .masons-partner-marquee.is-visible .masons-logo-track img:nth-child(12),
.masons-logo-strip-section .masons-partner-marquee.is-visible .masons-logo-track img:nth-child(28){animation-delay:.93s;}
.masons-logo-strip-section .masons-partner-marquee.is-visible .masons-logo-track img:nth-child(13),
.masons-logo-strip-section .masons-partner-marquee.is-visible .masons-logo-track img:nth-child(29){animation-delay:1.00s;}
.masons-logo-strip-section .masons-partner-marquee.is-visible .masons-logo-track img:nth-child(14),
.masons-logo-strip-section .masons-partner-marquee.is-visible .masons-logo-track img:nth-child(30){animation-delay:1.07s;}
.masons-logo-strip-section .masons-partner-marquee.is-visible .masons-logo-track img:nth-child(15),
.masons-logo-strip-section .masons-partner-marquee.is-visible .masons-logo-track img:nth-child(31){animation-delay:1.14s;}
.masons-logo-strip-section .masons-partner-marquee.is-visible .masons-logo-track img:nth-child(16),
.masons-logo-strip-section .masons-partner-marquee.is-visible .masons-logo-track img:nth-child(32){animation-delay:1.21s;}

/* Masons First marquee hard pre-reveal lock for logos. */
.masons-logo-strip-section .masons-partner-marquee:not(.is-visible) .masons-logo-track img{
  opacity:0 !important;
  filter:blur(14px) !important;
  transform:translateY(26px) scale(.965);
}

/* Masons First marquee delay-state fix: stay blurred until each stagger begins. */
.masons-logo-strip-section .masons-partner-marquee.is-visible .masons-partner-head span,
.masons-logo-strip-section .masons-partner-marquee.is-visible .masons-partner-head p,
.masons-logo-strip-section .masons-partner-marquee.is-visible .masons-logo-track img{
  animation-fill-mode:both;
}

@keyframes masonsLogoBlurIn{
  from{
    opacity:0;
    transform:translateY(26px) scale(.965);
    filter:blur(14px);
  }
  to{
    opacity:1;
    transform:translateY(0) scale(1);
    filter:blur(0);
  }
}

/* Product Lines: desktop-only ninth card to complete the 3-column grid. */
.product-desktop-only{
  display:block;
}

@media (max-width: 700px){
  .product-desktop-only{
    display:none;
  }
}

/* Resource Pathways: stronger action-card icons and CTA buttons. */
.resource-pathway-card{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:300px;
  padding:clamp(22px,2.6vw,30px);
  border-color:rgba(213,187,166,.20);
  background:
    radial-gradient(circle at 18% 0%, rgba(213,187,166,.14), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,.075), rgba(255,255,255,.035));
  box-shadow:0 24px 70px rgba(0,0,0,.16);
  transition:transform .28s ease, border-color .28s ease, box-shadow .28s ease, background .28s ease;
}

.resource-pathway-card::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(135deg, rgba(213,187,166,.18), transparent 42%);
  opacity:.55;
  transition:opacity .28s ease;
}

.resource-pathway-card:hover{
  transform:translateY(-6px);
  border-color:rgba(213,187,166,.42);
  box-shadow:0 32px 88px rgba(0,0,0,.24);
}

.resource-pathway-card:hover::before{
  opacity:.9;
}

.resource-card-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin-bottom:4px;
}

.resource-card-icon{
  width:58px;
  height:58px;
  display:grid;
  place-items:center;
  background:rgba(213,187,166,.14);
  border:1px solid rgba(213,187,166,.28);
  color:#f3dfcc;
  font-size:1.28rem;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08), 0 16px 34px rgba(0,0,0,.22);
}

.resource-card-num{
  font-family:var(--font-display);
  font-size:clamp(1.05rem,1.4vw,1.28rem);
  letter-spacing:.08em;
  color:#d5bba6;
  opacity:.82;
}

.resource-pathway-card h3{
  font-size:clamp(1.22rem,1.7vw,1.62rem);
  line-height:1.02;
  letter-spacing:-.035em;
  margin-top:8px;
}

.resource-pathway-card p{
  line-height:1.56;
  opacity:.78;
}

.resource-card-cta,
.location-card-actions a.resource-card-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:46px;
  padding:0 16px;
  margin-top:auto;
  width:fit-content;
  border:1px solid rgba(213,187,166,.36);
  border-bottom:1px solid rgba(213,187,166,.36);
  background:rgba(213,187,166,.12);
  color:#fff;
  text-decoration:none;
  font-size:.88rem;
  font-weight:900;
  letter-spacing:.01em;
  transition:transform .25s ease, background .25s ease, border-color .25s ease, color .25s ease;
}

.resource-card-cta i{
  font-size:.78rem;
  transition:transform .25s ease;
}

.resource-card-cta:hover{
  transform:translateY(-2px);
  background:#d5bba6;
  border-color:#d5bba6;
  color:#111;
}

.resource-card-cta:hover i{
  transform:translateX(3px);
}

html[data-theme="white"] .resource-pathway-card{
  background:
    radial-gradient(circle at 18% 0%, rgba(143,95,61,.12), transparent 34%),
    linear-gradient(180deg, #fff, #f7f3ee);
  border-color:rgba(0,0,0,.11);
  box-shadow:0 22px 62px rgba(27,22,18,.10);
}

html[data-theme="white"] .resource-pathway-card::before{
  background:linear-gradient(135deg, rgba(143,95,61,.16), transparent 45%);
}

html[data-theme="white"] .resource-card-icon{
  background:#111;
  border-color:#111;
  color:#fff;
  box-shadow:0 16px 34px rgba(0,0,0,.14);
}

html[data-theme="white"] .resource-card-num{
  color:#7a4f31;
}

html[data-theme="white"] .resource-card-cta{
  background:#111;
  border-color:#111;
  color:#fff;
}

html[data-theme="white"] .resource-card-cta:hover{
  background:#8f5f3d;
  border-color:#8f5f3d;
  color:#fff;
}

html[data-accent="black"] .resource-card-icon,
html[data-accent="black"] .resource-card-cta{
  background:#111;
  border-color:#111;
  color:#fff;
}

@media (max-width:980px){
  .resource-pathway-card{
    min-height:0;
  }
}

/* Resource card icon contrast lock. */
.resource-card-icon i,
.resource-card-cta i{
  color:inherit !important;
  -webkit-text-fill-color:currentColor !important;
}

html[data-theme="white"] .resource-card-icon i,
html[data-theme="white"] .resource-card-cta i,
html[data-accent="black"] .resource-card-icon i,
html[data-accent="black"] .resource-card-cta i{
  color:inherit !important;
  -webkit-text-fill-color:currentColor !important;
}

/* Resource Pathways: lighter number badge and tighter CTA labels. */
.resource-card-num{
  min-width:42px;
  height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:rgba(213,187,166,.10);
  border:1px solid rgba(213,187,166,.24);
  color:#d5bba6;
  font-size:.92rem;
  letter-spacing:.04em;
  opacity:1;
}

html[data-theme="white"] .resource-card-num{
  background:#f1eee9;
  border-color:rgba(17,17,17,.10);
  color:#4a4038;
}

html[data-theme="white"][data-accent="black"] .resource-card-num{
  background:#f3f3f3;
  border-color:rgba(17,17,17,.12);
  color:#333;
}

.resource-card-cta{
  min-height:44px;
  padding:0 14px;
  max-width:100%;
  font-size:.82rem;
  line-height:1.1;
  white-space:nowrap;
}

@media (max-width:1180px){
  .resource-card-cta{
    width:100%;
    white-space:normal;
  }
}

/* White Accent resource number refinement: remove heavy boxed badge. */
html[data-theme="white"][data-accent="black"] #resources .resource-card-num{
  min-width:0 !important;
  width:auto !important;
  height:auto !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  color:#6f665f !important;
  font-size:.86rem !important;
  letter-spacing:.08em !important;
  line-height:1 !important;
}

html[data-theme="white"][data-accent="black"] #resources .resource-card-top{
  align-items:flex-start;
}

/* Final four-theme contrast lock. Keep the approved White Accent treatment
   intact while removing legacy red and same-tone controls from dark themes. */
html[data-theme="black"][data-theme] .v3-proof{
  background:#7a4c2f;
  border-color:rgba(255,255,255,.16);
}

html[data-theme="black-accent"][data-theme] .v3-proof{
  background:#151515;
  border-color:rgba(255,255,255,.18);
}

html[data-theme="black-accent"][data-theme][data-theme] :is(
  .header-call-btn,
  .drawer-call-btn,
  .btn-primary,
  .btn.btn-primary,
  .v3-solid-btn,
  .form-submit-btn,
  .contact-submit,
  .sticky-mobile-cta,
  .gallery-pill.active,
  .theme-switcher-toggle,
  .location-view-toggle,
  .location-search-actions button
){
  color:#ffffff;
  background:#151515;
  border-color:rgba(255,255,255,.28);
}

html[data-theme="black-accent"][data-theme][data-theme] :is(
  .header-call-btn,
  .drawer-call-btn,
  .btn-primary,
  .btn.btn-primary,
  .v3-solid-btn,
  .form-submit-btn,
  .contact-submit,
  .sticky-mobile-cta,
  .gallery-pill.active,
  .theme-switcher-toggle,
  .location-view-toggle,
  .location-search-actions button
):hover{
  color:#ffffff;
  background:#242424;
  border-color:rgba(255,255,255,.48);
}

html[data-theme="black-accent"][data-theme] :is(
  .v3-products,
  .about-section,
  .services-section,
  .trade-updates-section,
  .v3-guarantees,
  .process-section,
  .projects-section,
  .location-finder-section,
  .resource-pathways-section,
  .merged-contact-cta
) :is(
  .v3-product-card,
  .v3-project-card,
  .svc-card,
  .stat-card,
  .process-card,
  .v3-guarantee-grid article,
  .project-card,
  .trade-update-card,
  .contact-detail-item,
  .contact-form-card,
  .location-finder-visual,
  .location-search-panel,
  .location-card,
  .resource-pathway-card
){
  border-color:rgba(255,255,255,.16);
}

/* Black Accent icons must remain light anywhere the supporting surface is dark. */
html[data-theme="black-accent"][data-theme][data-theme] :is(
  .site-header,
  .hero,
  .v3-products,
  .about-section,
  .services-section,
  .trade-updates-section,
  .v3-guarantees,
  .process-section,
  .projects-section,
  .location-finder-section,
  .resource-pathways-section,
  .merged-contact-cta,
  .site-footer,
  .reviews-cta
) :is(i, svg){
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

html[data-theme="black-accent"][data-theme][data-theme] :is(
  .about-section,
  .services-section,
  .process-section
) :is(.stat-icon-wrap, .svc-icon, .process-icon) svg,
html[data-theme="black-accent"][data-theme][data-theme] :is(
  .about-section,
  .services-section,
  .process-section
) :is(.stat-icon-wrap, .svc-icon, .process-icon) svg *{
  stroke:#ffffff !important;
}

/* Reviews CTA is a dark pause in both light themes, so its outline action
   stays transparent with white copy instead of becoming white-on-white. */
html[data-theme="white"][data-theme][data-theme] .reviews-cta .btn.btn-outline{
  color:#ffffff;
  background:transparent;
  border-color:rgba(255,255,255,.74);
}

html[data-theme="white"][data-theme][data-theme] .reviews-cta .btn.btn-outline :is(i, span){
  color:inherit;
  -webkit-text-fill-color:currentColor;
}

html[data-theme="white"][data-theme][data-theme] .reviews-cta .btn.btn-outline:hover{
  color:#050505;
  background:#ffffff;
  border-color:#ffffff;
}

/* Footer logo fix: keep full Brickworks logo visible and uncropped. */
.site-footer .footer-brand-block{
  max-width:360px;
  overflow:visible;
}

.site-footer .footer-logo{
  display:block;
  width:min(260px, 100%);
  max-width:100%;
  height:auto !important;
  max-height:none !important;
  object-fit:contain;
  object-position:left center;
  margin:0 0 1.15rem;
  overflow:visible;
}

html[data-theme="white"][data-accent="black"] .site-footer .footer-logo,
html[data-theme="white"] .site-footer .footer-logo{
  filter:none !important;
}

@media (max-width:640px){
  .site-footer .footer-logo{
    width:min(230px, 100%);
  }
}

/* Footer desktop polish: structured brand, links, and contact card. */
.site-footer{
  background:#050505;
  border-top:1px solid rgba(255,255,255,.10);
  padding:clamp(4rem,7vw,6rem) 0 2.35rem;
}

.site-footer .footer-row{
  display:grid;
  grid-template-columns:minmax(240px, 360px) minmax(360px, 1fr) minmax(190px, 250px);
  align-items:start;
  gap:clamp(34px,5vw,72px);
  margin-bottom:clamp(2.6rem,5vw,4.25rem);
}

.site-footer .footer-brand-block{
  max-width:360px;
}

.site-footer .footer-logo{
  width:min(285px,100%);
  height:auto !important;
  max-height:none !important;
  object-fit:contain;
  object-position:left center;
  margin:0 0 1.25rem;
  filter:brightness(0) invert(1) contrast(1.18) !important;
  opacity:1;
}

.site-footer .footer-brand-block p{
  max-width:290px;
  margin:0;
  color:rgba(255,255,255,.72);
  line-height:1.65;
  font-size:.96rem;
}

.site-footer nav{
  width:100%;
  display:grid;
  grid-template-columns:repeat(2,minmax(150px,1fr));
  column-gap:clamp(26px,4vw,54px);
  row-gap:14px;
  padding-top:.35rem;
}

.site-footer nav a{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  width:max-content;
  max-width:100%;
  color:rgba(255,255,255,.70);
  font-size:.9rem;
  font-weight:800;
  letter-spacing:.055em;
  line-height:1.2;
  text-transform:uppercase;
  text-decoration:none;
  transition:color .22s ease, transform .22s ease;
}

.site-footer nav a:hover{
  color:#fff;
  transform:translateX(3px);
}

.site-footer .footer-phone{
  justify-self:end;
  display:flex;
  flex-direction:column;
  gap:.38rem;
  width:100%;
  min-height:96px;
  padding:20px 22px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.055);
  color:#fff;
  font-size:clamp(1.22rem,1.55vw,1.55rem);
  font-weight:900;
  line-height:1.05;
  text-decoration:none;
  box-shadow:0 22px 52px rgba(0,0,0,.22);
}

.site-footer .footer-phone::before{
  content:"Main Phone";
  color:rgba(255,255,255,.58);
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.site-footer .footer-phone:hover{
  color:#fff;
  border-color:rgba(255,255,255,.34);
  background:rgba(255,255,255,.09);
}

.site-footer .footer-bottom{
  border-top:1px solid rgba(255,255,255,.09);
  padding-top:1.6rem;
}

.site-footer .footer-bottom p{
  margin:0;
  color:rgba(255,255,255,.55);
  font-size:.86rem;
}

@media (max-width:980px){
  .site-footer .footer-row{
    grid-template-columns:1fr;
    gap:32px;
  }

  .site-footer .footer-phone{
    justify-self:start;
    max-width:290px;
  }
}

@media (max-width:640px){
  .site-footer nav{
    grid-template-columns:1fr;
  }

  .site-footer .footer-logo{
    width:min(245px,100%);
  }
}

/* Final footer logo contrast lock for dark footer across light themes. */
html[data-theme="white"][data-theme] .site-footer .footer-logo,
html[data-theme="white"][data-accent="black"][data-theme] .site-footer .footer-logo,
html[data-theme="black"][data-theme] .site-footer .footer-logo,
html[data-theme="black-accent"][data-theme] .site-footer .footer-logo{
  filter:brightness(0) invert(1) contrast(1.18) !important;
  opacity:1 !important;
}

/* Mobile drawer polish: scrollable, above theme switcher, full link stagger. */
.nav-drawer{
  z-index:10020;
  max-height:100dvh;
  overflow-y:auto;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
}

.nav-drawer.open{
  z-index:10020;
}

.theme-switcher{
  z-index:9000;
}

.nav-drawer .drawer-main{
  padding-bottom:max(32px, env(safe-area-inset-bottom));
}

.nav-drawer.open .drawer-main a:nth-child(1){animation-delay:.10s;}
.nav-drawer.open .drawer-main a:nth-child(2){animation-delay:.16s;}
.nav-drawer.open .drawer-main a:nth-child(3){animation-delay:.22s;}
.nav-drawer.open .drawer-main a:nth-child(4){animation-delay:.28s;}
.nav-drawer.open .drawer-main a:nth-child(5){animation-delay:.34s;}
.nav-drawer.open .drawer-main a:nth-child(6){animation-delay:.40s;}
.nav-drawer.open .drawer-main a:nth-child(7){animation-delay:.46s;}
.nav-drawer.open .drawer-main a:nth-child(8){animation-delay:.52s;}
.nav-drawer.open .drawer-main a:nth-child(9){animation-delay:.58s;}
.nav-drawer.open .drawer-main a:nth-child(10){animation-delay:.64s;}

@media (max-width:640px){
  .nav-drawer{
    width:min(92vw, 390px);
    padding-bottom:max(28px, env(safe-area-inset-bottom));
  }
}

/* Mobile drawer background scroll lock support. */
html.drawer-scroll-locked{
  overflow:hidden;
  overscroll-behavior:none;
}

body.drawer-scroll-locked{
  overflow:hidden;
  touch-action:none;
}

.nav-drawer.drawer-scroll-locked,
.nav-drawer.open{
  touch-action:auto;
}

/* Connected Supply visual pass. */
.connected-supply-section .section-title{
  max-width:880px;
}

.api-integration-strip{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:24px;
}

.api-integration-strip span{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:0 12px;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.07);
  color:#fff;
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.09em;
  text-transform:uppercase;
}

.connected-supply-dashboard{
  position:relative;
  overflow:hidden;
  border-radius:26px;
  background:
    linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.035)),
    rgba(10,10,10,.94);
}

.connected-supply-dashboard::before{
  content:"";
  position:absolute;
  inset:-30% -20% auto auto;
  width:280px;
  height:280px;
  background:radial-gradient(circle,rgba(var(--primary-rgb),.38),transparent 68%);
  pointer-events:none;
}

.api-dashboard-head,
.api-portal-grid,
.api-window-bar{
  position:relative;
  z-index:1;
}

.api-dashboard-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin:20px 0;
}

.api-dashboard-head small,
.api-panel-kicker{
  display:block;
  color:rgba(255,255,255,.62);
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.1em;
  text-transform:uppercase;
}

.api-dashboard-head strong{
  display:block;
  margin-top:6px;
  color:#fff;
  font-family:var(--bw-heading);
  font-size:clamp(1.55rem,2.8vw,2.3rem);
  line-height:1;
  letter-spacing:-.04em;
}

.api-live-pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 12px;
  border:1px solid rgba(255,255,255,.2);
  background:rgba(255,255,255,.08);
  color:#fff;
  font-size:.74rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  white-space:nowrap;
}

.api-portal-grid{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  gap:14px;
}

.api-inventory-panel,
.api-sync-panel,
.api-event-panel{
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.065);
  padding:18px;
}

.api-inventory-panel{
  grid-row:span 2;
}

.api-material-row{
  margin:18px 0 16px;
}

.api-material-chip{
  display:inline-flex;
  padding:7px 10px;
  background:#fff;
  color:#050505;
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.api-material-row strong{
  display:block;
  margin:.85rem 0 .25rem;
  color:#fff;
  font-family:var(--bw-heading);
  font-size:clamp(1.8rem,3.5vw,3rem);
  line-height:.95;
  letter-spacing:-.05em;
}

.api-material-row small{
  color:rgba(255,255,255,.66);
}

.api-meter{
  height:9px;
  overflow:hidden;
  background:rgba(255,255,255,.12);
}

.api-meter span{
  display:block;
  height:100%;
  background:linear-gradient(90deg,var(--primary,#a8774f),#ffffff);
}

.api-branch-list{
  display:grid;
  gap:10px;
  margin-top:18px;
}

.api-branch-list span,
.api-sync-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(0,0,0,.22);
  padding:12px;
}

.api-branch-list b,
.api-sync-card strong,
.api-event-panel strong{
  color:#fff;
}

.api-branch-list em,
.api-sync-card span,
.api-event-panel small{
  color:rgba(255,255,255,.64);
  font-style:normal;
  font-size:.82rem;
}

.api-sync-panel{
  display:grid;
  gap:12px;
}

.api-sync-card{
  justify-content:flex-start;
}

.api-sync-card i{
  flex:0 0 auto;
  display:grid;
  place-items:center;
  width:40px;
  height:40px;
  background:#fff;
  color:#050505;
}

.api-sync-card div{
  display:grid;
  gap:3px;
}

.api-event-panel ol{
  position:relative;
  display:grid;
  gap:14px;
  margin:16px 0 0;
  padding:0;
  list-style:none;
}

.api-event-panel li{
  display:grid;
  grid-template-columns:16px minmax(0,1fr);
  column-gap:10px;
  align-items:start;
}

.api-event-panel li > span{
  width:12px;
  height:12px;
  margin-top:4px;
  border-radius:999px;
  border:2px solid #fff;
  background:var(--primary,#a8774f);
  box-shadow:0 0 0 5px rgba(255,255,255,.08);
}

.api-event-panel li strong,
.api-event-panel li small{
  grid-column:2;
}

.api-feature-card{
  position:relative;
  overflow:hidden;
  border-radius:22px;
}

.api-feature-card::after{
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:3px;
  background:linear-gradient(90deg,var(--primary,#a8774f),transparent);
}

html[data-theme="white"][data-theme] .api-integration-strip span{
  background:#fff;
  border-color:rgba(23,19,15,.14);
  color:#17130f;
  box-shadow:0 12px 30px rgba(23,19,15,.06);
}

html[data-theme="white"][data-theme] .connected-supply-dashboard{
  background:#fff;
  border-color:rgba(23,19,15,.14);
}

html[data-theme="white"][data-theme][data-theme] .connected-supply-section :is(
  .section-title,
  .section-title *,
  .title-split-word,
  .word-mask,
  .word-mask *
){
  color:#17130f !important;
  -webkit-text-fill-color:#17130f !important;
  text-shadow:none !important;
}

html[data-theme="white"][data-theme] .api-dashboard-head small,
html[data-theme="white"][data-theme] .api-panel-kicker{
  color:rgba(23,19,15,.56);
}

html[data-theme="white"][data-theme] .api-dashboard-head strong,
html[data-theme="white"][data-theme] .api-branch-list b,
html[data-theme="white"][data-theme] .api-sync-card strong,
html[data-theme="white"][data-theme] .api-event-panel strong,
html[data-theme="white"][data-theme] .api-material-row strong{
  color:#17130f;
}

html[data-theme="white"][data-theme] .api-live-pill,
html[data-theme="white"][data-theme] .api-material-chip,
html[data-theme="white"][data-theme] .api-sync-card i{
  background:#050505;
  color:#fff;
  border-color:#050505;
}

html[data-theme="white"][data-theme] .api-inventory-panel,
html[data-theme="white"][data-theme] .api-sync-panel,
html[data-theme="white"][data-theme] .api-event-panel,
html[data-theme="white"][data-theme] .api-branch-list span,
html[data-theme="white"][data-theme] .api-sync-card{
  background:#f7f4ef;
  border-color:rgba(23,19,15,.13);
}

html[data-theme="white"][data-theme] .api-branch-list em,
html[data-theme="white"][data-theme] .api-sync-card span,
html[data-theme="white"][data-theme] .api-event-panel small,
html[data-theme="white"][data-theme] .api-material-row small{
  color:rgba(23,19,15,.62);
}

html[data-theme="white"][data-theme] .api-meter{
  background:rgba(23,19,15,.12);
}

html[data-theme="black-accent"][data-theme][data-theme] .connected-supply-section :is(i,svg){
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

html[data-theme="black-accent"][data-theme][data-theme] .connected-supply-section :is(
  .connected-supply-dashboard,
  .api-feature-card,
  .api-inventory-panel,
  .api-sync-panel,
  .api-event-panel,
  .api-branch-list span,
  .api-sync-card
){
  border-color:rgba(255,255,255,.18);
}

html[data-theme="white"][data-theme][data-theme] .connected-supply-section .api-feature-card i,
html[data-theme="white"][data-theme][data-theme] .connected-supply-section .api-sync-card i{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  background:#050505 !important;
  border-color:#050505 !important;
}

html[data-theme="black"][data-theme][data-theme] .connected-supply-section .api-feature-card i,
html[data-theme="black-accent"][data-theme][data-theme] .connected-supply-section .api-feature-card i,
html[data-theme="black"][data-theme][data-theme] .connected-supply-section .api-sync-card i,
html[data-theme="black-accent"][data-theme][data-theme] .connected-supply-section .api-sync-card i{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

html[data-theme="black"][data-theme][data-theme] .connected-supply-section .connected-benefit-list i,
html[data-theme="black-accent"][data-theme][data-theme] .connected-supply-section .connected-benefit-list i{
  color:#050505 !important;
  -webkit-text-fill-color:#050505 !important;
  background:#ffffff !important;
  border-color:rgba(255,255,255,.18) !important;
}

@media (max-width:980px){
  .api-portal-grid{
    grid-template-columns:1fr;
  }

  .api-inventory-panel{
    grid-row:auto;
  }
}

@media (max-width:640px){
  .api-dashboard-head,
  .api-branch-list span,
  .api-sync-card{
    align-items:flex-start;
    flex-direction:column;
  }

  .api-live-pill{
    white-space:normal;
  }
}

/* Connected Supply tabs: final client-preview polish. */
html[data-theme][data-theme] .connected-supply-section{
  background:
    radial-gradient(circle at 8% 8%, rgba(var(--primary-rgb), .16), transparent 28rem),
    linear-gradient(180deg, #f7f4ef 0%, #ffffff 54%, #f7f4ef 100%);
  color:#17130f;
  padding:clamp(76px,8vw,116px) 0;
}

html[data-theme="black"][data-theme] .connected-supply-section,
html[data-theme="black-accent"][data-theme] .connected-supply-section{
  background:
    radial-gradient(circle at 8% 8%, rgba(var(--primary-rgb), .22), transparent 28rem),
    linear-gradient(180deg, #050505 0%, #111111 54%, #050505 100%);
  color:#fff;
}

html[data-theme][data-theme] .connected-supply-layout{
  grid-template-columns:minmax(0,.82fr) minmax(420px,1.18fr);
  gap:clamp(30px,5vw,76px);
  align-items:center;
}

html[data-theme][data-theme] .connected-supply-section .section-label{
  background:#050505;
  border-color:#050505;
  color:#fff;
}

html[data-theme][data-theme] .connected-supply-section :is(.section-title,.section-title *,.title-split-word,.word-mask,.word-mask *){
  color:#17130f !important;
  -webkit-text-fill-color:#17130f !important;
  text-shadow:none !important;
}

html[data-theme="black"][data-theme] .connected-supply-section :is(.section-title,.section-title *,.title-split-word,.word-mask,.word-mask *),
html[data-theme="black-accent"][data-theme] .connected-supply-section :is(.section-title,.section-title *,.title-split-word,.word-mask,.word-mask *){
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

html[data-theme][data-theme] .connected-supply-copy p{
  color:rgba(23,19,15,.72);
  font-size:clamp(1rem,1.25vw,1.12rem);
}

html[data-theme="black"][data-theme] .connected-supply-copy p,
html[data-theme="black-accent"][data-theme] .connected-supply-copy p{
  color:rgba(255,255,255,.74);
}

html[data-theme][data-theme] .api-integration-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:24px;
}

html[data-theme][data-theme] .api-tab{
  min-height:40px;
  padding:0 14px;
  border:1px solid rgba(23,19,15,.16);
  background:#fff;
  color:#17130f;
  font:900 .74rem/1 var(--bw-heading);
  letter-spacing:.09em;
  text-transform:uppercase;
  cursor:pointer;
  box-shadow:0 12px 26px rgba(23,19,15,.06);
  transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease;
}

html[data-theme][data-theme] .api-tab:hover,
html[data-theme][data-theme] .api-tab:focus-visible{
  transform:translateY(-1px);
  border-color:rgba(23,19,15,.34);
}

html[data-theme][data-theme] .api-tab.active{
  background:#050505;
  border-color:#050505;
  color:#fff;
}

html[data-theme="black"][data-theme] .api-tab,
html[data-theme="black-accent"][data-theme] .api-tab{
  background:rgba(255,255,255,.08);
  border-color:rgba(255,255,255,.18);
  color:#fff;
  box-shadow:none;
}

html[data-theme="black"][data-theme] .api-tab.active,
html[data-theme="black-accent"][data-theme] .api-tab.active{
  background:#fff;
  border-color:#fff;
  color:#050505;
}

html[data-theme][data-theme] .connected-supply-dashboard{
  border-radius:0;
  border:1px solid rgba(255,255,255,.18);
  background:
    radial-gradient(circle at 90% 6%, rgba(var(--primary-rgb), .28), transparent 18rem),
    linear-gradient(180deg, #101010 0%, #050505 100%);
  color:#fff;
  box-shadow:0 28px 80px rgba(0,0,0,.28);
}

html[data-theme][data-theme] .api-window-bar{
  border-bottom-color:rgba(255,255,255,.14);
}

html[data-theme][data-theme] .api-window-bar strong,
html[data-theme][data-theme] .api-dashboard-head small,
html[data-theme][data-theme] .api-panel-kicker{
  color:rgba(255,255,255,.62);
}

html[data-theme][data-theme] .api-dashboard-head strong,
html[data-theme][data-theme] .api-material-row strong,
html[data-theme][data-theme] .api-branch-list b,
html[data-theme][data-theme] .api-sync-card strong,
html[data-theme][data-theme] .api-event-panel strong{
  color:#fff;
}

html[data-theme][data-theme] .api-live-pill,
html[data-theme][data-theme] .api-material-chip,
html[data-theme][data-theme] .api-sync-card i{
  background:#fff;
  border-color:#fff;
  color:#050505 !important;
  -webkit-text-fill-color:#050505 !important;
}

html[data-theme][data-theme] .api-panel[hidden]{
  display:none !important;
}

html[data-theme][data-theme] .api-panel.active{
  display:block;
  animation:apiPanelIn .22s ease both;
}

@keyframes apiPanelIn{
  from{opacity:0;transform:translateY(8px);}
  to{opacity:1;transform:translateY(0);}
}

html[data-theme][data-theme] .api-inventory-panel,
html[data-theme][data-theme] .api-sync-panel,
html[data-theme][data-theme] .api-event-panel{
  border-color:rgba(255,255,255,.14);
  background:rgba(255,255,255,.065);
}

html[data-theme][data-theme] .api-branch-list span,
html[data-theme][data-theme] .api-sync-card{
  border-color:rgba(255,255,255,.12);
  background:rgba(0,0,0,.24);
}

html[data-theme][data-theme] .api-branch-list em,
html[data-theme][data-theme] .api-sync-card span,
html[data-theme][data-theme] .api-event-panel small,
html[data-theme][data-theme] .api-material-row small{
  color:rgba(255,255,255,.66);
}

html[data-theme][data-theme] .api-meter-fill{
  display:block;
  height:100%;
  background:linear-gradient(90deg,var(--primary,#7a4c2f),#fff);
}

html[data-theme][data-theme] .api-meter-fill.inventory{width:82%;}
html[data-theme][data-theme] .api-meter-fill.erp{width:74%;}
html[data-theme][data-theme] .api-meter-fill.builder{width:66%;}
html[data-theme][data-theme] .api-meter-fill.dispatch{width:88%;}

html[data-theme][data-theme] .connected-supply-cards{
  margin-top:clamp(20px,3vw,34px);
}

html[data-theme][data-theme] .api-feature-card{
  border-radius:0;
  border-color:rgba(23,19,15,.14);
  background:#fff;
  color:#17130f;
  box-shadow:0 18px 48px rgba(23,19,15,.08);
}

html[data-theme][data-theme] .api-feature-card h3{
  color:#17130f;
}

html[data-theme][data-theme] .api-feature-card p{
  color:rgba(23,19,15,.68);
}

html[data-theme][data-theme] .api-feature-card i{
  background:#050505 !important;
  border-color:#050505 !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

html[data-theme="black"][data-theme] .api-feature-card,
html[data-theme="black-accent"][data-theme] .api-feature-card{
  border-color:rgba(255,255,255,.16);
  background:rgba(12,12,12,.86);
  color:#fff;
  box-shadow:none;
}

html[data-theme="black"][data-theme] .api-feature-card h3,
html[data-theme="black-accent"][data-theme] .api-feature-card h3{
  color:#fff;
}

html[data-theme="black"][data-theme] .api-feature-card p,
html[data-theme="black-accent"][data-theme] .api-feature-card p{
  color:rgba(255,255,255,.72);
}

@media (max-width:980px){
  html[data-theme][data-theme] .connected-supply-layout{
    grid-template-columns:1fr;
  }
}

@media (max-width:640px){
  html[data-theme][data-theme] .connected-supply-section{
    padding:68px 0 82px;
  }

  html[data-theme][data-theme] .connected-supply-actions{
    align-items:stretch;
  }

  html[data-theme][data-theme] .connected-supply-actions :is(a,button){
    width:100%;
    justify-content:center;
  }

  html[data-theme][data-theme] .api-integration-tabs{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  html[data-theme][data-theme] .api-tab{
    width:100%;
    padding:0 10px;
    font-size:.68rem;
  }

  html[data-theme][data-theme] .connected-supply-dashboard{
    margin-inline:calc(var(--container-padding, 20px) * -0.25);
    padding:18px;
  }

  html[data-theme][data-theme] .api-portal-grid{
    gap:12px;
  }
}

/* Keep the floating theme switcher from blocking page controls while closed. */
html[data-theme][data-theme] .theme-switcher{
  pointer-events:none;
}

html[data-theme][data-theme] .theme-switcher-toggle,
html[data-theme][data-theme] .theme-switcher.open .theme-switcher-panel{
  pointer-events:auto;
}

/* Connected Supply standalone page. */
html[data-theme][data-theme] .connected-page-body{
  background:#f7f4ef;
}

html[data-theme="black"][data-theme] .connected-page-body,
html[data-theme="black-accent"][data-theme] .connected-page-body{
  background:#050505;
}

html[data-theme][data-theme] .site-nav .nav-link[aria-current="page"],
html[data-theme][data-theme] .drawer-main a[aria-current="page"]{
  color:#050505;
  font-weight:900;
}

html[data-theme="black"][data-theme] .site-nav .nav-link[aria-current="page"],
html[data-theme="black-accent"][data-theme] .site-nav .nav-link[aria-current="page"],
html[data-theme="black"][data-theme] .drawer-main a[aria-current="page"],
html[data-theme="black-accent"][data-theme] .drawer-main a[aria-current="page"]{
  color:#fff;
}

html[data-theme="white"][data-theme] body.connected-page-body .site-header{
  background:rgba(255,255,255,.94);
  border-bottom:1px solid rgba(23,19,15,.08);
}

html[data-theme="white"][data-theme] body.connected-page-body .site-header :is(.brand-logo,.logo-light,.logo-dark){
  filter:none !important;
  opacity:1;
}

html[data-theme="white"][data-theme] body.connected-page-body .site-header :is(.nav-link,.header-call-btn){
  color:#17130f !important;
  -webkit-text-fill-color:#17130f !important;
  text-shadow:none;
}

html[data-theme="white"][data-theme] body.connected-page-body .site-header .nav-link:hover,
html[data-theme="white"][data-theme] body.connected-page-body .site-header .nav-link[aria-current="page"]{
  color:#050505 !important;
  -webkit-text-fill-color:#050505 !important;
}

html[data-theme][data-theme] .connected-supply-page{
  overflow:hidden;
  background:#f7f4ef;
  color:#17130f;
}

html[data-theme="black"][data-theme] .connected-supply-page,
html[data-theme="black-accent"][data-theme] .connected-supply-page{
  background:#050505;
  color:#fff;
}

html[data-theme][data-theme] .connected-supply-hero{
  min-height:auto;
  padding:132px 0 92px;
  background:
    radial-gradient(circle at 12% 14%, rgba(5,5,5,.10), transparent 420px),
    linear-gradient(180deg,#f7f4ef 0%,#fff 54%,#f7f4ef 100%);
}

html[data-theme="black"][data-theme] .connected-supply-hero,
html[data-theme="black-accent"][data-theme] .connected-supply-hero{
  background:
    linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px),
    radial-gradient(circle at 14% 12%, rgba(255,255,255,.11), transparent 420px),
    linear-gradient(180deg,#050505 0%,#101010 58%,#050505 100%);
  background-size:auto, 42px 42px, auto, auto;
}

html[data-theme][data-theme] .connected-page-hero-grid{
  display:grid;
  grid-template-columns:minmax(330px,.78fr) minmax(640px,1.22fr);
  align-items:center;
  gap:clamp(28px,3vw,44px);
  max-width:min(1420px, calc(100vw - 48px));
}

html[data-theme][data-theme] .connected-page-copy{
  max-width:580px;
}

html[data-theme][data-theme] .connected-page-title{
  margin:26px 0 24px;
  font-family:var(--bw-heading, "Inter Tight", sans-serif);
  font-size:clamp(2.55rem, 3.65vw, 4.35rem);
  line-height:.9;
  letter-spacing:-.055em;
  word-spacing:.035em;
  text-transform:uppercase;
  color:#050505;
}

html[data-theme][data-theme] .connected-page-title span{
  display:block;
}

html[data-theme="black"][data-theme] .connected-page-title,
html[data-theme="black-accent"][data-theme] .connected-page-title{
  color:#fff;
}

html[data-theme][data-theme] .connected-page-copy p{
  max-width:560px;
  margin:0;
  color:rgba(23,19,15,.68);
  font-size:clamp(1rem, 1.05vw, 1.1rem);
  line-height:1.65;
}

html[data-theme="black"][data-theme] .connected-page-copy p,
html[data-theme="black-accent"][data-theme] .connected-page-copy p{
  color:rgba(255,255,255,.72);
}

html[data-theme][data-theme] .connected-page-actions{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:22px;
  margin-top:36px;
}

html[data-theme][data-theme] .connected-page-link{
  display:inline-flex;
  align-items:center;
  gap:12px;
  color:#050505;
  font-family:var(--bw-heading, "Inter Tight", sans-serif);
  font-size:.9rem;
  font-weight:900;
  letter-spacing:.05em;
  text-transform:uppercase;
  text-decoration:none;
}

html[data-theme="black"][data-theme] .connected-page-link,
html[data-theme="black-accent"][data-theme] .connected-page-link{
  color:#fff;
}

html[data-theme][data-theme] .connected-source-strip{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin-top:34px;
  max-width:620px;
}

html[data-theme][data-theme] .connected-source-strip span{
  border:1px solid rgba(23,19,15,.14);
  background:rgba(255,255,255,.72);
  padding:14px 12px;
  color:#17130f;
  font-family:var(--bw-heading, "Inter Tight", sans-serif);
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.06em;
  text-align:center;
  text-transform:uppercase;
}

html[data-theme="black"][data-theme] .connected-source-strip span,
html[data-theme="black-accent"][data-theme] .connected-source-strip span{
  border-color:rgba(255,255,255,.14);
  background:rgba(255,255,255,.06);
  color:#fff;
}

html[data-theme][data-theme] .connected-page-dashboard{
  min-height:0;
  margin:0;
  padding:26px;
  transform:none;
}

html[data-theme][data-theme] .connected-page-tabs{
  margin:20px 0 22px;
}

html[data-theme][data-theme] .connected-page-dashboard .api-portal-grid{
  grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);
  gap:12px;
  align-items:stretch;
}

html[data-theme][data-theme] .connected-page-dashboard .api-sync-card{
  min-width:0;
  padding:13px;
  gap:10px;
}

html[data-theme][data-theme] .connected-page-dashboard .api-sync-card span{
  overflow-wrap:anywhere;
}

html[data-theme][data-theme] .connected-page-dashboard .api-sync-card i{
  width:38px;
  height:38px;
  flex:0 0 38px;
  font-size:.82rem;
}

html[data-theme][data-theme] .connected-page-dashboard .api-metric-card :is(.api-panel-eyebrow,b,strong,small){
  display:block;
}

html[data-theme][data-theme] .connected-page-dashboard .api-metric-card strong{
  margin-top:10px;
  font-size:clamp(1.55rem, 3vw, 2.45rem);
}

html[data-theme][data-theme] .connected-page-dashboard .api-metric-card.wide{
  grid-row:span 3;
  min-width:0;
  padding:18px;
}

html[data-theme][data-theme] .connected-page-dashboard .api-meter{
  margin:14px 0 14px;
}

html[data-theme][data-theme] .connected-page-dashboard .api-branch-list{
  gap:8px;
}

html[data-theme][data-theme] .connected-page-dashboard .api-branch-list li,
html[data-theme][data-theme] .connected-page-dashboard .api-branch-list span{
  min-width:0;
}

html[data-theme][data-theme] .connected-page-dashboard .api-branch-list span{
  padding:11px 12px;
}

html[data-theme][data-theme] .connected-page-dashboard .api-dash-header{
  gap:16px;
}

html[data-theme][data-theme] .connected-page-dashboard .api-dash-header h2{
  font-size:clamp(1.65rem, 3.4vw, 2.55rem);
}

html[data-theme][data-theme] .connected-page-dashboard .api-live-pill{
  padding:9px 11px;
  font-size:.68rem;
}

html[data-theme][data-theme] .connected-portal-dashboard{
  overflow:hidden;
  background:
    linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px),
    radial-gradient(circle at 92% 0%, rgba(255,255,255,.12), transparent 250px),
    #070707;
  background-size:34px 34px, 34px 34px, auto, auto;
}

html[data-theme][data-theme] .portal-browser-bar{
  display:grid;
  grid-template-columns:10px 10px 10px minmax(0,1fr) auto;
  align-items:center;
  gap:8px;
  padding-bottom:17px;
  border-bottom:1px solid rgba(255,255,255,.12);
}

html[data-theme][data-theme] .portal-browser-bar > span{
  width:8px;
  height:8px;
  border-radius:999px;
  background:rgba(255,255,255,.22);
}

html[data-theme][data-theme] .portal-browser-bar > span:first-child{
  background:#d7b083;
}

html[data-theme][data-theme] .portal-browser-bar strong,
html[data-theme][data-theme] .portal-browser-bar em{
  color:#fff;
  font-family:var(--bw-heading, "Inter Tight", sans-serif);
  font-size:.75rem;
  font-style:normal;
  font-weight:900;
  letter-spacing:.07em;
  text-transform:uppercase;
}

html[data-theme][data-theme] .portal-browser-bar em{
  display:inline-flex;
  align-items:center;
  gap:7px;
  color:rgba(255,255,255,.64);
  font-size:.66rem;
}

html[data-theme][data-theme] .portal-project-header{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:22px;
  padding:22px 0 20px;
}

html[data-theme][data-theme] .portal-project-header small{
  display:block;
  color:rgba(255,255,255,.58);
  font-family:var(--bw-heading, "Inter Tight", sans-serif);
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}

html[data-theme][data-theme] .portal-project-header h2{
  margin:5px 0 4px;
  color:#fff;
  font-family:var(--bw-heading, "Inter Tight", sans-serif);
  font-size:clamp(1.9rem, 2.75vw, 2.55rem);
  line-height:.94;
  letter-spacing:-.05em;
}

html[data-theme][data-theme] .portal-project-header p{
  margin:0;
  color:rgba(255,255,255,.62);
  font-size:.8rem;
}

html[data-theme][data-theme] .portal-status-pill{
  display:inline-flex;
  padding:11px 14px;
  border:1px solid rgba(255,255,255,.2);
  background:rgba(255,255,255,.08);
  color:#fff;
  font-family:var(--bw-heading, "Inter Tight", sans-serif);
  font-size:.6rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  white-space:nowrap;
}

html[data-theme][data-theme] .portal-summary-strip{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  border:1px solid rgba(255,255,255,.13);
  background:rgba(255,255,255,.045);
}

html[data-theme][data-theme] .portal-summary-strip article{
  padding:15px;
  border-right:1px solid rgba(255,255,255,.11);
}

html[data-theme][data-theme] .portal-summary-strip article:last-child{
  border-right:0;
}

html[data-theme][data-theme] .portal-summary-strip span,
html[data-theme][data-theme] .portal-focus-card span,
html[data-theme][data-theme] .portal-activity-card > span{
  display:block;
  color:rgba(255,255,255,.52);
  font-family:var(--bw-heading, "Inter Tight", sans-serif);
  font-size:.62rem;
  font-weight:900;
  letter-spacing:.09em;
  text-transform:uppercase;
}

html[data-theme][data-theme] .portal-summary-strip strong{
  display:block;
  margin-top:7px;
  color:#fff;
  font-family:var(--bw-heading, "Inter Tight", sans-serif);
  font-size:1.12rem;
  line-height:1;
}

html[data-theme][data-theme] .portal-summary-strip small{
  display:block;
  margin-top:5px;
  color:rgba(255,255,255,.58);
  font-size:.72rem;
}

html[data-theme][data-theme] .portal-dashboard-body{
  display:grid;
  grid-template-columns:1fr;
  gap:18px;
  margin-top:18px;
}

html[data-theme][data-theme] .portal-tab-rail{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  align-content:start;
}

html[data-theme][data-theme] .portal-tab-rail .api-tab{
  display:grid;
  grid-template-columns:30px minmax(0,1fr);
  grid-template-areas:"icon label" "icon meta";
  align-items:center;
  gap:2px 10px;
  width:100%;
  min-height:66px;
  padding:12px;
  border-color:rgba(255,255,255,.13);
  background:rgba(255,255,255,.055);
  color:#fff;
  box-shadow:none;
  text-align:left;
}

html[data-theme][data-theme] .portal-tab-rail .api-tab i{
  grid-area:icon;
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  background:rgba(255,255,255,.08);
  color:inherit !important;
  -webkit-text-fill-color:currentColor !important;
  font-size:.78rem;
}

html[data-theme][data-theme] .portal-tab-rail .api-tab span{
  grid-area:label;
  font-size:.78rem;
}

html[data-theme][data-theme] .portal-tab-rail .api-tab small{
  grid-area:meta;
  color:rgba(255,255,255,.5);
  font-size:.62rem;
  font-weight:800;
  letter-spacing:.02em;
  text-transform:none;
}

html[data-theme][data-theme] .portal-tab-rail .api-tab.active{
  background:#fff;
  border-color:#fff;
  color:#050505;
}

html[data-theme][data-theme] .portal-tab-rail .api-tab.active i{
  background:rgba(5,5,5,.08);
  color:#050505 !important;
  -webkit-text-fill-color:#050505 !important;
}

html[data-theme][data-theme] .portal-tab-rail .api-tab.active small{
  color:rgba(5,5,5,.6);
}

html[data-theme][data-theme] .portal-panel-wrap{
  min-width:0;
}

html[data-theme][data-theme] .portal-panel-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

html[data-theme][data-theme] .portal-ops-board{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(210px,.65fr);
  gap:16px;
}

html[data-theme][data-theme] .portal-focus-card,
html[data-theme][data-theme] .portal-mini-card,
html[data-theme][data-theme] .portal-activity-card{
  border:1px solid rgba(255,255,255,.13);
  background:rgba(0,0,0,.3);
}

html[data-theme][data-theme] .portal-focus-card{
  grid-column:1 / -1;
  padding:22px;
}

html[data-theme][data-theme] .portal-ops-primary{
  grid-column:auto;
  min-height:238px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}

html[data-theme][data-theme] .portal-focus-card h3{
  margin:10px 0 10px;
  color:#fff;
  font-family:var(--bw-heading, "Inter Tight", sans-serif);
  font-size:clamp(1.45rem, 2.3vw, 2.15rem);
  line-height:.98;
  letter-spacing:-.04em;
}

html[data-theme][data-theme] .portal-focus-card p{
  margin:0;
  color:rgba(255,255,255,.67);
  max-width:64ch;
  font-size:.92rem;
  line-height:1.45;
}

html[data-theme][data-theme] .portal-progress{
  height:8px;
  margin-top:18px;
  background:rgba(255,255,255,.08);
  overflow:hidden;
}

html[data-theme][data-theme] .portal-progress span{
  display:block;
  height:100%;
  background:linear-gradient(90deg,#d7b083,#fff);
}

html[data-theme][data-theme] .portal-route-line{
  position:relative;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  margin-top:24px;
}

html[data-theme][data-theme] .portal-route-line::before{
  content:"";
  position:absolute;
  left:10px;
  right:10px;
  top:10px;
  height:1px;
  background:linear-gradient(90deg,#d7b083,rgba(255,255,255,.18));
}

html[data-theme][data-theme] .portal-route-line span{
  position:relative;
  display:grid;
  gap:9px;
  color:rgba(255,255,255,.54);
  font-family:var(--bw-heading, "Inter Tight", sans-serif);
  font-size:.62rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  z-index:1;
}

html[data-theme][data-theme] .portal-route-line i{
  width:21px;
  height:21px;
  display:block;
  border:1px solid rgba(255,255,255,.2);
  background:#070707;
}

html[data-theme][data-theme] .portal-route-line .is-complete,
html[data-theme][data-theme] .portal-route-line .is-current{
  color:#fff;
}

html[data-theme][data-theme] .portal-route-line .is-complete i{
  background:#d7b083;
  border-color:#d7b083;
}

html[data-theme][data-theme] .portal-route-line .is-current i{
  border-color:#fff;
  box-shadow:inset 0 0 0 5px #d7b083;
}

html[data-theme][data-theme] .portal-mini-card{
  display:grid;
  grid-template-columns:34px minmax(0,1fr);
  gap:12px;
  align-items:center;
  min-height:90px;
  padding:14px;
}

html[data-theme][data-theme] .portal-mini-card i{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  background:rgba(255,255,255,.94);
  color:#050505 !important;
  -webkit-text-fill-color:#050505 !important;
  font-size:.82rem;
}

html[data-theme][data-theme] .portal-mini-card strong{
  display:block;
  color:#fff;
  font-family:var(--bw-heading, "Inter Tight", sans-serif);
  font-size:1rem;
  line-height:1.05;
}

html[data-theme][data-theme] .portal-mini-card small{
  display:block;
  margin-top:5px;
  color:rgba(255,255,255,.58);
  font-size:.72rem;
  line-height:1.3;
}

html[data-theme][data-theme] .portal-side-rail{
  display:grid;
  gap:10px;
  border:1px solid rgba(255,255,255,.13);
  background:rgba(255,255,255,.045);
  padding:14px;
}

html[data-theme][data-theme] .portal-side-rail div{
  padding:0 0 12px;
  border-bottom:1px solid rgba(255,255,255,.1);
}

html[data-theme][data-theme] .portal-side-rail div:last-child{
  padding-bottom:0;
  border-bottom:0;
}

html[data-theme][data-theme] .portal-side-rail span{
  display:block;
  color:rgba(255,255,255,.5);
  font-family:var(--bw-heading, "Inter Tight", sans-serif);
  font-size:.58rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}

html[data-theme][data-theme] .portal-side-rail strong{
  display:block;
  margin-top:6px;
  color:#fff;
  font-family:var(--bw-heading, "Inter Tight", sans-serif);
  font-size:1.02rem;
  line-height:1;
}

html[data-theme][data-theme] .portal-side-rail small{
  display:block;
  margin-top:5px;
  color:rgba(255,255,255,.58);
  font-size:.72rem;
  line-height:1.3;
}

html[data-theme][data-theme] .portal-card-row{
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

html[data-theme][data-theme] .portal-activity-card{
  grid-column:1 / -1;
  padding:18px;
}

html[data-theme][data-theme] .portal-activity-card ol{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  list-style:none;
  margin:14px 0 0;
  padding:0;
}

html[data-theme][data-theme] .portal-activity-card li{
  padding-left:12px;
  border-left:2px solid rgba(255,255,255,.2);
}

html[data-theme][data-theme] .portal-activity-card strong{
  display:block;
  color:#fff;
  font-family:var(--bw-heading, "Inter Tight", sans-serif);
  font-size:.86rem;
}

html[data-theme][data-theme] .portal-activity-card small{
  display:block;
  margin-top:4px;
  color:rgba(255,255,255,.6);
  font-size:.72rem;
  line-height:1.35;
}

html[data-theme][data-theme] .connected-page-section{
  padding:120px 0;
  background:#f7f4ef;
  color:#17130f;
}

html[data-theme="black"][data-theme] .connected-page-section,
html[data-theme="black-accent"][data-theme] .connected-page-section{
  background:#050505;
  color:#fff;
}

html[data-theme][data-theme] .connected-section-head{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(320px,.55fr);
  gap:44px;
  align-items:end;
  margin-bottom:54px;
}

html[data-theme][data-theme] .connected-section-head .section-title{
  margin:0;
  color:#050505;
}

html[data-theme="black"][data-theme] .connected-section-head .section-title,
html[data-theme="black-accent"][data-theme] .connected-section-head .section-title{
  color:#fff;
}

html[data-theme][data-theme] .connected-section-head p{
  margin:0;
  color:rgba(23,19,15,.66);
  font-size:1.08rem;
  line-height:1.65;
}

html[data-theme="black"][data-theme] .connected-section-head p,
html[data-theme="black-accent"][data-theme] .connected-section-head p{
  color:rgba(255,255,255,.68);
}

html[data-theme][data-theme] .portal-workflow-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  border:1px solid rgba(23,19,15,.14);
  background:#fff;
}

html[data-theme="black"][data-theme] .portal-workflow-grid,
html[data-theme="black-accent"][data-theme] .portal-workflow-grid{
  border-color:rgba(255,255,255,.14);
  background:#0d0d0d;
}

html[data-theme][data-theme] .portal-workflow-card{
  min-height:360px;
  padding:34px 28px;
  border-right:1px solid rgba(23,19,15,.12);
  color:#17130f;
}

html[data-theme][data-theme] .portal-workflow-card:last-child{
  border-right:0;
}

html[data-theme="black"][data-theme] .portal-workflow-card,
html[data-theme="black-accent"][data-theme] .portal-workflow-card{
  border-color:rgba(255,255,255,.12);
  color:#fff;
}

html[data-theme][data-theme] .portal-workflow-card i{
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  margin-bottom:34px;
  background:#050505;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

html[data-theme][data-theme] .portal-workflow-card span{
  display:block;
  margin-bottom:18px;
  color:rgba(23,19,15,.54);
  font-family:var(--bw-heading, "Inter Tight", sans-serif);
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.09em;
  text-transform:uppercase;
}

html[data-theme="black"][data-theme] .portal-workflow-card span,
html[data-theme="black-accent"][data-theme] .portal-workflow-card span{
  color:rgba(255,255,255,.52);
}

html[data-theme][data-theme] .portal-workflow-card h3{
  margin:0 0 18px;
  color:#050505;
  font-family:var(--bw-heading, "Inter Tight", sans-serif);
  font-size:clamp(1.4rem, 2vw, 2.2rem);
  line-height:.96;
  letter-spacing:-.04em;
  text-transform:uppercase;
}

html[data-theme="black"][data-theme] .portal-workflow-card h3,
html[data-theme="black-accent"][data-theme] .portal-workflow-card h3{
  color:#fff;
}

html[data-theme][data-theme] .portal-workflow-card p{
  margin:0 0 32px;
  color:rgba(23,19,15,.64);
  line-height:1.58;
}

html[data-theme="black"][data-theme] .portal-workflow-card p,
html[data-theme="black-accent"][data-theme] .portal-workflow-card p{
  color:rgba(255,255,255,.68);
}

html[data-theme][data-theme] .portal-workflow-card a{
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:#050505;
  font-family:var(--bw-heading, "Inter Tight", sans-serif);
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
  text-decoration:none;
}

html[data-theme="black"][data-theme] .portal-workflow-card a,
html[data-theme="black-accent"][data-theme] .portal-workflow-card a{
  color:#fff;
}

html[data-theme][data-theme] .connected-map-section{
  background:#050505;
  color:#fff;
}

html[data-theme="white"][data-theme] .connected-map-section{
  background:#050505;
}

html[data-theme][data-theme] .connected-map-layout{
  display:grid;
  grid-template-columns:minmax(0,.75fr) minmax(480px,1fr);
  gap:80px;
  align-items:center;
}

html[data-theme][data-theme] .connected-map-copy .section-title{
  color:#fff;
}

html[data-theme][data-theme] .connected-map-copy p{
  color:rgba(255,255,255,.7);
  font-size:1.1rem;
  line-height:1.7;
  margin:0 0 34px;
}

html[data-theme][data-theme] .connected-timeline{
  border:1px solid rgba(255,255,255,.16);
  background:
    linear-gradient(rgba(255,255,255,.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.04) 1px, transparent 1px),
    rgba(255,255,255,.04);
  background-size:38px 38px;
  padding:34px;
}

html[data-theme][data-theme] .connected-timeline article{
  display:grid;
  grid-template-columns:64px minmax(0,1fr);
  gap:24px;
  padding:26px 0;
  border-bottom:1px solid rgba(255,255,255,.14);
}

html[data-theme][data-theme] .connected-timeline article:first-child{
  padding-top:0;
}

html[data-theme][data-theme] .connected-timeline article:last-child{
  padding-bottom:0;
  border-bottom:0;
}

html[data-theme][data-theme] .connected-timeline span{
  width:52px;
  height:52px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.2);
  color:#fff;
  font-family:var(--bw-heading, "Inter Tight", sans-serif);
  font-weight:900;
}

html[data-theme][data-theme] .connected-timeline strong{
  display:block;
  margin-bottom:8px;
  color:#fff;
  font-family:var(--bw-heading, "Inter Tight", sans-serif);
  font-size:1.28rem;
  letter-spacing:-.02em;
}

html[data-theme][data-theme] .connected-timeline p{
  margin:0;
  color:rgba(255,255,255,.68);
  line-height:1.55;
}

html[data-theme][data-theme] .connected-cta-section{
  padding:90px 0 120px;
}

html[data-theme][data-theme] .connected-cta-panel{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:36px;
  padding:48px;
  background:#fff;
  border:1px solid rgba(23,19,15,.14);
}

html[data-theme="black"][data-theme] .connected-cta-panel,
html[data-theme="black-accent"][data-theme] .connected-cta-panel{
  background:#101010;
  border-color:rgba(255,255,255,.14);
}

html[data-theme][data-theme] .connected-cta-panel h2{
  max-width:780px;
  margin:0 0 14px;
  color:#050505;
  font-family:var(--bw-heading, "Inter Tight", sans-serif);
  font-size:clamp(2rem, 4vw, 4.4rem);
  line-height:.92;
  letter-spacing:-.06em;
  text-transform:uppercase;
}

html[data-theme="black"][data-theme] .connected-cta-panel h2,
html[data-theme="black-accent"][data-theme] .connected-cta-panel h2{
  color:#fff;
}

html[data-theme][data-theme] .connected-cta-panel p{
  margin:0;
  max-width:680px;
  color:rgba(23,19,15,.64);
  line-height:1.6;
}

html[data-theme="black"][data-theme] .connected-cta-panel p,
html[data-theme="black-accent"][data-theme] .connected-cta-panel p{
  color:rgba(255,255,255,.7);
}

@media (max-width:1120px){
  html[data-theme][data-theme] .connected-supply-hero{
    padding-top:148px;
    background:#f7f4ef;
  }

  html[data-theme="black"][data-theme] .connected-supply-hero,
  html[data-theme="black-accent"][data-theme] .connected-supply-hero{
    background:#050505;
  }

  html[data-theme][data-theme] .connected-page-hero-grid,
  html[data-theme][data-theme] .connected-section-head,
  html[data-theme][data-theme] .connected-map-layout{
    grid-template-columns:1fr;
  }

  html[data-theme][data-theme] .connected-page-dashboard{
    transform:none;
  }

  html[data-theme][data-theme] .portal-workflow-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  html[data-theme][data-theme] .portal-workflow-card:nth-child(2){
    border-right:0;
  }

  html[data-theme][data-theme] .portal-workflow-card:nth-child(-n+2){
    border-bottom:1px solid rgba(23,19,15,.12);
  }

  html[data-theme="black"][data-theme] .portal-workflow-card:nth-child(-n+2),
  html[data-theme="black-accent"][data-theme] .portal-workflow-card:nth-child(-n+2){
    border-bottom-color:rgba(255,255,255,.12);
  }
}

@media (max-width:640px){
  html[data-theme][data-theme] .connected-supply-hero{
    padding:132px 0 70px;
  }

  html[data-theme][data-theme] .connected-page-title{
    font-size:clamp(2.28rem, 11.8vw, 3.65rem);
    line-height:.92;
  }

  html[data-theme][data-theme] .connected-source-strip,
  html[data-theme][data-theme] .portal-workflow-grid{
    grid-template-columns:1fr;
  }

  html[data-theme][data-theme] .connected-source-strip span{
    text-align:left;
  }

  html[data-theme][data-theme] .connected-page-actions,
  html[data-theme][data-theme] .connected-cta-panel{
    align-items:stretch;
    flex-direction:column;
  }

  html[data-theme][data-theme] .connected-page-dashboard{
    min-height:auto;
    margin-inline:-20px;
    padding:16px 14px;
  }

  html[data-theme][data-theme] .connected-page-dashboard .api-portal-grid{
    grid-template-columns:1fr;
  }

  html[data-theme][data-theme] .connected-page-dashboard .api-metric-card.wide{
    grid-row:auto;
  }

  html[data-theme][data-theme] .portal-project-header,
  html[data-theme][data-theme] .portal-dashboard-body,
  html[data-theme][data-theme] .portal-activity-card ol{
    grid-template-columns:1fr;
  }

  html[data-theme][data-theme] .portal-project-header{
    display:grid;
    gap:12px;
    align-items:flex-start;
  }

  html[data-theme][data-theme] .portal-status-pill{
    width:100%;
    box-sizing:border-box;
    justify-content:center;
  }

  html[data-theme][data-theme] .portal-summary-strip{
    grid-template-columns:1fr;
  }

  html[data-theme][data-theme] .portal-summary-strip article{
    border-right:0;
    border-bottom:1px solid rgba(255,255,255,.11);
  }

  html[data-theme][data-theme] .portal-summary-strip article:last-child{
    border-bottom:0;
  }

  html[data-theme][data-theme] .portal-tab-rail{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
  }

  html[data-theme][data-theme] .portal-tab-rail .api-tab{
    min-height:54px;
    padding:11px 10px;
  }

  html[data-theme][data-theme] .portal-tab-rail .api-tab span{
    font-size:.72rem;
  }

  html[data-theme][data-theme] .portal-tab-rail .api-tab small{
    font-size:.6rem;
  }

  html[data-theme][data-theme] .portal-focus-card{
    padding:18px;
  }

  html[data-theme][data-theme] .portal-panel-grid{
    grid-template-columns:1fr;
  }

  html[data-theme][data-theme] .portal-ops-board,
  html[data-theme][data-theme] .portal-card-row{
    grid-template-columns:1fr;
  }

  html[data-theme][data-theme] .portal-ops-primary{
    min-height:0;
  }

  html[data-theme][data-theme] .portal-route-line{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px 10px;
  }

  html[data-theme][data-theme] .portal-route-line::before{
    display:none;
  }

  html[data-theme][data-theme] .portal-browser-bar{
    grid-template-columns:10px 10px 10px minmax(0,1fr);
  }

  html[data-theme][data-theme] .portal-browser-bar em{
    display:none;
  }

  html[data-theme][data-theme] .portal-workflow-card,
  html[data-theme][data-theme] .portal-workflow-card:nth-child(n){
    min-height:auto;
    border-right:0;
    border-bottom:1px solid rgba(23,19,15,.12);
  }

  html[data-theme][data-theme] .portal-workflow-card:last-child{
    border-bottom:0;
  }

  html[data-theme="black"][data-theme] .portal-workflow-card,
  html[data-theme="black-accent"][data-theme] .portal-workflow-card{
    border-bottom-color:rgba(255,255,255,.12);
  }

  html[data-theme][data-theme] .connected-page-section{
    padding:82px 0;
  }

  html[data-theme][data-theme] .connected-timeline{
    padding:22px;
  }

  html[data-theme][data-theme] .connected-timeline article{
    grid-template-columns:44px minmax(0,1fr);
    gap:16px;
  }

  html[data-theme][data-theme] .connected-timeline span{
    width:40px;
    height:40px;
    font-size:.8rem;
  }

  html[data-theme][data-theme] .connected-cta-panel{
    padding:28px;
  }
}

/* Final guard for the Connected Supply dashboard route. */
html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page{
  min-height:100vh;
  overflow:visible;
  background:#f4f1eb;
  color:#15120f;
}

html[data-theme="black"][data-theme] .connected-supply-page.connected-dashboard-page,
html[data-theme="black-accent"][data-theme] .connected-supply-page.connected-dashboard-page{
  background:#050505;
  color:#f7f2eb;
}

html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-command-center{
  min-height:100vh;
  padding:0;
}

html[data-theme][data-theme] body.connected-page-body .theme-switcher{
  display:none;
}

html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-app-shell,
html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-dashboard-canvas,
html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-app-sidebar,
html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-detail-rail,
html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-panel{
  min-width:0;
}

html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-app-sidebar,
html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-panel{
  overflow:hidden;
}

html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-table-wrap,
html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-app-nav{
  max-width:100%;
}

html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-app-nav{
  scrollbar-width:none;
}

html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-app-nav::-webkit-scrollbar{
  display:none;
}

html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-app-shell{
  grid-template-columns:218px minmax(0,1fr) 306px;
  box-sizing:border-box;
  padding-right:20px;
}

html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-dashboard-canvas{
  padding:30px 24px 34px;
}

html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-app-sidebar{
  padding-inline:14px;
}

html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-app-brand img{
  width:156px;
}

html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-app-nav a{
  min-height:46px;
  padding-inline:10px;
  font-size:.88rem;
}

html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-command-bar{
  grid-template-columns:minmax(300px,.86fr) minmax(390px,.9fr);
  gap:22px;
}

html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-command-bar h1{
  font-size:clamp(2rem, 2.72vw, 2.9rem);
}

html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-stat-grid article{
  padding:20px 18px;
}

html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-project-table{
  min-width:860px;
}

html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-project-table th,
html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-project-table td{
  padding:14px 13px;
  font-size:.81rem;
}

html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-project-table th{
  font-size:.66rem;
}

html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-detail-rail{
  padding-inline:16px;
}

html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-user-strip{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
}

html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-user-strip > div{
  grid-column:1 / -1;
}

html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-detail-list{
  gap:12px;
}

html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-detail-list div{
  grid-template-columns:74px minmax(0,1fr);
}

html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-detail-list dd{
  min-width:0;
  overflow-wrap:anywhere;
}

html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-workflow-tabs{
  grid-template-columns:repeat(2,minmax(0,1fr));
}

@media (min-width:901px){
  html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-project-table{
    min-width:0;
    table-layout:fixed;
  }

  html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-project-table th,
  html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-project-table td{
    overflow:hidden;
    text-overflow:ellipsis;
  }

  html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-project-table :is(th,td):nth-child(1){width:9%;}
  html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-project-table :is(th,td):nth-child(2){width:17%;}
  html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-project-table :is(th,td):nth-child(3){width:14%;}
  html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-project-table :is(th,td):nth-child(4){width:10%;}
  html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-project-table :is(th,td):nth-child(5){width:14%;}
  html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-project-table :is(th,td):nth-child(6){width:10%;}
  html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-project-table :is(th,td):nth-child(7){width:16%;}
  html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-project-table :is(th,td):nth-child(8){width:10%;}
}

@media (max-width:1360px){
  html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-app-shell{
    grid-template-columns:210px minmax(0,1fr);
  }
}

@media (max-width:900px){
  html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-app-shell{
    grid-template-columns:1fr;
    width:100%;
    max-width:100%;
    padding-right:0;
  }

  html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-app-sidebar{
    position:relative;
    top:auto;
    height:auto;
    padding:18px;
  }

  html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-dashboard-canvas{
    padding:24px 18px;
  }

  html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-command-bar{
    grid-template-columns:1fr;
  }

  html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-command-actions{
    grid-template-columns:1fr;
    justify-content:stretch;
  }

  html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-command-actions button,
  html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-command-actions a,
  html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-search{
    width:100%;
    box-sizing:border-box;
  }

  html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-detail-rail{
    grid-column:auto;
    position:relative;
    top:auto;
    height:auto;
    overflow:visible;
    grid-template-columns:1fr;
    padding:18px;
  }

  html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-table-wrap{
    max-width:100%;
    overflow-x:auto;
  }

  html[data-theme][data-theme] .connected-supply-page.connected-dashboard-page .supply-project-table{
    min-width:860px;
    table-layout:auto;
  }
}

