/* Only the salon hero alignment and the new three-tab area differ from the live page. */
.salon-preview .hero--salon-preview .hero-content{top:auto;bottom:22%}
.salon-preview .hero--salon-preview .hero-content p{margin-bottom:0}
.salon-hero-rail{position:absolute;z-index:4;right:clamp(25px,5vw,92px);top:52%;transform:translateY(-50%);width:205px;display:grid;gap:9px}
.salon-hero-rail button{position:relative;display:flex;align-items:center;gap:12px;width:100%;min-height:59px;padding:10px 14px;color:#f5edf1;background:linear-gradient(110deg,#211a29ed,#17141fdb);border:1px solid #d5b68970;border-left:2px solid #c9ab7a;text-align:left;box-shadow:0 12px 28px #09080d55;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:transform .22s,background .22s,border-color .22s}
.salon-hero-rail button:hover,.salon-hero-rail button:focus-visible{transform:translateX(-7px);background:#382a3fe8;border-color:#e1c590}
.salon-hero-rail button[aria-current=true]{background:linear-gradient(110deg,#4b3547f0,#2a202fe8);border-left-color:#edcf93}
.salon-hero-rail .rail-number{font:italic 18px Georgia,serif;color:#d5b687}
.salon-hero-rail .rail-label{font-size:13px;font-weight:500;letter-spacing:.01em;white-space:nowrap}
.salon-hero-rail .rail-arrow{margin-left:auto;color:#e5cda4;font-size:18px;line-height:1}
.salon-chapter{padding-bottom:70px}
.salon-tabs{margin-top:35px;scroll-margin-top:70px}
.salon-tab-summary{margin-top:12px;color:#bfb5c3;font-size:12px;white-space:nowrap}
.salon-tabs-heading{display:flex;align-items:end;justify-content:space-between;gap:48px;margin-bottom:38px}
.salon-tabs-heading h2{margin-top:13px}
.salon-tabs-heading p{max-width:420px;font-size:13px}
.salon-tablist{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:linear-gradient(90deg,#181420,#211927,#181420)}
.salon-tablist button{min-height:74px;padding:18px 30px;border:0;border-bottom:2px solid transparent;background:transparent;color:#c4b8c9;text-align:left;font:500 16px 'Noto Sans KR',sans-serif;transition:color .18s,background .18s}
.salon-tablist button+button{border-left:1px solid var(--line)}
.salon-tablist button span{font:italic 18px Georgia,serif;color:#a99171;margin-right:13px}
.salon-tablist button[aria-selected=true]{background:#33273a;color:var(--ivory);border-bottom-color:var(--gold)}
.salon-tablist button:hover{background:#302439;color:var(--ivory)}
.salon-panel{padding-top:32px}
.salon-panel[hidden]{display:none}
.salon-panel-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:28px}
.salon-panel-heading h3{font-size:34px;margin-top:8px}
.salon-panel-heading p{font-size:13px;max-width:500px}
.salon-panel-heading label{font-size:11px;color:var(--gold)}
.salon-panel-heading select{display:block;min-height:42px;margin-top:7px;padding:8px 14px;background:#211b2a;color:var(--ivory);border:1px solid var(--line)}
.salon-schedule-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.9fr);gap:22px}
.salon-calendar-card,.salon-selected-card,.salon-detail-copy,.salon-poster-column,.salon-form,.salon-apply-note{background:#1b1724;border:1px solid var(--line)}
.salon-calendar-card{padding:28px}
.salon-month-controls{display:flex;align-items:center;justify-content:center;gap:20px;padding-bottom:17px;border-bottom:1px solid var(--line)}
.salon-month-controls button{width:35px;height:35px;background:transparent;color:var(--gold);border:1px solid var(--line);font:25px Georgia,serif;line-height:1}
.salon-month-controls button:hover{background:var(--plum)}
.salon-month-controls select{background:transparent;border:0;color:var(--ivory);font:27px 'Noto Serif KR',serif;text-align:center;padding:3px 15px;min-width:210px}
.salon-month-controls option{background:#211b2a;font:14px 'Noto Sans KR',sans-serif}
.salon-calendar-scroll{overflow-x:auto}
.salon-calendar{width:100%;table-layout:fixed;border-collapse:collapse;margin-top:16px;min-width:575px}
.salon-calendar th{height:34px;color:#b9aeba;font-size:11px;font-weight:500}
.salon-calendar th:first-child{color:#d2a8ae}
.salon-calendar td{height:80px;border:1px solid #c9ab7a26;vertical-align:top;padding:7px;transition:background .16s}
.salon-calendar td[data-date]{cursor:pointer}
.salon-calendar td[data-date]:hover,.salon-calendar td[data-selected=true]{background:#3a293e}
.salon-calendar td.is-outside{background:#12101966}
.salon-date-number{display:block;color:#ebe4e9;font-size:11px;line-height:1.2}
.salon-calendar td:first-child .salon-date-number{color:#ddadb2}
.salon-calendar-event{display:block;color:#e9ced2;text-align:left;background:none;border:0;padding:4px 0 0;width:100%;line-height:1.32;font-size:10px}
.salon-calendar-event strong{display:block;color:#e9d5b0;font-weight:600;word-break:keep-all}
.salon-calendar-event em{display:block;color:#c4bbc7;font-style:normal;font-size:9px;overflow-wrap:anywhere}
.salon-calendar-event .heart{color:#cb9da9;font-size:13px;margin-right:3px}
.salon-short-title{display:none}
.salon-calendar-note{font-size:11px;margin-top:18px;color:#a99dae}
.salon-selected-card{overflow:hidden;display:flex;flex-direction:column;min-height:550px}
.salon-selected-image{height:265px;overflow:hidden;background:#100e16}
.salon-selected-card img{width:100%;height:auto;display:block}
.salon-selected-body{padding:28px;flex:1;display:flex;flex-direction:column;align-items:flex-start}
.salon-selected-body h4{font:400 27px/1.5 'Noto Serif KR',serif;margin:12px 0}
.salon-selected-body p{font-size:12px}
.salon-selected-body dl{width:100%;margin:15px 0 22px}
.salon-selected-body dl div{display:flex;justify-content:space-between;gap:13px;padding:8px 0;border-bottom:1px solid var(--line)}
.salon-selected-body dt{font-size:11px;color:#aca1af}
.salon-selected-body dd{font-size:11px;text-align:right;margin:0}
.salon-selected-body .button{margin-top:auto}
.salon-selected-card.is-empty{justify-content:center;padding:35px;min-height:550px}
.salon-selected-card.is-empty h4{font:400 25px 'Noto Serif KR',serif;margin:18px 0}
.salon-selected-card.is-empty p{font-size:13px}
.salon-detail-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:22px;align-items:stretch}
.salon-poster-column{padding:24px}
.salon-poster-main{display:block;width:100%;max-height:665px;object-fit:contain;background:#100e16}
.salon-poster-visual{aspect-ratio:1.48;overflow:hidden;background:#100e16}
.salon-poster-visual img{width:100%;height:auto;display:block}
.salon-poster-visual.is-full{aspect-ratio:auto;overflow:visible}
.salon-poster-visual.is-full img{width:100%;height:auto;max-height:none;object-fit:contain}
.salon-poster-date{display:grid;gap:5px;padding:19px;background:#2b2231;border:1px solid var(--line);border-top:0}
.salon-poster-date strong{font:400 23px/1.4 'Noto Serif KR',serif}
.salon-poster-date span{font-size:12px;color:#d7cbd7}
.salon-poster-note{margin-bottom:13px;padding:9px 12px;border:1px solid var(--line);color:#eed7c5;background:#302439;font-size:11px}
.salon-poster-switch{display:flex;gap:10px;margin-top:14px}
.salon-poster-switch button{width:72px;height:84px;padding:0;border:2px solid transparent;background:#101019;opacity:.6}
.salon-poster-switch button[aria-pressed=true]{border-color:var(--gold);opacity:1}
.salon-poster-switch img{width:100%;height:100%;object-fit:cover}
.salon-poster-warning{font-size:11px;line-height:1.7;margin-top:15px;color:#dec5b5;border-top:1px solid var(--line);padding-top:14px}
.salon-detail-copy{padding:clamp(30px,4vw,58px)}
.salon-detail-copy h4{font:400 clamp(30px,3vw,41px)/1.45 'Noto Serif KR',serif;margin:15px 0 23px}
.salon-detail-copy p{font-size:14px}
.salon-detail-facts{margin:30px 0}
.salon-detail-facts div{display:flex;justify-content:space-between;gap:25px;padding:14px 0;border-top:1px solid var(--line)}
.salon-detail-facts dt{font-size:12px;color:#b4a9b5}
.salon-detail-facts dd{text-align:right;font-size:12px;max-width:62%;margin:0}
.salon-detail-flow{padding:22px;border:1px solid var(--line);background:#281f2e;margin-bottom:30px}
.salon-detail-flow strong{display:block;font-size:12px;color:var(--gold);margin-bottom:7px}
.salon-detail-flow p{font-size:12px}
.salon-apply-grid{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:22px;align-items:start}
.salon-apply-note{padding:42px}
.salon-mark{font:38px Georgia,serif;color:var(--gold)}
.salon-apply-note h4{font:400 31px/1.5 'Noto Serif KR',serif;margin:25px 0 18px}
.salon-apply-note p{font-size:13px}
.salon-important{margin-top:38px;padding:20px;border-left:2px solid var(--gold);background:#2b2231}
.salon-important strong,.salon-important span{display:block}
.salon-important strong{color:var(--gold);font-size:11px;margin-bottom:9px}
.salon-important span{color:#e1d6e0;font-size:12px;line-height:1.8}
.salon-join-link{display:inline-block;color:var(--gold);font-size:12px;margin-top:28px;border-bottom:1px solid var(--line);padding-bottom:6px}
.salon-form{padding:clamp(25px,4vw,46px)}
.salon-form label{display:block;color:#ded4e0;font-size:12px;margin-bottom:19px}
.salon-form label span{color:#a99bab}
.salon-form input:not([type=checkbox]),.salon-form select,.salon-form textarea{display:block;width:100%;background:#13111b;color:var(--ivory);border:1px solid #c9ab7a55;border-radius:2px;padding:11px 13px;margin-top:7px;min-height:46px;font-size:14px}
.salon-form textarea{resize:vertical}
.salon-form-pair{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.salon-form-info{font-size:11px;line-height:1.8;padding:17px;border:1px solid var(--line);background:#261e2c;margin:21px 0}
.salon-form .salon-confirm{display:flex;align-items:flex-start;gap:10px;font-size:11px}
.salon-confirm input{margin-top:3px;accent-color:var(--gold);width:17px;height:17px;flex:0 0 17px}
.salon-form .button{margin-top:12px}
#salon-form-status{margin-top:18px;padding:14px;border:1px solid var(--line);color:#e7dac5}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1000px){.salon-schedule-grid{grid-template-columns:minmax(0,1fr) minmax(270px,.8fr)}.salon-calendar-card{padding:18px}.salon-calendar{min-width:490px}.salon-calendar td{height:73px}.salon-selected-image{height:215px}}
@media(min-width:651px) and (max-width:1000px){.salon-hero-rail{right:3%;width:165px}.salon-hero-rail button{min-height:53px;padding:8px 10px}.salon-hero-rail .rail-label{font-size:11px}.salon-hero-rail .rail-number{font-size:15px}}
@media(max-width:800px){.salon-tabs-heading{display:block}.salon-tabs-heading p{margin-top:20px}.salon-schedule-grid,.salon-detail-grid,.salon-apply-grid{grid-template-columns:minmax(0,1fr)}.salon-calendar-card,.salon-selected-card{min-width:0}.salon-selected-card{min-height:0}.salon-selected-card.is-empty{min-height:280px}.salon-selected-image{height:300px}.salon-calendar{min-width:575px}.salon-apply-note{padding:29px}}
@media(max-width:650px){.salon-hero-rail{position:relative;inset:auto;transform:none;width:86%;margin:-104px auto 104px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.salon-hero-rail button{min-height:52px;justify-content:center;gap:4px;padding:8px 3px;box-shadow:none;border-left-width:1px;border-bottom:2px solid #c9ab7a55}.salon-hero-rail button:hover,.salon-hero-rail button:focus-visible{transform:translateY(-3px)}.salon-hero-rail button[aria-current=true]{border-bottom-color:#edcf93}.salon-hero-rail .rail-number{font-size:13px}.salon-hero-rail .rail-label{font-size:10px}.salon-hero-rail .rail-arrow{display:none}}
@media(max-width:650px){.salon-preview .hero--salon-preview .hero-content{top:auto;bottom:auto;padding:28px 7% 124px}.salon-preview .hero--salon-preview .hero-content p{margin-top:16px}.salon-chapter{padding-bottom:60px}.salon-tabs{margin-top:28px;scroll-margin-top:45px}.salon-tab-summary{white-space:normal;font-size:11px}.salon-tablist button{min-height:60px;text-align:center;padding:10px 4px;font-size:12px}.salon-tablist button span{display:block;font-size:14px;margin:0 0 1px}.salon-panel{padding-top:25px}.salon-panel-heading{display:block}.salon-panel-heading h3{font-size:29px}.salon-panel-heading p,.salon-panel-heading label{display:block;margin-top:12px}.salon-calendar-card{padding:14px 10px}.salon-month-controls{gap:8px}.salon-month-controls select{font-size:20px;min-width:0;max-width:calc(100% - 86px)}.salon-calendar{min-width:0;width:100%}.salon-calendar td{height:68px;padding:4px 2px}.salon-calendar-event{font-size:9px;text-align:center;padding-top:2px}.salon-calendar-event .heart{display:block;margin:0;font-size:11px}.salon-full-title{display:none}.salon-short-title{display:block;word-break:keep-all;font-size:9px}.salon-calendar-event em{display:none}.salon-selected-image{height:240px}.salon-detail-copy{padding:29px 22px}.salon-detail-facts div{display:block}.salon-detail-facts dd{max-width:none;text-align:left;margin-top:5px}.salon-form{padding:26px 19px}.salon-form-pair{grid-template-columns:1fr;gap:0}}
@media(max-width:360px){.salon-month-controls select{font-size:16px;padding:3px 0}.salon-short-title{font-size:8px}}
@media(prefers-reduced-motion:reduce){.salon-tablist button,.salon-calendar td{transition:none}}
@media(prefers-reduced-motion:reduce){.salon-hero-rail button{transition:none}}
