/* Loaded after style.css: hover effects, footer pattern, booking page. Safe to keep your own edits in style.css. */

/* practice area blocks: highlight + lift on hover */
.pa-item{display:block;padding:26px;margin:-26px;border-radius:var(--radius);color:var(--ink)}
.pa-item.reveal{transition:opacity .7s,transform .35s ease,background-color .35s ease,color .35s ease,box-shadow .35s ease}
.pa-item:hover,.pa-item:focus-visible{background:var(--maroon);color:var(--blush);transform:translateY(-8px) scale(1.02);box-shadow:0 18px 40px rgba(100,36,45,.3);outline:0}
.pa-item:hover .num,.pa-item:focus-visible .num{color:var(--gold)}
.pa-readmore{display:inline-block;margin-top:10px;font-size:12px;font-weight:600;color:var(--gold);text-decoration:underline;text-underline-offset:3px}
.pa-page-grid .pa-item p+p{margin-top:12px}
.pa-page-grid .pa-item{scroll-margin-top:150px}
@media(max-width:560px){.pa-item{padding:18px;margin:-18px}}

/* footer: maroon background pattern */
.site-footer{background:#64242D url('../img/pattern-maroon.svg') repeat;background-size:80px 80px}

/* header booking button */
.nav-cta{white-space:nowrap}

/* booking page */
.book-wrap{padding:90px 0 100px}
.book-grid{display:grid;grid-template-columns:1fr 1.35fr;gap:70px;align-items:start}
.book-info p{font-size:15px;max-width:420px;margin-bottom:34px}
.book-info h3{font-size:18px;margin-bottom:12px}
.hours{max-width:360px;margin-bottom:26px}
.hours li{display:flex;justify-content:space-between;gap:20px;padding:10px 0;border-bottom:1px solid rgba(20,45,55,.15);font-size:14px}
.hours li span:first-child{font-weight:600}
.hours-note a{text-decoration:underline;text-underline-offset:3px;font-weight:600}
.book-card{border:1px solid rgba(20,45,55,.2);border-radius:var(--radius);padding:44px}
.book-card select{width:100%;font-family:var(--font);font-size:15px;padding:14px 16px;background:#F3DFD0;color:var(--ink);border:1px solid #142D37;border-radius:var(--radius);outline:0}
.book-card input[type=date]{color:var(--ink)}
.book-card select:focus,.book-card input:focus,.book-card textarea:focus{border-color:var(--gold)}
.book-card .field input,.book-card .field select,.book-card .field textarea{display:block}
.book-card .btn{margin-top:6px}
.slots{display:flex;flex-wrap:wrap;gap:10px}
.slots-hint{font-size:14px;opacity:.75}
.slot{position:relative;cursor:pointer;margin:0}
.slot input{position:absolute;opacity:0;width:1px;height:1px}
.slot span{display:block;padding:10px 16px;border:1px solid #142D37;border-radius:var(--radius);font-size:14px;font-weight:500;transition:.2s}
.slot:hover span{border-color:var(--gold)}
.slot input:checked+span{background:var(--maroon);color:var(--blush);border-color:var(--maroon)}
.slot input:focus-visible+span{outline:2px solid var(--gold);outline-offset:2px}
.book-done h3{font-size:24px;margin-bottom:16px}
.book-done p{margin-bottom:18px;font-size:15px}
@media(max-width:900px){.book-grid{grid-template-columns:1fr;gap:40px}.book-card{padding:28px 22px}}

/* mobile menu button: three even bars (overrides the absolute-positioned version) */
.nav-toggle{display:none;flex-direction:column;justify-content:space-between;width:34px;height:24px;padding:0}
.nav-toggle span{position:static;display:block;width:100%;height:3px;border-radius:2px;background:#F3DFD0}
@media(max-width:860px){.nav-toggle{display:flex}}
