/* 2026-10-20 review: shared typography, intentional line breaks and controls. */
br.br-mobile { display:none; }
.nowrap { white-space:nowrap; }
#header { height:68px; }
#header #logo { top:50%; width:150px; height:38px; transform:translateY(-50%); }
#header .menu-toggle, #header .language { top:50%; transform:translateY(-50%); }
#gnb { max-width:860px; }
#gnb .gnb-depth1-link { font-size:16px; }
#gnb .gnb-submenu { padding:14px; border:0; border-radius:0; background:#956c51; }
#gnb .gnb-submenu .gnb-link { color:#fff; font-weight:500; }
#gnb .gnb-submenu .gnb-link:hover, #gnb .gnb-submenu .gnb-link:focus-visible { background:#805a42; color:#fff; }
#sl-full-menu .jfm-top { padding:0 24px; }
#sl-full-menu .jfm-close { outline:none; border:0; box-shadow:none; }
#sl-full-menu .jfm-close:focus-visible { outline:2px solid #956c51; outline-offset:2px; }
#sl-full-menu .jfm-row { min-height:72px; }
#sl-full-menu .jfm-link { font-weight:500; }
#sl-full-menu .jfm-child-link { font-size:17px; line-height:1.6; font-weight:600; padding:8px 0; }
#sl-full-menu .jfm-item { border-bottom:1px solid #dfd3c7; padding-bottom:16px; }
.medis-quick-toggle, .mq-row, .jeunex-quick-panel button, .jeunex-quick-panel a { font-weight:600; }
#medis-booking-dialog { max-height:calc(100dvh - 100px); overflow-y:auto; }
#footer .form-help { font-size:13px; line-height:1.6; margin:8px 0 18px; color:#dbd8ce; }
#footer .qr > span { display:block; }
.board-pagination { flex-wrap:wrap; }
/* Small actual buttons leave the photograph draggable and the text scrollable. */
.equipment-card .equipment-toggle, .equipment-card.is-open .equipment-toggle { inset:auto 12px 12px auto; width:40px; height:40px; touch-action:pan-y; }
.equipment-card .equipment-toggle::after { right:0; bottom:0; }
.equipment-card .equipment-overlay { pointer-events:none; }
.equipment-card.is-open .equipment-overlay { pointer-events:auto; }
.equipment-card img { -webkit-user-drag:none; user-select:none; }
:is(#sub02_08,#sub0401_06) { display:flex; flex-direction:column; }
:is(#sub02_08,#sub0401_06) > .subtxt { order:0; }
:is(#sub02_08,#sub0401_06) > .controls { order:1; align-self:flex-end; width:auto; margin:0 5% 24px; }
:is(#sub02_08,#sub0401_06) > .equipment { order:2; }
:is(#sub02_08,#sub0401_06) > .controls[hidden] { display:none; }

/* ONE DAY CELL uses the background and matching text colors in sub.css. */
#main09 .photo, .subdoctors .photo { aspect-ratio:560 / 732; }
#main09 .photo > img, .subdoctors .photo > img { object-fit:cover; object-position:top; }
#main09 .photo > .doctor-coat, .subdoctors .photo > .doctor-coat { position:absolute; inset:0; width:100%; height:100%; opacity:0; transition:opacity .45s ease; pointer-events:none; }
#main09 .name, .subdoctors .name { gap:12px; padding:16px 0; }
#main09 .toggle, .subdoctors .toggle { font-size:23px; font-weight:600; }
#main09 .more, .subdoctors .more { flex:none; width:32px; height:32px; min-width:32px; font-size:22px; }
/* Photo hover reveals biographies via main.css and sub.css; clicks remain available. */
#main09 .box.open .bio, .subdoctors .box.open .bio { opacity:1; visibility:visible; pointer-events:auto; }
@media (hover:hover) {
    #main09 .photo:hover > .doctor-coat, .subdoctors .photo:hover > .doctor-coat { opacity:1; }
}
@media (max-width:1400px) {
    #gnb { max-width:none; }
    #gnb .gnb-submenu { background:transparent; padding:8px 0 0; }
    #gnb .gnb-submenu .gnb-link { color:#956c51; }
}
@media (max-width:640px) {
    :root { --mobile-heading:clamp(26px,6vw,38px); --mobile-body:16px; }
    /* Classes deliberately outrank old per-section br hiding. */
    body br.br-mobile { display:revert !important; }
    body br.br-pc { display:none !important; }
    #header { height:56px; }
    #header #logo { left:16px; width:116px; height:30px; }
    #header .menu-toggle { right:12px; width:34px; height:34px; }
    #header .menu-toggle::before { content:''; position:absolute; inset:-5px; }
    #header .menu-toggle span { width:15px; }
    #header .language { right:56px; }
    #header .language-button { width:76px; height:30px; font-size:11px; }
    #header .language-flag { width:16px; height:16px; }
    #sl-full-menu .jfm-top { height:56px; margin:0; padding:0 18px; }
    #sl-full-menu .jfm-nav { padding:12px 22px 28px; }
    #sl-full-menu .jfm-row { min-height:58px; }
    #sl-full-menu .jfm-item { padding:8px 0 16px; }
    #sl-full-menu .jfm-link { font-size:26px; font-weight:600; line-height:1.35; }
    #sl-full-menu .jfm-children { gap:0; margin:4px 0 0; padding-left:0; }
    #sl-full-menu .jfm-child-link { font-size:16px; padding:10px 0; font-weight:500; }
    #sl-full-menu .jfm-aside { padding:24px 22px; gap:24px; }
    #sl-full-menu .jfm-expand { width:36px; height:36px; }
    #main :is(p,h1,h2,h3), .subtxt, .maintxt { word-break:keep-all; overflow-wrap:break-word; }
    :is(#main01,#main02,#main03,#main04,#main05) { box-sizing:border-box; padding:96px 0 72px; }
    :is(#main01,#main02,#main03,#main04,#main05) .maintxt { width:calc(100% - 48px); margin:0 auto; padding:0; }
    :is(#main01,#main02,#main03,#main04,#main05) .t1 { font-size:36px; line-height:1.2; margin-bottom:24px; }
    :is(#main01,#main02,#main03,#main04,#main05) .t2 { font-size:16px; line-height:1.5; font-weight:500; margin-bottom:28px; }
    :is(#main01,#main02,#main03,#main04,#main05) .t2 br { display:revert; }
    :is(#main01,#main02,#main03,#main04,#main05) .t3 { font-size:clamp(31px,8.4vw,48px); line-height:1.22; letter-spacing:-.035em; }
    :is(#main04,#main05) .t4 { font-size:15px; line-height:1.5; margin-top:28px; }
    #main05 .t4 br { display:revert; }
    #main06 { height:auto; min-height:100svh; padding:80px 24px; }
    #main06 .maintxt { position:relative; inset:auto; transform:none; width:100%; margin:0; padding:0; }
    #main06 .t1 { font-size:18px; margin-bottom:20px; }
    #main06 .t2 { font-size:var(--mobile-heading); line-height:1.3; margin-bottom:32px; }
    #main06 .t3 { font-size:16px; line-height:1.5; }
    #main06 .t3 > span { font-size:18px; line-height:1.65; margin-bottom:28px; }
    #main06 .t3 p { margin-bottom:28px; }
    #main06 .vplay { clip-path:inset(50%); width:1px; height:1px; padding:0; overflow:hidden; }
    #main06 .vplay:focus-visible { clip-path:none; width:auto; height:auto; padding:8px; }
    #main07 { padding:72px 0; }
    #main07 .maintxt .t1 { font-size:clamp(27px,7.4vw,40px); line-height:1.25; margin-bottom:18px; }
    #main07 .maintxt .t2 { font-size:21px; margin-bottom:24px; }
    #main07 .maintxt .t3 { font-size:16px; line-height:1.5; }
    #main07 .boxes { margin-top:40px; gap:14px; }
    #main07 .box { padding:28px 14px; min-height:220px; }
    #main07 .box .t1 { font-size:19px; margin-bottom:16px; }
    #main07 .box .t2 { font-size:15px; line-height:1.75; word-break:keep-all; }
    #main07 .box .t2 br { display:none; }
    #main08 { padding:24px 0 48px; }
    #main08 .t1 { width:calc(100% - 40px); justify-content:center; gap:7px; font-size:clamp(17px,4.8vw,30px); line-height:1.2; margin-bottom:16px; }
    #main08 .t1 .cross { flex-basis:.6em; width:.6em; height:.6em; }
    #main08 .t2 { font-size:19px; line-height:1.4; margin-bottom:14px; }
    #main08 .t2 span { margin-top:2px; font-size:17px; }
    #main08 .t3 { font-size:13px; line-height:1.6; }
    #main08 .boxes { width:calc(100% - 48px); gap:16px; margin-top:40px; }
    #main08::before { height:88px; }
    #main09 { padding:52px 0 44px; }
    #main09 .maintxt .t1 { font-size:clamp(20px,5.4vw,32px); line-height:1; gap:6px; }
    #main09 .maintxt .t2 { font-size:16px; line-height:1.65; margin:24px 0 36px; }
    #main09 .doctors, .subdoctors .doctors { display:flex; width:100%; max-width:none; gap:16px; padding:0 28px; margin:0; box-sizing:border-box; overflow-x:auto; scroll-snap-type:x mandatory; scroll-padding-inline:28px; scrollbar-width:none; }
    #main09 .doctors > .box, .subdoctors .doctors > .box { flex:0 0 86%; min-width:0; width:auto; scroll-snap-align:center; }
    #main09 .photo, .subdoctors .photo { width:100%; height:auto; min-height:0; max-height:none; aspect-ratio:560 / 732; }
    #main09 .photo > img, .subdoctors .photo > img { width:100%; height:100%; object-fit:cover; object-position:top; }
    #main09 .toggle, .subdoctors .toggle { font-size:20px; line-height:1.5; }
    #main09 .more, .subdoctors .more { width:28px; height:28px; min-width:28px; font-size:20px; }
    #main09 .bio, .subdoctors .bio { padding:24px 20px; }
    #main09 .doctor-biography, .subdoctors .doctor-biography { font-size:15px; line-height:1.75; }
    .doctor-controls { display:flex; justify-content:center; align-items:center; gap:20px; margin-top:24px; font-size:14px; }
    .doctor-controls button { width:40px; height:40px; border:1px solid currentColor; border-radius:50%; background:transparent; color:inherit; font-size:21px; cursor:pointer; }
    #main09 .doctor-controls, .subdoctors .doctor-controls { color:#fff; }
    #main10 { padding:72px 0; }
    #main10 .title { font-size:30px; line-height:1.45; }
    #main10 .contents { margin-top:36px; }
    #main10 .box { padding:28px 0; }
    #main10 .t1 { font-size:22px; margin-bottom:16px; }
    #main10 .t2, #main10 .t3 { font-size:16px; line-height:1.8; }
    #main11, .subvideo { padding:64px 0; }
    #main11 .t1, .subvideo .t1 { font-size:var(--mobile-heading); line-height:1.25; margin-bottom:24px; }
    #main11 .t2, .subvideo .t2 { font-size:17px; line-height:1.75; }
    #main11 .movie, .subvideo .movie { margin-top:36px; }
    #main12, .subclips { padding:56px 0 72px; }
    #main12 .t1, .subclips .t1 { font-size:34px; line-height:1.25; }
    #main12 .maintxt, .subclips .maintxt { margin-bottom:32px; }
    #sub01_01, #sub02_01 { height:100svh; height:100dvh; min-height:0; }
    :is(#sub01_01,#sub02_01) .subtxt { top:58%; width:calc(100% - 48px); }
    :is(#sub01_01,#sub02_01) .t1 { font-size:18px; line-height:1.5; max-width:320px; margin:0 auto 10px; }
    :is(#sub01_01,#sub02_01) .t2 { font-size:clamp(39px,10.6vw,65px); line-height:1.05; letter-spacing:-.025em; margin:0 0 20px; white-space:normal; text-wrap:balance; }
    :is(#sub01_01,#sub02_01) .t3 { font-size:15px; line-height:1.6; }
    :is(#sub01_02,#sub02_02) { min-height:90svh; padding:96px 24px 72px; }
    :is(#sub01_02,#sub02_02) .t1 { font-size:var(--mobile-heading); line-height:1.45; margin-bottom:16px; }
    :is(#sub01_02,#sub02_02) .t2 { font-size:14px; line-height:1.5; }
    :is(#sub01_03,#sub02_03) { padding:72px 0 56px; }
    :is(#sub01_03,#sub02_03) .subtxt .t1 { font-size:20px; line-height:1.4; margin-bottom:10px; }
    :is(#sub01_03,#sub02_03) .subtxt .t2 { font-size:32px; line-height:1.2; margin-bottom:10px; }
    :is(#sub01_03,#sub02_03) .subtxt .t3 { font-size:24px; line-height:1.45; margin-bottom:18px; }
    :is(#sub01_03,#sub02_03) .subtxt .t4 { font-size:14px; line-height:1.5; }



    #sub02_03 .photo { aspect-ratio:4 / 3; overflow:hidden; margin-bottom:14px; }
    #sub02_03 .photo img { width:100%; height:100%; object-fit:cover; }
    :is(#sub01_04,#sub02_04,#sub01_05,#sub02_05,#sub01_06,#sub01_07,#sub02_07,#sub02_08,#sub0401_05,#sub0401_06) { padding-top:44px; }
    :is(#sub01_04,#sub02_04,#sub01_05,#sub02_05,#sub01_06,#sub01_07,#sub02_07,#sub02_08,#sub0401_05,#sub0401_06) .subtxt .t1 { font-size:28px; line-height:1.5; margin-bottom:24px; }
    :is(#sub01_04,#sub02_04,#sub01_05,#sub02_05,#sub01_06,#sub01_07,#sub02_07,#sub02_08,#sub0401_05,#sub0401_06) .subtxt .t2 { font-size:16px; line-height:1.5; }
    .subtxt > p + p { margin-top:24px; }
    #sub01_08, #sub0401_05 { margin-top:64px; gap:32px; padding-bottom:64px; }
    :is(#sub01_08,#sub0401_05) > .subtxt .t1 { font-size:28px; line-height:1.5; margin-bottom:24px; }
    :is(#sub01_08,#sub0401_05) > .subtxt .t2, :is(#sub01_08,#sub0401_05) .txt .t3 { font-size:14px; line-height:1.5; }
    :is(#sub01_08,#sub0401_05) .txt .t1 { font-size:27px; line-height:1.3; }
    :is(#sub01_08,#sub0401_05) .rows { gap:36px; }
    #sub01_08.fatcompare > .title { font-size:6.2vw; line-height:1.5; margin-bottom:28px; }
    #sub01_06 .title { font-size:27px; line-height:1.3; margin-bottom:32px; }
    :is(#sub01_07,#sub02_07) > .title { font-size:clamp(19px,8.3vw,30px); margin-bottom:32px; }
    .subdoctors { padding:64px 0 48px; }
    .subdoctors .subtxt { margin-bottom:36px; }
    .subdoctors .subtxt .t1 { font-size:23px; line-height:1.5; margin-bottom:18px; }
    .subdoctors .subtxt .t2 { font-size:14px; line-height:1.5; }
    .subending { min-height:100svh; min-height:100dvh; height:auto; padding:100px 0; box-sizing:border-box; }
    .subending .subtxt { transform:none; width:calc(100% - 48px); }
    .subending .t1 { font-size:15px; line-height:1.5; margin-bottom:14px; }
    .subending .t2 { font-size:clamp(34px,9.2vw,58px); line-height:1.15; margin-bottom:20px; text-wrap:balance; }
    .subending .t3 { font-size:15px; line-height:1.7; }
    .subcolumn { padding:64px 0; }
    .subcolumn > .title { font-size:34px; margin-bottom:32px; }

    .equipment-card .equipment-overlay p { font-size:15px; line-height:1.75; }
    #sub0602_01 .medical-copy h2 { font-size:27px; margin-bottom:24px; }
    #sub0602_01 .doctor-biography, #sub0602_01 .doctor-biography p { font-size:16px; line-height:1.5; }
    #sub0602_01 .medical-team { gap:64px; }
    #sub0602_01 .doctor-biography h3 { font-size:19px; margin:28px 0 12px; }
    #sub0601_01 { height:100svh; height:100dvh; min-height:0; }
    #sub0601_01 .about-title, #sub0601_02 .story-title, #sub0601_05 .aging-title { font-size:var(--mobile-heading); line-height:1.35; }
    #sub0601_05 .aging-message, #sub0601_06 .chapter-copy h2 { font-size:28px; line-height:1.5; margin-bottom:28px; }
    #sub0601_02 .story-body, #sub0601_05 .aging-body p, #sub0601_06 .chapter-description p { font-size:16px; line-height:1.5; margin-bottom:24px; }
    #directions0605 .directions-heading { padding-top:92px; padding-bottom:36px; }
    #directions0605 .directions-heading .english { font-size:34px; }
    #directions0605 .phone-number { font-size:24px; }
}
@media (min-width:641px) { .doctor-controls { display:none; } }
@media (prefers-reduced-motion:reduce) { .doctor-coat { transition:none !important; } }
@media (max-width:640px) { html.jx-mobile-main { scroll-snap-type:none; scroll-behavior:auto; overflow-anchor:none; } html.jx-mobile-main body { overflow-anchor:none; } }

@media (max-width:640px) { #main08 .t1 { font-size:clamp(18px,6.4vw,32px); } #main08 .pic { aspect-ratio:294 / 530; } }

@media (max-width:640px) { #main08::before { display:block; } }
.skin-equipment-title { font-size:6.2vw; letter-spacing:.1em; text-indent:.1em; }
@media (min-width:641px) { #sub02_01.hero-personal .t2 { font-size:6.8vw; } }
@media (max-width:640px) {
    #main09 { background:linear-gradient(#332a2b 0 66%,#986e52 66% 100%); }
    #main09 .doctors::before, .subdoctors .doctors::before { display:none; }
    .skin-equipment-title { width:calc(100% - 40px); margin:64px auto 0; font-size:7.4vw; line-height:1.25; letter-spacing:.02em; text-indent:0; white-space:normal; text-align:center; }
}

/* QR opens in a separate centered dialog; keep channel rows compact. */
#medis-booking-dialog .mq-qr-trigger { display:flex; align-items:center; justify-content:space-between; gap:16px; width:100%; min-height:56px; text-align:left; }
.mq-qr-plus { flex:0 0 28px; display:grid; place-items:center; width:28px; height:28px; font-size:23px; font-weight:300; line-height:1; color:#986e52; }
#jeunex-qr-dialog { position:fixed; inset:0; margin:auto; width:320px; max-width:calc(100vw - 32px); max-height:calc(100dvh - 32px); box-sizing:border-box; overflow:auto; padding:28px 22px 22px; border:0; border-radius:16px; background:#fffdf9; color:#332a2b; text-align:center; box-shadow:0 20px 80px #0003; }
#jeunex-qr-dialog::backdrop { background:rgb(25 19 17 / 55%); backdrop-filter:blur(3px); }
#jeunex-qr-dialog .mq-qr-close { position:absolute; top:10px; right:10px; width:44px; height:44px; border:0; background:transparent; font-size:30px; line-height:1; color:#66564b; cursor:pointer; }
.mq-qr-brand { margin:0 0 10px; font-size:12px; letter-spacing:.18em; color:#986e52; }
#jeunex-qr-dialog h2 { margin:0 0 18px; font-size:21px; line-height:1.4; }
#jeunex-qr-dialog .mq-qr-image { display:block; width:148px; max-width:100%; height:auto; margin:0 auto 18px; }
.mq-qr-hint { margin:0 0 18px; font-size:13px; line-height:1.7; color:#786b62; word-break:keep-all; }
.mq-qr-download { display:block; padding:11px 16px; border:1px solid #d6c6b6; border-radius:8px; color:#6c4f39; font-size:15px; text-decoration:none; }
#jeunex-qr-dialog :focus-visible { outline:2px solid #986e52; outline-offset:3px; }
#medis-booking-dialog .mq-qr-trigger { flex-direction:row; } #medis-booking-dialog .mq-qr-trigger > span:first-child { font-size:13px; color:inherit; } #medis-booking-dialog .mq-qr-plus { font-size:23px; color:#986e52; }

/* Consultation lookup follows the Jeunex warm neutral palette. */
body:has(.lookup-page) { background:#f8f5f1; }
.medis-ui.lookup-page { --accent:#956c51; --ink:#493b32; --line:#dfd3c7; color:var(--ink); background:#fffdf9; border-color:#e9dfd5; box-shadow:0 12px 40px rgb(73 59 50 / 4%); margin-top:104px; }
.lookup-page .page-heading h1 { color:#6e513e; }
.lookup-page .notice, .lookup-page .panel:not(.lookup-form) { background:#f3ece4; border:1px solid #dfcfbe; color:#59483a; }
.lookup-page .notice strong { color:#493524; }
.lookup-page :is(input,select,textarea) { background:#fffefa; }
.lookup-page :is(input,select,textarea):focus { border-color:#956c51; box-shadow:0 0 0 3px rgb(149 108 81 / 12%); }
.lookup-page :is(button,a):focus-visible { outline:3px solid rgb(149 108 81 / 45%); }
.lookup-page .service-password button { color:#806751; }
.lookup-page .lookup-home { background:#fffdf9; border-color:#c9b39f; color:#78583f; margin-top:-12px; }
.lookup-page .lookup-home:hover { background:#f3ece4; filter:none; }
@media(max-width:640px) { .medis-ui.lookup-page { margin-top:80px; margin-bottom:32px; } }

/* Desktop dropdown reference: rounded brand panel, pointer and outlined plus. */
@media (min-width:1401px) {
 #gnb .gnb-submenu { width:185px; min-width:185px; box-sizing:border-box; padding:8px 22px 16px; border:0; border-radius:30px; background:#956c51; }
 #gnb .gnb-depth2 { left:-16px; top:100%; transform:translateY(6px); }
 #gnb .gnb-depth1-item:hover > .gnb-depth2, #gnb .gnb-depth1-item:focus-within > .gnb-depth2 { transform:translateY(0); }
 #gnb .gnb-depth2::before { content:''; position:absolute; top:-9px; left:40px; border-left:6.5px solid transparent; border-right:6.5px solid transparent; border-bottom:10px solid #956c51; }
 #gnb .gnb-submenu .gnb-link { position:relative; display:flex; align-items:center; min-height:48px; padding:12px 28px 12px 0; box-sizing:border-box; border-bottom:1px solid rgb(255 255 255 / 22%); border-radius:0; color:#fff; font-size:14px; line-height:1.5; font-weight:500; }
 #gnb .gnb-submenu .gnb-link::after { content:'+'; position:absolute; top:50%; right:0; transform:translateY(-50%); display:grid; place-items:center; width:19px; height:19px; border:1px solid rgb(255 255 255 / 45%); border-radius:50%; box-sizing:border-box; font-size:14px; line-height:1; color:inherit; }
 #gnb .gnb-submenu .gnb-link:hover, #gnb .gnb-submenu .gnb-link:focus-visible, #gnb .gnb-submenu .gnb-link[aria-current="page"] { background:transparent; color:#f2dfc4; }
 #gnb .gnb-submenu .gnb-link:hover::after, #gnb .gnb-submenu .gnb-link:focus-visible::after { border-color:#f2dfc4; }
 #gnb .gnb-depth1-item:nth-child(6) > .gnb-depth2 { width:165px; } 
#gnb .gnb-depth1-item:nth-child(1) > .gnb-depth2 { width:245px; }
 #gnb .gnb-submenu li:last-child .gnb-link { border-bottom:0px; }
#gnb 
}

@media (max-width:640px) {
 #sl-full-menu .jfm-top { background:#956c51; color:#fff; border-bottom:0; }
 #sl-full-menu .jfm-top .jfm-brand, #sl-full-menu .jfm-top .jfm-close { color:#fff; }
 #sl-full-menu .jfm-close span { background:#fff; }
 #sl-full-menu .jfm-top a:focus-visible, #sl-full-menu .jfm-top button:focus-visible { outline-color:#fff; }
}

/* Mobile full menu: supplied ivory reference. */
@media (max-width:640px) {
 #sl-full-menu .jfm-top { height:56px; margin:0; padding:0 18px; background:#f8f4f0; color:#956c51; border-bottom:1px solid #d7cabe; }
 #sl-full-menu .jfm-top .jfm-brand, #sl-full-menu .jfm-top .jfm-close { color:#956c51; }
 #sl-full-menu .jfm-brand { font-size:27px; font-weight:400; letter-spacing:.12em; }
 #sl-full-menu .jfm-close { width:44px; height:44px; }
 #sl-full-menu .jfm-close span { top:21px; left:8px; background:#956c51; }
 #sl-full-menu .jfm-top a:focus-visible, #sl-full-menu .jfm-top button:focus-visible { outline-color:#956c51; }
 #sl-full-menu .jfm-nav { padding:0; }
 #sl-full-menu .jfm-list { display:grid; grid-template-columns:1fr; gap:0; }
 #sl-full-menu .jfm-item { padding:0; border-bottom:1px solid #dfd3c7; }
 #sl-full-menu .jfm-item:last-child { border-bottom:0; }
 #sl-full-menu .jfm-row { min-height:48px; padding:12px 22px; gap:12px; }
 #sl-full-menu .jfm-item:first-child .jfm-row { min-height:48px; }
 #sl-full-menu .jfm-link { padding:4px 0; font-family:'Noto Serif KR',serif; font-size:20px; line-height:1.35; font-weight:500; letter-spacing:0em; }
 #sl-full-menu .jfm-expand { position:relative; width:24px; height:24px; min-width:24px; margin-left:auto; font-size:14px; }
 #sl-full-menu .jfm-expand::before { content:''; position:absolute; inset:-10px; }
 #sl-full-menu .jfm-children { margin:0; padding:0 22px 16px; gap:0; }
 #sl-full-menu .jfm-children .jfm-children { padding:0 0 0 14px; }
 #sl-full-menu .jfm-child-link { font-size:16px; padding:4px 0; }
 #sl-full-menu .jfm-aside { padding:24px 22px; gap:24px; border-top:1px solid #d7cabe; }
}

@media (max-width:640px) {
    #footer .sns .instagram { background-size:23px auto; }
    #footer .sns .youtube { background-size:25px auto; }
    #footer .sns .kakao { background-size:26px auto; }
    #footer .sns .blog { background-size:19px auto; }
    #sub0601_06 .chapter-gallery { grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px 30px; }
}
