/* Image-led Service Tiles composition, rebuilt for Omnelia. */
.tile-art{position:relative;width:100%;height:250px;overflow:hidden;background:radial-gradient(ellipse at 80% 0,#fff9,transparent 65%),linear-gradient(135deg,#d5c9f2,#a18ac5);isolation:isolate}.tile-art--1{background:radial-gradient(ellipse at 80% 0,#fff9,transparent 65%),linear-gradient(135deg,#c6e9ec,#77a3b4)}.tile-art--2{background:radial-gradient(ellipse at 80% 0,#fff9,transparent 65%),linear-gradient(135deg,#f2d5de,#c596b7)}.tile-art svg{display:block;width:100%;height:100%;transition:transform .65s cubic-bezier(.2,.7,.2,1)}.tile-art-coordinate{position:absolute;right:12px;bottom:10px;font:7px/1 Inter,sans-serif;letter-spacing:.13em;color:#4937529c}.tile-sequence{position:absolute;left:14px;top:14px;background:#ffffffd9;border:1px solid #fff;padding:5px 8px;font-size:11px;color:#352942;z-index:2}.tile-category{font-size:9px;letter-spacing:.07em;color:#786a82;display:flex;align-items:center;gap:7px}.tile-category:before{content:'';width:6px;height:6px;border-radius:50%;background:#af8aff;box-shadow:0 0 0 3px #af8aff18}.tile-tags{display:flex;gap:5px;flex-wrap:wrap}.tile-tags>span{font-size:9px;padding:4px 7px;color:#796884;background:#eee8f3}
.route-main .route-service-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;align-items:stretch}.route-main .route-service-row.service-tile,.route-main .route-service-row.service-tile:nth-child(n){position:relative;display:flex;flex-direction:column;align-items:stretch;gap:18px;padding:0 0 22px;margin:0;min-width:0;min-height:0;background:#fff;border:1px solid #e3dce9;border-radius:clamp(15px,2vw,25px);overflow:hidden;box-shadow:0 6px 20px #21132c06;transition:translate .35s,box-shadow .35s,border-color .35s}.service-tile>.tile-art{height:250px;flex-shrink:0}.service-tile>.tile-category,.service-tile>div:not(.tile-art),.service-tile>.text-link{margin-inline:22px}.route-main .service-tile h3{font-size:26px;line-height:1.15;letter-spacing:-.045em;margin:0 0 12px}.route-main .service-tile p{font-size:14px;line-height:1.7;margin:0;color:#766a7e}.service-tile>.tile-tags{margin-top:auto}.service-tile>.text-link{display:flex;justify-content:space-between;align-items:center;min-height:43px;padding:9px 12px;border:1px solid #d5c7e1;border-radius:2px;font-size:11px;transition:background .25s,color .25s}.service-tile .text-link>span{transition:translate .3s}
.xp-finder-grid{gap:20px}.xp-finder-card{display:flex;flex-direction:column;align-items:stretch;padding:0 0 22px!important;background:#fff!important;border-radius:24px;gap:16px;box-shadow:0 8px 25px #21132c08}.xp-finder-card>.tile-art{height:210px;flex-shrink:0}.xp-finder-card>h3,.xp-finder-card>p,.xp-finder-card>.tile-category,.xp-finder-card>span:not(.xp-spotlight):last-child{margin:0 20px!important}.xp-finder-card h3{font-size:25px}.xp-finder-card>p{max-width:none}.xp-finder-card>span:not(.xp-spotlight):last-child{margin-top:auto!important;border-top:1px solid #e0d5e9;padding-top:10px}.xp-finder-card:after{display:none}.xp-gallery-card>.xp-art{gap:0;padding:0;display:block}.xp-gallery-card .tile-art{height:100%}.xp-gallery-card .xp-art>span:not(.xp-spotlight){position:absolute;left:16px;top:16px;background:#fff9;color:#4e3c5c;padding:6px 9px;font-size:9px}.xp-gallery-card .xp-art:after{display:none}.xp-lightbox-content>.xp-art .tile-art{height:100%}
@media(hover:hover){.service-tile:hover,.xp-finder-card:hover{translate:0 -7px;box-shadow:0 18px 40px #30213b18!important;border-color:#b99ccf}.service-tile:hover .tile-art svg,.xp-finder-card:hover .tile-art svg,.xp-gallery-card:hover .tile-art svg{transform:scale(1.06) translateY(-3px)}.service-tile .text-link:hover{background:#272032;color:#fff}.service-tile .text-link:hover>span{translate:3px -3px}}
.service-tile:focus-within,.xp-finder-card:focus-visible{outline:2px solid #8c60bb;outline-offset:4px}
@media(max-width:1000px){.route-main .route-service-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.route-main .route-service-list{gap:14px 10px}.route-main .route-service-row.service-tile,.route-main .route-service-row.service-tile:nth-child(n){padding:0 0 13px;gap:12px}.service-tile>.tile-art{height:145px}.service-tile>.tile-category,.service-tile>div:not(.tile-art),.service-tile>.text-link{margin-inline:12px}.tile-category{font-size:7px;line-height:1.6;letter-spacing:.02em;gap:5px}.tile-category:before{width:4px;height:4px;flex-shrink:0}.tile-sequence{font-size:8px;top:8px;left:8px;padding:4px 6px}.route-main .service-tile h3{font-size:20px;line-height:1.16;margin:0 0 9px}.route-main .service-tile p{font-size:12px;line-height:1.65}.tile-tags{gap:4px}.tile-tags>span{font-size:7px;padding:3px 5px}.service-tile>.text-link{font-size:10px;min-height:40px;padding:8px;align-self:stretch!important}.tile-art-coordinate{font-size:5px;right:8px;bottom:7px}.xp-finder-grid{gap:14px 10px}.xp-finder-card{padding-bottom:15px!important;gap:12px;min-height:0}.xp-finder-card>.tile-art{height:145px}.xp-finder-card>h3,.xp-finder-card>p,.xp-finder-card>.tile-category,.xp-finder-card>span:not(.xp-spotlight):last-child{margin-inline:12px!important}.xp-finder-card h3{font-size:21px}.xp-finder-card>p{font-size:12px;line-height:1.65}.xp-gallery-card>.xp-art{height:170px;min-height:170px}.xp-gallery-card .xp-art>span:not(.xp-spotlight){font-size:6px;top:8px;left:8px;padding:4px 6px}}
@media(max-width:359px){.service-tile>.tile-art,.xp-finder-card>.tile-art{height:125px}.route-main .service-tile h3,.xp-finder-card h3{font-size:18px}.route-main .service-tile p,.xp-finder-card>p{font-size:11px}}
@media(prefers-reduced-motion:no-preference){.tile-art .tile-orbit{transform-origin:center;animation:tile-orbit 12s ease-in-out infinite alternate}.tile-art .tile-ribbon{animation:tile-hover 7s ease-in-out infinite alternate}.tile-art .tile-sphere{animation:tile-hover 5s ease-in-out -2s infinite alternate}.tile-art .tile-slab-0{animation:tile-hover 6s ease-in-out infinite alternate}.tile-art .tile-slab-2{animation:tile-hover 6s ease-in-out -3s infinite alternate}}
@keyframes tile-hover{from{translate:0 0}to{translate:0 -9px}}@keyframes tile-orbit{from{rotate:-5deg}to{rotate:5deg}}
@media(prefers-reduced-motion:reduce){.tile-art *,.service-tile,.xp-finder-card{animation:none!important;transition:none!important;translate:none!important}}
@media(prefers-reduced-motion:no-preference){.tile-art .tile-orbit,.tile-art .tile-ribbon,.tile-art .tile-sphere,.tile-art .tile-slab{animation-play-state:paused}.tile-art.mobile-art-in-view .tile-orbit,.tile-art.mobile-art-in-view .tile-ribbon,.tile-art.mobile-art-in-view .tile-sphere,.tile-art.mobile-art-in-view .tile-slab{animation-play-state:running}}
.semantic-art,.semantic-art--agents{background:radial-gradient(ellipse at 100% 0,#32434d88,transparent 65%),linear-gradient(145deg,#282134,#111420)}.semantic-art--design,.semantic-art--content{background:linear-gradient(140deg,#41304e,#17131f)}.semantic-art--audio{background:linear-gradient(130deg,#12333e,#221b34)}.semantic-art--search,.semantic-art--web,.semantic-art--booking,.semantic-art--shop{background:linear-gradient(145deg,#baa4d1,#7d6e98)}.semantic-art--strategy,.semantic-art--learn{background:linear-gradient(145deg,#34515c,#242032)}.semantic-art .tile-art-coordinate{color:#c8bbdb9c}.semantic-art svg{transform:none}.semantic-art .semantic-orbit{transform-origin:227px 151px}
@media(prefers-reduced-motion:no-preference){.semantic-art.mobile-art-in-view .semantic-dash{stroke-dasharray:8 7;animation:semantic-travel 4s linear infinite}.semantic-art.mobile-art-in-view .semantic-pulse{animation:mobile-status-glow 2s infinite}.semantic-art.mobile-art-in-view .semantic-wave{transform-box:fill-box;transform-origin:center;animation:semantic-wave 1s ease-in-out infinite alternate;animation-delay:calc(var(--beat)*-.15s)}.semantic-art.mobile-art-in-view .semantic-scrub{animation:semantic-scrub 6s ease-in-out infinite alternate}.semantic-art.mobile-art-in-view .semantic-orbit{animation:semantic-rotate 24s linear infinite}}
@keyframes semantic-travel{to{stroke-dashoffset:-90}}@keyframes semantic-wave{to{scale:1 .4}}@keyframes semantic-scrub{to{translate:110px 0}}@keyframes semantic-rotate{to{rotate:360deg}}

/* Directory cards share one image ratio and keep descriptions readable at each width. */
.route-main .route-service-row.service-tile {
  --directory-gutter: clamp(10px, 1.55vw, 20px);
  gap: clamp(9px, 1.35vw, 16px);
  padding: 0 0 var(--directory-gutter);
}
.route-main .service-tile > .tile-art {
  height: auto;
  aspect-ratio: 3 / 2;
}
.route-main .service-tile > div:not(.tile-art) {
  margin-inline: var(--directory-gutter);
}
.route-main .service-tile h3 {
  margin: 0 0 6px;
  font-weight: 750;
  line-height: 1.18;
}
.route-main .service-card-link:is(:hover,:focus-visible) h3 {
  text-decoration: underline;
  text-underline-offset: .15em;
}
