/* =========================================================
   合同会社PORTO — Print stylesheet
   Requirement: プリントアウトしても見栄えの良いデザイン
   ・ナビ / フッター / CTAボタン / 装飾を非表示
   ・本文・実績・会社情報をクリーンに出力
   ・背景色/画像を用紙に適切に出力 (print-color-adjust)
   ========================================================= */
@media print {
  :root { --section-pad: 24px; }

  * {
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }

  html { scroll-behavior: auto; }
  body { font-size: 11pt; line-height: 1.7; color: #111; background: #fff; }

  /* hide interactive / decorative chrome */
  .site-header,
  .nav-toggle,
  .hero__scroll,
  .hero__glow,
  .hero__actions,
  .cta-band,
  .cta-band__title,
  .cta-band__text,
  .form,
  .form__alt,
  .site-footer .footer__sns,
  .btn,
  .link-arrow svg,
  .svc-card__link,
  .page-hero__crumb { display: none !important; }

  a { color: #111 !important; text-decoration: none !important; }

  /* neutralise fixed / min-height layout for paper */
  .hero { min-height: auto; padding-block: 10mm 8mm; background: #fff !important; }
  .hero__bg, .hero__glow { display: none !important; }
  .hero__title { font-size: 26pt; color: #111; }
  .hero__title .accent { color: #003399; }
  .page-hero { padding-top: 6mm; }

  .section { padding-block: 8mm; break-inside: avoid; }

  /* keep the results band readable on paper (navy on white instead of white on navy) */
  .results { background: #fff !important; color: #111 !important; }
  .results::after { display: none; }
  .results .sec-head__title, .results .sec-head__en { color: #003399 !important; }
  .res-item { border-top: 1px solid #999; }
  .res-item__num { color: #003399; }
  .res-item__label { color: #111; }
  .res-note { color: #444; }
  .res-grid { grid-template-columns: repeat(4, 1fr); }

  .svc-grid { grid-template-columns: repeat(3, 1fr); }
  .svc-card, .intv-card { border: 1px solid #bbb !important; box-shadow: none !important; break-inside: avoid; }
  .svc-card__num { color: #cfe4f2; }

  /* footer -> plain company block */
  .site-footer { background: #fff !important; color: #111 !important; border-top: 1px solid #999; padding-block: 6mm; }
  .footer__brand-logo, .footer__addr, .footer__nav a, .footer__bottom, .footer__copy { color: #111 !important; }
  .footer__nav { display: none !important; }

  .sec-head { margin-bottom: 6mm; }
  h2, h3 { break-after: avoid; }
  .info-table th, .info-table td { padding: 8px 4px; }

  /* print-only company footprint line */
  .print-only { display: block !important; }
}
.print-only { display: none; }
