/* Stilurile invitațiilor haideti.ro. Perechea fișierului src/inv/engine.mjs: 29 de modele (.m-<id>), două forme (.f-ecran, .f-pagina) și miniatura de galerie (.mini). */
.inv{--ibg:#f6f3ec;--ink:#2b2622;--ac:#9a7b4f;--soft:#ebe5d8;--fn:'Cormorant Garamond',Georgia,serif;--ft:'Jost',system-ui,sans-serif;
  background:var(--ibg);color:var(--ink);font-family:var(--ft);font-size:15px;line-height:1.5;position:relative;text-align:center;max-width:480px;margin:0 auto;min-height:100svh;overflow:hidden;-webkit-font-smoothing:antialiased}
.inv *{box-sizing:border-box;margin:0}
.inv a{color:inherit}
.inv.mini{width:320px;height:568px;min-height:0;max-width:none;margin:0}
.inv .cover{position:relative;display:flex;flex-direction:column;justify-content:center;min-height:100svh;padding:52px 28px 44px;overflow:hidden}
.inv.mini .cover{height:568px;min-height:0;padding:40px 28px 30px}
.inv .deco{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.inv .deco svg,.inv .deco i{position:absolute;display:block}
.inv .d-full{inset:0;width:100%;height:100%}
.inv .d-tl{top:0;left:0}.inv .d-tr{top:0;right:0}.inv .d-bl{bottom:0;left:0}.inv .d-br{bottom:0;right:0}
.inv .d-t{top:0;left:50%;transform:translateX(-50%)}
.inv .rot{transform:rotate(180deg)}.inv .fx{transform:scaleX(-1)}.inv .fy{transform:scaleY(-1)}.inv .fxy{transform:scale(-1)}
.inv .in{position:relative;display:flex;flex-direction:column;gap:13px;align-items:center}
.inv .top{display:none}
.inv .kick{font-size:10px;letter-spacing:.32em;text-transform:uppercase}
.inv .names{font-family:var(--fn);font-weight:300;font-style:italic;font-size:54px;line-height:.92;overflow-wrap:anywhere}
.inv .names .amp{display:block;font:400 11px var(--ft);letter-spacing:.3em;text-transform:uppercase;margin:9px 0;font-style:normal;color:var(--ac)}
.inv .names .nr{display:block}
.inv .lead{font-family:var(--fn);font-size:16.5px;line-height:1.35;max-width:30ch;white-space:pre-line}
.inv .fam{font-size:11.5px;letter-spacing:.06em;line-height:1.5}
.inv .fam b{font-weight:500;letter-spacing:.2em;text-transform:uppercase;font-size:9.5px;display:block;color:var(--ac)}
.inv .fam b:not(:first-child){margin-top:6px}
.inv .date{font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;border-block:1px solid var(--ac);padding:8px 14px}
.inv .prog{list-style:none;padding:0;font-size:12.5px;line-height:1.55}
.inv .prog b{font-weight:500}
.inv .prog li+li{margin-top:3px}
.inv .cta{display:inline-block;background:var(--ink);color:var(--ibg);font:500 11px var(--ft);letter-spacing:.2em;text-transform:uppercase;padding:12px 22px;border-radius:99px;border:0;cursor:pointer;text-decoration:none}
.inv .sig{font-size:9px;letter-spacing:.14em;opacity:.6}
.inv .sig a{text-decoration:none}
.inv .ph img{width:100%;height:100%;object-fit:cover;display:block}
.inv .capcana{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}

/* ----- secțiunile paginii ----- */
.inv section,.inv .s-end{padding:46px 26px;display:flex;flex-direction:column;gap:16px;align-items:center;position:relative;border-top:1px solid color-mix(in srgb,var(--ink) 14%,transparent)}
.inv .h{font:500 10px var(--ft);letter-spacing:.3em;text-transform:uppercase;color:var(--ac)}
.inv .sk-h{font-family:var(--fn);font-size:30px;line-height:1.08;font-weight:400}
.inv .mic{font-size:13.5px}
.inv .txt{font-family:var(--fn);font-size:19px;line-height:1.42;white-space:pre-line;max-width:30ch}
.inv .cd{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;width:100%}
.inv .cd div{background:var(--soft);padding:12px 2px;border-radius:8px}
.inv .cd b{font:400 28px/1 var(--fn);display:block;font-variant-numeric:tabular-nums}
.inv .cd span{font-size:9px;letter-spacing:.2em;text-transform:uppercase}
.inv .ppl{display:flex;flex-direction:column;gap:16px;width:100%}
.inv .ppl p{font-family:var(--fn);font-size:21px;line-height:1.2}
.inv .ppl small{display:block;font:500 9.5px var(--ft);letter-spacing:.24em;text-transform:uppercase;color:var(--ac);margin-bottom:3px}
.inv .ev{width:100%;border:1px solid color-mix(in srgb,var(--ink) 22%,transparent);border-radius:10px;padding:16px;display:flex;flex-direction:column;gap:4px;text-align:left}
.inv .ev b{font:400 21px/1.2 var(--fn)}.inv .ev span{font-size:13.5px}
.inv .ev em{font-style:normal;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--ac)}
.inv .maps{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap}
.inv .maps a{font-size:12.5px;border:1px solid currentColor;border-radius:99px;padding:6px 14px;text-decoration:none}
.inv .portret{width:min(280px,100%);aspect-ratio:4/5;overflow:hidden;border-radius:6px}
.inv .portret img{width:100%;height:100%;object-fit:cover;display:block}
.inv .gal{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%}
.inv .gal img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:6px;display:block}
.inv .gal img:first-child:nth-last-child(odd){grid-column:1/-1;aspect-ratio:3/2}
.inv form{width:100%;display:flex;flex-direction:column;gap:13px;text-align:left}
.inv label{font-size:12px;letter-spacing:.06em;display:block;margin-bottom:4px}
.inv input[type=text],.inv textarea{width:100%;font:400 16px var(--ft);padding:11px 12px;border:1px solid color-mix(in srgb,var(--ink) 35%,transparent);border-radius:8px;background:transparent;color:inherit}
.inv .opt{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.inv .opt.n{grid-template-columns:repeat(auto-fit,minmax(48px,1fr))}
.inv .opt button{font:500 14px var(--ft);padding:12px 4px;border-radius:8px;border:1px solid color-mix(in srgb,var(--ink) 35%,transparent);background:transparent;color:inherit;cursor:pointer}
.inv .opt button[aria-pressed="true"]{background:var(--ink);color:var(--ibg);border-color:var(--ink)}
.inv form .cta{align-self:stretch;padding:15px;font-size:12px;text-align:center}
.inv form .cta[disabled]{opacity:.6}
.inv .thanks{font-family:var(--fn);font-size:24px;line-height:1.2}
.inv .err{font-size:13.5px;color:#b3261e}
.inv .s-end{padding-bottom:90px;gap:12px}
.inv .rap{background:none;border:0;color:inherit;opacity:.5;font:400 11px var(--ft);text-decoration:underline;cursor:pointer;margin-top:10px}
.inv .float{position:fixed;left:0;right:0;bottom:14px;z-index:4;display:flex;justify-content:center;pointer-events:none}
.inv .float .cta{pointer-events:auto;box-shadow:0 8px 20px -8px rgba(0,0,0,.6)}
.inv :focus-visible{outline:2px solid var(--ac);outline-offset:3px}
/* plicul */
.inv .env{position:fixed;inset:0;max-width:480px;margin:0 auto;z-index:5;background:var(--envbg,var(--ibg));display:grid;place-items:center;cursor:pointer;border:0;padding:0;width:100%;transition:transform .7s cubic-bezier(.6,0,.3,1) .35s,opacity .3s 1s}
.inv .env::before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.09);clip-path:polygon(0 0,100% 0,50% 52%);transform-origin:top;transition:transform .5s}
.inv .env::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.06),transparent 60%);clip-path:polygon(0 100%,50% 52%,100% 100%)}
.inv .seal{--s:var(--sealc,var(--ac));position:relative;z-index:1;width:92px;height:92px;border-radius:47% 53% 50% 50%/52% 48% 52% 48%;background:radial-gradient(circle at 35% 30%,color-mix(in srgb,var(--s) 70%,#fff),var(--s) 55%,color-mix(in srgb,var(--s) 70%,#000));display:grid;place-items:center;color:var(--sealt,rgba(255,255,255,.92));font:italic 500 30px 'Cormorant Garamond',serif;box-shadow:0 6px 14px -6px rgba(0,0,0,.6),inset 0 0 0 5px rgba(255,255,255,.12);margin-top:4%;transition:transform .35s,opacity .35s}
.inv .env small{position:absolute;bottom:17%;left:0;right:0;font:500 10px 'Jost',sans-serif;letter-spacing:.3em;text-transform:uppercase;color:var(--ink);opacity:.7}
.inv .env.open{transform:translateY(-102%);opacity:0;pointer-events:none}
.inv .env.open::before{transform:rotateX(160deg)}.inv .env.open .seal{transform:scale(1.5);opacity:0}
.js-inv .inv section,.js-inv .inv .s-end{opacity:0;transform:translateY(14px);transition:opacity .6s,transform .6s}
.js-inv .inv section.viz,.js-inv .inv .s-end.viz{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.inv .env,.inv .env::before,.inv .seal{transition:none}.js-inv .inv section,.js-inv .inv .s-end{opacity:1;transform:none;transition:none}}

/* ===== NUNTĂ ===== */
/* Grădină */
.m-gradina .names{font-weight:500;color:var(--ac);font-size:50px}
.m-gradina .cta{background:var(--ac)}
.m-gradina .d-tr{top:-52px;right:-62px}.m-gradina .d-bl{bottom:-52px;left:-62px}
/* Ie */
.m-ie{--fn:'Fraunces',Georgia,serif}
.m-ie .cover{padding-block:66px 62px}.m-ie.mini .cover{padding-block:56px 54px}
.m-ie .d-banda{left:0;right:0;height:36px;background-repeat:repeat-x;background-position:center;background-size:48px 36px}
.m-ie .d-banda.sus{top:0}.m-ie .d-banda.jos{bottom:0}
.m-ie .names{font-style:normal;font-weight:600;font-size:44px;line-height:1}
.m-ie .cta{background:var(--ac);border-radius:0}
.m-ie .date{border-color:var(--ink)}
.m-ie .portret{border-radius:0;border:1px solid var(--ink);padding:6px;background:var(--ibg)}
/* Acuarelă */
.m-acuarela{background:radial-gradient(circle at 12% 8%,var(--soft),transparent 46%),radial-gradient(circle at 90% 94%,var(--soft),transparent 46%),var(--ibg)}
.m-acuarela .names{font:400 62px/0.9 'Pinyon Script',cursive;color:var(--ac);padding-block:6px}
.m-acuarela .names .amp{font:400 30px 'Pinyon Script',cursive;text-transform:none;letter-spacing:0;margin:0;color:var(--ink);opacity:.7}
.m-acuarela .d-tl{top:-56px;left:-60px}.m-acuarela .d-br{bottom:-56px;right:-60px}
.m-acuarela .cover{padding-top:66px}
.m-acuarela .cta{background:var(--ac)}
.m-acuarela .date{border-color:var(--c2)}
.m-acuarela .portret{border-radius:50%;aspect-ratio:1;border:6px solid var(--soft)}
/* Reportaj */
.m-reportaj{--fn:'Fraunces',Georgia,serif}
.m-reportaj .cover{justify-content:flex-end;color:#fff;text-align:left;background:#222}
.m-reportaj .cover>.ph{position:absolute;inset:0}
.m-reportaj .cover::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(0,0,0,0) 22%,var(--veil,rgba(20,14,18,.9)) 68%)}
.m-reportaj .in{align-items:flex-start;gap:10px;z-index:2}
.m-reportaj .names{font-size:50px;font-weight:300}
.m-reportaj .names .amp{display:inline;font:italic 300 40px var(--fn);letter-spacing:0;text-transform:none;margin:0;color:var(--ac)}
.m-reportaj .cover .lead,.m-reportaj .cover .fam b{display:none}
.m-reportaj .cover .date{border:0;padding:0;color:var(--ac)}
.m-reportaj .cover .cta{background:#fff;color:#1c1418}
.m-reportaj .cover .sig{color:#fff}
/* Polaroid */
.m-polaroid{--fn:'Caveat',cursive}
.m-polaroid .cover .ph{width:216px;background:#fff;padding:10px 10px 38px;transform:rotate(-3deg);box-shadow:0 14px 30px -14px rgba(0,0,0,.55);position:relative;margin-bottom:6px}
.m-polaroid .cover .ph::before{content:"";position:absolute;top:-12px;left:50%;width:74px;height:24px;background:color-mix(in srgb,var(--ac) 45%,transparent);transform:translateX(-50%) rotate(2deg)}
.m-polaroid .cover .ph img{aspect-ratio:1;height:auto}
.m-polaroid.mini .cover .ph{width:168px;padding:8px 8px 28px}
.m-polaroid .names{font-style:normal;font-weight:700;font-size:50px;line-height:.95}
.m-polaroid .names .amp{display:inline;font:700 34px 'Caveat',cursive;letter-spacing:0;text-transform:none;margin:0}
.m-polaroid .lead,.m-polaroid .txt{font-size:21px;line-height:1.2}
.m-polaroid .sk-h{font-weight:700;font-size:36px}
.m-polaroid .ppl p,.m-polaroid .ev b{font-size:25px}
.m-polaroid .cd b{font-weight:700;font-size:32px}
.m-polaroid .cta{background:var(--ac);border-radius:4px}
.m-polaroid .portret,.m-polaroid .gal img{background:#fff;padding:8px 8px 26px;border-radius:0;box-shadow:0 10px 24px -14px rgba(0,0,0,.5)}
.m-polaroid .portret{transform:rotate(2deg)}
.m-polaroid.mini .lead,.m-portret.mini .lead,.m-portret.mini .fam{display:none}
/* Seară */
.m-seara{--fn:'Bodoni Moda',Georgia,serif}
.m-seara .cover::after{content:"";position:absolute;inset:12px;border:1px solid var(--ac);pointer-events:none;opacity:.7}
.m-seara .names{font-style:normal;font-weight:400;text-transform:uppercase;letter-spacing:.08em;font-size:38px;line-height:1.05}
.m-seara .names .amp{font:400 34px 'Pinyon Script',cursive;text-transform:none;letter-spacing:0;margin:0}
.m-seara .kick,.m-seara .date{color:var(--ac)}
.m-seara .cta{background:var(--ac);color:var(--ibg)}
.m-seara .lead,.m-seara .txt{font-style:italic}
.m-seara.mini .lead{font-size:14.5px}.m-seara.mini .names{font-size:34px}
.m-seara .err,.m-steluta .err,.m-neon .err{color:#ffb4a8}
.m-seara .portret{border:1px solid var(--ac);padding:6px;border-radius:0}
/* Boho */
.m-boho{--fn:'Fraunces',Georgia,serif}
.m-boho .cover{padding-top:118px;justify-content:flex-start}.m-boho.mini .cover{padding-top:108px}
.m-boho .lead{font-weight:300;font-size:15px}.m-boho .txt{font-weight:300;font-size:17.5px}
.m-boho .cover::before{content:"";position:absolute;inset:64px 20px 20px;border-radius:170px 170px 0 0;background:var(--soft)}
.m-boho .d-t{top:6px}
.m-boho .names{font-size:48px;font-weight:300}
.m-boho .cta{background:var(--ac)}
.m-boho .portret,.m-lumina .portret,.m-curcubeu .portret{border-radius:150px 150px 6px 6px}
/* Riviera */
.m-riviera{--fn:'Bodoni Moda',Georgia,serif}
.m-riviera .cover{padding-top:100px;padding-bottom:84px;justify-content:flex-start}.m-riviera.mini .cover{padding-top:84px;padding-bottom:70px}
.m-riviera .d-dungi{top:0;left:0;right:0;height:22px;background:repeating-linear-gradient(90deg,var(--ac) 0 14px,var(--ibg) 14px 28px)}
.m-riviera .stampila{top:34px;right:14px;width:62px;transform:rotate(12deg);opacity:.85}
.m-riviera .d-val{bottom:0;left:0;width:100%;height:56px}
.m-riviera .names{font-size:50px;font-weight:400;color:var(--ac)}
.m-riviera .cta{background:var(--ac)}
.m-riviera .date{border-color:var(--c2);border-width:2px}
.m-riviera .portret{border:8px solid #fff;border-radius:0;box-shadow:0 10px 24px -14px rgba(0,0,0,.45);transform:rotate(-2deg)}
/* Gazeta */
.m-gazeta{--fn:'Abril Fatface',Georgia,serif;--ft:'Cormorant Garamond',Georgia,serif}
.m-gazeta .cover{justify-content:flex-start;padding-top:28px}.m-gazeta.mini .cover{padding-top:24px}
.m-gazeta .cover .in{gap:10px}
.m-gazeta .top{display:block;width:100%;border-bottom:3px double var(--ink);padding-bottom:6px}
.m-gazeta .top b{font:400 30px/1 'Abril Fatface',serif;display:block}
.m-gazeta .top span{font:500 9px 'Jost',sans-serif;letter-spacing:.16em;text-transform:uppercase}
.m-gazeta .kick{font:500 9px 'Jost',sans-serif;background:var(--ink);color:var(--ibg);padding:3px 10px;letter-spacing:.2em}
.m-gazeta .names{font-style:normal;font-weight:400;font-size:46px;line-height:.95}
.m-gazeta .names .amp{display:inline;font:italic 500 34px 'Cormorant Garamond',serif;letter-spacing:0;text-transform:none;margin:0;color:inherit}
.m-gazeta .lead{font-family:'Cormorant Garamond',serif;font-size:16px;text-align:left;max-width:none;columns:2;column-gap:16px;column-rule:1px solid var(--ink);line-height:1.22;white-space:normal}
.m-gazeta .fam{font-size:14px;letter-spacing:0}
.m-gazeta .fam b,.m-gazeta .date,.m-gazeta .h,.m-gazeta .cta,.m-gazeta .sig,.m-gazeta .cd span,.m-gazeta .ppl small,.m-gazeta .ev em{font-family:'Jost',sans-serif}
.m-gazeta .date{border-color:var(--ink);width:100%}
.m-gazeta .prog{font-size:15px;line-height:1.3}
.m-gazeta .cta{border-radius:0;background:var(--ac)}
.m-gazeta .txt,.m-gazeta .ppl p,.m-gazeta .ev b{font-family:'Cormorant Garamond',serif}
.m-gazeta .txt{font-size:20px}
.m-gazeta .ev span,.m-gazeta .mic,.m-gazeta label{font-size:15px}
.m-gazeta .portret,.m-gazeta .gal img{filter:grayscale(1) contrast(1.1);border-radius:0}
.m-gazeta section{border-top:3px double var(--ink)}

/* ===== BOTEZ ===== */
.m-norisor,.m-steluta,.m-balon,.m-confetti,.m-neon{--fn:'Fredoka',system-ui,sans-serif;--ft:'DM Sans',system-ui,sans-serif}
.m-norisor .names,.m-steluta .names,.m-balon .names{font-style:normal;font-weight:600;font-size:60px;color:var(--ac);line-height:1}
.m-norisor .lead,.m-steluta .lead,.m-balon .lead,.m-confetti .lead,.m-neon .lead,.m-curcubeu .lead{font:400 15px/1.45 'DM Sans',sans-serif}
.m-norisor .txt,.m-steluta .txt,.m-balon .txt,.m-confetti .txt,.m-neon .txt,.m-afis .txt,.m-curcubeu .txt{font:400 16.5px/1.5 'DM Sans',sans-serif}
.m-norisor .cta,.m-steluta .cta,.m-balon .cta{background:var(--ac);color:var(--ibg);letter-spacing:.06em;font-size:13px;text-transform:none}
.m-norisor .date,.m-steluta .date,.m-balon .date,.m-curcubeu .date{border:0;background:var(--soft);border-radius:99px;letter-spacing:.12em}
.m-norisor .cd b,.m-steluta .cd b,.m-balon .cd b,.m-confetti .cd b,.m-neon .cd b{font-weight:600}
.m-norisor .sk-h,.m-steluta .sk-h,.m-balon .sk-h,.m-confetti .sk-h,.m-neon .sk-h{font-weight:600;font-size:27px}
.m-norisor .ppl p,.m-steluta .ppl p,.m-balon .ppl p,.m-confetti .ppl p,.m-norisor .ev b,.m-steluta .ev b,.m-balon .ev b,.m-confetti .ev b,.m-neon .ev b{font-family:'DM Sans',sans-serif;font-weight:500;font-size:18px}
.m-norisor .portret,.m-steluta .portret,.m-balon .portret,.m-confetti .portret{border-radius:50%;aspect-ratio:1;border:6px solid var(--soft)}
.m-norisor .d-tl{top:40px;left:-34px}.m-norisor .d-r{top:118px;right:-30px}.m-norisor .d-bl{bottom:40px;left:-30px}.m-norisor .d-br{bottom:112px;right:-18px}
.m-steluta .luna{top:26px;right:24px}
.m-steluta{--sealt:#3a2a10}
.m-balon .d-tr{top:10px;right:-4px;width:72px}.m-balon .d-bl.mic{bottom:64px;left:14px}.m-balon .d-tl{top:70px;left:-36px}.m-balon .d-br{bottom:14px;right:-30px}
/* Curcubeu */
.m-curcubeu{--fn:'Fraunces',Georgia,serif;--ft:'DM Sans',system-ui,sans-serif}
.m-curcubeu .cover{padding-top:124px;justify-content:flex-start}.m-curcubeu.mini .cover{padding-top:112px}
.m-curcubeu .d-t{top:26px;width:150px}
.m-curcubeu .names{font-style:normal;font-weight:600;font-size:56px;color:var(--ac);line-height:1}
.m-curcubeu .cta{background:var(--ac);text-transform:none;letter-spacing:.06em;font-size:13px}
.m-curcubeu .kick{color:var(--c4)}
/* Lumină */
.m-lumina .cover{padding-top:104px;justify-content:flex-start}.m-lumina.mini .cover{padding-top:88px}
.m-lumina .lead{font-size:15.5px}
.m-lumina .cover::after{content:"";position:absolute;inset:16px;border:1px solid var(--ac);opacity:.55;pointer-events:none}
.m-lumina .d-t{top:34px}
.m-lumina .c.d-tl{top:8px;left:8px}.m-lumina .c.d-tr{top:8px;right:8px}.m-lumina .c.d-bl{bottom:8px;left:8px}.m-lumina .c.d-br{bottom:8px;right:8px}
.m-lumina .names{font-weight:500;font-size:60px;color:var(--ac)}
.m-lumina .cta{background:var(--ac)}
/* Portret */
.m-portret{--fn:'Fraunces',Georgia,serif}
.m-portret .cover .ph{width:200px;aspect-ratio:4/5;border-radius:100px 100px 8px 8px;overflow:hidden;outline:1px solid var(--ac);outline-offset:6px;margin-bottom:10px}
.m-portret.mini .cover .ph{width:164px}
.m-portret .names{font-style:normal;font-weight:600;font-size:50px;line-height:1}
.m-portret .cta{background:var(--ac)}

/* ===== ZI DE NAȘTERE ===== */
/* Afiș */
.m-afis{--fn:'Fraunces',Georgia,serif;--ft:'DM Sans',system-ui,sans-serif;--sealc:var(--ink);--sealt:var(--ibg)}
.m-afis .cover{text-align:left}
.m-afis .cover .in{align-items:flex-start;gap:12px}
.m-afis .names{font-style:normal;font-weight:900;font-size:66px;line-height:.86;text-transform:uppercase;letter-spacing:-.02em}
.m-afis .names .n1{display:block}
.m-afis .names .amp{display:inline;font:inherit;letter-spacing:inherit;margin:0;color:inherit}
.m-afis .names .nr{display:inline;color:var(--ac)}
.m-afis .kick{background:var(--ink);color:var(--ibg);padding:4px 10px;letter-spacing:.16em}
.m-afis .lead{font:500 16px/1.35 'DM Sans',sans-serif}
.m-afis .cover .date{border:0;padding:0;font-weight:700;font-size:13px;letter-spacing:.1em}
.m-afis .cta{background:var(--ac);color:var(--ink);font-weight:700;border-radius:6px}
.m-afis .fam b,.m-afis .h,.m-afis .ev em,.m-afis .ppl small{color:inherit;opacity:.75}
.m-afis .benzi{top:66%;right:-34px;transform:rotate(-18deg)}
.m-afis .sk-h{font-weight:900;text-transform:uppercase;letter-spacing:-.01em}
.m-afis .ev b{font-weight:600}
.m-afis .cd div{background:var(--ink);color:var(--ibg)}
.m-afis .portret{border-radius:0;border:6px solid var(--ink)}
/* Confetti */
.m-confetti .names{font-style:normal;font-weight:700;font-size:60px;line-height:.95;color:var(--ac)}
.m-confetti .names .amp{font:600 15px 'DM Sans',sans-serif;letter-spacing:.2em;color:var(--ink);margin:6px 0}
.m-confetti .names .nr{color:var(--c4)}
.m-confetti .kick{background:var(--c2);color:var(--ink);padding:5px 12px;border-radius:99px;letter-spacing:.14em;font-weight:700}
.m-confetti .cta{background:var(--ac);color:#fff;text-transform:none;letter-spacing:.04em;font-size:13.5px;font-weight:700}
.m-confetti .date{border:0;background:var(--soft);border-radius:99px;letter-spacing:.12em;font-weight:700}
.m-confetti .h{color:var(--c4)}
/* Neon */
.m-neon{--sealt:#0d0b14}
.m-neon .cover::after{content:"";position:absolute;inset:16px;border:2px solid var(--c2);border-radius:20px;box-shadow:0 0 14px var(--c2),inset 0 0 14px color-mix(in srgb,var(--c2) 60%,transparent);pointer-events:none}
.m-neon .names{font-style:normal;font-weight:600;font-size:58px;line-height:.98;color:#fff;text-shadow:0 0 6px var(--ac),0 0 20px var(--ac),0 0 44px var(--ac)}
.m-neon .names .amp{font:500 13px 'DM Sans',sans-serif;letter-spacing:.3em;color:var(--c2);text-shadow:0 0 10px var(--c2);margin:8px 0}
.m-neon .names .nr{color:var(--ac);text-shadow:0 0 6px #fff,0 0 22px var(--ac)}
.m-neon .kick{color:var(--c2);text-shadow:0 0 10px var(--c2)}
.m-neon .date{border-color:var(--c2)}
.m-neon .cta{background:transparent;color:#fff;border:2px solid var(--ac);box-shadow:0 0 14px var(--ac),inset 0 0 10px color-mix(in srgb,var(--ac) 50%,transparent)}
.m-neon .float .cta{background:var(--ibg)}
.m-neon .portret{border:2px solid var(--ac);box-shadow:0 0 18px var(--ac);border-radius:16px}
.m-neon .opt button[aria-pressed="true"]{background:var(--ac);border-color:var(--ac);color:#0d0b14}
/* Retro */
.m-retro{--fn:'Abril Fatface',Georgia,serif;--ft:'DM Sans',system-ui,sans-serif}
.m-retro .cover{padding-top:156px;justify-content:flex-start}.m-retro.mini .cover{padding-top:146px}
.m-retro .d-raze{top:0;left:0;width:100%;height:128px;transform:scaleY(-1)}
.m-retro .names{font-style:normal;font-weight:400;font-size:54px;line-height:.95;text-shadow:3px 3px 0 var(--c2)}
.m-retro .names .amp{font:700 13px 'DM Sans',sans-serif;letter-spacing:.3em;text-shadow:none;margin:8px 0}
.m-retro .names .nr{color:var(--ac)}
.m-retro .lead{font:500 15.5px/1.4 'DM Sans',sans-serif}
.m-retro .txt{font:400 17px/1.5 'DM Sans',sans-serif}
.m-retro .date{border-color:var(--ink);border-width:2px;font-weight:700}
.m-retro .cta{background:var(--ac);color:var(--ibg);font-weight:700;border-radius:4px;box-shadow:3px 3px 0 var(--ink)}
.m-retro .float .cta{box-shadow:3px 3px 0 var(--ink)}
.m-retro .portret{border-radius:50%;aspect-ratio:1;border:6px solid var(--c2)}
.m-reportaj{--envbg:var(--soft);--sealc:var(--ink);--sealt:var(--ibg)}
.m-gazeta{--sealc:#8a2a2a}
.m-seara{--sealt:#1a1408}
.m-polaroid .ev b,.m-polaroid .ppl p{line-height:1.05}

/* ===== MODELELE DIN 8 OCT 2026: botez (Îngeraș, Mușețel, Porumbel), majorat (Optsprezece, Disco, Gală), ziua copilului (Baloane, Rachetă, Coroniță) ===== */
/* Îngeraș */
.m-ingeras .cover{padding-top:118px;justify-content:flex-start}.m-ingeras.mini .cover{padding-top:98px}
.m-ingeras .d-t{top:26px;width:190px}.m-ingeras.mini .d-t{top:20px;width:170px}
.m-ingeras .names{font-weight:500;font-size:52px;color:var(--ac)}
.m-ingeras .in{gap:11px}
.m-ingeras .cta{background:var(--ac);color:#fff}
.m-ingeras .cover::after{content:"";position:absolute;inset:14px;border:1px solid var(--ac);border-radius:140px 140px 10px 10px;opacity:.5;pointer-events:none}
.m-ingeras .lead{font-size:15px;line-height:1.3}
/* Mușețel */
.m-musetel{--fn:'Fraunces',Georgia,serif;--ft:'DM Sans',system-ui,sans-serif}
.m-musetel .d-tl{top:-34px;left:-40px}.m-musetel .d-br{bottom:-34px;right:-40px}
.m-musetel .names{font-style:normal;font-weight:600;font-size:56px;line-height:1;color:var(--ac)}
.m-musetel .lead{font:400 15px/1.45 'DM Sans',sans-serif}.m-musetel .txt{font:400 16.5px/1.5 'DM Sans',sans-serif}
.m-musetel .date{border:0;background:var(--soft);border-radius:99px;letter-spacing:.12em}
.m-musetel .cta{background:var(--ac);color:#fff;text-transform:none;letter-spacing:.06em;font-size:13px}
.m-musetel .cover{padding-block:76px 70px}
.m-musetel .portret{border-radius:50%;aspect-ratio:1;border:6px solid var(--soft)}
/* Porumbel */
.m-porumbel .cover{padding-top:118px;justify-content:flex-start}.m-porumbel.mini .cover{padding-top:100px}
.m-porumbel .d-t{top:24px;width:96px}.m-porumbel.mini .d-t{top:18px;width:86px}
.m-porumbel .names{font-weight:500;font-size:52px;color:var(--ac)}
.m-porumbel .in{gap:11px}
.m-porumbel .cta{background:var(--ac);color:#fff}
.m-porumbel .date{border-color:var(--ac)}
.m-porumbel .lead{font-size:15px;line-height:1.3}
/* Optsprezece */
.m-optsprezece{--fn:'Abril Fatface',Georgia,serif;--ft:'DM Sans',system-ui,sans-serif;--sealt:#16130a}
.m-optsprezece .names{font-style:normal;font-weight:400;font-size:58px;line-height:.96}
.m-optsprezece .names .amp{font:700 12px 'DM Sans',sans-serif;letter-spacing:.3em;margin:8px 0}
.m-optsprezece .names .nr{color:var(--ac)}
.m-optsprezece .kick{background:var(--ac);color:var(--ibg);padding:5px 12px;letter-spacing:.2em;font-weight:700}
.m-optsprezece .lead{font:500 15.5px/1.4 'DM Sans',sans-serif}.m-optsprezece .txt{font:400 17px/1.5 'DM Sans',sans-serif}
.m-optsprezece .date{border-color:var(--ac);font-weight:700}
.m-optsprezece .cta{background:var(--ac);color:var(--ibg);font-weight:700;border-radius:4px}
.m-optsprezece .portret{border-radius:0;border:3px solid var(--ac)}
.m-optsprezece .opt button[aria-pressed="true"]{background:var(--ac);border-color:var(--ac);color:var(--ibg)}
/* Disco */
.m-disco{--fn:'Fraunces',Georgia,serif;--ft:'DM Sans',system-ui,sans-serif;--sealt:#2a1a3a;background:linear-gradient(160deg,var(--ibg) 0%,var(--g2) 100%) fixed}
.m-disco .cover{padding-top:122px;justify-content:flex-start}.m-disco.mini .cover{padding-top:104px}
.m-disco .d-t{top:0;width:86px}.m-disco.mini .d-t{width:74px}
.m-disco .in{gap:10px}
.m-disco .names{font-weight:900;font-size:52px;line-height:.92;text-shadow:0 4px 0 rgba(0,0,0,.18)}
.m-disco .names .amp{font:700 12px 'DM Sans',sans-serif;letter-spacing:.3em;margin:8px 0;color:var(--ac)}
.m-disco .names .nr{color:var(--ac);font-style:normal}
.m-disco .kick{color:var(--ac);font-weight:700}
.m-disco .lead{font:500 15.5px/1.4 'DM Sans',sans-serif}.m-disco .txt{font:400 17px/1.5 'DM Sans',sans-serif}
.m-disco .date{border-color:var(--ac);font-weight:700}
.m-disco .cta{background:var(--ac);color:#2a1a3a;font-weight:700}
.m-disco .cd div,.m-disco .ev{background:rgba(255,255,255,.12)}
.m-disco .portret{border-radius:50%;aspect-ratio:1;border:5px solid var(--ac)}
.m-disco .opt button[aria-pressed="true"]{background:var(--ac);border-color:var(--ac);color:#2a1a3a}
.m-disco .float .cta{box-shadow:0 8px 20px -6px rgba(0,0,0,.7)}
/* Gală */
.m-gala{--fn:'Bodoni Moda',Georgia,serif;--sealt:#1a1408}
.m-gala .cover{padding-top:124px;justify-content:flex-start}.m-gala.mini .cover{padding-top:106px}
.m-gala .d-t{top:30px;width:68px}.m-gala.mini .d-t{top:26px;width:58px}
.m-gala .in{gap:10px}
.m-gala .cover::after{content:"";position:absolute;inset:14px;border:1px solid var(--ac);opacity:.6;pointer-events:none}
.m-gala .names{font-style:normal;font-weight:400;font-size:36px;line-height:1.05;text-transform:uppercase;letter-spacing:.03em;overflow-wrap:normal}
.m-gala .names .n1{display:block}
.m-gala .names .amp{margin:6px 0}
.m-gala .names .nr{font-size:40px}
.m-gala .lead{font-size:15px;line-height:1.3}
.m-gala .names .amp{color:var(--ac)}
.m-gala .names .nr{color:var(--ac);font-style:italic;text-transform:none}
.m-gala .cta{background:var(--ac);color:#14110a}
.m-gala .date{border-color:var(--ac)}
.m-gala .opt button[aria-pressed="true"]{background:var(--ac);border-color:var(--ac);color:#14110a}
/* Baloane, Rachetă, Coroniță: aceeași familie de litere, rotundă */
.m-baloane,.m-racheta,.m-coronita{--fn:'Fredoka',system-ui,sans-serif;--ft:'DM Sans',system-ui,sans-serif}
.m-baloane .names,.m-racheta .names,.m-coronita .names{font-style:normal;font-weight:700;font-size:52px;line-height:.96}
.m-baloane .names .amp,.m-racheta .names .amp,.m-coronita .names .amp{font:700 14px 'DM Sans',sans-serif;letter-spacing:.2em;margin:6px 0}
.m-baloane .lead,.m-racheta .lead,.m-coronita .lead{font:400 15px/1.45 'DM Sans',sans-serif}
.m-baloane .txt,.m-racheta .txt,.m-coronita .txt{font:400 16.5px/1.5 'DM Sans',sans-serif}
.m-baloane .cd b,.m-racheta .cd b,.m-coronita .cd b{font-weight:600}
.m-baloane .sk-h,.m-racheta .sk-h,.m-coronita .sk-h{font-weight:600;font-size:27px}
.m-baloane .ppl p,.m-racheta .ppl p,.m-coronita .ppl p,.m-baloane .ev b,.m-racheta .ev b,.m-coronita .ev b{font-family:'DM Sans',sans-serif;font-weight:500;font-size:18px}
.m-baloane .date,.m-racheta .date,.m-coronita .date{border:0;background:var(--soft);border-radius:99px;letter-spacing:.12em;font-weight:700}
.m-baloane .cta,.m-racheta .cta,.m-coronita .cta{text-transform:none;letter-spacing:.04em;font-size:13.5px;font-weight:700}
.m-baloane .portret,.m-racheta .portret,.m-coronita .portret{border-radius:50%;aspect-ratio:1;border:6px solid var(--soft)}
.m-baloane .cover{padding-top:156px;justify-content:flex-start}.m-baloane.mini .cover{padding-top:128px}
.m-baloane .d-t{top:4px;width:150px}.m-baloane.mini .d-t{width:124px}
.m-baloane .in{gap:10px}
.m-baloane .names{color:var(--ac)}.m-baloane .names .nr{color:var(--c4)}
.m-baloane .kick{background:var(--c2);color:var(--ink);padding:5px 12px;border-radius:99px;letter-spacing:.14em;font-weight:700}
.m-baloane .cta{background:var(--c4);color:#fff}
.m-baloane .h{color:var(--c4)}
.m-racheta{--sealt:#14213d}
.m-racheta .rk{top:26px;right:22px;transform:rotate(28deg)}
.m-racheta .pl{bottom:20px;left:-26px}
.m-racheta .names{color:#fff}.m-racheta .names .nr{color:var(--ac)}.m-racheta .names .amp{color:var(--c3)}
.m-racheta .kick{color:var(--ac);font-weight:700}
.m-racheta .cta{background:var(--ac);color:#14213d}
.m-racheta .opt button[aria-pressed="true"]{background:var(--ac);border-color:var(--ac);color:#14213d}
.m-racheta .cover{padding-top:96px}
.m-coronita .cover{padding-top:118px;justify-content:flex-start}.m-coronita.mini .cover{padding-top:100px}
.m-coronita .d-t{top:28px;width:90px}.m-coronita.mini .d-t{top:24px;width:76px}
.m-coronita .in{gap:10px}
.m-coronita .names{color:var(--ac)}.m-coronita .names .nr{color:var(--c2)}
.m-coronita .kick{color:var(--ac);font-weight:700}
.m-coronita .cta{background:var(--ac);color:#fff}
.m-coronita .cover::after{content:"";position:absolute;inset:12px;border:2px dashed var(--c2);border-radius:26px;opacity:.7;pointer-events:none}

/* butonul plutitor dispare cât formularul de confirmare e pe ecran (hidden trebuie să bată display:flex) */
.float[hidden]{display:none}
.m-racheta .kick{margin-right:58px}
