.header{position:fixed;inset:0 0 auto;max-width:none;height:88px;background:#f7f5f0f5;backdrop-filter:blur(12px);transition:background .25s,color .25s;border-bottom:1px solid #24252115;padding-inline:4.5%}.header.on-intro{background:linear-gradient(#171b1b80,transparent);backdrop-filter:none;color:#fff;border-color:#ffffff30}.header.on-intro .brand-name>span{color:#ece8df}.header.on-intro .header-contact{border-color:#ffffff70}.header.on-intro .menu-toggle span{background:#fff}.header.on-intro .mobile-nav{color:var(--ink);background:var(--paper)}.header .brand-name{font-size:12px}.header .monogram{font-size:44px}.desktop-nav{font-size:14px;gap:36px}.header-contact{font-size:14px}.button{border-radius:3px}.button>span[aria-hidden],.text-link>span[aria-hidden],.header-contact>span[aria-hidden],.mobile-contact span[aria-hidden]{display:none}.jr-journey{position:relative;background:#181a17;color:#fff}.jr-journey[data-animated=true]{height:var(--jr-scroll-height,240svh)}.jr-journey-stage{position:relative;height:var(--jr-viewport-height,100svh);min-height:590px;overflow:hidden;isolation:isolate}.jr-journey[data-animated=true] .jr-journey-stage{position:sticky;top:0;min-height:0}.jr-scene{position:absolute;left:50%;top:50%;width:var(--jr-scene-width,max(100vw,150svh));height:var(--jr-scene-height,calc(max(100vw,150svh) * 2 / 3));aspect-ratio:3 / 2;transform:translate(-50%,-50%);pointer-events:none}.jr-house>img{display:block;width:100%;height:100%;max-width:none;object-fit:cover}.jr-portal{position:absolute;left:45.65%;top:50.8%;width:8.65%;height:23.65%;perspective:900px;background:#181a17;box-shadow:inset 10px 0 20px #0009}.jr-door-leaf{position:absolute;inset:0;background-image:url('/assets/casa-concepto.webp');background-size:1156.07% 422.83%;background-position:49.97% 66.54%;transform-origin:0 50%;backface-visibility:hidden}.jr-scene-shade{position:absolute;inset:0;background:linear-gradient(#12161265 0%,#10140d10 46%,#1216106b 100%);pointer-events:none}.jr-opening-copy{position:absolute;z-index:2;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:110px 5% 180px;pointer-events:none}.jr-opening-copy .eyebrow{color:#fff;font-weight:400;font-size:12px;letter-spacing:.22em;margin-bottom:27px}.jr-opening-copy h1{font-size:clamp(66px,8.4vw,142px);font-weight:700;letter-spacing:-.065em;line-height:.96;margin:0;text-wrap:balance;text-shadow:0 3px 35px #0003}.jr-opening-copy h1 em{display:block;font-family:inherit;font-style:normal;font-weight:inherit;font-size:.82em;letter-spacing:inherit}.jr-journey-bottom{position:absolute;bottom:34px;left:4.5%;right:4.5%;display:flex;align-items:flex-end;justify-content:space-between;gap:25px;z-index:6}.jr-scroll-link{font-size:14px;display:flex;gap:14px;align-items:center}.jr-scroll-line{display:block;width:34px;height:1px;background:#d9bd83}.jr-journey-controls{display:flex;align-items:center;gap:22px}.jr-skip,.jr-motion{background:none;border:0;color:inherit;font-size:13px;text-decoration:underline;text-underline-offset:5px;padding:11px 0;min-height:44px}.jr-asset-note{position:absolute;bottom:87px;left:4.5%;z-index:5;font-size:12px;color:#fff;background:#191c1666;padding:3px 7px}.jr-journey-progress{position:absolute;bottom:0;left:0;right:0;height:2px;z-index:7;background:#ffffff20}.jr-journey-progress span{display:block;height:100%;background:var(--gold-light);transform:scaleX(0);transform-origin:left}.jr-arrival{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#181a17;color:var(--paper);text-align:center;padding:100px 5%;opacity:0;pointer-events:none;z-index:4}.jr-arrival p{font-size:13px;letter-spacing:.17em;color:var(--gold-light);margin-bottom:26px}.jr-arrival .jr-arrival-title{font-size:clamp(54px,7vw,110px);font-weight:700;line-height:1;letter-spacing:-.065em}.jr-arrival .jr-arrival-title em{font-family:inherit;font-style:normal;color:var(--gold-light);font-weight:inherit}.jr-arrival>span{font-size:16px;color:#c3c2b8;margin-top:28px}.hero{padding:120px 4.5% 100px;gap:8%;min-height:0;grid-template-columns:1.03fr 1fr;max-width:1600px;scroll-margin-top:88px}.hero-copy{padding-top:10px}.hero h2{font-size:clamp(50px,5.4vw,88px);font-weight:700;letter-spacing:-.065em;margin:28px 0}.hero h2 em{font-weight:inherit}.hero-description{font-size:18px;max-width:480px}.hero-visual{height:660px;padding:0}.hero-photo{min-height:0;border-radius:3px}.vertical-caption{right:16px;top:20px;color:#fff;z-index:2}.experience-stamp{right:0;bottom:0;padding:26px;background:var(--paper);color:var(--ink)}.hero-note{font-size:14px;margin-top:17px}.trust-strip{padding:28px 4.5%;border-bottom:0;margin-inline:4.5%;max-width:none}.trust-strip p{font-size:15px}.section{padding:115px 4.5%;max-width:1600px}.section-heading{margin-bottom:65px;gap:60px}.section-heading h2,.services-intro h2,.about-copy h2,.contact-inner h2{font-weight:700;font-size:clamp(45px,5.2vw,84px);letter-spacing:-.06em}.section-heading h2 em,.services-intro h2 em,.about-copy h2 em,.contact-inner h2 em{font-weight:inherit}.section-heading>p{font-size:17px;max-width:390px}.eyebrow{font-size:12px;letter-spacing:.13em}.project-grid{gap:65px 32px}.project-wide{grid-column:span 7}.project-narrow{grid-column:span 5;padding-top:105px}.project-wide .project-image{height:660px}.project-narrow .project-image{height:555px}.project-third .project-image{height:380px}.project-image{border-radius:3px}.image-label{background:#f7f5f0ed;font-size:12px;padding:9px 12px;left:20px;top:20px}.image-expand{border-radius:50%;font-size:23px;width:44px;height:44px;bottom:20px;right:20px}.project-meta h3{font-size:25px;letter-spacing:-.035em}.project-meta p{font-size:15px}.gallery-bottom{font-size:14px;padding-top:25px;margin-top:48px}.services-section{background:#181a17}.services-inner{gap:10%;grid-template-columns:1fr 1.16fr;padding-block:125px}.services-intro{position:sticky;top:120px;align-self:start}.services-intro p:not(.eyebrow){font-size:17px;color:#c3c5ba}.services-intro .text-link{font-size:16px}.service-list summary{padding:32px 0;gap:20px}.service-list h3{font-size:clamp(20px,2vw,30px);letter-spacing:-.035em}.service-number{font-size:13px;color:var(--gold-light)}.service-description{font-size:17px;line-height:1.65;padding-bottom:30px;color:#c3c5ba}.about{gap:11%;padding-block:135px}.about-photo{height:680px;border-radius:3px;overflow:hidden}.about-copy p:not(.eyebrow){font-size:18px;line-height:1.7}.about-photo-caption{font-size:14px}.process{padding-top:15px;padding-bottom:120px}.process .section-heading h2{font-size:clamp(38px,4.3vw,68px);font-weight:700}.process-number{font-size:42px;color:var(--gold)}.process-grid h3{font-size:25px;font-weight:700;letter-spacing:-.04em}.process-grid p{font-size:17px}.contact-section{background:#e9e5db;color:var(--ink)}.contact-intro .eyebrow{color:#7f6230}.contact-inner .contact-intro>p:not(.eyebrow){color:var(--muted)}.contact-note{color:#5b5d53}.contact-inner{padding-block:120px;gap:9%}.contact-details{border-color:#b6b2a7}.contact-details .phone{color:var(--ink);font-size:clamp(33px,3vw,45px)}.contact-location span,.contact-details .eyebrow{color:var(--muted)}.quote-form{background:var(--paper);padding:38px;border:1px solid #d8d4c9;border-radius:3px}.quote-form .button{background:var(--ink);color:#fff}.quote-form input,.quote-form textarea{border-color:#bdbfb5;border-radius:2px}.footer{background:#181a17;color:#e9e7de;padding-block:45px}.footer-brand{font-size:14px;color:inherit}.footer>span{font-size:13px}.mobile-contact{background:#f7f5f0f5;backdrop-filter:blur(12px)}.jr-reveal{transition:opacity .65s ease,transform .65s cubic-bezier(.2,.7,.2,1)}.jr-reveal[data-visible=false]{opacity:0;transform:translateY(26px)}.jr-photo-drift{will-change:transform}
@media(max-width:940px){.header{height:76px;padding-inline:5%}.hero{grid-template-columns:1fr 1fr;gap:5%;padding-block:85px}.hero h2{font-size:49px}.hero-visual{height:590px}.project-wide .project-image{height:520px}.project-narrow .project-image{height:435px}.project-narrow{padding-top:85px}.section{padding-block:85px}.services-inner{gap:7%}.service-list h3{font-size:22px}.about{gap:6%}.about-photo{height:550px}.contact-inner{gap:5%}.quote-form{padding:27px}.jr-opening-copy h1{font-size:clamp(64px,10vw,100px)}}
@media(max-width:780px){.header .brand-name{font-size:11px;letter-spacing:.08em}.header .brand-name>span{font-size:10px;letter-spacing:.1em}.header .monogram{font-size:40px}.header .brand{gap:14px}.mobile-nav{top:76px}.jr-journey[data-animated=true]{height:var(--jr-scroll-height,235svh)}.jr-journey-stage{height:var(--jr-viewport-height,100svh);min-height:620px}.jr-opening-copy{padding:115px 7% 180px;justify-content:center}.jr-opening-copy .eyebrow{font-size:11px;letter-spacing:.12em;max-width:25ch;line-height:1.7;margin-bottom:21px}.jr-opening-copy h1{font-size:clamp(57px,12.3vw,92px);line-height:1;letter-spacing:-.07em}.jr-opening-copy h1 em{font-size:.8em;line-height:1.1}.jr-journey-bottom{bottom:28px;left:6%;right:6%;display:grid;grid-template-columns:1fr;gap:8px}.jr-journey-controls{justify-content:space-between;gap:12px;order:2}.jr-scroll-link{font-size:14px}.jr-asset-note{left:6%;bottom:132px;font-size:11px}.jr-arrival{padding:105px 7% 150px}.jr-arrival .jr-arrival-title{font-size:clamp(45px,10.6vw,75px)}.jr-arrival p{font-size:12px}.jr-arrival>span{font-size:15px;max-width:25ch;line-height:1.6}.hero{padding:75px 6% 50px;grid-template-columns:1fr;gap:36px}.hero-copy{padding:0}.hero h2{font-size:clamp(46px,10.9vw,68px);margin:23px 0}.hero-description{font-size:17px;max-width:36ch}.hero .button{font-size:16px;margin-top:26px}.hero-note{font-size:13px;line-height:1.6}.hero-visual{height:490px}.experience-stamp{padding:20px}.trust-strip{padding:24px 0;margin-inline:6%;gap:15px}.trust-strip p{font-size:15px}.section{padding:75px 6%}.section-heading{margin-bottom:38px}.section-heading h2,.services-intro h2,.about-copy h2,.contact-inner h2{font-size:clamp(43px,9.8vw,68px);line-height:1.06}.section-heading>p{font-size:16px;margin-top:24px}.project-grid{grid-template-columns:1fr;gap:38px}.project-wide,.project-narrow,.project-third,.project-third:last-child{grid-column:1;padding-top:0}.project-wide .project-image,.project-narrow .project-image,.project-third .project-image,.project-third:last-child .project-image{height:460px}.project-meta h3{font-size:24px}.project-meta p{font-size:15px}.image-label{font-size:11px;top:15px;left:15px;max-width:calc(100% - 30px)}.gallery-bottom{font-size:13px;gap:18px;margin-top:35px}.services-inner{grid-template-columns:1fr;gap:45px;padding-block:80px}.services-intro{position:static}.services-intro h2 br:nth-of-type(2){display:none}.service-list summary{padding:27px 0;gap:15px}.service-list h3{font-size:24px;line-height:1.2}.service-description{font-size:16px;padding-left:30px}.about{grid-template-columns:1fr;gap:38px}.about-photo{height:500px}.about-copy p:not(.eyebrow){font-size:17px}.about-copy h2 br:nth-of-type(2){display:none}.process{padding-top:10px;padding-bottom:75px}.process .section-heading h2{font-size:43px}.process-grid{gap:35px}.process-grid h3{font-size:23px}.process-grid p{font-size:16px}.process-number{font-size:30px}.contact-inner{grid-template-columns:1fr;gap:40px;padding-block:80px}.quote-form{padding:26px 20px}.contact-intro .contact-details{margin-top:25px}.footer{padding:35px 6% 115px}.jr-journey-visible .mobile-contact{transform:translateY(120%);visibility:hidden}.mobile-contact{transition:transform .2s,visibility .2s}.jr-motion,.jr-skip{font-size:12px}.jr-reveal[data-visible=false]{transform:translateY(18px)}}
@media(max-height:600px) and (min-width:781px){.jr-opening-copy h1{font-size:68px}.jr-opening-copy{padding:90px 5% 120px}.jr-opening-copy .eyebrow{margin-bottom:14px}.jr-arrival .jr-arrival-title{font-size:62px}.jr-asset-note{bottom:78px}}
@media(prefers-reduced-motion:reduce){.jr-journey[data-animated=false]{height:auto}.jr-scene,.jr-door-leaf{will-change:auto}.jr-arrival{display:none}.jr-reveal[data-visible=false]{opacity:1;transform:none}.jr-journey-progress{display:none}.jr-motion{display:none}.header,.mobile-contact{transition:none}}

.jr-interior{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:50% 50%;pointer-events:none}
.jr-house>img{clip-path:polygon(evenodd,0 0,100% 0,100% 100%,0 100%,0 0,45.65% 50.8%,45.65% 74.45%,54.3% 74.45%,54.3% 50.8%,45.65% 50.8%)}
.jr-portal{background:transparent;box-shadow:none}
@supports not (clip-path:polygon(evenodd,0 0,100% 0,100% 100%,0 100%,0 0)){.jr-house>img{clip-path:none}.jr-portal{background:#181a17}}

/* Visible heading labels retain the existing hierarchy and visual design. */
h1>.eyebrow,h2>.eyebrow{display:block;font-family:var(--body);font-style:normal;font-size:12px;font-weight:700;line-height:1.6;letter-spacing:.13em}
.jr-opening-copy h1>.eyebrow{margin-inline:auto;max-width:48ch;line-height:1.7;text-shadow:none}
.jr-arrival .jr-arrival-title{font-family:var(--display);margin:0;color:var(--paper);text-wrap:balance}
.hero-description.service-area{margin-top:12px}
@media(max-width:780px){.jr-opening-copy h1>.eyebrow{max-width:30ch;font-size:11px}}

/* Keep the viewport fixed while the house moves inside it. */
.jr-journey-stage{contain:paint}
@supports(overflow:clip){.jr-journey-stage{overflow:clip}}
.jr-house{position:absolute;inset:0;transform-origin:50% 62.6%;transform:none}
.jr-intro-contact{pointer-events:auto;display:inline-flex;align-items:center;justify-content:center;min-height:48px;margin-top:30px;padding:12px 22px;border:1px solid #ffffffa6;background:#181a17d9;color:#fff;font-size:16px;font-weight:700;letter-spacing:0;line-height:1.4;text-shadow:none}
.jr-intro-contact:hover{background:#181a17}
.jr-opening-copy[inert]{visibility:hidden}
:root{scrollbar-gutter:stable}
@media(max-width:780px){.jr-intro-contact{margin-top:22px;font-size:15px}.jr-opening-copy{padding-bottom:205px}.jr-journey-controls .jr-skip,.jr-journey-controls .jr-motion{font-size:14px}}
