/* Service detail pages: Pearl White text section above a Soft Lavender reels band. */
.sv-intro { max-width: 860px; margin-inline: auto; padding: 32px 16px 40px; color: #48216B; font-size: 19px; line-height: 1.5; }
.sv-head { text-align: center; }
.sv-intro h1 { margin: 0 0 16px; }
.sv-intro h2 { margin: 28px 0 12px; font-size: 26px; line-height: 1.2; }
.sv-intro p { margin: 0; color: #48216B; }
.sv-list { margin: 0; padding: 0; list-style: none; color: #48216B; }
.sv-list li { margin: 0 0 12px; }
.sv-list strong { font-weight: 700; }
.sv-intro .sv-tagline { margin-top: 28px; text-align: center; font-size: 24px; line-height: 1.3; font-weight: 600; }
.sv-band { background: #C9A7EB; padding: 32px 16px 40px; text-align: center; }
.sv-band h2 { margin: 0 0 20px; font-size: 32px; }
.sv-reels { display: flex; flex-wrap: wrap; justify-content: center; gap: 24px; max-width: 1110px; margin: 0 auto; }
.sv-reel { position: relative; flex: 0 1 300px; min-width: 0; margin: 0; aspect-ratio: 9 / 16; background: #111014; border-radius: 4px; overflow: hidden; }
.sv-reel video { display: block; width: 100%; height: 100%; object-fit: contain; }
.sv-play { position: absolute; inset: 0; width: 100%; padding: 0; border: 0; background: none; cursor: pointer; }
.sv-play::before { content: ""; position: absolute; top: 50%; left: 50%; width: 72px; height: 72px; margin: -36px 0 0 -36px; border-radius: 50%; background: #48216B; opacity: .92; }
.sv-play::after { content: ""; position: absolute; top: 50%; left: 50%; margin: -16px 0 0 -9px; border-style: solid; border-width: 16px 0 16px 28px; border-color: transparent transparent transparent #FAF8FC; }
.sv-play:hover::before { background: #351850; }
.sv-play:focus-visible { outline: 3px solid #FAF8FC; outline-offset: -6px; }
.sv-play[hidden] { display: none; }
.sv-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 16px; margin-top: 32px; }
.sv-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 10px 24px; border-radius: 4px; background: #48216B; color: #FAF8FC !important; font-size: 19px; text-decoration: none; }
.sv-btn:hover { background: #351850; }
.sv-btn:focus-visible { outline: 3px solid #48216B; outline-offset: 2px; }
/* Service cards */
.sv-center { text-align: center; }
.sv-intro .sv-motto { margin: 0 0 16px; text-align: center; font-size: 24px; line-height: 1.3; font-weight: 600; }
.sv-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)); gap: 24px; max-width: 1200px; margin: 0 auto; text-align: left; }
.sv-card { padding: 28px 24px; border-radius: 4px; background: #FAF8FC; color: #48216B; font-size: 18px; line-height: 1.45; }
.sv-card h2 { margin: 0 0 12px; font-size: 26px; line-height: 1.2; }
.sv-card h3 { margin: 20px 0 10px; color: #48216B; font-size: 20px; line-height: 1.2; }
.sv-card p { margin: 0; color: #48216B; }
.sv-cards-2 { max-width: 1040px; }
.sv-band .sv-band-tagline { max-width: 860px; margin: 32px auto 0; color: #48216B; font-size: 24px; line-height: 1.3; font-weight: 600; }
