/* ISSLA RISK - /contact/ only: compact dark hero, enquiry form + direct-contact panel. Loaded after archive.css. */
.hero--contact { padding-block: clamp(4rem, 2.5rem + 5vw, 7rem); }
.hero--contact .hero__inner { max-width: 46rem; }
.hero--contact .display { margin-bottom: var(--sp-4); font-size: clamp(2.25rem, 1.5rem + 2.2vw, 3.25rem); }
.hero--contact h1 { margin-bottom: var(--sp-5); color: var(--on-dark); max-width: 40rem; }
.contact-hero__note { margin: var(--sp-5) 0 0; color: var(--on-dark); font-weight: 600; }

.ct { background: var(--paper); }
.ct__grid { display: grid; gap: var(--sp-8); align-items: start; }
.ct__h { font-family: var(--font-serif); font-size: var(--fs-800); margin: 0 0 var(--sp-4); }
.ct__intro { max-width: 40rem; margin: 0 0 var(--sp-6); color: var(--ink-soft); font-size: var(--fs-500); }
.ct__after { margin: var(--sp-6) 0 0; font-family: var(--font-serif); font-size: var(--fs-600); color: var(--petrol-800); }

.ct__side { background: var(--petrol-900); color: var(--on-dark); padding: var(--sp-6); border-radius: 4px; display: grid; gap: var(--sp-4); --focus: #e3c27a; }
.ct__side a { color: var(--on-dark); }
.ct__side a:hover { color: var(--brass); }
.ct__sh { font-family: var(--font-serif); font-size: var(--fs-700); margin: 0; color: var(--on-dark); }
.ct__hint { margin: calc(var(--sp-2) * -1) 0 0; color: var(--on-dark-soft); font-size: var(--fs-300); }
.btn--wa { display: inline-flex; align-items: center; justify-content: center; gap: var(--sp-3); min-height: 3.25rem; padding: 0.95rem 1.5rem; background: #e3c27a; border: 2px solid #e3c27a; color: #092432 !important; font-size: 1.0625rem; font-weight: 700; text-decoration: none; border-radius: 3px; }
.btn--wa:hover { background: #ecd29a; border-color: #ecd29a; color: #092432 !important; }
.btn--wa:focus-visible { outline: 3px solid #f6f4ee; outline-offset: 3px; }
.btn__ic { width: 1.4rem; height: 1.4rem; flex: none; }
.ct__list { margin: var(--sp-3) 0 0; display: grid; gap: var(--sp-4); border-top: 1px solid var(--line-dark); padding-top: var(--sp-5); }
.ct__list dt { font-size: var(--fs-300); text-transform: uppercase; letter-spacing: 0.08em; color: var(--brass); margin-bottom: var(--sp-1); }
.ct__list dd { margin: 0; overflow-wrap: anywhere; }
.ct__list address { font-style: normal; }
.ct__partner { margin: 0; padding-top: var(--sp-5); border-top: 1px solid var(--line-dark); color: var(--on-dark-soft); font-size: var(--fs-300); }
.ct__partner a { text-decoration: underline; }

@media (min-width: 62rem) {
  .ct__grid { grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr); gap: clamp(3rem, 2rem + 4vw, 6rem); }
  .ct__side { position: sticky; top: calc(var(--header-h, 5rem) + var(--sp-5)); }
}
