

/* P-003 owner CR v2.2 — page-scoped composition only. Global tokens/header/footer remain inherited. */

.service-chapter__facts,

.service-chapter__facts--cinema {

  display:grid;

  grid-template-columns:repeat(2,minmax(0,1fr));

  column-gap:clamp(1.5rem,3vw,3.5rem);

  row-gap:0;

  margin:2.2rem 0 0;

  padding:0;

  list-style:none;

}

.service-chapter__facts li,

.service-chapter__facts li:nth-child(even),

.service-chapter__facts--cinema li {

  min-height:0;

  padding:.78rem 0;

  background:transparent;

  border:0;

  color:var(--ink-soft);

  display:block;

}

.service-chapter__facts li::before,

.service-chapter__facts li:nth-child(even)::before {

  content:none;

}

.olive-service .service-chapter__facts li,

.olive-service .service-chapter__facts li:nth-child(even) {

  background:transparent;

  border:0;

  color:rgba(243,237,227,.82);

}

.service-chapter__facts--cinema {

  margin-top:2.35rem;

  column-gap:clamp(1.5rem,4vw,4.5rem);

}

.service-chapter__cinema-video .video-frame,

.service-chapter__complete-video .video-frame,

.addon-feature .video-frame,

.film-example-card .video-frame {

  aspect-ratio:16/9;

}

.service-chapter__complete-video {

  margin-top:clamp(2rem,4vw,3.75rem);

}

.addon-feature-grid {

  display:grid;

  grid-template-columns:repeat(2,minmax(0,1fr));

  gap:clamp(1.25rem,2.5vw,2rem);

  align-items:stretch;

}

.addon-feature-grid .addon-feature:first-child {

  grid-column:1/-1;

  grid-row:auto;

  display:grid;

  grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);

  align-items:stretch;

}

.addon-feature-grid .addon-feature:first-child .video-frame {

  aspect-ratio:16/9;

}

.addon-feature-grid .addon-feature:nth-child(2),

.addon-feature-grid .addon-feature:nth-child(3) {

  display:flex;

  flex-direction:column;

}

.addon-feature-grid .addon-feature:nth-child(2) .video-frame,

.addon-feature-grid .addon-feature:nth-child(3) .video-frame {

  aspect-ratio:16/9;

}

.addon-feature-grid .addon-feature__copy {

  display:flex;

  flex-direction:column;

  justify-content:center;

}

.booking-v2 {

  background:var(--paper);

}

.booking-v2__grid {

  display:grid;

  grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);

  gap:clamp(2.5rem,7vw,7rem);

  align-items:start;

}

.booking-v2__grid > h2 {

  max-width:30rem;

}

.booking-v2__notes {

  border-top:1px solid var(--line);

}

.booking-note,

.booking-note + .booking-note {

  display:grid;

  grid-template-columns:minmax(10rem,.62fr) minmax(0,1.38fr);

  gap:clamp(1rem,3vw,2.5rem);

  align-items:start;

  padding:1.25rem 0 1.4rem;

  background:transparent;

  border:0;

  border-bottom:1px solid var(--line);

}

.booking-note h3 {

  font-size:1.6rem;

  line-height:1.1;

}

.booking-note p {

  margin-top:0;

  color:var(--ink-soft);

}

.services-faq .faq-list {

  gap:0;

  border-top:1px solid var(--line);

}

.services-faq .faq-item {

  background:transparent;

  border:0;

  border-bottom:1px solid var(--line);

}

.services-faq .faq-item button {

  padding:1.2rem 0;

}

.services-faq .faq-item button span:first-child {

  font-size:1.55rem;

}

.services-faq .faq-item button span:last-child {

  width:auto;

  height:auto;

  border:0;

  border-radius:0;

  font-size:1.25rem;

  line-height:1;

  color:var(--sage-deep);

}

.services-faq .faq-item button[aria-expanded="true"] span:last-child {

  background:transparent;

}

.services-faq .faq-item button:focus-visible {

  outline:2px solid var(--bronze);

  outline-offset:4px;

}

@media (max-width:760px) {

  .service-chapter__facts,

  .service-chapter__facts--cinema {

    grid-template-columns:1fr;

    column-gap:0;

  }

  .addon-feature-grid {

    grid-template-columns:1fr;

  }

  .addon-feature-grid .addon-feature:first-child {

    grid-column:auto;

    display:block;

  }

  .booking-v2__grid {

    grid-template-columns:1fr;

    gap:2rem;

  }

  .booking-note,

  .booking-note + .booking-note {

    grid-template-columns:1fr;

    gap:.4rem;

  }

}

