/* VersaIQ / Studio edition — original, Apple-inspired visual system.
   Inspired by restrained product storytelling; no Apple graphics, logo or assets. */
:root {
  --dark:#11131b;
  --dark-2:#1b2230;
  --dark-3:#2a3445;
  --lime:#0071e3;
  --teal:#2997ff;
  --paper:#ffffff;
  --cream:#f5f5f7;
  --ink:#1d1d1f;
  --muted:#6e6e73;
  --stroke:#dedee3;
  --white:#ffffff;
  --radius:24px;
  --ff: -apple-system, BlinkMacSystemFont, "Segoe UI", Inter, Arial, sans-serif;
  --heading:-apple-system, BlinkMacSystemFont, "Segoe UI", Inter, Arial, sans-serif;
  --mono:ui-monospace,"SFMono-Regular",Consolas,"Liberation Mono",monospace;
}
html { scroll-padding-top:92px; }
body {background:#fff; font-size:16px; letter-spacing:-.007em;}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible {outline:3px solid #0071e3;outline-offset:3px;}
::selection {background:#d2eaff;color:#102444;}
.shell{width:min(1230px,calc(100% - 104px));}
.micro,.eyebrow{font-family:var(--ff);letter-spacing:.095em; font-weight:700;font-size:10px;}
.eyebrow-line{width:21px;}
/* slim, translucent navigation — quiet enough to let the content lead */
.micro-bar{background:#f5f5f7;color:#71717a;height:29px;border-bottom:1px solid #ececf0;}
.micro-inner{font:600 10px var(--ff);letter-spacing:.025em;}
.micro-inner .pulse-dot{width:5px;height:5px;background:#0071e3;box-shadow:0 0 0 3px #0071e31c;}
.site-header{background:#fffffff0;color:#1d1d1f;border-bottom:1px solid #e9e9ed;backdrop-filter:saturate(180%) blur(22px);-webkit-backdrop-filter:saturate(180%) blur(22px);}
.nav-wrap{height:69px;}
.brand{font-size:25px;letter-spacing:-1.5px;}
.brand-mark{color:#1d1d1f;}
.brand-iq{color:#0071e3;}
.site-nav{gap:28px;}
.site-nav>a:not(.nav-cta){color:#45454a;font-size:12px;font-weight:600;}
.site-nav>a:not(.nav-cta):hover,.site-nav>a.active{color:#0071e3!important;}
.nav-cta{margin-left:2px;background:#0071e3;color:white;border-radius:50px;padding:13px 18px;font-size:12px;gap:17px;font-weight:650;}
.nav-cta:hover{background:#0077ed;}
.nav-cta span{font-size:16px;}
.menu-toggle{color:#161617;}
.menu-toggle span{background:#161617;}
/* Signature product-story hero */
.hero{background:radial-gradient(ellipse 60% 50% at 50% 80%,#ecf6ff 0%,transparent 100%),#fff;color:#1d1d1f;}
.hero:before{background:none;}
.hero-layout{max-width:1250px;display:flex;flex-direction:column;min-height:unset;gap:0;text-align:center;align-items:center;padding-top:98px;padding-bottom:110px;}
.hero-copy{display:flex;flex-direction:column;align-items:center;width:100%;}
.hero-copy .eyebrow{color:#6e6e73;font-size:11px;letter-spacing:.11em;}
.hero-copy .eyebrow-line{display:none;}
.hero h1{font:700 clamp(63px,8.4vw,117px)/1.025 var(--heading);letter-spacing:-.078em;white-space:normal;margin:27px auto 23px;max-width:1160px;}
.hero h1 em{font-style:normal;background:linear-gradient(100deg,#0063cc 5%,#0873df 64%,#3d64ce 100%);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;}
.hero h1 .outlined{color:#1d1d1f;}
.hero-description{font-size:clamp(18px,2vw,23px);line-height:1.49;color:#68686d;max-width:720px;margin-bottom:33px;letter-spacing:-.025em;}
.hero-ctas{justify-content:center;gap:26px;}
.btn{font-weight:650;font-size:14px;padding:13px 20px;border-radius:30px;gap:15px;box-shadow:none;}
.btn:hover{transform:translateY(-1px);box-shadow:0 6px 14px #00000012;}
.btn-lime{background:#0071e3;color:#fff;}
.btn-lime:hover{background:#0077ed;}
.btn-light{background:#fff;color:#1d1d1f;}
.btn-circle{width:auto;height:auto;border:0;font-size:17px;}
.text-link,.under-link{border:0;color:#0071e3;font-size:14px;font-weight:600;padding:0;}
.text-link:hover,.under-link:hover{color:#005bb5;}
.light-link{color:#0071e3;}
.hero-bottom{order:2;justify-content:center;margin-top:29px;color:#89898f;font-size:10px;}
.hero-separator{background:#d1d1d6;}
.hero-visual{order:3;width:min(100%,1000px);margin:69px auto 0;position:relative;}
.hero-visual:before{content:"";position:absolute;inset:20px 30px -18px;z-index:0;background:#97bee04a;filter:blur(52px);border-radius:80px;}
.data-canvas{position:relative;text-align:left;background:linear-gradient(150deg,#182335 0%,#0b1220 76%);border:1px solid #35445b;border-radius:28px;padding:30px 37px;box-shadow:0 32px 80px #12234025,0 8px 20px #12234010;}
.data-canvas:before{display:none;}
.canvas-top{color:#c7d3e5;}
.canvas-live{color:#99afd4;}
.canvas-live .pulse-dot{background:#57b5ff;box-shadow:0 0 8px #57b5ff;}
.canvas-graphic{max-width:760px;margin:15px auto 5px;}
.canvas-tabs{gap:9px;justify-content:center;}
.canvas-tab{border:1px solid #44516a;border-radius:24px;background:#202b3c;color:#b9c7dc;padding:10px 18px;font:600 11px var(--ff);}
.canvas-tab:hover{color:#fff;border-color:#66b9ff;}
.canvas-tab.is-active{background:#0071e3;color:#fff;border-color:#0071e3;}
.canvas-foot{max-width:760px;margin:20px auto 0;padding-top:20px;border-color:#42516c;min-height:60px;}
.canvas-step{color:#8ac5ff;font:650 10px var(--ff);}
.canvas-foot p{font-size:13px;color:#bccade;max-width:430px;}
/* experience ribbon */
.credentials-strip{background:#f5f5f7;border-top:1px solid #efeff2;border-bottom:1px solid #eeeeef;}
.credentials-layout{padding:32px 0;gap:45px;}
.credentials-layout>.micro{color:#85858e;}
.credentials-items strong{color:#606065;font-weight:750;font-size:clamp(17px,1.7vw,21px);letter-spacing:-.04em;}
.credentials-items small{color:#92929b;font-size:9px;font-family:var(--ff);letter-spacing:.04em;margin-top:7px;}
/* content rhythm and type */
.section{padding:135px 0;}
.section-cream{background:#f5f5f7;}
.section-dark{background:#10121a;color:#fff;}
.display-head{font:700 clamp(47px,5.2vw,78px)/1.07 var(--heading);letter-spacing:-.069em;}
.display-head em{color:#006ad5;}
.section-dark .display-head em{color:#74baff;}
.section-heading-row{margin-bottom:49px;}
.section-heading-row>p{font-size:16px;line-height:1.6;}
.intro-layout{gap:95px;}
.intro-side p{color:#63636a;font-size:17px;line-height:1.68;}
.underline-squiggle{text-decoration-color:#b8d9fb;text-decoration-thickness:5px;text-underline-offset:10px;}
.value-triptych{margin-top:88px;}
.value-index{color:#0071e3;}
.value-triptych h3{font-size:23px;}
.value-triptych p{font-size:14px;line-height:1.75;}
/* soft cards instead of corporate boxes */
.services-grid{gap:18px;}
.service-card{background:#fff;border:0;border-radius:24px;padding:35px;min-height:323px;box-shadow:0 1px 2px #1616170a;}
.service-card:hover{background:#e8f2ff;color:#1d1d1f;transform:translateY(-4px);border-color:transparent;box-shadow:0 18px 40px #0c3b7015;}
.service-card-top .micro,.service-card:hover .service-card-top .micro{color:#0071e3;}
.service-card h3{font:700 clamp(21px,2vw,27px)/1.18 var(--heading);letter-spacing:-.05em;}
.service-card p,.service-card:hover p{color:#626269;font-size:14px;line-height:1.72;}
.circle-arrow{border-color:#d0d0d6;color:#0071e3;}
.service-card-footer,.service-card:hover .service-card-footer{color:#87878e;border-top:1px solid #e5e5ea;font:600 10px var(--ff);}
.services-grid .service-card:nth-child(7){min-height:205px;}
/* case studies intentionally cinematic against the lighter site */
.work-section{background:#0d111b;}
.featured-grid{gap:22px;}
.work-card{border-radius:26px;min-height:510px;border:1px solid #ffffff20;padding:35px;}
.theme-retail{background:linear-gradient(140deg,#20467f,#0d1729 92%);}
.theme-fmo{background:linear-gradient(140deg,#31445f,#151b2c 88%);}
.theme-pov{background:linear-gradient(130deg,#343056,#11172d 85%);}
.theme-heineken{background:linear-gradient(140deg,#265b66,#0e1d2a 92%);}
.theme-ibm{background:linear-gradient(140deg,#293f66,#151b2e);}
.work-top .micro{color:#d7e6ff;}
.work-type{color:#a1d2ff;}
.work-bottom h3{font-size:clamp(28px,2.6vw,37px);letter-spacing:-.055em;}
.work-client{color:#d8e2f2;}
.art-branches:before{border-color:#8fc9ff;background:#4b93ff24;box-shadow:0 0 0 20px #a5d0ff08;}
.art-branches i{background:#9ed2ff;}
.art-branches b{background:#85c4ff;box-shadow:0 0 33px #85c4ff;}
.art-stack i{border-color:#b5d9ff;box-shadow:0 20px 0 #b5d9ff1a,0 40px 0 #b5d9ff0c;}
.art-stack i:nth-child(2){background:#7cc2ff23;}
.art-stack i:nth-child(3){background:#82c7ff;}
.art-rings{border-color:#b2cfff;box-shadow:0 0 0 33px #509fff17,0 0 0 66px #509fff0b;}
.art-rings:before,.art-rings:after{border-color:#8ec7ff;}
.art-rings:after,.art-rings i{background:#8ec7ff;}
.art-matrix i{border-color:#a9d5ff85;}
.art-matrix i:nth-child(3n){background:#8ec7ff88;}
/* method and experience */
.process-section{background:#fff;}
.process-no{color:#0071e3;}
.step-rule{background:#d7e4f3;}
.step-rule:before{background:#0071e3;}
.lab-teaser{background:linear-gradient(120deg,#edf5ff,#f5f5f7 68%);}
.lab-copy>p{color:#66666d;}
.quality-widget{background:linear-gradient(135deg,#142744,#101724);border:1px solid #344d77;border-radius:22px;box-shadow:0 22px 60px #304f7925;}
.widget-demo,.quality-score strong span,.quality-rows b,.widget-check{color:#90caff;}
.sparkline i{background:linear-gradient(#83c1ff,#3578cc);}
.quality-rows i{background:linear-gradient(to right,#61adff var(--v),#344359 var(--v));}
.quote-section{background:#fff;}
.quote-card{background:#f5f5f7;border-radius:25px;padding:52px;}
.giant-quote,.quotation-mark{color:#0071e3;}
.quote-card blockquote{font-weight:650;}
.quote-by span{color:#74747a;}
.contact-banner{background:#eff5fc;padding:84px 0;}
.banner-inner h2{font-weight:700;}
.banner-inner h2 em{color:#0071e3;}
.banner-inner .btn{background:#0071e3;color:#fff;}
/* Clean, editorial footer */
.footer{background:#f5f5f7;color:#1d1d1f;border-top:1px solid #e4e4e8;padding:70px 0 27px;}
.footer .brand-mark{color:#1d1d1f;}
.footer-statement{font-weight:700;letter-spacing:-.065em;}
.footer-statement em{color:#0071e3;}
.footer-nav .micro{color:#77777e;}
.footer a:not(.brand):hover{color:#0071e3;}
/* all page headers follow product-style hierarchy */
.page-hero,.page-hero-dark{background:linear-gradient(180deg,#f5f5f7 0%,#ffffff 100%);color:#1d1d1f;}
.page-hero-inner{padding:112px 0 115px;}
.page-hero .eyebrow{color:#0071e3;}
.page-hero h1{font-weight:700;letter-spacing:-.073em;max-width:1150px;}
.page-hero h1 em{color:#0071e3;}
.page-hero p{color:#69696f;max-width:780px;}
.page-hero .micro{color:#71717a;}
/* content pages */
.detail-service{border-color:#e4e4e9;}
.detail-number,.detail-main .micro{color:#0071e3;}
.filter-chip{border-color:#d2d2d7;color:#505057;background:#fff;}
.filter-chip.is-active,.filter-chip:hover{background:#0071e3;color:#fff;border-color:#0071e3;}
.lab-main{background:#f5f5f7;}
.lab-explorer{border-radius:24px;border-color:#e4e4e9;}
.lab-controls{background:#fff;}
.lab-results{background:#f8f9fc;}
.insight-card{border:0;border-radius:22px;box-shadow:0 3px 20px #00000009;}
.insight-card:hover{box-shadow:0 18px 38px #00000016;}
.insight-art-1{background:linear-gradient(140deg,#203b6d,#1b2850);}
.insight-art-2{background:linear-gradient(140deg,#bde0ff,#648fc7);}
.insight-art-3{background:linear-gradient(140deg,#394b63,#182334);}
.founder-art{background:linear-gradient(150deg,#1e3f73,#101724);border-radius:25px;}
.contact-form-wrap{background:#f5f5f7;border-radius:26px;}
.contact-detail a:hover{color:#0071e3;}
.article-body a{color:#0071e3;}
.case-modal{background:#0a0f1bdf;}
/* Mobile and tablet corrections to inherited site breakpoints */
@media(max-width:1150px){
  .shell{width:min(100% - 72px,1230px);}
  .hero-layout{gap:0;}
  .hero h1{font-size:clamp(64px,9vw,102px);}
  .hero-visual{max-width:900px;}
}
@media(max-width:850px){
  .shell{width:calc(100% - 44px);}
  .nav-wrap{height:64px;}
  .site-nav{top:64px;background:#fffffff8;border-bottom:1px solid #e7e7ec;box-shadow:0 16px 32px #0000000b;}
  .site-nav>a:not(.nav-cta){color:#1d1d1f;}
  .menu-toggle{display:block;}
  .hero-layout{padding-top:70px;padding-bottom:85px;}
  .hero h1{font-size:clamp(57px,9vw,86px);}
  .hero-description{font-size:19px;}
  .hero-visual{margin-top:54px;}
  .data-canvas{padding:24px;}
  .section{padding:100px 0;}
  .page-hero-inner{padding:83px 0 95px;}
  .services-grid .service-card:nth-child(7){min-height:320px;}
}
@media(max-width:580px){
  .shell{width:calc(100% - 36px);}
  .micro-bar{height:28px;}
  .micro-inner{font-size:9px;}
  .brand{font-size:23px;}
  .hero-layout{padding-top:68px;padding-bottom:78px;}
  .hero h1{font-size:clamp(45px,10.5vw,65px);line-height:1.06;letter-spacing:-.072em;margin:24px auto;}
  .hero-description{font-size:17px;line-height:1.52;}
  .hero-ctas{gap:16px;}
  .btn{font-size:13px;padding:12px 17px;}
  .text-link{font-size:13px;}
  .hero-bottom{gap:10px;flex-wrap:wrap;justify-content:center;margin-top:24px;}
  .hero-bottom .micro{font-size:9px;}
  .hero-visual{margin-top:46px;width:100%;}
  .data-canvas{padding:20px 14px;border-radius:20px;box-shadow:0 18px 40px #142c4d26;}
  .canvas-top .micro,.canvas-live{font-size:8px;}
  .canvas-graphic{margin:12px auto;}
  .canvas-tabs{gap:5px;}
  .canvas-tab{font-size:9px;padding:9px 11px;}
  .canvas-foot{gap:8px;flex-direction:column;}
  .canvas-foot p{font-size:12px;}
  .credentials-layout{padding:28px 0;}
  .credentials-items strong{font-size:17px;}
  .section{padding:87px 0;}
  .display-head{font-size:clamp(40px,10.5vw,54px);}
  .service-card{border-radius:19px;padding:27px;min-height:288px;}
  .services-grid .service-card:nth-child(7){min-height:300px;}
  .work-card{border-radius:21px;padding:24px;min-height:475px;}
  .quote-card{padding:31px;border-radius:19px;}
  .contact-banner{padding:74px 0;}
  .page-hero-inner{padding:72px 0 84px;}
  .page-hero h1{font-size:clamp(46px,11vw,65px);}
  .footer{padding-top:65px;}
}
@media(prefers-reduced-motion:reduce){
 .hero-visual:before{filter:none;opacity:.35;}
}

/* 2026 brand refinement: precise, monochrome editorial wordmark. */
.brand{display:inline-flex;align-items:center;line-height:1;letter-spacing:normal;flex-shrink:0;gap:0;}
.brand-image{display:block;width:auto;height:29px;max-width:190px;}
.footer .brand-image{height:32px;}
@media(max-width:580px){.brand-image{height:26px}.footer .brand-image{height:29px}}

/* ================================================================
   VersaIQ V4.2 — focused accessibility and small-screen repairs.
   Keeps V4.1 branding, page structure, content and behavior intact.
   ================================================================ */

/* On the light editorial footer, links must be legible before hover. */
.footer .footer-nav a {
  color: #57575f;
  opacity: 1;
  text-decoration: none;
  transition: color .18s ease, text-decoration-color .18s ease;
}
.footer .footer-nav a:hover,
.footer .footer-nav a:focus-visible {
  color: #005bb5;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
}
.footer .footer-nav a[aria-current="page"],
.footer .footer-nav a.active {color: #1d1d1f;font-weight: 700;}
.footer .footer-bottom {color: #606067;border-top-color:#d5d5da;}
.footer .footer-bottom a {color: #515159;opacity:1;}
.footer .footer-bottom a:hover,
.footer .footer-bottom a:focus-visible {color:#005bb5;}

/* Remove min-content pressure from the two-column quality explorer. */
.lab-explorer {grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);}
.lab-explorer > .lab-controls,
.lab-explorer > .lab-result {min-width:0;max-width:100%;}
.lab-result .lab-delta strong {
  display:block;
  font-size: clamp(17px,1.7vw,22px);
  line-height:1.2;
  letter-spacing:-.035em;
  white-space:normal;
  overflow-wrap:break-word;
}
.lab-result .score-main > div:first-child > strong {font-size:clamp(60px,6.8vw,88px);}
.lab-result .lab-chart,
.lab-result .chart-row,
.lab-result .chart-row > div {min-width:0;}
.lab-result .chart-row {grid-template-columns:minmax(0,110px) minmax(0,1fr) 41px;}
.lab-result .lab-result-top,
.lab-result .lab-result-foot {flex-wrap:wrap;}
.lab-result .lab-result-foot > * {min-width:0;}

@media(max-width:850px) {
  .lab-explorer {grid-template-columns:minmax(0,1fr);}
  .lab-result .score-main {gap:18px;}
}
@media(max-width:580px) {
  .lab-controls,.lab-result {padding:22px 20px;}
  .lab-explain h3 {font-size:clamp(22px,6vw,27px);overflow-wrap:break-word;}
  .lab-result-top {align-items:flex-start;gap:8px 16px;}
  .lab-result-top .micro {font-size:10px;line-height:1.4;}
  .lab-result-top .lab-live {font-size:10px;white-space:normal;}
  .lab-result .score-main {
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:20px;
    align-items:start;
    padding:26px 0 24px;
  }
  .lab-result .score-main > div {min-width:0;}
  .lab-result .score-main > div:first-child > strong {font-size:70px;line-height:1;}
  .lab-result .score-main > div:first-child > strong span {font-size:27px;}
  .lab-result .lab-delta {text-align:left;}
  .lab-result .lab-delta span {font-size:10px;margin-bottom:7px;}
  .lab-result .lab-delta strong {
    font-size:clamp(20px,5.5vw,25px);
    line-height:1.2;
    letter-spacing:-.035em;
    max-width:100%;
  }
  .lab-result .lab-chart {gap:20px;margin:27px 0 30px;}
  .lab-result .chart-row {
    grid-template-columns:minmax(0,93px) minmax(0,1fr) 36px;
    gap:9px;
  }
  .lab-result .chart-row > span {font-size:11px;}
  .lab-result .lab-result-foot {align-items:flex-start;gap:12px;}
  .lab-result .lab-result-foot .micro {font-size:9px;line-height:1.5;letter-spacing:.06em;}
}
@media(max-width:350px) {
  .lab-controls,.lab-result {padding:20px 15px;}
  .lab-result .chart-row {grid-template-columns:minmax(0,84px) minmax(0,1fr) 33px;gap:7px;}
  .lab-result .chart-row > span {font-size:10px;}
  .lab-result .chart-row strong {font-size:10px;}
}


/* ==================================================================
   VersaIQ V4.3 — small-screen resilience and readable navigation
   Fixes the clipped outcome labels, mobile decision visualization,
   multi-column Data Quality monitor and light-footer accessibility.
   ================================================================== */

/* Keep every important label inside the decision visualization. */
.hero-visual, .data-canvas, .canvas-graphic {min-width:0;max-width:100%;}
.canvas-graphic svg {width:100%;height:auto;aspect-ratio:540/284;overflow:visible;}
.data-canvas {overflow:hidden;}
.canvas-top > *, .canvas-foot > * {min-width:0;}
.canvas-live {white-space:normal;text-align:right;}

/* The compact mobile diagram is intentionally reflowed, not cropped. */
.canvas-mobile-flow {display:none;}
@media(max-width:700px) {
  .canvas-graphic {display:none;}
  .canvas-mobile-flow {
    display:flex;flex-direction:column;gap:13px;
    width:100%;margin:22px auto 14px;
    font-family:var(--ff);color:#f1f6ff;
  }
  .flow-group {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:9px;}
  .flow-node {
    display:flex;flex-direction:column;justify-content:center;gap:7px;
    min-width:0;min-height:82px;border:1px solid #5d6f8c;
    border-radius:13px;padding:15px 12px;background:#1e2a3e;
    text-align:left;overflow-wrap:anywhere;
  }
  .flow-node small {font-size:9px;line-height:1.3;color:#c5d2e6;letter-spacing:.075em;}
  .flow-node strong {font-size:clamp(15px,4.6vw,20px);line-height:1.18;letter-spacing:-.025em;}
  .flow-decision {background:#62b1fa;border-color:#62b1fa;color:#102238;text-align:center;min-height:78px;align-items:center;}
  .flow-decision small {color:#163754;}
  .flow-decision strong {font-size:clamp(19px,5.8vw,25px);}
  .flow-connector {height:19px;width:2px;background:#69b6fa;margin:0 auto;position:relative;}
  .flow-connector::after {content:"";position:absolute;bottom:-1px;left:-4px;border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid #69b6fa;}
  .canvas-tabs {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;}
  .canvas-tab {padding:12px 8px;min-height:42px;white-space:normal;line-height:1.25;}
  .canvas-top {align-items:flex-start;gap:8px;}
  .canvas-live {max-width:47%;font-size:8px;line-height:1.45;}
  .canvas-foot {display:flex;flex-direction:column;align-items:stretch;gap:8px;}
  .canvas-foot p {max-width:none;line-height:1.55;margin:0;}
}
@media(max-width:350px) {
  .data-canvas {padding:17px 12px;}
  .flow-node {padding:12px 10px;min-height:78px;}
  .flow-node strong {font-size:15px;}
}

/* Readable EXPLORE / CONNECT links at rest, including mobile. */
.footer .footer-nav a,
.footer .footer-nav a:link,
.footer .footer-nav a:visited {color:#55565d!important;opacity:1!important;visibility:visible!important;}
.footer .footer-nav a:hover,
.footer .footer-nav a:focus-visible {color:#005bb5!important;text-decoration:underline;text-underline-offset:4px;}
.footer .footer-nav a[aria-current="page"] {color:#1d1d1f!important;font-weight:700;}
.footer .footer-nav .micro {color:#64656c;opacity:1;}

/* Responsive Data Quality explorer; no chart content is hidden. */
.lab-explorer, .lab-controls, .lab-result, .score-main, .lab-chart,
.lab-result-top, .lab-result-foot {min-width:0;max-width:100%;}
.lab-explorer {grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);}
.lab-result .score-main > .lab-delta {min-width:0;max-width:100%;}
.lab-result .score-main .lab-delta strong {font-size:clamp(18px,2vw,26px);letter-spacing:-.025em;line-height:1.25;overflow-wrap:break-word;}
.lab-result .chart-row {grid-template-columns:minmax(0,110px) minmax(0,1fr) minmax(0,38px);}
.lab-result .chart-row > * {min-width:0;}
.lab-result .lab-result-top,.lab-result .lab-result-foot {flex-wrap:wrap;gap:10px;}
@media(max-width:850px) {
  .lab-explorer {grid-template-columns:minmax(0,1fr);}
  .lab-result .score-main {display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:16px;}
  .lab-result .lab-delta {text-align:left;}
}
@media(max-width:580px) {
  .lab-result .score-main {padding:24px 0;}
  .lab-result .score-main > div:first-child > strong {font-size:clamp(55px,18vw,72px);}
  .lab-result .score-main .lab-delta strong {font-size:clamp(21px,5.8vw,26px);}
  .lab-result .chart-row {grid-template-columns:minmax(0,88px) minmax(0,1fr) 33px;gap:7px;}
  .lab-result .chart-row > span {font-size:10px;overflow-wrap:anywhere;}
  .lab-result .lab-result-foot .micro {overflow-wrap:anywhere;line-height:1.55;}
}

/* Contact form: in-place feedback with accessible error messaging. */
.contact-form .form-status {display:none;margin:0;padding:14px 16px;border-radius:12px;font-size:13px;line-height:1.5;}
.contact-form .form-status[data-state="error"] {display:block;color:#852320;background:#fff0ee;border:1px solid #e7b2aa;}
.contact-form .form-status[data-state="progress"] {display:block;color:#173c69;background:#e8f2ff;border:1px solid #b1d4fc;}
.contact-form button[disabled] {cursor:wait;opacity:.7;transform:none;}
