/* Styles are scoped to this additional project only. */
.ol2-page{--ol-paper:#f2f0eb;--ol-ink:#19312e;background:var(--ol-paper);color:var(--ol-ink)}
.ol2-page .reference-header{position:absolute;inset:0 0 auto;z-index:20;background:transparent;color:#fff;border:0}
.ol2-page .reference-header a,.ol2-page .reference-header .lang,.ol2-page .reference-header .menu{color:inherit}
.ol2-page .reference-header .lang{background:transparent}.ol2-page .reference-header .lang option{color:#19312e;background:#f2f0eb}
.ol2-page .reference-header .open-door-logo{background:transparent}.ol2-page .reference-header .open-door-logo img{filter:brightness(0) invert(1)}
.ol2-page .reference-footer{background:var(--ol-paper);color:var(--ol-ink);border-top:1px solid #19312e30}
.ol2{font-family:Arial,Helvetica,sans-serif}.ol2 a{color:inherit}.ol2 button{font-family:inherit}.ol2 :is(a,button,summary):focus-visible{outline:2px solid #c7a36b;outline-offset:6px}
.ol2-hero{height:100svh;min-height:640px;position:relative;background:#31463b;color:white;isolation:isolate}.ol2-hero>button{display:block;position:absolute;inset:0;border:0;padding:0;width:100%;height:100%;background:transparent;cursor:zoom-in}.ol2-hero img{width:100%;height:100%;object-fit:cover;object-position:50% 53%;display:block}.ol2-hero-shade{pointer-events:none;position:absolute;inset:0;background:linear-gradient(180deg,#07190f52 0%,transparent 33%,transparent 52%,#07190f8c 100%)}
.ol2-hero-bottom{position:absolute;bottom:44px;inset-inline:48px;display:flex;align-items:flex-end;justify-content:space-between;pointer-events:none}.ol2-hero-bottom p{font-size:13px;letter-spacing:.04em;margin:0 0 18px;display:flex;gap:32px}.ol2-hero h1{font-size:clamp(64px,8.6vw,150px);font-weight:400;line-height:.94;letter-spacing:-.065em;margin:0}.ol2-hero h1 span{font-size:.31em;vertical-align:top;display:inline-block;margin-top:.1em;margin-inline-start:.15em;letter-spacing:-.02em}.ol2-hero-bottom>a{pointer-events:auto;width:56px;height:56px;border:1px solid #ffffff70;border-radius:50%;display:grid;place-items:center;text-decoration:none;font-size:30px}
.ol2-intro{padding:100px 48px 80px;display:grid;grid-template-columns:1fr 3fr;gap:60px;scroll-margin-top:28px}.ol2-back{font-size:13px;text-decoration:none;align-self:start;padding-top:5px}.ol2-intro-main{max-width:850px}.ol2-kicker{font-size:12px;letter-spacing:.07em;text-transform:uppercase;margin:0 0 35px}.ol2-intro h2{font-size:clamp(32px,3.3vw,58px);line-height:1.12;letter-spacing:-.04em;font-weight:400;margin:0 0 26px}.ol2-lead{font-size:clamp(20px,2vw,30px);line-height:1.5;letter-spacing:-.025em;margin:0;max-width:790px}.ol2-details{margin-top:42px;border-top:1px solid #19312e40}.ol2-details summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;padding:22px 0;font-size:13px}.ol2-details summary::-webkit-details-marker{display:none}.ol2-plus{font-size:24px;line-height:1;transition:transform .2s}.ol2-details[open] .ol2-plus{transform:rotate(45deg)}.ol2-expanded{display:grid;grid-template-columns:1fr 2fr;gap:38px;padding:16px 0 30px}.ol2-expanded p{font-size:16px;line-height:1.7;margin:0 0 20px}.ol2-expanded dl{margin:0;font-size:13px}.ol2-expanded dl div{padding:0 0 20px}.ol2-expanded dt{opacity:.6;font-size:11px;margin-bottom:5px}.ol2-expanded dd{margin:0}
.ol2-gallery-nav{padding:24px 48px;display:flex;flex-direction:row;justify-content:space-between;align-items:center;border-top:1px solid #19312e30;position:sticky;top:0;background:var(--ol-paper);z-index:10;font-size:13px}.ol2-gallery-nav a{text-decoration:none}.ol2-gallery-nav sup{font-size:10px;margin-inline-start:8px}.ol2-gallery{scroll-margin-top:80px}.ol2-photo{margin:0}.ol2-photo-open{padding:0;border:0;background:none;color:inherit;width:100%;display:block;position:relative;cursor:zoom-in;overflow:hidden}.ol2-photo img{display:block;width:100%;height:auto;transition:transform .7s}.ol2-photo-open:hover img{transform:scale(1.015)}.ol2-photo-plus{position:absolute;inset:auto 20px 20px auto;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#f2f0ebeb;font-size:22px;opacity:0;transition:opacity .2s}.ol2-photo-open:hover .ol2-photo-plus,.ol2-photo-open:focus-visible .ol2-photo-plus{opacity:1}.ol2-photo figcaption{display:flex;gap:20px;justify-content:space-between;font-size:11px;line-height:1.5;padding:13px 0 0;color:#4e5c53}.ol2-wide{margin:0 48px}.ol2-chapter{display:grid;grid-template-columns:1fr 1.3fr 1.7fr;gap:40px;align-items:start;padding:115px 48px}.ol2-chapter>span{font-size:12px;padding-top:9px}.ol2-chapter h2{font-size:clamp(30px,3.2vw,48px);font-weight:400;line-height:1.1;letter-spacing:-.045em;margin:0}.ol2-chapter p{font-size:17px;line-height:1.7;max-width:440px;margin:0}
.ol2-inset{width:78%;margin:0 auto 115px}.ol2-asymmetric{display:grid;grid-template-columns:1fr 1.35fr;gap:8vw;align-items:center;margin:0 8vw}.ol2-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:0 10vw 115px;align-items:start}.ol2-panorama{margin-bottom:115px}.ol2-panorama figcaption,.ol2-finale figcaption{padding-inline:48px}.ol2-finale{margin:0 0 20px}.ol2-end{padding:100px 48px 80px}.ol2-end>p{font-size:12px;letter-spacing:.04em;margin:0 0 32px}.ol2-all{display:flex;justify-content:space-between;align-items:center;text-decoration:none;font-size:clamp(42px,7vw,110px);line-height:1.1;letter-spacing:-.06em;padding-bottom:35px;border-bottom:1px solid #19312e40}.ol2-all span{font-size:.7em}.ol2-end>div{display:flex;justify-content:space-between;gap:25px;margin-top:28px;font-size:13px}.ol2-end>div a{text-underline-offset:5px}
@media(min-width:1700px){.ol2-intro{grid-template-columns:1fr 2fr;padding-block:140px}.ol2-hero-bottom{bottom:64px}}
@media(max-width:900px){.ol2-page .reference-header #nav.open{background:#19312e;color:white}.ol2-hero-bottom{inset-inline:28px;bottom:32px}.ol2-hero{min-height:600px}.ol2-intro{padding:70px 28px;grid-template-columns:1fr;gap:36px}.ol2-intro-main{max-width:760px}.ol2-gallery-nav{padding:21px 28px}.ol2-wide{margin-inline:28px}.ol2-chapter{grid-template-columns:40px 1fr;gap:24px;padding:80px 28px}.ol2-chapter p{grid-column:2;max-width:590px}.ol2-inset{width:86%;margin-bottom:80px}.ol2-asymmetric{margin-inline:28px;gap:32px}.ol2-pair{margin:0 28px 80px;gap:18px}.ol2-panorama{margin-bottom:80px}.ol2-end{padding:70px 28px}.ol2-panorama figcaption,.ol2-finale figcaption{padding-inline:28px}}
@media(max-width:560px){.ol2-hero{min-height:560px;height:90svh}.ol2-hero img{object-position:47% 50%}.ol2-hero-bottom{inset-inline:20px;bottom:28px}.ol2-hero h1{font-size:clamp(42px,13vw,59px);letter-spacing:-.055em;white-space:nowrap}.ol2-hero-bottom p{font-size:11px;gap:20px}.ol2-hero-bottom>a{width:39px;height:39px;font-size:23px;position:absolute;inset-inline-end:0;bottom:0}.ol2-hero-bottom>div{width:100%}.ol2-hero h1{padding-bottom:50px}.ol2-intro{padding:52px 22px;gap:30px}.ol2-kicker{font-size:10px;margin-bottom:24px;letter-spacing:.03em}.ol2-intro h2{font-size:36px}.ol2-lead{font-size:21px;line-height:1.48}.ol2-expanded{grid-template-columns:1fr;gap:18px}.ol2-expanded dl{display:flex;gap:24px;flex-wrap:wrap}.ol2-expanded p{font-size:15px}.ol2-gallery-nav{padding:19px 22px;font-size:12px}.ol2-wide{margin-inline:0}.ol2-wide figcaption{padding-inline:22px}.ol2-photo figcaption{font-size:10px;gap:12px}.ol2-chapter{padding:64px 22px;grid-template-columns:27px 1fr;gap:18px}.ol2-chapter h2{font-size:33px}.ol2-chapter p{font-size:16px;line-height:1.65}.ol2-inset{width:calc(100% - 44px);margin-bottom:64px}.ol2-asymmetric{grid-template-columns:1fr;gap:46px;margin-inline:22px}.ol2-asymmetric .ol2-photo:first-child{width:80%}.ol2-asymmetric .ol2-photo:last-child{width:95%;justify-self:end}.ol2-pair{margin:0 22px 64px;gap:14px}.ol2-pair figcaption{min-height:60px}.ol2-panorama{margin-bottom:64px}.ol2-panorama figcaption,.ol2-finale figcaption{padding-inline:22px}.ol2-end{padding:64px 22px 55px}.ol2-end>div{flex-direction:column;font-size:12px;gap:20px}.ol2-all{font-size:48px}}
@media(prefers-reduced-motion:reduce){.ol2 *{scroll-behavior:auto!important;transition:none!important}}


/* Keep longer interior-project titles inside the same Olarte mobile hero. */
@media(max-width:560px){.interior-project-page .ol2-hero h1{white-space:normal;font-size:clamp(38px,11vw,59px);max-width:100%}}

/* Casa Olarte only: keep the original caption footprints and image positions. */
.ol2-final-page .ol2-photo figcaption,.ol2-final-page .ol2-count-space{visibility:hidden}
.ol2-final-page #gallery-counter,.ol2-final-page .ol2-slide-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.ol2-final-page .ol2-slider-frame{position:relative;display:grid;grid-template-columns:1fr;touch-action:pan-y}
.ol2-final-page .ol2-slider-frame>.ol2-photo-open{grid-area:1/1;aspect-ratio:2600/1733;background:#19312e}.ol2-final-page .ol2-slider-frame>figcaption{grid-area:2/1}
.ol2-final-page .ol2-slider-frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.ol2-final-page .ol2-slider-frame>.ol2-slide-previous,.ol2-final-page .ol2-slider-frame>.ol2-slide-next{position:relative;grid-area:1/1;align-self:center;display:grid;place-items:center;width:48px;height:48px;padding:0;border:1px solid #19312e30;border-radius:50%;background:#f2f0ebeb;color:#19312e;cursor:pointer;z-index:2}
.ol2-final-page .ol2-slide-previous{justify-self:start;margin-left:24px}.ol2-final-page .ol2-slide-next{justify-self:end;margin-right:24px}
.ol2-final-page .ol2-slide-next svg{transform:rotate(180deg)}
.ol2-final-page .ol2-slider .ol2-photo-open:hover img{transform:none}
.ol2-final-page .ol2-end>div{justify-content:flex-end}
@media(max-width:560px){.ol2-final-page .ol2-slider-frame>.ol2-slide-previous,.ol2-final-page .ol2-slider-frame>.ol2-slide-next{width:44px;height:44px}.ol2-final-page .ol2-slide-previous{margin-left:12px}.ol2-final-page .ol2-slide-next{margin-right:12px}}
.ol2-final-page #close-gallery{margin-inline-start:auto}
