/* Shared visual polish for Kingdom Chorus genre pages. Content stays in the HTML. */
body.service-page{--halo-rgb:223 177 125;--soft-accent:#f2cfa9}
body.service-ccm{--halo-rgb:242 151 128;--soft-accent:#ffd0ba}
body.service-country{--halo-rgb:245 178 98;--soft-accent:#ffd39f}
body.service-folk{--halo-rgb:226 161 105;--soft-accent:#f6ceb0}
body.service-gospel{--halo-rgb:244 184 106;--soft-accent:#f7d7a8}
body.service-choir{--halo-rgb:171 162 235;--soft-accent:#d5d0ff}
body.service-worship{--halo-rgb:127 184 237;--soft-accent:#bddcf8}

.service-page .hero::after{content:"";position:absolute;z-index:-1;inset:-16%;pointer-events:none;background:radial-gradient(ellipse at 78% 35%,rgb(var(--halo-rgb)/.27),transparent 30%),radial-gradient(ellipse at 24% 91%,rgb(var(--halo-rgb)/.11),transparent 42%);opacity:.7;animation:kc-light-drift 13s ease-in-out infinite alternate}
.service-page .hero-copy{animation:kc-hero-enter .85s cubic-bezier(.2,.8,.2,1) both}
.service-page .hero-note{border-left-width:2px}
.service-page .hero h1 em{color:var(--soft-accent)}
.service-page .hero .button-gold{position:relative;overflow:hidden;background:linear-gradient(115deg,var(--gold),var(--soft-accent));box-shadow:0 15px 38px rgb(var(--halo-rgb)/.18),0 10px 28px #0004}
.service-page .hero .button-gold::before{content:"";position:absolute;top:-45%;bottom:-45%;left:-55%;width:25%;background:linear-gradient(90deg,transparent,#fff7,transparent);transform:skewX(-24deg) translateX(-250%);animation:kc-button-light 8s ease-in-out infinite;pointer-events:none}
.service-page .button{border-radius:14px}
.service-page .button:hover{transform:translateY(-2px)}
.service-page .nav-contact{border-radius:999px;transition:background .25s ease,box-shadow .25s ease}
.service-page .nav-contact:hover{background:#ffffff16;box-shadow:0 0 0 4px #ffffff10}
.service-page .text-button{transition:color .25s ease,border-color .25s ease}
.service-page .text-button:hover{color:var(--soft-accent);border-color:var(--soft-accent)}

.service-page .intro{background:radial-gradient(ellipse at 95% 10%,rgb(var(--halo-rgb)/.10),transparent 42%),var(--paper)}
.service-page .fit-pills span{border:1px solid rgb(var(--halo-rgb)/.20);border-radius:999px}
.service-page .work{background:radial-gradient(ellipse at 3% 6%,rgb(var(--halo-rgb)/.13),transparent 35%),#edf1f0}
.service-page .steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;border:0}
.service-page .step{display:block;min-width:0;min-height:265px;padding:29px;border:1px solid #cdd6d2;border-radius:19px;background:#ffffffdf;box-shadow:0 18px 42px #162c2710;transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease}
.service-page .step:hover{transform:translateY(-5px);border-color:rgb(var(--halo-rgb)/.58);box-shadow:0 23px 45px #162c2720}
.service-page .step-number{display:inline-grid;place-items:center;width:42px;height:42px;padding:0;border:1px solid rgb(var(--halo-rgb)/.40);border-radius:50%;background:rgb(var(--halo-rgb)/.11);color:var(--ink);font:700 12px var(--sans)}
.service-page .step h3{margin:23px 0 11px}
.service-page .step p{line-height:1.68}
.service-page .process-link{margin-top:30px}

.service-page .feature{background:radial-gradient(ellipse at 84% 16%,rgb(var(--halo-rgb)/.15),transparent 39%),linear-gradient(135deg,var(--navy2),var(--navy))}
.service-page .feature-card{border-radius:22px;box-shadow:0 28px 62px #0003}
.service-page .eric{background:radial-gradient(ellipse at 90% 90%,rgb(var(--halo-rgb)/.11),transparent 42%),#f4f0e8}
.service-page .eric-grid img{border-radius:18px;box-shadow:18px 18px 0 rgb(var(--halo-rgb)/.15)}
.service-page .artist-card{border-radius:18px;box-shadow:0 18px 35px #15242a20;transition:transform .3s ease,box-shadow .3s ease}
.service-page .artist-card:hover{transform:translateY(-4px);box-shadow:0 25px 42px #15242a30}
.service-page .faq-list details[open]{border-radius:12px;background:rgb(var(--halo-rgb)/.07)}
.service-page .closing{background:radial-gradient(ellipse at 50% 0%,rgb(var(--halo-rgb)/.16),transparent 50%),#0c2232}
.service-page .contact-dialog{border-radius:20px;overflow:auto}
.service-page .contact-fields input,.service-page .contact-fields textarea{border-radius:9px}

@keyframes kc-light-drift{from{transform:translate3d(-1.5%,1%,0) scale(1);opacity:.56}to{transform:translate3d(1.5%,-1%,0) scale(1.04);opacity:.9}}
@keyframes kc-hero-enter{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@keyframes kc-button-light{0%,68%{transform:skewX(-24deg) translateX(-250%)}83%,100%{transform:skewX(-24deg) translateX(850%)}}

@media(max-width:940px){.service-page .steps{grid-template-columns:1fr}.service-page .step{min-height:0}}
@media(max-width:640px){.service-page .hero::after{inset:-10%;background:radial-gradient(ellipse at 75% 28%,rgb(var(--halo-rgb)/.18),transparent 45%)}.service-page .hero .button-gold{min-height:58px}.service-page .step{padding:24px}.service-page .step h3{margin:16px 0 8px}.service-page .feature-card{border-radius:18px}.service-page .eric-grid img{box-shadow:11px 11px 0 rgb(var(--halo-rgb)/.15)}}
@media(hover:none){.service-page .step:hover,.service-page .artist-card:hover,.service-page .button:hover{transform:none}}
@media(prefers-reduced-motion:reduce){.service-page .hero::after,.service-page .hero-copy,.service-page .hero .button-gold::before{animation:none}.service-page .step,.service-page .artist-card{transition:none}}
