/* Burgundy and ivory: the approved portrait, engraving and quiet movement. */
.mansion-page{--white:#f4ece1;--pearl:#f4ece1;--muted:#cbb6b7;--line:rgba(235,212,203,.23);position:relative;isolation:isolate}
.mansion-page .header{position:relative;z-index:5}
.mansion-page .information-main,.mansion-page>.footer{position:relative;z-index:1}
/* Engraved architecture belongs to the background, below all page content. */
.page-art{position:absolute;inset:8rem 0 0;z-index:0;overflow:hidden;pointer-events:none;user-select:none}
.page-art svg{position:absolute;display:block;pointer-events:none}
.page-art-column{top:0;right:0;width:clamp(7rem,13vw,16rem);height:clamp(50rem,90vw,100rem);opacity:.28;transform:scaleX(-1);-webkit-mask-image:linear-gradient(180deg,transparent,#000 6%,#000 85%,transparent);mask-image:linear-gradient(180deg,transparent,#000 6%,#000 85%,transparent)}
.page-art-chandelier{left:-7%;bottom:6rem;width:clamp(24rem,43vw,54rem);height:auto;aspect-ratio:1;opacity:.16;-webkit-mask-image:radial-gradient(ellipse,#000 62%,transparent 76%);mask-image:radial-gradient(ellipse,#000 62%,transparent 76%)}
.page-art-candles{right:-2%;bottom:7rem;width:clamp(12rem,24vw,30rem);height:auto;aspect-ratio:3/4;opacity:.19;-webkit-mask-image:radial-gradient(ellipse,#000 60%,transparent 77%);mask-image:radial-gradient(ellipse,#000 60%,transparent 77%)}
.mansion-page .navigation{font-family:var(--serif);font-size:1.15rem;letter-spacing:0}
.mansion-page .brand-name{font-size:clamp(1.5rem,2.2vw,2.1rem)}
.mansion-page .brand-role{font-size:.66rem;letter-spacing:.2em}
.mansion-page .button--outline{background:transparent;border-color:var(--pearl);color:var(--pearl)}
.mansion-page .button--outline:hover{background:var(--pearl);color:var(--wine)}
.mansion-stage{display:block;height:clamp(42rem,56vw,62rem);min-height:0;padding:0}
.mansion-stage::before{inset:0 calc(-1 * var(--space));background:radial-gradient(ellipse at 61% 51%,rgba(139,29,56,.2),transparent 66%)}
.mansion-stage .calligraphy-title{position:absolute;inset:0 auto auto calc(-1 * var(--space));width:calc(100% + 2 * var(--space));height:32vw;max-height:35rem;aspect-ratio:auto;margin:0;overflow:visible;z-index:4}
.mansion-stage .portfolio-lettering{top:-2.7vw;left:0;width:100%;height:auto}
.mansion-stage .cover-portrait{position:absolute;top:8.5vw;right:calc(-1 * var(--space));bottom:0;width:70%;height:auto;margin:0;aspect-ratio:auto;z-index:2;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 16%,#000 92%,transparent),linear-gradient(180deg,transparent,#000 7%,#000 79%,transparent 100%);mask-image:linear-gradient(90deg,transparent,#000 16%,#000 92%,transparent),linear-gradient(180deg,transparent,#000 7%,#000 79%,transparent 100%);-webkit-mask-composite:source-in;mask-composite:intersect}
.mansion-stage .cover-portrait img{position:relative;inset:auto;width:100%;height:auto;object-fit:contain;object-position:center top;max-width:none}
.mansion-stage .cover-intro{position:absolute;left:clamp(1rem,2vw,2.2rem);bottom:3.5rem;width:39%;padding:0;gap:1.1rem;z-index:3}
.mansion-stage .cover-kicker{font-size:.63rem;letter-spacing:.17em;color:var(--muted)}
.mansion-stage .cover-copy{max-width:31rem}
.mansion-stage .cover-copy h2{font-size:clamp(1.8rem,2.6vw,2.85rem);line-height:1.15;letter-spacing:-.018em;margin:0 0 1.1rem}
.mansion-stage .cover-copy h2 em{font-style:normal}
.mansion-stage .cover-description{font-size:.875rem;color:var(--muted);margin:0 0 1.5rem;line-height:1.55}
.mansion-stage .cover-actions .button{font-family:var(--serif);font-size:1.2rem;gap:1.6rem;padding:.8rem 1.35rem}
.mansion-stage .cover-timing{font-size:.75rem;margin-top:1.1rem}
.hero-column{position:absolute;inset:calc(-7rem) auto 0 calc(-1 * var(--space));width:clamp(5rem,8.5vw,10rem);z-index:0;opacity:.38;pointer-events:none;-webkit-mask-image:linear-gradient(90deg,#000 75%,transparent),linear-gradient(180deg,#000 86%,transparent);mask-image:linear-gradient(90deg,#000 75%,transparent),linear-gradient(180deg,#000 86%,transparent);mask-composite:intersect;-webkit-mask-composite:source-in}
.hero-column svg{display:block;width:100%;height:100%;overflow:hidden}
.hero-chandelier{position:absolute;top:.5rem;left:1%;width:47%;aspect-ratio:570/560;z-index:1;pointer-events:none;transform-origin:50% 0;animation:chandelier-sway 11s ease-in-out infinite alternate}
.hero-chandelier svg{display:block;width:100%;height:100%;filter:url(#engraving-ink);opacity:.28}
.chandelier-light{position:absolute;inset:5% 12% 5%;background:radial-gradient(ellipse,rgba(139,29,56,.16),transparent 69%);animation:quiet-light 7s ease-in-out infinite alternate;mix-blend-mode:screen}
.mansion-home .cover-bottom{font-family:var(--serif);font-size:1rem;text-transform:none;letter-spacing:.015em}
.gallery-entrance{padding-top:5rem;padding-bottom:5rem;text-align:center}
.gallery-entrance[hidden],.mansion-home #works[hidden]{display:none}
.entrance-heading .eyebrow{color:var(--muted);margin-bottom:1rem}
.entrance-heading h2{font:400 clamp(2.8rem,5vw,5.5rem)/1.05 var(--serif);letter-spacing:-.03em;margin:0}
.gate-art{position:relative;width:min(100%,65rem);aspect-ratio:1080/620;margin:2rem auto 1.3rem;perspective:900px;isolation:isolate}
.gate-drawing{display:block;position:absolute;inset:0;width:100%;height:100%;filter:url(#engraving-ink);opacity:.57;backface-visibility:hidden;transition:transform 1.05s cubic-bezier(.22,.61,.36,1),opacity 1.05s ease}
.gate-fixed{-webkit-mask-image:linear-gradient(90deg,#000 0 34.5%,transparent 34.5% 65.5%,#000 65.5% 100%);mask-image:linear-gradient(90deg,#000 0 34.5%,transparent 34.5% 65.5%,#000 65.5% 100%)}
.gate-left{clip-path:inset(0 50% 0 34.5%);transform-origin:34.5% 75%}
.gate-right{clip-path:inset(0 34.5% 0 50%);transform-origin:65.5% 75%}
.gate-preview{position:absolute;inset:24% 27% 2%;display:flex;gap:.5rem;align-items:center;justify-content:center;opacity:0;transform:scale(.92);transition:opacity .8s ease,transform 1.05s ease;-webkit-mask-image:linear-gradient(180deg,transparent,#000 14%,#000 82%,transparent);mask-image:linear-gradient(180deg,transparent,#000 14%,#000 82%,transparent)}
.gate-preview img{width:33.333%;height:70%;object-fit:cover}
.gallery-entrance.is-opening .gate-left{transform:rotateY(-78deg);opacity:.24}
.gallery-entrance.is-opening .gate-right{transform:rotateY(78deg);opacity:.24}
.gallery-entrance.is-opening .gate-preview{opacity:1;transform:scale(1)}
.entrance-actions{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:1.2rem 2rem}
.entrance-actions .button{font:400 1.2rem/1.3 var(--serif);padding:.85rem 1.5rem;min-width:14rem}
.entrance-actions .button:disabled{cursor:default}
/* Full-width palace entrance. The central leaves use native image coordinates. */
.gallery-entrance--palace{position:relative;isolation:isolate;width:100%;max-width:none;min-height:max(100svh,calc(66.6667vw + 4.5rem));padding:0;overflow:hidden;background:var(--wine)}
.gallery-entrance--palace .entrance-heading{position:absolute;z-index:2;top:clamp(2rem,4vw,4rem);left:var(--space);width:27%;text-align:left}
.gallery-entrance--palace .entrance-heading h2{font-size:clamp(2.5rem,4.3vw,5rem);line-height:1.05}
.gallery-entrance--palace .entrance-heading h2 em{display:block}
.gallery-entrance--palace .gate-art{position:absolute;top:0;left:0;width:100%;height:auto;aspect-ratio:3/2;max-width:none;margin:0;-webkit-mask-image:linear-gradient(180deg,transparent,#000 2%,#000 94%,transparent);mask-image:linear-gradient(180deg,transparent,#000 2%,#000 94%,transparent)}
.gallery-entrance--palace .gate-drawing{filter:none;opacity:1}
.gallery-entrance--palace .gate-fixed{-webkit-mask:none;mask:none}
.gallery-entrance--palace .gate-left{clip-path:none;transform-origin:39.7135% 70%}
.gallery-entrance--palace .gate-right{clip-path:none;transform-origin:60.2865% 70%}
.gallery-entrance--palace .gate-preview{inset:30% 39.6% 7.5%;display:block;gap:0;-webkit-mask:none;mask:none}
.gallery-entrance--palace .gate-preview img{width:100%;height:100%;object-fit:cover}
.gallery-entrance--palace .entrance-actions{position:absolute;z-index:3;bottom:2rem;left:var(--space);right:var(--space);gap:1.2rem 2.5rem}
.gallery-entrance--palace .entrance-actions .button{background:rgba(38,2,12,.9)}
.gallery-entrance--palace .entrance-actions .button:hover{background:var(--pearl)}
.gallery-entrance--palace.is-opening .gate-left,.gallery-entrance--palace.is-opening .gate-right{opacity:.75}
.mansion-home .contact-wrap{position:relative;padding-top:8rem}
.mansion-home .contact{position:relative;z-index:1;background:#fff;border-color:#fff}
.contact-candles{position:absolute;width:clamp(12rem,22vw,24rem);top:-3rem;right:var(--space);pointer-events:none;z-index:0;isolation:isolate}
.contact-candles img{width:100%;height:auto;filter:url(#engraving-ink);opacity:.24}
.candle-light{position:absolute;width:19%;height:14%;transform:translate(-50%,-50%);background:radial-gradient(ellipse,rgba(244,236,225,.5),rgba(139,29,56,.24) 28%,transparent 66%);mix-blend-mode:screen;animation:candle-flicker 3.7s ease-in-out infinite alternate}
.candle-light--one{left:34%;top:19.5%;animation-delay:-1.8s}
.candle-light--two{left:51%;top:14.5%;animation-delay:-.5s}
.candle-light--three{left:66.5%;top:18.5%;animation-delay:-2.7s}
.page-ornament{position:absolute;top:7rem;right:0;width:clamp(7rem,12vw,14rem);height:clamp(68rem,110vw,104rem);pointer-events:none;opacity:.6;z-index:-1;-webkit-mask-image:linear-gradient(180deg,transparent,#000 8%,#000 79%,transparent),linear-gradient(90deg,transparent,#000 28%);mask-image:linear-gradient(180deg,transparent,#000 8%,#000 79%,transparent),linear-gradient(90deg,transparent,#000 28%);-webkit-mask-composite:source-in;mask-composite:intersect}
.page-ornament svg{display:block;width:100%;height:100%;overflow:hidden;transform:scaleX(-1);filter:url(#column-ink)}
.section-ornament{display:flex;align-items:center;gap:1.4rem;width:100%;margin:0 0 2rem;pointer-events:none}
.section-ornament::before,.section-ornament::after{content:"";height:1px;flex:1;background:linear-gradient(90deg,transparent,rgba(244,236,225,.48))}
.section-ornament::after{transform:rotate(180deg)}
.section-ornament svg{flex:none;display:block;width:clamp(4.5rem,7vw,6.5rem);height:auto;aspect-ratio:260/190;filter:url(#engraving-ink);opacity:.78}
.mansion-home .contact-wrap>.section-ornament{position:absolute;top:2.3rem;left:var(--space);width:46%;margin:0}
.ornament-band{display:flex;align-items:center;justify-content:space-between;gap:clamp(1.5rem,4vw,4rem);margin-top:3rem;pointer-events:none}
.ornament-band>.section-ornament{margin:0;flex:1;min-width:0}
.ornament-castle,.ornament-candles{display:block;flex:none;filter:url(#engraving-ink);opacity:.7}
.ornament-castle{width:6rem;height:13rem}
.ornament-candles{width:5.5rem;height:11rem}
.ornament-band+.information-contact{margin-top:1.5rem;border-top:0;padding-top:.5rem}
.mansion-page .price-groups{gap:1.6rem}
.mansion-page .price-group{padding:clamp(1.35rem,2.4vw,2.75rem);border:1px solid var(--line);background:linear-gradient(135deg,rgba(244,236,225,.045),rgba(139,29,56,.06))}
.mansion-page .revision-included{background:linear-gradient(135deg,rgba(244,236,225,.045),rgba(139,29,56,.1))}
.mansion-page .information-row,.mansion-page .price-conditions{position:relative}
.motion-toggle{position:fixed;left:1rem;bottom:1rem;z-index:10;padding:.6rem .85rem;border:1px solid var(--line);border-radius:2rem;background:rgba(38,2,12,.92);color:var(--pearl);font-size:.75rem;min-height:2.75rem;box-shadow:0 2px 16px rgba(0,0,0,.15)}
.motion-toggle[hidden]{display:none}
/* No freestanding ornaments or extra rows: the drawings stay behind the content. */
.mansion-page .page-ornament,.mansion-page .section-ornament,.mansion-page .ornament-band{display:none}
.motion-toggle:hover{border-color:var(--pearl)}
.motion-paused .ambient-motion{animation-play-state:paused!important}
.motion-paused .gate-drawing,.motion-paused .gate-preview{transition:none}
.ambient-motion.is-outside{animation-play-state:paused}
@keyframes chandelier-sway{from{transform:rotate(-.9deg)}to{transform:rotate(.9deg)}}
@keyframes quiet-light{from{opacity:.45}to{opacity:.9}}
@keyframes candle-flicker{0%,100%{opacity:.55;transform:translate(-50%,-50%) scale(.9)}35%{opacity:.8;transform:translate(-50%,-50%) scale(1.05)}65%{opacity:.64;transform:translate(-50%,-50%) scale(.98)}}
@media(min-width:1770px){.mansion-stage .cover-portrait{top:9rem}.mansion-stage .portfolio-lettering{top:-3rem}}
@media(max-width:1050px) and (min-width:761px){.mansion-stage{height:43rem}.mansion-stage .cover-portrait{top:7rem;width:73%}.mansion-stage .cover-intro{left:0;bottom:3rem;width:40%}.mansion-stage .cover-copy h2{font-size:2rem}.hero-chandelier{top:1rem;width:51%;left:-1%}}
@media(max-width:760px){
 .mansion-page .header{gap:.75rem;padding-top:1.1rem;padding-bottom:.8rem}
 .mansion-page .navigation{font-size:1.05rem;gap:.2rem 1.3rem;width:100%;justify-content:flex-start}
 .mansion-page .navigation a{min-height:2.75rem}
 .mansion-page .navigation .social{display:none}
 .mansion-stage{height:auto;min-height:0;padding-top:0;display:flex;flex-direction:column}
 .mansion-stage .calligraphy-title{top:0;left:calc(-1 * var(--space));height:37vw;max-height:none;width:calc(100% + 2 * var(--space));margin:0}
 .mansion-stage .portfolio-lettering{top:0}
 .mansion-stage .cover-portrait{position:relative;inset:auto;width:calc(100% + 2 * var(--space));height:auto;aspect-ratio:1/1.15;margin:19vw calc(-1 * var(--space)) 0;-webkit-mask-image:linear-gradient(90deg,transparent,#000 9%,#000 95%,transparent),linear-gradient(180deg,transparent,#000 7%,#000 77%,transparent);mask-image:linear-gradient(90deg,transparent,#000 9%,#000 95%,transparent),linear-gradient(180deg,transparent,#000 7%,#000 77%,transparent)}
 .mansion-stage .cover-portrait img{width:100%;height:auto}
 .mansion-stage .cover-intro{position:relative;inset:auto;width:100%;padding:0 0 2.5rem;margin:-1rem 0 0;gap:1rem}
 .mansion-stage .cover-copy{max-width:34rem}
 .mansion-stage .cover-copy h2{font-size:clamp(2rem,6.8vw,3.5rem);margin-bottom:1rem}
 .mansion-stage .cover-description{margin-bottom:1.25rem}
 .mansion-stage .cover-kicker{font-size:.65rem}
 .hero-column{top:-8rem;bottom:13rem;width:4.5rem;opacity:.3}
 .page-art{top:10rem}
 .page-art-column{width:5.5rem;height:45rem;opacity:.22}
 .page-art-chandelier{left:-27%;width:25rem;bottom:8rem;opacity:.13}
 .page-art-candles{right:-12%;width:15rem;bottom:4rem;opacity:.15}
 .hero-chandelier{width:61%;top:1rem;left:-12%;opacity:.65}
 .mansion-home .cover-bottom{font-size:.8rem}
 .gallery-entrance{padding-top:3.5rem;padding-bottom:3.5rem}
 .gate-art{width:calc(100% + 2 * var(--space));max-width:none;margin:1.5rem calc(-1 * var(--space)) 1.75rem}
 .entrance-heading h2{font-size:clamp(2.8rem,8.8vw,4rem)}
 .entrance-actions{gap:1.1rem}
 .entrance-actions .button{min-width:13rem}
 .gallery-entrance--palace{min-height:max(49rem,100svh);padding:0}
 .gallery-entrance--palace .entrance-heading{top:1.8rem;left:var(--space);width:calc(100% - 2 * var(--space));text-align:center}
 .gallery-entrance--palace .entrance-heading .eyebrow{margin-bottom:.6rem}
 .gallery-entrance--palace .entrance-heading h2{font-size:clamp(2.4rem,8.5vw,3.5rem)}
 .gallery-entrance--palace .gate-art{top:9rem;left:50%;width:min(108svh,54rem);height:auto;aspect-ratio:3/2;margin:0;transform:translateX(-50%)}
 .gallery-entrance--palace .entrance-actions{bottom:1.5rem;gap:.85rem 1.5rem}
 .mansion-home .contact-wrap{padding-top:7rem}
 .contact-candles{width:13rem;top:-1.5rem;right:var(--space)}
 .page-ornament{width:5.8rem;opacity:.42;top:10rem;height:62rem}
 .section-ornament{gap:1rem;margin-bottom:1.5rem}
 .section-ornament svg{width:4.5rem}
 .mansion-home .contact-wrap>.section-ornament{width:43%;top:2rem}
 .ornament-band{gap:1rem;margin-top:2rem}
 .ornament-castle{width:4.5rem;height:10rem}
 .ornament-candles{width:4rem;height:8.5rem}
 .ornament-band>.section-ornament{gap:.4rem}
 .ornament-band>.section-ornament svg{width:3.3rem}
 .mansion-page .price-group h2{font-size:2rem}
 .motion-toggle{left:.65rem;bottom:.65rem;font-size:.7rem;padding:.45rem .7rem}
}
@media(max-width:380px){.mansion-page .navigation{gap:.1rem .9rem;font-size:.95rem}.mansion-stage .cover-copy h2{font-size:1.85rem}.mansion-home .cover-bottom{font-size:.72rem}}
@media(prefers-reduced-motion:reduce){.mansion-page .ambient-motion{animation:none!important}.gate-drawing,.gate-preview{transition:none!important}.motion-toggle{display:none}}
@media(forced-colors:active){.page-art,.hero-chandelier,.hero-column,.page-ornament,.gate-art,.contact-candles,.section-ornament,.ornament-band{display:none}.mansion-page .button,.motion-toggle{border-color:ButtonText}.gallery-entrance--palace{min-height:20rem}.gallery-entrance--palace .entrance-heading{width:auto;right:var(--space)}}
