:root{--paper:#f5f1e8;--ink:#0b0b0b;--muted:rgba(11,11,11,0.64);--red:#d62a20;--red-dark:#a91d17;--teal:#0e5c74;--night:#08090d;--charcoal:#151515;--line:rgba(11,11,11,0.1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit}button,input,select,textarea{font:inherit}.hero{display:grid;grid-template-columns:.95fr 1.05fr;background:var(--paper)}.hero,.hero-art{min-height:100svh;overflow:hidden}.hero-art{position:relative;background:#eee8dc}.hero-art img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;filter:grayscale(1) contrast(1.05)}.hero-art:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 70%,rgba(245,241,232,.15));pointer-events:none}.hero-copy{min-height:100svh;display:grid;place-items:center;text-align:center;padding:56px 36px;position:relative;background:radial-gradient(circle at 78% 18%,rgba(14,92,116,.13),transparent 28%),radial-gradient(circle at 18% 82%,rgba(214,42,32,.11),transparent 32%)}.eyebrow{margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;color:var(--teal);font-size:10px;font-weight:900;letter-spacing:.32em}.eyebrow,h1{text-transform:uppercase}h1{margin:22px auto 0;color:var(--red);font-size:clamp(4.35rem,11.5vw,9.4rem);line-height:.78;letter-spacing:-.095em;max-width:880px}.hero h2,h1{font-weight:1000}.hero h2{max-width:780px;margin:28px auto 0;font-size:clamp(2rem,4vw,3.25rem);line-height:1.02;letter-spacing:-.055em}.cta{display:inline-flex;align-items:center;justify-content:center;min-height:56px;min-width:280px;margin-top:34px;border-radius:999px;border:1px solid var(--red-dark);background:var(--red);color:white;text-decoration:none;padding:0 30px;box-shadow:0 24px 70px rgba(214,42,32,.22);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11px;font-weight:1000;letter-spacing:.18em;text-transform:uppercase;transition:transform .18s ease,background .18s ease}.cta:hover{transform:translateY(-2px);background:#bd211a}.section{padding:76px 24px}.section-inner{width:min(1120px,100%);margin:0 auto}.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:44px;align-items:start}.big-copy{font-size:clamp(1.35rem,2.6vw,2rem);line-height:1.42;letter-spacing:-.035em;font-weight:720;color:rgba(11,11,11,.78)}.section h2{margin:16px 0 0;max-width:900px;font-size:clamp(3rem,7vw,5.4rem);line-height:.88;letter-spacing:-.075em;font-weight:1000}.grid{display:grid;gap:14px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.card{border:1px solid var(--line);background:rgba(255,255,255,.7);border-radius:22px;padding:20px;color:rgba(11,11,11,.72);line-height:1.55}.bullet{display:flex;gap:12px}.bullet:before{content:"";width:7px;height:7px;margin-top:10px;border-radius:999px;background:var(--red);box-shadow:0 0 14px rgba(214,42,32,.55);flex:none}.dark{background:var(--ink);color:white}.dark .eyebrow{color:var(--red)}.dark h2{color:var(--paper)}.dark .card{border-color:rgba(255,255,255,.1);background:rgba(255,255,255,.055);color:rgba(255,255,255,.74)}.panel{border-radius:30px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.045);padding:28px}.apply{padding:86px 24px;background:var(--ink);color:white}.apply-box{width:min(1120px,100%);margin:0 auto;display:grid;grid-template-columns:.78fr 1.22fr;overflow:hidden;border-radius:34px;border:1px solid rgba(255,255,255,.12);background:var(--charcoal);box-shadow:0 34px 120px rgba(0,0,0,.35)}.apply-copy{padding:42px;border-right:1px solid rgba(255,255,255,.1);background:radial-gradient(circle at 20% 0,rgba(214,42,32,.24),transparent 42%),radial-gradient(circle at 88% 18%,rgba(14,92,116,.2),transparent 34%)}.form-wrap{padding:36px}.form{display:grid;gap:18px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}label{display:grid;gap:8px}.label{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:10px;font-weight:900;letter-spacing:.22em;text-transform:uppercase;color:rgba(255,255,255,.58)}.required{color:var(--red)}input,select,textarea{width:100%;min-height:48px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(0,0,0,.42);color:white;padding:12px 14px;outline:none}textarea{min-height:112px;resize:vertical}input:focus,select:focus,textarea:focus{border-color:rgba(214,42,32,.8);box-shadow:0 0 0 3px rgba(14,92,116,.28)}.submit{min-height:56px;border:1px solid var(--red-dark);border-radius:999px;background:var(--red);color:white;cursor:pointer;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11px;font-weight:1000;letter-spacing:.18em;text-transform:uppercase}.submit:disabled{opacity:.64;cursor:wait}.notice{border-radius:18px;border:1px solid rgba(255,255,255,.12);background:rgba(0,0,0,.28);padding:14px 16px;color:rgba(255,255,255,.72);line-height:1.55}.error{border-color:rgba(214,42,32,.65);color:#fff}.footer{padding:28px 24px;border-top:1px solid var(--line);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:10px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:rgba(11,11,11,.42)}.booking-page{min-height:100svh;background:radial-gradient(circle at 18% 0,rgba(75,107,255,.24),transparent 31%),linear-gradient(180deg,#151515,#08090D 48%,#07080C);color:#e3e3e3;padding:24px;display:grid;place-items:center}.booking-shell{width:min(1220px,100%);display:grid;grid-template-columns:.72fr 1.28fr;gap:28px;align-items:center}.booking-shell h1{color:#edece7;font-family:Georgia,serif;text-transform:none;letter-spacing:-.06em;font-size:clamp(4rem,7vw,7rem)}.booking-panel{border:1px solid rgba(227,227,227,.12);border-radius:34px;background:rgba(21,21,21,.86);padding:28px;box-shadow:0 34px 120px rgba(0,0,0,.5)}.slots{display:grid;gap:12px;margin:16px 0;max-height:320px;overflow:auto;padding-right:6px}.slot-day{color:rgba(227,227,227,.72);font-weight:900;margin:10px 0 2px}.slot-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.slot{min-height:42px;border-radius:12px;border:1px solid rgba(227,227,227,.12);background:rgba(8,9,13,.64);color:#edece7;cursor:pointer}.slot.selected{border-color:var(--red);background:var(--red);color:white}.check{display:flex;align-items:flex-start;gap:10px;color:rgba(255,255,255,.72);line-height:1.45}.check input{width:18px;min-height:18px;margin-top:2px}@media (max-width:900px){.hero{display:flex;flex-direction:column}.hero-copy{order:1;min-height:100svh;padding:110px 20px 52px}.hero-art{order:2;min-height:54svh}h1{font-size:clamp(4.2rem,22vw,7rem)}.hero h2{font-size:clamp(1.8rem,8vw,3rem)}.apply-box,.booking-shell,.split{grid-template-columns:1fr}.apply-copy{border-right:0;border-bottom:1px solid rgba(255,255,255,.1)}.form-grid,.grid.two,.slot-buttons{grid-template-columns:1fr}.section{padding:58px 20px}.apply-copy,.booking-panel,.form-wrap{padding:24px}}