/* Shared homepage cover carousel, composed for the universal service hero. */
.sp-hero-showcase { position:relative; min-width:0; align-self:center; padding:0 0 12px; }
.sp-hero-showcase::before { content:''; position:absolute; inset:0 12px 124px; border:1px solid var(--ink-border); border-radius:50% 50% 16px 16px; background:url('../images/services/paper-texture.svg') center/600px; pointer-events:none; }
.inkstone-design .sp-cover-carousel { --book-width:218px; --book-height:350px; --book-step:55px; width:100%; height:500px; margin:0; isolation:isolate; }
.sp-cover-carousel .showcase-book-stage { inset:0 0 96px; }
.sp-cover-carousel .showcase-book { bottom:14px; }
.sp-main .sp-cover-carousel .showcase-book img { width:100%; height:100%; object-fit:fill; border-radius:inherit; }
.sp-cover-carousel .showcase-pedestal { width:98%; left:1%; bottom:64px; height:70px; }
.sp-cover-carousel .showcase-pedestal::before { top:-18px; height:60px; }
.sp-cover-carousel .showcase-carousel-controls { bottom:28px; gap:20px; }
.sp-cover-carousel .showcase-carousel-arrow { width:44px; height:44px; flex:0 0 44px; cursor:pointer; border-color:var(--ink-gold); background:var(--ink-paper); color:var(--ink-green); transition:background var(--ink-duration),color var(--ink-duration); }
.sp-cover-carousel .showcase-carousel-arrow:hover { background:var(--ink-green); color:var(--ink-on-dark); }
.sp-cover-carousel .showcase-dots { gap:4px; }
.sp-cover-carousel .showcase-dot { display:grid; place-items:center; width:22px; height:44px; background:transparent; border-radius:0; cursor:pointer; }
.sp-cover-carousel .showcase-dot::before { position:static; width:7px; height:7px; border-radius:50%; background:var(--ink-border); }
.sp-cover-carousel .showcase-dot[aria-pressed=true] { background:transparent; box-shadow:none; }
.sp-cover-carousel .showcase-dot[aria-pressed=true]::before { background:var(--ink-green); box-shadow:0 0 0 3px #d9b67650; }
.sp-main .sp-cover-carousel .showcase-caption { bottom:-8px; padding-inline:8px; text-align:center; letter-spacing:0; }
.sp-main .sp-showcase-note { display:flex; justify-content:center; align-items:center; gap:12px; margin:24px 0 0; color:var(--ink-gold-ink)!important; font:italic 19px/1.4 var(--ink-font-heading)!important; text-align:center; }
.sp-showcase-note > span { color:var(--ink-gold-ink); font-size:24px; }
@media (min-width:992px) and (max-width:1199px) {
  .inkstone-design .sp-cover-carousel { --book-height:310px; --book-step:43px; height:460px; }
  .sp-cover-carousel .showcase-carousel-controls { gap:10px; }
  .sp-cover-carousel .showcase-dot { width:18px; }
}
@media (max-width:991px) {
  .sp-hero-showcase { width:100%; max-width:650px; margin-inline:auto; }
  .inkstone-design .sp-cover-carousel { --book-height:360px; --book-step:57px; height:510px; }
}
@media (max-width:600px) {
  .inkstone-design .sp-cover-carousel { --book-height:300px; --book-step:36px; height:440px; }
  .sp-cover-carousel .showcase-carousel-controls { gap:8px; }
  .sp-cover-carousel .showcase-dots { gap:0; }
  .sp-cover-carousel .showcase-dot { width:22px; }
  .sp-hero-showcase::before { inset:0 0 116px; }
  .sp-main .sp-showcase-note { font-size:17px!important; }
}
@media (max-width:359px) {
  .inkstone-design .sp-cover-carousel { --book-height:260px; --book-step:31px; height:400px; }
  .sp-cover-carousel .showcase-carousel-controls { gap:3px; }
  .sp-cover-carousel .showcase-dot { width:21px; }
}
@media (prefers-reduced-motion:reduce) {
  .sp-cover-carousel :is(.showcase-book,.showcase-carousel-arrow) { transition:none!important; }
}
