/* Page compositions follow the information, while type and spacing stay shared. */
img[src="/assets/seguridad.webp"]{object-position:35% center}.v5-archive-photo img[src*="paneles-solares"]{object-position:35% center}
.v5-wrap{padding-inline:var(--pad);max-width:none}.v5-photo,.v5-hotel-panorama,.v5-design-panorama{margin:0;min-width:0;overflow:hidden}.v5-photo img,.v5-hotel-panorama img,.v5-design-panorama img{display:block;width:100%;height:100%;object-fit:cover}.v5-prose p{font-size:1.0625rem;line-height:1.85;color:var(--muted);margin:0}.v5-prose p+p{margin-top:1rem}.v5-prose strong{color:var(--ink);font-weight:600}.v5-wrap h2{font-size:clamp(1.65rem,2.5vw,2.4rem);line-height:1.25;margin:0 0 1.2rem;max-width:40rem}.v5-wrap .eyebrow{color:var(--teal)}.v5-wrap h1{font-size:clamp(2.7rem,4.4vw,4.4rem);line-height:1.12;letter-spacing:-.035em;max-width:64rem;font-weight:500}.v5-wrap .page-category{margin-bottom:1.3rem}.v5-wrap .lead{max-width:44rem;font-size:1.15rem;line-height:1.85;color:var(--muted);margin-top:1.5rem}.v5-wrap .breadcrumbs{margin-bottom:2.2rem}.v5-wrap .page-category .icon-box{display:none}.v5-section-head{margin-bottom:2.5rem}.v5-section-head .eyebrow{margin-bottom:1rem}.v5-step{display:block;color:var(--teal);font-size:.9375rem;font-weight:500;margin-bottom:1.7rem}.v5-anchor{display:block;position:relative;scroll-margin-top:120px}

/* Hotels: a panoramic arrival, a pair of rooms, and an operational section. */
.v5-hotel-heading{padding-top:3rem;padding-bottom:3.5rem}.v5-hotel-heading h1{max-width:65rem}.v5-hotel-panorama{margin-inline:var(--pad);height:clamp(360px,39vw,620px)}.v5-hotel-panorama img{object-position:center 56%}.v5-hotel-intro{padding-block:4.5rem;display:grid;grid-template-columns:4fr 8fr;gap:4rem}.v5-hotel-intro h2{max-width:22rem}.v5-hotel-intro .v5-prose p{font-size:1.25rem;line-height:1.8;max-width:50rem}.v5-hotel-spaces{padding-top:.5rem;padding-bottom:5rem}.v5-hotel-space-copy{display:grid;grid-template-columns:4fr 8fr;gap:4rem;margin-bottom:2.5rem}.v5-room-pair{display:grid;grid-template-columns:7fr 5fr;gap:2rem;align-items:start}.v5-room-pair .v5-photo:first-child{height:clamp(350px,39vw,560px)}.v5-room-pair .v5-photo:last-child{height:clamp(280px,31vw,440px);margin-top:5rem}.v5-operating-band{background:var(--navy);color:#fff}.v5-two-columns{display:grid;grid-template-columns:1fr 1fr;gap:5rem;padding-block:4.5rem}.v5-operating-band h2{color:#fff}.v5-operating-band .v5-prose p{color:#e1eaed}.v5-operating-band strong{color:#fff}.v5-hotel-end{display:grid;grid-template-columns:1fr 1fr;gap:5rem;padding-block:4.5rem}.v5-hotel-end h2{font-size:1.6rem}

/* Retail: a tall opening and a clear sequence from local to opening day. */
.v5-retail-heading{padding-block:3rem 3.5rem;display:grid;grid-template-columns:6fr 6fr;gap:5rem;align-items:center}.v5-retail-heading h1{font-size:clamp(2.7rem,4.1vw,4.1rem);max-width:35rem}.v5-retail-heading .v5-photo{height:clamp(420px,47vw,680px)}.v5-retail-intro{padding-block:2rem 3.5rem;display:grid;grid-template-columns:4fr 8fr;gap:4rem}.v5-retail-intro .v5-prose p{font-size:1.2rem}.v5-retail-stages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3rem;padding-bottom:4.5rem}.v5-retail-stages section{border-top:1px solid var(--line);padding-top:1.5rem}.v5-retail-stages h2{font-size:1.7rem;max-width:20rem}.v5-brand-spread{display:grid;grid-template-columns:7fr 5fr;gap:4rem;align-items:center;padding-block:2rem 5rem}.v5-brand-spread .v5-photo{height:560px}.v5-brand-spread section+section{padding-top:2rem;margin-top:2rem;border-top:1px solid var(--line)}.v5-brand-spread h2{font-size:1.8rem}

/* Residential: architecture first, followed by the different decisions. */
.v5-property-heading{padding-block:3rem 3.5rem}.v5-property-heading h1{max-width:65rem}.v5-property-opening{display:grid;grid-template-columns:7fr 5fr;gap:4rem;align-items:end;padding-bottom:4.5rem}.v5-property-opening .v5-photo{height:clamp(420px,44vw,660px)}.v5-property-opening>div{padding-block:1rem}.v5-property-opening h2{max-width:25rem}.v5-property-decisions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3rem;padding-block:4rem;background:var(--paper)}.v5-property-decisions h2{font-size:1.75rem}.v5-property-decisions section{border-top:1px solid #bacbd0;padding-top:2rem}.v5-property-delivery{display:grid;grid-template-columns:5fr 7fr;gap:4rem;align-items:center;padding-block:5rem}.v5-property-delivery .v5-photo{height:440px}

/* Services: six main entries are balanced as two rows of three. */
.v5-services{padding-block:4rem;border-top:1px solid var(--line)}.v5-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem 2.5rem}.v5-service-grid .card{display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:1.8rem 0;border:0;border-top:1px solid var(--line);background:none;border-radius:0;box-shadow:none}.v5-service-grid .card h3{font-size:1.45rem;line-height:1.35;margin:.2rem 0 .8rem}.v5-service-grid .card p{font-size:1rem;line-height:1.85;color:var(--muted);margin:0 0 1.2rem}.v5-service-grid .card .icon-box{display:flex;background:none;border:none;color:var(--teal);width:2rem;height:2rem;margin:0 0 1rem}.v5-service-grid .card .icon{width:1.75rem;height:1.75rem}.v5-service-grid .card-link{margin-top:auto;font-size:.9375rem;font-weight:500}.v5-service-grid .card:hover{transform:none;color:var(--teal)}.v5-service-directory-heading{display:grid;grid-template-columns:7fr 5fr;align-items:center;gap:4rem;padding-block:3rem 4.5rem}.v5-service-directory-heading h1{font-size:clamp(2.7rem,3.8vw,3.8rem)}.v5-service-directory-heading .v5-photo{height:440px}.v5-service-directory{padding-block:1rem 4.5rem}.v5-service-directory .v5-section-head h2{max-width:55rem}.v5-specialist{background:var(--paper);padding-block:4rem}.v5-specialist-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3rem}.v5-specialist-grid .card{display:block;padding:0;background:none;border:0;box-shadow:none}.v5-specialist-grid .icon-box{margin-bottom:1rem}.v5-specialist-grid h3{font-size:1.4rem}.v5-specialist-grid p{font-size:1rem;line-height:1.85}

/* Service detail compositions: design, technical advice, and delivery. */
.v5-design-heading{padding-block:3rem 3.5rem}.v5-design-heading h1{max-width:62rem}.v5-design-panorama{margin-inline:var(--pad);height:clamp(340px,38vw,550px)}.v5-design-intro,.v5-design-finish{display:grid;grid-template-columns:4fr 8fr;gap:4rem;padding-block:4rem}.v5-design-intro .v5-prose p{font-size:1.2rem}.v5-design-pair{display:grid;grid-template-columns:1fr 1fr;gap:5rem;padding-bottom:4rem}.v5-design-pair section{border-top:1px solid var(--line);padding-top:2rem}.v5-design-materials{display:grid;grid-template-columns:6fr 6fr;align-items:center;gap:4rem;padding-block:1rem 2rem}.v5-design-materials .v5-photo{height:500px}.v5-technical-heading{padding-block:3rem 3.5rem;max-width:none;background:var(--paper)}.v5-technical-heading h1{max-width:61rem;font-size:clamp(2.7rem,4vw,4rem)}.v5-technical-body{display:grid;grid-template-columns:4fr 8fr;gap:5rem;padding-block:4rem}.v5-technical-body .v5-photo{height:420px}.v5-technical-body>div>section{border-bottom:1px solid var(--line);padding-bottom:2.2rem;margin-bottom:2.2rem}.v5-technical-body>div>section:last-child{margin-bottom:0;border-bottom:0}.v5-technical-body h2{font-size:1.75rem}.v5-delivery-heading{display:grid;grid-template-columns:7fr 5fr;gap:4rem;align-items:center;padding-block:3rem 4rem}.v5-delivery-heading h1{font-size:clamp(2.7rem,3.8vw,3.8rem)}.v5-delivery-heading .v5-photo{height:460px}.v5-delivery-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3rem;padding-block:1rem 4rem}.v5-delivery-flow section{border-top:1px solid var(--line);padding-top:1.5rem}.v5-delivery-flow h2{font-size:1.65rem}.v5-pt-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem 5rem;padding-block:1rem 4.5rem}.v5-pt-grid section{border-top:1px solid var(--line);padding-top:2rem}.v5-pt-grid h2{font-size:1.8rem}.v5-pt-ending{padding-block:0 4rem;max-width:none}.v5-pt-ending .v5-prose{max-width:55rem}

/* A reading index for the archive, separate from the photograph-led guides. */
.v5-archive-section{padding-block:3.5rem;border-top:1px solid var(--line)}.v5-archive-section .section-head{display:block;margin-bottom:2.5rem}.v5-archive-section h2{font-size:2.3rem}.v5-archive-content{display:grid;grid-template-columns:4fr 8fr;gap:4rem;align-items:start}.v5-archive-photo{margin:0;position:sticky;top:120px}.v5-archive-photo img{display:block;width:100%;height:380px;object-fit:cover}.v5-archive-link{display:block;border-top:1px solid var(--line);padding-block:1.5rem}.v5-archive-link:first-child{padding-top:0;border-top:0}.v5-archive-link .card-body{padding:0}.v5-archive-link h3{font-size:1.5rem;line-height:1.35;margin:0 0 .8rem}.v5-archive-link p{font-size:1rem;line-height:1.8;color:var(--muted);margin-bottom:.8rem}.v5-archive-link .card-link{font-size:.9375rem}.v5-study-content{display:grid;grid-template-columns:1fr 1fr;gap:0 5rem;padding-block:2rem 4rem}.v5-study-content .content-row{display:block}.v5-study-content h2{font-size:1.65rem;max-width:none}.v5-study-content .content-row:first-child{grid-column:1/-1;display:grid;grid-template-columns:4fr 8fr;gap:4rem}.v5-study-content .content-row:first-child p{font-size:1.2rem}

@media(max-width:1100px){.v5-wrap h1{font-size:3.4rem}.v5-retail-heading,.v5-brand-spread,.v5-property-opening,.v5-property-delivery,.v5-service-directory-heading,.v5-delivery-heading,.v5-technical-body,.v5-design-materials{gap:2.5rem}.v5-retail-stages,.v5-property-decisions,.v5-delivery-flow,.v5-service-grid,.v5-specialist-grid{gap:2rem}.v5-hotel-intro,.v5-hotel-space-copy,.v5-retail-intro,.v5-design-intro,.v5-design-finish{gap:2.5rem}.v5-two-columns,.v5-hotel-end,.v5-design-pair,.v5-pt-grid,.v5-study-content{column-gap:3rem}.v5-brand-spread .v5-photo{height:600px}.v5-service-directory-heading h1,.v5-delivery-heading h1{font-size:3rem}.v5-archive-content{gap:2.5rem}.v5-service-grid .card h3{font-size:1.35rem}}
@media(max-width:760px){.v5-wrap h1,.v5-retail-heading h1,.v5-service-directory-heading h1,.v5-delivery-heading h1,.v5-technical-heading h1{font-size:clamp(2.45rem,8vw,3.5rem);line-height:1.16}.v5-wrap h2{font-size:1.9rem}.v5-wrap .lead{font-size:1.0625rem}.v5-wrap .breadcrumbs{margin-bottom:1.6rem}.v5-wrap .page-category{margin-bottom:1rem}.v5-prose p{font-size:1rem}.v5-hotel-heading,.v5-property-heading,.v5-design-heading,.v5-technical-heading{padding-block:2rem 2.4rem}.v5-hotel-panorama{height:330px}.v5-hotel-intro,.v5-hotel-space-copy,.v5-retail-intro,.v5-design-intro,.v5-design-finish{display:block;padding-block:2.7rem}.v5-hotel-intro h2{max-width:30rem}.v5-hotel-intro .v5-prose p,.v5-retail-intro .v5-prose p,.v5-design-intro .v5-prose p{font-size:1.0625rem;line-height:1.9}.v5-hotel-spaces{padding-bottom:3rem}.v5-hotel-space-copy{padding-top:0;margin-bottom:0}.v5-room-pair{grid-template-columns:1.1fr 1fr;gap:1rem}.v5-room-pair .v5-photo:first-child{height:290px}.v5-room-pair .v5-photo:last-child{height:240px;margin-top:3rem}.v5-two-columns,.v5-hotel-end{grid-template-columns:1fr;gap:2.7rem;padding-block:3rem}.v5-hotel-end h2{font-size:1.7rem}.v5-retail-heading,.v5-service-directory-heading,.v5-delivery-heading{grid-template-columns:1fr;gap:2rem;padding-block:2rem 2.7rem}.v5-retail-heading .v5-photo{height:390px}.v5-retail-stages,.v5-property-decisions,.v5-delivery-flow{grid-template-columns:1fr;gap:2.3rem;padding-bottom:3rem}.v5-step{margin-bottom:1rem}.v5-retail-stages h2,.v5-property-decisions h2,.v5-delivery-flow h2{font-size:1.75rem;max-width:none}.v5-brand-spread{grid-template-columns:1fr;gap:2rem;padding-block:0 3rem}.v5-brand-spread .v5-photo{height:350px}.v5-brand-spread h2{font-size:1.75rem}.v5-property-opening{grid-template-columns:1fr;gap:2rem;padding-bottom:3rem}.v5-property-opening .v5-photo{height:390px}.v5-property-opening>div{padding:0}.v5-property-opening h2{max-width:32rem}.v5-property-decisions{padding-block:3rem}.v5-property-delivery{grid-template-columns:1fr;gap:2rem;padding-block:3rem}.v5-property-delivery .v5-photo{height:320px}.v5-services{padding-block:3rem}.v5-section-head{margin-bottom:1.7rem}.v5-service-grid{grid-template-columns:1fr 1fr;gap:1rem 1.5rem}.v5-service-grid .card{padding-top:1.4rem;padding-bottom:1.2rem}.v5-service-grid .card h3{font-size:1.3rem}.v5-service-grid .card p{font-size:1rem}.v5-service-directory-heading .v5-photo{height:300px}.v5-service-directory{padding-bottom:3rem}.v5-specialist{padding-block:3rem}.v5-specialist-grid{grid-template-columns:1fr;gap:2.3rem}.v5-specialist-grid .card{padding-bottom:1.7rem;border-bottom:1px solid var(--line)}.v5-specialist-grid h3{font-size:1.5rem}.v5-design-panorama{height:330px}.v5-design-pair{grid-template-columns:1fr;gap:2.5rem;padding-bottom:3rem}.v5-design-materials{grid-template-columns:1fr;gap:2rem;padding-block:0 1rem}.v5-design-materials .v5-photo{height:340px}.v5-technical-body{grid-template-columns:1fr;gap:2.5rem;padding-block:2.5rem}.v5-technical-body .v5-photo{height:300px}.v5-technical-body h2{font-size:1.7rem}.v5-delivery-heading .v5-photo{height:340px}.v5-pt-grid{grid-template-columns:1fr;gap:2rem;padding-bottom:3rem}.v5-pt-ending{padding-bottom:3rem}.v5-archive-section{padding-block:2.7rem}.v5-archive-content{grid-template-columns:1fr;gap:2rem}.v5-archive-photo{position:static}.v5-archive-photo img{height:250px}.v5-archive-section h2{font-size:2rem}.v5-archive-link h3{font-size:1.4rem}.v5-study-content{grid-template-columns:1fr;gap:0;padding-bottom:3rem}.v5-study-content .content-row:first-child{display:block;grid-column:auto}.v5-study-content .content-row:first-child p{font-size:1.0625rem}}
@media(max-width:480px){.v5-service-grid{grid-template-columns:1fr}.v5-service-grid .card h3{font-size:1.5rem}.v5-room-pair{grid-template-columns:1fr;gap:1.2rem}.v5-room-pair .v5-photo:first-child{height:300px}.v5-room-pair .v5-photo:last-child{height:300px;margin-top:0}.v5-hotel-panorama,.v5-design-panorama{height:300px}.v5-retail-heading .v5-photo{height:340px}}

/* Revision 6: restrained motion, a compact footer, and an accessible office map. */
.opening-video{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;transition:opacity .45s ease;pointer-events:none}.opening-video.is-ready{opacity:1}.opening .opening-photo{object-position:center}.opening-copy strong{font-weight:600;color:#fff}.video-toggle{position:absolute;right:var(--pad);top:1.5rem;bottom:auto;z-index:2;display:inline-flex;align-items:center;gap:.6rem;min-height:44px;padding:.65rem .9rem;border:1px solid #ffffff8c;border-radius:3px;color:#fff;background:#10242dde;font:500 .875rem/1.4 'Google Sans',Arial,sans-serif;cursor:pointer}.video-toggle[hidden]{display:none}.video-toggle:hover{background:#17333f}.video-toggle:focus-visible{outline:2px solid #fff;outline-offset:4px}.video-toggle svg{width:15px;height:15px;fill:currentColor}.video-toggle .video-play-icon{display:none}.video-toggle[data-paused="true"] .video-play-icon{display:block}.video-toggle[data-paused="true"] .video-pause-icon{display:none}
.office-location{display:grid;grid-template-columns:4fr 8fr;gap:3.5rem;align-items:center;padding-block:3.5rem;border-bottom:1px solid var(--line)}.office-location h2{font-size:clamp(1.9rem,2.6vw,2.5rem);line-height:1.2;margin:0 0 1.25rem}.office-location .eyebrow{color:var(--teal);margin-bottom:.9rem}.office-location address{font-style:normal;font-size:1.125rem;line-height:1.8;color:var(--ink);margin-bottom:1rem}.office-location-copy>p:not(.eyebrow){font-size:1rem;line-height:1.8;color:var(--muted);max-width:26rem}.office-location .button{margin-top:1.5rem;font-size:.9375rem;padding:.9rem 1rem;text-align:center;line-height:1.5}.office-location .text-link{display:table;margin-top:1rem;font-size:.9375rem}.office-map{overflow:hidden;background:var(--paper);min-width:0;height:360px;border:1px solid var(--line)}.office-map iframe{display:block;width:100%;height:100%;border:0}
@media(max-width:1000px){.office-location{grid-template-columns:5fr 7fr;gap:2rem}}
@media(max-width:760px){.opening .opening-content{padding-bottom:3.2rem}.video-toggle{right:var(--pad);left:auto;top:1.2rem;bottom:auto}.office-location{grid-template-columns:1fr;gap:2rem;padding-block:2.5rem}.office-location h2{font-size:2rem}.office-location address{font-size:1.0625rem}.office-map{height:310px}.office-location .button{margin-top:1.3rem}.office-location .text-link{margin-top:.85rem}}
@media(prefers-reduced-motion:reduce){.opening-video{transition:none}.opening .opening-content{padding-bottom:3.2rem}.video-toggle{display:none}}

/* Revision9: natural daylight with a restrained overlay for readable copy. */
@media(min-width:761px){.opening::before{background:linear-gradient(90deg,rgba(8,24,30,.5) 0%,rgba(8,24,30,.34) 42%,rgba(8,24,30,.03) 100%),linear-gradient(0deg,rgba(8,24,30,.22),transparent 60%);}}
@media(max-width:760px){.opening::before{background:linear-gradient(0deg,rgba(8,24,30,.72) 0%,rgba(8,24,30,.48) 58%,rgba(8,24,30,.08) 100%);}}
.opening h1{text-shadow:0 2px 18px #08181e55;}.opening-location,.opening-copy{text-shadow:0 1px 3px #08181eb3,0 2px 12px #08181e66;}

/* Revision9: original spacious footer restored, retaining directions and own crew. */
.footer .footer-map-link{margin-top:.7rem;text-decoration:underline;text-underline-offset:3px;}


/* Revision 10: the supplied full-colour logo, proportioned for the home header. */
.page-home .header{padding-block:.875rem}
.page-home .header .logo img{display:block;width:88px;height:auto}
@media(min-width:1001px) and (max-width:1799px){.page-home .opening{height:min(780px,calc(100svh - 123px))}}
@media(max-width:760px){.page-home .header{padding-block:.75rem}.page-home .header .logo img{width:72px}}

/* Readable technical guides and dated sources. */
.reviewed-article{max-width:1600px;margin-inline:auto}.reviewed-article>section{max-width:54rem;margin-block:0 2.6rem}.reviewed-article h2{font-size:clamp(1.45rem,2.3vw,1.9rem);margin-bottom:1rem}.reviewed-article p{line-height:1.9}.reviewed-article a{text-decoration:underline;text-underline-offset:3px}.reviewed-article .article-sources{padding-top:1.5rem;border-top:1px solid var(--line);font-size:.9375rem}.reviewed-article .article-sources h2{font-size:1.2rem}.reviewed-article .article-sources ul{padding-left:1.3rem}.reviewed-article .article-sources li+li{margin-top:.5rem}.article-dates{margin-top:1.25rem}
