/* PARMAP MUSIC: selected burgundy and ivory design. */
:root{--paper:#f7f2e9;--ink:#382e2b;--wine:#682b35;--muted:#776761;--line:#d9c9bd;--lime:#ebc6a5}
.header{background:#f7f2e9f2;color:var(--wine);border-color:#682b3520}.brand-symbol i{background:var(--wine)}.nav-cta{background:var(--wine);color:var(--paper);border-radius:0}.menu-toggle{color:var(--wine)}.menu-lines{border-color:var(--wine)}.menu-toggle[aria-expanded=true] .menu-lines:after{background:var(--wine)}
.hero{background:var(--paper);color:var(--ink);grid-template-columns:54% 46%;min-height:750px}.hero:before{background:linear-gradient(90deg,transparent 54%,#682b35 54%)}.hero-copy{padding:66px 0 60px 10%}.hero-display{font:italic 400 clamp(49px,5.4vw,88px)/1.05 Georgia,serif;letter-spacing:-.055em;margin-bottom:36px;color:var(--wine)}.hero-display>span{animation:ink-arrive 1.8s both}.hero-display>span:nth-child(2){animation-delay:.22s}.hero-display em{font-weight:400;color:#ad7866;font-style:italic}.hero .eyebrow{color:#8a5c53}.little-line{background:#a47764}.hero h1{font-family:var(--serif);font-weight:500;font-size:clamp(33px,3.4vw,52px);line-height:1.65;animation:ink-arrive 1.8s .4s both}.hero .accent{color:var(--wine)}.hero-description{color:#776761}.hero .button{background:var(--wine);color:var(--paper);font-weight:500}.hero-text-link{color:var(--wine)}.hero-bottom{border-color:#d9c9bd;color:#8b7469}.hero-bottom b,.hero-bottom a{color:#8b7469}
.hero-visual{min-height:750px;transform:none}.portrait-frame{inset:70px 17% 142px 10%;border-radius:0;transform:none;background:#5f3836;box-shadow:20px 20px 0 #ffffff08;animation:curtain-open 2s cubic-bezier(.2,.7,.2,1) both}.portrait-frame img{filter:sepia(.2) saturate(.65);transform:scale(1.03);animation:portrait-drift 14s ease-in-out infinite alternate}.portrait-frame:after{background:linear-gradient(0deg,#51212c66,transparent 65%);border-radius:0}.visual-top{left:10%;top:38px;color:#e5bfb1;font-size:8px}.portrait-label{left:3%;bottom:94px;transform:none;background:#f7f2e9;color:var(--wine);padding:20px 28px;border:1px solid #d9c9bd;min-width:205px}.portrait-label b{font-family:var(--serif);font-weight:500;font-size:32px}.visual-caption{bottom:54px;left:10%;color:#e5bfb1}.portrait-script{position:absolute;right:3%;top:84px;z-index:2;writing-mode:vertical-rl;color:#efd2b7;font:italic 26px Georgia;letter-spacing:.02em;animation:ink-arrive 2s .8s both}.stage-halo{left:-8%;top:28px;width:480px;height:580px;border-radius:50%;border-color:#d8ae933f;box-shadow:none;animation:oval-turn 30s linear infinite}.sound-bars{right:10%;bottom:100px;transform:none;height:40px;gap:3px}.sound-bars i{width:2px;background:#e7b99e;animation-duration:3.5s}.sound-bars i:nth-child(4n){animation-duration:2.7s}.motion-toggle{color:#e8cbbc;border-color:#c99a8655}.scroll-progress{background:#a56b62}
.statement-strip{background:#eaded1;color:#89574d;padding:20px 0;border-bottom:1px solid #d9c9bd}.marquee-track{font:italic 26px Georgia;letter-spacing:.06em;animation-duration:80s;animation-direction:reverse}.marquee-track i{font-size:20px;color:#af8370}.section h2{font-family:var(--serif);font-weight:500;letter-spacing:.025em}.concept-grid h2{line-height:1.7}.concept-text .lead{font-weight:500}.pillars{gap:0}.pillars article{background:none;border-left:1px solid var(--line);border-radius:0;padding:15px 28px!important}.pillars article:first-child{border-left:0}.pillars article:hover{transform:translateY(-4px);box-shadow:none;background:#eee3d7}.pillar-number{font:italic 38px Georgia;color:#ad8773}.trainer{background:#eee4d8}.trainer-art{transform:none;box-shadow:15px 15px 0 #d7c1ad;border-radius:140px 140px 0 0;max-width:355px;margin:auto}.trainer-art img{filter:sepia(.2) saturate(.6)}.trainer-art figcaption{background:#682b35dd;color:#f1dbca;font-size:8px}.trainer-intro{font-family:var(--serif);font-weight:500}.lesson-row:hover{background:#eee3d8}.lesson-num{font-family:Georgia;font-style:italic;font-weight:400;color:#ad8773}.round-arrow{border-color:#b79887}.price-panel{background:#eee1d3;border-color:#d9c9bd}.access-panel{border-color:#d9c9bd}.price.price-inquiry{font-family:var(--serif);font-weight:500}.flow-section{background:#682b35}.flow-section .section-heading>p,.flow p{color:#ead4c6}.flow-number{color:#ebc6a5;border-color:#a06e6d;font-family:Georgia;font-style:italic;font-weight:400}.flow h3{font-weight:500}.contact{background:#532730;color:var(--paper)}.contact:before{background:repeating-radial-gradient(circle,transparent 0 45px,#ebc6a512 46px 47px)}.contact-heading h2{font-family:var(--serif);font-weight:500}.contact-heading>.eyebrow,.contact-heading>p:not(.eyebrow){color:#e2c4b7}.contact-card{border-radius:0;box-shadow:15px 15px 0 #ffffff09}.contact-card .button{background:var(--wine);color:var(--paper)}.footer{background:#f7f2e9;color:var(--wine)}.footer>small{border-color:#d9c9bd;color:#92786c}.mobile-contact{background:var(--wine);color:var(--paper);font-weight:500}.reveal{transition-duration:1.3s;transition-timing-function:ease;transition-delay:var(--reveal-delay,0ms)}.reveal.is-pending{translate:-16px 0}
@keyframes ink-arrive{from{opacity:0;transform:translateY(18px);filter:blur(5px)}to{opacity:1;transform:none;filter:blur(0)}}@keyframes curtain-open{from{clip-path:inset(0 100% 0 0);opacity:.5}to{clip-path:inset(0);opacity:1}}@keyframes portrait-drift{to{transform:scale(1.09) translateY(-3px)}}@keyframes oval-turn{to{transform:rotate(360deg)}}
@media(min-width:1600px){.hero-copy{padding-left:14%}.hero-display{font-size:94px}.hero-visual{min-height:820px}.portrait-frame{inset:75px 20% 140px 10%}}
@media(max-width:1100px){.hero-copy{padding-left:8%}.hero-display{font-size:5.6vw}.portrait-frame{inset:90px 13% 170px 10%}.portrait-label{bottom:128px;min-width:175px}.hero-visual{min-height:750px}.portrait-script{font-size:21px;right:2%}.stage-halo{width:360px;height:540px}}
@media(max-width:1000px){.navigation{background:var(--paper);color:var(--wine)}}
@media(max-width:760px){.hero{grid-template-columns:1fr;min-height:0}.hero:before{display:none}.hero-copy{padding:35px 7% 30px}.hero-display{font-size:clamp(40px,9.8vw,66px);margin-bottom:24px;line-height:1.08}.hero h1{font-size:33px;line-height:1.5;margin-block:13px 18px}.hero-description{font-size:12px}.hero .button{margin-top:20px}.hero-visual{background:var(--wine);height:420px;min-height:0;margin-top:5px}.portrait-frame{inset:35px 21% 70px 19%;max-width:280px;border-radius:0}.portrait-label{left:9%;bottom:52px;min-width:175px;padding:12px 20px}.portrait-label b{font-size:24px;margin:3px 0}.portrait-script{right:8%;top:45px;font-size:23px}.visual-top{writing-mode:horizontal-tb;left:19%;right:auto;top:15px;font-size:6px}.visual-caption{left:9%;bottom:23px;font-size:6px}.stage-halo{width:285px;height:335px;top:24px;left:calc(50% - 142px)}.sound-bars{right:8%;bottom:65px;height:38px}.motion-toggle{bottom:14px;right:12px;font-size:8px}.marquee-track{font-size:23px}.pillars article{border-left:0;border-bottom:1px solid var(--line);padding:24px 0 24px 45px!important}.pillar-number{left:0;top:25px;font-size:26px}.trainer-art{max-width:270px}.contact-heading h2{font-size:37px}.flow h3{border-color:#a06e6d}}
@media(max-width:360px){.hero h1{font-size:29px}.hero-display{font-size:10vw}.hero-description{font-size:11px}.hero-visual{height:390px}.portrait-label{left:6%;min-width:160px}.sound-bars{gap:2px;right:6%}.portrait-script{right:6%;font-size:20px}.contact-heading h2{font-size:33px}}
@media(prefers-reduced-motion:reduce){.portrait-frame{clip-path:none}.reveal.is-pending{translate:none}}

/* School profile and confirmed course information. */
.trainer-records{display:grid;grid-template-columns:1fr 1fr;gap:42px;margin-top:55px;padding-top:32px;border-top:1px solid #cbb5a4}
.trainer-records h3{font-family:var(--serif);font-size:22px;font-weight:500;margin:10px 0 18px}
.trainer-records ul{padding-left:1.3em}.trainer-records li,.trainer-records p:not(.eyebrow){font-size:13px;line-height:2;color:#62514a;margin-bottom:10px}
.trainer-records .genre-note{padding-top:12px;border-top:1px solid #d9c9bd}
.course-information{margin-top:80px;scroll-margin-top:25px}.course-information .section-heading h2{font-size:clamp(28px,3vw,42px);margin-top:15px;line-height:1.6}
.trial-banner{display:flex;align-items:center;gap:30px;padding:30px 34px;background:var(--wine);color:var(--paper);margin-bottom:28px}
.trial-banner h3{font-family:var(--serif);font-size:23px;font-weight:500;margin:8px 0}.trial-banner p:not(.trial-price):not(.eyebrow){font-size:13px;color:#ead4c6}
.trial-price{font:56px/1.2 Georgia,serif;white-space:nowrap;margin-left:auto}.trial-price span{font:16px var(--sans);margin-left:6px}
.trial-banner .button{background:var(--paper);color:var(--wine);font-size:12px;min-width:0;white-space:nowrap}
.course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.course-card{border:1px solid var(--line);padding:28px;background:#faf6ef;min-width:0}
.course-card h3{font:500 25px/1.6 var(--serif);margin:9px 0}.course-description{font-size:12px;color:var(--muted);line-height:1.9;margin:12px 0}
.course-card table{width:100%;border-collapse:collapse;font-size:14px;margin-top:24px}.course-card caption{text-align:left;font-size:11px;color:var(--muted);margin-bottom:12px}
.course-card th,.course-card td{padding:13px 0;border-bottom:1px solid var(--line);text-align:left;font-weight:400}.course-card thead th{font-size:11px;color:var(--muted)}.course-card td,.course-card th:last-child{text-align:right}.course-card td{font-variant-numeric:tabular-nums;color:var(--wine);font-weight:600;white-space:nowrap}
.fee-details{display:grid;grid-template-columns:1.2fr 1fr;gap:35px;margin-top:30px;padding:30px;background:#eee1d3}.fee-details h3{font-size:17px;font-weight:500;margin-bottom:14px}.fee-details p{font-size:13px;line-height:2}.fee-details .fee-note{font-size:12px;color:#6c5951;margin-top:16px}
.ticket-prices{font-size:13px;margin-top:18px}.ticket-prices>div{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid #d4bfae}.ticket-prices dd{margin:0;white-space:nowrap}.enrollment-price{font-size:22px!important;color:var(--wine);margin-bottom:12px}
.member-fees{border-bottom:1px solid var(--line);margin-bottom:28px}.member-fees summary{font-size:13px}.member-fees>p{font-size:13px;padding-left:0;line-height:2}.course-information .access-panel h3{font-size:20px}.course-information .panel-note{font-size:13px;color:var(--muted);line-height:2}.course-information .access-panel .underlined-link{margin-top:15px}
@media(max-width:1100px){.course-card{padding:22px 18px}.trial-banner{gap:22px;padding:26px}.trial-banner h3{font-size:20px}.trial-price{font-size:46px}}
@media(max-width:900px){.trial-banner{flex-wrap:wrap}.trial-banner .button{width:100%}.course-grid{gap:12px}.course-card h3{font-size:22px}.course-card table{font-size:13px}}
@media(max-width:760px){.trainer-records{grid-template-columns:1fr;gap:22px;margin-top:35px}.trainer-records h3{font-size:21px}.course-information{margin-top:50px}.course-information .section-heading h2{font-size:28px}.trial-banner{gap:18px;padding:24px 20px}.trial-banner h3{font-size:19px}.trial-price{margin-left:0}.course-grid{grid-template-columns:1fr;gap:18px}.course-card{padding:25px 22px}.course-card h3{font-size:25px}.course-card table{font-size:15px;margin-top:20px}.fee-details{grid-template-columns:1fr;gap:28px;padding:24px 20px}.fee-details article+article{border-top:1px solid #d4bfae;padding-top:24px}.member-fees summary{font-size:12px}.brand small{letter-spacing:.05em}}
@media print{.course-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.trial-banner{background:#eee1d3;color:var(--wine)}.trial-banner p:not(.trial-price):not(.eyebrow){color:var(--ink)}.course-card{padding:16px}.course-card table{font-size:12px}.course-information{margin-top:25px}.member-fees>p{display:block}}
