/* Show original pixels with less enlargement and no dark image overlay. */
.email-row a{overflow-wrap:anywhere;text-align:right}
.contact-form-section{display:grid;grid-template-columns:1fr 1.3fr;gap:70px;background:#e9e7df;padding:75px 7% 90px}
.form-intro h2{font-size:48px;line-height:1.2;margin:25px 0}.form-intro>p:not(.eyebrow){font-size:13px;color:var(--muted);max-width:340px}.form-intro>a{display:inline-block;font-size:13px;margin-top:25px;overflow-wrap:anywhere;border-bottom:1px solid;padding-bottom:8px}
.form-fields{display:grid;grid-template-columns:1fr 1fr;gap:24px}.field{margin-bottom:25px}.field label{display:block;font-size:12px;margin-bottom:12px}.field label span{font-size:10px;color:var(--muted)}.field input,.field textarea{display:block;width:100%;border:1px solid #b4b8ac;background:var(--paper);color:var(--ink);padding:15px;font:inherit;border-radius:0}.field textarea{resize:vertical;min-height:150px}.field input:focus,.field textarea:focus{outline:2px solid var(--ink);outline-offset:2px}.form-help{font-size:11px;color:#595f52;line-height:1.8}.email-fallback{font-size:11px;margin-top:22px}.email-fallback a{text-decoration:underline}#contact-status:empty{display:none}#contact-status{margin-top:20px}.contact-form-section .dark-button{cursor:pointer}footer .footer-bottom{flex-wrap:wrap;gap:24px}
@media(max-width:760px){.contact-form-section{grid-template-columns:1fr;padding:60px 7%;gap:40px}.form-intro h2{font-size:38px}.form-fields{grid-template-columns:1fr;gap:0}.contact-row{flex-wrap:wrap}.email-row a{text-align:left}}
.hero{background:#e9e7df;color:var(--ink);height:min(850px,calc(100svh - 105px));min-height:650px}
.slideshow{left:48%;background:#e2dfd7}
.slide{display:flex;align-items:center;justify-content:center;padding:24px 4% 82px}
.slide img{object-fit:contain;object-position:center;width:100%;height:100%;max-width:1170px;max-height:1560px;transform:none;will-change:transform}
.hero-shade{display:none}
.hero-content{left:7%;right:55%;top:20%;max-width:none}
.hero h1{font-size:clamp(42px,5vw,76px);line-height:1.12}
.hero-sub{color:var(--muted)}
.light-button{border-color:var(--ink)}
.hero-bottom{color:var(--ink);bottom:30px}
.slide-dot{color:#72766a}
.slide-dot.active{color:var(--ink);border-color:var(--ink)}
.pause{color:var(--ink);border-color:#30382e50}
.photo,.gallery-photo,.showroom-photo{background:#e9e7df}
.photo{height:auto;aspect-ratio:3/4}
.photo img,.gallery-photo img,.showroom-photo img{object-fit:contain;object-position:center}
.universe:hover img,.gallery-item:hover img{transform:none}
.gallery-photo{height:auto;aspect-ratio:3/4}
.gallery-photo:has(img[width="1560"]){aspect-ratio:4/3}
.gallery-photo a{display:block;width:100%;height:100%;cursor:zoom-in}
.gallery-photo a:focus-visible{outline-offset:4px}
.showroom-photo{height:auto;aspect-ratio:3/4}
.slideshow .slide-dot{letter-spacing:1px}
@media(min-width:1800px){.slideshow{left:50%}.hero-content{right:54%}}
@media(max-width:1100px){.hero h1{font-size:clamp(40px,5.2vw,60px)}.hero-content{top:21%;left:6%;right:55%}}
@media(max-width:760px){
 .hero{display:flex;flex-direction:column;height:auto;min-height:0;max-height:none}
 .hero-content{position:relative;left:auto;right:auto;top:auto;order:0;padding:44px 7% 36px}
 .hero h1{font-size:clamp(44px,9.6vw,68px);margin:22px 0}
 .hero-sub{font-size:13px}.light-button{margin-top:15px}
 .slideshow{position:relative;inset:auto;order:1;aspect-ratio:3/4;width:100%;max-height:780px}
 .slide{padding:0 6% 12px}.slide img{max-width:100%;max-height:100%}
 .hero-bottom{position:relative;inset:auto;order:2;padding:12px 7% 26px}
 .photo{height:auto;aspect-ratio:3/4}.gallery-photo{height:auto;aspect-ratio:3/4}
 .showroom-photo{height:auto;aspect-ratio:3/4}
}

/* Immersive photographic stories, with the original images kept at their ratio. */
.slide{transition:opacity 1.5s ease,visibility 1.5s;visibility:hidden}
.slide.active{visibility:visible}
.slide.active img{animation:hp-photo-drift 8s ease-out both}
.motion-paused .slide img{animation-play-state:paused}
@keyframes hp-photo-drift{from{transform:scale(1.025) translateY(5px)}to{transform:scale(1) translateY(-5px)}}
.slide-dot{position:relative;min-width:32px}
.slide-dot.active:after{content:'';position:absolute;bottom:-3px;left:0;height:2px;background:currentColor;animation:hp-slide-progress 6.5s linear both}
.motion-paused .slide-dot.active:after{animation-play-state:paused}
@keyframes hp-slide-progress{from{width:0}to{width:100%}}
.universe-grid{display:flex;flex-direction:column;gap:75px}
.universe{display:grid;grid-template-columns:62% 38%;grid-template-rows:1fr 1fr;min-height:570px;background:#e9e7df;overflow:hidden}
.universe .photo{grid-row:1/3;height:min(78svh,850px);min-height:570px;padding:25px}
.universe .photo img{object-fit:contain;transition:transform 1.3s ease}
.universe:nth-child(even){grid-template-columns:38% 62%}
.universe:nth-child(even) .photo{grid-column:2}
.universe:nth-child(even) .card-line,.universe:nth-child(even)>p{grid-column:1}
.universe .card-line{grid-row:1;padding:35px 14% 22px;align-self:end;border:0;gap:20px}
.universe .card-line h3{font-size:clamp(30px,3.4vw,55px);line-height:1.15}
.universe>p{grid-row:2;padding:0 14%;font-size:14px;max-width:430px}
.universe:hover .photo img{transform:scale(1.02)}
.reveal{opacity:0;transform:translateY(35px);transition:opacity 1.1s ease,transform 1.1s ease}
.reveal.in-view{opacity:1;transform:none}
.demo-reviews{padding:80px 7% 100px}
.demo-reviews h2{font-size:clamp(30px,4vw,50px);margin:20px 0}
.demo-reviews .demo-note{font-size:13px;color:var(--muted);max-width:680px;margin-bottom:30px}
.review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.demo-review{padding:28px;border:1px solid var(--line);margin:0}
.demo-review .demo-label{display:block;font-size:10px;letter-spacing:1px;text-transform:uppercase;margin-bottom:18px;color:var(--muted)}
.demo-review p{font-family:var(--serif);font-size:20px;line-height:1.6}
@media(max-width:760px){.universe-grid{gap:35px}.universe,.universe:nth-child(even){display:flex;flex-direction:column;min-height:0}.universe .photo{height:auto;min-height:0;aspect-ratio:3/4;padding:15px}.universe .card-line{padding:25px 7% 12px;align-self:stretch}.universe>p{padding:0 7% 30px}.review-grid{grid-template-columns:1fr}.demo-reviews{padding:60px 7%}}
@media(prefers-reduced-motion:reduce){.slide.active img,.slide-dot.active:after{animation:none!important}.reveal{opacity:1;transform:none;transition:none}.universe .photo img{transition:none}.universe:hover .photo img{transform:none}}

.customer-reviews{padding:90px 7%;border-top:1px solid var(--line)}.reviews-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:70px}.reviews-intro{font-size:16px;margin-bottom:25px}#review-form{display:flex;flex-direction:column;gap:10px}#review-form>label{font-size:14px;margin-top:8px}#review-form>input,#review-form>select,#review-form>textarea{font:inherit;font-size:16px;width:100%;padding:14px;border:1px solid #a9ac9f;background:#fff;color:var(--ink);border-radius:0}#review-form textarea{resize:vertical}#review-form .dark-button{align-self:flex-start;margin-top:10px;font-size:14px}#review-form .review-consent{display:flex;align-items:flex-start;gap:10px;line-height:1.6;font-size:14px}#review-form .review-consent input{margin-top:5px;flex-shrink:0;width:18px;height:18px}.review-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.reviews-note{font-size:14px;color:var(--muted);margin-bottom:22px}.reviews-summary{font-size:18px;margin-bottom:10px}.customer-review{margin:0;padding:25px 0;border-top:1px solid var(--line)}.review-meta{display:flex;gap:12px;justify-content:space-between;align-items:baseline;flex-wrap:wrap}.review-name{font-weight:600;font-size:16px}.review-date{font-size:13px;color:var(--muted)}.review-stars{color:#886028;letter-spacing:3px;font-size:20px;margin:8px 0}.review-text{white-space:pre-wrap;font-size:16px;line-height:1.7;overflow-wrap:anywhere}.reviews-more{padding:12px 18px;background:transparent;border:1px solid var(--ink);margin-top:20px;font-size:14px}#review-status{font-size:14px;min-height:24px;line-height:1.6}#review-form button:disabled{opacity:.6;cursor:wait}.customer-reviews :focus-visible{outline:2px solid #886028;outline-offset:3px}@media(max-width:760px){.customer-reviews{padding:60px 7%}.reviews-layout{grid-template-columns:1fr;gap:45px}}

/* Reference: immersive scenes, moving footage and captions over the images. */
.hero{height:calc(90svh - 105px);min-height:540px;max-height:980px;color:white;background:#20251f}
.hero .slideshow{inset:0;background:#20251f}.hero .slide{padding:0;display:block}.hero .slide>img{height:100%;width:100%;max-width:none;max-height:none;object-fit:cover;object-position:50% 55%}
.hero .hero-shade{display:block;inset:0;background:linear-gradient(0deg,#10170fc9,transparent 65%);z-index:1}
.hero .hero-content{z-index:2;left:10%;right:10%;top:auto;bottom:115px;text-align:center;max-width:none}
.hero h1{font-size:clamp(42px,4.7vw,78px);margin:20px 0;line-height:1.02}.hero .hero-sub{color:#fff;font-size:14px}.hero .eyebrow{color:#fff}
.hero .light-button{color:white;border-color:#ffffff80;font-size:14px}.hero .hero-bottom{z-index:2;color:white}.hero .slide-dot,.hero .pause{color:#fff}.hero .slide-dot.active{border-color:white}.hero .pause{border-color:#fff8}.hero .hero-bottom>a{color:white}
.film-duo{display:grid;grid-template-columns:1fr 1fr;height:100%;gap:4px;background:#20251f}.film-duo>img,.film-duo>video{display:block;max-height:none;max-width:none;width:100%;height:100%;object-fit:cover;object-position:center 55%}.slide.active .film-duo>img{animation:hp-photo-drift 8s ease-out both}
.compact-intro{padding:65px 15%}.compact-intro h2{font-size:clamp(30px,3vw,44px)}
.cinematic-collections{padding:25px 0 75px}.cinematic-collections>.section-heading{padding:0 7%}.cinematic-collections .universe-grid{gap:6px}.cinematic-collections .universe{position:relative;display:block;min-height:0;background:#222;color:white;height:76svh;max-height:850px}
.cinematic-collections .universe .photo{height:100%;min-height:0;padding:0}.cinematic-collections .universe .photo img{width:100%;height:100%;object-fit:cover;object-position:50% 58%}
.cinematic-collections .universe:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#121912aa,transparent 60%);pointer-events:none}
.cinematic-collections .card-line{position:absolute;bottom:90px;left:7%;right:7%;padding:0;z-index:1;align-items:end}.cinematic-collections .card-line h3{font-size:clamp(36px,4vw,64px)}.cinematic-collections .universe>p{position:absolute;bottom:45px;left:7%;right:7%;padding:0;color:white;z-index:1;max-width:none;font-size:16px}
.cinematic-collections .universe:nth-child(1) .photo img{object-position:50% 58%}.cinematic-collections .universe:nth-child(3) .photo img{object-position:50% 42%}
@media(max-width:760px){.hero{display:block;height:calc(88svh - 82px);min-height:570px;max-height:850px}.hero .slideshow{position:absolute;inset:0;height:100%;min-height:0}.hero .slide{padding:0}.hero .hero-content{position:absolute;left:7%;right:7%;bottom:100px;padding:0;order:initial}.hero h1{font-size:clamp(38px,9vw,64px)}.hero .hero-bottom{position:absolute;bottom:25px;padding:0;order:initial}.hero .hero-sub{font-size:14px}.hero .slide>img{object-position:50% 50%}.film-duo{display:block}.film-duo>img{display:none}.film-duo>video{object-fit:cover}.compact-intro{padding:60px 7%}.cinematic-collections .universe{height:72svh;min-height:540px}.cinematic-collections .universe .photo{aspect-ratio:auto}.cinematic-collections .card-line{bottom:110px}.cinematic-collections .universe>p{bottom:50px;max-width:310px;font-size:16px}}
@media(prefers-reduced-motion:reduce){.slide.active .film-duo>img{animation:none}.cinematic-collections .universe:hover img{transform:none}}

/* The opening still photograph moves from the first frame. */
.hero.motion-enabled .slide:first-child.active{animation:hp-opening-motion 6.5s linear both;transform-origin:50% 55%;will-change:transform}
.hero .slide:first-child.active>img{animation:none}
.hero.motion-paused .slide:first-child.active{animation-play-state:paused}
@keyframes hp-opening-motion{from{transform:scale(1.025) translateX(0)}to{transform:scale(1.16) translateX(-1.5%)}}
@media(max-width:760px){@keyframes hp-opening-motion{from{transform:scale(1.02) translateY(0)}to{transform:scale(1.13) translateY(-1.5%)}}}

/* Full scene bounds override the original portrait-card aspect ratio. */
.cinematic-collections .universe .photo{position:absolute;inset:0;width:100%;height:100%;min-height:0;aspect-ratio:auto;padding:0;overflow:hidden}
.cinematic-collections .universe .photo img{display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:cover}
