@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600&family=Gowun+Batang:wght@400;700&family=Noto+Sans+KR:wght@400;500;600&display=swap');
:root{--ink:#090806;--brown:#17110d;--brown2:#241811;--gold:#caa35c;--gold2:#ecd49c;--ivory:#f2eadc;--muted:#a99e8d;--line:rgba(202,163,92,.25)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--ivory);font-family:'Noto Sans KR',sans-serif;line-height:1.75;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit}.header{height:84px;position:fixed;z-index:30;inset:0 0 auto;display:flex;align-items:center;padding:0 clamp(24px,5vw,84px);border-bottom:1px solid rgba(255,255,255,.1);background:linear-gradient(180deg,rgba(7,6,5,.75),transparent);transition:.35s}.header.scrolled{height:70px;background:rgba(8,7,5,.94);backdrop-filter:blur(12px)}.brand{display:flex;align-items:center;gap:13px;margin-right:auto}.seal{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--gold);border-radius:50%;color:var(--gold2);font-family:'Gowun Batang';font-size:20px}.brand strong{display:block;font-family:'Gowun Batang';font-size:22px;letter-spacing:.2em}.brand small{display:block;color:var(--gold);font:500 9px/1.3 'Cormorant Garamond';letter-spacing:.2em}.header nav{display:flex;gap:30px}.header nav a{font-size:13px;letter-spacing:.08em;color:#ddd4c8;transition:.2s}.header nav a:hover{color:var(--gold2)}.header-call{margin-left:30px;border:1px solid var(--gold);padding:9px 18px;font-size:13px;color:var(--gold2)}.menu-toggle{display:none;background:none;border:0;padding:10px}.menu-toggle span{display:block;background:var(--gold2);width:26px;height:1px;margin:7px}
.hero{height:100svh;min-height:700px;position:relative;display:grid;place-items:center;text-align:center;overflow:hidden}.hero-image{position:absolute;inset:0;background:url('assets/myeongwol-hero.png') center/cover no-repeat;transform:scale(1.02);animation:breath 12s ease-in-out infinite alternate}.hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,5,4,.45),rgba(5,4,3,.25) 40%,rgba(5,4,3,.86)),linear-gradient(90deg,rgba(5,4,3,.4),transparent 30%,transparent 70%,rgba(5,4,3,.4))}.hero-copy{position:relative;z-index:2;padding:100px 20px 50px;text-shadow:0 3px 20px #000}.kicker,.section-title>p,.reservation-copy>p{font:600 12px 'Cormorant Garamond';letter-spacing:.45em;color:var(--gold2)}.moon-mark{width:52px;height:52px;margin:25px auto 9px;border:1px solid rgba(236,212,156,.7);border-radius:50%;display:grid;place-items:center;color:var(--gold2);font-family:'Gowun Batang';font-size:22px;background:rgba(0,0,0,.28)}h1{font-family:'Gowun Batang';font-size:clamp(64px,9vw,124px);font-weight:400;letter-spacing:.16em;line-height:1;margin:0 0 15px;padding-left:.16em}.hero-en{font:600 13px 'Cormorant Garamond';letter-spacing:.48em;color:var(--gold2)}.ornament{display:flex;align-items:center;justify-content:center;gap:12px;margin:22px auto;width:min(340px,75vw);color:var(--gold)}.ornament span{height:1px;background:linear-gradient(90deg,transparent,var(--gold));width:120px}.ornament span:last-child{background:linear-gradient(90deg,var(--gold),transparent)}.ornament i{font-size:7px}.hero h2{font:400 clamp(20px,2.4vw,30px) 'Gowun Batang';letter-spacing:.1em;margin:0 0 10px}.hero-desc{margin:0 0 28px;color:#ded5c8;font-family:'Gowun Batang';font-size:16px}.hero-actions{display:flex;gap:10px;justify-content:center}.button{min-width:170px;padding:13px 24px;border:1px solid var(--gold);font-size:14px;letter-spacing:.04em;transition:.25s}.button.primary{background:var(--gold);color:#16100b;font-weight:600}.button.secondary{background:rgba(8,7,6,.55);color:var(--gold2)}.button:hover{transform:translateY(-2px);box-shadow:0 8px 30px rgba(202,163,92,.18)}.scroll{position:absolute;z-index:2;left:50%;bottom:22px;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px}.scroll span{font:10px 'Cormorant Garamond';letter-spacing:.25em;color:#b9ad9b}.scroll i{height:35px;width:1px;background:linear-gradient(var(--gold),transparent)}
.section{padding:120px max(24px,calc((100vw - 1180px)/2))}.section-title{text-align:center;margin-bottom:60px}.section-title p{margin:0 0 14px}.section-title h2{font:400 clamp(34px,5vw,56px) 'Gowun Batang';line-height:1.35;margin:0;color:#2b211a}.section-title h2 em{font-style:normal;color:#9b6d28}.section-title.light h2{color:var(--ivory)}.about{background:#eee6d8;color:#4a4036;position:relative}.about:before{content:'明月';position:absolute;right:-1vw;top:5%;font:700 clamp(100px,22vw,340px) 'Gowun Batang';color:rgba(90,63,30,.035);writing-mode:vertical-rl}.about-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;align-items:center;max-width:1000px;margin:auto}.about-art{height:420px;position:relative;display:grid;place-items:center;border:1px solid rgba(117,79,28,.25);background:linear-gradient(145deg,#160f0c,#2c1c13);overflow:hidden}.about-art:after{content:'';position:absolute;inset:18px;border:1px solid rgba(202,163,92,.25)}.big-moon{width:240px;height:240px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#f0dca6,#ad7d36 60%,#6c431b);box-shadow:0 0 80px rgba(202,163,92,.2)}.about-art b{position:absolute;font:400 38px/1.55 'Gowun Batang';letter-spacing:.2em;color:#160e08}.about-copy .lead{font:700 25px/1.7 'Gowun Batang';color:#392b21}.about-copy>p:not(.lead){font-size:16px;color:#71675d;max-width:540px}.signature{margin-top:35px;font:700 26px 'Gowun Batang';color:#34271e}.signature small{font-size:13px;color:#a2783e;margin-left:10px}.features{display:grid;grid-template-columns:repeat(3,1fr);max-width:1100px;margin:100px auto 0;border-top:1px solid rgba(117,79,28,.25)}.features article{padding:40px 35px;border-right:1px solid rgba(117,79,28,.2)}.features article:last-child{border:0}.features span{color:#a3783d;font:600 13px 'Cormorant Garamond'}.features h3{font:700 20px 'Gowun Batang';color:#34271e;margin:12px 0}.features p{font-size:14px;color:#75695e;margin:0}
.course{background:linear-gradient(rgba(12,8,6,.89),rgba(12,8,6,.94)),url('assets/myeongwol-hero.png') center 65%/cover fixed}.course-inner{max-width:1000px;margin:auto}.course-card{border:1px solid var(--line);background:rgba(20,13,9,.82);display:grid;grid-template-columns:1.3fr .55fr .8fr;align-items:center;padding:45px 55px;box-shadow:inset 0 0 0 8px rgba(202,163,92,.035)}.course-card small{font:600 11px 'Cormorant Garamond';letter-spacing:.25em;color:var(--gold)}.course-card h3{font:400 28px 'Gowun Batang';margin:8px 0}.course-card p{color:var(--muted);font-size:14px;margin:0}.duration{display:flex;align-items:baseline;justify-content:center;border-left:1px solid var(--line);border-right:1px solid var(--line)}.duration strong{font:500 64px 'Cormorant Garamond';color:var(--gold2)}.duration span{font:12px 'Cormorant Garamond';letter-spacing:.15em;color:var(--muted);margin-left:5px}.price{padding-left:35px}.price small{display:block}.price strong{font:500 35px 'Cormorant Garamond';color:var(--gold2)}.price em{font:400 14px 'Noto Sans KR';font-style:normal;margin-left:5px}.course-note{text-align:center;color:#9d9284;font-size:13px;margin:25px 0 0}
.therapist{background:#eee6d8;color:#3c3026}.profile-teaser{max-width:950px;margin:auto;display:grid;grid-template-columns:.8fr 1.2fr;min-height:390px;background:#15100d;box-shadow:0 30px 80px rgba(53,38,24,.2);color:var(--ivory)}.profile-pattern{display:grid;place-items:center;position:relative;overflow:hidden;background:radial-gradient(circle at 50% 45%,rgba(202,163,92,.18),transparent 38%),linear-gradient(145deg,#2b1c13,#0e0b09)}.profile-pattern:before,.profile-pattern:after{content:'';position:absolute;inset:24px;border:1px solid var(--line);transform:rotate(45deg)}.profile-pattern:after{inset:70px}.profile-pattern span{width:110px;height:110px;border-radius:50%;display:grid;place-items:center;background:var(--gold);color:#17100b;font:40px 'Gowun Batang';z-index:1}.profile-teaser>div:last-child{padding:65px}.profile-teaser p{color:var(--gold);font:600 12px 'Cormorant Garamond';letter-spacing:.2em}.profile-teaser h3{font:400 36px 'Gowun Batang';margin:10px 0}.profile-teaser>div>span{display:block;color:#afa597;font-size:15px;max-width:440px}.profile-teaser a{display:inline-block;color:var(--gold2);margin-top:30px;border-bottom:1px solid var(--gold);padding-bottom:6px}.profile-teaser a b{margin-left:20px}
.guide{background:#130e0b}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);max-width:1100px;margin:auto;border:1px solid var(--line)}.guide-grid article{padding:45px;border-right:1px solid var(--line)}.guide-grid article:last-child{border:0}.guide-grid small{font:600 11px 'Cormorant Garamond';letter-spacing:.25em;color:var(--gold)}.guide-grid h3{font:400 22px 'Gowun Batang';margin:14px 0;color:var(--gold2)}.guide-grid p{margin:0;color:#a89e91;font-size:14px}.notice{max-width:1100px;margin:35px auto 0;padding:24px 30px;border-left:2px solid var(--gold);background:rgba(255,255,255,.03);display:flex;gap:28px}.notice b{white-space:nowrap;color:var(--gold2);font:700 16px 'Gowun Batang'}.notice p{margin:0;color:#9d9285;font-size:13px}.reservation{height:580px;display:grid;place-items:center;position:relative;overflow:hidden;text-align:center}.reservation-bg{position:absolute;inset:0;background:linear-gradient(rgba(7,5,4,.6),rgba(7,5,4,.88)),url('assets/myeongwol-hero.png') center/cover no-repeat;filter:saturate(.75)}.reservation-copy{position:relative;padding:40px 20px}.reservation h2{font:400 clamp(38px,6vw,66px)/1.35 'Gowun Batang';margin:10px 0 15px}.reservation-copy>span{color:#bbb0a2}.reservation .hero-actions{margin-top:32px}footer{text-align:center;background:#080706;padding:55px 20px 75px;border-top:1px solid var(--line)}.footer-brand{display:flex;justify-content:center;align-items:center;gap:12px}.footer-brand strong{font:400 24px 'Gowun Batang';letter-spacing:.15em}.footer-brand .seal{width:34px;height:34px;font-size:17px}footer p{color:#8f8578;font-size:13px;margin:18px 0 8px}footer small{color:#5f574f;font:10px 'Cormorant Garamond';letter-spacing:.15em}.mobile-bar{display:none}.reveal{opacity:0;transform:translateY(25px);transition:opacity .8s,transform .8s}.reveal.visible{opacity:1;transform:none}@keyframes breath{to{transform:scale(1.07)}}
@media(max-width:820px){.header{height:68px;padding:0 20px;background:rgba(8,7,5,.88)}.brand strong{font-size:18px}.brand small{font-size:7px}.header .seal{width:34px;height:34px;font-size:17px}.header-call{display:none}.menu-toggle{display:block;z-index:2}.header nav{position:fixed;inset:68px 0 auto;background:rgba(8,7,5,.97);display:none;flex-direction:column;gap:0;padding:15px 24px 25px;border-bottom:1px solid var(--line)}.header nav.open{display:flex}.header nav a{padding:12px 0}.hero{min-height:690px}.hero-copy{padding-top:80px}.hero-en{font-size:10px;letter-spacing:.3em}.hero-desc{font-size:14px}.hero-actions{flex-direction:column;align-items:center}.button{width:230px}.scroll{display:none}.section{padding:85px 22px}.section-title{margin-bottom:42px}.about-layout{grid-template-columns:1fr;gap:40px}.about-art{height:300px}.big-moon{width:180px;height:180px}.about-copy{text-align:center}.about-copy .lead{font-size:21px}.features{grid-template-columns:1fr;margin-top:60px}.features article{border-right:0;border-bottom:1px solid rgba(117,79,28,.2);padding:28px 10px;text-align:center}.course{background-attachment:scroll}.course-card{grid-template-columns:1fr;padding:35px 28px;text-align:center}.duration{border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:25px 0;padding:15px}.price{padding:0}.profile-teaser{grid-template-columns:1fr}.profile-pattern{min-height:260px}.profile-teaser>div:last-child{padding:40px 28px}.guide-grid{grid-template-columns:1fr}.guide-grid article{border-right:0;border-bottom:1px solid var(--line);padding:30px}.notice{display:block}.notice b{display:block;margin-bottom:8px}.reservation{height:610px}footer{padding-bottom:110px}.mobile-bar{position:fixed;z-index:40;display:grid;grid-template-columns:1fr 1.3fr;bottom:0;left:0;right:0;height:62px;background:#0b0907;border-top:1px solid var(--gold)}.mobile-bar a{display:grid;place-items:center;font-size:14px}.mobile-bar a:last-child{background:var(--gold);color:#17100b;font-weight:600}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-image{animation:none}.reveal{opacity:1;transform:none;transition:none}}
.brand img{display:block;width:150px;height:72px;object-fit:contain;object-position:left center;filter:drop-shadow(0 2px 8px rgba(0,0,0,.45))}
.footer-brand img{width:190px;height:190px;object-fit:contain}
.blossom-mark{font-family:'Gowun Batang';font-size:30px;font-weight:700;color:#e2bb70;background:radial-gradient(circle,rgba(202,163,92,.16),rgba(0,0,0,.34));box-shadow:0 0 0 5px rgba(202,163,92,.06),0 0 28px rgba(202,163,92,.18)}
.hero h1{font-weight:700;-webkit-text-stroke:.35px rgba(242,234,220,.55);text-shadow:0 3px 20px #000,0 0 1px #f2eadc}
.official-mark{overflow:visible;border-radius:0;background:transparent;border:0;box-shadow:none}
.official-mark img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;max-width:none;transform:none;filter:drop-shadow(0 3px 9px rgba(0,0,0,.5))}
.hero-official-mark{width:112px;height:118px;margin:8px auto 4px}

/* Rich editorial treatment below the hero */
.ornate-section{position:relative;overflow:hidden;background:#0d0907;color:var(--ivory)}
.ornate-section:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 49.9%,rgba(202,163,92,.08) 50%,transparent 50.1%),radial-gradient(circle at 10% 25%,rgba(160,102,34,.13),transparent 27%);pointer-events:none}
.ornate-section:after{content:'✦';position:absolute;right:4vw;top:6%;font-size:120px;line-height:1;color:rgba(202,163,92,.045);transform:rotate(20deg)}
.vertical-name{position:absolute;right:3.5vw;top:130px;z-index:1;writing-mode:vertical-rl;font:400 18px 'Gowun Batang';letter-spacing:.7em;color:rgba(236,212,156,.28);border-left:1px solid var(--line);padding-left:14px}
.about{padding-top:145px;padding-bottom:130px}
.about-layout{position:relative;z-index:2;grid-template-columns:1.08fr .92fr;gap:7vw;max-width:1180px}
.about-gallery{position:relative;min-height:690px;padding:0 45px 45px 0}
.gallery-main{position:relative;height:640px;overflow:hidden;border:1px solid rgba(236,212,156,.42);box-shadow:0 35px 80px rgba(0,0,0,.55)}
.gallery-main img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s ease}.gallery-main:hover img{transform:scale(1.035)}
.gallery-main:after{content:'';position:absolute;inset:16px 61px 61px 16px;border:1px solid rgba(236,212,156,.22);pointer-events:none}
.gallery-seal{position:absolute;right:0;bottom:90px;width:126px;height:126px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#e1c27a,#8c5d21);color:#1a1008;border:7px solid #0d0907;box-shadow:0 15px 40px rgba(0,0,0,.5)}
.gallery-seal.official-mark{display:block;right:-8px;bottom:74px;width:138px;height:145px;background:transparent;border:0;box-shadow:none}
.gallery-seal span{font:400 40px/1 'Gowun Batang'}.gallery-seal small{position:absolute;bottom:21px;font-size:9px;letter-spacing:.15em}
.gallery-caption{position:absolute;left:28px;bottom:0;display:flex;align-items:center;gap:20px;background:#21150e;border-left:2px solid var(--gold);padding:18px 24px 18px 20px;box-shadow:0 15px 35px rgba(0,0,0,.4)}
.gallery-caption b{color:var(--gold2);font:400 20px 'Gowun Batang';letter-spacing:.18em}.gallery-caption span{color:#998d7e;font-size:12px}
.section-title.align-left{text-align:left;margin-bottom:30px}.section-title.align-left h2{color:var(--ivory);font-size:clamp(40px,5vw,65px)}.section-title.align-left h2 em{color:var(--gold2)}
.about-copy .lead{font-size:24px;color:var(--gold2);margin-top:30px}.about-copy>p:not(.lead){color:#aba092;font-size:16px;line-height:2;max-width:510px}
.brush-line{height:5px;width:130px;background:linear-gradient(90deg,var(--gold),transparent);clip-path:polygon(0 35%,80% 0,100% 45%,70% 70%,0 100%)}
.about-quote{display:flex;align-items:center;gap:20px;margin:32px 0 26px;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:#ddd1c0;font:400 17px/1.8 'Gowun Batang'}
.about-quote i{font:500 60px/1 'Cormorant Garamond';color:var(--gold)}
.signature{color:var(--ivory)}.features{position:relative;z-index:2;margin-top:115px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.features article{position:relative;padding:45px 40px;border-color:var(--line);background:linear-gradient(180deg,rgba(255,255,255,.018),transparent)}
.features article:hover{background:rgba(202,163,92,.07)}.features span{display:inline-grid;place-items:center;width:35px;height:35px;border:1px solid var(--gold);border-radius:50%;color:var(--gold2)}
.features h3{color:var(--gold2);font-size:21px}.features p{color:#998e80}
.course-ornate{position:relative;padding-top:135px;padding-bottom:135px;background:linear-gradient(90deg,rgba(7,5,4,.97),rgba(16,10,6,.76),rgba(7,5,4,.94)),url('assets/myeongwol-room.png') center 58%/cover fixed}
.course-ornate:before,.course-ornate:after{content:'';position:absolute;left:0;right:0;height:34px;background:repeating-linear-gradient(45deg,transparent 0 13px,rgba(202,163,92,.22) 14px 15px,transparent 16px 28px)}
.course-ornate:before{top:0}.course-ornate:after{bottom:0;transform:rotate(180deg)}
.course-emblem{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;margin:-35px auto 35px;background:#0d0907;border:1px solid var(--gold);box-shadow:0 0 0 8px rgba(202,163,92,.08)}
.course-emblem.official-mark{width:104px;height:110px;display:block;margin:-54px auto 24px;background:transparent;border:0;box-shadow:none}
.course-emblem span{font:24px 'Gowun Batang';color:var(--gold2)}
.course-card{position:relative;grid-template-columns:1.2fr .55fr .8fr;padding:60px;border:1px solid rgba(236,212,156,.5);background:linear-gradient(125deg,rgba(20,12,8,.98),rgba(38,23,13,.89));box-shadow:inset 0 0 0 1px #0b0806,inset 0 0 0 10px rgba(202,163,92,.065),0 35px 80px rgba(0,0,0,.55)}
.course-card:before,.course-card:after{content:'◆';position:absolute;color:var(--gold);font-size:9px}.course-card:before{left:18px;top:14px}.course-card:after{right:18px;bottom:14px}
.course-card h3{font-size:31px;line-height:1.5;color:var(--gold2)}.course-tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:20px}.course-tags span{border:1px solid var(--line);padding:4px 8px;color:#8f806e;font:9px 'Cormorant Garamond';letter-spacing:.1em}
.duration strong{font-size:78px}.price strong{font-size:38px}
.therapist{padding-top:135px;padding-bottom:115px;background:linear-gradient(120deg,#0b0806,#1c110b 55%,#0b0806)}
.profile-stage{position:relative;z-index:2;display:grid;grid-template-columns:1.08fr .92fr;max-width:1120px;min-height:690px;margin:auto;border:1px solid rgba(236,212,156,.42);box-shadow:0 40px 100px rgba(0,0,0,.58)}
.therapist-grid{position:relative;z-index:3;display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:1120px;margin:0 auto 90px}
.therapist-card{display:block;padding:0;border:1px solid rgba(202,163,92,.38);background:#120c08;color:var(--ivory);text-align:left;cursor:pointer;overflow:hidden;transition:.35s}.therapist-card:hover{transform:translateY(-8px);border-color:var(--gold);box-shadow:0 25px 55px rgba(0,0,0,.55)}
.therapist-photo{display:block;height:430px;overflow:hidden}.therapist-photo img{width:100%;height:100%;object-fit:cover;object-position:center top;transition:.6s}.therapist-card:hover img{transform:scale(1.035)}
.therapist-copy{display:block;position:relative;padding:25px 26px 28px;border-top:1px solid var(--line)}.therapist-copy small{color:var(--gold);font:600 10px 'Cormorant Garamond';letter-spacing:.25em}.therapist-copy strong{display:block;font:700 27px 'Gowun Batang';color:var(--gold2);margin:7px 0}.therapist-copy span,.therapist-copy em{display:block;color:#9e9283;font-size:13px;font-style:normal}.therapist-copy b{display:block;margin-top:18px;color:#ceb276;font:600 11px 'Cormorant Garamond';letter-spacing:.13em}
.profile-empty{grid-column:1/-1;text-align:center;border:1px solid var(--line);padding:50px;background:rgba(255,255,255,.018)}.profile-empty img{width:120px;height:120px;object-fit:contain}.profile-empty h3{font:700 23px 'Gowun Batang';color:var(--gold2);margin:10px}.profile-empty p{color:#817568}
.profile-modal{display:none;position:fixed;z-index:100;inset:0;background:rgba(0,0,0,.88);padding:30px;overflow:auto}.profile-modal.show{display:grid;place-items:center}.profile-modal-box{position:relative;width:min(980px,100%);background:#100b08;border:1px solid var(--gold)}.profile-modal-close{position:absolute;z-index:4;right:12px;top:8px;width:42px;height:42px;border:0;background:rgba(0,0,0,.65);color:var(--gold2);font-size:30px;cursor:pointer}.profile-detail{display:grid;grid-template-columns:1fr 1fr;min-height:600px}.profile-detail-photo img{width:100%;height:100%;min-height:600px;object-fit:cover;object-position:center top}.profile-detail-info{padding:65px 55px}.profile-detail-info>small{color:var(--gold);font:600 11px 'Cormorant Garamond';letter-spacing:.3em}.profile-detail-info h2{font:700 48px 'Gowun Batang';color:var(--gold2);margin:10px 0 25px}.profile-detail-info dl{display:grid;grid-template-columns:1fr 1fr;margin:0 0 25px;border-top:1px solid var(--line)}.profile-detail-info dl div{padding:14px 0;border-bottom:1px solid var(--line)}.profile-detail-info dt{color:#786c5e;font:600 10px 'Cormorant Garamond';letter-spacing:.15em}.profile-detail-info dd{margin:4px 0 0;color:#ded1bc}.profile-detail-info p{white-space:pre-line;color:#9c9081}.profile-detail-actions{display:flex;gap:8px;margin-top:28px}.profile-detail-actions a{flex:1;text-align:center;border:1px solid var(--gold);padding:12px}.profile-detail-actions a:first-child{background:var(--gold);color:#140d08;font-weight:600}
.profile-photo{position:relative;overflow:hidden;min-height:690px}.profile-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,3,2,.62),transparent 45%),linear-gradient(90deg,transparent 80%,rgba(8,5,3,.45))}
.profile-photo img{width:100%;height:100%;object-fit:cover;object-position:center top;transition:transform 1.2s ease}.profile-photo:hover img{transform:scale(1.025)}
.photo-frame{position:absolute;z-index:2;inset:20px;border:1px solid rgba(236,212,156,.42)}.photo-frame:before,.photo-frame:after{content:'◆';position:absolute;color:var(--gold);font-size:8px;top:-7px}.photo-frame:before{left:-4px}.photo-frame:after{right:-4px}
.photo-label{position:absolute;z-index:3;left:38px;bottom:35px;color:var(--gold2);font:600 12px/1.7 'Cormorant Garamond';letter-spacing:.3em}
.profile-info{position:relative;padding:70px 60px;background:radial-gradient(circle at 100% 0,rgba(202,163,92,.16),transparent 27%),#100b08}
.profile-info:after{content:'月';position:absolute;right:16px;bottom:-65px;font:400 260px 'Gowun Batang';color:rgba(202,163,92,.035)}
.profile-info .section-title{position:relative;z-index:1}.profile-info .section-title h2{font-size:56px;line-height:1.3}
.profile-divider{display:flex;align-items:center;color:var(--gold);margin:22px 0}.profile-divider:before,.profile-divider:after{content:'';height:1px;background:var(--line);flex:1}.profile-divider span{font-size:7px;margin:0 10px}
.profile-lead{font:400 22px/1.75 'Gowun Batang';color:var(--gold2)}.profile-points{display:grid;gap:10px;margin:28px 0}.profile-points span{border-bottom:1px solid var(--line);padding:9px 0;color:#b4a898;font-size:14px}.profile-points b{color:var(--gold);font:600 11px 'Cormorant Garamond';margin-right:13px}
.profile-info>p:not(.profile-lead){color:#8f8476;font-size:14px;line-height:1.9}.profile-button{position:relative;z-index:2;margin-top:25px;display:flex;justify-content:space-between;align-items:center;width:100%;border:1px solid var(--gold);padding:15px 20px;color:var(--gold2);transition:.25s}.profile-button:hover{background:var(--gold);color:#160e09}
.profile-marquee{position:relative;z-index:2;width:100vw;margin:80px 0 -30px calc(50% - 50vw);overflow:hidden;white-space:nowrap;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:13px 0;color:rgba(236,212,156,.34);font:600 13px 'Cormorant Garamond';letter-spacing:.45em}.profile-marquee span{display:inline-block;animation:marquee 18s linear infinite}
@keyframes marquee{to{transform:translateX(-50%)}}
.guide{position:relative;background:linear-gradient(135deg,#17100c,#080706)}.guide:before{content:'案 山';position:absolute;left:3vw;top:90px;writing-mode:vertical-rl;font:400 70px 'Gowun Batang';letter-spacing:.2em;color:rgba(202,163,92,.035)}
.guide-grid{position:relative;z-index:1;background:rgba(8,6,4,.55);box-shadow:0 35px 70px rgba(0,0,0,.35)}.guide-grid article{min-height:230px;background:linear-gradient(145deg,rgba(255,255,255,.025),transparent);transition:.3s}.guide-grid article:hover{transform:translateY(-6px);background:rgba(202,163,92,.07)}.guide-grid h3{font-size:25px}.notice{position:relative;z-index:1}
@media(max-width:820px){
  .brand img{width:118px;height:58px}
  .vertical-name{display:none}.about{padding-top:90px}.about-layout{grid-template-columns:1fr}.about-gallery{min-height:510px;padding:0 20px 30px 0}.gallery-main{height:480px}.gallery-main:after{inset:14px 34px 44px 14px}.gallery-seal{width:96px;height:96px;bottom:55px}.gallery-seal.official-mark{right:-2px;bottom:54px;width:108px;height:114px}.gallery-seal span{font-size:30px}.gallery-seal small{bottom:14px}.gallery-caption{left:12px;padding:13px 16px}.gallery-caption span{display:none}
  .section-title.align-left{text-align:left}.about-copy{text-align:left}.about-copy .lead{font-size:20px}.about-quote{font-size:15px}.features{margin-top:70px}
  .course-ornate{background-attachment:scroll}.course-card{padding:42px 26px}.course-card h3{font-size:26px}.course-tags{justify-content:center}
  .profile-stage{grid-template-columns:1fr;min-height:0}.profile-photo{min-height:540px}.profile-info{padding:50px 28px}.profile-info .section-title h2{font-size:44px}.profile-marquee{margin-top:60px}
  .therapist-grid{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:60px}.therapist-photo{height:320px}.therapist-copy{padding:18px}.therapist-copy strong{font-size:23px}.profile-modal{padding:12px}.profile-detail{grid-template-columns:1fr}.profile-detail-photo img{min-height:0;height:480px}.profile-detail-info{padding:38px 24px}.profile-detail-info h2{font-size:38px}
  .guide:before{display:none}
}
@media(max-width:520px){.therapist-grid{grid-template-columns:1fr}.therapist-photo{height:440px}}

/* ===== 2026-09-14 MOBILE COURSE FIX ===== */
@media (max-width: 820px) {
  .course.section.course-ornate {
    padding: 78px 16px 92px;
  }

  .course .section-title {
    margin-bottom: 34px;
  }

  .course-emblem.official-mark {
    width: 86px;
    height: 92px;
    margin: -28px auto 20px;
  }

  .course-emblem.official-mark img {
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .course-card {
    width: 100%;
    box-sizing: border-box;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 0;
    padding: 30px 22px 26px;
    text-align: center;
    overflow: hidden;
  }

  .course-intro {
    grid-column: 1 / -1;
    min-width: 0;
    padding-bottom: 24px;
  }

  .course-card .course-intro small {
    display: block;
    margin-bottom: 10px;
  }

  .course-card h3 {
    width: 100%;
    margin: 0 auto 12px;
    font-size: clamp(24px, 7vw, 30px);
    line-height: 1.55;
    letter-spacing: -0.02em;
    white-space: nowrap;
    word-break: keep-all;
    overflow-wrap: normal;
  }

  .course-card .course-intro p {
    max-width: 290px;
    margin: 0 auto;
    font-size: 13px;
    line-height: 1.75;
    word-break: keep-all;
  }

  .course-tags {
    justify-content: center;
    margin-top: 16px;
  }

  .duration,
  .price {
    min-width: 0;
    min-height: 118px;
    margin: 0;
    padding: 18px 8px 8px;
    border-top: 1px solid var(--line);
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
  }

  .duration {
    border-right: 1px solid var(--line);
    border-left: 0;
    border-bottom: 0;
  }

  .duration strong {
    font-size: clamp(52px, 15vw, 68px);
    line-height: .9;
  }

  .duration span {
    margin-left: 5px;
    font-size: 10px;
  }

  .price {
    flex-direction: column;
    padding-left: 8px;
  }

  .price small {
    margin-bottom: 8px;
    font-size: 9px;
    letter-spacing: .18em;
    white-space: nowrap;
  }

  .price strong {
    display: block;
    font-size: clamp(26px, 8vw, 34px);
    line-height: 1.05;
    white-space: nowrap;
  }

  .price em {
    display: inline;
    margin-left: 3px;
    font-size: 12px;
  }

  .course-note {
    max-width: 310px;
    margin: 18px auto 0;
    line-height: 1.7;
    word-break: keep-all;
  }
}

@media (max-width: 390px) {
  .course.section.course-ornate { padding-left: 12px; padding-right: 12px; }
  .course-card { padding-left: 16px; padding-right: 16px; }
  .course-card h3 { font-size: 23px; }
  .price strong { font-size: 26px; }
}
