/* BellEvent v27 "Solid": big-rental-company layer. Loaded last on every page.
   Sturdy sans headings (Archivo), regular-weight body text, a navy department bar,
   left-aligned section heads, square solid buttons, dense category tiles, catalog sidebar,
   boxed rate panel. Brand colours, logo, copy and Booqable flow unchanged. */
@font-face{font-family:'Archivo';font-style:normal;font-weight:100 900;font-display:swap;src:url(fonts/archivo-latin-wght-normal.woff2) format('woff2-variations');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Archivo Fallback';src:local('Arial');size-adjust:98%;ascent-override:92%;descent-override:24%}
:root{
  --head:'Archivo','Archivo Fallback',Arial,sans-serif;
  --serif:var(--head); --marc:var(--head);
  --wrap:1320px;
  --muted:#4B5462;
  --text:#1B2330;
  --bar:#14213D;
  --steel:#EEF1F5;
}
body{font-size:16.5px;line-height:1.6;color:var(--text)}
h1,h2,h3,h4{font-family:var(--head);font-weight:700;letter-spacing:-.012em;line-height:1.12}
h1{font-weight:800;letter-spacing:-.02em}
/* no more light 300 body copy anywhere */
.shead p,.hero .lede,.step p,.occ-card p,.cap-cell p,.feature p,.feature li,.about p,.area .co p,.faq .intro p,.faq details p,.band p,.footer .blurb,.phero p.lede,.prose p,.prose li,.factors p,.cmp li,.checks li,.wind p,.buy .sub,.lay p,.dl-grid p,.co .lead,.buy .lead,.lead-c{font-weight:400!important}
.num,.pr,.price b{font-variant-numeric:tabular-nums lining-nums}

/* ---------- sections: tighter rhythm, left-aligned heads with a rule ---------- */
.section{padding:72px 0}
.section.tight{padding:52px 0}
.blk{padding-top:64px!important;padding-bottom:64px!important}
.shead{text-align:left!important;max-width:none!important;margin:0 0 30px!important;padding-bottom:14px;border-bottom:2px solid var(--navy);display:grid;grid-template-columns:1fr auto;column-gap:32px;align-items:end}
.shead>*{grid-column:1}
.shead h2{font-size:clamp(1.6rem,2.6vw,2.15rem)!important;margin:6px 0 6px!important}
.shead p{font-size:15.5px!important;max-width:820px;color:var(--muted)}
.shead .eyebrow .ln:last-child{display:none}
.shead .sh-all{grid-column:2;grid-row:1/span 3;align-self:end;font:700 14px/1 var(--head);color:var(--navy);white-space:nowrap;padding-bottom:6px;display:inline-flex;gap:6px;align-items:center}
.shead .sh-all:hover{color:var(--gold-deep)}
.eyebrow,.kicker{font-family:var(--head)!important;font-weight:700!important;letter-spacing:.04em!important;font-size:12px!important}
.eyebrow .ln{width:22px;height:2px}

/* ---------- buttons: solid, square-ish, heavier ---------- */
.btn{font-family:var(--head);font-weight:700;font-size:14px;letter-spacing:.01em;padding:14px 24px;border-radius:3px;border-width:2px;min-height:48px}
.btn-solid{box-shadow:none}
.btn-ghost{border-color:var(--navy)}
.btn-ghost-light{border-color:#fff;background:rgba(11,20,36,.35)}
.btn-ghost-light:hover{background:#fff;color:var(--navy)}
.add{font-family:var(--head);font-weight:700;border-radius:3px}

/* ---------- top bar ---------- */
.topbar{font-size:12.5px;letter-spacing:0}
@media (min-width:1100px){.topbar .wrap{flex-wrap:nowrap;padding-top:8px;padding-bottom:8px}.topbar .l span:nth-child(2),.topbar .r a.gold{display:none}}
.topbar .tb-plan{border-radius:3px}
.topbar .r a.tb-lnk{color:#fff;opacity:.9}
.topbar .r a.tb-lnk:hover{color:var(--gold-soft)}

/* ---------- header: logo + search + phone + quote, then navy department bar ---------- */
@media (min-width:1100px){
  .site-header{box-shadow:0 2px 0 rgba(11,20,36,.06)}
  .site-header .nav{display:grid!important;grid-template-columns:auto 1fr auto;grid-template-rows:auto auto;column-gap:28px;align-items:center;padding-top:0;padding-bottom:0;min-height:0!important;height:auto!important}
  .site-header .brand{grid-row:1;grid-column:1;padding:18px 0}
  .site-header .brand img{height:46px;width:auto}
  .site-header .nav-right{grid-row:1;grid-column:2/4;display:flex!important;align-items:center;gap:22px;justify-content:flex-end}
  .site-header .sbtn{flex:1;max-width:560px;height:48px;justify-content:flex-start;gap:10px;padding:0 14px;border:2px solid #B9C0CB!important;border-radius:3px;background:#fff;color:var(--muted);font:400 15px/1 var(--sans);cursor:text}
  .site-header .sbtn:hover{border-color:var(--navy)!important}
  .site-header .sbtn .sbtn-l{display:inline!important;flex:1;text-align:left}
  .site-header .sbtn kbd{margin-left:auto}
  .hphone{display:flex!important;flex-direction:column;line-height:1.15;color:var(--navy);white-space:nowrap}
  .hphone small{font:600 11.5px/1.2 var(--head);color:var(--muted);letter-spacing:.02em}
  .hphone b{font:800 20px/1.2 var(--head);letter-spacing:-.01em}
  .hphone:hover b{color:var(--gold-deep)}
  .site-header .qbtn{height:48px;padding:0 18px;background:var(--navy)!important;color:#fff!important;border:0!important;border-radius:3px;font:700 14px/1 var(--head)}
  .site-header .qbtn:hover{background:var(--midnight)!important}
  .site-header .qbtn .qcount{background:var(--gold);color:var(--navy)}
  .site-header{overflow-x:clip}
  .site-header .mainnav{grid-row:2;grid-column:1/-1;position:relative}
  .site-header .mainnav::before{content:"";position:absolute;top:0;bottom:0;left:calc(50% - 50vw);width:100vw;background:var(--bar);z-index:-1}
  .site-header .menu{gap:0!important;justify-content:space-between;margin:0;flex-wrap:nowrap}
  .site-header .menu>li>a{color:#fff!important;font:600 14.5px/1 var(--head)!important;letter-spacing:.005em;padding:16px 14px!important;white-space:nowrap}
  .site-header .menu>li:first-child>a{padding-left:0!important}
  .site-header .menu>li:last-child>a{padding-right:0!important}
  .site-header .menu>li>a::after{display:none!important}
  .site-header .menu>li>a:hover,.site-header .menu>li.cur>a,.site-header .menu>li:focus-within>a{color:var(--gold-soft)!important}
  .site-header .menu>li.m-all>a{background:var(--gold);color:var(--navy)!important;padding:16px 18px!important;margin-left:0}
  .site-header .menu>li.m-all>a:hover{background:var(--gold-soft)}
  .site-header .menu .chev{opacity:.85}
  .mega{border-top:0;box-shadow:0 18px 40px rgba(20,33,61,.18)}
  .has-dd .dd{top:100%}
}
@media (min-width:1100px) and (max-width:1279px){
  .site-header .menu>li>a{font-size:13.5px!important;padding:15px 9px!important}
  .hphone small{display:none}
}
.sbtn .sbtn-l,.hphone{display:none}

/* ---------- breadcrumbs ---------- */
.crumbs{background:var(--steel);border-bottom:1px solid var(--line)}
.crumbs ol{font:500 13px/1 var(--head)}

/* ---------- hero (home): shorter, solid panel ---------- */
.hero{min-height:0!important}
.hero .wrap{padding-top:64px!important;padding-bottom:56px!important}
.hero h1{font-size:clamp(2.2rem,4.2vw,3.5rem)!important;font-weight:800}
.hero .lede{font-size:18px!important;color:#fff!important}
.hero-search,.hero-search form{border-radius:3px}

/* ---------- category hero: compact ---------- */
.phero{min-height:0!important}
.phero .wrap,.phero.sm .wrap{padding-top:48px!important;padding-bottom:48px!important}
.phero .kicker{margin-bottom:12px}
.phero h1{margin-bottom:14px}
.phero .facts{margin-top:18px}.phero .cta-row{margin-top:22px}
.phero h1{font-size:clamp(2rem,3.6vw,3rem)!important}
.phero .facts span{font-family:var(--head);font-weight:600}
.secnav{background:#fff;border-bottom:2px solid var(--navy)}
.secnav a{font:600 13.5px/1 var(--head)!important;color:var(--navy)!important;letter-spacing:0!important}
.secnav a.on{color:var(--gold-deep)!important}

/* ---------- trust strip ---------- */
.tb-top{font-family:var(--head);font-weight:700}

/* ---------- home: department tiles ---------- */
.dept-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:0;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.dept{display:flex;flex-direction:column;background:#fff;border-right:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--navy);transition:box-shadow .15s,transform .15s;position:relative}
.dept:hover{box-shadow:inset 0 0 0 2px var(--navy);z-index:1}
.dept .dimg{aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;padding:18px;background:#fff}
.dept .dimg img{width:100%;height:100%;object-fit:contain}
.dept .dimg.photo{padding:0}.dept .dimg.photo img{object-fit:cover}
.dept .dtx{padding:12px 16px 16px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:3px;flex:1}
.dept b{font:700 15.5px/1.25 var(--head)}
.dept .dfrom{font:700 14px/1.2 var(--head);color:var(--gold-deep)}
.dept .dn{font-size:13px;color:var(--muted)}
.dept.all{background:var(--navy);color:#fff}
.dept.all .dimg{background:var(--navy);color:var(--gold-soft);font:800 46px/1 var(--head)}
.dept.all .dtx{border-top-color:rgba(255,255,255,.15)}
.dept.all .dfrom{color:var(--gold-soft)}.dept.all .dn{color:#C9D0DB}
.dept.all:hover{box-shadow:inset 0 0 0 2px var(--gold)}
.dept-note{margin-top:14px;font-size:14px;color:var(--muted)}
@media (max-width:1100px){.dept-grid{grid-template-columns:repeat(4,1fr)}}
@media (max-width:760px){.dept-grid{grid-template-columns:repeat(2,1fr)}.dept .dimg{padding:12px}.dept b{font-size:14.5px}}

/* ---------- product cards: tighter, heavier ---------- */
.pc{border:1px solid var(--line)!important;border-radius:0!important;box-shadow:none!important;transition:border-color .15s}
.pc:hover{border-color:var(--navy)!important}
.pc .bd{padding:14px 16px 16px!important}
.pc h3{font-size:16.5px!important;line-height:1.25!important;font-weight:700!important}
.pc .cat-l{font:700 11.5px/1 var(--head)!important;letter-spacing:.04em}
.pc .d,.pc .spec{font-size:13.5px!important}
.pc .row{border-top:1px solid var(--line);padding-top:12px!important;margin-top:12px!important}
.pc .pr{font:800 22px/1 var(--head)!important;color:var(--navy)}
.pc .pr small{font:500 12.5px/1 var(--sans)!important;color:var(--muted)}
.pc .add{padding:11px 14px!important;font-size:13px!important}
.pgrid{gap:16px!important}

/* ---------- category pages: sidebar + results ---------- */
.catlayout{display:grid;grid-template-columns:260px 1fr;gap:32px;align-items:start}
.catside{position:sticky;top:16px;display:flex;flex-direction:column;gap:16px}
.catside .cs-box{border:1px solid var(--line);background:#fff}
.catside h2{font:800 13px/1 var(--head)!important;letter-spacing:.05em;color:#fff;background:var(--navy);padding:13px 16px;margin:0}
.catside ul{list-style:none;margin:0;padding:6px 0}
.catside li a{display:flex;justify-content:space-between;gap:10px;padding:9px 16px;font:600 14px/1.3 var(--head);color:var(--navy);border-left:3px solid transparent}
.catside li a span{color:var(--muted);font-weight:500;font-size:13px}
.catside li a:hover{background:var(--steel)}
.catside li a[aria-current]{border-left-color:var(--gold);background:var(--steel);color:var(--navy)}
.catside li.cs-sep{border-top:1px solid var(--line);margin:6px 0;padding:0}
.catside .cs-help{padding:16px;display:flex;flex-direction:column;gap:8px;font-size:14px;color:var(--text)}
.catside .cs-help b{font:800 20px/1.1 var(--head);color:var(--navy)}
.catside .cs-help .btn{width:100%;min-height:44px;padding:11px 14px}
.catmain .pgrid{grid-template-columns:repeat(3,1fr)!important}
.catmain .pgrid.g4{grid-template-columns:repeat(3,1fr)!important}
.fbar{border:1px solid var(--line);background:var(--steel);padding:10px 14px!important;margin-bottom:16px!important}
.fbar .count-l{font-family:var(--head)}
.fbar select{border:1px solid #8B93A1;border-radius:3px;padding:6px 10px;background:#fff}
@media (max-width:1100px){.catmain .pgrid,.catmain .pgrid.g4{grid-template-columns:repeat(2,1fr)!important}}
@media (max-width:900px){.catlayout{grid-template-columns:1fr}.catside{position:static;order:2}.catside .cs-cats{display:none}}

/* ---------- tables: heavier header, zebra, bold first column ---------- */
table thead th{font-family:var(--head)!important;font-weight:700!important;letter-spacing:.01em}
.ctbl th[scope=row],.tbl-wrap tbody th{font-family:var(--head)}
.ctbl,.tbl-wrap table{border:1px solid var(--line)}
.ctbl tbody tr:nth-child(even){background:#F6F7F9}

/* ---------- product page: boxed rate panel ---------- */
.pd{gap:40px!important}
.gal-main{border:1px solid var(--line)}
.thumbs button{border-radius:0!important}
.buy h1{font-size:clamp(1.8rem,2.8vw,2.4rem)!important;font-weight:800}
.buy .eyebrow{color:var(--gold-deep)}
.buy .price{border:2px solid var(--navy);border-bottom:0;background:var(--steel);padding:14px 18px!important;margin:18px 0 0!important;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.buy .price b{font:800 36px/1 var(--head)!important;color:var(--navy)}
.buy .price span{font:600 14px/1.2 var(--head);color:var(--muted)}
.buy .incl{display:flex!important;margin:0!important;border:2px solid var(--navy);border-top:1px solid var(--line);border-bottom:0;padding:10px 18px!important;background:#fff;border-radius:0!important;font:600 14px/1.3 var(--head)}
.buy .buyrow{border:2px solid var(--navy);border-top:1px solid var(--line);padding:14px 18px;margin:0!important;background:#fff}
.buy .buyrow .btn{width:100%;background:var(--navy);color:#fff;border-color:var(--navy);min-height:52px;font-size:15px}
.buy .buyrow .btn:hover{background:var(--midnight)}
.buy .bk-note{margin-top:10px}
.buy dl.facts{border:1px solid var(--line);margin-top:18px!important;display:grid;grid-template-columns:150px 1fr}
.buy dl.facts dt,.buy dl.facts dd{padding:10px 14px!important;margin:0!important;border-bottom:1px solid var(--line)!important;border-top:0!important}
.buy dl.facts dt{background:var(--steel);font:700 13.5px/1.35 var(--head)!important;color:var(--navy)}
.buy dl.facts dd{font-size:14.5px}
.buy dl.facts dt:last-of-type,.buy dl.facts dd:last-of-type{border-bottom:0!important}

/* ---------- packages, how it works, misc cards ---------- */
.pk,.pk-card,.tcard,.qcard,.occ-card,.rev{border-radius:0!important}
.step{text-align:left!important;padding:0 18px 0 0!important}
.step .n,.how .n{font-family:var(--head)!important;font-weight:800!important}
.faq summary{font-family:var(--head);font-weight:700}
.band h2{font-weight:800}

/* ---------- footer ---------- */
.footer h4,.footer .fh{font-family:var(--head);font-weight:700}

/* help bubble: square it up */
.help-bubble,.hb,[data-help]{border-radius:3px}

@media (max-width:760px){
  .section{padding:48px 0}
  .shead{grid-template-columns:1fr}
  .shead .sh-all{grid-column:1;grid-row:auto;order:9;padding-top:10px}
  .btn{min-height:46px}
  .buy dl.facts{grid-template-columns:120px 1fr}
}
@media (min-width:1100px){.site-header .menu>li:nth-last-child(-n+2) .dd{left:auto!important;right:0!important;transform:none}}
.mega,.dd{letter-spacing:0}
.mega b,.dd b{font-family:var(--head);font-weight:700}
.mega small{font-family:var(--head);font-weight:600;color:var(--gold-deep)}
.catmain{min-width:0}.catmain .pgrid>*{min-width:0}
@media (max-width:600px){.catmain .pgrid:not(.g4){grid-template-columns:1fr!important}}
.rev blockquote,.feature blockquote,.qcard blockquote{font-family:var(--sans)!important;font-size:18px!important;font-weight:400!important;line-height:1.55!important}
.stat b{font:800 28px/1.1 var(--head)!important}
.stat span{font:600 12px/1.3 var(--head)!important}
.area .shead,.feature .shead,.band .shead{border-bottom-color:rgba(255,255,255,.3)}
.faq h2{font-size:clamp(1.6rem,2.6vw,2.15rem)!important}

/* ===== Preview 43: one catalog flow + quote list ===== */
.phero.cat-hub .facts,.phero.cat-hub .cta-row{display:none}
.catmain .fbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.catmain .fbar .r{width:auto;flex-wrap:nowrap}
.catmain .fbar .count-l{margin:0;font-weight:600;color:var(--navy)}
.catmain .fbar input[type=search]{border:1px solid #8B93A1;border-radius:3px;padding:6px 10px;min-width:220px}
#all .pgrid.g4{grid-template-columns:repeat(3,minmax(0,1fr))}
.grp{display:flex;align-items:baseline;justify-content:space-between;gap:12px;border-bottom:2px solid var(--navy);padding-bottom:8px;margin:30px 0 4px!important;font-family:var(--head);font-size:1.3rem!important}
.grp:first-child{margin-top:0!important}
.grp a{color:var(--navy);text-decoration:none}
.grp a:hover{text-decoration:underline}
.grp .grp-more{font-size:14px;font-weight:600;color:var(--gold-mid,#8a6d2b);white-space:nowrap}
/* quote confirmation: drops from the quote button like a mini cart */
.toast{left:auto;right:max(16px,calc((100vw - var(--wrap))/2 + 20px));top:112px;transform:translateY(-8px);border-left:0;border-top:3px solid var(--gold);border-radius:3px;box-shadow:0 8px 24px rgba(14,27,51,.22);padding:14px 18px;max-width:420px}
.toast.on{transform:none}
.toast .t-act{background:var(--gold);color:var(--navy);padding:7px 12px;border-radius:3px;font-size:13px;font-weight:700}
/* quote page: square, ruled summary like an order panel */
.sum{border:2px solid var(--navy)!important;border-radius:0!important;box-shadow:none!important;padding:0!important;overflow:hidden}
.sum h2{background:var(--navy);color:#fff;margin:0!important;padding:14px 20px;font-family:var(--head);font-size:18px!important}
.sum>*:not(h2){margin-left:20px;margin-right:20px}
.sum>*:last-child{margin-bottom:20px}
.sum .r.t span:last-child{font-family:var(--head)}
.sum .btn,.qty,.qty button{border-radius:3px}
@media(max-width:1000px){#all .pgrid.g4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.toast,.toast.on{right:12px;left:12px;top:auto;bottom:72px;max-width:none}
 .catmain .fbar .r{width:100%}.catmain .fbar input[type=search]{min-width:0;flex:1}}
.sum .btn{width:calc(100% - 40px)!important}
.sum .assure,.sum>p{margin-left:20px!important;margin-right:20px!important}
.catmain .fbar input[type=search]{flex:1 1 160px}
/* phone: same category list, as a swipe row above the results */
@media(max-width:900px){
 .catside{display:contents}
 .catside .cs-cats{display:block;order:0;min-width:0;border:0;background:none}
 .catmain{order:1}.catside .cs-box:not(.cs-cats){order:2}
 .catside .cs-cats h2{display:none}
 .catside .cs-cats ul{display:flex;gap:8px;overflow-x:auto;padding:0 0 4px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
 .catside .cs-cats ul::-webkit-scrollbar{display:none}
 .catside .cs-cats li.cs-sep{display:none}
 .catside .cs-cats li a{white-space:nowrap;border:1px solid var(--line);border-radius:3px;padding:9px 12px;background:#fff}
 .catside .cs-cats li a span{margin-left:6px}
 .catside .cs-cats li a[aria-current]{background:var(--navy);color:#fff;border-color:var(--navy)}
 .catside .cs-cats li a[aria-current] span{color:#E1C98C}
}
.sum .btn{margin-left:20px!important;margin-right:20px!important}
@media(max-width:760px){.catmain .fbar input[type=search]{flex:1 1 100%}.catmain .fbar select{flex:1 1 100%}}
.toast .t-act{white-space:nowrap}
/* home: How Booking Works has 3 steps, so 3 equal columns across the full width (was a 4-column grid) */
@media(min-width:761px){.how-steps{grid-template-columns:repeat(3,minmax(0,1fr))!important;max-width:none!important;gap:0!important;margin-top:8px!important}
 .how-steps .step{padding:4px 32px 4px 0!important}
 .how-steps .step+.step{padding-left:32px!important;border-left:1px solid var(--line)}}

/* ===== Preview 45: phone pass (runs on top of v35 calm phone rules in mobile.css) ===== */
@media(max-width:760px){
 /* 16px in every field so iPhone never zooms in when you tap one */
 input,select,textarea{font-size:16px!important}
 .catmain .fbar input[type=search],.catmain .fbar select{min-height:44px}
 /* 44px tap targets */
 .nav-toggle{min-width:44px;min-height:44px}
 .site-header .brand{min-height:44px;display:flex;align-items:center}
 .crumbs ol{padding:0!important;align-items:center;column-gap:6px;row-gap:0}
 .crumbs li{display:flex;align-items:center;min-height:40px}
 .crumbs a{display:flex;align-items:center;min-height:44px}
 .faq summary,details.cfaq summary,.cfaq summary,.bev-tx summary,.section details>summary{min-height:44px;display:flex;align-items:center;justify-content:space-between}
 .site-footer a,footer a{display:inline-flex;align-items:center;min-height:44px}
 .site-footer .bot a,footer .bot a{min-height:44px}
 .catside .cs-cats li a{min-height:44px;display:flex;align-items:center}
 .catside .cs-help a{min-height:44px;display:inline-flex;align-items:center}
 .sh-all,.grp-more,.grp a{display:inline-flex;align-items:center;min-height:44px}
 .pc .add,.pc .btn,.add{min-height:44px}
 .tray button,.tray-x,.tray [aria-label=Close]{min-width:44px;min-height:44px}
 .tray-plan{display:flex;align-items:center;min-height:44px}
 .totop{min-height:44px;display:inline-flex;align-items:center}
 .towns a,.chiplink,.tlink,.hero-tags button,.buy-acts button,.pkc a{min-height:44px;display:inline-flex;align-items:center}
 .mob-cta>*{min-height:52px}
 /* readable small labels */
 .pc .cat-l,.cat-l{font-size:12.5px}
 .chiplink{font-size:13px}
 /* catalog: compact hub intro, category row sticks under the header while you scroll */
 .phero.cat-hub{padding:26px 0 22px!important;min-height:0!important}
 .phero.cat-hub .lede{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:15px}
 .phero.cat-hub h1{font-size:30px!important}
 .catlayout{gap:14px!important}
 #all .catside .cs-cats{position:sticky;top:73px;z-index:30;background:#fff!important;margin:0 -16px;padding:8px 16px!important;box-shadow:0 1px 0 var(--line)}
 /* product page: price stays on screen in the bottom bar */
 .mob-cta .mc-price{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:0 12px;background:#fff;color:var(--navy);font:800 18px/1.1 var(--head);border-top:1px solid var(--line)}
 .mob-cta .mc-price small{font:500 11.5px/1.2 var(--sans,inherit);color:var(--muted)}
 .mob-cta:has(.mc-price){grid-template-columns:auto 1fr 1.3fr!important;display:grid!important}
 /* phone menu opens straight onto the rental categories with prices */
 .mnav details[open]>summary{color:var(--navy)}
 .mnav details>div a{min-height:48px;display:flex;align-items:center;justify-content:space-between}
}
/* tablets and any touch screen: same 44px taps */
@media(pointer:coarse),(max-width:1100px){
 .nav-toggle{min-width:44px;min-height:44px}
 .site-header .brand{min-height:44px}
 .tb-lnk,.topbar a,.top a{min-height:44px;display:inline-flex;align-items:center}
 .totop{min-height:44px;display:inline-flex;align-items:center}
 .tray button,.tray-x{min-width:44px;min-height:44px}
 .tray-plan{display:flex;align-items:center;min-height:44px}
 .faq summary,.cfaq summary,.bev-tx summary,.section details>summary{min-height:44px;display:flex;align-items:center}
 .catside li a{min-height:44px;display:flex;align-items:center}
 .catside .cs-help a,.sh-all,.grp-more,.grp a,.hero-tags button,.buy-acts button,.pkc a{min-height:44px;display:inline-flex;align-items:center}
 .catmain .fbar input[type=search],.catmain .fbar select,.pc .add{min-height:44px}
 .site-footer a,footer a{display:inline-flex;align-items:center;min-height:44px}
 input[type=range]{min-height:44px}
}
/* --- after independent mobile review --- */
@media(max-width:760px){
 /* quote list steppers */
 .qty button{min-width:44px;min-height:44px}
 .qty{min-width:136px}
 .rm,.qrow .rm,button.rm,a.rm{min-height:44px;display:inline-flex;align-items:center;padding:0 8px}
 /* once something is in the quote, a quote icon with the count stays in the header */
 html .nav-right .qbtn:has(.qcount.has){display:inline-flex!important;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0 8px!important;gap:4px}
 /* every category/info page: products and answers come sooner */
 .phero:not(.hero){padding:26px 0 22px!important;min-height:0!important}
 .phero .inner{padding:0!important}
 .phero h1{font-size:clamp(28px,8vw,34px)!important}
 .phero .lede,.phero .inner>p:not(.kicker){display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:15px!important}
 .phero .facts,.phero .cta-row{display:none!important}
 /* breadcrumb stays one line */
 .crumbs ol{flex-wrap:nowrap!important;overflow-x:auto;white-space:nowrap;scrollbar-width:none}
 .crumbs ol::-webkit-scrollbar{display:none}
 .add,.pc .add{font-size:12.5px}
 .g{font-size:12px}
}
/* touch screens: search closes with a real button, not a keyboard label */
@media(hover:none){
 .srch-x kbd{display:none}
 .srch-x{min-width:44px;min-height:44px;font:600 15px/1 var(--head);color:var(--navy);background:none;border:0}
 .srch-x::after{content:"Close"}
}
/* touch screens and tablets: 16px fields, category row not cut off */
@media(pointer:coarse),(max-width:1100px){input,select,textarea{font-size:16px!important}
 .catside .cs-cats ul{scroll-padding-inline:16px;padding-left:2px}}
/* planner: bigger Back / Start Over / close */
.back,.restart,.lnk{min-height:44px}
@media(max-width:760px){.pe .x,button.x,[aria-label=Close]{min-width:44px;min-height:44px}}
/* iPhone home bar: bottom bar sits above it */
.mob-cta{padding-bottom:env(safe-area-inset-bottom)}
/* cards fade in faster */
.reveal{transition-duration:.3s!important}
