/* The assessment shares the site header. Keep its instrument and document styles inside the tool. */
.tw {
  --chart-line: color-mix(in srgb, var(--aviation) 7%, transparent);
  --contour: color-mix(in srgb, var(--brand-grey) 38%, transparent);
  --selected-paper: color-mix(in srgb, var(--sun) 18%, var(--paper-bright));
  font-family: "Century Gothic", Arial, sans-serif;
  color: var(--aviation);
  line-height: 1.55;
  background: repeating-linear-gradient(0deg,transparent 0 35px,var(--chart-line) 35px 36px),repeating-linear-gradient(90deg,transparent 0 35px,var(--chart-line) 35px 36px),var(--paper);
  min-height: 80vh;
}
.tw *, .tw *::before, .tw *::after { box-sizing: border-box; }
.tw .frame { width: min(1280px,calc(100% - 72px)); margin-inline: auto; }
.tw h1,.tw h2,.tw h3 { margin: 0 0 .65rem; color: var(--aviation); text-wrap: balance; font-family: var(--display),"Arial Narrow",sans-serif; font-weight: 700; line-height: 1.03; text-transform: none; letter-spacing: -.025em; }
.tw h1 { font-size: clamp(2.5rem,5vw,4.45rem); }
.tw h2 { font-size: clamp(1.8rem,3vw,2.65rem); }
.tw h3 { font-size: clamp(1.4rem,2vw,1.85rem); }
.tw p { margin: 0 0 1rem; max-width: 74ch; }
.tw .eyebrow,.tw .plate-dial + span small { display: block; margin: 0 0 .9rem; padding: 0; border: 0; background: none; color: var(--aviation); transform: none; font: 700 .72rem/1.45 "Century Gothic",Arial,sans-serif; text-transform: uppercase; letter-spacing: .12em; }
.tw .eyebrow::before { content: none; }
.tw a { color: var(--aviation); text-underline-offset: .25em; }
.tw a:hover,.tw .sheet p a { text-decoration: underline; }
.tw :focus-visible { outline: 3px solid var(--sun); outline-offset: 2px; box-shadow: 0 0 0 6px var(--aviation); }
.tw .mast { background: var(--paper-bright); border-bottom: 1px solid var(--field-line); }
.tw .mast-inner,.tw .mast nav,.tw .breadcrumbs,.tw .actions,.tw .hero-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 1.2rem; }
.tw .mast-inner { justify-content: space-between; padding-block: 12px; }
.tw .mast a { font: 700 .82rem/1.5 "Century Gothic",Arial,sans-serif; color: var(--aviation); }
.tw .breadcrumbs { gap: .65rem; }
.tw .breadcrumbs span { color: var(--brand-grey); }
.tw .hero { display: grid; grid-template-columns: .94fr 1.06fr; padding: 0; min-height: 0; margin: 26px 0 22px; background: var(--aviation); border: 1px solid var(--aviation); box-shadow: 0 4px 0 var(--sky-blue); overflow: hidden; }
.tw .hero::before,.tw .hero::after { content: none; }
.tw .intro { display:flex; flex-direction:column; justify-content:center; align-items:flex-start; position:relative; padding: clamp(30px,4vw,58px); background:
  radial-gradient(ellipse at 0% 110%,transparent 0 31%,var(--contour) 31.2% 31.4%,transparent 31.6% 40%,var(--contour) 40.2% 40.4%,transparent 40.6% 49%,var(--contour) 49.2% 49.4%,transparent 49.6%),
  var(--aviation); }
.tw .intro .eyebrow,.tw .report-head .eyebrow,.tw .rail .eyebrow { color: var(--sun); }
.tw .intro .eyebrow::before { content:''; display:inline-block; width: 23px; height: 3px; margin-right: 9px; vertical-align: middle; background: var(--sun); }
.tw .intro h1 { color: var(--paper-bright); font-size: clamp(5rem,8.8vw,8.6rem); line-height: .96; margin: .1em 0 .15em; font-style: italic; letter-spacing: -.045em; }
.tw .lede { font-size: clamp(1rem,1.4vw,1.22rem); line-height: 1.58; }
.tw .intro .lede { color: var(--paper-bright); max-width: 37ch; margin-bottom: 1.55rem; }
.tw .hero-actions { gap: .8rem 1.4rem; }
.tw .hero-sample,.tw .report-head .subtle { color: var(--paper-bright); font-weight: 700; text-decoration: underline; }
.tw .hero-sample { font-size: .88rem; }
.tw .poster { position: relative; display: grid; min-height: 355px; background: var(--sky-blue); border-left: 4px solid var(--sun); }
.tw .hero-image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 54% 48%; }
.tw .route-plate { position: absolute; right: clamp(12px,1.6vw,24px); bottom: clamp(12px,1.6vw,24px); display: flex; align-items: center; gap: 10px; padding: 6px 14px 6px 6px; border: 1px solid var(--brand-grey); box-shadow: 0 4px 12px var(--field-line),inset 0 0 0 3px var(--brand-grey); border-radius: 5px; background: var(--aviation); color: var(--paper-bright); }
.tw .route-plate .stage-dial { display:block; width:68px; height:68px; }
.tw .route-plate small { color: var(--paper-bright) !important; font-size:.6rem !important; margin: 0 !important; }
.tw .route-plate strong { display:block; color: var(--paper-bright); font: 700 1.65rem/1.1 var(--display),sans-serif; }
.tw .plate-arrow { align-self:flex-start; color: var(--sun); }
.tw button,.tw input,.tw select,.tw textarea { font: inherit; }
.tw .button,.tw button { appearance: none; display: inline-flex; align-items: center; justify-content: center; gap: .9rem; min-height: 46px; border: 1px solid var(--aviation); border-radius: 2px; padding: .65rem 1.15rem; background: var(--aviation); color: var(--paper-bright); box-shadow: none; font: 700 .96rem/1.4 "Century Gothic",Arial,sans-serif; letter-spacing: 0; text-decoration: none; text-transform: none; cursor: pointer; }
.tw .button:hover,.tw button:hover { background: var(--sun); color: var(--aviation); text-decoration: none; }
.tw .intro .button,.tw .report-head .button { color: var(--aviation); background: var(--sun); border-color: var(--sun); box-shadow: 0 2px 0 var(--field-line); }
.tw .intro .button:hover,.tw .report-head .button:hover { background: var(--paper); }
.tw button.secondary { background: transparent; color: var(--aviation); }
.tw .actions { gap: .8rem 1.2rem; margin: 1rem 0; }
.tw .home-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; }
.tw .panel,.tw .sheet { min-width:0; padding: clamp(23px,3.4vw,48px); border: 1px solid var(--field-line); background: var(--paper-bright); }
.tw .panel { border-top: 5px solid var(--avx-orange); }
.tw .panel + .panel { background: var(--paper); border-top-color: var(--aviation); }
.tw .panel .eyebrow { margin-bottom: .45rem; }
.tw .sheet { margin: 24px auto 0; border-top: 6px solid var(--avx-orange); box-shadow: 0 3px 0 var(--sky-blue); }
.tw .sheet.narrow { max-width: 830px; }
.tw .field { display: grid; gap: .35rem; margin: 1.1rem 0; font-weight: 700; }
.tw .field input,.tw .field textarea,.tw .field select { display: block; width: 100%; min-width: 0; padding: .72rem .8rem; border: 1px solid var(--brand-grey); border-radius: 2px; background: var(--paper-bright); color: var(--aviation); font-weight: 400; }
.tw .field textarea { resize: vertical; }
.tw .report-links { list-style: none; margin: .75rem 0; padding: 0; }
.tw .report-links li { border-top: 1px solid var(--field-line); }
.tw .report-links a { display:flex; justify-content:space-between; gap:1rem; padding:.65rem 0; font-weight:700; }
.tw .report-links a::after { content:'↗' / ''; color:var(--aviation); }
.tw .subtle { text-decoration:underline; font-weight:700; }
.tw .rule { display:grid; grid-template-columns:42px minmax(0,1fr); gap:1rem; border-top:1px solid var(--field-line); padding:1.35rem 0; }
.tw .rule h2 { font-size:clamp(1.55rem,2.6vw,2.2rem); }
.tw .step-no { display:grid; place-content:center; width:38px; height:38px; background:var(--aviation); color:var(--sun); border-radius:50%; font:700 1.35rem var(--display),sans-serif; }
.tw .rule summary { cursor:pointer; text-decoration:underline; font-weight:700; }
.tw .rule-decisions dt,.tw .facts dt { font-weight:700; }
.tw .rule-decisions dd,.tw .facts dd { margin:0 0 .8rem; overflow-wrap:anywhere; }
.tw .price { font:700 2.8rem var(--display),sans-serif; color: var(--aviation); }
.tw .note,.tw .facts { background:var(--paper); border-left:4px solid var(--sun); padding:1rem 1.3rem; margin:1.3rem 0; }
.tw .note code { display:block; overflow-wrap:anywhere; margin:.65rem 0; }
.tw .workflow { display:grid; grid-template-columns:minmax(185px,.4fr) minmax(0,1fr); gap:clamp(24px,4vw,64px); align-items:start; }
.tw .workflow h1 { font-size:clamp(2rem,3.8vw,3.3rem); }
.tw .rail { background: var(--aviation); color:var(--paper-bright); padding:24px; border-top:3px solid var(--sun); }
.tw .rail .stage-dial { display:block; width:min(154px,100%); margin:0 auto 1.2rem; }
.tw .rail ol { list-style:none; counter-reset:stage; margin:0; padding:0; }
.tw .rail li { counter-increment:stage; display:flex; gap:.75rem; align-items:baseline; padding:.42rem 0; border-top:1px solid var(--brand-grey); font-size:.86rem; color:var(--sky-blue); }
.tw .rail li::before { content:counter(stage,decimal-leading-zero); color:var(--sky-blue); font: .74rem monospace; }
.tw .rail .current,.tw .rail .current::before { color:var(--sun); font-weight:700; }
.tw .rail li a { color:var(--paper-bright); text-decoration:underline; }
.tw fieldset { border:0; padding:0; margin:1.3rem 0; min-width:0; }
.tw legend { font-weight:700; margin-bottom:.65rem; }
.tw .choice { display:flex; align-items:center; gap:.75rem; border:1px solid var(--brand-grey); padding:.75rem .9rem; margin:.45rem 0; background:var(--paper-bright); cursor:pointer; }
.tw .choice:has(:checked) { background:var(--selected-paper); border-color:var(--aviation); box-shadow:inset 4px 0 var(--sun); }
.tw .choice input { accent-color:var(--aviation); flex-shrink:0; }
.tw .report { max-width:1060px; }
.tw .report-head { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:1.25rem; background:var(--aviation); padding:clamp(22px,3.2vw,44px); color:var(--paper-bright); border-bottom:5px solid var(--sun); }
.tw .report-head h1 { color:var(--paper-bright); }
.tw .report-instrument { text-align:center; }
.tw .report-instrument .stage-dial { display:block; width:clamp(95px,13vw,155px); margin:auto; }
.tw .report-instrument span,.tw .report-instrument strong { display:block; font-size:.85rem; }
.tw .report-part { padding:1.25rem 0 .25rem; border-bottom:1px solid var(--field-line); overflow-wrap:anywhere; }
.tw .report-part h3 { color:var(--aviation); }
.tw .foot { padding-block:25px; color:var(--aviation); font-size:.8rem; }
@media(max-width:800px) {
 .tw .frame { width:calc(100% - 32px); }
 .tw .intro { padding:24px; }
 .tw .hero { grid-template-columns:1fr 1fr; }
 .tw .poster { min-height:280px; }
 .tw .workflow { gap:20px; grid-template-columns:175px minmax(0,1fr); }
 .tw .rail { padding:15px; }
}
@media(max-width:640px) {
 .tw .frame { width:calc(100% - 24px); }
 .tw .mast-inner,.tw .mast nav { gap:6px 15px; }
 .tw .mast a { font-size:.77rem; }
 .tw .hero,.tw .home-grid,.tw .workflow { grid-template-columns:minmax(0,1fr); }
 .tw .hero { margin:14px 0 16px; }
 .tw .intro h1 { font-size:clamp(4.2rem,17vw,6.2rem); }
 .tw .hero-actions { gap:.7rem 1rem; }
 .tw .poster { min-height:0; aspect-ratio:2.05; border:0; border-top:3px solid var(--sun); }
 .tw .route-plate { right:9px; bottom:9px; padding:3px 8px 3px 3px; gap:6px; }
 .tw .route-plate .stage-dial { width:44px; height:44px; }
 .tw .route-plate strong { font-size:1.15rem; }
 .tw .home-grid { gap:16px; }
 .tw .sheet { margin-top:16px; padding:20px; }
 .tw .rail { display:flex; align-items:center; justify-content:space-between; padding:8px 16px; }
 .tw .rail .eyebrow { margin:0; }
 .tw .rail .stage-dial { width:62px; margin:0; }
 .tw .rail ol { display:none; }
 .tw .report-head { grid-template-columns: minmax(0,1fr); gap: .3rem; margin:-20px -20px 0; }
 .tw .report-instrument { display:flex; align-items:center; gap:10px; text-align:left; }
 .tw .report-instrument .stage-dial { width:58px; margin:0; }
 .tw .rule { grid-template-columns:30px 1fr; gap:.7rem; }
 .tw .step-no { width:29px; height:29px; }
}
