/* r96 — compact art admissions page, preserving useful legacy information without long vertical stacking. */
.art-page{--art-navy:#173f55;--art-text:#315767;--art-sub:#6c818b;--art-muted:#8598a0;--art-line:#d8e2e6;--art-soft:#f5f8f9;--art-accent:#477f94}
.art-page #routes,.art-page #courses,.art-page #portfolio,.art-page #teamworks{scroll-margin-top:112px}

/* Hero: one clear, original-resolution visual. */
.art-page .art-r96-hero{padding:48px 0 42px;background:#fff}
.art-page .art-r96-hero::before,.art-page .art-r96-hero::after{display:none!important}
.art-page .art-r96-hero .course-hero-grid{grid-template-columns:minmax(0,1.03fr) minmax(340px,.82fr);gap:54px;align-items:center}
.art-page .art-r96-hero h1{margin-bottom:14px;font-size:clamp(45px,5vw,68px);line-height:1.03;letter-spacing:-.05em}
.art-jp-line{margin:0 0 11px;color:#294f60;font-family:"Noto Serif JP",serif;font-size:clamp(23px,2.4vw,34px);line-height:1.38;font-weight:600}
.art-hero-lede{max-width:670px;margin:0;color:#536f7a;font-size:13.1px;line-height:1.75}
.art-hero-facts{display:grid;grid-template-columns:repeat(3,1fr);margin-top:19px;border-top:1px solid var(--art-line);border-bottom:1px solid var(--art-line)}
.art-hero-facts>div{padding:11px 13px;border-left:1px solid var(--art-line)}
.art-hero-facts>div:first-child{padding-left:0;border-left:0}
.art-hero-facts b{display:block;color:var(--art-navy);font-size:12px;line-height:1.4}
.art-hero-facts span{display:block;margin-top:3px;color:#7a8e96;font-size:9.4px;line-height:1.45}
.art-page .art-r96-hero .course-actions{margin-top:19px}
.art-page .art-r96-hero .course-hero-media{display:block!important;width:100%!important;height:auto!important;border:0!important;background:transparent!important;overflow:visible!important}
.art-page .art-r96-hero .course-hero-media figure{display:block!important;width:100%!important;height:292px!important;margin:0!important;overflow:hidden;border-top:2px solid var(--art-navy);border-bottom:1px solid var(--art-line);background:#edf2f4}
.art-page .art-r96-hero .course-hero-media img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center 43%!important}
.art-page .art-r96-hero .course-hero-media figcaption{display:block;position:static;padding:8px 1px 0;background:transparent;color:#71868f;font-size:9.6px;font-weight:650}

/* Compact jump navigation. */
.art-jumpnav{position:sticky;top:72px;z-index:40;border-bottom:1px solid var(--art-line);background:rgba(255,255,255,.97);backdrop-filter:blur(12px)}
.art-jumpnav .course-shell{display:flex;min-height:41px;overflow-x:auto;scrollbar-width:none}
.art-jumpnav .course-shell::-webkit-scrollbar{display:none}
.art-jumpnav a{display:flex;align-items:center;min-height:41px;padding:0 19px;border-left:1px solid #e8edef;color:#6d828b;font-size:10.7px;font-weight:750;text-decoration:none;white-space:nowrap;transition:color .16s ease,background-color .16s ease}
.art-jumpnav a:first-child{padding-left:0;border-left:0}
@media(hover:hover){.art-jumpnav a:hover{color:var(--art-navy);background:#fafcfc}}

/* Shared section rhythm: deliberately shorter than the old long page. */
.art-page .course-section{padding-top:45px;padding-bottom:45px}
.art-page .course-head{grid-template-columns:118px minmax(0,1fr);gap:29px;margin-bottom:19px}
.art-page .course-head>span{font-size:10px;letter-spacing:.07em}
.art-page .course-head h2{font-size:28px;line-height:1.24;letter-spacing:-.025em}
.art-page .course-head p{max-width:760px;margin-top:6px;color:#647b85;font-size:11.8px;line-height:1.7}

/* Two admission routes + target schools in one section. */
.art-routes-grid{display:grid;grid-template-columns:1fr 1fr;border-top:2px solid var(--art-navy);border-bottom:1px solid var(--art-line);background:#fff}
.art-route{min-width:0;padding:21px 24px 22px;border-left:1px solid var(--art-line)}
.art-route:first-child{padding-left:0;border-left:0}
.art-route:last-child{padding-right:0}
.art-route small{color:#8498a1;font-size:9.3px;font-weight:800;letter-spacing:.055em}
.art-route h3{margin:5px 0 7px;color:var(--art-navy);font-size:18px;line-height:1.35}
.art-route p{margin:0;color:#607984;font-size:11px;line-height:1.68}
.art-route b{color:#315767}
.art-route-note{margin:14px 0 0;padding:10px 12px;border-left:2px solid #789eac;background:#f3f7f8;color:#617983;font-size:10px;line-height:1.62}
.art-school-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));margin-top:19px;border-top:1px solid var(--art-line);border-bottom:1px solid var(--art-line)}
.art-school-strip>div{min-width:0;padding:13px 12px;border-left:1px solid var(--art-line)}
.art-school-strip>div:first-child{padding-left:0;border-left:0}
.art-school-strip b{display:block;color:#315767;font-size:10.8px;line-height:1.45}
.art-school-strip span{display:block;margin-top:3px;color:#7a8e96;font-size:9px;line-height:1.45}

/* Course overview and prices. */
.art-course-overview{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));border-top:1px solid var(--art-line);border-bottom:1px solid var(--art-line);background:#fff}
.art-course-overview>div{padding:12px 13px;border-left:1px solid var(--art-line)}
.art-course-overview>div:first-child{padding-left:0;border-left:0}
.art-course-overview b{display:block;color:#315767;font-size:10.7px;line-height:1.45}
.art-course-overview span{display:block;margin-top:3px;color:#7b8e96;font-size:8.9px;line-height:1.45}
.art-price-groups{display:grid;grid-template-columns:1fr 1fr;gap:10px 12px;margin-top:17px}
.art-price-group{min-width:0;border:1px solid #d6e0e4;background:#fff}
.art-price-group summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 15px;color:#315767;font-size:11.2px;font-weight:800;cursor:pointer;list-style:none}
.art-price-group summary::-webkit-details-marker{display:none}
.art-price-group summary::after{content:"＋";color:#668b9b;font-size:14px;font-weight:500}
.art-price-group[open] summary::after{content:"−"}
.art-price-group[open] summary{border-bottom:1px solid var(--art-line);background:#f8fafb}
.art-price-wrap{overflow-x:auto}
.art-price-table{width:100%;border-collapse:collapse;min-width:510px}
.art-price-table th,.art-price-table td{padding:10px 11px;border-top:1px solid #e7edef;text-align:left;vertical-align:top;font-size:9.7px;line-height:1.5}
.art-price-table tr:first-child th,.art-price-table tr:first-child td{border-top:0}
.art-price-table th{width:42%;color:#315767;font-weight:750;background:#fbfcfc}
.art-price-table td{color:#687e88}
.art-price-table td strong{color:var(--art-navy);font-size:10.3px}

/* Portfolio guidance: four compact columns, not four tall cards. */
.art-portfolio-guide{display:grid;grid-template-columns:repeat(4,1fr);border-top:2px solid var(--art-navy);border-bottom:1px solid var(--art-line)}
.art-portfolio-guide>div{padding:17px 17px 18px;border-left:1px solid var(--art-line)}
.art-portfolio-guide>div:first-child{padding-left:0;border-left:0}
.art-portfolio-guide h3{margin:0 0 7px;color:#315767;font-size:12.5px}
.art-portfolio-guide p{margin:0;color:#70848d;font-size:10px;line-height:1.62}

/* Team + result in a single compact band. */
.art-team-result{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(220px,.55fr);gap:28px;align-items:start}
.art-team-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--art-line);border-bottom:1px solid var(--art-line)}
.art-team-person{min-width:0;padding:13px 14px;border-left:1px solid var(--art-line);border-top:1px solid var(--art-line)}
.art-team-person:nth-child(-n+3){border-top:0}
.art-team-person:nth-child(3n+1){padding-left:0;border-left:0}
.art-team-person b{display:block;color:#315767;font-size:11.7px}
.art-team-person span{display:block;margin-top:4px;color:#768a93;font-size:9.5px;line-height:1.5}
.art-result-note{padding:17px 18px;border-top:2px solid var(--art-navy);border-bottom:1px solid var(--art-line);background:#f6f9fa}
.art-result-note small{display:block;color:#8498a1;font-size:9.2px;font-weight:800}
.art-result-note strong{display:block;margin-top:5px;color:var(--art-navy);font-size:18px;line-height:1.35}
.art-result-note span{display:block;margin-top:4px;color:#6f838c;font-size:10px}

/* Works stay complete but move horizontally instead of consuming multiple screens. */
.art-work-group+.art-work-group{margin-top:20px}
.art-work-head{display:flex;align-items:baseline;justify-content:space-between;gap:18px;margin-bottom:9px}
.art-work-head h3{margin:0;color:#315767;font-size:13px}
.art-work-head span{color:#889aa2;font-size:9.2px}
.art-work-rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(150px,19%);gap:8px;overflow-x:auto;padding:0 0 9px;scroll-snap-type:x proximity;scrollbar-width:thin}
.art-work-rail figure{position:relative;margin:0;height:178px;overflow:hidden;background:#eef2f3;border:1px solid #dbe4e7;scroll-snap-align:start}
.art-work-rail img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .22s ease}
.art-work-rail figcaption{position:absolute;left:0;bottom:0;padding:5px 7px;background:rgba(16,47,67,.82);color:#fff;font-size:8.8px;font-weight:700}
@media(hover:hover){.art-work-rail figure:hover img{transform:scale(1.018)}}
.art-xhs-link{display:inline-flex;margin-top:12px;padding-bottom:2px;border-bottom:1px solid #9aafb8;color:#39768e;font-size:10px;font-weight:750;text-decoration:none}

/* Contact details belong with the CTA. */
.art-contact-lines{display:flex;flex-wrap:wrap;gap:7px 18px;margin-top:7px}
.art-contact-lines a{color:#e4eef2;font-size:10.5px;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.45)}
.art-page .course-footer{gap:10px}

@media(max-width:1000px){
  .art-page .art-r96-hero .course-hero-grid{grid-template-columns:1fr;gap:25px}
  .art-page .art-r96-hero .course-hero-media{max-width:620px}
  .art-page .art-r96-hero .course-hero-media figure{height:260px!important}
  .art-school-strip{grid-template-columns:repeat(3,1fr)}
  .art-school-strip>div:nth-child(4){padding-left:0;border-left:0;border-top:1px solid var(--art-line)}
  .art-school-strip>div:nth-child(n+4){border-top:1px solid var(--art-line)}
  .art-course-overview{grid-template-columns:repeat(3,1fr)}
  .art-course-overview>div:nth-child(4){padding-left:0;border-left:0;border-top:1px solid var(--art-line)}
  .art-course-overview>div:nth-child(n+4){border-top:1px solid var(--art-line)}
  .art-work-rail{grid-auto-columns:minmax(165px,28%)}
}

@media(max-width:760px){
  .art-page .course-section{padding-top:38px;padding-bottom:38px}
  .art-page .course-head{grid-template-columns:1fr;gap:5px;margin-bottom:16px}
  .art-routes-grid{grid-template-columns:1fr}
  .art-route,.art-route:first-child,.art-route:last-child{padding:17px 0;border-left:0}
  .art-route+ .art-route{border-top:1px solid var(--art-line)}
  .art-price-groups{grid-template-columns:1fr}
  .art-portfolio-guide{grid-template-columns:1fr 1fr}
  .art-portfolio-guide>div:nth-child(3){padding-left:0;border-left:0;border-top:1px solid var(--art-line)}
  .art-portfolio-guide>div:nth-child(4){border-top:1px solid var(--art-line)}
  .art-team-result{grid-template-columns:1fr}
  .art-work-rail{grid-auto-columns:minmax(150px,42%)}
}

@media(max-width:520px){
  .art-page .art-r96-hero{padding:36px 0 32px}
  .art-page .art-r96-hero h1{font-size:42px}
  .art-jp-line{font-size:23px}
  .art-hero-facts{grid-template-columns:1fr 1fr}
  .art-hero-facts>div:nth-child(3){padding-left:0;border-left:0;border-top:1px solid var(--art-line)}
  .art-page .art-r96-hero .course-hero-media figure{height:210px!important}
  .art-school-strip,.art-course-overview{grid-template-columns:1fr 1fr}
  .art-school-strip>div,.art-school-strip>div:nth-child(4),.art-course-overview>div,.art-course-overview>div:nth-child(4){padding:11px 10px;border-left:1px solid var(--art-line);border-top:1px solid var(--art-line)}
  .art-school-strip>div:nth-child(-n+2),.art-course-overview>div:nth-child(-n+2){border-top:0}
  .art-school-strip>div:nth-child(odd),.art-course-overview>div:nth-child(odd){padding-left:0;border-left:0}
  .art-portfolio-guide{grid-template-columns:1fr}
  .art-portfolio-guide>div,.art-portfolio-guide>div:nth-child(3),.art-portfolio-guide>div:nth-child(4){padding:13px 0;border-left:0;border-top:1px solid var(--art-line)}
  .art-portfolio-guide>div:first-child{border-top:0}
  .art-team-grid{grid-template-columns:1fr 1fr}
  .art-team-person,.art-team-person:nth-child(-n+3),.art-team-person:nth-child(3n+1){padding:11px 10px;border-left:1px solid var(--art-line);border-top:1px solid var(--art-line)}
  .art-team-person:nth-child(-n+2){border-top:0}
  .art-team-person:nth-child(odd){padding-left:0;border-left:0}
  .art-work-rail{grid-auto-columns:minmax(142px,66%)}
  .art-work-rail figure{height:168px}
}

@media(prefers-reduced-motion:reduce){.art-page *,.art-page *::before,.art-page *::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
