.service-ad-icon{display:block;width:40px;height:40px;flex:0 0 40px;object-fit:contain}
.detail-card{position:relative;isolation:isolate;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}
.detail-card:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;border-radius:10px;background:linear-gradient(125deg,color-mix(in srgb,var(--accent) 7%,transparent),transparent 80%);opacity:0;transition:opacity .22s ease}
.detail-card h3{transition:color .22s ease}
.detail-card.is-detail-active,.detail-card:has(.detail-trigger:focus-visible){border-color:var(--accent)}
.detail-card.is-detail-active:before,.detail-card:has(.detail-trigger:focus-visible):before{opacity:1}
.detail-card.is-detail-active h3,.detail-card:has(.detail-trigger:focus-visible) h3{color:var(--accent)}
.detail-trigger{display:grid;place-items:center;position:absolute;width:44px;height:44px;border-radius:10px;background:transparent;color:var(--muted);transition:color .2s,background .2s;z-index:2}
.detail-trigger>span{display:grid;place-items:center;width:24px;height:24px;border:1px solid var(--line);border-radius:8px;font:18px/1 'Segoe UI',Arial,sans-serif;transition:border-color .2s,transform .2s}
.detail-trigger[aria-expanded=true],.detail-trigger:hover{color:var(--accent)}
.detail-trigger[aria-expanded=true]>span{border-color:var(--accent);transform:rotate(45deg)}
.services-grid .detail-card h3{padding-right:42px}
.services-grid .detail-trigger{right:-4px;top:18px}
.promotion-channel.detail-card .channel-top{padding-right:42px}
.promotion-channel.detail-card .detail-trigger{right:13px;top:16px}
.promotion-channel.detail-card:hover{background:transparent}
.promotion-grid:has(.detail-card){overflow:visible}
.approach-steps .detail-card h3{padding-right:30px;line-height:1.3}
.approach-steps .detail-trigger{right:1px;top:15px}
.approach-closing>p{max-width:850px}
.card-detail-popover{position:fixed;z-index:70;width:min(340px,calc(100vw - 28px));max-height:calc(100dvh - 28px);overflow:auto;overscroll-behavior:contain;border:1px solid var(--line);border-radius:17px;padding:21px 22px;background:var(--surface);box-shadow:0 16px 50px #0003,0 0 24px color-mix(in srgb,var(--accent) 7%,transparent);opacity:0;visibility:hidden;transform:translateY(5px);transition:opacity .16s ease,transform .16s ease,visibility .16s;pointer-events:none}
.card-detail-popover.is-open{opacity:1;visibility:visible;transform:none;pointer-events:auto}
.card-detail-popover .detail-kicker{display:block;font:9px/1.5 ui-monospace,Consolas,monospace;letter-spacing:.12em;color:var(--accent);padding-right:34px;margin-bottom:11px}
.card-detail-popover h3{font-size:20px;line-height:1.3;letter-spacing:-.025em;margin:0 22px 12px 0}
.card-detail-popover p{font-size:14px;line-height:1.8;color:var(--muted)}
.detail-close{position:absolute;right:7px;top:7px;width:44px;height:44px;display:grid;place-items:center;border-radius:10px;background:transparent;color:var(--muted);font:24px/1 'Segoe UI',Arial,sans-serif;transition:color .2s,background .2s}
.detail-close:hover{color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent)}
@media(hover:hover) and (pointer:fine){
 .detail-card:hover{border-color:var(--accent)}.detail-card:hover:before{opacity:1}.detail-card:hover h3{color:var(--accent)}
 .services-grid .detail-card:hover,.approach-steps .detail-card:hover{transform:translateY(-2px)}
 .detail-card:hover .detail-trigger{color:var(--accent)}
}
@media(max-width:900px){.approach-steps .detail-card h3{padding-right:34px}.promotion-channel.detail-card .detail-trigger{right:16px;top:14px}}
@media(max-width:640px){.services-grid .detail-trigger{top:16px;right:-3px}.services-grid .detail-card h3{padding-right:40px}.promotion-channel.detail-card .detail-trigger{right:6px;top:10px}.promotion-channel.detail-card .channel-top{padding-right:34px}.approach-steps .detail-card h3{padding-right:14px}.approach-steps .detail-trigger{top:10px;right:0}.card-detail-popover{padding:20px}.card-detail-popover p{font-size:15px;line-height:1.75}.service-ad-icon{width:38px;height:38px;flex-basis:38px}}
@media(max-width:380px){.approach-steps .detail-card h3{padding-right:38px}.approach-steps .detail-trigger{top:13px}}
@media(prefers-reduced-motion:reduce){.detail-card,.detail-card:before,.detail-card h3,.detail-trigger,.detail-trigger>span,.card-detail-popover{transition:none}.services-grid .detail-card:hover,.approach-steps .detail-card:hover{transform:none}}

