.floating-contact{position:fixed;z-index:10;left:24px;bottom:23px;display:flex;gap:8px}.floating-action{display:flex;align-items:center;gap:7px;color:#fff;border-radius:24px;padding:11px 14px;font-size:11px;font-weight:700;box-shadow:0 8px 22px #1e49343b;transition:transform .2s,filter .2s}.floating-action:hover{transform:translateY(-3px);filter:brightness(.94)}.floating-action svg{width:16px;height:16px}.call-action{background:var(--coral)}.whatsapp-action{background:#2ca86b}@media(max-width:430px){.floating-contact{left:16px;bottom:16px}.floating-action{padding:10px 12px;font-size:10px}.floating-action svg{width:15px;height:15px}}
.hero-image{background-image:url('https://images.unsplash.com/photo-1556911220-e15b29be8c8f?auto=format&fit=crop&w=1800&q=85')}
.hero-content{position:relative;min-height:580px;display:flex;flex-direction:column;justify-content:center;padding:85px 0 50px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:28px}
.hero-meta{position:static !important;bottom:auto !important;left:auto !important;display:flex;align-items:center;gap:16px;margin-top:12px;z-index:3}
.service-card{display:flex;flex-direction:column;padding:24px 22px 24px}.service-card.service-feature{background:transparent;color:var(--ink)}.service-card.service-feature p{color:var(--muted)}.service-card.service-feature li{color:#657069;border-color:var(--line)}.service-card:hover{background:var(--ink);color:#fff}.service-card:hover p{color:#aebbb2}.service-card:hover li{color:#bdc9c0;border-color:#53625a}.service-card:hover .service-icon,.service-card:hover .text-link{color:var(--coral)}.text-link{position:static;margin-top:auto;padding-top:20px}
.service-image-box{position:relative;width:100%;height:185px;overflow:hidden;border-radius:6px;margin-bottom:18px;background:#17201d}
.service-image-box img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease,filter .5s ease;filter:brightness(0.95) contrast(1.02)}
.service-card:hover .service-image-box img{transform:scale(1.08);filter:brightness(1.03) contrast(1.05)}
.service-image-box .service-number{position:absolute;top:10px;right:10px;background:rgba(23,32,29,0.85);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:var(--coral);font-family:var(--display);font-weight:700;font-size:12px;padding:3px 9px;border-radius:4px;border:1px solid rgba(255,255,255,0.15);z-index:2}
.service-content{display:flex;flex-direction:column;flex-grow:1}
.service-card .service-icon{margin:0 0 14px}
.locations{background:var(--cream)}
.locations-grid{display:flex;flex-wrap:wrap;gap:12px}
.location-tag{display:inline-flex;align-items:center;gap:7px;background:var(--paper);border:1px solid var(--line);border-radius:30px;padding:11px 20px 11px 14px;font-size:13px;font-weight:600;color:var(--ink);transition:all .3s ease;cursor:default}
.location-tag svg{width:15px;height:15px;color:var(--coral);flex-shrink:0}
.location-tag:hover{background:var(--ink);color:#fff;border-color:var(--ink);transform:translateY(-3px);box-shadow:0 6px 18px rgba(23,32,29,0.15)}
.location-tag:hover svg{color:#f3b39f}
@media(max-width:800px){.locations-grid{gap:8px}.location-tag{padding:9px 15px 9px 11px;font-size:12px}}
.slide-copy-in{animation:slide-copy-in .7s ease both}.service-card .service-icon{animation:service-float 3.8s ease-in-out infinite}.service-card:nth-child(2) .service-icon,.process-step:nth-child(2)>svg{animation-delay:.35s}.service-card:nth-child(3) .service-icon,.process-step:nth-child(3)>svg{animation-delay:.7s}.service-card:nth-child(4) .service-icon,.process-step:nth-child(4)>svg{animation-delay:1.05s}.service-card:nth-child(n+4){animation-delay:.12s}.process-step{transition:transform .35s ease,background .35s ease}.process-step:hover{transform:translateY(-7px)}.process-step:hover>svg{transform:rotate(-8deg) scale(1.12)}.process-step>svg{transition:transform .35s ease}.contact-details a,.contact-details>div{transition:transform .25s ease}.contact-details a:hover,.contact-details>div:hover{transform:translateX(6px)}@keyframes slide-copy-in{from{opacity:.15;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes service-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}
