:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#fff;background:#0a0a0a;line-height:1.5;font-weight:400}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:radial-gradient(circle at top left,rgba(255,255,255,.08),transparent 30%),linear-gradient(180deg,#0a0a0a,#111);color:#fff}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}.site-shell{min-height:100vh}.container{width:min(1120px,calc(100% - 2rem));margin:0 auto}.hero{border-bottom:1px solid rgba(255,255,255,.1);padding:4rem 0 3rem}.hero-grid,.split-grid,.booking-grid,.cta-panel,.mini-card-grid,.form-grid,.grid{display:grid;gap:1.5rem}.hero-grid{grid-template-columns:1.1fr .9fr;align-items:center;min-height:70vh}.hero h1,.section h2{margin:0;letter-spacing:-.04em;line-height:.98}.hero h1{font-size:clamp(3rem,7vw,5.25rem);max-width:12ch}.section h2{font-size:clamp(2rem,4vw,3rem);max-width:16ch}.hero-copy,.section-body,.card-copy,.clean-list,.contact-block,.role,.muted{color:#ffffffb8}.hero-copy{max-width:40rem;font-size:1.05rem;margin:1.25rem 0 0}.section{padding:4.5rem 0}.section-alt{background:#ffffff0a;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08)}.section-heading{max-width:42rem;margin-bottom:2rem}.eyebrow{margin:0 0 .75rem;text-transform:uppercase;letter-spacing:.24em;font-size:.76rem;color:#ffffff73}.section-body{margin-top:1rem;max-width:46rem;font-size:1rem}.pill{display:inline-flex;align-items:center;padding:.5rem .9rem;border-radius:999px;border:1px solid rgba(255,255,255,.14);color:#fffc;font-size:.9rem;margin-bottom:1rem}.card,.cta-panel{border-radius:1.6rem;border:1px solid rgba(255,255,255,.1);background:#ffffff0d;padding:1.5rem;box-shadow:0 12px 32px #0000002e}.glow-card{background:linear-gradient(180deg,#ffffff17,#ffffff0a)}.dark-card{background:#080808d1}.grid-3{grid-template-columns:repeat(3,1fr)}.mini-card-grid{grid-template-columns:repeat(2,1fr)}.split-grid{grid-template-columns:1.2fr .8fr;align-items:start}.booking-grid{grid-template-columns:.9fr 1.1fr;align-items:start}.button-row,.tag-row,.button-stack{display:flex;flex-wrap:wrap;gap:.85rem}.button-stack{flex-direction:column;justify-content:center}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.8rem 1.15rem;border-radius:1rem;font-weight:600;border:1px solid rgba(255,255,255,.14);transition:transform .14s ease,background .14s ease,border-color .14s ease;cursor:pointer}.button:hover{transform:translateY(-1px)}.button-solid{background:#fff;color:#111}.button-outline{background:transparent;color:#ffffffeb}.placeholder-box{min-height:10rem;border-radius:1rem;border:1px dashed rgba(255,255,255,.14);display:grid;place-items:center;color:#ffffff47;background:#ffffff08;margin-bottom:1rem}.placeholder-box.tall{min-height:13rem}.role{margin:.4rem 0 1rem;text-transform:uppercase;letter-spacing:.18em;font-size:.75rem}.tag{display:inline-flex;border:1px solid rgba(255,255,255,.14);border-radius:999px;padding:.4rem .75rem;color:#ffffffd6;font-size:.9rem}.price{font-size:1.8rem;font-weight:700;margin:.25rem 0 1rem}.muted{color:#ffffff85}.clean-list{margin:1rem 0 0;padding-left:1.1rem}.clean-list li{margin-bottom:.6rem}.contact-block p{margin:.45rem 0}.form-card{padding:1.5rem}.form-grid{grid-template-columns:repeat(2,1fr)}label{display:block;margin-bottom:.55rem;color:#fff9;font-size:.92rem}input,textarea{width:100%;border:1px solid rgba(255,255,255,.1);background:#0b0b0b;color:#fff;border-radius:1rem;padding:.95rem 1rem;outline:none;transition:border-color .14s ease}input::placeholder,textarea::placeholder{color:#ffffff40}input:focus,textarea:focus{border-color:#ffffff4d}.cta-panel{display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:2rem;background:linear-gradient(145deg,#ffffff1a,#ffffff0a)}h3{margin:0;font-size:1.25rem}p{margin-top:0}@media (max-width: 960px){.hero-grid,.grid-3,.split-grid,.booking-grid,.cta-panel,.mini-card-grid,.form-grid{grid-template-columns:1fr}.hero{padding-top:3rem}.button-stack{flex-direction:row}.container{width:min(1120px,calc(100% - 1.25rem))}}
