:root{--ink:#20382f;--green:#274b3c;--cream:#f7f5ef;--paper:#fffefa;--orange:#b26d4d;--line:#e2e2d8;--muted:#798176;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;background:var(--cream);color:var(--ink);font:16px var(--sans)}a{color:inherit;text-decoration:none}.account-header{height:76px;padding:0 8%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #20382f12}.brand{display:flex;align-items:center;gap:9px;font-size:16px;line-height:1}.brand b{font-weight:700}.brand small{display:block;margin-top:6px;font-size:16px;letter-spacing:.17em;color:var(--muted)}.brand-mark{width:33px;height:33px;border:1px solid var(--green);border-radius:50%;display:grid;place-items:center;font:italic 25px var(--serif)}.back-site,.signout{font-size:16px;font-weight:700;color:#647067}.account-main{max-width:1120px;min-height:calc(100vh - 140px);margin:auto;padding:65px 6%}.auth-pane{display:grid;grid-template-columns:1fr .8fr;gap:12%;align-items:center}.eyebrow{font-size:16px;letter-spacing:.17em;font-weight:700;color:#8a8b79;margin:0 0 17px}.auth-intro h1,.dashboard-heading h1{font:600 clamp(46px,6vw,68px)/1.03 var(--serif);letter-spacing:-.04em;margin:0}.auth-intro h1 em,.dashboard-heading h1 em{color:var(--orange)}.auth-intro>p:not(.eyebrow){font-size:16px;line-height:1.8;color:#69736a;max-width:370px;margin:20px 0 25px}.account-perks{display:grid;gap:11px;font-size:16px;color:#596b5e}.auth-card{background:var(--paper);border:1px solid var(--line);padding:26px 29px;border-radius:4px;box-shadow:0 12px 40px #23392a08}.auth-tabs,.account-tabs{display:flex;gap:20px;border-bottom:1px solid var(--line);margin-bottom:20px}.auth-tab,.account-tab{border:0;background:transparent;padding:0 0 11px;color:#8a9085;font:600 16px var(--sans)}.auth-tab.active,.account-tab.active{color:var(--green);border-bottom:2px solid var(--green)}.auth-card h2{font:600 25px var(--serif);margin:0 0 5px}.auth-card form>p:not(.auth-feedback){font-size:16px;line-height:1.6;color:var(--muted);margin:0 0 17px}.auth-card label{display:block;font-size:16px;font-weight:700;margin:13px 0 6px}.auth-card input{width:100%;padding:12px;border:1px solid #daddd2;border-radius:3px;background:white;font:16px var(--sans);color:var(--ink)}.account-button{display:block;width:100%;margin-top:19px;padding:14px;border:0;border-radius:3px;background:var(--green);color:white;font:700 16px var(--sans);text-align:center}.account-button span{margin-left:7px}.auth-feedback{min-height:13px;font-size:16px;color:#a04f3c;line-height:1.5;margin:9px 0 0}.dashboard-pane{min-height:560px}.dashboard-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:34px}.dashboard-heading h1{font-size:48px}.dashboard-heading>div>p:last-child{font-size:16px;color:var(--muted);margin:10px 0 0}.signout{background:transparent;border:1px solid #cbd1c8;border-radius:3px;padding:9px 13px}.account-tabs{margin-bottom:22px}.booking-list{display:grid;gap:13px}.booking-card{background:var(--paper);border:1px solid var(--line);border-radius:4px;padding:20px 22px}.booking-top{display:flex;justify-content:space-between;gap:15px;align-items:start}.booking-top h2{font:600 22px var(--serif);margin:0 0 6px}.booking-top p{font-size:16px;color:var(--muted);margin:0}.booking-ref{font-size:16px;color:#9a9e93}.booking-amount{display:flex;gap:26px;margin:17px 0;padding:13px 0;border-top:1px solid #eeeee8;border-bottom:1px solid #eeeee8}.booking-amount div{display:grid;gap:5px}.booking-amount small{font-size:16px;color:#899085}.booking-amount b{font:600 16px var(--serif)}.payment-progress{height:5px;background:#e8eadf;border-radius:4px;overflow:hidden;margin:8px 0 4px}.payment-progress i{display:block;height:100%;background:#68886e}.booking-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.small-button{border:0;border-radius:3px;padding:10px 13px;background:var(--green);color:white;font:700 16px var(--sans)}.small-button.secondary{background:#e9eee7;color:var(--green)}.booking-details{margin-top:16px;padding:15px;background:#f2f2e9;border-radius:3px;font-size:16px;line-height:1.75;color:#616d62}.booking-details h3{font:600 16px var(--serif);margin:0 0 6px}.booking-details p{margin:5px 0}.history-table{width:100%;border-collapse:collapse;background:var(--paper);border:1px solid var(--line);font-size:16px}.history-table th,.history-table td{text-align:left;padding:13px;border-bottom:1px solid #ecece4}.history-table th{font-size:16px;color:#828a7f;text-transform:uppercase;letter-spacing:.06em}.history-table td b{font-size:16px}.status{display:inline-block;border-radius:20px;padding:5px 8px;background:#e5f0e8;color:#487250;font-size:16px;font-weight:700}.status.pending{background:#fff2d7;color:#a27b38}.empty-state{padding:35px;text-align:center;background:var(--paper);border:1px solid var(--line);border-radius:4px}.empty-state h2{font:600 22px var(--serif);margin:0 0 7px}.empty-state p{font-size:16px;color:var(--muted)}.empty-state a{display:inline-block;margin-top:10px;color:var(--green);font-size:16px;font-weight:700;border-bottom:1px solid #9ba397;padding-bottom:5px}.account-footer{border-top:1px solid #20382f12;padding:18px 8%;display:flex;justify-content:space-between;color:#8b9287;font-size:16px}.account-footer a{color:var(--green);font-weight:700}.toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%,20px);background:var(--ink);color:white;padding:12px 17px;border-radius:3px;font-size:16px;opacity:0;transition:.2s;z-index:9}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:700px){.account-header{padding:0 6%;height:65px}.account-main{padding:42px 6%}.auth-pane{grid-template-columns:1fr;gap:28px}.auth-intro h1{font-size:48px}.auth-intro>p:not(.eyebrow){margin:15px 0}.account-perks{grid-template-columns:1fr 1fr;font-size:16px}.auth-card{padding:22px}.dashboard-heading{align-items:start}.dashboard-heading h1{font-size:36px}.booking-card{padding:16px}.booking-amount{gap:18px}.account-footer{padding:16px 6%}}
.auth-card select{width:100%;padding:12px;border:1px solid #daddd2;border-radius:3px;background:white;font:16px var(--sans);color:var(--ink)}


html,body{max-width:100%;overflow-x:hidden}.auth-card input,.auth-card select,.account-button{min-height:46px}.booking-actions button,.booking-actions a{min-height:42px}
@media(max-width:700px){.account-header{padding:0 5%;height:64px}.account-header .brand small{font-size:16px}.account-main{width:100%;padding:32px 5%}.auth-pane{gap:22px}.auth-intro h1{font-size:clamp(38px,11vw,48px)}.auth-card{padding:20px 18px}.account-perks{grid-template-columns:1fr 1fr;gap:9px}.dashboard-heading{gap:12px;flex-wrap:wrap}.dashboard-heading h1{font-size:clamp(30px,8vw,40px)}.dashboard-heading>div>p:last-child{line-height:1.55}.booking-card{padding:15px}.booking-top{align-items:flex-start}.booking-top h2{font-size:20px}.booking-amount{gap:12px;flex-wrap:wrap}.booking-amount>div{min-width:calc(50% - 12px)}.booking-details{overflow-wrap:anywhere}.history-table{display:block;overflow-x:auto;white-space:nowrap}.account-footer{gap:10px;flex-wrap:wrap}.account-footer span,.account-footer a{font-size:16px}}
@media(max-width:380px){.account-perks{grid-template-columns:1fr}.booking-top{display:block}.booking-ref{display:block;margin-top:8px}.booking-amount{justify-content:space-between}.auth-card{padding:18px 15px}}
.forgot-link{display:inline-block;margin:8px 0 3px;padding:5px 0;border:0;background:none;color:var(--green);font:600 16px var(--sans);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.forgot-panel{background:var(--paper);border:1px solid var(--line);padding:22px;border-radius:4px}.forgot-panel h2{font:600 25px var(--serif);margin:0 0 6px}.forgot-panel>p{font-size:16px;line-height:1.6;color:var(--muted)}.forgot-back{border:0;background:transparent;color:var(--green);font:600 16px var(--sans);padding:10px 0;cursor:pointer}

.account-contact-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.account-contact-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;border:1px solid var(--green);border-radius:3px;color:var(--green);font-weight:700;text-decoration:none}.account-contact-actions a:last-child{background:var(--green);color:white}
@media(max-width:700px){.account-contact-actions{gap:8px}.account-contact-actions a{flex:1;padding:9px 10px}}

.legal-consent{display:flex!important;align-items:flex-start;gap:10px;margin:17px 0 0!important;font-size:14px!important;line-height:1.55}.legal-consent input{width:18px;height:18px;min-height:18px;flex:0 0 18px;margin:2px 0 0;accent-color:var(--green)}.legal-consent a,.account-legal-links a{color:var(--green);text-decoration:underline;text-underline-offset:3px}.account-legal-links{display:flex;gap:14px;align-items:center}
