/*
Theme Name: APEX Transition
Theme URI: https://apex-sm.com/
Author: APEX Sports Management
Description: APEX archive-matched WordPress transition theme v2. Preserves previously imported APEX articles, pages, links and image assets.
Version: 2.2.0
Requires at least: 6.0
Text Domain: apex-transition
*/
/* Design reference: user-provided Weebly HTML/CSS archive (2026-10-31).
   No Weebly CDN, theme script, or font asset required. */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&display=swap');
:root{--apex-black:#080b11;--apex-navy:#12223b;--apex-blue:#273cc7;--apex-text:#111;--apex-white:#fff;--apex-gutter:clamp(20px,4vw,56px);--apex-content-width:1200px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:78px}
body{margin:0;background:#fff;color:var(--apex-text);font-family:Arial,"Noto Sans KR",sans-serif;font-size:16px;line-height:1.75;-webkit-font-smoothing:antialiased}
body.admin-bar{scroll-padding-top:110px}img{max-width:100%;height:auto}a{color:inherit;text-decoration:none}
h1,h2,h3,h4,h5,p{margin:0}h1,h2,h3,h4{font-family:Montserrat,Arial,sans-serif;line-height:1.3}
/* Original Weebly Birdseye header: overlaid on hero, compact white nav on scroll. */
.apex-header{position:absolute;top:0;left:0;right:0;z-index:100;background:transparent;color:#fff;transition:background .26s ease,box-shadow .26s ease,color .26s ease,transform .26s ease}
.apex-header.is-sticky{position:fixed;background:#fff;color:#0c1425;box-shadow:0 1px 14px rgba(0,0,0,.08)}
body.admin-bar .apex-header{top:32px}
.apex-top{max-width:1440px;margin:0 auto;padding:25px clamp(28px,3.8vw,56px);min-height:96px;display:flex;align-items:center;justify-content:space-between;gap:24px;transition:padding .24s,min-height .24s}
.apex-header.is-sticky .apex-top{padding-top:12px;padding-bottom:12px;min-height:72px}
.apex-logo{display:flex;align-items:center;min-width:0;gap:12px;flex-shrink:0}
.apex-logo img{height:42px;width:44px;max-width:44px;object-fit:contain;filter:brightness(0) invert(1);transition:filter .2s}
.apex-header.is-sticky .apex-logo img{filter:none}
.apex-logo strong{display:block;font:700 21px/1.15 Montserrat,Arial,sans-serif;letter-spacing:.15em}
.apex-logo small{display:block;margin-top:5px;font:500 10px/1.2 Montserrat,Arial,sans-serif;letter-spacing:.19em;opacity:.86}
.apex-nav{display:flex;align-items:center;justify-content:flex-end;gap:clamp(10px,2vw,28px)}
.apex-nav a{display:inline-block;padding:10px 0;color:inherit;font:600 11px/1.3 Montserrat,Arial,sans-serif;letter-spacing:.075em;white-space:nowrap;text-transform:uppercase;border-bottom:1px solid transparent;transition:opacity .22s,border-color .22s}
.apex-nav a:is(:hover,:focus-visible){opacity:.7}
.apex-nav a[aria-current="page"]{border-color:currentColor}
.apex-menu-toggle{display:none;background:transparent;color:inherit;border:1px solid currentColor;padding:8px 11px;border-radius:0;font:600 11px Montserrat,Arial,sans-serif;letter-spacing:.05em}
/* content bridge: imported Weebly DOM is maintained for editor compatibility */
.apex-sections,.apex-content,.apex-legacy-content,#wsite-content{width:100%;max-width:none;margin:0;padding:0}
.apex-legacy-content{overflow:hidden}
.apex-legacy-content .wsite-section-wrap,.apex-legacy-content .wsite-section{display:block;position:relative;max-width:none;width:100%;margin:0}
.apex-legacy-content .wsite-section{height:auto!important;min-height:0}
.apex-legacy-content .wsite-section-content{position:relative;z-index:1;width:100%}
.apex-legacy-content .wsite-section-content>.container{width:100%;max-width:var(--apex-content-width);margin:0 auto;padding:68px var(--apex-gutter)}
.apex-legacy-content .wsite-section-elements{width:100%;min-width:0;max-width:100%}
.apex-legacy-content .wsite-header-section{height:460px!important;min-height:460px;display:flex;align-items:center;justify-content:center;color:#fff;text-align:center;background-color:#263344;background-size:cover!important;background-repeat:no-repeat!important;isolation:isolate}
.apex-legacy-content .wsite-header-section::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.38) 0%,rgba(0,0,0,.15) 46%,rgba(0,0,0,.4) 100%);z-index:0}
.apex-legacy-content .wsite-header-section .wsite-section-content{width:100%}
.apex-legacy-content .wsite-header-section .container{padding:120px 30px 45px}
.apex-legacy-content .wsite-header-section .wsite-spacer{display:none}
.apex-legacy-content .wsite-header-section .banner{text-align:center}
.apex-legacy-content .wsite-header-section h2,.apex-legacy-content .wsite-header-section h2.wsite-content-title{max-width:100%;margin:12px auto 18px;color:white;font-family:Arial,"Noto Sans KR",sans-serif;font-weight:300;font-size:clamp(42px,7vw,80px);line-height:1.13;letter-spacing:-.04em;text-shadow:0 1px 1px rgba(0,0,0,.15)}
.apex-legacy-content .wsite-header-section h2 strong{font-weight:500}
.apex-legacy-content .wsite-header-section .paragraph{margin:8px auto;color:#fff;font:700 12px/1.5 Montserrat,Arial,sans-serif;letter-spacing:.15em}
.apex-legacy-content .wsite-header-section font{color:inherit}
body.apex-design-home .apex-legacy-content .wsite-header-section{min-height:720px;height:720px!important;background-position:50% 0%!important}
body.apex-design-home .apex-legacy-content .wsite-header-section h2{font-size:clamp(51px,6.7vw,87px)}
body.apex-design-services .apex-legacy-content .wsite-header-section{background-position:50% 24.56%!important}
body.apex-design-milestone .apex-legacy-content .wsite-header-section{background-position:50% 17.47%!important}
body.apex-design-media .apex-legacy-content .wsite-header-section{background-position:center!important}
body.apex-design-blueunitedfc .apex-legacy-content .wsite-header-section{min-height:550px;height:550px!important;background-position:48.05% 37.11%!important}
body.apex-design-contact .apex-legacy-content .wsite-header-section{min-height:390px;height:390px!important;background-position:50% 65.79%!important}
body.apex-design-lagalaxy .apex-legacy-content .wsite-header-section{min-height:480px;height:480px!important}
/* Weebly original column, spacer, buttons, and typography scale */
.apex-legacy-content h2.wsite-content-title{margin:0 auto 25px;color:#000;font-family:Montserrat,Arial,sans-serif;font-weight:700;font-size:clamp(23px,2.3vw,36px);line-height:1.28}
.apex-legacy-content h2.wsite-content-title font{font-size:inherit}
.apex-legacy-content h2.wsite-content-title strong{font-weight:700}
.apex-legacy-content .wsite-section-elements .paragraph,.apex-legacy-content .wsite-section-elements p{margin:0 auto 25px;font-size:16px;line-height:1.8;color:#111;font-family:Arial,"Noto Sans KR",sans-serif;overflow-wrap:anywhere}
.apex-legacy-content .wsite-section-elements .paragraph font,.apex-legacy-content .wsite-section-elements p font{font-family:inherit}
.apex-legacy-content .wsite-section-elements strong{font-weight:700}
.apex-legacy-content .wsite-section-elements .wsite-spacer{max-height:100px}
.apex-legacy-content .wsite-multicol{width:100%;max-width:100%;overflow:visible}
.apex-legacy-content .wsite-multicol-table-wrap{max-width:100%;overflow:visible}
.apex-legacy-content .wsite-multicol-table{width:100%;table-layout:fixed;border-collapse:collapse;border-spacing:0}
.apex-legacy-content .wsite-multicol-col{vertical-align:top;padding:0 14px;min-width:0;overflow-wrap:anywhere}
.apex-legacy-content .wsite-image{text-align:center;max-width:100%}
.apex-legacy-content .wsite-image img{display:inline-block;width:auto;max-width:100%;max-height:none;height:auto;object-fit:contain;vertical-align:middle}
.apex-legacy-content .wsite-image a{display:inline-block;max-width:100%}
.apex-legacy-content .styled-hr{border:0;border-top:1px solid #dadada;max-width:100%;margin:0}
.apex-legacy-content .wsite-button{display:inline-block;border:1px solid #111;padding:0;background:transparent;color:#111!important;transition:background .2s,color .2s}
.apex-legacy-content .wsite-button:hover{background:#121212;color:#fff!important}
.apex-legacy-content .wsite-button .wsite-button-inner{display:inline-block;padding:13px 28px;font:600 12px/1.1 Montserrat,Arial,sans-serif;letter-spacing:.04em;text-transform:uppercase}
.apex-legacy-content .wsite-button-highlight{background:#111!important;color:#fff!important}
.apex-legacy-content .wsite-button-highlight:hover{background:#333!important}
.apex-legacy-content .wsite-section-bg-image:not(.wsite-header-section){background-size:cover!important;background-position:center center;background-repeat:no-repeat!important;color:white;isolation:isolate}
.apex-legacy-content .wsite-section-bg-image:not(.wsite-header-section)::before{content:"";position:absolute;inset:0;z-index:0;background:rgba(0,0,0,.24)}
.apex-legacy-content .wsite-section-bg-image:not(.wsite-header-section) .wsite-content-title,.apex-legacy-content .wsite-section-bg-image:not(.wsite-header-section) .paragraph{color:#fff}
.apex-legacy-content .wsite-section-bg-image:not(.wsite-header-section) .wsite-section-content>.container{padding-top:88px;padding-bottom:88px}
body.apex-design-home .apex-legacy-content .wsite-background-44{min-height:500px}
body.apex-design-home .apex-legacy-content .wsite-background-47{min-height:680px}
body.apex-design-home .apex-legacy-content .wsite-background-47 .paragraph{color:#fff}
.apex-legacy-content .wsite-section-bg-color{background-color:#fff}
.apex-legacy-content .wsite-section-bg-image .wsite-button{color:white!important;border-color:white}
.apex-legacy-content .wsite-section-bg-image .wsite-button:hover{background:#fff;color:#111!important}
/* Featured project/gallery cards with consistent spacing */
.apex-photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:20px auto 40px;max-width:1180px}
.apex-photo-card{position:relative;display:block;min-width:0;aspect-ratio:4/3;overflow:hidden;text-align:center;background:#f3f4f6;border:0;text-decoration:none;isolation:isolate}
.apex-photo-card img{width:100%!important;height:100%!important;max-height:none!important;object-fit:cover!important;transition:transform .28s}
.apex-photo-card span{position:absolute;inset:0;display:flex;justify-content:center;align-items:center;padding:14px;background:rgba(0,0,0,.67);color:#fff;font-size:13px;font-weight:600;line-height:1.4;opacity:0;transition:opacity .2s}
.apex-photo-card:hover img,.apex-photo-card:focus-visible img{transform:scale(1.035)}
.apex-photo-card:hover span,.apex-photo-card:focus-visible span{opacity:1}
/* Media: hero and "Released Articles" retained from imported page, tiles show hover captions */
.apex-media-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;max-width:var(--apex-content-width);margin:8px auto 75px;padding:0 var(--apex-gutter);align-items:start}
.apex-media-grid .apex-article{position:relative;display:block;min-width:0;aspect-ratio:4/3;overflow:hidden;border:0;background:#e9eef3;color:#fff;text-decoration:none;isolation:isolate}
.apex-media-grid .apex-article img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;transition:transform .27s ease}
.apex-media-grid .apex-article strong{position:absolute;inset:0;z-index:2;display:flex;align-items:center;justify-content:center;padding:14px;text-align:center;color:#fff;background:rgba(0,0,0,.72);opacity:0;transform:translateY(3px);font:600 13px/1.5 Montserrat,Arial,sans-serif;word-break:keep-all;overflow-wrap:anywhere;transition:opacity .2s,transform .2s}
.apex-media-grid .apex-article:hover img,.apex-media-grid .apex-article:focus-visible img{transform:scale(1.04)}
.apex-media-grid .apex-article:hover strong,.apex-media-grid .apex-article:focus-visible strong{opacity:1;transform:none}
.apex-media-grid .apex-article:focus-visible,.apex-photo-card:focus-visible{outline:3px solid #2255d9;outline-offset:3px}
/* Never leave broken Weebly contact form. Contact link survives import. */
.apex-legacy-content .wsite-form-container{display:none!important}
.apex-contact-replacement{max-width:700px;margin:25px auto 45px;padding:32px 25px;text-align:center;border:1px solid #e1e5e9;background:#f8fafc}
.apex-contact-replacement p{margin:0 0 12px!important}
.apex-contact-replacement a{font:600 17px Montserrat,Arial,sans-serif;color:var(--apex-blue);text-decoration:underline;text-underline-offset:3px}
/* Footer closest to Weebly archive: light ground and compact locations */
.apex-footer{background:#f5f5f5;color:#222;border-top:1px solid #eee;margin:0}
.apex-footer-inner{max-width:var(--apex-content-width);padding:48px var(--apex-gutter);margin:auto;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px 48px;align-items:start}
.apex-footer strong{font:700 13px/1.4 Montserrat,Arial,sans-serif;letter-spacing:.05em}
.apex-footer p{font-size:13px;line-height:1.75;color:#555}
.apex-footer .apex-places{margin-top:15px}
.apex-footer a{text-decoration:underline;text-underline-offset:2px}
.apex-footer-nav{display:flex;justify-content:flex-end;gap:12px 20px;flex-wrap:wrap}
.apex-footer-nav a{font:600 11px/1.5 Montserrat,Arial,sans-serif;text-transform:uppercase;letter-spacing:.07em;text-decoration:none}
.apex-footer-copy{grid-column:1/-1;padding-top:18px;border-top:1px solid #ddd;font-size:12px!important}
.apex-sticky-social{position:fixed;right:0;top:53%;z-index:80;display:flex;flex-direction:column;gap:1px}
.apex-sticky-social a{display:block;writing-mode:vertical-rl;padding:13px 8px;background:#2239ba;color:#fff;font:600 10px Montserrat,Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase}
/* Responsive tables/photos, overflow protection */
@media(max-width:1100px){.apex-nav{gap:13px}.apex-top{padding-left:25px;padding-right:25px}.apex-logo strong{font-size:17px}.apex-media-grid,.apex-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:780px){
 html{scroll-padding-top:70px}body.admin-bar .apex-header{top:46px}
 .apex-header,.apex-header.is-sticky{position:fixed;background:rgba(255,255,255,.98);color:#111;box-shadow:0 1px 5px #00000012}
 .apex-logo img,.apex-header.is-sticky .apex-logo img{filter:none;height:34px;width:36px}
 .apex-logo strong{font-size:15px}.apex-logo small{font-size:8px}
 .apex-top,.apex-header.is-sticky .apex-top{padding:13px 17px;min-height:68px;flex-wrap:wrap}
 .apex-menu-toggle{display:block}
 .apex-nav{display:none;order:3;width:100%;flex-direction:column;align-items:stretch;gap:0;padding:10px 0 4px;border-top:1px solid #eee}
 .apex-nav.is-open{display:flex}.apex-nav a{display:block;padding:12px 3px;font-size:12px}
 .apex-legacy-content .wsite-header-section{height:380px!important;min-height:380px}
 body.apex-design-home .apex-legacy-content .wsite-header-section{height:540px!important;min-height:540px;background-position:center top!important}
 body.apex-design-blueunitedfc .apex-legacy-content .wsite-header-section{height:400px!important;min-height:400px}
 .apex-legacy-content .wsite-header-section .container{padding:115px 22px 40px}
 .apex-legacy-content .wsite-header-section h2,.apex-legacy-content .wsite-header-section h2.wsite-content-title{font-size:clamp(36px,8.2vw,62px);letter-spacing:-.025em}
 .apex-legacy-content .wsite-section-content>.container{padding:42px 22px}
 .apex-legacy-content .wsite-multicol-table,.apex-legacy-content .wsite-multicol-tbody,.apex-legacy-content .wsite-multicol-tr{display:block;width:100%!important}
 .apex-legacy-content .wsite-multicol-col{display:block;width:100%!important;padding:10px 0!important}
 .apex-legacy-content .wsite-spacer{max-height:38px!important}
 .apex-legacy-content .wsite-section-bg-image:not(.wsite-header-section) .wsite-section-content>.container{padding-top:58px;padding-bottom:58px}
 .apex-media-grid,.apex-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding-left:17px;padding-right:17px}
 .apex-photo-grid{padding:0}.apex-footer-inner{grid-template-columns:1fr;padding:34px 22px;gap:20px}.apex-footer-nav{justify-content:flex-start}
 .apex-sticky-social{display:none}
}
@media(max-width:420px){.apex-media-grid,.apex-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.apex-media-grid .apex-article strong{font-size:11px}.apex-legacy-content .wsite-header-section h2{font-size:38px}}
@media(hover:none),(pointer:coarse){
 .apex-media-grid .apex-article strong,.apex-photo-card span{inset:auto 0 0;min-height:38%;display:flex;align-items:flex-end;justify-content:flex-start;text-align:left;opacity:1;transform:none;padding:24px 11px 10px;background:linear-gradient(transparent,rgba(0,0,0,.91));font-size:11px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}

/* v2 archive audit finishing adjustments */
.apex-legacy-content .wsite-header-section h2.wsite-content-title strong{font-weight:300!important}
.apex-legacy-content .wsite-header-section .paragraph,.apex-legacy-content .wsite-header-section .paragraph strong,.apex-legacy-content .wsite-header-section .paragraph font{color:#fff!important;font-size:12px!important;line-height:1.5!important}
.apex-legacy-content .wsite-image img[src*="logo-br_3.png"]{max-width:190px!important;width:100%;max-height:185px!important;object-fit:contain}
body.apex-design-services .apex-legacy-content .wsite-background-53{background:#fff!important;color:#111!important}
body.apex-design-services .apex-legacy-content .wsite-background-53::before{display:none!important}
body.apex-design-services .apex-legacy-content .wsite-background-53 .wsite-content-title,body.apex-design-services .apex-legacy-content .wsite-background-53 .paragraph{color:#111!important}
body.apex-design-services .apex-legacy-content .wsite-background-53 .wsite-content-title font{color:inherit!important}
/* PDF download icons are locally bundled, not fetched from the old Weebly host. */
.apex-legacy-content img[src*="pdf-icon.svg"]{width:38px!important;height:47px!important;object-fit:contain}


/* APEX v2.1 responsive column & logo repair — archived content remains untouched.
   Cause: Weebly legacy inline <td> padding (100px per side) was inherited into fixed-width WordPress grid.
   Fixes: 3 service shortcuts, non-cropped Milestone client logos, safe spacing across archive pages. */
.apex-legacy-content .wsite-multicol-table-wrap { margin-left:0!important; margin-right:0!important; width:100%!important; }
.apex-legacy-content .wsite-multicol-table { width:100%!important; table-layout:fixed!important; }
.apex-legacy-content .wsite-multicol-col {
  box-sizing:border-box!important; padding-left:14px!important; padding-right:14px!important;
  overflow-wrap:break-word!important;word-break:normal!important;
}
.apex-legacy-content .wsite-multicol-col h2,
.apex-legacy-content .wsite-multicol-col .paragraph {
  word-break:normal!important; overflow-wrap:break-word!important; hyphens:none!important;
}
/* Home: original Weebly three-column milestone / services / media shortcuts */
body.apex-design-home .apex-legacy-content .wsite-background-47 .wsite-multicol-table-wrap{margin:0!important}
body.apex-design-home .apex-legacy-content .wsite-background-47 .wsite-multicol-table{table-layout:fixed!important;width:100%!important}
body.apex-design-home .apex-legacy-content .wsite-background-47 .wsite-multicol-col{
  width:33.333333%!important;padding:4px clamp(12px,2.5vw,32px)!important;text-align:center;
  vertical-align:top;overflow-wrap:normal!important;word-break:normal!important;
}
body.apex-design-home .apex-legacy-content .wsite-background-47 .wsite-multicol-col h2.wsite-content-title{
  font:700 clamp(19px,2vw,27px)/1.3 Montserrat,Arial,sans-serif!important;
  margin:10px auto 18px!important;letter-spacing:.015em;color:#fff!important;overflow-wrap:normal!important;
}
body.apex-design-home .apex-legacy-content .wsite-background-47 .wsite-multicol-col h2.wsite-content-title font{
  font-size:inherit!important;line-height:inherit!important;color:#fff!important;
}
body.apex-design-home .apex-legacy-content .wsite-background-47 .wsite-multicol-col .paragraph{
  max-width:280px!important;margin:0 auto 14px!important;
  font-size:15px!important;line-height:1.75!important;color:#fff!important;
  overflow-wrap:normal!important;word-break:normal!important;
}
body.apex-design-home .apex-legacy-content .wsite-background-47 .wsite-multicol-col .paragraph font{
  font-size:inherit!important;color:inherit!important;line-height:inherit!important;
}
/* The 3 original white icon files were archived, but the importer dropped the missing editor/ paths.
   Restore the icon using CSS, so no change to imported Home page data is needed. */
body.apex-design-home .apex-legacy-content .wsite-background-47 .wsite-multicol-col .wsite-image {padding:0!important;margin:0 auto 12px!important;}
body.apex-design-home .apex-legacy-content .wsite-background-47 .wsite-multicol-col .wsite-image>a {
  display:block!important;width:105px!important;max-width:100%!important;height:92px!important;
  margin:0 auto!important;background-repeat:no-repeat;background-position:center;background-size:contain;
  transition:transform .2s ease;
}
body.apex-design-home .apex-legacy-content .wsite-background-47 .wsite-multicol-col .wsite-image>a:hover {transform:translateY(-3px)}
body.apex-design-home .apex-legacy-content .wsite-background-47 td:nth-child(1) .wsite-image>a{background-image:url('assets/archive-icons/milestone.png')}
body.apex-design-home .apex-legacy-content .wsite-background-47 td:nth-child(2) .wsite-image>a{background-image:url('assets/archive-icons/services.png')}
body.apex-design-home .apex-legacy-content .wsite-background-47 td:nth-child(3) .wsite-image>a{background-image:url('assets/archive-icons/media.png')}
/* Milestone gallery: logo is artwork, never a photographic crop.
   Equal square cards with the complete crest visible, including 51 differently shaped badges. */
body.apex-design-milestone .apex-photo-grid{
  display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;
  max-width:1060px!important;gap:16px!important;margin:22px auto 52px!important;
}
body.apex-design-milestone .apex-photo-card{
  aspect-ratio:1/1!important;background:#fff!important;
  border:1px solid #e6eaf0!important;display:block!important;min-width:0!important;
}
body.apex-design-milestone .apex-photo-card img{
  width:100%!important;height:100%!important;object-fit:contain!important;
  object-position:center center!important;padding:18px!important;max-width:none!important;
  transition:transform .22s ease!important;
}
body.apex-design-milestone .apex-photo-card:hover img{transform:scale(1.025)}
body.apex-design-milestone .apex-photo-card span{
  font-size:12px!important;padding:16px!important;line-height:1.5!important;word-break:keep-all;
}
/* Contact: center the enquiry column and preserve wide desktop reading width. */
body.apex-design-contact .apex-legacy-content .wsite-background-57 .wsite-multicol-col:nth-child(1),
body.apex-design-contact .apex-legacy-content .wsite-background-57 .wsite-multicol-col:nth-child(3){width:15%!important}
body.apex-design-contact .apex-legacy-content .wsite-background-57 .wsite-multicol-col:nth-child(2){width:70%!important}
body.apex-design-contact .apex-contact-replacement{max-width:560px!important;padding:28px!important;margin:10px auto 36px!important;}
body.apex-design-contact .apex-legacy-content .wsite-background-57 .wsite-section-content>.container{padding-top:48px;padding-bottom:60px}
/* Layout safety: imported section cells should never break a single word across arbitrary letters. */
.apex-legacy-content .wsite-section-elements .paragraph,
.apex-legacy-content .wsite-section-elements p{overflow-wrap:break-word;word-break:normal}
@media (max-width:1000px){
 body.apex-design-milestone .apex-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}
}
@media (max-width:780px){
 body.apex-design-home .apex-legacy-content .wsite-background-47 .wsite-multicol-col{
   display:block!important;width:100%!important;padding:22px 8px!important;
 }
 body.apex-design-home .apex-legacy-content .wsite-background-47 .wsite-multicol-col .wsite-image>a{height:78px!important;width:90px!important}
 body.apex-design-home .apex-legacy-content .wsite-background-47 .wsite-multicol-col .paragraph{max-width:340px!important}
 body.apex-design-milestone .apex-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
 body.apex-design-milestone .apex-photo-card img{padding:12px!important}
 body.apex-design-contact .apex-legacy-content .wsite-background-57 .wsite-multicol-col:nth-child(1),
 body.apex-design-contact .apex-legacy-content .wsite-background-57 .wsite-multicol-col:nth-child(3){display:none!important}
 body.apex-design-contact .apex-legacy-content .wsite-background-57 .wsite-multicol-col:nth-child(2){display:block!important;width:100%!important}
 body.apex-design-contact .apex-contact-replacement{max-width:100%!important}
}
@media (max-width:450px){
 body.apex-design-milestone .apex-photo-grid{gap:8px!important}
 body.apex-design-milestone .apex-photo-card img{padding:9px!important}
}

/* ==============================================================
   APEX v2.2 — global layout, scale and overflow normalization
   Baseline: user-exported Weebly DOM; WP content remains untouched.
   =============================================================== */
:root{
  --apex-title-font:Montserrat,Arial,Helvetica,sans-serif;
  --apex-copy-font:Arial,"Noto Sans KR",Helvetica,sans-serif;
  --apex-section-title:clamp(28px,3vw,38px);
  --apex-section-lead:clamp(16px,1.5vw,19px);
  --apex-column-heading:clamp(19px,2vw,25px);
  --apex-leading:1.68;
}
.apex-page{overflow-x:clip}
.apex-legacy-content,.apex-legacy-content :is(.wsite-section-content,.container,.wsite-section-elements,.wsite-multicol,.wsite-multicol-table-wrap){min-width:0}
.apex-legacy-content .wsite-section-elements{max-width:100%;overflow:visible}
/* Headings copied from Weebly include font tags with size=4/6/7, which otherwise
   take precedence unpredictably over the site-wide heading hierarchy. */
.apex-legacy-content h2.wsite-content-title,
.apex-legacy-content h3.wsite-content-title{
  font-family:var(--apex-title-font)!important;
  font-size:var(--apex-section-title)!important;
  font-weight:700!important;
  line-height:1.25!important;
  letter-spacing:-.022em!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
  max-width:100%;
}
.apex-legacy-content .wsite-content-title :is(font,span,strong,em),
.apex-legacy-content .wsite-section-elements .paragraph :is(font,span,strong,em),
.apex-legacy-content .wsite-section-elements p :is(font,span,strong,em){
  font-family:inherit!important;
  font-size:inherit!important;
  line-height:inherit!important;
  letter-spacing:inherit!important;
}
.apex-legacy-content .wsite-content-title :is(font,span){font-weight:inherit!important}
.apex-legacy-content .wsite-section-elements .paragraph,
.apex-legacy-content .wsite-section-elements p{
  font-family:var(--apex-copy-font)!important;
  font-size:16px!important;
  line-height:var(--apex-leading)!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
  hyphens:none!important;
}
/* All major page hero headings are the same typeface and scale. The Home hero
   is deliberately one step larger, matching the old site hierarchy. */
.apex-legacy-content .wsite-header-section h2.wsite-content-title{
  font-family:var(--apex-title-font)!important;
  font-size:clamp(40px,5.4vw,69px)!important;
  font-weight:500!important;
  line-height:1.16!important;
  letter-spacing:-.035em!important;
  color:#fff!important;
  max-width:1050px!important;
  padding-inline:12px;
  margin:0 auto 15px!important;
  text-align:center!important;
}
.apex-legacy-content .wsite-header-section h2.wsite-content-title :is(strong,font,span){
  font-family:inherit!important;font-size:inherit!important;
  font-weight:inherit!important;line-height:inherit!important;color:inherit!important
}
body.apex-design-home .apex-legacy-content .wsite-header-section h2.wsite-content-title{font-size:clamp(46px,6.4vw,84px)!important}
.apex-legacy-content .wsite-header-section .paragraph,
.apex-legacy-content .wsite-header-section .paragraph :is(font,strong,span){
  font-family:var(--apex-title-font)!important;
  font-size:12px!important;line-height:1.5!important;color:#fff!important;
  letter-spacing:.12em!important;
}
/* Top-level section subtitles share one predictable size and weight.
   More specific card/grid headers follow below. */
.apex-legacy-content .wsite-body-section .wsite-section-elements>h2.wsite-content-title{
  max-width:940px;margin:0 auto 17px!important;
}
.apex-legacy-content .wsite-body-section .wsite-section-elements>h2.wsite-content-title:nth-of-type(2){
  font-family:var(--apex-copy-font)!important;
  font-size:var(--apex-section-lead)!important;
  font-weight:400!important;line-height:1.55!important;
  letter-spacing:0!important;margin-top:-2px!important;margin-bottom:34px!important;
}
/* Internal column headings: don't treat card titles as 38px section titles. */
.apex-legacy-content .wsite-multicol-col h2.wsite-content-title{
  font-size:var(--apex-column-heading)!important;
  font-weight:700!important;
  line-height:1.35!important;
  letter-spacing:-.01em!important;
  margin:0 auto 13px!important;
  overflow-wrap:normal!important;
}
.apex-legacy-content .wsite-multicol-col :is(.paragraph,p){font-size:15px!important;line-height:1.7!important}
.apex-legacy-content .wsite-multicol-col{overflow:visible!important;min-width:0!important;word-break:normal!important;overflow-wrap:normal!important}
.apex-legacy-content .wsite-multicol-col *{max-width:100%}
.apex-legacy-content .wsite-multicol-table-wrap{overflow:visible!important}
/* Normalize images/figures; preserve full art, avoid spurious float and layout jumps. */
.apex-legacy-content .wsite-image{max-width:100%!important;margin-left:auto!important;margin-right:auto!important}
.apex-legacy-content .wsite-image img{
  box-sizing:border-box;display:inline-block;max-width:100%!important;
  height:auto!important;object-fit:contain!important;float:none!important;
}
.apex-legacy-content .wsite-image a{max-width:100%!important}
.apex-legacy-content img[src*="pdf-icon.svg"]{width:28px!important;max-width:28px!important;height:35px!important;vertical-align:middle}
.apex-legacy-content .wsite-section-content>.container{box-sizing:border-box;width:100%;max-width:1200px;padding-inline:clamp(24px,4vw,62px)}
.apex-legacy-content .wsite-section-elements .wsite-spacer{height:32px!important;max-height:32px!important}
/* Home shortcut panels — three true equally-sized columns, regardless of the
   old 34/31/35% widths and 100px inline cell padding. */
body.apex-design-home .apex-legacy-content .wsite-background-47 .wsite-section-content>.container{max-width:1180px;padding-top:65px;padding-bottom:75px}
body.apex-design-home .apex-legacy-content .wsite-background-47 .wsite-multicol-table{table-layout:fixed!important;width:100%!important}
body.apex-design-home .apex-legacy-content .wsite-background-47 .wsite-multicol-col{
  box-sizing:border-box!important;width:33.333%!important;
  padding:12px clamp(12px,2.2vw,34px)!important;
  vertical-align:top;text-align:center!important;
  word-break:normal!important;overflow-wrap:normal!important;
}
body.apex-design-home .apex-legacy-content .wsite-background-47 .wsite-multicol-col h2.wsite-content-title{
  font-family:var(--apex-title-font)!important;
  font-size:clamp(20px,1.9vw,26px)!important;
  line-height:1.3!important;
  word-break:keep-all!important;white-space:normal!important;
  max-width:100%;margin:11px auto 17px!important;
}
body.apex-design-home .apex-legacy-content .wsite-background-47 .wsite-multicol-col .paragraph{
  max-width:260px!important;font-size:15px!important;
  line-height:1.7!important;word-break:normal!important;
  overflow-wrap:break-word!important;margin:0 auto!important;
}
body.apex-design-home .apex-legacy-content .wsite-background-47 .wsite-multicol-col .wsite-image>a{
  width:94px!important;height:91px!important;display:block!important;
  margin:0 auto!important;background-size:contain!important;
}
body.apex-design-home .apex-legacy-content .wsite-background-47 .wsite-section-elements>h2.wsite-content-title{color:#fff!important}
body.apex-design-home .apex-legacy-content .wsite-background-47 .wsite-section-elements>h2.wsite-content-title:nth-of-type(2){color:#fff!important}
body.apex-design-home .apex-legacy-content .wsite-background-47 .wsite-spacer{max-height:28px!important;height:28px!important}
/* The old Home 'Who we are' section has five columns (blank gutters and two
   readable narrative columns). Retain intended asymmetry without text squeeze. */
body.apex-design-home .apex-legacy-content .wsite-background-44 .wsite-multicol-col{padding:0 10px!important}
body.apex-design-home .apex-legacy-content .wsite-background-44 .wsite-section-content>.container{padding-top:72px;padding-bottom:72px}
/* Services' three original tables have 5 columns: empty gutter, CONTENT, narrow
   empty gutter, CONTENT, empty gutter. CSS grid removes wasted column widths. */
body.apex-design-services .apex-legacy-content .wsite-background-53 .wsite-multicol-table,
body.apex-design-services .apex-legacy-content .wsite-background-53 .wsite-multicol-tbody{display:block!important;width:100%!important}
body.apex-design-services .apex-legacy-content .wsite-background-53 .wsite-multicol-tr{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(24px,5vw,78px);width:100%!important;align-items:start;
}
body.apex-design-services .apex-legacy-content .wsite-background-53 .wsite-multicol-col{
  display:block!important;box-sizing:border-box!important;width:100%!important;
  min-width:0!important;padding:0 10px!important;
}
body.apex-design-services .apex-legacy-content .wsite-background-53 .wsite-multicol-col:nth-child(1),
body.apex-design-services .apex-legacy-content .wsite-background-53 .wsite-multicol-col:nth-child(3),
body.apex-design-services .apex-legacy-content .wsite-background-53 .wsite-multicol-col:nth-child(5){display:none!important}
body.apex-design-services .apex-legacy-content .wsite-background-53 .wsite-multicol-col:nth-child(2){grid-column:1}
body.apex-design-services .apex-legacy-content .wsite-background-53 .wsite-multicol-col:nth-child(4){grid-column:2}
body.apex-design-services .apex-legacy-content .wsite-background-53 .wsite-multicol-col .paragraph{max-width:440px;margin:0 auto 20px!important}
body.apex-design-services .apex-legacy-content .wsite-background-53 .wsite-spacer{height:22px!important;max-height:22px!important}
/* Gallery — stable four-across desktop, full logo visible in equal squares. */
body.apex-design-milestone .apex-photo-grid{
  width:100%;max-width:1090px!important;
  display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:14px!important;padding:0 clamp(15px,2vw,24px)!important;
  margin:30px auto 55px!important;
}
body.apex-design-milestone .apex-photo-card{
  width:100%;min-width:0;aspect-ratio:1/1!important;
  background:#fff!important;border:1px solid #e6eaf0!important;
  overflow:hidden!important;
}
body.apex-design-milestone .apex-photo-card img{
  position:absolute!important;inset:0!important;
  box-sizing:border-box!important;display:block!important;
  width:100%!important;height:100%!important;
  object-fit:contain!important;object-position:center!important;
  padding:clamp(12px,1.7vw,23px)!important;
}
body.apex-design-milestone .apex-photo-card span{
  overflow-wrap:break-word!important;word-break:keep-all!important;
  font-family:var(--apex-copy-font)!important;
}
/* Media photography stays photographic; the Milestone rule above deliberately
   never applies to its article thumbnail tiles. */
body.apex-design-media .apex-media-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
body.apex-design-media .apex-media-grid .apex-article{aspect-ratio:4/3;min-width:0}
body.apex-design-media .apex-media-grid .apex-article img{object-fit:cover!important;object-position:center}
/* Contact: consistent rhythm between heading, emblem, address panel. */
body.apex-design-contact .apex-legacy-content .wsite-background-57 .wsite-section-content>.container{padding-top:65px!important;padding-bottom:66px!important}
body.apex-design-contact .apex-legacy-content .wsite-background-57 .wsite-section-elements>.wsite-spacer{display:none!important}
body.apex-design-contact .apex-legacy-content .wsite-background-57 .wsite-section-elements>h2.wsite-content-title:nth-of-type(2){margin-bottom:23px!important}
body.apex-design-contact .apex-legacy-content .wsite-background-57 .wsite-image{padding-top:6px!important;padding-bottom:14px!important}
body.apex-design-contact .apex-legacy-content .wsite-background-57 .wsite-image img{max-height:155px!important;max-width:180px!important;width:auto!important}
body.apex-design-contact .apex-contact-replacement{margin:20px auto 18px!important;padding:25px!important;max-width:520px!important}
/* B.U.F.C. card content was composed with several inline font sizes inside a
   single h2. Preserve the schedule as readable detail instead of 38px text. */
body.apex-design-blueunitedfc .apex-legacy-content .wsite-background-62 .wsite-multicol-col h2.wsite-content-title{
  font-size:20px!important;line-height:1.65!important;
  font-family:var(--apex-copy-font)!important;
  text-align:left!important;margin-bottom:20px!important;
}
body.apex-design-blueunitedfc .apex-legacy-content .wsite-background-62 .wsite-multicol-col h2 font[size="2"]{
  font-size:13px!important;font-weight:400!important;color:#687182!important;
}
body.apex-design-blueunitedfc .apex-legacy-content .wsite-background-62 .wsite-multicol-col{padding-inline:18px!important}
@media(max-width:1100px){
  body.apex-design-milestone .apex-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  body.apex-design-media .apex-media-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:780px){
  .apex-legacy-content .wsite-header-section h2.wsite-content-title{font-size:clamp(34px,7.5vw,55px)!important}
  body.apex-design-home .apex-legacy-content .wsite-header-section h2.wsite-content-title{font-size:clamp(42px,9vw,63px)!important}
  .apex-legacy-content .wsite-body-section .wsite-section-elements>h2.wsite-content-title{font-size:clamp(26px,6vw,34px)!important}
  .apex-legacy-content .wsite-body-section .wsite-section-elements>h2.wsite-content-title:nth-of-type(2){font-size:16px!important}
  .apex-legacy-content .wsite-section-content>.container{padding:45px 20px!important}
  .apex-legacy-content .wsite-multicol-table,.apex-legacy-content .wsite-multicol-tbody,.apex-legacy-content .wsite-multicol-tr{display:block!important;max-width:100%!important}
  .apex-legacy-content .wsite-multicol-col{display:block!important;width:100%!important;padding:10px 0!important}
  body.apex-design-home .apex-legacy-content .wsite-background-47 .wsite-multicol-col{display:block!important;width:100%!important;padding:22px 12px!important}
  body.apex-design-home .apex-legacy-content .wsite-background-47 .wsite-multicol-col h2.wsite-content-title{font-size:23px!important}
  body.apex-design-home .apex-legacy-content .wsite-background-47 .wsite-section-content>.container{padding-top:42px!important;padding-bottom:48px!important}
  body.apex-design-services .apex-legacy-content .wsite-background-53 .wsite-multicol-tr{grid-template-columns:1fr;gap:30px!important}
  body.apex-design-services .apex-legacy-content .wsite-background-53 .wsite-multicol-col:nth-child(2),
  body.apex-design-services .apex-legacy-content .wsite-background-53 .wsite-multicol-col:nth-child(4){grid-column:1}
  body.apex-design-milestone .apex-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;padding:0 16px!important;gap:10px!important}
  body.apex-design-milestone .apex-photo-card img{padding:13px!important}
  body.apex-design-media .apex-media-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;padding:0 16px!important}
  body.apex-design-contact .apex-legacy-content .wsite-background-57 .wsite-section-content>.container{padding:50px 22px!important}
  body.apex-design-contact .apex-legacy-content .wsite-background-57 .wsite-multicol-col:nth-child(1),
  body.apex-design-contact .apex-legacy-content .wsite-background-57 .wsite-multicol-col:nth-child(3){display:none!important}
  body.apex-design-contact .apex-legacy-content .wsite-background-57 .wsite-multicol-col:nth-child(2){display:block!important;width:100%!important}
}
@media(max-width:420px){
 body.apex-design-milestone .apex-photo-grid{gap:8px!important}
 body.apex-design-milestone .apex-photo-card img{padding:8px!important}
 body.apex-design-media .apex-media-grid{gap:9px!important}
 .apex-legacy-content .wsite-section-elements .wsite-spacer{height:20px!important;max-height:20px!important}
}
