.contact-page{background:#f7f5f1;color:var(--ink)}
.contact-back-link{margin-left:auto;color:#fff;font-weight:800;font-size:.9rem;border-bottom:1px solid rgba(255,255,255,.55)}
.contact-main{min-height:calc(100vh - 220px);padding:70px 20px 90px}
.contact-container{width:min(820px,100%);margin:auto}
.contact-heading{text-align:center;margin-bottom:30px}
.contact-heading h1{margin:4px 0 10px;color:var(--blue-dark);font-size:clamp(1.9rem,4vw,2.7rem)}
.contact-heading>p:last-child{color:var(--muted)}
.contact-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:0;max-width:560px;margin:0 auto 30px;padding:0;list-style:none;counter-reset:none}
.contact-steps li{position:relative;display:flex;flex-direction:column;align-items:center;gap:5px;color:#96928b;font-size:.78rem;font-weight:800}
.contact-steps li:not(:last-child):after{content:"";position:absolute;z-index:0;left:calc(50% + 20px);right:calc(-50% + 20px);top:17px;height:2px;background:#d8d2c8}
.contact-steps span{position:relative;z-index:1;width:36px;height:36px;display:grid;place-content:center;border-radius:50%;background:#ded9d1;color:#777}
.contact-steps .is-current,.contact-steps .is-done{color:var(--blue-dark)}
.contact-steps .is-current span{background:var(--blue);color:#fff;box-shadow:0 5px 14px rgba(216,135,0,.28)}
.contact-steps .is-done span{background:var(--blue-dark);color:#fff}
.contact-steps .is-done:not(:last-child):after{background:var(--blue-dark)}
.contact-panel{background:#fff;border:1px solid var(--line);border-radius:20px;padding:42px;box-shadow:var(--shadow)}
.form-group{margin-bottom:25px}
.form-group>label{display:block;margin-bottom:8px;font-weight:900}
.form-group em{display:inline-block;margin-left:9px;padding:2px 7px;border-radius:4px;background:#9e2f22;color:#fff;font-size:.68rem;font-style:normal;vertical-align:2px}
.form-group input,.form-group textarea{width:100%;border:1px solid #bbb4aa;border-radius:9px;background:#fff;padding:13px 14px;font:inherit;color:var(--ink);transition:border-color .2s,box-shadow .2s}
.form-group textarea{min-height:190px;resize:vertical;line-height:1.7}
.form-group input:focus,.form-group textarea:focus{outline:0;border-color:var(--blue);box-shadow:0 0 0 3px rgba(216,135,0,.15)}
.field-note{display:block;margin-top:6px;color:var(--muted);font-size:.76rem}
.field-error{margin:6px 0 0;color:#b22f22;font-size:.82rem;font-weight:700}
.form-alert{margin-bottom:24px;padding:13px 15px;border-left:4px solid #b22f22;background:#fff0ed;color:#8f2016;font-weight:800}
.honeypot{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important}
.form-actions{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:30px}
.form-actions form{margin:0}
.form-actions-center{justify-content:center}
.form-actions button{cursor:pointer}
.button-muted{border-color:#e9e3da;background:#e9e3da;color:var(--ink);box-shadow:none}
.button-muted:hover{border-color:#d9d2c8;background:#d9d2c8;color:var(--ink)}
.confirm-lead{text-align:center;margin-bottom:26px;color:var(--muted)}
.confirm-list{margin:0;border-top:1px solid var(--line)}
.confirm-list>div{display:grid;grid-template-columns:180px 1fr;border-bottom:1px solid var(--line)}
.confirm-list dt{padding:17px;background:#f1ede5;font-weight:900}
.confirm-list dd{margin:0;padding:17px;overflow-wrap:anywhere}
.complete-message{text-align:center;padding:20px 10px}
.complete-icon{display:grid;place-content:center;width:70px;height:70px;margin:0 auto 20px;border-radius:50%;background:var(--blue);color:#fff;font-size:2.2rem;font-weight:900}
.complete-message h2{color:var(--blue-dark);font-size:1.7rem}
.complete-note{margin:22px 0;padding:12px;background:#f7f2e9;border-radius:8px;color:var(--muted);font-size:.85rem}
.mail-warning{margin:22px 0;padding:12px;background:#fff0ed;border-radius:8px;color:#8f2016;font-size:.85rem}
@media(max-width:600px){
  .contact-page{padding-bottom:0}
  .contact-main{padding:42px 14px 60px}
  .contact-back-link{font-size:.75rem;white-space:nowrap}
  .contact-page .brand-service{font-size:.76rem}
  .contact-panel{padding:25px 18px;border-radius:15px}
  .contact-steps{margin-bottom:23px}
  .form-group{margin-bottom:21px}
  .form-group input,.form-group textarea{font-size:16px}
  .form-actions{display:grid;grid-template-columns:1fr;width:100%}
  .form-actions form,.form-actions button{width:100%}
  .form-actions form:first-child{order:2}
  .confirm-list>div{display:block}
  .confirm-list dt{padding:10px 13px}
  .confirm-list dd{padding:13px}
}
