.elementor-42 .elementor-element.elementor-element-d8d2ff2{--display:flex;}/* Start custom CSS for html, class: .elementor-element-36ce723 */:root{
  --rose:#e11d48; --rose-50:#fdf2f8;
  --ink:#1c1917; --muted:#6b7280;
  --card:#ffffff; --bg:#fcfcfc; --line:#ececec;
  --shadow:0 8px 24px rgba(16,24,40,.08);
}

*{ box-sizing:border-box }
html,body{ margin:0; padding:0 }
body{
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial;
  color:var(--ink);
  background: radial-gradient(1200px 600px at 10% -10%, var(--rose-50), transparent),
              radial-gradient(900px 500px at 110% -20%, #fff0f5, transparent),
              var(--bg);
  line-height:1.6;
}

/* Hero */
.hero{ max-width:1120px; margin:64px auto 12px; padding:0 20px; text-align:center; }
.hero h1{ font-size:clamp(2.2rem,3vw,3rem); margin:0 0 .35rem; letter-spacing:-.02em; }
.hero p{ color:var(--muted); max-width:720px; margin:0 auto 18px; }

/* Masonry */
.masonry{ max-width:1120px; margin:24px auto 60px; padding:0 20px; column-count:1; column-gap:16px; }
@media (min-width:640px){ .masonry{ column-count:2 } }
@media (min-width:960px){ .masonry{ column-count:3 } }

.card{
  display:inline-block; width:100%; margin:0 0 16px; position:relative;
  border-radius:18px; overflow:hidden; background:var(--card); border:1px solid var(--line);
  box-shadow:var(--shadow); transform:translateZ(0);
}
.card img{ width:100%; display:block; aspect-ratio:3/4; object-fit:cover; transition: transform .45s ease, filter .45s ease; }
.card:hover img{ transform:scale(1.04); filter:saturate(1.05) }
.card::after{ content:""; position:absolute; inset:0; background:linear-gradient(to top, rgba(0,0,0,.25), transparent 45%); opacity:0; transition:opacity .35s ease; }
.card:hover::after{ opacity:1 }

/* Lightbox */
.lightbox{ position:fixed; inset:0; display:none; place-items:center; background:rgba(0,0,0,.88); z-index:40; padding:32px; }
.lightbox:target{ display:grid }
.lightbox img{ max-width:min(1200px,92vw); max-height:86vh; width:auto; height:auto; border-radius:14px; box-shadow:0 12px 40px rgba(0,0,0,.5); }
.lightbox .close{ position:fixed; top:22px; right:26px; color:#fff; text-decoration:none; font-size:2rem; line-height:1; background:rgba(255,255,255,.12); border-radius:10px; padding:.2rem .6rem; }/* End custom CSS */