
.lp-pager a{display:inline-block;border:1px solid var(--gold);border-radius:50%;width:12px;height:12px;margin:8px}
.lp-pager a[aria-current]{background:var(--gold)}
.lp-portfolio{touch-action:pan-y}
.lp-project-grid{grid-template-rows:repeat(2,minmax(0,1fr))}
.lp-project-card{min-width:0;min-height:0}
@media(max-width:1050px){.lp-project-grid{height:auto;grid-template-rows:none;grid-auto-rows:220px}}
@media(max-width:700px){.lp-project-grid{grid-auto-rows:170px}.lp-search{max-width:100%}.lp-search input{max-width:50vw}}
@media(max-width:390px){.lp-project-grid{grid-auto-rows:200px}.lp-logo{min-width:0;width:min(195px,65vw)}}
/* Keep desktop copy width independent of viewport-based side padding. */
@media(min-width:701px){.lp-copy{box-sizing:content-box;width:min(36vw,640px);max-width:none;padding-left:6vw;padding-right:6vw}}
/* Approved v6: the actual architectural elevations replace the generic grid. */
:root{--header-height:clamp(170px,13.64vw,300px);--header-top:clamp(82px,6.1vw,136px)}
.lp-header{height:var(--header-height);background:#0b0b0b;gap:2vw}
.lp-header:after{background:none}
.lp-cad{inset:auto 0 0;height:calc(var(--header-height) - var(--header-top));opacity:1;background:url('/?asset=img%2Fheader-cad-v6.webp') center/100% 100% no-repeat;mask-image:none}
.lp-nav{padding-top:clamp(17px,2.4vw,40px);gap:clamp(16px,2.6vw,44px)}
.lp-search-trigger{border-left:1px solid var(--gold)!important;padding:0 0 0 24px!important;margin-left:8px;display:block;width:48px;height:26px}
.lp-search-trigger svg{width:24px;height:24px;display:block}
.lp-main,.lp-panel{min-height:calc(100svh - var(--header-height) - 35px)}
.lp-panel:before{background-repeat:no-repeat}
.lp-story:before{background-image:url('/?asset=img%2Fstoria-v6-clean.webp');background-size:cover;background-position:center 56%;background-repeat:no-repeat}
.lp-story:after{background:linear-gradient(90deg,#080808ed 0%,#080808c9 28%,#0808084d 43%,transparent 63%)}
/* Alphabetical index and editorial image, matching the approved composition. */
.lp-brands:before{background-image:url('/?asset=img%2Fbrand-ambiente.jpg')}
.lp-brands:after{background:#090a09e8}
.lp-brand-layout{display:grid;grid-template-columns:1.08fr 1fr;gap:4vw;padding:24px 4vw 30px 5.8vw;align-items:start}
.lp-brand-body{padding:0;min-width:0}
.lp-brand-heading h1{font-size:clamp(48px,4.6vw,88px);font-weight:300;letter-spacing:-.045em;margin:20px 0}
.lp-brand-heading p:not(.lp-kicker){font-size:clamp(16px,1.5vw,24px);line-height:1.5;font-weight:300;max-width:660px;color:#c8c4bc}
.lp-brand-toolbar{gap:12px;flex-wrap:wrap;margin:22px 0}
.lp-toggle{border:0;gap:7px}.lp-toggle a{border:1px solid #aa93645c;min-width:118px;font-size:13px}.lp-toggle a.chosen{border-color:var(--gold)}
.lp-search input{width:145px;max-width:25vw}.lp-search button{font-size:10px}
.lp-alphabet{gap:2px;margin:12px 0 24px}.lp-alphabet a{font-size:11px;padding:4px 5px;color:#b3a68e}.lp-alphabet a[aria-current]{color:var(--gold);background:none;border-bottom:1px solid var(--gold)}
.lp-brand-scroll{position:relative;padding-right:24px}
.lp-brand-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-content:start;gap:24px 18px;max-height:clamp(170px,32vh,390px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
.lp-brand-scroll.is-enhanced .lp-brand-grid{scrollbar-width:none}
.lp-brand-scroll.is-enhanced .lp-brand-grid::-webkit-scrollbar{display:none}
.lp-brand-group{min-width:0}.lp-brand-group h2{font-size:clamp(24px,2vw,36px);color:var(--gold);font-weight:300;margin:0 0 10px;line-height:1.1}
.lp-brand-item{display:block;min-height:0;padding:6px 0;border:0;background:transparent;line-height:1.4}
.lp-brand-item>span:first-child{font-size:clamp(12px,1.05vw,17px);font-weight:300;overflow-wrap:anywhere}
.lp-brand-item:hover,.lp-brand-item:focus-visible{color:var(--gold);background:none;transform:none;border:0}
.lp-scroll-rail{position:absolute;right:0;top:0;bottom:0;width:20px;cursor:grab;touch-action:none;user-select:none}
.lp-scroll-rail:before{content:'';position:absolute;top:6px;bottom:6px;left:9px;width:1px;background:#a48b5c66}
.lp-scroll-dot{position:absolute;top:0;left:4px;width:11px;height:11px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 5px #dcba850b}
.lp-scroll-rail:active{cursor:grabbing}.lp-scroll-rail:focus-visible{outline-offset:2px}
.lp-brand-hint{font-size:12px;color:#aaa295;line-height:1.5;margin-top:24px}
.lp-brand-visual{position:relative;margin:48px 0 0;aspect-ratio:1.35;min-width:0;border:1px solid #9d845b88;overflow:hidden}
.lp-brand-visual>img{width:100%;height:100%;object-fit:cover;display:block;filter:brightness(.62)}
.lp-brand-caption{position:absolute;bottom:20px;left:20px;right:20%;padding:20px 24px;background:#0c0c0cf0}
.lp-brand-caption p{font-size:13px;color:#bdb4a2;margin:0 0 10px;font-weight:300}.lp-brand-caption p:first-child{color:var(--gold)}
.lp-brand-caption h2{font-size:clamp(22px,2vw,34px);font-weight:300;margin:8px 0 18px;line-height:1.2}
/* Actual v6 map artwork; clicking opens the geographic destination. */
.lp-map{position:relative;padding:0;display:block;overflow:hidden;height:auto;aspect-ratio:817/609;background:#0a0b0a;border-color:#b99a6e88}
.lp-map-image{display:block;width:100%;height:100%;object-fit:cover}
.lp-map strong{position:absolute;bottom:0;left:0;right:0;padding:15px 20px;border:0;background:#0a0b0ae6;color:var(--gold);font-weight:400}
@media(max-width:1100px){.lp-nav{gap:14px}.lp-nav a{font-size:9px}.lp-search-trigger{padding-left:12px!important;width:35px}.lp-brand-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.lp-brand-layout{gap:3vw}.lp-brand-caption{right:12px;left:12px;padding:15px}}
@media(max-width:700px){
 :root{--header-height:150px;--header-top:86px}
 .lp-header{padding:15px 18px;align-items:flex-start}.lp-burger{margin-top:9px}.lp-logo{margin-top:0}
 .lp-nav{padding:18px;gap:0;top:85px}.lp-nav a{font-size:12px}.lp-search-trigger{margin:10px 16px;border-left:0!important}
 .lp-cad{background-size:auto 100%;background-position:65% center}
 .lp-copy{box-sizing:border-box;width:100%;padding:7vh 7%}
 .lp-story:before{background-size:cover;background-position:64% center;background-repeat:no-repeat}
 .lp-story:after{background:linear-gradient(90deg,#090909d9,#0909096b 58%,#09090922)}
 .lp-brand-layout{display:block;padding:28px 7%}.lp-brand-heading h1{font-size:54px}.lp-brand-toolbar{align-items:flex-start}
 .lp-brand-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-height:45vh;gap:24px 16px}.lp-brand-item>span:first-child{font-size:14px}
 .lp-brand-visual{margin:25px 0 0;aspect-ratio:1.5}.lp-brand-caption{bottom:12px;right:18%;padding:14px}
 .lp-brand-caption h2{font-size:23px;margin-bottom:12px}.lp-brand-caption p{font-size:11px}
 .lp-search input{max-width:45vw}.lp-map{margin:12px 7% 35px;height:auto;aspect-ratio:817/609}.lp-contact .lp-copy{padding-right:7%}
}
@media(prefers-reduced-motion:reduce){.lp-brand-grid{scroll-behavior:auto}}

/* Editorial story title stays on the three approved lines. */
html{scrollbar-width:none}html::-webkit-scrollbar{display:none}
.lp-story .lp-copy h1{font-size:clamp(46px,4.2vw,76px);letter-spacing:-.045em}
@media(max-width:700px){.lp-story .lp-copy h1{font-size:clamp(40px,9vw,62px)}}
/* Paint the drawing on the header itself so no stacking layer can cover it. */
.lp-header{background-image:url('/?asset=img%2Fheader-cad-v6.webp');background-size:100% calc(var(--header-height) - var(--header-top));background-position:center bottom;background-repeat:no-repeat}
.lp-cad{display:none}
@media(max-width:700px){.lp-header{background-size:auto calc(var(--header-height) - var(--header-top));background-position:65% bottom}}

/* Preserve the entire photograph at every viewport, without cover cropping. */
.lp-hero{overflow:visible;display:flex;align-items:center;min-width:0}
.lp-hero:before{content:none}
.lp-hero-image{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:contain;object-position:right center}
.lp-hero:after{z-index:0;pointer-events:none;background:linear-gradient(90deg,#080808 0%,#080808ed 20%,#08080870 38%,transparent 60%)}
.lp-hero .lp-copy{z-index:1;flex-shrink:0}
.lp-contact{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.lp-contact .lp-copy{box-sizing:border-box;width:100%;min-width:0;overflow-wrap:anywhere}
.lp-map{align-self:center;min-width:0;width:93%;max-width:calc((100svh - var(--header-height) - 100px) * 1.3415);aspect-ratio:auto;height:auto;overflow:visible;margin-top:24px;margin-bottom:24px}
.lp-map-image{width:100%;height:auto;object-fit:contain}
.lp-map strong{position:static;display:block;line-height:1.5}
.lp-brand-visual{aspect-ratio:auto;overflow:visible}
.lp-brand-visual>img{height:auto;object-fit:contain;filter:none}
.lp-brand-caption{position:static;padding:20px 24px;background:#0c0c0c}
.lp-project-card img{object-fit:cover;transform-origin:center center}
.lp-project-card:hover img{transform:none}
@media(max-width:1100px) and (min-width:701px){.lp-copy h1{font-size:clamp(46px,6vw,68px)}.lp-hero .lp-copy{width:40vw;padding-left:4vw;padding-right:2vw}.lp-lead{font-size:16px}.lp-cta{gap:16px;padding:14px;font-size:10px}}
@media(max-width:700px){
 .lp-hero{display:flex;flex-direction:column;align-items:stretch;min-height:0}
 .lp-hero-image{position:static;width:100%;height:auto;object-fit:contain;object-position:center}
 .lp-hero:after{content:none}
 .lp-hero .lp-copy{padding:28px 7% 40px;width:100%;max-width:none}
 .lp-copy h1{margin-top:20px}
 .lp-brand-caption{position:static;padding:20px}
 .lp-map{width:auto;max-width:none;height:auto;aspect-ratio:auto;margin:12px 7% 35px}
 .lp-map-image{height:auto}
 .lp-search{display:flex;align-items:center;flex-wrap:wrap;gap:6px}
 .lp-search input{margin-left:0}
 .lp-detail,.lp-legal{padding:35px 7%}
}

/* Translucent black preserves the room behind the editorial copy. */
.lp-hero:before{content:'';background-image:url('/?asset=img%2Fhome-ambiente.jpg');background-size:cover;background-position:center;opacity:.42;filter:blur(5px)}
.lp-hero:after{background:linear-gradient(90deg,#080808ad 0%,#08080885 23%,#08080830 42%,transparent 62%)}
.lp-brands:after{background:#090a09a8}
.lp-contact:after{background:linear-gradient(90deg,#0b0b0bb5,#0b0b0b60)}
.lp-brand-caption{background:#0c0c0c99}
@media(min-width:701px){.lp-brand-caption{position:absolute;bottom:20px;left:20px;right:20%;background:#0c0c0c88}}