@font-face{font-family:LocalSans;src:local("Arial");font-display:swap}
:root{--paper:#f2f0e9;--ink:#1b1c19;--red:#b40a13;--muted:#62635b;--line:#d8d7ce;--white:#fffef9}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%;height:auto}::selection{background:var(--red);color:#fff}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--red);outline-offset:6px}.skip-link{position:fixed;z-index:30;top:-80px;left:15px;background:var(--ink);color:white;padding:15px}.skip-link:focus{top:10px}.site-header{height:102px;display:flex;align-items:center;justify-content:space-between;margin:0 5.2%;border-bottom:1px solid var(--line);position:relative;z-index:10}.brand{width:185px}.site-header nav{display:flex;align-items:center;gap:38px;font-size:13px;font-weight:600}.site-header nav>a{padding:14px 0}.site-header nav>a:hover{color:var(--red)}.site-header .nav-contact{margin-left:20px;border-bottom:1px solid var(--ink)}.nav-contact span{margin-left:30px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.14fr 1fr;min-height:650px;max-width:1600px;margin:auto;padding:65px 5.2% 70px;gap:35px;align-items:center}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:10px;font-weight:700;line-height:1.6;margin:0 0 30px}.red-dot{display:inline-block;width:6px;height:6px;background:var(--red);border-radius:50%;margin-right:8px;vertical-align:middle}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(46px,4.7vw,77px);line-height:1.06;letter-spacing:-3.7px;margin-bottom:27px;font-weight:600}em{font-family:Georgia,'Times New Roman',serif;font-weight:400;color:var(--red)}.hero-description{font-size:16px;line-height:1.8;color:var(--muted);margin-bottom:32px}.hero-actions{display:flex;gap:28px;align-items:center}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:38px;padding:19px 24px;font-size:12px;font-weight:600;min-height:52px;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button-dark{background:var(--ink);color:var(--white)}.button-dark:hover{background:var(--red)}.text-link{font-size:12px;display:inline-flex;align-items:center;gap:20px;padding:9px 0;border-bottom:1px solid currentColor;font-weight:600}.text-link:hover{color:var(--red)}.hero-footnote{display:flex;align-items:center;gap:12px;font-size:10px;color:var(--muted);margin-top:66px;letter-spacing:.5px}.mini-rule{height:1px;background:#999b91;width:30px}.hero-art{height:480px;position:relative;display:flex;align-items:center;justify-content:center;isolation:isolate}.art-grid{position:absolute;inset:0;background-image:linear-gradient(#d5d3c633 1px,transparent 1px),linear-gradient(90deg,#d5d3c633 1px,transparent 1px);background-size:38px 38px;mask-image:radial-gradient(ellipse,black,transparent 72%);z-index:-2}.art-circle{width:380px;height:380px;border:1px solid var(--line);border-radius:50%;position:absolute;z-index:-1}.art-circle:after{content:"";position:absolute;inset:-23px;border:1px solid #d8d7ce77;border-radius:50%}.hero-mark{width:335px;height:335px;image-rendering:auto;mix-blend-mode:multiply;filter:contrast(1.05)}.art-caption{position:absolute;font-size:8px;letter-spacing:2px;font-weight:700;color:var(--muted)}.art-caption.top{top:3px;left:15px}.art-caption.bottom{bottom:3px;left:15px}.art-caption.bottom span{margin:0 8px;color:var(--red)}.art-side{position:absolute;right:-12px;top:50%;font-size:8px;letter-spacing:2px;writing-mode:vertical-rl;transform:translateY(-50%);color:var(--muted)}.art-stamp{position:absolute;bottom:47px;right:24px;border:1px solid var(--red);color:var(--red);font-size:24px;line-height:.9;letter-spacing:1px;padding:9px 7px;transform:rotate(-6deg);background:var(--paper)}.art-stamp span{font-size:6px;display:block;letter-spacing:2px;margin-top:8px;text-align:center}.discipline-strip{background:var(--ink);color:var(--paper);padding:25px 5.2%;display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:11px;letter-spacing:.5px}.discipline-strip b{color:#e45454;font-size:18px;font-weight:400}.section-wrap{padding:100px 5.2%;max-width:1600px;margin:auto}.intro{display:grid;grid-template-columns:1fr 2fr;gap:55px;border-bottom:1px solid var(--line)}.section-label{margin-top:7px}h2{font-size:clamp(36px,3.7vw,57px);line-height:1.12;letter-spacing:-2px;font-weight:500;margin-bottom:33px}.intro h2 span{color:#828379}.intro-columns{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-bottom:20px}.intro-columns p,.visit-description{font-size:14px;line-height:1.9;color:var(--muted)}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:44px}.section-heading h2{margin-bottom:0}.section-heading>p{font-size:13px;line-height:1.8;color:var(--muted);margin-bottom:5px}.program-row{display:grid;grid-template-columns:65px 1fr 150px 40px;gap:20px;align-items:center;border-top:1px solid var(--line);padding:28px 0;transition:padding .2s,color .2s}.program-row:last-child{border-bottom:1px solid var(--line)}.program-row:hover{padding-left:12px;padding-right:12px;color:var(--red)}.program-number{font-size:11px;color:var(--muted);align-self:start;padding-top:6px}h3{font-weight:500}.program-row h3{font-size:27px;letter-spacing:-.8px;margin-bottom:9px}.program-row p{font-size:12px;color:var(--muted);margin-bottom:0;line-height:1.7}.program-tag{font-size:9px;text-transform:uppercase;letter-spacing:1px;color:var(--muted)}.program-arrow{font-size:27px;justify-self:end}.philosophy{position:relative;background:var(--red);color:var(--paper);overflow:hidden}.philosophy-inner{max-width:1600px;margin:auto;padding:75px 5.2% 48px;position:relative;z-index:1}.philosophy .eyebrow{color:#f4c7bd}.philosophy h2{font-size:clamp(60px,7.4vw,112px);letter-spacing:-5px;line-height:1.02;margin-bottom:55px}.philosophy h2 em{color:#f1c9b8}.philosophy-bottom{display:flex;align-items:center;gap:30px}.philosophy-line{height:1px;width:65px;background:#d88686}.philosophy-bottom p{font-size:12px;line-height:1.8;margin:0;color:#f4d5cf}.philosophy-bottom img{width:160px;margin-left:auto}.philosophy-watermark{position:absolute;right:-30px;top:-55px;font-size:650px;font-family:Georgia,serif;color:#82030a;opacity:.26;line-height:1}.visit{display:grid;grid-template-columns:1.5fr 1fr;gap:100px;border-bottom:1px solid var(--line)}.visit-description{max-width:420px;margin-bottom:32px}.button-red{background:var(--red);color:var(--white)}.button-red:hover{background:var(--ink)}.visit-details{padding-top:8px}.visit-details>div{padding:0 0 25px;margin-bottom:25px;border-bottom:1px solid var(--line)}.visit-details>div:last-child{border:0;padding-bottom:0;margin-bottom:0}.detail-label{display:block;font-size:9px;text-transform:uppercase;letter-spacing:1.5px;color:var(--muted);margin-bottom:14px}.visit-details h3,.phone-link{font-size:25px;letter-spacing:-.5px;margin-bottom:9px;display:block}.visit-details p{font-size:12px;color:var(--muted);line-height:1.8;max-width:300px;margin-bottom:5px}.visit-details .text-link{margin-top:8px;font-size:11px}.phone-link:hover{color:var(--red)}.faq{display:grid;grid-template-columns:1fr 1.25fr;gap:80px}.faq h2{font-size:34px;letter-spacing:-1.3px}.faq details{border-bottom:1px solid var(--line)}.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:23px 0;font-size:13px;font-weight:600;line-height:1.6}.faq summary::-webkit-details-marker{display:none}.faq summary>span{font-size:22px;font-weight:400;color:var(--red)}.faq details[open] summary>span{transform:rotate(45deg)}.faq details p{font-size:13px;line-height:1.8;color:var(--muted);padding-right:30px;margin-bottom:22px}footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);margin:0 5.2%;padding:35px 0;gap:25px}footer img{width:135px}footer p{font-size:11px;color:var(--muted);margin:0}footer>span{font-size:10px;color:var(--muted)}
@media(min-width:1600px){.site-header,footer{max-width:1434px;margin-left:auto;margin-right:auto}.discipline-strip{justify-content:center;gap:55px}}@media(max-width:1050px){.hero{gap:10px;padding-top:50px;padding-bottom:50px;min-height:580px}h1{letter-spacing:-2.5px}.hero-art{height:400px}.hero-mark{width:270px;height:270px}.art-circle{width:300px;height:300px}.hero-actions{align-items:flex-start;flex-direction:column;gap:15px}.hero-footnote{margin-top:35px}.art-stamp{bottom:30px;right:10px}.intro{gap:25px;grid-template-columns:1fr 2.4fr}.section-wrap{padding-top:75px;padding-bottom:75px}.visit{gap:50px}.faq{gap:40px}.discipline-strip{font-size:10px;gap:12px}.site-header nav{gap:24px}.site-header .nav-contact{margin-left:0}}
@media(max-width:700px){html{scroll-padding-top:30px}.site-header{height:86px;margin:0 6%}.brand{width:150px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;border:0;background:transparent;width:44px;height:44px;padding:8px}.menu-toggle span{height:1px;width:26px;background:var(--ink);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.site-header nav{display:none;position:absolute;top:85px;left:-7%;right:-7%;background:var(--paper);padding:24px 7% 30px;border-bottom:1px solid var(--line);box-shadow:0 15px 25px #1b1c1910}.site-header nav.open{display:flex;flex-direction:column;gap:6px;align-items:stretch}.site-header nav>a{padding:15px 0}.site-header .nav-contact{width:max-content}.hero{grid-template-columns:1fr;padding:48px 6% 28px;gap:20px}.eyebrow{font-size:9px;letter-spacing:1.7px;margin-bottom:24px}h1{font-size:clamp(40px,10.5vw,65px);letter-spacing:-2.6px;line-height:1.1;margin-bottom:23px}.hero-description{font-size:14px;line-height:1.85;margin-bottom:27px}.hero-actions{flex-direction:row;align-items:center;gap:22px}.button{font-size:11px;padding:17px 19px;gap:20px}.hero-actions .text-link{font-size:10px;gap:10px}.hero-footnote{margin-top:28px;font-size:9px}.hero-art{height:345px;margin:0 4%;}.hero-mark{width:245px;height:245px}.art-circle{width:275px;height:275px}.art-caption{font-size:6px;letter-spacing:1.6px}.art-caption.top{top:5px;left:0}.art-caption.bottom{bottom:5px;left:0}.art-stamp{bottom:30px;right:5px;font-size:21px}.art-side{right:-10px;font-size:6px}.discipline-strip{flex-wrap:wrap;justify-content:center;padding:20px 6%;gap:12px 16px;font-size:9px;line-height:1.8}.discipline-strip b{font-size:13px}.section-wrap{padding:60px 6%}.intro{grid-template-columns:1fr;gap:6px}h2{font-size:37px;letter-spacing:-1.8px}.intro-columns{grid-template-columns:1fr;gap:0;margin-bottom:13px}.intro-columns p{font-size:13px;line-height:1.9}.intro-columns p:last-child{margin-bottom:0}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:20px;font-size:12px}.program-row{grid-template-columns:25px 1fr 24px;gap:14px;padding:24px 0}.program-row h3{font-size:23px}.program-row p{font-size:11px}.program-tag{display:none}.program-number{font-size:9px}.program-arrow{font-size:24px}.philosophy-inner{padding:55px 6% 35px}.philosophy h2{font-size:clamp(53px,13vw,80px);letter-spacing:-3px;margin-bottom:40px}.philosophy-bottom{gap:16px;flex-wrap:wrap}.philosophy-line{width:28px}.philosophy-bottom p{font-size:10px}.philosophy-bottom img{width:110px}.philosophy-watermark{font-size:450px;right:-120px;top:-25px}.visit{grid-template-columns:1fr;gap:45px}.visit-description{font-size:13px}.visit-details{display:grid;grid-template-columns:1fr 1fr;gap:22px}.visit-details>div{margin:0;padding-bottom:22px}.visit-details>div:last-child{grid-column:1/-1}.visit-details h3,.phone-link{font-size:20px}.visit-details p{font-size:11px}.visit-details .text-link{font-size:10px;gap:8px}.faq{grid-template-columns:1fr;gap:0}.faq h2{font-size:31px}.faq summary{font-size:12px}.faq details p{font-size:12px}footer{margin:0 6%;padding:30px 0;flex-wrap:wrap;gap:24px 15px}footer img{width:120px}footer p{font-size:9px}footer>span{width:100%;font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
