/* ============================================================
   ALUFORMA.PRO — STRONA "WYŚLIJ PROJEKT / KONTAKT" — style
   specyficzne dla strony. Ładowane po style.css, nadpisuje
   m.in. domyślny padding sekcji (.aluf section).
   ============================================================ */

.aluf section{padding:64px 0;}

/* Hero kompaktowy */
.aluf .hero-compact{background:var(--graphite);color:var(--alu-light);padding:56px 0 44px;}
.aluf .hero-compact .wrap{max-width:820px;}
.aluf .hero-compact h1{font-size:clamp(28px,3.6vw,40px);line-height:1.2;color:var(--white);margin-bottom:16px;letter-spacing:-0.3px;}
.aluf .hero-compact p{font-size:15.5px;color:#C9CCD1;max-width:640px;line-height:1.65;margin-bottom:28px;}
.aluf .trust-chips{display:flex;flex-wrap:wrap;gap:10px;}
.aluf .trust-chip{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:var(--alu-light);border:1px solid var(--border-dark);border-radius:20px;padding:9px 14px 9px 12px;font-weight:500;}
.aluf .trust-chip svg{width:15px;height:15px;color:var(--brass);}

/* Stepper */
.aluf .stepper{display:flex;justify-content:space-between;max-width:900px;margin:0 auto 42px;position:relative;}
.aluf .stepper::before{content:'';position:absolute;top:15px;left:0;right:0;height:1px;background:var(--border-light);z-index:0;}
.aluf .step-dot{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:9px;flex:1;}
.aluf .step-dot .n{width:31px;height:31px;border-radius:50%;background:var(--white);border:1px solid var(--border-light);display:flex;align-items:center;justify-content:center;font-size:12.5px;font-weight:600;color:var(--text-muted-dark);transition:all .2s ease;}
.aluf .step-dot .lbl{font-size:10.5px;letter-spacing:0.4px;text-transform:uppercase;color:var(--text-muted-dark);font-weight:600;text-align:center;max-width:100px;}
.aluf .step-dot.is-active .n{background:var(--brass);border-color:var(--brass);color:var(--graphite);}
.aluf .step-dot.is-active .lbl{color:var(--text-dark);}
.aluf .step-dot.is-done .n{background:var(--graphite);border-color:var(--graphite);color:var(--white);}
.aluf .step-dot.is-done .n::after{content:'✓';}
.aluf .step-dot.is-done .n span{display:none;}

/* Layout formularza */
.aluf .rfq-shell{display:grid;grid-template-columns:1fr 320px;gap:32px;align-items:start;}
.aluf .rfq-main{background:var(--white);border:1px solid var(--border-light);border-radius:10px;padding:40px 44px;box-shadow:0 24px 60px -32px rgba(17,19,24,0.16);}
.aluf .fstep{display:none;}
.aluf .fstep.is-active{display:block;animation:fadeIn .25s ease;}
@keyframes fadeIn{from{opacity:0;transform:translateY(6px);}to{opacity:1;transform:translateY(0);}}
.aluf .fstep h2{font-size:21px;margin-bottom:8px;}
.aluf .fstep .fstep-sub{font-size:13.5px;color:var(--text-muted-dark);max-width:560px;margin-bottom:28px;line-height:1.6;}

/* Karty person */
.aluf .persona-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
.aluf .persona-card{position:relative;display:block;cursor:pointer;}
.aluf .persona-card input{position:absolute;opacity:0;pointer-events:none;}
.aluf .persona-card .pc-inner{border:1px solid var(--border-light);border-radius:7px;padding:20px 18px;height:100%;transition:all .16s ease;}
.aluf .persona-card .pc-inner svg{width:24px;height:24px;color:var(--brass);margin-bottom:12px;}
.aluf .persona-card .pc-inner h3{font-size:14.5px;margin-bottom:6px;}
.aluf .persona-card .pc-inner p{font-size:12px;color:var(--text-muted-dark);line-height:1.5;margin:0;}
.aluf .persona-card:hover .pc-inner{border-color:var(--brass);}
.aluf .persona-card input:checked ~ .pc-inner{border-color:var(--brass);background:var(--brass-tint);box-shadow:0 0 0 1px var(--brass) inset;}
.aluf .persona-card input:checked ~ .pc-inner h3{color:var(--brass-dark);}
.aluf .persona-card input:focus-visible ~ .pc-inner{outline:2px solid var(--brass);outline-offset:2px;}

/* Pola formularza */
.aluf .field-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.aluf .field{margin-bottom:20px;}
.aluf .field label{display:flex;align-items:center;gap:6px;font-size:11.5px;letter-spacing:0.5px;text-transform:uppercase;font-weight:600;color:var(--text-dark);margin-bottom:8px;}
.aluf .field label .req{color:var(--brass-dark);}
.aluf .field input[type=text],
.aluf .field input[type=tel],
.aluf .field input[type=email],
.aluf .field input[type=date],
.aluf .field select,
.aluf .field textarea{
  width:100%;font-family:inherit;font-size:14px;color:var(--text-dark);
  border:1px solid var(--border-light);border-radius:5px;padding:12px 14px;
  background:var(--white);transition:border-color .15s ease,box-shadow .15s ease;
}
.aluf .field input:focus,
.aluf .field select:focus,
.aluf .field textarea:focus{outline:none;border-color:var(--brass);box-shadow:0 0 0 3px var(--brass-tint);}
.aluf .field textarea{resize:vertical;min-height:110px;}
.aluf .field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236B6F73' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px;padding-right:38px;}
.aluf .field .hint{font-size:11.5px;color:var(--text-muted-dark);margin-top:6px;line-height:1.5;}
.aluf .field.has-error input,
.aluf .field.has-error select,
.aluf .field.has-error textarea{border-color:#B54747;}
.aluf .field .err-msg{display:none;font-size:11.5px;color:#B54747;margin-top:6px;font-weight:500;}
.aluf .field.has-error .err-msg{display:block;}
.aluf .field-title{font-size:11.5px;letter-spacing:0.5px;text-transform:uppercase;font-weight:600;color:var(--text-dark);margin-bottom:12px;display:flex;align-items:center;gap:6px;}

/* Tooltip informacyjny */
.aluf .tip-ico{position:relative;display:inline-flex;align-items:center;justify-content:center;width:15px;height:15px;border-radius:50%;background:var(--silver-1);color:var(--text-muted-dark);font-size:10px;font-weight:700;font-family:Georgia,serif;font-style:italic;cursor:help;text-transform:none;letter-spacing:0;}
.aluf .tip-ico .bubble{display:none;position:absolute;bottom:calc(100% + 9px);left:50%;transform:translateX(-50%);width:230px;background:var(--graphite);color:var(--alu-light);font-size:11.5px;font-weight:400;line-height:1.5;padding:11px 13px;border-radius:6px;box-shadow:0 14px 30px -10px rgba(0,0,0,0.4);z-index:5;text-transform:none;letter-spacing:0;}
.aluf .tip-ico .bubble::after{content:'';position:absolute;top:100%;left:50%;transform:translateX(-50%);border:6px solid transparent;border-top-color:var(--graphite);}
.aluf .tip-ico:hover .bubble,
.aluf .tip-ico:focus .bubble{display:block;}

/* Grupy chipów (zakres, dokumentacja) */
.aluf .chip-group{margin-bottom:26px;}
.aluf .chip-group-label{font-size:11.5px;letter-spacing:0.6px;text-transform:uppercase;font-weight:700;color:var(--text-muted-dark);margin-bottom:11px;}
.aluf .chip-row{display:flex;flex-wrap:wrap;gap:9px;}
.aluf .chip-check{position:relative;cursor:pointer;}
.aluf .chip-check input{position:absolute;opacity:0;pointer-events:none;}
.aluf .chip-check span{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:500;color:var(--text-dark);border:1px solid var(--border-light);border-radius:20px;padding:9px 15px;transition:all .15s ease;}
.aluf .chip-check span::before{content:'';width:14px;height:14px;border-radius:3px;border:1px solid var(--border-light);flex-shrink:0;transition:all .15s ease;}
.aluf .chip-check:hover span{border-color:var(--brass);}
.aluf .chip-check input:checked + span{background:var(--brass-tint);border-color:var(--brass);color:var(--brass-dark);}
.aluf .chip-check input:checked + span::before{background:var(--brass);border-color:var(--brass);}
.aluf .chip-check input:focus-visible + span{outline:2px solid var(--brass);outline-offset:2px;}

/* Radio-chip (etap inwestycji, termin, budżet jako przyciski) */
.aluf .radio-row{display:flex;flex-wrap:wrap;gap:9px;}
.aluf .radio-chip{position:relative;cursor:pointer;}
.aluf .radio-chip input{position:absolute;opacity:0;pointer-events:none;}
.aluf .radio-chip span{display:inline-flex;align-items:center;font-size:12.5px;font-weight:500;color:var(--text-dark);border:1px solid var(--border-light);border-radius:20px;padding:9px 16px;transition:all .15s ease;}
.aluf .radio-chip:hover span{border-color:var(--brass);}
.aluf .radio-chip input:checked + span{background:var(--brass);border-color:var(--brass);color:var(--graphite);font-weight:600;}

/* Strefa plików */
.aluf .drop-zone{border:1.5px dashed var(--border-light);border-radius:8px;padding:30px 20px;text-align:center;cursor:pointer;transition:all .15s ease;background:var(--bg-warm);}
.aluf .drop-zone:hover,
.aluf .drop-zone.is-drag{border-color:var(--brass);background:var(--brass-tint);}
.aluf .drop-zone svg{width:26px;height:26px;color:var(--brass);margin:0 auto 10px;}
.aluf .drop-zone .dz-main{font-size:13.5px;font-weight:600;color:var(--text-dark);margin-bottom:4px;}
.aluf .drop-zone .dz-sub{font-size:11.5px;color:var(--text-muted-dark);}
.aluf .file-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;}
.aluf .file-chip{display:inline-flex;align-items:center;gap:8px;font-size:12px;background:var(--white);border:1px solid var(--border-light);border-radius:5px;padding:7px 8px 7px 12px;}
.aluf .file-chip button{background:none;border:0;color:var(--text-muted-dark);cursor:pointer;width:18px;height:18px;display:flex;align-items:center;justify-content:center;border-radius:50%;}
.aluf .file-chip button:hover{background:#F1E4D2;color:#B54747;}

/* Zgody RODO */
.aluf .consent{display:flex;align-items:flex-start;gap:11px;padding:14px 16px;border:1px solid var(--border-light);border-radius:7px;margin-bottom:12px;}
.aluf .consent input{margin-top:3px;flex-shrink:0;width:16px;height:16px;accent-color:var(--brass);}
.aluf .consent label{font-size:12.5px;color:var(--text-muted-dark);line-height:1.55;}
.aluf .consent .req{color:var(--brass-dark);font-weight:700;}

/* Podsumowanie */
.aluf .summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:28px;}
.aluf .summary-card{background:var(--bg-warm);border-radius:7px;padding:16px 18px;}
.aluf .summary-card .sc-label{font-size:10.5px;letter-spacing:0.6px;text-transform:uppercase;font-weight:700;color:var(--text-muted-dark);margin-bottom:6px;}
.aluf .summary-card .sc-value{font-size:13.5px;color:var(--text-dark);font-weight:500;line-height:1.5;}
.aluf .summary-card .sc-value.is-empty{color:var(--text-muted-dark);font-style:italic;font-weight:400;}

/* Nawigacja kroków */
.aluf .fnav{display:flex;justify-content:space-between;align-items:center;margin-top:32px;padding-top:26px;border-top:1px solid var(--border-light);}
.aluf .fnav .btn[disabled]{visibility:hidden;}

/* Panel doradcy (sidebar) */
.aluf .advisor-panel{position:sticky;top:96px;}
.aluf .advisor-card{background:var(--graphite);color:var(--alu-light);border-radius:10px;padding:26px 24px;margin-bottom:16px;}
.aluf .advisor-head{display:flex;align-items:center;gap:10px;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--border-dark);}
.aluf .advisor-avatar{width:38px;height:38px;border-radius:50%;background:var(--brass);color:var(--graphite);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;flex-shrink:0;}
.aluf .advisor-head .ah-name{font-size:13px;font-weight:600;color:var(--white);}
.aluf .advisor-head .ah-role{font-size:11px;color:var(--text-muted-light);}
.aluf .advisor-tip{min-height:128px;}
.aluf .advisor-tip .at-kicker{display:flex;align-items:center;gap:7px;font-size:10.5px;letter-spacing:0.8px;text-transform:uppercase;color:var(--brass);font-weight:700;margin-bottom:10px;}
.aluf .advisor-tip .at-kicker svg{width:14px;height:14px;}
.aluf .advisor-tip p{font-size:13px;color:var(--alu-light);line-height:1.6;margin:0;}
.aluf .advisor-tip p + p{margin-top:10px;}
.aluf .trust-list{background:var(--white);border:1px solid var(--border-light);border-radius:10px;padding:22px 22px;}
.aluf .trust-list li{display:flex;align-items:flex-start;gap:10px;font-size:12.5px;color:var(--text-dark);line-height:1.5;margin-bottom:14px;}
.aluf .trust-list li:last-child{margin-bottom:0;}
.aluf .trust-list li svg{width:17px;height:17px;color:var(--brass);flex-shrink:0;margin-top:1px;}
.aluf .direct-contact{margin-top:16px;padding-top:16px;border-top:1px solid var(--border-light);}
.aluf .direct-contact .dc-lbl{font-size:10.5px;letter-spacing:0.5px;text-transform:uppercase;color:var(--text-muted-dark);font-weight:700;margin-bottom:8px;}
.aluf .direct-contact a{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-dark);font-weight:500;margin-bottom:6px;}
.aluf .direct-contact a svg{width:15px;height:15px;color:var(--brass);}

/* Stan sukcesu */
.aluf .rfq-success{display:none;text-align:center;padding:30px 10px 10px;}
.aluf .rfq-success.is-active{display:block;}
.aluf .rfq-success .ok-ico{width:56px;height:56px;border-radius:50%;background:rgba(63,143,95,0.12);color:var(--ok);display:flex;align-items:center;justify-content:center;margin:0 auto 20px;}
.aluf .rfq-success .ok-ico svg{width:26px;height:26px;}
.aluf .rfq-success h2{font-size:23px;margin-bottom:12px;}
.aluf .rfq-success p{font-size:14.5px;color:var(--text-muted-dark);max-width:480px;margin:0 auto 8px;line-height:1.65;}
.aluf .rfq-success .ref-no{display:inline-block;font-size:12px;background:var(--bg-warm);border-radius:5px;padding:7px 14px;color:var(--text-dark);font-weight:600;margin:14px 0 26px;letter-spacing:0.3px;}
.aluf .rfq-success .success-ctas{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}

/* Responsywność — strona kontakt */
@media (max-width: 960px){
  .aluf .rfq-shell{grid-template-columns:1fr;}
  .aluf .advisor-panel{position:static;}
  .aluf .persona-grid{grid-template-columns:repeat(2,1fr);}
  .aluf .field-grid{grid-template-columns:1fr;}
  .aluf .summary-grid{grid-template-columns:1fr;}
  .aluf .stepper .lbl{display:none;}
}
@media (max-width: 640px){
  .aluf .hero-compact{padding:34px 0 30px;}
  .aluf .rfq-main{padding:26px 20px;}
  .aluf .persona-grid{grid-template-columns:1fr;}
  .aluf .stepper{margin-bottom:30px;}
  .aluf .fnav{flex-wrap:wrap;gap:12px;}
  .aluf .fnav .btn{flex:1 1 auto;}
}
@media (max-width: 600px){
  .aluf section{padding:44px 0;}
}
