/* Company-family visual rhythm lock
   Scope: About, Company, Editorial Standards, Methodology, Contact.
   Standard: homepage content spine with legal-like top spacing.
   Do not use this file for global navigation, footer, legal pages, or shell behavior.
*/

body.company-trust-page .hero,
body.company-trust-page .compact-hero,
body.company-trust-page .section,
body.company-trust-page .compact{
  max-width:1180px;
  margin-left:auto;
  margin-right:auto;
  padding-left:clamp(1rem,4vw,4rem);
  padding-right:clamp(1rem,4vw,4rem);
  box-sizing:border-box;
}

body.company-trust-page .hero > .container,
body.company-trust-page .compact-hero > .container,
body.company-trust-page .section > .container,
body.company-trust-page .compact > .container{
  width:100%;
  max-width:none;
  margin-left:0;
  margin-right:0;
  padding-left:0;
  padding-right:0;
  box-sizing:border-box;
}

/* Match the tighter Legal-page top rhythm without touching Legal pages. */
body.company-trust-page .compact-hero,
body.company-trust-page .hero{
  padding-top:clamp(1.35rem,3vw,2.4rem);
  padding-bottom:clamp(1rem,2vw,1.45rem);
  border-bottom:0!important;
}

body.company-trust-page .compact-hero + .section,
body.company-trust-page .hero + .section{
  padding-top:clamp(1rem,2vw,1.35rem);
}

body.company-trust-page .section{
  padding-top:clamp(1.6rem,3vw,2rem);
  padding-bottom:clamp(1.6rem,3vw,2rem);
}

body.company-trust-page .section + .section{
  padding-top:clamp(1.15rem,2.4vw,1.65rem);
}

body.company-trust-page .compact{
  padding-top:clamp(.9rem,1.8vw,1.25rem);
  padding-bottom:clamp(1.4rem,2.8vw,2rem);
}

body.company-trust-page .company-breadcrumb{
  font-size:.9rem;
  color:#bdb39e;
  margin:0 0 12px;
}

body.company-trust-page .company-breadcrumb a{
  color:var(--ciq-gold2);
  text-decoration:none;
}

body.company-trust-page h1,
body.company-trust-page .hero h1,
body.company-trust-page .compact-hero h1{
  max-width:760px;
  font-size:clamp(1.85rem,3.05vw,2.75rem);
  line-height:1.08;
}

body.company-trust-page .lede,
body.company-trust-page .lead{
  max-width:760px;
}

body.company-trust-page .hero .lead,
body.company-trust-page .compact-hero .lede{
  margin-bottom:0;
}

body.company-trust-page .notice,
body.company-trust-page .container.notice{
  max-width:100%;
  box-sizing:border-box;
}

body.company-trust-page .grid,
body.company-trust-page .grid.two,
body.company-trust-page .hero-grid{
  align-items:start;
}

body.company-trust-page .card,
body.company-trust-page .panel,
body.company-trust-page .contact-box,
body.company-trust-page .notice{
  overflow-wrap:anywhere;
}

body.contact-page .section .grid.grid-2{
  align-items:start;
}

@media(max-width:760px){
  body.company-trust-page .hero,
  body.company-trust-page .compact-hero,
  body.company-trust-page .section,
  body.company-trust-page .compact{
    padding-left:1rem;
    padding-right:1rem;
  }

  body.company-trust-page .compact-hero,
  body.company-trust-page .hero{
    padding-top:1.25rem;
    padding-bottom:1rem;
  }

  body.company-trust-page .compact-hero + .section,
  body.company-trust-page .hero + .section{
    padding-top:1rem;
  }
}

/* R3F: Company-family card height and padding micro-polish.
   Keeps grids premium and balanced without changing global shell, nav, footer, or legal pages.
*/
body.company-trust-page .section .grid,
body.company-trust-page .section .grid.two,
body.company-trust-page .section .grid.grid-2,
body.company-trust-page .section .grid.grid-3{
  align-items:stretch;
}

body.company-trust-page .section .grid > .card,
body.company-trust-page .section .grid > .panel,
body.company-trust-page .section .grid > .contact-box,
body.company-trust-page .section .grid.two > .panel,
body.company-trust-page .section .grid.grid-2 > .contact-box,
body.company-trust-page .section .grid.grid-3 > .card{
  height:100%;
  box-sizing:border-box;
}

body.company-trust-page .card,
body.company-trust-page .panel,
body.company-trust-page .contact-box{
  padding:clamp(1.1rem,1.7vw,1.35rem);
  box-sizing:border-box;
}

body.company-trust-page .card h2,
body.company-trust-page .panel h2,
body.company-trust-page .contact-box h2{
  margin-top:0;
  margin-bottom:.75rem;
}

body.company-trust-page .card p:last-child,
body.company-trust-page .panel p:last-child,
body.company-trust-page .contact-box p:last-child{
  margin-bottom:0;
}

body.company-trust-page .section ul,
body.company-trust-page .compact ul{
  padding-left:1.15rem;
  margin:.45rem 0 0;
}

body.company-trust-page .section li + li,
body.company-trust-page .compact li + li{
  margin-top:.34rem;
}

body.company-trust-page .notice,
body.company-trust-page .container.notice{
  padding:clamp(1rem,1.6vw,1.25rem);
  line-height:1.65;
}

body.company-hub-page .hero-grid{
  align-items:stretch;
}

body.company-hub-page .hero-grid > .panel{
  height:100%;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

body.contact-page .section .grid.grid-2{
  align-items:stretch;
}

body.contact-page .section .grid.grid-2 > .contact-box{
  height:100%;
}

body.contact-page .section .grid.grid-2 > .contact-box:not(form){
  display:flex;
  flex-direction:column;
}

body.contact-page .section .grid.grid-2 > .contact-box:not(form) .notice{
  margin-top:auto;
}

body.editorial-standards-page .section .grid.two{
  align-items:stretch;
}

body.editorial-standards-page .section .grid.two > .panel{
  height:100%;
}

/* R3H: Company index hero side panel should size to content, not stretch. */
body.company-hub-page .hero-grid{
  align-items:start;
}

body.company-hub-page .hero-grid > .panel{
  height:auto;
  display:block;
  align-self:start;
}

/* R3I: Company index hero side panel should begin no higher than the main hero heading. */
body.company-hub-page .hero-grid > .panel{
  margin-top:clamp(4.25rem,5.6vw,5.25rem);
}

@media(max-width:960px){
  body.company-hub-page .hero-grid > .panel{
    margin-top:1rem;
  }
}
