/* Partner homepage: the spot ladder and the reservation form. Extends styles.css. */
.lad-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:stretch}
.lad{border:1px solid var(--line2);border-radius:22px;padding:24px;background:linear-gradient(180deg,#0f1115,#0a0b0e);display:flex;flex-direction:column;min-width:0}
.lad-pick{border-color:#ff800088;background:radial-gradient(90% 60% at 50% 0%,#ff800018,transparent 70%),linear-gradient(180deg,#0f1115,#0a0b0e)}
.lad-top{display:flex;justify-content:space-between;gap:10px}
.lad-top .mono{font-size:9.5px;color:var(--muted)}
.lad-pick .lad-top .mono{color:var(--pa)}
.lad h3{font-size:clamp(20px,1.7vw,26px);line-height:1;margin:20px 0 10px}
.lad-price{display:block;font-size:clamp(28px,2.6vw,40px);line-height:1;color:var(--ink);margin-bottom:12px}
.lad-pick .lad-price{color:var(--pa)}
.lad-line{margin:0 0 16px;color:var(--ink);font-size:15px;line-height:1.45;font-weight:500}
.lad ul,.lad-chair ul{list-style:none;margin:0 0 22px;padding:0;display:flex;flex-direction:column;gap:8px}
.lad li,.lad-chair li{position:relative;padding-left:16px;color:var(--ink2);font-size:14px;line-height:1.45}
.lad li::before,.lad-chair li::before{content:'';position:absolute;left:0;top:.62em;width:7px;height:2px;background:var(--pa)}
.lad-btn{margin-top:auto;justify-content:space-between;height:48px;padding:0 18px;font-size:13px}
.lad-chair{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr) auto;gap:20px 36px;align-items:center;margin-top:12px;padding:26px 28px;border:1px solid #ff800066;border-radius:22px;background:radial-gradient(60% 120% at 0% 0%,#ff800022,transparent 70%),linear-gradient(180deg,#101216,#0a0b0e)}
.lad-chair .mono{font-size:9.5px;color:var(--pa)}
.lad-chair h3{font-size:clamp(24px,2.4vw,36px);line-height:1;margin:12px 0 8px}
.lad-chair .lad-line{margin:0}
.lad-chair ul{margin:0}
.lad-chair .lad-btn{margin:0}

.rsv{margin-top:16px;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);gap:24px 40px;padding:clamp(22px,3vw,36px);border:1px solid var(--line2);border-radius:24px;background:#0a0b0ecc;scroll-margin-top:90px}
.rsv-head .mono{color:var(--pa);font-size:10px}
.rsv-head h3{font-size:clamp(24px,2.4vw,36px);line-height:1.02;margin:12px 0 12px}
.rsv-head p{margin:0;color:var(--ink2);font-size:15px;line-height:1.55;max-width:380px}
.rsv-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;min-width:0}
.rsv-form .full{grid-column:1/-1}
.rsv-form label,.rsv-contact legend{display:flex;flex-direction:column;gap:7px;color:var(--ink2);font-size:13.5px;font-weight:500;min-width:0}
.rsv-form label[hidden]{display:none}
.rsv-form small{color:var(--muted);font-weight:400}
.rsv-form input:not([type=radio]),.rsv-form select,.rsv-form textarea{width:100%;font:inherit;font-size:16px;color:var(--ink);background:#060709;border:1px solid var(--line2);border-radius:10px;padding:12px 13px}
.rsv-form textarea{min-height:96px;resize:vertical}
.rsv-form input:focus,.rsv-form select:focus,.rsv-form textarea:focus{outline:2px solid var(--pa);outline-offset:1px;border-color:transparent}
.rsv-contact{border:0;margin:0;padding:0;min-width:0}
.rsv-contact legend{padding:0;margin-bottom:8px}
.rsv-pills{display:flex;flex-wrap:wrap;gap:8px}
.rsv-pill{position:relative;flex-direction:row!important}
.rsv-pill input{position:absolute;opacity:0;width:1px;height:1px}
.rsv-pill span{padding:9px 14px;border-radius:999px;border:1px solid var(--line2);color:var(--ink2);font-size:13.5px;font-weight:600;background:#ffffff04;cursor:pointer;transition:border-color .2s,color .2s,background .2s}
.rsv-pill input:checked+span{color:#060709;background:var(--pa);border-color:var(--pa)}
.rsv-pill input:focus-visible+span{outline:2px solid var(--pa);outline-offset:2px}
.rsv-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.rsv-err{margin:0;color:#ff9a8a;font-size:14px}
.rsv-foot{display:flex;flex-wrap:wrap;align-items:center;gap:14px}
.rsv-foot p{margin:0;color:var(--muted);font-size:13px}
.rsv-form button[disabled]{opacity:.6;cursor:wait}
.rsv-done{grid-column:2;min-width:0}
.rsv-done:focus{outline:none}
.rsv-done .mono{color:var(--pa);font-size:10px}
.rsv-done h3{font-size:clamp(26px,2.6vw,40px);line-height:1.02;margin:12px 0 14px}
.rsv-done p{color:var(--ink2);font-size:16px;line-height:1.6;margin:0 0 14px;max-width:620px}
.rsv-done p:first-of-type{color:var(--ink);font-weight:500}
.rsv-sign{font-family:var(--display);font-weight:800;font-stretch:115%;font-size:20px;color:var(--ink)!important}
.rsv-sign::before{content:'— '}
.pw-lad{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:1100px){.lad-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lad-chair{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.lad-chair .lad-btn{grid-column:1/-1;justify-self:start}}
@media (max-width:900px){.rsv{grid-template-columns:minmax(0,1fr)}.rsv-done{grid-column:auto}}
@media (max-width:640px){
  .lad-grid,.lad-chair{grid-template-columns:minmax(0,1fr)}
  .lad-chair .lad-btn,.lad-btn{width:100%}
  .rsv-form{grid-template-columns:minmax(0,1fr)}
  .rsv-foot .btn{width:100%;justify-content:space-between}
}

/* The driver: test film, story and Phil Howard in one section */
.drv-q{margin:0 0 clamp(32px,4vw,56px);max-width:15em}
.drv-grid{display:grid;grid-template-columns:minmax(0,380px) minmax(0,1fr);gap:clamp(32px,5vw,80px);align-items:start}
.drv-short{margin:0;min-width:0}
.drv-frame{position:relative;aspect-ratio:9/16;border:1px solid var(--line2);border-radius:20px;overflow:hidden;background:#000 center/cover no-repeat}
.drv-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block}
.drv-frame>a{position:absolute;inset:0}
.drv-sound{position:absolute;left:12px;bottom:12px;z-index:2;padding:9px 14px;border-radius:999px;border:1px solid #ffffff40;background:#060709cc;color:var(--ink);font:600 13px/1 var(--body,inherit);cursor:pointer;backdrop-filter:blur(8px)}
.drv-sound:hover{border-color:var(--pa)}
.drv-short figcaption{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;color:var(--muted)}
.drv-short figcaption .mono{font-size:9.5px}
.drv-copy{min-width:0;scroll-margin-top:100px}
.drv-copy>p{color:var(--ink2);font-size:clamp(16px,1.25vw,18px);line-height:1.65;margin:0 0 16px;max-width:640px}
.drv-copy>p.drv-lead{color:var(--ink);font-size:clamp(19px,1.6vw,23px);line-height:1.45;font-weight:500}
.drv-film{margin:24px 0 0;border:1px solid var(--line2);border-radius:20px;overflow:hidden;background:linear-gradient(180deg,#0f1115,#0a0b0e);max-width:560px}
.drv-film video{display:block;width:100%;aspect-ratio:16/9;background:#000;object-fit:cover}
.drv-points{display:flex;flex-direction:column;justify-content:center;gap:12px;padding:16px 20px;min-width:0}
.drv-points ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.drv-points li{position:relative;padding-left:14px;color:var(--ink);font-size:14.5px;line-height:1.38;font-weight:500}
.drv-points li::before{content:'';position:absolute;left:0;top:.62em;width:7px;height:2px;background:var(--pa)}
.drv-points figcaption{color:var(--muted);font-size:12px;line-height:1.4}
@media (min-width:1280px){.drv-film{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);max-width:860px}.drv-film video{height:100%}}
.drv-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:clamp(36px,5vw,60px);border-top:1px solid var(--line2);border-bottom:1px solid var(--line2)}
.drv-stats div{padding:22px 18px 20px 0;display:flex;flex-direction:column;gap:8px;min-width:0}
.drv-stats div+div{padding-left:20px;border-left:1px solid var(--line)}
.drv-stats strong{font-size:clamp(28px,3vw,48px);line-height:1}
.drv-stats strong em{font-style:normal;color:var(--pa)}
.drv-stats span{color:var(--muted);font-size:13.5px;line-height:1.4}
.drv-follow{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;margin-top:20px}
.drv-follow>.mono{color:var(--ink2);font-size:10.5px}
.drv-follow .socials{display:flex;gap:10px}
@media (max-width:900px){
  .drv-grid{grid-template-columns:minmax(0,1fr)}
  .drv-short{max-width:340px;width:100%;margin-inline:auto}
  .drv-stats{grid-template-columns:1fr 1fr}
  .drv-stats div:nth-child(3){padding-left:0;border-left:0}
  .drv-stats div:nth-child(n+3){border-top:1px solid var(--line)}
}
@media (max-width:1100px){.lad-grid.pw-lad{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:860px){.lad-grid.pw-lad{grid-template-columns:minmax(0,1fr)}}
