/* ========================================================================
   DigiFULL — Clínica nas Nuvens — 04 Recursos por perfil
   Shell leve. Detalhes e cenas são carregados apenas por clique.
======================================================================== */
.dgf-cnn-resources {
    position: relative;
    z-index: 14;
    padding: 142px 0 152px;
    overflow: clip;
    background:
        radial-gradient(circle at 78% 12%, rgba(67,213,223,.11), transparent 25%),
        radial-gradient(circle at 12% 80%, rgba(245,130,31,.045), transparent 22%),
        linear-gradient(180deg, #fff 0%, #fbfdfd 100%);
}

.dgf-cnn-resources__background {
    position: absolute;
    z-index: 0;
    top: 34px;
    left: 50%;
    width: min(1500px, 96vw);
    transform: translateX(-50%);
    pointer-events: none;
    user-select: none;
    font-weight: 900;
    letter-spacing: -.07em;
    line-height: .75;
    white-space: nowrap;
}

.dgf-cnn-resources__background span {
    display: block;
    color: rgba(16,33,63,.035);
    font-size: clamp(138px, 17vw, 270px);
}

.dgf-cnn-resources__background strong {
    position: absolute;
    top: 44%;
    right: 2%;
    color: rgba(245,130,31,.055);
    font-size: clamp(92px, 11vw, 178px);
}

.dgf-cnn-resources__container {
    position: relative;
    z-index: 2;
}

.dgf-cnn-resources__header {
    max-width: 900px;
    margin: 0 auto 64px;
    text-align: center;
}

.dgf-cnn-resources__header h2 {
    margin: 0;
    color: var(--dgf-color-heading);
    font-size: clamp(44px, 5.3vw, 68px);
    font-weight: 900;
    letter-spacing: -.05em;
    line-height: .98;
}

.dgf-cnn-resources__header h2 span {
    color: var(--dgf-color-primary);
}

.dgf-cnn-resources__header p {
    max-width: 780px;
    margin: 26px auto 0;
    color: var(--dgf-color-body);
    font-size: 17px;
    line-height: 1.65;
}

.dgf-cnn-resources__profiles {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.dgf-cnn-resources__profile {
    position: relative;
    display: grid;
    min-height: 210px;
    padding: 24px;
    overflow: hidden;
    border: 1px solid rgba(16,33,63,.08);
    border-radius: 26px;
    color: var(--dgf-color-ink);
    background:
        linear-gradient(145deg, rgba(255,255,255,.96), rgba(244,248,250,.90));
    box-shadow: 0 20px 52px -42px rgba(11,34,68,.34);
    cursor: pointer;
    text-align: left;
    transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
    appearance: none;
}

.dgf-cnn-resources__profile::before {
    content: '';
    position: absolute;
    width: 190px;
    height: 190px;
    right: -95px;
    bottom: -100px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(67,213,223,.18), transparent 68%);
    transition: transform .35s ease;
}

.dgf-cnn-resources__profile:hover,
.dgf-cnn-resources__profile:focus-visible {
    transform: translateY(-5px);
    border-color: rgba(245,130,31,.40);
    box-shadow: 0 30px 65px -42px rgba(11,34,68,.38), 0 0 0 1px rgba(245,130,31,.05);
    outline: none;
}

.dgf-cnn-resources__profile:hover::before,
.dgf-cnn-resources__profile:focus-visible::before {
    transform: scale(1.35);
}

.dgf-cnn-resources__profile-index {
    position: absolute;
    top: 24px;
    right: 24px;
    color: rgba(16,33,63,.30);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .13em;
}

.dgf-cnn-resources__profile-icon {
    display: grid;
    width: 58px;
    height: 58px;
    place-items: center;
    align-self: start;
    border: 1px solid rgba(245,130,31,.18);
    border-radius: 18px;
    color: var(--dgf-color-primary);
    background: #fff;
    box-shadow: 0 18px 36px -28px rgba(11,34,68,.48);
}

.dgf-cnn-resources__profile-icon svg {
    width: 27px;
    height: 27px;
}

.dgf-cnn-resources__profile-copy {
    align-self: end;
    position: relative;
    z-index: 2;
}

.dgf-cnn-resources__profile-copy strong,
.dgf-cnn-resources__profile-copy small {
    display: block;
}

.dgf-cnn-resources__profile-copy strong {
    max-width: 210px;
    color: var(--dgf-color-heading);
    font-size: 20px;
    font-weight: 850;
    letter-spacing: -.02em;
    line-height: 1.08;
}

.dgf-cnn-resources__profile-copy small {
    margin-top: 8px;
    color: var(--dgf-color-body);
    font-size: 12px;
    font-weight: 600;
}

.dgf-cnn-resources__profile-arrow {
    position: absolute;
    right: 22px;
    bottom: 20px;
    z-index: 2;
    display: grid;
    width: 34px;
    height: 34px;
    place-items: center;
    border-radius: 50%;
    color: #fff;
    background: var(--dgf-color-primary);
    font-size: 18px;
    transition: transform .25s ease;
}

.dgf-cnn-resources__profile:hover .dgf-cnn-resources__profile-arrow {
    transform: translateX(2px);
}

.dgf-cnn-resources__hint {
    margin: 24px 0 0;
    color: rgba(89,101,121,.74);
    font-size: 12px;
    text-align: center;
}

/* Modal */
.dgf-cnn-rmodal[hidden] { display: none !important; }
.dgf-cnn-rmodal {
    position: fixed;
    z-index: 100001;
    inset: 0;
    display: grid;
    place-items: center;
    padding: 24px;
}

.dgf-cnn-rmodal__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(5,16,34,.62);
    backdrop-filter: blur(14px);
    animation: dgfCnnRmodalBackdrop .25s ease both;
}

.dgf-cnn-rmodal__dialog {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-rows: auto 1fr;
    width: min(1280px, calc(100vw - 48px));
    height: min(820px, calc(100svh - 48px));
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 32px;
    background: #f8fafb;
    box-shadow: 0 42px 110px rgba(3,12,28,.38);
    animation: dgfCnnRmodalIn .42s cubic-bezier(.22,.8,.26,1) both;
    outline: none;
}

.dgf-cnn-rmodal__header {
    display: flex;
    min-height: 96px;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 22px 28px 20px 34px;
    border-bottom: 1px solid rgba(16,33,63,.08);
    background: rgba(255,255,255,.92);
}

.dgf-cnn-rmodal__eyebrow {
    display: block;
    margin-bottom: 5px;
    color: var(--dgf-color-primary);
    font-size: 10px;
    font-weight: 850;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.dgf-cnn-rmodal__header h3 {
    margin: 0;
    color: var(--dgf-color-heading);
    font-size: 26px;
    font-weight: 850;
    letter-spacing: -.025em;
}

.dgf-cnn-rmodal__close {
    position: relative;
    width: 46px;
    height: 46px;
    flex: 0 0 auto;
    border: 1px solid rgba(16,33,63,.10);
    border-radius: 50%;
    background: #fff;
    cursor: pointer;
}
.dgf-cnn-rmodal__close span {
    position: absolute;
    top: 22px;
    left: 13px;
    width: 20px;
    height: 1.5px;
    background: var(--dgf-color-ink);
}
.dgf-cnn-rmodal__close span:first-child { transform: rotate(45deg); }
.dgf-cnn-rmodal__close span:last-child { transform: rotate(-45deg); }

.dgf-cnn-rmodal__body {
    display: grid;
    min-height: 0;
    grid-template-columns: 286px minmax(0, 1fr);
}

.dgf-cnn-rmodal__nav {
    min-height: 0;
    padding: 30px 18px 28px 28px;
    overflow-y: auto;
    border-right: 1px solid rgba(16,33,63,.08);
    background: #f3f6f9;
}

.dgf-cnn-rmodal__nav > p {
    margin: 0 8px 22px;
    color: var(--dgf-color-body);
    font-size: 13px;
    line-height: 1.55;
}

.dgf-cnn-rmodal__items {
    display: grid;
    gap: 8px;
}

.dgf-cnn-rmodal__item {
    display: grid;
    grid-template-columns: 32px minmax(0, 1fr) 18px;
    align-items: center;
    gap: 10px;
    width: 100%;
    min-height: 58px;
    padding: 11px 12px;
    border: 1px solid transparent;
    border-radius: 16px;
    color: var(--dgf-color-ink);
    background: transparent;
    cursor: pointer;
    text-align: left;
    transition: background .2s ease, border-color .2s ease, color .2s ease;
}

.dgf-cnn-rmodal__item span:first-child {
    color: rgba(16,33,63,.38);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .08em;
}

.dgf-cnn-rmodal__item strong {
    font-size: 13px;
    font-weight: 750;
    line-height: 1.2;
}

.dgf-cnn-rmodal__item i {
    font-style: normal;
    color: rgba(16,33,63,.34);
}

.dgf-cnn-rmodal__item:hover,
.dgf-cnn-rmodal__item:focus-visible,
.dgf-cnn-rmodal__item.is-active {
    border-color: rgba(245,130,31,.18);
    background: #fff;
    outline: none;
}

.dgf-cnn-rmodal__item.is-active {
    color: var(--dgf-color-primary);
    box-shadow: 0 13px 32px -28px rgba(5,16,34,.35);
}

.dgf-cnn-rmodal__content {
    min-width: 0;
    min-height: 0;
    overflow-y: auto;
    background: #fff;
}

.dgf-cnn-rmodal__loading {
    display: grid;
    height: 100%;
    padding: 34px;
    grid-template-columns: minmax(0, 1.08fr) minmax(320px, .92fr);
    gap: 32px;
}

.dgf-cnn-rmodal__skeleton {
    position: relative;
    overflow: hidden;
    border-radius: 14px;
    background: #eaf0f4;
}
.dgf-cnn-rmodal__skeleton::after {
    content: '';
    position: absolute;
    inset: 0;
    transform: translateX(-100%);
    background: linear-gradient(90deg, transparent, rgba(255,255,255,.7), transparent);
    animation: dgfCnnSkeleton 1.2s infinite;
}
.dgf-cnn-rmodal__skeleton--nav { height: 56px; }
.dgf-cnn-rmodal__skeleton--scene { min-height: 480px; border-radius: 24px; }
.dgf-cnn-rmodal__skeleton--copy { min-height: 420px; border-radius: 24px; }

body.dgf-cnn-rmodal-open { overflow: hidden !important; }

@keyframes dgfCnnRmodalBackdrop { from { opacity: 0; } to { opacity: 1; } }
@keyframes dgfCnnRmodalIn { from { opacity: 0; transform: translateY(24px) scale(.985); } to { opacity: 1; transform: none; } }
@keyframes dgfCnnSkeleton { to { transform: translateX(100%); } }

@media (max-width: 960px) {
    .dgf-cnn-resources { padding: 108px 0 116px; }
    .dgf-cnn-resources__profiles { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .dgf-cnn-rmodal { padding: 0; }
    .dgf-cnn-rmodal__dialog {
        width: 100vw;
        height: 100svh;
        border: 0;
        border-radius: 0;
    }
    .dgf-cnn-rmodal__body {
        display: block;
        overflow-y: auto;
    }
    .dgf-cnn-rmodal__nav {
        position: sticky;
        top: 0;
        z-index: 8;
        padding: 14px 16px 12px;
        overflow: hidden;
        border-right: 0;
        border-bottom: 1px solid rgba(16,33,63,.08);
        background: rgba(247,249,251,.96);
        backdrop-filter: blur(12px);
    }
    .dgf-cnn-rmodal__nav > p { display: none; }
    .dgf-cnn-rmodal__items {
        display: flex;
        gap: 8px;
        overflow-x: auto;
        scrollbar-width: none;
    }
    .dgf-cnn-rmodal__items::-webkit-scrollbar { display: none; }
    .dgf-cnn-rmodal__item {
        display: block;
        width: auto;
        min-width: max-content;
        min-height: 42px;
        padding: 10px 14px;
        border-radius: 99px;
        background: #fff;
    }
    .dgf-cnn-rmodal__item span,
    .dgf-cnn-rmodal__item i { display: none; }
    .dgf-cnn-rmodal__content { overflow: visible; }
    .dgf-cnn-rmodal__loading {
        height: auto;
        min-height: 580px;
        grid-template-columns: 1fr;
        padding: 18px;
    }
}

@media (max-width: 640px) {
    .dgf-cnn-resources {
        padding: 92px 0 96px;
    }
    .dgf-cnn-resources__background {
        top: 42px;
    }
    .dgf-cnn-resources__background span {
        font-size: 110px;
    }
    .dgf-cnn-resources__background strong {
        top: 58%;
        right: -10%;
        font-size: 74px;
    }
    .dgf-cnn-resources__header {
        margin-bottom: 38px;
        text-align: left;
    }
    .dgf-cnn-resources__header h2 {
        font-size: clamp(38px, 11vw, 48px);
    }
    .dgf-cnn-resources__header p {
        margin-top: 20px;
        font-size: 15px;
    }
    .dgf-cnn-resources__profiles {
        grid-template-columns: 1fr;
        gap: 12px;
    }
    .dgf-cnn-resources__profile {
        min-height: 128px;
        grid-template-columns: 50px 1fr 34px;
        align-items: center;
        gap: 15px;
        padding: 18px;
        border-radius: 22px;
    }
    .dgf-cnn-resources__profile-index { display: none; }
    .dgf-cnn-resources__profile-icon {
        width: 50px;
        height: 50px;
        border-radius: 15px;
    }
    .dgf-cnn-resources__profile-copy { align-self: center; }
    .dgf-cnn-resources__profile-copy strong { font-size: 18px; }
    .dgf-cnn-resources__profile-arrow {
        position: static;
        width: 32px;
        height: 32px;
    }
    .dgf-cnn-rmodal__header {
        min-height: 78px;
        padding: 14px 16px 12px 20px;
    }
    .dgf-cnn-rmodal__header h3 { font-size: 21px; }
    .dgf-cnn-rmodal__close { width: 42px; height: 42px; }
}

/* ========================================================================
   v1.2.1 — Timeline dos perfis + mini-cenas 2.5D + refinamentos de modal
======================================================================== */
.dgf-cnn-resources__journey {
    position: relative;
    width: min(1120px, 100%);
    margin: 0 auto;
    padding: 18px 0 8px;
}

.dgf-cnn-resources__profiles {
    display: block;
}

.dgf-cnn-resources__rail {
    position: absolute;
    z-index: 0;
    top: 8px;
    bottom: 12px;
    left: 50%;
    width: 2px;
    overflow: hidden;
    transform: translateX(-50%);
    border-radius: 99px;
    background: linear-gradient(180deg, rgba(16,33,63,.04), rgba(16,33,63,.14), rgba(16,33,63,.04));
}

.dgf-cnn-resources__rail::before,
.dgf-cnn-resources__rail span {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: inherit;
}

.dgf-cnn-resources__rail span {
    transform: scaleY(0);
    transform-origin: top center;
    background: linear-gradient(180deg, #f5821f 0%, #59dfc0 52%, #37c7d9 100%);
    box-shadow: 0 0 16px rgba(64,205,211,.23);
}

.dgf-cnn-resources__profile-step {
    position: relative;
    z-index: 1;
    width: 50%;
    min-height: 236px;
    padding: 22px 58px 22px 0;
}

.dgf-cnn-resources__profile-step:nth-child(even) {
    margin-left: 50%;
    padding-right: 0;
    padding-left: 58px;
}

.dgf-cnn-resources__profile-node {
    position: absolute;
    z-index: 5;
    top: 50%;
    right: -11px;
    display: grid;
    width: 22px;
    height: 22px;
    transform: translateY(-50%);
    place-items: center;
    border: 1px solid rgba(245,130,31,.25);
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 8px 20px -10px rgba(12,34,66,.42);
}

.dgf-cnn-resources__profile-step:nth-child(even) .dgf-cnn-resources__profile-node {
    right: auto;
    left: -11px;
}

.dgf-cnn-resources__profile-node i {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: rgba(16,33,63,.20);
    transition: background .35s ease, box-shadow .35s ease, transform .35s ease;
}

.dgf-cnn-resources__profile-step.is-active .dgf-cnn-resources__profile-node i {
    transform: scale(1.12);
    background: #f5821f;
    box-shadow: 0 0 14px rgba(245,130,31,.42);
}

.dgf-cnn-resources__profile {
    min-height: 192px;
    padding: 22px 158px 22px 22px;
    border-radius: 28px;
    background: linear-gradient(145deg, rgba(255,255,255,.98), rgba(242,248,250,.94));
}

.dgf-cnn-resources__profile::after {
    content: '';
    position: absolute;
    z-index: 0;
    right: 20px;
    top: 42px;
    width: 124px;
    height: 104px;
    transform: rotateX(66deg) rotateZ(-7deg);
    border: 1px solid rgba(77,180,213,.16);
    background: linear-gradient(145deg, rgba(48,130,180,.04), rgba(85,225,193,.09));
    box-shadow: 0 20px 34px rgba(23,69,105,.07);
    pointer-events: none;
}

.dgf-cnn-resources__profile-icon {
    position: relative;
    z-index: 4;
}

.dgf-cnn-resources__profile-copy {
    position: absolute;
    z-index: 4;
    left: 22px;
    bottom: 24px;
    max-width: calc(100% - 176px);
}

.dgf-cnn-resources__profile-arrow {
    z-index: 6;
}

/* Mini-cena leve: faz parte do shell e não interfere no lazy load dos detalhes. */
.dgf-cnn-rmini {
    position: absolute;
    z-index: 3;
    top: 38px;
    right: 25px;
    width: 116px;
    height: 108px;
    transform-style: preserve-3d;
    perspective: 420px;
    pointer-events: none;
}

.dgf-cnn-rmini::before {
    content: '';
    position: absolute;
    left: 10%;
    right: 5%;
    bottom: 7px;
    height: 58px;
    transform: rotateX(67deg) rotateZ(-4deg);
    border: 1px solid rgba(91,169,207,.18);
    background: linear-gradient(145deg, rgba(21,84,121,.08), rgba(75,224,191,.08));
    box-shadow: 0 18px 24px rgba(23,71,105,.08);
}

/* Secretárias — agenda/fluxo de recepção. */
.dgf-cnn-rmini--secretarias .dgf-cnn-rmini__screen {
    position: absolute;
    top: 16px;
    left: 23px;
    width: 67px;
    height: 55px;
    transform: rotateY(-11deg) rotateX(4deg);
    border: 1px solid rgba(64,170,204,.24);
    border-radius: 12px;
    background: linear-gradient(160deg, #fefefe, #eaf5f7);
    box-shadow: 0 15px 22px rgba(30,82,111,.12);
}
.dgf-cnn-rmini--secretarias .dgf-cnn-rmini__screen i {
    display: block;
    width: 72%;
    height: 6px;
    margin: 9px 8px -4px;
    border-radius: 10px;
    background: rgba(31,88,124,.12);
}
.dgf-cnn-rmini--secretarias .dgf-cnn-rmini__screen i:nth-child(2) { width: 50%; background: rgba(85,223,193,.32); }
.dgf-cnn-rmini--secretarias .dgf-cnn-rmini__screen i:nth-child(3) { width: 62%; background: rgba(245,130,31,.26); }
.dgf-cnn-rmini__token {
    position: absolute;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: #f5821f;
    box-shadow: 0 0 12px rgba(245,130,31,.28);
}
.dgf-cnn-rmini--secretarias .dgf-cnn-rmini__token--a { top: 8px; right: 12px; }
.dgf-cnn-rmini--secretarias .dgf-cnn-rmini__token--b { right: 2px; bottom: 25px; background:#43cfd9; }
.dgf-cnn-rmini--secretarias .dgf-cnn-rmini__signal {
    position: absolute;
    right: 10px;
    top: 28px;
    width: 25px;
    height: 25px;
    border: 1px solid rgba(245,130,31,.28);
    border-left-color: transparent;
    border-bottom-color: transparent;
    border-radius: 50%;
}

/* Profissionais — prontuário + pulso clínico. */
.dgf-cnn-rmini--profissionais .dgf-cnn-rmini__record {
    position: absolute;
    top: 12px;
    left: 29px;
    width: 56px;
    height: 68px;
    transform: rotateY(-10deg) rotateZ(3deg);
    border: 1px solid rgba(76,184,207,.22);
    border-radius: 10px;
    background: linear-gradient(160deg,#fff,#ecf6f7);
    box-shadow: 0 15px 22px rgba(30,82,111,.11);
}
.dgf-cnn-rmini--profissionais .dgf-cnn-rmini__record i {
    display: block;
    width: 60%;
    height: 5px;
    margin: 12px 11px -6px;
    border-radius: 6px;
    background: rgba(16,33,63,.12);
}
.dgf-cnn-rmini--profissionais .dgf-cnn-rmini__cross {
    position: absolute;
    z-index: 2;
    right: 16px;
    top: 21px;
    width: 29px;
    height: 29px;
    border-radius: 10px;
    background: rgba(86,224,194,.88);
    box-shadow: 0 8px 18px rgba(53,185,162,.20);
}
.dgf-cnn-rmini--profissionais .dgf-cnn-rmini__cross::before,
.dgf-cnn-rmini--profissionais .dgf-cnn-rmini__cross::after {
    content:'';
    position:absolute;
    left:50%; top:50%;
    width:14px; height:3px;
    transform:translate(-50%,-50%);
    border-radius:4px;
    background:#fff;
}
.dgf-cnn-rmini--profissionais .dgf-cnn-rmini__cross::after { transform:translate(-50%,-50%) rotate(90deg); }
.dgf-cnn-rmini--profissionais .dgf-cnn-rmini__pulse {
    position:absolute;
    left:11px; right:5px; bottom:23px;
    height:17px;
    border-bottom:2px solid rgba(64,196,213,.55);
    clip-path:polygon(0 60%, 24% 60%, 31% 20%, 40% 90%, 50% 48%, 63% 60%, 100% 60%, 100% 72%, 0 72%);
    background:rgba(64,196,213,.18);
}

/* Gestores — indicadores em elevação. */
.dgf-cnn-rmini--gestores .dgf-cnn-rmini__chart {
    position:absolute;
    left:20px; bottom:22px;
    display:flex;
    width:76px;
    height:64px;
    align-items:flex-end;
    gap:6px;
    padding:9px 8px;
    transform:rotateY(-8deg);
    border:1px solid rgba(64,170,204,.18);
    border-radius:12px;
    background:rgba(255,255,255,.76);
    box-shadow:0 14px 20px rgba(30,82,111,.08);
}
.dgf-cnn-rmini--gestores .dgf-cnn-rmini__chart i { flex:1; border-radius:5px 5px 2px 2px; background:linear-gradient(#4dd3dc,#6ee4c6); }
.dgf-cnn-rmini--gestores .dgf-cnn-rmini__chart i:nth-child(1){height:28%}.dgf-cnn-rmini--gestores .dgf-cnn-rmini__chart i:nth-child(2){height:54%}.dgf-cnn-rmini--gestores .dgf-cnn-rmini__chart i:nth-child(3){height:42%}.dgf-cnn-rmini--gestores .dgf-cnn-rmini__chart i:nth-child(4){height:76%;background:linear-gradient(#ff9f50,#f5821f)}
.dgf-cnn-rmini--gestores .dgf-cnn-rmini__metric { position:absolute; top:11px; right:2px; padding:6px 8px; border-radius:9px; color:#f5821f; background:#fff; font-size:9px; font-weight:900; box-shadow:0 9px 18px rgba(30,82,111,.10); }
.dgf-cnn-rmini--gestores .dgf-cnn-rmini__trend { position:absolute; right:7px; bottom:28px; width:31px; height:31px; border-top:2px solid #42cbd5; border-right:2px solid #42cbd5; transform:rotate(-18deg) skew(-9deg); }

/* Clínica-escola — conhecimento conectado entre docente, aluno e atendimento. */
.dgf-cnn-rmini--clinica-escola .dgf-cnn-rmini__cap {
    position:absolute;
    top:15px; left:31px;
    width:54px; height:36px;
    transform:rotateX(54deg) rotateZ(-4deg);
    background:linear-gradient(145deg,#4dd3dc,#74e5c6);
    clip-path:polygon(50% 0,100% 42%,50% 82%,0 42%);
    filter:drop-shadow(0 10px 8px rgba(43,151,165,.15));
}
.dgf-cnn-rmini--clinica-escola .dgf-cnn-rmini__node { position:absolute; width:13px; height:13px; border-radius:50%; background:#fff; border:2px solid #55d7c1; box-shadow:0 6px 13px rgba(31,105,117,.11); }
.dgf-cnn-rmini--clinica-escola .dgf-cnn-rmini__node--a{left:13px;bottom:22px}.dgf-cnn-rmini--clinica-escola .dgf-cnn-rmini__node--b{left:52px;bottom:9px}.dgf-cnn-rmini--clinica-escola .dgf-cnn-rmini__node--c{right:9px;bottom:29px;border-color:#f5821f}
.dgf-cnn-rmini--clinica-escola .dgf-cnn-rmini__link { position:absolute; left:21px; right:16px; bottom:26px; height:32px; border-bottom:1px dashed rgba(58,165,183,.42); border-radius:50%; transform:rotate(-5deg); }

.dgf-cnn-resources__profile-step.is-active .dgf-cnn-rmini--secretarias .dgf-cnn-rmini__token--a,
.dgf-cnn-resources__profile:hover .dgf-cnn-rmini--secretarias .dgf-cnn-rmini__token--a { animation: dgfCnnMiniToken 1.45s ease-in-out infinite; }
.dgf-cnn-resources__profile-step.is-active .dgf-cnn-rmini--secretarias .dgf-cnn-rmini__signal { animation: dgfCnnMiniSignal 1.7s ease-in-out infinite; }
.dgf-cnn-resources__profile-step.is-active .dgf-cnn-rmini--profissionais .dgf-cnn-rmini__pulse { animation: dgfCnnMiniPulse 1.8s ease-in-out infinite; }
.dgf-cnn-resources__profile-step.is-active .dgf-cnn-rmini--profissionais .dgf-cnn-rmini__cross { animation: dgfCnnMiniFloat 2.2s ease-in-out infinite alternate; }
.dgf-cnn-resources__profile-step.is-active .dgf-cnn-rmini--gestores .dgf-cnn-rmini__chart i { animation: dgfCnnMiniBars 1.8s ease-in-out infinite alternate; }
.dgf-cnn-resources__profile-step.is-active .dgf-cnn-rmini--gestores .dgf-cnn-rmini__chart i:nth-child(2){animation-delay:.13s}.dgf-cnn-resources__profile-step.is-active .dgf-cnn-rmini--gestores .dgf-cnn-rmini__chart i:nth-child(3){animation-delay:.26s}.dgf-cnn-resources__profile-step.is-active .dgf-cnn-rmini--gestores .dgf-cnn-rmini__chart i:nth-child(4){animation-delay:.39s}
.dgf-cnn-resources__profile-step.is-active .dgf-cnn-rmini--clinica-escola .dgf-cnn-rmini__node { animation: dgfCnnMiniNodes 1.9s ease-in-out infinite alternate; }
.dgf-cnn-resources__profile-step.is-active .dgf-cnn-rmini--clinica-escola .dgf-cnn-rmini__node--b{animation-delay:.2s}.dgf-cnn-resources__profile-step.is-active .dgf-cnn-rmini--clinica-escola .dgf-cnn-rmini__node--c{animation-delay:.4s}

@keyframes dgfCnnMiniToken { 0%,100%{transform:translate3d(0,0,0);opacity:.75}50%{transform:translate3d(-12px,11px,0);opacity:1} }
@keyframes dgfCnnMiniSignal { 0%,100%{transform:scale(.78);opacity:.28}50%{transform:scale(1.12);opacity:.88} }
@keyframes dgfCnnMiniPulse { 0%,100%{transform:scaleX(.72);opacity:.38;transform-origin:left center}50%{transform:scaleX(1);opacity:.95;transform-origin:left center} }
@keyframes dgfCnnMiniFloat { to{transform:translate3d(0,-6px,8px) rotate(2deg)} }
@keyframes dgfCnnMiniBars { from{transform:scaleY(.78);transform-origin:bottom}to{transform:scaleY(1.08);transform-origin:bottom} }
@keyframes dgfCnnMiniNodes { to{transform:translateY(-6px);box-shadow:0 8px 18px rgba(45,178,170,.24)} }

/* X geometricamente centralizado em qualquer viewport. */
.dgf-cnn-rmodal__close {
    display: grid;
    place-items: center;
}
.dgf-cnn-rmodal__close span {
    top: 50%;
    left: 50%;
    width: 20px;
    height: 1.5px;
    transform-origin: center;
}
.dgf-cnn-rmodal__close span:first-child { transform: translate(-50%,-50%) rotate(45deg); }
.dgf-cnn-rmodal__close span:last-child { transform: translate(-50%,-50%) rotate(-45deg); }

/* Troca de item sem apagar a experiência anterior enquanto a rede responde. */
.dgf-cnn-rmodal__content { position: relative; }
.dgf-cnn-rmodal__content.is-loading-next::after {
    content: '';
    position: sticky;
    z-index: 20;
    top: 0;
    display: block;
    width: 100%;
    height: 3px;
    margin-bottom: -3px;
    transform-origin: left center;
    background: linear-gradient(90deg, #f5821f, #54dfc2, #45c9d9);
    animation: dgfCnnQuickLoad .7s ease-in-out infinite alternate;
}
.dgf-cnn-rmodal__content.is-loading-next .dgf-cnn-ritem {
    opacity: .62;
    transition: opacity .15s ease;
}
.dgf-cnn-rmodal__error { padding: 40px; color: #10213f; }
.dgf-cnn-rmodal__error p { margin-top: 8px; }
@keyframes dgfCnnQuickLoad { from{transform:scaleX(.18);opacity:.65}to{transform:scaleX(.78);opacity:1} }

@media (max-width: 960px) {
    .dgf-cnn-resources__journey { width: 100%; }
    .dgf-cnn-resources__rail { left: 26px; transform: none; }
    .dgf-cnn-resources__profile-step,
    .dgf-cnn-resources__profile-step:nth-child(even) {
        width: 100%;
        min-height: 178px;
        margin-left: 0;
        padding: 14px 0 14px 60px;
    }
    .dgf-cnn-resources__profile-node,
    .dgf-cnn-resources__profile-step:nth-child(even) .dgf-cnn-resources__profile-node {
        right: auto;
        left: 16px;
    }
    .dgf-cnn-resources__profile {
        min-height: 150px;
        padding: 18px 132px 18px 18px;
    }
    .dgf-cnn-resources__profile-copy {
        left: 18px;
        bottom: 20px;
        max-width: calc(100% - 148px);
    }
    .dgf-cnn-rmini {
        top: 25px;
        right: 23px;
        transform: scale(.88);
        transform-origin: top right;
    }
}

@media (max-width: 640px) {
    .dgf-cnn-resources__rail { left: 16px; }
    .dgf-cnn-resources__profile-step,
    .dgf-cnn-resources__profile-step:nth-child(even) {
        min-height: 166px;
        padding: 10px 0 10px 44px;
    }
    .dgf-cnn-resources__profile-node,
    .dgf-cnn-resources__profile-step:nth-child(even) .dgf-cnn-resources__profile-node {
        left: 6px;
    }
    .dgf-cnn-resources__profile {
        display: block;
        min-height: 142px;
        padding: 17px 110px 17px 17px;
    }
    .dgf-cnn-resources__profile-icon {
        width: 46px;
        height: 46px;
        border-radius: 14px;
    }
    .dgf-cnn-resources__profile-copy {
        left: 17px;
        bottom: 18px;
        max-width: calc(100% - 124px);
    }
    .dgf-cnn-resources__profile-copy strong { font-size: 17px; }
    .dgf-cnn-resources__profile-arrow {
        position: absolute;
        right: 14px;
        bottom: 14px;
        width: 30px;
        height: 30px;
    }
    .dgf-cnn-rmini {
        top: 18px;
        right: 14px;
        transform: scale(.72);
        transform-origin: top right;
    }
    .dgf-cnn-rmodal__close {
        width: 42px;
        height: 42px;
        padding: 0;
    }
}

@media (prefers-reduced-motion: reduce) {
    .dgf-cnn-rmini *,
    .dgf-cnn-rmini::before,
    .dgf-cnn-resources__rail span {
        animation: none !important;
        transition: none !important;
    }
}

/* ========================================================================
   v1.2.2 — Timeline editorial simétrica + shell mais limpo
======================================================================== */
.dgf-cnn-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.dgf-cnn-resources__header{margin-bottom:42px}
.dgf-cnn-resources__header p{margin-top:0;max-width:720px}
.dgf-cnn-resources__background{top:54px;text-align:center;line-height:.82}
.dgf-cnn-resources__background span{font-size:clamp(118px,15vw,230px);color:rgba(16,33,63,.045)}
.dgf-cnn-resources__background strong{top:42%;right:7%;font-size:clamp(88px,10vw,158px);color:rgba(245,130,31,.055)}
.dgf-cnn-resources__hint{display:none!important}

.dgf-cnn-resources__journey{width:min(1080px,100%);margin-inline:auto;position:relative}
.dgf-cnn-resources__profiles{display:grid!important;grid-template-columns:1fr!important;gap:0!important}
.dgf-cnn-resources__rail{left:50%!important;transform:translateX(-50%)!important}
.dgf-cnn-resources__profile-step,
.dgf-cnn-resources__profile-step:nth-child(even){position:relative;width:100%!important;min-height:310px!important;margin:0!important;padding:28px 0!important;display:flex;align-items:center;justify-content:center}
.dgf-cnn-resources__profile-step .dgf-cnn-resources__profile{width:340px;min-height:190px;margin-right:440px}
.dgf-cnn-resources__profile-step:nth-child(even) .dgf-cnn-resources__profile{margin-right:0;margin-left:440px}
.dgf-cnn-resources__profile-node,
.dgf-cnn-resources__profile-step:nth-child(even) .dgf-cnn-resources__profile-node{left:50%!important;right:auto!important;transform:translate(-50%,-50%)!important}
.dgf-cnn-resources__profile{padding:24px 148px 24px 24px!important;border-radius:24px;isolation:isolate}
.dgf-cnn-resources__profile-index,
.dgf-cnn-resources__profile-icon{display:none!important}
.dgf-cnn-resources__profile-copy{position:absolute!important;left:24px!important;bottom:24px!important;max-width:150px!important}
.dgf-cnn-resources__profile-copy strong{font-size:22px;line-height:1.03}
.dgf-cnn-resources__profile-copy small{margin-top:10px;color:rgba(16,33,63,.62);font-size:11px;font-weight:750;letter-spacing:.01em}
.dgf-cnn-resources__profile-arrow{right:22px;bottom:20px}
.dgf-cnn-rmini{top:32px;right:28px;width:124px;height:112px}

/* Clínica-escola: docente supervisiona aluno enquanto o atendimento segue. */
.dgf-cnn-rmini--clinica-escola .dgf-cnn-rmini__school-desk{position:absolute;left:27px;top:36px;width:72px;height:48px;transform:rotateX(61deg) rotateZ(-4deg);border:1px solid rgba(74,176,198,.25);background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(218,241,243,.78));box-shadow:0 14px 24px rgba(23,78,104,.09)}
.dgf-cnn-rmini--clinica-escola .dgf-cnn-rmini__school-desk i{position:absolute;left:10px;right:10px;height:4px;border-radius:8px;background:rgba(29,81,112,.14)}
.dgf-cnn-rmini--clinica-escola .dgf-cnn-rmini__school-desk i:first-child{top:12px}.dgf-cnn-rmini--clinica-escola .dgf-cnn-rmini__school-desk i:last-child{top:23px;width:38px;background:rgba(84,220,193,.36)}
.dgf-cnn-rmini--clinica-escola .dgf-cnn-rmini__teacher,
.dgf-cnn-rmini--clinica-escola .dgf-cnn-rmini__student,
.dgf-cnn-rmini--clinica-escola .dgf-cnn-rmini__patient{position:absolute;width:18px;height:18px;border-radius:50%;border:2px solid #55d7c1;background:#fff;box-shadow:0 8px 15px rgba(31,105,117,.12)}
.dgf-cnn-rmini--clinica-escola .dgf-cnn-rmini__teacher{left:13px;top:21px;border-color:#f5821f}
.dgf-cnn-rmini--clinica-escola .dgf-cnn-rmini__student{left:55px;top:9px;border-color:#4bcfdc}
.dgf-cnn-rmini--clinica-escola .dgf-cnn-rmini__patient{right:5px;bottom:18px}
.dgf-cnn-rmini--clinica-escola .dgf-cnn-rmini__school-flow{position:absolute;left:20px;right:12px;top:30px;height:48px;border:1px dashed rgba(65,174,190,.35);border-left-color:rgba(245,130,31,.42);border-radius:50%;transform:rotate(7deg)}
.dgf-cnn-rmini--clinica-escola .dgf-cnn-rmini__approval{position:absolute;right:11px;top:9px;display:grid;width:22px;height:22px;place-items:center;border-radius:50%;color:#fff;background:#55d7c1;font-size:12px;font-weight:900;box-shadow:0 0 16px rgba(85,215,193,.28)}
.dgf-cnn-resources__profile-step.is-active .dgf-cnn-rmini--clinica-escola .dgf-cnn-rmini__teacher{animation:dgfCnnTeacherWatch 2.2s ease-in-out infinite}
.dgf-cnn-resources__profile-step.is-active .dgf-cnn-rmini--clinica-escola .dgf-cnn-rmini__student{animation:dgfCnnStudentMove 2.2s ease-in-out infinite}
.dgf-cnn-resources__profile-step.is-active .dgf-cnn-rmini--clinica-escola .dgf-cnn-rmini__approval{animation:dgfCnnApproval 2.2s ease-in-out infinite}
@keyframes dgfCnnTeacherWatch{0%,100%{transform:translateY(0)}45%{transform:translate(8px,5px)}}
@keyframes dgfCnnStudentMove{0%,100%{transform:translate(0,0)}45%{transform:translate(10px,16px)}}
@keyframes dgfCnnApproval{0%,35%{transform:scale(.75);opacity:.25}55%,100%{transform:scale(1);opacity:1}}

@media(max-width:960px){
  .dgf-cnn-resources__journey{width:100%}
  .dgf-cnn-resources__rail{left:50%!important;transform:translateX(-50%)!important}
  .dgf-cnn-resources__profile-step,.dgf-cnn-resources__profile-step:nth-child(even){min-height:230px!important;padding:18px 0!important;justify-content:center}
  .dgf-cnn-resources__profile-step .dgf-cnn-resources__profile{width:min(320px,calc(100vw - 92px));min-height:158px;margin-right:76px!important;margin-left:0!important}
  .dgf-cnn-resources__profile-step:nth-child(even) .dgf-cnn-resources__profile{margin-right:0!important;margin-left:76px!important}
  .dgf-cnn-resources__profile-node,.dgf-cnn-resources__profile-step:nth-child(even) .dgf-cnn-resources__profile-node{left:50%!important}
  .dgf-cnn-resources__profile{padding:18px 126px 18px 18px!important}
  .dgf-cnn-resources__profile-copy{left:18px!important;bottom:18px!important;max-width:135px!important}
  .dgf-cnn-rmini{top:24px;right:16px;transform:scale(.86);transform-origin:top right}
}
@media(max-width:640px){
  .dgf-cnn-resources{padding-top:90px}
  .dgf-cnn-resources__background{top:36px}
  .dgf-cnn-resources__background span{font-size:30vw}
  .dgf-cnn-resources__background strong{font-size:19vw;right:0}
  .dgf-cnn-resources__header{margin-bottom:34px}
  .dgf-cnn-resources__header p{padding-inline:10px;font-size:14px;line-height:1.55}
  .dgf-cnn-resources__profile-step,.dgf-cnn-resources__profile-step:nth-child(even){min-height:218px!important;padding:16px 0!important}
  .dgf-cnn-resources__profile-step .dgf-cnn-resources__profile{width:min(286px,calc(100vw - 112px));min-height:148px;margin-right:58px!important}
  .dgf-cnn-resources__profile-step:nth-child(even) .dgf-cnn-resources__profile{margin-right:0!important;margin-left:58px!important}
  .dgf-cnn-resources__profile{padding:16px 108px 16px 16px!important}
  .dgf-cnn-resources__profile-copy{left:16px!important;bottom:16px!important;max-width:120px!important}
  .dgf-cnn-resources__profile-copy strong{font-size:18px}
  .dgf-cnn-resources__profile-copy small{font-size:10px}
  .dgf-cnn-rmini{right:8px;top:20px;transform:scale(.72)}
}


/* ========================================================================
   v1.2.3 — Lettering estável, timeline mais compacta e contenção de pintura
======================================================================== */
.dgf-cnn-resources {
    padding-top: 118px;
}

/* Um único lettering de duas linhas: sem posicionamentos absolutos concorrentes. */
.dgf-cnn-resources__background {
    top: 38px !important;
    width: min(1180px, calc(100% - 48px)) !important;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    gap: 0;
    text-align: center;
    line-height: .83 !important;
    white-space: normal !important;
}
.dgf-cnn-resources__background span,
.dgf-cnn-resources__background strong {
    position: static !important;
    display: block;
    width: 100%;
    margin: 0 !important;
    letter-spacing: -.065em;
}
.dgf-cnn-resources__background span {
    font-size: clamp(86px, 9.2vw, 148px) !important;
    color: rgba(16,33,63,.082) !important;
}
.dgf-cnn-resources__background strong {
    margin-top: .05em !important;
    font-size: clamp(66px, 7.1vw, 114px) !important;
    color: rgba(245,130,31,.105) !important;
}
.dgf-cnn-resources__header {
    min-height: 188px;
    margin-bottom: 22px !important;
    display: flex;
    align-items: flex-end;
    justify-content: center;
}
.dgf-cnn-resources__header p {
    width: min(680px, 100%);
    margin: 0 auto !important;
    font-size: 16px;
    line-height: 1.55;
}

/* Cards desktop mais próximos sem perder a alternância e a simetria do eixo. */
@media (min-width: 961px) {
    .dgf-cnn-resources__profile-step,
    .dgf-cnn-resources__profile-step:nth-child(even) {
        min-height: 244px !important;
        padding: 14px 0 !important;
    }
}

/* Isola pintura/efeitos da seção e evita repintar áreas grandes da página. */
.dgf-cnn-resources__profile {
    contain: layout paint;
}
.dgf-cnn-rmini {
    contain: layout paint style;
}
.dgf-cnn-resources__profile-step:not(.is-active) .dgf-cnn-rmini *,
.dgf-cnn-resources__profile-step:not(.is-active) .dgf-cnn-rmini::before {
    animation-play-state: paused !important;
}

@media (max-width: 640px) {
    .dgf-cnn-resources {
        padding-top: 72px;
    }
    .dgf-cnn-resources__background {
        top: 28px !important;
        width: calc(100% - 24px) !important;
        line-height: .86 !important;
    }
    .dgf-cnn-resources__background span {
        font-size: clamp(56px, 16.8vw, 78px) !important;
    }
    .dgf-cnn-resources__background strong {
        margin-top: .08em !important;
        font-size: clamp(43px, 12.8vw, 60px) !important;
    }
    .dgf-cnn-resources__header {
        min-height: 176px;
        margin-bottom: 18px !important;
        padding: 0 8px;
    }
    .dgf-cnn-resources__header p {
        padding-inline: 0 !important;
        font-size: 13px !important;
        line-height: 1.5 !important;
    }
}


/* ========================================================================
   v1.5.4 — Sinais laterais no mobile com orientação explícita
======================================================================== */
@media (max-width: 960px) {
    .dgf-cnn-rmodal__nav {
        position: sticky;
    }
    .dgf-cnn-rmodal__nav::before,
    .dgf-cnn-rmodal__nav::after {
        position: absolute;
        top: 50%;
        z-index: 9;
        display: grid;
        width: 26px;
        height: 26px;
        margin-top: -13px;
        place-items: center;
        border-radius: 50%;
        border: 1px solid rgba(16,33,63,.10);
        color: rgba(16,33,63,.78);
        background: rgba(255,255,255,.95);
        box-shadow: 0 10px 24px -18px rgba(11,34,68,.42);
        font-family: Arial, sans-serif;
        font-size: 22px;
        font-weight: 700;
        line-height: 1;
        opacity: 0;
        transform: translateY(0) scale(.92);
        pointer-events: none;
        transition: opacity .2s ease, transform .2s ease;
        backdrop-filter: blur(8px);
    }
    .dgf-cnn-rmodal__nav::before {
        content: '‹';
        left: 6px;
        padding: 0 1px 2px 0;
    }
    .dgf-cnn-rmodal__nav::after {
        content: '›';
        right: 6px;
        padding: 0 0 2px 1px;
    }
    .dgf-cnn-rmodal__nav.has-left-hint::before,
    .dgf-cnn-rmodal__nav.has-right-hint::after {
        opacity: .88;
        transform: translateY(0) scale(1);
    }
    .dgf-cnn-rmodal__items {
        padding-inline: 20px;
        scroll-padding-inline: 20px;
    }
}

@media (max-width: 640px) {
    .dgf-cnn-resources__background span {
        font-size: clamp(50px, 14.5vw, 70px) !important;
    }
    .dgf-cnn-resources__background strong {
        font-size: clamp(38px, 10.8vw, 54px) !important;
    }
    .dgf-cnn-resources__header {
        min-height: 160px;
        align-items: center;
        text-align: center;
    }
    .dgf-cnn-resources__header p {
        max-width: 340px;
        font-size: 12.5px !important;
        line-height: 1.52 !important;
        text-align: center !important;
    }
}


/* ========================================================================
   v1.2.5 — Mobile: separação física entre lettering e parágrafo
======================================================================== */
@media (max-width: 640px) {
    .dgf-cnn-resources__background {
        top: 20px !important;
    }
    .dgf-cnn-resources__background span {
        font-size: clamp(48px, 13.8vw, 66px) !important;
    }
    .dgf-cnn-resources__background strong {
        margin-top: .02em !important;
        font-size: clamp(36px, 10.2vw, 50px) !important;
    }
    .dgf-cnn-resources__header {
        min-height: 228px !important;
        padding: 0 12px 10px !important;
        align-items: flex-end !important;
        justify-content: center !important;
        text-align: center !important;
    }
    .dgf-cnn-resources__header p {
        width: min(304px, 100%) !important;
        max-width: 304px !important;
        margin: 0 auto !important;
        font-size: 12.5px !important;
        line-height: 1.5 !important;
        text-align: center !important;
    }
}


/* ========================================================================
   v1.3.2 — Área protegida para o overlap da seção Tasy em telas grandes
======================================================================== */
@media (min-width: 981px) {
    .dgf-cnn-resources-tasy-stage {
        --dgf-cnn-tasy-overlap: clamp(270px, 23svh, 350px);
    }

    .dgf-cnn-resources-tasy-stage > .dgf-cnn-resources {
        padding-bottom: calc(152px + var(--dgf-cnn-tasy-overlap));
    }
}

@media (min-width: 1800px) and (min-height: 1000px) {
    .dgf-cnn-resources-tasy-stage {
        --dgf-cnn-tasy-overlap: clamp(300px, 21svh, 380px);
    }

    .dgf-cnn-resources-tasy-stage > .dgf-cnn-resources {
        padding-bottom: calc(176px + var(--dgf-cnn-tasy-overlap));
    }

    .dgf-cnn-resources__journey {
        width: min(1160px, 100%);
    }
}


/* v1.3.4 — handoff é controlado pela stage Tasy; remove o spacer protetivo antigo. */
@media (min-width: 981px) {
    .dgf-cnn-resources-tasy-stage > .dgf-cnn-resources {
        padding-bottom: 128px !important;
    }
}

/* ========================================================================
   v1.5.2 — Ajuste das setas dos cards de perfis
======================================================================== */
.dgf-cnn-resources__profile-arrow{
    display:grid!important;
    transform:none!important;
    place-items:center;
    width:40px;
    height:40px;
    border:1px solid rgba(255,255,255,.22);
    border-radius:999px;
    color:#fff;
    background:linear-gradient(180deg,#12335f,#0a2143);
    box-shadow:0 16px 30px -20px rgba(3,16,35,.75);
    font-size:0!important;
}
.dgf-cnn-resources__profile-arrow svg{
    display:block;
    width:18px;
    height:18px;
    stroke:currentColor;
}
.dgf-cnn-resources__profile:hover .dgf-cnn-resources__profile-arrow,
.dgf-cnn-resources__profile:focus-visible .dgf-cnn-resources__profile-arrow{
    transform:translateX(2px)!important;
    background:linear-gradient(180deg,#f79234,#f5821f);
    box-shadow:0 18px 34px -18px rgba(245,130,31,.72);
}
@media (max-width: 640px){
    .dgf-cnn-resources__profile-arrow{
        width:36px;
        height:36px;
    }
    .dgf-cnn-resources__profile-arrow svg{
        width:16px;
        height:16px;
    }
}
