/* WordPress adapters for the approved design. */
html{scroll-behavior:smooth}
body.admin-bar .hdr{top:32px}
body.admin-bar .mnav{top:32px}
@media(max-width:782px){body.admin-bar .hdr{top:46px}body.admin-bar .mnav{top:46px}}
.nav-list{display:flex;align-items:center;gap:clamp(18px,2.2vw,34px);margin:0;padding:0;list-style:none}
.nav-list li{margin:0;padding:0}
.nav-list a[aria-current],.nav-list .current-menu-item>a{color:var(--accent)}
.mnav .mobile-nav-list{display:flex;flex-direction:column;margin:0;padding:0;list-style:none}
.mnav .mobile-nav-list li{display:block}
.mnav nav .mobile-nav-list a{display:flex;width:100%}
.mnav[hidden]{display:none!important}
body.nav-open{overflow:hidden}
.editor-preview-link{display:inline-flex;align-items:center;color:#fff;text-decoration:underline;text-underline-offset:3px}
.g-logo .g-official-logo{display:block;width:44px;height:44px;object-fit:contain;flex:none}
.g-logo .g-mark{font-size:21px}
.g-logo .g-mark::after{display:none}
.k-logo .k-official-logo{display:block;width:52px;height:52px;flex:none;object-fit:contain;mix-blend-mode:multiply}
.k-foot-mark{display:flex;align-items:center;gap:clamp(14px,2vw,28px)}
.k-foot-mark .k-official-logo{display:block;width:clamp(64px,7vw,88px);height:auto;flex:none;mix-blend-mode:multiply}
.ph .design-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1}
.ph:has(.design-photo)::before{z-index:2}
body[data-brand=tkd] .ph:has(.design-photo)::before{opacity:.08}
.k-hero-media .design-photo{object-position:center 48%}
body[data-brand=tkd] .k-par .stick .ph{aspect-ratio:2/3;max-width:400px;background:transparent}
body[data-brand=tkd] .k-par .design-photo{object-fit:cover;object-position:center}
body[data-brand=tkd] .kcard:nth-child(1) .design-photo{object-position:center 29%}
body[data-brand=tkd] .kcard:nth-child(2) .design-photo{object-position:center 47%}
body[data-brand=tkd] .kcard:nth-child(3) .design-photo{object-position:center 18%}
.map-embed{background-image:none}
.map-embed__frame{position:absolute;inset:0;width:100%;height:100%;border:0}
.map-embed__fallback{position:absolute;inset:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:12px;padding:clamp(18px,3vw,36px);background:var(--bg2)}
.map-embed__fallback a{color:var(--fg);font-weight:600;text-underline-offset:4px}
body[data-brand=tkd] .k-process-art{display:flex;align-items:center;justify-content:center;gap:clamp(18px,2.4vw,32px);background:#ebe9e2;border:1px solid var(--line);color:#111}
body[data-brand=tkd] .k-process-art::before{display:none}
body[data-brand=tkd] .k-process-art__rule{position:absolute;left:12%;right:12%;top:50%;height:1px;background:#96938b}
body[data-brand=tkd] .k-process-art__step{position:relative;z-index:1;display:grid;place-items:center;width:clamp(52px,5vw,70px);aspect-ratio:1;border:1px solid #111;border-radius:50%;background:#ebe9e2;font:400 clamp(21px,2.1vw,30px)/1 var(--display)}
body[data-brand=tkd] .k-process-art__end{position:absolute;left:12%;right:12%;bottom:12%;height:1px;background:#b8b5ae}
body[data-brand=tkd] .content-shell .entry-content .tkd-editorial-photo{max-width:420px;margin-block:32px 44px}
body[data-brand=tkd] .content-shell .entry-content .tkd-editorial-photo img{display:block;width:100%;height:auto;object-fit:contain}
body[data-brand=tkd] .content-shell .entry-content .tkd-editorial-photo figcaption{margin-top:8px;color:var(--muted);font:500 11px/1.45 var(--mono);letter-spacing:.03em}
.ph .photo-disclosure{position:absolute;right:14px;bottom:12px;z-index:3;padding:5px 8px;background:rgba(0,0,0,.68);color:#fff;font:500 10px/1.3 var(--mono);letter-spacing:.06em;text-transform:uppercase}
.g-intro-ph .design-photo{object-position:center 49%}
.g-about-m .design-photo{object-position:center center}
@media(max-width:900px){body[data-brand=gsc] .g-about-m .ph{aspect-ratio:4/5}}
.g-gal .a .design-photo{object-fit:contain;object-position:center center}
.g-gal .b .design-photo{object-position:center 38%}
.g-gal .c .design-photo{object-position:center 32%}
.g-gal .d .design-photo{object-position:center 40%}
.content-shell .entry-content>.wp-block-image.is-portrait img{width:525px;max-width:100%;height:auto}
.content-shell .entry-content .gsc-program-photos{gap:clamp(12px,2vw,28px);margin-block:32px 44px}
.content-shell .entry-content .gsc-program-photos .wp-block-column{min-width:0}
.content-shell .entry-content .gsc-program-photos .wp-block-image{margin:0}
.content-shell .entry-content .gsc-program-photos img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.content-shell .entry-content .gsc-program-photos .wp-block-image.is-portrait img{aspect-ratio:4/5;object-position:center 35%}
.content-shell .entry-content .gsc-program-photos figcaption{margin-top:8px;color:var(--muted);font:500 11px/1.45 var(--mono);letter-spacing:.03em}
@media(max-width:700px){.content-shell .entry-content .gsc-program-photos{gap:18px}.content-shell .entry-content .gsc-program-photos img{aspect-ratio:16/10}.content-shell .entry-content .gsc-program-photos .wp-block-image.is-portrait img{aspect-ratio:4/5}}
.foot-note{color:var(--muted);font-size:14px!important}
.g-about-copy>*+*{margin-top:12px}
.g-about-copy h2,.g-about-copy h3{font-size:18px;line-height:1.2;margin:0 0 12px}
.g-about-copy p{font:inherit;color:inherit}
.g-about-copy .wp-block-group{margin:0}
.g-about-copy .wp-block-group>*+*{margin-top:12px}
.g-about-copy .wp-block-group h2{display:none}
.g-hero-h em{font-style:normal;color:var(--accent)}
.g-hero-h br{display:block}
.bj-node .bj-tip{display:none}
@media(hover:hover) and (min-width:761px){.bj-node .bj-tip{display:block}}
.bj-stagebox svg{z-index:1}
.bj-panel .bj-nav button:disabled{opacity:.4;cursor:not-allowed}
.bj-node:focus-visible{outline:2px solid #111;outline-offset:4px}
.content-shell{padding:clamp(48px,6vw,88px) var(--gut) clamp(88px,10vw,160px)}
.content-shell .entry-content{max-width:860px;font-size:16px;line-height:1.75;color:var(--fg)}
.content-shell .entry-content>*+*{margin-top:24px}
.content-shell .entry-content h2{font-family:var(--display);font-size:clamp(30px,3vw,44px);line-height:1.08;margin-top:54px}
.content-shell .entry-content h3{font-family:var(--display);font-size:clamp(23px,2.3vw,32px);line-height:1.15;margin-top:36px}
body[data-brand=gsc] .content-shell .entry-content h2,body[data-brand=gsc] .content-shell .entry-content h3{font-weight:800;font-stretch:120%;text-transform:uppercase;letter-spacing:-.025em}
body[data-brand=tkd] .content-shell .entry-content h2,body[data-brand=tkd] .content-shell .entry-content h3{font-weight:400}
.content-shell .entry-content p,.content-shell .entry-content li{max-width:76ch}
.content-shell .entry-content a:not(.btn){text-decoration:underline;text-underline-offset:3px}
.content-shell .entry-content ul,.content-shell .entry-content ol{padding-left:22px;list-style:revert}
.content-shell .entry-content li+li{margin-top:10px}
.content-shell .entry-content .wp-block-group{padding:24px 0;border-top:1px solid var(--line)}
.content-shell .entry-content .wp-block-group>*+*{margin-top:12px}
.contact-location-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(32px,5vw,72px);align-items:start}
.contact-location{min-width:0}
.contact-location h2{font-family:var(--display);font-size:clamp(27px,2.7vw,38px);line-height:1.1;margin-bottom:12px}
body[data-brand=gsc] .contact-location h2{font-weight:800;font-stretch:120%;text-transform:uppercase;letter-spacing:-.025em}
body[data-brand=tkd] .contact-location h2{font-weight:400}
.contact-location>p{color:var(--muted);font-size:15px;line-height:1.5;margin-bottom:20px}
.contact-location .map{aspect-ratio:16/11}
.contact-location>.btn{margin-top:20px}
.shop-coming{max-width:76ch;margin-top:40px;padding-top:28px;border-top:1px solid var(--line)}
.shop-coming .label{display:block;margin-bottom:12px}
.shop-coming h2{font-family:var(--display);font-size:clamp(26px,3vw,40px);line-height:1.1;margin-bottom:14px}
.page-next-action{display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin-top:48px;padding-top:28px;border-top:1px solid var(--line)}
.page-next-action a:not(.btn){text-decoration:underline;text-underline-offset:4px}
.page-next-action svg{width:16px}
.schedule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--g);margin-top:48px}
.schedule-day{border-top:1px solid var(--line);padding:26px;background:var(--bg2)}
.schedule-day h2{font:700 clamp(22px,2.3vw,32px)/1.1 var(--display);margin-bottom:16px}
.schedule-day .schedule-day-content{line-height:1.65;color:var(--muted)}
.schedule-day .schedule-day-content>*+*{margin-top:12px}
.schedule-day .schedule-day-content ul{list-style:disc;padding-left:20px}
.schedule-day .schedule-day-content li+li{margin-top:8px}
.schedule-note{max-width:78ch;margin-top:24px;color:var(--muted)}
.schedule-shared-link{margin-top:28px}
body[data-brand=tkd] .gsc-reg{font-family:var(--body)}
body[data-brand=gsc] .gsc-reg{--reg-ink:var(--fg);--reg-surface:var(--bg2);--reg-raised:var(--bg3);--reg-line:var(--line);--reg-accent:var(--accent);--reg-muted:var(--muted);border-radius:0}
body[data-brand=tkd] .gsc-reg{--reg-surface:#fdfcf9;--reg-raised:#eeede8;border-radius:0}
.content-shell .gsc-reg{max-width:960px;margin-inline:0}
.content-shell .gsc-reg button,.content-shell .gsc-reg input,.content-shell .gsc-reg select{font-family:inherit}
.gsc-belt-editor{border:1px solid #ddd;margin:16px 0;padding:12px}
.gsc-belt-editor label{display:inline-block;vertical-align:top;min-width:140px;max-width:260px;margin:6px 8px 6px 0}
.gsc-belt-editor label:last-child{display:block;max-width:none}
.gsc-belt-editor input{margin-top:4px}
@media(max-width:900px){.schedule-grid,.contact-location-layout{grid-template-columns:1fr}.contact-location{max-width:760px}.contact-location .map{aspect-ratio:16/9}}
@media(max-width:700px){.nav-list{display:none}.g-logo .g-sub{display:none}.g-logo .g-mark{font-size:18px}.g-logo .g-official-logo{width:38px;height:38px}.content-shell{padding-inline:var(--gut)}.content-shell .entry-content{font-size:15px}.foot-cols{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.k-logo .k-official-logo{width:44px;height:44px}.k-foot-mark{font-size:clamp(36px,8vw,56px)}}
@media(max-width:560px){body[data-brand=gsc] .g-ph .g-h1.sm{font-size:clamp(32px,8.8vw,44px);font-stretch:100%;overflow-wrap:anywhere;max-width:100%}}
@media(max-width:480px){.foot-cols{grid-template-columns:1fr}.g-hero-h{overflow-wrap:anywhere}.content-shell .entry-content .wp-block-group{padding:16px 0}}
