.art-catalog{overflow-wrap:anywhere}
.art-badge{display:inline-flex;padding:.3em .75em;border-radius:999px;background:var(--element-fill);font-weight:700;font-size:.82em}
.art-gradient-text{background:linear-gradient(var(--gradient-angle),var(--gradient-start),var(--gradient-end));color:transparent;background-clip:text}
.art-inline-highlight em{background:linear-gradient(transparent 55%,var(--element-fill) 55%);font-style:inherit}
.art-fluid-text{font-size:clamp(var(--text-min),4vw,var(--text-max));line-height:1.12}
.art-fluid-text p{font-size:inherit}
.art-morph{display:inline-block;padding:.1em .55em;border:var(--outline-width) solid var(--outline-color);border-radius:36% 50% 31% 51% / 48% 45% 53% 36%;transition:border-radius .35s,border-color .35s}
.art-morph:hover,.art-morph:focus-within{border-radius:19% 42% 52% 35% / 28% 50% 36% 50%;border-color:var(--outline-hover)}
.art-reveal-text.is-revealed{animation:art-catalog-reveal .65s ease both}
@keyframes art-catalog-reveal{from{opacity:.15;transform:translateY(.45em);filter:blur(4px)}}
.art-image-collection{margin-block:1em}
.art-clients{display:grid;grid-template-columns:repeat(var(--element-columns),minmax(0,1fr));align-items:center;gap:1.25rem}
.art-clients img{width:100%;height:100px;object-fit:contain}
.art-logo-scroll{display:flex;overflow-x:auto;scroll-snap-type:x proximity}
.art-logo-scroll img{flex:0 0 max(120px,20%);scroll-snap-align:start}
.art-circles{display:flex;align-items:center;padding-left:0}
.art-circles>*{width:min(17vw,94px);aspect-ratio:1;object-fit:cover;border:3px solid white;border-radius:50%;background:#eee}
.art-circles>*+*{margin-left:-.6em}
.art-circles span{display:grid;place-items:center}
.art-cascade{display:grid;grid-template-columns:1fr;place-items:center;padding:5% 0;isolation:isolate}
.art-cascade>span{grid-area:1/1;display:block;width:min(62%,530px);transform:translateX(var(--image-shift)) rotate(var(--image-rotation));box-shadow:0 8px 28px #10101833}
.art-cascade>span:first-child{z-index:4}
.art-cascade>span:nth-child(2){z-index:3}
.art-cascade>span:nth-child(3){z-index:2}
.art-cascade img{display:block;width:100%;height:auto}
.art-comparison{max-width:1000px;margin-inline:auto}
.art-comparison>div{position:relative}
.art-comparison img{display:block;width:100%;height:auto}
.art-comparison>div>span{position:absolute;inset:0;clip-path:inset(0 calc(100% - var(--reveal,50%)) 0 0)}
.art-comparison>div>span img{height:100%;object-fit:cover}
.art-comparison input,.art-native-video,.art-map{width:100%}
.art-hotspots{position:relative;width:fit-content;max-width:100%;margin-inline:auto}
.art-hotspots>img{display:block}
.art-hotspots details{position:absolute;transform:translate(-50%,-50%);z-index:2}
.art-hotspots details[open]{z-index:4}
.art-hotspots summary{display:grid;place-items:center;width:34px;height:34px;border:2px solid white;border-radius:50%;background:var(--accent);color:#fff;font-weight:800;cursor:pointer;list-style:none}
.art-hotspots summary::-webkit-details-marker{display:none}
.art-hotspots details>div{position:absolute;left:50%;bottom:calc(100% + 5px);width:min(190px,65vw);padding:.5em .7em;background:#fff;color:#222;border:1px solid #ddd;box-shadow:0 6px 25px #0002;transform:translateX(-50%)}
.art-content-trail{position:relative;display:grid;place-items:center;min-height:230px;overflow:hidden;background:#f4f1ef}
.art-content-trail>img{max-height:320px;object-fit:contain}
.art-content-trail>.art-trail-copy{position:absolute;width:min(32%,180px);pointer-events:none;animation:art-trail var(--trail-duration,750ms) linear both}
@keyframes art-trail{from{transform:translate(-50%,-50%) scale(.9);opacity:1}to{transform:translate(-50%,-70%) scale(1.05);opacity:0}}
.art-feature-card,.art-flip,.art-price,.art-content-slide,.art-quote{border:1px solid #ddd;border-radius:7px;overflow:hidden}
.art-feature-card>div,.art-flip>div,.art-flip>summary,.art-price,.art-content-slide,.art-quote{padding:1em}
.art-feature-card img{display:block;width:100%;object-fit:cover}
.art-fancy{min-height:var(--card-height,180px)}
.art-team img{aspect-ratio:4/3}
.art-flip summary{background:var(--flip-front);cursor:pointer}
.art-flip summary span{display:block;font-size:.8em}
.art-flip[open]>div{background:var(--flip-back);animation:art-card-turn .32s ease both}
@keyframes art-card-turn{from{opacity:.3;transform:perspective(750px) rotateX(-18deg)}}
.art-food>div,.art-meter{display:flex;align-items:center;gap:1em}
.art-food>div>span{flex:1;border-bottom:1px dotted #aaa}
.art-horizontal-list{display:flex;justify-content:space-between;gap:1.25em;flex-wrap:wrap;padding:.65em 0;border-bottom:1px solid #ddd}
.art-icon-list{list-style:none;padding:0}
.art-icon-list li{display:flex;gap:.6em;align-items:flex-start;margin:.35em 0}
.art-fancy-list li::marker,.art-icon-list li>span{color:var(--accent)}
.art-single-icon{display:inline-block;font-size:var(--icon-size);line-height:1}
.art-single-icon img{width:var(--icon-size);height:auto}
.art-meter label{flex:1}
.art-meter progress{width:100%;display:block;accent-color:var(--meter-color)}
.art-stars{position:relative;display:inline-block;font-size:1.5em;color:#777}
.art-stars::after{content:"★★★★★";position:absolute;inset:0 auto 0 0;width:var(--rating);overflow:hidden;white-space:nowrap;color:var(--star-color)}
.art-milestone strong{font-size:clamp(2em,6vw,4em);line-height:1.15}
.art-video-launch{position:relative;display:block;width:fit-content}
.art-video-launch img{display:block}
.art-video-launch span{display:inline-block;background:#131019;color:#fff;padding:.4em .85em;border-radius:.35em}
.art-video-launch img+span{position:absolute;bottom:10px;left:10px}
.art-video-dialog{width:min(92vw,1080px);padding:42px 0 0;border:0;background:#121117;color:#fff}
.art-video-dialog::backdrop{background:#000a}
.art-video-dialog iframe{display:block;width:100%;border:0;aspect-ratio:16/9}
.art-video-dialog button{position:absolute;top:4px;right:9px}
.art-inline-media img,.art-inline-media video{width:2.1em;height:.95em;object-fit:cover;border-radius:999px;vertical-align:baseline}
.art-map{border:0}
.art-price-table,.art-catalog-loop{display:grid;grid-template-columns:repeat(var(--element-columns,3),minmax(0,1fr));gap:1em}
.art-price.featured{border:2px solid var(--accent)}
.art-price strong{font-size:2em}
.art-chat{display:grid;gap:.5em}
.art-chat-bubble{max-width:min(90%,36em);padding:.65em .85em;border-radius:1.2em;background:#efebf4;justify-self:start}
.art-chat-bubble[data-side=right]{background:#e4f3e9;justify-self:end}
.art-chat-bubble p{margin:0}
.art-page-submenu{display:flex;gap:.75em;flex-wrap:wrap;background:var(--submenu-bg);padding:.65em .9em;z-index:3}
.art-page-submenu a{color:var(--submenu-text)}
.art-page-submenu.sticky{position:sticky;top:var(--header-height,0)}
.art-sticky{display:grid;grid-template-columns:1fr 1fr;gap:1.35em;align-items:start}
.art-sticky-image{position:sticky;top:calc(var(--header-height,0px) + 1em)}
.art-sticky .art-content-slide{margin-bottom:.9em}
.art-quote{margin:0}
.art-quote img{width:3em;height:3em;border-radius:50%;object-fit:cover}
.art-group-carousel .art-gallery-track>*{scroll-snap-align:start}
.art-lottie{max-width:720px;min-height:160px}
@media(max-width:680px){
  .art-clients,.art-price-table,.art-catalog-loop{grid-template-columns:repeat(2,minmax(0,1fr))}
  .art-sticky{grid-template-columns:1fr}.art-sticky-image{position:static}
}
@media(prefers-reduced-motion:reduce){.art-reveal-text,.art-flip[open]>div,.art-trail-copy{animation:none!important}}
.site-brand .oum-fallback-logo{background:#111;border-radius:.2em}
.art-content-trail{background:#f4f1ef url(template-images/textures/grid.png)}
.art-flip[open]>div{background-color:var(--flip-back);background-image:url(template-images/textures/diagonal_line.png)}
.art-quote blockquote{background:url(template-images/icons/quote-2x.png) no-repeat 0 .25em;background-size:16px;padding-left:1.5em}
.art-chat-bubble img{width:30px;height:30px;border-radius:50%;object-fit:cover;margin-right:.5em}
.art-reveal-unit{display:inline-block}
.art-reveal-text.is-revealed:has(.art-reveal-unit){animation:none}
.art-reveal-text.is-revealed .art-reveal-unit{animation:art-catalog-reveal .45s ease both;animation-delay:calc(var(--art-reveal-order) * 24ms)}
@media(prefers-reduced-motion:reduce){.art-reveal-text.is-revealed .art-reveal-unit{animation:none}}
