:root{color-scheme:light;--paper:#FFF8E8;--surface:#F4EBD9;--ink:#10213D;--muted:#536174;--accent:#8F3E27;--accent-hover:#71301E;--line:#CFC7B4;--focus:#168F92;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s6:24px;--s8:32px;--s12:48px;--s16:64px;--s20:80px;--s24:96px;--width:1180px;--body:17px;--small:15px;--lead:20px;--h3:24px;--h2:clamp(28px,3vw,40px);--title:clamp(36px,4vw,56px);--display:clamp(40px,5.5vw,80px)}
*{box-sizing:border-box}html{scroll-padding-top:var(--s6)}body{margin:0;background:var(--paper);color:var(--ink);font:var(--body)/1.8 'Apple SD Gothic Neo','Malgun Gothic',system-ui,sans-serif;word-break:keep-all;overflow-wrap:anywhere}a{color:inherit;text-underline-offset:6px}a:hover{text-decoration:underline}a:focus-visible{outline:3px solid var(--focus);outline-offset:4px}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.35;letter-spacing:-.045em;text-wrap:balance}h1{font-size:var(--title)}h2{font-size:var(--h2)}h3{font-size:var(--h3)}p{text-wrap:pretty}svg{display:block}img{max-width:100%;height:auto}.container{width:min(100% - var(--s24),var(--width));margin-inline:auto}.skip{position:absolute;left:var(--s6);top:var(--s4);z-index:2;padding:var(--s3) var(--s6);background:var(--ink);color:var(--paper);transform:translateY(-200%)}.skip:focus{transform:none}.header{border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--s6);padding-block:var(--s6)}.brand{display:inline-flex;align-items:center;gap:var(--s3);font-size:var(--lead);font-weight:800;letter-spacing:-.04em;text-decoration:none;min-height:44px}.brand-mark{width:32px;height:32px}.nav{display:flex;align-items:center;gap:var(--s8);flex-wrap:wrap}.nav a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none;font-size:var(--small)}.nav a:hover,.nav a[aria-current=page]{text-decoration:underline}.nav .nav-contact{border:1px solid var(--line);padding-inline:var(--s4)}.eyebrow{display:block;font-size:12px;letter-spacing:.13em;font-weight:700;text-transform:uppercase;color:var(--muted);margin-bottom:var(--s6)}.hero{padding-block:var(--s24);display:grid;grid-template-columns:1.55fr 1fr;gap:var(--s16);align-items:center}.hero h1{font-size:var(--display);line-height:1.16;letter-spacing:-.065em}.hero h1 span{display:block}.hero h1 .accent{display:inline;color:var(--accent)}.lead{font-size:var(--lead);color:var(--muted);max-width:55ch;margin-top:var(--s8)}.actions{display:flex;gap:var(--s6);align-items:center;flex-wrap:wrap;margin-top:var(--s12)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:var(--s8);min-height:48px;padding:var(--s3) var(--s6);background:var(--accent);color:var(--paper);text-decoration:none;font-weight:700}.button:hover{background:var(--accent-hover);text-decoration:none}.text-link{display:inline-flex;align-items:center;min-height:44px;gap:var(--s4)}.syllabus{padding:var(--s8);background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.syllabus .eyebrow{margin-bottom:var(--s8)}.syllabus ol{list-style:none;margin:0;padding:0}.syllabus li{display:grid;grid-template-columns:var(--s8) 1fr;gap:var(--s4);padding-block:var(--s6);border-top:1px solid var(--line)}.syllabus li span{font-size:var(--small);color:var(--muted);font-variant-numeric:tabular-nums}.syllabus li strong{font-size:var(--h3);line-height:1.35;letter-spacing:-.03em}.syllabus li p{font-size:var(--small);color:var(--muted);margin-top:var(--s2)}.syllabus-foot{font-size:var(--small);color:var(--muted);padding-top:var(--s6);border-top:1px solid var(--line)}.section{padding-block:var(--s20);border-top:1px solid var(--line)}.section-head{display:grid;grid-template-columns:1fr 1fr;gap:var(--s12);align-items:end;margin-bottom:var(--s12)}.section-head p{max-width:52ch;color:var(--muted)}.service-row{display:grid;grid-template-columns:var(--s16) 1fr 1.3fr;gap:var(--s8);padding-block:var(--s8);border-top:1px solid var(--line)}.service-row .number{color:var(--accent);font-variant-numeric:tabular-nums}.service-row p{color:var(--muted)}.service-row .tags{margin-top:var(--s4);font-size:var(--small);color:var(--ink)}.course{display:grid;grid-template-columns:1fr 1fr;gap:var(--s16);align-items:center}.course-art{background:var(--surface);padding:var(--s8)}.course-art img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover}.course-art figcaption{margin-top:var(--s4);font-size:var(--small);color:var(--muted)}figure{margin:0}.course p{margin-top:var(--s6);color:var(--muted)}.contact{background:var(--surface)}.contact-inner{display:grid;grid-template-columns:1fr 1fr;gap:var(--s16)}.contact p{margin-top:var(--s6);color:var(--muted)}.contact .email{display:inline-flex;align-items:center;font-size:var(--h3);font-weight:700;min-height:44px}.contact small{display:block;font-size:var(--small);color:var(--muted);margin-top:var(--s4)}.footer{padding-block:var(--s12)}.footer-top{display:flex;justify-content:space-between;gap:var(--s8);align-items:flex-start}.footer-info{font-size:var(--small);color:var(--muted);margin-top:var(--s4)}.footer-links{display:flex;gap:var(--s6);flex-wrap:wrap}.footer-links a{display:inline-flex;align-items:center;min-height:44px;font-size:var(--small)}.copyright{font-size:var(--small);color:var(--muted);margin-top:var(--s8)}.page-heading{padding-block:var(--s20) var(--s16);max-width:900px}.page-heading .lead{max-width:65ch}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--s16)}.about-grid p+p{margin-top:var(--s6)}.facts{margin:0}.facts div{display:grid;grid-template-columns:112px 1fr;gap:var(--s6);padding-block:var(--s4);border-bottom:1px solid var(--line)}dt{color:var(--muted)}dd{margin:0;font-weight:600}.policy-layout{display:grid;grid-template-columns:208px minmax(0,1fr);gap:var(--s16);padding-bottom:var(--s20)}.policy-nav{align-self:start;display:grid;gap:var(--s2)}.policy-nav a{min-height:44px;display:flex;align-items:center;font-size:var(--small)}.policy-body{max-width:70ch}.policy-body section+section{margin-top:var(--s12)}.policy-body h2{font-size:var(--h3);margin-bottom:var(--s4)}.policy-body p+p{margin-top:var(--s4)}.policy-body ul,.policy-body ol{padding-left:var(--s6)}.policy-body li+li{margin-top:var(--s3)}.policy-body p,.policy-body li{color:var(--muted)}.policy-body strong{color:var(--ink)}.notice{background:var(--surface);padding:var(--s6);margin-bottom:var(--s12);font-size:var(--small)}.notice strong{display:block;margin-bottom:var(--s2)}.data-list{margin:var(--s6) 0}.data-list div{padding-block:var(--s6);border-top:1px solid var(--line)}.data-list dt{font-weight:700;color:var(--ink)}.data-list dd{font-weight:400;color:var(--muted);margin-top:var(--s2)}.policy-meta{margin-top:var(--s6);color:var(--muted);font-size:var(--small)}.policy-bottom{margin-top:var(--s16);border-top:1px solid var(--line);padding-top:var(--s6)}
@media(max-width:1000px){.hero{gap:var(--s8)}.nav{gap:var(--s4)}.footer-top{display:block}.footer-links{margin-top:var(--s6)}}
@media(max-width:760px){.container{width:calc(100% - var(--s12))}.header-inner{display:block;padding-block:var(--s4)}.nav{margin-top:var(--s3);justify-content:space-between;gap:var(--s2)}.nav a{font-size:var(--small)}.nav .nav-contact{padding-inline:var(--s3)}.hero{grid-template-columns:1fr;padding-block:var(--s16);gap:var(--s12)}.hero h1{font-size:clamp(40px,10.5vw,64px)}.eyebrow{font-size:var(--small);letter-spacing:.08em}.lead{font-size:var(--body);margin-top:var(--s6)}.actions{margin-top:var(--s8)}.syllabus{padding:var(--s6)}.section{padding-block:var(--s16)}.section-head,.course,.contact-inner,.about-grid{grid-template-columns:1fr;gap:var(--s8)}.section-head{margin-bottom:var(--s8)}.service-row{grid-template-columns:var(--s8) 1fr;gap:var(--s4)}.service-row>div:last-child{grid-column:2}.service-row h3{font-size:var(--lead)}.course-art{padding:var(--s4)}.footer-links{gap:var(--s4)}.page-heading{padding-block:var(--s16) var(--s12)}.policy-layout{grid-template-columns:1fr;gap:var(--s8)}.policy-nav{display:flex;flex-wrap:wrap;gap:var(--s3) var(--s6);padding-bottom:var(--s6);border-bottom:1px solid var(--line)}.notice{margin-bottom:var(--s8)}.facts div{grid-template-columns:96px 1fr;gap:var(--s4)}}
@media print{.header,.footer,.policy-nav,.skip,.actions{display:none}.container{width:100%}.policy-layout{display:block}.policy-body{max-width:none}body{background:white;color:black}}
