/* Scoped styles: do not reuse old Elementor .pas-service-card selectors. */
.pas-svc{--svc-bg:#282d32;--svc-accent:#c6a47e;--svc-button:#34393f;--svc-muted:#d0d4d7;font-family:inherit}
.pas-svc,.pas-svc *{box-sizing:border-box}
.pas-svc-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;width:100%;margin:0;padding:30px 0 0}
.pas-svc-cols-1{grid-template-columns:1fr;padding-top:0}
.pas-svc-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.pas-svc-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.pas-svc .pas-svc-card{min-width:0;margin:0;background:var(--svc-bg)}
.pas-svc-cards:not(.pas-svc-cols-1)>.pas-svc-card:nth-child(even){transform:translateY(-30px)}
.pas-svc .pas-svc-link{position:relative;isolation:isolate;display:flex;align-items:flex-end;min-height:460px;height:100%;overflow:hidden;padding:30px;color:#fff;background:var(--svc-bg);text-decoration:none;box-shadow:none}
.pas-svc .pas-svc-image{position:absolute;inset:0;z-index:-3;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;transition:transform .9s cubic-bezier(.22,1,.36,1)}
.pas-svc .pas-svc-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(180deg,rgba(40,45,50,.14) 0%,rgba(40,45,50,.42) 35%,rgba(40,45,50,.94) 100%);pointer-events:none}
.pas-svc .pas-svc-overlay{position:absolute;inset:0;z-index:-1;background:rgba(40,45,50,.78);transform:scaleX(0);transform-origin:left;transition:transform .9s cubic-bezier(.22,1,.36,1);pointer-events:none}
.pas-svc .pas-svc-label{position:absolute;top:24px;left:22px;writing-mode:vertical-rl;transform:rotate(180deg);max-height:180px;overflow:hidden;font-size:12px;font-weight:700;letter-spacing:.12em;color:#fff}
.pas-svc .pas-svc-copy{position:relative;min-width:0;width:100%;padding-top:180px}
.pas-svc .pas-svc-copy h3{font-size:23px;font-weight:700;line-height:1.3;color:#fff;margin:0 0 14px;overflow-wrap:anywhere}
.pas-svc .pas-svc-copy h3::before{content:"";display:block;width:34px;height:2px;margin-bottom:16px;background:var(--svc-accent)}
.pas-svc .pas-svc-copy p{font-size:15px;line-height:1.65;color:#fff;margin:0 0 16px;overflow-wrap:anywhere}
.pas-svc .pas-svc-more{color:var(--svc-accent);font-size:13px;font-weight:600}
.pas-svc a:focus-visible{outline:3px solid var(--svc-accent);outline-offset:-3px}
.pas-svc .pas-svc-link:focus-visible .pas-svc-overlay{transform:scaleX(1)}
.pas-svc-detail{color:var(--svc-muted);line-height:1.75}
.pas-svc .pas-svc-section,.pas-svc .pas-svc-cta{margin-top:36px}
.pas-svc .pas-svc-section h2,.pas-svc .pas-svc-cta h2{font-size:clamp(23px,2.5vw,30px);line-height:1.3;color:var(--svc-accent);margin:0 0 16px}
.pas-svc .pas-svc-section ul{padding-left:22px;margin:0}
.pas-svc .pas-svc-section li{margin-bottom:8px;overflow-wrap:anywhere}
.pas-svc .pas-svc-cta{background:var(--svc-bg);padding:28px;border:1px solid rgba(198,164,126,.3)}
.pas-svc .pas-svc-cta p{color:var(--svc-muted)}
.pas-svc .pas-svc-button{display:inline-block;background:var(--svc-button);color:var(--svc-accent);border:1px solid var(--svc-accent);padding:12px 20px;min-height:44px;border-radius:6px;text-decoration:none;font-weight:600;transition:background-color .2s,color .2s}
@media(hover:hover) and (pointer:fine){.pas-svc .pas-svc-link:hover .pas-svc-overlay{transform:scaleX(1)}.pas-svc .pas-svc-link:hover .pas-svc-image{transform:scale(1.035)}.pas-svc .pas-svc-button:hover{background:var(--svc-accent);color:var(--svc-bg)}}
@media(hover:none){.pas-svc .pas-svc-overlay{transform:none;background:rgba(40,45,50,.24)}}
@media(max-width:1024px){.pas-svc-cards:not(.pas-svc-cols-1){grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.pas-svc-cards{padding-top:0}.pas-svc-cards:not(.pas-svc-cols-1)>.pas-svc-card:nth-child(even){transform:none}}
@media(max-width:600px){.pas-svc-cards:not(.pas-svc-cols-1){grid-template-columns:1fr;gap:20px}.pas-svc .pas-svc-link{min-height:380px;padding:24px}.pas-svc .pas-svc-copy{padding-top:150px}}
@media(prefers-reduced-motion:reduce){.pas-svc *{transition:none!important;animation:none!important}}
/* Mobile entry animation starts on intersection, never hides waiting cards. */
@media(max-width:600px) and (prefers-reduced-motion:no-preference){
    .pas-svc .pas-svc-card.pas-svc-revealing{animation:pas-svc-enter 1s cubic-bezier(.22,1,.36,1)}
    .pas-svc .pas-svc-revealing .pas-svc-image{animation:pas-svc-photo 1s cubic-bezier(.22,1,.36,1)}
}
@keyframes pas-svc-enter{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@keyframes pas-svc-photo{from{filter:grayscale(.6);transform:scale(1.04)}to{filter:grayscale(0);transform:scale(1)}}
