/* ArtPlus v21: expressive display type, reliable contrast and native scrolling. */

:root {
  --ap-display-font: "Caacupe One", "Arial Black", sans-serif;
}

/* The browser keeps control of wheel and trackpad momentum. Smooth behavior is
   retained only for deliberate in-page anchor navigation. */
html,
body {
  scroll-snap-type: none !important;
  overscroll-behavior-y: auto;
}

/* Caacupe One is a single-style display face. Inter remains in body copy,
   navigation and controls where longer text needs a quieter rhythm. */
h1,
h2,
h3,
h4,
h5,
h6,
.apb-big-type p,
.home-contact-title {
  font-family: var(--ap-display-font) !important;
  font-weight: 400 !important;
  font-synthesis: none;
}

body.home .apb-hero .home-hero-copy h1 {
  max-width: 1120px;
  font-size: clamp(60px, 5.2vw, 100px);
  line-height: 1.02;
  letter-spacing: 0;
  text-wrap: balance;
}

body.home .simple-section-head h2,
body.home .ap-showreel-heading h2,
body.home .apb-image-text-copy h2,
body.home .apb-text h2 {
  line-height: 1.04;
  letter-spacing: 0;
}

body.home .ap-service-copy h3,
body.home .home-project-meta h3 {
  line-height: 1.1;
  letter-spacing: 0;
}

.page-intro h1,
.service-page h1,
.default-content h1,
.default-content h2,
.default-content h3,
.apb-big-type p,
.home-contact-title {
  line-height: 1.05;
  letter-spacing: 0;
}

/* The showreel was designed as a cinematic dark pause. An older transparent
   background override left its white title sitting on the light paper. */
body.home .ap-showreel {
  color: #fff;
  background-color: var(--ap-v19-ink) !important;
  background-image: none !important;
}

body.home .ap-showreel-heading h2 {
  color: #fff !important;
}

body.home .ap-showreel-heading p {
  color: #b9c5c3 !important;
}

/* Every other builder section uses the light paper and therefore dark type. */
body.home .apb-hero h1,
body.home .apb-section:not(.ap-showreel) h2,
body.home .apb-section:not(.ap-showreel) h3 {
  color: var(--ap-v19-ink) !important;
}

@media (max-width: 900px) {
  body.home .apb-hero .home-hero-copy h1 {
    font-size: clamp(44px, 11.5vw, 64px);
    line-height: 1.03;
  }

  body.home .simple-section-head h2,
  body.home .ap-showreel-heading h2,
  body.home .apb-image-text-copy h2,
  body.home .apb-text h2 {
    font-size: clamp(38px, 9.5vw, 52px);
    line-height: 1.06;
  }

  body.home .ap-service-copy h3 {
    line-height: 1.12;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
}
