:root{--ink: #16120E;--ink-2: #1E1813;--ink-3: #2A2119;--gold: #C99A3A;--gold-hi: #E6C56A;--champagne: #ECE3D0;--sand: #A9997C;--font-display: "Bodoni Moda", "Noto Serif", Georgia, serif;--font-body: "Hanken Grotesk", system-ui, sans-serif;--maxw: 1320px;--gutter: clamp(1.25rem, 4vw, 4rem);--ease: cubic-bezier(.65, .05, .36, 1)}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{background:var(--ink);color:var(--champagne);font-family:var(--font-body);font-weight:300;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}img,video{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.eyebrow{font-family:var(--font-body);font-weight:500;font-size:.72rem;letter-spacing:.34em;text-transform:uppercase;color:var(--gold)}.lede{color:var(--sand);font-size:clamp(1rem,1.4vw,1.18rem);max-width:46ch}.knot{display:block;margin:0 auto;width:64px;height:auto;color:var(--gold);opacity:.85}.lace-divider{position:relative;z-index:4;display:flex;align-items:center;justify-content:center;width:100%;background:var(--ink);color:var(--gold);padding:0 var(--gutter)}.lace-divider--full{height:clamp(2.4rem,5vw,3.4rem)}.lace-divider--inline{height:clamp(1.8rem,3.5vw,2.6rem);margin:2rem auto 0;max-width:min(760px,100%)}.lace-divider__band{flex:1 1 0;min-width:0;height:24px;opacity:.82}.lace-divider__band--left{margin-right:-.5rem}.lace-divider__band--right{margin-left:-.5rem;transform:scaleX(-1)}.lace-divider__centre{flex:0 0 auto;display:flex;align-items:center;justify-content:center;padding:0 .6rem;background:var(--ink)}.lace-divider__knot{width:52px;margin:0;opacity:.92;filter:drop-shadow(0 0 6px rgba(201,154,58,.25))}.lace-divider--inline .lace-divider__knot{width:44px}.lace-divider--inline .lace-divider__band{opacity:.72}.nav{position:fixed;inset:0 0 auto 0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:clamp(1rem,2.2vw,1.6rem) var(--gutter);mix-blend-mode:difference;color:#fff}.nav__brand{font-family:var(--font-display);font-weight:500;font-size:1.15rem;letter-spacing:.42em;text-transform:uppercase;padding-left:.42em}.nav__links{display:flex;gap:clamp(1.2rem,2.6vw,2.4rem)}.nav__links a{font-size:.74rem;letter-spacing:.18em;text-transform:uppercase;font-weight:400}.nav__links a:hover{opacity:.6}@media (max-width: 640px){.nav__links a:not(:last-child){display:none}}.hero{position:relative;height:100vh;width:100%;overflow:hidden;background:var(--ink)}.hero__canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block}.hero__scrim{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;background:linear-gradient(0deg,#16120eeb,#16120e8c 22%,#16120e00 50%),linear-gradient(180deg,#16120e80,#16120e00 24%),linear-gradient(270deg,#16120e9e,#16120e00 44%)}.hero__type{position:absolute;z-index:3;left:var(--gutter);right:var(--gutter);bottom:clamp(3.5rem,9vh,7rem);text-align:center}.hero__eyebrow{display:inline-block;margin-bottom:1rem}.hero__title{font-family:var(--font-display);font-weight:500;font-size:clamp(3.4rem,13vw,11rem);line-height:.92;letter-spacing:.01em;color:var(--champagne);text-shadow:0 2px 40px rgba(0,0,0,.45)}.hero__sub{margin:1.4rem auto 0;color:var(--champagne);opacity:.82;max-width:40ch;font-size:clamp(.95rem,1.3vw,1.1rem)}.hero__scroll{position:absolute;left:50%;bottom:1.6rem;transform:translate(-50%);z-index:3;font-size:.66rem;letter-spacing:.28em;text-transform:uppercase;color:var(--sand);display:flex;align-items:center;gap:.7rem}.hero__scroll:before,.hero__scroll:after{content:"";width:34px;height:1px;background:var(--gold);display:inline-block}.hero__lead{position:absolute;z-index:3;right:var(--gutter);top:50%;transform:translateY(-50%);width:min(42vw,480px);text-align:right}.hero__lead .eyebrow{display:inline-block;margin-bottom:1rem}.hero__lead-title{font-family:var(--font-display);font-weight:500;font-size:clamp(1.8rem,3.8vw,3.4rem);line-height:1.04;letter-spacing:-.01em;color:var(--champagne)}.hero__lead-title em{font-style:italic;color:var(--gold-hi)}.hero__lead-sub{margin:1.1rem 0 0 auto;max-width:34ch;color:var(--sand);font-size:clamp(.95rem,1.3vw,1.08rem)}@media (max-width: 820px){.hero__type{bottom:clamp(4.5rem,12vh,6rem)}.hero__sub{max-width:34ch;margin-left:auto;margin-right:auto}.hero__lead{right:var(--gutter);left:var(--gutter);width:auto;text-align:center}.hero__lead-sub{margin-left:auto;margin-right:auto}}.heritage{position:relative;width:100%;min-height:100vh;min-height:100svh;display:flex;align-items:flex-end;background:var(--ink);overflow:hidden}.heritage__img{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;width:100%;height:100%;object-fit:cover;object-position:center 28%}.heritage__scrim{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:linear-gradient(180deg,var(--ink) 0%,rgba(22,18,14,.38) 9%,rgba(22,18,14,.08) 24%,rgba(22,18,14,.04) 42%,rgba(22,18,14,.28) 58%,rgba(22,18,14,.62) 72%,rgba(22,18,14,.88) 86%,rgba(22,18,14,.97) 94%,var(--ink) 100%),linear-gradient(90deg,#16120e8c,#16120e00 14%,#16120e00 86%,#16120e8c),#16120e1f;pointer-events:none}.heritage__inner{position:relative;z-index:2;width:100%;max-width:var(--maxw);margin:0 auto;padding:clamp(2rem,5vw,3rem) var(--gutter) clamp(3rem,7vw,6rem);text-align:center}.heritage__title{font-family:var(--font-display);font-weight:400;font-style:italic;font-size:clamp(2rem,5.4vw,4.4rem);line-height:1.02;letter-spacing:-.01em;margin:1.4rem auto 1.2rem;max-width:18ch}.heritage__copy{color:var(--champagne);opacity:.86;max-width:56ch;margin:0 auto;font-size:clamp(.95rem,1.35vw,1.05rem)}.heritage__meta{margin-top:1.6rem;display:flex;gap:clamp(1.5rem,5vw,4rem);justify-content:center;flex-wrap:wrap;padding-top:0;max-width:760px;margin-left:auto;margin-right:auto}.heritage__stat b{display:block;font-family:var(--font-display);font-size:clamp(1.45rem,3.2vw,1.9rem);color:var(--gold-hi);font-weight:500}.heritage__stat span{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--sand)}@media (max-width: 820px){.heritage{min-height:max(88svh,640px)}.heritage__img{object-position:center 22%}.heritage__scrim{background:linear-gradient(180deg,var(--ink) 0%,rgba(22,18,14,.52) 10%,rgba(22,18,14,.12) 26%,rgba(22,18,14,.06) 40%,rgba(22,18,14,.38) 58%,rgba(22,18,14,.72) 74%,rgba(22,18,14,.94) 88%,var(--ink) 100%),linear-gradient(90deg,#16120e9e,#16120e00 12%,#16120e00 88%,#16120e9e),#16120e29}.heritage__inner{padding:clamp(1.5rem,4vw,2rem) var(--gutter) clamp(2.5rem,6vw,4rem)}.heritage__title{max-width:none;font-size:clamp(1.75rem,6.8vw,2.75rem);margin:1rem auto}.heritage__copy{max-width:42ch}.heritage__meta{gap:1.25rem 2.5rem}}@media (max-width: 480px){.heritage{min-height:max(78svh,540px)}.heritage__img{object-position:center 18%}.heritage__inner{padding-bottom:clamp(2rem,8vw,3rem)}.heritage__title{font-size:clamp(1.55rem,8vw,2.05rem);line-height:1.06}.heritage .eyebrow{letter-spacing:.22em;font-size:.66rem}.heritage__meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.1rem .75rem;max-width:none}.heritage__stat{min-width:0}.heritage__stat span{font-size:.62rem;letter-spacing:.14em;line-height:1.35}.heritage .lace-divider--inline{margin-top:1.5rem}}.collection{padding:clamp(4rem,10vw,8rem) 0;background:var(--ink)}.collection__head{max-width:var(--maxw);margin:0 auto 2.6rem;padding:0 var(--gutter);display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;flex-wrap:wrap}.collection__title{font-family:var(--font-display);font-weight:400;font-size:clamp(2rem,4.5vw,3.4rem);line-height:1}.collection__hint{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--sand)}.track{display:flex;gap:1.25rem;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 var(--gutter) 1.5rem;-webkit-overflow-scrolling:touch;scrollbar-width:none}.track::-webkit-scrollbar{display:none}.card{position:relative;flex:0 0 auto;width:clamp(260px,30vw,380px);aspect-ratio:3 / 4;scroll-snap-align:center;overflow:hidden;background:var(--ink-2);border:1px solid var(--ink-3)}.card__img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease),filter .6s var(--ease);filter:saturate(.92) brightness(.82)}.card:hover .card__img,.card:focus-within .card__img{transform:scale(1.05);filter:saturate(1.05) brightness(1)}.card__base{position:absolute;left:0;right:0;bottom:0;padding:1.4rem 1.4rem 1.5rem;z-index:2;background:linear-gradient(0deg,#0f0c09eb 12%,#0f0c0900)}.card__name{font-family:var(--font-display);font-size:1.5rem;font-weight:500}.card__tag{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-top:.2rem}.card__detail{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;padding:1.6rem;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(0deg,#0f0c09f2 30%,#0f0c0966);opacity:0;transform:translateY(12px);transition:opacity .45s var(--ease),transform .45s var(--ease);pointer-events:none}.card:hover .card__detail,.card:focus-within .card__detail{opacity:1;transform:translateY(0)}.card__detail .card__name{margin-bottom:.6rem}.card__rows{border-top:1px solid var(--ink-3);padding-top:.9rem}.card__row{display:flex;justify-content:space-between;gap:1rem;font-size:.82rem;padding:.22rem 0}.card__row span:first-child{color:var(--sand)}.card__from{margin-top:.9rem;font-family:var(--font-display);color:var(--gold-hi);font-size:1.1rem}@media (hover: none){.card__detail{opacity:1;transform:none;background:linear-gradient(0deg,#0f0c09eb 24%,#0f0c0900)}.card__base{display:none}}.booking{padding:clamp(4rem,10vw,8rem) var(--gutter);background:var(--ink-2)}.booking__inner{max-width:980px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,4.5rem);align-items:center}@media (max-width: 800px){.booking__inner{grid-template-columns:1fr}}.booking__title{font-family:var(--font-display);font-weight:400;font-size:clamp(2rem,4.5vw,3.4rem);line-height:1.02;margin:1rem 0 1.2rem}.booking__title em{font-style:italic;color:var(--gold-hi)}.booking__field{margin-bottom:1.1rem}.booking__field label{display:block;font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--sand);margin-bottom:.5rem}.booking__field input,.booking__field textarea,.booking__field select{width:100%;background:transparent;border:0;border-bottom:1px solid var(--ink-3);color:var(--champagne);font-family:var(--font-body);font-size:1rem;padding:.6rem 0;outline:none;transition:border-color .3s var(--ease)}.booking__field input:focus,.booking__field textarea:focus,.booking__field select:focus{border-color:var(--gold)}.booking__field select{-webkit-appearance:none;-moz-appearance:none;appearance:none}.booking__field option{background:var(--ink-2)}.booking__row{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem}@media (max-width: 480px){.booking__row{grid-template-columns:1fr}}.booking__submit{margin-top:1.4rem;width:100%;padding:1rem 1.4rem;background:var(--gold);color:var(--ink);border:0;font-weight:600;letter-spacing:.14em;text-transform:uppercase;font-size:.8rem;transition:background .3s var(--ease)}.booking__submit:hover{background:var(--gold-hi)}.booking__note{margin-top:1rem;font-size:.8rem;color:var(--sand)}.booking__ok{color:var(--gold-hi);font-family:var(--font-display);font-size:1.2rem;margin-top:1rem}.footer{background:var(--ink);padding:clamp(3rem,7vw,5rem) var(--gutter) 2rem;border-top:1px solid var(--ink-3)}.footer__inner{max-width:var(--maxw);margin:0 auto;display:flex;justify-content:space-between;gap:2rem;flex-wrap:wrap}.footer__brand{font-family:var(--font-display);font-size:2.4rem;letter-spacing:.3em;text-transform:uppercase;padding-left:.3em}.footer__tag{color:var(--sand);margin-top:.6rem;max-width:30ch}.footer__cols{display:flex;gap:clamp(2rem,6vw,5rem);flex-wrap:wrap}.footer__col h4{font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:.9rem}.footer__col a{display:block;color:var(--sand);padding:.22rem 0;font-size:.92rem}.footer__col a:hover{color:var(--champagne)}.footer__base{max-width:var(--maxw);margin:3rem auto 0;padding-top:1.6rem;border-top:1px solid var(--ink-3);display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:.76rem;color:var(--sand)}.reveal{opacity:0;transform:translateY(28px)}@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
