/* Subject identities share an editorial structure; course facts stay in the finder. */
.subject-opening{padding-block:34px 64px}.subject-opening>.breadcrumbs{margin-bottom:32px}.subject-opening-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);gap:64px;align-items:center}.subject-opening-copy,.subject-section-heading>*,.subject-feature>*,.subject-campus>*,.subject-visit>*{min-width:0;overflow-wrap:anywhere}.subject-opening h1{font-size:clamp(44px,6.4vw,86px);line-height:1.02;letter-spacing:-.06em;margin:22px 0 28px;overflow-wrap:anywhere}.subject-full-stop{color:var(--blue)}.subject-opening-line{font-size:clamp(20px,2.2vw,27px);line-height:1.35;letter-spacing:-.03em;max-width:24ch;margin-bottom:18px}.subject-intro{font-size:16px;line-height:1.8;color:var(--muted);max-width:49ch;margin-bottom:26px}.subject-route-counts{display:flex;gap:10px 24px;flex-wrap:wrap;font-size:12px;color:var(--muted);margin:26px 0 0}.subject-route-counts strong{font-size:20px;color:var(--ink);font-variant-numeric:tabular-nums;margin-right:4px}.subject-route-counts small{flex-basis:100%;font-size:11px}.subject-opening-photo{margin:0;position:relative;border-radius:28px 28px 100px 28px;overflow:hidden;background:var(--pale)}.subject-opening-photo img{width:100%;aspect-ratio:1/1;object-fit:cover}.subject-opening-photo figcaption{font-size:14px;line-height:1.6;padding:18px 24px;background:var(--mint);color:var(--ink)}
.subject-engineering-art{background:#103b57;color:#e5f6ff;min-height:470px;border-radius:28px 28px 100px 28px;padding:25px 28px 28px;position:relative;overflow:hidden}.subject-art-top{font-size:12px;position:relative;z-index:1}.subject-engineering-art .engineering-drawing{display:block;width:calc(100% + 50px);max-width:none;margin:-5px -25px -38px;height:340px;transform:rotate(-8deg)}.subject-art-bottom{display:flex;align-items:end;justify-content:space-between;gap:15px;position:relative;z-index:1}.subject-art-bottom>span:first-child{font-size:38px;line-height:1.08;letter-spacing:-.045em}.subject-art-bottom strong{font-weight:500;color:#b9ed83}.subject-art-cross{font-size:100px;line-height:.8;font-weight:200;color:#b9ed83;padding-right:16px}.subject-typographic-art{background:var(--mint);border-radius:28px 28px 100px 28px;padding:56px 42px;position:relative;overflow:hidden;min-height:400px;display:flex;flex-direction:column;justify-content:center}.subject-typographic-art>span,.subject-typographic-art>strong{position:relative;z-index:1;font-size:clamp(32px,4.8vw,64px);line-height:1.2;letter-spacing:-.06em;font-weight:500}.subject-typographic-art>span{color:var(--muted)}.subject-typographic-art i{width:210px;height:210px;border:40px solid var(--green);border-radius:50%;position:absolute;right:-80px;top:-85px;opacity:.7}
.subject-catalogue{padding-block:54px 64px;border-top:1px solid var(--line);scroll-margin-top:24px}.subject-section-heading{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:50px;align-items:end;margin-bottom:30px}.subject-section-heading h2{font-size:clamp(30px,3.6vw,48px);max-width:26ch;margin-bottom:0}.subject-section-heading>p{font-size:16px;line-height:1.8;color:var(--muted);max-width:46ch;margin:0 0 4px}.subject-feature-section{background:var(--pale)}.subject-feature{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px 80px;padding-block:76px}.subject-feature-intro h2{font-size:clamp(32px,4vw,52px);max-width:17ch}.subject-feature-intro>p:not(.editorial-kicker){font-size:16px;line-height:1.8;max-width:47ch;color:var(--muted)}.subject-feature-intro>img{width:100%;height:320px;object-fit:cover;border-radius:20px;margin-top:28px}.subject-story-steps{list-style:none;padding:0;margin:0}.subject-story-steps li{display:grid;grid-template-columns:52px minmax(0,1fr);gap:22px;border-top:1px solid var(--control-border);padding:24px 0;margin:0}.subject-story-steps li:last-child{border-bottom:1px solid var(--control-border)}.subject-step-number{font-size:32px;line-height:1.15;color:var(--blue);font-variant-numeric:tabular-nums;letter-spacing:-.06em}.subject-story-steps h3{font-size:24px;margin:0 0 12px;line-height:1.25}.subject-story-steps p:not(.subject-step-label){font-size:16px;line-height:1.75;color:var(--muted);margin:0}.subject-step-label{font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 8px}.subject-feature-links{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:10px 32px;font-size:14px}.subject-feature-links .text-link{min-width:0;max-width:100%;min-height:44px;display:inline-flex;align-items:center;gap:12px}
.subject-campus{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:80px;padding-block:76px}.subject-campus h2{font-size:clamp(30px,3.8vw,48px);max-width:19ch}.subject-campus p:not(.editorial-kicker){font-size:16px;line-height:1.8;color:var(--muted);max-width:48ch}.subject-campus .text-link{display:inline-flex;gap:12px;align-items:center;min-height:44px;font-size:14px}.subject-campus ul{list-style:none;padding:0;margin:0;align-self:center}.subject-campus li{border-top:1px solid var(--line);padding:25px 0;display:flex;align-items:center;gap:20px;margin:0;font-size:19px;line-height:1.5}.subject-campus li:last-child{border-bottom:1px solid var(--line)}.subject-facility-mark{display:block;width:18px;height:18px;border:2px solid var(--blue);border-radius:50%;flex:none}.subject-visit{display:flex;justify-content:space-between;align-items:center;gap:40px;background:var(--mint);padding:46px 48px;border-radius:28px 28px 70px 28px;margin-bottom:70px}.subject-visit h2{font-size:clamp(34px,4.5vw,60px);margin-bottom:20px}.subject-visit p:not(.editorial-kicker){font-size:16px;line-height:1.75;max-width:46ch;margin:0}.subject-visit>.button{flex:none;max-width:100%}.subject-visit .editorial-kicker{color:var(--muted)}
html[data-theme=dark] .subject-step-number{color:#73c4f5}html[data-theme=dark] .subject-full-stop{color:#73c4f5}html[data-theme=dark] .subject-typographic-art i{opacity:.3}
@media(max-width:1000px){.subject-opening-grid{gap:36px}.subject-opening h1{font-size:58px}.subject-engineering-art{min-height:400px}.subject-engineering-art .engineering-drawing{height:270px}.subject-art-bottom>span:first-child{font-size:32px}.subject-feature{gap:26px 40px}.subject-campus{gap:40px}.subject-visit{padding:36px}.subject-visit>.button{max-width:230px}.subject-typographic-art{min-height:360px;padding:36px}}
@media(max-width:700px){.subject-opening{padding-block:24px 36px}.subject-opening>.breadcrumbs{font-size:12px;margin-bottom:26px}.subject-opening-grid{grid-template-columns:1fr;gap:28px}.subject-opening h1{font-size:clamp(40px,10.5vw,54px);margin:16px 0 20px}.subject-opening-line{font-size:23px}.subject-intro{font-size:16px;line-height:1.7}.subject-route-counts{margin-top:22px;gap:6px 20px}.subject-opening-photo{border-radius:22px 22px 65px 22px}.subject-opening-photo img{aspect-ratio:4/3}.subject-engineering-art{min-height:0;padding:20px;border-radius:22px 22px 65px 22px}.subject-engineering-art .engineering-drawing{height:255px;margin-top:-22px;margin-bottom:-30px}.subject-art-bottom>span:first-child{font-size:30px}.subject-art-cross{font-size:78px}.subject-typographic-art{min-height:270px;padding:30px;border-radius:22px 22px 65px 22px}.subject-typographic-art>span,.subject-typographic-art>strong{font-size:44px}.subject-catalogue{padding-block:34px 42px}.subject-section-heading{grid-template-columns:1fr;gap:17px;margin-bottom:24px}.subject-section-heading h2{font-size:32px;max-width:22ch}.subject-section-heading .desktop-only{display:none}.subject-section-heading>p{font-size:16px}.subject-feature{grid-template-columns:1fr;gap:32px;padding-block:44px}.subject-feature-intro h2{font-size:36px;max-width:20ch}.subject-feature-intro>img{height:auto;aspect-ratio:4/3;margin-top:24px}.subject-story-steps li{grid-template-columns:38px minmax(0,1fr);gap:16px;padding:22px 0}.subject-step-number{font-size:28px}.subject-story-steps h3{font-size:23px}.subject-feature-links{gap:5px 20px}.subject-campus{grid-template-columns:1fr;gap:25px;padding-block:44px}.subject-campus h2{font-size:34px;max-width:23ch}.subject-campus li{padding:20px 0;font-size:17px}.subject-visit{display:block;padding:28px;border-radius:22px 22px 60px 22px;margin-bottom:44px}.subject-visit h2{font-size:38px}.subject-visit>.button{margin-top:24px;max-width:100%}.subject-visit p:not(.editorial-kicker){font-size:16px}}
@media print{.subject-engineering-art,.subject-typographic-art,.subject-opening-photo{display:none}.subject-opening-grid,.subject-feature,.subject-campus{display:block}.subject-story-steps li{break-inside:avoid}.subject-visit{display:none}.subject-feature-section{background:none}}
.subject-experience .icon-arrow-down{transform:rotate(90deg)}.subject-experience .icon-arrow-up{transform:rotate(-90deg)}
