/* On Scene Dumpsters — v2 additions. Extends the existing design system:
   --red:#8f2428 --gold:#d89b2b --ink:#090909 --cream:#f4efe5
   Display: Impact condensed | Body: Arial/Helvetica */

/* ---------- Top info bar (hours + urgent line) ---------- */
.v2-topbar{background:#000;border-bottom:1px solid #d89b2b40;color:#e8e2d6;display:flex;flex-wrap:wrap;justify-content:center;gap:6px 28px;align-items:center;padding:9px clamp(16px,4vw,60px);font-size:12.5px;letter-spacing:.6px;text-transform:uppercase;font-weight:700}
.v2-topbar .tb-item{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}
.v2-topbar .tb-item svg{color:var(--gold);flex:none}
.v2-topbar .tb-urgent{color:#fff}
.v2-topbar .tb-urgent a{color:var(--gold);text-decoration:none;font-weight:900}
.v2-topbar .tb-urgent a:hover{text-decoration:underline}

/* ---------- Free upgrade callout (inside cream rentals section) ---------- */
.upgrade-callout{background:#14120f;color:#f4efe5;border:1px solid #d89b2b59;display:flex;flex-wrap:wrap;align-items:center;gap:18px 26px;max-width:960px;margin:34px auto 0;padding:24px 28px;box-shadow:0 12px 30px #382b1712}
.upgrade-callout .up-badge{background:var(--gold);color:#14120f;font-family:Impact,Haettenschweiler,sans-serif;font-size:20px;letter-spacing:1px;text-transform:uppercase;padding:10px 16px;flex:none}
.upgrade-callout .up-copy{flex:1 1 340px}
.upgrade-callout .up-copy strong{display:block;font-size:15.5px;letter-spacing:.4px;text-transform:uppercase;margin-bottom:5px}
.upgrade-callout .up-copy p{margin:0;color:#d9d2c4;font-size:13.5px;line-height:1.55}
.upgrade-callout .up-copy small{display:block;margin-top:7px;color:#a89f8e;font-size:11.5px;letter-spacing:.4px}

/* ---------- Rental duration pricing (inside cream rentals section) ---------- */
.durations{max-width:960px;margin:56px auto 0}
.durations .dur-head{text-align:center;max-width:640px;margin:0 auto 30px}
.durations .dur-head h3{font-family:Impact,Haettenschweiler,sans-serif;font-size:clamp(26px,3.4vw,34px);letter-spacing:.8px;text-transform:uppercase;margin:10px 0 8px;color:#14120f}
.durations .dur-head p{margin:0;color:#4a443a;font-size:14.5px;line-height:1.6}
.durations .dur-head .kicker{justify-content:center}
.dur-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:22px}
.duration-card{background:#fff;border:1px solid #d7cfc2;box-shadow:0 12px 30px #382b1712}
.duration-card header{background:#14120f;color:#f4efe5;display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:15px 20px}
.duration-card header h4{margin:0;font-family:Impact,Haettenschweiler,sans-serif;font-size:19px;letter-spacing:.8px;text-transform:uppercase;font-weight:400}
.duration-card header span{color:var(--gold);font-size:11.5px;font-weight:900;letter-spacing:.6px;text-transform:uppercase;white-space:nowrap}
.dur-tiers{display:grid;grid-template-columns:repeat(3,1fr)}
.dur-tiers div{text-align:center;padding:20px 8px 22px;border-right:1px solid #eee7db}
.dur-tiers div:last-child{border-right:0}
.dur-tiers small{display:block;color:#7a7264;font-size:11.5px;letter-spacing:.6px;text-transform:uppercase;font-weight:700;margin-bottom:6px}
.dur-tiers strong{font-family:Impact,Haettenschweiler,sans-serif;font-weight:400;font-size:27px;color:var(--red);letter-spacing:.5px;font-variant-numeric:tabular-nums}
.oneload-note{background:#fff;border:1px solid #d7cfc2;border-top:4px solid var(--red);margin-top:22px;padding:26px 28px}
.oneload-note h4{margin:0 0 6px;font-size:14px;letter-spacing:.8px;text-transform:uppercase;color:var(--red)}
.oneload-note>p{margin:0 0 16px;color:#14120f;font-size:15px;font-weight:700}
.oneload-cols{display:flex;flex-wrap:wrap;gap:18px 34px;align-items:flex-start}
.oneload-cols p{flex:1 1 320px;margin:0;color:#4a443a;font-size:13.5px;line-height:1.6}
.oneload-cols ul{flex:1 1 220px;list-style:none;margin:0;padding:0;display:grid;gap:8px}
.oneload-cols li{display:flex;align-items:center;gap:9px;font-size:13.5px;color:#14120f;font-weight:700}
.oneload-cols li svg{color:var(--red);flex:none}
.empty-return{background:#14120f;color:#f4efe5;display:flex;flex-wrap:wrap;align-items:center;gap:18px 30px;margin-top:22px;padding:24px 28px}
.empty-return .er-copy{flex:1 1 320px}
.empty-return .er-copy strong{display:block;color:var(--gold);font-size:15px;letter-spacing:.6px;text-transform:uppercase;margin-bottom:6px}
.empty-return .er-copy p{margin:0;color:#d9d2c4;font-size:13.5px;line-height:1.55}
.empty-return .er-prices{display:flex;gap:14px}
.empty-return .er-prices div{background:#fff;color:#14120f;text-align:center;padding:12px 20px;min-width:96px}
.empty-return .er-prices small{display:block;font-size:11px;letter-spacing:.6px;text-transform:uppercase;font-weight:900;color:#7a7264;margin-bottom:3px}
.empty-return .er-prices strong{font-family:Impact,Haettenschweiler,sans-serif;font-weight:400;font-size:24px;color:var(--red)}
.durations .fine{display:block;text-align:center;color:#7a7264;font-size:11.5px;margin-top:16px;letter-spacing:.3px}

/* ---------- Payment methods strip (inside booking card) ---------- */
.pay-strip{border-top:1px solid #e4ddd0;margin-top:18px;padding-top:16px}
.pay-strip small{display:flex;align-items:center;gap:7px;color:#5c5648;font-size:11px;letter-spacing:.8px;text-transform:uppercase;font-weight:900;margin-bottom:10px}
.pay-strip small svg{color:#2e7d43}
.pay-badges{display:flex;flex-wrap:wrap;gap:8px}
.pay-badges span{border:1px solid #cfc7b9;background:#faf7f0;color:#3a3529;font-size:11.5px;font-weight:900;letter-spacing:.4px;padding:6px 11px;white-space:nowrap}

/* ---------- Booking niceties ---------- */
.upgrade-inline{display:none;background:#fdf6e7;border:1px solid #e2c07a;color:#6b4e12;font-size:12.5px;line-height:1.5;padding:10px 12px;margin-top:8px;text-transform:none;letter-spacing:normal;font-weight:400}
.upgrade-inline.show{display:block}
.delivery-note{display:none;background:#eef3fb;border:1px solid #b9cdec;color:#25436e;font-size:12.5px;line-height:1.5;padding:10px 12px;margin-top:8px;text-transform:none;letter-spacing:normal;font-weight:400}
.delivery-note.show{display:block}
.delivery-note b{font-weight:900}

/* ---------- Vanilla calendar popover ---------- */
.osd-cal-wrap{position:relative}
.osd-cal{position:absolute;z-index:60;top:calc(100% + 6px);left:0;background:#fff;border:1px solid #bcb4a8;box-shadow:0 18px 44px #00000038;padding:14px;width:292px;display:none}
.osd-cal.open{display:block}
.osd-cal .cal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.osd-cal .cal-head strong{font-size:13.5px;letter-spacing:.6px;text-transform:uppercase}
.osd-cal .cal-head button{background:#f1ece2;border:1px solid #d7cfc2;width:30px;height:30px;cursor:pointer;font-size:15px;line-height:1;display:grid;place-items:center}
.osd-cal .cal-head button:disabled{opacity:.35;cursor:default}
.osd-cal table{border-collapse:collapse;width:100%}
.osd-cal th{font-size:10.5px;color:#8a8172;letter-spacing:.5px;text-transform:uppercase;padding:4px 0;font-weight:900}
.osd-cal td{padding:2px}
.osd-cal td button{width:34px;height:34px;border:1px solid transparent;background:none;cursor:pointer;font-size:13px;font-weight:700;color:#14120f;display:grid;place-items:center;position:relative}
.osd-cal td button:hover:not(:disabled){border-color:var(--red);color:var(--red)}
.osd-cal td button:disabled{color:#c9c1b2;cursor:default;text-decoration:line-through}
.osd-cal td button.sel{background:var(--red);color:#fff;border-color:var(--red)}
.osd-cal td button.first-open{box-shadow:inset 0 0 0 1px var(--gold)}
.osd-cal td button.first-open:after{content:"11A+";position:absolute;bottom:-3px;left:50%;transform:translateX(-50%);background:var(--gold);color:#14120f;font-size:7.5px;font-weight:900;padding:1px 3px;letter-spacing:.3px}
.osd-cal .cal-legend{margin-top:10px;padding-top:9px;border-top:1px solid #eee7db;color:#7a7264;font-size:10.8px;line-height:1.5}
.osd-cal .cal-legend b{color:#6b4e12}

/* ---------- Common projects ---------- */
.projects{background:#111;border-top:1px solid #ffffff14;color:#f4efe5;padding:76px clamp(20px,7vw,110px);text-align:center}
.projects h2{font-family:Impact,Haettenschweiler,sans-serif;font-weight:400;font-size:clamp(26px,3.4vw,34px);letter-spacing:.8px;text-transform:uppercase;margin:10px 0 34px}
.projects .kicker{justify-content:center}
.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;background:#ffffff14;border:1px solid #ffffff14;max-width:1080px;margin:0 auto}
.project{background:#111;padding:26px 14px 24px}
.project svg{color:var(--gold);margin-bottom:10px}
.project strong{display:block;font-size:13px;letter-spacing:.7px;text-transform:uppercase;margin-bottom:5px}
.project small{color:#a89f8e;font-size:11.8px;line-height:1.5;display:block}

/* ---------- FAQ ---------- */
.faq-section{background:var(--cream);color:#14120f;padding:88px clamp(20px,7vw,110px)}
.faq-section .section-heading p{color:#4a443a}
.faq-list{max-width:820px;margin:0 auto;display:grid;gap:10px}
.faq-item{background:#fff;border:1px solid #d7cfc2}
.faq-item summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:17px 20px;font-size:14.5px;font-weight:900;letter-spacing:.2px}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary .fx{flex:none;width:22px;height:22px;display:grid;place-items:center;color:var(--red);font-size:19px;font-weight:400;transition:transform .18s ease}
.faq-item[open] summary .fx{transform:rotate(45deg)}
.faq-item .faq-a{padding:0 20px 18px;color:#4a443a;font-size:13.8px;line-height:1.65}
.faq-item .faq-a p{margin:0 0 8px}
.faq-item .faq-a p:last-child{margin-bottom:0}
.faq-cta{max-width:820px;margin:22px auto 0;text-align:center;color:#4a443a;font-size:13.5px}
.faq-cta a{color:var(--red);font-weight:900;text-decoration:none}
.faq-cta a:hover{text-decoration:underline}

/* ---------- Reviews ---------- */
.reviews{background:#0d0c0b;border-top:1px solid #ffffff14;color:#f4efe5;text-align:center;padding:76px clamp(20px,7vw,110px)}
.reviews h2{font-family:Impact,Haettenschweiler,sans-serif;font-weight:400;font-size:clamp(26px,3.4vw,34px);letter-spacing:.8px;text-transform:uppercase;margin:10px 0 8px}
.reviews .kicker{justify-content:center}
.reviews .stars{color:var(--gold);font-size:21px;letter-spacing:5px;margin:6px 0 8px}
.reviews>p{color:#a89f8e;font-size:13.5px;max-width:560px;margin:0 auto 30px;line-height:1.6}
.review-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;max-width:960px;margin:0 auto}
.review-card{border:1px solid #d89b2b47;padding:30px 20px;color:#c8c1b2;font-size:13px;line-height:1.6}
.review-card .stars{font-size:15px;letter-spacing:3px;margin:0 0 12px}
.review-card em{font-style:normal;color:#8f887a;display:block}

/* ---------- Quote / contact ---------- */
.quote-section{background:var(--cream);color:#14120f;padding:92px clamp(20px,7vw,110px);display:grid;grid-template-columns:.85fr 1.15fr;gap:56px;align-items:start}
.quote-copy h2{font-family:Impact,Haettenschweiler,sans-serif;font-weight:400;font-size:clamp(28px,3.6vw,38px);letter-spacing:.8px;text-transform:uppercase;margin:10px 0 14px}
.quote-copy>p{color:#4a443a;font-size:14.5px;line-height:1.65;margin:0 0 22px;max-width:46ch}
.quote-lines{display:grid;gap:13px;margin:0;padding:0;list-style:none}
.quote-lines li{display:flex;align-items:flex-start;gap:11px;font-size:13.8px;line-height:1.5}
.quote-lines svg{color:var(--red);flex:none;margin-top:1px}
.quote-lines b{font-weight:900}
.quote-lines a{color:var(--red);font-weight:900;text-decoration:none}
.quote-lines a:hover{text-decoration:underline}
.quote-card{background:#fff;border:1px solid #d7cfc2;box-shadow:0 12px 30px #382b1712;padding:34px 30px;display:grid;gap:15px}
.quote-card .form-title{display:flex;flex-direction:column;gap:3px;margin-bottom:4px}
.quote-card .form-title span{font-family:Impact,Haettenschweiler,sans-serif;font-size:21px;letter-spacing:1px;text-transform:uppercase}
.quote-card .form-title small{color:#7a7264;font-size:12px}
.quote-card label{text-transform:uppercase;letter-spacing:.8px;gap:8px;font-size:13px;font-weight:900;display:grid}
.quote-card input,.quote-card select,.quote-card textarea{background:#fff;border:1px solid #bcb4a8;min-height:50px;padding:12px 13px;font:inherit;font-size:14px;width:100%}
.quote-card textarea{min-height:110px;resize:vertical}
.quote-card .field-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.quote-card button.qsend{background:var(--red);color:#fff;border:0;min-height:52px;font-size:13.5px;font-weight:900;letter-spacing:.6px;text-transform:uppercase;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:9px}
.quote-card button.qsend:hover{background:#7a1e22}
.quote-card .quote-ok{display:none;color:#276238;background:#e6f5e9;padding:12px;font-size:13px}
.quote-card .quote-ok.show{display:block}

/* ---------- Footer additions ---------- */
footer .foot-hours{display:grid;gap:3px;font-size:12.5px}
footer .foot-hours b{color:#fff;letter-spacing:.4px}
footer .foot-hours a{color:var(--gold);text-decoration:none;font-weight:900}
footer div strong a{color:inherit;text-decoration:none}
footer .foot-mail{color:#d2ccc3;font-size:12.5px;text-decoration:none}
footer .foot-mail:hover{color:#fff}

/* ---------- Responsive ---------- */
@media (max-width:940px){
  .quote-section{grid-template-columns:1fr;gap:36px}
}
@media (max-width:640px){
  .v2-topbar{gap:3px 18px;font-size:11.5px}
  .dur-tiers strong{font-size:23px}
  .quote-card .field-row{grid-template-columns:1fr}
  .empty-return .er-prices{width:100%;justify-content:flex-start}
  .osd-cal{width:min(292px,86vw)}
}

/* ---------- One-pass fixes ---------- */
.site-header nav{gap:6px 20px;flex-wrap:wrap;justify-content:center;margin-left:20px;font-size:15px}
#top,#rentals,#pricing,#book,#materials,#areas,#rules,#faq,#quote{scroll-margin-top:92px}

/* ============================================================
   V4 — Mike's change package (Sept 2026)
   ============================================================ */

/* ---------- Hero includes line ---------- */
.hero-includes{display:inline-block;margin-top:14px;background:#d89b2b1c;border:1px solid #d89b2b66;color:var(--gold);font-weight:900;font-size:12.5px;letter-spacing:1.6px;padding:9px 16px;text-transform:uppercase}

/* ---------- Pricing card includes + select buttons ---------- */
.card-includes{list-style:none;margin:12px 0 14px;padding:12px 0 0;border-top:1px solid #d7cfc2;text-align:left;display:grid;gap:6px}
.card-includes li{font-size:12.8px;color:#4a443a;display:flex;gap:8px;align-items:flex-start;line-height:1.45}
.card-includes li:before{content:"\2713";color:var(--red);font-weight:900;flex:none}
.card-includes li b{color:#14120f}
a.select-size{display:block;text-align:center;background:var(--red);color:#fff;font-weight:900;font-size:13px;letter-spacing:1.2px;text-transform:uppercase;text-decoration:none;padding:12px 10px;margin-top:4px}
a.select-size:hover{background:#7a1e22}

/* ---------- Booking form: optional tag, notes ---------- */
label .opt{font-style:normal;font-weight:400;color:#8a8172;font-size:11.5px;letter-spacing:.2px;text-transform:none}
.material-note{font-size:12.5px;line-height:1.55;padding:10px 12px;margin:8px 0 0}
.material-note.heavy{background:#fdecec;border:1px solid #e5b5b5;color:#7c2a2a}
.material-note.fee{background:#fdf6e7;border:1px solid #e2c07a;color:#6b4e12}
.material-note a{color:inherit;font-weight:900}

/* ---------- Fees & prohibited boxes ---------- */
.fees-box,.prohibited-box{border:1px solid #d7cfc2;background:#faf7f0;padding:16px 18px;margin:16px 0 0}
.fees-box h5,.prohibited-box h5{display:flex;align-items:center;gap:8px;margin:0 0 10px;font-size:12.5px;letter-spacing:1.4px;text-transform:uppercase;color:#14120f}
.fees-box h5 svg{color:var(--gold)}
.prohibited-box h5 svg{color:var(--red)}
.fees-box ul{list-style:none;margin:0 0 10px;padding:0;display:grid;gap:6px}
.fees-box li{font-size:12.8px;color:#4a443a;line-height:1.5;padding-left:14px;position:relative}
.fees-box li:before{content:"";position:absolute;left:0;top:8px;width:5px;height:5px;background:var(--gold)}
.fees-box li b{color:#14120f}
.fees-box small,.prohibited-box small{display:block;color:#7a7264;font-size:11.8px}
.fees-box small a,.prohibited-box small a{color:var(--red);font-weight:900;text-decoration:none}
.prohibited-box{background:#fdf3f3;border-color:#e5c2c2}
.prohibited-box p{margin:0 0 8px;font-size:12.8px;line-height:1.6;color:#63302f}

/* ---------- Native consent rows ---------- */
.consent-native{display:flex!important;flex-direction:row!important;gap:10px;align-items:flex-start;font-size:12.8px;line-height:1.5;color:#3d3a33;cursor:pointer;margin:10px 0 0;text-transform:none;letter-spacing:normal;font-weight:400}
.consent-native input{flex:none;width:17px;height:17px;margin-top:1px;accent-color:var(--red);cursor:pointer}
.consent-native span b{color:#14120f}

/* ---------- Discount gate ---------- */
.discount-gate{border:1px solid #d89b2b8a;background:#fdf8ec;padding:16px 18px;margin:16px 0 0}
.discount-gate h5{margin:0 0 4px;font-size:12.5px;letter-spacing:1.2px;text-transform:uppercase;color:#14120f}
.approval-call{display:inline-flex;align-items:center;gap:8px;background:var(--red);color:#fff;font-weight:900;font-size:12.5px;letter-spacing:1px;text-transform:uppercase;text-decoration:none;padding:12px 16px;margin:12px 0 8px}
.approval-call:hover{background:#7a1e22}
#yesBlock small{display:block;color:#6b4e12;font-size:11.8px;line-height:1.55}

/* ---------- Confirmation panel ---------- */
.confirm-panel{border:1px solid #d7cfc2;background:#fff;box-shadow:0 24px 60px #00000024;padding:40px clamp(20px,4vw,48px);text-align:center;max-width:560px;margin:0 auto}
.confirm-panel .cp-icon{color:#2e7d43;margin-bottom:10px}
.confirm-panel h3{font-family:Impact,Haettenschweiler,sans-serif;font-weight:400;font-size:clamp(22px,3vw,28px);letter-spacing:1px;margin:0 0 12px;color:#14120f}
.confirm-panel p{font-size:13.5px;line-height:1.65;color:#4a443a;margin:0 0 12px}
.confirm-panel p b{color:#14120f}
.confirm-panel .approval-call{margin:6px 0 14px}
.return-home{display:block;width:100%;background:none;border:1px solid #bcb4a8;color:#4a443a;font-weight:900;font-size:12.5px;letter-spacing:1.2px;text-transform:uppercase;padding:12px;cursor:pointer}
.return-home:hover{border-color:var(--red);color:var(--red)}
.cp-note{background:#eef3fb;border:1px solid #b9cdec;color:#25436e;font-size:12px;line-height:1.55;padding:10px 12px;margin-top:14px!important}

/* ---------- Calendar: fire-schedule states ---------- */
.osd-cal td button.duty{background:#f6eae9;color:#b58e8c;text-decoration:line-through}

/* ---------- Meet the owner ---------- */
.about-owner{background:var(--cream);border-top:1px solid #d7cfc2;padding:80px clamp(20px,7vw,110px)}
.owner-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:clamp(28px,5vw,64px);align-items:center;max-width:1060px;margin:0 auto}
.owner-copy h2{font-family:Impact,Haettenschweiler,sans-serif;font-weight:400;font-size:clamp(26px,3.4vw,34px);letter-spacing:.8px;text-transform:uppercase;margin:10px 0 14px;color:#14120f}
.owner-copy p{font-size:14px;line-height:1.7;color:#4a443a;margin:0 0 14px}
.owner-direct{font-weight:900;color:var(--red)!important;letter-spacing:.8px;font-size:13.5px!important}
.owner-photo{margin:0;text-align:center}
.op-frame{background:#e9e2d3;border:1px dashed #bcb4a8;color:#a89f8e;display:grid;place-items:center;aspect-ratio:4/5;max-width:280px;margin:0 auto 12px}
.owner-photo figcaption b{display:block;font-size:15px;letter-spacing:1.6px;color:#14120f}
.owner-photo figcaption small{display:block;color:#8a8172;font-size:11.5px;letter-spacing:2px;text-transform:uppercase;margin-top:2px}
.op-note{display:block;margin-top:10px;color:#a89f8e;font-size:11px;font-style:italic}

/* ---------- Reviews: V4 placeholder slots ---------- */
.rv-tag{display:block;font-size:10.5px;letter-spacing:2px;color:var(--gold);margin-bottom:8px}
.rv-body{display:block;margin-bottom:12px;color:#c8c1b2;font-style:italic}
.review-actions{display:flex;flex-direction:column;align-items:center;gap:12px;margin:28px 0 0}
.review-actions .button.primary{background:var(--red);color:#fff;font-weight:900;font-size:12.5px;letter-spacing:1.2px;text-transform:uppercase;text-decoration:none;padding:13px 22px;display:inline-block}
.review-actions .button.primary:hover{background:#7a1e22}
.see-all{color:var(--gold);font-weight:900;font-size:12.5px;letter-spacing:.6px;text-decoration:none}
.see-all:hover{text-decoration:underline}
.rv-pending{display:block;max-width:640px;margin:22px auto 0;color:#8f887a;font-size:11.3px;line-height:1.55;font-style:italic}

/* ---------- Discount banner additions ---------- */
.disc-cta{font-weight:900;letter-spacing:.6px;color:#f4efe5!important;margin-top:10px!important}
.disc-cta a{color:var(--gold);text-decoration:none}
.disc-cta a:hover{text-decoration:underline}
.disc-note{display:block;margin-top:8px;color:#a89f8e;font-size:11.5px}

/* ---------- Privacy section ---------- */
.privacy{background:#0d0c0b;color:#c8c1b2;border-top:1px solid #ffffff14;padding:64px clamp(20px,7vw,110px)}
.privacy h4{font-family:Impact,Haettenschweiler,sans-serif;font-weight:400;font-size:clamp(22px,3vw,28px);letter-spacing:.8px;text-transform:uppercase;color:#f4efe5;margin:0 auto 14px}
.privacy h4,.privacy p{max-width:820px;margin-left:auto;margin-right:auto}
.privacy p{font-size:13px;line-height:1.7;margin:0 auto 12px}
.privacy a{color:var(--gold);text-decoration:none;font-weight:700}
.privacy a:hover{text-decoration:underline}

/* ---------- V3 footer (4 columns) ---------- */
.v3-footer{background:#090909;color:#c8c1b2;border-top:1px solid #ffffff14;padding:56px clamp(20px,7vw,110px);display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:clamp(22px,4vw,48px)}
.v3-footer .footer-brand{display:flex;gap:14px;align-items:flex-start}
.v3-footer .footer-brand img{width:74px;height:auto}
.v3-footer .footer-brand b{font-family:Impact,Haettenschweiler,sans-serif;font-weight:400;font-size:19px;letter-spacing:1.4px;color:#f4efe5;line-height:1.15;display:block}
.v3-footer .footer-brand small{display:block;color:var(--gold);font-size:10px;letter-spacing:2px;margin-top:6px}
.v3-footer h6{margin:0 0 12px;font-size:11px;letter-spacing:2px;text-transform:uppercase;color:#f4efe5}
.v3-footer .foot-col{display:flex;flex-direction:column;gap:8px}
.v3-footer .foot-col a,.v3-footer .foot-col span{color:#a89f8e;font-size:12.8px;text-decoration:none;line-height:1.5}
.v3-footer .foot-col a:hover{color:var(--gold)}
.footer-thanks{background:#090909;color:#a89f8e;text-align:center;padding:0 clamp(20px,7vw,110px) 46px}
.footer-thanks p{margin:0 auto 8px;font-size:13.5px;line-height:1.7;color:#c8c1b2}
.footer-thanks small{color:#7a7264;font-size:11px;letter-spacing:1.4px;text-transform:uppercase}

/* ---------- Anchor offsets for new sections ---------- */
#privacy,#agreement{scroll-margin-top:92px}

@media (max-width:900px){
  .owner-grid{grid-template-columns:1fr}
  .v3-footer{grid-template-columns:1fr 1fr}
}
@media (max-width:560px){
  .v3-footer{grid-template-columns:1fr;text-align:center}
  .v3-footer .footer-brand{justify-content:center;text-align:left}
  .v3-footer .foot-col{align-items:center}
}
.osd-cal .cal-legend{text-transform:none;letter-spacing:normal;font-weight:400}

/* ---------- Discount ID upload (Oct 2026) ---------- */
.id-upload{display:block;border:2px dashed #c9a24b;background:#fffdf6;padding:16px 18px;cursor:pointer;text-transform:none;letter-spacing:normal}
.id-upload:hover{border-color:var(--red)}
.id-upload .idu-title{display:block;font-size:13px;font-weight:900;color:#14120f;margin-bottom:3px}
.id-upload .idu-sub{display:block;font-size:11.5px;font-weight:400;color:#8a8172;margin-bottom:10px}
.id-upload input[type=file]{display:block;width:100%;font-size:12.5px;font-weight:400;color:#3d3a33;cursor:pointer}
.id-upload input[type=file]::file-selector-button{background:var(--red);color:#fff;border:0;font-weight:900;font-size:11.5px;letter-spacing:.8px;text-transform:uppercase;padding:9px 14px;margin-right:12px;cursor:pointer}
.id-upload input[type=file]::file-selector-button:hover{background:#7a1e22}
.id-note{font-size:12.3px;line-height:1.5;padding:9px 12px;margin:8px 0 0;text-transform:none;letter-spacing:normal;font-weight:400}
.id-note.ok{background:#e6f5e9;border:1px solid #bfe0c6;color:#276238}
.id-note.err{background:#fdecec;border:1px solid #e5b5b5;color:#7c2a2a}

.cp-review{display:inline-block;margin:4px 0 14px;color:#d89b2b;font-size:13px;font-weight:700;letter-spacing:.4px;text-decoration:none;border-bottom:1px solid #d89b2b66}
.cp-review:hover{border-bottom-color:#d89b2b}

.review-card.featured{grid-column:1/-1;text-align:left}
.review-card.featured .stars,.review-card.featured .rv-tag,.review-card.featured em{text-align:center;display:block}
.review-card.featured .rv-body{display:block;max-width:760px;margin:0 auto 10px}

.trust-line{margin-top:18px}
