/* FX1 Entertainment. Plain CSS, mobile first. Tokens from the Figma foundations board. */
@font-face{font-family:"Barlow Condensed";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/barlow-condensed-700.08e3ed2e4d22.woff2") format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:100 900;font-display:swap;src:url("../fonts/inter-var.5a2dc5880d4a.woff2") format("woff2")}

:root{
  /* Brand */
  --fx-blue:#018DFC; --fx-orange:#FE6601; --fx-dark-grey:#424345; --fx-near-black:#141517;
  --fx-off-white:#F7F7F5; --fx-mid-grey:#8A8D91; --fx-white:#FFFFFF;
  /* Day theme (catalogue) */
  --surface-page:var(--fx-off-white); --surface-raised:var(--fx-white); --surface-inverse:var(--fx-near-black);
  --text-primary:var(--fx-near-black); --text-secondary:var(--fx-dark-grey); --text-brand-large:var(--fx-blue);
  --text-inverse:var(--fx-off-white);
  --border-hairline:#E2E2DF; --border-control:var(--fx-mid-grey);
  --action-bg:var(--fx-orange); --action-text:var(--fx-near-black); --action-bg-hover:#FF7F2A;
  --focus-ring:var(--fx-blue); --state-error:#C42B1C; --placeholder-bg:#ECECE8;
  /* Type */
  --font-display:"Barlow Condensed","Arial Narrow",system-ui,sans-serif;
  --font-body:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --fs-display-xl:clamp(2.5rem,1.7rem + 3.2vw,5rem); --fs-display-l:clamp(2.125rem,1.5rem + 2.6vw,4rem);
  --fs-h1:clamp(2rem,1.6rem + 1.6vw,3.5rem); --fs-h2:clamp(1.75rem,1.5rem + .9vw,2.75rem);
  --fs-h3:clamp(1.25rem,1.15rem + .4vw,1.5rem); --fs-body-l:1.125rem; --fs-body:1rem; --fs-small:.875rem;
  /* Space and layout */
  --s1:.25rem;--s2:.5rem;--s3:.75rem;--s4:1rem;--s5:1.5rem;--s6:2rem;--s7:3rem;--s8:4rem;--s9:6rem;
  --max:1240px; --gutter:clamp(1rem,.6rem + 1.6vw,2rem); --radius:4px; --radius-l:8px;
  --sticky-h:64px;
}
.theme-night,.starts-night .site-header{
  --surface-page:var(--fx-near-black); --surface-raised:#1E1F22; --surface-inverse:var(--fx-off-white);
  --text-primary:var(--fx-off-white); --text-secondary:#B4B6B9; --text-inverse:var(--fx-near-black);
  --border-hairline:#34363A; --border-control:var(--fx-mid-grey); --placeholder-bg:#232428;
  --state-error:#FF8A80; /* lighter red on Night */
}
.theme-raised{--surface-page:var(--fx-white)}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:5rem}
body{margin:0;font-family:var(--font-body);font-size:var(--fs-body);line-height:1.55;color:var(--text-primary);background:var(--fx-off-white);text-rendering:optimizeLegibility;padding-bottom:calc(var(--sticky-h) + env(safe-area-inset-bottom))}
@media (min-width:960px){body{padding-bottom:0}}
img,video,svg{max-width:100%;height:auto;display:block}
.icon{display:inline-block;flex:none;vertical-align:middle}
h1,h2,h3,h4{font-family:var(--font-display);font-weight:700;line-height:1.05;margin:0 0 var(--s4);letter-spacing:-.005em;text-wrap:balance}
p{margin:0 0 var(--s4);max-width:70ch}
a{color:inherit;text-underline-offset:.18em;text-decoration-thickness:1px}
a:hover{text-decoration-thickness:2px}
:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px;border-radius:2px}
[x-cloak]{display:none!important}
.no-js .js-only{display:none!important}
.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip-link{position:absolute;left:var(--s4);top:-100px;z-index:100;background:var(--fx-near-black);color:var(--fx-off-white);padding:var(--s3) var(--s4)}
.skip-link:focus{top:var(--s4)}
.tnum{font-variant-numeric:tabular-nums}

.display{font-size:var(--fs-display-xl);line-height:1}
.display-l{font-size:var(--fs-display-l);line-height:1.02}
.display-m{font-size:var(--fs-h1);font-family:var(--font-display);font-weight:700;line-height:1.05}
.h1{font-size:var(--fs-h1)} .h2{font-size:var(--fs-h2)} .h3{font-size:var(--fs-h3);line-height:1.15} .h4{font-size:1.125rem}
.lead{font-size:var(--fs-body-l);color:var(--text-secondary)}
.small{font-size:var(--fs-small)} .muted{color:var(--text-secondary)}
.eyebrow{font-family:var(--font-display);font-size:1rem;letter-spacing:.02em;margin-bottom:var(--s3);color:var(--text-secondary)}
.theme-night .eyebrow-accent{color:var(--fx-orange)} /* orange text only on near black */
.theme-day .eyebrow-accent,.theme-raised .eyebrow-accent{color:var(--text-primary)}
.prose a{color:inherit}
.prose ul,.prose ol{padding-left:1.25rem}

.wrap{width:100%;max-width:var(--max);margin-inline:auto;padding-inline:var(--gutter)}
.narrow{max-width:820px}
.center{text-align:center;justify-content:center}
.center p{margin-inline:auto}
.section{background:var(--surface-page);color:var(--text-primary);padding-block:clamp(3rem,2rem + 4vw,6rem)}
.section-head{margin-bottom:var(--s6)}
.row-head{display:flex;flex-wrap:wrap;gap:var(--s4);justify-content:space-between;align-items:flex-end}
.split{display:grid;gap:var(--s6)}
@media (min-width:960px){.split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:var(--s8)}.split.img-left>:first-child{order:2}}

/* Buttons: orange bg with near black text, never white text on orange */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s2);min-height:48px;padding:.75rem 1.25rem;border-radius:var(--radius);border:2px solid transparent;font:600 1rem/1.2 var(--font-body);text-decoration:none;cursor:pointer;transition:background-color .15s,color .15s,border-color .15s}
.btn-primary{background:var(--action-bg);color:var(--action-text)}
.btn-primary:hover{background:var(--action-bg-hover)}
.btn-primary:active{background:#E05A00}
.btn-dark{background:var(--fx-near-black);color:var(--fx-off-white)}
.btn-dark:hover{background:var(--fx-dark-grey)}
.btn-light{background:var(--fx-off-white);color:var(--fx-near-black)}
.btn-light:hover{background:var(--fx-white)}
.btn-outline{background:transparent;color:var(--text-primary);border-color:currentColor}
.btn-outline:hover{background:color-mix(in srgb,var(--text-primary) 8%,transparent)}
.btn-outline-light{background:transparent;color:var(--fx-off-white);border-color:var(--fx-off-white)}
.btn-block{width:100%}
.btn-row{display:flex;flex-wrap:wrap;gap:var(--s3);align-items:center;margin-block:var(--s5)}
.text-link{background:none;border:0;padding:var(--s2) 0;font:inherit;font-size:var(--fs-small);font-weight:600;color:inherit;text-decoration:underline;cursor:pointer;min-height:44px;display:inline-flex;align-items:center}
.round-btn{width:44px;height:44px;border-radius:50%;border:0;background:var(--fx-near-black);color:var(--fx-off-white);display:inline-grid;place-items:center;cursor:pointer}

/* Header */
.site-header{position:sticky;top:0;z-index:50;background:var(--fx-white);color:var(--fx-near-black);border-bottom:1px solid #E2E2DF}
.starts-night .site-header{background:var(--fx-near-black);color:var(--fx-off-white);border-color:#2A2B2F}
.starts-night .site-header .logo img{content:url("../img/logo-light-on-dark.f2df6a4f5e95.svg")}
.header-row{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);min-height:64px}
.logo{flex:none}
.logo img{height:40px;width:64px}
.menu-btn{display:inline-flex;align-items:center;gap:var(--s2);min-height:44px;padding:0 var(--s3);background:none;border:0;font:600 1rem var(--font-body);color:inherit;cursor:pointer}
.no-js .menu-btn{display:none}
.site-nav ul{list-style:none;margin:0;padding:0}
.site-nav a{text-decoration:none}
.site-nav ul a{display:flex;align-items:center;min-height:48px;font-weight:500}
.site-nav ul a[aria-current]{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:.4em;text-decoration-color:var(--fx-orange)}
.header-ctas{display:flex;flex-wrap:wrap;gap:var(--s3);align-items:center}
.phone-link{display:inline-flex;gap:var(--s2);align-items:center;font-weight:600;min-height:44px}
.js .site-nav{display:none}
.js .site-nav.is-open{display:block;position:absolute;left:0;right:0;top:100%;background:inherit;padding:var(--s4) var(--gutter) var(--s6);border-bottom:1px solid #E2E2DF;max-height:calc(100vh - 64px);overflow:auto}
.starts-night .js .site-nav.is-open,.starts-night .site-nav.is-open{background:var(--fx-near-black)}
.no-js .site-nav{width:100%}
.no-js .header-row{flex-wrap:wrap}
@media (min-width:1200px){
  .menu-btn{display:none}
  .js .site-nav,.site-nav{display:flex!important;position:static!important;padding:0!important;border:0!important;align-items:center;gap:var(--s6);flex:1;justify-content:space-between;margin-left:var(--s7)}
  .site-nav ul{display:flex;gap:var(--s5)}
  .site-nav ul a,.header-ctas .btn,.phone-link{white-space:nowrap}
  .header-ctas{flex-wrap:nowrap}
  .site-nav ul a{font-size:.9375rem}
}

/* Sticky mobile CTA bar */
.sticky-cta{position:fixed;left:0;right:0;bottom:0;z-index:60;display:grid;grid-template-columns:1fr 1fr 1.3fr;background:var(--fx-near-black);padding-bottom:env(safe-area-inset-bottom);border-top:1px solid #2A2B2F}
.sticky-cta a{display:flex;align-items:center;justify-content:center;gap:var(--s2);min-height:var(--sticky-h);color:var(--fx-off-white);text-decoration:none;font-weight:600}
.sticky-cta a.is-primary{background:var(--fx-orange);color:var(--fx-near-black)}
.sticky-cta a:focus-visible{outline-offset:-5px}
@media (min-width:960px){.sticky-cta{display:none}}

/* Hero with lit doorway clip */
.hero{padding-block:var(--s6) var(--s8)}
.hero-grid{display:grid;gap:var(--s6)}
.hero-copy,.header-grid>*{min-width:0}
.hero .doorway{order:-1}
@media (min-width:960px){.hero-grid{grid-template-columns:1.1fr .9fr;align-items:center;gap:var(--s8)}.hero .doorway{order:0}.hero{padding-block:var(--s8)}}
.meta-line{display:flex;gap:var(--s2);align-items:center;color:var(--text-secondary);font-size:var(--fs-small)}
.meta-line.big{font-size:1rem;color:var(--text-primary)}
.doorway{position:relative;margin:0;border-radius:var(--radius-l);overflow:hidden;padding:clamp(1rem,3vw,3rem) clamp(1rem,6vw,4.5rem) var(--s4);background:#0d1a26;isolation:isolate}
.doorway-glow{position:absolute;inset:-10%;background-size:cover;background-position:center;filter:blur(36px) brightness(.55) saturate(1.3);z-index:-1}
.doorway-frame{border-top:3px solid var(--fx-orange);max-width:340px;margin-inline:auto;aspect-ratio:9/16;max-height:60vh;background:#000}
.doorway-frame video,.doorway-frame img{width:100%;height:100%;object-fit:cover}
.doorway figcaption{display:flex;align-items:center;justify-content:center;gap:var(--s3);margin-top:var(--s4);color:var(--fx-off-white);font-size:var(--fs-small);min-height:44px}
.sweep{position:relative}
@media (prefers-reduced-motion:no-preference){
  .sweep{background-image:linear-gradient(100deg,transparent 40%,#7FC4FF 50%,transparent 60%),linear-gradient(var(--text-primary),var(--text-primary));background-size:250% 100%,100% 100%;background-repeat:no-repeat;background-position:-20% 0,0 0;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:sweep .9s ease-out .2s 1 both}
  @keyframes sweep{from{background-position:120% 0,0 0}to{background-position:-20% 0,0 0}}
}

/* Page header */
.page-header{padding-block:var(--s6) var(--s7)}
.header-grid{display:grid;gap:var(--s6)}
@media (min-width:960px){.header-grid{grid-template-columns:1.1fr .9fr;align-items:center;gap:var(--s8)}}
.header-img{margin:0}
.header-img img{width:100%;border-radius:var(--radius-l);aspect-ratio:4/3;object-fit:cover}
.header-img figcaption,.framed-still figcaption{font-size:var(--fs-small);color:var(--text-secondary);margin-top:var(--s2)}
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:var(--s2);padding:0;margin:0 0 var(--s4);font-size:var(--fs-small)}
.crumbs li+li::before{content:"/";margin-right:var(--s2);color:var(--text-secondary)}
.crumbs a{display:inline-block;padding-block:var(--s2)}

/* Doors */
.doors{display:grid;gap:var(--s4)}
@media (min-width:768px){.doors{grid-template-columns:repeat(2,1fr)}}
.door{display:flex;flex-direction:column;align-items:flex-start;padding:clamp(1.5rem,4vw,3rem);border-radius:var(--radius-l);text-decoration:none;background:var(--surface-page);color:var(--text-primary);border:1px solid var(--border-hairline);min-height:240px}
.door.theme-night{background:var(--fx-near-black)}
.door.theme-day{background:var(--fx-white)}
.door .btn{margin-top:auto}
.door:hover .btn-primary{background:var(--action-bg-hover)}

/* Event tiles (tall photo panels) */
.event-tiles{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,1fr);gap:var(--s3)}
@media (min-width:960px){.event-tiles{grid-template-columns:repeat(4,1fr);gap:var(--s4)}}
.event-tile{position:relative;display:block;aspect-ratio:5/7;border-radius:var(--radius-l);overflow:hidden;background:#222;color:var(--fx-off-white);text-decoration:none}
.event-tile img{width:100%;height:100%;object-fit:cover;transition:transform .3s}
.event-tile:hover img{transform:scale(1.03)}
.event-tile-text{position:absolute;inset:auto 0 0 0;padding:var(--s6) var(--s4) var(--s4);display:flex;flex-direction:column;gap:var(--s1);background:linear-gradient(transparent,rgba(10,10,12,.92) 45%)}
.event-tile .see{display:inline-flex;gap:var(--s1);align-items:center;font-weight:600;text-decoration:underline}
.note{margin-top:var(--s4)}

/* Services list */
.service-list{list-style:none;padding:0;margin:0;display:grid;gap:0}
.service-item{display:grid;grid-template-columns:auto 1fr;gap:var(--s4);padding-block:var(--s5);border-top:1px solid var(--border-hairline)}
.service-item p{color:var(--text-secondary);margin:0}
.service-item h3{margin-bottom:var(--s2)}
.service-icon,.card-icon{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:var(--radius);background:var(--surface-raised);border:1px solid var(--border-hairline)}
.framed-still{margin:var(--s5) 0 0;max-width:360px}
.framed-still img{border-radius:var(--radius-l);border-top:3px solid var(--fx-orange)}
.framed-still.tall{max-width:380px;margin-inline:auto}

/* Steps */
.steps{list-style:none;padding:0;margin:0;display:grid;gap:var(--s6)}
@media (min-width:768px){.steps{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1100px){.steps{grid-template-columns:repeat(4,1fr)}}
.step-num{display:block;font:700 4rem/1 var(--font-display);color:var(--fx-orange);margin-bottom:var(--s3)}
.theme-day .step-num,.theme-raised .step-num{color:var(--text-primary)}
.step p{color:var(--text-secondary)}
.step-img img{border-radius:var(--radius);margin-top:var(--s3);max-width:200px}

/* Spec sheets (packages and setup sizes) */
.spec-sheets{list-style:none;padding:0;margin:0;display:grid;gap:var(--s4)}
@media (min-width:768px){.spec-sheets{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}}
.spec-sheet{background:var(--surface-raised);border:1px solid var(--border-hairline);border-top:4px solid var(--text-primary);border-radius:var(--radius);padding:var(--s5);display:flex;flex-direction:column}
.spec-sheet.is-featured{border-top-color:var(--fx-orange)}
.spec-tag{font:700 .875rem/1 var(--font-display);letter-spacing:.06em;text-transform:uppercase;margin-bottom:var(--s3)}
.spec-label{font-weight:600;font-size:var(--fs-small);margin:var(--s3) 0 var(--s2)}
.spec-price{font-weight:600;margin-top:auto;padding-top:var(--s4)}
.ticks{list-style:none;padding:0;margin:0 0 var(--s4);display:grid;gap:var(--s2)}
.ticks li{display:flex;gap:var(--s2);align-items:flex-start}
.ticks li .icon{margin-top:.2em}
.ticks.big{font-size:var(--fs-body-l);gap:var(--s3)}

/* Case tags (rentals, shop) */
.chips{display:flex;flex-wrap:wrap;gap:var(--s2);margin-bottom:var(--s5)}
.chip{min-height:44px;padding:.5rem 1rem;border-radius:999px;border:1px solid var(--border-control);background:var(--surface-raised);color:var(--text-primary);font:500 .9375rem var(--font-body);cursor:pointer}
.chip[aria-pressed="true"]{background:var(--surface-inverse);color:var(--text-inverse);border-color:var(--surface-inverse)}
.case-tags{list-style:none;padding:0;margin:0;display:grid;gap:var(--s4);grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr))}
.case-tag{background:var(--surface-raised);border:1px solid var(--border-hairline);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column}
.case-photo{display:block;aspect-ratio:4/3;background:var(--placeholder-bg)}
.case-photo img{width:100%;height:100%;object-fit:cover}
.photo-needed{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--s2);height:100%;padding:var(--s4);text-align:center;font-size:var(--fs-small);color:var(--text-secondary)}
.photo-needed.big{aspect-ratio:4/3;background:var(--placeholder-bg);border-radius:var(--radius-l)}
.case-strip{display:flex;justify-content:space-between;align-items:center;margin:0;max-width:none;padding:.4rem var(--s3);background:var(--fx-near-black);color:var(--fx-off-white);font:700 .875rem/1.2 var(--font-display);letter-spacing:.04em}
.case-strip .flag{background:var(--fx-orange);color:var(--fx-near-black);padding:.15rem .5rem;border-radius:2px}
.case-body{padding:var(--s4);display:flex;flex-direction:column;gap:var(--s2);flex:1}
.case-body p{margin:0}
.case-body h3{margin:0}
.case-body h3 a{text-decoration:none}
.case-body h3 a:hover{text-decoration:underline}
.case-body .btn{margin-top:auto}
.hire-btn.is-added{background:var(--fx-near-black);color:var(--fx-off-white);border-color:var(--fx-near-black)}
.stock{display:flex;gap:var(--s1);align-items:center;font-weight:600}

/* Hire tray */
.hire-tray{position:sticky;bottom:calc(var(--sticky-h) + env(safe-area-inset-bottom));z-index:55;background:var(--fx-near-black);color:var(--fx-off-white);border-top:1px solid #2A2B2F;padding-block:var(--s2)}
@media (min-width:960px){.hire-tray{bottom:0}}
.hire-row{display:flex;flex-wrap:wrap;gap:var(--s3);justify-content:space-between;align-items:center}
.hire-row .btn-row{margin:0}
.hire-count{display:flex;gap:var(--s2);align-items:center;margin:0;font-weight:600}
.hire-count.bump{animation:bump .15s ease-out}
@keyframes bump{50%{transform:scale(1.06)}}
.hire-panel ul{list-style:none;padding:0;margin:var(--s3) 0}
.hire-panel li{display:flex;justify-content:space-between;gap:var(--s3);border-bottom:1px solid #2A2B2F}

/* Gallery */
.gallery{list-style:none;padding:0;margin:0;columns:2 160px;column-gap:var(--s3)}
@media (min-width:960px){.gallery{columns:4;column-gap:var(--s4)}}
.gallery-item{break-inside:avoid;margin-bottom:var(--s3)}
.gallery figure{margin:0}
.gallery img{width:100%;border-radius:var(--radius)}
.gallery figcaption{display:flex;flex-direction:column;font-size:var(--fs-small);padding-top:var(--s2);color:var(--text-secondary)}
.gallery figcaption strong{color:var(--text-primary)}

/* Placeholder and proof boxes */
.ph-box{border:2px dashed var(--border-control);border-radius:var(--radius);padding:var(--s4);background:transparent;color:var(--text-primary)}
.ph-box p{margin:0 0 var(--s2);color:var(--text-secondary);font-size:var(--fs-small)}
.ph-box .ph-title,.ph-box h3{color:var(--text-primary);font-weight:600;font-size:1rem;font-family:var(--font-body);margin:var(--s2) 0}
.tag{display:inline-block;font:700 .75rem/1 var(--font-display);letter-spacing:.06em;text-transform:uppercase;padding:.3rem .45rem;background:var(--fx-dark-grey);color:var(--fx-off-white);border-radius:2px}
.tag-ph{vertical-align:middle}
.ph-grid{display:grid;gap:var(--s3);margin-top:var(--s5)}
@media (min-width:600px){.ph-grid{grid-template-columns:1fr 1fr}}

/* Cards */
.cards{list-style:none;padding:0;margin:0;display:grid;gap:var(--s4)}
@media (min-width:768px){.cards.cols-2{grid-template-columns:repeat(2,1fr)}.cards.cols-3,.cards.cols-4{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1100px){.cards.cols-3{grid-template-columns:repeat(3,1fr)}.cards.cols-4{grid-template-columns:repeat(4,1fr)}}
.card{background:var(--surface-raised);border:1px solid var(--border-hairline);border-radius:var(--radius);padding:var(--s5)}
.card p{color:var(--text-secondary);margin:0}
.card .card-icon{margin-bottom:var(--s3)}
.card-dark{background:#1E1F22;border:1px solid #34363A;border-radius:var(--radius);padding:var(--s5)}

/* Reviews */
.reviews{list-style:none;padding:0;margin:0;display:grid;gap:var(--s4)}
@media (min-width:768px){.reviews{grid-template-columns:repeat(3,1fr)}}
.review blockquote{margin:0;font-size:var(--fs-body-l)}

/* CTA band */
.cta-band .btn-row{justify-content:center}

/* FAQ */
.faq details{border-bottom:1px solid var(--border-hairline)}
.faq summary{cursor:pointer;min-height:56px;display:flex;align-items:center;font-weight:600;font-size:1.0625rem;padding-block:var(--s3);list-style-position:outside}
.faq details .prose{padding-bottom:var(--s4);color:var(--text-secondary)}

/* Contact */
.contact-list{list-style:none;padding:0;margin:0;display:grid;gap:var(--s4)}
.contact-list li{display:grid;grid-template-columns:auto 1fr;gap:var(--s3);align-items:start}

/* Tables */
.table-wrap{overflow-x:auto}
.credits{width:100%;border-collapse:collapse;font-size:var(--fs-small)}
.credits th,.credits td{text-align:left;padding:var(--s3);border-bottom:1px solid var(--border-hairline);vertical-align:middle}
.credits td img{display:inline-block;margin-right:var(--s2);vertical-align:middle;border-radius:2px}

/* Quote form */
.quote-grid{display:grid;gap:var(--s6)}
@media (min-width:960px){.quote-grid{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:start}.quote-aside{position:sticky;top:88px}}
.quote-aside hr{border:0;border-top:1px solid var(--border-hairline);margin-block:var(--s5)}
.quote-aside .btn{margin-bottom:var(--s3)}
.progress .progress-bar{list-style:none;padding:0;margin:var(--s2) 0 var(--s5);display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s2);font-size:var(--fs-small);color:var(--text-secondary)}
.progress-bar li{border-top:4px solid #DCDCD8;padding-top:var(--s2)}
.progress-bar li.done{border-top-color:var(--fx-orange);color:var(--text-primary)}
.step-panel{border:0;padding:0;margin:0 0 var(--s6);min-width:0}
.step-panel>legend{padding:0;margin-bottom:var(--s3)}
.no-js .step-panel{display:block!important}
.field{margin-bottom:var(--s5)}
.label,.choice-group>legend{display:block;font-weight:600;font-size:.9375rem;margin-bottom:var(--s2);padding:0}
.optional{font-weight:400;color:var(--text-secondary)}
.choice-group{border:0;padding:0;margin:0}
input[type=text],input[type=tel],input[type=email],input[type=date],input[type=search],textarea,select{width:100%;min-height:48px;padding:.65rem .85rem;border:1px solid var(--border-control);border-radius:var(--radius);background:var(--fx-white);color:var(--fx-near-black);font:inherit}
textarea{min-height:96px}
input:focus-visible,textarea:focus-visible,select:focus-visible{border-color:var(--fx-blue)}
.chip-input{position:relative;display:inline-flex}
.chip-input input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.chip-input span{display:inline-flex;align-items:center;gap:var(--s2);min-height:44px;padding:.5rem 1rem;border-radius:999px;border:1px solid var(--border-control);background:var(--fx-white)}
.chip-input input:checked+span{background:var(--fx-near-black);color:var(--fx-off-white);border-color:var(--fx-near-black)}
.chip-input input:checked+span::before{content:"";width:.9em;height:.5em;border-left:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg) translateY(-.15em)}
.chip-input input:focus-visible+span{outline:3px solid var(--focus-ring);outline-offset:2px}
.choice-rows{display:grid;gap:var(--s2)}
.choice-row{display:flex;align-items:center;gap:var(--s3);min-height:48px;padding:.5rem var(--s4);border:1px solid var(--border-control);border-radius:var(--radius);background:var(--fx-white);cursor:pointer;color:var(--fx-near-black)}
.choice-row:has(input:checked){border:2px solid var(--fx-near-black)}
.choice-row input{width:20px;height:20px;accent-color:var(--fx-near-black);margin:0}
.choice-row.toggle{border:0;background:none;padding-left:0}
.field-error{color:var(--state-error);font-weight:600;font-size:var(--fs-small);margin:0 0 var(--s2)}
.has-error input[type=text],.has-error input[type=tel],.has-error input[type=email]{border:2px solid var(--state-error)}
.has-error .chip-input span{border-color:var(--state-error)}
.error-summary{border:2px solid var(--state-error);border-radius:var(--radius);padding:var(--s4);margin-bottom:var(--s5);background:var(--fx-white)}
.error-summary a{color:var(--state-error);font-weight:600}

/* Thank you */
.summary{margin-block:var(--s5)}
.summary-list{list-style:none;padding:0;margin:0;display:grid;gap:var(--s1)}

/* Rental item spec list */
.spec-list{display:grid;gap:var(--s3);margin:var(--s5) 0}
.spec-list div{border-top:1px solid var(--border-hairline);padding-top:var(--s3)}
.spec-list dt{font-weight:600;font-size:var(--fs-small)}
.spec-list dd{margin:0}

/* Search */
.search-inline label{display:block;font-weight:600;margin-bottom:var(--s2)}
.search-row{display:flex;gap:var(--s2)}
.results{padding-left:1.1rem}
.results li{margin-bottom:var(--s3)}

/* Footer */
.site-footer{background:var(--fx-near-black);color:var(--fx-off-white);padding-block:var(--s8) var(--s5)}
.footer-grid{display:grid;gap:var(--s6)}
@media (min-width:768px){.footer-grid{grid-template-columns:1.2fr 1fr 1fr .8fr}}
.footer-brand img{width:96px;margin-bottom:var(--s4)}
.footer-brand p{color:#B4B6B9;font-size:var(--fs-small)}
.footer-h{font:600 .875rem var(--font-body);color:#B4B6B9;margin-bottom:var(--s3)}
.footer-list{list-style:none;padding:0;margin:0}
.footer-list a{display:inline-flex;gap:var(--s2);align-items:center;min-height:40px;text-decoration:none}
.footer-list a:hover{text-decoration:underline}
.footer-base{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--s3);margin-top:var(--s7);padding-top:var(--s4);border-top:1px solid #2A2B2F;font-size:var(--fs-small);color:#B4B6B9}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
@media print{.site-header,.sticky-cta,.hire-tray,.site-footer{display:none}}
.starts-night .site-header .btn-dark{background:var(--fx-off-white);color:var(--fx-near-black)}
.crumbs li{padding-block:var(--s2)}
.crumbs a{padding-block:0}
.case-tags{align-items:start}
