:root{--ink:#050505;--charcoal:#111;--gold:#c5a46d;--champagne:#d8c19a;--ivory:#f5f0e8}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:78px}body{margin:0;overflow-x:hidden}::selection{background:var(--gold);color:#050505}
body::-webkit-scrollbar{width:8px}body::-webkit-scrollbar-track{background:#050505}body::-webkit-scrollbar-thumb{background:#7e6846}
/* Doubled class keeps the gutter from being flattened by Tailwind width
   utilities, whose CDN stylesheet is injected after this file. */
.site-shell,.site-shell.site-shell{width:min(100% - clamp(2.5rem,6vw,7rem),1320px);margin-inline:auto}
.section-pad{padding-block:clamp(6rem,10vw,10rem)}
#preloader{position:fixed;inset:0;z-index:1000;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#050505;transition:opacity .8s ease,visibility .8s ease}
#preloader img{width:clamp(130px,17vw,210px);animation:preloadPulse 2.2s ease-in-out infinite}#preloader p{margin-top:22px;color:#d8c19a;font:500 10px Montserrat,sans-serif;letter-spacing:.48em;text-transform:uppercase}
.loader-line{width:150px;height:1px;margin-top:24px;background:#3b3124;overflow:hidden}.loader-line:after{content:"";display:block;width:45%;height:100%;background:#d8c19a;animation:loading 1.4s ease-in-out infinite}
#preloader.loaded{opacity:0;visibility:hidden}@keyframes loading{from{transform:translateX(-110%)}to{transform:translateX(330%)}}@keyframes preloadPulse{50%{filter:brightness(1.18);transform:scale(1.025)}}
#navbar.scrolled{background:rgba(5,5,5,.88);border-bottom:1px solid rgba(197,164,109,.25);backdrop-filter:blur(16px)}.nav-link{position:relative;color:#eee9df;font-size:9px;font-weight:500;letter-spacing:.15em;text-transform:uppercase;transition:.3s}
.nav-link:after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:1px;background:var(--gold);transition:.3s}.nav-link:hover{color:var(--champagne)}.nav-link:hover:after{right:0}
.gold-btn,.outline-btn{display:inline-flex;min-height:48px;align-items:center;justify-content:center;padding:0 28px;font-size:9px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;transition:all .35s ease}
.gold-btn{border:1px solid var(--gold);background:var(--gold);color:#090909}.gold-btn:hover{background:#dfc59a;box-shadow:0 10px 35px rgba(197,164,109,.18);transform:translateY(-2px)}
.outline-btn{border:1px solid rgba(216,193,154,.6);color:#f5f0e8}.outline-btn:hover{border-color:var(--gold);background:rgba(197,164,109,.1);transform:translateY(-2px)}
.menu-button{width:42px;height:42px;padding:11px}.menu-button span{display:block;width:100%;height:1px;margin:7px 0;background:#d8c19a;transition:.35s}.menu-button.active span:first-child{transform:translateY(4px) rotate(45deg)}.menu-button.active span:last-child{transform:translateY(-4px) rotate(-45deg)}
.mobile-menu{max-height:0;overflow:hidden;background:rgba(5,5,5,.98);border-bottom:0 solid rgba(197,164,109,.2);transition:max-height .5s ease}.mobile-menu.open{max-height:480px;border-bottom-width:1px}.mobile-menu a{padding:13px 0;border-bottom:1px solid rgba(255,255,255,.07);font:500 11px Montserrat,sans-serif;letter-spacing:.18em;text-transform:uppercase}
.hero-shade{background:linear-gradient(90deg,rgba(0,0,0,.94) 0%,rgba(0,0,0,.74) 37%,rgba(0,0,0,.12) 75%),linear-gradient(0deg,rgba(0,0,0,.55),transparent 45%)}#heroCanvas{pointer-events:none;opacity:.72}
.eyebrow{display:flex;align-items:center;gap:14px;color:var(--champagne);font-size:9px;font-weight:600;letter-spacing:.32em;text-transform:uppercase}.eyebrow:before{content:"";display:inline-block;width:38px;height:1px;background:currentColor}.eyebrow.dark{color:#7d6240}
.gold-text{color:#cdb07b;text-shadow:0 0 35px rgba(197,164,109,.13)}.scroll-cue{position:absolute;z-index:4;bottom:26px;left:50%;display:flex;flex-direction:column;align-items:center;gap:8px;transform:translateX(-50%);color:#b8ad9e;font-size:7px;letter-spacing:.28em;text-transform:uppercase}.scroll-cue span{width:1px;height:45px;background:linear-gradient(#c5a46d,transparent);animation:scrollLine 2s infinite}@keyframes scrollLine{50%{transform:scaleY(.55);transform-origin:top}}
.section-title{font-family:"Cormorant Garamond",serif;font-size:clamp(3rem,5.5vw,5.8rem);font-weight:500;line-height:.92;letter-spacing:-.025em}.section-title em{color:#9c7b4d;font-weight:400}.gold-rule{display:block;width:76px;height:1px;background:#a37e4e}.lead{font:500 clamp(1.25rem,2vw,1.65rem)/1.55 "Cormorant Garamond",serif;color:#332d26}
.image-frame{overflow:hidden}.image-frame img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}.image-frame:hover img{transform:scale(1.025)}
.collection-grid{display:grid;grid-auto-rows:480px;gap:16px}.collection-card{position:relative;overflow:hidden;background:#111}.collection-card:after{content:"";position:absolute;inset:0;border:1px solid transparent;z-index:3;transition:.45s}.collection-card:hover:after{inset:10px;border-color:rgba(216,193,154,.65)}
.collection-card img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}.collection-card:hover img{transform:scale(1.055)}.collection-card>div{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:32px;color:#fff;background:linear-gradient(transparent 42%,rgba(0,0,0,.85));transition:.45s}.collection-card:hover>div{padding-bottom:42px}
.collection-card p{position:absolute;top:25px;font-size:9px;letter-spacing:.2em}.collection-card h3{font:500 2.35rem "Cormorant Garamond",serif}.collection-card span{font-size:10px;color:#d3ccc1;letter-spacing:.03em}.collection-card b{position:absolute;right:28px;bottom:30px;color:#d8c19a;font-size:22px;font-weight:300}
.contour-bg{position:relative}.contour-bg:before{content:"";position:absolute;inset:0;opacity:.08;background-image:repeating-radial-gradient(ellipse at 15% 50%,transparent 0 25px,#c5a46d 27px 28px,transparent 30px 47px);background-size:130% 160%;pointer-events:none}
#sculpture{position:relative}#sculpture:before{content:"";position:absolute;left:50%;bottom:10%;width:58%;height:12%;transform:translateX(-50%);background:#c5a46d;filter:blur(70px);opacity:.12}.sculpture-label{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);font-size:7px;letter-spacing:.3em;text-transform:uppercase;color:#807664;white-space:nowrap}
.text-link{align-items:center;gap:25px;border-bottom:1px solid rgba(197,164,109,.5);padding-bottom:9px;color:var(--champagne);font-size:9px;font-weight:600;letter-spacing:.18em;text-transform:uppercase}.text-link span{font-size:18px;transition:.3s}.text-link:hover span{transform:translateX(5px)}.text-link.dark{color:#664e30}
.editorial-grid{display:grid;gap:42px 22px}.editorial-item{min-width:0}.editorial-item>img{width:100%;height:500px;object-fit:cover;filter:saturate(.82);transition:.7s}.editorial-item:hover>img{filter:saturate(1);transform:scale(.992)}.editorial-item>div{position:relative;padding:20px 4px 0;border-top:1px solid rgba(0,0,0,.15)}.editorial-item small{font-size:8px;letter-spacing:.23em;text-transform:uppercase;color:#8f744e}.editorial-item h3{margin-top:6px;font:500 2rem "Cormorant Garamond",serif}.editorial-item p{font-size:10px;color:#777}.editorial-item a{position:absolute;right:0;top:26px;border-bottom:1px solid #92744b;font-size:8px;font-weight:600;letter-spacing:.15em;text-transform:uppercase}
.occasion-grid{display:grid;grid-template-columns:1fr;gap:1px;background:rgba(0,0,0,.15)}.occasion{position:relative;height:550px;overflow:hidden;background:#111}.occasion:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 45%,rgba(0,0,0,.86));transition:.4s}.occasion img{width:100%;height:100%;object-fit:cover;filter:saturate(.7);transition:transform .9s,filter .6s}.occasion:hover img{transform:scale(1.05);filter:saturate(1)}.occasion>span{position:absolute;z-index:2;left:28px;right:28px;bottom:30px;color:#fff;font:500 1.8rem "Cormorant Garamond",serif;text-transform:uppercase}.occasion b{display:block;margin-top:5px;color:#d8c19a;font:500 7px Montserrat,sans-serif;letter-spacing:.18em}
.feature-grid{display:grid;border-top:1px solid rgba(197,164,109,.25);border-left:1px solid rgba(197,164,109,.25)}.feature-grid article{position:relative;min-height:310px;padding:40px 32px;border-right:1px solid rgba(197,164,109,.25);border-bottom:1px solid rgba(197,164,109,.25);transition:.4s}.feature-grid article:hover{background:rgba(197,164,109,.06);transform:translateY(-4px)}.line-icon{display:block;color:#c5a46d;font:300 35px "Cormorant Garamond",serif}.feature-grid small{position:absolute;right:25px;top:25px;color:#776c5d;font-size:8px}.feature-grid h3{margin-top:48px;color:#f4eee5;font:500 1.6rem "Cormorant Garamond",serif;text-transform:uppercase;letter-spacing:.04em}.feature-grid p{margin-top:15px;color:#918d87;font-size:11px;line-height:1.9}
.lookbook-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.look{position:relative;aspect-ratio:3/4;overflow:hidden}.look img{width:100%;height:100%;object-fit:cover;transition:transform .8s}.look:after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.62);opacity:0;transition:.4s}.look span{position:absolute;z-index:2;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;font-size:28px;opacity:0;transform:translateY(10px);transition:.4s}.look span b{margin-top:8px;font:500 7px Montserrat,sans-serif;letter-spacing:.16em;text-transform:uppercase}.look:hover img{transform:scale(1.06)}.look:hover:after,.look:hover span{opacity:1}.look:hover span{transform:none}
.testimonial-grid{display:grid;gap:18px}.testimonial-grid blockquote{padding:38px;border:1px solid rgba(197,164,109,.28);transition:.4s}.testimonial-grid blockquote:hover{border-color:#c5a46d;transform:translateY(-4px)}.testimonial-grid div{color:#c5a46d;font-size:9px;letter-spacing:.35em}.testimonial-grid p{margin-top:25px;color:#d4cec3;font:400 1.4rem/1.5 "Cormorant Garamond",serif}.testimonial-grid cite{display:block;margin-top:25px;color:#8f887e;font-size:8px;font-style:normal;letter-spacing:.16em;text-transform:uppercase}
.contact-list{border-top:1px solid rgba(0,0,0,.15)}.contact-list a{display:block;padding:18px 0;border-bottom:1px solid rgba(0,0,0,.15);font:500 1.15rem "Cormorant Garamond",serif}.contact-list small{display:block;margin-bottom:5px;color:#876b45;font:600 7px Montserrat,sans-serif;letter-spacing:.2em;text-transform:uppercase}
.contact-form{display:grid;gap:25px;padding:clamp(25px,5vw,55px);border:1px solid rgba(84,64,37,.22);background:#f5f0e8}.contact-form label{display:block;margin-bottom:9px;color:#765d3c;font-size:7px;font-weight:600;letter-spacing:.2em;text-transform:uppercase}.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:0;border-bottom:1px solid #cbbda8;border-radius:0;background:transparent;padding:10px 0;color:#191919;font:400 12px Montserrat,sans-serif;outline:none;transition:.3s}.contact-form textarea{resize:vertical}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:#765b37}
footer h3{margin-bottom:20px;color:#c5a46d;font-size:8px;font-weight:600;letter-spacing:.2em;text-transform:uppercase}footer a,footer p{display:block;margin-top:10px;color:#85817a;font-size:10px;line-height:1.8;transition:.3s}footer a:hover{color:#d8c19a}
.floating-actions{position:fixed;z-index:40;right:18px;bottom:18px;display:flex;flex-direction:column;gap:9px}.floating-actions a{display:flex;width:46px;height:46px;align-items:center;justify-content:center;border:1px solid #c5a46d;border-radius:50%;background:rgba(5,5,5,.92);color:#d8c19a;font-size:10px;font-weight:600;box-shadow:0 8px 25px rgba(0,0,0,.25);transition:.3s}.floating-actions a:hover{background:#c5a46d;color:#050505;transform:translateY(-3px)}
.reveal{opacity:0;transform:translateY(34px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.65,.2,1)}.reveal.active{opacity:1;transform:none}
.cursor-dot,.cursor-ring{position:fixed;z-index:999;left:0;top:0;border-radius:50%;pointer-events:none;transform:translate(-50%,-50%)}.cursor-dot{width:4px;height:4px;background:#e2c892}.cursor-ring{width:26px;height:26px;border:1px solid rgba(216,193,154,.65);transition:width .25s,height .25s,background .25s}.cursor-ring.hover{width:45px;height:45px;background:rgba(197,164,109,.1)}
@media(min-width:640px){.contact-form{grid-template-columns:repeat(2,1fr)}.occasion-grid{grid-template-columns:repeat(2,1fr)}.lookbook-grid{grid-template-columns:repeat(3,1fr)}}
@media(min-width:768px){.collection-grid{grid-template-columns:repeat(2,1fr)}.editorial-grid{grid-template-columns:repeat(2,1fr)}.editorial-item.wide{grid-column:span 2}.feature-grid{grid-template-columns:repeat(2,1fr)}.testimonial-grid{grid-template-columns:repeat(3,1fr)}}
@media(min-width:1024px){.collection-grid{grid-template-columns:repeat(3,1fr);grid-auto-rows:355px}.editorial-grid{grid-template-columns:repeat(3,1fr)}.editorial-item.tall{grid-row:span 2}.editorial-item.tall>img{height:1000px}.editorial-item.wide{grid-column:span 2}.editorial-item.wide>img{height:500px}.occasion-grid{grid-template-columns:repeat(4,1fr)}.feature-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:479px){.hero-actions .gold-btn,.hero-actions .outline-btn{flex:1 1 100%}}
/* Landscape phones are too short for the full-height hero to hold the display type. */
@media(max-height:540px) and (orientation:landscape){.hero{min-height:auto}.hero .site-shell{padding-top:6.5rem;padding-bottom:3.5rem}.hero h1{font-size:clamp(2.25rem,5.5vw,3rem)}.hero-actions{margin-top:1.75rem}.scroll-cue{display:none}}
@media(max-width:767px){.hero-shade{background:linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.3)),linear-gradient(0deg,rgba(0,0,0,.85),transparent 55%)}.hero img{object-position:60% center}.collection-grid{grid-auto-rows:520px}.scroll-cue{display:none}.cursor-dot,.cursor-ring{display:none}.cinematic-cta img{object-position:62% center}.cinematic-cta .site-shell{padding-top:200px}.editorial-item>img{height:520px}}
@media(pointer:coarse){.cursor-dot,.cursor-ring{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}
