/* Quote page (/quote/) */
.qhero{background:var(--primary);padding:48px 0 40px}
.qhero h1{font-size:clamp(2.2rem,5vw,3.4rem);margin-bottom:.3em}
.qhero h1::after{content:"";display:block;width:64px;height:6px;background:var(--accent);margin-top:14px;border-radius:3px}
.qmain{display:grid;grid-template-columns:1fr 280px;gap:28px;align-items:start;padding-top:32px;padding-bottom:72px}
.qmain > *{min-width:0}
.qform,.qthanks{box-shadow:var(--shadow);border:1px solid var(--line)}
.qside{display:flex;flex-direction:column;gap:12px;position:sticky;top:92px}
.qside div{background:#fff;border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:10px;padding:14px 16px}
.qside b{display:block;font-family:var(--head);color:var(--primary)}
.qside span{font-size:.9rem;color:var(--muted)}
@media (max-width:860px){.qmain{grid-template-columns:1fr}.qside{position:static}}

/* drop zone: the whole box is a <label> for the file input, so a click anywhere opens the picker */
.dropzone{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;text-align:center;
  border:2px dashed #C9CFD8;border-radius:12px;background:#F7F9FC;padding:26px 18px;cursor:pointer;transition:border-color .15s,background .15s}
.dropzone:hover,.dropzone.over{border-color:var(--accent);background:#FFF4EF}
.dropzone input[type=file]{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.dropzone:focus-within{outline:3px solid var(--accent);outline-offset:2px}
.dz-icon{font-size:1.8rem;color:var(--accent);line-height:1}
.dz-main{font-size:1rem}
.dz-main b{color:var(--primary)}
.dz-sub{font-size:.8rem;color:var(--muted)}
.filelist{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}
.filelist li{display:flex;justify-content:space-between;align-items:center;gap:10px;background:#F2F5FA;border-radius:8px;padding:8px 12px;font-size:.9rem}
.filelist li span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.filelist li small{color:var(--muted);margin-left:6px}
.filelist button{border:0;background:none;color:var(--muted);font-size:1.2rem;cursor:pointer;line-height:1}
.filelist button:hover{color:#c2410c}
.file-msg{font-size:.85rem;color:#c2410c;margin-top:6px}
.file-msg:empty{display:none}

.more{margin:6px 0 16px;border:1px solid var(--line);border-radius:10px;padding:0 14px;background:#FBFCFD}
.more summary{cursor:pointer;padding:14px 0;font-weight:700;color:var(--primary);list-style:none}
.more summary::-webkit-details-marker{display:none}
.more summary::before{content:"+ ";color:var(--accent);font-weight:900}
.more[open] summary::before{content:"– "}
.more[open]{padding-bottom:6px}
.qsend{width:100%;justify-content:center;font-size:1.05rem;padding:16px}
.qthanks{text-align:center;padding:44px 30px}
.check-big{width:64px;height:64px;border-radius:50%;background:var(--accent);color:var(--ink);font-size:2rem;font-weight:900;display:grid;place-items:center;margin:0 auto 14px}
.ty-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:18px}
.ty-actions .btn-ghost{color:var(--primary)}
.quote-cta h3{margin-bottom:6px}
.est-attached{border-left-color:var(--accent)}
