.gm-service-contact { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 20px; }
.gm-service-contact > .gm-kakao-card { display: flex; flex-direction: column; justify-content: center; align-items: stretch; padding: 32px; gap: 28px; }
.gm-service-contact .gm-kakao-card h2 { font-size: 30px; }
.gm-service-contact .gm-kakao-card h2 br { display: block; }
.gm-service-slider { min-width: 0; font-family: "Noto Sans KR", sans-serif; }
.gm-service-window { overflow: hidden; border-radius: 18px; touch-action: pan-y; }
.gm-service-track { display: flex; transition: transform .55s ease; }
.gm-service-slider .gs-card { position: relative; flex: 0 0 100%; box-sizing: border-box; min-width: 0; min-height: 350px; padding: 24px; border: 1px solid var(--edge,#d8f2f7); border-radius: 18px; background: linear-gradient(125deg,#fff,var(--tint,#effcfd)); cursor: pointer; overflow: hidden; display: flex; flex-direction: column; }
.gm-service-slider .gs-sales { --accent:#008d79; --tint:#effcfd; }
.gm-service-slider .gs-ads { --accent:#e52a2a; --tint:#fff3f4; --edge:#fae8ed; }
.gm-service-slider .gs-content { --accent:#d92d1b; --tint:#fff9f1; --edge:#f7eee4; }
.gm-service-slider .gs-channel { --accent:#008b7b; --tint:#effcf9; }
.gm-service-slider .gs-homepage { --accent:#6e19d8; --tint:#f6f3ff; --edge:#e7e1ff; }
.gm-service-slider .gs-diagnosis { --accent:#126dcc; --tint:#eff7ff; }
.gm-service-slider .gs-automation { --accent:#167555; --tint:#f0fbf4; }
.gm-service-slider .gs-index { display:flex; align-items:center; gap:16px; margin-bottom:14px; color:var(--accent); }
.gm-service-slider .gs-index span { font: bold 44px/1 Georgia,serif; }
.gm-service-slider .gs-index small { font-size:10px; letter-spacing:.24em; }
.gm-service-slider .gs-art { position:absolute; right:12px; top:65px; width:37%; height:170px; object-fit:contain; }
.gm-service-slider .gs-card h2 { position:relative; max-width:65%; margin:0 0 14px; color:#080d2b; font-size:24px; line-height:1.35; letter-spacing:-.05em; }
.gm-service-slider .gs-desc { position:relative; max-width:65%; margin:0 0 18px; color:#394a6f; font-size:14px; line-height:1.65; word-break:keep-all; }
.gm-service-slider .gs-tags { display:flex; flex-wrap:wrap; gap:6px; padding:0; margin:auto 0 10px; list-style:none; }
.gm-service-slider .gs-tags li { padding:4px 9px; font-size:11px; border-radius:30px; color:var(--accent); background:var(--tint); }
.gm-service-slider .gs-link { color:var(--accent); font-size:14px; font-weight:800; }
.gm-service-controls { display:flex; align-items:center; justify-content:center; gap:14px; padding-top:8px; font-size:13px; font-variant-numeric:tabular-nums; }
.gm-service-controls button { border:0; border-radius:8px; min-width:44px; min-height:36px; background:#f0eee7; color:#092941; cursor:pointer; font:inherit; padding:8px 12px; }
.gm-service-slider :focus-visible { outline:3px solid #166be5; outline-offset:-3px; }
.gm-service-dialog { padding:0; border:0; border-radius:14px; width:min(calc(100vw - 32px),calc((100dvh - 40px)*1.5)); max-width:none; max-height:calc(100dvh - 32px); background:white; }
.gm-service-dialog::backdrop { background:rgba(3,18,30,.8); backdrop-filter:blur(5px); }
.gm-service-dialog img { display:block; width:100%; height:auto; }
.gm-service-dialog button { position:absolute; top:8px; right:8px; width:40px; height:40px; border:2px solid white; border-radius:50%; background:#092941; color:white; font-size:26px; cursor:pointer; }
@media(max-width:700px) {
 .gm-service-contact { grid-template-columns:minmax(0,1fr); gap:16px; }
 .gm-service-contact > .gm-kakao-card { padding:24px; gap:18px; }
 .gm-service-contact .gm-kakao-card h2 { font-size:26px; }
 .gm-service-slider .gs-card { padding:20px; min-height:365px; }
 .gm-service-slider .gs-card h2 { font-size:21px; }
 .gm-service-slider .gs-art { right:4px; top:90px; width:34%; height:140px; }
 .gm-service-slider .gs-desc { font-size:13px; }
}
@media(prefers-reduced-motion:reduce) { .gm-service-track { transition:none; } }

.gm-service-heading { margin:0 0 14px; font-size:20px; line-height:1.4; color:#092941; }
.gm-proposal-original { display:block; padding:12px; text-align:center; color:#092941; font:700 14px/1.5 "Noto Sans KR",sans-serif; }
.gm-service-dialog { width:min(calc(100vw - 32px),calc((100dvh - 88px)*1.5)); }
.gm-service-contact > .gm-kakao-card { gap:22px; }
