.portfolio-home .swire-kv{height:580px;background:#eae9e4;isolation:isolate;border:0}
.alassio-visual{position:absolute;inset:0;pointer-events:none}
.alassio-visual canvas,.alassio-poster{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.alassio-poster{object-fit:cover}
.alassio-visual canvas{opacity:0}
.alassio-visual[data-renderer="3d"] canvas{opacity:1}
.alassio-visual[data-renderer="3d"] .alassio-poster{opacity:0}
.alassio-card{position:absolute;right:40px;top:42px;width:340px;max-width:40%;background:rgba(255,255,252,.93);padding:32px;border:1px solid rgba(36,41,34,.08);box-shadow:0 10px 40px #25292008}
.alassio-location{font-size:13px;line-height:1.5;color:#686c63;margin:0 0 20px}
.portfolio-home .alassio-card h3{font-size:42px;font-weight:500;letter-spacing:-1.7px;line-height:1;margin:0 0 22px}
.alassio-statement{font-size:20px;line-height:1.35;letter-spacing:-.4px;margin:0 0 16px}
.alassio-description{font-size:14px;line-height:1.65;color:#62675f;margin:0}
.alassio-role{border-top:1px solid #dcded5;padding-top:20px;margin-top:24px;font-size:12px;line-height:1.6}
.alassio-role>span{color:#686c63}.alassio-role p{margin:4px 0 0;font-size:13px}
.swire-explore{position:absolute;right:40px;bottom:30px;display:flex;align-items:center;gap:22px}
.swire-explore>span{font-size:13px;color:#62675f}
.swire-explore>a{display:flex;align-items:center;justify-content:space-between;gap:36px;padding:17px 24px;background:#242b21;color:#fff;text-decoration:none;font-size:16px;line-height:1.3;border:1px solid #242b21;transition:background .2s}
.swire-explore>a:hover{background:#46553f}.swire-explore>a:focus-visible{outline:3px solid #647d54;outline-offset:4px}
.swire-explore>a>span{font-size:22px;line-height:1}
@media(max-width:900px){.alassio-card{right:24px;max-width:43%;padding:24px}.swire-explore{right:24px;gap:16px}.swire-explore>span{max-width:110px;line-height:1.5}}
@media(max-width:640px){
 .portfolio-home .swire-kv{height:auto;min-height:0;padding:340px 20px 100px}
 .alassio-visual{inset:0;height:auto}
 .alassio-card{position:relative;inset:auto;width:100%;max-width:none;padding:24px}
 .portfolio-home .alassio-card h3{font-size:36px;margin-bottom:18px}
 .alassio-location{margin-bottom:14px}.alassio-statement{font-size:19px}.alassio-role{margin-top:20px;padding-top:16px}
 .swire-explore{right:20px;left:20px;bottom:22px;justify-content:space-between;gap:12px}
 .swire-explore>a{gap:20px;padding:16px 20px}.swire-explore>span{max-width:120px;font-size:12px}
}
@media(prefers-reduced-motion:reduce){.alassio-poster,.swire-explore>a{transition:none}}

.alassio-map-note{position:absolute;left:32px;bottom:28px;margin:0;font-size:11px;line-height:1.5;color:#6a7462;max-width:230px;pointer-events:none}
@media(max-width:640px){.alassio-map-note{top:16px;bottom:auto;left:20px;font-size:10px}}
