/* Homepage typography aligned with the catalogue. Keep CMS content and photos. */
.home-page { font-family:"DM Sans",Arial,sans-serif; }
.home-page section :is(h1,h2,h3), .home-page .quote blockquote {
  font-family:"DM Sans",Arial,sans-serif; font-weight:500; letter-spacing:-.025em;
}
.home-page .hero h1 {
  max-width:780px; margin:18px 0 24px;
  font-size:clamp(36px,4.5vw,64px); line-height:1.1; font-weight:500;
}
.home-page .hero p { max-width:510px; font-size:16px; line-height:1.75; margin-bottom:30px; }
.home-page .hero .shell { padding-bottom:72px; }
.home-page :is(.intro,.shop,.story,.home-biometric,.quality-section,.environment-section,.how,.review-stories,.newsletter) h2 {
  font-size:clamp(28px,2.7vw,36px); line-height:1.2; margin-top:12px; margin-bottom:24px;
}
.home-page :is(.intro,.story-copy,.home-biometric-copy,.quality-content,.environment-content,.how-head)>p:not(.eyebrow) {
  font-size:16px; line-height:1.8; max-width:580px;
}
.home-page :is(.intro,.shop,.home-biometric,.quality-section,.environment-section,.how,.quote) { padding-top:80px; padding-bottom:80px; }
.home-page .story, .home-page .story-image { padding:0; }
.home-page .eyebrow { font-size:11px; font-weight:600; line-height:1.6; letter-spacing:.1em; }
.home-page .section-title { gap:28px; margin-bottom:32px; }
.home-page .path h3 { font-size:clamp(26px,2.7vw,36px); line-height:1.2; }
.home-page .product h3 { font-size:15px; font-weight:500; line-height:1.5; letter-spacing:0; }
.home-page .product p { font-size:13px; line-height:1.6; }
.home-page .product b { font-size:15px; font-weight:500; }
.home-page .step h3 { font-size:22px; line-height:1.3; margin:28px 0 14px; }
.home-page .step p { font-size:15px; line-height:1.75; }
.home-page .quote blockquote { font-size:clamp(26px,3vw,40px); line-height:1.4; max-width:850px; margin:20px auto; }
.home-page .home-biometric-visual { box-shadow:none; }
.home-page .hero .actions { gap:12px; }
@media(max-width:780px) {
  .home-page .hero h1 { font-size:38px; max-width:620px; }
  .home-page .hero .shell { padding-bottom:36px; }
  .home-page :is(.intro,.shop,.home-biometric,.quality-section,.environment-section,.how,.quote) { padding-top:48px; padding-bottom:48px; }
  .home-page .section-title { align-items:flex-start; flex-direction:column; gap:16px; margin-bottom:26px; }
  .home-page :is(.intro,.shop,.story,.home-biometric,.quality-section,.environment-section,.how,.review-stories,.newsletter) h2 { font-size:28px; }
  .home-page .product h3 { font-size:14px; }
}
@media(max-width:400px) {
  .home-page .hero h1 { font-size:34px; }
  .home-page .hero .actions .btn { width:100%; }
}

/* Captions, reassurance and reviews also belong to the same typography system. */
.home-page .home-biometric-visual figcaption {
  font-family:"DM Sans",Arial,sans-serif; font-size:16px; line-height:1.65; font-weight:400;
}
.home-page .home-fit-promise {
  font-family:"DM Sans",Arial,sans-serif; font-size:clamp(24px,2.4vw,32px);
  line-height:1.25; font-weight:500; letter-spacing:-.025em;
}
.home-page .home-fabric-houses span { font-family:"DM Sans",Arial,sans-serif; font-size:23px; font-weight:500; }
.home-page .fit-reassurance-heading strong { font-family:"DM Sans",Arial,sans-serif!important; font-weight:500; }
.home-page .review-story blockquote p { font-family:"DM Sans",Arial,sans-serif; font-size:21px; line-height:1.6; font-weight:400; }
.home-page .review-story-mark { font-family:"DM Sans",Arial,sans-serif; }
