.dumpster-page{--dumpster-green:#168a43;--dumpster-gold:#d49a3c;--dumpster-dark:#101815;--dumpster-paper:#f5f3eb;background:var(--dumpster-paper)}
.dumpster-page .site-header{border-bottom:0}
.dumpster-hero{position:relative;overflow:hidden;min-height:660px;background:var(--dumpster-dark);color:#fff}
.dumpster-hero:after{content:'';position:absolute;right:-10vw;bottom:-18vw;width:58vw;height:42vw;background:var(--dumpster-green);clip-path:polygon(14% 0,100% 0,100% 100%,0 100%,0 30%);opacity:.28}
.dumpster-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,.9fr) minmax(460px,1.1fr);gap:70px;align-items:center;min-height:660px;padding-block:72px}
.dumpster-hero-copy{max-width:610px}
.dumpster-kicker{margin:0 0 20px;color:#f0b95c;font-weight:850;letter-spacing:.02em}
.dumpster-hero h1{max-width:10ch;margin:0;font-size:clamp(3.7rem,6.8vw,6.7rem);line-height:.88;letter-spacing:-.04em}
.dumpster-lead{max-width:48ch;margin:30px 0 0;color:#e3ece6;font-size:1.14rem}
.dumpster-actions{display:flex;gap:22px;align-items:center;flex-wrap:wrap;margin-top:34px}
.dumpster-button,.dumpster-submit{clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,0 100%);border:0;background:var(--dumpster-gold);color:var(--dumpster-dark);font-weight:850;text-decoration:none}
.dumpster-button{display:inline-flex;min-height:54px;padding:15px 24px;align-items:center}
.dumpster-button:hover,.dumpster-submit:hover{background:#efb95d}
.dumpster-phone{display:inline-flex;gap:8px;align-items:center;color:#fff;font-weight:800;text-decoration:none}
.dumpster-phone .icon{filter:brightness(0) invert(1)}
.dumpster-mobile-qr{display:none}
.dumpster-visual{position:relative;min-height:470px}
.dumpster-photo-shape{position:absolute;inset:0 0 24px 28px;overflow:hidden;clip-path:polygon(14% 0,100% 0,100% 100%,0 100%,0 29%);background:var(--dumpster-green)}
.dumpster-photo-shape:after{content:'';position:absolute;inset:0;background:rgba(16,24,21,.16)}
.dumpster-photo-shape img{width:100%;height:100%;object-fit:cover}
.dumpster-qr-card{position:absolute;z-index:2;left:0;bottom:0;display:flex;gap:14px;align-items:center;padding:14px 18px;background:#fff;color:var(--dumpster-dark);text-decoration:none}
.dumpster-qr-card img{width:92px;height:92px}
.dumpster-qr-card strong,.dumpster-qr-card small{display:block}
.dumpster-qr-card strong{font-family:Bricolage;font-size:1.2rem}
.dumpster-qr-card small{color:var(--muted)}

.dumpster-request-section{position:relative;padding:clamp(70px,9vw,118px) 0;background:var(--dumpster-paper)}
.dumpster-ticket{display:grid;grid-template-columns:.82fr 1.18fr;min-height:580px;overflow:hidden;background:var(--dumpster-green);color:#fff;clip-path:polygon(0 0,calc(100% - 34px) 0,100% 34px,100% 100%,34px 100%,0 calc(100% - 34px))}
.dumpster-ticket-copy{display:flex;flex-direction:column;padding:58px 50px 48px}
.dumpster-ticket-copy h2{max-width:9ch;margin:0;font-size:clamp(3rem,5vw,5rem);line-height:.9}
.dumpster-ticket-copy>p{max-width:38ch;margin:24px 0;color:#eef7f1}
.dumpster-ticket-note{display:flex;gap:14px;align-items:flex-start;margin-top:auto;padding-top:30px}
.dumpster-ticket-note .icon{width:30px;height:30px;flex:none;filter:brightness(0) invert(1)}
.dumpster-ticket-note strong,.dumpster-ticket-note small{display:block}
.dumpster-ticket-note small{margin-top:5px;color:#dce8df}
.dumpster-ticket-form{position:relative;padding:54px 52px;background:#fff;color:var(--dumpster-dark)}
.dumpster-ticket-form:before,.dumpster-ticket-form:after{content:'';position:absolute;left:-18px;width:36px;height:36px;border-radius:50%;background:var(--dumpster-paper)}
.dumpster-ticket-form:before{top:-18px}.dumpster-ticket-form:after{bottom:-18px}
.dumpster-ticket-form>form:before{content:'';position:absolute;left:-2px;top:22px;bottom:22px;border-left:4px dotted var(--dumpster-paper)}
.dumpster-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.dumpster-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:19px}
.dumpster-field{display:flex;flex-direction:column;gap:7px}
.dumpster-field-wide{grid-column:1/-1}
.dumpster-field label{font-size:.82rem;font-weight:850;color:var(--ink-2)}
.dumpster-field input,.dumpster-field select,.dumpster-field textarea{width:100%;min-height:54px;border:1px solid var(--line);border-radius:0;background:#f1f6f2;color:var(--dumpster-dark);padding:12px 14px}
.dumpster-field textarea{min-height:112px;resize:vertical}
.dumpster-field input:hover,.dumpster-field select:hover,.dumpster-field textarea:hover{border-color:var(--dumpster-green)}
.dumpster-field input:focus,.dumpster-field select:focus,.dumpster-field textarea:focus{outline:3px solid rgba(212,154,60,.42);outline-offset:1px;border-color:var(--dumpster-green)}
.dumpster-payment-note{margin:18px 0 0;color:var(--muted);font-size:.82rem}
.dumpster-consent{display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:start;margin:22px 0;color:var(--ink-2);font-size:.84rem;cursor:pointer}
.dumpster-consent input{width:19px;height:19px;margin:2px 0 0;accent-color:var(--dumpster-green)}
.dumpster-submit{display:flex;justify-content:space-between;align-items:center;width:100%;min-height:58px;padding:15px 20px;cursor:pointer;font-size:1rem}
.dumpster-submit[disabled]{opacity:.68;cursor:wait}
.dumpster-form-status{min-height:1.5em;margin:12px 0 0;color:#a12d1d;font-size:.84rem}
.dumpster-success{min-height:100%;padding:12px 0}
.dumpster-success[hidden]{display:none}
.dumpster-success-mark{display:grid;place-items:center;width:58px;height:58px;background:var(--dumpster-gold);color:var(--dumpster-dark);font-size:1.65rem;font-weight:900;clip-path:polygon(0 0,70% 0,100% 30%,100% 100%,0 100%)}
.dumpster-success h3{margin:24px 0 12px;font-size:2.45rem}
.dumpster-success dl{margin:28px 0}
.dumpster-success dl div{display:grid;grid-template-columns:150px 1fr;gap:20px;padding:11px 14px}.dumpster-success dl div:nth-child(odd){background:#f1f6f2}
.dumpster-success dt{font-weight:850}.dumpster-success dd{margin:0;color:var(--muted)}
.dumpster-success-note{padding:14px;background:var(--mist);color:var(--ink-2);font-size:.84rem}
.dumpster-reset{border:0;background:none;padding:8px 0;color:var(--dumpster-green);font-weight:850;text-decoration:underline;text-underline-offset:4px;cursor:pointer}

.dumpster-flow{padding:clamp(70px,9vw,116px) 0;background:#fff}
.dumpster-flow-heading{display:grid;grid-template-columns:1fr .7fr;gap:50px;align-items:end;margin-bottom:48px}
.dumpster-flow-heading h2{max-width:10ch;margin:0;font-size:clamp(3rem,5vw,5rem);line-height:.9}
.dumpster-flow-heading p{max-width:34ch;margin:0;color:var(--muted);font-size:1.05rem}
.dumpster-flow-grid{display:grid;grid-template-columns:3fr 4fr 5fr;gap:12px;align-items:end}
.dumpster-flow-step{display:grid;grid-template-rows:auto auto;gap:20px;margin:0}
.dumpster-flow-step img{width:100%;object-fit:cover;clip-path:polygon(13% 0,100% 0,100% 100%,0 100%,0 28%);background:var(--mist)}
.dumpster-flow-scan img{height:250px;object-fit:contain;padding:38px;background:var(--dumpster-gold)}
.dumpster-flow-details img{height:350px;object-fit:contain;padding:28px;background:var(--mist)}
.dumpster-flow-confirm img{height:460px}
.dumpster-flow-step h3{margin:0 0 8px;font-size:1.5rem}
.dumpster-flow-step p{margin:0;color:var(--muted);font-size:.92rem}

.dumpster-faq{padding:clamp(70px,8vw,105px) 0;background:var(--dumpster-dark);color:#fff}
.dumpster-faq-shell{display:grid;grid-template-columns:.7fr 1.3fr;gap:80px;align-items:start}
.dumpster-faq h2{position:sticky;top:120px;max-width:8ch;margin:0;font-size:clamp(3rem,5vw,5rem);line-height:.9}
.dumpster-faq-list details{margin:0;background:var(--dumpster-green);color:#fff}
.dumpster-faq-list details:nth-child(2){background:var(--dumpster-gold);color:var(--dumpster-dark)}
.dumpster-faq-list details:nth-child(3){background:#fff;color:var(--dumpster-dark)}
.dumpster-faq-list summary{display:flex;justify-content:space-between;gap:24px;align-items:center;min-height:94px;padding:24px 28px;cursor:pointer;list-style:none;font-family:Bricolage;font-size:1.35rem;font-weight:780}
.dumpster-faq-list summary::-webkit-details-marker{display:none}
.dumpster-faq-list summary span{font-family:Manrope;font-size:1.6rem;transition:transform .2s var(--ease)}
.dumpster-faq-list details[open] summary span{transform:rotate(45deg)}
.dumpster-faq-list details p{max-width:58ch;margin:0;padding:0 28px 30px;color:inherit}

@media (max-width:900px){
  .dumpster-hero-grid{grid-template-columns:1fr;gap:42px;padding-block:58px 70px}
  .dumpster-hero h1{max-width:12ch}
  .dumpster-visual{min-height:420px}
  .dumpster-ticket{grid-template-columns:1fr}
  .dumpster-ticket-copy{min-height:390px}
  .dumpster-ticket-form:before,.dumpster-ticket-form:after{top:-18px;bottom:auto}
  .dumpster-ticket-form:before{left:-18px}.dumpster-ticket-form:after{left:auto;right:-18px}
  .dumpster-ticket-form>form:before{left:22px;right:22px;top:-2px;bottom:auto;border-left:0;border-top:4px dotted var(--dumpster-paper)}
  .dumpster-flow-grid{grid-template-columns:1fr}
  .dumpster-flow-step img,.dumpster-flow-scan img,.dumpster-flow-details img,.dumpster-flow-confirm img{height:clamp(250px,60vw,430px)}
  .dumpster-faq-shell{grid-template-columns:1fr;gap:40px}
  .dumpster-faq h2{position:static;max-width:none}
}

@media (max-width:600px){
  .dumpster-hero{min-height:auto}
  .dumpster-hero-grid{min-height:auto;gap:38px;padding-top:24px}
  .dumpster-mobile-qr{display:grid;justify-items:center;gap:14px;width:100%;padding:24px;background:#fff;color:var(--dumpster-dark);text-align:center;text-decoration:none;clip-path:polygon(0 0,calc(100% - 20px) 0,100% 20px,100% 100%,20px 100%,0 calc(100% - 20px))}
  .dumpster-mobile-qr img{width:min(68vw,240px);height:auto}
  .dumpster-mobile-qr strong,.dumpster-mobile-qr small{display:block}
  .dumpster-mobile-qr strong{font-family:Bricolage;font-size:1.35rem;line-height:1.1}
  .dumpster-mobile-qr small{margin-top:5px;color:var(--muted);font-size:.86rem}
  .dumpster-kicker{font-size:.88rem}
  .dumpster-hero h1{font-size:clamp(3.1rem,15vw,4.7rem)}
  .dumpster-lead{font-size:1rem;margin-top:22px}
  .dumpster-actions{align-items:stretch;flex-direction:column}
  .dumpster-button{justify-content:center;width:100%}
  .dumpster-phone{justify-content:center}
  .dumpster-visual{min-height:355px}
  .dumpster-photo-shape{inset:0 0 34px 0}
  .dumpster-qr-card{display:none}
  .dumpster-request-section{padding:58px 0}
  .dumpster-ticket{clip-path:polygon(0 0,calc(100% - 22px) 0,100% 22px,100% 100%,22px 100%,0 calc(100% - 22px))}
  .dumpster-ticket-copy{min-height:330px;padding:38px 26px 34px}
  .dumpster-ticket-copy h2{font-size:3.5rem}
  .dumpster-ticket-form{padding:38px 24px 32px}
  .dumpster-form-grid{grid-template-columns:1fr}
  .dumpster-field-wide{grid-column:auto}
  .dumpster-success dl div{grid-template-columns:1fr;gap:2px}
  .dumpster-flow-heading{grid-template-columns:1fr;gap:18px;margin-bottom:34px}
  .dumpster-flow-heading h2{font-size:3.25rem}
  .dumpster-faq-list summary{min-height:88px;padding:20px;font-size:1.17rem}
  .dumpster-faq-list details p{padding:0 20px 24px}
}

@media (prefers-reduced-motion:reduce){.dumpster-faq-list summary span{transition:none}}
