/* KarKes V5.1 — V4 original navy/orange palette + new manufacturing layout */
/* Preserve V4 colors, mobile navigation and all original public pages. */
:root { --navy:#091925; --navy2:#0e2230; --deep:#06141d; --orange:#ff690b; }
html,body { max-width:100%; }
/* Fix about split exceeding viewport: fractional columns may not shrink without minmax(0). */
.about-banner {
  box-sizing:border-box;
  width:100%;
  max-width:100%;
  display:grid;
  grid-template-columns:minmax(0, 41fr) minmax(0, 59fr);
  align-items:stretch;
  overflow:hidden;
  background:var(--deep);
  color:#fff;
}
.about-banner > * { min-width:0; max-width:100%; }
.about-banner .about-copy { min-width:0; overflow-wrap:anywhere; padding:34px clamp(24px,3.4vw,58px); }
.about-banner .about-photo { min-width:0; min-height:335px; background-position:center; }
.about-banner .about-values { max-width:100%; flex-wrap:wrap; }
/* Manufacturing feature on homepage: navy like V4 company panel. */
.manufacturing-preview { background:#0b2030; color:#fff; border-top:1px solid #1b3749; border-bottom:1px solid #1b3749; }
.manufacturing-preview .section-heading h2 { color:#fff; }
.manufacturing-preview .section-heading p { color:#c7d3dc; }
.manufacturing-preview .btn-outline-dark { background:transparent; color:#fff; border-color:#8094a1; }
.manufacturing-preview .btn-outline-dark:hover { border-color:var(--orange); color:var(--orange); }
.manufacturing-home-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.manufacture-card {
  display:grid; grid-template-columns:minmax(0,45fr) minmax(0,55fr);
  background:#102a3b; color:#fff; border:1px solid #2a4659;
  border-radius:12px; overflow:hidden; min-width:0;
  box-shadow:0 8px 24px rgba(0,0,0,.12);
  transition:transform .2s ease, border-color .2s ease;
}
.manufacture-card:hover { transform:translateY(-3px); border-color:#ef7626; }
.manufacture-card:focus-visible { outline:3px solid #ff690b; outline-offset:2px; }
.manufacture-illustration { background:#eaf2f7; min-height:205px; display:grid; place-items:center; min-width:0; }
.manufacture-illustration img { width:100%; height:100%; object-fit:cover; }
.manufacture-description { padding:26px 24px; min-width:0; }
.manufacture-description h3 { font:800 clamp(24px,2.4vw,34px)/1.05 var(--display); margin:0 0 12px; color:#fff; overflow-wrap:break-word; }
.manufacture-description p { font-size:12px; color:#c6d4df; line-height:1.75; margin:0 0 16px; }
.manufacture-link { display:flex; align-items:center; gap:7px; font-weight:800; font-size:12px; color:#ff892f; }
.manufacture-link .icon { width:17px; height:17px; }
.drawing-notice { font-size:11px; color:#adbecd; margin:19px 0 0; }
/* Separate manufacturing page: classic V4 navy hero and white detail area. */
.manufacturing-hero { padding:66px 0; }
.manufacture-page { background:#fff; }
.manufacture-feature { display:grid; grid-template-columns:minmax(0,47fr) minmax(0,53fr); align-items:center; gap:clamp(25px,4vw,65px); padding:26px 0 60px; scroll-margin-top:95px; }
.manufacture-feature + .manufacture-feature { border-top:1px solid #e2e9ef; padding-top:60px; }
.manufacture-feature.reverse .feature-graphic { order:2; }
.manufacture-feature.reverse .feature-text { order:1; }
.feature-graphic { border:1px solid #dce6ee; border-radius:14px; overflow:hidden; min-width:0; box-shadow:0 14px 35px rgba(21,48,67,.07); }
.feature-graphic img { display:block; width:100%; height:auto; }
.feature-text { min-width:0; }
.feature-text h2 { font:800 clamp(34px,4vw,60px)/1 var(--display); margin:0 0 20px; color:#102435; overflow-wrap:break-word; }
.feature-text p { color:#526a7a; font-size:14px; line-height:1.85; margin:0 0 15px; }
.feature-buttons { display:flex; flex-wrap:wrap; gap:12px; margin-top:28px; }
.manufacturing-note { display:flex; align-items:flex-start; gap:15px; border:1px solid #dfe7ee; border-radius:10px; background:#f6f9fb; padding:18px 22px; }
.manufacturing-note .icon { color:#ed6814; flex:none; }
.manufacturing-note p { color:#61798a; font-size:12px; line-height:1.75; margin:0; }
@media(max-width:1050px) { .about-banner { grid-template-columns:minmax(0,36fr) minmax(0,64fr); } }
@media(max-width:850px) {
  .manufacturing-home-grid { grid-template-columns:1fr; }
  .manufacture-feature { grid-template-columns:1fr; gap:23px; }
  .manufacture-feature.reverse .feature-graphic,
  .manufacture-feature.reverse .feature-text { order:initial; }
}
@media(max-width:820px) {
  .about-banner { grid-template-columns:minmax(0,1fr); }
  .about-banner .about-photo { min-height:300px; }
}
@media(max-width:650px) {
  .manufacture-card { grid-template-columns:1fr; }
  .manufacture-illustration { min-height:190px; max-height:250px; }
  .manufacture-illustration img { max-height:250px; }
  .manufacture-feature + .manufacture-feature { padding-top:38px; }
  .manufacturing-hero { padding:52px 0; }
  .feature-buttons .btn { white-space:normal; }
  .about-banner .about-photo { min-height:235px; }
  .about-banner .about-copy { padding:30px 20px; }
}

/* V5.2 — true layout fix: put About content within the same site container as other sections.
   This section no longer spans full viewport width or touches window edges. */
.about-section {
  background:#fff;
  padding:clamp(28px,3.8vw,56px) 0;
  overflow:clip;
}
.about-section .container { min-width:0; }
.about-section .about-banner {
  width:100%; max-width:100%; margin:0 auto;
  display:grid; grid-template-columns:minmax(0,44fr) minmax(0,56fr);
  border:1px solid #1b3445;
  border-radius:14px;
  overflow:hidden;
  min-height:340px;
  box-shadow:0 16px 36px rgba(9,25,37,.16);
}
.about-section .about-photo {
  min-width:0; min-height:340px;
  background-size:cover; background-position:center;
}
.about-section .about-copy {
  min-width:0; min-height:0;
  align-self:center;
  padding:clamp(28px,3vw,46px);
  overflow-wrap:normal;
}
.about-section .about-copy h2 { max-width:580px; }
.about-section .about-copy p { max-width:560px; }
.about-section .about-values { gap:16px 22px; }

/* Manufacturing only: restore the liked V5 ice-gray / white section and cards. */
.manufacturing-preview {
  background:#f4f8fb;
  color:#203648;
  border-top:1px solid #e2eaf1;
  border-bottom:1px solid #e2eaf1;
}
.manufacturing-preview .section-heading h2 { color:#203648; }
.manufacturing-preview .section-heading p { color:#5e7283; }
.manufacturing-preview .btn-outline-dark {
  background:transparent; color:#203648; border-color:#8799a8;
}
.manufacturing-preview .btn-outline-dark:hover { border-color:var(--orange); color:var(--orange); }
.manufacturing-preview .manufacture-card {
  background:#fff; color:#203648; border:1px solid #dfe7ee;
  box-shadow:0 8px 24px rgba(23,55,75,.04);
}
.manufacturing-preview .manufacture-card:hover {
  box-shadow:0 14px 30px rgba(23,55,75,.10);
  border-color:#ef7626;
}
.manufacturing-preview .manufacture-description h3 { color:#203648; }
.manufacturing-preview .manufacture-description p { color:#5e7283; }
.manufacturing-preview .manufacture-link { color:#e86b1a; }
.manufacturing-preview .drawing-notice { color:#718697; }

@media(max-width:1020px) {
  .about-section .about-banner { grid-template-columns:minmax(0,40fr) minmax(0,60fr); }
  .about-section .about-copy { padding:26px; }
  .about-section .about-values { margin-top:16px; }
}
@media(max-width:820px) {
  .about-section .about-banner { grid-template-columns:minmax(0,1fr); }
  .about-section .about-photo { min-height:280px; }
  .about-section .about-copy { padding:28px; }
}
@media(max-width:560px) {
  .about-section { padding:25px 0; }
  .about-section .about-photo { min-height:215px; }
  .about-section .about-copy { padding:24px 20px 28px; }
  .about-section .about-copy h2 { font-size:clamp(27px,8vw,36px); }
  .about-section .about-values { gap:12px; }
}

/* Keep the full technical illustration visible instead of cropping it inside its card. */
.manufacturing-preview .manufacture-illustration img { object-fit:contain; object-position:center; }
