/* A small passport tab belongs in the header, never another country ribbon. */
.header[data-passport-header]{gap:22px}
.header[data-passport-header] .desktop-nav{gap:24px}
.header[data-passport-header] .header-tools{gap:15px}
.cat-passport{position:relative;color:var(--ink);font-size:13px;line-height:1.5;flex:none}
.cat-passport summary{display:flex;align-items:center;gap:5px;list-style:none;cursor:pointer;min-height:44px;padding:2px 9px 2px 3px;border:1px solid var(--line);border-radius:22px;background:var(--paper);white-space:nowrap}
.cat-passport summary::-webkit-details-marker{display:none}
.cat-passport summary:focus-visible,.cat-passport a:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
.cat-passport[open] summary{background:var(--wash);border-color:var(--muted)}
.cat-passport summary>svg{transition:transform .15s}
.cat-passport[open] summary>svg{transform:rotate(180deg)}
.passport-cat{width:34px;height:34px;position:relative;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;flex:none;background:#f8e1e4;isolation:isolate}
.passport-cat--korea{background:#e2e9f8}
.passport-cat--taiwan{background:#e4eed5}
.passport-cat img{width:31px;height:31px;object-fit:contain}
.passport-stamp{position:absolute;bottom:-2px;right:-2px;border:1px solid currentColor;border-radius:3px;background:#fffdf5;line-height:1.2;padding:1px 2px;font:700 7px/1.2 'Space Grotesk',sans-serif;letter-spacing:.03em}
.passport-paper{position:absolute;right:0;top:calc(100% + 13px);width:250px;padding:18px;background:#fffdf6;border:1px solid var(--line);border-radius:7px 7px 18px 7px;box-shadow:0 12px 30px #203c321a;z-index:40}
.passport-paper:before{content:'';position:absolute;width:40px;height:12px;background:var(--yellow);opacity:.65;top:-6px;right:30px;transform:rotate(4deg);pointer-events:none}
.passport-paper>p{font-weight:700;margin:0 0 11px;font-size:15px}
.passport-paper>p small{display:block;font-size:11px;font-weight:400;color:var(--muted);margin-top:3px}
.passport-paper nav{display:grid;gap:4px}
.passport-paper nav>a{display:flex;align-items:center;gap:12px;min-height:50px;padding:7px 10px;border:1px solid transparent;border-radius:7px;font-size:14px;font-weight:600}
.passport-paper nav>a:hover{background:var(--wash)}
.passport-paper nav>a[aria-current]{border-color:var(--line);background:var(--wash)}
.passport-current{margin-left:auto;font-weight:700}
.passport-pocket{display:flex;align-items:center;gap:9px;font-size:12px;border-top:1px dashed var(--line);margin-top:12px;padding:15px 6px 2px;min-height:44px}
.menu .menu-links.passport-menu-groups{grid-template-columns:1fr 1fr 1fr;gap:28px 42px;align-items:start;margin-block:38px 30px}
.passport-menu-group{min-width:0}
.passport-menu-group h2{font-size:12px;font-weight:500;color:var(--muted);padding:0 0 13px;border-bottom:1px dashed var(--line)}
.passport-menu-group nav{display:flex;flex-direction:column}
.menu .passport-menu-group a{font-size:clamp(16px,1.65vw,25px);line-height:1.65;min-height:52px;padding:14px 0;gap:12px;overflow-wrap:anywhere}
.menu .passport-menu-group a svg{width:20px;height:20px;flex:none}
.menu .passport-menu-group a:focus-visible{outline:2px solid var(--ink);outline-offset:4px;border-radius:3px}
@media(max-width:1240px){.header[data-passport-header] .desktop-nav{display:none}.header[data-passport-header] .motion-label{display:none}.header[data-passport-header] .header-tools{gap:14px}}
@media(max-width:760px){
 .header[data-passport-header]{min-height:88px;height:auto;flex-wrap:wrap;padding-top:10px;padding-bottom:10px;gap:10px}
 .header[data-passport-header]>.brand{margin-right:auto}
 .header[data-passport-header] .header-tools{gap:9px;position:relative}
 .header[data-passport-header] .locale-switch{font-size:10px;gap:6px;min-height:44px}
 .header[data-passport-header] .search-toggle,.header[data-passport-header] .motion-toggle{min-width:40px;min-height:44px;justify-content:center}
 .header[data-passport-header] .menu-toggle{min-width:44px;min-height:44px}
 .header[data-passport-header] .cat-passport{font-size:11px;position:static}
 .header[data-passport-header] .cat-passport summary{gap:6px;min-height:44px;padding-right:10px}
 .header[data-passport-header] .passport-cat{width:29px;height:29px}
 .header[data-passport-header] .passport-cat img{width:27px;height:27px}
 .passport-paper{position:absolute;top:calc(100% + 13px);right:0;width:min(270px,calc(100vw - 40px));max-height:60dvh;overflow-y:auto}
 .menu .menu-links.passport-menu-groups{grid-template-columns:1fr;gap:26px;margin-block:30px 25px}
 .passport-menu-group nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:22px}
 .menu .passport-menu-group a{font-size:15px;min-height:48px;padding:12px 0}
 .passport-menu-group h2{font-size:12px;padding-bottom:9px}
 .menu .menu-bottom{flex-wrap:wrap;gap:14px 25px}
}
@media(max-width:520px){
 .header[data-passport-header]{padding-inline:20px;row-gap:5px}
 .header[data-passport-header] .brand{font-size:22px}
 .header[data-passport-header] .header-tools{width:100%;justify-content:flex-end;gap:9px}
 .header[data-passport-header] .cat-passport{margin-right:auto}
 .header[data-passport-header] .motion-toggle{min-width:34px}
 .header[data-passport-header] .search-toggle{min-width:34px}
}
@media(max-width:360px){
 .header[data-passport-header] .header-tools{gap:5px}
 .header[data-passport-header] .passport-label{display:none}
 .header[data-passport-header] .cat-passport summary{padding-right:7px}
}
@media(prefers-reduced-motion:reduce){.cat-passport summary>svg{transition:none}}
