
/* Small, optional movement without hiding content or shifting the layout. */
@media(prefers-reduced-motion:no-preference){
html body #page-container #main-content :is(.ctl-welcome-button,.ctl-service-cta,.ctl-welcome-services article,.ctl-service-choices article,.ctl-service-panels section,.ctl-welcome-photo){
transition:transform .22s ease,box-shadow .22s ease,background-color .22s ease;
}
html body #page-container #main-content .ctl-soft-enter{animation:ctl-soft-enter .55s ease-out both}
html body.home.page-id-12 #page-container #main-content #ctl-welcome-title{animation:ctl-title-enter .55s ease-out both}
@media(hover:hover) and (pointer:fine){
html body #page-container #main-content :is(.ctl-welcome-services article,.ctl-service-choices article,.ctl-service-panels section):hover{transform:translateY(-3px);box-shadow:0 8px 20px #3028480c}
html body #page-container #main-content :is(.ctl-welcome-button,.ctl-service-cta):hover{transform:translateY(-2px);box-shadow:0 5px 14px #32009d18}
html body #page-container #main-content .ctl-welcome-photo:hover{transform:translateY(-2px);box-shadow:0 10px 24px #30284812}
}
}
@keyframes ctl-soft-enter{from{opacity:.82;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes ctl-title-enter{from{opacity:.85;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){
html body #page-container #main-content :is(.ctl-soft-enter,#ctl-welcome-title,.ctl-welcome-button,.ctl-service-cta,.ctl-welcome-services article,.ctl-service-choices article,.ctl-service-panels section,.ctl-welcome-photo){animation:none!important;transition:none!important;transform:none!important}
}

/* Clear expandable sections and gentle interactive feedback. */
html body #page-container #main-content .ctl-service-details>summary{list-style:none;position:relative;padding-right:60px!important}
html body #page-container #main-content .ctl-service-details>summary::-webkit-details-marker{display:none}
html body #page-container #main-content .ctl-service-details>summary::after{content:"+";position:absolute;right:24px;top:50%;transform:translateY(-50%);font:400 24px/1 Inter,Arial,sans-serif;color:currentColor}
html body #page-container #main-content .ctl-service-details[open]>summary::after{content:"−"}
@media(prefers-reduced-motion:no-preference){
html body #page-container #main-content .ctl-service-details[open]>.ctl-service-details-body{animation:ctl-detail-open .28s ease-out}
html body #page-container #main-content :is(.ctl-service-details,.ctl-service-topic-links a){transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}
html body #page-container #main-content :is(.ctl-service-details,.ctl-service-topic-links a):focus-within{box-shadow:0 0 0 3px #d9c6ff50}
@media(hover:hover) and (pointer:fine){
html body #page-container #main-content .ctl-service-details:hover{border-color:#c082b7!important}
html body #page-container #main-content .ctl-service-topic-links a:hover{box-shadow:0 4px 12px #3028480b}
}
}
@keyframes ctl-detail-open{from{opacity:.85;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){
html body #page-container #main-content :is(.ctl-service-details,.ctl-service-topic-links a,.ctl-service-details-body){animation:none!important;transition:none!important}
}

/* Contact: quiet motion and clear, tactile contact options. */
html body.page-id-59 #page-container #main-content .ctl-contact-simple h1::after{content:"";display:block;width:88px;height:3px;margin-top:22px;border-radius:3px;background:linear-gradient(90deg,#d9c6ff,#c082b7,#32009d)}
html body.page-id-59 #page-container #main-content .ctl-contact-alternatives{gap:16px}
html body.page-id-59 #page-container #main-content .ctl-contact-alternatives a{display:inline-flex;gap:12px;align-items:center;padding:12px 18px;border:1px solid #e3dced;border-radius:10px;background:#faf9fc;text-decoration:none;box-sizing:border-box;min-width:0}
html body.page-id-59 #page-container #main-content .ctl-contact-alternatives a::before{content:"✉";display:inline-flex;align-items:center;justify-content:center;flex:0 0 34px;width:34px;height:34px;border-radius:8px;background:#f1edf8;color:#32009d;font:22px/1 Arial,sans-serif}
html body.page-id-59 #page-container #main-content .ctl-contact-alternatives a[href^="tel:"]::before{content:"☎"}
html body.page-id-59 #page-container #main-content .ctl-contact-followup{padding:24px;border-left:3px solid #d9c6ff;border-radius:0 10px 10px 0;background:#faf9fc;box-sizing:border-box}
html body.page-id-59 #page-container #main-content #ctl-contact-form-area #et_pb_contact_form_0:focus-within{border-color:#bda4e8!important;box-shadow:0 0 0 3px #d9c6ff35!important}
@media(prefers-reduced-motion:no-preference){
html body.page-id-59 #page-container #main-content .ctl-contact-simple h1{animation:ctl-title-enter .6s ease-out both}
html body.page-id-59 #page-container #main-content .ctl-contact-simple h1::after{transform-origin:left center;animation:ctl-contact-line .7s ease-out both}
html body.page-id-59 #page-container #main-content .ctl-contact-alternatives a{transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
html body.page-id-59 #page-container #main-content #ctl-contact-form-area #et_pb_contact_form_0{transition:border-color .2s ease,box-shadow .2s ease}
html body.page-id-59 #page-container #main-content .et_pb_contact_submit{transition:transform .2s ease,background-color .2s ease,box-shadow .2s ease!important}
@media(hover:hover) and (pointer:fine){
html body.page-id-59 #page-container #main-content .ctl-contact-alternatives a:hover{transform:translateY(-3px);border-color:#c082b7;box-shadow:0 6px 16px #3028480c}
html body.page-id-59 #page-container #main-content #ctl-contact-form-area .et_pb_contact_submit:hover{transform:translateY(-2px)!important;box-shadow:0 5px 14px #32009d20!important}
}
}
@keyframes ctl-contact-line{from{transform:scaleX(.5);opacity:.7}to{transform:scaleX(1);opacity:1}}
@media(max-width:767px){html body.page-id-59 #page-container #main-content .ctl-contact-alternatives{align-items:stretch}html body.page-id-59 #page-container #main-content .ctl-contact-alternatives a{padding:12px;font-size:clamp(12px,3.6vw,16px);gap:8px}html body.page-id-59 #page-container #main-content .ctl-contact-followup{padding:20px}}
@media(prefers-reduced-motion:reduce){html body.page-id-59 #page-container #main-content :is(.ctl-contact-simple h1,.ctl-contact-simple h1::after,.ctl-contact-alternatives a,.et_pb_contact_submit){animation:none!important;transition:none!important;transform:none!important}}
