/* ============================================================
   Company Profile page — screen styles
   ============================================================ */
.profile-hero {
  padding: 140px 0 50px;
  text-align: center;
}
.profile-title {
  font-size: clamp(2.4rem, 6vw, 4rem);
  color: #fff;
  margin: 18px 0 8px;
}
.profile-tagline {
  color: var(--text-muted);
  font-size: 1.15rem;
  margin-bottom: 34px;
}

.profile-meta {
  display: flex;
  align-items: stretch;
  justify-content: center;
  gap: 14px;
  flex-wrap: wrap;
  margin-bottom: 34px;
}
.meta-item {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 16px 26px;
  border-radius: var(--radius);
  border: 1px solid var(--border);
  background: var(--surface);
  min-width: 150px;
}
.meta-label { font-size: 0.72rem; text-transform: uppercase; letter-spacing: 0.05em; color: var(--text-dim); }
.meta-value { font-family: 'Space Grotesk', sans-serif; font-weight: 600; color: #fff; font-size: 1.02rem; }

.print-btn { display: inline-flex; }
.print-btn svg { width: 17px; height: 17px; stroke: var(--text); fill: none; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }

.profile-section { padding: 64px 0; }

.section-head-left { max-width: 640px; margin: 0 auto 36px; text-align: left; }
.section-head-left h2 { font-size: clamp(1.7rem, 3.2vw, 2.3rem); color: #fff; margin-top: 12px; }
.section-sub-left { color: var(--text-muted); margin-top: 14px; font-size: 1.02rem; }

.profile-copy { max-width: 760px; display: flex; flex-direction: column; gap: 18px; }
.profile-copy p { color: var(--text-muted); font-size: 1.03rem; line-height: 1.75; }

.expertise-grid { grid-template-columns: repeat(4, 1fr); }
.expertise-card { padding: 28px 24px; }
.expertise-card h3 { font-size: 1rem; color: #fff; margin-bottom: 10px; }
.expertise-card p { color: var(--text-muted); font-size: 0.88rem; }

.service-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px;
  background: var(--border);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  overflow: hidden;
}
.service-list-item { background: var(--bg-1); padding: 26px 24px; }
.service-list-item h4 { color: #fff; font-size: 1rem; margin-bottom: 8px; }
.service-list-item p { color: var(--text-muted); font-size: 0.88rem; }

.profile-portfolio-grid .portfolio-body { padding: 20px 22px 24px; }
.profile-portfolio-grid .portfolio-body h3 { margin-bottom: 0; font-size: 1.05rem; }

.profile-trust-grid {
  border: none;
  background: none;
  padding: 0;
  grid-template-columns: repeat(4, 1fr);
}
.profile-trust-grid .trust-item {
  flex-direction: column;
  gap: 14px;
  padding: 28px 18px;
  border-radius: var(--radius);
  border: 1px solid var(--border);
  background: var(--surface);
}
.profile-trust-grid svg { width: 26px; height: 26px; }

.profile-contact-row { display: flex; align-items: center; justify-content: center; gap: 16px; flex-wrap: wrap; }

/* ============================================================
   Responsive
   ============================================================ */
@media (max-width: 1080px) {
  .expertise-grid { grid-template-columns: repeat(2, 1fr); }
  .service-list { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 860px) {
  .profile-hero { padding-top: 110px; }
  .profile-meta { flex-direction: column; align-items: stretch; }
  .meta-item { min-width: 0; }
  .expertise-grid { grid-template-columns: 1fr; }
  .service-list { grid-template-columns: 1fr; }
  .profile-trust-grid { grid-template-columns: repeat(2, 1fr); }
  .profile-section { padding: 40px 0; }
}

/* ============================================================
   Print stylesheet — clean, ink-friendly export for proposals
   ============================================================ */
@media print {
  .no-print,
  .site-header,
  .bg-grid,
  .bg-noise,
  .lightbox,
  .zoom-hint,
  .scroll-cue { display: none !important; }

  html, body {
    background: #ffffff !important;
    color: #1a1a1a !important;
  }

  .profile-hero { padding: 20px 0 24px; text-align: left; }
  .profile-title, .profile-title .accent { color: #1a1a1a !important; }
  .profile-tagline { color: #444 !important; }

  .eyebrow {
    color: #b34a1e !important;
    background: none !important;
    border-color: #b34a1e !important;
  }

  .meta-item { background: #fff !important; border: 1px solid #ccc !important; }
  .meta-value { color: #1a1a1a !important; }
  .meta-label { color: #666 !important; }

  .profile-section { padding: 26px 0; page-break-inside: avoid; }
  .section-head-left h2 { color: #1a1a1a !important; }
  .section-sub-left, .profile-copy p, .service-list-item p, .expertise-card p, .trust-item span { color: #333 !important; }

  .card, .expertise-card, .service-list-item, .trust-item, .portfolio-card {
    background: #fff !important;
    border: 1px solid #ccc !important;
    box-shadow: none !important;
  }
  .service-list { background: #ccc !important; }

  .card-icon { background: #f2f2f2 !important; border-color: #ccc !important; }
  .card-icon svg { stroke: #b34a1e !important; }

  .expertise-card h3, .service-list-item h4, .portfolio-body h3 { color: #1a1a1a !important; }
  .portfolio-cat { color: #b34a1e !important; }

  .cta-section {
    background: none !important;
    border: 1px solid #ccc !important;
  }
  .cta-inner h2 { color: #1a1a1a !important; }
  .cta-inner p { color: #333 !important; }

  .site-footer { background: #fff !important; border-top: 1px solid #ccc; }
  .footer-note, .footer-bottom p { color: #666 !important; }
  .footer-col a, .footer-plain, .brand-tag { color: #333 !important; }
  .brand-name { color: #1a1a1a !important; }
  .social-row { display: none !important; }
  .footer-contact-row .phone-link,
  .footer-contact-row .phone-text { color: #1a1a1a !important; }
  .footer-contact-row .icon-link { border-color: #ccc !important; color: #1a1a1a !important; }
  .footer-contact-row svg { stroke: #b34a1e !important; }

  .btn { display: none !important; }

  a { text-decoration: none; color: inherit; }
  .portfolio-media img { filter: none; }

  @page { margin: 1.4cm; }
}
