/* [MCP:mcp-layout] */
/* Native widget CSS overrides */
.wc-custom-layout .wi-ABA20296-D23E-4D80-B2B0-33CFF6B0CD6F .widget-storeLogo img, .wc-custom-layout .wi-ABA20296-D23E-4D80-B2B0-33CFF6B0CD6F img.store-logo-img { width: 161px; height: 161px; max-width: 100%; object-fit: contain; }
.wc-custom-layout .wi-ABA20296-D23E-4D80-B2B0-33CFF6B0CD6F { display: block; }
/* StoreLogo widget — reset WC site-base defaults */
.wc-custom-layout .wi-ABA20296-D23E-4D80-B2B0-33CFF6B0CD6F { display: inline-block; vertical-align: middle; }
.wc-custom-layout .wi-ABA20296-D23E-4D80-B2B0-33CFF6B0CD6F a { display: inline-block; text-decoration: none; color: inherit; }
.wc-custom-layout .wi-ABA20296-D23E-4D80-B2B0-33CFF6B0CD6F a::before, .wc-custom-layout .wi-ABA20296-D23E-4D80-B2B0-33CFF6B0CD6F a::after { content: none; }
.wc-custom-layout .wi-ABA20296-D23E-4D80-B2B0-33CFF6B0CD6F img { width: auto; display: inline-block; }
.wc-custom-layout .wi-ABA20296-D23E-4D80-B2B0-33CFF6B0CD6F {
    display: inline-block;
    vertical-align: middle;
}
.wc-custom-layout .wi-ABA20296-D23E-4D80-B2B0-33CFF6B0CD6F > div.widget-storeLogo > a {
    display: inline-flex;
    align-items: center;
    text-decoration: none;
}
.wc-custom-layout .wi-ABA20296-D23E-4D80-B2B0-33CFF6B0CD6F > div.widget-storeLogo > a > img.store-logo-img {
    width: 100%;
    height: 100%;
    display: inline-block;
}
.wc-custom-layout .wi-E4A55004-DF50-4B9D-8806-49F6E2ECB166 { display: flex; align-items: center; }
/* Navigation widget — layout defaults. The widget framework wraps the original
   <nav><a></a></nav> in two extra divs (.widget-navigation > .nav-wrapper >
   .navigation-item > <a>), which breaks the parent's flex distribution (the
   widget div becomes the only flex child, items clump). We supply sensible
   layout defaults here so navs render correctly even when the section CSS
   isn't available (e.g. when shared style.css caching delays propagation for
   header/footer placements). Specific designs (centered, right-aligned, etc.)
   can still override these via section CSS which loads later in the cascade. */
/* `display: contents` on both widget wrappers makes them layout-transparent —
   the .navigation-item divs become direct flex children of the original parent
   (.main-nav, .footer-links-col, etc.). The author's source CSS on that parent
   (justify-content: center / space-between / flex-end, gap, etc.) then applies
   to the items directly — works for ANY design with NO hardcoded layout. */
.wc-custom-layout .wi-E4A55004-DF50-4B9D-8806-49F6E2ECB166 .widget-navigation { display: contents; }
.wc-custom-layout .wi-E4A55004-DF50-4B9D-8806-49F6E2ECB166 .nav-wrapper.horizontal { display: contents; }
.wc-custom-layout .wi-E4A55004-DF50-4B9D-8806-49F6E2ECB166 .nav-wrapper.vertical {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    list-style: none;
    margin: 0;
    padding: 0;
}
/* Mechanical resets: WC base CSS / ecommerce CSS adds an underline + border to
   .navigation-item a that the author's source CSS doesn't know about. Null those
   out here — they're true resets (counter widget-framework-injected styles).
   Padding is reset with !important: link box styling lives on .navigation-item
   (the container), so the anchor must carry NO box padding. Without !important an
   author DESCENDANT rule that still matches the widget anchor (e.g. a footer's
   `.foot-col a` padding rule, same 0,3,1 specificity, later in the cascade)
   stacks with the container padding and doubles the item spacing. WC's own
   `.vertical .navigation-item a` padding is countered the same way. */
.wc-custom-layout .wi-E4A55004-DF50-4B9D-8806-49F6E2ECB166 .navigation-item > a {
    text-decoration: none;
    border-bottom: none;
    padding: 0 !important;
}
/* Label needs `white-space: pre-line` so the `\n` we encode for `<br>` (in
   `_extract_nav_items`) renders as an actual line break. Harmless on labels
   without newlines (behaves like normal whitespace). */
.wc-custom-layout .wi-E4A55004-DF50-4B9D-8806-49F6E2ECB166 .navigation-item > a > span.label { white-space: pre-line; }
.wc-custom-layout .wi-E4A55004-DF50-4B9D-8806-49F6E2ECB166 .widget-navigation .menu-title { display: none; }
.wc-custom-layout .wi-E4A55004-DF50-4B9D-8806-49F6E2ECB166 .widget-navigation .menu-button { display: none; }
/* Sub-menu dropdown — reset WC site-base defaults + show on hover with fade */
.wc-custom-layout .wi-E4A55004-DF50-4B9D-8806-49F6E2ECB166 .navigation-item.has-child { position: relative; }
/* Reset WC white background image, fixed width/position */
.wc-custom-layout .wi-E4A55004-DF50-4B9D-8806-49F6E2ECB166 .navigation-item-child-container { position: absolute; top: 100%; left: 0; z-index: 10000; opacity: 0; visibility: hidden; transform: translateY(4px); transition: opacity 0.2s, visibility 0.2s, transform 0.2s; pointer-events: none; background-image: none; width: auto; }
.wc-custom-layout .wi-E4A55004-DF50-4B9D-8806-49F6E2ECB166 .has-child .navigation-item-child-container { background-image: none; left: 0; top: 100%; width: auto; }
.wc-custom-layout .wi-E4A55004-DF50-4B9D-8806-49F6E2ECB166 .navigation-item.has-child:hover > .navigation-item-child-container { opacity: 1; visibility: visible; transform: translateY(0); pointer-events: auto; display: block; }
/* Reset WC dropdown item defaults: border-bottom, padding */
.wc-custom-layout .wi-E4A55004-DF50-4B9D-8806-49F6E2ECB166 .navigation-item-child-container .navigation-item { padding: 0; }
.wc-custom-layout .wi-E4A55004-DF50-4B9D-8806-49F6E2ECB166 .navigation-item-child-container .navigation-item a { border-bottom: none; }
.wc-custom-layout .wi-E4A55004-DF50-4B9D-8806-49F6E2ECB166 .child-opener { display: none; }
.wc-custom-layout .wi-E4A55004-DF50-4B9D-8806-49F6E2ECB166 .nav-wrapper.horizontal {
    display: flex;
    align-items: center;
    gap: 18px 24px;
}
.wc-custom-layout .wi-E4A55004-DF50-4B9D-8806-49F6E2ECB166 .navigation-item {
    font-size: 14px;
    font-weight: 600;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: 0.28px;
    line-height: 1.15;
    text-decoration: none;
}
.wc-custom-layout .wi-E4A55004-DF50-4B9D-8806-49F6E2ECB166 .navigation-item > a {
    font-size: 14px;
    font-weight: 600;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: 0.28px;
    line-height: 1.15;
}
.wc-custom-layout .wi-E4A55004-DF50-4B9D-8806-49F6E2ECB166 .navigation-item > a > span.label {
    text-decoration: inherit;
    font-size: 14px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.28px;
    line-height: 1.15;
}
.wc-custom-layout .wi-E4A55004-DF50-4B9D-8806-49F6E2ECB166 .navigation-item > a:hover {
    color: #ffffff;
}
.wc-custom-layout .wi-E4A55004-DF50-4B9D-8806-49F6E2ECB166 .navigation-item-child-container {
    box-shadow: 0 2px 4px rgba(0,0,0,0.12);
    padding: 6px 8px;
    min-width: 119px;
}
.wc-custom-layout .wi-E4A55004-DF50-4B9D-8806-49F6E2ECB166 .navigation-item-child-container .navigation-item > a {
    color: #0a767b;
    font-size: 14px;
    padding: 6px 8px;
    display: block;
}
.wc-custom-layout .wi-E4A55004-DF50-4B9D-8806-49F6E2ECB166 .navigation-item-child-container .navigation-item > a:hover {
    background: #ffd84d;
}
.wc-custom-layout .wi-E4A55004-DF50-4B9D-8806-49F6E2ECB166 .navigation-item-child-container {
    margin-top: 9px;
}
.wc-custom-layout .wi-E4A55004-DF50-4B9D-8806-49F6E2ECB166 .navigation-item-child-container { display: flex !important; flex-direction: column !important; gap: 2px !important; }
.wc-custom-layout .wi-E4A55004-DF50-4B9D-8806-49F6E2ECB166 .navigation-item-child-container .navigation-item > a { padding: 6px 8px !important; }
.wc-custom-layout .wi-E4A55004-DF50-4B9D-8806-49F6E2ECB166 .navigation-item-child-container .navigation-item { background: #ffce00 !important; box-shadow: 0 2px 4px rgba(0,0,0,0.12) !important; }
.wc-custom-layout .wi-E4A55004-DF50-4B9D-8806-49F6E2ECB166 .child-opener {
    display: none;
}
.wc-custom-layout .wi-E4A55004-DF50-4B9D-8806-49F6E2ECB166 .nav-wrapper.horizontal > .navigation-item > a {
    display: flex;
    flex-direction: column;
    align-items: stretch;
}
.wc-custom-layout .wi-E4A55004-DF50-4B9D-8806-49F6E2ECB166 .nav-wrapper.horizontal > .navigation-item > a::after { content: ''; display: block; height: 3px; width: 100%; background: #ffce00; margin-top: 8px; }
@media (max-width: 1280px) {
.wc-custom-layout .wi-E4A55004-DF50-4B9D-8806-49F6E2ECB166 .nav-wrapper.horizontal > .navigation-item > a {
    padding: 13px 24px !important;
    border-bottom: 1px solid rgba(255,255,255,0.12) !important;
}
.wc-custom-layout .wi-E4A55004-DF50-4B9D-8806-49F6E2ECB166 .nav-wrapper.horizontal > .navigation-item > a::after { display: none !important; }
.wc-custom-layout .wi-E4A55004-DF50-4B9D-8806-49F6E2ECB166 .navigation-item-child-container { position: static !important; opacity: 1 !important; visibility: visible !important; display: flex !important; flex-direction: column !important; transform: none !important; pointer-events: auto !important; box-shadow: none !important; margin: 0 !important; min-width: 0 !important; background: transparent !important; }
.wc-custom-layout .wi-E4A55004-DF50-4B9D-8806-49F6E2ECB166 .navigation-item-child-container .navigation-item > a {
    display: block !important;
    width: 100% !important;
    background: rgba(0,0,0,0.16) !important;
    color: #ffce00 !important;
    padding: 11px 40px !important;
    border-bottom: 1px solid rgba(255,255,255,0.08) !important;
}
.wc-custom-layout .wi-E4A55004-DF50-4B9D-8806-49F6E2ECB166 .navigation-item-child-container .navigation-item { background: transparent !important; padding: 0 !important; }
}

/* Author section CSS (loaded last — wins same-specificity ties) */
.wc-custom-layout .wcs_section_cf960119 a { background: initial; background-color: initial; border: initial; border-bottom: initial; border-radius: initial; box-shadow: initial; color: inherit; font-size: inherit; font-style: inherit; font-weight: inherit; line-height: inherit; margin: initial; margin-left: initial; margin-top: initial; outline: initial; padding: initial; padding-left: initial; text-align: inherit; text-decoration: inherit; text-transform: inherit; }
.wc-custom-layout .wcs_section_cf960119 blockquote { border-left: none; margin: 0; padding: 0; padding-left: 0; }
.wc-custom-layout .wcs_section_cf960119 button { background: initial; background-color: initial; border: initial; border-radius: initial; color: inherit; font-family: inherit; font-size: inherit; font-weight: inherit; line-height: normal; margin: 0; margin-left: initial; margin-top: initial; padding: initial; text-align: inherit; text-decoration: inherit; text-transform: none; }
.wc-custom-layout .wcs_section_cf960119 fieldset { border: none; margin: 0; padding: 0; }
.wc-custom-layout .wcs_section_cf960119 figcaption { margin: 0; padding: initial; }
.wc-custom-layout .wcs_section_cf960119 figure { margin: 0; padding: initial; }
.wc-custom-layout .wcs_section_cf960119 h1 { border: initial; color: inherit; font-family: inherit; font-size: revert; font-weight: inherit; line-height: inherit; margin: 0; margin-bottom: initial; padding-bottom: initial; text-align: inherit; }
.wc-custom-layout .wcs_section_cf960119 h2 { border: initial; border-bottom: initial; color: inherit; font-family: inherit; font-size: revert; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0; margin-bottom: initial; padding: initial; padding-bottom: initial; text-align: inherit; }
.wc-custom-layout .wcs_section_cf960119 h3 { color: inherit; font-family: inherit; font-size: revert; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0; padding: initial; padding-bottom: initial; text-transform: inherit; }
.wc-custom-layout .wcs_section_cf960119 h4 { border-bottom: initial; color: inherit; font-size: revert; font-weight: inherit; line-height: inherit; margin: 0; padding: initial; padding-bottom: initial; }
.wc-custom-layout .wcs_section_cf960119 h5 { border-bottom: initial; color: inherit; font-size: revert; font-weight: inherit; margin: 0; padding: initial; padding-bottom: initial; text-transform: inherit; }
.wc-custom-layout .wcs_section_cf960119 h6 { color: inherit; margin: 0; padding: initial; }
.wc-custom-layout .wcs_section_cf960119 hr { border: none; border-top: 1px solid currentColor; margin-bottom: initial; margin-top: initial; }
.wc-custom-layout .wcs_section_cf960119 img { border: none; border-radius: initial; margin: initial; padding: initial; padding-right: initial; vertical-align: middle; }
.wc-custom-layout .wcs_section_cf960119 input { background: initial; background-color: initial; border: initial; border-bottom: initial; border-color: initial; border-radius: initial; border-right: initial; border-top: initial; color: inherit; font-family: inherit; font-size: inherit; font-weight: inherit; line-height: normal; margin: 0; margin-right: initial; margin-top: initial; outline: initial; padding: initial; padding-right: initial; text-align: start; vertical-align: initial; }
.wc-custom-layout .wcs_section_cf960119 li { border: initial; border-radius: initial; color: inherit; font-size: inherit; line-height: inherit; list-style: inherit; margin: 0; margin-bottom: initial; margin-left: initial; padding: 0; }
.wc-custom-layout .wcs_section_cf960119 ol { margin: 0; padding-left: initial; }
.wc-custom-layout .wcs_section_cf960119 p { color: inherit; font-family: inherit; font-size: inherit; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0; margin-bottom: initial; margin-top: initial; padding: initial; padding-bottom: initial; padding-top: initial; text-align: inherit; }
.wc-custom-layout .wcs_section_cf960119 pre { background: transparent; border-radius: 0; border-width: initial; color: inherit; font-family: inherit; font-size: inherit; line-height: inherit; margin: 0; padding: 0; }
.wc-custom-layout .wcs_section_cf960119 select { background: initial; background-color: initial; border: initial; border-bottom: initial; border-radius: initial; color: inherit; font-family: inherit; font-size: inherit; font-weight: inherit; line-height: inherit; margin: 0; margin-right: initial; padding: initial; padding-left: initial; padding-right: initial; text-transform: none; }
.wc-custom-layout .wcs_section_cf960119 table { background: initial; background-color: initial; border: initial; border-bottom: initial; border-radius: initial; box-shadow: initial; margin: initial; margin-bottom: initial; }
.wc-custom-layout .wcs_section_cf960119 textarea { background: initial; background-color: initial; border: initial; border-bottom: initial; border-radius: initial; color: inherit; font-family: inherit; font-size: inherit; font-weight: inherit; line-height: inherit; margin: 0; padding: initial; text-align: start; }
.wc-custom-layout .wcs_section_cf960119 ul { font-size: inherit; list-style: none; margin: 0; padding: 0; padding-left: initial; }

.wc-custom-layout .wcs_section_cf960119 :where(h1, h2, h3, h4, h5, h6, p, blockquote, figure, figcaption, dd, dl) { margin: 0; padding: 0; }
.wc-custom-layout .wcs_section_cf960119, .wc-custom-layout .wcs_section_cf960119 * { box-sizing: border-box; }
.wc-custom-layout .wcs_section_cf960119 img { display: block; }
.wc-custom-layout .wcs_section_cf960119 .wrap { width: 1300px; max-width: calc(100% - 80px); margin-left: auto !important; margin-right: auto !important; }
/* [nav-fit] Translated labels need more room than English (German nav: 1214px vs 888px).
   The .wrap rule above grows with its content and stays centred, so the header expands
   EQUALLY on both sides instead of spilling to the right. This keeps the row on one line
   by tightening the inter-item gap on translated pages only - English (lang="en")
   keeps the design's 38px. */
@media (min-width: 1281px) {
  /* Wider container for translated pages. margin-inline stays auto, so the extra
     200px is added EQUALLY left and right - the header never grows one-sided. */
  html:not([lang="en"]) .wc-custom-layout .wcs_section_cf960119 .wrap {
    width: 1500px; max-width: calc(100% - 40px);
  }
  html:not([lang="en"]) .wc-custom-layout .wcs_section_cf960119 .nav-wrapper.horizontal {
    gap: clamp(18px, 1.3vw, 38px);
  }
}

/* [lang-collapse] GERMAN ONLY. German's menu needs ~1415px of row (items 948px vs
   English 601px / Japanese 669px), which no container can supply below ~1455px, so a
   German page collapses to the burger from 1540px down instead of clipping the row.
   English and Japanese both fit above 1280 and use the normal <=1280px collapse. */
@media (max-width: 1540px) {
  html[lang|="de"] .wc-custom-layout .wcs_section_cf960119 .nav { height: 64px !important; }
  html[lang|="de"] .wc-custom-layout .wcs_section_cf960119 .wrap { width: auto !important; max-width: 100% !important; margin-left: auto !important; margin-right: auto !important; padding-left: clamp(16px, 4.2vw, 44px) !important; padding-right: clamp(16px, 4.2vw, 44px) !important; }
  html[lang|="de"] .wc-custom-layout .wcs_section_cf960119 .nav-inner { height: 64px !important; flex-direction: row !important; padding-top: 0 !important; padding-bottom: 0 !important; justify-content: flex-start !important; }
  html[lang|="de"] .wc-custom-layout .wcs_section_cf960119 .logo { width: 54px; height: 54px; left: 14px; top: 5px; transform: none; border-radius: 5px; box-shadow: 0 3px 5px rgba(0,0,0,0.22); }
  html[lang|="de"] .wc-custom-layout .wcs_section_cf960119 .nav-burger { display: flex !important; flex-direction: column; gap: 5px; cursor: pointer; position: absolute; right: 18px; top: 50%; transform: translateY(-50%); width: 32px; padding: 5px 1px; z-index: 80; }
  html[lang|="de"] .wc-custom-layout .wcs_section_cf960119 .nav-burger span { display: block; height: 3px; width: 100%; background: #fff; border-radius: 2px; }
  html[lang|="de"] .wc-custom-layout .wcs_section_cf960119 .nav-links { display: flex !important; position: static !important; flex-direction: row !important; flex-wrap: nowrap !important; align-items: center !important; justify-content: flex-end !important; height: 64px !important; max-height: none !important; margin: 0 !important; padding: 0 !important; gap: 0 !important; background: none !important; box-shadow: none !important; overflow: visible !important; }
  html[lang|="de"] .wc-custom-layout .wcs_section_cf960119 .nav-links .widget-languageSelector { position: absolute !important; right: 62px; top: 50%; transform: translateY(-50%); z-index: 81; width: auto !important; margin: 0 !important; }
  html[lang|="de"] .wc-custom-layout .wcs_section_cf960119 .nav-links .nav-wrapper.horizontal { display: none !important; position: absolute; top: 64px; left: 0; right: 0; flex-direction: column !important; align-items: stretch !important; gap: 0 !important; justify-content: flex-start !important; background: var(--teal); padding: 4px 0 12px; box-shadow: 0 8px 10px rgba(0,0,0,0.18); max-height: calc(100vh - 64px); overflow-y: auto; }
  html[lang|="de"] .wc-custom-layout .wcs_section_cf960119 .nav-toggle:checked ~ .nav-links .nav-wrapper.horizontal { display: flex !important; }
  html[lang|="de"] .wc-custom-layout .wcs_section_cf960119 .nav-links .navigation-item { width: 100% !important; }
  html[lang|="de"] .wc-custom-layout .wcs_section_cf960119 .nav-links .navigation-item > a { display: block !important; padding: 13px 24px !important; font-size: 15px !important; line-height: 1.25 !important; border-bottom: 1px solid rgba(255,255,255,0.12) !important; }
  html[lang|="de"] .wc-custom-layout .wcs_section_cf960119 .nav-links .navigation-item > a::after { display: none !important; }
  html[lang|="de"] .wc-custom-layout .wcs_section_cf960119 .navigation-item-child-container { position: static !important; opacity: 1 !important; visibility: visible !important; display: flex !important; flex-direction: column !important; transform: none !important; pointer-events: auto !important; box-shadow: none !important; margin: 0 !important; min-width: 0 !important; width: 100% !important; background: transparent !important; }
  html[lang|="de"] .wc-custom-layout .wcs_section_cf960119 .navigation-item-child-container .navigation-item > a { display: block !important; width: 100% !important; background: rgba(0,0,0,0.16) !important; color: #ffce00 !important; padding: 11px 40px !important; border-bottom: 1px solid rgba(255,255,255,0.08) !important; }
  html[lang|="de"] .wc-custom-layout .wcs_section_cf960119 .nav-toggle:checked ~ .nav-burger span:nth-child(1) { transform: translateY(8px) rotate(45deg); }
  html[lang|="de"] .wc-custom-layout .wcs_section_cf960119 .nav-toggle:checked ~ .nav-burger span:nth-child(2) { opacity: 0; }
  html[lang|="de"] .wc-custom-layout .wcs_section_cf960119 .nav-toggle:checked ~ .nav-burger span:nth-child(3) { transform: translateY(-8px) rotate(-45deg); }
}

/* [nav-justify] The menu items are one flex child of .nav-links and the language
   pill is the other, and .nav-links is space-between - so when translated labels
   are narrower than English (Japanese items 842px vs 888px) the whole slack piled
   up as one 246px gap before the pill. Let the item group grow and hand the slack
   to the items, so they stay spaced evenly left to right.
   >=1281px only: below that this same element IS the vertical dropdown panel. */
@media (min-width: 1281px) {
  .wc-custom-layout .wcs_section_cf960119 .nav-links .nav-wrapper.horizontal {
    flex: 1 1 auto;
    justify-content: space-between;
  }
}

/* [lang-ui] Language selector + dropdown.
   Built from the tournament's own two colours and the burger panel's construction
   (teal ground, white rows, hairline dividers, gold = the current thing) so the
   control belongs to this header instead of WC's stock white/Material-blue card.
   Audience is 70+: 48px rows, AA contrast, visible keyboard focus, no search box
   for three languages. #webcommander-page is an id, so these win on specificity
   over the platform rules without !important. */

/* the pill, at rest: recessed into the header bar */
#webcommander-page .widget-languageSelector .language-dropdown-wrapper {
  /* 137px = 20px left padding + 81px text area (longest capital-case label
     is Japanese at 70px) + the chevron zone. padding-RIGHT stays at the
     theme's 10px: the panel is anchored with right:-10px against it. */
  width: 137px;
  padding-left: 20px;
  background: #075c60;
  border-radius: 999px;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.10);
  transition: background-color .18s ease, box-shadow .18s ease;
}
#webcommander-page .widget-languageSelector .language-input {
  /* the header section has a CSS reset the page body does not, so state
     these explicitly or the body copy keeps the platform's 10px/36px
     padding and clips the label */
  /* right padding keeps the label clear of the chevron */
  padding: 0 26px 0 0;
  border: 0;
  background: transparent;
  color: #ffffff;
  font-family: Montserrat, sans-serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.6px;
  text-transform: capitalize;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  transition: color .18s ease;
}

/* chevron instead of the 4px black triangle */
#webcommander-page .widget-languageSelector .selected-lang { cursor: pointer; }
#webcommander-page .widget-languageSelector .selected-lang .arrow {
  width: 7px;
  height: 7px;
  border: 0;
  border-right: 2px solid #ffce00;
  border-bottom: 2px solid #ffce00;
  border-radius: 1px;
  transform: rotate(45deg);
  margin-top: -5px;
  right: 9px;
  transition: transform .18s ease, border-color .18s ease;
}
#webcommander-page .widget-languageSelector .selected-lang .arrow.up {
  border-top: 0;
  border-left: 0;
  border-right: 2px solid #ffce00;
  border-bottom: 2px solid #ffce00;
  transform: rotate(-135deg);
  margin-top: -2px;
}

/* the panel: a small piece of the menu, not a white card */
#webcommander-page .widget-languageSelector .lang-list {
  /* the pill sits at the left in the page body and at the right in the
     header, so the panel hangs off whichever edge is nearer. The panel's
     positioning parent is .lang-dropdown - the 38px chevron box at the
     pill's right - so pull it back by (pill 120 - box 38 - right pad 10)
     to line its left edge up with the pill's. */
  left: -72px;
  right: auto;
  background: #075c60;
  border: 0;
  border-radius: 12px;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.28);
  padding: 6px 0;
  margin: 0;
  min-width: 232px;
  top: calc(100% + 8px);
}
#webcommander-page header.nav .widget-languageSelector .lang-list {
  /* -10px = the wrapper's right padding, which insets .lang-dropdown from
     the pill edge; without it the panel stops 10px short of the pill */
  left: auto;
  right: -10px;
}
#webcommander-page .widget-languageSelector .lang-list .language {
  padding: 0 18px;
  line-height: 48px;
  color: #ffffff;
  font-family: Montserrat, sans-serif;
  font-size: 15px;
  font-weight: 600;
  background: transparent;
  transition: box-shadow .18s ease, color .18s ease;
}
#webcommander-page .widget-languageSelector .lang-list .language + .language {
  border-top: 1px solid rgba(255, 255, 255, 0.10);
}
/* gold marks the language you are reading now - the same convention as the
   gold underline under the current menu item */
/* hover / keyboard highlight: text and left border both take the active
   colour - still no background fill */
#webcommander-page .widget-languageSelector .lang-list .language:hover,
#webcommander-page .widget-languageSelector .lang-list .language.highlight {
  color: #ffce00;
  box-shadow: inset 4px 0 0 0 #ffce00;
}
/* the language you are reading now keeps its gold border, cursor or not */
#webcommander-page .widget-languageSelector .lang-list .language.active,
#webcommander-page .widget-languageSelector .lang-list .language.active:hover,
#webcommander-page .widget-languageSelector .lang-list .language.active.highlight {
  color: #ffce00;
  box-shadow: inset 4px 0 0 0 #ffce00;
}
#webcommander-page .widget-languageSelector .lang-list .lang-name { font: inherit; }
/* three languages do not need a search field */
#webcommander-page .widget-languageSelector .lang-list .lang-search { display: none; }
#webcommander-page .widget-languageSelector .lang-list .lang-empty { color: rgba(255, 255, 255, 0.7); padding: 0 18px; line-height: 48px; }

/* below 768 the platform hides the label and un-anchors the panel; restore the
   designed presentation for BOTH widgets on the page (see the header block for
   the collapsed-header copy) */
@media (max-width: 767px) {
  #webcommander-page .widget-languageSelector #language_selector_label { display: inline-block; }
  #webcommander-page .widget-languageSelector .lang-dropdown { position: absolute; width: 38px; }
  #webcommander-page .widget-languageSelector .lang-dropdown .lang-list { top: calc(100% + 8px); }
}

@media (prefers-reduced-motion: reduce) {
  #webcommander-page .widget-languageSelector .language-dropdown-wrapper,
  #webcommander-page .widget-languageSelector .language-input,
  #webcommander-page .widget-languageSelector .selected-lang .arrow,
  #webcommander-page .widget-languageSelector .lang-list .language { transition: none; }
}

.wc-custom-layout .wcs_section_cf960119 .nav {
 background: var(--teal);
 height: 90px;
 box-shadow: 0 6px 6px 0 rgba(0,0,0,0.16);
 position: sticky;
 top: 0;
 z-index: 50;
 }
.wc-custom-layout .wcs_section_cf960119 .nav-inner { position: relative; height: 90px; display: flex; align-items: center; }
.wc-custom-layout .wcs_section_cf960119 .logo {
 position: absolute; left: 0; top: 0; width: 161px; height: 161px; z-index: 10;
 box-shadow: 0 6px 6px 0 rgba(0,0,0,0.16);
 }
.wc-custom-layout .wcs_section_cf960119 .logo img { width: 100%; height: 100%; object-fit: cover; }
.wc-custom-layout .wcs_section_cf960119 .nav-links {
 margin-left: 252px; flex: 1; display: flex; justify-content: space-between;
 align-items: center; height: 90px;
 }
.wc-custom-layout .wcs_section_cf960119 .nav-links a {
 display: flex; flex-direction: column; align-items: stretch; text-decoration: none;
 color: #fff; font-weight: 600; font-size: 14px; line-height: 1.15;
 letter-spacing: 0.02em; text-transform: uppercase;
 }







.wc-custom-layout .wcs_section_cf960119 .photo img { width: 100%; height: 100%; object-fit: cover; display: block; }
.wc-custom-layout .wcs_section_cf960119 .welcome .body a { color: inherit; text-decoration: underline; }
.wc-custom-layout .wcs_section_cf960119 .circle img { width: 100%; height: 100%; object-fit: cover; display: block; }
.wc-custom-layout .wcs_section_cf960119 .footer-logo img { width: 100%; height: auto; }
.wc-custom-layout .wcs_section_cf960119 .footer-links a {
    display: block; color: #fff; text-decoration: none; font-weight: 500; font-size: 16px;
    letter-spacing: 0.015em; line-height: 44px;
  }
.wc-custom-layout .wcs_section_cf960119 .footer-links a:hover { color: var(--yellow); }
.wc-custom-layout .wcs_section_cf960119 .store-badges .badge img { width: 150px; height: auto; display: block; }
@media (max-width: 980px) {
  .wc-custom-layout .wcs_section_cf960119 .nav { height: auto; position: relative; }
  .wc-custom-layout .wcs_section_cf960119 .nav-inner { flex-direction: column; height: auto; padding: 70px 0 16px; }
  .wc-custom-layout .wcs_section_cf960119 .logo { left: 50%; transform: translateX(-50%); }
  .wc-custom-layout .wcs_section_cf960119 .nav-links { margin-left: 0; flex-wrap: wrap; justify-content: center; gap: 18px 24px; height: auto; }
  .wc-custom-layout .wcs_section_cf960119 .nav-links a { align-items: center; }
  
  .wc-custom-layout .wcs_section_cf960119 .redlands .grid { grid-template-columns: 1fr; row-gap: 32px; }
  .wc-custom-layout .wcs_section_cf960119 .col-right .copy { margin-top: 20px; }
  .wc-custom-layout .wcs_section_cf960119 .footer-inner { grid-template-columns: 1fr; row-gap: 36px; }
  .wc-custom-layout .wcs_section_cf960119 .top-btn { display: flex; }
}
@media (max-width: 980px) {
  .wc-custom-layout .wcs_section_cf960119 .top-btn { display: flex; }
}
.wc-custom-layout .wcs_section_cf960119 .footer-logo img { width: 100%; height: auto; }
.wc-custom-layout .wcs_section_cf960119 .footer-nav a { color: #fff; text-decoration: none; font-weight: 600; font-size: 16px; letter-spacing: 0.04em; text-transform: uppercase; line-height: 44px; }
.wc-custom-layout .wcs_section_cf960119 .footer-nav a:hover { color: var(--yellow); }
.wc-custom-layout .wcs_section_cf960119 .footer-legal a { color: #fff; text-decoration: none; font-weight: 600; font-size: 16px; letter-spacing: 0.04em; text-transform: uppercase; line-height: 44px; }
.wc-custom-layout .wcs_section_cf960119 .footer-legal a:hover { color: var(--yellow); }
@media (max-width: 980px) {
  .wc-custom-layout .wcs_section_cf960119 .footer-inner { grid-template-columns: 1fr; row-gap: 28px; }
  .wc-custom-layout .wcs_section_cf960119 .footer-legal { text-align: left; justify-content: flex-start; }
}
.wc-custom-layout .wcs_section_cf960119, .wc-custom-layout .wcs_section_cf960119 *, .wc-custom-layout .wcs_section_cf960119 *::before, .wc-custom-layout .wcs_section_cf960119 *::after { box-sizing: border-box; }
.wc-custom-layout .wcs_section_cf960119 img, .wc-custom-layout .wcs_section_cf960119 video, .wc-custom-layout .wcs_section_cf960119 iframe, .wc-custom-layout .wcs_section_cf960119 svg { max-width: 100%; }
.wc-custom-layout .wcs_section_cf960119 .nav-toggle, .wc-custom-layout .wcs_section_cf960119 .nav-burger { display: none; }
.wc-custom-layout .wcs_section_cf960119 .sponsor-link img { display: block; width: auto; max-width: 100%; }
.wc-custom-layout .wcs_section_cf960119 .sp-artlinks img { height: clamp(56px, 9vw, 84px); }
.wc-custom-layout .wcs_section_cf960119 .sp-redlands img { height: clamp(104px, 16vw, 150px); }
.wc-custom-layout .wcs_section_cf960119 .sp-helsinki img { height: clamp(88px, 14vw, 128px); }
.wc-custom-layout .wcs_section_cf960119 .sp-comm img { height: clamp(46px, 8vw, 66px); }
.wc-custom-layout .wcs_section_cf960119 .sp-webcommander img { height: clamp(30px, 5vw, 40px); }
@media (max-width: 1260px) {
  .wc-custom-layout .wcs_section_cf960119 .wrap { width: auto !important; max-width: 100% !important; margin-left: auto !important; margin-right: auto !important;
 padding-left: clamp(16px, 4.2vw, 44px) !important; padding-right: clamp(16px, 4.2vw, 44px) !important; }
}
@media (max-width: 1200px) {
  .wc-custom-layout .wcs_section_cf960119 .h-section { font-size: clamp(24px, 4.4vw, 42px) !important; line-height: 1.16 !important; }
  .wc-custom-layout .wcs_section_cf960119 .hero-title span { font-size: clamp(20px, 3.3vw, 36px) !important; line-height: 1.28 !important; }
  .wc-custom-layout .wcs_section_cf960119 .aerial-title { font-size: clamp(18px, 3.4vw, 36px) !important; line-height: 1.22 !important; margin-top: clamp(14px, 3vw, 34px) !important; padding: 0 16px !important; text-align: center !important; }
  .wc-custom-layout .wcs_section_cf960119 [class$="-hero"] h1, .wc-custom-layout .wcs_section_cf960119 .hero-banner h1, .wc-custom-layout .wcs_section_cf960119 .teams-hero h1 { font-size: clamp(22px, 3.6vw, 36px) !important; line-height: 1.2 !important; }
}
@media (max-width: 1280px) {
  .wc-custom-layout .wcs_section_cf960119 .nav { height: 64px; }
  .wc-custom-layout .wcs_section_cf960119 .nav-inner { height: 64px; flex-direction: row; padding: 0; justify-content: flex-start; }
  .wc-custom-layout .wcs_section_cf960119 .logo { width: 54px; height: 54px; left: 14px; top: 5px; transform: none; border-radius: 5px; box-shadow: 0 3px 5px rgba(0,0,0,0.22); }
  .wc-custom-layout .wcs_section_cf960119 .nav-burger {
 display: flex !important; flex-direction: column; gap: 5px; cursor: pointer;
 position: absolute; right: 18px; top: 50%; transform: translateY(-50%);
 width: 32px; padding: 5px 1px; z-index: 80;
 }
  .wc-custom-layout .wcs_section_cf960119 .nav-burger span { display: block; height: 3px; width: 100%; background: #fff; border-radius: 2px; transition: transform .25s, opacity .2s; }
  .wc-custom-layout .wcs_section_cf960119 .nav-links {
 display: none; position: absolute; top: 64px; left: 0; right: 0; margin-left: 0;
 height: auto; flex-direction: column; flex-wrap: nowrap; justify-content: flex-start; gap: 0; align-items: stretch; background: var(--teal);
 padding: 4px 0 12px; box-shadow: 0 8px 10px rgba(0,0,0,0.18); max-height: calc(100vh - 64px); overflow-y: auto;
 }
  .wc-custom-layout .wcs_section_cf960119 .nav-toggle:checked ~ .nav-links { display: flex; }
  .wc-custom-layout .wcs_section_cf960119 .nav-links a { display: block; padding: 13px 24px; font-size: 15px; line-height: 1.25; border-bottom: 1px solid rgba(255,255,255,0.12); }
  
  
  
  
  
  
  
  .wc-custom-layout .wcs_section_cf960119 .nav-toggle:checked ~ .nav-burger span:nth-child(1) { transform: translateY(8px) rotate(45deg); }
  .wc-custom-layout .wcs_section_cf960119 .nav-toggle:checked ~ .nav-burger span:nth-child(2) { opacity: 0; }
  .wc-custom-layout .wcs_section_cf960119 .nav-toggle:checked ~ .nav-burger span:nth-child(3) { transform: translateY(-8px) rotate(-45deg); }
}

/* [lang-in-bar] The language selector is NOT a menu item.
   At <=1200px .nav-links IS the dropdown panel and the language widget is one of
   its children, so it collapsed into the burger menu. Keep .nav-links in the bar
   and make the NAV ITEMS the panel instead; the language pill then sits in the
   header bar, to the LEFT of the burger toggle, at every responsive width. */
@media (max-width: 1280px) {
  .wc-custom-layout .wcs_section_cf960119 .nav-links {
    display: flex !important; position: static !important;
    flex-direction: row !important; flex-wrap: nowrap !important;
    align-items: center !important; justify-content: flex-end !important;
    height: 64px !important; max-height: none !important;
    margin: 0 !important; padding: 0 !important; gap: 0 !important;
    background: none !important; box-shadow: none !important; overflow: visible !important;
  }
  .wc-custom-layout .wcs_section_cf960119 .nav-links .widget-languageSelector {
    position: absolute !important; right: 62px; top: 50%;
    transform: translateY(-50%); z-index: 81;
    width: auto !important; margin: 0 !important;
  }
  /* <=767px the platform sheet hides #language_selector_label and turns
     .lang-dropdown position:relative, collapsing the control to 0 height inside
     the theme's 120px pill. Restore the desktop presentation here only. */
  .wc-custom-layout .wcs_section_cf960119 .nav-links .widget-languageSelector #language_selector_label {
    display: inline-block !important;
  }
  .wc-custom-layout .wcs_section_cf960119 .nav-links .widget-languageSelector .lang-dropdown {
    position: absolute !important; width: 38px !important;
  }
  .wc-custom-layout .wcs_section_cf960119 .nav-links .widget-languageSelector .lang-dropdown .lang-list {
    top: calc(100% + 8px) !important; left: auto !important; right: -10px !important;
  }
  .wc-custom-layout .wcs_section_cf960119 .nav-links .nav-wrapper.horizontal {
    display: none !important; position: absolute; top: 64px; left: 0; right: 0;
    flex-direction: column !important; align-items: stretch !important; gap: 0 !important;
    justify-content: flex-start !important;
    background: var(--teal); padding: 4px 0 12px;
    box-shadow: 0 8px 10px rgba(0,0,0,0.18);
    max-height: calc(100vh - 64px); overflow-y: auto;
  }
  .wc-custom-layout .wcs_section_cf960119 .nav-toggle:checked ~ .nav-links .nav-wrapper.horizontal {
    display: flex !important;
  }
}
@media (max-width: 1200px) {
  .wc-custom-layout .wcs_section_cf960119 .hero { height: clamp(300px, 46vw, 550px) !important; }
  .wc-custom-layout .wcs_section_cf960119 [class$="-hero"], .wc-custom-layout .wcs_section_cf960119 .hero-banner { height: clamp(160px, 24vw, 250px) !important; }
}
@media (max-width: 1024px) {
  .wc-custom-layout .wcs_section_cf960119 .links-grid, .wc-custom-layout .wcs_section_cf960119 .cols, .wc-custom-layout .wcs_section_cf960119 .accomm .cols, .wc-custom-layout .wcs_section_cf960119 .index-grid, .wc-custom-layout .wcs_section_cf960119 .care-cols { grid-template-columns: 1fr 1fr !important; column-gap: clamp(20px, 3.5vw, 36px) !important; row-gap: 26px !important; }
}
@media (max-width: 900px) {
  .wc-custom-layout .wcs_section_cf960119 .redlands .grid, .wc-custom-layout .wcs_section_cf960119 .intro-grid, .wc-custom-layout .wcs_section_cf960119 .row-top, .wc-custom-layout .wcs_section_cf960119 .row-care, .wc-custom-layout .wcs_section_cf960119 .grass .grid, .wc-custom-layout .wcs_section_cf960119 .getting .grid {
 grid-template-columns: 1fr !important; row-gap: 26px !important;
 }
  .wc-custom-layout .wcs_section_cf960119 .col-left .copy, .wc-custom-layout .wcs_section_cf960119 .col-right .copy, .wc-custom-layout .wcs_section_cf960119 .grass .copy, .wc-custom-layout .wcs_section_cf960119 .getting .copy { margin-top: 18px !important; padding-top: 0 !important; }
}
@media (max-width: 760px) {
  .wc-custom-layout .wcs_section_cf960119 .links-grid, .wc-custom-layout .wcs_section_cf960119 .cols, .wc-custom-layout .wcs_section_cf960119 .accomm .cols, .wc-custom-layout .wcs_section_cf960119 .index-grid, .wc-custom-layout .wcs_section_cf960119 .care-cols { grid-template-columns: 1fr !important; row-gap: 20px !important; }
  .wc-custom-layout .wcs_section_cf960119 .photo-grid, .wc-custom-layout .wcs_section_cf960119 .beyond-grid { display: flex !important; flex-direction: column !important; gap: 16px !important; }
  .wc-custom-layout .wcs_section_cf960119 .photo-grid > *, .wc-custom-layout .wcs_section_cf960119 .beyond-grid > * { width: 100% !important; height: auto !important; aspect-ratio: 16 / 10 !important; }
  .wc-custom-layout .wcs_section_cf960119 .circles { gap: clamp(22px, 7vw, 44px) !important; }
  .wc-custom-layout .wcs_section_cf960119 .circle, .wc-custom-layout .wcs_section_cf960119 .circle img { width: clamp(120px, 42vw, 180px) !important; height: clamp(120px, 42vw, 180px) !important; }
  .wc-custom-layout .wcs_section_cf960119 .aerial { aspect-ratio: 16 / 9 !important; align-items: center !important; }
  .wc-custom-layout .wcs_section_cf960119 .aerial-title { margin-top: 0 !important; }
  .wc-custom-layout .wcs_section_cf960119 .btn-pill { min-width: 0 !important; width: 100% !important; max-width: 380px !important; padding: 0 18px !important; }
  .wc-custom-layout .wcs_section_cf960119 .hero-title { padding-top: 16px !important; }
  .wc-custom-layout .wcs_section_cf960119 table.tbl, .wc-custom-layout .wcs_section_cf960119 table.sched, .wc-custom-layout .wcs_section_cf960119 table.standings, .wc-custom-layout .wcs_section_cf960119 table.teams, .wc-custom-layout .wcs_section_cf960119 .teams-table table, .wc-custom-layout .wcs_section_cf960119 section table {
      display: block !important; width: 100% !important; max-width: 100% !important;
      overflow-x: auto !important; -webkit-overflow-scrolling: touch; white-space: nowrap;
    }
}
@media (max-width: 480px) {
  .wc-custom-layout .wcs_section_cf960119 .h-section { font-size: clamp(21px, 6.4vw, 28px) !important; }
  .wc-custom-layout .wcs_section_cf960119 .circle, .wc-custom-layout .wcs_section_cf960119 .circle img { width: clamp(110px, 60vw, 170px) !important; height: clamp(110px, 60vw, 170px) !important; }
}
@media (max-width: 900px) {
  .wc-custom-layout .wcs_section_cf960119 .footer-inner { grid-template-columns: 1fr !important; row-gap: 28px !important; }
  .wc-custom-layout .wcs_section_cf960119 .footer-legal { text-align: left !important; justify-content: flex-start !important; }
  .wc-custom-layout .wcs_section_cf960119 .footer-links { grid-template-columns: 1fr 1fr !important; }
}
@media (max-width: 480px) {
  .wc-custom-layout .wcs_section_cf960119 .top-btn { display: flex !important; }
}

/* mcp-layout-pin: layout CSS is shared across pages (header/footer
   reuse) — pin this page's theme vars + inherited body text styling on
   the section wrapper so the layout renders identically on pages with
   a different theme. */
.wcs_section_cf960119 {
  --teal: #0a767b;
  --yellow: #ffce00;
  font-family: "Montserrat", sans-serif;
  color: #000;
  -webkit-font-smoothing: antialiased;
  font-weight: 500;
  line-height: 40px;
  letter-spacing: 0.025em;
}

/* Native widget CSS overrides */
.wc-custom-layout .wi-2E9469A2-33F1-4928-A557-B0E0744642E4 { display: block; }
/* Navigation widget — layout defaults. The widget framework wraps the original
   <nav><a></a></nav> in two extra divs (.widget-navigation > .nav-wrapper >
   .navigation-item > <a>), which breaks the parent's flex distribution (the
   widget div becomes the only flex child, items clump). We supply sensible
   layout defaults here so navs render correctly even when the section CSS
   isn't available (e.g. when shared style.css caching delays propagation for
   header/footer placements). Specific designs (centered, right-aligned, etc.)
   can still override these via section CSS which loads later in the cascade. */
/* `display: contents` on both widget wrappers makes them layout-transparent —
   the .navigation-item divs become direct flex children of the original parent
   (.main-nav, .footer-links-col, etc.). The author's source CSS on that parent
   (justify-content: center / space-between / flex-end, gap, etc.) then applies
   to the items directly — works for ANY design with NO hardcoded layout. */
.wc-custom-layout .wi-2E9469A2-33F1-4928-A557-B0E0744642E4 .widget-navigation { display: contents; }
.wc-custom-layout .wi-2E9469A2-33F1-4928-A557-B0E0744642E4 .nav-wrapper.horizontal { display: contents; }
.wc-custom-layout .wi-2E9469A2-33F1-4928-A557-B0E0744642E4 .nav-wrapper.vertical {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    list-style: none;
    margin: 0;
    padding: 0;
}
/* Mechanical resets: WC base CSS / ecommerce CSS adds an underline + border to
   .navigation-item a that the author's source CSS doesn't know about. Null those
   out here — they're true resets (counter widget-framework-injected styles).
   Padding is reset with !important: link box styling lives on .navigation-item
   (the container), so the anchor must carry NO box padding. Without !important an
   author DESCENDANT rule that still matches the widget anchor (e.g. a footer's
   `.foot-col a` padding rule, same 0,3,1 specificity, later in the cascade)
   stacks with the container padding and doubles the item spacing. WC's own
   `.vertical .navigation-item a` padding is countered the same way. */
.wc-custom-layout .wi-2E9469A2-33F1-4928-A557-B0E0744642E4 .navigation-item > a {
    text-decoration: none;
    border-bottom: none;
    padding: 0 !important;
}
/* Label needs `white-space: pre-line` so the `\n` we encode for `<br>` (in
   `_extract_nav_items`) renders as an actual line break. Harmless on labels
   without newlines (behaves like normal whitespace). */
.wc-custom-layout .wi-2E9469A2-33F1-4928-A557-B0E0744642E4 .navigation-item > a > span.label { white-space: pre-line; }
.wc-custom-layout .wi-2E9469A2-33F1-4928-A557-B0E0744642E4 .widget-navigation .menu-title { display: none; }
.wc-custom-layout .wi-2E9469A2-33F1-4928-A557-B0E0744642E4 .widget-navigation .menu-button { display: none; }
/* Sub-menu dropdown — reset WC site-base defaults + show on hover with fade */
.wc-custom-layout .wi-2E9469A2-33F1-4928-A557-B0E0744642E4 .navigation-item.has-child { position: relative; }
/* Reset WC white background image, fixed width/position */
.wc-custom-layout .wi-2E9469A2-33F1-4928-A557-B0E0744642E4 .navigation-item-child-container { position: absolute; top: 100%; left: 0; z-index: 10000; opacity: 0; visibility: hidden; transform: translateY(4px); transition: opacity 0.2s, visibility 0.2s, transform 0.2s; pointer-events: none; background-image: none; width: auto; }
.wc-custom-layout .wi-2E9469A2-33F1-4928-A557-B0E0744642E4 .has-child .navigation-item-child-container { background-image: none; left: 0; top: 100%; width: auto; }
.wc-custom-layout .wi-2E9469A2-33F1-4928-A557-B0E0744642E4 .navigation-item.has-child:hover > .navigation-item-child-container { opacity: 1; visibility: visible; transform: translateY(0); pointer-events: auto; display: block; }
/* Reset WC dropdown item defaults: border-bottom, padding */
.wc-custom-layout .wi-2E9469A2-33F1-4928-A557-B0E0744642E4 .navigation-item-child-container .navigation-item { padding: 0; }
.wc-custom-layout .wi-2E9469A2-33F1-4928-A557-B0E0744642E4 .navigation-item-child-container .navigation-item a { border-bottom: none; }
.wc-custom-layout .wi-2E9469A2-33F1-4928-A557-B0E0744642E4 .child-opener { display: none; }
.wc-custom-layout .wi-2E9469A2-33F1-4928-A557-B0E0744642E4 .navigation-item {
    font-size: 16px;
    font-weight: 600;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: 0.64px;
    line-height: 44px;
    text-decoration: none;
}
.wc-custom-layout .wi-2E9469A2-33F1-4928-A557-B0E0744642E4 .navigation-item > a {
    font-size: 16px;
    font-weight: 600;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: 0.64px;
    line-height: 44px;
}
.wc-custom-layout .wi-2E9469A2-33F1-4928-A557-B0E0744642E4 .navigation-item > a > span.label {
    text-decoration: inherit;
    font-size: 16px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.64px;
    line-height: 44px;
}
.wc-custom-layout .wi-2E9469A2-33F1-4928-A557-B0E0744642E4 .navigation-item > a:hover {
    color: #ffce00;
}
.wc-custom-layout .wi-2E9469A2-33F1-4928-A557-B0E0744642E4 .navigation-item-child-container {
    background: #ffce00;
    box-shadow: 0 2px 4px rgba(0,0,0,0.12);
    min-width: 119px;
}
.wc-custom-layout .wi-2E9469A2-33F1-4928-A557-B0E0744642E4 .navigation-item-child-container .navigation-item > a {
    color: #0a767b;
    font-size: 14px;
    padding: 6px 8px;
    display: block;
}
.wc-custom-layout .wi-2E9469A2-33F1-4928-A557-B0E0744642E4 .navigation-item-child-container .navigation-item > a:hover {
    background: #ffd84d;
}
.wc-custom-layout .wi-2E9469A2-33F1-4928-A557-B0E0744642E4 .navigation-item-child-container { display: flex !important; flex-direction: column !important; }
.wc-custom-layout .wi-2E9469A2-33F1-4928-A557-B0E0744642E4 .navigation-item-child-container .navigation-item > a { padding: 6px 8px !important; }
.wc-custom-layout .wi-2E9469A2-33F1-4928-A557-B0E0744642E4 .child-opener {
    display: none;
}
@media (max-width: 1200px) {
.wc-custom-layout .wi-2E9469A2-33F1-4928-A557-B0E0744642E4 .navigation-item-child-container { position: static !important; opacity: 1 !important; visibility: visible !important; display: flex !important; flex-direction: column !important; transform: none !important; pointer-events: auto !important; box-shadow: none !important; margin: 0 !important; min-width: 0 !important; background: transparent !important; }
.wc-custom-layout .wi-2E9469A2-33F1-4928-A557-B0E0744642E4 .navigation-item-child-container .navigation-item > a {
    display: block !important;
    width: 100% !important;
    background: rgba(0,0,0,0.16) !important;
    color: #ffce00 !important;
    padding: 11px 40px !important;
    border-bottom: 1px solid rgba(255,255,255,0.08) !important;
}
.wc-custom-layout .wi-2E9469A2-33F1-4928-A557-B0E0744642E4 .navigation-item-child-container .navigation-item { background: transparent !important; padding: 0 !important; }
}
.wc-custom-layout .wi-33668429-E7BA-4C9C-A798-6417A36B0D7F { display: block; }
/* Navigation widget — layout defaults. The widget framework wraps the original
   <nav><a></a></nav> in two extra divs (.widget-navigation > .nav-wrapper >
   .navigation-item > <a>), which breaks the parent's flex distribution (the
   widget div becomes the only flex child, items clump). We supply sensible
   layout defaults here so navs render correctly even when the section CSS
   isn't available (e.g. when shared style.css caching delays propagation for
   header/footer placements). Specific designs (centered, right-aligned, etc.)
   can still override these via section CSS which loads later in the cascade. */
/* `display: contents` on both widget wrappers makes them layout-transparent —
   the .navigation-item divs become direct flex children of the original parent
   (.main-nav, .footer-links-col, etc.). The author's source CSS on that parent
   (justify-content: center / space-between / flex-end, gap, etc.) then applies
   to the items directly — works for ANY design with NO hardcoded layout. */
.wc-custom-layout .wi-33668429-E7BA-4C9C-A798-6417A36B0D7F .widget-navigation { display: contents; }
.wc-custom-layout .wi-33668429-E7BA-4C9C-A798-6417A36B0D7F .nav-wrapper.horizontal { display: contents; }
.wc-custom-layout .wi-33668429-E7BA-4C9C-A798-6417A36B0D7F .nav-wrapper.vertical {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    list-style: none;
    margin: 0;
    padding: 0;
}
/* Mechanical resets: WC base CSS / ecommerce CSS adds an underline + border to
   .navigation-item a that the author's source CSS doesn't know about. Null those
   out here — they're true resets (counter widget-framework-injected styles).
   Padding is reset with !important: link box styling lives on .navigation-item
   (the container), so the anchor must carry NO box padding. Without !important an
   author DESCENDANT rule that still matches the widget anchor (e.g. a footer's
   `.foot-col a` padding rule, same 0,3,1 specificity, later in the cascade)
   stacks with the container padding and doubles the item spacing. WC's own
   `.vertical .navigation-item a` padding is countered the same way. */
.wc-custom-layout .wi-33668429-E7BA-4C9C-A798-6417A36B0D7F .navigation-item > a {
    text-decoration: none;
    border-bottom: none;
    padding: 0 !important;
}
/* Label needs `white-space: pre-line` so the `\n` we encode for `<br>` (in
   `_extract_nav_items`) renders as an actual line break. Harmless on labels
   without newlines (behaves like normal whitespace). */
.wc-custom-layout .wi-33668429-E7BA-4C9C-A798-6417A36B0D7F .navigation-item > a > span.label { white-space: pre-line; }
.wc-custom-layout .wi-33668429-E7BA-4C9C-A798-6417A36B0D7F .widget-navigation .menu-title { display: none; }
.wc-custom-layout .wi-33668429-E7BA-4C9C-A798-6417A36B0D7F .widget-navigation .menu-button { display: none; }
/* Sub-menu dropdown — reset WC site-base defaults + show on hover with fade */
.wc-custom-layout .wi-33668429-E7BA-4C9C-A798-6417A36B0D7F .navigation-item.has-child { position: relative; }
/* Reset WC white background image, fixed width/position */
.wc-custom-layout .wi-33668429-E7BA-4C9C-A798-6417A36B0D7F .navigation-item-child-container { position: absolute; top: 100%; left: 0; z-index: 10000; opacity: 0; visibility: hidden; transform: translateY(4px); transition: opacity 0.2s, visibility 0.2s, transform 0.2s; pointer-events: none; background-image: none; width: auto; }
.wc-custom-layout .wi-33668429-E7BA-4C9C-A798-6417A36B0D7F .has-child .navigation-item-child-container { background-image: none; left: 0; top: 100%; width: auto; }
.wc-custom-layout .wi-33668429-E7BA-4C9C-A798-6417A36B0D7F .navigation-item.has-child:hover > .navigation-item-child-container { opacity: 1; visibility: visible; transform: translateY(0); pointer-events: auto; display: block; }
/* Reset WC dropdown item defaults: border-bottom, padding */
.wc-custom-layout .wi-33668429-E7BA-4C9C-A798-6417A36B0D7F .navigation-item-child-container .navigation-item { padding: 0; }
.wc-custom-layout .wi-33668429-E7BA-4C9C-A798-6417A36B0D7F .navigation-item-child-container .navigation-item a { border-bottom: none; }
.wc-custom-layout .wi-33668429-E7BA-4C9C-A798-6417A36B0D7F .child-opener { display: none; }
.wc-custom-layout .wi-33668429-E7BA-4C9C-A798-6417A36B0D7F .navigation-item {
    font-size: 16px;
    font-weight: 600;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: 0.64px;
    line-height: 44px;
    text-decoration: none;
  text-align: left;
}
.wc-custom-layout .wi-33668429-E7BA-4C9C-A798-6417A36B0D7F .navigation-item > a {
    font-size: 16px;
    font-weight: 600;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: 0.64px;
    line-height: 44px;
}
.wc-custom-layout .wi-33668429-E7BA-4C9C-A798-6417A36B0D7F .navigation-item > a > span.label {
    text-decoration: inherit;
    font-size: 16px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.64px;
    line-height: 44px;
}
.wc-custom-layout .wi-33668429-E7BA-4C9C-A798-6417A36B0D7F .navigation-item > a:hover {
    color: #ffce00;
}
.wc-custom-layout .wi-33668429-E7BA-4C9C-A798-6417A36B0D7F .navigation-item-child-container {
    background: #ffce00;
    box-shadow: 0 2px 4px rgba(0,0,0,0.12);
    min-width: 119px;
}
.wc-custom-layout .wi-33668429-E7BA-4C9C-A798-6417A36B0D7F .navigation-item-child-container .navigation-item > a {
    color: #0a767b;
    font-size: 14px;
    padding: 6px 8px;
    display: block;
}
.wc-custom-layout .wi-33668429-E7BA-4C9C-A798-6417A36B0D7F .navigation-item-child-container .navigation-item > a:hover {
    background: #ffd84d;
}
.wc-custom-layout .wi-33668429-E7BA-4C9C-A798-6417A36B0D7F .navigation-item-child-container { display: flex !important; flex-direction: column !important; }
.wc-custom-layout .wi-33668429-E7BA-4C9C-A798-6417A36B0D7F .navigation-item-child-container .navigation-item > a { padding: 6px 8px !important; }
.wc-custom-layout .wi-33668429-E7BA-4C9C-A798-6417A36B0D7F .child-opener {
    display: none;
}
@media (max-width: 1200px) {
.wc-custom-layout .wi-33668429-E7BA-4C9C-A798-6417A36B0D7F .navigation-item-child-container { position: static !important; opacity: 1 !important; visibility: visible !important; display: flex !important; flex-direction: column !important; transform: none !important; pointer-events: auto !important; box-shadow: none !important; margin: 0 !important; min-width: 0 !important; background: transparent !important; }
.wc-custom-layout .wi-33668429-E7BA-4C9C-A798-6417A36B0D7F .navigation-item-child-container .navigation-item > a {
    display: block !important;
    width: 100% !important;
    background: rgba(0,0,0,0.16) !important;
    color: #ffce00 !important;
    padding: 11px 40px !important;
    border-bottom: 1px solid rgba(255,255,255,0.08) !important;
}
.wc-custom-layout .wi-33668429-E7BA-4C9C-A798-6417A36B0D7F .navigation-item-child-container .navigation-item { background: transparent !important; padding: 0 !important; }
}

/* Author section CSS (loaded last — wins same-specificity ties) */
.wc-custom-layout .wcs_section_eb7a587e a { background: initial; background-color: initial; border: initial; border-bottom: initial; border-radius: initial; box-shadow: initial; color: inherit; font-size: inherit; font-style: inherit; font-weight: inherit; line-height: inherit; margin: initial; margin-left: initial; margin-top: initial; outline: initial; padding: initial; padding-left: initial; text-align: inherit; text-decoration: inherit; text-transform: inherit; }
.wc-custom-layout .wcs_section_eb7a587e blockquote { border-left: none; margin: 0; padding: 0; padding-left: 0; }
.wc-custom-layout .wcs_section_eb7a587e button { background: initial; background-color: initial; border: initial; border-radius: initial; color: inherit; font-family: inherit; font-size: inherit; font-weight: inherit; line-height: normal; margin: 0; margin-left: initial; margin-top: initial; padding: initial; text-align: inherit; text-decoration: inherit; text-transform: none; }
.wc-custom-layout .wcs_section_eb7a587e fieldset { border: none; margin: 0; padding: 0; }
.wc-custom-layout .wcs_section_eb7a587e figcaption { margin: 0; padding: initial; }
.wc-custom-layout .wcs_section_eb7a587e figure { margin: 0; padding: initial; }
.wc-custom-layout .wcs_section_eb7a587e h1 { border: initial; color: inherit; font-family: inherit; font-size: revert; font-weight: inherit; line-height: inherit; margin: 0; margin-bottom: initial; padding-bottom: initial; text-align: inherit; }
.wc-custom-layout .wcs_section_eb7a587e h2 { border: initial; border-bottom: initial; color: inherit; font-family: inherit; font-size: revert; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0; margin-bottom: initial; padding: initial; padding-bottom: initial; text-align: inherit; }
.wc-custom-layout .wcs_section_eb7a587e h3 { color: inherit; font-family: inherit; font-size: revert; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0; padding: initial; padding-bottom: initial; text-transform: inherit; }
.wc-custom-layout .wcs_section_eb7a587e h4 { border-bottom: initial; color: inherit; font-size: revert; font-weight: inherit; line-height: inherit; margin: 0; padding: initial; padding-bottom: initial; }
.wc-custom-layout .wcs_section_eb7a587e h5 { border-bottom: initial; color: inherit; font-size: revert; font-weight: inherit; margin: 0; padding: initial; padding-bottom: initial; text-transform: inherit; }
.wc-custom-layout .wcs_section_eb7a587e h6 { color: inherit; margin: 0; padding: initial; }
.wc-custom-layout .wcs_section_eb7a587e hr { border: none; border-top: 1px solid currentColor; margin-bottom: initial; margin-top: initial; }
.wc-custom-layout .wcs_section_eb7a587e img { border: none; border-radius: initial; margin: initial; padding: initial; padding-right: initial; vertical-align: middle; }
.wc-custom-layout .wcs_section_eb7a587e input { background: initial; background-color: initial; border: initial; border-bottom: initial; border-color: initial; border-radius: initial; border-right: initial; border-top: initial; color: inherit; font-family: inherit; font-size: inherit; font-weight: inherit; line-height: normal; margin: 0; margin-right: initial; margin-top: initial; outline: initial; padding: initial; padding-right: initial; text-align: start; vertical-align: initial; }
.wc-custom-layout .wcs_section_eb7a587e li { border: initial; border-radius: initial; color: inherit; font-size: inherit; line-height: inherit; list-style: inherit; margin: 0; margin-bottom: initial; margin-left: initial; padding: 0; }
.wc-custom-layout .wcs_section_eb7a587e ol { margin: 0; padding-left: initial; }
.wc-custom-layout .wcs_section_eb7a587e p { color: inherit; font-family: inherit; font-size: inherit; font-style: inherit; font-weight: inherit; line-height: inherit; margin: 0; margin-bottom: initial; margin-top: initial; padding: initial; padding-bottom: initial; padding-top: initial; text-align: inherit; }
.wc-custom-layout .wcs_section_eb7a587e pre { background: transparent; border-radius: 0; border-width: initial; color: inherit; font-family: inherit; font-size: inherit; line-height: inherit; margin: 0; padding: 0; }
.wc-custom-layout .wcs_section_eb7a587e select { background: initial; background-color: initial; border: initial; border-bottom: initial; border-radius: initial; color: inherit; font-family: inherit; font-size: inherit; font-weight: inherit; line-height: inherit; margin: 0; margin-right: initial; padding: initial; padding-left: initial; padding-right: initial; text-transform: none; }
.wc-custom-layout .wcs_section_eb7a587e table { background: initial; background-color: initial; border: initial; border-bottom: initial; border-radius: initial; box-shadow: initial; margin: initial; margin-bottom: initial; }
.wc-custom-layout .wcs_section_eb7a587e textarea { background: initial; background-color: initial; border: initial; border-bottom: initial; border-radius: initial; color: inherit; font-family: inherit; font-size: inherit; font-weight: inherit; line-height: inherit; margin: 0; padding: initial; text-align: start; }
.wc-custom-layout .wcs_section_eb7a587e ul { font-size: inherit; list-style: none; margin: 0; padding: 0; padding-left: initial; }
.wc-custom-layout .wcs_section_eb7a587e .footer { -ms-flex-align: revert; -ms-flex-pack: revert; -webkit-box-align: revert; -webkit-box-pack: revert; align-items: revert; background-color: revert; border: revert; border-top: revert; display: revert; justify-content: revert; margin: revert; margin-bottom: revert; margin-top: revert; max-width: revert; overflow: revert; padding-left: revert; padding-right: revert; position: revert; text-align: revert; width: revert; }

.wc-custom-layout .wcs_section_eb7a587e :where(h1, h2, h3, h4, h5, h6, p, blockquote, figure, figcaption, dd, dl) { margin: 0; padding: 0; }
.wc-custom-layout .wcs_section_eb7a587e, .wc-custom-layout .wcs_section_eb7a587e * { box-sizing: border-box; }
.wc-custom-layout .wcs_section_eb7a587e img { display: block; }
.wc-custom-layout .wcs_section_eb7a587e .wrap { width: 1192px; max-width: calc(100% - 80px); margin: 0 auto; }
.wc-custom-layout .wcs_section_eb7a587e .logo img { width: 100%; height: 100%; object-fit: cover; }
.wc-custom-layout .wcs_section_eb7a587e .nav-links a {
 display: flex; flex-direction: column; align-items: stretch; text-decoration: none;
 color: #fff; font-weight: 600; font-size: 14px; line-height: 1.15;
 letter-spacing: 0.02em; text-transform: uppercase;
 }
.wc-custom-layout .wcs_section_eb7a587e .nav-links a .underline { height: 3px; background: var(--yellow); margin-top: 8px; width: 100%; }
.wc-custom-layout .wcs_section_eb7a587e .nav-links a .nl { display: block; }
.wc-custom-layout .wcs_section_eb7a587e .nav-links .dropdown a {
 display: block; width: 119px; background: var(--yellow); color: var(--teal);
 font-weight: 700; font-size: 14px; letter-spacing: 0.02em; text-transform: uppercase;
 padding: 6px 8px; line-height: 1.25; text-decoration: none; box-shadow: 0 2px 4px rgba(0,0,0,0.12);
 }
.wc-custom-layout .wcs_section_eb7a587e .nav-links .dropdown a:hover { background: #ffd84d; }
.wc-custom-layout .wcs_section_eb7a587e .photo img { width: 100%; height: 100%; object-fit: cover; display: block; }
.wc-custom-layout .wcs_section_eb7a587e .welcome .body a { color: inherit; text-decoration: underline; }
.wc-custom-layout .wcs_section_eb7a587e .circle img { width: 100%; height: 100%; object-fit: cover; display: block; }
.wc-custom-layout .wcs_section_eb7a587e .footer { background: var(--teal); color: #fff; padding: 71px 0 60px; }
.wc-custom-layout .wcs_section_eb7a587e .footer-inner { display: grid; grid-template-columns: 238px 1fr auto; column-gap: 60px; align-items: start; }
.wc-custom-layout .wcs_section_eb7a587e .footer-logo { width: 238px; }
.wc-custom-layout .wcs_section_eb7a587e .footer-logo img { width: 100%; height: auto; }
.wc-custom-layout .wcs_section_eb7a587e .footer-copy { margin-top: 26px; font-weight: 500; font-size: 14px; letter-spacing: 0.015em; }
.wc-custom-layout .wcs_section_eb7a587e .footer-links a {
    display: block; color: #fff; text-decoration: none; font-weight: 500; font-size: 16px;
    letter-spacing: 0.015em; line-height: 44px;
  }
.wc-custom-layout .wcs_section_eb7a587e .footer-links a:hover { color: var(--yellow); }
.wc-custom-layout .wcs_section_eb7a587e .store-badges .badge img { width: 150px; height: auto; display: block; }
@media (max-width: 980px) {
  .wc-custom-layout .wcs_section_eb7a587e .nav { height: auto; position: relative; }
  .wc-custom-layout .wcs_section_eb7a587e .nav-inner { flex-direction: column; height: auto; padding: 70px 0 16px; }
  .wc-custom-layout .wcs_section_eb7a587e .logo { left: 50%; transform: translateX(-50%); }
  .wc-custom-layout .wcs_section_eb7a587e .nav-links { margin-left: 0; flex-wrap: wrap; justify-content: center; gap: 18px 24px; height: auto; }
  .wc-custom-layout .wcs_section_eb7a587e .nav-links a { align-items: center; }
  .wc-custom-layout .wcs_section_eb7a587e .nav-links a .underline { width: 60%; }
  .wc-custom-layout .wcs_section_eb7a587e .redlands .grid { grid-template-columns: 1fr; row-gap: 32px; }
  .wc-custom-layout .wcs_section_eb7a587e .col-right .copy { margin-top: 20px; }
  .wc-custom-layout .wcs_section_eb7a587e .footer-inner { grid-template-columns: 1fr; row-gap: 36px; }
  .wc-custom-layout .wcs_section_eb7a587e .top-btn { display: flex; }
}
@media (max-width: 980px) {
  .wc-custom-layout .wcs_section_eb7a587e .top-btn { display: flex; }
}
.wc-custom-layout .wcs_section_eb7a587e .footer { background: var(--teal); color: #fff; padding: 72px 0 84px; }
.wc-custom-layout .wcs_section_eb7a587e .footer-inner { display: grid; grid-template-columns: 300px 1fr auto; column-gap: 40px; align-items: stretch; }
.wc-custom-layout .wcs_section_eb7a587e .footer-brand { display: flex; flex-direction: column; }
.wc-custom-layout .wcs_section_eb7a587e .footer-logo { width: 205px; }
.wc-custom-layout .wcs_section_eb7a587e .footer-logo img { width: 100%; height: auto; }
.wc-custom-layout .wcs_section_eb7a587e .footer-copy { margin-top: 28px; font-weight: 500; font-size: 16px; letter-spacing: 0.01em; }
.wc-custom-layout .wcs_section_eb7a587e .footer-nav { display: flex; flex-direction: column; }
.wc-custom-layout .wcs_section_eb7a587e .footer-nav a { color: #fff; text-decoration: none; font-weight: 600; font-size: 16px; letter-spacing: 0.04em; text-transform: uppercase; line-height: 44px; }
.wc-custom-layout .wcs_section_eb7a587e .footer-nav a:hover { color: var(--yellow); }
.wc-custom-layout .wcs_section_eb7a587e .footer-legal { display: flex; flex-direction: column; justify-content: flex-end; text-align: right; }
.wc-custom-layout .wcs_section_eb7a587e .footer-legal a { color: #fff; text-decoration: none; font-weight: 600; font-size: 16px; letter-spacing: 0.04em; text-transform: uppercase; line-height: 44px; }
.wc-custom-layout .wcs_section_eb7a587e .footer-legal a:hover { color: var(--yellow); }

/* [fb-nowrap] The footer Facebook link carries an INLINE max-width:320px, which
   leaves 256px for the label once the 45px icon and 19px gap are taken. The
   translated labels need 283px on one line (English only 184px), so Japanese and
   German wrapped "Facebook" onto a second line. Only !important beats an inline
   style. nowrap also raises the min-content width, which is what lets the
   auto-sized footer column widen to fit. <=767px keeps style.css's 258px cap. */
@media (min-width: 768px) {
  .wc-custom-layout .wcs_section_eb7a587e a.face-book-icon {
    max-width: 360px !important;
    white-space: nowrap;
    justify-content: flex-start !important;
  }
  .wc-custom-layout .wcs_section_eb7a587e a.face-book-icon span {
    white-space: nowrap;
  }
}

/* [fb-nowrap-mobile] Same single line below 768. style.css caps the anchor at
   `max-width:258px !important` for the whole mobile range even though the column
   offers 703px at 767 and 288px at 320, so lift it. The span's inline
   `letter-spacing:1px` is ABSOLUTE and would not shrink with the font, so restate
   it in em (0.07em == 1px at 14px, i.e. unchanged at full size); the label width
   then scales linearly and min(14px, 3.5vw) keeps one line down to 320px while
   staying at the design's 14px on anything ~400px and wider. */
@media (max-width: 767px) {
  .wc-custom-layout .wcs_section_eb7a587e a.face-book-icon {
    /* 360px as on desktop: >= the 338px one line needs, and it keeps the
       button from stretching to the full column (703px at 767) */
    max-width: 360px !important;
    white-space: nowrap;
        justify-content: flex-start !important;
  }
  .wc-custom-layout .wcs_section_eb7a587e a.face-book-icon span {
    white-space: nowrap;
    font-size: min(14px, 3.5vw) !important;
    letter-spacing: 0.07em !important;
  }

}
@media (max-width: 980px) {
  .wc-custom-layout .wcs_section_eb7a587e .footer-inner { grid-template-columns: 1fr; row-gap: 28px; }
  .wc-custom-layout .wcs_section_eb7a587e .footer-legal { text-align: left; justify-content: flex-start; }
}
.wc-custom-layout .wcs_section_eb7a587e, .wc-custom-layout .wcs_section_eb7a587e *, .wc-custom-layout .wcs_section_eb7a587e *::before, .wc-custom-layout .wcs_section_eb7a587e *::after { box-sizing: border-box; }
.wc-custom-layout .wcs_section_eb7a587e img, .wc-custom-layout .wcs_section_eb7a587e video, .wc-custom-layout .wcs_section_eb7a587e iframe, .wc-custom-layout .wcs_section_eb7a587e svg { max-width: 100%; }
.wc-custom-layout .wcs_section_eb7a587e .sponsor-link img { display: block; width: auto; max-width: 100%; }
.wc-custom-layout .wcs_section_eb7a587e .sp-artlinks img { height: clamp(56px, 9vw, 84px); }
.wc-custom-layout .wcs_section_eb7a587e .sp-redlands img { height: clamp(104px, 16vw, 150px); }
.wc-custom-layout .wcs_section_eb7a587e .sp-helsinki img { height: clamp(88px, 14vw, 128px); }
.wc-custom-layout .wcs_section_eb7a587e .sp-comm img { height: clamp(46px, 8vw, 66px); }
.wc-custom-layout .wcs_section_eb7a587e .sp-webcommander img { height: clamp(30px, 5vw, 40px); }
@media (max-width: 1260px) {
  .wc-custom-layout .wcs_section_eb7a587e .wrap { width: auto !important; max-width: 100% !important; margin-left: auto !important; margin-right: auto !important;
 padding-left: clamp(16px, 4.2vw, 44px) !important; padding-right: clamp(16px, 4.2vw, 44px) !important; }
}
@media (max-width: 1200px) {
  .wc-custom-layout .wcs_section_eb7a587e .h-section { font-size: clamp(24px, 4.4vw, 42px) !important; line-height: 1.16 !important; }
  .wc-custom-layout .wcs_section_eb7a587e .hero-title span { font-size: clamp(20px, 3.3vw, 36px) !important; line-height: 1.28 !important; }
  .wc-custom-layout .wcs_section_eb7a587e .aerial-title { font-size: clamp(18px, 3.4vw, 36px) !important; line-height: 1.22 !important; margin-top: clamp(14px, 3vw, 34px) !important; padding: 0 16px !important; text-align: center !important; }
  .wc-custom-layout .wcs_section_eb7a587e [class$="-hero"] h1, .wc-custom-layout .wcs_section_eb7a587e .hero-banner h1, .wc-custom-layout .wcs_section_eb7a587e .teams-hero h1 { font-size: clamp(22px, 3.6vw, 36px) !important; line-height: 1.2 !important; }
}
@media (max-width: 1200px) {
  .wc-custom-layout .wcs_section_eb7a587e .nav { height: 64px; }
  .wc-custom-layout .wcs_section_eb7a587e .nav-inner { height: 64px; flex-direction: row; padding: 0; justify-content: flex-start; }
  .wc-custom-layout .wcs_section_eb7a587e .logo { width: 54px; height: 54px; left: 14px; top: 5px; transform: none; border-radius: 5px; box-shadow: 0 3px 5px rgba(0,0,0,0.22); }
  .wc-custom-layout .wcs_section_eb7a587e .nav-burger {
 display: flex; flex-direction: column; gap: 5px; cursor: pointer;
 position: absolute; right: 18px; top: 50%; transform: translateY(-50%);
 width: 32px; padding: 5px 1px; z-index: 80;
 }
  .wc-custom-layout .wcs_section_eb7a587e .nav-burger span { display: block; height: 3px; width: 100%; background: #fff; border-radius: 2px; transition: transform .25s, opacity .2s; }
  .wc-custom-layout .wcs_section_eb7a587e .nav-links {
 display: none; position: absolute; top: 64px; left: 0; right: 0; margin-left: 0;
 height: auto; flex-direction: column; flex-wrap: nowrap; justify-content: flex-start; gap: 0; align-items: stretch; background: var(--teal);
 padding: 4px 0 12px; box-shadow: 0 8px 10px rgba(0,0,0,0.18); max-height: calc(100vh - 64px); overflow-y: auto;
 }
  .wc-custom-layout .wcs_section_eb7a587e .nav-toggle:checked ~ .nav-links { display: flex; }
  .wc-custom-layout .wcs_section_eb7a587e .nav-links a { display: block; padding: 13px 24px; font-size: 15px; line-height: 1.25; border-bottom: 1px solid rgba(255,255,255,0.12); }
  .wc-custom-layout .wcs_section_eb7a587e .nav-links a .nl { display: inline; }
  .wc-custom-layout .wcs_section_eb7a587e .nav-links a .nl + .nl::before { content: " "; }
  .wc-custom-layout .wcs_section_eb7a587e .nav-links a .underline { display: none; }
  .wc-custom-layout .wcs_section_eb7a587e .nav-item { width: 100%; }
  .wc-custom-layout .wcs_section_eb7a587e .nav-item > a { display: block; }
  .wc-custom-layout .wcs_section_eb7a587e .nav-item .dropdown { position: static; display: flex; padding: 0; margin: 0; box-shadow: none; gap: 0; }
  .wc-custom-layout .wcs_section_eb7a587e .nav-item .dropdown a { width: 100%; background: rgba(0,0,0,0.16); color: var(--yellow); padding: 11px 40px; box-shadow: none; border-bottom: 1px solid rgba(255,255,255,0.08); }
  .wc-custom-layout .wcs_section_eb7a587e .nav-toggle:checked ~ .nav-burger span:nth-child(1) { transform: translateY(8px) rotate(45deg); }
  .wc-custom-layout .wcs_section_eb7a587e .nav-toggle:checked ~ .nav-burger span:nth-child(2) { opacity: 0; }
  .wc-custom-layout .wcs_section_eb7a587e .nav-toggle:checked ~ .nav-burger span:nth-child(3) { transform: translateY(-8px) rotate(-45deg); }
}
@media (max-width: 1200px) {
  .wc-custom-layout .wcs_section_eb7a587e .hero { height: clamp(300px, 46vw, 550px) !important; }
  .wc-custom-layout .wcs_section_eb7a587e [class$="-hero"], .wc-custom-layout .wcs_section_eb7a587e .hero-banner { height: clamp(160px, 24vw, 250px) !important; }
}
@media (max-width: 1024px) {
  .wc-custom-layout .wcs_section_eb7a587e .links-grid, .wc-custom-layout .wcs_section_eb7a587e .cols, .wc-custom-layout .wcs_section_eb7a587e .accomm .cols, .wc-custom-layout .wcs_section_eb7a587e .index-grid, .wc-custom-layout .wcs_section_eb7a587e .care-cols { grid-template-columns: 1fr 1fr !important; column-gap: clamp(20px, 3.5vw, 36px) !important; row-gap: 26px !important; }
}
@media (max-width: 900px) {
  .wc-custom-layout .wcs_section_eb7a587e .redlands .grid, .wc-custom-layout .wcs_section_eb7a587e .intro-grid, .wc-custom-layout .wcs_section_eb7a587e .row-top, .wc-custom-layout .wcs_section_eb7a587e .row-care, .wc-custom-layout .wcs_section_eb7a587e .grass .grid, .wc-custom-layout .wcs_section_eb7a587e .getting .grid {
 grid-template-columns: 1fr !important; row-gap: 26px !important;
 }
  .wc-custom-layout .wcs_section_eb7a587e .col-left .copy, .wc-custom-layout .wcs_section_eb7a587e .col-right .copy, .wc-custom-layout .wcs_section_eb7a587e .grass .copy, .wc-custom-layout .wcs_section_eb7a587e .getting .copy { margin-top: 18px !important; padding-top: 0 !important; }
}
@media (max-width: 760px) {
  .wc-custom-layout .wcs_section_eb7a587e .links-grid, .wc-custom-layout .wcs_section_eb7a587e .cols, .wc-custom-layout .wcs_section_eb7a587e .accomm .cols, .wc-custom-layout .wcs_section_eb7a587e .index-grid, .wc-custom-layout .wcs_section_eb7a587e .care-cols { grid-template-columns: 1fr !important; row-gap: 20px !important; }
  .wc-custom-layout .wcs_section_eb7a587e .photo-grid, .wc-custom-layout .wcs_section_eb7a587e .beyond-grid { display: flex !important; flex-direction: column !important; gap: 16px !important; }
  .wc-custom-layout .wcs_section_eb7a587e .photo-grid > *, .wc-custom-layout .wcs_section_eb7a587e .beyond-grid > * { width: 100% !important; height: auto !important; aspect-ratio: 16 / 10 !important; }
  .wc-custom-layout .wcs_section_eb7a587e .circles { gap: clamp(22px, 7vw, 44px) !important; }
  .wc-custom-layout .wcs_section_eb7a587e .circle, .wc-custom-layout .wcs_section_eb7a587e .circle img { width: clamp(120px, 42vw, 180px) !important; height: clamp(120px, 42vw, 180px) !important; }
  .wc-custom-layout .wcs_section_eb7a587e .aerial { aspect-ratio: 16 / 9 !important; align-items: center !important; }
  .wc-custom-layout .wcs_section_eb7a587e .aerial-title { margin-top: 0 !important; }
  .wc-custom-layout .wcs_section_eb7a587e .btn-pill { min-width: 0 !important; width: 100% !important; max-width: 380px !important; padding: 0 18px !important; }
  .wc-custom-layout .wcs_section_eb7a587e .hero-title { padding-top: 16px !important; }
  .wc-custom-layout .wcs_section_eb7a587e table.tbl, .wc-custom-layout .wcs_section_eb7a587e table.sched, .wc-custom-layout .wcs_section_eb7a587e table.standings, .wc-custom-layout .wcs_section_eb7a587e table.teams, .wc-custom-layout .wcs_section_eb7a587e .teams-table table, .wc-custom-layout .wcs_section_eb7a587e section table {
      display: block !important; width: 100% !important; max-width: 100% !important;
      overflow-x: auto !important; -webkit-overflow-scrolling: touch; white-space: nowrap;
    }
}
@media (max-width: 480px) {
  .wc-custom-layout .wcs_section_eb7a587e .h-section { font-size: clamp(21px, 6.4vw, 28px) !important; }
  .wc-custom-layout .wcs_section_eb7a587e .circle, .wc-custom-layout .wcs_section_eb7a587e .circle img { width: clamp(110px, 60vw, 170px) !important; height: clamp(110px, 60vw, 170px) !important; }
}
@media (max-width: 900px) {
  .wc-custom-layout .wcs_section_eb7a587e .footer-inner { grid-template-columns: 1fr !important; row-gap: 28px !important; }
  .wc-custom-layout .wcs_section_eb7a587e .footer-legal { text-align: left !important; justify-content: flex-start !important; }
  .wc-custom-layout .wcs_section_eb7a587e .footer-links { grid-template-columns: 1fr 1fr !important; }
}
@media (max-width: 480px) {
  .wc-custom-layout .wcs_section_eb7a587e .top-btn { display: flex !important; }
}

/* mcp-layout-pin: layout CSS is shared across pages (header/footer
   reuse) — pin this page's theme vars + inherited body text styling on
   the section wrapper so the layout renders identically on pages with
   a different theme. */
.wcs_section_eb7a587e {
  --teal: #0a767b;
  --yellow: #ffce00;
  font-family: "Montserrat", sans-serif;
  color: #000;
  -webkit-font-smoothing: antialiased;
  font-weight: 500;
  line-height: 40px;
  letter-spacing: 0.025em;
}
/* [/MCP:mcp-layout] */
.wc-custom-layout .wi-E4A55004-DF50-4B9D-8806-49F6E2ECB166 .nav-wrapper.horizontal {
    display: flex;
    align-items: center;
    gap: 38px;
}