[hidden]{display:none!important}.booking-v2{grid-template-columns:.85fr 1.15fr;gap:7%;align-items:start}.booking-v2 form{padding:32px;min-width:0}.booking-v2 .booking-intro{position:sticky;top:35px}.hours-display{display:flex;align-items:center;justify-content:space-between;max-width:360px;margin:35px 0;color:var(--ink)}.hours-display>span{font:30px Amiri}.hours-display small{display:block;font:11px Tajawal;color:#87927b;margin-top:8px}.hours-display i{font-style:normal;font-size:28px;text-align:center;color:#91a477}.hours-display i small{font-size:10px}.price-receipt{background:#eef1e6;border:1px solid #dce3ce;border-radius:12px;padding:25px;max-width:390px;transform:perspective(1000px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .25s}.receipt-title{display:flex;justify-content:space-between;font-size:12px;color:#7c8a72}.price-receipt h3{font:31px Amiri;margin:17px 0 0}.price-receipt>p{font-size:12px;margin:5px 0 24px}.receipt-row{display:flex;justify-content:space-between;gap:15px;font-size:13px;margin:16px 0}.receipt-row>span{color:#7c8975}.receipt-row>b{font-weight:500}.receipt-total{display:flex;align-items:center;justify-content:space-between;border-top:1px dashed #c4ceb8;border-bottom:1px dashed #c4ceb8;padding:19px 0;margin:20px 0;font-size:14px}.receipt-total strong{font-size:32px;font-weight:700}.receipt-total small{font-size:13px;font-weight:400}.rate-badge{font-size:10px;border-radius:30px;display:inline-block;padding:7px 12px;background:#dee7d0;color:#4c6845}.weekend-rate{background:#eee0c4;color:#7c602e}.rate-note{display:block;font-size:10px;color:#8b9580;line-height:1.8;margin-top:16px}.preview-note{font-size:11px;line-height:1.9;max-width:390px;display:flex;gap:12px;margin-top:20px}.preview-note>span{font-size:24px;color:#91a477}.booking-progress{list-style:none;padding:0;display:flex;justify-content:space-between;gap:10px;margin:30px 0}.booking-progress li{flex:1;display:flex;gap:8px;align-items:center;font-size:12px;color:#9ca591;position:relative;border-bottom:2px solid #edf0e7;padding-bottom:15px}.booking-progress li>span{border:1px solid #e0e5d7;border-radius:50%;width:25px;height:25px;display:grid;place-items:center;font-size:11px}.booking-progress li.active{color:var(--ink);border-color:var(--ink)}.booking-progress li.active>span{background:var(--ink);border-color:var(--ink);color:white}.booking-progress li.complete{border-color:#a7bb88;color:#738c59}.booking-progress li.complete>span{background:#e7eddd;border-color:#e7eddd}.calendar{margin:25px 0 15px}.calendar-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.calendar-heading strong{font-size:18px}.calendar-heading small{display:block;color:#899680;font-size:10px;margin-top:5px}.calendar-heading button{border:1px solid #e1e6d8;border-radius:50%;width:32px;height:32px;background:#fff;color:var(--ink);font-size:17px;margin-right:5px}.calendar-heading button:disabled{opacity:.3;cursor:default}.calendar-week,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.calendar-week{font-size:10px;color:#8d9983;text-align:center;margin-bottom:10px}.calendar-days{direction:rtl}.calendar-day{position:relative;min-width:0;aspect-ratio:1.08;border:1px solid transparent;border-radius:8px;background:#f8faf4;color:var(--ink);font-size:14px;transition:background .2s,transform .2s}.calendar-day:hover:not(:disabled){background:#e6eddb;transform:translateY(-2px)}.calendar-day.weekend{background:#f7f0e4;color:#947437}.calendar-day.weekend:after{content:'';position:absolute;bottom:5px;left:calc(50% - 2px);width:4px;height:4px;border-radius:50%;background:#c2a063}.calendar-day.selected{background:var(--ink);color:white;box-shadow:0 4px 12px #173e3620}.calendar-day[aria-current=date]{border-color:#b4c79a}.calendar-day:disabled{background:transparent;color:#c7cdbf;cursor:default}.calendar-day:disabled:after{display:none}.calendar-legend{display:flex;gap:16px;font-size:9px;color:#929b89;margin-top:18px}.calendar-legend>span{display:flex;align-items:center;gap:6px}.calendar-legend i{width:6px;height:6px;border-radius:50%;background:#bed0a4}.calendar-legend>span:last-child i{background:#c9aa71}.date-manual{font-size:11px;color:#8d9980}.date-manual input{font-size:12px;padding:9px 12px;min-height:38px}.time-slot{display:flex;align-items:center;gap:12px;background:#f0f4e8;border:1px solid #d4dfc3;padding:16px 12px;border-radius:8px;margin-top:20px}.slot-icon{font-size:28px;color:#869d69}.time-slot strong{font-size:13px;font-weight:500}.time-slot small{display:block;font-size:10px;color:#81926e;margin-top:5px}.slot-tag{font-size:9px;margin-right:auto;border:1px solid #cbd8b8;border-radius:20px;padding:6px 8px;white-space:nowrap;color:#77905b}.checkout-note{font-size:11px;line-height:1.8;margin:12px 0 20px;color:#869478}.booking-v2 .button{width:100%;gap:10px;margin-top:20px}.stage-intro h3{font:29px Amiri;margin:0}.stage-intro p{font-size:12px;line-height:1.8;margin:8px 0 25px}.booking-v2 textarea{display:block;width:100%;border:1px solid #dfe3d8;background:#fcfcf8;padding:13px;border-radius:5px;margin-top:9px;color:var(--ink);font:inherit;resize:vertical}.optional{font-size:10px;color:#a0aa94;float:left;font-weight:400}.step-actions{display:flex;align-items:center;gap:20px;margin-top:20px}.step-actions .button{flex:1;margin:0}.back-step{background:none;border:0;padding:12px 0;color:#849277;font-size:12px;white-space:nowrap}.payment-fieldset{padding:0;border:0;margin:23px 0}.payment-fieldset legend{font-size:12px;margin-bottom:12px}.pay-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.pay-option{margin:0;position:relative;display:flex;gap:7px;align-items:center;border:1px solid #e0e5d9;border-radius:8px;padding:15px 12px;cursor:pointer;min-width:0}.pay-option input{position:absolute;opacity:0;width:1px;height:1px;min-height:0;padding:0;margin:0}.pay-option strong{font-size:13px;font-weight:500}.pay-option small{display:block;color:#8a987c;font-size:11px;margin-top:7px}.pay-option i{margin-right:auto;display:grid;place-items:center;font-size:10px;font-style:normal;width:17px;height:17px;border:1px solid #d1dac4;border-radius:50%;color:transparent}.pay-option:has(input:checked){background:#f0f5e7;border-color:#8fa773}.pay-option:has(input:checked) i{background:var(--ink);border-color:var(--ink);color:white}.pay-option:has(input:focus-visible){outline:2px solid #7b9864;outline-offset:3px}.payment-methods{display:grid;gap:10px}.payment-methods label{display:flex;align-items:center;gap:12px;margin:0;border:1px solid #e1e6d9;border-radius:8px;padding:14px;cursor:pointer}.payment-methods input{width:15px;height:15px;min-height:15px;margin:0;accent-color:var(--ink)}.payment-methods label:has(input:checked){border-color:#91a778;background:#fafcf5}.payment-methods small{display:block;color:#98a18d;font-size:10px;margin-top:6px;direction:ltr;text-align:right}.method-symbol{font-size:27px;color:#81956e}.coming-tag{margin-right:auto;font-size:9px;background:#ecefe5;color:#8c967e;padding:5px 9px;border-radius:20px}.payment-panel{padding:20px;border-radius:8px;background:#f7f8f2;text-align:center;margin-top:20px}.payment-panel>p{font-size:10px;line-height:1.9;margin:15px 0 0}.preview-card{background:linear-gradient(125deg,#204c3e,#557257);border-radius:12px;padding:22px;max-width:300px;margin:auto;color:#e2ead5;text-align:left;direction:ltr;position:relative;overflow:hidden;box-shadow:0 12px 25px #173e3620;transform:rotate(-2deg)}.preview-card:after{content:'';position:absolute;border:1px solid #ffffff15;width:190px;height:190px;border-radius:50%;right:-60px;top:-55px;pointer-events:none}.preview-card>span{font-size:9px;letter-spacing:1.3px}.preview-card>b{display:block;font-size:27px;color:#d6d1a3;font-weight:400;margin-top:10px}.preview-card strong{display:block;font:17px monospace;margin:8px 0 18px;letter-spacing:1px}.preview-card>small{display:flex;justify-content:space-between;font-size:9px}.preview-card small>span{font:bold italic 16px sans-serif}.bank-icon{display:block;font-size:36px;color:#8ba072;margin-bottom:10px}#bankPanel>strong{font-size:14px;font-weight:500}.terms-check{display:flex;gap:10px;align-items:start;font-size:10px;line-height:1.9;color:#89967d;margin:22px 0}.terms-check input{width:15px;min-width:15px;min-height:15px;height:15px;padding:0;margin:2px 0;accent-color:var(--ink)}#bookingError{font-size:12px;line-height:1.8;color:#965b3f;background:#fff4e9;border:1px solid #efddc6;padding:12px;border-radius:6px;margin:15px 0}.booking-stage:not([hidden]){animation:stage-in .35s ease both}.booking-stage h3:focus{outline:none}.booking-stage input:invalid:not(:placeholder-shown):focus{outline-color:#b68a65}.booking-stage input[type=radio]:focus-visible{outline:2px solid #829c65;outline-offset:3px}.price-receipt strong{font-variant-numeric:tabular-nums}#quoteTotal{transition:color .2s}#summaryText{font-size:13px;line-height:2}#summary{max-height:88dvh;overflow:auto}#summary>h2{font-size:34px}#summary .booking-notice{font-size:11px}#summary .button{font-size:13px;padding:15px}#copy{background:transparent;color:var(--ink);border:1px solid #cad4bd;margin-top:10px}.scroll-progress{position:fixed;top:0;left:0;right:0;height:3px;background:#8fa873;z-index:100;transform:scaleX(0);transform-origin:right;pointer-events:none}header{transition:box-shadow .3s,border-color .3s}.is-scrolled{border-color:#aabb964d}.motion-reveal{opacity:0;translate:0 30px;transition:opacity .75s ease var(--reveal-delay,0ms),translate .75s cubic-bezier(.2,.65,.25,1) var(--reveal-delay,0ms)}.motion-reveal.revealed{opacity:1;translate:0 0}.hero-copy>.eyebrow{animation:hero-in .8s .1s both}.hero-copy h1{animation:hero-in .95s .2s both}.hero-copy>p{animation:hero-in .95s .35s both}.hero-copy .actions{animation:hero-in .95s .5s both}.hero-copy .hero-foot{animation:hero-in .95s .65s both}.visual{animation:hero-in 1.3s .35s both}.floating-note{animation:float-note 6s ease-in-out infinite}.orbit.o1{animation:orbit-breathe 9s ease-in-out infinite}.orbit.o2{animation:orbit-breathe 9s 2s ease-in-out infinite}.small-flower{animation:flower-turn 22s linear infinite}.ribbon i{animation:flower-turn 25s linear infinite}.retreat{transform:perspective(1000px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .3s}.round{transition:background .2s,transform .3s}.round:hover{transform:rotate(-20deg)}.button,.nav-button{transition:background .25s,box-shadow .25s,transform .25s}.button:hover{box-shadow:0 8px 20px #173e3618;transform:translateY(-2px)}.button>span{transition:translate .25s}.button:hover>span{translate:-4px -2px}.press-motion{transform:scale(.98)!important}.gallery-photo{animation:gallery-in .5s ease both}.gallery-photo:nth-child(2){animation-delay:40ms}.gallery-photo:nth-child(3){animation-delay:80ms}.gallery-photo:nth-child(4){animation-delay:100ms}.gallery-photo:nth-child(5){animation-delay:130ms}.gallery-photo:nth-child(6){animation-delay:160ms}dialog[open]{animation:dialog-in .25s ease both}.faq details[open] p{animation:stage-in .3s ease}.gallery-tabs button{transition:background .3s,color .3s,transform .3s}.gallery-tabs button:hover{transform:translateY(-2px)}@keyframes hero-in{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}@keyframes stage-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes float-note{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-9px) rotate(-1deg)}}@keyframes orbit-breathe{0%,100%{scale:1;opacity:.7}50%{scale:1.04;opacity:.3}}@keyframes flower-turn{to{rotate:360deg}}@keyframes gallery-in{from{opacity:.1;translate:0 14px}to{opacity:1;translate:0 0}}@keyframes dialog-in{from{opacity:0;scale:.97}to{opacity:1;scale:1}}@media(max-width:950px){.booking-v2{gap:30px;grid-template-columns:.8fr 1.2fr}.booking-v2 form{padding:24px}.slot-tag{display:none}.calendar-week,.calendar-days{gap:4px}.calendar-legend{gap:8px;font-size:8px}}@media(max-width:700px){.booking-v2{grid-template-columns:1fr;gap:30px}.booking-v2 .booking-intro{position:static;display:flex;flex-wrap:wrap;gap:0;width:100%}.booking-intro>.eyebrow,.booking-intro>h2,.booking-intro>p{width:100%}.booking-intro>h2{margin-bottom:8px}.hours-display{width:100%;max-width:none;margin:18px 0 25px}.price-receipt{width:100%;max-width:none;padding:22px}.receipt-row{margin:13px 0}.receipt-total{padding:15px 0;margin:17px 0}.booking-v2 form{padding:25px 20px}.calendar-day{font-size:15px;aspect-ratio:1.15}.calendar-week{font-size:9px}.calendar-legend{font-size:9px;gap:12px}.booking-v2 .button{padding:17px 19px}.time-slot{padding:15px}.slot-tag{display:block}.booking-intro>.preview-note{font-size:10px;max-width:none}.booking-progress{margin:25px 0}.pay-option{padding:14px 10px}.preview-card{max-width:280px}.preview-card strong{font-size:16px}.motion-reveal{translate:0 18px}#summary{padding:30px 24px}.pay-option small{font-size:10px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.motion-reveal{opacity:1;translate:0 0}.retreat,.price-receipt{transform:none!important}.scroll-progress{transition:none}}
