/* SGM: interactive services preview (homepages only) */
body.brand-refined .sgm-services{overflow:visible;isolation:isolate;position:relative;padding-block:clamp(65px,7vw,104px);background:var(--section-bg)}
body.brand-refined .sgm-services::before{content:'' !important;position:absolute;inset:0;background:radial-gradient(ellipse at 92% 7%,rgba(var(--accent-rgb),.13),transparent 45%),radial-gradient(ellipse at 5% 95%,rgba(82,128,250,.07),transparent 48%);opacity:1!important;z-index:0!important;pointer-events:none}
.sgm-services>.container{position:relative;z-index:1}
.sgm-services .split-heading{margin-bottom:30px}
.sgm-services .split-heading p{max-width:350px}
.sgm-popup-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;align-items:stretch}
.sgm-popup-grid>*{min-width:0}
.sgm-teaser{--tile-color:#ff647c;position:relative;isolation:isolate;display:flex;flex-direction:column;align-items:flex-start;min-height:252px;width:100%;padding:24px 22px 22px;background:linear-gradient(135deg,color-mix(in srgb,var(--tile-color) 17%,var(--panel)) 0%,var(--panel) 67%);color:var(--text);border:1px solid color-mix(in srgb,var(--tile-color) 43%,var(--line));border-radius:22px;text-align:left;box-shadow:0 18px 45px rgba(0,0,0,.12);overflow:hidden;cursor:pointer;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s,border-color .35s,background .35s}
.sgm-teaser::before{content:'';position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,var(--tile-color),transparent 86%);transition:height .35s,opacity .35s}
.sgm-teaser::after{content:'';position:absolute;right:-55px;top:-45px;width:190px;height:190px;border:1px solid color-mix(in srgb,var(--tile-color) 42%,transparent);border-radius:50%;box-shadow:0 0 0 28px color-mix(in srgb,var(--tile-color) 7%,transparent),0 0 0 56px color-mix(in srgb,var(--tile-color) 4%,transparent);pointer-events:none;transition:transform .65s ease}
.sgm-teaser:hover,.sgm-teaser:focus-visible{transform:translateY(-7px);border-color:var(--tile-color);box-shadow:0 22px 52px color-mix(in srgb,var(--tile-color) 19%,transparent)}
.sgm-teaser:hover::before,.sgm-teaser:focus-visible::before{height:6px}
.sgm-teaser:hover::after{transform:scale(1.14) translate(-8px,8px)}
.sgm-teaser:focus-visible,.sgm-dialog-close:focus-visible,.sgm-modal-actions a:focus-visible{outline:3px solid var(--tile-color,var(--accent));outline-offset:4px}
.sgm-teaser-symbol{font-size:1.45rem;position:relative;z-index:1;display:grid;place-items:center;width:50px;height:50px;background:color-mix(in srgb,var(--tile-color) 18%,var(--panel));border:1px solid color-mix(in srgb,var(--tile-color) 55%,transparent);border-radius:14px;color:var(--tile-color);margin-bottom:18px;transition:transform .3s}
.sgm-teaser:hover .sgm-teaser-symbol{transform:rotate(-8deg) scale(1.07)}
.sgm-teaser-label{position:relative;z-index:1;display:block;color:var(--tile-color);font-weight:850;letter-spacing:.14em;text-transform:uppercase;font-size:.64rem;margin-bottom:7px}
.sgm-teaser-title{position:relative;z-index:1;display:block;font-size:clamp(1.08rem,1.22vw,1.33rem);font-weight:850;line-height:1.2;letter-spacing:-.035em;margin-bottom:12px;max-width:270px}
.sgm-teaser-hint{position:relative;z-index:1;display:block;color:var(--muted);font-size:.84rem;line-height:1.45;margin-bottom:22px}
.sgm-teaser-action{position:relative;z-index:1;margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;font-weight:800;font-size:.82rem;border-top:1px solid var(--line);padding-top:13px;color:var(--text)}
.sgm-teaser-action i{font-style:normal;color:var(--tile-color);font-size:1.35rem;transition:transform .3s ease}
.sgm-teaser:hover .sgm-teaser-action i{transform:translate(4px,-3px)}
.sgm-popup-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;margin-top:27px;padding-top:18px;border-top:1px solid var(--line);color:var(--muted);font-size:.9rem}
.sgm-popup-footer a{color:var(--text);font-weight:850;border-bottom:1px solid var(--accent);transition:color .2s}
.sgm-popup-footer a:hover{color:var(--accent)}
.sgm-popup-dialog{--modal-color:var(--accent);position:fixed;inset:0;margin:auto;width:min(590px,calc(100vw - 28px));max-height:min(780px,calc(100dvh - 30px));padding:0;background:var(--panel);color:var(--text);border:1px solid color-mix(in srgb,var(--modal-color) 44%,var(--line));border-radius:25px;box-shadow:0 35px 125px rgba(0,0,0,.65);overflow:auto;overscroll-behavior:contain}
.sgm-popup-dialog:not([open]){display:none}
.sgm-popup-dialog::backdrop{background:rgba(5,7,15,.79);backdrop-filter:blur(9px)}
.sgm-popup-dialog[open]{animation:sgmModalIn .26s ease both}
.sgm-dialog-accent{height:6px;background:linear-gradient(90deg,var(--modal-color),color-mix(in srgb,var(--modal-color) 28%,var(--panel)))}
.sgm-dialog-inner{padding:clamp(24px,4vw,38px)}
.sgm-dialog-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}
.sgm-dialog-eyebrow{text-transform:uppercase;letter-spacing:.15em;font-weight:850;font-size:.7rem;color:var(--modal-color)}
.sgm-dialog-close{font-weight:900;display:grid;place-items:center;flex:none;width:41px;height:41px;background:var(--soft);color:var(--text);border:1px solid var(--line);border-radius:50%;font-size:1.25rem;transition:transform .25s,background .25s}
.sgm-dialog-close:hover{transform:rotate(90deg);background:color-mix(in srgb,var(--modal-color) 24%,var(--soft))}
.sgm-dialog-title{font-size:clamp(1.65rem,4vw,2.6rem);line-height:1.12;letter-spacing:-.04em;margin:0 0 16px;color:var(--text)}
.sgm-dialog-copy{line-height:1.7;font-size:1.01rem;color:var(--muted);margin:0 0 20px}
.sgm-dialog-points{margin:0 0 25px;padding:18px 22px 18px 36px;background:color-mix(in srgb,var(--modal-color) 8%,var(--soft));border:1px solid color-mix(in srgb,var(--modal-color) 25%,var(--line));border-radius:14px}
.sgm-dialog-points li{padding:5px 0;line-height:1.55;color:var(--text)}
.sgm-dialog-points li::marker{color:var(--modal-color)}
.sgm-modal-actions{display:flex;flex-wrap:wrap;gap:9px}
.sgm-modal-actions a{display:inline-flex;justify-content:center;align-items:center;gap:5px;border:1px solid var(--line);border-radius:30px;padding:12px 17px;color:var(--text);font-weight:800;font-size:.86rem;text-align:center;transition:transform .2s,background .2s}
.sgm-modal-actions a:first-child{border-color:transparent;background:var(--modal-color);color:#101219}
.sgm-modal-actions a:hover{transform:translateY(-3px);background:color-mix(in srgb,var(--modal-color) 23%,var(--soft))}
.sgm-modal-actions a:first-child:hover{background:var(--modal-color);filter:brightness(1.11)}
.theme-v2 .sgm-teaser{background:linear-gradient(130deg,color-mix(in srgb,var(--tile-color) 13%,#fff),#fff 73%);box-shadow:0 16px 38px rgba(41,39,37,.06)}
.theme-v2 .sgm-teaser-action{color:#192332}
.theme-v2 .sgm-popup-dialog{background:#fff}
.theme-v2 .sgm-popup-dialog::backdrop{background:rgba(15,23,34,.69)}
@keyframes sgmModalIn{from{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}
@media (max-width:1080px){.sgm-popup-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:760px){.sgm-popup-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.sgm-teaser{min-height:235px;padding:20px 17px}.sgm-services .split-heading p{max-width:520px}}
@media (max-width:475px){.sgm-popup-grid{grid-template-columns:1fr}.sgm-teaser{min-height:190px;padding:21px}.sgm-teaser-hint{margin-bottom:15px}.sgm-modal-actions a{flex:1 1 100%}.sgm-popup-footer{align-items:flex-start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){.sgm-teaser,.sgm-teaser::after,.sgm-teaser-symbol,.sgm-teaser-action i,.sgm-popup-dialog[open],.sgm-dialog-close,.sgm-modal-actions a{animation:none!important;transition:none!important}}
