/* Inherited from the user-selected MAGIC ACADEMY reference: milk pink, champagne gold, warm white. */
:root{--ink:#493b42;--muted:#74666b;--rose:#99566b;--rose-dark:#7d4053;--pink:#f7e9ec;--milk:#fdf8f6;--gold:#a38556;--line:#e8dcda;--white:#fffdfb;--serif:'YuMincho','Yu Mincho','Hiragino Mincho ProN','Noto Serif CJK JP',serif;--sans:-apple-system,BlinkMacSystemFont,'Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:125px}body{margin:0;background:var(--white);color:var(--ink);font-family:var(--sans);font-size:14px;line-height:1.9;-webkit-font-smoothing:antialiased}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}button:disabled{cursor:default}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:500}h2{font-family:var(--serif);font-size:clamp(28px,2.8vw,40px);line-height:1.7;letter-spacing:.08em}h3{font-size:17px;line-height:1.7}ul{margin:0;padding:0;list-style:none}button{border:0;background:none}strong{font-weight:600}[hidden]{display:none!important}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--rose);outline-offset:5px}::selection{background:#ead0d8}.container{max-width:1120px;margin:auto;width:calc(100% - 112px)}.section{padding:104px 0}.eyebrow{color:var(--gold);font-size:10px;letter-spacing:.18em;font-weight:600;line-height:1.8;margin-bottom:21px}.muted{color:var(--muted)}.fine-print{font-size:11px;line-height:1.9;color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;min-height:58px;padding:17px 27px;font-size:13px;font-weight:600;letter-spacing:.04em;border:1px solid transparent;transition:background .2s,transform .2s;line-height:1.7}.button:hover{transform:translateY(-2px)}.primary{background:var(--rose);color:#fff}.primary:hover{background:var(--rose-dark)}.button span[aria-hidden]{font-size:21px;line-height:1}.secondary{border:1px solid var(--line);background:var(--white)}.full{width:100%}.text-button,.inline-link{padding:10px 0;border-bottom:1px solid var(--gold);font-size:12px;color:var(--ink);text-align:left}.inline-link{margin-top:15px}.skip-link{position:fixed;z-index:100;top:5px;left:5px;padding:10px;background:var(--ink);color:white;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}
.preview-ribbon{height:32px;padding:0 40px;background:#eee3df;display:flex;align-items:center;justify-content:space-between;color:#69545c;font-size:10px;letter-spacing:.06em}.preview-ribbon>span{display:flex;align-items:center;gap:7px}.preview-ribbon i,.registration-label i{width:5px;height:5px;background:var(--rose);display:inline-block;border-radius:50%}.preview-ribbon button{font-size:10px;padding:3px 0;border-bottom:1px solid #c1aaa8}.site-header{height:94px;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:0 40px;position:sticky;top:0;z-index:20;background:rgba(255,253,251,.96);border-bottom:1px solid rgba(232,220,218,.7);backdrop-filter:blur(12px)}.brand{display:inline-flex;gap:10px;align-items:center;flex-shrink:0}.brand-symbol{font-size:38px;color:var(--gold);font-weight:300;line-height:1}.brand strong{display:block;font-family:Georgia,serif;font-size:28px;letter-spacing:.18em;line-height:1.1;font-weight:400}.brand small{display:block;font-size:7px;letter-spacing:.19em;padding-top:6px}.desktop-nav{display:flex;gap:29px;margin-left:auto;font-size:11px;letter-spacing:.03em}.desktop-nav a{position:relative;padding:8px 0}.desktop-nav a:after{content:'';position:absolute;left:0;right:100%;bottom:2px;height:1px;background:var(--gold);transition:right .25s}.desktop-nav a:hover:after{right:0}.header-cta{font-size:11px;border:1px solid #cbb8ad;padding:10px 20px;display:flex;gap:25px;align-items:center}.header-cta span{font-size:18px}.menu-toggle{display:none}.mobile-nav{position:absolute;top:100%;left:0;right:0;padding:15px 28px 28px;background:var(--white);border-bottom:1px solid var(--line);box-shadow:0 18px 20px #493b4208}.mobile-nav a{display:block;padding:12px 0;border-bottom:1px solid var(--line)}
.hero{max-width:1440px;margin:0 auto;min-height:695px;display:grid;grid-template-columns:1.05fr 1fr;align-items:center;position:relative;padding:28px 64px 68px;gap:20px;background:radial-gradient(ellipse at 68% 70%,#fbefeb,transparent 57%)}.hero-copy{position:relative;z-index:2;padding:15px 0 10px 15px}.hero .eyebrow{color:var(--muted);font-size:11px;letter-spacing:.15em;display:flex;align-items:center;gap:12px}.hero .eyebrow>span{height:1px;width:30px;background:var(--gold)}h1{font-family:var(--serif);font-size:clamp(38px,4.3vw,62px);line-height:1.55;letter-spacing:.08em;margin:18px -30px 22px 0;font-weight:500}.pink-underline{background:linear-gradient(transparent 78%,#f0d6de 78%,#f0d6de 94%,transparent 94%)}.hero-tagline{font-family:var(--serif);font-size:17px;letter-spacing:.08em;margin-bottom:23px}.hero-description{font-size:12px;line-height:2.2;color:#726169;margin-bottom:28px}.hero .button{min-width:286px}.hero-facts{margin-top:18px;display:flex;gap:0;font-size:10px;letter-spacing:.03em;color:var(--muted)}.hero-facts span+span{border-left:1px solid #d6c3c4;margin-left:12px;padding-left:12px}.hero-visual{height:570px;position:relative;margin-right:8px}.hero-photo{height:100%;width:100%;overflow:hidden;border-radius:48% 48% 2px 2px;position:relative}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 60%}.image-caption{position:absolute;bottom:9px;right:13px;color:#5a4b48;background:#fffdfbc9;padding:1px 6px;font-size:8px}.hero-note{position:absolute;bottom:38px;left:-53px;width:225px;background:#fffcf6ed;box-shadow:0 8px 28px #674d3b0a;border:1px solid #e5d5c3;padding:21px 23px 18px;transform:rotate(-5deg);text-align:center}.note-star{color:var(--gold);position:absolute;top:-22px;right:12px;font-size:38px}.hero-note p{font-family:var(--serif);font-size:15px;line-height:1.9;letter-spacing:.06em}.note-line{display:block;width:25px;height:1px;background:var(--gold);margin:12px auto 6px}.hero-note small{font-family:Georgia,serif;font-size:11px;color:var(--gold);font-style:italic}.vertical-caption{position:absolute;right:-27px;top:180px;writing-mode:vertical-rl;font-size:8px;letter-spacing:.22em;color:var(--gold)}.scroll-cue{position:absolute;bottom:20px;left:79px;display:flex;align-items:center;gap:18px;font-size:8px;letter-spacing:.2em;color:var(--gold)}.scroll-cue span:last-child{font-size:21px}.chapter-strip{min-height:80px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:center;align-items:center;gap:32px;background:#fff;letter-spacing:.13em;font-family:Georgia,serif;font-size:14px;color:var(--gold)}.chapter-strip small{font-family:var(--sans);color:var(--muted);font-size:10px;margin-left:9px;letter-spacing:.02em}.chapter-strip i{font-style:normal;color:#d6c4b3}
.empathy{background:var(--white)}.empathy-layout{display:grid;grid-template-columns:1fr 1.15fr;gap:90px;align-items:start}.section-intro .muted{margin-top:25px;font-family:var(--serif);font-size:15px}.wish-list li{border-bottom:1px solid var(--line);position:relative;padding:17px 0 17px 27px;font-size:12px}.wish-list li:first-child{padding-top:2px}.wish-list li:before{content:'✓';position:absolute;left:0;top:18px;color:var(--gold);font-size:13px}.wish-list li:first-child:before{top:3px}.empathy-content>p{font-size:12px;line-height:2.3;color:var(--muted);margin-top:30px}.concept{background:var(--milk);position:relative}.center-heading{text-align:center;max-width:750px;margin:auto auto 46px}.center-heading>p:not(.eyebrow){font-size:12px;line-height:2.2;color:var(--muted);margin-top:24px}.step-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.step{border-top:1px solid #d8c3b4;border-bottom:1px solid #d8c3b4;padding:24px 25px 0;background:#ffffffa8}.step:nth-child(2){background:#f6e7eb}.step-top{display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:.16em;color:var(--gold)}.step-icon{font-size:28px;line-height:1}.step-en{font-size:34px;font-family:Georgia,serif;font-style:italic;color:#ac8b73;margin:10px 0 15px}.step h3{font-family:var(--serif);font-size:22px;letter-spacing:.05em;line-height:1.7;margin-bottom:19px}.step>p:not(.step-en){font-size:12px;color:var(--muted);line-height:2}.step-bottom{display:flex;justify-content:space-between;border-top:1px solid #e2d3cf;margin-top:26px;padding:14px 0;font-size:9px;color:var(--gold);letter-spacing:.05em}.step-bottom span{color:var(--muted)}
.outcomes-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:48px}.outcomes-heading>p{font-size:12px;color:var(--muted);line-height:2.2;margin-bottom:8px}.outcome-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px 30px}.outcome-grid article{position:relative}.outcome-no{position:absolute;top:12px;left:14px;z-index:2;font-family:Georgia,serif;font-style:italic;font-size:17px;color:var(--gold)}.outcome-grid h3{font-family:var(--serif);font-size:17px;margin:20px 0 10px;letter-spacing:.03em}.outcome-grid article>p{font-size:12px;color:var(--muted);line-height:2}.outcome-grid+.fine-print{margin-top:35px}.mini-art{height:180px;background:#f7f0ec;position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none}.mini-art:before{content:'';position:absolute;inset:0;background:linear-gradient(130deg,transparent,#fdfaf64d);z-index:1}.mini-art>span{font-size:8px;letter-spacing:.15em;color:var(--gold)}.art-product{background:#f1e5e4}.art-product:after{content:'';position:absolute;width:130px;height:152px;background:#fffaf5;top:27px;transform:rotate(-7deg);box-shadow:8px 7px 0 #d9beb2;z-index:0}.art-product>*{z-index:1}.art-product>span{margin-top:23px}.art-product i{width:80px;height:1px;background:#d5bda7;margin-top:14px}.art-product i:nth-of-type(2){width:60px;margin-top:7px}.art-product b{font-family:Georgia,serif;font-size:9px;color:#92705c;margin-top:21px;font-style:italic;font-weight:400}.art-price{background:#f3ece1}.art-price:after{content:'';width:148px;height:164px;background:#fffdfb;position:absolute;top:25px;transform:rotate(5deg);box-shadow:4px 6px 8px #77604312}.art-price>*{z-index:1}.art-price>span{margin-top:21px}.art-price i{display:block;width:95px;height:10px;border-bottom:1px solid #d7c4b6;margin-top:8px}.art-price b{font-size:8px;font-weight:400;color:#9a816d;margin-top:14px}.art-social{flex-direction:row;gap:8px;background:#f5ebed}.art-social i{width:61px;height:98px;background:#d5b7b6;display:flex;align-items:center;justify-content:center;font-family:Georgia,serif;font-size:10px;line-height:1.7;text-align:center;color:white;transform:rotate(-7deg);box-shadow:0 5px 7px #74525a0a}.art-social i:nth-child(2){background:#ede1cf;transform:translateY(-12px) rotate(0deg);color:#947855}.art-social i:nth-child(3){background:#b99594;transform:rotate(7deg)}.art-web{background:#f1e7df}.art-web:after{content:'';position:absolute;top:28px;width:195px;height:159px;background:linear-gradient(90deg,#fffcf9 60%,#e7d5d0 60%);box-shadow:0 8px 15px #77604312;border-top:10px solid #d9c9bb;z-index:0}.art-web>*{z-index:1;margin-right:65px}.art-web>span{margin-top:30px;font-size:6px}.art-web b{font-family:var(--serif);font-size:11px;font-weight:400;line-height:2;margin-top:12px}.art-web i{width:61px;height:8px;background:#bc8c94;margin-top:13px}.art-ai{background:#efe8e3}.art-ai:after{content:'';position:absolute;top:33px;height:124px;width:211px;border-radius:4px;background:#fffaf6;box-shadow:0 10px 20px #65402c0a;transform:rotate(-4deg)}.art-ai>*{z-index:1}.art-ai>span{font-size:30px;line-height:1}.art-ai b{font-family:Georgia,serif;font-size:14px;font-weight:400;color:#94735e;margin:12px 0}.art-ai i{font-size:7px;font-style:normal;color:#9b8374}.art-plan{background:#f5e9e6}.art-plan>span{margin-top:10px}.art-plan>b{font-family:Georgia,serif;font-size:54px;font-weight:400;color:#b18e6b;line-height:1.2;margin-top:7px}.art-plan>b span{font-size:8px;margin-left:5px;letter-spacing:.1em}.art-plan i{width:94px;height:17px;margin-top:5px;border-top:1px solid #c7b19f;border-bottom:1px solid #c7b19f}
.curriculum{background:var(--milk)}.learning-format{display:flex;justify-content:center;gap:25px;font-size:10px;color:var(--muted);padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:36px}.learning-format b{font-weight:600;color:var(--ink);margin-right:5px}.curriculum-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px}.month-tabs{display:grid;grid-template-columns:repeat(3,1fr);width:75%;border-bottom:1px solid #d8c6bf}.month-tabs button{padding:16px 15px 18px;position:relative;text-align:center;color:var(--muted)}.month-tabs button[aria-selected=true]{background:#f0dce2;color:var(--rose-dark)}.month-tabs button[aria-selected=true]:after{content:'';height:2px;background:var(--rose);position:absolute;left:0;right:0;bottom:-1px}.month-tabs small{display:block;font-size:9px;letter-spacing:.14em;margin-bottom:4px}.month-tabs span{font-family:var(--serif);font-size:18px;letter-spacing:.05em}.curriculum-controls .text-button{font-size:11px;white-space:nowrap}.month-header{display:flex;align-items:center;gap:20px;margin:12px 0 22px}.month-number{font-family:Georgia,serif;font-size:42px;line-height:1;color:#c6a18d;min-width:50px}.month-header small{color:var(--gold);font-size:9px;letter-spacing:.15em}.month-header h3{font-family:var(--serif);font-size:21px;line-height:1.7}.week-list{border-top:1px solid var(--line)}.week-card{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer}summary::-webkit-details-marker{display:none}.week-card summary{display:grid;grid-template-columns:90px 1fr auto 16px;gap:18px;align-items:center;padding:22px 8px}.week-label{font-size:10px;color:var(--gold);letter-spacing:.09em}.week-label b{font-family:Georgia,serif;font-size:19px;font-weight:400;margin-left:6px}.week-title{font-size:14px}.live-badge{font-size:9px;letter-spacing:.01em;padding:2px 8px;background:#f0e4dc;color:#785c43;border-radius:2px}.week-card summary>i{grid-column:4}.week-card summary i,.faq summary i{width:12px;height:12px;position:relative}.week-card summary i:before,.faq summary i:before{content:'';position:absolute;left:0;top:6px;width:12px;height:1px;background:var(--gold)}.week-card summary i:after,.faq summary i:after{content:'';position:absolute;left:6px;top:0;width:1px;height:12px;background:var(--gold);transition:transform .15s}.week-card[open] summary i:after,.faq details[open] summary i:after{transform:rotate(90deg)}.week-card[open]{background:#fffdfbc4}.week-card[open] summary{border-bottom:1px solid #eee3de}.week-detail{padding:25px 35px 29px 116px}.week-detail dl{display:grid;grid-template-columns:60px 1fr;gap:12px 20px;margin:0;font-size:12px}.week-detail dt{color:var(--gold);font-size:10px;padding-top:2px}.week-detail dd{margin:0;color:var(--muted);line-height:2}.week-output{margin-top:21px;padding:12px 18px;background:#f5e8eb;display:flex;align-items:center;gap:25px;font-size:12px}.week-output span{font-size:10px;color:var(--rose)}.month-outcome{display:flex;align-items:baseline;gap:20px;padding:19px 26px;background:#efe5da;border-bottom:1px solid #dfd0bf;margin-top:20px;color:#6e5945}.month-outcome span{font-size:9px;letter-spacing:.1em;white-space:nowrap}.month-outcome p{font-family:var(--serif);font-size:14px}.curriculum-panel+.curriculum-panel{margin-top:38px}.curriculum-note{margin:34px 0 19px;display:flex;align-items:center;gap:25px;border-left:1px solid #c8ab88;padding:5px 25px}.curriculum-note>span{font-size:35px;color:var(--gold)}.curriculum-note p{font-size:12px;color:var(--muted);line-height:2.2}.curriculum-note strong{color:var(--ink)}
.support-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.support-intro>p:not(.eyebrow){font-size:12px;color:var(--muted);margin-top:26px;line-height:2.3}.support-emblem{border:1px solid #d9c5b6;border-radius:50%;width:166px;height:166px;text-align:center;padding:28px 12px;margin:35px 0 0 25px;transform:rotate(-10deg);color:var(--gold);position:relative;background:#fffaf5}.support-emblem>span{font-size:7px;letter-spacing:.12em;display:block}.support-emblem b{font-family:Georgia,serif;font-size:26px;line-height:1.3;font-weight:400;display:block;margin-top:10px;font-style:italic}.support-emblem i{font-size:30px;font-style:normal;position:absolute;right:-9px;bottom:8px;background:var(--white)}.support-list article{display:flex;gap:22px;border-top:1px solid var(--line);padding:23px 0}.support-list article>span{font-family:Georgia,serif;font-size:17px;font-style:italic;color:var(--gold)}.support-list h3{font-size:15px;line-height:1.8;margin-bottom:9px}.support-list em{font-size:10px;font-style:normal;margin-left:8px;color:var(--rose);white-space:nowrap}.support-list article p{font-size:12px;color:var(--muted);line-height:2}.support-pending{display:flex;gap:15px;padding:18px;background:var(--milk);font-size:11px;align-items:start}.status-label{display:inline-block;font-size:10px;line-height:1.6;padding:2px 8px;border:1px solid #c19fa6;color:var(--rose-dark);white-space:nowrap}.support-pending p{color:var(--muted);font-size:10px;line-height:2.1}.fit{padding:0 0 95px}.fit-box{background:#f8eeea;border:1px solid #e5d4c9;padding:40px 45px;display:grid;grid-template-columns:.8fr 1.2fr;gap:60px}.fit h2{font-size:29px}.check-list li{font-size:12px;padding:6px 0 6px 24px;position:relative}.check-list li:before{content:'✓';position:absolute;left:0;color:var(--gold)}.fit .muted{font-size:10px;margin-top:20px;line-height:2.1}
.tuition{background:#f8eeed;border-top:1px solid #ecdedd;border-bottom:1px solid #ecdedd}.tuition-card{max-width:1000px;margin:auto;display:grid;grid-template-columns:1fr 1fr;background:var(--white);border:1px solid #d3b6ac;box-shadow:0 20px 40px #77584a05}.tuition-main{padding:42px 40px 36px}.tuition-main>.eyebrow{font-size:9px;margin-bottom:13px}.tuition-main h3{font-family:var(--serif);font-size:18px}.price{font-size:21px;line-height:1.2;margin:27px 0 14px;font-family:var(--serif)}.price>span{font-family:Georgia,serif;font-size:59px;letter-spacing:-.02em;margin-right:5px}.price-status{font-size:11px;color:var(--rose-dark);display:flex;gap:12px;align-items:center}.tuition-description{font-family:var(--serif);font-size:15px;line-height:2;margin:25px 0 20px}.included-list{border-top:1px solid var(--line);padding-top:16px;font-size:10px;color:var(--muted)}.included-list li{padding:5px 0 5px 20px;position:relative}.included-list li:before{content:'✓';position:absolute;left:0;color:var(--gold)}.tuition-details{background:#faf4ef;padding:40px 36px;display:flex;flex-direction:column;justify-content:center;border-left:1px solid #e9dcd2}.registration-label{display:flex;align-items:center;gap:9px;color:var(--rose);font-size:10px;letter-spacing:.06em;margin-bottom:12px}.tuition-details>h3{font-family:var(--serif);font-size:18px}.terms-list{margin:15px 0 26px}.terms-list>div{display:flex;justify-content:space-between;gap:10px;padding:11px 0;border-bottom:1px solid #e6d7ce;font-size:10px}.terms-list dt{color:var(--muted)}.terms-list dd{margin:0;color:var(--rose-dark);white-space:nowrap}.tuition-details>.button{font-size:11px;gap:15px}.tuition-details>.fine-print{text-align:center;margin-top:14px;font-size:10px}.tuition-footnote{max-width:1000px;margin:24px auto 0;font-size:10px;line-height:2;color:var(--muted)}
.faq-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:60px}.faq-list{border-top:1px solid var(--line)}.faq details{border-bottom:1px solid var(--line)}.faq summary{display:grid;grid-template-columns:22px 1fr 15px;align-items:center;gap:10px;padding:24px 0;font-size:12px;line-height:1.8}.faq summary>span{font-family:Georgia,serif;font-size:18px;color:var(--gold);align-self:start;line-height:1.3}.faq details>div{padding:0 25px 25px 33px;font-size:12px;line-height:2.1;color:var(--muted)}.final-cta{text-align:center;background:radial-gradient(ellipse at 50% 52%,#f3dde3,transparent 60%),#fcf6f2;position:relative;overflow:hidden;padding:82px 0 70px;border-top:1px solid var(--line)}.final-cta:before,.final-cta:after{content:'';position:absolute;border:1px solid #d9c7af80;border-radius:50%;width:680px;height:680px;pointer-events:none;top:30px}.final-cta:before{left:-470px}.final-cta:after{right:-470px}.final-spark{font-size:42px;color:var(--gold);display:block;line-height:1;margin-bottom:25px}.final-cta .eyebrow{font-size:8px}.final-cta h2{font-size:41px;line-height:1.7}.final-cta .container>p:not(.eyebrow):not(.closing-message){font-size:12px;color:var(--muted);line-height:2.2;margin:25px 0 30px}.final-cta .button{min-width:330px}.final-cta small{display:block;font-size:9px;color:var(--muted);margin:15px auto 32px;max-width:430px}.closing-message{font-family:var(--serif);font-size:13px;letter-spacing:.08em;color:#8f7965}footer{padding:45px 0 22px;background:var(--white)}.footer-top{display:flex;align-items:center;gap:35px;padding-bottom:35px}.footer-top>p{font-size:10px;color:var(--muted)}.footer-top .brand strong{font-size:25px}.back-top{margin-left:auto;border:1px solid #cfb8a6;border-radius:50%;width:40px;height:40px;display:grid;place-items:center;color:var(--gold)}.footer-bottom{border-top:1px solid var(--line);padding-top:22px;display:flex;justify-content:space-between;align-items:center;gap:30px}.footer-bottom nav{display:flex;flex-wrap:wrap;gap:14px}.footer-bottom nav button{padding:3px 0;font-size:9px;color:var(--muted);border-bottom:1px solid transparent}.footer-bottom nav button:hover{border-color:var(--gold)}.footer-bottom>p{font-size:8px;white-space:nowrap;color:var(--muted)}.footer-bottom>p span{margin-left:8px;color:var(--gold)}.mobile-bottom{display:none}
dialog{color:var(--ink);background:var(--white);border:1px solid #d9c3b8;max-width:650px;width:calc(100% - 40px);max-height:85dvh;padding:32px 38px;box-shadow:0 20px 100px #493b422a;overscroll-behavior:contain}dialog::backdrop{background:#493b426b;backdrop-filter:blur(4px)}.dialog-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:15px}.dialog-head .eyebrow{margin:0;font-size:9px}.dialog-head .close-dialog{font-size:28px;line-height:1;width:36px;height:36px;color:var(--gold);margin:-8px -12px -8px 0}dialog h2{font-size:23px;line-height:1.6;margin-bottom:20px}dialog h3{font-size:15px;margin-top:25px}dialog>p{font-size:12px;color:var(--muted);line-height:2}.placeholder-list{margin:23px 0}.placeholder-list>div{border-bottom:1px solid var(--line);padding:13px 0}.placeholder-list dt{font-size:11px;color:var(--ink);font-weight:600}.placeholder-list dd{font-size:11px;color:var(--muted);margin:6px 0 0;line-height:1.9}.dialog-notice{background:#f5e9e9;padding:15px;font-size:11px!important;line-height:1.9!important;margin:16px 0}.review-actions{display:flex;flex-wrap:wrap;gap:15px;align-items:center;margin:25px 0 8px}.review-actions .text-button{font-size:10px}.review-checklist{margin:15px 0 20px}.review-checklist li{border-bottom:1px solid var(--line);padding:9px 0 9px 20px;font-size:11px;position:relative}.review-checklist li:before{content:'□';position:absolute;left:0;color:var(--gold)}[contenteditable=true]{outline:1px dashed var(--rose);outline-offset:6px;cursor:text;border-radius:0;min-height:1em}[contenteditable=true]:focus{outline:2px solid var(--rose);background:#fff9f8}.edit-bar{position:fixed;left:20px;right:20px;bottom:20px;z-index:40;background:var(--ink);color:white;padding:16px 24px;display:flex;align-items:center;gap:20px;box-shadow:0 6px 30px #493b4230}.edit-bar>p{font-size:12px;margin-right:auto}.edit-bar small{display:block;font-size:10px;opacity:.7}.edit-bar button{padding:9px 16px;font-size:11px;border:1px solid #bfa3aa;color:#fff;white-space:nowrap}.edit-bar button:last-child{background:#fff9f6;color:var(--ink)}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);z-index:60;background:var(--ink);color:white;padding:14px 24px;font-size:12px;box-shadow:0 5px 25px #493b4220;text-align:center;max-width:calc(100% - 30px);width:max-content}
@media(min-width:1441px){.hero{grid-template-columns:1fr 1fr;padding-left:100px;padding-right:100px;min-height:760px}.hero-visual{height:620px}.hero-copy{padding-left:0}.scroll-cue{left:100px}}
@media(max-width:1100px){.container{width:calc(100% - 72px)}.site-header{padding:0 30px;gap:22px}.desktop-nav{gap:19px}.hero{padding:25px 38px 65px;gap:15px;min-height:650px}.hero-copy{padding-left:0}.hero-visual{height:520px}.hero-note{left:-22px;width:202px;bottom:28px;padding:18px}.hero-note p{font-size:14px}.scroll-cue{left:38px}.hero-tagline{font-size:15px}.chapter-strip{gap:20px}.chapter-strip small{font-size:9px;margin-left:6px}.section{padding:85px 0}.empathy-layout,.support-layout{gap:55px}.step{padding:22px 19px 0}.step h3{font-size:20px}.faq-layout{gap:40px}.learning-format{gap:16px;font-size:9px}.fit-box{padding:35px;gap:35px}.tuition-main{padding:35px 30px}.tuition-details{padding:35px 26px}.footer-bottom{display:block}.footer-bottom>p{margin-top:15px}}
@media(max-width:820px){.desktop-nav{display:none}.site-header{height:78px}.header-cta{margin-left:auto}.menu-toggle{display:flex;width:32px;height:32px;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:3px}.menu-toggle span{height:1px;width:22px;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)}.brand strong{font-size:25px}.brand small{font-size:6px}.hero{padding:25px 36px 58px;min-height:600px;gap:5px}.hero-visual{height:455px}.hero-copy{padding:0}.hero h1{font-size:38px;margin-right:-25px}.hero-description{font-size:11px;line-height:2.1}.hero-tagline{font-size:13px}.hero .button{min-width:245px;font-size:11px;padding:15px 19px}.hero-note{left:-8px;bottom:24px;width:170px;padding:13px}.hero-note p{font-size:12px}.hero-note small{font-size:9px}.hero-facts{font-size:8px}.hero-facts span+span{margin-left:8px;padding-left:8px}.chapter-strip{gap:14px;font-size:12px}.chapter-strip small{display:block;margin:3px 0 0;font-size:8px}.chapter-strip>span{text-align:center}.empathy-layout{gap:35px;grid-template-columns:.9fr 1.1fr}.section h2{font-size:28px}.wish-list li{font-size:11px}.empathy-content>p{font-size:11px}.step-grid{gap:16px}.step{padding:20px 16px 0}.step h3{font-size:18px}.step-en{font-size:29px}.step>p:not(.step-en){font-size:11px}.step-bottom{font-size:8px}.outcomes-heading>p{font-size:11px}.outcome-grid{gap:30px 20px}.outcome-grid h3{font-size:15px}.mini-art{height:155px}.art-social{gap:5px}.art-social i{width:46px;height:86px;font-size:9px}.art-ai:after{width:160px;height:118px}.art-web:after{width:155px}.art-web>*{margin-right:45px}.support-layout{gap:40px}.support-list h3{font-size:14px}.support-list article p{font-size:11px}.support-list em{display:block;margin:4px 0 0}.tuition-card{grid-template-columns:1fr 1fr}.price>span{font-size:49px}.tuition-main{padding:30px 24px}.tuition-main h3{font-size:16px}.tuition-details{padding:30px 22px}.terms-list>div{font-size:9px;gap:5px}.tuition-details>.button{font-size:10px;padding:15px;gap:10px}.included-list{font-size:9px}.faq-layout{grid-template-columns:.7fr 1.3fr;gap:35px}.faq summary{font-size:11px}.footer-top{gap:20px}.footer-top>p{font-size:9px}.month-tabs{width:70%}.month-tabs span{font-size:16px}.learning-format{font-size:8px;gap:10px}.learning-format b{display:block}.fit-box{grid-template-columns:.7fr 1.3fr}.fit .muted{font-size:9px}}
@media(max-width:620px){html{scroll-padding-top:90px}body{font-size:13px}.container{width:calc(100% - 44px)}.section{padding:66px 0}.eyebrow{font-size:8px;letter-spacing:.14em;margin-bottom:16px}.section h2{font-size:28px;line-height:1.7;letter-spacing:.05em}.button{min-height:54px;font-size:12px;padding:15px 22px}.preview-ribbon{padding:0 18px;height:29px;font-size:8px}.preview-ribbon button{font-size:9px}.ribbon-detail{display:none}.site-header{height:72px;padding:0 20px;gap:17px}.brand{gap:7px}.brand-symbol{font-size:32px}.brand strong{font-size:24px}.brand small{font-size:6px;letter-spacing:.13em}.header-cta{padding:8px 10px;gap:10px;font-size:9px}.header-cta span{font-size:15px}.menu-toggle{width:24px;padding:0}.menu-toggle span{width:21px}.hero{display:flex;flex-direction:column;gap:0;padding:35px 22px 44px;min-height:unset;background:radial-gradient(ellipse at 70% 85%,#f9e7e5,transparent 63%)}.hero-copy{width:100%;padding:0 4px;z-index:2}.hero .eyebrow{font-size:9px;margin-bottom:14px;gap:10px}.hero .eyebrow>span{width:20px}h1,.hero h1{font-size:clamp(34px,9.8vw,46px);line-height:1.5;margin:0 0 18px;letter-spacing:.07em}.hero-tagline{font-size:14px;letter-spacing:.03em;margin-bottom:18px}.hero-description{font-size:11px;line-height:2.1;margin-bottom:23px}.hero-description br:nth-child(2){display:none}.hero .button{min-width:275px;font-size:12px;padding:15px 23px}.hero-facts{font-size:9px;margin-top:15px}.hero-facts span+span{padding-left:10px;margin-left:10px}.hero-visual{height:350px;width:83%;align-self:flex-end;margin:25px 2px 0 0}.hero-photo{border-radius:45% 45% 2px 2px}.hero-photo img{object-position:50% 60%}.hero-note{bottom:24px;left:-42px;width:174px;transform:rotate(-6deg);padding:17px 15px}.hero-note p{font-size:12px}.hero-note small{font-size:9px}.note-star{font-size:29px;top:-17px;right:9px}.vertical-caption{font-size:6px;right:-17px;top:110px}.image-caption{font-size:6px;bottom:6px;right:7px}.scroll-cue{left:26px;bottom:12px;font-size:6px;gap:12px}.scroll-cue span:last-child{font-size:18px}.chapter-strip{gap:12px;min-height:75px;font-size:11px;letter-spacing:.06em;padding:10px 15px}.chapter-strip small{font-size:7px;letter-spacing:0}.chapter-strip i{font-size:10px}.empathy-layout,.support-layout,.faq-layout{grid-template-columns:1fr;gap:30px}.section-intro .muted{font-size:13px;margin-top:20px}.empathy h2 br:nth-child(2){display:none}.wish-list li{font-size:11px;padding-top:15px;padding-bottom:15px;padding-left:22px}.wish-list li:before{top:16px}.empathy-content>p{font-size:11px;line-height:2.2;margin-top:23px}.empathy-content>p br{display:none}.center-heading{margin-bottom:30px}.center-heading>p:not(.eyebrow){font-size:11px;margin-top:20px;line-height:2.1}.step-grid{grid-template-columns:1fr;gap:20px}.step{padding:23px 25px 0;display:grid;grid-template-columns:1fr 1fr;gap:0 15px}.step-top{grid-column:1 / -1}.step-en{grid-column:1 / -1;font-size:31px;margin:6px 0 11px}.step h3{font-size:20px;margin-bottom:8px}.step>p:not(.step-en){font-size:11px;align-self:center}.step-bottom{grid-column:1 / -1;margin-top:17px;padding:12px 0;font-size:9px}.step-icon{font-size:24px}.outcomes-heading{display:block;margin-bottom:30px}.outcomes-heading>p{font-size:11px;margin-top:20px}.outcomes-heading>p br{display:none}.outcome-grid{grid-template-columns:1fr 1fr;gap:30px 16px}.mini-art{height:142px}.outcome-no{font-size:14px;top:7px;left:9px}.outcome-grid h3{font-size:15px;line-height:1.7;margin:14px 0 8px;letter-spacing:0}.outcome-grid article>p{font-size:10px;line-height:2}.art-product:after{width:98px;height:129px;top:23px}.art-product>span{font-size:6px;margin-top:24px}.art-product i{width:66px;margin-top:9px}.art-product b{font-size:7px;margin-top:17px}.art-price:after{width:110px;height:130px;top:21px}.art-price>span{font-size:6px;margin-top:25px}.art-price i{width:75px;height:7px;margin-top:7px}.art-price b{font-size:6px;margin-top:10px}.art-social i{width:38px;height:76px;font-size:7px}.art-web:after{width:125px;height:122px;top:23px}.art-web>*{margin-right:43px}.art-web>span{font-size:5px;margin-top:25px}.art-web b{font-size:9px;margin-top:9px}.art-web i{width:49px;height:6px;margin-top:9px}.art-ai:after{width:125px;height:103px;top:22px}.art-ai>span{font-size:22px}.art-ai b{font-size:11px;margin:9px 0}.art-ai i{font-size:5px}.art-plan>b{font-size:46px}.art-plan>span{font-size:6px;margin-top:14px}.art-plan>b span{font-size:6px}.outcome-grid+.fine-print{font-size:9px;margin-top:28px}.learning-format{font-size:8px;gap:8px;justify-content:space-between;text-align:center;line-height:2;padding:14px 0;margin-bottom:24px}.learning-format span{flex:1}.learning-format span+span{border-left:1px solid var(--line)}.learning-format b{font-size:9px;margin-right:0;display:block}.curriculum-controls{display:block;margin-bottom:22px}.month-tabs{width:100%}.month-tabs button{padding:13px 8px 14px}.month-tabs small{font-size:8px}.month-tabs span{font-size:16px}.curriculum-controls .text-button{font-size:10px;display:block;margin-left:auto;margin-top:8px;padding:9px 0}.month-header{gap:13px;margin-bottom:15px}.month-number{font-size:35px;min-width:36px}.month-header small{font-size:8px}.month-header h3{font-size:17px;line-height:1.6}.week-card summary{grid-template-columns:62px 1fr 12px;gap:10px;padding:18px 3px}.week-label{font-size:8px;align-self:start;line-height:1.6}.week-label b{font-size:16px;margin-left:3px;line-height:1.3}.week-title{font-size:11px;line-height:1.8}.live-badge{grid-column:2;grid-row:2;justify-self:start;font-size:8px;margin-top:-7px}.week-card summary>i{grid-column:3;grid-row:1}.week-detail{padding:19px 14px}.week-detail dl{grid-template-columns:43px 1fr;gap:12px;font-size:10px}.week-detail dt{font-size:9px;padding-top:1px}.week-detail dd{line-height:2}.week-output{display:block;padding:11px 13px;font-size:11px;margin-top:16px}.week-output span{font-size:9px;display:block;margin-bottom:3px}.month-outcome{display:block;padding:16px 18px}.month-outcome span{font-size:8px;display:block;margin-bottom:7px}.month-outcome p{font-size:13px;line-height:1.9}.curriculum-note{gap:15px;padding:4px 15px;margin-top:25px}.curriculum-note>span{font-size:24px}.curriculum-note p{font-size:10px}.curriculum>.container>.fine-print{font-size:9px}.support-intro>p:not(.eyebrow){font-size:11px;margin-top:20px}.support-emblem{display:none}.support-list article{gap:17px;padding:20px 0}.support-list article>span{font-size:16px}.support-list h3{font-size:14px;margin-bottom:8px}.support-list em{display:inline-block;font-size:9px;margin:0 0 0 5px}.support-list article p{font-size:11px}.support-pending{padding:15px;gap:12px}.support-pending p{font-size:9px}.fit{padding:0 0 60px}.fit-box{display:block;padding:28px 25px}.fit h2{font-size:25px}.fit-box .eyebrow{font-size:7px}.check-list{margin-top:20px}.check-list li{font-size:11px}.fit .muted{font-size:9px}.fit .muted br{display:none}.tuition-card{grid-template-columns:1fr}.tuition-main{padding:31px 27px}.tuition-main>.eyebrow{font-size:8px}.tuition-main h3{font-size:17px}.price>span{font-size:57px}.price{margin:24px 0 14px}.price-status{font-size:10px}.tuition-description{font-size:14px}.included-list{font-size:10px}.tuition-details{border-left:0;border-top:1px solid #e9dcd2;padding:29px 27px}.tuition-details>h3{font-size:18px}.terms-list>div{font-size:10px;gap:8px;padding:12px 0}.tuition-details>.button{font-size:11px;padding:16px 21px;gap:20px}.tuition-footnote{font-size:9px;margin-top:20px}.faq-layout{gap:25px}.faq summary{font-size:11px;padding:21px 0;grid-template-columns:20px 1fr 13px;gap:8px}.faq details>div{font-size:11px;padding:0 12px 22px 28px}.final-cta{padding:65px 0 53px}.final-cta .eyebrow{font-size:6px;letter-spacing:.1em}.final-cta h2{font-size:29px;letter-spacing:.06em;line-height:1.7}.final-cta .container>p:not(.eyebrow):not(.closing-message){font-size:11px;margin:23px 0 27px}.final-cta .button{min-width:unset;width:100%;font-size:11px;gap:15px;padding:16px 21px}.final-cta small{font-size:8px;margin-top:13px;margin-bottom:27px}.closing-message{font-size:11px}.final-spark{font-size:34px;margin-bottom:22px}.final-cta:before,.final-cta:after{width:450px;height:450px;top:70px}.final-cta:before{left:-375px}.final-cta:after{right:-375px}footer{padding:33px 0 100px}.footer-top{padding-bottom:27px;gap:14px;flex-wrap:wrap}.footer-top>p{font-size:8px;order:3;width:100%;margin-top:4px}.footer-top .brand strong{font-size:24px}.back-top{width:35px;height:35px}.footer-bottom{padding-top:20px}.footer-bottom nav{gap:9px 18px}.footer-bottom nav button{font-size:8px}.footer-bottom>p{font-size:7px;margin-top:18px}.mobile-bottom{position:fixed;left:0;bottom:0;right:0;z-index:19;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:10px 18px max(10px,env(safe-area-inset-bottom));background:#fffdfbf5;border-top:1px solid #e4cbd0;backdrop-filter:blur(12px);box-shadow:0 -3px 20px #493b4205}.mobile-bottom>span{font-size:10px;font-family:var(--serif)}.mobile-bottom small{display:block;font-size:7px;color:var(--muted);font-family:var(--sans);margin-top:1px}.mobile-bottom>a{font-size:10px;background:var(--rose);color:white;padding:10px 15px;display:flex;gap:20px;align-items:center}.mobile-bottom>a span{font-size:16px;line-height:1}dialog{width:calc(100% - 26px);padding:23px 23px;max-height:86dvh}dialog h2{font-size:21px;margin-bottom:17px}dialog>p{font-size:11px}.placeholder-list dt,.placeholder-list dd{font-size:10px}.dialog-notice{font-size:10px!important;padding:13px}.review-actions .button{font-size:11px}.review-checklist li{font-size:10px}.edit-bar{left:10px;right:10px;bottom:10px;gap:10px;flex-wrap:wrap;padding:15px}.edit-bar>p{width:100%;font-size:11px}.edit-bar small{font-size:9px}.edit-bar button{font-size:10px;padding:9px 13px}.toast{bottom:85px;font-size:11px}.mobile-bottom.editing{display:none}}
@media(max-width:359px){.site-header{gap:12px;padding:0 16px}.header-cta{font-size:8px;padding:8px}.brand strong{font-size:21px}.brand small{font-size:5px}.brand-symbol{font-size:29px}.hero{padding-left:18px;padding-right:18px}.hero-copy{padding-left:0}.hero h1{font-size:33px}.hero .button{min-width:unset;width:100%;font-size:11px}.hero-facts{font-size:8px}.hero-visual{height:310px}.chapter-strip{gap:9px;font-size:10px}.chapter-strip small{font-size:6px}.container{width:calc(100% - 36px)}.section h2{font-size:26px}.step{padding:21px 20px 0}.step h3{font-size:18px}.mini-art{height:127px}.art-social{gap:3px}.art-social i{width:33px;height:66px}.outcome-grid h3{font-size:13px}.art-ai:after{width:110px}.art-web:after{width:110px}.tuition-main,.tuition-details{padding-left:22px;padding-right:22px}.terms-list>div{font-size:9px}.price>span{font-size:52px}.learning-format b{font-size:8px}.learning-format{font-size:7px}.final-cta h2{font-size:26px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media print{.preview-ribbon,.site-header,.mobile-bottom,.scroll-cue,dialog,.edit-bar,.toast,.curriculum-controls{display:none!important}.section{padding:35px 0}.container{width:90%}.curriculum-panel[hidden]{display:block!important}.week-detail{display:block}.hero{min-height:unset;padding:20px 30px}.hero-visual{height:380px}.button{border:1px solid var(--rose)}.step-grid,.outcome-grid{break-inside:avoid}footer{padding-bottom:10px}}

@media(max-width:620px){.hero-description,.wish-list li,.empathy-content>p,.center-heading>p:not(.eyebrow),.step>p:not(.step-en),.outcomes-heading>p,.outcome-grid article>p,.support-intro>p:not(.eyebrow),.support-list article p,.check-list li,.faq summary,.faq details>div{font-size:12px}.week-title{font-size:12px}.week-detail dd{font-size:11px}.tuition-footnote,.outcome-grid+.fine-print,.curriculum>.container>.fine-print{font-size:10px}.week-card summary>i{grid-column:3}.final-cta .container>p:not(.eyebrow):not(.closing-message){font-size:12px}}

/* Product-specific content; the reference layout, typography and motion remain intact. */
.preview-ribbon>a{font-size:10px;border-bottom:1px solid #c1aaa8;white-space:nowrap}
.session-dates{margin:18px 0 12px;font-size:11px;line-height:1.8}
.session-dates>div{display:flex;justify-content:space-between;gap:18px;padding:9px 0;border-bottom:1px solid var(--line)}
.session-dates dt{font-weight:500}.session-dates dd{margin:0;text-align:right;color:var(--muted)}
.price-change{border-top:1px solid #deccc4;margin-top:24px;padding-top:18px;font-size:12px;line-height:2;color:var(--muted)}
.price-change strong{color:var(--ink)}.price-change small{font-size:10px}
.footer-bottom nav a{font-size:10px}.footer-bottom nav a:hover{color:var(--rose);text-decoration:underline;text-underline-offset:4px}
#terms-dialog h3{margin:25px 0 12px;font-family:var(--serif)}
#terms-dialog>p{margin:13px 0;font-size:12px;line-height:2}
#terms-dialog>.button{display:flex;margin-top:22px}
@media(max-width:620px){.preview-ribbon>a{font-size:8px}.session-dates{font-size:10px}.session-dates>div{gap:12px}.footer-bottom nav a{font-size:8px}.price-change{font-size:11px}.price-change small{font-size:9px}.month-tabs span{font-size:14px}#terms-dialog>p{font-size:11px}}
@media(max-width:359px){.hero-tagline{font-size:12px}.brand small{font-size:4.8px}.header-cta{gap:6px;font-size:8px}.session-dates>div{display:block}.session-dates dd{text-align:left}.month-tabs span{font-size:12px}.mobile-bottom{gap:8px;padding-left:12px;padding-right:12px}.mobile-bottom>a{gap:8px;padding:10px}.mobile-bottom>span{font-size:9px}}
