/*
 * Pertecnica Homepage Design System 1.7.0
 * Clean executive engineering presentation.
 * Palette: black, white, grey, restrained gold accent.
 */
:root{
  --per-gold:#b38a3a;
  --per-gold-soft:#d1b36e;
  --per-black:#171717;
  --per-graphite:#252525;
  --per-text:#171717;
  --per-muted:#4a4a4a;
  --per-line:#deded9;
  --per-line-strong:#c9c9c3;
  --per-paper:#ffffff;
  --per-soft:#f6f6f3;
  --per-soft-2:#eeeeea;
  --per-container:1280px;
  --per-section-y:68px;
  --per-gap-1:8px;
  --per-gap-2:12px;
  --per-gap-3:16px;
  --per-gap-4:24px;
  --per-gap-5:32px;
  --per-gap-6:44px;
  --per-gap-7:56px;
  --per-radius:2px;

  /* Sitewide homepage typography */
  --per-h1:36px;
  --per-h2:28px;
  --per-h3:21px;
  --per-h4:18px;
  --per-body:16px;
  --per-small:14px;
}

.hcg-homepage-wrapper{
  width:100%;
  margin:0;
  padding:0;
  background:var(--per-paper);
  color:var(--per-text);
  font-family:"Inter","Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,sans-serif;
  font-size:var(--per-body);
  line-height:1.62;
  font-weight:400;
  letter-spacing:0;
  overflow:hidden;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

.hcg-homepage-wrapper *{box-sizing:border-box;}
.hcg-homepage-wrapper img{max-width:100%;height:auto;}
.hcg-homepage-wrapper a{text-decoration:none;}
.hcg-homepage-wrapper p{margin:0;}
.hcg-homepage-wrapper h1,
.hcg-homepage-wrapper h2,
.hcg-homepage-wrapper h3,
.hcg-homepage-wrapper h4{
  margin:0;
  color:var(--per-black);
  font-weight:500;
  letter-spacing:-.015em;
}

/* Consistent type hierarchy. Module-specific oversized rules are normalized below. */
.hcg-homepage-wrapper h1{font-size:var(--per-h1)!important;line-height:1.12!important;}
.hcg-homepage-wrapper h2{font-size:var(--per-h2)!important;line-height:1.2!important;}
.hcg-homepage-wrapper h3{font-size:var(--per-h3)!important;line-height:1.28!important;}
.hcg-homepage-wrapper h4{font-size:var(--per-h4)!important;line-height:1.32!important;}

/* Running text is deliberately black for maximum readability.
   Gold remains an accent for labels/rules/buttons only. */
.hcg-homepage-wrapper p,
.hcg-homepage-wrapper li,
.hcg-homepage-wrapper dd,
.hcg-homepage-wrapper dt,
.hcg-homepage-wrapper .hcg-hero-description,
.hcg-homepage-wrapper .hcg-model-card p,
.hcg-homepage-wrapper .hcg-industry-card-content p,
.hcg-homepage-wrapper .hcg-statistics-card p,
.hcg-homepage-wrapper .hcg-content-block-1-card-item p,
.hcg-homepage-wrapper .hpe-cap-v2-panel-intro p,
.hcg-homepage-wrapper .hpe-ccl-header>p,
.hcg-homepage-wrapper .hpe-ccl-intro{
  color:var(--per-black)!important;
}

/* Keep intentional white text on filled buttons. */
.hcg-homepage-wrapper .hcg-btn-primary,
.hcg-homepage-wrapper .hcg-content-block-1-button,
.hcg-homepage-wrapper .hcg-why-button,
.hcg-homepage-wrapper .hcg-industries-explore-button,
.hcg-homepage-wrapper .hcg-cta-button.primary{
  color:#fff!important;
}

.hcg-homepage-wrapper .hcg-container,
.hcg-homepage-wrapper .hamsa-container{
  width:min(var(--per-container),calc(100% - 48px));
  margin-inline:auto;
}

/* Clean section rhythm */
.hcg-homepage-wrapper > section{
  position:relative;
  padding:var(--per-section-y) 0;
  isolation:isolate;
}
.hcg-homepage-wrapper > section:nth-of-type(even){background:var(--per-soft);}
.hcg-homepage-wrapper > section:nth-of-type(odd){background:var(--per-paper);}

/* Very subtle technical grid; kept visually quiet. */
.hcg-homepage-wrapper > section::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  pointer-events:none;
  opacity:.12;
  background-image:
    linear-gradient(90deg,transparent 0,transparent calc(100% - 1px),rgba(70,70,65,.045) calc(100% - 1px)),
    linear-gradient(0deg,transparent 0,transparent calc(100% - 1px),rgba(70,70,65,.035) calc(100% - 1px));
  background-size:180px 180px;
  mask-image:linear-gradient(to bottom,transparent,black 16%,black 84%,transparent);
}

/* Shared labels */
.hcg-homepage-wrapper [class*="eyebrow"],
.hcg-homepage-wrapper [class*="label"],
.hcg-homepage-wrapper [class*="badge"],
.hcg-homepage-wrapper [class*="kicker"]{
  color:var(--per-gold);
  font-size:10px;
  line-height:1.35;
  font-weight:600;
  letter-spacing:.12em;
  text-transform:uppercase;
}

/* Shared technical rules */
.hcg-homepage-wrapper .hcg-hero-rule,
.hcg-homepage-wrapper .hcg-why-header-rule,
.hcg-homepage-wrapper .hcg-statistics-card-rule,
.hcg-homepage-wrapper .hpe-ccl-proof-line span,
.hcg-homepage-wrapper .hcg-why-footer-line{
  height:1px;
  background:var(--per-line-strong);
}

/* Shared buttons */
.hcg-homepage-wrapper .hcg-btn-primary,
.hcg-homepage-wrapper .hcg-btn-secondary,
.hcg-homepage-wrapper .hcg-content-block-1-button,
.hcg-homepage-wrapper .hcg-why-button,
.hcg-homepage-wrapper .hcg-industries-explore-button,
.hcg-homepage-wrapper .hcg-cta-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  padding:9px 17px;
  border:1px solid var(--per-black);
  border-radius:var(--per-radius);
  font-size:13px;
  line-height:1.2;
  font-weight:500;
  letter-spacing:.01em;
  transition:background-color .2s ease,border-color .2s ease,color .2s ease,transform .2s ease;
}
.hcg-homepage-wrapper .hcg-btn-primary,
.hcg-homepage-wrapper .hcg-content-block-1-button,
.hcg-homepage-wrapper .hcg-why-button,
.hcg-homepage-wrapper .hcg-industries-explore-button,
.hcg-homepage-wrapper .hcg-cta-button.primary{
  background:var(--per-black);
  color:#fff!important;
  border-color:var(--per-black);
}
.hcg-homepage-wrapper .hcg-btn-secondary,
.hcg-homepage-wrapper .hcg-cta-button.secondary{
  background:#fff;
  color:var(--per-black)!important;
  border-color:var(--per-line-strong);
}
.hcg-homepage-wrapper .hcg-btn-primary:hover,
.hcg-homepage-wrapper .hcg-content-block-1-button:hover,
.hcg-homepage-wrapper .hcg-why-button:hover,
.hcg-homepage-wrapper .hcg-industries-explore-button:hover,
.hcg-homepage-wrapper .hcg-cta-button.primary:hover{
  background:var(--per-gold);
  border-color:var(--per-gold);
  color:#fff!important;
  transform:translateY(-1px);
}
.hcg-homepage-wrapper .hcg-btn-secondary:hover,
.hcg-homepage-wrapper .hcg-cta-button.secondary:hover{
  border-color:var(--per-gold);
  color:var(--per-gold)!important;
}

/* Neutralize old decorative noise. */
.hcg-homepage-wrapper .hcg-why-orbit,
.hcg-homepage-wrapper .hcg-why-crosshair,
.hcg-homepage-wrapper .hcg-why-card-orbit,
.hcg-homepage-wrapper .hcg-why-card-crosshair,
.hcg-homepage-wrapper .hcg-draft-cross,
.hcg-homepage-wrapper .hcg-rail-center,
.hcg-homepage-wrapper .hpe-ccl-ring,
.hcg-homepage-wrapper .hpe-ccl-gridline{opacity:.18;}

@media(max-width:767px){
  :root{--per-section-y:52px;--per-h1:30px;--per-h2:24px;--per-h3:19px;--per-h4:17px;}
  .hcg-homepage-wrapper .hcg-container,
  .hcg-homepage-wrapper .hamsa-container{width:min(100% - 32px,var(--per-container));}
  .hcg-homepage-wrapper{font-size:var(--per-body);line-height:1.62;}
}
