:root{--gold:#d4af37;--gold2:#f1d36a;--black:#080808;--panel:#141414;--line:#303030;--white:#fff;--muted:#aaa;--danger:#ff7272}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:var(--white);font-family:Inter,Arial,sans-serif;font-size:16px;line-height:1.5}a{color:inherit;text-decoration:none}.topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:14px clamp(18px,4vw,64px);background:rgba(8,8,8,.92);border-bottom:1px solid #222;backdrop-filter:blur(14px)}.brand{display:flex;align-items:center;gap:10px;letter-spacing:.12em;font-size:.9rem}.brand span,.footer-mark{display:grid;place-items:center;width:42px;height:42px;border:2px solid var(--gold);color:var(--gold);font-family:"Bebas Neue",sans-serif;font-size:1.65rem;line-height:1}.top-book{background:var(--gold);color:#070707;padding:11px 16px;font-weight:800;font-size:.85rem;letter-spacing:.06em}.hero{min-height:660px;padding:clamp(72px,11vw,150px) clamp(20px,7vw,110px) 40px;background:radial-gradient(circle at 82% 18%,rgba(212,175,55,.17),transparent 27%),linear-gradient(145deg,#080808 0%,#111 55%,#080808 100%);position:relative;overflow:hidden}.hero:after{content:"JL";position:absolute;right:-.04em;top:.03em;font-family:"Bebas Neue",sans-serif;font-size:min(50vw,600px);line-height:1;color:transparent;-webkit-text-stroke:1px rgba(212,175,55,.08);pointer-events:none}.hero>*{position:relative;z-index:1}.hero-rule{width:76px;height:5px;background:var(--gold);margin-bottom:22px}.eyebrow,.section-heading p{color:var(--gold);font-weight:800;font-size:.78rem;letter-spacing:.2em;margin:0 0 10px}.hero h1,.section-heading h2,.contact-section h2{font-family:"Bebas Neue",Impact,sans-serif;font-weight:400;line-height:.88;letter-spacing:.02em;margin:0}.hero h1{font-size:clamp(4.5rem,12vw,10rem);max-width:930px}.hero h1 em{font-style:normal;color:var(--gold)}.hero-copy{max-width:580px;font-size:clamp(1rem,2vw,1.2rem);color:#c8c8c8;margin:26px 0}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.button{padding:16px 22px;font-weight:800;letter-spacing:.05em;text-align:center}.button.gold{background:var(--gold);color:#090909}.button.outline{border:1px solid #555}.hours-card{display:grid;grid-template-columns:repeat(3,1fr);max-width:860px;margin-top:64px;border:1px solid var(--line);background:#101010}.hours-card div{padding:18px 20px;border-right:1px solid var(--line)}.hours-card div:last-child{border:0}.hours-card small{display:block;color:var(--gold);font-size:.7rem;font-weight:800;letter-spacing:.14em;margin-bottom:4px}.hours-card strong{font-size:.93rem}.section{padding:clamp(72px,9vw,120px) clamp(18px,6vw,90px)}.section-heading{margin-bottom:34px}.section-heading h2,.contact-section h2{font-size:clamp(3rem,7vw,6.5rem)}.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.service-card{min-height:160px;padding:24px;background:var(--panel);border:1px solid #252525;display:flex;flex-direction:column;justify-content:space-between;transition:.2s}.service-card:hover{border-color:var(--gold);transform:translateY(-3px)}.service-card .number{font-family:"Bebas Neue",sans-serif;color:#5d5d5d;font-size:1.4rem}.service-card h3{font-size:1.08rem;margin:22px 0 5px}.service-card strong{color:var(--gold);font-size:1.35rem}.gallery-section{background:#0f0f0f}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.gallery-grid img{width:100%;aspect-ratio:4/5;object-fit:cover;background:#1b1b1b}.gallery-grid .muted{grid-column:1/-1}.booking-section{max-width:1150px;margin:auto}.booking-section form{background:#111;border:1px solid #292929;padding:clamp(20px,5vw,52px)}.form-step{display:flex;align-items:center;gap:12px;margin:30px 0 16px}.form-step:first-child{margin-top:0}.form-step span{display:grid;place-items:center;width:30px;height:30px;background:var(--gold);color:#080808;font-weight:900}.form-step h3{font-size:1.1rem;margin:0}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}label{color:#c7c7c7;font-size:.88rem;font-weight:700}input{display:block;width:100%;margin-top:7px;padding:15px;background:#080808;border:1px solid #383838;border-radius:0;color:white;font:inherit;outline:none}input:focus{border-color:var(--gold)}.choice-grid,.date-grid,.time-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.choice{background:#181818;border:1px solid #343434;color:#fff;padding:14px;text-align:left;cursor:pointer;font:inherit}.choice strong{display:block}.choice small{color:var(--gold);font-size:.9rem}.choice.selected{background:var(--gold);border-color:var(--gold);color:#080808}.choice.selected small{color:#080808}.choice:disabled{opacity:.35;cursor:not-allowed}.muted{color:var(--muted)}.form-message{display:none;margin-top:22px;padding:15px;border:1px solid #555}.form-message.error{display:block;border-color:#712c2c;color:#ffb5b5;background:#261010}.form-message.success{display:block;border-color:#5f501c;color:#ffe995;background:#25200b}.submit-button{width:100%;margin-top:22px;padding:18px;border:0;background:var(--gold);color:#080808;font:800 1rem Inter,sans-serif;letter-spacing:.06em;cursor:pointer}.submit-button:disabled{opacity:.55}.contact-section{display:flex;justify-content:space-between;gap:35px;align-items:end;padding:clamp(70px,9vw,120px) clamp(20px,7vw,110px);background:var(--gold);color:#080808}.contact-section .eyebrow{color:#42370f}.contact-details{display:flex;flex-direction:column;gap:18px;text-align:right;font-weight:800;font-size:1.05rem}.contact-details a{text-decoration:underline;text-underline-offset:4px}footer{display:flex;align-items:center;justify-content:center;gap:14px;padding:28px;color:#8f8f8f;font-size:.85rem}footer .footer-mark{width:34px;height:34px;font-size:1.25rem}@media(max-width:850px){.services-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid{grid-template-columns:repeat(2,1fr)}.choice-grid{grid-template-columns:repeat(2,1fr)}.date-grid{grid-template-columns:repeat(2,1fr)}.time-grid{grid-template-columns:repeat(3,1fr)}.hours-card{grid-template-columns:1fr}.hours-card div{border-right:0;border-bottom:1px solid var(--line)}.contact-section{display:block}.contact-details{text-align:left;margin-top:30px}}@media(max-width:520px){.topbar{padding:10px 14px}.brand b{font-size:.75rem}.top-book{padding:10px 12px}.hero{min-height:auto;padding-top:72px}.hero h1{font-size:4.4rem}.hero-actions{display:grid}.hours-card{margin-top:44px}.section{padding-left:14px;padding-right:14px}.services-grid{gap:8px}.service-card{padding:17px;min-height:145px}.field-row{grid-template-columns:1fr}.time-grid{grid-template-columns:repeat(2,1fr)}.booking-section form{padding:18px}.contact-section{padding-left:20px;padding-right:20px}}
