.inmy-dynamic-collection { overflow: hidden; background: #f5f1e8; }
.inmy-dynamic-heading { display: grid; grid-template-columns: .55fr 1.45fr .7fr; align-items: end; gap: 3vw; }
.inmy-dynamic-heading h2 { margin: 0; font-family: Georgia, "Times New Roman", serif; font-size: clamp(3.2rem, 5.7vw, 6.8rem); font-weight: 400; line-height: .95; letter-spacing: -.045em; }
.inmy-dynamic-heading h2 em { color: #9b7c43; font-weight: 400; }
.inmy-dynamic-heading > p { margin: 0; color: #625e56; font-family: Georgia, "Times New Roman", serif; line-height: 1.75; }
.inmy-dynamic-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 2rem; margin-top: 5rem; }
.inmy-dynamic-card { display: block; }
.inmy-dynamic-visual { position: relative; aspect-ratio: 1.45; overflow: hidden; background: radial-gradient(circle, #242934, #080b12 70%); }
.inmy-dynamic-visual img { width: 100%; height: 100%; object-fit: cover; transition: transform .8s cubic-bezier(.2,.8,.2,1); }
.inmy-dynamic-card:hover .inmy-dynamic-visual img { transform: scale(1.035); }
.inmy-dynamic-visual.no-photo img { object-fit: contain; padding: 8%; opacity: .4; filter: brightness(.65); }
.inmy-dynamic-arrow { position: absolute; right: 1.2rem; top: 1.2rem; display: grid; place-items: center; width: 48px; height: 48px; color: #ddc58f; background: rgba(5,8,13,.72); border: 1px solid rgba(201,173,112,.35); border-radius: 50%; backdrop-filter: blur(10px); }
.inmy-dynamic-badge { position: absolute; left: 1.2rem; top: 1.2rem; padding: .55rem .7rem; color: white; background: rgba(5,8,13,.72); font-size: .55rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.inmy-dynamic-copy { padding: 1.35rem 0; border-bottom: 1px solid #cec5b6; }
.inmy-dynamic-copy > p { margin: 0 0 .6rem; color: #8d7548; font-size: .6rem; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
.inmy-dynamic-copy h3 { margin: 0; font-family: Georgia, "Times New Roman", serif; font-size: clamp(2rem,3vw,3.4rem); font-weight: 400; line-height: 1; }
.inmy-dynamic-copy div { display: flex; gap: 1.2rem; margin-top: 1rem; color: #6d675e; font-size: .66rem; }
.inmy-dynamic-loading, .inmy-dynamic-empty { grid-column: 1 / -1; display: grid; place-items: center; align-content: center; min-height: 350px; color: rgba(255,255,255,.6); text-align: center; background: radial-gradient(circle, #242934, #080b12 70%); }
.inmy-dynamic-loading span, .inmy-dynamic-empty span { color: #c9ad70; font-family: Georgia, "Times New Roman", serif; font-size: 4rem; }
.inmy-dynamic-footer { display: flex; align-items: center; justify-content: space-between; gap: 2rem; margin-top: 3rem; }
.inmy-dynamic-footer p { display: grid; gap: .35rem; margin: 0; }
.inmy-dynamic-footer strong { font-family: Georgia, "Times New Roman", serif; font-size: 1.25rem; letter-spacing: .12em; }
.inmy-dynamic-footer span { color: #756f65; font-size: .7rem; }
@media (max-width: 950px) { .inmy-dynamic-heading { grid-template-columns: 1fr; } }
@media (max-width: 700px) { .inmy-dynamic-grid { grid-template-columns: 1fr; margin-top: 3rem; } .inmy-dynamic-footer { align-items: stretch; flex-direction: column; } }
.inmy-overlay-open { overflow: hidden; }
.inmy-property-overlay { position: fixed; z-index: 9999; inset: 0; background: #05070c; animation: inmy-overlay-enter .55s cubic-bezier(.2,.8,.2,1); }
.inmy-property-overlay iframe { display: block; width: 100%; height: 100%; border: 0; background: #05070c; }
.inmy-property-overlay::before { content: "CHEZ INMY"; position: absolute; z-index: 0; left: 50%; top: 50%; color: #c9ad70; font: 1rem Georgia, "Times New Roman", serif; letter-spacing: .25em; transform: translate(-50%,-50%); }
@keyframes inmy-overlay-enter { from { opacity: 0; transform: translateY(24px) scale(.992); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .inmy-property-overlay { animation: none; } }
