@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@400;500;600&display=swap');
:root{--ink:#18191e;--muted:#646570;--wine:#792036;--line:#e0e1e6;--paper:#fff;--wash:#f4f5f8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:16px/1.6 'DM Sans',sans-serif;color:var(--ink);background:var(--paper)}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}button,a,input,select,textarea{outline-offset:5px}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2,.serif{font-family:'Playfair Display',Georgia,serif;font-weight:400;line-height:1.1}h1{font-size:clamp(3rem,7vw,6.8rem);letter-spacing:-.04em}h2{font-size:clamp(2.2rem,4vw,4rem);letter-spacing:-.035em}h3{font-size:1.25rem}p{max-width:650px}.eyebrow{text-transform:uppercase;font-size:.875rem;letter-spacing:.16em;font-weight:600}.muted{color:var(--muted)}.shell{max-width:1440px;margin:auto;padding:0 6%}.demo-bar{background:#18191e;color:white;padding:10px 5%;font-size:.875rem;display:flex;gap:14px;align-items:center;justify-content:space-between;flex-wrap:wrap}.demo-bar a{text-decoration:underline;text-underline-offset:4px}.nav{display:flex;align-items:center;justify-content:space-between;padding:25px 0;gap:24px}.logo{font-family:Georgia,serif;font-size:2rem;line-height:1}.logo small{display:block;font:10px 'DM Sans',sans-serif;letter-spacing:.26em;margin-top:8px}.nav-links{display:flex;gap:25px;align-items:center;font-size:.9rem}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 24px;border:1px solid var(--ink);background:var(--ink);color:white;line-height:1.3;border-radius:0;font-weight:500}.btn.wine{background:var(--wine);border-color:var(--wine)}.btn.light{background:white;color:var(--ink)}.btn.small{padding:10px 16px;font-size:.875rem}.text-link{border:0;border-bottom:1px solid currentColor;padding:0 0 4px;background:none}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:650px;align-items:center;gap:5%}.hero-copy{padding:60px 0}.hero p{font-size:1.125rem}.hero .eyebrow{color:var(--wine);margin-bottom:30px}.hero-img{height:650px;width:100%;object-fit:cover;object-position:50% 30%}.image-caption{font-size:.8rem;color:var(--muted);margin-top:9px}.hero-img-wrap{position:relative}.image-tag{position:absolute;bottom:28px;left:25px;background:white;padding:9px 14px;font-size:.8rem;letter-spacing:.1em}.band{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0;display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;font-size:.9rem}.section{padding:90px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:35px}.section-head h2{margin-bottom:0}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.gallery img{width:100%;height:410px;object-fit:cover}.gallery h3{font-family:Georgia,serif;font-size:1.5rem;margin:16px 0 4px;font-weight:400}.gallery p{font-size:.9rem;color:var(--muted)}.story{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start;background:var(--wash);padding:70px 6%}.story h2{max-width:450px}.story p{font-size:1.1rem}.callout{background:var(--wine);color:white;padding:65px 6%;display:flex;justify-content:space-between;gap:30px;align-items:center}.callout h2{max-width:680px;margin-bottom:15px}.footer{padding:35px 0;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:.875rem}.choices{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:45px 0}.choice{border:1px solid var(--line);padding:30px;display:flex;flex-direction:column;position:relative}.choice.featured{border-color:var(--wine);box-shadow:inset 0 4px var(--wine)}.choice .price{font-size:2.3rem;font-family:Georgia,serif;margin:20px 0 0}.choice ul{padding-left:20px;flex:1}.choice li{margin-bottom:10px}.chooser-title{max-width:950px;margin:60px 0 20px}.chooser-title h1{font-size:clamp(3rem,6vw,5.3rem)}.preview-photo{width:100%;height:190px;object-fit:cover;margin-bottom:25px}.note{background:var(--wash);padding:20px 24px;font-size:.9rem}.booking-intro{display:grid;grid-template-columns:.85fr 1.15fr;gap:8%;padding:60px 0 90px}.booking-intro h1{font-size:clamp(2.7rem,5vw,4.5rem)}.form-panel{border:1px solid var(--line);padding:32px;background:white}.fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}label{font-size:.9rem;font-weight:500}input,select,textarea{width:100%;border:1px solid #bdbfc8;background:white;padding:12px;color:var(--ink);min-width:0}textarea{min-height:90px}.slots{display:flex;gap:8px;flex-wrap:wrap}.slot{border:1px solid var(--line);background:white;padding:9px 13px}.slot[aria-pressed=true]{background:var(--wine);color:white;border-color:var(--wine)}.steps{display:flex;gap:16px;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:25px;font-size:.9rem}.steps span.active{color:var(--wine);font-weight:700}.form-panel .btn{margin-top:22px}.success{padding:25px;background:var(--wash)}.success h2{font-size:2rem}.dashboard{background:var(--wash);min-height:100vh}.workspace{display:grid;grid-template-columns:230px 1fr;min-height:calc(100vh - 44px)}.sidebar{padding:30px 24px;background:white;border-right:1px solid var(--line)}.sidebar .logo{margin-bottom:45px}.side-button{display:block;width:100%;text-align:left;padding:13px 15px;background:none;border:0;margin:5px 0;color:var(--muted)}.side-button.active{background:#f7e9ed;color:var(--wine);font-weight:600}.workspace-main{padding:38px 4%;min-width:0}.workspace-head{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:30px}.workspace-head h1{font-size:2.6rem;margin-bottom:8px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:25px 0}.metric{background:white;border:1px solid var(--line);padding:22px}.metric strong{display:block;font-size:1.9rem;font-weight:500;margin-top:12px}.metric span{font-size:.875rem;color:var(--muted)}.table-wrap{background:white;border:1px solid var(--line);overflow:auto}.table-top{padding:22px;display:flex;justify-content:space-between;gap:20px;align-items:center}.table-top input{max-width:270px}table{border-collapse:collapse;width:100%;white-space:nowrap;text-align:left}th{background:#f8f8fa;color:var(--muted);font-size:.8rem;letter-spacing:.05em;text-transform:uppercase}th,td{padding:17px 22px;border-top:1px solid var(--line);font-size:.9rem}td small{display:block;color:var(--muted)}.badge{padding:5px 10px;background:#f4e8ec;color:var(--wine);font-size:.8rem}.badge.ready{background:#e5f0e9;color:#285a3b}.workspace-note{margin-top:25px;font-size:.875rem;color:var(--muted)}dialog{border:0;padding:36px;width:min(620px,92vw);max-height:90vh;overflow:auto;box-shadow:0 20px 80px #0003}dialog::backdrop{background:#10101599}.close{position:absolute;top:10px;right:15px;background:none;border:0;font-size:1.7rem}dialog h2{font-size:2.2rem;padding-right:25px}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;padding:12px 22px;display:none;z-index:10;max-width:90vw}.payment-list{margin:18px 0}.payment-list div{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:10px 0}.empty{padding:35px;text-align:center;color:var(--muted)}.booking-thumbnail{width:100%;height:230px;object-fit:cover;margin:25px 0}.mobile-menu{display:none}.confirmation-details{padding-left:20px}.price-caption{font-size:.875rem;color:var(--muted)}
@media(max-width:900px){.nav-links{gap:14px}.hero{min-height:0}.hero-img{height:540px}.hero h1{font-size:4rem}.choices{gap:14px}.choice{padding:22px}.gallery img{height:300px}.workspace{grid-template-columns:180px 1fr}.metrics{grid-template-columns:1fr 1fr}.sidebar{padding:25px 15px}.booking-intro{gap:4%}.form-panel{padding:24px}}
@media(max-width:650px){.shell{padding:0 6%}.nav{padding:20px 0}.nav-links a:not(.btn){display:none}.nav-links{gap:8px}.btn{padding:13px 19px}.hero{display:flex;flex-direction:column;gap:0}.hero-copy{padding:38px 0}.hero h1{font-size:3.6rem}.hero-img-wrap{width:100%}.hero-img{height:460px}.band{font-size:.8rem;margin-top:25px}.section{padding:60px 0}.section-head{display:block}.section-head p{margin-top:18px}.gallery{grid-template-columns:1fr;gap:30px}.gallery img{height:450px}.story{grid-template-columns:1fr;gap:15px;padding:50px 6%}.callout{display:block;padding:50px 6%}.callout .btn{margin-top:15px}.choices{grid-template-columns:1fr}.chooser-title{margin-top:35px}.choice .preview-photo{height:240px}.booking-intro{grid-template-columns:1fr;padding-top:35px;gap:20px}.booking-thumbnail{display:none}.fields{grid-template-columns:1fr}.field.full{grid-column:auto}.form-panel{padding:22px}.workspace{display:block}.sidebar{padding:20px 6%;border-right:0;border-bottom:1px solid var(--line);display:flex;gap:12px;align-items:center;flex-wrap:wrap}.sidebar .logo{margin:0;margin-right:auto}.sidebar .side-button{width:auto;margin:0;padding:9px}.sidebar .side-caption{display:none}.workspace-main{padding:28px 6%}.workspace-head{align-items:start;flex-wrap:wrap}.workspace-head h1{font-size:2.1rem}.metrics{gap:12px}.metric{padding:17px}.metric strong{font-size:1.5rem}.table-top{flex-wrap:wrap}.table-top input{max-width:100%}dialog{padding:30px 22px}.demo-bar{font-size:.8rem}.footer{display:block}.footer p{margin-bottom:8px}}
