/* Opt-in Gutenberg Core header/footer adapters.
 * Scoped deliberately: current site-header/site-footer renderers remain pixel-identical.
 * Do NOT switch default template parts until desktop/mobile screenshot parity is approved.
 */
.ftt-native-header .ftt-native-brand{display:flex;align-items:center;gap:9px;flex-shrink:0;margin:0}
.ftt-native-header .ftt-native-brand-mark{margin:0;font-size:28px;line-height:1;color:var(--wp--preset--color--lime-strong,#c3d982)}
.ftt-native-header .ftt-native-site-title{margin:0;line-height:1.1;font-family:var(--wp--preset--font-family--display,Manrope,sans-serif);font-size:16px;font-weight:800}
.ftt-native-header .ftt-native-site-title a{text-decoration:none;color:inherit}
.ftt-native-header .ftt-native-brand-subtitle{margin:1px 0 0;font-size:9px;font-weight:700;letter-spacing:.14em;line-height:1.2}
.ftt-native-header .ftt-native-nav{margin:0;flex:1 1 auto;background:transparent}
.ftt-native-header .wp-block-navigation__container{align-items:center;gap:clamp(7px,1.1vw,15px)}
.ftt-native-header .wp-block-navigation-item__content{font-family:inherit;text-decoration:none;font-weight:600;white-space:nowrap}
.ftt-native-header .wp-block-navigation-item__content:hover,.ftt-native-header .wp-block-navigation-item__content:focus-visible{color:var(--wp--preset--color--cta-accent,#63842f)}
.ftt-native-header .ftt-native-header-action{margin:0;flex:none}
.ftt-native-header .ftt-native-header-action .wp-block-button__link{text-decoration:none;white-space:nowrap}
.ftt-native-header .ftt-native-header-social{display:flex;gap:8px;margin:0;flex:none}
.ftt-native-header .ftt-native-header-social .wp-social-link{border:1px solid #dce8df;border-radius:50%;background:#fff;color:#118566}
.ftt-native-header .ftt-native-header-social .wp-social-link:hover{background:#e7f9ee}
.ftt-native-footer .bs-footer-main{display:grid;grid-template-columns:minmax(0,1.45fr) repeat(2,minmax(0,1fr));gap:clamp(24px,4vw,68px)}
.ftt-native-footer .bs-footer-col .wp-block-navigation{margin:0}
.ftt-native-footer .bs-footer-col .wp-block-navigation__container{align-items:flex-start;gap:10px}
.ftt-native-footer .bs-footer-col .wp-block-navigation-item__content{text-decoration:none}
.ftt-native-footer .bs-footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px}
.ftt-native-footer .bs-footer-bottom p{margin:0}
.ftt-native-footer .bs-footer-actions{display:flex;gap:16px;align-items:center}
.ftt-native-footer .ftt-native-footer-social{margin:0}
.ftt-native-footer .ftt-native-footer-social .wp-social-link{border:none!important;border-radius:0!important;background:none;!important;color:#baf3dc}
@media(max-width:1120px){
 .ftt-native-header .bs-header-inner{gap:10px}
 .ftt-native-header .ftt-native-header-social{gap:5px}
}
@media(max-width:830px){
 .ftt-native-header .ftt-native-nav{flex:0 1 auto;margin-left:auto}
 .ftt-native-header .ftt-native-header-social{display:none}
 .ftt-native-footer .bs-footer-main{grid-template-columns:repeat(2,minmax(0,1fr))}
 .ftt-native-footer .bs-footer-about{grid-column:1/-1}
}
@media(max-width:560px){
 .ftt-native-header .ftt-native-brand-subtitle{display:none}
 .ftt-native-header .bs-header-inner{flex-wrap:wrap}
 .ftt-native-footer .bs-footer-main{grid-template-columns:1fr}
 .ftt-native-footer .bs-footer-about{grid-column:auto}
 .ftt-native-footer .bs-footer-bottom{align-items:flex-start;flex-direction:column}
}
@media(prefers-reduced-motion:reduce){.ftt-native-header .wp-social-link{transition:none}}

/* v0.1.5 — Core Button normalization in native FSE header.
 * WordPress stores the active header in wp_template_part; it may still contain
 * the earlier wp-block-button.bs-btn.bs-btn-primary.bs-header-cta classes.
 * Those classes colored/padded the OUTER div while WordPress styled the inner
 * <a>, resulting in an oversized lime halo around a dark Contact Us pill.
 * Neutralize only this header's Core Buttons wrappers, preserving all other
 * .bs-btn styles throughout the site.
 */
.ftt-native-header .ftt-native-header-action {
  margin:0!important;
  padding:0!important;
  min-height:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.ftt-native-header .ftt-native-header-action .wp-block-button {
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  flex:none;
  width:auto!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  transform:none!important;
}
.ftt-native-header .ftt-native-header-action .wp-block-button::before,
.ftt-native-header .ftt-native-header-action .wp-block-button::after {
  display:none!important;
}
.ftt-native-header .ftt-native-header-action .wp-block-button__link {
  box-sizing:border-box;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:auto;
  min-height:50px;
  margin:0;
  padding:13px 24px;
  border:0;
  border-radius:999px;
  background:#252a2e;
  color:#fff;
  font:750 14px/1.25 'Inter',system-ui,sans-serif;
  text-align:center;
  text-decoration:none;
  white-space:nowrap;
  box-shadow:none;
  transition:background-color .2s ease,transform .2s ease;
}
.ftt-native-header .ftt-native-header-action .wp-block-button__link:hover {
  background:#384044;
  color:#fff;
  transform:translateY(-2px);
}
.ftt-native-header .ftt-native-header-action .wp-block-button__link:focus-visible {
  outline:3px solid #63842f;
  outline-offset:3px;
}
@media(prefers-reduced-motion:reduce){
  .ftt-native-header .ftt-native-header-action .wp-block-button__link {
    transition:none;
  }
  .ftt-native-header .ftt-native-header-action .wp-block-button__link:hover {
    transform:none;
  }
}

/* v0.1.6 — Visible Gutenberg Social Links in saved native FSE headers.
 * A saved WordPress template part can still carry iconColor="white" and
 * has-icon-color even after theme files change. Fix at the rendered SVG,
 * li and anchor levels; do not overwrite database-saved navigation/logo.
 */
.ftt-native-header .ftt-native-header-social {
  display:flex;
  align-items:center;
  flex-wrap:nowrap;
  gap:9px;
  list-style:none;
  margin:0;
  padding:0;
}
.ftt-native-header .ftt-native-header-social .wp-social-link {
  box-sizing:border-box;
  flex:0 0 38px;
  display:flex;
  align-items:center;
  justify-content:center;
  width:38px;
  height:38px;
  margin:0;
  padding:0;
  border:1px solid #cfe6d8;
  border-radius:50%;
  background:#f1f9f3!important;
  color:#167a4f!important;
  box-shadow:none;
  transition:background-color .18s ease, border-color .18s ease, transform .18s ease;
}
.ftt-native-header .ftt-native-header-social .wp-social-link.wp-social-link-telegram {
  border-color:#d1e4f2;
  background:#f0f8fc!important;
  color:#1685b8!important;
}
.ftt-native-header .ftt-native-header-social .wp-social-link .wp-block-social-link-anchor {
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  height:100%;
  margin:0;
  padding:0!important;
  border-radius:50%;
  background:transparent!important;
  color:inherit!important;
  text-decoration:none;
}
.ftt-native-header .ftt-native-header-social .wp-social-link svg {
  display:block;
  width:20px;
  height:20px;
  color:inherit!important;
  fill:currentColor!important;
}
.ftt-native-header .ftt-native-header-social .wp-social-link:hover {
  border-color:#8bc7a5;
  background:#e2f3e8!important;
  transform:translateY(-2px);
}
.ftt-native-header .ftt-native-header-social .wp-social-link.wp-social-link-telegram:hover {
  border-color:#9acde7;
  background:#e4f4fc!important;
}
.ftt-native-header .ftt-native-header-social .wp-social-link:focus-within {
  outline:3px solid #63842f;
  outline-offset:3px;
}
@media(prefers-reduced-motion:reduce){
  .ftt-native-header .ftt-native-header-social .wp-social-link {
    transition:none;
  }
  .ftt-native-header .ftt-native-header-social .wp-social-link:hover {
    transform:none;
  }
}
/* Footer Core social icons, only when the opt-in native footer is used. */
.ftt-native-footer .ftt-native-footer-social .wp-social-link,
.ftt-native-footer .ftt-native-footer-social .wp-social-link .wp-block-social-link-anchor {
  color:#baf3dc!important;
}
.ftt-native-footer .ftt-native-footer-social .wp-social-link svg {
  fill:currentColor!important;
}


/* Shared template-part aliases must never add a second header band or spacing. */
.ftt-global-header {
  margin:0!important;
  padding:0!important;
  border:0;
}

/* v0.1.6 — Social icon contrast for the single shared FSE header.
 * Older wp_template_part records specify iconColor:white with a white circle.
 * WordPress then uses white SVG fill regardless of theme color declarations.
 * Force visible brand-color glyphs only within the shared native header.
 */
.ftt-native-header .ftt-native-header-social.wp-block-social-links {
  display:flex;
  flex-wrap:nowrap;
  gap:8px;
  margin:0;
  padding:0;
  list-style:none;
}
.ftt-native-header .ftt-native-header-social .wp-social-link {
  display:inline-flex;
  width:38px;
  height:38px;
  min-width:38px;
  align-items:center;
  justify-content:center;
  margin:0;
  padding:0;
  border:1px solid #dce8df;
  border-radius:50%;
  background:#fff!important;
  box-sizing:border-box;
  box-shadow:none;
}
.ftt-native-header .ftt-native-header-social .wp-social-link-whatsapp {
  color:#128c5e!important;
}
.ftt-native-header .ftt-native-header-social .wp-social-link-telegram {
  color:#168bba!important;
}
.ftt-native-header .ftt-native-header-social .wp-social-link > a.wp-block-social-link-anchor {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:100%;
  height:100%;
  padding:8px;
  color:inherit!important;
  background:transparent!important;
  border-radius:50%;
}
.ftt-native-header .ftt-native-header-social .wp-social-link svg,
.ftt-native-header .ftt-native-header-social .wp-social-link svg path {
  color:inherit!important;
  fill:currentColor!important;
}
.ftt-native-header .ftt-native-header-social .wp-social-link:hover {
  background:#e7f9ee!important;
  border-color:#7fbaa4;
  transform:translateY(-2px);
}
.ftt-native-header .ftt-native-header-social .wp-social-link > a:focus-visible {
  outline:3px solid #27795c;
  outline-offset:3px;
}
@media(max-width:830px) {
  /* Keep header social icons available at tablet widths without crowding
     the phone-sized WordPress mobile navigation overlay. */
  .ftt-native-header .ftt-native-header-social.wp-block-social-links {
    display:flex;
    gap:5px;
  }
  .ftt-native-header .ftt-native-header-social .wp-social-link {
    width:32px;
    height:32px;
    min-width:32px;
  }
}
@media(max-width:560px) {
  /* WordPress mobile navigation stays accessible; social links are still
     present in the footer while horizontal space is constrained. */
  .ftt-native-header .ftt-native-header-social.wp-block-social-links {display:none}
}
@media(prefers-reduced-motion:reduce) {
  .ftt-native-header .ftt-native-header-social .wp-social-link:hover {transform:none}
}

/* v0.1.7 — Restore original compact navigation + clean-reference dropdown.
 * Core Navigation markup differs from the old .bs-nav-link/.bs-submenu markup:
 * inherited WordPress global styles inflate fonts and render a square, plain
 * large list. Adapt its CORE blocks; never replace database-saved menu entries.
 * Original reference: assets/css/clean-reference.css (.bs-clean-header).
 */
.ftt-native-header .ftt-native-nav.wp-block-navigation {
  display:flex;
  align-items:center;
  justify-content:center;
  font-family:Inter,system-ui,-apple-system,'Segoe UI',sans-serif!important;
  font-size:14px!important;
  font-weight:600;
  line-height:1.4;
  color:#333933;
}
.ftt-native-header .ftt-native-nav .wp-block-navigation__container {
  align-items:center;
  column-gap:clamp(12px,1.55vw,23px)!important;
  row-gap:0!important;
  flex-wrap:nowrap;
}
.ftt-native-header .ftt-native-nav .wp-block-navigation__container > .wp-block-navigation-item {
  position:relative;
  flex:0 0 auto;
  margin:0;
  padding:0;
  font:inherit;
  line-height:1.4;
}
.ftt-native-header .ftt-native-nav .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content,
.ftt-native-header .ftt-native-nav .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content .wp-block-navigation-item__label {
  display:inline-flex;
  align-items:center;
  gap:5px;
  margin:0;
  padding:12px 0;
  background:transparent;
  border:0;
  border-radius:0;
  font-family:Inter,system-ui,-apple-system,'Segoe UI',sans-serif!important;
  font-size:14px!important;
  font-weight:600!important;
  line-height:1.4!important;
  letter-spacing:0!important;
  text-transform:none!important;
  text-decoration:none!important;
  white-space:nowrap;
  color:#333933!important;
}
.ftt-native-header .ftt-native-nav .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content:hover,
.ftt-native-header .ftt-native-nav .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content:hover .wp-block-navigation-item__label,
.ftt-native-header .ftt-native-nav .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content:focus-visible,
.ftt-native-header .ftt-native-nav .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content[aria-current="page"] {
  color:#5a7826!important;
}
.ftt-native-header .ftt-native-nav .wp-block-navigation__submenu-icon {
  margin:0 0 0 4px;
  padding:0;
  color:#59605a;
  line-height:1;
}
.ftt-native-header .ftt-native-nav .wp-block-navigation__submenu-icon svg {
  width:11px;
  height:11px;
  stroke-width:1.75;
  transition:transform .18s ease;
}
.ftt-native-header .ftt-native-nav .wp-block-navigation-submenu:hover > .wp-block-navigation__submenu-icon svg,
.ftt-native-header .ftt-native-nav .wp-block-navigation-submenu:focus-within > .wp-block-navigation__submenu-icon svg {
  transform:rotate(180deg);
}
@media(min-width:831px) {
  .ftt-native-header .ftt-native-nav .wp-block-navigation__submenu-container {
    box-sizing:border-box;
    z-index:180;
    top:calc(100% - 1px)!important;
    left:-12px!important;
    width:min(320px,calc(100vw - 40px))!important;
    min-width:280px!important;
    height:auto!important;
    max-height:min(75vh,560px);
    overflow-y:auto;
    overflow-x:hidden;
    margin:0!important;
    padding:9px!important;
    border:1px solid #e2e8e4!important;
    border-radius:13px!important;
    background:#fff!important;
    box-shadow:0 18px 42px rgba(15,23,42,.11)!important;
    font-family:Inter,system-ui,-apple-system,'Segoe UI',sans-serif!important;
    font-size:13px!important;
    font-weight:550!important;
    line-height:1.4!important;
  }
  .ftt-native-header .ftt-native-nav .wp-block-navigation__submenu-container > .wp-block-navigation-item {
    box-sizing:border-box;
    display:block;
    width:100%;
    margin:0!important;
    padding:0!important;
    border:0;
    background:transparent;
  }
  .ftt-native-header .ftt-native-nav .wp-block-navigation__submenu-container > .wp-block-navigation-item > .wp-block-navigation-item__content {
    box-sizing:border-box;
    display:flex!important;
    align-items:center;
    width:100%!important;
    min-height:40px;
    margin:0!important;
    padding:9px 12px!important;
    border:0;
    border-radius:8px!important;
    background:transparent!important;
    font-family:Inter,system-ui,-apple-system,'Segoe UI',sans-serif!important;
    font-size:13px!important;
    font-weight:550!important;
    line-height:1.4!important;
    letter-spacing:0!important;
    text-decoration:none!important;
    text-transform:none!important;
    white-space:normal!important;
    color:#334155!important;
    transition:color .16s ease,background-color .16s ease;
  }
  .ftt-native-header .ftt-native-nav .wp-block-navigation__submenu-container > .wp-block-navigation-item > .wp-block-navigation-item__content .wp-block-navigation-item__label {
    font:inherit!important;
    white-space:normal!important;
    color:inherit!important;
  }
  .ftt-native-header .ftt-native-nav .wp-block-navigation__submenu-container > .wp-block-navigation-item > .wp-block-navigation-item__content:hover,
  .ftt-native-header .ftt-native-nav .wp-block-navigation__submenu-container > .wp-block-navigation-item > .wp-block-navigation-item__content:focus-visible {
    color:#3b551d!important;
    background:#f3f8e7!important;
  }
  .ftt-native-header .ftt-native-nav .wp-block-navigation__submenu-container > .wp-block-navigation-item > .wp-block-navigation-item__content[aria-current="page"] {
    color:#24350f!important;
    background:#e7f1c7!important;
    font-weight:700!important;
    box-shadow:inset 3px 0 0 #6f922b;
  }
  .ftt-native-header .ftt-native-nav .wp-block-navigation__submenu-container > .wp-block-navigation-item > .wp-block-navigation-item__content:focus-visible {
    outline:2px solid #6d9030;
    outline-offset:-2px;
  }
}
@media(max-width:1120px) and (min-width:831px) {
  .ftt-native-header .ftt-native-nav .wp-block-navigation__container {
    column-gap:clamp(8px,1vw,13px)!important;
  }
  .ftt-native-header .ftt-native-nav .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content,
  .ftt-native-header .ftt-native-nav .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content .wp-block-navigation-item__label {
    font-size:13px!important;
  }
}
@media(max-width:830px) {
  /* Core Navigation must stay reachable. The old .bs-inline-nav rules would
     otherwise hide the entire WordPress <nav> at this breakpoint. */
  .ftt-native-header .ftt-native-nav.wp-block-navigation {
    display:flex!important;
    position:relative!important;
    inset:auto!important;
    flex:0 0 auto!important;
    width:auto!important;
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
    margin:0 0 0 auto!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  .ftt-native-header .ftt-native-nav .wp-block-navigation__responsive-container-open:not(.always-shown) {
    display:flex!important;
    align-items:center;
    justify-content:center;
    width:42px;
    height:42px;
    padding:9px;
    border:1px solid #e2e8e4;
    border-radius:10px;
    background:#f5f7f0;
  }
  .ftt-native-header .ftt-native-nav .wp-block-navigation__responsive-container:not(.is-menu-open) {
    display:none!important;
  }
  .ftt-native-header .ftt-native-nav .wp-block-navigation__responsive-container.is-menu-open {
    display:flex!important;
  }
  .ftt-native-header .ftt-native-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
    flex-direction:column;
    align-items:stretch;
    flex-wrap:nowrap;
    row-gap:0!important;
    width:100%;
  }
  .ftt-native-header .ftt-native-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
    font-size:14px!important;
    font-weight:600!important;
  }
  .ftt-native-header .ftt-native-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container {
    box-sizing:border-box;
    width:100%!important;
    min-width:0!important;
    margin:7px 0!important;
    padding:7px!important;
    border:0!important;
    border-left:2px solid #a7d2b9!important;
    border-radius:0 8px 8px 0!important;
    background:#f8fbf8!important;
    box-shadow:none!important;
  }
  .ftt-native-header .ftt-native-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
    box-sizing:border-box;
    display:flex;
    width:100%;
    padding:9px 12px!important;
    font-size:13px!important;
    font-weight:550!important;
    color:#334155!important;
    border-radius:8px!important;
  }
}
@media(prefers-reduced-motion:reduce) {
  .ftt-native-header .ftt-native-nav .wp-block-navigation__submenu-icon svg,
  .ftt-native-header .ftt-native-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
    transition:none!important;
  }
}
