/* VAG ITALY request form restyle: visual only, overrides MDB dark + default.css */
:root{--rs-bg:#050506;--rs-txt:#e9ecef;--rs-muted:#9aa1a9;--rs-verde:#19c25a;--rs-bianco:#f4f4f4;--rs-rosso:#ff2b3a;
  --rs-campo:#0e1013;--rs-bordo:#2a2e34;--rs-card:linear-gradient(160deg,#16181c,#0b0c0e)}
body.rs{padding:0;background:radial-gradient(60% 40% at 0% 0%,rgba(25,194,90,.10),transparent 70%),radial-gradient(60% 40% at 100% 0%,rgba(255,43,58,.10),transparent 70%),var(--rs-bg);
  background-attachment:fixed;color:var(--rs-txt);font-family:Inter,system-ui,sans-serif}
body.rs main>.container{max-width:none;padding:0}
body.rs main>.container>div{width:100%;max-width:none;margin:0;padding:0}
.rs-tricolore{height:3px;border-radius:3px;background:linear-gradient(90deg,var(--rs-verde) 0 33%,var(--rs-bianco) 33% 66%,var(--rs-rosso) 66%)}

/* Header */
.rs-testa{display:flex;align-items:center;gap:clamp(.8rem,2vw,1.4rem);max-width:var(--rs-max);margin:0 auto;padding:clamp(1rem,3vh,1.8rem) 16px clamp(.6rem,2vh,1rem)}
.rs-testa img{width:clamp(64px,10vw,96px);height:auto;border-radius:50%;box-shadow:0 0 0 2px #2a2e34,0 8px 30px rgba(0,0,0,.7)}
.rs-testa h1{font-family:Rajdhani,sans-serif;font-weight:700;font-size:clamp(1.5rem,3.6vw,2.2rem);letter-spacing:.06em;text-transform:uppercase;line-height:1.05;margin:0;color:#fff}
.rs-testa p{margin:.35rem 0 0;color:var(--rs-muted);font-size:clamp(.82rem,1.8vw,.95rem);line-height:1.4}
.rs-testa .rs-tricolore{width:90px;margin-top:.5rem}
.rs-banner{display:block;position:relative;height:clamp(110px,24vh,230px);overflow:hidden;background:#000}
.rs-banner .sf{position:absolute;inset:-30px;background:url(/image/restyle/banner_1920.webp) center/cover;filter:blur(20px) brightness(.5)}
.rs-banner img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.rs-banner::after{content:"";position:absolute;inset:auto 0 0;height:30%;background:linear-gradient(transparent,var(--rs-bg))}
@media (max-aspect-ratio:1/1){.rs-banner{display:none}}

/* Form container */
#initRequestForm{max-width:var(--rs-max);margin:0 auto;padding:0 16px}
.rs-sez{position:relative;margin:0 0 1rem;padding:clamp(1rem,2.4vw,1.4rem);border:1px solid #23262b;border-radius:18px;background:var(--rs-card);overflow:hidden;min-width:0}
.rs-sez::before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,var(--rs-verde),var(--rs-bianco),var(--rs-rosso))}
.rs-sez .rs-leg{display:flex;align-items:center;gap:.6rem;margin:0 0 .9rem;padding:0;font-family:Rajdhani,sans-serif;font-weight:700;
  font-size:clamp(1.05rem,2.2vw,1.25rem);letter-spacing:.08em;text-transform:uppercase;color:#fff}
.rs-sez .rs-leg span{display:grid;place-items:center;width:1.7em;height:1.7em;border-radius:50%;font-size:.85em;background:#1d2025;border:1px solid #3a3f46}
.rs-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}
.rs-grid>.rs-f{min-width:0}
.rs-grid>.rs-f>*{margin-bottom:0!important}
.rs-full{grid-column:1/-1}
@media (max-width:640px){.rs-grid{grid-template-columns:1fr}}

/* Fields */
body.rs .form-control,body.rs .form-select{background-color:var(--rs-campo);border:1px solid var(--rs-bordo);border-radius:12px;color:var(--rs-txt);
  font-size:.98rem;transition:border-color .15s,box-shadow .15s}
body.rs .form-floating>.form-control,body.rs .form-floating>.form-select{min-height:3.4rem}
body.rs .form-select{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%239aa1a9' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e")}
body.rs .form-control:focus,body.rs .form-select:focus{background-color:#121519;border-color:var(--rs-verde);box-shadow:0 0 0 3px rgba(25,194,90,.18);color:#fff}
body.rs .form-select option,body.rs .form-select optgroup{background:#15171a;color:var(--rs-txt)}
body.rs .form-floating>label{color:var(--rs-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
body.rs .form-floating>.form-control:focus~label,body.rs .form-floating>.form-control:not(:placeholder-shown)~label,body.rs .form-floating>.form-select~label{color:#c3c8ce;opacity:.9}
body.rs .form-select:disabled,body.rs .form-control:disabled{background-color:#08090b;border-style:dashed;border-color:#24272c;color:#5c6269}
body.rs .form-floating>.form-control[disabled]~label,body.rs .form-floating>.form-select:disabled~label{opacity:.5}
body.rs .form-text{color:#7d848c;font-size:.78rem;line-height:1.35;margin-top:.35rem}
body.rs .required{color:var(--rs-rosso)}
body.rs .invalid-feedback{color:#ff6b77;font-size:.78rem}
body.rs .was-validated .form-control:invalid,body.rs .was-validated .form-select:invalid,body.rs .form-control.is-invalid{border-color:#ff4d5c}
body.rs .was-validated .form-control:valid,body.rs .was-validated .form-select:valid{border-color:#1f8f4c}
body.rs textarea.form-control{min-height:150px}
body.rs .rs-tel .row{margin:0;row-gap:0}
body.rs .rs-tel .row>[class*=col]{padding-left:0;padding-right:0}
body.rs .rs-tel .row>.col-3,body.rs .rs-tel .row>.col-md-2{padding-right:.5rem}
body.rs .rs-tel .row>.col-3{flex:0 0 6.6rem;width:6.6rem;max-width:none}body.rs .rs-tel .row>.col-9{flex:1 1 0;width:auto;max-width:none}
@media (min-width:641px){body.rs .rs-tel .row>.col-3{flex-basis:7.5rem;width:7.5rem}}

/* Privacy checkbox */
body.rs .form-check{padding:.8rem .9rem .8rem 2.6rem;border:1px solid var(--rs-bordo);border-radius:12px;background:var(--rs-campo)}
body.rs .form-check-input{width:1.25rem;height:1.25rem;margin-left:-1.75rem;margin-top:.1rem;background-color:#15171a;border:1px solid #4a5058}
body.rs .form-check-input:checked{background-color:var(--rs-verde);border-color:var(--rs-verde)}
body.rs .form-check-label{color:#c9ced4;font-size:.9rem}

/* Buttons */
body.rs .text-end{display:flex;justify-content:flex-end;align-items:center;gap:.8rem;flex-wrap:wrap;margin:1.2rem 0 .5rem}
body.rs .text-end .btn{width:auto!important;font-family:Rajdhani,sans-serif;font-weight:700;letter-spacing:.08em;text-transform:uppercase;border-radius:999px;box-shadow:none}
body.rs .btn-annulla{background:transparent!important;color:var(--rs-muted)!important;border:1px solid #3a3f46;padding:.75rem 1.6rem;font-size:1rem}
body.rs .btn-annulla:hover{color:#fff!important;border-color:#5a6068}
body.rs .btn-invia{display:inline-flex;align-items:center;gap:.6rem;color:#fff;padding:.8rem 2.2rem;font-size:1.1rem;background:linear-gradient(180deg,#2b2f35,#121417)!important;
  border:1px solid #4a5058;box-shadow:0 0 0 1px #000 inset,0 10px 30px rgba(0,0,0,.6),-14px 0 34px -14px var(--rs-verde),14px 0 34px -14px var(--rs-rosso)!important;transition:transform .2s}
body.rs .btn-invia:hover{transform:translateY(-2px)}
@media (max-width:640px){body.rs .text-end{flex-direction:column-reverse;align-items:stretch}body.rs .text-end .btn{justify-content:center}}

/* Errors from server */
body.rs .alert-danger{max-width:var(--rs-max);margin:0 auto 1rem;border-radius:14px;background:#2a0e12;border:1px solid #6b1d26;color:#ffd5d9}

/* Social + footer */
.rs-social{display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem;margin:1.6rem 0 .6rem}
.rs-social a{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;font-size:1.15rem;color:#d7dbdf!important;text-decoration:none;
  background:radial-gradient(circle at 30% 25%,#3a3f46,#111316 70%);border:1px solid #3c4148;box-shadow:0 4px 14px rgba(0,0,0,.6);transition:transform .2s,color .2s}
.rs-social a:hover{transform:translateY(-3px);color:#fff!important}
.rs-copy{text-align:center;color:#6f767e;font-size:.72rem;padding:0 1rem 1.6rem}

/* jQuery UI autocomplete (city) */
body.rs .ui-menu{background:#15171a;border:1px solid #2f343a;border-radius:10px;padding:.25rem 0;color:var(--rs-txt);font-family:Inter,sans-serif;font-size:.92rem;max-height:260px;overflow:auto}
body.rs .ui-menu .ui-menu-item-wrapper{padding:.45rem .9rem;border:0;margin:0}
body.rs .ui-menu .ui-state-active{background:#1f3a29;color:#fff;border:0}

/* Wait modal */
body.rs .modal-content{background:#101215;border:1px solid #2a2e34;border-radius:18px;color:var(--rs-txt)}
body.rs .modal-header{border:0;justify-content:center}
body.rs .modal-header h3{font-family:Rajdhani,sans-serif;font-size:1.3rem;letter-spacing:.04em}

/* Variant A: single card */
body.rs-a{--rs-max:760px}
body.rs-a #initRequestForm .rs-scheda{padding:clamp(1rem,3vw,1.8rem);border:1px solid #23262b;border-radius:20px;background:var(--rs-card);position:relative;overflow:hidden}
body.rs-a #initRequestForm .rs-scheda::before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,var(--rs-verde),var(--rs-bianco),var(--rs-rosso))}
body.rs-a .rs-sez{margin:0;padding:0;border:0;border-radius:0;background:none;overflow:visible}
body.rs-a .rs-sez::before{display:none}
body.rs-a .rs-sez+.rs-sez{margin-top:1.3rem;padding-top:1.1rem;border-top:1px solid #1f2226}
body.rs-a .rs-sez .rs-leg{font-size:.92rem;color:var(--rs-muted);letter-spacing:.14em;margin-bottom:.7rem}
body.rs-a .rs-sez .rs-leg span{width:1.6em;height:1.6em;font-size:.8em;color:#fff}

/* Variant B: banner + section cards, 2x2 on wide screens */
body.rs-b{--rs-max:1180px}
body.rs-b .rs-testa{padding-top:.4rem}
body.rs-b .rs-testa img{display:none}
@media (max-aspect-ratio:1/1){body.rs-b .rs-testa img{display:block}body.rs-b .rs-testa{padding-top:1.2rem}}
@media (min-width:1000px){
  body.rs-b .rs-sezioni{display:grid;grid-template-columns:1fr 1fr;gap:1rem;align-items:start}
  body.rs-b .rs-sezioni .rs-sez{margin:0;height:100%}
}
