
/* ==========================================================
   CV DR. EMILIA MILICIN
   Imagine sticky în stânga + CV care curge în dreapta
   Actualizare încadrare fotografie și responsive
========================================================== */

body.ortodent-cv-emilia-page {
    background: #f4f7f9;
}

body.ortodent-cv-emilia-page #content,
body.ortodent-cv-emilia-page #content > .ast-container,
body.ortodent-cv-emilia-page #primary,
body.ortodent-cv-emilia-page .content-area,
body.ortodent-cv-emilia-page .site-main {
    display: block !important;
    float: none !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
}

.odcv-page {
    --odcv-orange: #ff6a13;
    --odcv-orange-dark: #e65300;
    --odcv-ink: #252525;
    --odcv-muted: #687178;
    --odcv-line: #dce4e8;
    --odcv-white: #ffffff;
    background: #f4f7f9;
    color: var(--odcv-ink);
    overflow: visible;
}

.odcv-shell {
    width: min(1380px, calc(100% - 64px));
    margin-inline: auto;
}

.odcv-profile-section {
    padding: clamp(54px, 6vw, 92px) 0 clamp(86px, 9vw, 140px);
}

.odcv-layout {
    display: grid;
    grid-template-columns: minmax(350px, .82fr) minmax(0, 1.38fr);
    align-items: stretch;
    gap: clamp(58px, 7vw, 112px);
}

/* ==========================================================
   STÂNGA – FOTOGRAFIE STICKY
========================================================== */

.odcv-left-column {
    position: relative;
    min-width: 0;
    align-self: stretch;
}

.odcv-left-sticky {
    position: -webkit-sticky;
    position: sticky;
    top: 118px;
    z-index: 2;
}

.admin-bar .odcv-left-sticky {
    top: 150px;
}

.odcv-name {
    margin-bottom: 20px;
}

.odcv-eyebrow {
    margin: 0 0 12px;
    color: var(--odcv-orange);
    font-size: .74rem;
    font-weight: 900;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.odcv-name h1 {
    max-width: 480px;
    margin: 0;
    color: var(--odcv-ink);
    font-size: clamp(2.8rem, 4.2vw, 4.8rem);
    line-height: .98;
    letter-spacing: -.05em;
}

/* Fotografie – proporții naturale, fără decupare */

.odcv-photo {
    overflow: hidden;
    margin: 0;
    border-radius: 24px;
    background: var(--odcv-white);
    box-shadow: 0 24px 70px rgba(32, 25, 20, .11);
}

.odcv-photo img {
    display: block;
    width: 100%;
    height: auto;
    max-height: 580px;
    min-height: 0;
    padding: 14px;
    object-fit: contain;
    object-position: center;
}

/* ==========================================================
   DREAPTA – PREZENTARE
========================================================== */

.odcv-right-column {
    min-width: 0;
    padding-top: 54px;
}

.odcv-source-title {
    margin: 0 0 12px;
    color: var(--odcv-muted);
    font-size: .9rem;
    font-weight: 700;
}

.odcv-intro {
    margin-bottom: clamp(78px, 8vw, 120px);
}

.odcv-intro > h2 {
    max-width: 860px;
    margin: 0 0 30px;
    color: var(--odcv-ink);
    font-size: clamp(2.2rem, 3.1vw, 3.6rem);
    line-height: 1.12;
    letter-spacing: -.045em;
}

.odcv-intro-copy {
    max-width: 880px;
}

.odcv-intro-copy p {
    margin: 0;
    color: var(--odcv-muted);
    font-size: 1.02rem;
    line-height: 1.82;
}

/* ==========================================================
   CITAT
========================================================== */

.odcv-quote {
    position: relative;
    margin: 40px 0 0 -92px;
    padding: 42px 44px 40px 100px;
    border: 1px solid #e4e9ec;
    border-radius: 24px;
    background: rgba(255, 255, 255, .98);
    box-shadow: 0 24px 70px rgba(27, 42, 51, .09);
}

.odcv-quote-mark {
    position: absolute;
    top: 22px;
    left: 38px;
    color: var(--odcv-orange);
    font-size: 5rem;
    font-weight: 900;
    line-height: 1;
}

.odcv-quote p {
    margin: 0;
    color: var(--odcv-ink);
    font-size: clamp(1.08rem, 1.35vw, 1.3rem);
    font-style: italic;
    line-height: 1.68;
}

.odcv-quote footer {
    margin-top: 18px;
    color: var(--odcv-orange);
    font-weight: 900;
}

/* ==========================================================
   CV – SECȚIUNI
========================================================== */

.odcv-cv {
    padding-top: clamp(58px, 7vw, 92px);
    border-top: 1px solid var(--odcv-line);
}

.odcv-cv + .odcv-cv {
    margin-top: clamp(76px, 8vw, 118px);
}

.odcv-cv-heading {
    margin-bottom: 38px;
}

.odcv-cv-heading h2 {
    margin: 0;
    color: var(--odcv-ink);
    font-size: clamp(2.7rem, 4.4vw, 4.6rem);
    line-height: 1;
    letter-spacing: -.048em;
}

.odcv-entries {
    display: grid;
    gap: 0;
}

.odcv-entry {
    display: grid;
    grid-template-columns: 155px minmax(0, 1fr);
    gap: 28px;
    padding: 25px 0;
    border-top: 1px solid var(--odcv-line);
}

.odcv-entry:last-child {
    border-bottom: 1px solid var(--odcv-line);
}

.odcv-entry__period {
    position: relative;
    padding-left: 26px;
    color: var(--odcv-orange);
    font-size: .9rem;
    font-weight: 900;
    line-height: 1.5;
}

.odcv-entry__period::before {
    position: absolute;
    top: .42em;
    left: 0;
    width: 11px;
    height: 11px;
    border: 3px solid #e7fff7;
    border-radius: 50%;
    background: var(--odcv-orange);
    box-shadow: 0 0 0 1px rgba(255, 106, 19, .18);
    content: "";
}

.odcv-entry__body p {
    margin: 0;
    color: var(--odcv-muted);
    font-size: 1rem;
    line-height: 1.72;
}

/* ==========================================================
   CURSURI
========================================================== */

.odcv-courses {
    display: grid;
    gap: 26px;
}

.odcv-course-year {
    display: grid;
    grid-template-columns: 118px minmax(0, 1fr);
    gap: 32px;
    padding: 30px 0 34px;
    border-top: 1px solid var(--odcv-line);
}

.odcv-course-year:last-child {
    border-bottom: 1px solid var(--odcv-line);
}

.odcv-course-year > h3 {
    position: sticky;
    top: 124px;
    align-self: start;
    margin: 0;
    color: var(--odcv-orange);
    font-size: clamp(1.6rem, 2.4vw, 2.3rem);
    line-height: 1;
}

.admin-bar .odcv-course-year > h3 {
    top: 156px;
}

.odcv-course-year__items {
    min-width: 0;
}

.odcv-course-date {
    margin: 0 0 8px;
    color: var(--odcv-ink);
    font-size: .88rem;
    font-weight: 900;
    line-height: 1.4;
}

.odcv-course-date:not(:first-child) {
    margin-top: 22px;
}

.odcv-course-text {
    margin: 0 0 14px;
    color: var(--odcv-muted);
    font-size: .98rem;
    line-height: 1.72;
}

.odcv-course-text + .odcv-course-text {
    margin-top: 6px;
}

/* ==========================================================
   ANIMAȚII
========================================================== */

.odcv-motion-enabled .odcv-reveal {
    opacity: 0;
    transition:
        opacity 1.35s cubic-bezier(.22, 1, .36, 1),
        transform 1.08s cubic-bezier(.22, 1, .36, 1);
    transition-delay: var(--odcv-delay, 0ms);
    will-change: opacity, transform;
}

.odcv-motion-enabled .odcv-reveal--up {
    transform: translate3d(0, 48px, 0);
}

.odcv-motion-enabled .odcv-reveal--scale {
    transform: translate3d(0, 28px, 0) scale(.965);
}

.odcv-motion-enabled .odcv-reveal.is-visible {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
}

/* ==========================================================
   TABLETĂ – MAX 1024PX
========================================================== */

@media (max-width: 1024px) {
    .odcv-shell {
        width: min(100% - 44px, 900px);
    }

    .odcv-layout {
        grid-template-columns: 1fr;
        gap: 50px;
    }

    .odcv-left-sticky,
    .admin-bar .odcv-left-sticky {
        position: static;
        top: auto;
    }

    .odcv-photo {
        max-width: 620px;
    }

    .odcv-photo img {
        height: auto;
        max-height: 650px;
    }

    .odcv-right-column {
        padding-top: 0;
    }

    .odcv-quote {
        margin-left: 0;
    }

    .odcv-course-year > h3,
    .admin-bar .odcv-course-year > h3 {
        position: static;
        top: auto;
    }
}

/* ==========================================================
   MOBIL – MAX 767PX
========================================================== */

@media (max-width: 767px) {
    .odcv-shell {
        width: min(100% - 32px, 620px);
    }

    .odcv-profile-section {
        padding: 40px 0 72px;
    }

    .odcv-name h1 {
        font-size: clamp(3rem, 15vw, 4.6rem);
    }

    .odcv-photo,
    .odcv-quote {
        border-radius: 20px;
    }

    .odcv-photo img {
        height: auto;
        max-height: 520px;
        min-height: 0;
        padding: 12px;
    }

    .odcv-intro > h2 {
        font-size: clamp(2rem, 7.5vw, 2.8rem);
        line-height: 1.12;
    }

    .odcv-quote {
        padding: 68px 25px 28px;
    }

    .odcv-quote-mark {
        top: 18px;
        left: 24px;
    }

    .odcv-entry {
        grid-template-columns: 1fr;
        gap: 8px;
    }

    .odcv-entry__period {
        padding-left: 24px;
    }

    .odcv-course-year {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .odcv-course-year > h3 {
        font-size: 2rem;
    }
}

/* ==========================================================
   ACCESIBILITATE
========================================================== */

@media (prefers-reduced-motion: reduce) {
    .odcv-motion-enabled .odcv-reveal {
        opacity: 1 !important;
        transform: none !important;
        transition: none !important;
    }
}