/* Framed service cards keep the complete 4:3 photograph visible. */
.services{overflow-x:clip}
.js .service-card.reveal,.js .service-card.reveal:nth-child(even){opacity:1;translate:none;transition:none}
.service-card:hover{transform:none}
.js .service-card.reveal .service-picture img{opacity:0;translate:0 14px;transition:opacity 1.1s ease-out,translate 1.1s cubic-bezier(.2,.7,.3,1)}
.js .service-card.reveal.visible .service-picture img{opacity:1;translate:0 0}
@media(prefers-reduced-motion:reduce){.js .service-card.reveal .service-picture img{opacity:1;translate:none;transition:none}}
.service-grid{gap:32px;align-items:stretch}
.service-card,.service-card:nth-child(4n+2),.service-card:nth-child(4n+3){position:relative;background:#820d20 url('assets/aroma-damask-pattern.webp') center top/380px;border:1px solid #ad782e;border-radius:16px;overflow:hidden;box-shadow:0 7px 0 #d8ba83,0 16px 28px #561c1110;display:flex;flex-direction:column}
.service-picture{margin:17px 17px 0;border:5px solid #eac46b;border-radius:9px;transform:none;box-shadow:0 5px 14px #28040a44;overflow:hidden;flex-shrink:0;transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.service-card:nth-child(even) .service-picture{transform:none}
.service-picture img{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;transform:none!important}
.service-picture>span{background:#f5ce71;color:#4b200d;bottom:0;left:0;max-width:100%;font-size:10px;letter-spacing:.8px;border-radius:0 6px 0 0;padding:8px 12px;line-height:1.4}
.service-copy{position:relative;display:flex;flex:1;flex-direction:column;padding:25px 25px 23px;background:linear-gradient(110deg,#820d20 65%,#820d20e8),url('assets/aroma-damask-pattern.webp') right center/250px;border-bottom:0;color:#fff8eb;margin-top:12px}
.service-copy h3{font-size:38px;line-height:1.02;color:#fff6e3;margin:0 0 12px;letter-spacing:-.2px}
.service-copy p{font-size:17px;line-height:1.5;color:#f3ddc9;margin:0 0 24px;min-height:51px;max-width:42ch}
.card-cta{margin-top:auto;display:flex;align-items:center;justify-content:space-between;min-height:50px;padding:11px 16px;border:1px solid #ffe1a2;border-radius:6px;background:#f0c057;color:#341b0a;font-size:15px;font-weight:800;box-shadow:0 3px 0 #4b071b;transition:background .25s,box-shadow .25s}
.card-cta span{font-size:24px;line-height:1;transition:transform .3s}
.service-card:nth-child(even) .service-copy{background:#fff1d9;color:#281c1a}
.service-card:nth-child(even) .service-copy h3{color:#850c20}
.service-card:nth-child(even) .service-copy p{color:#5c4336}
.service-card:nth-child(even) .card-cta{background:#970d25;color:white;border-color:#970d25;box-shadow:0 3px 0 #d5b47b}
@media(hover:hover){.service-card:hover .service-picture{transform:none}.service-card:hover .card-cta span{transform:translateX(4px)}.service-card:hover .card-cta{box-shadow:0 4px 0 #4b071b}}
@media(max-width:600px){.service-grid{gap:28px}.service-card{border-radius:13px;box-shadow:0 5px 0 #d8ba83,0 10px 18px #561c1110}.service-picture{margin:12px 12px 0;border-width:4px;border-radius:7px}.service-picture>span{font-size:8px;padding:6px 9px;letter-spacing:.6px}.service-copy{padding:18px 18px 20px;margin-top:9px}.service-copy h3{font-size:32px;margin-bottom:10px}.service-copy p{font-size:15px;min-height:0;margin-bottom:18px}.card-cta{min-height:47px;font-size:13px;padding:10px 13px}}
@media(prefers-reduced-motion:reduce){.service-picture,.card-cta,.card-cta span{transition:none}.service-card:hover .card-cta span{transform:none}}

