/* Premium public hero proportions — About page is the visual baseline. */

/* Shared desktop balance */
.gos-home-hero-grid,
.gos-about-v2-hero-grid,
.gos-product-hero-grid,
.gos-eco-hero-grid{
  grid-template-columns:minmax(0,.98fr) minmax(0,1.02fr)!important;
  gap:56px!important;
  align-items:center!important;
}

.gos-home-hero,
.gos-about-v2-hero,
.gos-product-hero,
.gos-eco-hero{
  min-height:660px!important;
}

.gos-home-copy,
.gos-about-v2-copy,
.gos-product-hero-grid>div:first-child,
.gos-eco-hero-grid>div:first-child{
  max-width:620px!important;
}

.gos-home-copy h1,
.gos-about-v2-copy h1,
.gos-product-hero h1,
.gos-eco-hero h1{
  max-width:620px!important;
}

/* Visual side: large enough to carry equal weight with the copy. */
.gos-about-service-showcase,
.gos-reception-visual,
.gos-product-hero .gos-pricing-overview,
.gos-eco-visual{
  width:100%!important;
  max-width:620px!important;
  justify-self:end!important;
}

/* Home is the flagship page: give the approved hero visual extra presence. */
.gos-home-hero-grid{
  grid-template-columns:minmax(0,.90fr) minmax(0,1.10fr)!important;
  gap:44px!important;
}
.gos-home-hero{
  min-height:700px!important;
}
.gos-mockup-hero-visual{
  width:112%!important;
  max-width:none!important;
  justify-self:end!important;
  margin-right:-6%!important;
}
.gos-mockup-hero-visual picture,
.gos-mockup-hero-visual img{
  display:block!important;
  width:100%!important;
}
.gos-mockup-hero-visual img{
  max-height:610px!important;
  object-fit:contain!important;
}

/* Services / managed-service heroes should feel like one family. */
.gos-eco-hero-grid{min-height:560px!important;}
.gos-eco-visual{min-height:390px!important;}

/* Keep text and graphics balanced rather than letting either side dominate. */
.gos-product-hero-grid>*,
.gos-eco-hero-grid>*,
.gos-about-v2-hero-grid>*,
.gos-home-hero-grid>*{min-width:0!important;}

@media(max-width:1080px){
  .gos-home-hero-grid,
  .gos-about-v2-hero-grid,
  .gos-product-hero-grid,
  .gos-eco-hero-grid{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:34px!important;
  }
  .gos-mockup-hero-visual{width:105%!important;margin-right:-2%!important;}
}

@media(max-width:900px){
  .gos-home-hero-grid,
  .gos-about-v2-hero-grid,
  .gos-product-hero-grid,
  .gos-eco-hero-grid{
    grid-template-columns:1fr!important;
    gap:34px!important;
  }
  .gos-home-hero,
  .gos-about-v2-hero,
  .gos-product-hero,
  .gos-eco-hero{min-height:auto!important;}
  .gos-home-copy,
  .gos-about-v2-copy,
  .gos-product-hero-grid>div:first-child,
  .gos-eco-hero-grid>div:first-child{max-width:720px!important;}
  .gos-about-service-showcase,
  .gos-reception-visual,
  .gos-product-hero .gos-pricing-overview,
  .gos-eco-visual,
  .gos-mockup-hero-visual{
    width:100%!important;
    max-width:720px!important;
    margin:0 auto!important;
    justify-self:center!important;
  }
  .gos-mockup-hero-visual img{max-height:none!important;}
}

@media(max-width:640px){
  .gos-home-hero-grid,
  .gos-about-v2-hero-grid,
  .gos-product-hero-grid,
  .gos-eco-hero-grid{gap:26px!important;}
  .gos-home-hero,
  .gos-about-v2-hero,
  .gos-product-hero,
  .gos-eco-hero{padding-top:48px!important;padding-bottom:48px!important;}
}

/* Cross-page button alignment and consistent single-line actions. */
.btn,.gos-plan-cta{display:inline-flex;align-items:center;justify-content:center;gap:.45em;line-height:1.2;white-space:nowrap}
.hero-actions{display:flex;flex-wrap:wrap;align-items:stretch}.hero-actions .btn{min-height:48px}
.gos-price-grid article{display:flex;flex-direction:column}.gos-price-grid article ul{flex:1}.gos-pricing-grid .gos-plan-cta{margin-top:auto}
.gos-price-cta{display:flex;justify-content:center;align-items:center}.gos-price-cta .btn{min-height:46px}
.gos-final-cta-box>.btn,.gos-final-cta-box>a.btn{align-self:center;min-height:48px;margin:0}
@media(max-width:640px){.hero-actions{display:grid;grid-template-columns:1fr}.hero-actions .btn,.gos-price-cta .btn,.gos-final-cta-box>.btn,.gos-final-cta-box>a.btn{width:100%}}
