/* Moștenire vie: ten original illustrations, live editable type, existing cover/RSVP engine.
   All selectors are collection-scoped. Artwork has no embedded names or event data.
   Source prompts and catalog: tools/invitations/illustrated-models.json and illustrated-art-prompts.json. */

.inv-c--mostenire-vie {
    --f-names: 'EB Garamond', Georgia, serif;
    --f-body: 'Jost', sans-serif;
    --names-size: clamp(2.8rem, 14cqi, 6rem);
    --names-weight: 400;
    --names-line: 1.06;
    --names-spacing: -.035em;
    --names-color: var(--inv-text);
    --names-shadow: none;
    --amp-font: 'Pinyon Script', cursive;
    --amp-size: .6em;
    --amp-color: var(--inv-primary);
    --inv-align: center;
    --inv-items: center;
    --kicker-spacing: .19em;
    --kicker-size: .65rem;
    --date-spacing: .18em;
    --date-size: .75rem;
    --hero-pad: 90px 24px 90px;
    --hero-halo: none;
    --pv-ink: var(--inv-text);
    --art-paper: #f4eddf;
    --pv-sky: var(--art-image) center / cover no-repeat var(--art-paper);
    --pv-far-h: 0px;
    --pv-near-h: 0px;
    --pv-dust-display: none;
    --pv-open-ms: 1800;
    --pv-reveal-ms: 1050;
    --pv-letter-step: 28ms;
    --pv-in-time: .85s;
    --pv-band: color-mix(in srgb, var(--inv-accent) 35%, var(--inv-bg));
    --amb-image: url(../../img/invitations/ornaments/seasonal-sparkle.svg);
    --amb-size: 5px;
    --amb-duration: 22s;
    --amb-anim: inv-twinkle;
    --amb-fill: var(--inv-ornament);
    --amb-opacity: .38;
    --pv-cover-anim: inv-twinkle;
    --button-radius: 2px;
    --box-bg: var(--inv-surface);
    --box-border: 1px solid var(--inv-line);
    --box-radius: 4px;
    --box-shadow: none;
    --photo-radius: 0;
    --pv-kb-photo: none;
    --card-pad: 40px 12px;
}

.inv-c--mostenire-vie .inv-hero { isolation: isolate; }
.inv-c--mostenire-vie .inv-hero::before {
    animation: none;
    transform: none;
    background-position: var(--art-position, center);
}
.inv-c--mostenire-vie .inv-hero__content {
    max-width: 90%;
    padding: 20px 10px;
    animation: none;
    transform: none;
}
.inv-c--mostenire-vie .inv-hero__names { max-width: 100%; }
.inv-c--mostenire-vie .inv-word { overflow-wrap: anywhere; white-space: normal; }
.inv-c--mostenire-vie .inv-hero__names:has(.inv-word:nth-child(2)) { font-size: clamp(2.2rem, 11cqi, 4.8rem); }
.inv-c--mostenire-vie .inv-hero__place { font-size: .62rem; letter-spacing: .12em; }
.inv-c--mostenire-vie .inv-hero__date { margin-top: 26px; }
.inv-c--mostenire-vie .inv-envelope__names {
    max-width: 82%;
    font-size: var(--pv-cover-names, clamp(2.5rem, 13cqi, 5.5rem));
    text-shadow: none;
}
.inv-c--mostenire-vie .inv-envelope__kicker { max-width: 82%; letter-spacing: .16em; }
.inv-c--mostenire-vie .inv-envelope__date { letter-spacing: .16em; }
.inv-c--mostenire-vie .inv-envelope .inv-button {
    border-radius: var(--button-radius);
    background: var(--inv-surface);
    color: var(--inv-text);
    letter-spacing: .12em;
    box-shadow: 0 5px 22px #00000010;
}
.inv-c--mostenire-vie .inv-envelope::before { background-position: var(--art-position, center); }
.inv-c--mostenire-vie .inv-envelope__door--l,
.inv-c--mostenire-vie .inv-envelope__door--r {
    background: var(--art-image) left center / 200% 100% no-repeat var(--art-paper);
    transform-origin: left center;
}
.inv-c--mostenire-vie .orn--hero-divider {
    display: block;
    width: 46px;
    height: 1px;
    margin: 22px 0 0;
    background: var(--inv-primary);
    -webkit-mask: none;
    mask: none;
}
.inv-c--mostenire-vie .inv-monogram { border: 1px solid var(--inv-line); background: transparent; }
.inv-c--mostenire-vie .inv-family__item,
.inv-c--mostenire-vie .inv-program__item { backdrop-filter: none; }
.inv-c--mostenire-vie .inv-hero__scroll { z-index: 2; }
.inv-c--mostenire-vie .inv-envelope__door--r { scale: none; background-position: right center; transform-origin: right center; }
.inv-c--mostenire-vie .inv-envelope.is-opening .inv-envelope__door--r { transform: translateX(101%); }

/* Dor pe in: original illustration, opening 1. */
.inv--dor-pe-in {
    --art-image: url(../../img/invitations/artwork/dor-pe-in.webp);
    --pv-open: none;
    --pv-open-opacity: 0;
    --pv-door-display: block;
    --pv-letter-step: 20ms;
    --pv-in-odd: translateX(-36px);
    --pv-in-even: translateX(36px);
    --art-position: 54% center;
    --photo-ratio: 3 / 4;
}
html.inv-js .inv--dor-pe-in .inv-envelope.is-opening .inv-envelope__door--l { transform: perspective(1000px) rotateY(-100deg); }
html.inv-js .inv--dor-pe-in .inv-envelope.is-opening .inv-envelope__door--r { transform: perspective(1000px) rotateY(100deg); }

/* Horă de fire: original illustration, opening 2. */
.inv--hora-de-fire {
    --art-image: url(../../img/invitations/artwork/hora-de-fire.webp);
    --pv-open: translateY(-105%);
    --pv-open-opacity: 0;
    --pv-door-display: none;
    --pv-letter-step: 23ms;
    --pv-in-odd: translateY(30px);
    --pv-in-even: translateY(30px);
    --art-position: 50% center;
    --photo-ratio: 4 / 5;
}
.inv--hora-de-fire { --names-font: 'Cormorant Garamond', Georgia, serif; --names-style: italic; --names-weight: 400; }

/* Spic și dor: original illustration, opening 3. */
.inv--spic-si-dor {
    --art-image: url(../../img/invitations/artwork/spic-si-dor.webp);
    --pv-open: scale(1.12);
    --pv-open-opacity: 0;
    --pv-door-display: none;
    --pv-letter-step: 26ms;
    --pv-in-odd: translateX(-36px);
    --pv-in-even: translateX(36px);
    --art-position: 50% center;
    --photo-ratio: 3 / 4;
}
.inv--spic-si-dor .orn--hero-divider { width: 8px; height: 8px; transform: rotate(45deg); background: transparent; border: 1px solid var(--inv-primary); }

/* Păsări pereche: original illustration, opening 4. */
.inv--pasari-pereche {
    --art-image: url(../../img/invitations/artwork/pasari-pereche.webp);
    --pv-open: translateX(105%) rotate(4deg);
    --pv-open-opacity: 0;
    --pv-door-display: none;
    --pv-letter-step: 29ms;
    --pv-in-odd: translateY(30px);
    --pv-in-even: translateY(30px);
    --art-position: 54% center;
    --photo-ratio: 4 / 5;
}

/* Poartă de acasă: original illustration, opening 5. */
.inv--poarta-de-acasa {
    --art-image: url(../../img/invitations/artwork/poarta-de-acasa.webp);
    --pv-open: scale(.94);
    --pv-open-opacity: 0;
    --pv-door-display: block;
    --pv-letter-step: 32ms;
    --pv-in-odd: translateX(-36px);
    --pv-in-even: translateX(36px);
    --art-position: 50% center;
    --photo-ratio: 3 / 4;
}
html.inv-js .inv--poarta-de-acasa .inv-envelope.is-opening .inv-envelope__door--l { transform: translate(-105%, -25%) rotate(-12deg); }
html.inv-js .inv--poarta-de-acasa .inv-envelope.is-opening .inv-envelope__door--r { transform: translate(105%, -25%) rotate(12deg); }
.inv--poarta-de-acasa { --names-font: 'Cormorant Garamond', Georgia, serif; --names-style: italic; --names-weight: 400; }

/* Steaua țesută: original illustration, opening 1. */
.inv--steaua-tesuta {
    --art-image: url(../../img/invitations/artwork/steaua-tesuta.webp);
    --pv-open: none;
    --pv-open-opacity: 0;
    --pv-door-display: block;
    --pv-letter-step: 35ms;
    --pv-in-odd: translateY(30px);
    --pv-in-even: translateY(30px);
    --art-position: 50% center;
    --photo-ratio: 4 / 5;
}
html.inv-js .inv--steaua-tesuta .inv-envelope.is-opening .inv-envelope__door--l { transform: perspective(1000px) rotateY(-100deg); }
html.inv-js .inv--steaua-tesuta .inv-envelope.is-opening .inv-envelope__door--r { transform: perspective(1000px) rotateY(100deg); }
.inv--steaua-tesuta .orn--hero-divider { width: 8px; height: 8px; transform: rotate(45deg); background: transparent; border: 1px solid var(--inv-primary); }

/* Fir de busuioc: original illustration, opening 2. */
.inv--fir-de-busuioc {
    --art-image: url(../../img/invitations/artwork/fir-de-busuioc.webp);
    --pv-open: translateY(-105%);
    --pv-open-opacity: 0;
    --pv-door-display: none;
    --pv-letter-step: 38ms;
    --pv-in-odd: translateX(-36px);
    --pv-in-even: translateX(36px);
    --art-position: 54% center;
    --photo-ratio: 3 / 4;
}

/* Zestre de flori: original illustration, opening 3. */
.inv--zestre-de-flori {
    --art-image: url(../../img/invitations/artwork/zestre-de-flori.webp);
    --pv-open: scale(1.12);
    --pv-open-opacity: 0;
    --pv-door-display: none;
    --pv-letter-step: 41ms;
    --pv-in-odd: translateY(30px);
    --pv-in-even: translateY(30px);
    --art-position: 50% center;
    --photo-ratio: 4 / 5;
}
.inv--zestre-de-flori { --names-font: 'Cormorant Garamond', Georgia, serif; --names-style: italic; --names-weight: 400; }

/* Ceramică de dor: original illustration, opening 4. */
.inv--ceramica-de-dor {
    --art-image: url(../../img/invitations/artwork/ceramica-de-dor.webp);
    --pv-open: translateX(105%) rotate(4deg);
    --pv-open-opacity: 0;
    --pv-door-display: none;
    --pv-letter-step: 44ms;
    --pv-in-odd: translateX(-36px);
    --pv-in-even: translateX(36px);
    --art-position: 50% center;
    --photo-ratio: 3 / 4;
}
.inv--ceramica-de-dor .orn--hero-divider { width: 8px; height: 8px; transform: rotate(45deg); background: transparent; border: 1px solid var(--inv-primary); }

/* Brâu de sărbătoare: original illustration, opening 5. */
.inv--brau-de-sarbatoare {
    --art-image: url(../../img/invitations/artwork/brau-de-sarbatoare.webp);
    --pv-open: scale(.94);
    --pv-open-opacity: 0;
    --pv-door-display: block;
    --pv-letter-step: 47ms;
    --pv-in-odd: translateY(30px);
    --pv-in-even: translateY(30px);
    --art-position: 54% center;
    --photo-ratio: 4 / 5;
}
html.inv-js .inv--brau-de-sarbatoare .inv-envelope.is-opening .inv-envelope__door--l { transform: translate(-105%, -25%) rotate(-12deg); }
html.inv-js .inv--brau-de-sarbatoare .inv-envelope.is-opening .inv-envelope__door--r { transform: translate(105%, -25%) rotate(12deg); }


/* Keep cover controls reachable on small / landscape screens and content flexible for long names. */
@media (max-height: 620px) {
    .inv-c--mostenire-vie .inv-envelope { padding: 18px 20px; }
    .inv-c--mostenire-vie .inv-envelope__names { font-size: clamp(1.6rem, 7svh, 2.8rem); }
    .inv-c--mostenire-vie .inv-envelope__date { padding-top: 16px; margin-bottom: 12px; background: none; }
}
@media (min-width: 900px) {
    .inv-c--mostenire-vie { --pv-sky: var(--art-image) center / auto 100% no-repeat var(--art-paper); }
    .inv-c--mostenire-vie .inv-hero__content { width: min(600px, 76%); }
    .inv-c--mostenire-vie .inv-envelope__door--l,
    .inv-c--mostenire-vie .inv-envelope__door--r { background-size: auto 100%; }
}
