/* Briefing «Richiedi un preventivo»: un solo foglio per le pagine dei servizi e per la finestra della Galleria.
   Righe sottili, niente riquadri né sfumature, raggi piccoli. I colori vengono dalle variabili qui sotto:
   la Galleria le ridefinisce sulla sua finestra, cosi il modulo prende la sua grafica senza duplicare le regole. */
.brief{--b-ink:#e9eef2;--b-bg:#0c0e11;--b-muted:#a6b2bd;--b-line:rgba(220,232,242,.15);--b-edge:rgba(220,232,242,.23);--b-field:#141b22;--b-chip:#161a1f;--b-accent:#a5d4f4;--b-error:#f2b8b5;--b-r-field:8px;--b-r-chip:8px;--b-mono:'JetBrains Mono',ui-monospace,'Cascadia Mono',monospace}
.brief-lead{max-width:56ch;color:var(--b-muted);margin:0 0 24px}
.brief .brief-start{display:grid;gap:10px;max-width:760px;margin:0;padding:0;border:0;background:none}
.brief .brief-start[hidden]{display:none}
.brief label{font-size:15px}
.brief input,.brief select,.brief textarea{font:inherit;font-size:16px;color:var(--b-ink);background:var(--b-field);border:1px solid var(--b-edge);padding:12px 14px;border-radius:var(--b-r-field);width:100%;min-height:48px;margin:0}
.brief textarea{resize:vertical;line-height:1.5}
.brief input::placeholder,.brief textarea::placeholder{color:var(--b-muted);opacity:.8}
.brief :focus-visible{outline:2px solid var(--b-accent);outline-offset:3px}
.brief .btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 24px;border-radius:10px;background:var(--b-ink);color:var(--b-bg);font-weight:500;font-size:15px;line-height:1.2;font-family:inherit;text-decoration:none;border:1px solid var(--b-ink);cursor:pointer;justify-self:start}
.brief .btn:hover{background:#fff}
.brief .btn-ghost{background:rgba(200,214,226,.05);color:var(--b-ink);border-color:var(--b-edge)}
.brief .btn-ghost:hover{background:rgba(200,214,226,.12)}
.brief .btn[disabled]{opacity:.55;cursor:progress}
.brief .request-note{font-size:13px;color:var(--b-muted);line-height:1.6;margin:4px 0 12px}
.brief .brief-tips{margin:-4px 0 2px;max-width:62ch}
.brief .muted{color:var(--b-muted)}
.brief-doc{max-width:860px;border-top:1px solid var(--b-edge);padding-top:24px}
.brief-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:20px;border-bottom:1px solid var(--b-line)}
.brief-mark .wm{width:96px;height:auto;color:var(--b-ink);display:block}
.brief .wm .k{transform:translate(194px,41px);transition:none}.brief .wm .kt{transform:none;opacity:1;transition:none}
.brief-meta{text-align:right}.brief-meta p{margin:0;font:400 13px/1.6 var(--b-mono);color:var(--b-muted)}
.brief-meta .brief-kind{margin:0 0 2px;font:500 11px/1.3 var(--b-mono);letter-spacing:.18em;text-transform:uppercase}
.brief-meta .brief-code{color:var(--b-ink)}
.brief .brief-form{display:grid;gap:0}
.brief-sec{padding:26px 0;border-bottom:1px solid var(--b-line);display:grid;gap:18px}.brief-sec:last-of-type{border-bottom:0}
.brief-sec h3{margin:0;font-weight:400;font-size:21px;line-height:1.4;font-family:inherit;color:var(--b-ink)}
.brief-field{display:grid;gap:8px;min-width:0}.brief .brief-field label,.brief legend{margin:0;font-size:15px}.brief legend{padding:0;margin-bottom:10px}
.brief .brief-field .muted{font-size:14px}
.brief fieldset{border:0;padding:0;margin:0;min-width:0}
.brief-chips{display:flex;flex-wrap:wrap;gap:8px}
.brief .brief-chip{position:relative;display:inline-flex;align-items:center;min-height:44px;padding:10px 16px;border:1px solid var(--b-line);border-radius:var(--b-r-chip);background:var(--b-chip);font-size:15px;line-height:1.3;cursor:pointer;margin:0}
.brief .brief-chip:hover{border-color:var(--b-edge);background:rgba(200,214,226,.1)}
.brief .brief-chip input{position:absolute;inset:0;width:100%;height:100%;min-height:0;margin:0;opacity:0;cursor:pointer;border:0;padding:0}
.brief .brief-chip:has(input:checked){background:var(--b-ink);color:var(--b-bg);border-color:var(--b-ink)}
.brief .brief-chip:has(input:focus-visible){outline:2px solid var(--b-accent);outline-offset:3px}
.brief .brief-other{margin-top:10px;max-width:520px;gap:6px}.brief .brief-other[hidden]{display:none}.brief .brief-other label{font-size:14px}
.brief .btn-small{min-height:40px;padding:0 16px;font-size:14px;margin-top:4px}
.brief-summary{margin:24px 0 0;padding:16px 18px;border:1px solid var(--b-line);border-radius:var(--b-r-field);font-size:16px;line-height:1.55;display:grid;gap:6px;max-width:760px}
.brief-summary .brief-kind{font:500 11px/1.3 var(--b-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--b-muted)}
.brief-loading{margin:28px 0 8px;color:var(--b-muted);font-size:16px;position:relative;padding-bottom:14px}
.brief-loading::after{content:'';position:absolute;left:0;bottom:0;height:2px;width:40%;background:var(--b-accent);border-radius:2px;animation:brief-run 1.2s ease-in-out infinite alternate}
@keyframes brief-run{from{transform:translateX(0)}to{transform:translateX(150%)}}
@media(prefers-reduced-motion:no-preference){.brief-in{animation:brief-in .55s cubic-bezier(.2,.8,.2,1) calc(var(--i,0)*70ms) both}}
@keyframes brief-in{from{transform:translateY(14px);filter:blur(5px)}}
@media(prefers-reduced-motion:reduce){.brief-loading::after{animation:none;width:100%;opacity:.4}}
.brief-two{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px}
.brief .brief-consent{display:flex;gap:12px;align-items:flex-start;font-size:15px;margin:4px 0 0}
.brief .brief-consent input{width:20px;height:20px;min-height:0;flex:none;margin-top:3px;padding:0;accent-color:#e9eef2}
.brief .brief-consent a{color:inherit;text-underline-offset:4px}
.brief-trap{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0}
.brief-error{margin:0;font-size:14px;color:var(--b-error)}.brief-error[hidden]{display:none}.brief-error-main{margin-top:14px}
.brief [aria-invalid=true]{border-color:var(--b-error)!important}
.brief-actions{display:flex;flex-wrap:wrap;gap:12px;padding-top:20px}
.brief-ok{margin:22px 0 4px;font-size:clamp(18px,1.8vw,21px);line-height:1.6}.brief-ok:focus{outline:none}
.brief-check{display:block;width:52px;height:52px;margin:0 0 14px;fill:none;stroke:var(--b-accent);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 10px rgba(165,212,244,.45))}
@media(prefers-reduced-motion:no-preference){
  .brief-check circle{stroke-dasharray:145;stroke-dashoffset:145;animation:brief-draw .7s cubic-bezier(.65,0,.35,1) forwards}
  .brief-check path{stroke-dasharray:40;stroke-dashoffset:40;animation:brief-draw .45s cubic-bezier(.65,0,.35,1) .55s forwards}
  .brief-check{animation:brief-pop .5s cubic-bezier(.2,.9,.25,1.3) both}
}
@keyframes brief-draw{to{stroke-dashoffset:0}}
@keyframes brief-pop{from{transform:scale(.6);opacity:0}}
.brief-rows{display:grid;grid-template-columns:minmax(150px,30%) minmax(0,1fr);gap:0;margin:16px 0 0}
.brief-rows dt,.brief-rows dd{margin:0;padding:14px 0;border-top:1px solid var(--b-line);overflow-wrap:anywhere}
.brief-rows dt{font-size:15px;line-height:1.5;color:var(--b-muted);padding-right:20px}
.brief-rows dd{white-space:pre-line}
.brief-foot{margin:24px 0 0;font-size:13px;color:var(--b-muted)}
.brief-links{font-size:13px;color:var(--b-muted);line-height:1.6;margin:16px 0 0}.brief-links a{color:inherit;text-underline-offset:3px}
@media(max-width:560px){.brief #brief-desc{min-height:136px}.brief-head{align-items:center}.brief-rows{grid-template-columns:1fr}.brief-rows dt{padding-bottom:2px}.brief-rows dd{border-top:0;padding-top:0}.brief-actions .btn{width:100%}}

/* PDF: si stampa solo la copia del documento inviato, su fondo bianco */
#brief-print{display:none}
@media print{
  @page{margin:16mm}
  html.brief-ready,html.brief-ready body{background:#fff!important;color:#111!important;padding:0;overflow:visible!important}
  html.brief-ready body>*:not(#brief-print){display:none!important}
  html.brief-ready #brief-print{display:block!important;max-width:none;border:0;background:#fff;padding:0;color:#111;font-family:Geist,Arial,sans-serif}
  #brief-print .wm{color:#111}#brief-print .brief-meta p,#brief-print .brief-rows dt,#brief-print .brief-foot{color:#555!important}#brief-print .brief-meta .brief-code,#brief-print .brief-meta .brief-kind{color:#111!important}
  #brief-print .brief-head,#brief-print .brief-rows dt,#brief-print .brief-rows dd{border-color:#ccc!important}
  #brief-print .brief-rows dt,#brief-print .brief-rows dd{break-inside:avoid}
  #brief-print .brief-head{flex-direction:row}#brief-print .brief-meta{text-align:right}#brief-print .brief-rows{grid-template-columns:minmax(140px,30%) minmax(0,1fr)}
}

/* versione finale: sistema comune CPHR (vedi site.css «Sistema comune»): acciaio, 4 px, azioni in Michroma maiuscolo */
.brief{--b-r-field:4px;--b-r-chip:4px}
.brief .btn{border:1px solid transparent;border-radius:4px;background:linear-gradient(180deg,#2b333c,#181d22) padding-box,linear-gradient(180deg,#f4f8fbd9,#e9eef26b 60%,#e9eef2a6) border-box;color:var(--b-ink);font:400 11px/1.2 Michroma,'Eurostile',sans-serif;letter-spacing:.12em;text-transform:uppercase}
@media(hover:hover){.brief .btn:hover{background:linear-gradient(180deg,#f6f9fb,#d2dce4) padding-box,linear-gradient(#f6f9fb,#f6f9fb) border-box;color:var(--b-bg)}}
.brief .btn:active{background:linear-gradient(180deg,#1b2128,#12161a) padding-box,linear-gradient(180deg,#f4f8fbd9,#e9eef26b 60%,#e9eef2a6) border-box;color:var(--b-ink)}
.brief .btn-ghost{border:0;background:none;color:#c9d3db;font:500 15px/1.2 inherit;font-family:inherit;letter-spacing:0;text-transform:none;text-decoration:underline;text-underline-offset:5px}
@media(hover:hover){.brief .btn-ghost:hover{background:none;color:var(--b-ink)}}
.brief :focus-visible{outline-color:#edf6ff}
.brief .btn-small{min-height:44px}
