:root{--paper:#f6f2e9;--paper-2:#efe9db;--line:#e1dac8;--ink:#1a1a16;--ink-soft:#5c574a;--espresso:#1e1b16;--espresso-2:#29251e;--amber:#c56a2e;--amber-deep:#a9531f;--amber-soft:#de9a6b;--display:"Playfair Display", serif;--body:"Karla", sans-serif;--mono:"Space Mono", monospace}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--body);background:var(--paper);color:var(--ink-soft);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;line-height:1.6}a{color:inherit}a.attn{color:var(--amber)}img,svg{max-width:100%;display:block}::selection{background:var(--amber);color:var(--paper)}:focus-visible{outline:2px solid var(--amber);outline-offset:3px;border-radius:2px}.wrap{max-width:1200px;margin:0 auto;padding:0 6vw}.eyebrow{font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--amber);align-items:center;gap:.7em;font-size:.72rem;display:inline-flex}.eyebrow:before{content:"";opacity:.7;background:currentColor;width:1.8em;height:1px}section{padding:7rem 0}.section-head{max-width:46ch;margin-bottom:3.4rem}.section-head .eyebrow{margin-bottom:1.2rem}.section-head h2{font-family:var(--display);color:var(--ink);letter-spacing:-.01em;font-size:clamp(2.1rem,4.4vw,3.3rem);font-weight:400;line-height:1.05}.section-head h2 em{color:var(--amber);font-style:normal}.section-head .lede{color:var(--ink-soft);max-width:52ch;margin-top:1.1rem;font-size:1.05rem}.btn{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;border:1px solid #0000;border-radius:3px;padding:.95rem 1.6rem;font-size:.78rem;text-decoration:none;transition:transform .18s,background .18s,color .18s,border-color .18s;display:inline-block}.btn:hover{transform:translateY(-2px)}.btn-solid{background:var(--amber);color:var(--paper)}.btn-solid:hover{background:var(--amber-deep)}.btn-ghost{color:var(--ink);border-color:#1a1a1647}.btn-ghost:hover{border-color:var(--ink);background:#1a1a160a}.btn.on-dark.btn-ghost,.btn.btn-ghost.team{color:var(--paper);border-color:#f6f2e952}.btn.on-dark.btn-ghost:hover,.btn.btn-ghost.team:hover{border-color:var(--paper);background:#f6f2e90f}.cta-row{flex-wrap:wrap;gap:.9rem;margin-top:2.4rem;display:flex}.waveform{width:100%;height:auto;color:var(--amber);display:block}.waveform rect{fill:currentColor}.nav{z-index:50;font-family:var(--mono);letter-spacing:.08em;color:var(--ink);justify-content:space-between;align-items:center;padding:1.5rem 6vw;font-size:.76rem;transition:background .3s,box-shadow .3s,padding .3s;display:flex;position:fixed;top:0;left:0;right:0}.nav .mark{align-items:center;text-decoration:none;display:inline-flex}.nav .mark img{width:auto;height:30px;display:block}.nav .links{align-items:center;gap:1.9rem;display:flex}.nav .links a{opacity:.72;text-decoration:none;transition:opacity .2s;position:relative}.nav .links a:hover,.nav .links a.is-active{opacity:1}.nav .links a.is-active:after{content:"";background:var(--amber);height:2px;position:absolute;bottom:-6px;left:0;right:0}.nav .links a.nav-cta{background:var(--amber);color:var(--paper);opacity:1;border-radius:3px;padding:.55rem 1.1rem}.nav .links a.nav-cta:after{display:none}.nav .links a.nav-cta:hover{background:var(--amber-deep)}.nav.scrolled{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 1px 0 var(--line);background:#f6f2e9e0;padding-top:1.05rem;padding-bottom:1.05rem}@media (width<=640px){.nav .links{background:var(--paper);box-shadow:0 1px 0 var(--line), 0 18px 30px -22px #1a1a1666;flex-direction:column;align-items:flex-start;gap:0;max-height:0;padding:0 6vw;transition:max-height .32s;position:absolute;top:100%;left:0;right:0;overflow:hidden}.nav .links a{border-bottom:1px solid var(--line);width:100%;padding:1rem 0}.nav .links a.is-active:after{display:none}.nav .links a.nav-cta{color:var(--amber);background:0 0;padding:1rem 0}.nav.open .links{max-height:340px;padding:.4rem 6vw 1.2rem}}.nav-toggle{color:inherit;font-family:var(--mono);letter-spacing:.1em;cursor:pointer;background:0 0;border:none;padding:.3rem .2rem;font-size:.74rem;display:none}@media (width<=640px){.nav-toggle{display:block}}.hero{background:var(--paper);min-height:100svh;color:var(--ink);flex-direction:column;justify-content:center;padding:9rem 0 3rem;display:flex;position:relative;overflow:hidden}.hero-wave{width:100%;color:var(--amber);opacity:.16;pointer-events:none;z-index:1;position:absolute;bottom:0;left:0;right:0}.hero .wrap{z-index:2;position:relative}.hero .eyebrow{margin-bottom:1.8rem}.hero h1{font-family:var(--display);color:var(--ink);letter-spacing:-.02em;max-width:15ch;text-shadow:.01em .01em .04em var(--espresso);font-size:clamp(3rem,8.5vw,6.4rem);font-weight:400;line-height:.98}.hero h1 em{color:var(--amber);font-style:normal}.hero .sub{max-width:48ch;color:var(--ink-soft);margin-top:1.8rem;font-size:1.2rem}.hero .place{font-family:var(--mono);letter-spacing:.08em;color:var(--ink-soft);align-items:center;gap:.6rem;margin-top:2.4rem;font-size:.74rem;display:flex}.hero .place:before{content:"";background:var(--amber);width:26px;height:1px}.page-hero{background:var(--paper);color:var(--ink);padding:11rem 0 4.5rem;position:relative;overflow:hidden}.page-hero .wrap{z-index:2;position:relative}.page-hero .eyebrow{margin-bottom:1.4rem}.page-hero h1{font-family:var(--display);color:var(--ink);letter-spacing:-.02em;max-width:16ch;font-size:clamp(2.6rem,6.5vw,4.6rem);font-weight:400;line-height:1}.page-hero h1 em{color:var(--amber);font-style:normal}.page-hero .sub{max-width:54ch;color:var(--ink-soft);margin-top:1.3rem;font-size:1.12rem}.page-hero-wave{width:100%;color:var(--amber);opacity:.14;z-index:1;position:absolute;bottom:0;left:0;right:0}.on-paper{background:var(--paper);color:var(--ink-soft)}.on-paper-2{background:var(--paper-2);color:var(--ink-soft)}.on-dark,.team{background:var(--espresso);color:#f6f2e9b8}.on-dark .section-head h2,.team .section-head h2{color:var(--paper)}.on-dark .eyebrow,.team .eyebrow{color:var(--amber-soft)}.rooms{background:var(--paper)}.room-grid{grid-template-columns:repeat(2,1fr);gap:1.4rem;display:grid}@media (width<=860px){.room-grid{grid-template-columns:1fr}}.room-card{background:var(--paper-2);border:1px solid var(--line);border-radius:14px;flex-direction:column;min-height:340px;padding:2.6rem 2.2rem;transition:transform .22s,box-shadow .22s;display:flex}.room-card:hover{transform:translateY(-4px);box-shadow:0 22px 40px -28px #1a1a1680}.room-card .icon{color:var(--amber);margin-bottom:1.6rem}.room-card h3{font-family:var(--display);color:var(--ink);margin-bottom:.7rem;font-size:1.7rem;font-weight:500}.room-card p{color:var(--ink-soft);flex-grow:1;font-size:.98rem}.room-specs{border-top:1px solid var(--line);font-family:var(--mono);letter-spacing:.06em;color:var(--ink);flex-direction:column;gap:.4rem;margin-top:1.8rem;padding-top:1.3rem;font-size:.72rem;display:flex}.room-specs span:before{content:"— ";color:var(--amber)}.rooms-actions{justify-content:center;margin-top:2.6rem;display:flex}.gallery-modal{z-index:100;justify-content:center;align-items:center;padding:5vh 4vw;display:flex;position:fixed;inset:0}.gallery-modal[hidden]{display:none}.gallery-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#14120ed1;position:absolute;inset:0}.gallery-panel{z-index:1;background:var(--paper);border-radius:16px;width:min(960px,100%);max-height:90vh;padding:2.4rem clamp(1.2rem,3vw,2.6rem);position:relative;overflow-y:auto;box-shadow:0 40px 90px -30px #0009}.gallery-close{width:2.4rem;height:2.4rem;color:var(--ink-soft);cursor:pointer;background:0 0;border:none;border-radius:50%;font-size:1.9rem;line-height:1;transition:color .18s,background .18s;position:absolute;top:.9rem;right:1.1rem}.gallery-close:hover{color:var(--amber);background:var(--paper-2)}.gallery-stage{align-items:center;gap:.8rem;margin-top:.6rem;display:flex}.gallery-frame{flex:auto;min-width:0;position:relative}.gallery-nav{border:1px solid var(--line);background:var(--paper);width:2.8rem;height:2.8rem;color:var(--ink);cursor:pointer;border-radius:50%;flex:none;font-size:1.5rem;line-height:1;transition:border-color .18s,color .18s}.gallery-nav:hover{border-color:var(--amber);color:var(--amber)}.gallery-slide{justify-content:center;align-items:center;width:100%;display:none}.gallery-slide.is-active{display:flex}.gallery-slide img{background:var(--paper-2);border-radius:10px;width:auto;max-width:100%;height:auto;max-height:68vh;display:block}.gallery-meta{justify-content:space-between;align-items:baseline;gap:1rem;margin-top:1.2rem;display:flex}.gallery-caption{font-family:var(--display);color:var(--ink);font-size:1.05rem;font-style:italic;font-weight:400}.gallery-counter{font-family:var(--mono);letter-spacing:.06em;color:var(--amber-deep);white-space:nowrap;font-size:.76rem}@media (width<=680px){.gallery-nav{width:2.3rem;height:2.3rem;font-size:1.2rem}.gallery-panel{padding:2rem 1.1rem}}.book-modal{z-index:100;justify-content:center;align-items:center;padding:5vh 4vw;display:flex;position:fixed;inset:0}.book-modal[hidden]{display:none}.book-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#14120ed1;position:absolute;inset:0}.book-panel{z-index:1;background:var(--paper);width:min(520px,100%);max-height:90vh;color:var(--ink-soft);border-radius:16px;padding:2.8rem clamp(1.5rem,4vw,2.8rem);position:relative;overflow-y:auto;box-shadow:0 40px 90px -30px #0009}.book-panel .eyebrow{color:var(--amber);margin-bottom:1.2rem}.book-close{width:2.4rem;height:2.4rem;color:var(--ink-soft);cursor:pointer;background:0 0;border:none;border-radius:50%;font-size:1.9rem;line-height:1;transition:color .18s,background .18s;position:absolute;top:.9rem;right:1.1rem}.book-close:hover{color:var(--amber);background:var(--paper-2)}.book-modal-title{font-family:var(--display);color:var(--ink);max-width:16ch;font-size:clamp(1.8rem,4vw,2.4rem);font-weight:400;line-height:1.08}.book-modal-title em{color:var(--amber);font-style:normal}.book-modal-sub{color:var(--ink-soft);max-width:44ch;margin-top:1rem}.book-modal .cta-row{margin-top:1.8rem}.book-modal-info{border-top:1px solid var(--line);margin-top:2rem;padding-top:1.6rem}.team-grid{grid-template-columns:1fr 1fr;gap:3.5rem;display:grid}@media (width<=760px){.team-grid{grid-template-columns:1fr;gap:2.8rem}}.team-card{flex-direction:column;display:flex}.team-card .role{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--amber-soft);font-size:.7rem}.team-card h3{font-family:var(--display);color:var(--paper);margin-top:.4rem;font-size:1.8rem;font-weight:500}.team-card p{color:#f6f2e9b3;flex-grow:1;margin-top:1rem;font-size:.98rem}.team-avatar{border:1.5px solid var(--amber);width:62px;height:62px;font-family:var(--display);color:var(--amber-soft);border-radius:50%;justify-content:center;align-items:center;margin-bottom:1.4rem;font-size:1.2rem;font-style:italic;font-weight:500;display:flex}.team-tags{flex-wrap:wrap;gap:.55rem;margin-top:1.5rem;display:flex}.team-tags span{font-family:var(--mono);letter-spacing:.06em;color:#f6f2e9bf;border:1px solid #f6f2e93d;border-radius:3px;padding:.35rem .75rem;font-size:.64rem}.services{background:var(--paper)}.chain{border-top:1px solid var(--line)}.chain-row{border-bottom:1px solid var(--line);grid-template-columns:96px 1fr auto;align-items:baseline;gap:1.6rem;padding:2rem 0;transition:padding-left .25s;display:grid}.chain-row:hover{padding-left:.6rem}.chain-row .stage{font-family:var(--mono);letter-spacing:.04em;color:var(--amber);font-size:.78rem}.chain-row h3{font-family:var(--display);color:var(--ink);font-size:1.5rem;font-weight:500}.chain-row .desc{color:var(--ink-soft);grid-column:2/span 1;max-width:52ch;margin-top:.45rem;font-size:.98rem}.chain-row .note{font-family:var(--mono);letter-spacing:.04em;color:var(--amber-deep);white-space:nowrap;text-align:right;align-self:start;font-size:.76rem}.chain-row .note sub{opacity:.6;font-size:.86em;display:block}@media (width<=680px){.chain-row{grid-template-columns:60px 1fr;row-gap:.4rem}.chain-row .note{text-align:left;grid-column:1/-1}}.book{background:var(--paper-2);position:relative;overflow:hidden}.book-grid{grid-template-columns:1.2fr 1fr;align-items:start;gap:3.5rem;display:grid}@media (width<=860px){.book-grid{grid-template-columns:1fr;gap:2.6rem}}.book h2{font-family:var(--display);color:var(--ink);max-width:14ch;font-size:clamp(2.2rem,5vw,3.4rem);font-weight:500;line-height:1.06}.book h2 em{color:var(--amber);font-style:normal}.book .sub{max-width:42ch;color:var(--ink-soft);margin-top:1.3rem}.info-list{font-family:var(--mono);letter-spacing:.02em;flex-direction:column;gap:1.25rem;font-size:.86rem;display:flex}.info-list .k{color:var(--amber);letter-spacing:.14em;margin-bottom:.3rem;font-size:.68rem;display:block}.info-list a{border-bottom:1px solid #0000;text-decoration:none;transition:border-color .2s}.info-list a:hover{border-color:var(--ink)}.cta-banner{background:var(--espresso);color:var(--paper);text-align:center;position:relative;overflow:hidden}.cta-banner h2{font-family:var(--display);color:var(--paper);max-width:24ch;font-size:clamp(1.9rem,4vw,2.9rem);font-weight:400}.cta-banner h2 em{color:var(--amber-soft);font-style:normal}.cta-banner-wave{color:var(--amber);opacity:.16;z-index:1;position:absolute;bottom:0;left:0;right:0}.cta-banner-inner{z-index:2;flex-direction:column;align-items:center;gap:1.9rem;display:flex;position:relative}.table-scroll{overflow-x:auto}.rate-table{border-collapse:collapse;width:100%;min-width:520px}.rate-table th,.rate-table td{text-align:left;border-bottom:1px solid var(--line);padding:1.2rem .7rem}.rate-table th{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--amber);font-size:.68rem;font-weight:400}.rate-table td.room-name{font-family:var(--display);color:var(--ink);font-size:1.1rem;font-weight:500}.rate-table td.room-name small{font-family:var(--mono);letter-spacing:.06em;color:var(--ink-soft);text-transform:uppercase;margin-top:.25rem;font-size:.66rem;display:block}.rate-table td.price{font-family:var(--mono);color:var(--ink);font-size:1rem}.rate-table td.price small{color:var(--amber-deep);margin-top:.2rem;font-size:.66rem;display:block}.card-grid{grid-template-columns:repeat(3,1fr);gap:1.4rem;display:grid}.card-grid.cols-2{grid-template-columns:repeat(2,1fr)}@media (width<=860px){.card-grid{grid-template-columns:1fr}}.info-card{background:var(--paper-2);border:1px solid var(--line);border-radius:14px;flex-direction:column;padding:2.3rem 2rem;display:flex}.info-card .tag{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--amber);margin-bottom:1rem;font-size:.66rem}.info-card h3{font-family:var(--display);color:var(--ink);margin-bottom:.6rem;font-size:1.4rem;font-weight:500}.info-card p{color:var(--ink-soft);flex-grow:1;font-size:.96rem}.info-card .price-tag{font-family:var(--display);color:var(--amber-deep);margin-top:1.4rem;font-size:1.6rem;font-weight:500}.signal-strip{background:var(--espresso);color:#f6f2e9b8}.signal-strip .eyebrow{color:var(--amber-soft)}.signal-strip .section-head h2{color:var(--paper)}.signal-strip .section-head .lede{color:#f6f2e9b3}.signal-flow{flex-wrap:wrap;align-items:stretch;gap:1.2rem;margin-top:2.4rem;display:flex}.signal-flow .node{background:var(--espresso-2);border:1px solid #f6f2e91f;border-radius:8px;flex:200px;padding:1.5rem 1.4rem}.signal-flow .node .n-label{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--amber-soft);font-size:.64rem}.signal-flow .node h3{font-family:var(--display);color:var(--paper);margin:.5rem 0 .4rem;font-size:1.2rem;font-weight:500}.signal-flow .node p{color:#f6f2e9a8;font-size:.9rem}.gear-category{padding:6rem 0}.gear-category.on-paper-2{background:var(--paper-2)}.gear-category .section-head{margin-bottom:2.8rem}.gear-list{border-top:1px solid var(--line)}.gear-row{border-bottom:1px solid var(--line);grid-template-columns:1fr auto;align-items:baseline;gap:1.6rem;padding:1.6rem 0;display:grid}.gear-row h3{font-family:var(--display);color:var(--ink);font-size:1.2rem;font-weight:500}.gear-row p{color:var(--ink-soft);max-width:56ch;margin-top:.3rem;font-size:.94rem}.gear-row .qty{font-family:var(--mono);letter-spacing:.04em;white-space:nowrap;color:var(--amber-deep);font-size:.72rem}@media (width<=680px){.gear-row{grid-template-columns:1fr}}.gear-empty{text-align:center;border:1px dashed #1a1a1647;border-radius:14px;padding:3rem 2.4rem}.gear-empty .eyebrow{justify-content:center;margin-bottom:1rem}.gear-empty h3{font-family:var(--display);color:var(--ink);margin-bottom:.7rem;font-size:1.5rem;font-weight:500}.gear-empty p{color:var(--ink-soft);max-width:48ch;margin:0 auto}.work-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem;display:grid}@media (width<=760px){.work-grid{grid-template-columns:1fr}}.work-card{background:var(--paper-2);border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:1rem;padding:2rem 1.9rem;transition:border-color .2s,transform .2s,box-shadow .2s;display:flex}.work-card:hover{border-color:var(--amber);transform:translateY(-3px);box-shadow:0 22px 40px -30px #1a1a1680}.work-card .tag{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--amber);font-size:.66rem}.work-card h3{font-family:var(--display);color:var(--ink);font-size:1.5rem;font-style:italic;font-weight:500;line-height:1.15}.work-card .artist{font-family:var(--mono);letter-spacing:.02em;color:var(--ink-soft);font-size:.8rem}.work-card .note{color:var(--ink-soft);flex-grow:1;font-size:.94rem}.work-card .wave{opacity:.85;color:var(--amber)}.philosophy{background:var(--espresso);color:var(--paper)}.pull{font-family:var(--display);color:var(--paper);border-left:2px solid var(--amber);max-width:40ch;padding-left:1.8rem;font-size:clamp(1.6rem,2.8vw,2.2rem);font-style:italic;font-weight:400;line-height:1.32}.pull-attr{font-family:var(--mono);letter-spacing:.04em;color:var(--amber-soft);margin-top:1.4rem;padding-left:1.8rem;font-size:.8rem}footer{background:var(--espresso);color:#f6f2e999;font-family:var(--mono);letter-spacing:.04em;flex-wrap:wrap;justify-content:space-between;gap:.7rem;padding:2.2rem 6vw;font-size:.72rem;display:flex}footer a{text-decoration:none}footer a:hover{color:var(--paper)}.reveal{opacity:0;transition:opacity .7s,transform .7s;transform:translateY(18px)}.reveal.in{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transition:none;transform:none}.btn:hover,.work-card:hover,.room-card:hover{transform:none}}
