:root{--sand:#F3E9D7;--sand-hi:#FAF3E5;--green-deep:#2E3D34;--gold:#C9A35A;--ink-muted:#5E6A62;--rule:rgba(46,61,52,.18);--h:"Georgia","Cormorant Garamond",serif;--b:"Calibri","Segoe UI","Helvetica Neue",Arial,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--sand);color:var(--green-deep);font-family:var(--b)}.booking-nav{align-items:center;background:color-mix(in oklab,var(--sand) 88%,transparent);border-bottom:1px solid var(--rule);display:flex;gap:22px;justify-content:space-between;padding:16px clamp(18px,4vw,42px);position:sticky;top:0;z-index:30}.booking-brand{align-items:center;color:var(--green-deep);display:inline-flex;font-family:var(--h);font-size:24px;font-style:italic;gap:12px;text-decoration:none;white-space:nowrap}.booking-brand span{background:linear-gradient(135deg,#E7C585,var(--gold) 55%,#8E6A2A);border-radius:50%;box-shadow:inset 0 0 0 2px var(--sand),0 0 0 1px #B8914A;display:block;height:30px;width:30px}.booking-menu{align-items:center;display:flex;flex-wrap:wrap;gap:10px 20px;justify-content:flex-end}.booking-menu a,.booking-mobile-panel a{color:var(--green-deep);font-size:14px;text-decoration:none}.booking-mobile-menu{display:none;position:relative}.booking-mobile-menu summary{align-items:center;background:var(--green-deep);border-radius:999px;cursor:pointer;display:inline-flex;height:44px;justify-content:center;list-style:none;position:relative;width:52px}.booking-mobile-menu summary::-webkit-details-marker{display:none}.booking-mobile-menu summary span{background:var(--sand-hi);border-radius:999px;display:block;height:2px;position:absolute;transition:transform .2s ease,opacity .2s ease;width:22px}.booking-mobile-menu summary span:first-child{transform:translateY(-7px)}.booking-mobile-menu summary span:nth-child(3){transform:translateY(7px)}.booking-mobile-menu[open] summary span:first-child{transform:rotate(45deg)}.booking-mobile-menu[open] summary span:nth-child(2){opacity:0}.booking-mobile-menu[open] summary span:nth-child(3){transform:rotate(-45deg)}.booking-mobile-panel{background:var(--sand-hi);border:1px solid rgba(201,163,90,.35);border-radius:18px;box-shadow:0 24px 46px -30px rgba(46,61,52,.5);display:grid;gap:2px;min-width:min(82vw,280px);padding:10px;position:absolute;right:0;top:calc(100% + 10px);z-index:40}.booking-mobile-panel a{border-radius:12px;padding:12px 14px}.booking-page{padding:28px 18px 54px}.booking-card{background:var(--green-deep);border-radius:22px;color:var(--sand-hi);display:grid;gap:26px;grid-template-columns:minmax(220px,.48fr) minmax(0,.9fr);margin:0 auto;max-width:980px;padding:clamp(24px,5vw,44px)}.booking-eyebrow{color:var(--gold);font-size:12px;letter-spacing:.28em;margin:0 0 12px;text-transform:uppercase}h1{color:var(--sand-hi);font-family:var(--h);font-size:clamp(42px,6vw,64px);font-weight:500;line-height:1.02;margin:0}.booking-copy p:not(.booking-eyebrow):not(.booking-status){color:rgba(243,233,215,.82);font-size:18px;line-height:1.55;margin:18px 0 0}.booking-status{border-radius:14px;font-size:16px;line-height:1.5;margin-top:18px;padding:14px 16px}.booking-status.success{background:rgba(111,143,126,.22);color:var(--sand-hi)}.booking-status.error{background:rgba(244,199,188,.16);color:#f4c7bc}.booking-form{display:grid;gap:18px}.booking-honey{display:none}.booking-type-grid{border:0;display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:0}.booking-type-grid legend{color:rgba(243,233,215,.86);font-size:15px;margin-bottom:10px}.booking-type{align-items:center;background:rgba(250,243,229,.08);border:1px solid rgba(243,233,215,.18);border-radius:14px;color:var(--sand-hi);cursor:pointer;display:flex;gap:10px;min-height:52px;padding:12px 14px}.booking-type input{accent-color:var(--gold);flex:0 0 auto}.booking-type:has(input:checked){background:rgba(201,163,90,.24);border-color:rgba(201,163,90,.7)}.booking-type span{font-size:16px}.booking-fields{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.booking-fields label{color:rgba(243,233,215,.86);display:grid;font-size:15px;gap:7px}.booking-fields input,.booking-fields select,.booking-fields textarea{background:var(--sand-hi);border:1px solid rgba(201,163,90,.45);border-radius:12px;color:var(--green-deep);font:17px var(--b);min-width:0;padding:13px 15px;width:100%}.booking-message{grid-column:1/-1}.booking-fields textarea{resize:vertical}.optional-details{border-top:1px solid rgba(243,233,215,.16);padding-top:4px}.optional-details summary{color:rgba(243,233,215,.82);cursor:pointer;font-size:15px;padding:8px 0}.optional-details .optional{padding-top:8px}.optional-details:not([open]) .optional{display:none}.booking-submit{background:var(--gold);border:0;border-radius:999px;color:#243029;cursor:pointer;font:15px var(--b);justify-self:start;letter-spacing:.08em;min-height:52px;padding:15px 24px;text-transform:uppercase}@media (max-width:820px){.booking-menu{display:none}.booking-mobile-menu{display:block}.booking-page{padding:22px 14px 42px}.booking-card{gap:22px;grid-template-columns:1fr;padding:24px 20px}h1{font-size:clamp(40px,12vw,54px)}.booking-copy p:not(.booking-eyebrow):not(.booking-status){font-size:16px;margin-top:12px}.booking-fields,.booking-type-grid{grid-template-columns:1fr}.booking-type{min-height:48px}.booking-submit{width:100%}}