/*
Theme Name: Love Shack Bespoke
Description: Bespoke performance-led website for Love Shack Singing Waiters.
Version: 0.1.0
*/
:root{--ink:#17121a;--cream:#fff8f1;--pink:#f42d86;--gold:#e8b76c}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Georgia,serif}a{color:inherit}.topbar{background:var(--ink);color:white;padding:18px clamp(20px,5vw,80px);display:flex;justify-content:space-between;align-items:center;gap:20px}.brand{font-weight:900;font-size:1.3rem;text-decoration:none;letter-spacing:.04em}.site-logo{display:block;width:auto;max-width:min(300px,50vw);max-height:85px;object-fit:contain}.topbar nav{display:flex;gap:25px;align-items:center;font:600 13px system-ui,sans-serif;text-transform:uppercase;letter-spacing:.08em}.topbar nav a{text-decoration:none}.pill,.button{background:var(--pink);color:white!important;padding:15px 23px;text-decoration:none;font:800 13px system-ui,sans-serif;letter-spacing:.09em;text-transform:uppercase;display:inline-block;border-radius:40px}.hero{min-height:78vh;display:flex;align-items:center;padding:90px clamp(22px,8vw,130px);background:radial-gradient(ellipse at 80% 25%,#a92165 0,transparent 45%),linear-gradient(135deg,#25101e,#100f17);color:white;position:relative;overflow:hidden}.hero:after{content:'♪';font-size:min(55vw,650px);position:absolute;right:-5%;top:-18%;opacity:.07;transform:rotate(-12deg)}.hero-content{position:relative;z-index:1;max-width:920px}.eyebrow{font:700 13px system-ui,sans-serif;text-transform:uppercase;letter-spacing:.24em;color:var(--gold)}h1{font-size:clamp(4rem,10vw,9rem);line-height:.92;letter-spacing:-.065em;margin:25px 0}h1 em{color:#ff72aa;font-weight:400}h2{font-size:clamp(2.4rem,5vw,5rem);line-height:1.02;letter-spacing:-.045em;margin:0 0 25px}.lead{font-size:clamp(1.2rem,2vw,1.65rem);line-height:1.5;max-width:660px}.section{padding:100px clamp(22px,8vw,130px)}.section.dark{background:#1b1520;color:white}.section.pink{background:#f7dce6}.kicker{font:700 12px system-ui,sans-serif;letter-spacing:.22em;text-transform:uppercase;color:#b12769}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:45px}.tile{padding:35px;background:#fff;border:1px solid #eadce0;min-height:210px}.tile h3{font-size:1.8rem}.video{aspect-ratio:16/9;background:#342534;display:grid;place-items:center;margin-top:35px}.video a{color:white;font:700 1.2rem system-ui,sans-serif}.cta{background:var(--pink);color:white;text-align:center}.cta .button{background:#17121a}.footer{background:#120f17;color:#fff;padding:35px clamp(22px,8vw,130px);display:flex;justify-content:space-between;gap:20px;font:14px system-ui,sans-serif}.footer a{color:#fff}.booking-form{max-width:720px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:30px 0}.booking-field{display:flex;flex-direction:column;gap:8px}.booking-field label{font-weight:700}.booking-field input{width:100%;min-width:0;box-sizing:border-box;padding:15px 16px;border:1px solid #a59ba3;border-radius:7px;background:#fff;color:#181018;font:inherit}.booking-field input:focus{outline:3px solid #ff72aa;outline-offset:2px}.booking-form button{border:0;cursor:pointer;justify-self:start}.booking-privacy{grid-column:1/-1;font-size:.85rem;opacity:.8;margin:0}.booking-trap{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}.form-message{max-width:720px;padding:18px;border-radius:8px;margin:22px 0}.form-success{background:#e0f6e8;color:#14532d}.form-error{background:#ffe3e8;color:#83152d}@media(max-width:650px){.booking-form{grid-template-columns:1fr}}.media-mentions{background:#171016}.media-tile{display:flex;flex-direction:column;align-items:flex-start}.media-tile .media-link{display:inline-block;margin-top:auto;padding-top:24px;color:#ff72aa;font-weight:700;text-decoration:none}.media-tile .media-link:hover{text-decoration:underline}.media-note{font-size:.8rem;opacity:.65;margin-top:24px}.reel-controls{display:flex;justify-content:flex-end;gap:12px;margin:25px 0}.reel-controls button{background:#f42d86;color:white;border:0;border-radius:50%;height:44px;width:44px;font-size:22px;cursor:pointer}.reel-track{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(260px,calc((100% - 40px)/3));gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;padding:5px 0 20px;scrollbar-width:thin}.reel-card{scroll-snap-align:start;min-width:0}.reel-card iframe{display:block;width:100%;height:480px;border:0;background:#fff;border-radius:12px}.reel-card a{display:block;margin-top:12px;color:white;font:600 13px system-ui,sans-serif}@media(max-width:720px){.reel-track{grid-auto-columns:minmax(260px,82%)}.reel-card iframe{height:480px}}@media(max-width:720px){.topbar{flex-wrap:wrap}.topbar nav{flex-wrap:wrap;gap:13px}.grid3{grid-template-columns:1fr}.section{padding-top:70px;padding-bottom:70px}.hero{min-height:70vh}.footer{flex-direction:column}}