/* Dr. Barrett Boody — site stylesheet. Tokens documented in docs/DESIGN-BRIEF.md §3. */
:root{--ink:#0E2A25;--ink-2:#14362F;--ink-3:#092019;--brass:#C28A45;--brass-2:#E0B77A;--brass-dark:#8F6238;--sage:#7FA99B;--chalk:#F4F6F2;--paper:#fff;--copy:#33403C;--dark-copy:#D9E3DE;--dark-muted:#9DB4AA;--line:#DCE3DF}
html{scroll-behavior:smooth}
body{font-family:'Manrope',system-ui,sans-serif;color:var(--copy);background:var(--paper);-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:'Newsreader',Georgia,serif;font-weight:500;color:var(--ink);letter-spacing:-.01em}
h1{font-weight:500}
.on-dark h1,.on-dark h2,.on-dark h3,.on-dark h4{color:#fff}
.serif{font-family:'Newsreader',Georgia,serif}
.serif-i{font-family:'Newsreader',Georgia,serif;font-style:italic;font-weight:400}

/* Eyebrow: short brass rule + sentence-case label */
.eyebrow{display:inline-flex;align-items:center;gap:.65rem;font-size:.8rem;font-weight:600;color:var(--brass-dark);letter-spacing:.01em}
.eyebrow::before{content:"";width:1.6rem;height:2px;background:var(--brass);border-radius:2px}
.on-dark .eyebrow{color:var(--brass-2)}

/* Primary actions: shared brass glass, with a reflective face and inset edges. */
:root{--button-glow:0 0 8px rgba(224,183,122,.14),0 0 22px rgba(194,138,69,.18);--button-glow-hover:0 0 10px rgba(224,183,122,.24),0 0 28px rgba(194,138,69,.28)}
.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:44px;padding:.85rem 1.5rem;border:1px solid rgba(143,98,56,.48);border-radius:.6rem;background-color:rgba(210,162,95,.92);background-image:linear-gradient(115deg,transparent 28%,rgba(255,255,255,.5) 46%,rgba(255,255,255,.1) 54%,transparent 68%),linear-gradient(165deg,rgba(255,255,255,.32),rgba(255,255,255,.08) 48%,rgba(143,98,56,.12) 100%);background-size:250% 100%,100% 100%;background-position:65% 0,0 0;background-repeat:no-repeat;-webkit-backdrop-filter:blur(18px) saturate(140%);backdrop-filter:blur(18px) saturate(140%);color:var(--ink);font-weight:700;line-height:1.2;box-shadow:inset 0 1px 0 rgba(255,255,255,.72),inset 1px 0 0 rgba(255,255,255,.24),inset 0 -1px 0 rgba(143,98,56,.25),0 5px 14px rgba(14,42,37,.15),0 0 18px rgba(194,138,69,.12);transition:background-position .7s ease,border-color .2s,transform .2s,box-shadow .25s}
.btn-primary:is(:hover,:focus-visible){background-position:0 0,0 0;border-color:var(--brass-dark);box-shadow:inset 0 1px 0 rgba(255,255,255,.85),inset 1px 0 0 rgba(255,255,255,.35),inset 0 -1px 0 rgba(143,98,56,.2),0 8px 20px rgba(14,42,37,.2),0 0 22px rgba(194,138,69,.18);transform:translateY(-2px)}
.btn-primary:active{transform:translateY(0)}
@media(prefers-reduced-motion:reduce){.btn-primary{transition:none}.btn-primary:is(:hover,:focus-visible){transform:none}}
.btn-primary:focus-visible{outline:3px solid var(--brass-dark);outline-offset:3px}
.on-dark .btn-primary:focus-visible{outline-color:var(--brass-2)}
.btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:1px solid rgba(217,227,222,.35);color:var(--dark-copy);font-weight:600;padding:.85rem 1.5rem;border-radius:.6rem;transition:border-color .2s,color .2s;line-height:1.2}
.btn-ghost:hover{border-color:var(--brass-2);color:#fff}
.btn-ghost--light{border-color:var(--ink);color:var(--ink)}
.btn-ghost--light:hover{border-color:var(--brass-dark);color:var(--brass-dark)}
.btn-ghost:focus-visible{outline:3px solid rgba(201,151,58,.45);outline-offset:3px}
.link-arrow{display:inline-flex;align-items:center;gap:.5rem;font-weight:600;color:var(--ink);transition:color .2s}
.link-arrow svg{width:1rem;height:1rem;color:var(--brass);transition:transform .2s}
.link-arrow:hover{color:var(--brass-dark)}.link-arrow:hover svg{transform:translateX(3px)}
.on-dark .link-arrow{color:#fff}.on-dark .link-arrow:hover{color:var(--brass-2)}

/* Secondary actions: frosted glass with the same reflective face on each surface. */
.btn-secondary,.footer-offices>a{display:inline-flex;align-items:center;justify-content:space-between;gap:1rem;align-self:flex-start;min-height:46px;max-width:100%;padding:.7rem 1rem;border:1px solid rgba(14,42,37,.22);border-radius:.65rem;background-color:rgba(244,246,242,.85);background-image:linear-gradient(115deg,transparent 28%,rgba(255,255,255,.55) 46%,rgba(255,255,255,.08) 54%,transparent 68%),linear-gradient(155deg,rgba(255,255,255,.4),rgba(255,255,255,.04) 60%);background-size:250% 100%,100% 100%;background-position:65% 0,0 0;background-repeat:no-repeat;-webkit-backdrop-filter:blur(18px) saturate(140%);backdrop-filter:blur(18px) saturate(140%);color:var(--ink);box-shadow:inset 0 1px 0 rgba(255,255,255,.8),inset 1px 0 0 rgba(255,255,255,.4),0 5px 14px rgba(14,42,37,.12);font-size:.875rem;font-weight:600;line-height:1.4;text-decoration:none;transition:background-position .7s ease,border-color .2s,box-shadow .2s,transform .2s}
.btn-secondary>span,.btn-secondary>svg,.footer-offices>a>span{flex-shrink:0;color:var(--brass-dark);transition:transform .2s}
.btn-secondary>svg{width:1rem;height:1rem}
.btn-secondary>span,.footer-offices>a>span{font-size:1.1rem;line-height:1}
.btn-secondary:is(:hover,:focus-visible),.footer-offices>a:is(:hover,:focus-visible){border-color:var(--brass-dark);background-position:0 0,0 0;box-shadow:inset 0 1px 0 rgba(255,255,255,.85),0 9px 20px rgba(14,42,37,.18);transform:translateY(-2px);text-decoration:none}
.btn-secondary:is(:hover,:focus-visible)>span,.btn-secondary:is(:hover,:focus-visible)>svg,.footer-offices>a:is(:hover,:focus-visible)>span{transform:translateX(3px)}
.btn-secondary:focus-visible,.footer-offices>a:focus-visible{outline:3px solid var(--brass-dark);outline-offset:3px}
.on-dark .btn-secondary{border-color:rgba(224,183,122,.55);background-color:rgba(217,227,222,.14);background-image:linear-gradient(115deg,transparent 28%,rgba(255,255,255,.22) 46%,rgba(255,255,255,.035) 54%,transparent 68%),linear-gradient(155deg,rgba(255,255,255,.14),rgba(255,255,255,.015) 60%);color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.38),inset 1px 0 0 rgba(255,255,255,.15),inset 0 -1px 0 rgba(0,0,0,.12),0 5px 16px rgba(0,0,0,.18)}
.on-dark .btn-secondary>span,.on-dark .btn-secondary>svg{color:var(--brass-2)}
.on-dark .btn-secondary:is(:hover,:focus-visible){border-color:var(--brass-2);box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 9px 22px rgba(0,0,0,.24),0 0 15px rgba(224,183,122,.1)}
.on-dark .btn-secondary:focus-visible{outline-color:var(--brass-2)}
@media(prefers-reduced-motion:reduce){.btn-secondary,.btn-secondary>span,.btn-secondary>svg,.footer-offices>a,.footer-offices>a>span{transition:none}.btn-secondary:is(:hover,:focus-visible),.btn-secondary:is(:hover,:focus-visible)>span,.btn-secondary:is(:hover,:focus-visible)>svg,.footer-offices>a:is(:hover,:focus-visible),.footer-offices>a:is(:hover,:focus-visible)>span{transform:none}}

/* Cards */
.card-light{background:#fff;border:1px solid var(--line);border-radius:1rem}
.card-dark{background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.13);border-radius:1rem}
.card-dark--hot{border-color:rgba(201,151,58,.5)}
.shadow-soft{box-shadow:0 18px 44px rgba(14,42,37,.12)}

/* Nav */
.navdrop>div{visibility:hidden;opacity:0;transition:opacity .15s}
.navdrop:hover>div,.navdrop:focus-within>div{visibility:visible;opacity:1}
.nav-sep{width:1px;height:1.1rem;background:rgba(201,151,58,.5)}
/* Dropdown panels: title plus one-line description per item; follow the header's white/green state */
.navdrop-wrap{width:23rem}
.navdrop-panel{padding:.9rem .6rem .6rem;border:1px solid rgba(255,255,255,.15);border-radius:.9rem;background:#14362F;box-shadow:0 24px 60px rgba(0,0,0,.35)}
.navdrop-h{margin:0 .8rem .45rem;font-size:.72rem;font-weight:700;color:var(--brass-2)}
.navdrop-h--sub{margin-top:.5rem;padding-top:.8rem;border-top:1px solid rgba(255,255,255,.12)}
.site-header.is-top .navdrop-h--sub{border-top-color:var(--line)}
.navdrop-item{display:block;padding:.6rem .8rem;border-radius:.6rem;text-decoration:none;transition:background .15s}
.navdrop-item b{display:block;font-size:.92rem;font-weight:600;line-height:1.3;color:#fff}
.navdrop-item small{display:block;margin-top:.1rem;font-size:.76rem;line-height:1.4;color:var(--dark-muted)}
.navdrop-item:hover,.navdrop-item:focus-visible{background:rgba(255,255,255,.08);outline:none}
.navdrop-item--all{margin-top:.35rem;border-top:1px solid rgba(255,255,255,.12);border-radius:0 0 .6rem .6rem;padding-top:.85rem}
.navdrop-item--all b{color:var(--brass-2)}
.site-header.is-top .navdrop-panel{border-color:var(--line);background:#fff;box-shadow:0 24px 60px rgba(14,42,37,.16)}
.site-header.is-top .navdrop-h{color:var(--brass-dark)}
.site-header.is-top .navdrop-item b{color:var(--ink)}
.site-header.is-top .navdrop-item small{color:var(--copy)}
.site-header.is-top .navdrop-item:hover,.site-header.is-top .navdrop-item:focus-visible{background:var(--chalk)}
.site-header.is-top .navdrop-item--all{border-top-color:var(--line)}
.site-header.is-top .navdrop-item--all b{color:var(--brass-dark)}

/* Reveal on scroll */
.reveal{opacity:0;transform:translateY(12px);transition:opacity .6s ease,transform .6s ease}
.reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}

/* Dark section texture */
.grain{position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(rgba(255,255,255,.09) 1px,transparent 1px);background-size:22px 22px;-webkit-mask-image:radial-gradient(ellipse 70% 70% at 60% 40%,#000 20%,transparent 100%);mask-image:radial-gradient(ellipse 70% 70% at 60% 40%,#000 20%,transparent 100%)}
.glow{position:absolute;border-radius:9999px;pointer-events:none;filter:blur(40px);background:radial-gradient(circle,rgba(201,151,58,.22),transparent 68%)}
.glow--sage{background:radial-gradient(circle,rgba(127,169,155,.28),transparent 68%)}

/* Research section photo: the Carmel campus ghosted into the evergreen field.
   Greyscaled and blended on luminosity so it takes the brand colour instead of
   its own blue sky, then masked back from the left column so the quote and copy
   sit on a clean field. Sits under the grain and the glow. */
.research-photo{position:absolute;inset:0;pointer-events:none;background:url('/assets/img/isg-carmel-campus-hero.jpg') 62% 34%/150% auto no-repeat;filter:grayscale(1) contrast(1.06) brightness(1.1);opacity:.15;mix-blend-mode:luminosity;-webkit-mask-image:linear-gradient(100deg,transparent 8%,rgba(0,0,0,.4) 38%,#000 64%),linear-gradient(to bottom,transparent 0,#000 18%,#000 82%,transparent 100%);mask-image:linear-gradient(100deg,transparent 8%,rgba(0,0,0,.4) 38%,#000 64%),linear-gradient(to bottom,transparent 0,#000 18%,#000 82%,transparent 100%);-webkit-mask-composite:source-in;mask-composite:intersect}
@media(max-width:1023px){.research-photo{opacity:.1;background-position:58% 42%}}
/* The roles card sits over the photo, and its default translucent fill let the
   building through behind 12px text. Darken it here so the copy keeps a solid
   field; the photo still reads around and through the card's edges. */
#research .card-dark{background:rgba(9,32,25,.66);border-color:rgba(255,255,255,.1)}

/* Soft moving light inspired by the Hobbs homepage, in the Boody palette. */
.hero-atmosphere{isolation:isolate;background:linear-gradient(110deg,#092019 0%,#0E2A25 46%,#1c443b 100%)}
.hero-atmosphere>.hero-content{position:relative;z-index:1}
.hero-light{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.hero-light>span{position:absolute;display:block;pointer-events:none}
.hero-light-scan{top:-24%;bottom:-24%;left:-30%;width:34%;background:linear-gradient(100deg,transparent 12%,rgba(255,255,255,.16) 50%,transparent 88%);filter:blur(1px);animation:hero-light-scan 18s ease-in-out infinite}
.hero-light-ribbon{left:5%;right:4%;bottom:4%;height:12rem;opacity:.32;background:radial-gradient(75% 100% at 35% 100%,transparent 57%,rgba(255,255,255,.34) 58%,transparent 60%),radial-gradient(70% 100% at 65% 100%,transparent 52%,rgba(127,169,155,.36) 53%,transparent 55%);animation:hero-light-ribbon 22s ease-in-out infinite}
.hero-light-wave{left:8%;right:8%;bottom:7%;height:7rem;opacity:.28;background:radial-gradient(60% 80% at 50% 100%,transparent 56%,rgba(255,255,255,.24) 57%,transparent 59%),radial-gradient(55% 80% at 50% 100%,transparent 48%,rgba(255,255,255,.16) 49%,transparent 51%);animation:hero-light-wave 20s ease-in-out infinite}
@keyframes hero-light-scan{0%{transform:translateX(0) skewX(-18deg);opacity:0}12%{opacity:1}52%{opacity:.65}100%{transform:translateX(430%) skewX(-18deg);opacity:0}}
@keyframes hero-light-ribbon{0%,100%{transform:translateY(1rem) scaleX(1)}50%{transform:translateY(0) scaleX(1.05)}}
@keyframes hero-light-wave{0%,100%{transform:translateY(1.5rem) scaleX(1)}50%{transform:translateY(.75rem) scaleX(1.04)}}
@media(max-width:767px){.hero-light-ribbon{opacity:.18}.hero-light-wave{display:none}}
@media(prefers-reduced-motion:reduce){.hero-light>span{animation:none}.hero-light-scan{display:none}}

/* ---------- Hero: rotating spine cutaways ---------- */
.hero-layout{padding-block:clamp(2rem,3.5vw,3rem);padding-bottom:calc(clamp(2rem,3.5vw,3rem) + var(--credential-overlap));gap:2rem;align-items:start}
@media(min-width:1024px){.hero-layout{column-gap:clamp(2rem,4vw,4rem)}}
.hero-board{width:min(100%,480px);min-width:0;margin:0 auto}
.spine-controls{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.65rem;flex-wrap:wrap}
.spine-controls[hidden]{display:none}
.spine-region-buttons{display:flex;gap:.25rem;padding:.25rem;border:1px solid rgba(157,180,170,.3);border-radius:.65rem}
.spine-region-button,.spine-rotation-button{min-height:44px;padding:.6rem .85rem;border:0;border-radius:.4rem;background:transparent;font-family:inherit;font-size:.75rem;font-weight:600;line-height:1.3;color:var(--dark-copy);cursor:pointer}
.spine-region-button{padding-inline:.65rem;white-space:nowrap}
.spine-rotation-button{min-width:44px}
.spine-region-button[aria-pressed="true"]{background:var(--brass-2);color:var(--ink)}
.spine-region-button:hover,.spine-rotation-button:hover{background:rgba(255,255,255,.12);color:#fff}
.spine-region-button[aria-pressed="true"]:hover{background:var(--brass-2);color:var(--ink)}
.spine-region-button:focus-visible,.spine-rotation-button:focus-visible{outline:2px solid var(--brass-2);outline-offset:3px}
.spine-rotation-button{padding-inline:.35rem;text-decoration:underline;text-underline-offset:4px}
.spine-slides{display:grid}
.spine-slide{grid-area:1/1;min-width:0;margin:0;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .45s ease,visibility .45s}
.spine-slide.is-active{visibility:visible;opacity:1;pointer-events:auto}
@media(prefers-reduced-motion:reduce){.spine-slide{transition:none}}
.hero-board-heading{padding-bottom:.6rem;border-bottom:1px solid rgba(157,180,170,.25)}
.hero-board-heading strong{display:block;font-family:'Newsreader',Georgia,serif;font-size:1.5rem;font-weight:500;line-height:1.2;color:#fff}
.hero-board-heading span{display:block;margin-top:.3rem;font-size:.75rem;line-height:1.5;color:var(--dark-muted)}
.hero-board-heading .hero-board-explainer{font-size:.8125rem;color:var(--dark-copy)}
.hero-anatomy{position:relative;width:min(100%,320px);margin:.65rem auto;isolation:isolate}
@media(min-width:1024px){.hero-anatomy{width:min(100%,300px)}}
/* Broad, eased edge fades blend the photo background; labels and leaders stay crisp. */
.hero-anatomy>img{display:block;width:100%;height:auto;aspect-ratio:1122/1402;object-fit:contain;background:transparent;-webkit-mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.12) 5%,rgba(0,0,0,.6) 13%,#000 24%,#000 76%,rgba(0,0,0,.6) 87%,rgba(0,0,0,.12) 95%,transparent 100%),linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.25) 4%,rgba(0,0,0,.8) 9%,#000 14%,#000 83%,rgba(0,0,0,.8) 89%,rgba(0,0,0,.25) 96%,transparent 100%);mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.12) 5%,rgba(0,0,0,.6) 13%,#000 24%,#000 76%,rgba(0,0,0,.6) 87%,rgba(0,0,0,.12) 95%,transparent 100%),linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.25) 4%,rgba(0,0,0,.8) 9%,#000 14%,#000 83%,rgba(0,0,0,.8) 89%,rgba(0,0,0,.25) 96%,transparent 100%);-webkit-mask-composite:source-in;mask-composite:intersect}
/* Extra feathering for the cervical and thoracic cutaways. */
#spine-neck .hero-anatomy>img,.hero-anatomy--thoracic>img{-webkit-mask-image:linear-gradient(to right,transparent 0%,transparent 3%,rgba(0,0,0,.15) 11%,rgba(0,0,0,.65) 23%,#000 34%,#000 68%,rgba(0,0,0,.65) 79%,rgba(0,0,0,.15) 92%,transparent 100%),linear-gradient(to bottom,transparent 0%,transparent 2%,rgba(0,0,0,.15) 7%,rgba(0,0,0,.65) 15%,#000 23%,#000 78%,rgba(0,0,0,.65) 87%,rgba(0,0,0,.15) 95%,transparent 100%);mask-image:linear-gradient(to right,transparent 0%,transparent 3%,rgba(0,0,0,.15) 11%,rgba(0,0,0,.65) 23%,#000 34%,#000 68%,rgba(0,0,0,.65) 79%,rgba(0,0,0,.15) 92%,transparent 100%),linear-gradient(to bottom,transparent 0%,transparent 2%,rgba(0,0,0,.15) 7%,rgba(0,0,0,.65) 15%,#000 23%,#000 78%,rgba(0,0,0,.65) 87%,rgba(0,0,0,.15) 95%,transparent 100%)}
.hero-leaders{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.hero-leaders path{fill:none;stroke:var(--brass-2);stroke-width:1.5;vector-effect:non-scaling-stroke;stroke-linejoin:round}
.hero-leaders circle{fill:var(--brass-2);stroke:var(--ink);stroke-width:3}
.hero-anatomy-label{position:absolute;z-index:1;padding:.4rem .55rem;border:1px solid rgba(224,183,122,.5);border-radius:.4rem;background:var(--ink);color:#fff;font-size:.75rem;font-weight:600;line-height:1.25;white-space:nowrap;transform:translateY(-50%)}
.hero-anatomy-label--cord{top:22.1%;right:0}
.hero-anatomy-label--disc{top:44.2%;left:0}
.hero-anatomy-label--nerve{top:57.1%;right:0}
.hero-anatomy-label--rib{top:60.6%;left:0}
.hero-anatomy--lumbar .hero-anatomy-label--disc{top:37.8%}
.hero-anatomy--thoracic .hero-anatomy-label--disc{top:23.9%}
.hero-anatomy-key{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;padding-top:.65rem;border-top:1px solid rgba(157,180,170,.25)}
.hero-anatomy-key dt{font-family:'Newsreader',Georgia,serif;font-size:1.1rem;font-weight:500;line-height:1.2;color:#fff}
.hero-anatomy-key dd{margin:.35rem 0 0;font-size:.75rem;line-height:1.5;color:var(--dark-copy)}
@media(max-width:380px){.hero-anatomy-label{font-size:.6875rem;padding:.35rem .45rem}.hero-anatomy-key{grid-template-columns:1fr;gap:.8rem}.hero-anatomy-key>div{display:grid;grid-template-columns:6rem 1fr;gap:.5rem}.hero-anatomy-key dd{margin:0}}

/* ---------- Compact credentials strip ---------- */
:root{--credential-overlap:clamp(2rem,4vw,3.5rem)}
.training-strip{position:relative;z-index:20;margin-top:calc(-1 * var(--credential-overlap));background:linear-gradient(to bottom,transparent var(--credential-overlap),var(--chalk) var(--credential-overlap));border-bottom:1px solid var(--line)}
.training-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.85rem;max-width:1280px;margin:0 auto;padding:0 2rem 1.75rem}
.training-card{display:grid;grid-template-columns:2.75rem minmax(0,1fr) auto;grid-template-rows:2.75rem auto;align-items:center;gap:1rem .65rem;min-width:0;padding:1.1rem 1rem;border:1px solid rgba(255,255,255,.8);border-top:3px solid var(--brass);border-radius:.7rem;background-color:rgba(255,255,255,.82);background-image:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.85) 46%,rgba(255,255,255,.2) 52%,transparent 64%),linear-gradient(145deg,rgba(255,255,255,.65),rgba(255,255,255,.15) 48%,rgba(127,169,155,.12));background-size:250% 100%,100% 100%;background-position:100% 0,0 0;background-repeat:no-repeat;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:inset 0 1px 0 #fff,inset 1px 0 0 rgba(255,255,255,.85),inset 0 -1px 0 rgba(14,42,37,.08),0 12px 28px rgba(14,42,37,.16);text-align:left;font-family:inherit;cursor:pointer;transition:border-color .2s,background-position .7s ease,box-shadow .25s,transform .25s}
.training-card{position:relative;isolation:isolate;overflow:hidden}
.training-card>span{position:relative;z-index:1}
.training-watermark{position:absolute;z-index:0;pointer-events:none;right:-8%;top:50%;width:67%;height:auto;max-height:140%;object-fit:contain;transform:translateY(-50%);filter:grayscale(1);mix-blend-mode:multiply;opacity:.09}
.training-mark{display:grid;place-items:center;width:2.75rem;height:2.75rem;background:transparent;mix-blend-mode:multiply}
.training-mark img{display:block;width:100%;height:100%;object-fit:contain;padding:.25rem}
/* Crop the Northwestern seal's white square to its circular artwork. */
.training-card[data-cred="northwestern"] img{clip-path:circle(50%) content-box}
.training-mark--iu img{padding:.65rem}
.training-name{grid-column:2/-1;font-family:'Newsreader',Georgia,serif;font-size:1.1rem;font-weight:500;line-height:1.12;color:var(--ink)}
.training-detail{grid-column:1/3;align-self:start;font-size:.78125rem;line-height:1.5;color:var(--copy)}
.training-arrow{grid-column:3;align-self:end;color:var(--brass-dark);font-size:1.1rem;line-height:1.2;transition:transform .25s}
.training-count{display:flex;align-items:flex-start;font-family:'Newsreader',Georgia,serif;font-size:2.4rem;font-weight:500;line-height:1;color:var(--brass-dark);letter-spacing:-.035em}
.training-count sup{font-size:.9rem;line-height:1;margin-top:.05rem}
.training-card:hover,.training-card:focus-visible{border-color:var(--brass);background-position:0 0,0 0;box-shadow:inset 0 1px 0 #fff,inset 1px 0 0 rgba(255,255,255,.9),0 18px 34px rgba(14,42,37,.2),0 0 16px rgba(194,138,69,.12);transform:translateY(-4px)}
.training-card:hover .training-arrow,.training-card:focus-visible .training-arrow{transform:translateX(3px)}
.training-card:focus-visible{outline:3px solid var(--brass-dark);outline-offset:3px}
@media(min-width:1024px) and (max-width:1199px){.training-grid{gap:.5rem}.training-card{padding:.75rem;column-gap:.5rem}.training-name{font-size:.95rem}}
@media(max-width:1023px){.training-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.training-card--publications{grid-column:span 2}}
@media(max-width:639px){.training-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:0 1.25rem 1.25rem;gap:.6rem}.training-card{grid-template-columns:minmax(0,1fr) auto;grid-template-rows:2.75rem auto auto;padding:.85rem;column-gap:.55rem}.training-mark{grid-column:1;grid-row:1}.training-name{grid-column:1/-1;grid-row:2;min-height:2.25rem;font-size:1rem}.training-detail{grid-column:1;grid-row:3}.training-arrow{grid-column:2;grid-row:3}.training-card--publications{grid-template-columns:2.75rem minmax(0,1fr) auto;grid-template-rows:auto}.training-card--publications .training-name{grid-column:2;grid-row:1;min-height:0}.training-card--publications .training-detail{grid-column:2;grid-row:2}.training-card--publications .training-count{grid-row:1/3}.training-card--publications .training-arrow{grid-column:3;grid-row:1/3;align-self:center}}
@media(max-width:359px){.training-grid{grid-template-columns:1fr}.training-card--publications{grid-column:auto}}
@media(prefers-reduced-motion:reduce){.training-card,.training-arrow{transition:none}.training-card:hover,.training-card:focus-visible,.training-card:hover .training-arrow,.training-card:focus-visible .training-arrow{transform:none}}

/* ---------- Care approach ---------- */
/* Video card (home, "How he practices") */
.vid{border-radius:1rem;background:var(--ink);color:#fff;overflow:hidden;box-shadow:0 18px 44px rgba(14,42,37,.16)}
.vid-cta{display:grid;grid-template-columns:auto 1fr;gap:1.1rem;align-items:center;padding:.9rem 1.2rem .9rem .9rem;color:#fff;text-decoration:none;transition:background .2s}
.vid-cta:hover,.vid-cta:focus-visible{background:var(--ink-2);outline:none}
.vid-cta:focus-visible{box-shadow:inset 0 0 0 3px rgba(224,183,122,.55)}
.vid-thumb{position:relative;display:block;width:4.75rem;height:5.75rem;border-radius:.6rem;overflow:hidden;flex:0 0 auto}
.vid-thumb img{width:100%;height:100%;object-fit:cover;object-position:top}
.vid-play{position:absolute;right:.35rem;bottom:.35rem;display:grid;place-items:center;width:1.9rem;height:1.9rem;border-radius:50%;background:var(--brass);box-shadow:0 4px 12px rgba(0,0,0,.35);transition:transform .2s,background .2s}
.vid-play::before{content:"";margin-left:.15rem;border-style:solid;border-width:.36rem 0 .36rem .6rem;border-color:transparent transparent transparent var(--ink)}
.vid-cta:hover .vid-play,.vid-cta:focus-visible .vid-play{background:var(--brass-2);transform:scale(1.08)}
.vid-copy{display:grid;gap:.3rem;min-width:0}
.vid-copy strong{font-family:'Newsreader',Georgia,serif;font-weight:500;font-size:1.15rem;line-height:1.25;letter-spacing:-.01em;text-wrap:balance}
.vid-copy small{font-size:.82rem;line-height:1.45;color:var(--dark-muted)}
@media(prefers-reduced-motion:reduce){.vid-play,.vid-cta{transition:none}.vid-cta:hover .vid-play{transform:none}}

/* Hero video link */
.hero-watch{display:inline-flex;align-items:center;gap:.9rem;padding:.5rem .9rem .5rem .5rem;margin-left:-.5rem;border-radius:999px;color:#fff;text-decoration:none;transition:background .2s}
.hero-watch:hover,.hero-watch:focus-visible{background:rgba(255,255,255,.07);outline:none}
.hero-watch:focus-visible{box-shadow:0 0 0 3px rgba(224,183,122,.55)}
.hero-watch-play{position:relative;display:grid;place-items:center;flex:0 0 auto;width:2.75rem;height:2.75rem;border-radius:50%;background:var(--brass);box-shadow:var(--button-glow);transition:background .2s,transform .2s,box-shadow .25s}
.hero-watch-play::before{content:"";margin-left:.2rem;border-style:solid;border-width:.45rem 0 .45rem .75rem;border-color:transparent transparent transparent var(--ink)}
.hero-watch:hover .hero-watch-play,.hero-watch:focus-visible .hero-watch-play{background:var(--brass-2);transform:scale(1.06);box-shadow:var(--button-glow-hover)}
.hero-watch-copy{display:grid;gap:.15rem}
.hero-watch-copy strong{font-family:'Newsreader',Georgia,serif;font-weight:500;font-size:1.08rem;line-height:1.25;letter-spacing:-.01em}
.hero-watch-copy small{font-size:.8rem;line-height:1.4;color:var(--dark-muted)}
@media(prefers-reduced-motion:reduce){.hero-watch,.hero-watch-play{transition:none}.hero-watch:hover .hero-watch-play{transform:none}}

/* Video lightbox */
.lightbox{width:min(96vw,60rem);max-width:none;max-height:none;margin:auto;padding:0;border:0;background:transparent;color:#fff;overflow:visible}
.lightbox::backdrop{background:rgba(9,32,25,.86);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.lightbox[open]{animation:lightbox-in .22s cubic-bezier(.2,.7,.3,1)}
@keyframes lightbox-in{from{opacity:0;transform:scale(.97)}to{opacity:1;transform:none}}
.lightbox-frame{aspect-ratio:16/9;border-radius:1rem;overflow:hidden;background:#000;box-shadow:0 30px 80px rgba(0,0,0,.5)}
.lightbox-frame video,.lightbox-frame iframe{display:block;width:100%;height:100%;border:0;object-fit:contain}
.lightbox-close{position:absolute;right:0;top:-3rem;display:grid;place-items:center;width:2.5rem;height:2.5rem;border:1px solid rgba(255,255,255,.35);border-radius:50%;background:rgba(255,255,255,.08);color:#fff;font-size:1.5rem;line-height:1;cursor:pointer;transition:background .2s,border-color .2s}
.lightbox-close:hover{background:rgba(255,255,255,.18);border-color:#fff}
.lightbox-close:focus-visible{outline:3px solid rgba(224,183,122,.7);outline-offset:2px}
@media(max-width:640px){.lightbox{width:100vw}.lightbox-frame{border-radius:.5rem}.lightbox-close{right:.5rem}}
@media(prefers-reduced-motion:reduce){.lightbox[open]{animation:none}}

.care-approach{background-color:var(--ink);background-image:linear-gradient(180deg,rgba(14,42,37,.86) 0%,rgba(14,42,37,.82) 45%,rgba(14,42,37,.94) 100%),url('/assets/img/isg-carmel-campus-hero.jpg');background-size:cover;background-position:center,center 55%;background-repeat:no-repeat;color:var(--dark-copy)}
.care-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:2rem}
.care-intro{max-width:43rem}
.care-intro h2{margin-top:1rem;font-size:clamp(2rem,3.5vw,2.75rem);line-height:1.12;text-wrap:balance}
.care-intro>p:last-child{max-width:39rem;margin-top:1rem;font-size:1.0625rem;line-height:1.7}
.care-principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin:2.5rem 0 0;padding:0;list-style:none}
.care-principles li{min-width:0;border:1px solid rgba(217,227,222,.18);border-top:2px solid var(--brass);border-radius:.8rem;padding:1.4rem;background-color:rgba(14,42,37,.5);background-image:linear-gradient(135deg,rgba(255,255,255,.08),transparent 65%);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:inset 0 1px 0 rgba(255,255,255,.12);transition:background-color .25s,border-color .25s,box-shadow .25s}
.care-principles li:hover{border-color:var(--brass-2);background-color:rgba(35,62,52,.85);box-shadow:inset 0 1px 0 rgba(224,183,122,.25),0 0 24px rgba(194,138,69,.16)}
.care-principles li:hover h3{color:var(--brass-2)}
.care-number{display:block;margin-bottom:.85rem;color:var(--brass-2);font-size:.875rem;font-weight:700}
.care-principles h3{font-size:1.5rem;line-height:1.25;text-wrap:balance;transition:color .25s}
.care-principles p{max-width:36ch;margin-top:.75rem;font-size:1rem;line-height:1.7}
.care-more{display:flex;align-items:center;justify-content:space-between;gap:1.5rem 2rem;margin-top:2.5rem;padding:1.25rem 1.5rem;border:1px solid rgba(157,180,170,.3);border-radius:.75rem;background:var(--ink-2)}
.care-video{display:flex;align-items:center;gap:1rem;min-width:0;border-radius:.5rem;color:#fff;text-decoration:none}
.care-video .vid-thumb{width:3.5rem;height:4.25rem;border-radius:.4rem}
.care-video .vid-play{width:1.6rem;height:1.6rem;right:.15rem;bottom:.15rem;box-shadow:none}
.care-video strong{display:block;font-size:.9375rem;font-weight:600;line-height:1.5}
.care-video small{display:block;margin-top:.2rem;font-size:.875rem;line-height:1.5;color:var(--dark-copy)}
.care-links{display:flex;flex-wrap:wrap;gap:.65rem}
.care-video:hover strong{text-decoration:underline;text-underline-offset:4px}
.care-video:focus-visible{outline:2px solid var(--brass-2);outline-offset:5px}
@media(max-width:1023px){.care-principles{gap:1.5rem}.care-more{align-items:flex-start;flex-direction:column}}
@media(max-width:767px){.care-principles{grid-template-columns:1fr;gap:1rem;margin-top:2rem}.care-principles li{position:relative;padding:1.25rem 1.25rem 1.25rem 3.5rem}.care-number{position:absolute;left:1rem;top:1.45rem;margin:0}.care-principles h3{font-size:1.375rem}.care-principles p{max-width:48ch;margin-top:.5rem}.care-more{margin-top:2rem}.care-links{gap:.65rem}}
@media(prefers-reduced-motion:reduce){.care-principles li,.care-principles h3{transition:none}}

/* ---------- Situation navigator ---------- */
.nav-shell{position:relative;overflow:hidden;padding:2rem;border:1px solid rgba(255,255,255,.12);border-radius:1.25rem;background:linear-gradient(130deg,#0E2A25 0%,#12332C 60%,#1a3a2a 100%);box-shadow:0 22px 55px rgba(14,42,37,.18)}
.sit-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem}
/* Reflective glass surface: a fixed edge highlight and a moving diagonal sheen. */
.sit{position:relative;display:flex;flex-direction:column;justify-content:flex-start;gap:.65rem;min-height:0;padding:1.3rem 1.3rem 2.6rem;border:1px solid rgba(255,255,255,.3);border-radius:1rem;background-color:rgba(255,255,255,.035);background-image:linear-gradient(115deg,transparent 32%,rgba(255,255,255,.12) 46%,rgba(255,255,255,.035) 51%,transparent 62%),linear-gradient(145deg,rgba(255,255,255,.13),rgba(255,255,255,.025) 48%,rgba(0,0,0,.1));background-size:250% 100%,100% 100%;background-position:100% 0,0 0;background-repeat:no-repeat;box-shadow:inset 0 1px 0 rgba(255,255,255,.3),inset 1px 0 0 rgba(255,255,255,.08),0 8px 20px rgba(0,0,0,.12);color:#fff;text-align:left;cursor:pointer;transition:border-color .2s,background-color .2s,background-position .7s ease,box-shadow .25s,transform .25s}
.sit strong{padding-right:1rem;font-family:'Newsreader',Georgia,serif;font-weight:500;font-size:1.3rem;line-height:1.2;text-wrap:balance}
.sit small{font-size:.92rem;line-height:1.55;color:var(--dark-copy)}
.sit::before{content:"";position:absolute;left:1.3rem;bottom:1.15rem;width:.5rem;height:.5rem;border-right:1.5px solid var(--brass-2);border-bottom:1.5px solid var(--brass-2);transform:rotate(-45deg);opacity:.9;transition:opacity .2s,transform .2s}
.sit:hover,.sit:focus-visible{border-color:rgba(224,183,122,.85);background-color:rgba(194,138,69,.08);background-position:0 0,0 0;box-shadow:inset 0 1px 0 rgba(255,255,255,.42),inset 1px 0 0 rgba(255,255,255,.12),0 12px 28px rgba(0,0,0,.2),0 0 18px rgba(194,138,69,.1);transform:translateY(-4px);outline:none}
.sit:hover::before,.sit:focus-visible::before{opacity:1;transform:translateX(3px) rotate(-45deg)}
.sit:focus-visible{box-shadow:0 0 0 3px rgba(224,183,122,.45)}
.sit.is-active{border-color:var(--brass-2);background-color:rgba(194,138,69,.14)}
.sit.is-active::before{opacity:1;transform:translateX(3px) rotate(-45deg)}
.sit.is-active::after{content:"";position:absolute;right:1rem;top:1rem;width:.55rem;height:.55rem;border-radius:50%;background:var(--brass-2);box-shadow:0 0 0 4px rgba(228,190,110,.2)}
.sit-answer{margin-top:1.6rem;padding-top:1.6rem;border-top:1px solid rgba(255,255,255,.12);display:grid;grid-template-columns:1.2fr .8fr;gap:2rem;align-items:start}
.sit-answer h3{color:#fff;font-size:1.7rem;line-height:1.2;text-wrap:balance}
.sit-answer p{max-width:42rem;margin-top:.8rem;color:var(--dark-copy);font-size:1.02rem;line-height:1.65}
.sit-links{display:grid;gap:.5rem}
.sit-links a{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1.1rem;border:1px solid rgba(255,255,255,.16);border-radius:.7rem;color:#fff;font-size:.95rem;font-weight:600;transition:border-color .2s,background .2s}
.sit-links a span{color:var(--brass-2);transition:transform .2s}
.sit-links a:hover{border-color:rgba(228,190,110,.7);background:rgba(255,255,255,.05)}.sit-links a:hover span{transform:translateX(3px)}
.sit-emerg{display:flex;gap:.85rem;align-items:flex-start;margin-top:1.6rem;padding-top:1.25rem;border-top:1px solid rgba(255,255,255,.1);color:var(--dark-copy);font-size:.92rem;line-height:1.55}
.sit-emerg p{max-width:60rem}
.sit-emerg b{color:var(--brass-2)}
.sit-emerg i{display:grid;flex:0 0 auto;place-items:center;width:1.6rem;height:1.6rem;margin-top:-.05rem;border:1px solid rgba(228,190,110,.6);border-radius:50%;color:var(--brass-2);font-style:normal;font-weight:700;font-size:.85rem}
@media(max-width:1279px){.sit-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.sit{grid-column:span 2}.sit:nth-child(4),.sit:nth-child(5){grid-column:span 3}}
@media(max-width:767px){.sit-grid{grid-template-columns:1fr;gap:.7rem}.sit,.sit:nth-child(4),.sit:nth-child(5){grid-column:auto}.sit{padding:1.1rem 1.1rem 1.1rem 1.15rem;gap:.35rem}.sit::before{display:none}.sit-answer{grid-template-columns:1fr}.nav-shell{padding:1.25rem}}
@media(prefers-reduced-motion:reduce){.sit,.sit::before,.sit-links a span{transition:none}.sit:hover,.sit:focus-visible{transform:none}}

/* ---------- Focus areas ---------- */
.focus{display:grid;grid-template-columns:auto 1fr;gap:1.25rem;padding:1.6rem;border:1px solid var(--line);border-radius:1rem;background:#fff;transition:border-color .2s,box-shadow .2s}
.focus:hover{border-color:rgba(201,151,58,.6);box-shadow:0 14px 36px rgba(14,42,37,.09)}
.focus-glyph{display:grid;place-items:center;width:3rem;height:3rem;border-radius:.75rem;background:var(--chalk);color:var(--brass-dark)}
.focus-glyph svg{width:1.4rem;height:1.4rem}
.focus h3{font-size:1.4rem;line-height:1.2}
.focus p{margin-top:.5rem;font-size:.92rem;line-height:1.6}
.focus ul{margin-top:.8rem;display:flex;flex-wrap:wrap;gap:.4rem}
.focus li{font-size:.72rem;font-weight:600;color:var(--ink);padding:.3rem .6rem;border:1px solid var(--line);border-radius:99px;background:var(--chalk)}
@media(max-width:560px){.focus{grid-template-columns:1fr}}

/* ---------- Conditions index (editorial list) ---------- */
.cond-list{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line)}
.cond-row{position:relative;z-index:0;display:grid;grid-template-columns:1fr auto;align-items:center;gap:1rem;padding:1.1rem .85rem;margin:0 -.85rem;border-bottom:1px solid var(--line);border-radius:.8rem;color:var(--ink);transition:color .2s,background .22s ease,transform .22s cubic-bezier(.2,.7,.3,1),box-shadow .22s ease}
.cond-row b{font-family:'Newsreader',Georgia,serif;font-weight:500;font-size:1.2rem;line-height:1.2}
.cond-row small{display:block;margin-top:.2rem;font-size:.8rem;color:var(--copy)}
.cond-row span{color:var(--brass);transition:transform .2s}
.cond-row:hover,.cond-row:focus-visible{z-index:1;color:var(--brass-dark);background:#fff;transform:translateY(-3px);box-shadow:0 14px 30px rgba(14,42,37,.12),0 0 0 1px rgba(194,138,69,.45);outline:none}
.cond-row:hover span,.cond-row:focus-visible span{transform:translateX(4px)}
.cond-row:hover small{color:var(--ink)}
.cond-row:active{transform:translateY(-1px);transition-duration:.08s}
@media(prefers-reduced-motion:reduce){.cond-row,.cond-row:hover{transform:none;transition:none}}
@media(min-width:768px){.cond-list{column-gap:3rem}}
@media(max-width:767px){.cond-list{grid-template-columns:1fr}}

/* ---------- Research + teaching ---------- */
.role{padding:1.1rem 0;border-bottom:1px solid rgba(255,255,255,.12);display:grid;grid-template-columns:1fr auto;gap:1rem;align-items:baseline}
.role b{font-family:'Newsreader',Georgia,serif;font-weight:500;font-size:1.1rem;color:#fff}
.role small{display:block;font-size:.78rem;color:var(--dark-muted);margin-top:.15rem}
.role em{font-style:normal;font-size:.72rem;font-weight:600;color:var(--brass-2);white-space:nowrap}
/* Society and editorial badges (research section) */
.badges-h{font-size:.74rem;font-weight:700;color:var(--brass-2)}
.badge-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;margin-top:.7rem;list-style:none;padding:0}
.soc-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem;margin-top:1.1rem;list-style:none;padding:0}
@media(min-width:1024px){.research-intro{display:flex;flex-direction:column}.research-intro .badges{margin-block:auto;padding-block:2rem}}
.soc{min-width:0}
.soc-logo{display:grid;place-items:center;min-height:44px;height:4.4rem;padding:.25rem .15rem;border-radius:.4rem;cursor:pointer;transition:transform .2s,filter .2s}
.soc-logo:hover{transform:translateY(-3px);filter:drop-shadow(0 0 7px rgba(224,183,122,.35))}
.soc-logo:focus-visible{outline:2px solid var(--brass-2);outline-offset:5px}
/* Preserve transparent backgrounds and fine logo detail in white and soft gray. */
.soc-logo img{display:block;max-width:100%;max-height:3.8rem;width:auto;height:auto;object-fit:contain;filter:grayscale(1) brightness(.45) invert(1)}
@media(max-width:560px){.soc-row{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:1.5rem}.soc-logo{height:3.8rem}.soc-logo img{max-height:3.3rem}}
.soc-dialog{width:min(90vw,30rem);max-height:90vh;margin:auto;padding:2rem;border:1px solid rgba(224,183,122,.4);border-radius:1rem;background:var(--ink);color:var(--dark-copy);box-shadow:0 24px 80px rgba(0,0,0,.4);text-align:center;overflow:auto}
.soc-dialog::backdrop{background:rgba(9,32,25,.85);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}
.soc-dialog-close{display:grid;place-items:center;position:absolute;right:.65rem;top:.65rem;width:44px;height:44px;border:0;border-radius:.5rem;background:transparent;color:#fff;font-size:1.7rem;cursor:pointer}
.soc-dialog-close:hover{background:rgba(255,255,255,.1)}
.soc-dialog-close:focus-visible{outline:2px solid var(--brass-2);outline-offset:2px}
.soc-dialog .eyebrow{margin-top:1rem}
.soc-dialog-logo{display:block;width:100%;max-width:280px;height:170px;object-fit:contain;margin:1.75rem auto;filter:grayscale(1) brightness(.45) invert(1)}
.soc-dialog h2{font-size:1.75rem;line-height:1.2}
.soc-dialog .btn-secondary{display:flex;margin-top:1.5rem;text-align:left}
@media(max-width:399px){.soc-dialog{padding:1.5rem}.soc-dialog h2{font-size:1.5rem}.soc-dialog-logo{height:140px}}
@media(prefers-reduced-motion:reduce){.soc-logo{transition:none}.soc-logo:hover{transform:none}}
.roles-fill{display:flex;flex-direction:column;justify-content:space-between}
.roles-fill>.role{flex:0 0 auto}
.badge{display:flex;align-items:center;gap:.8rem;min-width:0;padding:.65rem .9rem .65rem .65rem;border:1px solid rgba(255,255,255,.14);border-radius:.8rem;background:rgba(255,255,255,.04);color:#fff;transition:border-color .2s,background .2s}
.badge:hover{border-color:rgba(224,183,122,.5);background:rgba(255,255,255,.07)}
.badge i{display:grid;flex:0 0 auto;place-items:center;width:2.7rem;height:2.7rem;border:1px solid rgba(224,183,122,.5);border-radius:50%;background:rgba(224,183,122,.08);color:var(--brass-2);font-family:'Newsreader',Georgia,serif;font-style:normal;font-weight:500;font-size:.74rem;letter-spacing:.03em}
.badge i svg{width:1.15rem;height:1.15rem}
.badge b{display:block;font-weight:600;font-size:.84rem;line-height:1.3;color:#fff}
.badge span{display:block;min-width:0}
.badge small{display:block;margin-top:.15rem;font-size:.74rem;line-height:1.35;color:var(--dark-muted)}
.badge-row--4{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
@media(max-width:1023px){.badge-row--4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.badge-row,.badge-row--4{grid-template-columns:1fr}}

.award{display:flex;gap:.8rem;align-items:flex-start;font-size:.9rem;line-height:1.5}
.award i{flex:0 0 auto;margin-top:.45rem;width:.45rem;height:.45rem;border-radius:50%;background:var(--brass)}
.award b{font-weight:600;color:var(--ink)}.on-dark .award b{color:#fff}

/* ---------- Visit steps (a true sequence) ---------- */
.step{position:relative;padding:1.5rem;background:#fff;border:1px solid var(--line);border-radius:1rem}
.step-n{font-family:'Newsreader',Georgia,serif;font-size:2rem;line-height:1;color:var(--brass-dark);font-weight:500}
.step h3{margin-top:.9rem;font-size:1.2rem;line-height:1.25}
.step p{margin-top:.5rem;font-size:.88rem;line-height:1.6}

/* ---------- First visit timeline and preparation panel ---------- */
#visit{border-top:1px solid var(--line)}
.visit-inner{padding-top:clamp(3rem,6vw,5rem);padding-bottom:clamp(2.5rem,4vw,3.5rem)}
.visit-heading{max-width:42rem}
.visit-heading h2{margin-top:1rem;font-size:clamp(2rem,3vw,2.5rem);line-height:1.15}
.visit-heading>p:last-child{margin-top:1rem;font-size:1.0625rem;line-height:1.65;color:var(--copy)}
.visit-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(2rem,5vw,4rem);align-items:stretch}
.visit-journey{min-width:0}
.visit-preparation{display:grid;grid-template-rows:auto auto;align-content:space-between;gap:1.5rem;min-width:0}
.visit-video{display:flex;align-items:center;gap:1rem;padding:1rem;border:1px solid rgba(14,42,37,.14);border-radius:.85rem;background:linear-gradient(135deg,rgba(255,255,255,.95),rgba(255,255,255,.65));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:inset 0 1px 0 #fff,0 6px 18px rgba(14,42,37,.06);color:var(--ink);transition:border-color .2s,box-shadow .2s,transform .2s}
.visit-video .vid-thumb{width:3.5rem;height:4.25rem;border-radius:.45rem}
.visit-video .vid-play{width:1.6rem;height:1.6rem;right:.15rem;bottom:.15rem}
.visit-video-copy{display:grid;gap:.3rem;min-width:0}
.visit-video-copy strong{font-size:.9375rem;font-weight:700;line-height:1.4}
.visit-video-copy small{font-size:.8125rem;line-height:1.5;color:var(--copy)}
.visit-video:hover,.visit-video:focus-visible{border-color:var(--brass);box-shadow:inset 0 1px 0 #fff,0 9px 22px rgba(14,42,37,.1);transform:translateY(-2px);text-decoration:none}
.visit-video:focus-visible{outline:3px solid var(--brass-dark);outline-offset:3px}
@media(prefers-reduced-motion:reduce){.visit-video{transition:none}.visit-video:hover,.visit-video:focus-visible{transform:none}}
.visit-timeline{position:relative;isolation:isolate;display:grid;grid-template-columns:1fr;list-style:none;margin:2rem 0 0;padding:0;min-width:0}
.visit-step{position:relative;display:grid;grid-template-columns:3rem minmax(0,1fr);column-gap:1.4rem;align-content:start;min-width:0;padding:0 0 1.75rem}
.visit-step:not(:last-child)::before{content:"";position:absolute;left:calc(1.5rem - 1px);top:3rem;bottom:0;width:2px;background:linear-gradient(var(--brass-2),rgba(194,138,69,.3))}
.visit-step:last-child{padding-bottom:0}
.visit-step-number{position:relative;display:grid;place-items:center;grid-row:1/3;width:3rem;height:3rem;border:1px solid rgba(194,138,69,.55);border-radius:50%;background:linear-gradient(145deg,rgba(255,255,255,.15),transparent),var(--chalk);box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 4px 12px rgba(14,42,37,.06);color:var(--brass-dark);font-family:'Newsreader',Georgia,serif;font-size:1.5rem;font-weight:500;line-height:1}
/* The rail and circles share one flowing highlight, timed to each marker's position. */
.visit-step-number{z-index:1;background-color:var(--ink);color:var(--brass-2);box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 4px 12px rgba(14,42,37,.12)}
.visit-timeline.has-flow .visit-step::before{display:none}
.visit-timeline.has-flow::before,.visit-timeline.has-flow::after{content:"";position:absolute;pointer-events:none;left:calc(1.5rem - 1.5px);top:1.5rem;width:3px;height:var(--visit-rail-height);border-radius:999px;z-index:-1}
.visit-timeline.has-flow::before{background:rgba(194,138,69,.38)}
.visit-timeline.has-flow::after{background:linear-gradient(to bottom,transparent 35%,rgba(194,138,69,.2) 41%,var(--brass) 48%,#f8e3b9 50%,var(--brass) 52%,rgba(194,138,69,.2) 59%,transparent 65%);background-size:100% 300%;background-position:0 100%;filter:drop-shadow(0 0 3px rgba(194,138,69,.5))}
@keyframes visit-rail-flow{from{background-position:0 100%}to{background-position:0 0%}}
@keyframes visit-circle-flow{0%,27.5%,72.5%,100%{background-color:var(--ink);color:var(--brass-2);border-color:rgba(194,138,69,.55);box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 4px 12px rgba(14,42,37,.12)}50%{background-color:var(--brass-2);color:var(--ink);border-color:var(--brass);box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 0 18px rgba(194,138,69,.35),0 4px 12px rgba(14,42,37,.12)}}
@media(prefers-reduced-motion:no-preference){.visit-timeline.has-flow::after{animation:visit-rail-flow 6s linear infinite}.visit-timeline.has-flow .visit-step-number{animation:visit-circle-flow 6s linear infinite;animation-delay:var(--visit-flow-delay)}}
@media(prefers-reduced-motion:reduce){.visit-timeline.has-flow::after{display:none}}
.visit-step h3{margin-top:.25rem;font-size:1.5rem;line-height:1.25}
.visit-step p{grid-column:2;max-width:43ch;margin-top:.5rem;font-size:.9375rem;line-height:1.65;color:var(--copy)}
.visit-bring{padding:1.75rem;border:1px solid rgba(224,183,122,.3);border-top:4px solid var(--brass);border-radius:1rem;background:linear-gradient(135deg,rgba(255,255,255,.1),transparent 50%,rgba(194,138,69,.06)),rgba(14,42,37,.97);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 16px 32px rgba(14,42,37,.12);color:var(--dark-copy)}
.visit-bring h3{margin-top:.65rem;font-size:1.75rem;line-height:1.2}
.visit-bring ul{display:grid;gap:1rem;margin-top:1.25rem;padding:0;list-style:none}
.visit-bring li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.75rem;align-items:start;font-size:.9375rem;line-height:1.6}
.visit-bring li+li{border-top:1px solid rgba(217,227,222,.15);padding-top:1rem}
.visit-bring li b{display:block;margin-bottom:.2rem;color:#fff;font-weight:700}
.visit-bring li i{display:grid;place-items:center;width:1.25rem;height:1.25rem;margin-top:.15rem;border-radius:50%;background:var(--brass)}
.visit-bring li i::before{content:"";width:.55rem;height:.3rem;border-left:2px solid var(--ink);border-bottom:2px solid var(--ink);transform:translateY(-1px) rotate(-45deg)}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.visit-bring li{position:relative;transform-origin:left center;transition:transform .25s ease,color .25s ease}.visit-bring li:hover{z-index:1;transform:scale(1.035);color:#fff}}
.visit-portal{display:flex;width:100%;margin-top:1.25rem}
#visit .visit-portal{background-color:rgba(244,246,242,.94);background-image:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.85) 46%,transparent 64%),linear-gradient(145deg,rgba(255,255,255,.5),transparent);background-size:250% 100%,100% 100%;background-position:100% 0,0 0;background-repeat:no-repeat;border-color:rgba(255,255,255,.65);color:var(--ink);box-shadow:inset 0 1px 0 #fff,0 5px 14px rgba(0,0,0,.15);transition:background-position .7s ease,background-color .2s,transform .2s}
#visit .visit-portal>span{color:var(--brass-dark)}
#visit .visit-portal:hover,#visit .visit-portal:focus-visible{background-position:0 0,0 0;background-color:var(--brass-2);border-color:var(--brass-2)}
@media(max-width:1023px){.visit-layout{grid-template-columns:1fr}.visit-bring ul{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}}
@media(min-width:640px) and (max-width:1023px){.visit-bring li+li{border-top:0;border-left:1px solid rgba(217,227,222,.15);padding-top:0;padding-left:1rem}}
@media(max-width:639px){.visit-timeline{grid-template-rows:auto}.visit-step{column-gap:1rem}.visit-step h3{font-size:1.3rem}.visit-bring{padding:1.5rem}.visit-bring ul{grid-template-columns:1fr;gap:1rem}}
@media(prefers-reduced-motion:reduce){#visit .visit-portal{transition:none}#visit .visit-portal:hover{transform:none}}

/* ---------- Quote ---------- */
.quote{font-family:'Newsreader',Georgia,serif;font-style:italic;font-weight:400;font-size:clamp(1.35rem,2.4vw,1.9rem);line-height:1.35;color:var(--ink)}
.on-dark .quote{color:#fff}

/* ---------- Locations ---------- */
.locations-inner{padding-block:clamp(2.5rem,5vw,4rem)}
.locations-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2rem;margin-bottom:1.75rem}
.locations-heading h2{max-width:54rem;margin-top:1rem;font-size:clamp(2rem,3vw,2.5rem);line-height:1.15}
.locations-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.5rem,3vw,2.5rem);align-items:start}
.office-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:1rem}
.office-cards .loc{display:grid;grid-template-columns:minmax(0,1fr) 5.25rem;grid-template-rows:auto minmax(0,1fr) auto auto;column-gap:1rem;min-width:0;padding:1.1rem 1.2rem}
.office-cards .loc>*{grid-column:1}
.office-cards .loc a{justify-self:start;align-self:end;white-space:nowrap}
.office-cards .loc-thumb{grid-column:2;grid-row:1/-1;align-self:stretch;width:5.25rem;height:auto;min-height:6.5rem;object-fit:cover;border-radius:.7rem;border:1px solid rgba(255,255,255,.14);box-shadow:0 8px 20px rgba(0,0,0,.25);transition:transform .25s ease,border-color .2s}
.office-cards .loc--photo:hover .loc-thumb,.office-cards .loc--photo.is-photo-active .loc-thumb{border-color:var(--brass-2);transform:scale(1.03)}
@media(max-width:480px){.office-cards .loc{grid-template-columns:minmax(0,1fr) 4.25rem}.office-cards .loc-thumb{width:4.25rem}}
@media(prefers-reduced-motion:reduce){.office-cards .loc-thumb{transition:none}.office-cards .loc--photo:hover .loc-thumb{transform:none}}
.office-cards .loc-photo-button{margin-top:.3rem;min-height:28px}
.location-appointment{margin-top:1.25rem;padding:1.5rem}
.location-appointment-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin-top:1.25rem}
.location-appointment-actions .btn-primary{grid-column:1/-1}
.location-appointment-actions a{min-height:44px;padding:.75rem .65rem;font-size:.875rem;white-space:nowrap;text-align:center}
@media(max-width:1023px){.locations-layout{grid-template-columns:1fr;gap:1.75rem}}
@media(max-width:559px){.office-cards{grid-template-columns:1fr;grid-auto-rows:auto}}
@media(max-width:380px){.location-appointment{padding:1.1rem}.location-appointment-actions{grid-template-columns:1fr}}
.location-gallery{position:relative;height:220px;overflow:hidden;border-radius:1rem;background:var(--ink-2);box-shadow:0 18px 40px rgba(0,0,0,.2)}
.location-gallery-slides{height:100%}
.location-gallery-slide{position:absolute;inset:0;margin:0;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .65s ease,visibility .65s}
.location-gallery-slide.is-active{opacity:1;visibility:visible;pointer-events:auto}
.location-gallery-slide::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(14,42,37,.94),rgba(14,42,37,.05) 48%,transparent 70%);pointer-events:none}
.location-gallery-slide img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.location-gallery-slide--carmel img{object-position:38% 35%}
.location-gallery-slide--fishers img{object-position:50% 62%}
.location-gallery-slide figcaption{position:absolute;left:1rem;bottom:1.15rem;z-index:1;max-width:calc(100% - 11rem);font-size:.875rem;font-weight:600;line-height:1.4;color:#fff}
.location-gallery-controls{position:absolute;right:.75rem;bottom:.65rem;z-index:2;display:flex;align-items:center;gap:.25rem}
.location-gallery-controls[hidden]{display:none}
.location-gallery-controls button{display:grid;place-items:center;min-width:44px;min-height:44px;padding:.5rem;border:1px solid rgba(255,255,255,.3);border-radius:.4rem;background:rgba(14,42,37,.8);color:#fff;font:600 .75rem/1.2 'Manrope',sans-serif;cursor:pointer}
.location-gallery-controls button:hover{background:var(--ink);border-color:var(--brass-2)}
.location-gallery-controls button:focus-visible{outline:2px solid var(--brass-2);outline-offset:2px}
.location-gallery-controls svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
@media(min-width:640px){.location-gallery{height:280px}}
@media(prefers-reduced-motion:reduce){.location-gallery-slide{transition:none}}
.loc{padding:1.3rem 1.4rem}
.loc b{display:block;font-family:'Newsreader',Georgia,serif;font-weight:500;font-size:1.25rem;color:#fff}
.loc p{margin-top:.4rem;font-size:.85rem;line-height:1.5;color:var(--dark-copy)}
.loc a{display:inline-block;margin-top:.5rem;font-size:.85rem;font-weight:600;color:var(--brass-2)}
.loc a:hover{color:#fff}
.location-gallery{scroll-margin-top:6rem}
.loc--photo{position:relative;transition:background .2s,border-color .2s,box-shadow .2s}
.loc--photo:hover,.loc--photo:focus-within{background:rgba(255,255,255,.1);border-color:var(--brass-2);box-shadow:0 8px 24px rgba(0,0,0,.15)}
.loc--photo.is-photo-active{border-color:var(--brass)}
.loc--photo a[href^="tel:"]{position:relative;z-index:2}
.loc-photo-button{display:block;margin-top:.65rem;min-height:32px;padding:0;border:0;background:transparent;color:var(--brass-2);font:600 .75rem/1.5 'Manrope',sans-serif;text-align:left;cursor:pointer}
.loc-photo-button[hidden]{display:none}
.loc-photo-button::after{content:"";position:absolute;inset:0;border-radius:1rem;z-index:1}
.loc-photo-button span{margin-left:.35rem}
.loc-photo-button:focus-visible{outline:none}
.loc-photo-button:focus-visible::after{outline:2px solid var(--brass-2);outline-offset:4px}
@media(prefers-reduced-motion:reduce){.loc--photo{transition:none}}

/* ---------- Subpage helpers ---------- */
.prose{font-size:1rem;line-height:1.75}
.prose>*{max-width:68ch}
.prose>.breakout{max-width:none}
.prose p+p{margin-top:1.1rem}
.prose h2{margin-top:2.6rem;font-size:1.85rem;line-height:1.2}
.prose h3{margin-top:1.8rem;font-size:1.3rem;line-height:1.25}
.prose ul{margin-top:.9rem;padding-left:1.2rem;list-style:disc}
.prose li+li{margin-top:.4rem}
.prose a{color:var(--brass-dark);text-decoration:underline;text-underline-offset:3px}
.answer{padding:1.1rem 1.3rem;border-left:3px solid var(--brass);background:var(--chalk);border-radius:0 .8rem .8rem 0;font-size:1rem;line-height:1.65;color:var(--ink)}
.answer b{font-weight:700}
.stamp{display:inline-flex;align-items:center;gap:.6rem;padding:.55rem .9rem;border:1px solid var(--line);border-radius:99px;font-size:.78rem;color:var(--copy);background:#fff}
.stamp i{width:.5rem;height:.5rem;border-radius:50%;background:var(--sage);font-style:normal}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem 0;cursor:pointer;font-family:'Newsreader',Georgia,serif;font-size:1.2rem;font-weight:500;color:var(--ink);list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-family:'Manrope',sans-serif;font-size:1.3rem;color:var(--brass-dark);transition:transform .2s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details>div{padding:0 0 1.2rem;font-size:.95rem;line-height:1.7;max-width:70ch}
.emerg{display:flex;gap:.9rem;align-items:flex-start;padding:1rem 1.2rem;border:1px solid rgba(201,151,58,.45);border-radius:.9rem;background:#FBF6EA;font-size:.9rem;line-height:1.55;color:var(--ink)}
.emerg i{display:grid;flex:0 0 auto;place-items:center;width:1.7rem;height:1.7rem;border-radius:50%;background:var(--brass);color:var(--ink);font-style:normal;font-weight:800}
.toc{position:sticky;top:6rem}
.toc a{display:block;padding:.45rem 0 .45rem .9rem;border-left:2px solid var(--line);font-size:.86rem;color:var(--copy)}
.toc a:hover{border-color:var(--brass);color:var(--ink)}
.compare{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.compare>div{padding:1.4rem;border:1px solid var(--line);border-radius:1rem;background:#fff}
.compare h3{font-size:1.25rem}
.compare ul{margin-top:.8rem;padding-left:1.1rem;list-style:disc;font-size:.9rem;line-height:1.6}
@media(max-width:640px){.compare{grid-template-columns:1fr}}
.timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem}
.timeline>div{padding:1.1rem;border:1px solid var(--line);border-radius:.9rem;background:#fff}
.timeline b{display:block;font-family:'Newsreader',Georgia,serif;font-weight:500;font-size:1.05rem;color:var(--ink)}
.timeline small{display:block;margin-top:.15rem;font-size:.72rem;font-weight:600;color:var(--brass-dark)}
.timeline p{margin-top:.5rem;font-size:.84rem;line-height:1.55}
@media(max-width:900px){.timeline{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.timeline{grid-template-columns:1fr}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Logo */
/* Header: white at the top of the page, green once scrolled */
.site-header{transition:background-color .35s ease,border-color .35s ease,box-shadow .35s ease}
.site-header a,.site-header button,.site-header .nav-sep{transition:color .35s ease,background-color .35s ease,border-color .35s ease}
.site-header .logo-img--dark{display:none}
.site-header.is-top{background:#fff;border-bottom-color:var(--line);box-shadow:0 1px 0 rgba(14,42,37,.04)}
.site-header.is-top .logo-img--light{display:none}
.site-header.is-top .logo-img--dark{display:block}
.site-header.is-top nav[aria-label="Primary"]>a,.site-header.is-top .navdrop>button{color:var(--ink)}
.site-header.is-top nav[aria-label="Primary"]>a:hover,.site-header.is-top .navdrop>button:hover{color:var(--brass-dark)}
.site-header.is-top .nav-sep{background:rgba(143,98,56,.35)}
.site-header.is-top .btn-ghost{border-color:var(--ink);color:var(--ink)}
.site-header.is-top .btn-ghost:hover{border-color:var(--brass-dark);color:var(--brass-dark)}
.site-header.is-top #menuBtn{color:var(--ink)}
.site-header.is-top #mobileMenu{background:#fff;border-top-color:var(--line)}
.site-header.is-top #mobileMenu a,.site-header.is-top #mobileMenu .m-acc{color:var(--ink)}
.site-header.is-top #mobileMenu .text-\[\#9DB4AA\]{color:var(--copy)}
.site-header.is-top #mobileMenu .text-\[\#E4BE6E\]{color:var(--brass-dark)}
.site-header.is-top #mobileMenu .btn-primary{color:var(--ink)}
@media(prefers-reduced-motion:reduce){.site-header,.site-header a,.site-header button,.site-header .nav-sep{transition:none}}
.logo-img{display:block;height:2.75rem;width:auto}
.logo-img--footer{height:2.4rem}
@media(max-width:640px){.logo-img{height:2.3rem}}

/* Shared footer: contact card, navigation, and office strip. */
.site-footer{background:var(--chalk);border-top:1px solid var(--line);color:var(--copy)}
.site-footer-inner{max-width:1280px;margin:0 auto;padding:3.5rem 2rem 2rem}
.site-footer-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,2.1fr);gap:clamp(2rem,4vw,4rem);align-items:start}
.footer-contact{padding:1.7rem;border:1px solid rgba(224,183,122,.25);border-radius:1rem;background:var(--ink);color:var(--dark-copy)}
.footer-brand{display:inline-block;max-width:100%}
.footer-brand img{display:block;width:220px;max-width:100%;height:auto}
.footer-contact-title{margin-top:1.25rem;font-family:'Newsreader',Georgia,serif;font-size:1.6rem;line-height:1.2;color:#fff}
.footer-contact-copy{margin-top:.6rem;font-size:.8125rem;line-height:1.75;color:var(--dark-copy)}
.footer-call{margin-top:1.4rem;padding-top:1.1rem;border-top:1px solid rgba(157,180,170,.25)}
.footer-call>span{display:block;font-size:.6875rem;font-weight:600;color:var(--dark-muted)}
.footer-call>a{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-top:.35rem;padding:.2rem 0;font-family:'Newsreader',Georgia,serif;font-size:1.8rem;line-height:1.25;color:#fff;white-space:nowrap}
.footer-call svg{width:1.2rem;height:1.2rem;flex-shrink:0;color:var(--brass-2)}
.footer-call>a:hover{color:var(--brass-2)}
.footer-book{display:flex;align-items:center;justify-content:space-between;gap:.75rem;min-height:46px;margin-top:1rem;padding:.8rem 1rem;border-radius:.5rem;background:var(--brass);color:var(--ink);font-size:.8125rem;font-weight:700;line-height:1.4;box-shadow:var(--button-glow);transition:background .2s,box-shadow .25s}
.footer-book:hover,.footer-book:focus-visible{background:var(--brass-2);box-shadow:var(--button-glow-hover)}
.footer-book>span{font-size:1.15rem}
.footer-navigation{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem 1.5rem;padding-top:.75rem}
.footer-link-group h2{max-width:12rem;min-height:4.3rem;font-size:1.35rem;line-height:1.2;color:var(--ink)}
.footer-link-group h2::before{content:'';display:block;width:1.8rem;height:2px;margin-bottom:.85rem;background:var(--brass)}
.footer-link-group ul{display:grid;gap:.25rem;margin-top:1rem;padding:0;list-style:none}
.footer-link-group li a{display:inline-block;padding:.35rem 0;font-size:.8125rem;line-height:1.55;color:var(--copy)}
.footer-link-group a:hover{color:var(--brass-dark);text-decoration:underline;text-underline-offset:4px}
.footer-all{display:inline-flex;align-items:center;gap:.6rem;margin-top:.9rem;padding:.35rem 0;font-size:.8125rem;line-height:1.5;font-weight:700;color:var(--brass-dark)}
.footer-external{margin-left:.2rem;color:var(--brass-dark)}
.footer-affiliation{position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center;gap:1rem;min-width:0;flex:1;padding:1.1rem 1.2rem;border:1px solid rgba(14,42,37,.13);border-left:3px solid var(--brass);border-radius:.75rem;background:linear-gradient(120deg,rgba(255,255,255,.94),rgba(255,255,255,.55) 65%,rgba(127,169,155,.12));-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:inset 0 1px 0 #fff,0 8px 20px -8px rgba(14,42,37,.16)}
.footer-affiliation::before{content:"";position:absolute;z-index:-1;right:-.5rem;top:50%;width:7rem;height:8.8rem;transform:translateY(-50%);background:url('/assets/img/iu-trident.png') center/contain no-repeat;filter:grayscale(1);mix-blend-mode:multiply;opacity:.055;pointer-events:none}
.footer-affiliation>img{display:block;flex:0 0 auto;width:2.25rem;height:auto;mix-blend-mode:multiply}
.footer-affiliation>div{min-width:0}
.footer-affiliation-label{display:block;font-size:.625rem;font-weight:700;line-height:1.4;color:var(--brass-dark);margin-bottom:.35rem}
.footer-affiliation strong{display:block;font-family:'Newsreader',Georgia,serif;font-size:1.15rem;font-weight:500;line-height:1.2;color:var(--ink)}
.footer-affiliation p{margin-top:.4rem;font-size:.75rem;line-height:1.6;color:var(--copy)}
.footer-offices{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin-top:2.5rem;padding:1.15rem 1.5rem;border:1px solid rgba(14,42,37,.16);border-top:2px solid rgba(194,138,69,.65);border-radius:.8rem;background:linear-gradient(115deg,transparent 20%,rgba(255,255,255,.9) 42%,transparent 64%),linear-gradient(155deg,rgba(255,255,255,.9),rgba(217,227,222,.55));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:inset 0 1px 0 #fff,inset 1px 0 0 rgba(255,255,255,.75),0 12px 26px -10px rgba(14,42,37,.2)}
.footer-offices-heading{display:flex;align-items:center;gap:.7rem;font-size:.8125rem;line-height:1.55;color:var(--copy)}
.footer-offices-heading>svg{width:1.5rem;height:1.5rem;color:var(--brass-dark);flex-shrink:0}
.footer-offices-heading strong{color:var(--ink);font-weight:600}
.footer-offices ul{display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem 1.6rem;list-style:none;margin:0;padding:0}
.footer-offices li{font-family:'Newsreader',Georgia,serif;font-size:1.2rem;line-height:1.4;color:var(--ink)}
.footer-offices>a{align-self:center;gap:.85rem;font-size:.8125rem;white-space:nowrap;background-color:var(--ink);background-image:linear-gradient(115deg,transparent 28%,rgba(255,255,255,.22) 46%,transparent 68%),linear-gradient(155deg,rgba(255,255,255,.16),transparent 65%);border-color:rgba(224,183,122,.5);color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.38),0 5px 14px rgba(14,42,37,.18)}
.footer-offices>a>span{color:var(--brass-2)}
.footer-offices>a:is(:hover,:focus-visible){border-color:var(--brass);box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 9px 20px rgba(14,42,37,.22)}
.footer-legal{background:var(--ink-3);color:var(--dark-muted)}
.footer-legal>div{display:flex;justify-content:space-between;gap:1rem 3rem;max-width:1280px;margin:0 auto;padding:1.4rem 2rem;font-size:.6875rem;line-height:1.7}
.footer-legal p:last-child{max-width:38rem}
.footer-credit{display:flex;justify-content:center;padding:.75rem 1.25rem;background:var(--ink-3);border-top:1px solid rgba(217,227,222,.12)}
.footer-credit a{display:inline-flex;align-items:center;gap:.45rem;min-height:36px;color:var(--dark-muted);font-size:.75rem;line-height:1.4;text-decoration:none;border-radius:.35rem}
.footer-credit img{display:block;flex-shrink:0;width:28px;height:28px}
.footer-credit strong{font-weight:600;color:var(--dark-copy)}
.footer-credit a>span:last-child{margin-left:.2rem;color:var(--brass-2)}
.footer-credit a:hover strong{text-decoration:underline;text-underline-offset:4px;color:#fff}
.footer-credit a:focus-visible{outline:2px solid var(--brass-2);outline-offset:5px}
.site-footer a:focus-visible,.site-footer summary:focus-visible{outline:3px solid var(--brass);outline-offset:4px;border-radius:.2rem}
.footer-contact a:focus-visible{outline-color:var(--brass-2)}
@media(max-width:1023px){.site-footer-grid{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:2rem}.footer-navigation{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-link-group:last-of-type{grid-column:1/-1}.footer-link-group:last-of-type ul{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:1.5rem}.footer-contact{padding:1.4rem}.footer-offices{flex-wrap:wrap}.footer-offices ul{justify-content:flex-start}.footer-legal>div{flex-direction:column;gap:.6rem}}
@media(max-width:767px){.site-footer-inner{padding:2.5rem 1.25rem 1.5rem}.site-footer-grid{grid-template-columns:1fr;gap:2rem}.footer-contact{max-width:none;padding:1.5rem}.footer-call>a{justify-content:flex-start;gap:1rem}.footer-navigation{gap:1.75rem 1.25rem}.footer-link-group h2{font-size:1.25rem;min-height:0}.footer-offices{align-items:flex-start;gap:1rem;padding:1.15rem}.footer-offices-heading{width:100%}.footer-offices-heading br{display:none}.footer-offices-heading strong{margin-left:.25rem}.footer-offices ul{width:100%;gap:.4rem 1.25rem}.footer-offices>a{min-height:46px;align-self:flex-start}.footer-legal>div{padding:1.25rem;font-size:.6875rem}}
@media(prefers-reduced-motion:reduce){.footer-book{transition:none}}

/* Verifiable role rows (cred-lightbox.js) */
.role--verifiable{position:relative;z-index:0;cursor:pointer;grid-template-columns:1fr auto auto;border-radius:.7rem;margin:0 -.75rem;padding-left:.75rem;padding-right:.75rem;border-bottom-color:transparent;transition:background .22s ease,transform .22s cubic-bezier(.2,.7,.3,1),box-shadow .22s ease}
.role--verifiable+.role--verifiable{border-top:1px solid rgba(255,255,255,.12)}
.role--verifiable:hover,.role--verifiable:focus-visible{z-index:1;background:linear-gradient(135deg,rgba(255,255,255,.1),rgba(194,138,69,.14));transform:translateY(-3px) scale(1.015);box-shadow:0 14px 30px rgba(0,0,0,.35),0 0 0 1px rgba(224,183,122,.45);outline:none}
.role--verifiable:active{transform:translateY(-1px) scale(1.005);transition-duration:.08s}
@media(prefers-reduced-motion:reduce){.role--verifiable,.role--verifiable:hover,.role--verifiable:focus-visible{transform:none;transition:none}}
.role--verifiable:focus-visible{box-shadow:0 0 0 2px rgba(224,183,122,.6)}
.role--verifiable:hover b{color:var(--brass-2)}
.role-verify{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .55rem;border:1px solid rgba(224,183,122,.4);border-radius:99px;font-size:.66rem;font-weight:700;color:var(--brass-2);white-space:nowrap;transition:background .2s,color .2s}
.role-verify::after{content:"\2197";font-size:.7rem}
.role--verifiable:hover .role-verify{background:var(--brass);color:var(--ink);border-color:var(--brass)}
@media(max-width:560px){.role--verifiable{grid-template-columns:1fr auto}.role--verifiable em{display:none}}

/* Frosted surfaces for the research credential links and their source pills. */
#research .roles-fill{gap:.55rem}
#research .role--verifiable{border:1px solid rgba(217,227,222,.2);background-color:rgba(255,255,255,.045);background-image:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.12) 46%,transparent 64%),linear-gradient(145deg,rgba(255,255,255,.08),transparent 65%);background-size:250% 100%,100% 100%;background-position:100% 0,0 0;background-repeat:no-repeat;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 5px 14px rgba(0,0,0,.1);transition:background-position .7s ease,border-color .2s,box-shadow .2s,transform .2s}
#research .role--verifiable small{color:var(--dark-copy)}
#research .role--verifiable:hover,#research .role--verifiable:focus-visible{background-position:0 0,0 0;border-color:rgba(224,183,122,.7);transform:translateY(-2px);box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 10px 24px rgba(0,0,0,.2),0 0 14px rgba(194,138,69,.08)}
#research .role--verifiable:focus-visible{outline:2px solid var(--brass-2);outline-offset:3px}
#research .role-verify{display:inline-flex;justify-content:space-between;gap:.7rem;min-width:6.25rem;min-height:44px;padding:.3rem .35rem .3rem .8rem;border:1px solid rgba(255,255,255,.7);border-radius:.55rem;background-color:rgba(244,246,242,.94);background-image:linear-gradient(135deg,rgba(255,255,255,.8),transparent 60%);color:var(--ink);font-size:.75rem;box-shadow:inset 0 1px 0 #fff,0 4px 10px rgba(0,0,0,.18);transition:background-color .2s,border-color .2s,box-shadow .2s}
#research .role-verify::after{display:grid;place-items:center;flex-shrink:0;width:1.8rem;height:1.8rem;border-left:1px solid rgba(143,98,56,.25);border-radius:0 .3rem .3rem 0;background:rgba(194,138,69,.1);color:var(--brass-dark);font-size:1rem;transition:background-color .2s,color .2s}
#research .role--verifiable:hover .role-verify,#research .role--verifiable:focus-visible .role-verify{background-color:var(--brass-2);border-color:var(--brass-2);color:var(--ink);box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 5px 14px rgba(0,0,0,.2),0 0 14px rgba(194,138,69,.16)}
#research .role--verifiable:hover .role-verify::after,#research .role--verifiable:focus-visible .role-verify::after{background:rgba(14,42,37,.1);color:var(--ink)}
@media(max-width:560px){#research .role-verify{min-width:5.5rem;gap:.35rem;padding-left:.6rem}}
@media(prefers-reduced-motion:reduce){#research .role--verifiable,#research .role-verify,#research .role-verify::after{transition:none}#research .role--verifiable:hover,#research .role--verifiable:focus-visible{transform:none}}

/* Credential tiles as lightbox triggers */

/* Verifiable award rows */
.award--verifiable{cursor:pointer;border-radius:.6rem;margin:0 -.5rem;padding:.4rem .5rem;transition:background .2s ease,transform .22s cubic-bezier(.2,.7,.3,1)}
.award--verifiable .role-verify{margin-left:.5rem;vertical-align:middle;color:var(--brass-dark);border-color:rgba(143,98,56,.4)}
.on-dark .award--verifiable .role-verify{color:var(--brass-2);border-color:rgba(224,183,122,.4)}
.award--verifiable:hover,.award--verifiable:focus-visible{background:rgba(194,138,69,.1);transform:translateY(-2px);outline:none}
.award--verifiable:hover .role-verify{background:var(--brass);color:var(--ink);border-color:var(--brass)}
.award--verifiable:hover b{color:var(--brass-dark)}.on-dark .award--verifiable:hover b{color:var(--brass-2)}
@media(prefers-reduced-motion:reduce){.award--verifiable{transition:none;transform:none!important}}

/* ---------- Patient reviews (Google) ---------- */
.rv-summary{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem 1rem}
.rv-big{font-family:'Newsreader',Georgia,serif;font-size:3.2rem;line-height:1;color:var(--ink);letter-spacing:-.03em}
.rv-summary-stars{display:inline-flex;gap:.15rem}
.rv-summary-stars i{position:relative;width:1.35rem;height:1.35rem;display:inline-block;background:linear-gradient(90deg,var(--brass) var(--fill),#D9DED9 var(--fill));-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2.5l2.9 6.2 6.8.8-5 4.7 1.3 6.8L12 17.7 6 21l1.3-6.8-5-4.7 6.8-.8z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2.5l2.9 6.2 6.8.8-5 4.7 1.3 6.8L12 17.7 6 21l1.3-6.8-5-4.7 6.8-.8z'/%3E%3C/svg%3E") center/contain no-repeat}
.rv-summary-count{flex-basis:100%;font-size:.85rem;color:var(--copy)}
.rv-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:2rem 4rem;align-items:center}
.rv-head-copy{padding-bottom:.25rem}
.rv-intro{max-width:34rem;margin-top:1.1rem;font-size:1.0625rem;line-height:1.7}
.rv-google-panel{padding:1.75rem 2rem;background-color:rgba(255,255,255,.72);background-image:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.85) 46%,rgba(255,255,255,.2) 52%,transparent 64%),linear-gradient(145deg,rgba(255,255,255,.65),rgba(255,255,255,.1) 48%,rgba(127,169,155,.12));background-size:250% 100%,100% 100%;background-position:100% 0,0 0;background-repeat:no-repeat;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.85);border-top:4px solid var(--brass);border-radius:1rem;box-shadow:inset 0 1px 0 #fff,inset 1px 0 0 rgba(255,255,255,.9),inset 0 -1px 0 rgba(14,42,37,.08),0 18px 35px -12px rgba(14,42,37,.25);transition:background-position .8s ease,box-shadow .25s,transform .25s}
.rv-google-panel:hover,.rv-google-panel:focus-within{background-position:0 0,0 0;box-shadow:inset 0 1px 0 #fff,inset 1px 0 0 rgba(255,255,255,.9),inset 0 -1px 0 rgba(14,42,37,.08),0 18px 40px rgba(14,42,37,.13)}
@media(prefers-reduced-motion:reduce){.rv-google-panel{transition:none}}
.rv-google-brand{display:flex;align-items:center;gap:.8rem}
.rv-google-brand img{display:block;width:7rem;height:auto}
.rv-google-brand>span{color:var(--copy);font-size:1.125rem;font-weight:600}
.rv-google-score{display:flex;align-items:center;flex-wrap:wrap;gap:1rem 1.75rem;margin-top:1.5rem}
.rv-google-value{display:flex;align-items:baseline;gap:.5rem}
.rv-google-value .rv-big{font-size:4.5rem}
.rv-out-of{font-size:.875rem;color:var(--copy)}
.rv-google-detail{display:grid;gap:.5rem}
.rv-google-detail .rv-summary-stars{gap:.2rem}
.rv-google-detail .rv-summary-stars i{width:1.6rem;height:1.6rem}
.rv-google-detail p{font-size:.875rem;line-height:1.5;color:var(--copy)}
.rv-google-detail strong{font-weight:700;color:var(--ink)}
.rv-google-link{display:flex;justify-content:space-between;align-items:center;gap:1rem;min-height:3rem;margin-top:1.5rem;padding:.7rem .8rem .7rem 1rem;border:1px solid rgba(224,183,122,.5);border-radius:.65rem;background-color:var(--ink);background-image:linear-gradient(115deg,transparent 28%,rgba(255,255,255,.25) 46%,transparent 68%),linear-gradient(155deg,rgba(255,255,255,.16),transparent 65%);background-size:250% 100%,100% 100%;background-position:65% 0,0 0;background-repeat:no-repeat;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 5px 14px rgba(14,42,37,.16);font-size:.875rem;font-weight:700;color:#fff;transition:background-position .7s ease,box-shadow .25s,border-color .25s}
.rv-google-link span{display:grid;place-items:center;flex-shrink:0;width:1.85rem;height:1.85rem;border:1px solid rgba(224,183,122,.3);border-radius:.4rem;background:rgba(255,255,255,.07);font-size:1.2rem;color:var(--brass-2)}
.rv-google-link:is(:hover,:focus-visible){background-position:0 0,0 0;border-color:var(--brass);box-shadow:inset 0 1px 0 rgba(255,255,255,.55),0 8px 18px rgba(14,42,37,.22);text-decoration:none}
.rv-google-link:focus-visible{outline:3px solid var(--brass-dark);outline-offset:4px}
.rv-source-note{max-width:55rem;margin-top:1.25rem;font-size:.75rem;line-height:1.65;color:var(--copy)}
@media(max-width:639px){.rv-google-panel{padding:1.5rem}.rv-google-score{gap:1rem 1.25rem}.rv-google-value .rv-big{font-size:4rem}}
.rv-themes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin-top:2.75rem}
.rv-theme{min-width:0;padding:1.5rem 1.6rem 1.35rem;border:1px solid rgba(14,42,37,.13);border-top:3px solid var(--brass);border-radius:1.1rem;background-color:rgba(255,255,255,.82);background-image:linear-gradient(115deg,transparent 28%,rgba(255,255,255,.95) 46%,transparent 65%),linear-gradient(155deg,rgba(255,255,255,.8) 35%,rgba(127,169,155,.13));background-size:250% 100%,100% 100%;background-position:65% 0,0 0;background-repeat:no-repeat;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:inset 0 1px 0 #fff,inset 1px 0 0 rgba(255,255,255,.8),0 14px 28px -12px rgba(14,42,37,.23);transition:transform .25s ease,background-position .8s ease,border-color .25s,box-shadow .25s}
@media(hover:hover) and (pointer:fine){.rv-theme:hover,.rv-google-panel:hover{transform:translateY(-4px)}.rv-theme:hover{background-position:0 0,0 0;border-color:rgba(194,138,69,.65);box-shadow:inset 0 1px 0 #fff,0 22px 36px -12px rgba(14,42,37,.28)}}
@media(prefers-reduced-motion:reduce){.rv-theme,.rv-google-panel,.rv-google-link{transition:none}.rv-theme:hover,.rv-google-panel:hover{transform:none}}
.rv-theme h3{display:flex;align-items:center;gap:.65rem;padding-bottom:1rem;border-bottom:1px solid rgba(194,138,69,.24);font-size:1.45rem;line-height:1.1;color:var(--ink)}
.rv-theme h3::before{content:"";width:1.4rem;height:2px;border-radius:2px;background:var(--brass)}
.rv-q{position:relative;margin:0;padding:1.1rem 0 0 1.5rem}
.rv-q+.rv-q{margin-top:.9rem;border-top:1px solid var(--line)}
.rv-q::before{content:"\201C";position:absolute;left:0;top:.95rem;font-family:'Newsreader',Georgia,serif;font-size:2rem;line-height:1;color:var(--brass)}
.rv-q blockquote{font-family:'Newsreader',Georgia,serif;font-size:1.06rem;line-height:1.5;color:var(--ink)}
.rv-q figcaption{margin-top:.55rem;font-size:.78rem;color:#6b7773}
.rv-q figcaption b{margin-right:.35rem;font-weight:700;color:var(--ink)}
@media(max-width:1023px){.rv-head{grid-template-columns:1fr;gap:1.5rem}.rv-themes{grid-template-columns:1fr;gap:1rem;margin-top:2rem}}
.rv-grid{columns:2;column-gap:1rem}
@media(max-width:640px){.rv-grid{columns:1}}
.rv-card{break-inside:avoid;display:flex;flex-direction:column;margin:0 0 1rem;padding:1.4rem 1.5rem 1.25rem;background:#fff;border:1px solid var(--line);border-radius:1rem;box-shadow:0 10px 28px rgba(14,42,37,.06);transition:transform .22s cubic-bezier(.2,.7,.3,1),box-shadow .22s ease,border-color .22s ease}
.rv-card:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(14,42,37,.12);border-color:rgba(194,138,69,.5)}
.rv-card{position:relative}
.rv-card::before{content:"\201C";position:absolute;left:.55rem;top:.35rem;color:var(--brass);font-family:'Newsreader',Georgia,serif;font-size:2.2rem;line-height:1;opacity:.85}
.rv-text{font-family:'Newsreader',Georgia,serif;font-size:1.08rem;line-height:1.55;color:var(--ink)}
.rv-card--long .rv-text{display:-webkit-box;-webkit-line-clamp:7;-webkit-box-orient:vertical;overflow:hidden}
.rv-card--long.is-open .rv-text{display:block;-webkit-line-clamp:unset}
.rv-more{align-self:flex-start;margin-top:.5rem;padding:0;border:0;background:none;font-size:.8rem;font-weight:700;color:var(--brass-dark);cursor:pointer}
.rv-more:hover{color:var(--ink)}
.rv-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .6rem;margin-top:1rem;padding-top:.85rem;border-top:1px solid var(--line);font-size:.8rem;color:var(--copy)}
.rv-stars{color:var(--brass);letter-spacing:.05em;font-size:.9rem}
.rv-name{font-weight:700;color:var(--ink)}
.rv-date{flex-basis:100%;color:#6b7773}
.on-dark .rv-card{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.14)}

/* Recognition tiles */
/* Publication counts by journal. */
.jrow-head{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:.75rem 2rem;margin-bottom:1.25rem}
.jrow-description{margin-top:.45rem;font-size:.9375rem;line-height:1.6;color:var(--dark-copy)}
.jrow-date{font-size:.75rem;line-height:1.5;color:var(--dark-muted)}
.jrow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;list-style:none;margin:0;padding:0}
.journal-card{display:flex;flex-direction:column;justify-content:space-between;gap:1.25rem;min-width:0;padding:1.25rem 1.4rem;border:1px solid rgba(255,255,255,.75);border-top:3px solid var(--brass);border-radius:.75rem;background-color:rgba(244,246,242,.86);background-image:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.8) 46%,rgba(255,255,255,.15) 52%,transparent 64%),linear-gradient(145deg,rgba(255,255,255,.6),rgba(255,255,255,.08) 55%,rgba(127,169,155,.1));background-size:250% 100%,100% 100%;background-position:100% 0,0 0;background-repeat:no-repeat;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:inset 0 1px 0 #fff,inset 1px 0 0 rgba(255,255,255,.7),0 8px 24px rgba(0,0,0,.12)}
.on-dark .journal-card h3{font-size:1.25rem;line-height:1.25;color:var(--ink)}
.journal-card>p{display:flex;align-items:baseline;gap:.6rem}
.journal-card strong{font-family:'Newsreader',Georgia,serif;font-size:2.75rem;font-weight:500;letter-spacing:-.025em;line-height:1;color:var(--brass-dark)}
.journal-card>p>span{font-size:.8125rem;line-height:1.5;color:var(--copy)}
.jrow>li{min-width:0}
a.journal-card{height:100%;text-decoration:none;transition:background-position .7s ease,transform .2s,border-color .2s,box-shadow .2s}
.journal-card>p>.journal-card-arrow{margin-left:auto;display:grid;place-items:center;width:1.8rem;height:1.8rem;border-radius:50%;background:rgba(194,138,69,.12);color:var(--brass-dark);font-size:1.25rem;transition:transform .2s}
a.journal-card:hover,a.journal-card:focus-visible{background-position:0 0,0 0;border-color:var(--brass);transform:translateY(-3px);box-shadow:inset 0 1px 0 #fff,inset 1px 0 0 rgba(255,255,255,.85),0 12px 28px rgba(0,0,0,.2),0 0 14px rgba(194,138,69,.1)}
a.journal-card:hover h3{text-decoration:underline;text-underline-offset:4px}
a.journal-card:focus-visible{outline:3px solid var(--brass-2);outline-offset:4px}
a.journal-card:hover .journal-card-arrow{transform:translateX(3px)}
.publication-filter{margin-bottom:1.5rem;padding:1rem 1.25rem;border-left:3px solid var(--brass);border-radius:0 .6rem .6rem 0;background:var(--chalk)}
.publication-filter p{margin:0;font-weight:700;color:var(--ink)}
.publication-filter a{display:inline-block;margin-top:.5rem;font-size:.875rem}
#publications [hidden]{display:none}
@media(prefers-reduced-motion:reduce){a.journal-card,.journal-card-arrow{transition:none}a.journal-card:hover,a.journal-card:focus-visible,a.journal-card:hover .journal-card-arrow{transform:none}}
@media(max-width:767px){.jrow{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.journal-card{padding:1.1rem}.on-dark .journal-card h3{font-size:1.125rem}}
@media(max-width:359px){.jrow{grid-template-columns:1fr}}
/* Recognition timeline */
.rc{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.5fr);gap:2.5rem 4rem;align-items:start}
.rc-stat{display:flex;align-items:center;gap:1.25rem;margin-top:1.5rem;padding:1.25rem;border:1px solid rgba(194,138,69,.22);border-left:3px solid var(--brass);border-radius:0 .75rem .75rem 0;background:linear-gradient(135deg,rgba(255,255,255,.85),rgba(224,183,122,.12) 55%,rgba(127,169,155,.13));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:inset 0 1px 0 #fff,0 8px 22px rgba(14,42,37,.06)}
.rc-big{font-family:'Newsreader',Georgia,serif;font-size:clamp(3.5rem,6vw,5rem);line-height:.9;letter-spacing:-.04em;color:var(--brass-dark)}
.rc-big-cap{max-width:18rem;font-family:'Newsreader',Georgia,serif;font-size:1.15rem;line-height:1.3;color:var(--ink)}
.rc-note{margin-top:1.25rem;max-width:24rem;font-size:.86rem;line-height:1.55;color:var(--copy)}
.rc-chart{display:grid;gap:.6rem}
.rc-head,.rc-row.award{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1.6fr) 6.25rem;gap:1rem;align-items:center}
.rc-head{padding:0 .75rem .35rem}
.rc-yl{display:block;text-align:center;font-size:.72rem;font-weight:700;color:var(--slate);letter-spacing:.02em}
.rc-years{display:grid;grid-template-columns:repeat(6,minmax(0,1fr))}
.rc-row.award{margin:0;padding:.85rem .75rem;border:1px solid rgba(14,42,37,.14);border-radius:.85rem;background-color:rgba(244,246,242,.7);background-image:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.9) 46%,transparent 64%),linear-gradient(145deg,rgba(255,255,255,.85),rgba(127,169,155,.08));background-size:250% 100%,100% 100%;background-position:100% 0,0 0;background-repeat:no-repeat;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:inset 0 1px 0 #fff,0 5px 14px rgba(14,42,37,.05);font-size:.85rem;line-height:1.4;transition:border-color .2s,box-shadow .22s,transform .22s,background-position .7s ease}
.rc-row.award--verifiable{margin:0;padding:.85rem .75rem;border-radius:.85rem}
.rc-row.award:hover,.rc-row.award:focus-visible{background-position:0 0,0 0;border-color:rgba(194,138,69,.7);box-shadow:inset 0 1px 0 #fff,0 12px 28px rgba(14,42,37,.1);transform:translateY(-2px)}
.rc-row.award:focus-visible{outline:3px solid var(--brass-dark);outline-offset:3px}
.rc-label{display:grid;gap:.1rem;min-width:0}
.rc-label small{font-size:.72rem;font-weight:600;color:var(--brass-dark)}
.rc-label b{font-family:'Newsreader',Georgia,serif;font-weight:500;font-size:1.08rem;line-height:1.2;color:var(--ink)}
.rc-y{position:relative;display:grid;place-items:center;height:2rem}
.rc-y::after{content:"";width:.7rem;height:.7rem;border-radius:50%;border:1.5px solid var(--line);background:#fff;transition:transform .2s}
.rc-y.on::after{width:.85rem;height:.85rem;border-color:var(--brass);background:var(--brass);box-shadow:0 0 0 4px rgba(194,138,69,.16)}
.rc-y.run::before{content:"";position:absolute;left:50%;right:-50%;top:50%;height:3px;margin-top:-1.5px;background:var(--brass);opacity:.5}
.rc-row.award:hover .rc-y.on::after{transform:scale(1.15)}
.rc-row.award .role-verify{display:inline-flex;align-items:center;justify-content:space-between;justify-self:end;gap:.7rem;min-width:6.25rem;min-height:44px;margin:0;padding:.3rem .35rem .3rem .8rem;border:1px solid rgba(224,183,122,.5);border-radius:.55rem;background:linear-gradient(145deg,rgba(255,255,255,.15),transparent 65%),var(--ink);color:#fff;font-size:.75rem;box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 3px 8px rgba(14,42,37,.12)}
.rc-row.award .role-verify::after{display:grid;place-items:center;width:1.8rem;height:1.8rem;border-left:1px solid rgba(224,183,122,.25);border-radius:0 .3rem .3rem 0;background:rgba(224,183,122,.1);color:var(--brass-2);font-size:1rem}
.rc-row.award:hover .role-verify,.rc-row.award:focus-visible .role-verify{background:linear-gradient(145deg,rgba(255,255,255,.3),transparent 70%),var(--brass-2);color:var(--ink);border-color:var(--brass)}
.rc-row.award:hover .role-verify::after,.rc-row.award:focus-visible .role-verify::after{color:var(--ink);border-left-color:rgba(14,42,37,.2)}
@media(max-width:1023px){.rc{grid-template-columns:1fr;gap:2rem}.rc-note{max-width:36rem}}
@media(max-width:640px){.rc-head,.rc-row.award{grid-template-columns:1fr auto;gap:.5rem .75rem}.rc-head{display:none}.rc-years{grid-column:1/-1;grid-template-columns:repeat(6,minmax(0,1fr));border-top:1px dashed var(--line);margin-top:.35rem;padding-top:.25rem}
.rc-y{height:2.4rem;grid-template-rows:1.4rem 1rem}
.rc-y::after{grid-row:1}
.rc-y::before,.rc-y.run::before{content:attr(data-y);position:static;grid-row:2;height:auto;margin:0;background:none;font-size:.6rem;line-height:1;color:var(--slate)}
.rc-y.run{background:linear-gradient(rgba(194,138,69,.5),rgba(194,138,69,.5)) right .6rem/50% 3px no-repeat}
.rc-y.run+.rc-y.on{background:linear-gradient(rgba(194,138,69,.5),rgba(194,138,69,.5)) left .6rem/50% 3px no-repeat}
.rc-y.run+.rc-y.run{background:linear-gradient(rgba(194,138,69,.5),rgba(194,138,69,.5)) left .6rem/50% 3px no-repeat,linear-gradient(rgba(194,138,69,.5),rgba(194,138,69,.5)) right .6rem/50% 3px no-repeat}}
@media(prefers-reduced-motion:reduce){.rc-row.award,.rc-y::after,.rc-row .role-verify{transition:none}.rc-row.award:hover,.rc-row.award:focus-visible,.rc-row.award:hover .rc-y.on::after{transform:none}}
/* Recognition tiles on a light section */
.award--tile.award--tile--light{border-color:var(--line);background:#fff;box-shadow:0 8px 24px rgba(14,42,37,.06)}
.award--tile.award--tile--light small{color:var(--brass-dark)}
.award--tile.award--tile--light b{color:var(--ink)}
.award--tile.award--tile--light span{color:var(--copy)}
.award--tile.award--tile--light.award--verifiable:hover,.award--tile.award--tile--light.award--verifiable:focus-visible{background:linear-gradient(135deg,#fff,rgba(194,138,69,.08));box-shadow:0 16px 34px rgba(14,42,37,.12),0 0 0 1px rgba(194,138,69,.45)}
.award--tile.award--tile--light.award--verifiable:hover b{color:var(--brass-dark)}
.award--tile{position:relative;display:flex;flex-direction:column;gap:.2rem;min-height:8.2rem;margin:0!important;padding:1.1rem 1.2rem 1.15rem;border:1px solid rgba(255,255,255,.14);border-radius:.9rem;background:rgba(255,255,255,.05);font-size:.85rem;line-height:1.45}
.award--tile small{font-size:.72rem;font-weight:600;color:var(--brass-2);padding-right:4.5rem}
.award--tile b{font-family:'Newsreader',Georgia,serif;font-weight:500;font-size:1.3rem;line-height:1.15;color:#fff;margin-top:.15rem}
.award--tile span{color:var(--dark-muted);margin-top:.2rem}
.award--tile .role-verify{position:absolute;top:.85rem;right:.85rem;margin:0}
.award--tile.award--verifiable:hover,.award--tile.award--verifiable:focus-visible{background:linear-gradient(135deg,rgba(255,255,255,.1),rgba(194,138,69,.14));transform:translateY(-3px);box-shadow:0 14px 30px rgba(0,0,0,.35),0 0 0 1px rgba(224,183,122,.45)}
.award--tile.award--verifiable:hover b{color:var(--brass-2)}

/* ---------- Illustrated focus areas ---------- */
.focus-section{background-color:var(--ink);overflow:hidden}
.focus-heading{position:relative;isolation:isolate;display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:end}
/* A full-width illuminated band frames the heading without adding more copy. */
.focus-heading::before{content:"";position:absolute;z-index:-1;left:50%;top:-1.5rem;bottom:-1.5rem;width:100vw;transform:translateX(-50%);pointer-events:none;border-top:1px solid rgba(224,183,122,.5);border-bottom:1px solid rgba(224,183,122,.35);background:linear-gradient(90deg,rgba(194,138,69,.04),rgba(194,138,69,.18) 45%,rgba(194,138,69,.12) 70%,rgba(194,138,69,.04));box-shadow:0 0 36px rgba(194,138,69,.1)}
@media(max-width:767px){.focus-heading::before{top:-1rem;bottom:-1rem}}
.focus-heading>p{max-width:35rem;font-size:1rem;line-height:1.75;color:var(--dark-copy)}
.focus-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem;margin-top:2.5rem;align-items:start}
.focus-card{min-width:0;overflow:hidden;border:1px solid rgba(224,183,122,.2);border-radius:1rem;background:var(--paper);color:var(--copy)}
.focus-card-main{display:grid;grid-template-columns:minmax(0,.65fr) minmax(0,1fr);min-height:320px}
.focus-card-image{display:flex;align-items:center;margin:0;background:#fff;border-right:1px solid var(--line)}
.focus-card-image img{display:block;width:100%;height:auto;object-fit:contain}
.focus-card-copy{display:flex;flex-direction:column;align-items:flex-start;padding:1.5rem;min-width:0}
.focus-card-category{display:flex;align-items:center;gap:.6rem;font-size:.6875rem;font-weight:600;line-height:1.5;color:var(--brass-dark)}
.focus-card-category>span{font-family:'Newsreader',Georgia,serif;font-size:1.3rem;line-height:1;border-right:1px solid var(--line);padding-right:.6rem}
.on-dark .focus-card h3{margin-top:.85rem;font-size:1.55rem;line-height:1.13;color:var(--ink)}
.focus-card-summary{margin-top:.8rem;margin-bottom:1.25rem;font-size:.8125rem;line-height:1.7;color:var(--copy)}
.focus-card-link{display:flex;align-items:center;justify-content:space-between;gap:.65rem;width:100%;min-height:3.125rem;margin-top:auto;padding:.8rem .9rem;border:1px solid rgba(224,183,122,.5);border-radius:.65rem;background-color:rgba(14,42,37,.96);background-image:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.18) 46%,rgba(255,255,255,.04) 52%,transparent 64%),linear-gradient(155deg,rgba(255,255,255,.12),transparent 60%);background-size:250% 100%,100% 100%;background-position:100% 0,0 0;background-repeat:no-repeat;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 5px 12px rgba(14,42,37,.14);font-size:.8125rem;line-height:1.45;font-weight:700;color:#fff;transition:background-position .65s ease,border-color .2s,box-shadow .2s,transform .2s}
.focus-card-link>span{display:grid;place-items:center;flex-shrink:0;width:1.65rem;height:1.65rem;border-radius:50%;background:rgba(224,183,122,.12);color:var(--brass-2);font-size:1.15rem;transition:transform .2s,background-color .2s}
.focus-card-link:hover,.focus-card-link:focus-visible{background-position:0 0,0 0;border-color:var(--brass);box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 8px 18px rgba(14,42,37,.2),0 0 12px rgba(194,138,69,.12);transform:translateY(-2px);text-decoration:none}
.focus-card-link:hover>span,.focus-card-link:focus-visible>span{background:rgba(224,183,122,.22);transform:translateX(2px)}
.focus-card-details{border-top:1px solid var(--line);background:var(--chalk)}
.focus-card-details summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;cursor:pointer;list-style:none;font-size:.75rem;font-weight:600;color:var(--ink)}
.focus-card-details summary::-webkit-details-marker{display:none}
.focus-card-details summary>span{font-size:1.2rem;line-height:1;color:var(--brass-dark)}
.focus-card-details[open] summary>span{transform:rotate(45deg)}
.focus-card-details summary:hover{background:rgba(194,138,69,.08)}
.focus-card-expanded{padding:0 1.25rem 1.25rem;font-size:.8125rem;line-height:1.75}
.focus-card-label{margin-top:1rem;font-size:.6875rem;font-weight:700;color:var(--brass-dark)}
.focus-card-label:first-child{margin-top:0}
.focus-card-label+p{margin-top:.35rem}
.focus-card-tags{display:flex;flex-wrap:wrap;gap:.4rem;list-style:none;margin-top:1rem;padding:0}
.focus-card-tags li{padding:.25rem .55rem;border:1px solid var(--line);border-radius:.35rem;background:#fff;font-size:.6875rem;line-height:1.5}
.focus-card-related{display:flex;flex-wrap:wrap;gap:.65rem 1rem;margin-top:1rem;padding-top:.85rem;border-top:1px solid var(--line)}
.focus-card-related a{color:var(--brass-dark);font-weight:600;text-decoration:underline;text-underline-offset:3px}
.focus-card a:focus-visible,.focus-card summary:focus-visible{outline:3px solid var(--brass);outline-offset:3px;border-radius:.2rem}
.focus-card .focus-card-link:focus-visible{border-radius:.65rem}
.focus-card summary:focus-visible{outline-offset:-4px}
.focus-footer{display:flex;justify-content:space-between;align-items:center;gap:1rem 2rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid rgba(157,180,170,.25);font-size:.8125rem;line-height:1.6;color:var(--dark-copy)}
.focus-footer strong{color:#fff;font-weight:600}
.focus-footer>div{display:flex;flex-wrap:wrap;gap:.65rem}
@media(min-width:768px) and (max-width:1100px){.focus-card-main{grid-template-columns:minmax(0,.5fr) minmax(0,1fr);min-height:350px}.focus-card-copy{padding:1.2rem}.on-dark .focus-card h3{font-size:1.4rem}}
@media(max-width:767px){.focus-heading{grid-template-columns:1fr;gap:1rem}.focus-card-grid{grid-template-columns:1fr;gap:1.1rem;margin-top:1.75rem}.focus-card-main{min-height:290px}.focus-footer{align-items:flex-start;flex-direction:column}}
@media(max-width:399px){.focus-card-main{grid-template-columns:minmax(0,.5fr) minmax(0,1fr)}.focus-card-copy{padding:1.1rem}.on-dark .focus-card h3{font-size:1.35rem}}
@media(prefers-reduced-motion:reduce){.focus-card-link,.focus-card-link>span{transition:none}.focus-card-link:hover,.focus-card-link:focus-visible,.focus-card-link:hover>span,.focus-card-link:focus-visible>span{transform:none}}

/* ---------- Conditions explorer ---------- */
.fa{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:1.25rem;align-items:stretch}
.fa-side{display:flex;flex-direction:column;gap:.6rem;min-width:0}
.fa-rail{display:grid;gap:.6rem}
.fa-item{position:relative;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;width:100%;padding:1.15rem 1.2rem;border:1px solid var(--line);border-radius:1rem;background:#fff;text-align:left;cursor:pointer;transition:border-color .2s,box-shadow .22s ease,transform .22s cubic-bezier(.2,.7,.3,1),background .2s}
.fa-item:hover{transform:translateY(-2px);border-color:rgba(194,138,69,.5);box-shadow:0 12px 30px rgba(14,42,37,.09)}
.fa-item:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(194,138,69,.35)}
.fa-item.is-active{border-color:var(--brass);background:var(--chalk);box-shadow:inset 4px 0 0 var(--brass)}
.fa-glyph{display:grid;place-items:center;width:2.6rem;height:2.6rem;border-radius:.7rem;background:var(--chalk);color:var(--brass-dark)}
.fa-item.is-active .fa-glyph{background:var(--ink);color:var(--brass-2)}
.fa-glyph svg{width:1.25rem;height:1.25rem}
.fa-copy strong{display:block;font-family:'Newsreader',Georgia,serif;font-weight:500;font-size:1.2rem;line-height:1.2;color:var(--ink)}
.fa-copy small{display:block;margin-top:.2rem;font-size:.8rem;line-height:1.4;color:var(--copy)}
.fa-arrow{color:var(--brass);opacity:.5;transition:transform .2s,opacity .2s}
.fa-item:hover .fa-arrow,.fa-item.is-active .fa-arrow{opacity:1;transform:translateX(3px)}
.fa-panel{position:relative;padding:1.6rem 1.9rem 1.75rem;border:1px solid var(--line);border-radius:1.15rem;background:#fff;box-shadow:0 18px 44px rgba(14,42,37,.08);min-height:100%}
.fa-panel.is-in{animation:fa-in .35s ease}
@keyframes fa-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.fa-n{font-size:.75rem;font-weight:600;color:var(--brass-dark)}
.fa-panel h3{margin-top:.35rem;font-size:1.75rem;line-height:1.15}
.fa-block{margin-top:1.05rem;padding-top:.95rem;border-top:1px solid var(--line)}
.fa-label{font-size:.72rem;font-weight:700;color:var(--brass-dark);margin-bottom:.35rem}
.fa-block>p:not(.fa-label){font-size:.96rem;line-height:1.65;color:var(--copy)}
.fa-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.5rem}
.fa-tags li{font-size:.74rem;font-weight:600;color:var(--ink);padding:.32rem .65rem;border:1px solid var(--line);border-radius:99px;background:var(--chalk)}
.fa-links{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.3rem}
.fa-links a{font-size:.88rem;padding:.7rem 1.1rem}
.fa-more{margin-top:auto;padding:1.25rem 1.3rem 1.3rem;border:1px dashed rgba(194,138,69,.45);border-radius:1rem;background:var(--chalk)}
.fa-more-h{font-family:'Newsreader',Georgia,serif;font-size:1.12rem;line-height:1.25;color:var(--ink)}
.fa-more>p:not(.fa-more-h){margin-top:.4rem;font-size:.86rem;line-height:1.55;color:var(--copy)}
.fa-more-links{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;margin-top:.8rem;font-size:.88rem}
@media(max-width:1023px){.fa{grid-template-columns:1fr}.fa-panel{min-height:0}.fa-more{margin-top:.4rem}}
@media(prefers-reduced-motion:reduce){.fa-panel.is-in{animation:none}.fa-item:hover{transform:none}}

/* Conditions explorer: group first, then one condition at a time. */
.cx-groups{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin-bottom:1.5rem}
.cx-groups[hidden],.fa-rail--cx [hidden]{display:none}
.cx-group{display:flex;flex-direction:column;gap:.25rem;align-items:flex-start;padding:1rem 1.15rem;min-height:5rem;border:1px solid var(--line);border-radius:.75rem;background:#fff;color:var(--ink);text-align:left;cursor:pointer;transition:background .2s,border-color .2s}
.cx-group strong{font-size:1rem;line-height:1.4;font-weight:700}
.cx-group>span{font-size:.75rem;line-height:1.5;color:var(--copy)}
.cx-group:hover{border-color:var(--brass)}
.cx-group[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);box-shadow:inset 0 -3px var(--brass);color:#fff}
.cx-group[aria-pressed="true"]>span{color:var(--dark-copy)}
.cx-group:focus-visible,.cx-detail summary:focus-visible{outline:3px solid var(--brass);outline-offset:3px}
.fa--cx{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start}
.cx-side{min-width:0;align-self:stretch;display:flex;flex-direction:column}
.cx-choose{margin-bottom:.75rem;font-size:.8125rem;font-weight:600;color:var(--copy)}
.fa-rail--cx{gap:.6rem}
.fa-item--sm{grid-template-columns:1fr auto;padding:1rem;border-radius:.8rem}
.fa-item--sm .fa-copy strong{font-size:1.125rem}
.fa-item--sm .fa-copy small{font-size:.8125rem;margin-top:.35rem}
.fa-rail--cx .fa-item.is-active{background:#fff;border-color:var(--brass);box-shadow:inset 4px 0 0 var(--brass),0 6px 20px rgba(14,42,37,.05)}
.fa--cx .fa-panel{min-height:0;border-top:3px solid var(--brass)}
.fa--cx .fa-panel:focus-visible{outline:2px solid var(--brass);outline-offset:4px}
.cx-symptoms{margin-top:1.25rem;margin-bottom:1.25rem;padding:1rem 1.15rem;border-radius:.6rem;background:var(--chalk)}
.cx-symptoms>p:last-child,.cx-detail>p{font-size:.9375rem;line-height:1.7;color:var(--copy)}
.cx-detail{border-top:1px solid var(--line)}
.cx-detail summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:3.25rem;padding:.8rem 0;list-style:none;cursor:pointer;font-size:.9375rem;font-weight:600;color:var(--ink)}
.cx-detail summary::-webkit-details-marker{display:none}
.cx-detail summary::after{content:'+';font-size:1.25rem;color:var(--brass-dark)}
.cx-detail[open] summary::after{content:'−'}
.cx-detail>p{padding-bottom:1rem}
.cx-related{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem;padding-bottom:1rem;font-size:.8125rem;font-weight:600}
.cx-related a{color:var(--brass-dark);text-decoration:underline;text-underline-offset:3px}
@media(max-width:1023px){.fa--cx{grid-template-columns:1fr}.fa--cx .fa-panel{scroll-margin-top:6rem}}
@media(max-width:639px){.cx-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.cx-group{padding:.85rem;min-height:4.75rem}.cx-group strong{font-size:.9375rem}.fa--cx .fa-panel{padding:1.25rem}.fa--cx .fa-panel h3{font-size:1.5rem}}
/* Shared glass controls, scoped to the home conditions explorer. */
.conditions-section :is(.cx-group,.fa-rail--cx .fa-item,.cx-detail summary){background-color:var(--cx-glass-base,rgba(255,255,255,.8));background-image:linear-gradient(115deg,transparent 30%,var(--cx-glass-sheen,rgba(255,255,255,.8)) 46%,transparent 64%),linear-gradient(145deg,var(--cx-glass-wash,rgba(255,255,255,.5)),transparent 60%);background-size:250% 100%,100% 100%;background-position:100% 0,0 0;background-repeat:no-repeat;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid rgba(14,42,37,.16);box-shadow:var(--cx-state-shadow,inset 0 0 0 transparent),inset 0 1px 0 rgba(255,255,255,.65),0 5px 14px rgba(14,42,37,.07);transition:background-position .65s ease,border-color .2s,box-shadow .2s,transform .2s}
.conditions-section :is(.cx-group,.fa-rail--cx .fa-item,.cx-detail summary):is(:hover,:focus-visible){background-position:0 0,0 0;border-color:var(--brass);box-shadow:var(--cx-state-shadow,inset 0 0 0 transparent),inset 0 1px 0 rgba(255,255,255,.7),0 8px 20px rgba(14,42,37,.12);transform:translateY(-2px);text-decoration:none}
.conditions-section :is(.cx-group,.fa-rail--cx .fa-item,.cx-detail summary):focus-visible{outline:3px solid var(--brass-dark);outline-offset:3px}
.conditions-section .cx-group[aria-pressed="true"]{--cx-glass-base:rgba(14,42,37,.97);--cx-glass-sheen:rgba(255,255,255,.16);--cx-glass-wash:rgba(255,255,255,.1);--cx-state-shadow:inset 0 -3px 0 var(--brass);border-color:var(--brass);color:#fff}
.conditions-section .fa-rail--cx .fa-item.is-active{--cx-glass-base:rgba(255,255,255,.92);--cx-glass-wash:rgba(224,183,122,.16);--cx-state-shadow:inset 4px 0 0 var(--brass);border-color:var(--brass)}
.conditions-section .fa-arrow{display:grid;place-items:center;width:1.7rem;height:1.7rem;border-radius:50%;background:rgba(194,138,69,.1);color:var(--brass-dark);opacity:1}
.conditions-section .fa-item.is-active .fa-arrow{background:var(--ink);color:var(--brass-2)}
.conditions-section .btn-primary{min-height:3rem}
.conditions-section .cx-detail{border-top:0}
.conditions-section .cx-detail summary{--cx-glass-base:rgba(244,246,242,.8);margin:.6rem 0;padding:.85rem 1rem;border-radius:.6rem}
.conditions-section .cx-detail summary::after{display:grid;place-items:center;flex-shrink:0;width:1.5rem;height:1.5rem;border-radius:50%;background:rgba(194,138,69,.1);line-height:1}
@media(prefers-reduced-motion:reduce){.cx-group{transition:none}.conditions-section :is(.cx-group,.fa-rail--cx .fa-item,.cx-detail summary){transition:none}.conditions-section :is(.cx-group,.fa-rail--cx .fa-item,.cx-detail summary):is(:hover,:focus-visible){transform:none}}

/* ---------- Condition-page interactives (cervical radiculopathy) ---------- */
/* Self-check */
.sc{margin-top:1.75rem;padding:1.5rem 1.6rem 1.6rem;border:1px solid var(--line);border-radius:1.1rem;background:var(--chalk)}
.sc-head h3{margin-top:.6rem;font-size:1.45rem;line-height:1.2}
.sc-head p:last-child{margin-top:.5rem;font-size:.92rem;line-height:1.55;color:var(--copy);max-width:52ch}
.sc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem;margin-top:1.1rem}
.sc-opt{display:flex;gap:.7rem;align-items:flex-start;padding:.8rem .9rem;border:1px solid var(--line);border-radius:.8rem;background:#fff;cursor:pointer;transition:border-color .2s,box-shadow .2s}
.sc-opt:hover{border-color:rgba(194,138,69,.55)}
.sc-opt:has(input:checked){border-color:var(--brass);box-shadow:inset 3px 0 0 var(--brass)}
.sc-opt input{margin-top:.25rem;accent-color:var(--brass-dark);flex:0 0 auto}
.sc-opt b{display:block;font-size:.88rem;line-height:1.3;color:var(--ink)}
.sc-opt small{display:block;margin-top:.15rem;font-size:.76rem;line-height:1.4;color:var(--copy)}
.sc-opt--flag{background:#FBF6EA;border-color:rgba(201,151,58,.4)}
.sc-result{margin-top:1rem;padding:1.05rem 1.2rem;border:1px solid var(--line);border-radius:.85rem;background:#fff;font-size:.95rem;line-height:1.6;color:var(--copy)}
.sc-result b{display:block;font-family:'Newsreader',Georgia,serif;font-weight:500;font-size:1.2rem;line-height:1.25;color:var(--ink)}
.sc-result b+p{margin-top:.45rem}
.sc-result a{color:var(--brass-dark);text-decoration:underline;text-underline-offset:3px}
.sc-result.is-fit{border-color:var(--brass);box-shadow:inset 3px 0 0 var(--brass)}
.sc-result.is-prompt{border-color:var(--brass-dark);background:#FBF6EA;box-shadow:inset 3px 0 0 var(--brass-dark)}
.sc-result.is-urgent{border-color:#B4462F;background:#FBEFEC;box-shadow:inset 3px 0 0 #B4462F}
.sc-result.is-urgent b{color:#8E3320}
/* Dermatome explorer */
.dx{margin-top:1.5rem;padding:1.5rem 1.6rem 1.25rem;border:1px solid var(--line);border-radius:1.1rem;background:#fff;box-shadow:0 12px 30px rgba(14,42,37,.05)}
.dx-grid{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(0,1.15fr);gap:1.5rem 2rem;align-items:start}
.dx-levels{display:flex;flex-direction:column;gap:.5rem}
.dx-vert{width:3.4rem;padding:.65rem 0;border:1px solid var(--line);border-radius:.6rem;background:var(--chalk);font-family:'Newsreader',Georgia,serif;font-size:1.05rem;color:var(--ink);cursor:pointer;transition:background .2s,border-color .2s,color .2s,box-shadow .2s}
.dx-vert:hover{border-color:var(--brass)}
.dx-vert:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(194,138,69,.4)}
.dx-vert.is-on{background:#C8341F;border-color:#C8341F;color:#fff;font-weight:600;box-shadow:0 8px 20px rgba(200,52,31,.35)}
.dx-figure{max-width:340px;width:100%;justify-self:center}
.dx-figure svg{display:block;width:100%;height:auto}
.dx-zone{fill:rgba(255,255,255,.2);stroke:rgba(120,32,18,.65);stroke-width:1.2;stroke-dasharray:5 3;stroke-linejoin:round;vector-effect:non-scaling-stroke;cursor:pointer;transition:fill .2s,stroke .2s,filter .2s}
.dx-zone:hover{fill:rgba(200,52,31,.4);stroke:#8E1E10;stroke-dasharray:none}
.dx-zone:focus-visible{outline:none;fill:rgba(200,52,31,.4);stroke:#8E1E10;stroke-width:2.5;stroke-dasharray:none}
.dx-zone.is-lit{fill:rgba(214,48,29,.68);stroke:#7A1A0E;stroke-width:1.8;stroke-dasharray:none;filter:drop-shadow(0 0 6px rgba(214,48,29,.85));animation:dx-pulse 1.6s ease-in-out infinite}
@keyframes dx-pulse{0%,100%{fill:rgba(214,48,29,.68)}50%{fill:rgba(236,72,50,.82)}}
.dx-panel{min-height:17rem;padding:1.25rem 1.35rem;border:1px solid var(--line);border-radius:.9rem;background:var(--chalk)}
.dx-kicker{font-size:.74rem;font-weight:700;color:var(--brass-dark)}
.dx-panel h3{margin-top:.35rem;font-size:1.35rem;line-height:1.2}
.dx-hint,.dx-disc{margin-top:.5rem;font-size:.9rem;line-height:1.6;color:var(--copy)}
.dx-panel dl{margin-top:.75rem}
.dx-panel dt{margin-top:.6rem;font-size:.78rem;font-weight:700;color:var(--ink)}
.dx-panel dd{margin-top:.1rem;font-size:.9rem;line-height:1.55;color:var(--copy)}
.dx-note{margin-top:1rem;padding-top:.9rem;border-top:1px solid var(--line);font-size:.8rem;line-height:1.5;color:var(--copy)}
/* Course guide */
.tp{margin-top:1.25rem;padding:1.5rem 1.6rem 1.6rem;border:1px solid var(--line);border-radius:1.1rem;background:var(--chalk)}
.tp-q+.tp-q{margin-top:1.1rem}
.tp-label{font-size:.9rem;font-weight:700;color:var(--ink)}
.tp-opts{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.55rem}
.tp-opt{padding:.6rem 1rem;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:.88rem;font-weight:600;color:var(--ink);cursor:pointer;transition:background .2s,border-color .2s,color .2s}
.tp-opt:hover{border-color:var(--brass)}
.tp-opt:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(194,138,69,.4)}
.tp-opt.is-on{background:var(--ink);border-color:var(--ink);color:#fff}
.tp-result{margin-top:1.1rem;padding:1.1rem 1.25rem;border:1px solid var(--line);border-radius:.85rem;background:#fff}
.tp-hint{font-size:.9rem;color:var(--copy)}
.tp-block b{display:block;font-family:'Newsreader',Georgia,serif;font-weight:500;font-size:1.2rem;line-height:1.25;color:var(--ink)}
.tp-block p{margin-top:.45rem;font-size:.93rem;line-height:1.6;color:var(--copy)}
.tp-block a{color:var(--brass-dark);text-decoration:underline;text-underline-offset:3px}
.tp-block--weak{margin-top:1rem;padding:.9rem 1rem;border-left:3px solid var(--brass);border-radius:0 .6rem .6rem 0;background:var(--chalk)}
.tp-result.is-prompt .tp-block--weak{background:#FBF6EA;border-left-color:var(--brass-dark)}
.tp-result.is-urgent .tp-block--weak{background:#FBEFEC;border-left-color:#B4462F}
.tp-result.is-urgent .tp-block--weak b{color:#8E3320}
@media(max-width:1023px){.dx-grid{grid-template-columns:auto minmax(0,1fr)}.dx-panel{grid-column:1/-1}}
@media(max-width:767px){.sc-grid{grid-template-columns:1fr}.dx{padding:1.1rem}.dx-grid{grid-template-columns:1fr;gap:1rem}.dx-levels{flex-direction:row;flex-wrap:wrap;justify-content:center}.dx-figure{max-width:260px}}
@media(prefers-reduced-motion:reduce){.dx-zone.is-lit{animation:none}.dx-zone,.dx-vert,.sc-opt,.tp-opt{transition:none}}
/* Exam signs explorer (cervical myelopathy) */
.ex{margin-top:1.5rem;padding:1.5rem 1.6rem 1.5rem;border:1px solid var(--line);border-radius:1.1rem;background:#fff;box-shadow:0 12px 30px rgba(14,42,37,.05)}
.ex-head h3{margin-top:.6rem;font-size:1.45rem;line-height:1.2}
.ex-head p:last-child{margin-top:.5rem;font-size:.92rem;line-height:1.55;color:var(--copy);max-width:60ch}
.ex-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:1.25rem;margin-top:1.1rem;align-items:start}
.ex-list{display:grid;gap:.45rem}
.ex-btn{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem .95rem;border:1px solid var(--line);border-radius:.7rem;background:var(--chalk);font-size:.9rem;font-weight:600;color:var(--ink);text-align:left;cursor:pointer;transition:border-color .2s,background .2s,box-shadow .2s}
.ex-btn::after{content:"\2192";color:var(--brass);opacity:.6}
.ex-btn:hover{border-color:var(--brass)}
.ex-btn:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(194,138,69,.4)}
.ex-btn.is-on{background:var(--ink);border-color:var(--ink);color:#fff}
.ex-btn.is-on::after{color:var(--brass-2);opacity:1}
.ex-panel{min-height:14rem;padding:1.25rem 1.35rem;border:1px solid var(--line);border-radius:.9rem;background:var(--chalk)}
.ex-panel h3{margin-top:.35rem;font-size:1.35rem;line-height:1.2}
.ex-hint{font-size:.9rem;line-height:1.6;color:var(--copy)}
.ex-panel dl{margin-top:.5rem}
.ex-panel dt{margin-top:.7rem;font-size:.78rem;font-weight:700;color:var(--ink)}
.ex-panel dd{margin-top:.15rem;font-size:.92rem;line-height:1.6;color:var(--copy)}
@media(max-width:767px){.ex{padding:1.1rem}.ex-grid{grid-template-columns:1fr}.ex-list{grid-template-columns:repeat(2,minmax(0,1fr))}.ex-btn{font-size:.82rem;padding:.65rem .75rem}}

/* ---------- Online booking demo (ported from the ISG prototype; mount: [data-booking]) ---------- */
.bk-demo{margin:0 0 1rem;padding:.7rem 1rem;border:1px solid rgba(194,138,69,.5);border-radius:.75rem;background:#FBF6EA;color:var(--brass-dark);font-size:.88rem;font-weight:600;line-height:1.45}
.bk-static{background:#fff;border:1px solid var(--line);border-radius:1rem;padding:1.25rem 1.5rem;color:var(--copy);line-height:1.6}
.bk-static a{color:var(--brass-dark);font-weight:600;text-decoration:underline}
.bk{background:#fff;border:1px solid var(--line);border-radius:1.1rem;padding:1.25rem;box-shadow:0 18px 44px rgba(14,42,37,.08)}
@media(min-width:768px){.bk{padding:1.75rem 2rem 1.9rem}}
.bk-rail{display:flex;gap:.35rem;margin:0;padding:0;list-style:none}
.bk-rail li{flex:1;height:.35rem;border-radius:9999px;background:var(--line)}
.bk-rail li.is-done{background:var(--brass)}
.bk-rail li.is-current{background:var(--ink)}
.bk-step{margin-top:.8rem;font-size:.78rem;font-weight:700;color:var(--brass-dark)}
.bk-question{margin-top:.3rem;font-family:'Newsreader',Georgia,serif;font-size:1.6rem;font-weight:500;line-height:1.2;color:var(--ink);outline:none}
.bk-question:focus-visible{outline:3px solid rgba(194,138,69,.5);outline-offset:4px;border-radius:.3rem}
.bk-hint{margin-top:.45rem;font-size:.92rem;line-height:1.55;color:var(--copy)}
.bk-hint a{color:var(--brass-dark);text-decoration:underline;text-underline-offset:3px}
.bk-body{margin-top:1.1rem}
.bk-options,.bk-list{display:grid;gap:.6rem;grid-template-columns:1fr}
@media(min-width:768px){.bk-options,.bk-list{grid-template-columns:1fr 1fr}}
.bk-option{text-align:left;display:flex;flex-direction:column;gap:.15rem;padding:.9rem 1rem;border:1px solid var(--line);border-radius:.8rem;background:#fff;font:inherit;color:inherit;cursor:pointer;transition:border-color .2s,box-shadow .2s,transform .2s}
.bk-option:hover{border-color:var(--brass);transform:translateY(-1px)}
.bk-option:focus-visible{outline:3px solid rgba(194,138,69,.5);outline-offset:2px}
.bk-option[aria-pressed="true"]{border-color:var(--ink);box-shadow:inset 3px 0 0 var(--brass)}
.bk-option-label{font-family:'Newsreader',Georgia,serif;font-weight:500;color:var(--ink);font-size:1.12rem;line-height:1.2}
.bk-option-sub{font-size:.82rem;line-height:1.4;color:var(--copy)}
.bk-option-days{margin-top:.15rem;font-weight:600;color:var(--brass-dark)}
.bk-empty{font-size:.9rem;color:var(--copy)}
.bk-days{display:flex;gap:.4rem;overflow-x:auto;padding:2px 2px .5rem;margin:0;list-style:none}
.bk-day{flex:0 0 auto;min-width:4.6rem;display:flex;flex-direction:column;align-items:center;gap:.1rem;padding:.55rem .5rem;border:1px solid var(--line);border-radius:.75rem;background:#fff;font:inherit;color:inherit;cursor:pointer}
.bk-day:hover{border-color:var(--brass)}
.bk-day:focus-visible{outline:3px solid rgba(194,138,69,.5);outline-offset:2px}
.bk-day[aria-pressed="true"]{border-color:var(--ink);background:var(--ink);color:#fff}
.bk-day[aria-pressed="true"] .bk-day-count{color:var(--brass-2)}
.bk-day[disabled]{opacity:.45;cursor:default}
.bk-day-name{font-size:.72rem;font-weight:600;color:inherit}
.bk-day-date{font-family:'Newsreader',Georgia,serif;font-size:1.4rem;font-weight:500;line-height:1;color:inherit}
.bk-day-count{font-size:.7rem;color:var(--brass-dark)}
.bk-times{margin-top:.9rem;display:grid;gap:.5rem;grid-template-columns:repeat(3,1fr)}
@media(min-width:640px){.bk-times{grid-template-columns:repeat(4,1fr)}}
.bk-time{padding:.65rem .5rem;border:1px solid var(--line);border-radius:.6rem;background:#fff;font:inherit;font-weight:600;color:var(--ink);cursor:pointer;transition:border-color .2s,background .2s}
.bk-time:hover{border-color:var(--brass);background:var(--chalk)}
.bk-time:focus-visible{outline:3px solid rgba(194,138,69,.5);outline-offset:2px}
.bk-fields{display:grid;gap:.9rem;grid-template-columns:1fr}
@media(min-width:640px){.bk-fields{grid-template-columns:1fr 1fr}}
.bk-field{display:block;font-size:.88rem;font-weight:600;color:var(--ink)}
.bk-field input{display:block;width:100%;margin-top:.3rem;padding:.7rem .85rem;border:1px solid var(--line);border-radius:.6rem;font:inherit;font-weight:400;color:var(--ink);background:#fff}
.bk-field input:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(194,138,69,.4);border-color:var(--brass)}
.bk-field.is-invalid input{border-color:#B4462F}
.bk-error{margin-top:.6rem;font-size:.85rem;color:#8E3320}
.bk-privacy{margin-top:.8rem;font-size:.8rem;line-height:1.5;color:var(--copy)}
.bk-nav{margin-top:1.25rem;display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;justify-content:space-between}
.bk-back{padding:.6rem 0;border:0;background:none;font:inherit;font-weight:600;color:var(--ink);cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.bk-back:focus-visible{outline:3px solid rgba(194,138,69,.5);outline-offset:2px;border-radius:.3rem}
.bk-summary{margin:0;display:grid;gap:.6rem;grid-template-columns:1fr}
@media(min-width:640px){.bk-summary{grid-template-columns:1fr 1fr}}
.bk-summary div{padding:.8rem 1rem;border:1px solid var(--line);border-radius:.75rem;background:var(--chalk)}
.bk-summary dt{font-size:.74rem;font-weight:700;color:var(--brass-dark)}
.bk-summary dd{margin:.15rem 0 0;font-weight:600;color:var(--ink)}
.bk-confirm{margin-top:1rem;padding:.8rem 1rem;border:1px solid rgba(194,138,69,.5);border-radius:.75rem;background:#FBF6EA;color:var(--brass-dark);font-weight:600;font-size:.9rem;line-height:1.45}
.bk-bring{margin-top:1rem;font-size:.9rem;line-height:1.6;color:var(--copy)}
.bk-bring b{color:var(--ink)}
.bk-bring ul{margin:.4rem 0 0;padding-left:1.1rem;list-style:disc}
.bk-live{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media(prefers-reduced-motion:reduce){.bk-option,.bk-day,.bk-time{transition:none}.bk-option:hover{transform:none}}

/* ISG practice branding: current Indiana-outline stacked mark, with room to breathe. */
.isg-section-heading{display:grid;grid-template-columns:minmax(0,1fr) 200px;align-items:center;gap:clamp(2rem,6vw,6rem)}
.isg-section-heading>div{min-width:0}
.isg-brand{display:block;width:200px;max-width:100%;justify-self:end;flex-shrink:0}
/* The practice mark in one quiet grey (logo-isg-mono.svg), kept faint so it reads as
   affiliation rather than a second brand; it lifts a little under the pointer. */
.isg-brand img{display:block;width:100%;height:auto;opacity:.45;transition:opacity .2s}
.isg-brand:hover img,.isg-brand:focus-visible img{opacity:.8}
.isg-brand:focus-visible{outline:2px solid var(--brass-dark);outline-offset:6px;border-radius:.25rem}
.footer-affiliation-row{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:2rem;margin-top:.15rem;padding-top:1rem;border-top:1px solid var(--line)}
.footer-affiliation-row .footer-affiliation{margin:0;max-width:34rem}
.isg-brand--footer{width:145px}
/* Home hero foot: the video link on the left, a small translucent ISG mark on the right of the same row
   (wrapping beneath it when the column is narrow); brass focus ring for the dark ground */
.hero-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1.5rem;margin-top:1.5rem}
.isg-brand.isg-brand--hero{width:118px;margin:0;justify-self:auto}
.isg-brand--hero:focus-visible{outline-color:var(--brass-2)}
.isg-brand.isg-brand--locations{width:145px;justify-self:end}
.isg-brand--locations img{filter:brightness(0) invert(1);opacity:.65}
.isg-brand--locations:focus-visible{outline-color:var(--brass-2)}
.isg-brand.isg-brand--care{width:145px;justify-self:end}
.isg-brand--care img{filter:brightness(0) invert(1);opacity:.65}
.isg-brand--care:focus-visible{outline-color:var(--brass-2)}
@media(max-width:639px){.care-heading{grid-template-columns:1fr;gap:1.25rem}.isg-brand.isg-brand--care{width:110px;justify-self:end}}
@media(max-width:639px){.locations-heading{grid-template-columns:1fr;gap:1.25rem}.isg-brand.isg-brand--locations{width:110px;justify-self:start}}
@media(max-width:639px){.isg-brand.isg-brand--hero{width:104px}}
@media(max-width:1023px){.isg-section-heading{grid-template-columns:minmax(0,1fr) 170px;gap:2rem}.isg-brand{width:170px}.isg-brand--footer{width:125px}.footer-affiliation-row{align-items:flex-start;flex-direction:column;gap:.75rem}}
@media(max-width:639px){.isg-section-heading{grid-template-columns:1fr;gap:1rem}.isg-section-heading .isg-brand{width:145px;justify-self:start;margin-left:-.6rem}.footer-affiliation-row{flex-direction:column;align-items:stretch;gap:1rem}.footer-affiliation-row .footer-affiliation{max-width:none;width:100%;padding:1rem;gap:.8rem}.isg-brand--footer{width:115px}}

/* A photographic sense of place, fading into a quiet reading surface. */
.conditions-section{position:relative;isolation:isolate;background:var(--chalk);overflow:hidden}
.conditions-section::before{content:"";position:absolute;z-index:-1;inset:0 0 auto;height:620px;pointer-events:none;background-image:linear-gradient(180deg,rgba(244,246,242,.1) 0%,rgba(244,246,242,.08) 35%,#F4F6F2 92%),linear-gradient(90deg,rgba(244,246,242,.97) 5%,rgba(244,246,242,.9) 35%,rgba(244,246,242,.62) 75%,rgba(244,246,242,.68)),url('/assets/img/isg-carmel-campus-hero.jpg');background-size:cover;background-position:center,center,center 42%;background-repeat:no-repeat}
@media(max-width:639px){.conditions-section::before{height:660px;background-position:center,center,58% top}}
/* Quiet ISG affiliation at the bottom left of the conditions section. */
.conditions-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2rem;align-items:end}
.conditions-actions{display:flex;align-items:center;flex-wrap:wrap;gap:1.25rem}
.conditions-actions .btn-secondary{align-self:center}
.isg-brand.isg-brand--conditions{width:110px;margin-top:auto;padding-top:2rem;align-self:flex-start;justify-self:start}
.isg-brand--conditions img{opacity:.35}
.isg-brand--conditions:hover img,.isg-brand--conditions:focus-visible img{opacity:.55}
@media(max-width:1023px){.conditions-heading{grid-template-columns:1fr;gap:1.5rem}.conditions-actions{justify-content:space-between}}
@media(max-width:639px){.isg-brand.isg-brand--conditions{width:90px}.conditions-actions{gap:1rem}}

/* Contact resources: distinct patient and clinician paths. */
.contact-resource{display:flex;flex-direction:column;min-width:0;padding:clamp(1.4rem,3vw,2rem);border:1px solid rgba(217,227,222,.25);border-top:3px solid var(--brass);border-radius:1rem;background-color:rgba(217,227,222,.065);background-image:linear-gradient(115deg,transparent 28%,rgba(255,255,255,.12) 46%,transparent 66%),linear-gradient(150deg,rgba(255,255,255,.08),transparent 60%);background-size:250% 100%,100% 100%;background-position:65% 0,0 0;background-repeat:no-repeat;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 12px 30px rgba(0,0,0,.14);transition:background-position .8s ease,border-color .25s,box-shadow .25s}
.contact-resource:is(:hover,:focus-within){background-position:0 0,0 0;border-color:rgba(224,183,122,.65);box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 16px 34px rgba(0,0,0,.2)}
.contact-resource-heading{display:flex;align-items:center;gap:1rem}
.contact-resource-icon{display:grid;place-items:center;flex-shrink:0;width:3.25rem;height:3.25rem;border:1px solid rgba(224,183,122,.45);border-radius:.8rem;background:linear-gradient(140deg,rgba(255,255,255,.14),rgba(224,183,122,.05));box-shadow:inset 0 1px 0 rgba(255,255,255,.2);color:var(--brass-2)}
.contact-resource-icon svg{width:1.6rem;height:1.6rem;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.contact-resource-label{font-size:.6875rem;font-weight:600;line-height:1.5;color:var(--brass-2);margin-bottom:.35rem}
.contact-resource h3{font-size:clamp(1.5rem,2.5vw,1.9rem);line-height:1.15}
.contact-resource-copy{margin-top:1.25rem;font-size:.9375rem;line-height:1.7;color:var(--dark-copy);max-width:48ch}
.contact-resource-topics{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;padding:0;margin:1rem 0 1.5rem}
.contact-resource-topics li{padding:.4rem .65rem;border:1px solid rgba(217,227,222,.16);border-radius:.4rem;background:rgba(9,32,25,.25);font-size:.75rem;line-height:1.5;color:var(--dark-copy)}
.contact-resource .btn-secondary{width:100%;margin-top:auto}
@media(prefers-reduced-motion:reduce){.contact-resource{transition:none}}
