/* course.v4.css - 과목관/상세 베이스 레이어 v4_3 각인 번역 (원본: course-detail.css, 19p 공유)
   1) 구 헤더/푸터/플로팅CTA/버거 크롬 룰 전삭제 + 크롬 전용 미디어블록(880/860/520px) 제거 - 새 크롬은 파운데이션 소유
   2) 구 파일의 루트 변수 블록, 외부 폰트 임포트, body/그레인/셀렉션/컨테이너/전역 리셋 삭제 - 파운데이션 위임(재정의 금지)
   3) 흰배경 섹션용 버튼 보정 오버라이드 삭제(다크 단일 테마로 불요), 원형 도트/타임라인 노드는 45도 회전 다이아몬드로, 하이라이트 stat의 inset 그림자는 상단 골드라인 보더로 대체
   4) hr-gold의 투명도 색섞기 제거(solid 골드라인), 포커스 링의 라운드 제거, 처방(answer) 본문은 골드 대량 사용 금지 규칙에 따라 ink 유지(Rx 접두만 골드) */

html{ scroll-padding-top:84px; -webkit-text-size-adjust:100%; }
svg{ display:inline-block; vertical-align:middle; }
a svg, button svg{ flex-shrink:0; }
svg:not([width]):not([height]){ width:16px; height:16px; }
button{ font:inherit; cursor:pointer; border:0; background:none; }
:focus-visible{ outline:2px solid var(--goldtext); outline-offset:3px; }

.br-d{ } @media(max-width:680px){ .br-d{ display:none; } }

/* small refined eyebrow label */
.eyebrow{ font-family:var(--sans); font-size:11px; font-weight:600; letter-spacing:.28em; text-transform:uppercase; color:var(--muted); }
.eyebrow .dot{ display:inline-block; width:4px; height:4px; border:1px solid var(--goldline); background:none; vertical-align:middle; margin:0 .7em; transform:translateY(-1px) rotate(45deg); }
.hr-gold{ height:1px; background:var(--goldline); border:0; }
.hr-line{ height:1px; background:var(--hairsoft); border:0; }

/* ================= BREADCRUMB (진료 차트 톤) ================= */
.breadcrumb{ padding:clamp(20px,2.6vw,32px) 0 clamp(6px,1vw,12px); font-size:11px; font-weight:600; letter-spacing:.22em; text-transform:uppercase; color:var(--muted); }
.breadcrumb a + a, .breadcrumb a + span{ }
.breadcrumb a{ color:var(--muted); transition:color .2s var(--ease); }
.breadcrumb a:hover{ color:var(--goldtext); }
.breadcrumb span{ color:var(--ink); }

/* ================= COURSE HERO - 진단 헤더 (field에서 plate로 농담) ================= */
.course-hero{ position:relative; padding:clamp(18px,2.6vw,34px) 0 clamp(48px,7vw,92px); overflow:hidden; background:linear-gradient(180deg, var(--field) 0%, var(--plate) 100%); border-bottom:1px solid var(--hairsoft); }
/* oversized serif glyph in deep margin - 과목별 상징, body class 기준 (골드 미광 워터마크) */
.course-hero::before{
  content:"利"; position:absolute; top:-1vw; right:-1vw;
  font-family:var(--serif); font-weight:400; font-size:clamp(190px,28vw,440px);
  line-height:.8; color:rgba(197,165,114,.08); pointer-events:none; user-select:none; z-index:0;
}
body.course-korean   .course-hero::before{ content:"語"; }
body.course-math     .course-hero::before{ content:"數"; }
body.course-english  .course-hero::before{ content:"英"; }
body.course-science  .course-hero::before{ content:"科"; }
body.course-society  .course-hero::before{ content:"史"; }
body.course-inmoon   .course-hero::before{ content:"文"; }
body.course-surisuri .course-hero::before{ content:"析"; }
body.course-consulting .course-hero::before{ content:"利"; }
.course-hero__inner{ position:relative; z-index:1; display:grid; grid-template-columns:minmax(0,1fr) clamp(280px,32vw,400px); grid-template-areas:"tag tag" "title meta" "lede meta"; gap:0 clamp(30px,5vw,84px); align-items:end; }
/* hero meta 없는 과목(science 등) - 1열 전폭, 우측 빈 컬럼 방지 */
.course-hero__inner:not(:has(.course-hero__meta)){ grid-template-columns:1fr; grid-template-areas:"tag" "title" "lede"; }
/* tag: diagnosis label (칩 아님, 0-radius 다이아몬드 불릿) */
.course-hero__tag{ grid-area:tag; display:inline-flex; align-items:center; gap:0; width:max-content; font-family:var(--sans); font-size:11px; font-weight:600; letter-spacing:.28em; text-transform:uppercase; color:var(--goldtext); background:none; padding:0; margin-bottom:clamp(22px,3vw,38px); }
.course-hero__tag::before{ content:""; display:inline-block; width:5px; height:5px; border:1px solid var(--goldline); margin-right:.9em; transform:translateY(-1px) rotate(45deg); }
.course-hero__title{ grid-area:title; font-family:var(--serif); font-weight:600; font-size:clamp(38px,6.6vw,90px); line-height:1.22; letter-spacing:-.035em; color:var(--ink); margin-bottom:clamp(18px,2.2vw,28px); }
.course-hero__title em{ font-style:normal; color:var(--forest,#006241); }
.course-hero__lede{ grid-area:lede; font-family:var(--serif); font-weight:400; font-size:clamp(16px,1.85vw,22px); line-height:1.7; letter-spacing:-.01em; color:var(--muted); max-width:42ch; margin-bottom:0; }
/* meta: chart-meta box (진료 차트 헤더) */
.course-hero__meta{ grid-area:meta; display:block; align-self:end; border-top:1px solid var(--goldline); border-bottom:0; padding:0; gap:0; font-feature-settings:"tnum" 1; }
.course-hero__meta-item{ display:grid; grid-template-columns:auto 1fr; gap:14px; align-items:baseline; padding:14px 0; border-bottom:1px solid var(--hairsoft); font-size:inherit; }
.course-hero__meta-item:last-child{ border-bottom:0; }
.course-hero__meta-label{ display:block; margin:0; font-size:10.5px; font-weight:600; letter-spacing:.18em; text-transform:uppercase; color:var(--muted); white-space:nowrap; }
.course-hero__meta-value{ font-family:var(--serif); font-size:clamp(14.5px,1.4vw,16.5px); font-weight:500; letter-spacing:-.01em; line-height:1.45; color:var(--ink); text-align:right; }
@media(max-width:820px){
  .course-hero__inner{ grid-template-columns:1fr; grid-template-areas:"tag" "title" "lede" "meta"; gap:0; }
  .course-hero__meta{ margin-top:36px; }
}

/* ================= SECTION SHELL ================= */
main{ counter-reset:sec; }
.section{ padding:clamp(64px,9vw,124px) 0; }
.section--alt{ background:var(--plate); border-top:1px solid var(--hairsoft); border-bottom:1px solid var(--hairsoft); }
.section--bordered{ border-top:1px solid var(--hairsoft); border-bottom:1px solid var(--hairsoft); }
/* section head (번호=counter, head 있는 섹션만 증가해 번호 점프 방지) */
.section__head{ display:grid; grid-template-columns:auto 1fr; gap:clamp(20px,4vw,56px); align-items:baseline; margin-bottom:clamp(40px,5vw,68px); max-width:none; counter-increment:sec; }
.section__head::before{ content:counter(sec,decimal-leading-zero); font-family:var(--serif); font-weight:400; font-size:clamp(34px,4.4vw,56px); color:var(--goldtext); line-height:1; letter-spacing:-.02em; }
.section__head--center{ display:block; text-align:center; }
.section__head--center::before{ display:block; margin:0 auto 14px; }
.section__eyebrow{ display:block; font-family:var(--sans); font-weight:600; font-size:11px; letter-spacing:.26em; text-transform:uppercase; color:var(--muted); margin-bottom:14px; }
.section__title{ font-family:var(--serif); font-weight:600; font-size:clamp(26px,3.6vw,44px); line-height:1.3; letter-spacing:-.03em; color:var(--ink); margin-bottom:0; }
.section__title em{ font-style:normal; color:var(--forest,#006241); }
.section__lede{ font-size:15px; line-height:1.78; letter-spacing:-.01em; color:var(--muted); max-width:54ch; margin-top:18px; }
.section__head--center .section__lede{ margin-left:auto; margin-right:auto; }
/* head 둘째 칼럼 묶기: eyebrow+title+lede가 head 자식이라 grid 흐름 보정 */
.section__head > .section__eyebrow,
.section__head > .section__title,
.section__head > .section__lede{ grid-column:2; }
.section__head--center > *{ grid-column:auto; }

/* ================= PROBLEMS - 증상/처방 대조표 ================= */
.problems{ margin-bottom:0; }
.problems__list{ display:block; max-width:none; border-top:1px solid var(--goldline); counter-reset:dxr; }
.problems__item{
  display:grid; grid-template-columns:clamp(44px,5vw,72px) minmax(0,1fr) minmax(0,1fr);
  gap:clamp(18px,3.4vw,48px); align-items:start;
  background:none; border:0; border-bottom:1px solid var(--hairsoft); border-left:0;
  padding:clamp(28px,3.6vw,44px) 0; counter-increment:dxr; transition:background .4s var(--ease);
}
.problems__item:hover{ background:rgba(197,165,114,.06); }
.problems__item::before{
  content:counter(dxr,decimal-leading-zero); font-family:var(--serif); font-weight:400;
  font-size:clamp(30px,4vw,52px); line-height:.9; color:var(--goldtext); letter-spacing:-.02em; font-feature-settings:"tnum" 1;
}
.problems__quote{ font-family:var(--serif); font-weight:500; font-size:clamp(17px,2vw,23px); line-height:1.5; letter-spacing:-.02em; color:var(--ink); }
.problems__answer{ font-size:15px; line-height:1.72; letter-spacing:-.01em; color:var(--ink); margin-top:0; font-weight:400; padding-top:3px; }
.problems__answer::before{ content:'Rx → '; font-family:var(--serif); font-weight:600; color:var(--goldtext); letter-spacing:.02em; }
@media(max-width:760px){
  .problems__item{ grid-template-columns:1fr; gap:14px; padding:30px 0; }
  .problems__item::before{ font-size:32px; }
  .problems__answer{ border-top:1px solid var(--hairsoft); padding-top:16px; }
}

/* ================= STEPS - 처방 단계 타임라인 ================= */
.steps__grid{ display:block; position:relative; border-top:1px solid var(--hairsoft); padding-left:clamp(28px,4vw,56px); counter-reset:step; }
.steps__grid::before{ content:""; position:absolute; left:clamp(8px,1.4vw,20px); top:0; bottom:0; width:1px; background:var(--hairsoft); }
.step-card{
  position:relative; display:grid; grid-template-columns:auto 1fr; column-gap:clamp(18px,3vw,40px);
  align-items:start; background:none; border:0; border-bottom:1px solid var(--hairsoft);
  padding:clamp(30px,4vw,46px) 0; counter-increment:step;
}
.step-card:last-child{ border-bottom:0; }
/* 노드: 헤어라인을 관통하는 각인 다이아몬드 (배경 불문, 마스크 불요) */
.step-card::before{ content:""; position:absolute; left:calc(-1 * clamp(28px,4vw,56px) + clamp(8px,1.4vw,20px) - 4px); top:clamp(34px,4.2vw,50px); width:7px; height:7px; border:1px solid var(--goldline); background:none; transform:rotate(45deg); }
.step-card__num{ grid-row:1 / 3; font-family:var(--serif); font-weight:400; font-size:clamp(34px,4.6vw,60px); line-height:.9; color:var(--goldtext); letter-spacing:-.02em; font-feature-settings:"tnum" 1; margin-bottom:0; }
.step-card__num::before{ content:counter(step,decimal-leading-zero); }
.step-card__title{ align-self:end; font-family:var(--serif); font-weight:600; font-size:clamp(20px,2.4vw,28px); line-height:1.32; letter-spacing:-.025em; color:var(--ink); margin-bottom:12px; }
.step-card__desc{ align-self:start; font-size:15px; line-height:1.78; letter-spacing:-.01em; color:var(--muted); max-width:52ch; }
@media(max-width:680px){
  .step-card{ grid-template-columns:1fr; row-gap:8px; }
  .step-card__num{ grid-row:auto; font-size:36px; }
}

/* ================= SOLUTIONS - 유형 인덱스 (헤어라인 격자) ================= */
.solutions__grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:0; border-top:1px solid var(--goldline); }
.solution-card{ background:none; border:0; border-bottom:1px solid var(--hairsoft); padding:clamp(28px,3vw,40px) 0; transition:background .35s var(--ease); }
.solution-card:nth-child(odd){ border-right:1px solid var(--hairsoft); padding-right:clamp(26px,2.6vw,40px); }
.solution-card:nth-child(even){ padding-left:clamp(26px,2.6vw,40px); }
.solution-card:hover{ transform:none; border-color:var(--hairsoft); background:rgba(197,165,114,.06); }
.solution-card__num{ font-family:var(--serif); font-weight:600; font-size:12.5px; letter-spacing:.16em; text-transform:uppercase; color:var(--goldtext); line-height:1; margin-bottom:14px; }
.solution-card__title{ font-family:var(--serif); font-weight:600; font-size:clamp(19px,2.1vw,24px); color:var(--ink); margin-bottom:12px; letter-spacing:-.025em; line-height:1.35; }
.solution-card__desc{ font-size:14.5px; color:var(--muted); line-height:1.75; }

/* ================= AXES - 4축 대조 (헤어라인) ================= */
.axes__grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:0; border-top:1px solid var(--goldline); }
.axis-card{ background:none; border:0; border-bottom:1px solid var(--hairsoft); padding:clamp(28px,3vw,40px) 0; }
.axis-card:nth-child(odd){ border-right:1px solid var(--hairsoft); padding-right:clamp(26px,2.6vw,40px); }
.axis-card:nth-child(even){ padding-left:clamp(26px,2.6vw,40px); }
.axis-card__label{ font-size:11px; color:var(--goldtext); letter-spacing:.2em; margin-bottom:12px; font-weight:600; text-transform:uppercase; }
.axis-card__title{ font-family:var(--serif); font-weight:600; font-size:clamp(18px,2vw,23px); color:var(--ink); margin-bottom:18px; letter-spacing:-.025em; }
.axis-card__compare{ display:grid; grid-template-columns:1fr auto 1fr; gap:16px; align-items:center; padding:16px 0 0; border-top:1px solid var(--hairsoft); }
.axis-card__compare-side{ font-size:14px; color:var(--ink); line-height:1.5; }
.axis-card__compare-side strong{ display:block; font-family:var(--serif); color:var(--goldtext); font-weight:600; margin-bottom:4px; }
.axis-card__compare-vs{ font-family:var(--serif); color:var(--goldtext); font-size:12px; font-weight:600; }

/* ================= DETAIL LIST - 번호 항목 (헤어라인) ================= */
.detail-list{ list-style:none; padding:0; margin:0; border-top:1px solid var(--goldline); }
.detail-list li{ display:grid; grid-template-columns:clamp(40px,5vw,64px) 1fr; gap:clamp(16px,2.4vw,32px); padding:clamp(20px,2.4vw,30px) 0; border-bottom:1px solid var(--hairsoft); font-size:15px; line-height:1.7; align-items:start; }
.detail-list li:last-child{ border-bottom:0; }
.detail-list__num{ font-family:var(--serif); font-weight:400; font-size:clamp(24px,3vw,38px); color:var(--goldtext); line-height:.9; font-feature-settings:"tnum" 1; padding-top:0; }
.detail-list__title{ display:block; font-family:var(--serif); color:var(--ink); font-weight:600; font-size:clamp(16px,1.8vw,19px); margin-bottom:5px; letter-spacing:-.02em; }
.detail-list__desc{ color:var(--muted); font-size:14px; line-height:1.7; }

/* ================= STRATEGY TABLE - 헤어라인 표 ================= */
.strategy-table{ width:100%; border-collapse:collapse; border-top:1px solid var(--goldline); }
.strategy-table tbody tr{ border-bottom:1px solid var(--hairsoft); }
.strategy-table tbody tr:last-child{ border-bottom:1px solid var(--hairsoft); }
.strategy-table td{ padding:clamp(18px,2.2vw,26px) 16px; font-size:14.5px; line-height:1.7; vertical-align:top; }
.strategy-table td:first-child{ font-family:var(--serif); color:var(--goldtext); font-weight:600; width:clamp(120px,18vw,220px); font-size:clamp(16px,1.7vw,19px); letter-spacing:-.02em; padding-left:0; }
.strategy-table td:nth-child(2){ color:var(--ink); }

/* ================= WHY CARD - 처방 원칙 (plate 판 + 이중 각인 프레임) ================= */
.why-card{ background:var(--plate); border:1px solid var(--hair); padding:clamp(40px,6vw,72px) clamp(34px,5vw,64px); position:relative; overflow:hidden; color:var(--ink); }
.why-card::after{ content:""; position:absolute; inset:clamp(14px,2vw,28px); border:1px solid var(--hairsoft); pointer-events:none; }
.why-card__title{ position:relative; z-index:1; font-family:var(--serif); font-weight:500; font-size:clamp(24px,3.4vw,40px); color:var(--ink); margin-bottom:20px; letter-spacing:-.03em; line-height:1.42; }
.why-card__title em{ font-style:normal; color:var(--forest,#006241); font-weight:600; }
.why-card__lede{ position:relative; z-index:1; font-size:15.5px; color:var(--muted); line-height:1.85; max-width:64ch; }

/* ================= COURSE CTA - 진단 신청 (deep2 침강 + 각인 프레임) ================= */
.course-cta{ text-align:center; padding:clamp(64px,9vw,110px) 0; background:var(--deep2); color:var(--ink); position:relative; overflow:hidden; border-top:1px solid var(--hair); }
.course-cta::before{ content:''; position:absolute; inset:0; background:radial-gradient(circle at 50% -20%, rgba(197,165,114,.10), transparent 60%); pointer-events:none; }
.course-cta::after{ content:""; position:absolute; inset:clamp(14px,2vw,28px); border:1px solid var(--hairsoft); pointer-events:none; }
.course-cta .container{ position:relative; z-index:1; }
.course-cta__eyebrow{ display:inline-flex; align-items:center; gap:10px; justify-content:center; font-size:11px; color:var(--muted); letter-spacing:.26em; margin-bottom:18px; font-weight:600; text-transform:uppercase; }
.course-cta__eyebrow::before{ content:""; width:24px; height:1px; background:var(--goldline); }
.course-cta__title{ font-family:var(--serif); font-weight:600; font-size:clamp(28px,4.4vw,54px); line-height:1.3; letter-spacing:-.035em; color:var(--ink); margin-bottom:18px; }
.course-cta__title em{ font-style:normal; color:var(--forest,#006241); font-weight:600; }
.course-cta__lede{ font-size:15px; color:var(--muted); margin-bottom:clamp(32px,4vw,44px); max-width:46ch; margin-left:auto; margin-right:auto; line-height:1.8; }
.course-cta__group{ display:flex; justify-content:center; gap:14px; flex-wrap:wrap; }

/* ================= BUTTONS (0-radius 헤어라인, hover 금박 채움) ================= */
.btn-primary{ background:transparent; color:var(--goldtext); border:1px solid var(--goldline); padding:15px 30px; font-size:14px; font-weight:600; letter-spacing:.01em; display:inline-flex; align-items:center; gap:9px; transition:background-color .28s var(--ease), color .28s var(--ease), border-color .28s var(--ease); }
.btn-primary:hover{ background:var(--foil); color:var(--field); border-color:transparent; }
.btn-ghost{ background:transparent; color:var(--ink); border:1px solid var(--hair); padding:15px 28px; font-size:14px; font-weight:600; letter-spacing:.01em; display:inline-flex; align-items:center; gap:9px; transition:border-color .28s var(--ease), background-color .28s var(--ease); }
.btn-ghost:hover{ border-color:var(--goldline); background:rgba(197,165,114,.06); }
.btn-primary svg, .btn-ghost svg{ width:18px; height:18px; }

/* ================= 합격 현황 proof (consulting) - deep2 침강 클라이맥스 ================= */
.proof-stats{ display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin-bottom:48px; }
.proof-stat{ text-align:center; padding:32px 16px; background:rgba(197,165,114,.06); border:1px solid var(--hairsoft); }
.proof-stat__num{ display:block; font-family:var(--serif); font-size:48px; font-weight:600; color:var(--goldtext); line-height:1; letter-spacing:-.02em; font-feature-settings:"tnum" 1; }
@supports (-webkit-background-clip:text){
  .proof-stat__num{ background:var(--foil); -webkit-background-clip:text; background-clip:text; color:transparent; }
}
.proof-stat__label{ display:block; margin-top:12px; font-size:13px; color:var(--muted); letter-spacing:.04em; }
.proof-stat--hl{ border-top:1px solid var(--goldline); }
.proof-stat--hl .proof-stat__label{ color:var(--ink); }
.proof-wall{ display:grid; grid-template-columns:repeat(auto-fill, minmax(148px,1fr)); gap:14px; margin-bottom:44px; }
/* 합격증 이미지: hairsoft 보더 + 여백 매트의 절제된 각인 프레임 (그림자, 라운드 없음) */
.proof-cert{ background:none; border:1px solid var(--hairsoft); padding:8px; overflow:hidden; transition:border-color .3s var(--ease); }
.proof-cert:hover{ border-color:var(--hair); }
.proof-cert img{ width:100%; aspect-ratio:600/820; object-fit:cover; object-position:top center; display:block; }
.proof-cert figcaption{ padding:11px 6px 3px; font-size:11.5px; font-weight:600; color:var(--muted); text-align:center; letter-spacing:-.01em; line-height:1.4; border-top:1px solid var(--hairsoft); margin-top:8px; }
.proof-cert--med{ border-color:var(--hair); } .proof-cert--med figcaption{ color:var(--goldtext); }
.proof-subhead{ text-align:center; font-size:15px; color:var(--muted); margin-bottom:20px; }
.proof-subhead strong{ color:var(--ink); font-weight:600; }
.proof-breakdown{ display:flex; flex-wrap:wrap; gap:8px; justify-content:center; margin-bottom:28px; }
.proof-chip{ font-size:13px; padding:7px 14px; background:rgba(197,165,114,.06); border:1px solid var(--hairsoft); color:var(--muted); letter-spacing:.02em; }
.proof-chip strong{ color:var(--goldtext); margin-left:5px; font-weight:600; }
.proof-chip--top{ border-color:var(--hair); color:var(--ink); }
.proof-note{ font-size:12px; color:var(--muted); text-align:center; line-height:1.7; max-width:720px; margin:0 auto; }
.section--proof{ background:var(--deep2); color:var(--ink); border-top:1px solid var(--hairsoft); border-bottom:1px solid var(--hairsoft); }
.section--proof .section__head::before{ color:var(--goldtext); }
.section--proof .section__title{ color:var(--ink); } .section--proof .section__title em{ color:var(--forest,#006241); }
.section--proof .section__lede{ color:var(--muted); }
.section--proof .section__eyebrow{ color:var(--muted); }

/* ================= MOTION ================= */
.s-reveal{ opacity:0; transform:translateY(28px); transition:opacity 1s var(--ease), transform 1s var(--ease); will-change:opacity, transform; }
.s-reveal.in{ opacity:1; transform:translateY(0); }
.s-reveal.dly1{ transition-delay:.10s; } .s-reveal.dly2{ transition-delay:.20s; } .s-reveal.dly3{ transition-delay:.30s; }

/* ================= RESPONSIVE ================= */
@media(max-width:760px){
  .solutions__grid, .axes__grid{ grid-template-columns:1fr; }
  .solution-card:nth-child(odd), .axis-card:nth-child(odd){ border-right:0; padding-right:0; }
  .solution-card:nth-child(even), .axis-card:nth-child(even){ padding-left:0; }
  .axis-card__compare{ grid-template-columns:1fr; text-align:center; gap:10px; }
}
@media(max-width:640px){
  .proof-stats{ grid-template-columns:repeat(2,1fr); gap:12px; }
  .proof-stat{ padding:24px 12px; } .proof-stat__num{ font-size:38px; }
  .proof-wall{ grid-template-columns:repeat(auto-fill, minmax(108px,1fr)); gap:10px; }
  .proof-cert figcaption{ font-size:10px; padding:8px 4px 2px; }
  .strategy-table td:first-child{ width:auto; display:block; padding-bottom:4px; }
  .strategy-table td{ display:block; padding:14px 0; }
  .strategy-table tbody tr{ padding:8px 0; }
}

@media(prefers-reduced-motion:reduce){
  .s-reveal{ opacity:1; transform:none; transition:none; }
  html{ scroll-behavior:auto; }
}

/* il internal-link: subject page to school spoke block (subject to schools) */
.sd-prose{ font-size:14.5px; line-height:1.8; color:var(--muted); letter-spacing:-.005em; max-width:64ch; }
.cross-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(170px,1fr)); gap:0; border-top:2px solid var(--goldline,#c5a572); margin-top:22px; }
.cross-grid--dense{ grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); }
.cross-link{ display:block; min-width:0; padding:15px 18px; border-bottom:1px solid var(--hairsoft,rgba(197,165,114,.18)); border-right:1px solid var(--hairsoft,rgba(197,165,114,.18)); text-decoration:none; transition:background .3s ease, padding-left .25s ease; }
.cross-link:hover{ background:rgba(197,165,114,.06); padding-left:24px; }
.cross-link__t{ font-family:var(--serif); font-weight:600; font-size:15px; color:var(--ink); margin-bottom:4px; letter-spacing:-.02em; word-break:keep-all; overflow-wrap:anywhere; }
.cross-link__d{ font-size:12px; color:var(--muted); letter-spacing:-.005em; }
@media(max-width:560px){ .cross-grid, .cross-grid--dense{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
