/* Blueprints glass treatment, with the homepage's shared outer card radius. */
@property --utility-edge-angle{syntax:'<angle>';initial-value:0deg;inherits:false}
.home-utilities{--utility-radius:var(--card-radius,32px);--utility-glass-radius:max(10px,calc(var(--utility-radius) - 12px));--utility-gap:clamp(16px,1.55vw,24px);--utility-inset:clamp(16px,1.4vw,28px)}
.home-utilities-heading{text-align:center;margin:0 auto var(--home-heading-gap,var(--heading-card-gap));max-width:900px}
.home-utilities-title{margin:0;color:var(--ink);font-size:var(--section-title-size);line-height:1.05}
.home-utilities-wordmark{display:flex;align-items:center;gap:clamp(16px,1.4vw,20px);width:clamp(190px,24vw,355px);margin:0 auto}
.home-utilities-wordmark svg{display:block;width:100%;height:auto;overflow:visible}
.home-utilities-wordmark-image{display:block;width:auto;max-width:min(100%,440px);max-height:160px;margin:auto}
.home-utilities-heading>p{margin:var(--title-lead-gap) auto 0;max-width:650px;color:var(--lead-ink);font-size:var(--lead-size);line-height:var(--lead-leading);text-wrap:balance}
.home-utilities-rail{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--utility-gap);min-width:0}
.home-utility-item{min-width:0;height:100%}
.home-utilities .home-utility-card{height:100%;position:relative;display:flex;align-items:flex-end;isolation:isolate;min-width:0;aspect-ratio:4/5;overflow:hidden;padding:var(--utility-inset);border:0;border-radius:var(--utility-radius);background:#26332d;color:#fff;text-decoration:none;box-shadow:none;-webkit-tap-highlight-color:transparent}
.home-utilities .home-utility-card:is(:hover,:focus-visible){opacity:1;filter:none}
.home-utilities .home-utility-card:has(.home-utility-image){background:transparent}
.home-utility-image{position:absolute;inset:-1px;z-index:-2;display:block;width:calc(100% + 2px);height:calc(100% + 2px);max-width:none;object-fit:cover;object-position:var(--utility-image-x,50%) var(--utility-image-y,50%);transition:transform 650ms cubic-bezier(.2,.65,.3,1);-webkit-user-drag:none;user-select:none}
.home-utilities-dots{display:flex;justify-content:center;align-items:center;gap:2px;margin-top:12px}
.home-utilities-dots[hidden]{display:none}
.home-utility-dot{display:grid;place-items:center;width:32px;height:36px;min-height:0;padding:0;border:0;border-radius:99px;background:transparent;box-shadow:none;color:var(--ink);cursor:pointer}
.home-utility-dot::before{content:'';display:block;width:4px;height:4px;border-radius:99px;background:var(--muted);transition:width 220ms ease,background 220ms ease}
.home-utility-dot[aria-current="true"]::before{width:24px;background:var(--ink)}
.home-utility-dot:focus-visible{box-shadow:inset 0 0 0 2px var(--ink)}
.home-utility-glass{--heading-ink:var(--hero-ink);--lead-ink:color-mix(in srgb,var(--hero-ink) 85%,transparent);position:relative;display:flex;flex-direction:column;justify-content:flex-start;width:100%;min-height:clamp(108px,8.5vw,164px);padding:clamp(18px,1.65vw,28px) clamp(15px,1.2vw,24px);border:0;border-radius:var(--utility-glass-radius);background:rgba(17,38,29,.2);-webkit-backdrop-filter:blur(14px) saturate(1.35);backdrop-filter:var(--utility-refraction,blur(14px)) saturate(1.35);box-shadow:inset 1px 1px 0 #ffffff20,0 8px 24px #15291a0c;color:var(--heading-ink)}
.home-utility-glass::after{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;padding:1px;background:conic-gradient(from var(--utility-edge-angle),rgba(255,255,255,.8),rgba(33,33,33,.25) 90deg,rgba(255,255,255,.8) 180deg,rgba(33,33,33,.25) 270deg,rgba(255,255,255,.8));-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:utility-glass-edge 16s linear infinite paused}
.home-utility-glass.is-glass-visible::after{animation-play-state:running}
.home-utility-filter{position:absolute;pointer-events:none;width:0;height:0;overflow:hidden}
.home-utility-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--card-title-copy-gap);margin-bottom:var(--card-title-copy-gap)}
.home-utility-title-row>.dfvn-icon{width:20px;height:20px;flex:0 0 20px;margin-top:3px;color:var(--lead-ink)}
.home-utilities .home-utility-glass h3{margin:0;font-size:var(--card-title-size);font-weight:var(--font-heading);line-height:var(--card-title-leading);letter-spacing:-.025em;text-transform:none;text-wrap:balance;color:var(--heading-ink);overflow-wrap:anywhere}
.home-utility-glass>p{margin:0;font-size:var(--card-copy-size);line-height:var(--copy-leading);color:var(--lead-ink);max-width:34ch;text-wrap:pretty}
.home-utilities .home-utility-glass:focus-visible{outline:2px solid #fff;outline-offset:3px}
@keyframes utility-glass-edge{to{--utility-edge-angle:360deg}}
/* Background scale remains fixed on hover and keyboard focus. */
@media(max-width:1023px){.home-utilities-rail{display:flex;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;padding:0 0 8px}.home-utilities-rail::-webkit-scrollbar{display:none}.home-utilities .home-utility-item{flex:0 0 calc((100% - var(--utility-gap))/1.5);scroll-snap-align:start}.home-utility-glass{min-height:140px}}
@media(max-width:600px){.home-utilities{--utility-gap:12px;--utility-inset:14px}.home-utilities-wordmark{width:min(60%,240px)}.home-utilities .home-utility-item{flex-basis:calc((100% - 12px)/1.1)}.home-utility-glass{min-height:132px;padding:16px}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.home-utility-glass{background:rgba(15,20,20,.77)}}
@supports not ((mask-composite:exclude) or (-webkit-mask-composite:xor)){.home-utility-glass::after{display:none}.home-utility-glass{box-shadow:inset 0 0 0 1px #ffffff80}}
@media(prefers-reduced-motion:reduce){.home-utility-image,.home-utility-dot::before{transition:none}.home-utility-card:is(:hover,:focus-within) .home-utility-image{transform:none}.home-utilities-rail{scroll-behavior:auto}.home-utility-glass::after{animation:none}}

/* The still image remains underneath for reduced motion and playback failures. */
.home-utility-card .home-utility-video{z-index:-1;opacity:0;pointer-events:none;transition:opacity .25s ease}
.home-utility-card .home-utility-video.is-playing{opacity:1}
@media(prefers-reduced-motion:reduce){.home-utility-card .home-utility-video{display:none}}


/* Approved video background and transparent glass. */
.home-utilities--video-glass .home-utility-card::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(180deg,#10152238,#1015228c 35%,#10152280 65%,#10152212)}
.home-utilities--video-glass .home-utility-glass{z-index:2;background:rgba(0,0,0,.2);-webkit-backdrop-filter:blur(7.2px);backdrop-filter:var(--utility-refraction,blur(7.2px));box-shadow:inset 0 0 0 1px #ffffff30}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.home-utilities--video-glass .home-utility-glass{background:rgba(11,18,32,.72)}}
.home-utilities--video-glass .home-utility-glass>p{font-size:clamp(14px,1.08vw,17px);line-height:1.5;max-width:34ch;min-height:6em}

/* Only the glass panel navigates; the decorative background stays inert. */
.home-utilities a.home-utility-glass{text-decoration:none;color:var(--heading-ink);cursor:pointer}
.home-utility-title-row>.dfvn-icon{transition:transform .25s ease}
.home-utility-glass:focus-visible>.home-utility-title-row>.dfvn-icon{transform:translateX(4px)}
.home-utility-glass:focus-visible::after{animation-duration:4s}
@media(hover:hover) and (pointer:fine){.home-utility-glass:hover>.home-utility-title-row>.dfvn-icon{transform:translateX(4px)}.home-utility-glass:hover::after{animation-duration:4s}}
@media(prefers-reduced-motion:reduce){.home-utility-title-row>.dfvn-icon{transition:none}.home-utility-glass:is(:hover,:focus-visible)>.home-utility-title-row>.dfvn-icon{transform:none}.home-utility-glass:is(:hover,:focus-visible)::after{animation:none}}

.home-utilities-wordmark-part{display:block;min-width:0;flex:1}
.home-utilities-wordmark-part--tien{flex:1.131}
.home-utilities-wordmark-part--ich{transform:translateY(-15%)}
