/* Cosmic sanctuary — typography, light and space */
:root{--paper:#080e1a;--ink:#eee9dc;--muted:#a2aabc;--line:#b7c9ed26;--gold:#cfb781;--white:#080e1a}
html{background:#070c16}body{background:radial-gradient(ellipse at 100% 30%,#15223c66,transparent 36%),radial-gradient(ellipse at 0 72%,#22213d55,transparent 35%),#080e1a;color:#dddfe5;font-size:15px;letter-spacing:.045em}h1,h2,h3{color:#f3eedf;font-feature-settings:"palt"}.wrap{max-width:1360px;padding-left:64px;padding-right:64px}.header{height:114px;position:relative;z-index:5;border-bottom:1px solid var(--line)}.brand small{color:var(--gold);font-size:10px;letter-spacing:.32em}.brand strong{font-size:27px;color:#f2eddf;letter-spacing:.22em}.nav{gap:30px;font-size:12px;color:#ccd1db}.nav .nav-cta{border-color:#cfb78177;padding:11px 23px;color:#e5d3a9}.skip{color:#101827}.button{background:#cfb781;color:#111725;border-color:#cfb781;min-height:52px;padding:15px 28px;font-weight:600;letter-spacing:.12em}.button:hover{background:#e6d2a5;color:#080e1a}.textlink{color:#e4d6b6;border-color:#cfb78177}.kicker{color:var(--gold);font-size:12px;letter-spacing:.22em}.number{font-family:Georgia,serif;font-size:16px;color:#a88e58}.section{padding:128px 0;border-color:var(--line)}.section-head{gap:30px;margin-bottom:60px}h2{font-size:clamp(31px,3.3vw,46px);line-height:1.65;letter-spacing:.13em}.prose{font-size:15px;line-height:2.4;color:#c8ced9}.prose p+p{margin-top:28px}.prose strong{color:#f1e3c1;font-weight:600}.intro-grid{grid-template-columns:1fr 1.12fr;gap:100px}.religion{border-color:#b7c9ed26;font-size:12px;line-height:2.2;color:#a3afc3}.cosmic-hero{isolation:isolate;min-height:880px;display:flex;align-items:center;justify-content:center;text-align:center;border:0;position:relative}.cosmic-hero:before{content:"";position:absolute;z-index:-2;top:-114px;bottom:0;left:calc((100vw - 100%)/-2);width:100vw;background:linear-gradient(180deg,#070c1633 0%,transparent 30%,#080e1a 100%),url('/cosmos.svg') center 44%/cover no-repeat;pointer-events:none}.cosmic-hero:after{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at center,#080e1a66,transparent 62%);pointer-events:none}.cosmic-hero .hero-copy{padding:95px 0 125px}.hero-art{display:none}.eyebrow{justify-content:center;color:#d8c79f;font-size:11px;letter-spacing:.3em}.eyebrow:before{width:28px}.eyebrow:after{content:"";width:28px;height:1px;background:var(--gold)}h1{font-size:clamp(46px,6.4vw,86px);line-height:1.65;letter-spacing:.17em;margin:35px 0 30px;font-weight:400}.hero-copy h1{color:#f8f0dc;text-shadow:0 2px 35px #080c18,0 0 70px #c4b38822}.hero-copy>p{max-width:620px;margin:auto;font-size:14px;line-height:2.3;color:#c5cbd7;letter-spacing:.1em}.hero-links{justify-content:center;margin-top:40px;gap:32px}.hero-bottom{position:absolute;bottom:24px;left:0;right:0;display:flex;align-items:center;justify-content:space-between;color:#a4adc0;font-size:10px;letter-spacing:.3em}.hero-bottom>a{font-size:9px;letter-spacing:.22em;color:#c5b78f}.hero-bottom>a>span{display:block;line-height:1.3;font-size:19px}.news-strip{border-top:1px solid var(--line);padding:25px 0;color:#b6bfce;font-size:12px}.news-strip>span{font-size:11px;letter-spacing:.15em}.pillars{gap:0;border-bottom:1px solid var(--line)}.pillar{padding:35px 32px 42px;border-top:1px solid #cfb78188;position:relative;background:linear-gradient(145deg,#26345033,transparent)}.pillar+.pillar{border-left:1px solid var(--line)}.pillar .jpnum{font-size:18px}.pillar h3{font-size:31px;margin:23px 0 20px;letter-spacing:.14em}.pillar p{font-size:14px;line-height:2.2;color:#c0c8d7}.pillar .note{color:#9aa7ba;font-size:12px;line-height:2}.quote-band{background:linear-gradient(115deg,#1c294366,#121b2d44);border:1px solid var(--line);padding:62px 56px;gap:55px;margin-top:70px}.quote-band h3{font-size:35px;line-height:1.75}.quote-band p{font-size:14px;color:#b9c4d6;line-height:2.3}.teacher-message{position:relative;isolation:isolate;grid-template-columns:1.15fr 1fr;align-items:center;min-height:450px;margin:80px 0 128px;padding:75px 85px;border:0;border-top:1px solid #cfb78144;border-bottom:1px solid #cfb78144;background:radial-gradient(ellipse at 70% 50%,#28324a66,transparent 72%)}.teacher-message:before{content:"";position:absolute;z-index:-1;right:5%;top:12%;width:330px;height:330px;border:1px solid #cfb78126;border-radius:50%;box-shadow:0 0 0 16px #cfb78104,0 0 0 40px #cfb78103;pointer-events:none}.teacher-message .kicker{font-size:12px;color:#cfb781;margin-bottom:24px}.teacher-message h3{font-size:clamp(35px,4vw,54px);line-height:1.65;letter-spacing:.13em}.teacher-message>div>p:not(.kicker):not(.signature):not(.note){font-family:"Yu Mincho",serif;font-size:23px;line-height:2;color:#e1d7c0}.teacher-message .signature{text-align:left;color:#c9b584;font-size:14px;letter-spacing:.14em;margin-top:25px}.teacher-message .note{color:#9da8ba}#greeting{padding:80px 65px 95px;background:#e9e5db;color:#202b37;border:0;position:relative}#greeting .section-head{margin-bottom:48px}#greeting h2{color:#202b37}#greeting .kicker,#greeting .number{color:#786039}#greeting .prose{color:#45505a;font-size:14px;line-height:2.5}#greeting .prose strong{color:#243648;font-weight:600}.greeting{grid-template-columns:175px 1fr;gap:55px}.name-panel{background:linear-gradient(160deg,#17273b,#080e1a);border:1px solid #b6a37b;min-height:430px;color:#ede5d2;padding:35px 18px;gap:22px;align-self:start}.name-panel .vertical-name{font-size:32px}.name-panel .vertical-sub{font-size:11px;color:#d1bd8d}#greeting .signature{color:#243648;font-size:16px;margin-top:38px}.steps li{grid-template-columns:65px 270px 1fr;gap:22px;padding:34px 0;align-items:baseline}.step-no{font-size:33px;color:#c9b581}.steps h3{font-size:24px;letter-spacing:.1em}.steps p{font-size:14px;color:#b8c3d4;line-height:2.2}.quiet-note{font-size:12px;line-height:2.2;color:#a3adc0}.faq{max-width:none;margin-left:48px}summary{font-size:15px;padding:27px 45px 27px 0;color:#dce1e9}details>p{font-size:14px;color:#aebbd0;line-height:2.2;padding-bottom:28px}.contact{background:radial-gradient(ellipse at 20% 0%,#2b3b5866,transparent 75%),#111a2b;border:1px solid #cfb78144;color:#dce3ef;padding:75px 60px;margin:115px 0 75px;gap:70px}.contact h2{font-size:36px}.contact .kicker{color:#d3bb84}.contact p{color:#b8c4d7;font-size:14px}.contact .button{color:#e7d6b3;border-color:#cfb78188;font-weight:500}.contact .button:hover{background:#cfb78115}.access-list{font-size:13px}.access-list dt{color:#bbaa86}.access-list>div{border-color:var(--line);padding:18px 0}.contact .copy-status{color:#d4c195}.footer.wrap{padding:0 64px 38px}.footer-top{padding-top:32px;border-top:1px solid var(--line)}.footer-links{color:#aeb9cb}.footer-bottom{font-size:10px;color:#8f9db4}.subpage{max-width:850px;padding:70px 0 100px}.subpage h1{font-size:43px;line-height:1.6}.subpage h2{font-size:27px;margin-top:52px;color:#e5d8ba}.subpage p,.subpage li{color:#c1cbd9;line-height:2.3}.subpage .lead{font-size:16px;color:#d2d9e4}.fee-row{padding:25px 0;gap:20px}.fee-row strong{color:#d6c295;font-weight:500}.fee-row span{color:#c1cbd9}.copy-fallback{color:#e5e7ed;background:#0a1120;border:1px solid #aaa}a,button,summary{transition:color .2s,background .2s,border-color .2s}a:focus-visible,button:focus-visible,summary:focus-visible{outline-color:#f0d99f}
@media(min-width:1400px){.cosmic-hero{min-height:920px}.cosmic-hero .hero-copy{padding-top:95px}}
@media(max-width:1100px){.wrap{padding-left:35px;padding-right:35px}.nav{gap:17px;font-size:11px}.brand strong{font-size:24px}.intro-grid{gap:50px}.section{padding:95px 0}.pillar{padding:30px 22px}.quote-band{gap:30px;padding:45px 35px}.teacher-message{padding:65px 45px}.steps li{grid-template-columns:45px 230px 1fr;gap:16px}#greeting{padding:60px 40px}.greeting{grid-template-columns:145px 1fr;gap:35px}.name-panel{gap:15px}.contact{padding:50px 35px;gap:35px}.footer.wrap{padding-left:35px;padding-right:35px}}
@media(max-width:760px){.wrap{padding-left:23px;padding-right:23px}.header{height:88px;gap:12px}.brand strong{font-size:22px}.brand small{font-size:9px}.menu-toggle{border-color:#cfb78166;color:#d7c393;font-size:11px;padding:7px 11px}.nav{top:88px;background:#0b1322;box-shadow:0 25px 40px #0008;padding:30px 25px}.cosmic-hero{min-height:755px}.cosmic-hero:before{top:-88px;background-position:center center;background-size:auto 950px}.cosmic-hero .hero-copy{padding:72px 0 110px;width:100%}.hero-copy h1{font-size:clamp(33px,8.4vw,52px);letter-spacing:.1em;line-height:1.8;margin:30px 0 24px}.eyebrow{font-size:9px;letter-spacing:.18em}.hero-copy>p{font-size:12px;line-height:2.4;letter-spacing:.02em}.hero-links{gap:24px;margin-top:31px}.hero-links .button{font-size:11px;padding:12px 18px;gap:20px}.hero-links .textlink{font-size:11px}.hero-bottom{bottom:25px;font-size:8px;letter-spacing:.15em}.hero-bottom>a{font-size:8px}.news-strip{font-size:11px;padding:22px 0;gap:18px}.section{padding:75px 0}.section-head{gap:18px;margin-bottom:35px}.number{font-size:13px;padding-top:10px}.kicker{font-size:10px}h2{font-size:29px;line-height:1.75;letter-spacing:.08em}.intro-grid{grid-template-columns:1fr;gap:30px}.prose{font-size:14px;line-height:2.35}.religion{font-size:12px}.pillars{display:block}.pillar{display:block;padding:32px 23px}.pillar+.pillar{border-left:0}.pillar .jpnum{display:block;font-size:15px}.pillar h3{font-size:29px;margin:12px 0 18px}.pillar p{font-size:14px}.quote-band{display:block;padding:33px 25px;margin-top:40px}.quote-band h3{font-size:28px;margin-bottom:22px}.quote-band p{font-size:13px}.teacher-message{margin:40px 0 75px;padding:48px 25px;overflow:hidden}.teacher-message:before{width:250px;height:250px;right:-80px;top:90px}.teacher-message h3{font-size:35px;letter-spacing:.1em;margin-bottom:20px}.teacher-message .signature{font-size:13px;margin:20px 0 27px}.teacher-message>div>p:not(.kicker):not(.signature):not(.note){font-size:20px}.teacher-message .note{font-size:10px!important}#greeting{padding:45px 25px 50px}#greeting h2{font-size:26px}#greeting .section-head{gap:12px;margin-bottom:30px}.greeting{display:block}.name-panel{display:none}#greeting .prose{font-size:13px;line-height:2.4}#greeting .signature{font-size:14px}.steps li{grid-template-columns:35px 1fr;gap:9px 18px;padding:27px 0}.step-no{font-size:27px}.steps h3{font-size:21px}.steps p{grid-column:2;font-size:13px}.faq{margin-left:0}summary{font-size:14px;line-height:1.9}details>p{font-size:13px}.contact{grid-template-columns:1fr;padding:34px 25px;margin:70px 0 40px;gap:30px}.contact h2{font-size:27px}.contact p{font-size:12px}.contact .button{font-size:11px;padding:14px 15px;gap:12px}.access-list{font-size:12px}.footer.wrap{padding:0 23px 30px}.footer-links{font-size:10px;gap:15px}.subpage{padding-top:38px}.subpage h1{font-size:29px}.subpage h2{font-size:24px}.subpage .lead{font-size:14px}.subpage p,.subpage li{font-size:13px}.fee-row{grid-template-columns:1fr;gap:7px;font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Photographic background and one continuous teacher message */
.cosmic-hero .hero-photo{display:block;position:absolute;z-index:-3;top:-114px;left:calc((100vw - 100%)/-2);width:100vw;height:calc(100% + 114px);max-width:none;object-fit:cover;object-position:center 46%;pointer-events:none}
.cosmic-hero:before{background:linear-gradient(180deg,rgba(4,9,18,.42) 0%,rgba(5,10,21,.15) 30%,rgba(5,10,21,.4) 67%,#080e1a 100%);z-index:-2}
.cosmic-hero:after{background:radial-gradient(ellipse at 50% 42%,rgba(4,9,19,.72),rgba(4,9,19,.36) 44%,transparent 75%)}
.hero-copy h1{text-shadow:0 3px 20px #000,0 0 60px #0009}.hero-copy>p{color:#f1f0ed;text-shadow:0 2px 7px #000}.hero-bottom>a.teacher-jump{font-size:12px;color:#e8d8b5;letter-spacing:.1em}.photo-credit{font-size:10px;color:#aeb9ca;text-align:right;line-height:1.8;padding:0 0 18px}.photo-credit a{text-decoration:underline;text-underline-offset:3px}
.teacher-message{display:block;position:relative;min-height:0;padding:85px 25px 90px;margin:0;text-align:center;border-top:0;border-bottom:1px solid #cfb78155;background:linear-gradient(180deg,#101a2a77,#080e1a);overflow:visible}.teacher-message:before{display:none}.teacher-message .kicker{font-size:14px;letter-spacing:.28em;color:#d9c28f;margin:0 0 28px}.teacher-message blockquote{margin:0;padding:0}.teacher-message blockquote p{font-family:"Hiragino Mincho ProN","Yu Mincho",serif;font-size:clamp(28px,3.5vw,46px);font-weight:400;line-height:1.9;letter-spacing:.12em;color:#f5e9d1}.teacher-message .signature{text-align:center;font-family:"Yu Mincho",serif;font-size:17px;letter-spacing:.18em;color:#dbc598;margin:28px 0 0}.teacher-message .draft-note{font-size:11px;color:#a4afc1;margin-top:14px;letter-spacing:.06em}
@media(max-width:760px){.cosmic-hero .hero-photo{top:-88px;height:calc(100% + 88px);object-position:48% center}.cosmic-hero:before{background:linear-gradient(180deg,#050a1644,#050a1655 55%,#080e1a)}.cosmic-hero:after{background:radial-gradient(ellipse at center,#050a1699,transparent 90%)}.photo-credit{font-size:9px;text-align:left;padding-bottom:16px}.hero-bottom>a.teacher-jump{font-size:10px}.teacher-message{padding:57px 8px 60px;margin:0}.teacher-message .kicker{font-size:12px;margin-bottom:24px}.teacher-message blockquote p{font-size:clamp(22px,5.5vw,32px);line-height:2;letter-spacing:.03em}.teacher-message .signature{font-size:14px;margin:24px 0 0}.teacher-message .draft-note{font-size:10px}}
