/* Calendar uses the site's Fraunces / Inter typography and established term palette.
   Pelion v62: the developer's calendar stylesheet (site_mockup_v24/assets/calendar.css), one edit — the strip labels' colour, below. */
.pc-root{--pc-nav-height:76px;--pc-rest:#252c35;--pc-study:#aab2be;--pc-uni:#d4646e;background:var(--ink);color:var(--paper);font-family:Inter,system-ui,sans-serif;font-weight:400}
.pc-root *{box-sizing:border-box}
.pc-root [hidden]{display:none!important}
.pc-root .pc-term-1{--pc-term:var(--t-canada)}
.pc-root .pc-term-2{--pc-term:var(--t-himalaya)}
.pc-root .pc-term-3{--pc-term:var(--t-japan)}
.pc-root .pc-term-4{--pc-term:var(--t-africa)}
.pc-root .pc-term-5{--pc-term:var(--t-andes)}
.pc-root .pc-term-6{--pc-term:var(--t-alaska)}
.pc-root :where(h2,h3,p,ul){margin:0}
.pc-root a{color:inherit;text-decoration:none}
.pc-root a:hover{text-decoration:none}
.pc-root :is(a,button,input,summary):focus-visible{outline:2px solid var(--gold);outline-offset:4px}
.pc-root .pc-content{max-width:1200px;margin:0 auto;padding:0 clamp(20px,4vw,48px)}
.pc-root .pc-controls{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:12px 18px;padding-top:24px}
.pc-root .pc-view-switch{display:flex;gap:4px}
.pc-root .pc-view-switch button{font:400 12px/1.4 Inter,system-ui,sans-serif;background:transparent;border:1px solid var(--line);border-radius:5px;color:var(--muted);padding:8px 12px;cursor:pointer}
.pc-root .pc-view-switch button[aria-pressed="true"]{color:var(--paper);border-color:var(--gold);background:rgba(211,162,78,.08)}
.pc-root .pc-view-switch button:hover{border-color:var(--gold);color:var(--paper)}
.pc-root .pc-reading-toggle{display:flex;align-items:center;gap:9px;cursor:pointer;font-size:12px;white-space:nowrap;min-height:36px}
.pc-root .pc-reading-toggle input{accent-color:var(--gold);width:16px;height:16px;margin:0;cursor:pointer}
.pc-root .pc-overview{padding:38px 0 30px}
.pc-root .pc-summary{display:flex;flex-wrap:wrap;gap:12px 26px;font-size:13px;line-height:1.6;color:var(--muted)}
.pc-root .pc-summary strong{font-weight:500;color:var(--paper)}
.pc-root .pc-timeline{display:flex;gap:3px;width:100%;height:42px;margin-top:24px}
.pc-root .pc-timeline-term{display:flex;flex-basis:0;min-width:0;position:relative;transition:filter .15s}
.pc-root .pc-timeline-term:hover{filter:brightness(1.25)}
.pc-root .pc-timeline-term:focus-visible{z-index:2}
.pc-root .pc-segment{flex-basis:0;min-width:0;display:flex;justify-content:center;align-items:center;font-size:11px;font-weight:500;line-height:1;color:#fff}
.pc-root .pc-segment-field{background:var(--pc-term)}
.pc-root .pc-segment-field>span{color:var(--ink)}
/* Pelion v62 (Arvin, 19 Sep 2026): the T1–T6 labels are ink on every term colour (theirs were white, 2.3:1 on the
   Alaska green against the WCAG AA gate). Ink on the Andes purple measures 3.8:1, so that one segment is mixed 15%
   toward the paper (4.9:1); the term's colour is untouched everywhere else. */
.pc-term-5 .pc-segment-field{background:color-mix(in srgb,var(--pc-term) 85%,var(--paper))}
.pc-root .pc-segment-rest,.pc-root .pc-key-rest{background:var(--pc-rest)}
.pc-root .pc-segment-study,.pc-root .pc-key-study{background:var(--pc-study)}
.pc-root .pc-segment-uni,.pc-root .pc-key-uni{background:var(--pc-uni)}
.pc-root .pc-timeline-detail{margin:12px 0 9px;min-height:2.8em;font-size:12px;line-height:1.5;color:var(--paper)}
.pc-root .pc-key{display:flex;flex-wrap:wrap;gap:10px 20px;font-size:11px;color:var(--muted)}
.pc-root .pc-key span{display:flex;align-items:center;gap:7px}
.pc-root .pc-key i{width:10px;height:10px;display:block}
.pc-root .pc-view-status{margin-top:22px;color:var(--muted);font-size:12px;scroll-margin-top:calc(var(--pc-nav-height) + 16px)}
.pc-root .pc-term{padding:30px 0 48px;border-top:1px solid color-mix(in srgb,var(--pc-term) 65%,transparent);scroll-margin-top:calc(var(--pc-nav-height) + 18px)}
.pc-root .pc-term-intro{display:grid;grid-template-columns:minmax(185px,.62fr) minmax(0,1.6fr);gap:30px;align-items:center;margin-bottom:26px;padding:18px;border:1px solid transparent;border-radius:6px;cursor:pointer;transition:border-color .15s}
.pc-root .pc-term-intro:hover,.pc-root .pc-term-intro:focus-visible{border-color:var(--gold)}
.pc-root .pc-term-meta{color:color-mix(in srgb,var(--pc-term) 78%,var(--paper));font-size:12px;font-weight:500;line-height:1.7;letter-spacing:.04em;margin-bottom:9px}
.pc-root .pc-term-heading h2{font:360 clamp(1.8rem,3.6vw,3rem)/1.08 Fraunces,Georgia,serif;letter-spacing:-.01em;max-width:none;text-wrap:wrap}
.pc-root .pc-term-weeks{font-size:12px;color:var(--muted);margin-top:12px}
.pc-root .pc-map{display:grid;gap:8px;align-items:center;min-width:0}
.pc-root .pc-map-split{grid-template-columns:1fr 1fr}
.pc-root .pc-map img{display:block;width:100%;height:auto;border-radius:3px}
.pc-root .pc-table{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:0;font:400 13px/1.55 Inter,system-ui,sans-serif}
.pc-root .pc-table thead th{position:sticky;top:var(--pc-nav-height);z-index:10;background:var(--ink);text-align:left;color:var(--muted);font-weight:400;font-size:11px;letter-spacing:.06em;padding:10px 12px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.pc-root .pc-table thead th:nth-child(1){width:10%}
.pc-root .pc-table thead th:nth-child(2){width:42%}
.pc-root .pc-table thead th:nth-child(3){width:18%}
.pc-root .pc-table thead th:nth-child(4){width:30%}
.pc-root .pc-table td,.pc-root .pc-table tbody th{padding:16px 12px;vertical-align:top;border-bottom:1px solid var(--line);text-align:left}
.pc-root .pc-row{scroll-margin-top:calc(var(--pc-nav-height) + 60px)}
.pc-root .pc-row-field{position:relative;background:color-mix(in srgb,var(--pc-term) 5%,transparent);cursor:pointer}
.pc-root .pc-row-title{font-weight:400}
.pc-root .pc-block-link{display:inline;position:static;font-weight:400;line-height:1.55}
.pc-root .pc-block-link:after{content:'';position:absolute;inset:0;z-index:1;border:1px solid transparent;pointer-events:auto}
.pc-root .pc-row-field:hover .pc-block-link:after,.pc-root .pc-row-field:focus-within .pc-block-link:after{border-color:var(--gold)}
.pc-root .pc-detail summary,.pc-root .pc-readings a{position:relative;z-index:2}
.pc-root .pc-weeks{font-weight:500;font-variant-numeric:tabular-nums;color:color-mix(in srgb,var(--pc-term) 78%,var(--paper))}
.pc-root .pc-weeks span{display:block;font-size:11px;color:var(--muted);font-weight:400;white-space:nowrap;margin-top:3px}
.pc-root .pc-months{font-size:11px;color:var(--muted);letter-spacing:.025em}
.pc-root .pc-location{color:var(--muted)}
.pc-root .pc-detail{margin-top:8px;font-size:12px}
.pc-root .pc-detail summary{display:list-item;width:fit-content;cursor:pointer;color:var(--gold);font-size:11px}
.pc-root .pc-detail p{margin-top:8px;line-height:1.6;color:var(--muted)}
.pc-root .pc-home{margin-top:22px}
.pc-root .pc-home h3{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 16px;font:400 14px/1.5 Inter,system-ui,sans-serif;margin-bottom:12px;color:var(--paper)}
.pc-root .pc-home h3>span:last-child{font-size:11px;color:var(--muted);letter-spacing:.04em}
.pc-root .pc-home .pc-weeks{color:var(--muted)}
.pc-root .pc-row-rest{color:var(--muted)}
.pc-root .pc-row-study{background:rgba(170,178,190,.035)}
.pc-root .pc-row-uni{background:color-mix(in srgb,var(--pc-uni) 7%,transparent)}
.pc-root .pc-row-uni .pc-weeks{color:var(--pc-uni)}
.pc-root .pc-period-kind{display:block;font-size:10px;font-weight:500;color:var(--muted);letter-spacing:.035em;margin-bottom:4px}
.pc-root .pc-kind-study{color:var(--pc-study)}
.pc-root .pc-kind-uni{color:var(--pc-uni)}
.pc-root .pc-readings{margin-top:12px;padding-top:10px;border-top:1px solid var(--line);font-size:11px;font-weight:400}
.pc-root .pc-readings>p{color:var(--muted);margin-bottom:6px}
.pc-root .pc-readings ul{padding:0;list-style:none;display:grid;gap:8px}
.pc-root .pc-readings li a{color:var(--paper)}
.pc-root .pc-readings li a:hover{color:var(--gold);text-decoration:underline;text-underline-offset:3px}
.pc-root .pc-readings em{display:inline;font-style:italic;font-weight:400;color:var(--muted)}
.pc-root .pc-reading-phase{display:inline;color:var(--muted);font-style:normal}
.pc-root .pc-recommended{margin:0 0 22px;padding:0;border-top:0}
.pc-root[data-view="academic"] .pc-term{padding-top:20px;padding-bottom:30px}
.pc-root[data-view="academic"] .pc-home{margin:0}
.pc-root .pc-amp{font-family:Inter,system-ui,sans-serif;font-weight:400;font-size:.84em}
@media(max-width:980px){.pc-root .pc-term-intro{grid-template-columns:1fr;gap:18px}.pc-root .pc-term-heading{display:grid;grid-template-columns:1fr auto;align-items:end;gap:4px 14px}.pc-root .pc-term-meta{grid-column:1/-1}.pc-root .pc-term-weeks{margin:0}.pc-root .pc-map{max-width:720px;width:100%;margin:auto}}
@media(max-width:680px){.pc-root .pc-controls{gap:10px 14px}.pc-root .pc-view-switch{flex-wrap:wrap}.pc-root .pc-view-switch button{min-height:40px;padding:7px 9px}.pc-root .pc-reading-toggle{min-height:32px}.pc-root .pc-summary{display:grid;gap:5px}.pc-root .pc-timeline-detail{min-height:4.5em}.pc-root .pc-table,.pc-root .pc-table tbody{display:block}.pc-root .pc-table thead{display:none}.pc-root .pc-row{display:grid;grid-template-columns:85px minmax(0,1fr);padding:15px 12px;gap:8px 12px;border-bottom:1px solid var(--line)}.pc-root .pc-table td,.pc-root .pc-table tbody th{display:block;border:0;padding:0}.pc-root .pc-weeks{grid-column:1;grid-row:1}.pc-root .pc-row-title{grid-column:2;grid-row:1 / span 3}.pc-root .pc-months{grid-column:1;grid-row:2;overflow-wrap:anywhere}.pc-root .pc-location{grid-column:1/-1;grid-row:4;font-size:12px}.pc-root .pc-location:before{content:'Location · ';color:var(--faint)}.pc-root .pc-term-heading{display:block}.pc-root .pc-term-weeks{margin-top:9px}.pc-root .pc-term{padding-bottom:32px}.pc-root .pc-map-split{grid-template-columns:1fr}.pc-root .pc-map-split img{max-width:440px;margin:auto}.pc-root .pc-map-single{width:100%;overflow:hidden}.pc-root .pc-key{gap:8px 14px}}
@media(prefers-reduced-motion:reduce){.pc-root *{scroll-behavior:auto!important;transition:none!important}}
