@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,500;0,600;0,700;1,500;1,600&family=DM+Sans:wght@400;500;600;700&family=Gowun+Batang:wght@400;700&family=Nanum+Myeongjo:wght@400;700&family=Noto+Sans+KR:wght@400;500;600;700&display=swap');
:root{--paper:#f3f0e8;--cream:#fffdf7;--ink:#242a27;--muted:#4d5751;--wine:#753c47;--rose:#9e5360;--blue:#315a73;--sky:#dce8ed;--sage:#c8d3bf;--green:#354d43;--gold:#a9791e;--sun:#ead18a;--line:#d0cabb;--serif:'Gowun Batang','Nanum Myeongjo',serif;--display:'Nanum Myeongjo','Gowun Batang',serif;--sans:'DM Sans','Noto Sans KR',sans-serif;--max:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.75 var(--sans)}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.wrap{width:min(var(--max),calc(100% - 72px));margin:auto}.eyebrow{font:700 11px/1.4 var(--sans);letter-spacing:.19em;text-transform:uppercase}.serif{font-family:var(--serif)}.header{height:90px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid var(--line)}.logo{font:700 24px/1.25 var(--serif);letter-spacing:.12em;color:var(--wine)}.logo small{display:block;margin-top:3px;color:var(--muted);font:600 9px var(--sans);letter-spacing:.24em}.nav{display:flex;align-items:center;gap:33px;font-size:14px;color:#4b514c}.nav a{padding:10px 0;border-bottom:1px solid transparent}.nav a:hover,.nav a.active{border-color:var(--wine);color:var(--wine)}.header-right{justify-self:end}.phone-link{font-size:13px;color:var(--wine);border-bottom:1px solid var(--gold);padding:7px 0}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:52px;padding:0 22px;border:1px solid var(--ink);font-size:14px;transition:.25s}.button.dark{background:var(--ink);color:white}.button.wine{background:var(--wine);border-color:var(--wine);color:#fff}.button:hover{transform:translateY(-2px);box-shadow:0 8px 18px #252a241c}.button .arrow{font-size:18px;line-height:1}.mobile-cta{display:none}
/* Home */
.home-hero{min-height:680px;display:grid;grid-template-columns:1.05fr .95fr;gap:5%;align-items:center;padding:65px 0 82px;position:relative}.hero-copy{position:relative;z-index:1}.hero-copy .eyebrow{color:var(--wine)}.hero-title{font:400 clamp(43px,4.5vw,58px)/1.42 var(--serif);letter-spacing:-.065em;margin:23px 0 18px}.hero-title>span,.hero-title>em{display:block;white-space:nowrap}.hero-title .accent{color:var(--wine);font-style:normal}.hero-desc{max-width:530px;font-size:18px;line-height:2;color:#505850;margin:0}.hero-credentials{display:flex;align-items:center;gap:11px;margin-top:23px;font-size:13px;color:var(--muted)}.hero-credentials:before{content:'';width:28px;height:1px;background:var(--gold)}.hero-actions{display:flex;gap:11px;flex-wrap:wrap;margin-top:29px}.hero-image{height:520px;position:relative;padding:0 20px 20px 0}.hero-image:before{content:'';position:absolute;inset:19px 0 0 19px;border:1px solid var(--wine)}.hero-image img{position:relative;width:100%;height:100%;object-fit:cover;object-position:center 52%;filter:saturate(.78)}.hero-image .stamp{position:absolute;top:26px;left:-19px;background:var(--sun);width:74px;height:74px;display:grid;place-items:center;text-align:center;border-radius:50%;font:700 9px/1.35 var(--sans);letter-spacing:.1em;color:var(--ink);transform:rotate(-9deg)}.hero-caption{position:absolute;right:33px;bottom:38px;background:var(--cream);padding:14px 18px;font:16px var(--serif);color:var(--wine)}.hero-side{position:absolute;right:-17px;top:16px;writing-mode:vertical-rl;font-size:10px;letter-spacing:.22em;color:var(--muted)}.intro-ribbon{background:var(--wine);color:#fff9ef;padding:23px 0 20px}.ribbon-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin:0 0 14px}.ribbon-heading .eyebrow{font-size:9px;letter-spacing:.17em;color:#f1d995}.ribbon-heading h2{font:400 22px/1.4 var(--serif);margin:3px 0 0;letter-spacing:-.025em}.ribbon-heading>p{font-size:12px;color:#f4e9e5;margin:0 0 3px}.ribbon-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #ffffff42}.ribbon-item{min-width:0;min-height:73px;padding:12px 14px;display:grid;grid-template-columns:28px minmax(0,1fr) 14px;gap:9px;align-items:center;border-bottom:1px solid #ffffff42;border-left:1px solid #ffffff32;transition:background .2s ease}.ribbon-item:nth-child(3n+1){border-left:0}.ribbon-item:nth-last-child(-n+3){border-bottom:0}.ribbon-item:hover{background:#ffffff0d}.ribbon-item:focus-visible{outline:2px solid var(--sun);outline-offset:-3px}.ribbon-note{font:400 23px/1 var(--serif);color:#f1d995;text-align:center}.ribbon-copy{min-width:0}.ribbon-copy b{display:block;font:600 14px/1.45 var(--sans);color:#fff9ef;letter-spacing:0}.ribbon-copy>span{display:block;margin-top:2px;font:400 11px/1.4 var(--sans);color:#f1e8e3}.ribbon-arrow{font:400 13px/1 var(--sans);color:#f1d995;align-self:start;margin-top:5px}
.section{padding:104px 0}.section-label{display:flex;gap:24px;align-items:flex-start;margin-bottom:37px}.split-intro>div:last-child>.section-label{display:block}.section-label .no{font:400 14px var(--sans);color:var(--wine);letter-spacing:.14em;padding-top:12px}.section-label h2{font:400 clamp(34px,4.4vw,58px)/1.48 var(--serif);letter-spacing:-.045em;margin:0}.section-label p{max-width:680px;color:var(--muted);font-size:17px;line-height:1.95;margin:13px 0 0}.split-intro{display:grid;grid-template-columns:.72fr 1.28fr;gap:9%;align-items:start}.split-intro .side-note{font-size:13px;line-height:1.9;color:var(--muted);border-left:2px solid var(--gold);padding-left:17px;margin-top:15px}.growth{background:var(--sky)}.growth-rows{border-top:1px solid #8fa7b1}.growth-row{display:grid;grid-template-columns:75px .7fr 1.3fr;gap:24px;padding:23px 0;border-bottom:1px solid #b8c8cc;align-items:start}.growth-row .num{font:400 24px var(--serif);color:var(--blue)}.growth-row h3{font:700 20px var(--serif);margin:0}.growth-row p{font-size:15px;color:#4f5b5f;margin:0;line-height:1.9}
.quote-band{padding:82px 0;background:var(--sun);color:#282a25}.quote-inner{display:grid;grid-template-columns:140px 1fr;gap:25px;align-items:start}.quote-inner .mark{font:400 70px/.8 var(--serif);color:var(--wine)}.quote-inner blockquote{font:400 clamp(27px,4vw,46px)/1.7 var(--serif);margin:0;max-width:950px;letter-spacing:-.035em}.quote-inner p{font-size:14px;color:#5e5b4f;margin:18px 0 0}
.program-tease{background:var(--cream)}.program-grid{display:grid;grid-template-columns:1.08fr .92fr;grid-template-rows:245px 245px;gap:16px}.program-tile{position:relative;padding:27px 30px;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between}.program-tile .eyebrow{font-size:10px}.program-tile h3{font:400 28px/1.5 var(--serif);margin:13px 0 6px}.program-tile p{font-size:14px;line-height:1.8;max-width:390px;margin:0}.program-tile .tile-link{align-self:flex-start;font-size:12px;border-bottom:1px solid currentColor;padding:3px 0}.section-action{margin-top:24px}.program-tile.exam{grid-row:span 2;background:var(--green);color:#fff9ef;padding:35px}.program-tile.exam:after{content:'01';position:absolute;right:-7px;bottom:-63px;font:300 260px/.9 var(--serif);color:#ffffff10}.program-tile.exam .tile-link{position:relative;z-index:1}.program-tile.adult{background:#e9c6b7;color:#3f2829}.program-tile.senior{background:var(--sage);color:#26392f}.program-tile.piece{background:var(--blue);color:white;grid-column:1/-1;min-height:180px;flex-direction:row;align-items:center}.program-tile.piece .tile-copy{max-width:70%}.program-tile.piece h3{font-size:33px}.piece-number{font:400 clamp(72px,12vw,150px)/.8 var(--serif);color:#ffffff2e;letter-spacing:-.1em}
.teacher-band{background:var(--wine);color:white;position:relative;overflow:hidden}.teacher-band .button{border-color:#fff;color:#fff}.teacher-band .button:hover{background:var(--sun);border-color:var(--sun);color:var(--ink)}.teacher-band:after{content:'E';position:absolute;right:3%;top:-130px;font:400 500px/1 var(--serif);color:#ffffff0b;pointer-events:none}.teacher-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:9%;align-items:center;position:relative;z-index:1}.teacher-kicker{color:#f0d98e}.teacher-layout h2{font:400 clamp(37px,4.7vw,59px)/1.52 var(--serif);margin:16px 0 15px}.teacher-layout p{font-size:16px;line-height:1.95;color:#f1e8e3;max-width:480px}.credentials{border-top:1px solid #ffffff5c}.credential{display:grid;grid-template-columns:145px 1fr;gap:18px;padding:19px 0;border-bottom:1px solid #ffffff5c}.credential b{font:700 10px var(--sans);letter-spacing:.17em;color:#f0d98e}.credential span{font:400 19px var(--serif)}
.method{background:var(--paper)}.method-intro{display:flex;justify-content:space-between;align-items:end;gap:30px}.method-intro .section-label{margin:0}.method-intro>p{max-width:360px;color:var(--muted);font-size:15px;margin:0 0 8px}.method-track{display:grid;grid-template-columns:repeat(4,1fr);margin-top:47px;border-top:1px solid var(--ink)}.method-step{padding:24px 18px 0 0;position:relative}.method-step:before{content:'';position:absolute;top:-5px;left:0;width:9px;height:9px;background:var(--rose);border-radius:50%;border:2px solid var(--paper)}.method-step .step-no{font:700 10px var(--sans);letter-spacing:.16em;color:var(--wine)}.method-step h3{font:700 20px var(--serif);margin:10px 0 5px}.method-step p{font-size:14px;color:var(--muted);margin:0;line-height:1.85}
.stage-story{padding:82px 0;background:var(--sage);color:var(--ink);overflow:hidden}.stage-layout{display:grid;grid-template-columns:1.05fr .95fr;gap:7%;align-items:center}.stage-copy{max-width:620px}.stage-copy h2{font:400 clamp(39px,4.4vw,55px)/1.5 var(--serif);letter-spacing:-.045em;margin:17px 0}.stage-copy p{max-width:560px;font-size:16px;line-height:1.95;color:#4d554d;margin:0}.stage-copy .eyebrow{color:var(--wine)}.stage-art{min-height:355px;position:relative;overflow:hidden;background:var(--wine);color:#fff8eb;padding:24px 28px;box-shadow:14px 14px 0 var(--gold)}.stage-art-kicker,.stage-art-foot{font:700 10px var(--sans);letter-spacing:.2em;color:#f1d995}.stage-art-foot{position:absolute;left:28px;bottom:23px}.staff-lines{position:absolute;left:0;right:0;top:118px;height:116px;display:flex;flex-direction:column;justify-content:space-between;padding:0 28px}.staff-lines i{height:1px;background:#fff8eb75}.staff-lines span{position:absolute;right:33%;top:-44px;font:86px/1 var(--serif);color:#f1d995;transform:rotate(-9deg)}.stage-op{position:absolute;right:25px;bottom:49px;font:400 55px/.95 var(--serif);text-align:right;color:#fff8eb}
.space-gallery{padding:82px 0;background:#e9e3d6}.space-gallery>.wrap{display:grid;grid-template-columns:.72fr 1.28fr;gap:6%;align-items:center}.gallery-head{display:block;margin:0}.gallery-head h2{font:400 clamp(31px,3.4vw,41px)/1.45 var(--serif);margin:9px 0 11px;letter-spacing:-.04em;word-break:keep-all}.gallery-head p{font-size:15px;line-height:1.85;color:var(--muted);margin:0;word-break:keep-all}.gallery-head .score-link{margin-top:20px}.gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto;gap:20px}.gallery-photo{display:flex;flex-direction:column;margin:0;min-width:0;overflow:hidden}.gallery-photo img{display:block;width:100%;height:auto;aspect-ratio:9/16;object-fit:contain;background:#e1ddd3;filter:saturate(.82)}.gallery-photo:nth-child(2) img{filter:grayscale(.18) contrast(.98)}.gallery-photo figcaption{display:flex;align-items:baseline;gap:10px;padding:12px 2px 0;color:var(--ink);font:400 13px/1.5 var(--sans)}.gallery-photo figcaption span{color:var(--wine);font:700 10px/1 var(--sans);letter-spacing:.12em}.gallery-photo figcaption strong{font-weight:500}
.visit{background:var(--blue);color:white;padding:80px 0}.visit-top{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:end}.visit h2{font:400 clamp(38px,5vw,61px)/1.5 var(--serif);margin:11px 0 0}.visit-top p{font-size:16px;line-height:1.9;color:#e5edf0;margin:0}.visit-details{display:grid;grid-template-columns:1fr 1fr 1fr;margin-top:38px;border-top:1px solid #ffffff63;border-bottom:1px solid #ffffff63}.visit-cell{padding:23px 24px 24px 0}.visit-cell+.visit-cell{padding-left:24px;border-left:1px solid #ffffff63}.visit-cell b{font:700 10px var(--sans);letter-spacing:.19em;color:#f1d995}.visit-cell address{font:400 18px/1.8 var(--serif);font-style:normal;margin-top:11px}.visit-cell p{font-size:14px;line-height:1.8;color:#e5edf0;margin:6px 0 0}.visit-cell a{display:inline-block;margin-top:12px;font-size:13px;border-bottom:1px solid #e6ce8c;padding-bottom:3px}.footer{min-height:94px;display:flex;justify-content:space-between;gap:20px;align-items:center;color:#666d66;font-size:12px}.footer strong{font:700 19px var(--serif);letter-spacing:.12em;color:var(--wine)}
/* Lessons page */
.page-hero{padding:70px 0 66px;display:grid;grid-template-columns:1fr .8fr;gap:10%;align-items:end}.page-hero h1{font:400 clamp(48px,7vw,85px)/1.3 var(--serif);letter-spacing:-.06em;margin:19px 0}.page-hero p{font-size:17px;line-height:1.95;color:var(--muted);max-width:610px;margin:0}.page-aside{background:var(--sun);padding:26px 28px;transform:rotate(1.3deg)}.page-aside b{font:700 10px var(--sans);letter-spacing:.15em;color:var(--wine)}.page-aside p{font:400 18px/1.8 var(--serif);color:var(--ink);margin:9px 0 0}.lesson-detail{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;padding-bottom:90px}.lesson-card{min-height:300px;padding:26px 28px;position:relative;display:flex;flex-direction:column;justify-content:space-between}.lesson-card h2{font:400 31px var(--serif);margin:11px 0}.lesson-card p{max-width:490px;font-size:15px;line-height:1.9;margin:0}.lesson-card .id{font:400 70px/.8 var(--serif);position:absolute;right:22px;bottom:10px;opacity:.15}.lesson-card.exam{background:var(--green);color:white}.lesson-card.adult{background:#e9c6b7;color:#3f2829}.lesson-card.senior{background:var(--sage);color:#26392f}.lesson-card.piece{background:var(--blue);color:white}.lesson-card .eyebrow{font-size:10px}.lesson-note{grid-column:1/-1;padding:20px 24px;border-left:3px solid var(--gold);background:var(--cream);font-size:14px;color:var(--muted)}
/* Teacher page */
.teacher-hero{padding:79px 0 83px;background:var(--wine);color:#fff9ef;position:relative;overflow:hidden}.teacher-hero:after{content:'EUN';position:absolute;right:1%;top:-40px;font:300 250px/.9 var(--sans);letter-spacing:-.12em;color:#ffffff0d}.teacher-hero .wrap{position:relative;z-index:1}.teacher-hero h1{font:400 clamp(45px,6.5vw,78px)/1.4 var(--serif);margin:18px 0}.teacher-hero p{font-size:18px;line-height:1.95;color:#f0e5df;max-width:660px;margin:0}.teacher-profile{padding:82px 0}.teacher-profile-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:10%;align-items:start}.teacher-profile h2{font:400 35px/1.55 var(--serif);margin:10px 0}.teacher-profile .bio{font-size:16px;color:var(--muted);line-height:2}.degree-list{border-top:1px solid var(--ink);margin-top:25px}.degree{padding:20px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:155px 1fr;gap:20px}.degree b{font:700 10px var(--sans);letter-spacing:.16em;color:var(--wine)}.degree span{font:400 20px var(--serif)}.teacher-principles{background:var(--sky);padding:80px 0}.principle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid #a8bac0;border-bottom:1px solid #a8bac0;margin-top:28px}.principle{padding:22px 22px 23px 0}.principle+.principle{border-left:1px solid #a8bac0;padding-left:22px}.principle b{font:700 10px var(--sans);letter-spacing:.16em;color:var(--blue)}.principle h3{font:700 19px var(--serif);margin:10px 0 5px}.principle p{font-size:14px;line-height:1.85;color:#4f5b5f;margin:0}
@media(max-width:920px){.wrap{width:min(var(--max),calc(100% - 42px))}.header{height:76px;grid-template-columns:1fr auto}.nav{display:none}.home-hero{grid-template-columns:1fr;gap:32px;min-height:0;padding:50px 0 65px}.hero-title{font-size:clamp(48px,7vw,58px)}.hero-image{height:430px;margin:0 19px}.hero-side{display:none}.ribbon-grid{grid-template-columns:1fr 1fr}.ribbon-item:nth-child(3){border-left:0}.ribbon-item:nth-child(n+3){border-top:1px solid #ffffff36}.split-intro{grid-template-columns:1fr;gap:12px}.program-grid{grid-template-rows:220px 220px}.program-tile h3{font-size:25px}.teacher-layout{grid-template-columns:1fr;gap:26px}.method-intro{display:block}.method-intro>p{margin:14px 0 0}.gallery-grid{grid-template-rows:170px 170px}.visit-top{grid-template-columns:1fr;gap:16px}.visit-details{grid-template-columns:1fr 1fr}.visit-cell:nth-child(3){grid-column:1/-1;border-left:0;border-top:1px solid #ffffff63;padding-left:0}.page-hero{grid-template-columns:1fr;gap:26px}.page-aside{max-width:480px}.teacher-profile-grid{grid-template-columns:1fr;gap:20px}}
@media(max-width:600px){body{font-size:15px}.wrap{width:calc(100% - 34px)}.header{height:70px}.logo{font-size:21px}.logo small{font-size:8px}.phone-link{font-size:12px}.home-hero{padding:38px 0 49px;gap:26px}.hero-title{font-size:clamp(32px,8.7vw,39px);margin:20px 0 14px}.hero-desc{font-size:16px}.hero-credentials{font-size:12px}.hero-image{height:310px;margin:0 11px 0 5px;padding:0 13px 13px 0}.hero-image .stamp{width:60px;height:60px;left:-9px;top:17px;font-size:8px}.hero-caption{right:12px;bottom:22px;padding:10px 12px;font-size:13px}.intro-ribbon .ribbon-item{padding:15px 10px}.ribbon-item b{font-size:9px}.ribbon-item span{font-size:14px}.section{padding:66px 0}.section-label{display:block;margin-bottom:27px}.section-label .no{padding:0 0 9px}.section-label h2{font-size:35px}.section-label p{font-size:15px}.growth-row{grid-template-columns:38px 1fr;gap:9px 12px;padding:17px 0}.growth-row .num{font-size:20px}.growth-row h3{font-size:18px}.growth-row p{grid-column:2;font-size:14px}.quote-band{padding:54px 0}.quote-inner{grid-template-columns:35px 1fr;gap:13px}.quote-inner .mark{font-size:45px}.quote-inner blockquote{font-size:25px}.quote-inner p{font-size:13px}.program-grid{display:flex;flex-direction:column;gap:10px}.program-tile,.program-tile.exam{min-height:205px;padding:22px}.program-tile.exam{min-height:250px}.program-tile.piece{min-height:180px}.program-tile.piece .tile-copy{max-width:76%}.program-tile.piece h3{font-size:27px}.piece-number{font-size:78px}.teacher-layout h2{font-size:38px}.teacher-layout p{font-size:15px}.credential{grid-template-columns:105px 1fr;gap:10px;padding:15px 0}.credential b{font-size:9px}.credential span{font-size:16px}.method-track{grid-template-columns:1fr 1fr;gap:22px 14px;margin-top:34px}.method-step{padding:18px 0 0}.method-step h3{font-size:17px}.method-step p{font-size:13px}.stage-story{padding:58px 0}.stage-layout{grid-template-columns:1fr;gap:34px}.stage-copy h2{font-size:clamp(34px,9vw,39px);line-height:1.5}.stage-copy p{font-size:15px}.stage-art{min-height:250px;box-shadow:8px 8px 0 var(--gold)}.staff-lines{top:83px;height:90px}.staff-lines span{font-size:66px;top:-33px}.stage-op{font-size:43px}.space-gallery{padding:62px 0}.gallery-head{display:block}.gallery-head h2{font-size:29px}.gallery-head p{margin-top:7px}.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:190px 135px;gap:8px}.visit{padding:61px 0}.visit h2{font-size:40px}.visit-top p{font-size:15px}.visit-details{grid-template-columns:1fr}.visit-cell,.visit-cell+.visit-cell,.visit-cell:nth-child(3){padding:18px 0;border-left:0}.visit-cell+.visit-cell{border-top:1px solid #ffffff63}.visit-cell address{font-size:17px}.footer{display:block;padding:20px 0 80px}.footer span{display:block;margin-top:5px}.page-hero{padding:49px 0 43px}.page-hero h1{font-size:47px}.page-hero p{font-size:15px}.page-aside{padding:20px}.page-aside p{font-size:16px}.lesson-detail{grid-template-columns:1fr;padding-bottom:58px;gap:10px}.lesson-card{min-height:235px;padding:23px}.lesson-card h2{font-size:27px}.lesson-note{grid-column:auto}.teacher-hero{padding:56px 0}.teacher-hero h1{font-size:47px}.teacher-hero p{font-size:15px}.teacher-profile{padding:57px 0}.teacher-profile h2{font-size:30px}.degree{grid-template-columns:113px 1fr;gap:12px;padding:16px 0}.degree span{font-size:17px}.teacher-principles{padding:57px 0}.principle-grid{grid-template-columns:1fr}.principle,.principle+.principle{padding:17px 0;border-left:0;border-bottom:1px solid #a8bac0}.principle:last-child{border-bottom:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

.inline-credential{text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:4px}.credential .inline-credential{color:#fff9ef}.credential-en{display:block;margin-top:5px;font:500 11px/1.6 var(--sans);letter-spacing:.02em;color:#eddbd0}

/* EUN PIANO brand system */
.logo{display:inline-flex;align-items:center;gap:10px;letter-spacing:0}.brand-mark{width:40px;height:40px;display:block;color:var(--wine);flex:none}.brand-mark svg{width:100%;height:100%}.brand-type{font:700 22px/1.2 var(--serif);letter-spacing:.1em;color:var(--wine)}.brand-type small{display:block;margin-top:4px;color:var(--muted);font:600 8px/1.2 var(--sans);letter-spacing:.2em}
.brand-intro{max-width:760px;margin:0 auto 34px;text-align:center}.brand-intro .eyebrow,.method-note .eyebrow{color:var(--wine)}.brand-intro h2{font:400 clamp(32px,4.3vw,50px)/1.45 var(--serif);letter-spacing:-.04em;margin:13px 0}.brand-intro h2 em{font-style:normal;color:var(--wine)}.brand-intro p{max-width:650px;margin:0 auto;color:var(--muted);font-size:16px;line-height:1.95}.thread-steps{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:68px}.thread-steps article{padding:21px 18px 23px 0;position:relative}.thread-steps article+article{padding-left:18px;border-left:1px solid var(--line)}.thread-steps b{font:700 9px var(--sans);letter-spacing:.17em;color:var(--wine)}.thread-steps h3{font:400 24px var(--serif);margin:9px 0 3px}.thread-steps p{font-size:13px;line-height:1.75;color:var(--muted);margin:0}.method-note{display:grid;grid-template-columns:.9fr 1.1fr;gap:8%;align-items:center;padding:34px 0 40px;border-bottom:1px solid var(--line)}.method-note h2{font:400 28px/1.5 var(--serif);margin:8px 0 0}.method-note>p{font-size:15px;line-height:1.9;color:var(--muted);margin:0}.method-note>p b{color:var(--wine);letter-spacing:.04em}.teacher-method-note{border:0;margin:0 0 42px;padding:0}.teacher-method-note h2{font-size:31px}.teacher-method-note>p{color:#4f5b5f}
@media(max-width:600px){.brand-mark{width:34px;height:34px}.brand-type{font-size:19px}.header{grid-template-columns:1fr auto}.thread-steps{grid-template-columns:1fr 1fr;margin-bottom:48px}.thread-steps article{padding:16px 12px 18px 0}.thread-steps article+article{padding-left:12px}.thread-steps article:nth-child(3){border-left:0;padding-left:0;border-top:1px solid var(--line)}.thread-steps article:nth-child(4){border-top:1px solid var(--line)}.method-note{grid-template-columns:1fr;gap:13px;padding:25px 0 30px}.method-note h2{font-size:25px}.method-note>p{font-size:14px}.brand-intro p{font-size:14px}}

/* Score inspired wayfinding: musical cues support clear text labels */
.brand-intro:after{content:"";display:block;width:58px;height:19px;margin:22px auto 0;background:radial-gradient(ellipse at 42px 4px,var(--gold) 0 3px,transparent 3.5px),linear-gradient(var(--silver,#a7afac),var(--silver,#a7afac)) 0 4px/58px 1px no-repeat,linear-gradient(var(--silver,#a7afac),var(--silver,#a7afac)) 0 8px/58px 1px no-repeat,linear-gradient(var(--silver,#a7afac),var(--silver,#a7afac)) 0 12px/58px 1px no-repeat,linear-gradient(var(--silver,#a7afac),var(--silver,#a7afac)) 0 16px/58px 1px no-repeat}.score-link{display:inline-flex;align-items:center;gap:9px;margin-top:21px;padding:8px 0;border-bottom:1px solid #a7afac;color:var(--wine);font:600 13px/1.5 var(--sans);transition:color .18s ease,border-color .18s ease}.score-link>span,.music-sign{color:var(--gold);display:inline-flex;align-items:center;justify-content:center;flex:none;width:17px;height:18px}.music-sign svg{display:block;width:17px;height:18px}.score-link:hover{color:var(--ink);border-color:var(--wine)}.score-link:focus-visible,.button:focus-visible,.tile-link:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.score-link.light{color:#fff9ef;border-color:#f1d995;margin-top:12px}.score-link.light:hover{color:#f1d995}.button .music-sign{margin-right:3px}.tile-link .music-sign{margin-right:5px}.tile-link .music-sign svg{filter:brightness(.84)}.program-tile .tile-link:hover{opacity:.78}.header .logo:focus-visible{outline:3px solid var(--gold);outline-offset:4px}

/* 은피아노 signature: a silver monogram inside a musical medallion */
.logo{display:inline-flex;align-items:center;gap:13px;letter-spacing:0}
.brand-mark{width:54px;height:54px;position:relative;display:grid;place-items:center;flex:none;border:1px solid #c9b77e;border-radius:50%;background:radial-gradient(circle at 34% 28%,#86515a 0,#6f3a45 48%,#4d2c34 100%);box-shadow:inset 0 0 0 4px #ffffff22,0 1px 2px #30262a14;color:var(--wine)}
.brand-mark:before{content:"";position:absolute;inset:5px;border:1px solid #e6ddc2a6;border-radius:50%;pointer-events:none}
.brand-mark svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.brand-mark .staff-line{fill:none;stroke:#d9d8ca;stroke-width:.82;stroke-linecap:round;opacity:.68}
.brand-mark .note-stem{fill:none;stroke:#e3c477;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.brand-mark .note-head{fill:#e3c477}
.brand-mark .sound-arc{fill:none;stroke:#d3bc7f;stroke-width:1.1;stroke-linecap:round;opacity:.9}
.mark-eun{position:relative;z-index:1;margin:-2px 0 0;padding:0 2px;background:linear-gradient(135deg,#eef0e9 5%,#b6c0b9 31%,#f2e6c4 54%,#9eaaa5 74%,#e7e6db 96%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;font:700 27px/1.2 var(--serif);letter-spacing:-.12em;filter:drop-shadow(0 1px 0 #392b2f)}
.brand-type{display:block;color:var(--wine)}
.brand-name{display:flex;align-items:baseline;gap:1px;font-family:var(--serif);line-height:1}
.brand-name strong{font-size:31px;font-weight:700;letter-spacing:-.1em;background:linear-gradient(135deg,#6f7773 0%,#b9c1ba 22%,#e7ddc6 40%,#8a7279 58%,#d3c08a 78%,#78837e 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 .35px 0 #ffffff80)}
.brand-name>span{font-size:24px;font-weight:400;letter-spacing:.055em;color:var(--wine)}
.brand-type small{display:block;margin-top:6px;color:var(--blue);font:600 8.5px/1.2 var(--sans);letter-spacing:.16em;white-space:nowrap}
@media(max-width:600px){.logo{gap:9px}.brand-mark{width:43px;height:43px}.mark-eun{font-size:22px}.brand-name strong{font-size:25px}.brand-name>span{font-size:20px}.brand-type small{font-size:7px;letter-spacing:.1em;margin-top:4px}}

/* Grade 4–6 pathways: clear entry points without deadline-led promotion */
.grade-paths{padding:84px 0 78px;background:#e8eee8;color:var(--ink)}.grade-head{display:grid;grid-template-columns:1fr .85fr;gap:8%;align-items:end;margin-bottom:30px}.grade-head .eyebrow{color:var(--wine)}.grade-head h2{font:400 clamp(35px,4.2vw,51px)/1.4 var(--serif);letter-spacing:-.045em;margin:10px 0 0}.grade-head h2 em{font-style:normal;color:var(--wine)}.grade-head>p{font-size:15px;line-height:1.9;color:#505850;margin:0 0 6px}.grade-course-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.grade-course{min-height:340px;padding:29px 31px;display:flex;flex-direction:column}.grade-course.foundation{background:var(--cream);border-top:3px solid var(--wine)}.grade-course.repertoire{background:var(--green);color:#fff9ef;border-top:3px solid var(--gold)}.course-topline{display:flex;justify-content:space-between;align-items:center;gap:14px}.course-topline>span:first-child{font:700 9px var(--sans);letter-spacing:.19em;color:var(--wine)}.repertoire .course-topline>span:first-child{color:#f1d995}.course-tag{display:inline-block;padding:6px 10px;border:1px solid #d8d3c6;color:var(--wine);font:600 11px/1.3 var(--sans)}.repertoire .course-tag{border-color:#ffffff56;color:#f1d995}.grade-course h3{font:400 34px/1.35 var(--serif);margin:16px 0 7px}.course-description{font-size:14px;line-height:1.85;color:var(--muted);margin:0 0 21px;max-width:510px}.repertoire .course-description{color:#eee9de}.schedule-pair{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:auto}.schedule-pair>div{padding:15px 16px;background:#f0eee7;display:flex;flex-direction:column;gap:5px}.schedule-pair b{font:700 16px var(--sans);color:var(--wine)}.schedule-pair span{font:600 13px/1.5 var(--sans);color:var(--ink)}.repertoire-notes{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto}.repertoire-notes span{padding:9px 12px;border:1px solid #ffffff50;font:500 12px var(--sans);color:#fff9ef}.course-footnote{font-size:12px;line-height:1.7;color:#626960;margin:14px 0 0}.grade-paths>.wrap>.score-link{margin-top:12px}
.curriculum-hero h1{font-size:clamp(44px,5.3vw,68px)}.curriculum-nav{display:flex;gap:11px;flex-wrap:wrap;padding:8px 0 26px}.curriculum-nav a{display:inline-flex;align-items:center;gap:8px;padding:9px 13px;background:var(--cream);border:1px solid var(--line);font-size:13px;color:var(--wine)}.curriculum-nav a span{font:700 17px/1 var(--serif);color:var(--gold)}.curriculum-feature{padding:38px 40px 32px;background:var(--cream);border-top:3px solid var(--wine);margin-bottom:18px}.curriculum-feature.repertoire-feature{background:var(--green);color:#fff9ef;border-color:var(--gold)}.curriculum-feature-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px}.curriculum-feature-head .eyebrow{color:var(--wine)}.repertoire-feature .curriculum-feature-head .eyebrow{color:#f1d995}.curriculum-feature-head h2{font:400 36px/1.35 var(--serif);margin:8px 0}.curriculum-feature-head p{margin:0;color:var(--muted);font-size:15px}.repertoire-feature .curriculum-feature-head p{color:#e5e6dd}.schedule-pair.large{gap:12px}.schedule-pair.large>div{min-height:118px;padding:20px;background:#f1eee6}.schedule-pair.large b{font-size:20px}.schedule-pair.large span{font:700 15px/1.5 var(--sans);color:var(--wine)}.schedule-pair.large small{font:400 12px/1.6 var(--sans);color:var(--muted)}.curriculum-feature .course-footnote{margin-top:15px}.repertoire-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:6%;align-items:center}.repertoire-layout>p{font-size:15px;line-height:1.9;color:#eee9de;margin:0}.repertoire-feature .repertoire-notes span{border-color:#ffffff55}.other-programs{margin-top:46px}.other-programs .program-grid{margin-top:28px}
@media(max-width:920px){.grade-head{grid-template-columns:1fr;gap:14px}.grade-head>p{max-width:650px}.curriculum-hero h1{font-size:clamp(43px,7vw,62px)}}
@media(max-width:700px){.grade-paths{padding:61px 0}.grade-head h2{font-size:36px}.grade-course-grid{grid-template-columns:1fr}.grade-course{min-height:0;padding:23px 21px}.grade-course h3{font-size:30px}.course-description{font-size:14px}.schedule-pair{gap:7px}.schedule-pair>div{padding:12px}.schedule-pair span{font-size:12px}.curriculum-hero h1{font-size:43px}.curriculum-nav{gap:7px}.curriculum-nav a{padding:8px 10px;font-size:12px}.curriculum-feature{padding:25px 20px 23px;margin-bottom:13px}.curriculum-feature-head{display:block;margin-bottom:19px}.curriculum-feature-head .course-tag{margin-top:12px}.curriculum-feature-head h2{font-size:30px}.schedule-pair.large{grid-template-columns:1fr}.schedule-pair.large>div{min-height:0;padding:14px}.repertoire-layout{grid-template-columns:1fr;gap:18px}.repertoire-layout>p{font-size:14px}.other-programs{margin-top:24px}}

/* Refined type scale and scannable curriculum */
.page-hero{padding-top:64px;padding-bottom:56px;gap:7%;grid-template-columns:minmax(0,1.15fr) minmax(250px,.65fr)}
.page-hero h1,.curriculum-hero h1{max-width:760px;font-size:clamp(39px,4.6vw,59px);line-height:1.38;letter-spacing:-.055em;margin:16px 0 15px;word-break:keep-all}
.page-hero p{font-size:16px;line-height:1.9;word-break:keep-all}
.page-aside{transform:none;border-left:3px solid var(--gold);background:#eee9dd;padding:24px 26px}
.page-aside b{font-size:12px;letter-spacing:.04em}
.page-aside p{font:400 17px/1.7 var(--serif);word-break:keep-all}
.curriculum-nav{gap:9px;padding:4px 0 22px}
.curriculum-nav a{font-size:14px;padding:10px 15px;border-radius:2px}
.curriculum-feature{padding:34px 36px 29px;margin-bottom:16px}
.curriculum-feature-head{margin-bottom:22px}
.curriculum-feature-head .eyebrow{font-size:11px;letter-spacing:.07em}
.curriculum-feature-head h2{font-size:34px;line-height:1.4;letter-spacing:-.04em;margin:9px 0 7px}
.curriculum-feature-head p{font-size:16px;line-height:1.8;word-break:keep-all}
.course-tag{font-size:12px;padding:7px 11px}
.schedule-pair.large>div{min-height:112px;padding:18px 20px;gap:7px}
.schedule-pair.large b{font-size:19px}
.schedule-pair.large span{font-size:15px}
.schedule-pair.large small{font-size:13px;line-height:1.6}
.course-footnote{font-size:13px;line-height:1.75}
.repertoire-layout{grid-template-columns:1.2fr .8fr;gap:5%}
.repertoire-layout>p{font-size:16px;line-height:1.85;word-break:keep-all}
.repertoire-feature .repertoire-notes span{font-size:13px;padding:9px 13px}
.other-programs .section-label h2{font-size:clamp(32px,3.6vw,46px);line-height:1.42;letter-spacing:-.04em;word-break:keep-all}
.other-programs .section-label p{font-size:16px;line-height:1.85}
.other-programs .program-grid{grid-template-rows:minmax(225px,auto) minmax(225px,auto);gap:12px}
.other-programs .program-tile{padding:26px 28px}
.other-programs .program-tile h3{font-size:26px;line-height:1.4}
.other-programs .program-tile p{font-size:15px;line-height:1.8;word-break:keep-all}
.other-programs .program-tile .eyebrow{font-size:10px;letter-spacing:.1em}
.other-programs .tile-link{font-size:13px}
.lesson-note{font-size:14px;line-height:1.8}
.grade-head h2{font-size:clamp(34px,3.8vw,47px);line-height:1.38;word-break:keep-all}
.grade-head>p{font-size:16px;line-height:1.85;word-break:keep-all}
.grade-course{min-height:325px;padding:28px 29px}
.grade-course h3{font-size:31px;line-height:1.4;letter-spacing:-.03em}
.course-description{font-size:15px;line-height:1.85;word-break:keep-all}
.schedule-pair b{font-size:17px}.schedule-pair span{font-size:14px;line-height:1.55}
@media(max-width:920px){.page-hero{grid-template-columns:1fr .75fr;gap:5%}.page-hero h1,.curriculum-hero h1{font-size:clamp(37px,5.3vw,52px)}}
@media(max-width:700px){.page-hero{grid-template-columns:1fr;gap:18px;padding:42px 0 34px}.page-hero h1,.curriculum-hero h1{font-size:clamp(34px,8.2vw,43px);line-height:1.42;margin:13px 0;letter-spacing:-.05em}.page-hero p{font-size:15px;line-height:1.85}.page-aside{padding:17px 19px}.page-aside p{font-size:16px}.curriculum-nav{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding-bottom:18px}.curriculum-nav a{font-size:13px;padding:9px 10px}.curriculum-feature{padding:23px 19px 21px}.curriculum-feature-head h2{font-size:28px}.curriculum-feature-head p{font-size:14px;line-height:1.75}.schedule-pair.large{grid-template-columns:1fr 1fr}.schedule-pair.large>div{padding:12px;gap:5px}.schedule-pair.large b{font-size:16px}.schedule-pair.large span{font-size:13px}.schedule-pair.large small{font-size:11px}.course-footnote{font-size:12px}.repertoire-layout>p{font-size:14px}.other-programs .section-label h2{font-size:32px}.other-programs .section-label p{font-size:14px}.other-programs .program-grid{grid-template-rows:none}.other-programs .program-tile,.other-programs .program-tile.exam{min-height:220px;padding:22px}.other-programs .program-tile.piece{min-height:180px}.other-programs .program-tile h3{font-size:24px}.other-programs .program-tile p{font-size:14px}.grade-course{padding:22px 19px}.grade-course h3{font-size:27px}.course-description{font-size:14px}}

/* Two balanced editorial frames keep the studio photography calm and clear */
.hero-image img{object-position:center 58%;}
.gallery-head{align-items:end;margin-bottom:27px;}
.gallery-head h2{font-size:clamp(30px,3.4vw,39px);letter-spacing:-.035em;}
.gallery-head p{font-size:15px;line-height:1.7;margin-top:8px;}
.gallery-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:340px;gap:18px;}
.gallery-photo{display:flex;flex-direction:column;margin:0;min-width:0;min-height:0;overflow:hidden;background:transparent;}
.gallery-photo img{width:100%;height:100%;min-height:0;flex:1;object-fit:cover;filter:saturate(.82);transition:transform .5s ease;}
.gallery-photo:first-child img{object-position:center 57%;}
.gallery-photo:nth-child(2) img{object-position:center 62%;filter:grayscale(.25) contrast(.98);}
.gallery-photo:hover img{transform:scale(1.018);}
.gallery-photo figcaption{display:flex;align-items:baseline;gap:12px;padding:12px 2px 0;color:var(--ink);font:400 14px/1.5 var(--sans);}
.gallery-photo figcaption span{color:var(--wine);font:700 10px/1 var(--sans);letter-spacing:.12em;}
.gallery-photo figcaption strong{font-weight:500;}
@media(max-width:920px){.gallery-grid{grid-template-rows:300px;gap:12px;}}
@media(max-width:600px){.gallery-head{display:block;}.gallery-head .score-link{margin-top:13px;}.gallery-grid{grid-template-columns:1fr;grid-template-rows:235px 235px;gap:17px;}.gallery-photo figcaption{padding-top:9px;font-size:13px;}}

/* Curriculum paths and uncropped portrait photographs */
@media(max-width:920px){.ribbon-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.ribbon-item{border-top:0}.gallery-grid{grid-template-rows:auto;}.ribbon-item:nth-child(3n+1){border-left:1px solid #ffffff32}.ribbon-item:nth-child(2n+1){border-left:0}.ribbon-item:nth-last-child(-n+3){border-bottom:1px solid #ffffff42}.ribbon-item:nth-last-child(-n+2){border-bottom:0}.space-gallery>.wrap{grid-template-columns:.62fr 1.38fr;gap:4%;}.gallery-grid{gap:12px;}}
@media(max-width:600px){.intro-ribbon{padding:20px 0 15px}.gallery-grid{grid-template-rows:auto;}.ribbon-heading{display:block;margin-bottom:11px}.ribbon-heading h2{font-size:19px}.ribbon-heading>p{font-size:11px;margin-top:4px}.ribbon-grid{grid-template-columns:1fr 1fr}.ribbon-item{min-height:67px;padding:10px 7px;grid-template-columns:22px minmax(0,1fr) 10px;gap:6px}.ribbon-item:nth-child(3n+1){border-left:1px solid #ffffff32}.ribbon-item:nth-child(2n+1){border-left:0}.ribbon-note{font-size:19px}.ribbon-copy b{font-size:12px}.ribbon-copy>span{font-size:10px}.ribbon-arrow{font-size:11px}.space-gallery{padding:56px 0}.space-gallery>.wrap{grid-template-columns:1fr;gap:20px}.gallery-head h2{font-size:29px}.gallery-head p{font-size:14px}.gallery-head .score-link{margin-top:10px}.gallery-grid{grid-template-columns:1fr 1fr;gap:9px}.gallery-photo img{aspect-ratio:9/16;}.gallery-photo figcaption{display:block;padding:8px 1px 0;font-size:11px;line-height:1.45}.gallery-photo figcaption span{display:block;margin-bottom:4px;font-size:9px}}

/* Mobile typography: keep the hero calm and course labels intact. */
@media(max-width:600px){.hero-title{font-size:clamp(28px,7.4vw,32px);line-height:1.48}.hero-title>span,.hero-title>em{white-space:normal;text-wrap:balance}.hero-actions .button{width:100%}.ribbon-grid{grid-template-columns:1fr}.intro-ribbon .ribbon-item{min-height:62px;padding:11px 7px;grid-template-columns:28px minmax(0,1fr) 14px;gap:9px;border-left:0;border-bottom:1px solid #ffffff42}.intro-ribbon .ribbon-item:nth-child(2n+1){border-left:0}.intro-ribbon .ribbon-item:nth-child(n+3){border-top:0}.intro-ribbon .ribbon-item:nth-last-child(-n+3){border-bottom:1px solid #ffffff42}.intro-ribbon .ribbon-item:last-child{border-bottom:0}.intro-ribbon .ribbon-copy b{font-size:12px}.intro-ribbon .ribbon-copy>span{font-size:11px}}

/* Editorial type and clearer color hierarchy */
h1,h2,h3{word-break:keep-all;text-wrap:balance}
.hero-title,.section-label h2,.brand-intro h2,.grade-head h2,.stage-copy h2,.visit h2,.page-hero h1,.teacher-hero h1,.teacher-profile h2,.curriculum-feature-head h2{font-family:var(--display)}
.eyebrow{font-family:'Cormorant Garamond',var(--sans);font-size:12px;letter-spacing:.15em}
.section-label .no{color:var(--blue);font-size:13px}
.hero-desc,.section-label p,.brand-intro p,.grade-head>p,.stage-copy p,.gallery-head p,.page-hero p,.lesson-card p,.method-step p,.course-footnote{color:var(--muted)}
.hero-credentials{color:#4d5751;font-size:14px}
.ribbon-copy>span{font-size:12px}
.program-tile p,.method-intro>p,.visit-cell p{font-size:15px}
.footer{color:#4d5751;font-size:13px}
.growth .brand-intro h2 em,.growth .section-label h2 em{color:var(--blue)}
.grade-head h2 em{color:#465c49}
.stage-copy h2 em,.method-step .step-no{color:var(--rose)}
.space-gallery .gallery-head h2{color:var(--blue)}
.quote-inner blockquote em{color:var(--wine);font-style:normal}
.curriculum-feature-head h2 em,.page-hero h1 em{color:var(--blue);font-style:normal}
.hero-title em,.brand-intro h2 em,.grade-head h2 em{font-family:var(--display)}
.nav a.active,.nav a:hover,.phone-link,.score-link{color:var(--wine)}
.course-tag,.curriculum-nav a{border-color:#c8b88e}
.ribbon-note,.ribbon-arrow,.ribbon-heading .eyebrow,.visit-cell b{color:#f4d98f}
.gallery-photo img{filter:saturate(.94)}
.quote-inner blockquote em{font-family:var(--display);color:var(--wine);font-style:normal}
.teacher-layout h2 em{font-family:var(--display);color:#f1d995;font-style:normal}
.stage-copy h2 em{font-family:var(--display);color:var(--wine);font-style:normal}
.visit h2 em{font-family:var(--display);color:#f1d995;font-style:normal}
.brand-intro h2 em,.grade-head h2 em,.curriculum-feature-head h2 em,.page-hero h1 em{font-weight:700}

/* Signature opening: an intimate, story-led promise with an immediate lesson cue. */
.home-hero{min-height:720px;padding:66px 0 84px}
.hero-copy .eyebrow{display:flex;align-items:center;gap:9px;font-size:12px;letter-spacing:.13em}
.hero-copy .eyebrow:before{content:"♪";color:var(--gold);font:400 18px/1 var(--serif)}
.hero-title{font-size:clamp(54px,5.35vw,70px);line-height:1.34;letter-spacing:-.055em;margin:24px 0 22px}
.hero-title>span,.hero-title>em{white-space:nowrap}
.hero-title .accent{color:var(--wine)}
.hero-desc{max-width:550px;color:#3f4742;font-size:18px;line-height:1.95}
.hero-credentials{margin-top:21px;color:#455049;font-size:14px;font-weight:600}
.hero-image{height:560px}
.hero-image:before{border-color:var(--gold)}
.hero-image img{filter:saturate(.94) contrast(1.035)}
.hero-image .stamp{width:82px;height:82px;background:linear-gradient(145deg,#f3e0a7,#e5c76f);font-size:8px;letter-spacing:.12em}
.hero-caption{max-width:calc(100% - 26px);border-left:2px solid var(--gold);font-size:16px}
@media(max-width:920px){.home-hero{min-height:0;padding:48px 0 64px}.hero-title{font-size:clamp(54px,7vw,66px)}.hero-image{height:440px}}
@media(max-width:600px){.home-hero{padding:36px 0 47px;gap:24px}.hero-title{font-size:clamp(31px,8.8vw,36px);line-height:1.45;margin:19px 0 14px}.hero-title>span,.hero-title>em{white-space:normal;text-wrap:balance}.hero-desc{font-size:16px;line-height:1.9}.hero-credentials{font-size:12px;line-height:1.6;margin-top:16px}.hero-image{height:300px;margin:0 11px 0 5px}.hero-image .stamp{width:60px;height:60px;left:-9px;top:17px;font-size:7px}.hero-caption{right:12px;bottom:22px;padding:9px 11px;font-size:12px}}

/* A concise, signature-led opening with a seasonless recital image. */
.hero-title{font-size:clamp(60px,6vw,78px);line-height:1.3;letter-spacing:-.06em}
.hero-image img{object-position:center 52%;filter:contrast(1.05)}
.hero-image .stamp{background:var(--wine);color:#f1d995;border:1px solid #f1d995;box-shadow:inset 0 0 0 3px #ffffff20,0 3px 10px #32262620}
@media(max-width:920px){.hero-title{font-size:clamp(56px,7vw,68px)}}
@media(max-width:600px){.hero-title{font-size:clamp(31px,8.8vw,36px);line-height:1.45}}
