/*
Theme Name: Boon Flexible Astra Child
Description: Reusable Astra child theme with configurable custom header.
Author: Boon Education
Template: astra
Version: 1.2.0
Text Domain: boon-astra-child
*/
:root{--boon-header-bg:#28132d;--boon-header-text:#fff;--boon-header-accent:#d91bb7;--boon-header-inner-width:1200px}
body #masthead{display:none}
.boon-header{position:sticky;top:0;z-index:9999;width:100%;background:var(--boon-header-bg);color:var(--boon-header-text);box-shadow:0 4px 18px rgba(0,0,0,.14)}
body.admin-bar .boon-header{top:32px}
.boon-header__inner{max-width:var(--boon-header-inner-width);min-height:82px;margin:auto;padding:12px 22px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.boon-header__brand{display:inline-flex;align-items:center;color:inherit;text-decoration:none;font-weight:800;font-size:25px;line-height:1.1;max-width:280px}
.boon-header__brand img{display:block;width:auto;max-width:220px;max-height:58px}
.boon-header__right{display:flex;align-items:center;justify-content:flex-end;gap:22px;min-width:0}
.boon-header__nav ul{list-style:none;margin:0;padding:0}
.boon-header__nav .boon-menu{display:flex;align-items:center;gap:4px}
.boon-header__nav li{position:relative}
.boon-header__nav a{display:flex;align-items:center;gap:7px;color:var(--boon-header-text);text-decoration:none;padding:13px 11px;border-radius:7px;font-size:14px;line-height:1.35}
.boon-header__nav a:hover,.boon-header__nav a:focus-visible{background:rgba(255,255,255,.13);color:var(--boon-header-text)}
.boon-header__nav .menu-item-has-children>a::after{content:"";width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);flex:0 0 7px}
.boon-header__nav .sub-menu{position:absolute;top:100%;left:0;min-width:220px;background:#fff;padding:8px;border-radius:8px;box-shadow:0 12px 28px rgba(0,0,0,.18);opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .18s ease,transform .18s ease,visibility .18s ease;z-index:10000}
.boon-header__nav li:hover>.sub-menu,.boon-header__nav li:focus-within>.sub-menu,.boon-header__nav li.mobile-submenu-open>.sub-menu{opacity:1;visibility:visible;transform:translateY(0)}
.boon-header__nav .sub-menu a{color:#26202a;padding:10px 12px;white-space:normal}
.boon-header__nav .sub-menu a:hover,.boon-header__nav .sub-menu a:focus-visible{background:#f3edf4;color:#28132d}
.boon-header__cta{display:inline-flex;align-items:center;justify-content:center;background:var(--boon-header-accent);color:#fff!important;text-decoration:none!important;font-size:14px;font-weight:700;padding:13px 20px;border:1px solid rgba(255,255,255,.25);border-radius:10px;white-space:nowrap}
.boon-header__cta:hover,.boon-header__cta:focus-visible{filter:brightness(1.08)}
.boon-header__toggle{display:none;color:var(--boon-header-text);background:transparent;border:1px solid rgba(255,255,255,.35);border-radius:7px;padding:9px 11px;cursor:pointer}
.boon-header__toggle-icon,.boon-header__toggle-icon:before,.boon-header__toggle-icon:after{display:block;width:22px;height:2px;background:currentColor;position:relative}
.boon-header__toggle-icon:before,.boon-header__toggle-icon:after{content:"";position:absolute;left:0}
.boon-header__toggle-icon:before{top:-7px}.boon-header__toggle-icon:after{top:7px}
.boon-header__screen-reader{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1024px){.boon-header__inner{gap:12px;padding-left:16px;padding-right:16px}.boon-header__right{gap:10px}.boon-header__nav a{padding:12px 8px;font-size:13px}.boon-header__cta{padding:12px 14px}}
@media(max-width:767px){body.admin-bar .boon-header{top:46px}.boon-header__inner{min-height:70px;gap:10px}.boon-header__brand{font-size:21px;max-width:calc(100% - 120px)}.boon-header__brand img{max-width:170px;max-height:48px}.boon-header__right{gap:9px}.boon-header__toggle{display:inline-flex;align-items:center;justify-content:center;min-width:42px;min-height:42px}.boon-header__nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--boon-header-bg);padding:10px 16px 16px;box-shadow:0 12px 18px rgba(0,0,0,.15);max-height:calc(100vh - 100px);overflow-y:auto}.boon-header__nav.is-open{display:block}.boon-header__nav .boon-menu{display:block}.boon-header__nav a{width:100%;justify-content:space-between;padding:13px 12px}.boon-header__nav .sub-menu{display:none;position:static;min-width:0;opacity:1;visibility:visible;transform:none;box-shadow:none;margin:0 0 8px 12px;padding:4px;background:#fff}.boon-header__nav li.mobile-submenu-open>.sub-menu{display:block}.boon-header__nav .sub-menu a{color:#26202a}.boon-header__cta{padding:11px 12px;font-size:13px}}
@media(max-width:420px){.boon-header__inner{padding:10px 12px}.boon-header__brand img{max-width:135px}.boon-header__cta{padding:10px;font-size:12px}}

/* Customizable typography and colors from Appearance > Customize > Boon Header Settings */
.boon-header__brand,
.boon-header__brand .boon-header__site-name {
    font-family: var(--boon-title-font, inherit) !important;
    font-size: var(--boon-title-size, 25px) !important;
    font-weight: var(--boon-title-weight, 800) !important;
    color: var(--boon-header-text, #fff) !important;
}
.boon-header__nav a {
    font-family: var(--boon-menu-font, inherit) !important;
    font-size: var(--boon-menu-size, 14px) !important;
    font-weight: var(--boon-menu-weight, 500) !important;
    color: var(--boon-menu-text, #fff) !important;
}
.boon-header__nav a:hover,
.boon-header__nav a:focus-visible {
    background: var(--boon-menu-hover-bg, rgba(255,255,255,.13)) !important;
    color: var(--boon-menu-text, #fff) !important;
}
.boon-header__nav .sub-menu {
    background: var(--boon-submenu-bg, #fff) !important;
}
.boon-header__nav .sub-menu a {
    color: var(--boon-submenu-text, #26202a) !important;
}
.boon-header__nav .sub-menu a:hover,
.boon-header__nav .sub-menu a:focus-visible {
    background: var(--boon-submenu-hover-bg, #f3edf4) !important;
    color: var(--boon-submenu-hover-text, #28132d) !important;
}
.boon-header__cta {
    font-family: var(--boon-button-font, inherit) !important;
    font-size: var(--boon-button-size, 14px) !important;
    font-weight: var(--boon-button-weight, 700) !important;
    color: var(--boon-button-text, #fff) !important;
}
