.contact-strip {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0;
  margin-top: 16px;
  overflow: hidden;
  border: 1px solid #d5ddd7;
  background: rgba(255, 255, 255, 0.68);
}

.home-page .service .contact-strip .contact-card {
  display: grid;
  grid-template-columns: minmax(145px, 34%) minmax(0, 1fr);
  grid-template-rows: auto auto;
  align-items: center;
  column-gap: 18px;
  position: relative;
  min-height: 0;
  padding: 11px 20px 12px;
  border: 0;
  background: transparent;
  transition: none;
}

.home-page .service .contact-strip .contact-card + .contact-card {
  border-left: 1px solid #d5ddd7;
}

.home-page .service .contact-strip .contact-card:hover {
  transform: none;
  box-shadow: none;
}

.service .contact-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 3px;
  height: 100%;
  background: #c9ad62;
}

.service .contact-card + .contact-card::before {
  background: #b9826d;
}

.contact-label {
  display: block;
  grid-column: 1;
  grid-row: 1;
  color: #8d7650;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.18em;
}

.service .contact-card h3 {
  grid-column: 1;
  grid-row: 2;
  margin: 3px 0 0;
  color: var(--ink);
  font-size: 18px;
}

.service .contact-card h3 a {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}

.service .contact-card h3 a::after {
  content: "↗";
  color: #8d7650;
  font-size: 13px;
  transition: transform 0.2s ease;
}

.service .contact-card h3 a:hover::after {
  transform: translate(2px, -2px);
}

.service .contact-card p {
  display: grid;
  grid-column: 2;
  grid-row: 1 / span 2;
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 10px;
  margin: 0;
}

.contact-card p strong {
  color: var(--ink);
  font-size: 12px;
}

@media (max-width: 700px) {
  .contact-strip {
    grid-template-columns: 1fr;
  }

  .home-page .service .contact-strip .contact-card + .contact-card {
    border-top: 1px solid #d5ddd7;
    border-left: 0;
  }

  .home-page .service .contact-strip .contact-card {
    display: block;
    padding: 13px 18px 14px;
  }

  .service .contact-card h3 {
    margin: 4px 0 7px;
  }

  .service .contact-card p {
    grid-column: auto;
    grid-row: auto;
    grid-template-columns: 1fr;
    gap: 2px;
  }
}

/* Balanced desktop density: fills a standard 1080p viewport without flattening the hero. */
@media (min-width: 1200px) and (min-height: 680px) {
  .home-page .site-header {
    height: 78px;
  }

  .home-page .smart-hero {
    min-height: 500px;
    padding: 34px 7vw;
    gap: 48px;
  }

  .home-page .smart-kicker {
    font-size: 11px;
  }

  .home-page .smart-hero h1 {
    margin: 20px 0 18px;
    font-size: clamp(52px, 3.7vw, 64px);
  }

  .home-page .smart-hero-copy > p {
    font-size: 15px;
    line-height: 1.8;
  }

  .home-page .smart-actions {
    margin-top: 22px;
  }

  .home-page .smart-actions a {
    padding: 11px 18px;
    font-size: 13px;
  }

  .home-page .smart-visual {
    height: 420px;
    max-height: none;
  }

  .home-page .smart-visual-image > picture {
    width: 100%;
    height: 100%;
  }

  .home-page .smart-visual-image > picture > img {
    width: 100%;
    height: 100%;
    max-height: none;
    object-fit: contain;
  }

  .home-page .service {
    min-height: 0;
    padding: 22px 7vw 24px;
    overflow: visible;
  }

  .home-page .service > div:first-child h2 {
    margin: 0;
    font-size: 27px;
  }

  .home-page .service-grid {
    margin-top: 16px;
  }

  .home-page .service .service-grid article {
    min-height: 126px;
    padding: 16px 19px;
  }

  .home-page .service .service-grid article b {
    min-width: 35px;
    height: 27px;
    font-size: 15px;
  }

  .home-page .service .service-grid article h3 {
    margin: 8px 0 5px;
    font-size: 16px;
  }

  .home-page .service .service-grid article p {
    margin: 0;
    line-height: 1.75;
  }

  .home-page .contact-strip {
    margin-top: 10px;
  }

  .home-page .service .contact-strip .contact-card {
    padding: 8px 18px 9px;
  }

  .home-page .service .contact-card h3 {
    margin: 3px 0 0;
    font-size: 17px;
  }

  .home-page .service .contact-card p {
    line-height: 1.7;
  }
}

/* About the company. */
.about-section{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,7vw,110px);padding:76px 7vw 84px;background:#faf9f5;scroll-margin-top:100px;border-top:1px solid #e0e5dc}
.about-intro .eyebrow{color:#9d8655;letter-spacing:.22em;font-size:11px}
.about-intro h2{margin:14px 0 18px;font-size:32px;font-weight:600;letter-spacing:.06em}
.about-lead{margin:0 0 24px;font-size:clamp(20px,2vw,28px);line-height:1.6;color:#284d40}
.about-name{margin:0 0 10px;font-size:14px;font-weight:700}
.about-description{max-width:520px;margin:0;font-size:14px;line-height:2;color:#6f7b72}
.about-link{display:inline-block;margin-top:26px;padding-bottom:8px;border-bottom:1px solid #b9c5b6;font-size:13px;font-weight:600}
.about-capabilities{display:grid;gap:0;border-top:1px solid #cfd8cc}
.about-capabilities article{padding:22px 0;border-bottom:1px solid #dce2d8}
.about-capabilities article>span{font-size:10px;letter-spacing:.12em;color:#9b875f}
.about-capabilities h3{margin:9px 0 7px;font-size:18px}
.about-capabilities p{margin:0;color:#6f7b72;font-size:13px;line-height:1.9}
@media(max-width:820px){.about-section{grid-template-columns:1fr;padding:48px 24px;gap:32px}.about-intro h2{font-size:28px}.site-header nav{gap:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Company profile and protected certificate gallery from the company brochure. */
.about-expanded{display:block;padding-top:72px;padding-bottom:72px}.about-overview{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:64px;align-items:center}.about-expanded .about-description{max-width:680px}.about-chain{font-size:12px;color:#8c784f;line-height:2;margin:20px 0 0}.about-diagram{margin:0;display:grid;justify-items:center;background:#edf5f3;border-radius:16px;padding:20px}.about-diagram img{display:block;max-width:100%;width:auto;height:280px;object-fit:contain;border-radius:6px}.about-diagram figcaption{font-size:11px;color:#71847d;margin-top:12px}.about-business-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:40px}.about-business-grid article{padding:24px;background:white;border:1px solid #e3e8df;border-radius:10px}.about-business-grid article>span{font-size:10px;letter-spacing:.1em;color:#a18d65}.about-business-grid h3{margin:12px 0;font-size:18px}.about-business-grid p{margin:0;font-size:13px;line-height:1.95;color:#6f7b72}.about-enquiries{display:flex;align-items:center;gap:30px;flex-wrap:wrap;padding:22px 0;margin-top:24px;border-bottom:1px solid #dce2d8;font-size:13px}.about-enquiries span{color:#78877e;margin-right:12px}.about-enquiries p{margin:0;line-height:1.8}.about-certificates{padding-top:48px}.certificate-heading h3{font-size:26px;margin:12px 0}.certificate-heading p{font-size:13px;color:#768078;line-height:1.9;margin:6px 0}.company-certificate-card{display:grid;grid-template-columns:220px minmax(0,1fr);max-width:850px;margin-top:24px;overflow:hidden;background:white;border:1px solid #e3dfd1;border-radius:12px}.certificate-symbol{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;background:#f2ecdd;padding:30px;color:#a58e55}.certificate-symbol svg{width:90px;height:110px}.certificate-symbol span{font-size:11px}.company-certificate-info{padding:28px 32px}.company-certificate-info h4{font-size:23px;margin:12px 0 20px}.company-certificate-info dl{margin:0}.company-certificate-info dl>div{display:flex;gap:16px;margin-top:10px;font-size:12px;line-height:1.8}.company-certificate-info dt{min-width:60px;color:#7f877e}.company-certificate-info dd{margin:0;overflow-wrap:anywhere}.company-certificate-actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-top:24px}.company-certificate-actions a{font-size:12px;color:#436653}.company-certificate-actions button,.company-certificate-body button{border:0;border-radius:6px;padding:12px 20px;background:#245442;color:white;cursor:pointer;font:inherit;font-size:13px}.company-certificate-dialog{width:min(94vw,1000px);max-height:90vh;padding:0;border:0;border-radius:12px;color:var(--ink);box-shadow:0 24px 80px #102b2740}.company-certificate-dialog::backdrop{background:#102b2799;backdrop-filter:blur(3px)}.company-certificate-dialog header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e0e5dc}.company-certificate-dialog h2{font-size:18px;margin:0}.company-certificate-dialog header button{border:0;background:transparent;font-size:24px;cursor:pointer}.company-certificate-body{padding:24px}.company-certificate-body form{display:flex;gap:10px}.company-certificate-body input{flex:1;min-width:0;border:1px solid #cbd5cc;border-radius:6px;padding:12px;font:inherit}.company-certificate-body button:disabled{opacity:.5}.company-certificate-body p{font-size:13px;line-height:1.8}.company-certificate-body img{display:block;width:100%;height:auto;margin-top:16px}.company-certificate-body a{display:inline-block;color:#245442;font-size:13px;margin-top:10px}.company-certificate-body input:focus-visible,.company-certificate-actions button:focus-visible{outline:2px solid #a58e55;outline-offset:3px}@media(max-width:900px){.about-overview{gap:30px}.about-business-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.about-overview{grid-template-columns:1fr}.about-business-grid{grid-template-columns:1fr;gap:14px}.about-expanded .about-lead{font-size:24px}.about-enquiries{gap:14px}.company-certificate-card{grid-template-columns:1fr}.certificate-symbol{padding:20px;flex-direction:row}.certificate-symbol svg{width:48px;height:60px}.company-certificate-info{padding:24px 20px}.company-certificate-body{padding:18px}.company-certificate-body form{flex-wrap:wrap}.company-certificate-body button{white-space:nowrap}}

/* Home collaboration spacing */
.home-page .service{margin-top:50px}
@media(max-width:760px){.home-page .service{margin-top:30px}}

/* Responsive home composition: let collaboration complete the viewport. */
.home-page{min-height:100vh;min-height:100svh;display:flex;flex-direction:column}
.home-page>main{flex:1;display:flex;flex-direction:column}
.home-page .service{flex:1;display:flex;flex-direction:column;justify-content:center;padding-top:36px;padding-bottom:36px;border-top:1px solid #dce3dc}
@media(min-width:1200px) and (min-height:680px){
.home-page .service-grid{margin-top:22px;gap:18px}
.home-page .service .service-grid article{min-height:146px;padding:22px 22px 24px}
.home-page .contact-strip{margin-top:18px}
.home-page .service .contact-strip .contact-card{padding:14px 20px 15px}
}
@media(max-width:760px){.home-page .service{padding-top:28px;padding-bottom:28px}}
