/* Quiet architectural light, with a brief first-visit introduction. */
.home-elegant{background:#f7f7f4}.home-elegant .topline{background:transparent}.home-elegant .header{position:relative;z-index:5;border-color:#20202020}.home-elegant .hero{position:relative;isolation:isolate;max-width:none;min-height:660px;padding:65px 8% 72px;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:10%;background:#f0f0ec;overflow:hidden;border-bottom:1px solid #2020201c}.hero-atmosphere{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden;background:radial-gradient(ellipse at 61% 35%,#ffffff 0,#fafaf7cc 30%,transparent 65%),linear-gradient(115deg,#deded8 0%,#f3f3ef 36%,#f6f6f3 72%,#e8e8e1 100%)}.hero-atmosphere::before{content:'';position:absolute;width:68%;height:150%;right:-22%;top:-38%;background:repeating-linear-gradient(90deg,transparent 0 125px,#2d2d2829 126px 128px,transparent 129px 240px);transform:rotate(-28deg);filter:blur(2px)}.hero-atmosphere::after{content:'';position:absolute;width:90%;height:24%;left:25%;bottom:-10%;background:#5b5b4410;filter:blur(35px);transform:rotate(-22deg)}.hero-guide{position:absolute;top:0;bottom:0;width:1px;background:#2929200d;left:5%}.hero-guide:nth-child(2){left:auto;right:5%}.home-elegant .hero-visual{max-width:480px;position:relative;animation:editorial-photo 1.4s cubic-bezier(.2,.65,.3,1) both}.home-elegant .hero .photo-frame{height:480px;box-shadow:18px 24px 55px #29291e13;background:#deded8}.home-elegant .photo-frame img{animation:portrait-settle 2.4s cubic-bezier(.2,.6,.3,1) both}.home-elegant .portrait-caption{border-color:#3d3d302b;color:#5f5f55}.home-elegant .hero-copy{animation:editorial-copy 1.25s .2s ease both}.home-elegant .hero h1{font-size:clamp(56px,5.3vw,79px);letter-spacing:-3px;line-height:1.1;font-weight:300}.home-elegant .hero h1 em{font-weight:400}.home-elegant .hero .eyebrow{display:flex;align-items:center;gap:15px;color:#65655b}.home-elegant .hero .eyebrow::before{content:'';display:block!important;width:34px;height:1px;background:#77776b}.home-elegant .hero-specialty{margin-top:25px}.home-elegant .hero-scroll{margin-top:32px}.home-elegant .section-strip{background:#fdfdfb}.intro-screen{display:none}.intro-enabled .intro-screen{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;pointer-events:none;animation:intro-dismiss .95s .9s cubic-bezier(.76,0,.24,1) both}.intro-screen::before,.intro-screen::after{content:'';position:absolute;inset:0;background:#f7f7f4}.intro-screen::after{left:50%;border-left:1px solid #2222220d;background:#f1f1ed}.intro-signature{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:24px;animation:signature-arrive .7s ease both}.intro-signature img{width:184px;height:138px}.intro-signature>span{font-size:11px;letter-spacing:3px;color:#66665c}.intro-signature i{display:block;width:90px;height:1px;background:#292929;transform-origin:left;animation:signature-line 1s ease both}
@keyframes intro-dismiss{0%{clip-path:inset(0 0 0 0);visibility:visible}100%{clip-path:inset(0 0 100% 0);visibility:hidden}}
@keyframes signature-arrive{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}
@keyframes signature-line{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes editorial-photo{from{opacity:0;clip-path:inset(0 0 12% 0);transform:translateY(18px)}to{opacity:1;clip-path:inset(0);transform:none}}
@keyframes editorial-copy{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes portrait-settle{from{transform:scale(1.045)}to{transform:scale(1)}}
.intro-enabled .home-elegant .hero-visual{animation-delay:.9s}.intro-enabled .home-elegant .hero-copy{animation-delay:1.05s}
@media(min-width:1500px){.home-elegant .hero{padding-left:max(8%,calc((100vw - 1240px)/2));padding-right:max(8%,calc((100vw - 1240px)/2))}}
@media(min-width:761px) and (max-width:1150px){.home-elegant .hero{padding:50px 6% 60px;gap:7%;min-height:580px}.home-elegant .hero .photo-frame{height:420px}.home-elegant .hero h1{font-size:55px;letter-spacing:-2px}}
@media(max-width:760px){.home-elegant .hero{grid-template-columns:1fr;gap:34px;padding:30px 6% 45px;min-height:0}.home-elegant .hero-visual{max-width:none}.home-elegant .hero .photo-frame{height:auto;aspect-ratio:1.05;box-shadow:10px 14px 30px #29291e10}.home-elegant .hero h1{font-size:51px;letter-spacing:-2px}.hero-atmosphere::before{right:-50%;width:110%;opacity:.6}.hero-guide{left:3%}.hero-guide:nth-child(2){right:3%}.intro-signature img{width:160px;height:120px}.intro-signature>span{font-size:10px;letter-spacing:2px}.home-elegant .hero-copy{padding-bottom:0}}
@media(prefers-reduced-motion:reduce){.intro-enabled .intro-screen{display:none!important}.home-elegant .hero-visual,.home-elegant .hero-copy,.home-elegant .photo-frame img{animation:none!important;opacity:1;transform:none;clip-path:none}}
/* Slow daylight shifts behind the content, paused outside the viewport. */
.hero-atmosphere::before{animation:daylight-lines 11s ease-in-out infinite alternate;animation-play-state:paused;transform-origin:60% 50%}
.hero-atmosphere::after{animation:daylight-shadow 16s ease-in-out infinite alternate;animation-play-state:paused}
.hero.motion-active .hero-atmosphere::before,.hero.motion-active .hero-atmosphere::after{animation-play-state:running}
@keyframes daylight-lines{from{transform:translate3d(-66px,-22px,0) rotate(-31deg);opacity:.55}to{transform:translate3d(66px,24px,0) rotate(-23deg);opacity:1}}
@keyframes daylight-shadow{from{transform:translate3d(-60px,12px,0) rotate(-22deg) scale(.95);opacity:.45}to{transform:translate3d(70px,-28px,0) rotate(-18deg) scale(1.12);opacity:.95}}
@media(max-width:760px){.hero-atmosphere::before{animation-name:daylight-lines-mobile;animation-duration:15s}.hero-atmosphere::after{animation-duration:20s}}
@keyframes daylight-lines-mobile{from{transform:translate3d(-28px,-12px,0) rotate(-29deg);opacity:.35}to{transform:translate3d(34px,16px,0) rotate(-26deg);opacity:.7}}
@media(prefers-reduced-motion:reduce){.hero-atmosphere::before,.hero-atmosphere::after{animation:none!important}}

/* Keep the strongest moving shadows toward the outer edge, away from the copy. */
.hero-atmosphere::before{mask-image:linear-gradient(90deg,#0004 0%,#0007 40%,#000 85%);filter:blur(1px)}

