.bruno-global-header,.bruno-global-header *{box-sizing:border-box}.bruno-global-header{--bg:#07111f;--border:#203448;--heading:#f5f7fa;--text:#c7d2dd;--muted:#92a5b7;--blue:#4c8cff;--blue-light:#76a8ff;--teal:#22d3c5;position:relative;z-index:99999;width:100%;min-height:78px;color:var(--text);font-family:Inter,Arial,sans-serif;background:linear-gradient(90deg,rgba(7,17,31,.99),rgba(8,22,37,.97));border-bottom:1px solid var(--border);box-shadow:0 8px 28px rgba(0,0,0,.19)}.bruno-global-header ul,.bruno-global-header li,.bruno-global-header p{margin:0;padding:0}.bruno-global-header ul{list-style:none}.bruno-global-header a{text-decoration:none}.bruno-global-header button{margin:0;padding:0;font:inherit}.bruno-global-header.bgh-scrolled{background:rgba(5,14,25,.96);backdrop-filter:blur(15px);box-shadow:0 12px 34px rgba(0,0,0,.34)}.bgh-container{width:min(1440px,calc(100% - 48px));min-height:78px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px}.bgh-brand{display:inline-flex;align-items:center;gap:13px;flex-shrink:0;color:var(--heading)!important}.bgh-monogram{width:50px;height:46px;display:inline-flex;align-items:center;justify-content:center;color:var(--blue-light);background:linear-gradient(145deg,rgba(76,140,255,.08),rgba(155,124,255,.04));border:1px solid #35537d;border-radius:10px;font:italic 800 27px/1 "Space Grotesk",Inter,sans-serif;letter-spacing:-4px;transform:skewX(-5deg);box-shadow:inset 0 1px rgba(255,255,255,.04),0 7px 18px rgba(0,0,0,.18)}.bgh-brand-copy{min-width:0;display:flex;flex-direction:column;gap:3px}.bgh-name{color:var(--heading);font:700 18px/1.15 "Space Grotesk",Inter,sans-serif;white-space:nowrap}.bgh-role{color:var(--muted);font-size:11px;line-height:1.25;white-space:nowrap}.bgh-nav-wrap,.bgh-nav,.bgh-menu{display:flex;align-items:center}.bgh-nav-wrap{gap:16px}.bgh-menu{gap:3px}.bgh-menu-item{position:relative}.bgh-menu-link,.bgh-dropdown-toggle{position:relative;min-height:42px;padding:9px 10px;display:inline-flex;align-items:center;justify-content:center;gap:6px;color:var(--text)!important;background:transparent;border:0;border-radius:7px;cursor:pointer;font-size:13px;font-weight:550;line-height:1;white-space:nowrap;transition:.2s}.bgh-menu-link:after,.bgh-dropdown-toggle:after{content:"";position:absolute;left:10px;right:10px;bottom:3px;height:2px;background:linear-gradient(90deg,var(--teal),var(--blue));border-radius:99px;transform:scaleX(0);transition:.2s}.bgh-menu-link:hover,.bgh-menu-link:focus-visible,.bgh-dropdown-toggle:hover,.bgh-dropdown-toggle:focus-visible,.bgh-menu-link.bgh-active,.bgh-dropdown-toggle.bgh-active{color:#fff!important;background:rgba(255,255,255,.04)}.bgh-menu-link:hover:after,.bgh-menu-link:focus-visible:after,.bgh-menu-link.bgh-active:after,.bgh-dropdown-toggle:hover:after,.bgh-dropdown-toggle:focus-visible:after,.bgh-dropdown-toggle.bgh-active:after{transform:scaleX(1)}.bgh-dropdown-arrow{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;transition:.2s}.bgh-dropdown-toggle[aria-expanded=true] .bgh-dropdown-arrow{transform:rotate(180deg)}.bgh-dropdown{position:absolute;top:calc(100% + 9px);right:0;width:270px;padding:9px;visibility:hidden;opacity:0;pointer-events:none;background:linear-gradient(145deg,rgba(12,27,44,.995),rgba(6,16,28,.995));border:1px solid #30495f;border-radius:11px;box-shadow:0 20px 42px rgba(0,0,0,.42);transform:translateY(-7px);transition:.2s}.bgh-menu-item:hover>.bgh-dropdown,.bgh-menu-item:focus-within>.bgh-dropdown,.bgh-dropdown.bgh-dropdown-open{visibility:visible;opacity:1;pointer-events:auto;transform:none}.bgh-dropdown-link{width:100%;min-height:46px;padding:9px 10px;display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:center;color:#c8d4df!important;border-radius:8px;transition:.2s}.bgh-dropdown-link:hover,.bgh-dropdown-link:focus-visible,.bgh-dropdown-link.bgh-active{color:#fff!important;background:rgba(76,140,255,.09)}.bgh-dropdown-icon{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;color:var(--blue-light);background:rgba(76,140,255,.06);border:1px solid #38547e;border-radius:7px;font:700 10px/1 "Space Grotesk",Inter,sans-serif}.bgh-dropdown-title{display:block;font-size:13px;font-weight:650;line-height:1.25}.bgh-dropdown-description{display:block;margin-top:2px;color:#8da0b2;font-size:11px;line-height:1.3}.bgh-resume{min-height:43px;padding:10px 15px;display:inline-flex;align-items:center;justify-content:center;gap:8px;color:#fff!important;background:linear-gradient(135deg,#315dcf,#4f7ce5);border:1px solid #6b91ef;border-radius:8px;font-size:13px;font-weight:700;line-height:1;white-space:nowrap;box-shadow:0 8px 20px rgba(49,93,207,.24);transition:.2s}.bgh-resume:hover,.bgh-resume:focus-visible{color:#fff!important;filter:brightness(1.1);transform:translateY(-2px)}.bgh-resume svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2}.bgh-toggle{display:none;width:44px;height:44px;align-items:center;justify-content:center;color:var(--heading);background:rgba(255,255,255,.03);border:1px solid #31465c;border-radius:8px;cursor:pointer}.bgh-toggle-lines,.bgh-toggle-lines:before,.bgh-toggle-lines:after{display:block;width:20px;height:2px;background:currentColor;border-radius:99px;transition:.25s}.bgh-toggle-lines{position:relative}.bgh-toggle-lines:before,.bgh-toggle-lines:after{content:"";position:absolute;left:0}.bgh-toggle-lines:before{top:-6px}.bgh-toggle-lines:after{top:6px}.bgh-toggle[aria-expanded=true] .bgh-toggle-lines{background:transparent}.bgh-toggle[aria-expanded=true] .bgh-toggle-lines:before{top:0;transform:rotate(45deg)}.bgh-toggle[aria-expanded=true] .bgh-toggle-lines:after{top:0;transform:rotate(-45deg)}
body:has(.bruno-global-header) .et_pb_section:has(.bruno-global-header),body:has(.bruno-global-header) .et_pb_row:has(.bruno-global-header),body:has(.bruno-global-header) .et_pb_column:has(.bruno-global-header),body:has(.bruno-global-header) .et_pb_module:has(.bruno-global-header),body:has(.bruno-global-header) .et_pb_code_inner:has(.bruno-global-header){width:100%!important;max-width:none!important;margin:0!important;padding:0!important;overflow:visible!important;background:#07111f!important}
@media(max-width:1230px){.bgh-container{gap:16px}.bgh-nav-wrap{gap:9px}.bgh-menu-link,.bgh-dropdown-toggle{padding-inline:7px;font-size:12px}.bgh-role{display:none}}@media(max-width:1020px){.bruno-global-header,.bgh-container{min-height:70px}.bgh-container{position:relative}.bgh-toggle{display:inline-flex}.bgh-nav-wrap{position:absolute;top:calc(100% + 1px);left:0;right:0;display:none;align-items:stretch;flex-direction:column;gap:14px;max-height:calc(100vh - 90px);padding:16px;overflow-y:auto;background:rgba(7,17,31,.992);border:1px solid #263b50;border-top:0;border-radius:0 0 12px 12px;box-shadow:0 18px 35px rgba(0,0,0,.38)}.bgh-nav-wrap.bgh-open{display:flex}.bgh-nav,.bgh-menu,.bgh-menu-item{width:100%}.bgh-menu{align-items:stretch;flex-direction:column;gap:4px}.bgh-menu-link,.bgh-dropdown-toggle{width:100%;min-height:46px;padding:11px 13px;justify-content:space-between;font-size:14px}.bgh-menu-link:after,.bgh-dropdown-toggle:after{left:13px;right:auto;width:34px}.bgh-dropdown{position:static;width:100%;margin-top:4px;padding:6px;display:none;visibility:visible;opacity:1;pointer-events:auto;background:rgba(255,255,255,.018);border-color:#263b50;border-radius:9px;box-shadow:none;transform:none}.bgh-menu-item:hover>.bgh-dropdown,.bgh-menu-item:focus-within>.bgh-dropdown{display:none}.bgh-menu-item-dropdown>.bgh-dropdown.bgh-dropdown-open{display:block!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;transform:none!important}.bgh-dropdown-link{min-height:50px}.bgh-resume{width:100%;min-height:48px}}@media(max-width:600px){.bgh-container{width:calc(100% - 28px)}.bgh-brand{gap:9px}.bgh-monogram{width:42px;height:40px;font-size:23px}.bgh-name{font-size:16px}}@media(max-width:370px){.bgh-name{font-size:14px}.bgh-monogram{width:38px;font-size:21px}}

/* Divi isolation: remove injected bullets and the empty strip beneath the Theme Builder header. */
.bruno-global-header ul,.bruno-global-header ol{margin:0!important;padding:0!important;list-style:none!important;list-style-type:none!important}.bruno-global-header li{margin:0!important;padding-top:0!important;padding-bottom:0!important;list-style:none!important;list-style-type:none!important}.bruno-global-header li::marker{content:""!important;font-size:0!important}.bruno-global-header li:before{display:none!important;content:none!important}.bruno-global-header{font-size:16px!important;line-height:normal!important}
body:has(.bruno-global-header) .et_pb_section:has(.bruno-global-header),body:has(.bruno-global-header) .et_pb_row:has(.bruno-global-header),body:has(.bruno-global-header) .et_pb_column:has(.bruno-global-header),body:has(.bruno-global-header) .et_pb_module:has(.bruno-global-header),body:has(.bruno-global-header) .et_pb_code_inner:has(.bruno-global-header),body:has(.bruno-global-header) .et_pb_text_inner:has(.bruno-global-header){width:100%!important;max-width:none!important;min-height:0!important;margin:0!important;padding:0!important;overflow:visible!important;background:#07111f!important;border:0!important;line-height:0!important}
body:has(.bruno-global-header) .et_pb_module:has(.bruno-global-header)>p:empty,body:has(.bruno-global-header) .et_pb_code_inner:has(.bruno-global-header)>p:empty,body:has(.bruno-global-header) .et_pb_text_inner:has(.bruno-global-header)>p:empty{display:none!important;width:0!important;height:0!important;margin:0!important;padding:0!important;line-height:0!important}

/* Remove spacing and background left by the outer Divi Theme Builder shell. */
body:has(.bruno-global-header) .et-l--header,
body:has(.bruno-global-header) .et-l--header .et_builder_inner_content,
body:has(.bruno-global-header) #et-boc .et-l--header{min-height:0!important;margin:0!important;padding:0!important;background:#07111f!important;border:0!important;line-height:0!important}
body:has(.bruno-global-header) .et-l--header + #et-main-area,
body:has(.bruno-global-header) .et-l--header + main{margin-top:0!important;padding-top:0!important}

/* Stable server-generated body class: do not rely on :has() for Divi shells. */
body.bruno-portfolio-site{margin-top:0!important;background:#07111f!important}
body.bruno-portfolio-site #page-container{margin-top:0!important;padding-top:0!important;background:#07111f!important}
body.bruno-portfolio-site .et-l--header,
body.bruno-portfolio-site .et-l--header .et_builder_inner_content,
body.bruno-portfolio-site .et-l--header .et_pb_section,
body.bruno-portfolio-site .et-l--header .et_pb_row,
body.bruno-portfolio-site .et-l--header .et_pb_column,
body.bruno-portfolio-site .et-l--header .et_pb_module,
body.bruno-portfolio-site .et-l--header .et_pb_code_inner,
body.bruno-portfolio-site .et-l--header .et_pb_text_inner{width:100%!important;max-width:none!important;min-height:0!important;margin:0!important;padding:0!important;background:#07111f!important;border:0!important;line-height:0!important}
body.bruno-portfolio-site .et-l--header + #et-main-area,
body.bruno-portfolio-site .et-l--header + .et-l--body,
body.bruno-portfolio-site .et-l--header + main{margin-top:0!important;padding-top:0!important}

/* Divi's Text module runs shortcode output through wpautop(), which can add
   empty paragraphs before and after a full-page shortcode. Divi then gives
   those paragraphs 1em of bottom padding, creating a visible strip. */
body.bruno-portfolio-site .et_pb_text_inner>p:empty,
body.bruno-portfolio-site .et_pb_code_inner>p:empty{display:none!important;width:0!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;line-height:0!important}
