:root{--plum:#2a1a2e;--plum2:#38243d;--ivory:#f6f0e8;--rose:#c4967b}
html{scroll-behavior:smooth;scroll-padding-top:120px}
body{font-family:'Jost',sans-serif;background:var(--ivory);color:var(--plum);font-size:1.02rem;line-height:1.75}
h1,h2,h3{font-family:'Cormorant Garamond',serif;font-weight:400;line-height:1.12}
.caps{font-size:.68rem;letter-spacing:.3em;text-transform:uppercase;font-weight:500}
.navbar{background:var(--plum);padding:1.1rem 0 .4rem;border-bottom:1px solid rgba(196,150,123,.2)}
.navbar-brand{display:block;margin:0 auto;text-align:center;color:var(--ivory)!important;font-family:'Cormorant Garamond',serif;font-size:1.9rem;letter-spacing:.04em;white-space:normal}
.navbar-brand small{display:block;font-family:'Jost',sans-serif;font-size:.6rem;letter-spacing:.35em;text-transform:uppercase;color:var(--rose)}
.navbar .container{flex-direction:column}
.navbar .nav-link{color:var(--ivory);font-size:.68rem;letter-spacing:.25em;text-transform:uppercase;padding:.7rem 1.1rem;opacity:.85}
.navbar .nav-link:hover{color:var(--rose);opacity:1}
.navbar-toggler{border:1px solid rgba(246,240,232,.35);margin:.6rem auto}
.navbar-toggler-icon{filter:invert(1)}
.btn-rose{background:var(--rose);color:var(--plum);border:1px solid var(--rose);border-radius:0;padding:15px 40px;font-size:.68rem;letter-spacing:.28em;text-transform:uppercase;font-weight:500;transition:.3s}
.btn-rose:hover{opacity:.85;color:var(--plum);background:var(--rose)}
.btn-ghost{border:1px solid rgba(246,240,232,.35);color:var(--ivory);border-radius:0;padding:15px 40px;font-size:.68rem;letter-spacing:.28em;text-transform:uppercase;transition:.3s}
.btn-ghost:hover{background:rgba(246,240,232,.1);color:var(--ivory)}
.hero{background:linear-gradient(180deg,var(--plum) 0%,#1f1223 100%);color:var(--ivory);text-align:center;padding:96px 0 104px}
.hero .caps{color:var(--rose)}
.hero h1{font-size:clamp(2.6rem,6vw,4.8rem);margin:1.2rem 0 .4rem}
.hero h1 em{color:var(--rose)}
.hero .sub{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:1.35rem;opacity:.85;max-width:620px;margin:0 auto}
.stroke{height:3px;width:min(320px,70%);margin:2rem auto;border-radius:3px;background:linear-gradient(90deg,transparent,var(--rose) 30%,#f1d9c8 50%,var(--rose) 70%,transparent);background-size:200% 100%;animation:gloss 6s ease-in-out infinite alternate}
@keyframes gloss{from{background-position:0 0}to{background-position:100% 0}}
@media(prefers-reduced-motion:reduce){.stroke{animation:none}}
section{padding:96px 0}
.hair{border-top:1px solid rgba(196,150,123,.4)}
h2{font-size:clamp(2.2rem,4.5vw,3.3rem)}
.lbl{color:#9a6b50;display:block;margin-bottom:1rem}
.about p{max-width:760px;font-size:1.12rem}
.dark{background:var(--plum);color:var(--ivory)}
.dark .lbl{color:var(--rose)}
.idx{list-style:none;margin:2.5rem 0 0;padding:0;border-top:1px solid rgba(196,150,123,.3)}
.idx li{display:flex;justify-content:space-between;align-items:baseline;padding:1.3rem 0;border-bottom:1px solid rgba(196,150,123,.3);font-family:'Cormorant Garamond',serif;font-size:clamp(1.6rem,3.4vw,2.4rem);transition:.3s}
.idx li span{font-family:'Jost',sans-serif;font-size:.62rem;letter-spacing:.3em;text-transform:uppercase;color:var(--rose)}
.idx li:hover{padding-left:.6rem;color:var(--rose)}
.contact a{color:inherit;text-decoration:none;border-bottom:1px solid var(--rose)}
.contact .big{font-family:'Cormorant Garamond',serif;font-size:2rem}
iframe{border:0;width:100%;height:380px;filter:saturate(.7)}
footer{background:#1f1223;color:rgba(246,240,232,.7);text-align:center;padding:40px 0;font-size:.68rem;letter-spacing:.2em;text-transform:uppercase}
footer a{color:var(--rose)}
@media(max-width:767px){section{padding:64px 0}.hero{padding:64px 0 72px}.idx li span{display:none}}
