/* DentaVista — dc-usp-deck widget styles */
.dv-deck { background: var(--dv-white); }
                .dv-deck__blob--a { width: 460px; height: 460px; top: -160px; right: -120px; background: rgba(91, 182, 223,.14); }
                .dv-deck__blob--b { width: 380px; height: 380px; bottom: -160px; left: -120px; background: rgba(31, 42, 51,.06); }
                .dv-deck__inner { position: relative; z-index: 1; }

                .dv-deck__head { text-align: center; margin-bottom: clamp(18px, 4vw, 38px); }
                /* Inherits hero title style (.dv-title.dv-title--xl); full width, slightly smaller, lines flow inline */
                .dv-deck__title { margin: 0; width: 100%; font-size: clamp(1.9rem, 4.2vw, 3.1rem); line-height: 1.12; }
                .dv-deck__title span { display: inline; }
                .dv-deck__title span + span { margin-left: .4em; }
                .dv-deck__divider {
                    display: inline-block; width: 64px; height: 5px; border-radius: 5px;
                    background: var(--dv-navy); margin-top: clamp(16px, 3vw, 28px);
                }

                /* ---- Stage / fan ---- */
                .dv-deck__stage { position: relative; }
                .dv-deck__fan {
                    position: relative;
                    height: clamp(360px, 46vw, 460px);
                    margin: 0 auto;
                    perspective: 1400px;
                }
                .dv-deck__card {
                    --tx: 0px; --ty: 0px; --rot: 0deg; --px: 0px;
                    position: absolute; top: 0; left: 50%;
                    width: 250px; margin-left: -125px;
                    background: #fff; border: 1px solid var(--dv-line);
                    border-radius: 20px; box-shadow: var(--dv-shadow);
                    padding: 16px 16px 14px;
                    transform: translateX(calc(var(--tx) + var(--px))) translateY(var(--ty)) rotate(var(--rot));
                    transform-origin: bottom center;
                    transition: transform .5s var(--dv-spring), box-shadow .4s var(--dv-ease), border-color .3s;
                    cursor: pointer; outline: none;
                    display: flex; flex-direction: column; gap: 12px;
                }
                .dv-deck__card:hover,
                .dv-deck__card:focus-visible,
                .dv-deck__card.is-active {
                    transform: translateX(var(--tx)) translateY(-26px) rotate(0deg) scale(1.07);
                    z-index: 60 !important;
                    box-shadow: var(--dv-shadow-lg);
                    border-color: rgba(91, 182, 223,.45);
                }

                .dv-deck__card-head { display: flex; align-items: center; gap: 10px; }
                .dv-deck__avatar {
                    width: 38px; height: 38px; border-radius: 11px; flex: none; color: #fff;
                    display: flex; align-items: center; justify-content: center;
                    background: var(--dv-teal-600);
                }
                .dv-deck__avatar svg { width: 21px; height: 21px; }
                .dv-deck__meta { display: flex; flex-direction: column; line-height: 1.2; min-width: 0; }
                .dv-deck__meta strong { font-size: 14px; font-weight: 700; color: var(--dv-navy); }
                .dv-deck__meta span { font-size: 11.5px; color: var(--dv-muted); }
                .dv-deck__dots { margin-left: auto; display: flex; gap: 3px; }
                .dv-deck__dots i { width: 4px; height: 4px; border-radius: 50%; background: #cbd8e0; }

                .dv-deck__media {
                    border-radius: 13px; aspect-ratio: 16/10;
                    background: var(--dv-mint); border: 1px solid var(--dv-line);
                    display: flex; align-items: center; justify-content: center;
                }
                .dv-deck__media-icon { width: 46px; height: 46px; color: var(--dv-teal-600); opacity: .9; }
                .dv-deck__media-icon svg { width: 100%; height: 100%; }

                .dv-deck__text { font-size: 13px; line-height: 1.5; color: var(--dv-muted); margin: 0; flex: 1; }

                .dv-deck__card-foot { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
                .dv-deck__chip {
                    display: inline-flex; align-items: center; gap: 6px;
                    font-size: 11.5px; font-weight: 700; color: var(--dv-teal-600);
                    background: var(--dv-teal-050); padding: 6px 11px; border-radius: 999px;
                }
                .dv-deck__chip svg { width: 13px; height: 13px; }
                .dv-deck__react { display: flex; gap: 7px; color: #c4d2db; }
                .dv-deck__react svg { width: 16px; height: 16px; }
                .dv-deck__btn {
                    display: inline-flex; align-items: center; gap: 7px;
                    font-size: 13px; font-weight: 700; color: #fff; text-decoration: none;
                    background: var(--dv-teal-600); padding: 9px 16px; border-radius: 999px;
                    transition: background .25s, transform .25s var(--dv-spring);
                }
                .dv-deck__btn svg { width: 15px; height: 15px; }
                .dv-deck__btn:hover { background: var(--dv-teal); transform: translateY(-2px); }

                /* Featured card */
                .dv-deck__card--feature {
                    width: 268px; margin-left: -134px;
                    border-color: rgba(91, 182, 223,.4);
                    box-shadow: 0 40px 90px -36px rgba(63, 160, 206,.55);
                }
                .dv-deck__card--feature .dv-deck__media { background: var(--dv-navy); }
                .dv-deck__card--feature .dv-deck__media-icon { color: #fff; opacity: 1; }

                .dv-deck__hint {
                    text-align: center; margin: 26px 0 0;
                    display: inline-flex; align-items: center; gap: 8px;
                    font-size: 13.5px; font-weight: 600; color: var(--dv-muted);
                    width: 100%; justify-content: center;
                }
                .dv-deck__hint svg { width: 17px; height: 17px; color: var(--dv-teal-600); }

                /* ---- Mobile: snap-scroll row ---- */
                @media (max-width: 760px) {
                    .dv-deck__fan {
                        height: auto; perspective: none;
                        display: flex; gap: 16px; overflow-x: auto; scroll-snap-type: x mandatory;
                        padding: 8px 4px 22px; -webkit-overflow-scrolling: touch;
                    }
                    .dv-deck__card,
                    .dv-deck__card--feature {
                        position: relative; left: auto; top: auto; margin: 0;
                        transform: none !important; flex: 0 0 auto; width: 78vw; max-width: 300px;
                        scroll-snap-align: center;
                    }
                    .dv-deck__card:hover,
                    .dv-deck__card.is-active { transform: none !important; }
                    .dv-deck__hint { font-size: 12.5px; }
                }
