:root{--bone:#f1ebdd;--paper:#f8f4eb;--ink:#171411;--muted:#706b62;--wine:#6f1d2a;--sage:#9baa91;--line:#1714112e;--white:#fffdf8;--serif:'Iowan Old Style','Palatino Linotype',Georgia,serif;--sans:Inter,'Helvetica Neue',Arial,sans-serif;--pad:clamp(20px,4vw,64px)}
*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;overflow-x:hidden;background:var(--bone);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}body.modal-open{overflow:hidden}a{color:inherit}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}::selection{background:var(--wine);color:var(--white)}
.demo-bar{position:relative;z-index:30;display:flex;min-height:38px;align-items:center;justify-content:center;gap:10px;padding:8px var(--pad);background:var(--ink);color:#fffdf8c7;font-size:11px;font-weight:650;letter-spacing:.12em;text-align:center;text-transform:uppercase}.demo-bar strong{color:#fff}.demo-bar i{width:6px;height:6px;border-radius:50%;background:#c9ff7f;box-shadow:0 0 0 4px #c9ff7f1f}.site-header{position:absolute;z-index:20;top:38px;inset-inline:0;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:24px var(--pad);color:#fff}.wordmark{font:clamp(28px,3vw,38px)/1 var(--serif);letter-spacing:-.06em;text-decoration:none}.wordmark sup{position:relative;top:-.75em;margin-left:5px;font:600 7px var(--sans);letter-spacing:.12em}.nav{display:flex;gap:clamp(18px,3vw,42px)}.nav a{font-size:11px;font-weight:650;letter-spacing:.13em;text-decoration:none;text-transform:uppercase}.header-action{justify-self:end;border:1px solid #ffffff7a;border-radius:99px;background:#17141114;color:#fff;cursor:pointer;padding:11px 16px;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;backdrop-filter:blur(8px);transition:.2s}.header-action:hover{background:#fff;color:var(--ink)}
.hero{position:relative;min-height:calc(100svh - 38px);overflow:hidden;background:#51463b;color:#fff}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:56% 38%;filter:saturate(.82) contrast(1.02);animation:hero-reveal 1.7s both}.hero:before{position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,#120e0bc4,#120e0b52 48%,transparent 72%),linear-gradient(0deg,#120e0b80,transparent 45%);content:''}.hero-content{position:relative;z-index:2;display:flex;min-height:calc(100svh - 38px);flex-direction:column;justify-content:flex-end;padding:160px var(--pad) clamp(38px,6vw,76px)}.kicker{display:flex;align-items:center;gap:12px;margin-bottom:22px;font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.kicker:before{width:42px;height:1px;background:currentColor;content:''}.hero h1{max-width:850px;margin:0;font:400 clamp(64px,10.5vw,154px)/.74 var(--serif);letter-spacing:-.075em}.hero h1 em{display:block;margin-left:clamp(48px,10vw,160px)}.hero-bottom{display:grid;grid-template-columns:minmax(260px,520px) 1fr auto;gap:40px;align-items:end;margin-top:clamp(38px,7vh,76px)}.hero-bottom p{margin:0;color:#fffdf8d4;font-size:clamp(15px,1.25vw,18px);line-height:1.6}.hero-bottom>span{justify-self:end;color:#fffdf8a3;font:italic 18px var(--serif)}.circle-button{display:grid;width:120px;height:120px;place-items:center;border:0;border-radius:50%;background:var(--wine);color:#fff;cursor:pointer;font-size:10px;font-weight:750;letter-spacing:.1em;text-align:center;text-transform:uppercase;transition:.3s}.circle-button:hover{transform:rotate(-7deg) scale(1.05)}
.marquee{overflow:hidden;border-bottom:1px solid var(--line);background:var(--paper);padding:18px 0}.marquee>div{display:flex;width:max-content;animation:marquee 28s linear infinite}.marquee span{display:inline-flex;align-items:center;gap:28px;padding-right:28px;color:var(--muted);font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.marquee i{color:var(--wine);font:18px var(--serif)}section{padding:clamp(84px,11vw,170px) var(--pad)}.intro{display:grid;grid-template-columns:.58fr 1.42fr;gap:clamp(30px,8vw,130px)}.section-label{display:flex;align-items:center;gap:12px;font-size:10px;font-weight:750;letter-spacing:.16em;text-transform:uppercase}.section-label span{display:grid;width:25px;height:25px;place-items:center;border:1px solid;border-radius:50%;font-size:8px}.display-copy{max-width:970px;margin:0;font:400 clamp(38px,5.25vw,76px)/1.02 var(--serif);letter-spacing:-.055em}.display-copy em{color:var(--wine)}.intro-meta{display:grid;grid-template-columns:1fr 1fr;gap:26px;max-width:680px;margin-top:52px}.intro-meta p{margin:0;color:var(--muted);font-size:14px;line-height:1.65}
.services{background:var(--ink);color:#fff}.services-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:55px}.services h2,.demo-story h2,.booking h2{margin:0;font:400 clamp(48px,7vw,104px)/.9 var(--serif);letter-spacing:-.065em}.services-head p{max-width:390px;margin:0;color:#fffdf89e;font-size:13px;line-height:1.6}.service-list{border-top:1px solid #ffffff2e}.service-row{display:grid;grid-template-columns:54px 1fr auto auto;gap:24px;align-items:center;border-bottom:1px solid #ffffff2e;padding:28px 4px;transition:.3s}.service-row:hover{padding-inline:20px;background:#ffffff09}.service-row>span{color:#ffffff66;font:italic 15px var(--serif)}.service-row strong{font:400 clamp(27px,3.7vw,56px) var(--serif);letter-spacing:-.045em}.service-row small{color:#fffdf894;font-size:11px;letter-spacing:.08em;text-transform:uppercase}.service-row button{display:grid;width:46px;height:46px;place-items:center;border:1px solid #ffffff52;border-radius:50%;background:transparent;color:#fff;cursor:pointer;transition:.2s}.service-row button:hover{background:#fff;color:var(--ink);transform:rotate(-30deg)}
