@layer components{.site .villa-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(28px,3.2vw,48px) clamp(16px,2vw,28px);display:grid}.site .photo-card{color:inherit;gap:16px;text-decoration:none;display:grid;container-type:inline-size}.site .photo-card .inner{aspect-ratio:4/3}.site .photo-card img{object-fit:cover;width:100%;height:100%;transition:transform 1.4s var(--ease-soft);transform:scale(1.0001)}.site .photo-card:hover img{transform:scale(1.035)}.site .photo-card .bezel{transition:border-color .3s var(--ease-settle), box-shadow .6s var(--ease-soft)}.site .photo-card:hover .bezel,.site .photo-card.on .bezel{border-color:color-mix(in srgb, var(--rule-2) 70%, var(--ink-3))}.site .card-meta{grid-template-columns:minmax(0,1fr) auto;gap:4px 20px;padding-inline:4px;display:grid}.site .card-meta h3{font-size:var(--t-h3);font-weight:var(--w-strong);letter-spacing:-.012em}.site .card-meta .place{color:var(--ink-2)}.site .card-meta .price{text-align:right;font-weight:var(--w-strong);white-space:nowrap}.site .card-meta .price .place{font-weight:var(--w-body);display:block}.site .card-meta .facts{color:var(--ink-3);font-size:var(--t-ui);grid-column:1/-1}.site .facts{flex-wrap:wrap;gap:4px 16px;display:flex}.site .facts .fact{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.site .card-meta h3 .tag{vertical-align:3px;letter-spacing:0;margin-left:8px}.site .photo-cell{position:relative}.site .save-disc{z-index:3;top:calc(var(--bzc) + 10px);right:calc(var(--bzc) + 10px);width:40px;height:40px;color:var(--ink);cursor:pointer;transition:transform .3s var(--ease-soft);border:0;border-radius:50%;place-items:center;display:grid;position:absolute}.site .save-disc:hover{transform:scale(1.06)}.site .save-disc:active{transform:scale(.94)}.site .save-disc .icon{width:19px;height:19px}@media (prefers-reduced-motion:reduce){.site .save-disc,.site .save-disc:hover,.site .save-disc:active{transition:none;transform:none}}@media (max-width:860px){.site .villa-grid{grid-template-columns:minmax(0,1fr)}}@container (max-width:480px){.site .card-meta{grid-template-columns:minmax(0,1fr)}.site .card-meta .price{text-align:left}.site .card-meta .price .place{display:inline}}}
