.fos-bg-primary{background-color: var(--fos-color-primary,   #FF6B35);}
.fos-bg-secondary{background-color: var(--fos-color-secondary, #004E89);}
.fos-bg-accent{background-color: var(--fos-color-accent,    #FFD23F);}
.fos-bg-dark{background-color: var(--fos-color-dark,      #1A1A1D);}
.fos-bg-light{background-color: var(--fos-color-light,     #FFFFFF);}
.fos-bg-surface{background-color: var(--fos-color-surface,   #F8F9FA);}
.fos-bg-muted{background-color: var(--fos-color-muted,     #6C757D);}
.fos-text-primary{color: var(--fos-color-primary,   #FF6B35);}
.fos-text-secondary{color: var(--fos-color-secondary, #004E89);}
.fos-text-dark{color: var(--fos-color-dark,      #1A1A1D);}
.fos-text-light{color: var(--fos-color-light,     #FFFFFF);}
.fos-text-muted{color: var(--fos-color-muted,     #6C757D);}
.fos-radius-none{border-radius: 0;}
.fos-radius-sm{border-radius: var(--fos-radius-sm,   0.25rem);}
.fos-radius-md{border-radius: var(--fos-radius-md,   0.375rem);}
.fos-radius-lg{border-radius: var(--fos-radius-lg,   0.5rem);}
.fos-radius-xl{border-radius: var(--fos-radius-xl,   0.75rem);}
.fos-radius-full{border-radius: var(--fos-radius-full, 9999px);}
.fos-shadow-none{box-shadow: none;}
.fos-shadow-sm{box-shadow: var(--fos-shadow-sm, 0 1px 2px rgba(0,0,0,0.05));}
.fos-shadow-md{box-shadow: var(--fos-shadow-md, 0 4px 6px -1px rgba(0,0,0,0.1));}
.fos-shadow-lg{box-shadow: var(--fos-shadow-lg, 0 10px 15px -3px rgba(0,0,0,0.1));}
.fos-shadow-xl{box-shadow: var(--fos-shadow-xl, 0 20px 25px -5px rgba(0,0,0,0.1));}
.fos-pad-xs{padding-top: var(--fos-spacing-xs,  0.25rem);padding-bottom: var(--fos-spacing-xs,  0.25rem);}
.fos-pad-sm{padding-top: var(--fos-spacing-sm,  0.5rem);padding-bottom: var(--fos-spacing-sm,  0.5rem);}
.fos-pad-md{padding-top: var(--fos-spacing-md,  1rem);padding-bottom: var(--fos-spacing-md,  1rem);}
.fos-pad-lg{padding-top: var(--fos-spacing-lg,  1.5rem);padding-bottom: var(--fos-spacing-lg,  1.5rem);}
.fos-pad-xl{padding-top: var(--fos-spacing-xl,  2rem);padding-bottom: var(--fos-spacing-xl,  2rem);}
.fos-pad-2xl{padding-top: var(--fos-spacing-2xl, 3rem);padding-bottom: var(--fos-spacing-2xl, 3rem);}
.fos-pad-3xl{padding-top: var(--fos-spacing-3xl, 4rem);padding-bottom: var(--fos-spacing-3xl, 4rem);}
.fos-pad-4xl{padding-top: var(--fos-spacing-4xl, 6rem);padding-bottom: var(--fos-spacing-4xl, 6rem);}
.fos-text-left{text-align: left;}
.fos-text-center{text-align: center;}
.fos-text-right{text-align: right;}
.fos-container{
width: 100%;
max-width: 1200px;
margin-left: auto;
margin-right: auto;
padding-left:  var(--fos-spacing-lg, 1.5rem);
padding-right: var(--fos-spacing-lg, 1.5rem);
box-sizing: border-box;
}
.fos-btn{
display: inline-flex;
align-items: center;
justify-content: center;
gap: var(--fos-spacing-xs, 0.25rem);
font-family: var(--fos-font-body, sans-serif);
font-weight: var(--fos-font-semibold, 600);
text-decoration: none;
border: 2px solid transparent;
cursor: pointer;
border-radius: var(--fos-radius-md, 0.375rem);
line-height: 1;
box-sizing: border-box;
}
.fos-btn--sm{padding: var(--fos-spacing-xs, 0.25rem) var(--fos-spacing-sm, 0.5rem);font-size: var(--fos-text-sm, 0.875rem);}
.fos-btn--md{padding: var(--fos-spacing-sm, 0.5rem)  var(--fos-spacing-md, 1rem);font-size: var(--fos-text-base, 1rem);}
.fos-btn--lg{padding: var(--fos-spacing-md, 1rem)    var(--fos-spacing-xl, 2rem);font-size: var(--fos-text-lg, 1.125rem);}
.fos-btn--primary{background: var(--fos-color-primary,   #FF6B35);color: #fff;}
.fos-btn--secondary{background: var(--fos-color-secondary, #004E89);color: #fff;}
.fos-btn--outline{background: transparent;border-color: currentColor;}
.fos-glass{
background: rgba(255, 255, 255, 0.1);
backdrop-filter: blur(10px);
-webkit-backdrop-filter: blur(10px);
border: 1px solid rgba(255, 255, 255, 0.2);
}
.fos-grid{display: grid;}
.fos-grid--2col{grid-template-columns: repeat(2, 1fr);gap: var(--fos-spacing-lg, 1.5rem);}
.fos-grid--3col{grid-template-columns: repeat(3, 1fr);gap: var(--fos-spacing-lg, 1.5rem);}
.fos-grid--4col{grid-template-columns: repeat(4, 1fr);gap: var(--fos-spacing-lg, 1.5rem);}
@media (max-width: 1024px){
.fos-grid--4col,.fos-grid--3col{grid-template-columns: repeat(2,1fr);}
}
@media (max-width: 640px){
.fos-grid--2col,.fos-grid--3col,.fos-grid--4col{grid-template-columns: 1fr;}
}
.fos-sr-only{
position: absolute;width: 1px;height: 1px;
padding: 0;margin: -1px;overflow: hidden;
clip: rect(0,0,0,0);white-space: nowrap;border: 0;
}
@layer forgeospress{
.fos-header{
display:   block;
width:     100%;
position:  relative;
z-index:   100;
}
.fos-header--border{border-bottom: 1px solid var(--fos-color-border);}
.fos-header--sticky{position: sticky;top: 0;z-index: 1000;}
.fos-header--scrolled{box-shadow: var(--fos-shadow-md);}
.fos-header--bg-surface{background-color: var(--fos-color-surface);}
.fos-header--bg-background{background-color: var(--fos-color-light);}
.fos-header--bg-primary{background-color: var(--fos-color-primary);}
.fos-header--bg-dark{background-color: var(--fos-color-dark);}
.fos-header__inner{
display:         flex;
align-items:     center;
justify-content: space-between;
padding:         var(--fos-spacing-md) var(--fos-spacing-xl);
margin:          0 auto;
gap:             var(--fos-spacing-xl);
width:           100%;
box-sizing:      border-box;
}
.fos-header__logo{
display:         flex;
align-items:     center;
text-decoration: none;
flex-shrink:     0;
}
.fos-header__logo:focus-visible{
outline: 2px solid var(--fos-color-primary);
outline-offset: 3px;
border-radius: var(--fos-radius-sm);
}
.fos-header__logo-img{
display:    block;
height:     auto;
max-height: 52px;
width:      auto;
}
.fos-header__logo-text{
font-family: var(--fos-font-heading);
font-size:   var(--fos-text-lg);
font-weight: var(--fos-font-bold);
line-height: var(--fos-leading-tight);
white-space: nowrap;
}
.fos-header--text-dark    .fos-header__logo-text{color: var(--fos-color-dark);}
.fos-header--text-light   .fos-header__logo-text{color: var(--fos-color-light);}
.fos-header--text-primary .fos-header__logo-text{color: var(--fos-color-primary);}
.fos-header__nav{
flex:        1;
display:     flex;
align-items: center;
min-width:   0;
}
.fos-header__nav-list{
display:    flex;
align-items: center;
flex-wrap:  wrap;
gap:        var(--fos-spacing-lg);
list-style: none;
margin:     0;
padding:    0;
}
.fos-nav-item{
margin:   0;
padding:  0;
position: relative;
}
.fos-nav-link{
display:         inline-block;
font-family:     var(--fos-font-body);
font-size:       var(--fos-text-sm);
font-weight:     var(--fos-font-medium);
text-decoration: none;
padding:         var(--fos-spacing-xs) 0;
white-space:     nowrap;
}
.fos-header--text-dark    .fos-nav-link{color: var(--fos-color-dark);}
.fos-header--text-light   .fos-nav-link{color: var(--fos-color-light);}
.fos-header--text-primary .fos-nav-link{color: var(--fos-color-dark);}
.fos-nav-link:hover{color: var(--fos-color-primary);}
.fos-nav-link:focus-visible{
outline:        2px solid var(--fos-color-primary);
outline-offset: 3px;
border-radius:  var(--fos-radius-sm);
}
.fos-nav-item--current > .fos-nav-link{color: var(--fos-color-primary);font-weight: var(--fos-font-semibold);}
.fos-nav-item--active-parent > .fos-nav-link{color: var(--fos-color-primary);}
.fos-nav-item--has-children > .fos-nav-link::after{
content:      ' ▾';
font-size:    0.65em;
opacity:      0.65;
margin-left:  2px;
vertical-align: middle;
}
.fos-header__submenu{
display:          none;
position:         absolute;
top:              100%;
left:             0;
min-width:        200px;
background-color: var(--fos-color-surface);
border:           1px solid var(--fos-color-border);
border-radius:    var(--fos-radius-md);
box-shadow:       var(--fos-shadow-lg);
list-style:       none;
margin:           0;
padding:          var(--fos-spacing-xs) 0;
z-index:          200;
}
.fos-nav-item--has-children:focus-within > .fos-header__submenu,
.fos-nav-item--has-children:hover        > .fos-header__submenu{
display: block;
}
.fos-nav-item--has-children[aria-expanded="true"] > .fos-header__submenu,
.fos-nav-item--has-children > [aria-expanded="true"] ~ .fos-header__submenu{
display: block;
}
.fos-header__submenu .fos-nav-item{width: 100%;}
.fos-header__submenu .fos-nav-link{
display:     block;
padding:     var(--fos-spacing-xs) var(--fos-spacing-md);
font-size:   var(--fos-text-sm);
font-weight: var(--fos-font-regular);
white-space: nowrap;
color:       var(--fos-color-dark);
}
.fos-header__submenu .fos-nav-link:hover{
background-color: var(--fos-color-border);
color:            var(--fos-color-primary);
}
.fos-header__submenu .fos-header__submenu{
top:  0;
left: 100%;
}
.fos-header__actions{
display:     flex;
align-items: center;
gap:         var(--fos-spacing-md);
flex-shrink: 0;
}
.fos-header__cta{
display:          inline-block;
padding:          var(--fos-spacing-xs) var(--fos-spacing-lg);
background-color: var(--fos-color-primary);
color:            var(--fos-color-light);
font-family:      var(--fos-font-body);
font-size:        var(--fos-text-sm);
font-weight:      var(--fos-font-semibold);
text-decoration:  none;
border-radius:    var(--fos-radius-md);
white-space:      nowrap;
box-shadow:       var(--fos-shadow-sm);
}
.fos-header__cta:hover{opacity: 0.88;color: var(--fos-color-light);}
.fos-header__cta:focus-visible{
outline:        2px solid var(--fos-color-light);
outline-offset: 3px;
}
.fos-header--bg-primary .fos-header__cta{
background-color: transparent;
border:           1px solid var(--fos-color-light);
color:            var(--fos-color-light);
}
.fos-header__mobile-toggle{
display:    none;
background: none;
border:     none;
cursor:     pointer;
padding:    var(--fos-spacing-xs);
line-height: 1;
color:      inherit;
}
.fos-header__mobile-toggle:focus-visible{
outline:        2px solid var(--fos-color-primary);
outline-offset: 3px;
border-radius:  var(--fos-radius-sm);
}
.fos-header__hamburger{
display:        flex;
flex-direction: column;
gap:            5px;
width:          22px;
}
.fos-header__hamburger span{
display:       block;
height:        2px;
border-radius: var(--fos-radius-sm);
background:    currentColor;
}
.fos-header__mobile-nav{
display:    none;
padding:    var(--fos-spacing-md) var(--fos-spacing-xl);
border-top: 1px solid var(--fos-color-border);
}
.fos-header__mobile-nav--open{display: block;}
.fos-header--bg-surface    .fos-header__mobile-nav{background-color: var(--fos-color-surface);}
.fos-header--bg-background .fos-header__mobile-nav{background-color: var(--fos-color-light);}
.fos-header--bg-primary    .fos-header__mobile-nav{background-color: var(--fos-color-primary);}
.fos-header--bg-dark       .fos-header__mobile-nav{background-color: var(--fos-color-dark);}
.fos-header__mobile-list{
display:        flex;
flex-direction: column;
list-style:     none;
margin:         0;
padding:        0;
}
.fos-header__mobile-list .fos-nav-item{width: 100%;}
.fos-header__mobile-list .fos-nav-link{
display:       block;
padding:       var(--fos-spacing-sm) 0;
font-size:     var(--fos-text-base);
font-weight:   var(--fos-font-medium);
text-decoration: none;
border-bottom: 1px solid var(--fos-color-border);
}
.fos-header__mobile-list .fos-header__submenu{
position:         static;
display:          block;
box-shadow:       none;
border:           none;
border-radius:    0;
background-color: transparent;
padding:          0 0 0 var(--fos-spacing-lg);
}
.fos-header--text-dark    .fos-header__mobile-list .fos-nav-link{color: var(--fos-color-dark);}
.fos-header--text-light   .fos-header__mobile-list .fos-nav-link{color: var(--fos-color-light);border-bottom-color: var(--fos-color-muted);}
.fos-header__mobile-list .fos-nav-link:hover{color: var(--fos-color-primary);}
@media ( max-width: 768px ){
.fos-header__nav{display: none;}
.fos-header__mobile-toggle{display: flex;align-items: center;}
.fos-header__cta{display: none;}
.fos-header__inner{padding: var(--fos-spacing-sm) var(--fos-spacing-lg);}
}
@media ( min-width: 769px ){
.fos-header__mobile-toggle{display: none !important;}
.fos-header__mobile-nav{display: none !important;}
}
@media print{
.fos-header__mobile-toggle{display: none !important;}
.fos-header__cta{display: none !important;}
.fos-header--sticky{position: static;}
}
}