/* CSS selects the presentation before scripts run; the inactive version stays
   out of layout, keyboard navigation and the accessibility tree. */
@media (min-width: 651px) {
  [data-layout="mobile"] { display: none; }
}
@media (max-width: 650px) {
  [data-layout="desktop"] { display: none; }
}

/* Fixed SVG geometry avoids system-font and emoji substitution on iOS. Keep
   the original icon boxes so the approved button sizes and spacing do not move. */
.button .icon-arrow {
  display: inline-flex;
  width: 19px;
  height: 19px;
  align-items: center;
  justify-content: center;
  flex: 0 0 19px;
}
.card-action .icon-arrow {
  display: inline-flex;
  width: 20px;
  height: 34px;
  align-items: center;
  justify-content: center;
  flex: 0 0 20px;
}
.icon-arrow svg {
  display: block;
  width: 100%;
  height: 20px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.button .icon-arrow svg { height: 19px; }

.contact-links { display: flex; flex-wrap: wrap; gap: 4px 20px; margin-top: 15px; }
.contact-links a { display: inline-flex; align-items: center; min-height: 44px; font-size: 13px; color: var(--deep-gold); }
.contact-links a:hover { text-decoration: underline; text-underline-offset: 4px; }
.enquiry-actions { display: grid; gap: 10px; }
.enquiry-actions .button { width: 100%; gap: 12px; }
.enquiry-call { border-color: var(--line); background: transparent; }
.enquiry-call:hover { background: #efe9dd; }
.enquiry-copy { margin-top: 20px; min-height: 44px; font-size: 13px; }
@media (min-width: 901px) and (max-width: 1100px) {
  [data-layout="desktop"] .desktop-nav { gap: 18px; font-size: 14px; }
  [data-layout="desktop"] .header-inner { gap: 22px; }
}
@media (max-width: 650px) {
  .contact-links { flex-direction: column; gap: 0; margin-top: 8px; }
  .contact-links a { min-height: 38px; font-size: 12px; }
}
