/* 0926 official-site menu restructure (tools/official_menu_0926.py). Brand tokens only; no new colours. */

/* PC: the menu stays visible on the home hero too (owner: "피씨버전 기준, 전체화면 종료해도 위에 메뉴가 나와야 함").
   exact.css hides the logo/nav on the home hero until 75 % scroll; from 1101px (where the desktop nav shows) keep them on. */
@media (min-width:1101px){
  .exact-home .gnb .mark,.exact-home .gnb .exact-nav{opacity:1;pointer-events:auto}
  .exact-home:not(.scrolled) .exact-nav{visibility:visible} /* official-ux.css hides it until scroll */
  .exact-home .gnb{background:rgba(244,241,234,.95);border-radius:10px;box-shadow:0 2px 16px rgba(35,39,38,.07)}
  /* detail pages: the header was position:absolute (scrolled away) with the ivory logo on a light page (invisible).
     Fixed + ivory panel + ink logo so the menu and 'our logo' are always on screen. */
  .detail-page .gnb{position:fixed;top:0;left:0;right:0;width:auto;background:rgba(244,241,234,.96);box-shadow:0 2px 16px rgba(35,39,38,.07);z-index:55}
  .detail-page .gnb .brand-logo .ivory{display:none}
  .detail-page .gnb .brand-logo .ink{display:inline}
}

/* floating buttons — PC only (phones keep the existing bottom fix bar) */
.om-float{position:fixed;right:24px;bottom:96px;z-index:60;display:flex;flex-direction:column;gap:10px}
.om-float a{display:flex;align-items:center;justify-content:center;min-width:112px;height:44px;padding:0 18px;border-radius:22px;
  background:var(--troon-ink);color:var(--troon-ivory)!important;text-decoration:none;font:14px/1 var(--troon-font-display);
  box-shadow:0 4px 18px rgba(35,39,38,.18)}
.om-float a:hover,.om-float a:focus-visible{background:var(--troon-ivory);color:var(--troon-ink)!important;outline:1px solid var(--troon-ink)}
@media (max-width:860px){.om-float{display:none}}

/* page parts */
.om-page .om-section h2 .om-en,.om-grades .om-en{display:block;margin-top:6px;font:13px/1.4 var(--troon-font-en);letter-spacing:.06em;opacity:.7}
.om-list{list-style:none;margin:18px 0 0;padding:0}
.om-list li{padding:10px 0;border-top:1px solid var(--troon-line)}
.om-list li:last-child{border-bottom:1px solid var(--troon-line)}
.om-list strong{display:block;font-family:var(--troon-font-en);font-weight:400;letter-spacing:.04em}
.om-list span{display:block;margin-top:4px;opacity:.85}
.om-stats{list-style:none;margin:20px 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:18px}
.om-stats .n{display:block;font:40px/1.1 var(--troon-font-en)}
.om-stats .ko{display:block;margin-top:6px;font-size:14px;opacity:.8}
.om-btns{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0 0}
.om-btn{display:inline-flex;align-items:center;height:46px;padding:0 22px;border:1px solid currentColor;border-radius:23px;text-decoration:none;color:inherit}
.om-btn:hover,.om-btn:focus-visible{background:var(--troon-ink);color:var(--troon-ivory);outline:0}
.om-photo{margin:0}
.om-photo img{display:block;width:100%;height:auto}
.om-plain-head{max-width:1100px;margin:0 auto;padding:180px 5% 30px}
.om-plain-head h1{font:44px/1.2 var(--troon-font-display);margin:10px 0 0}
.om-address{margin-top:18px;font-size:18px}
.om-map{max-width:1100px;margin:10px auto 80px;padding:0 5%}
.om-map img{display:block;width:100%;height:auto}
.om-table-wrap{overflow-x:auto;margin-top:18px}
.om-grades{width:100%;min-width:720px;border-collapse:collapse;font-size:15px}
.om-grades th,.om-grades td{padding:14px 12px;border-top:1px solid var(--troon-line);text-align:left;vertical-align:top}
.om-grades thead th{font-weight:600;border-top:0}
.om-grades tbody th{font-weight:600;white-space:nowrap}
.om-common{margin-top:14px;font-size:14px;opacity:.85}
.om-types{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.om-type h2{margin:6px 0 10px}
@media (max-width:860px){.om-types{grid-template-columns:1fr}.om-plain-head{padding-top:120px}.om-plain-head h1{font-size:34px}}
.om-news{max-width:1100px;margin:0 auto 80px;padding:0 5%}
.om-article{border-top:1px solid var(--troon-line);padding:18px 0}
.om-article summary{cursor:pointer;list-style:none}
.om-article summary strong{display:block;font-size:19px}
.om-article summary span{display:block;margin-top:6px;opacity:.8}
.om-article p{margin:14px 0 0;line-height:1.8}
.om-lede{margin:22px 0 0}
