/* 에센셜·스탠다드·패키지의 사진과 상품 비교표, 접기 영역을 통일한다. */
.page[data-page^="program/"]:has(.comparison-view){padding-top:92px;width:min(1440px,calc(100% - 80px));max-width:1440px}
.comparison-view{--compare-ink:#111;--compare-sub:#767676;--compare-line:#e7e7e7;--compare-wash:#f5f5f5;--compare-accent:#6b1e2e;color:var(--compare-ink);font:400 13px/1.75 var(--sans);letter-spacing:-.01em;word-break:keep-all}
.comparison-view .services-header{position:fixed;top:calc(var(--header-height) + env(safe-area-inset-top));left:0;right:0;z-index:30;width:min(1440px,calc(100% - 80px));margin:0 auto;padding-top:18px;background:#fff}
.comparison-layout{display:grid;grid-template-columns:minmax(0,54fr) minmax(0,46fr);gap:48px;align-items:start;margin-bottom:56px}
.comparison-content{width:100%;max-width:520px;min-width:0}
.comparison-visual{position:sticky;top:calc(var(--header-height) + 92px);height:calc(100svh - var(--header-height) - 208px);min-height:560px;max-height:960px;margin:0;overflow:hidden}
.comparison-visual img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.comparison-group+.comparison-group{margin-top:48px}
.comparison-content>.comparison-group{border:1px solid #cccac5;padding:24px}
.package-view .comparison-content>.comparison-group{border:0;padding:0}
.package-view .package-comparison-item{border:1px solid #cccac5;padding:24px}
.comparison-content>.comparison-common-notice{margin-top:56px;border-top:1px solid var(--compare-line)}
.comparison-heading{margin:0 0 28px}
.comparison-heading h1,.comparison-heading h2{margin:0;font:700 17px/1.6 var(--sans);letter-spacing:.02em;color:var(--compare-ink)}
.comparison-heading p{max-width:none;margin:20px 0 0;font:400 13px/1.75 var(--sans);letter-spacing:-.01em;color:var(--compare-ink);text-transform:none}
.comparison-heading p+p{margin-top:8px}
.comparison-heading p:not(.comparison-subtitle){opacity:.8}
.comparison-heading .comparison-subtitle{margin:2px 0 0;font-size:11px;letter-spacing:.025em;color:var(--compare-sub)}
.comparison-view .comparison-table{width:100%;margin:0;table-layout:fixed;border-collapse:collapse;border-top:1px solid var(--compare-ink);text-align:left;font:400 13px/1.75 var(--sans);letter-spacing:-.01em}
.comparison-view .comparison-table th,.comparison-view .comparison-table td{padding:9px 12px 9px 0;border-bottom:1px solid var(--compare-line);vertical-align:top;font-weight:400;overflow-wrap:anywhere;word-break:keep-all}
.comparison-view .comparison-table tr>:first-child{width:20%;color:var(--compare-sub);font-size:13px;text-align:left}
.comparison-view .comparison-table tr>:last-child{padding-right:0}
.comparison-view .comparison-table thead{background:none}
.comparison-view .comparison-primary>thead{background:#292824}
.comparison-view .comparison-primary>thead :is(th,td){border-bottom-color:#292824;color:#f5f4ef}
.comparison-view .comparison-primary>thead .comparison-name,.comparison-view .comparison-primary>thead a{color:#d7d5ce}
.comparison-view .comparison-primary>thead .comparison-price{color:#f5f4ef}
.comparison-view .comparison-primary>thead .comparison-price small{color:#d7d5ce}
.comparison-view .comparison-table thead th,.comparison-view .comparison-table thead td{padding-top:14px;padding-bottom:14px;font-size:12px}
.comparison-view .comparison-name,.comparison-view .comparison-table thead a{display:block;color:var(--compare-sub);font:400 12px/1.6 var(--sans);letter-spacing:.02em;text-decoration:none}
.comparison-choice{display:block}
.comparison-view .comparison-price,.comparison-view .standard-price,.comparison-view .eternity-price{display:block;margin:6px 0 0;font:500 17px/1.75 var(--sans);letter-spacing:0;color:var(--compare-ink);font-variant-numeric:tabular-nums;white-space:nowrap}
.comparison-view .comparison-price small,.comparison-view .standard-price small{margin-left:3px;font:400 11px/1.6 var(--sans);color:var(--compare-sub)}
.comparison-view .comparison-fee,.comparison-tier{display:block;margin-top:5px;font:400 11px/1.75 var(--sans);letter-spacing:-.01em;color:var(--compare-sub)}
.comparison-view .comparison-table .comparison-difference-row>*{background:var(--compare-wash);border-bottom-color:#fff}
.comparison-view .comparison-table .comparison-difference-row>:first-child{color:var(--compare-accent);box-shadow:-8px 0 0 var(--compare-wash)}
.comparison-view .comparison-table .comparison-difference-row>:last-child{box-shadow:8px 0 0 var(--compare-wash)}
.comparison-view .comparison-table .comparison-empty{color:#b9b9b9}
.comparison-addition::before{content:'+ ';color:var(--compare-accent)}
.comparison-view .comparison-table .standard-partner-start>*,.comparison-view .comparison-table .eternity-partner-start>*{padding-top:9px}
.comparison-view .standard-location{display:inline-grid;gap:3px;line-height:1.6;text-align:left}
.standard-location>small{color:var(--compare-sub);font:400 10px/1.2 var(--sans)}
.standard-location-space{display:inline-block;white-space:nowrap}
.comparison-view .standard-package-composition{display:grid;gap:5px}
.comparison-view .standard-package-composition strong{font-weight:400}
.comparison-package-table .comparison-price{margin-top:0}
.comparison-package-table tbody>tr:not(.comparison-difference-row)>th{vertical-align:middle;color:var(--compare-ink)}
.comparison-content .eternity-price-note,.comparison-view .standard-benefit{margin:10px 0 28px;text-align:left;font:400 11px/1.75 var(--sans);color:var(--compare-sub)}
.comparison-view .sorra-accordion,.comparison-accordion{margin-top:28px;border-top:1px solid var(--compare-line)}
.comparison-details,.comparison-view .sorra-accordion>details,.comparison-view .standard-options{border:0;border-bottom:1px solid var(--compare-line);margin:0;padding:0;background:none}
.comparison-view .standard-options{margin-top:24px;border-top:1px solid var(--compare-line)}
.comparison-details>summary,.comparison-view .sorra-accordion>details>summary,.comparison-view .standard-options>summary{display:flex;align-items:baseline;justify-content:space-between;gap:16px;min-height:44px;padding:12px 0;list-style:none;cursor:pointer;font:400 13px/1.6 var(--sans);letter-spacing:0;color:var(--compare-ink)}
.comparison-details>summary::-webkit-details-marker,.comparison-view .sorra-accordion summary::-webkit-details-marker,.comparison-view .standard-options>summary::-webkit-details-marker{display:none}
.comparison-details>summary::after,.comparison-view .sorra-accordion>details>summary::after,.comparison-view .standard-options>summary::after{content:'+';font:300 13px/1.6 var(--sans);color:var(--compare-ink);margin-left:auto}
.comparison-details[open]>summary::after,.comparison-view .sorra-accordion>details[open]>summary::after,.comparison-view .standard-options[open]>summary::after{content:'–'}
.comparison-source,.comparison-view .sorra-body,.comparison-view .standard-options>.product-options{padding:2px 0 18px;color:#3a3a3a;font:400 13px/1.75 var(--sans)}
.comparison-rows{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:6px 24px;margin:0}
.comparison-rows dt{color:var(--compare-sub)}
.comparison-rows dd{margin:0}
.comparison-view .eternity-rules{list-style:none;margin:0;padding:0}
.comparison-view .eternity-rules>li{margin:0 0 8px;padding:0;color:#3a3a3a}
.comparison-view .eternity-rules>.eternity-partner-list{margin-left:0;padding:0}
.comparison-view .eternity-partners{gap:6px}
.comparison-view .eternity-partners>span{grid-template-columns:88px minmax(0,1fr);gap:0 16px}
.comparison-view .eternity-partners strong{color:var(--compare-sub);font-weight:400}
.comparison-view .eternity-table .product-retouch summary{justify-content:flex-start;padding:0 20px 0 0;min-height:22px;font-size:13px}
.comparison-view .product-retouch{margin:0}
.comparison-view .product-selection-list{font-size:12px;color:#3a3a3a}
.comparison-view .standard-retouch-toggle{min-height:22px;font:inherit}
.comparison-view .standard-retouch-detail{background:none}
.comparison-view .standard-retouch-detail th::before{content:none}
.comparison-view .comparison-table .standard-retouch-total th{padding:9px 12px 9px 0}
.comparison-view .comparison-source .standard-table{border:0;text-align:left;font-size:13px}
.comparison-view .comparison-source .standard-table thead{background:none}
.comparison-view .comparison-source .standard-table th,.comparison-view .comparison-source .standard-table td{padding:9px 12px 9px 0;border-bottom:1px solid var(--compare-line);font-size:13px;font-weight:400}
.comparison-view .comparison-source .standard-table tr>:first-child{width:20%;font-size:13px;color:var(--compare-sub)}
.comparison-view .comparison-source .standard-package-name{font:400 12px/1.6 var(--sans);color:var(--compare-sub)}
.comparison-source dl:not(.comparison-rows){display:grid;grid-template-columns:1fr;gap:6px;margin:0 0 18px}
.comparison-source dl>div{display:grid;grid-template-columns:88px minmax(0,1fr);gap:16px}
.comparison-source dt{color:var(--compare-sub)}
.comparison-source dd{margin:0}
.comparison-view .standard-notice{width:100%;max-width:none;border:0;margin:0;padding:0;color:#3a3a3a;font-size:13px}
.comparison-source .standard-notice>h2{display:none}
.comparison-view .standard-notice ul{list-style:none;margin:0;padding:0}
.comparison-view .standard-notice li{list-style:disc;margin:0 0 8px 16px;padding-left:2px}
.comparison-option+.comparison-option{margin-top:18px}
.comparison-option-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px;color:var(--compare-sub)}
.comparison-option-heading .option-amount{color:var(--compare-ink);font-size:13px;font-weight:400;white-space:normal}
.comparison-option .option-detail-body{margin:5px 0 0;padding:0;color:#3a3a3a;font-size:13px;line-height:1.75}
.comparison-view .standard-option-static{padding:10px 0;border:0;font-size:13px}
.comparison-view [hidden]{display:none!important}
.comparison-view :focus-visible{outline:1px solid var(--compare-ink);outline-offset:3px}
.comparison-price-basis{margin:10px 0 28px;color:var(--compare-sub);font:400 11px/1.75 var(--sans);text-align:left}
.comparison-retouch-toggle{display:flex;align-items:center;gap:8px;width:100%;min-height:22px;padding:0;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}
.comparison-retouch-toggle[aria-expanded="true"] svg{transform:rotate(180deg)}
.comparison-view .comparison-table .comparison-retouch-detail>td{padding:10px 0;color:#3a3a3a}
.comparison-retouch-detail .product-selection-list{margin:0;display:grid;gap:5px}
.eternity-view .comparison-retouch-detail .product-selection-list{color:var(--compare-sub)}
.comparison-location .comparison-location-rows{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:6px 24px;margin:0}
.comparison-location+.standard-options{margin-top:0;border-top:0}
.eternity-view.comparison-view .essential-partner-names{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px;grid-column:2;min-width:0}
.eternity-view.comparison-view .essential-partner-link{display:inline-block;width:auto;min-height:24px;color:var(--compare-ink);font:inherit;text-decoration:none;cursor:pointer}
.eternity-view.comparison-view .essential-partner-link:hover{text-decoration:underline;text-underline-offset:3px}
.eternity-view.comparison-view .essential-partner-quantity{grid-column:2;color:var(--compare-sub);font-size:12px}
.eternity-view.comparison-view .eternity-rules>li:not(.eternity-partner-list):not(.essential-helper-reference){list-style:disc;margin:0 0 8px 16px;padding-left:2px}
.eternity-view.comparison-view .eternity-rules>.essential-helper-reference{list-style:none;margin:8px 0 14px;padding:0;color:var(--compare-sub);font-size:12px}
.package-view.comparison-view .essential-partner-link{display:inline-block;min-height:24px;color:var(--compare-ink);font:inherit;text-decoration:none;cursor:pointer}
.package-view.comparison-view .essential-partner-link:hover{text-decoration:underline;text-underline-offset:3px}
.comparison-view .comparison-table :is(.package-service-row,.essential-package-item)>th{color:#8f5260}
.package-view .comparison-table .package-service-row>*,.eternity-view .comparison-table .essential-package-item>*{background:#fbf4f4}
.package-helper-reference{margin:10px 0 0;color:var(--compare-sub);font:400 11px/1.75 var(--sans)}
.package-comparison-title{margin:0 0 16px;font:400 13px/1.75 var(--sans);color:var(--compare-ink)}
.package-comparison-item+.package-comparison-item{margin-top:40px}
.package-view .package-comparison-item:has(>.standard-benefit)>.comparison-price-basis{margin-bottom:2px}
.package-view .package-comparison-item>.standard-benefit{margin:0 0 28px}
@media(max-width:1100px){.comparison-layout{grid-template-columns:1fr;gap:28px}.comparison-visual{position:static;height:clamp(210px,40vw,360px);min-height:0;max-height:none}.comparison-content{max-width:none}}
@media(max-width:640px){
 .page[data-page^="program/"]:has(.comparison-view){padding-top:81px;width:calc(100% - 32px)}
 .comparison-view .services-header{width:calc(100% - 32px);padding-top:12px}
 .comparison-heading h1,.comparison-heading h2{font-size:16px}
 .comparison-group+.comparison-group{margin-top:40px}
 .comparison-content>.comparison-group,.package-view .package-comparison-item{padding:18px 14px}
 .package-view .comparison-content>.comparison-group{padding:0}
 .comparison-content>.comparison-common-notice{margin-top:40px}
 .comparison-view .comparison-table th,.comparison-view .comparison-table td{padding-right:8px}
 .comparison-view .comparison-table tr>:first-child{width:68px;font-size:12px}
 .comparison-view .comparison-table .standard-retouch-total th{padding-right:8px}
 .comparison-view .comparison-table tr>:last-child{padding-right:0}
 .comparison-name{font-size:12px}
 .comparison-view .comparison-price{font-size:16px}
 .comparison-package-table tr>:first-child{width:25%}
 .comparison-rows{column-gap:18px}
 .comparison-view .comparison-source .standard-table{table-layout:fixed}
 .comparison-view .comparison-source .standard-table th,.comparison-view .comparison-source .standard-table td{padding-right:6px;font-size:12px;overflow-wrap:anywhere}
 .comparison-view .comparison-source .standard-table tr>:last-child{padding-right:0}
}

/* 상품명·가격을 기존 대비 25% 축소하고 머리글의 높이를 유지한다. */
.comparison-view .comparison-primary>thead tr{height:83.95px}
.comparison-view .comparison-primary>thead :is(th,td){padding-top:4px;padding-bottom:4px;vertical-align:middle}
.comparison-view .comparison-primary>thead .comparison-name{font-size:13.5px;line-height:19.2px}
.comparison-view .comparison-primary>thead .comparison-price{font-size:19.125px;line-height:29.75px}
@media(max-width:640px){
 .comparison-view .comparison-primary>thead tr{height:82.2px}
 .comparison-view .comparison-primary>thead .comparison-price{font-size:18px;line-height:28px}
}
@media(max-width:360px){
 .standard-view.comparison-view .comparison-table tr>:first-child{width:52px}
}

.eternity-view.comparison-view .essential-package-item .essential-helper-reference{margin-top:6px;color:var(--compare-sub);font-size:11px}

.comparison-view .partner-service-value{color:var(--compare-ink);font:400 13px/1.75 var(--sans)}
.comparison-view .partner-provider{margin-top:3px;color:#707070;font:400 12px/1.65 var(--sans)}
.comparison-view .partner-provider .essential-partner-link{min-height:0;color:inherit;font:inherit}
.comparison-view .partner-alternative{white-space:nowrap}
.eternity-view .comparison-table .comparison-empty{color:var(--compare-sub)}

/* 브라우저 코멘트의 공백 수를 표 셀과 세션 행의 간격으로 적용한다. */
.comparison-view .comparison-primary>thead .comparison-price small{font-size:8.25px}
.eternity-view.comparison-view .eternity-table tbody>tr>td[colspan="2"]{padding-inline-start:10ch}
.essential-session{display:flex;align-items:baseline;gap:5ch}
.essential-session>span{color:var(--compare-sub)}
.essential-session>strong{color:var(--compare-ink);font-weight:400}
.comparison-view .sorra-body .essential-session-note{margin:8px 0 0;font:inherit}

/* 에센셜 안내사항은 항목명과 본문을 나란히 표시한다. */
.essential-notice-rows,.comparison-notice-rows{grid-template-columns:72px minmax(0,1fr);gap:14px 24px}
.comparison-view .sorra-body .essential-notice-footer,.comparison-view .comparison-notice-footer{margin:26px 0 0;padding-top:22px;border-top:1px solid var(--compare-line);color:var(--compare-sub);font:inherit}
@media(max-width:640px){.essential-notice-rows,.comparison-notice-rows{grid-template-columns:66px minmax(0,1fr);column-gap:16px}}

/* 의상 가이드의 추천 구성과 선택 조건을 문단별로 구분한다. */
.comparison-view .essential-outfit-guide{line-height:2}
.comparison-view .essential-outfit-guide p{margin:0;font:inherit}
.essential-outfit-guide>section{margin-top:28px}
.comparison-view .essential-outfit-guide h3{margin:0 0 8px;font:500 13px/1.75 var(--sans);color:var(--compare-ink)}
.comparison-view .essential-outfit-guide .essential-outfit-note{margin-top:10px;color:var(--compare-sub)}
.comparison-view .essential-outfit-guide>p:last-child{margin-top:28px}

.eternity-view.comparison-view .sorra-accordion>details:last-child{border-bottom:0}

.comparison-view .comparison-common-notice{border-bottom:0}

/* 프로그램의 참고글은 본문 13px보다 15% 작게 표시한다. */
.comparison-view .comparison-content :is(.essential-outfit-note,.essential-session-note,.essential-notice-footer,.comparison-notice-footer,.comparison-price-basis,.eternity-price-note,.standard-benefit,.essential-helper-reference,.package-helper-reference,.program-reference){font-size:11.05px}
