/* site.css
 * Generated by 05-Production/Editable-Build-Sources/build_site.py from
 * 02-Brand/tokens.json. Edit the tokens or that script, not this file.
 */
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/IBMPlexSans-Regular.woff2') format('woff2'),url('fonts/IBMPlexSans-Regular.ttf') format('truetype')}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/IBMPlexSans-Medium.woff2') format('woff2'),url('fonts/IBMPlexSans-Medium.ttf') format('truetype')}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/IBMPlexSans-SemiBold.woff2') format('woff2'),url('fonts/IBMPlexSans-SemiBold.ttf') format('truetype')}
@font-face{font-family:'Source Serif 4';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/SourceSerif4-SemiBold.woff2') format('woff2'),url('fonts/SourceSerif4-SemiBold.ttf') format('truetype')}

:root{
/* Colours, section 2 of the design spec. */
  --paper:#F5F8F8;
  --surface:#FFFFFF;
  --mist:#E6EEEF;
  --ink:#092F37;
  --ink-muted:#3F5A60;
  --ink-surface:#0F3C46;
  --primary:#0E5A66;
  --primary-hover:#0B4852;
  --light-teal:#9FCBD1;
  --accent:#D84B3C;
  --accent-text:#C8412F;
  --accent-on-dark:#F4A79B;
  --line:#C9D6D8;
  --success:#1F7A4D;
  --warning:#9A5B00;
  --warning-tint:#FBF1DF;
  --parchment:#F3EEE4;
  --disabled-text:#52666B;

/* Type, section 3. */
  --font-serif:'Source Serif 4', Georgia, serif;
  --font-sans:'IBM Plex Sans', system-ui, sans-serif;
  --display-size:56px;
  --display-line:60px;
  --display-track:-0.01em;
  --h1-size:48px;
  --h1-line:53px;
  --h1-track:-0.01em;
  --h2-size:34px;
  --h2-line:41px;
  --h2-track:normal;
  --h3-size:22px;
  --h3-line:29px;
  --h3-track:normal;
  --lead-size:20px;
  --lead-line:30px;
  --lead-track:normal;
  --body-size:17px;
  --body-line:27px;
  --body-track:normal;
  --small-size:14px;
  --small-line:21px;
  --small-track:normal;
  --caption-size:13px;
  --caption-line:18px;
  --caption-track:normal;
  --eyebrow-size:12px;
  --eyebrow-line:12px;
  --eyebrow-track:0.14em;
  --nav-size:15px;
  --nav-line:15px;
  --nav-track:normal;
  --button-size:16px;
  --button-line:16px;
  --button-track:normal;
  --eyebrow-rule-w:20px;
  --eyebrow-rule-h:2px;
  --eyebrow-rule-gap:10px;

/* Spacing, radius, shadow and rules, section 4. */
  --space-4:4px;
  --space-8:8px;
  --space-12:12px;
  --space-16:16px;
  --space-24:24px;
  --space-32:32px;
  --space-48:48px;
  --space-64:64px;
  --space-96:96px;
  --space-128:128px;
  --radius-plate:4px;
  --radius-input:4px;
  --radius-qr-tile:4px;
  --radius-button:6px;
  --radius-tag:6px;
  --radius-warning-block:6px;
  --radius-card:8px;
  --radius-dark-panel:8px;
  --radius-placeholder-photo:8px;
  --radius-circle:50%;
  --shadow-floating:0 1px 2px rgba(9,47,55,.06), 0 8px 24px rgba(9,47,55,.10);
  --rule-w:1px;
  --rule-heading-w:2px;
  --rule-nav-w:2px;
  --rule-nav-offset:8px;
  --link-underline:1.5px;
  --link-offset:4px;
  --focus-w:2px;
  --focus-offset:2px;

/* Page frame. */
  --max-width:1200px;
  --gutter:64px;
  --grid-gap:32px;
  --col-gap:48px;
  --section-pad:64px;
  --section-pad-tinted:64px;
  --header-h:100px;
  --nav-gap:36px;
  --logo-h:52px;
  --logo-h-footer:44px;
  --notice-py:10px;
  --notice-px:24px;

/* Buttons and cards, section 5. */
  --button-h:48px;
  --button-px:24px;
  --button-border-w:1.5px;
  --button-stack-gap:10px;
  --button-inline-gap:12px;
  --button-active-inset:inset 0 1px 0 rgba(0,0,0,.2);
  --tap:44px;
  --card-pad:40px;
  --card-gap:20px;
  --card-meta-pad:16px;
  --tag-h:36px;
  --tag-px:14px;
  --tag-size:12px;
  --tag-track:0.1em;
  --step-circle:48px;
  --step-numeral:18px;
  --step-gap:32px;
  --step-connector-y:23px;
  --step-connector-w:2px;
  --clist-cols:64px 1fr 120px;
  --clist-gap:24px;
  --clist-pad:24px;
  --clist-row-gap:10px;
  --clist-col-gap:32px;

/* Plates, section 6. */
  --plate-offset:40px;
  --plate-caption-pad:10px;
  --plate-mask:radial-gradient(ellipse 100% 100% at 50% 50%, #000 58%, transparent 100%);
}

@media (max-width:900px){:root{
  --display-size:40px;
  --display-line:44px;
  --h1-size:34px;
  --h1-line:38px;
  --h2-size:28px;
  --h2-line:34px;
  --h3-size:20px;
  --h3-line:26px;
  --lead-size:18px;
  --lead-line:27px;
  --body-size:16px;
  --body-line:26px;
  --gutter:24px;
  --col-gap:24px;
  --section-pad:40px;
  --section-pad-tinted:40px;
  --header-h:80px;
  --logo-h:38px;
  --logo-h-footer:38px;
  --card-pad:24px;
  --card-gap:14px;
  --step-circle:40px;
}}

/* Base */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);
  font:400 var(--body-size)/var(--body-line) var(--font-sans);
  -webkit-font-smoothing:antialiased}
img{display:block;max-width:100%;height:auto}
h1,h2,h3,p,ul,ol,figure,dl{margin:0}
ul,ol{padding:0;list-style:none}
strong{font-weight:600}
a{color:var(--primary);text-decoration-thickness:var(--link-underline);
  text-underline-offset:var(--link-offset)}
a:hover{color:var(--ink)}
:is(a,button,summary,input,[tabindex]):focus-visible{outline:var(--focus-w) solid var(--primary);
  outline-offset:var(--focus-offset);border-radius:var(--radius-input)}
@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms !important;
  transition-duration:.01ms !important;scroll-behavior:auto !important}}

/* Type */
h1,.h1{font:600 var(--h1-size)/var(--h1-line) var(--font-serif);
  letter-spacing:var(--h1-track);color:var(--ink);text-wrap:pretty}
.display{font:600 var(--display-size)/var(--display-line) var(--font-serif);
  letter-spacing:var(--display-track)}
h2,.h2{font:600 var(--h2-size)/var(--h2-line) var(--font-serif);color:var(--ink);text-wrap:pretty}
h3,.h3{font:600 var(--h3-size)/var(--h3-line) var(--font-sans);color:var(--ink)}
:is(h1,h2,h3) em{font-style:normal;color:var(--primary)}
.lead{font:400 var(--lead-size)/var(--lead-line) var(--font-sans);color:var(--ink-muted);
  text-wrap:pretty}
p{text-wrap:pretty}
.small,.micro{font:400 var(--small-size)/var(--small-line) var(--font-sans);color:var(--ink-muted)}
.caption{font:400 var(--caption-size)/var(--caption-line) var(--font-sans);color:var(--ink-muted)}
.text-link{display:inline-flex;align-items:center;min-height:var(--tap);
  font-weight:600;align-self:flex-start}

/* Eyebrow: a 20 x 2 accent rule, then the label. Numbered eyebrows drop the rule. */
.eyebrow{display:flex;align-items:center;gap:var(--eyebrow-rule-gap);
  font:600 var(--eyebrow-size)/var(--eyebrow-line) var(--font-sans);
  letter-spacing:var(--eyebrow-track);text-transform:uppercase;color:var(--primary)}
.eyebrow::before{content:"";flex:none;width:var(--eyebrow-rule-w);
  height:var(--eyebrow-rule-h);background:var(--accent)}
.eyebrow.numbered::before{content:none}

/* Page frame */
.wrap{max-width:calc(var(--max-width) + var(--gutter) * 2);
  margin-inline:auto;padding-inline:var(--gutter)}
.section{padding-block:var(--section-pad)}
.section.tight{padding-top:0}
.section + .section{padding-top:0}
.acronym{max-width:65ch;font:400 var(--nav-size)/var(--small-line) var(--font-sans);color:var(--primary)}
.instructor-line{font:400 var(--small-size)/var(--small-line) var(--font-sans)}
.instructor-line a{font-weight:600}
.home-hero .acronym{max-width:none;font-size:clamp(24px,2.5vw,36px);line-height:1.3;margin-bottom:var(--space-32);text-wrap:balance}
.instructor-line{display:grid;gap:var(--space-8);font-size:18px;line-height:1.5}
.instructor-line .experience{font-size:clamp(20px,1.8vw,24px);line-height:1.35;font-weight:600;color:var(--primary)}
.workshop-photo img{display:block;width:100%;height:auto;border-radius:var(--radius-plate)}
.home-hero .plate{width:100%;max-width:440px;justify-self:end}
[id]{scroll-margin-top:var(--space-24)}
.conditions li{display:flex;flex-direction:column;gap:var(--space-12)}
.band{background:var(--mist);padding-block:var(--section-pad-tinted)}
.band.hero{padding-block:var(--section-pad)}
.band .lead,.band p{color:var(--ink)}
.stack{display:flex;flex-direction:column;gap:var(--space-32)}
.copy{display:flex;flex-direction:column;gap:var(--space-24);align-items:flex-start}
.copy>*{max-width:100%}
.copy .lead{max-width:600px}
.copy .actions{margin-top:var(--space-8)}
.g-7-5{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:var(--col-gap);align-items:center}
.g-5-7{display:grid;grid-template-columns:5fr 7fr;gap:var(--col-gap);align-items:start}
.g-5-7.baseline{align-items:end}
.g-2{display:grid;grid-template-columns:1fr 1fr;gap:var(--grid-gap)}
.g-3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--grid-gap)}

/* Skip link and announcement bar */
.skip{position:absolute;left:-9999px;top:0;z-index:20;background:var(--surface);
  color:var(--primary);font-weight:600;padding:var(--space-12) var(--space-16);
  border-radius:var(--radius-button);box-shadow:var(--shadow-floating)}
.skip:focus{left:var(--space-16);top:var(--space-16)}
.notice{background:var(--ink);color:var(--paper);text-align:center;
  padding:var(--notice-py) var(--notice-px);
  font:400 var(--small-size)/var(--small-line) var(--font-sans)}

/* Header */
.site-header{background:var(--paper);border-bottom:var(--rule-w) solid var(--line);
  position:relative;z-index:10}
.header-inner{height:var(--header-h);display:flex;align-items:center;
  justify-content:space-between;gap:var(--space-24)}
.brand{display:inline-flex;align-items:center;min-height:var(--tap);flex-shrink:0}
.brand img{height:var(--logo-h);width:auto}
#navigation{display:flex;gap:var(--nav-gap);align-items:center}
#navigation a{position:relative;display:inline-flex;align-items:center;
  min-height:var(--tap);text-decoration:none;color:var(--ink-muted);
  font:500 var(--nav-size)/var(--nav-line) var(--font-sans)}
#navigation a:hover{color:var(--ink)}
#navigation a[aria-current="page"]{color:var(--ink)}
#navigation a[aria-current="page"]::after{content:"";position:absolute;left:0;right:0;
  top:calc(50% + (var(--nav-line) / 2) + var(--rule-nav-offset));
  height:var(--rule-nav-w);background:var(--accent)}
.menu-toggle{display:none}

@media (min-width:901px) and (max-width:1200px){
  :root{--display-size:48px;--display-line:52px;--h1-size:40px;--h1-line:44px;--gutter:32px;--col-gap:32px}
  #navigation{gap:var(--space-16)}
  .header-inner{padding-inline:var(--space-24)}
}

/* Buttons */
.button{display:inline-flex;align-items:center;justify-content:center;
  min-height:var(--button-h);padding:var(--space-12) var(--button-px);
  border:0;border-radius:var(--radius-button);background:var(--primary);color:var(--surface);
  font:600 var(--button-size)/1.3 var(--font-sans);
  text-decoration:none;cursor:pointer;text-align:center}
.button:hover{background:var(--primary-hover);color:var(--surface)}
.button:active{background:var(--primary-hover);box-shadow:var(--button-active-inset)}
.button.secondary{background:transparent;color:var(--primary);
  border:var(--button-border-w) solid var(--primary)}
.button.secondary:hover{background:var(--mist);color:var(--primary)}
.on-ink .button{background:var(--paper);color:var(--ink)}
.on-ink .button:hover{background:var(--mist);color:var(--ink)}
.on-ink .button.secondary{background:transparent;color:var(--paper);border-color:var(--paper)}
.on-ink .button.secondary:hover{background:var(--ink-surface);color:var(--paper)}
.button[disabled]{background:var(--mist);color:var(--disabled-text);border:0;cursor:default}
.band .button[disabled]{background:var(--surface)}
.actions{display:flex;flex-wrap:wrap;gap:var(--button-inline-gap);align-items:center}
.actions .note{font:400 var(--small-size)/var(--small-line) var(--font-sans);color:var(--ink-muted)}
.tag{display:inline-flex;align-items:center;align-self:flex-start;height:var(--tag-h);
  padding:0 var(--tag-px);border-radius:var(--radius-tag);background:var(--warning-tint);
  color:var(--warning);font:600 var(--tag-size)/var(--tag-size) var(--font-sans);
  letter-spacing:var(--tag-track);text-transform:uppercase}

/* Cards */
.card{background:var(--surface);border:var(--rule-w) solid var(--line);
  border-radius:var(--radius-card);padding:min(var(--card-pad),var(--space-32));
  display:flex;flex-direction:column;gap:var(--card-gap)}
.card .button{align-self:flex-start}
.card h2{font:600 var(--h3-size)/var(--h3-line) var(--font-sans)}
.card .actions:last-child,.card > .button:last-child,.card > .text-link:last-child{margin-top:auto}
.meta{display:flex;flex-wrap:wrap;gap:var(--space-24);
  border-top:var(--rule-w) solid var(--line);padding-top:var(--card-meta-pad);
  font:400 var(--small-size)/var(--small-line) var(--font-sans);color:var(--ink-muted)}
.meta strong{color:var(--ink)}
.dots li{display:flex;gap:var(--space-12);padding:var(--space-12) 0;
  border-bottom:var(--rule-w) solid var(--line)}
.dots li:last-child{border-bottom:0}
.dots li::before{content:"";flex:none;width:var(--space-8);height:var(--space-8);
  border-radius:var(--radius-circle);background:var(--accent);
  margin-top:calc((var(--body-line) - var(--space-8)) / 2)}
.placeholder{border:var(--button-border-w) dashed var(--line);border-radius:var(--radius-tag);
  padding:var(--space-16) var(--space-24);
  font:400 var(--small-size)/var(--small-line) var(--font-sans);color:var(--ink-muted)}

/* Plates. Crop, scale, soft edge and caption only. */
.plate{display:flex;flex-direction:column;gap:var(--plate-caption-pad)}
.plate .frame{border-radius:var(--radius-plate);overflow:hidden}
.plate .frame img{width:100%;height:100%;object-fit:cover}
.frame.r4x5{aspect-ratio:4 / 5}
.frame.r3x4{aspect-ratio:3 / 4}
.plate figcaption{border-top:var(--rule-w) solid var(--line);
  padding-top:var(--plate-caption-pad);
  font:400 var(--caption-size)/var(--caption-line) var(--font-sans);color:var(--ink-muted)}
.plate.soft .frame{-webkit-mask-image:var(--plate-mask);mask-image:var(--plate-mask)}
.plate-pair{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-16)}
.plate-pair .plate{mix-blend-mode:multiply}
.plate-pair img{filter:brightness(1.05)}
.home-hero .plate{mix-blend-mode:multiply}

/* Instructor band */
.instructor{display:grid;grid-template-columns:280px 1fr;gap:var(--col-gap);align-items:center}
.photo{aspect-ratio:4 / 5;border-radius:var(--radius-placeholder-photo);background:var(--line);
  display:flex;align-items:center;justify-content:center;text-align:center;
  padding:var(--space-24);
  font:500 var(--small-size)/var(--small-line) var(--font-sans);color:var(--ink-muted)}

/* Curriculum stepper, home */
.stepper{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:var(--step-gap)}
.stepper::before{content:"";position:absolute;top:var(--step-connector-y);
  left:calc(var(--step-circle) / 2);right:calc(var(--step-circle) / 2);
  height:var(--step-connector-w);background:var(--line)}
.step .body{display:flex;flex-direction:column;gap:var(--space-12)}
.step{position:relative;display:flex;flex-direction:column;gap:var(--space-16)}
.step .num{flex:none;width:var(--step-circle);height:var(--step-circle);
  border-radius:var(--radius-circle);background:var(--surface);
  border:var(--step-connector-w) solid var(--primary);color:var(--primary);
  display:flex;align-items:center;justify-content:center;
  font:600 var(--step-numeral)/1 var(--font-serif)}
.step.current .num{background:var(--primary);color:var(--surface)}

/* Curriculum list, course page. Levels stay open to disclosure so every region
   name on the page is still reachable. */
.clist{border-top:var(--rule-heading-w) solid var(--ink)}
.clist details{border-bottom:var(--rule-w) solid var(--line)}
.clist summary{display:grid;grid-template-columns:minmax(0,1fr) 120px var(--space-24);gap:var(--clist-gap);
  align-items:center;padding-block:var(--clist-pad);cursor:pointer;list-style:none}
.clist summary::-webkit-details-marker{display:none}
.clist summary:hover h3{color:var(--primary)}
.clist summary::after{content:"+";text-align:right;color:var(--primary);font-weight:600}
.clist details[open] summary::after{content:"\2212"}
.clist .count{text-align:right;
  font:400 var(--small-size)/var(--small-line) var(--font-sans);color:var(--ink-muted)}
.clist .lessons{display:grid;grid-template-columns:1fr 1fr;
  gap:var(--clist-row-gap) var(--clist-col-gap);
  padding:0 0 var(--clist-pad);
  font:400 var(--body-size)/var(--body-line) var(--font-sans)}
.clist .lessons li{display:flex;gap:var(--space-12)}
.clist .capstone{padding:0 0 var(--clist-pad)}

/* Clinical education infographics */
.source-link{font:400 var(--small-size)/var(--small-line) var(--font-sans)}
.availability-note{font:500 var(--small-size)/var(--small-line) var(--font-sans);color:var(--primary)}
.pain-overview{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,6fr);gap:var(--space-64);align-items:center}
.prevalence{display:flex;flex-direction:column;gap:var(--space-16);padding:var(--space-24);background:var(--mist);border-radius:var(--radius-card)}
.prevalence img{width:100%;max-width:320px;align-self:center}
.pain-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-32);padding-block:var(--space-24);border-block:var(--rule-w) solid var(--line)}
.pain-stage{display:flex;flex-direction:column;gap:var(--space-12)}
.pain-stage img{width:100%;max-width:280px;align-self:center}
.pain-stage p,.procedure-path p{font:400 var(--small-size)/var(--small-line) var(--font-sans)}
.procedure-path{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-24);counter-reset:path}
.procedure-path li{position:relative;display:flex;flex-direction:column;gap:var(--space-12)}
.path-dot{display:flex;align-items:center;justify-content:center;width:var(--space-48);height:var(--space-48);background:var(--primary);color:var(--paper);border-radius:50%;font-weight:600}
.procedure-path li:not(:last-child)::after{content:"";position:absolute;top:var(--space-24);left:var(--space-64);width:calc(100% - var(--space-48));height:var(--rule-heading-w);background:var(--line)}
@media (max-width:900px){
 .pain-overview{grid-template-columns:1fr;gap:var(--space-32)}
 .pain-flow{grid-template-columns:1fr;gap:var(--space-32)}
 .pain-stage{display:grid;grid-template-columns:96px minmax(0,1fr);gap:var(--space-8) var(--space-16);align-items:start}
 .pain-stage img{grid-row:span 2;align-self:center}
 .pain-stage h3{font-size:var(--h3-size)}
 .procedure-path{grid-template-columns:1fr 1fr}
 .procedure-path li::after{display:none}
}
@media (max-width:480px){
 .procedure-path{grid-template-columns:1fr}
 .procedure-path li{display:grid;grid-template-columns:var(--space-48) minmax(0,1fr);gap:var(--space-8) var(--space-16)}
 .path-dot{grid-row:span 2}
}

/* Facts row, workshop page */
.facts{display:flex;flex-wrap:wrap;gap:var(--space-48)}
.facts div{display:flex;flex-direction:column;gap:var(--space-4)}
.facts strong{font:600 var(--h2-size)/var(--h2-line) var(--font-serif);color:var(--ink)}
.facts span{font:400 var(--small-size)/var(--small-line) var(--font-sans);color:var(--ink-muted)}

/* Question and answer list, about page */
.faq details{border-bottom:var(--rule-w) solid var(--line)}
.faq summary{display:flex;justify-content:space-between;gap:var(--space-24);
  padding-block:var(--clist-pad);cursor:pointer;list-style:none;
  font:600 var(--h3-size)/var(--h3-line) var(--font-sans);color:var(--ink)}
.faq summary::-webkit-details-marker{display:none}
.faq summary:hover{color:var(--primary)}
.faq summary::after{content:"+";flex:none;color:var(--primary);font-weight:600}
.faq details[open] summary::after{content:"\2212"}
.faq details p{padding-bottom:var(--clist-pad);max-width:68ch;color:var(--ink)}
.policy h2{margin-top:var(--space-48)}
.policy h2:first-child{margin-top:0}
.policy p{max-width:74ch;margin-top:var(--space-16)}

/* Dark closing panel */
.closing .ink-panel{background:var(--ink);color:var(--paper);
  border-radius:var(--radius-dark-panel);padding:var(--section-pad-tinted);
  display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:var(--col-gap);align-items:center}
.on-ink{color:var(--paper)}
.on-ink .eyebrow{color:var(--light-teal)}
.on-ink :is(h1,h2,h3){color:var(--paper)}
.on-ink :is(h1,h2,h3) em{color:var(--light-teal)}
.on-ink .lead,.on-ink p{color:var(--paper)}

/* Footer */
.site-footer{background:var(--ink);color:var(--paper);
  padding-block:var(--section-pad) var(--space-32)}
.footer-grid{display:grid;grid-template-columns:5fr 7fr;gap:var(--col-gap)}
.footer-brand{display:flex;flex-direction:column;align-items:flex-start;
  gap:var(--card-gap)}
.footer-brand img{height:var(--logo-h-footer);width:auto}
.footer-brand p{color:var(--light-teal);max-width:360px}
.site-footer p,.site-footer a,.site-footer small{
  font:400 var(--small-size)/var(--small-line) var(--font-sans)}
.footer-text{display:flex;flex-direction:column;align-items:flex-start;
  gap:var(--space-12);color:var(--paper)}
.site-footer a{display:inline-flex;align-items:center;min-height:var(--tap);
  color:var(--paper);font-weight:600;text-decoration:underline}
.site-footer a:hover{color:var(--light-teal)}
.site-footer small{display:block;margin-top:var(--space-32);
  border-top:var(--rule-w) solid var(--ink-surface);padding-top:var(--space-24);
  color:var(--light-teal)}

/* Mobile */
@media (max-width:900px){
  .g-7-5,.g-5-7,.g-2,.g-3,.instructor,.footer-grid,.closing .ink-panel,
  .stepper,.clist .lessons{grid-template-columns:1fr}
  .instructor .photo{width:120px}
  .menu-toggle{display:inline-flex;align-items:center;justify-content:center;
    height:var(--tap);min-height:var(--tap);padding:0 var(--space-16);cursor:pointer;
    background:transparent;color:var(--primary);
    border:var(--button-border-w) solid var(--primary);border-radius:var(--radius-button);
    font:600 var(--nav-size)/1 var(--font-sans)}
  #navigation{display:none;position:absolute;left:0;right:0;top:100%;
    flex-direction:column;align-items:stretch;gap:0;background:var(--surface);
    border-bottom:var(--rule-w) solid var(--line);box-shadow:var(--shadow-floating);
    padding:var(--space-8) var(--gutter) var(--space-16)}
  #navigation.open{display:flex}
  #navigation a{min-height:var(--tap);border-bottom:var(--rule-w) solid var(--line)}
  #navigation a:last-child{border-bottom:0}
  #navigation a[aria-current="page"]::after{right:auto;width:var(--space-32)}
  .copy{align-items:stretch}
  .home-hero{padding-block:var(--space-32)}
  .home-hero .copy{gap:var(--space-16)}
  .home-hero .copy .actions{margin-top:0}
  .home-hero .plate{max-width:440px;justify-self:center}
  .stack{gap:var(--space-24)}
  .eyebrow{line-height:1.5}
  .closing .plate{max-width:320px;justify-self:center}
  .actions{flex-direction:column;align-items:stretch;gap:var(--button-stack-gap)}
  .actions .button{width:100%}
  .card .button,.text-link{align-self:stretch}
  .stepper{gap:var(--space-24)}
  .stepper::before{content:none}
  .step{flex-direction:row;gap:var(--space-16);align-items:flex-start;
    padding-bottom:var(--space-24);border-bottom:var(--rule-w) solid var(--line)}
  .step:last-child{border-bottom:0;padding-bottom:0}
  .step .body{display:flex;flex-direction:column;gap:var(--space-8)}
  .clist summary{grid-template-columns:minmax(0,1fr) var(--space-24);
    grid-template-areas:"title toggle" "count .";gap:var(--space-12)}
  .clist summary::after{grid-area:toggle}
  .clist summary h3{grid-area:title}
  .clist .count{grid-area:count;text-align:left}
  .clist .lessons,.clist .capstone{padding-inline:0}
  .facts{gap:var(--space-24)}
  .closing{padding-block:0}
  .closing .wrap{max-width:none;padding-inline:0}
  .closing .ink-panel{border-radius:0;padding:var(--section-pad) var(--gutter)}
}


.main-site-return{padding-top:18px;padding-bottom:0}.main-site-return .button{min-height:44px;font-size:15px}
