.floating-socials{position:fixed;right:20px;bottom:20px;z-index:30;display:flex;gap:10px;align-items:center}
.floating-socials a{position:static;width:54px;height:54px;border-radius:50%;color:#fff;display:grid;place-items:center;box-shadow:0 10px 30px #0003;transition:transform .25s,box-shadow .25s}
.floating-socials a:hover{transform:translateY(-3px);box-shadow:0 14px 32px #0004}
.floating-socials .floating-wa{background:#1f7a58;font-weight:700}
.floating-instagram{background:linear-gradient(145deg,#6a3fbc 5%,#c32f82 44%,#ee6640 72%,#f3b44a)}
.floating-instagram svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.8}
.floating-location{background:#ad8254}.floating-location svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linejoin:round}
.category-window-heading{max-width:760px;margin:16px 0 52px}
.category-window-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.category-window{position:relative;min-height:330px;padding:0;border:0;overflow:hidden;background:#222;color:#fff;text-align:left;cursor:pointer}
.category-window img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s ease}
.category-window-shade{position:absolute;inset:0;background:linear-gradient(180deg,#0001 20%,#000d 100%)}
.category-window-copy{position:absolute;inset:auto 28px 27px;display:grid;gap:7px;z-index:1}
.category-window-copy small{font-size:.66rem;letter-spacing:.17em;text-transform:uppercase;color:#e3c299;font-style:normal}
.category-window-copy strong{font:500 clamp(1.8rem,3vw,2.8rem)/1.05 var(--serif)}
.category-window-copy em{font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;font-style:normal;opacity:.85}
.category-window:hover img,.category-window:focus-visible img{transform:scale(1.045)}
.category-window:focus-visible{outline:3px solid var(--bronze);outline-offset:3px}
.category-window-all{margin-top:40px}
@media(max-width:900px){.category-window-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.category-window-grid{grid-template-columns:1fr}.category-window{min-height:290px}.category-window-heading{margin-bottom:35px}}
@media(max-width:560px){.floating-socials{right:14px;bottom:14px;gap:8px}.floating-socials a{width:50px;height:50px}}
.reference-preview{padding-top:clamp(85px,10vw,140px)}
.reference-intro{display:grid;grid-template-columns:1.25fr .75fr;gap:8vw;align-items:end;margin-bottom:52px}.reference-intro h2{max-width:780px;margin-top:14px}.reference-intro p{color:#e0ddd5}.reference-intro .btn{margin-top:10px}
.reference-preview-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:18px}.reference-card{position:relative;display:block;min-height:430px;overflow:hidden;background:#222;color:#fff}.reference-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s}.reference-card:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,#000d)}.reference-card span{position:absolute;left:26px;right:26px;bottom:24px;z-index:1;display:grid;gap:6px}.reference-card small{font-size:.65rem;letter-spacing:.16em;text-transform:uppercase;color:#e4c59f}.reference-card strong{font:500 clamp(1.55rem,2.5vw,2.5rem)/1.06 var(--serif)}.reference-card em{font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;font-style:normal;opacity:.8}.reference-card:hover img{transform:scale(1.04)}
.references-hero{background:linear-gradient(#18342dcc,#18342dcc),url('/images/portfolio-kristal-pano.png') center 45%/cover}.reference-page-intro{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:start;margin-bottom:60px}.reference-page-intro h2{max-width:600px}.reference-note{color:var(--bronze);font-size:.78rem}.reference-page-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.reference-page-grid .reference-card{min-height:390px}.reference-page-grid .reference-card-wide{grid-column:span 2}
@media(max-width:980px){.reference-preview-grid{grid-template-columns:1fr 1fr}.reference-preview-grid .reference-card:first-child{grid-column:1/-1}.reference-intro,.reference-page-intro{grid-template-columns:1fr;gap:24px}.reference-page-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.reference-preview-grid,.reference-page-grid{grid-template-columns:1fr}.reference-preview-grid .reference-card:first-child,.reference-page-grid .reference-card-wide{grid-column:auto}.reference-card,.reference-page-grid .reference-card{min-height:330px}}
