:root{color-scheme:dark;--bg:#121311;--text:#eeeae2;--muted:#b2b1a8;--gold:#c9ae77;--line:#34362f}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}a:focus-visible{outline:2px solid var(--gold);outline-offset:6px}header{min-height:114px;margin:0 5.5%;display:flex;justify-content:space-between;align-items:center;gap:25px;border-bottom:1px solid var(--line)}.brand{font-family:Georgia,serif;font-size:32px;line-height:1;letter-spacing:5px}.brand span{font-family:Arial,sans-serif;display:block;font-size:10px;letter-spacing:4px;margin-top:12px}nav{display:flex;gap:38px;font-size:14px}nav a:hover,.header-contact:hover{color:var(--gold)}.header-contact{font-size:14px;border-bottom:1px solid #6a6a5a;padding:9px 0}.header-contact span{margin-left:20px;color:var(--gold)}.hero{min-height:670px;display:grid;grid-template-columns:47% 53%;position:relative;overflow:hidden}.hero-copy{padding:80px 0 44px 11.7%;z-index:1}.eyebrow{font-size:12px;font-weight:500;letter-spacing:2.5px;color:var(--gold);margin:0 0 26px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400}h1{font-size:clamp(68px,7.7vw,118px);line-height:1.02;letter-spacing:-4px;margin-bottom:30px}em{font-weight:400;color:var(--gold)}.intro{color:var(--muted);margin-bottom:35px;font-size:16px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:45px;background:var(--gold);color:#151611;padding:17px 24px;font-size:14px;min-height:54px;transition:background .2s}.button:hover{background:#dfc690}.hero-foot{font-size:10px;letter-spacing:2px;color:#aaa99e;margin:54px 0 0}.hero-image{margin:0;position:relative;min-width:0;background:#10110f}.hero-image img{width:100%;height:100%;object-fit:cover;display:block}.hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--bg),transparent 24%);pointer-events:none}.hero-image figcaption{position:absolute;bottom:30px;right:10%;z-index:1;color:#d3c9b5;font:italic 18px Georgia,serif}.section{padding:95px 7%;scroll-margin-top:0}h2{font-size:clamp(36px,4vw,58px);letter-spacing:-1.3px;line-height:1.15;margin-bottom:28px}.collection{border-top:1px solid var(--line)}.section-top{display:flex;align-items:end;justify-content:space-between;gap:70px}.section-top>p{max-width:350px;color:var(--muted);margin-bottom:33px}.categories{display:grid;grid-template-columns:repeat(3,1fr);margin-top:30px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.categories>a{padding:30px 25px 34px;border-right:1px solid var(--line);transition:background .2s}.categories>a:first-child{padding-left:0}.categories>a:last-child{border:0}.categories>a:hover{background:#1b1d18}.number{font-size:12px;color:var(--gold);letter-spacing:1px}h3{font-size:28px;margin:20px 0 10px;line-height:1.25}.categories p{font-size:14px;color:var(--muted)}.category-link{display:block;font-size:13px;color:var(--gold);margin-top:26px}.services{background:#1b1d18;display:grid;grid-template-columns:1fr 1fr;gap:10%}.services-intro{max-width:370px;color:var(--muted)}.service-list article{display:flex;gap:25px;border-top:1px solid #3c3e33;padding:22px 0}.service-list article>span{color:var(--gold);font-size:12px;margin-top:3px;white-space:nowrap}.service-list h3{font-size:24px;margin:0 0 12px}.service-list p{color:var(--muted);font-size:15px;margin:0}.about{display:grid;grid-template-columns:.85fr 1fr;gap:10%;align-items:center}.portrait{aspect-ratio:4/5;background:linear-gradient(145deg,#262921,#181a16);border:1px solid #35392d;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:65px;padding:25px;text-align:center}.portrait-monogram{font:italic 130px Georgia,serif;color:#7b795f}.portrait-label{font-size:10px;letter-spacing:2px;color:#a09e8e}.about-copy p:not(.eyebrow):not(.signature){color:var(--muted)}.about-copy h2{font-size:clamp(34px,3.4vw,50px)}.signature{font:italic 27px Georgia,serif;color:var(--gold);margin-top:30px}.contact{text-align:center;border-top:1px solid var(--line);padding-top:85px;padding-bottom:85px}.contact h2{font-size:clamp(48px,6vw,84px)}.contact>p:not(.eyebrow){color:var(--muted)}.contact .button{margin-top:15px}.email{display:block;margin:25px 0 4px;font-size:15px}.email:hover{text-decoration:underline}.appointment{color:var(--muted);font-size:12px}footer{margin:0 5.5%;padding:35px 0;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);gap:25px}footer .brand{font-size:24px}footer .brand span{font-size:8px}footer p,footer>span{font-size:12px;color:var(--muted);margin:0}.preview-note{padding:12px 20px;text-align:center;font-size:12px;color:#a5a99a;background:#1b1d18}.skip{position:absolute;top:-100px;left:20px;z-index:10;padding:10px;background:var(--gold);color:#111}.skip:focus{top:10px}@media(min-width:1700px){body{max-width:1700px;margin:auto}}@media(max-width:850px){header{min-height:100px;flex-wrap:wrap;padding:20px 0}.brand{font-size:27px}nav{gap:20px}.header-contact{display:none}.hero{grid-template-columns:1fr 1fr;min-height:560px}.hero-copy{padding-top:65px}.hero h1{font-size:74px}.hero-image img{object-position:58% center}.hero-foot{font-size:9px}.section{padding:65px 6%}.section-top{gap:35px}.section-top>p{max-width:280px}.services{gap:6%}.categories h3{font-size:24px}.about{gap:6%}}@media(max-width:600px){header{margin:0 6%;gap:24px;justify-content:center}nav{font-size:13px;width:100%;justify-content:center;gap:32px}.brand{text-align:center}.hero{display:flex;flex-direction:column}.hero-copy{padding:48px 7% 30px}.hero h1{font-size:76px}.hero .eyebrow{font-size:10px}.intro{font-size:15px}.hero-foot{margin-top:30px}.hero-image{height:310px}.hero-image img{object-position:center}.hero-image:after{background:linear-gradient(180deg,var(--bg),transparent 25%)}.hero-image figcaption{font-size:16px;bottom:20px}.section-top{display:block}.section-top>p{max-width:none}.categories{grid-template-columns:1fr}.categories>a,.categories>a:first-child{padding:23px 5px;border-right:0;border-bottom:1px solid var(--line)}.categories h3{margin-top:9px}.category-link{margin-top:15px}.services,.about{grid-template-columns:1fr;gap:28px}.portrait{aspect-ratio:1.15;gap:25px}.portrait-monogram{font-size:105px}h2{font-size:39px}.about-copy h2{font-size:36px}.contact h2{font-size:58px}.contact br{display:none}.contact h2 br{display:block}footer{flex-direction:column;text-align:center;gap:22px}.eyebrow{font-size:10px;letter-spacing:2px}.section{padding:55px 7%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.portrait-photo{padding:0;overflow:hidden;display:block}.portrait-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 25%}

/* Atmosphere sits above the page background and below all content. */
body{isolation:isolate}
body>header,body>main,body>footer,body>.preview-note{position:relative;z-index:1}
.atmosphere{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none;contain:strict}
.atmosphere-layer{position:absolute;inset:-25%;will-change:transform}
.atmosphere-layer::before{content:"";position:absolute;inset:0;background-repeat:no-repeat;animation:atmosphere-drift 20s ease-in-out infinite alternate}
.atmosphere-warm::before{background:radial-gradient(ellipse 34% 13% at 25% 36%,rgba(201,174,119,.23),rgba(201,174,119,.08) 43%,transparent 76%),radial-gradient(ellipse 27% 18% at 76% 73%,rgba(168,149,110,.17),transparent 76%)}
.atmosphere-silver::before{background:radial-gradient(ellipse 30% 14% at 74% 34%,rgba(205,210,201,.14),rgba(205,210,201,.035) 50%,transparent 78%),radial-gradient(ellipse 30% 12% at 27% 72%,rgba(173,180,167,.10),transparent 76%);animation-direction:alternate-reverse;animation-duration:25s}
.services{background:rgba(27,29,24,.55)}
@keyframes atmosphere-drift{from{transform:translate3d(-22px,-14px,0) rotate(-3deg)}to{transform:translate3d(30px,24px,0) rotate(3deg)}}
@media(max-width:600px){.atmosphere{opacity:.85}}
@media(prefers-reduced-motion:reduce){.atmosphere-layer{transform:none!important;will-change:auto}.atmosphere-layer::before{animation:none}}

.visit{text-align:center;padding-top:20px;padding-bottom:90px}
.visit h2{margin-bottom:55px}
.map-frame{position:relative;margin:0 auto;max-width:1120px;padding:18px;border:3px double #b49a64;background:linear-gradient(135deg,#655232,#d0b77b 14%,#493c29 32%,#a8905b 53%,#483b29 80%,#bfa46b);box-shadow:0 0 0 5px #141510,0 0 0 6px #665737,0 14px 40px #0006}
.map-frame::before{content:"";position:absolute;inset:8px;border:1px solid #ead59b90;pointer-events:none}
.map-waiting{min-height:350px;padding:75px 24px;background:#171a15;border:1px solid #b5a172;display:flex;flex-direction:column;align-items:center;justify-content:center}
.map-waiting h3{font-size:34px;margin:0 0 12px}.map-waiting>p:not(.eyebrow){color:var(--muted)}
.frame-ornament{position:absolute;z-index:2;color:#ddc58f;text-shadow:1px 2px 2px #120d08;font-family:Georgia,serif;font-size:72px;line-height:1;pointer-events:none}
.corner-tl{top:-28px;left:-21px;transform:rotate(-45deg)}.corner-tr{top:-28px;right:-21px;transform:rotate(45deg)}.corner-bl{bottom:-28px;left:-21px;transform:rotate(-135deg)}.corner-br{bottom:-28px;right:-21px;transform:rotate(135deg)}
.frame-crest{position:absolute;left:50%;top:-37px;transform:translateX(-50%);font:64px/1 Georgia,serif;color:#ddc58f;text-shadow:1px 2px 2px #120d08;pointer-events:none}
@media(max-width:600px){.visit{padding-bottom:70px}.map-frame{padding:10px}.map-waiting{min-height:300px;padding:45px 16px}.map-waiting h3{font-size:27px}.frame-ornament{font-size:52px}.corner-tl,.corner-tr{top:-19px}.corner-bl,.corner-br{bottom:-19px}.corner-tl,.corner-bl{left:-15px}.corner-tr,.corner-br{right:-15px}}

.atelier-map{display:block;width:100%;height:440px;border:1px solid #b5a172;background:#e6e4df}
.map-details{max-width:1120px;margin:30px auto 0;display:flex;align-items:center;justify-content:space-between;gap:20px;text-align:left;font-size:14px;color:var(--muted)}
.map-details p{margin:0}.map-details strong{color:var(--text);font-weight:400}.map-route{color:var(--gold);border-bottom:1px solid #665737;padding-bottom:4px}.map-route:hover{color:#ead59b}
@media(max-width:600px){.atelier-map{height:330px}.map-details{flex-direction:column;align-items:center;text-align:center;gap:15px}}

.about-copy .award-note{display:inline-block;color:var(--gold)!important;font-size:14px;line-height:1.5;border-top:1px solid #665737;border-bottom:1px solid #665737;padding:12px 0;margin:0 0 26px}
.about-copy .eyebrow{line-height:1.7}
