/* DYNAMONK Studio V9 | feedback-led final refinement.
   Text, layout, WCAG topic placement and motion only; approved identity is unchanged. */
:root[data-theme="standard"],:root[data-theme="soft"]{
  --muted:#344454;
  --hero-muted:#344454;
  --border:#718291;
  --link:#193247;
}
/* Accessible baseline: normal body copy 16px+, meaningful meta text at least 14px.
   Preserve intentionally inaccessible examples only inside the labeled Lab illustrations. */
html{scroll-padding-top:100px}
body{font-size:1rem;line-height:1.68}
.kicker,.v6-overline,.v6-card-top,.card-num,.v6-service-number,
.v6-step span,.v6-value-grid span,.v6-ui-label,.small-meta,.lab5-eyebrow,
.lab5-ref,.lab5-topic small,.lab5-count,.lab5-preview-label,.lab5-preview-window-heading,
.lab5-source-link,.lab5-filter-btn,.lab5-simulation-controls button,
.quiz5-category,.quiz5-criterion,.quiz5-review-status,.brand-sub,
.v5-footer-nav a,.v5-footer-legal a,.v5-footer-bottom,
.v6-ui-top,.v6-choose,.v6-card-category{
  font-size:max(.875rem,14px);
  letter-spacing:.035em;
  line-height:1.5;
}
.v6-overline,.kicker,.lab5-ref{font-weight:750;letter-spacing:.08em}
.v6-card-top,.v6-ui-top{letter-spacing:.04em}
.v6-service-text,.v6-service-card p,.v6-section-heading>p,.v6-lab-section p,
.lab5-detail-header p,.lab5-section-heading>p,.page-hero .lead,
.contact-form .field small,.v6-info-block p,.card p{
  font-size:clamp(1rem,1.04vw,1.08rem);
  line-height:1.68;
}
.v6-service-text{max-width:none;overflow-wrap:break-word}
/* Long descriptions use the row width when possible, but remain readable when space is constrained. */
@media(min-width:1100px){.v6-service-text{max-width:100%;text-wrap:pretty}}
@media(max-width:700px){
  .v6-service-text{font-size:1rem}
  .v6-section-heading>p{max-width:100%}
}
/* Header stays compact despite readable small labels. */
.brand-sub{font-size:.75rem;letter-spacing:.08em}
/* Landing art: keep only the approved flying silhouette. */
.v6-logo-scene{gap:0}
.v6-logo-wordmark,.v6-hero-tail{display:none!important}
.v6-flying-monk{width:min(100%,285px)}
/* Spacing tuned now that duplicate CTAs are removed. */
.v6-hero-layout{padding-bottom:clamp(66px,8vw,106px)}
.v6-hero-actions{gap:16px}
.v6-end-section>.container{gap:18px}
.v6-end-section{padding-block:clamp(50px,6vw,74px)}
/* Lab: selected topic explanation becomes an immediately adjacent full-width grid row. */
.lab5-topics{margin-bottom:0;align-items:stretch;row-gap:12px}
.lab5-topics>.lab5-detail{grid-column:1/-1;min-width:0;scroll-margin-top:106px;
 margin:8px 0 22px;box-shadow:0 16px 48px rgba(26,43,57,.075);
 border:1.5px solid var(--border);animation:none}
.lab5-topic{min-height:109px}
.lab5-topic[aria-expanded="true"]{border-color:var(--accent);background:var(--surface-alt)}
.lab5-detail h3{font-size:clamp(1.4rem,2.1vw,2.15rem)}
.lab5-preview-visual{min-height:230px}
.lab5-topics>.lab5-detail:focus-within{border-color:var(--focus)}
/* For narrow screens use one column so details follow the exact selected topic. */
@media(max-width:640px){
  .lab5-topics{grid-template-columns:minmax(0,1fr)}
  .lab5-topic{min-height:76px;gap:4px;padding:15px 17px}
  .lab5-topic[aria-pressed="true"]{padding:14px 16px}
  .lab5-topics>.lab5-detail{margin:4px 0 15px}
}
@media(max-width:380px){
  .lab5-detail{padding:16px}
  .lab5-preview-visual{padding:12px}
}
/* All meaningful status and hint copy uses the solid, high-contrast ink token. */
.lab5-section-heading p,.lab5-detail-header p,.lab5-explanation p,.v6-service-text,
.lab5-count,.form-callout,.field small{color:var(--muted)}
/* Maintain keyboard focus in all themes. */
:focus-visible{outline:3px solid var(--focus)!important;outline-offset:3px!important}
.lab5-topic:focus-visible{outline-offset:2px!important}
/* Avoid relying on animation for discoverability. */
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}}
:root[data-motion="reduce"] html{scroll-behavior:auto!important}
/* Reflow at 320px even with 120% enlarged website text. */
.form-layout,.form-grid{min-width:0}
.form-layout>* ,.form-grid>*{min-width:0}
.contact-form{min-width:0;max-width:100%}
@media(max-width:700px){
  .form-layout{grid-template-columns:minmax(0,1fr)}
  .form-grid{grid-template-columns:minmax(0,1fr)}
  .contact-form,.form-layout>.card{overflow-wrap:anywhere}
}
/* Orange service numbers were legible only as decoration; keep their meaning in high-contrast ink. */
.v6-service-number{color:var(--text)}
