/* Fenrow contact — route-led enquiry form */
.contact-main{padding:82px 0 96px}
.route-intro{max-width:46rem;margin-bottom:34px}
.route-intro p{margin-top:12px;color:var(--slate)}
.route-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:34px}
.route-card{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:start;width:100%;min-height:154px;padding:24px;text-align:left;font:inherit;color:var(--ink);background:var(--white);border:1px solid var(--line);border-radius:var(--radius);cursor:pointer;transition:border-color .2s,box-shadow .2s,transform .2s,background .2s}
.route-card:hover{transform:translateY(-2px);border-color:rgba(0,153,204,.5);box-shadow:0 12px 28px rgba(0,68,102,.1)}
.route-card:focus-visible{outline:3px solid rgba(0,153,204,.28);outline-offset:3px}
.route-card[aria-pressed="true"]{color:var(--white);background:var(--navy);border-color:var(--navy);box-shadow:0 14px 32px rgba(0,68,102,.18)}
.route-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;font-size:.72rem;font-weight:700;letter-spacing:.08em;color:var(--navy);background:#E4F2F7}
.route-card[aria-pressed="true"] .route-icon{color:var(--ink);background:var(--gold)}
.route-copy{display:grid;gap:8px}
.route-copy strong{font-size:1.02rem;line-height:1.25;color:var(--navy)}
.route-copy span{font-size:.88rem;line-height:1.5;color:var(--slate)}
.route-card[aria-pressed="true"] .route-copy strong{color:var(--white)}
.route-card[aria-pressed="true"] .route-copy span{color:#C9E2EF}
.route-arrow{font-size:1.2rem;color:var(--gold)}
.route-form-wrap{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr);gap:0;padding:0;background:var(--white);border:1px solid var(--line);border-radius:calc(var(--radius) + 2px);overflow:hidden;box-shadow:0 18px 42px rgba(0,68,102,.1)}
.route-form{padding:42px 44px}
.route-form h2{font-size:1.8rem}
.form-intro{margin:10px 0 30px;color:var(--slate)}
.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.field{display:grid;align-content:start;gap:8px}
.field.full{grid-column:1/-1}
.field label{font-size:.9rem;font-weight:700;color:var(--navy)}
.optional{font-weight:400;color:var(--slate)}
.field input,.field select,.field textarea{width:100%;min-width:0;padding:.82rem .95rem;font:inherit;font-size:.96rem;color:var(--ink);background:var(--white);border:1px solid rgba(0,68,102,.24);border-radius:10px;transition:border-color .2s,box-shadow .2s}
.field textarea{min-height:122px;resize:vertical}
.field input::placeholder,.field textarea::placeholder{color:#71838D}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--sky);box-shadow:0 0 0 3px rgba(0,153,204,.16)}
.field input[aria-invalid="true"],.field select[aria-invalid="true"],.field textarea[aria-invalid="true"]{border-color:#A73527;box-shadow:0 0 0 3px rgba(167,53,39,.1)}
.conditional[hidden]{display:none}
.form-action{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:30px;padding-top:24px;border-top:1px solid var(--line)}
.form-action small{max-width:30rem;color:var(--slate);line-height:1.5}
.form-action small a{color:var(--navy);font-weight:700}
.submit-btn{border:0;cursor:pointer;white-space:nowrap}
.submit-btn:disabled{opacity:.52;cursor:not-allowed;transform:none;box-shadow:none}
.form-note{margin-top:18px;padding:13px 15px;border-radius:10px;color:#236100;background:#EDF7EA;border:1px solid #B6DCAE}
.form-note.error{color:#81291F;background:#FCEFEB;border-color:#E8B7AD}
.form-success{min-height:340px;padding:46px 8px;align-content:center}
.form-success:not([hidden]){display:grid}
.form-success p{margin:14px 0 24px;color:var(--slate)}
.route-aside{padding:42px 34px;color:#D6EAF4;background:var(--navy)}
.route-aside h2{color:var(--white);font-size:1.35rem}
.process-list{counter-reset:next;display:grid;gap:22px;margin-top:28px;list-style:none}
.process-list li{position:relative;padding-left:42px;font-size:.93rem;line-height:1.55}
.process-list li::before{counter-increment:next;content:counter(next,decimal-leading-zero);position:absolute;left:0;top:1px;font-size:.7rem;font-weight:700;letter-spacing:.08em;color:var(--gold)}
.direct-contact{margin-top:34px;padding-top:24px;border-top:1px solid rgba(255,255,255,.16);font-size:.9rem;color:#B9D9E8}
.direct-contact a{color:var(--white);font-weight:700}
.hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}
@media(max-width:900px){
  .route-grid{grid-template-columns:1fr}
  .route-card{min-height:0}
  .route-form-wrap{grid-template-columns:1fr}
  .route-aside{order:2}
}
@media(max-width:600px){
  .contact-main{padding:60px 0 72px}
  .route-card{padding:20px;grid-template-columns:auto 1fr}
  .route-arrow{display:none}
  .route-form{padding:30px 22px}
  .field-grid{grid-template-columns:1fr}
  .field.full{grid-column:auto}
  .form-action{align-items:stretch;flex-direction:column}
  .submit-btn{text-align:center}
  .route-aside{padding:32px 24px}
}
@media(prefers-reduced-motion:reduce){.route-card{transition:none}}
