.forma-public-header,.forma-public-footer{--fs-bg:var(--forma-page,#0c0c0d);--fs-panel:var(--forma-panel,#121214);--fs-text:var(--forma-text,#f5f5f2);--fs-muted:var(--forma-muted,#8e8e8b);--fs-border:var(--forma-border,#29292b);--fs-accent:var(--forma-accent,#1E7B8D);font-family:inherit;color:var(--fs-text);box-sizing:border-box}.forma-public-header *,.forma-public-footer *{box-sizing:border-box}.forma-public-header{position:sticky;top:0;z-index:9990;width:100%;background:color-mix(in srgb,var(--fs-bg) 96%,transparent);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid color-mix(in srgb,var(--fs-border) 88%,transparent);box-shadow:0 1px 0 rgba(255,255,255,.015)}body.admin-bar .forma-public-header{top:32px}.forma-public-header__inner{max-width:1600px;min-height:72px;margin:0 auto;padding:0 clamp(22px,2.7vw,46px);display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:clamp(28px,3vw,54px)}.forma-shell-brand{display:inline-flex;align-items:baseline;gap:11px;color:var(--fs-text)!important;text-decoration:none!important;white-space:nowrap;transition:opacity .18s ease}.forma-shell-brand:hover{opacity:.9}.forma-shell-brand-main{font-size:27px;line-height:1;font-weight:780;letter-spacing:.19em}.forma-shell-brand-sub{font-size:8px;line-height:1;letter-spacing:.24em;color:var(--fs-muted);transform:translateY(-1px)}.forma-shell-nav{display:flex;align-items:center;justify-content:center;gap:clamp(16px,1.45vw,28px);min-width:0}.forma-shell-nav__link{position:relative;color:var(--fs-muted)!important;text-decoration:none!important;font-size:13px;font-weight:520;white-space:nowrap;padding:27px 0 25px;transition:color .18s ease,opacity .18s ease}.forma-shell-nav__link:hover,.forma-shell-nav__link.is-active{color:var(--fs-text)!important}.forma-shell-nav__link:after{content:"";position:absolute;left:50%;bottom:0;width:0;height:2px;border-radius:999px;background:var(--fs-accent);transform:translateX(-50%);transition:width .18s ease}.forma-shell-nav__link.is-active:after,.forma-shell-nav__link:hover:after{width:68%}.forma-shell-tools{display:flex;align-items:center;gap:10px;white-space:nowrap}.forma-shell-lang{display:flex;align-items:center;gap:6px;padding-inline-end:3px;font-size:11px;letter-spacing:.08em}.forma-shell-lang a{color:var(--fs-muted)!important;text-decoration:none!important;transition:color .18s ease}.forma-shell-lang a:hover,.forma-shell-lang a.is-active{color:var(--fs-text)!important}.forma-shell-lang a.is-active{font-weight:750}.forma-shell-lang span{color:color-mix(in srgb,var(--fs-border) 90%,transparent)}.forma-shell-theme{appearance:none;border:1px solid var(--fs-border);background:color-mix(in srgb,var(--fs-panel) 70%,transparent);color:var(--fs-muted);border-radius:999px;min-height:32px;padding:0 9px;display:inline-flex;align-items:center;gap:6px;cursor:pointer;font:inherit;font-size:10.5px;transition:border-color .18s ease,color .18s ease,background .18s ease}.forma-shell-theme:hover,.forma-shell-theme:focus-visible{border-color:color-mix(in srgb,var(--fs-accent) 65%,var(--fs-border));color:var(--fs-text);background:color-mix(in srgb,var(--fs-panel) 92%,transparent);outline:0}.forma-shell-theme-icon{font-size:14px;line-height:1}.forma-shell-account{display:inline-flex;align-items:center;gap:8px;color:var(--fs-text)!important;text-decoration:none!important;font-size:11.5px}.forma-shell-account--guest{gap:6px;padding-inline-start:4px}.forma-shell-account--guest a{color:var(--fs-muted)!important;text-decoration:none!important;transition:color .18s ease}.forma-shell-account--guest a:hover{color:var(--fs-text)!important}.forma-shell-account--guest span{color:var(--fs-border)}.forma-shell-avatar{width:28px!important;height:28px!important;border-radius:50%!important;object-fit:cover;border:1px solid var(--fs-border)}.forma-shell-menu-toggle{display:none;appearance:none;background:transparent;border:0;padding:8px;color:var(--fs-text);cursor:pointer}.forma-shell-menu-toggle span{display:block;width:23px;height:1px;margin:5px 0;background:currentColor;transition:transform .2s,opacity .2s}.forma-shell-menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg)}.forma-shell-menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}.forma-shell-menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.forma-shell-mobile-panel{border-top:1px solid var(--fs-border);background:var(--fs-bg);padding:12px 20px 25px}.forma-shell-mobile-nav{display:grid}.forma-shell-mobile-nav__link{color:var(--fs-muted)!important;text-decoration:none!important;padding:14px 2px;border-bottom:1px solid color-mix(in srgb,var(--fs-border) 75%,transparent);font-size:15px}.forma-shell-mobile-nav__link.is-active{color:var(--fs-text)!important;border-inline-start:2px solid var(--fs-accent);padding-inline-start:10px}.forma-shell-mobile-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:18px;flex-wrap:wrap}.has-forma-public-header .forma-theme-toggle-dock{display:none!important}
.forma-public-footer{width:100%;margin-top:80px;background:var(--fs-panel);border-top:1px solid var(--fs-border)}.forma-public-footer__inner{max-width:1600px;margin:0 auto;padding:64px clamp(24px,3vw,48px) 52px;display:grid;grid-template-columns:1.45fr 1fr .7fr;gap:clamp(48px,6vw,90px)}.forma-public-footer__brand .forma-shell-brand-main{font-size:29px}.forma-public-footer__brand p{max-width:390px;margin:20px 0 0;color:var(--fs-muted);font-size:13px;line-height:1.95}.forma-public-footer__nav strong,.forma-public-footer__meta strong{display:block;margin-bottom:18px;font-size:10.5px;letter-spacing:.11em;text-transform:uppercase;color:var(--fs-muted)}.forma-public-footer__nav div,.forma-public-footer__meta div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 28px}.forma-public-footer__nav a,.forma-public-footer__meta a{color:var(--fs-text)!important;text-decoration:none!important;font-size:13px;transition:color .18s ease}.forma-public-footer__nav a:hover,.forma-public-footer__meta a:hover{color:var(--fs-accent)!important}.forma-public-footer__bottom{max-width:1600px;margin:0 auto;padding:19px clamp(24px,3vw,48px) 24px;border-top:1px solid var(--fs-border);display:flex;align-items:center;justify-content:space-between;color:var(--fs-muted);font-size:10px;letter-spacing:.08em}
html[data-forma-theme="light"] .forma-public-header,html[data-forma-theme="light"] .forma-public-footer{--fs-bg:var(--forma-page,#f5f5f2);--fs-panel:var(--forma-panel,#fff);--fs-text:var(--forma-text,#111);--fs-muted:var(--forma-muted,#777);--fs-border:var(--forma-border,#ddd);--fs-accent:var(--forma-accent,#1E7B8D)}
@media(max-width:1240px){.forma-public-header__inner{gap:24px;padding-inline:22px}.forma-shell-nav{gap:14px}.forma-shell-nav__link{font-size:12px}.forma-shell-theme-label,.forma-shell-account--user span{display:none}.forma-shell-brand-main{font-size:24px}}
@media(max-width:980px){.forma-public-header__inner{min-height:66px;padding:0 18px;grid-template-columns:auto 1fr auto}.forma-shell-nav,.forma-shell-tools{display:none}.forma-shell-menu-toggle{display:block;grid-column:3}.forma-shell-brand{grid-column:1}.forma-shell-brand-main{font-size:22px}.forma-shell-brand-sub{font-size:7px}body.admin-bar .forma-public-header{top:46px}.forma-public-footer__inner{grid-template-columns:1fr 1fr;padding:46px 20px}.forma-public-footer__brand{grid-column:1/-1}.forma-public-footer__bottom{padding-inline:20px}}
@media(max-width:600px){.forma-public-footer{margin-top:54px}.forma-public-footer__inner{grid-template-columns:1fr;gap:36px;padding:40px 18px}.forma-public-footer__brand{grid-column:auto}.forma-public-footer__nav div{grid-template-columns:1fr 1fr}.forma-public-footer__bottom{padding:16px 18px 20px;gap:14px;flex-wrap:wrap}.forma-shell-mobile-tools .forma-shell-account--user span{display:inline}.forma-shell-mobile-tools .forma-shell-theme-label{display:inline}}
@media(max-width:782px){body.admin-bar .forma-public-header{top:46px}}

/* v1.60.4 — public-shell account restore + Elementor full-bleed hardening */
.forma-public-header,
.forma-public-footer{
  max-width:none!important;
  width:100vw!important;
  margin-left:calc(50% - 50vw)!important;
  margin-right:calc(50% - 50vw)!important;
}
.forma-public-header{isolation:isolate}
.forma-public-header::before{
  content:"";
  position:absolute;
  z-index:-1;
  top:-8px;
  bottom:-8px;
  left:0;
  right:0;
  background:var(--fs-bg);
  pointer-events:none;
}
.forma-public-header .ecm-user-header{
  --euh-bg:var(--fs-panel);
  --euh-bg2:color-mix(in srgb,var(--fs-panel) 86%,var(--fs-bg));
  --euh-text:var(--fs-text);
  --euh-muted:var(--fs-muted);
  --euh-border:var(--fs-border);
  --euh-accent:var(--fs-accent);
  z-index:10020!important;
}
.forma-public-header .ecm-user-header__panel{z-index:10030!important}
.forma-public-header .ecm-user-header__account-toggle,
.forma-public-header .ecm-user-header__icon-button{color:var(--fs-text)!important}
.forma-public-header .ecm-user-header__badge{border-color:var(--fs-bg)!important}
.forma-public-header[dir="ltr"] .ecm-user-header__panel{text-align:left!important}
.forma-public-header[dir="ltr"] .ecm-user-header__panel{left:auto!important;right:0!important}
.forma-public-header[dir="ltr"] .ecm-user-header__notification{grid-template-columns:8px minmax(0,1fr)!important}
.forma-shell-mobile-tools .ecm-user-header{width:100%!important;justify-content:flex-start!important}
@media(max-width:980px){
  .forma-public-header::before{top:-6px;bottom:-6px}
  .forma-shell-mobile-tools .ecm-user-header__panel{z-index:10040!important}
}



/* v1.60.8 — official Forma logo sizing hardening */
.forma-public-header,.forma-public-footer{
  --fs-accent:var(--forma-accent,#1E7B8D);
  --fs-accent-hover:var(--forma-accent-hover,#155E6C);
}
.forma-shell-brand--image{align-items:center;line-height:0;flex:0 0 auto}
.forma-shell-brand-logo{display:block!important;width:auto!important;height:32px!important;max-width:150px!important;object-fit:contain!important;object-position:center!important}
.forma-public-footer .forma-shell-brand-logo{height:44px!important;max-width:180px!important}
.forma-shell-nav__link:after{background:var(--fs-accent)!important}
.forma-shell-theme:hover,.forma-shell-theme:focus-visible{border-color:var(--fs-accent)!important}
.forma-public-footer__nav a:hover,.forma-public-footer__meta a:hover{color:var(--fs-accent)!important}

/* Elementor/Royal Elementor must be a placement host only. Remove visual chrome
   from the shortcode widget itself so no white frame/border can surround Forma shell. */
.elementor-widget-shortcode:has(.forma-public-header),
.elementor-widget-shortcode:has(.forma-public-footer),
.elementor-widget-shortcode:has(.forma-public-header) > .elementor-widget-container,
.elementor-widget-shortcode:has(.forma-public-footer) > .elementor-widget-container,
.elementor-shortcode:has(> .forma-public-header),
.elementor-shortcode:has(> .forma-public-footer){
  margin:0!important;
  padding:0!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  background:transparent!important;
  max-width:none!important;
}
.elementor-widget-shortcode:has(.forma-public-header),
.elementor-widget-shortcode:has(.forma-public-footer){width:100%!important;max-width:none!important}
.elementor-shortcode:has(> .forma-public-header),
.elementor-shortcode:has(> .forma-public-footer){font-size:0!important;line-height:0!important}
.elementor-shortcode > .forma-public-header,
.elementor-shortcode > .forma-public-footer{font-size:initial;line-height:normal}

/* JS-added host class is a fallback for builders/browsers where :has() cannot reach
   the actual Royal Elementor wrapper. Only the shortcode/widget wrappers are tagged. */
.forma-shell-host{margin:0!important;padding:0!important;border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;max-width:none!important}
.forma-shell-host.elementor-widget-shortcode{width:100%!important}

@media(max-width:980px){
  .forma-shell-brand-logo{height:28px!important;max-width:132px!important}
  .forma-public-footer .forma-shell-brand-logo{height:40px!important;max-width:165px!important}
}

/* v1.60.9 — hard clamp for the canonical WordPress custom logo.
   Target both ECM's brand class and WordPress' own custom-logo class so intrinsic
   attachment dimensions can never expand the public header/footer. */
.forma-public-header .forma-shell-brand.forma-shell-brand--image{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 40px!important;
  width:40px!important;
  min-width:40px!important;
  max-width:40px!important;
  height:40px!important;
  max-height:40px!important;
  padding:0!important;
  margin:0!important;
  overflow:hidden!important;
  line-height:0!important;
}
.forma-public-header .forma-shell-brand--image > img,
.forma-public-header .forma-shell-brand--image img.forma-shell-brand-logo,
.forma-public-header .forma-shell-brand--image img.custom-logo,
.forma-public-header img.forma-shell-brand-logo,
.forma-public-header img.custom-logo{
  display:block!important;
  box-sizing:border-box!important;
  width:32px!important;
  height:32px!important;
  min-width:0!important;
  min-height:0!important;
  max-width:32px!important;
  max-height:32px!important;
  margin:0!important;
  padding:0!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:none!important;
}
.forma-public-footer .forma-shell-brand.forma-shell-brand--image{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  width:52px!important;
  min-width:52px!important;
  max-width:52px!important;
  height:52px!important;
  max-height:52px!important;
  padding:0!important;
  margin:0!important;
  overflow:hidden!important;
  line-height:0!important;
}
.forma-public-footer .forma-shell-brand--image > img,
.forma-public-footer .forma-shell-brand--image img.forma-shell-brand-logo,
.forma-public-footer .forma-shell-brand--image img.custom-logo,
.forma-public-footer img.forma-shell-brand-logo,
.forma-public-footer img.custom-logo{
  display:block!important;
  box-sizing:border-box!important;
  width:44px!important;
  height:44px!important;
  min-width:0!important;
  min-height:0!important;
  max-width:44px!important;
  max-height:44px!important;
  margin:0!important;
  padding:0!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:none!important;
}
@media(max-width:980px){
  .forma-public-header .forma-shell-brand.forma-shell-brand--image{
    flex-basis:36px!important;width:36px!important;min-width:36px!important;max-width:36px!important;height:36px!important;max-height:36px!important;
  }
  .forma-public-header .forma-shell-brand--image > img,
  .forma-public-header .forma-shell-brand--image img.forma-shell-brand-logo,
  .forma-public-header .forma-shell-brand--image img.custom-logo,
  .forma-public-header img.forma-shell-brand-logo,
  .forma-public-header img.custom-logo{
    width:28px!important;height:28px!important;max-width:28px!important;max-height:28px!important;
  }
  .forma-public-footer .forma-shell-brand.forma-shell-brand--image{
    width:48px!important;min-width:48px!important;max-width:48px!important;height:48px!important;max-height:48px!important;
  }
  .forma-public-footer .forma-shell-brand--image > img,
  .forma-public-footer .forma-shell-brand--image img.forma-shell-brand-logo,
  .forma-public-footer .forma-shell-brand--image img.custom-logo,
  .forma-public-footer img.forma-shell-brand-logo,
  .forma-public-footer img.custom-logo{
    width:40px!important;height:40px!important;max-width:40px!important;max-height:40px!important;
  }
}
