/* ==========================================================================
   Similius contact page — Urenus look & feel
   Target:  https://us.similius.com/contact-us-2/   (WordPress page ID 38)
   Model:   https://urenus.com/pages/contact
   Markup:  similius-contact-page.html  (pasted into a Brizy HTML element)

   Paste into Appearance → Customize → Additional CSS.

   Everything is scoped to `#sim-contact-page` or `body.page-id-38`, so no
   other page on the site is affected.

   Design tokens are lifted verbatim from the Urenus contact page's own
   stylesheet (it ships as a custom HTML section with an inline <style>):
     ink        #1a1b2e     muted   #62647d
     brand      #2b2c48     brand-2 #4a4c75
     soft       #ececf4     bg-alt  #f6f7f9
     border     rgba(43,44,72,.13)
     radius     14 / 22 / 32px      pills 999px

   ONE DELIBERATE CHANGE: Urenus uses font-weight 750/850/900. Blocksy only
   loads DM Sans at 400/500/600/700, so anything above 700 would be
   synthetically bolded by the browser and look smeared. Those weights are
   mapped down to 700 here.
   ========================================================================== */


/* --- 0. Let the block go full width ------------------------------------ */
/* The Urenus design needs full-bleed bands (the grey "Ordering & dispatch"
   strip runs edge to edge). Measured on the live page at a 1440px viewport,
   two things stand in the way — nothing else does:
     [class*=brz-root__container]  max-width 1900px + 63.7px side margins
     .brz-container                max-width 817px
   Blocksy's own wrapper is .ct-container-full and is already full width.

   NOTE: never write `body.page-id-38 .brz .brz-container` — `brz` is a class
   on <body> ITSELF, so as a descendant step it can never match. */

/* Brizy writes the root container's classes as ONE concatenated token
   ("brzbrz-root__containerbrz-reset-allbrz-root__container-page"), so it has
   to be matched with a substring selector. It carries an explicit width plus
   auto side margins that a plain override does not beat — hence !important
   on exactly these three declarations, and nowhere else in this block. */
body.page-id-38 [class*="brz-root__container"] {
  width: 100% !important;
  max-width: none !important;
  margin-inline: 0 !important;
}

body.page-id-38 .brz-section__content,
body.page-id-38 .brz-container,
body.page-id-38 .brz-row__container,
body.page-id-38 .brz-row {
  max-width: none;
  width: 100%;
}

body.page-id-38 .brz-container,
body.page-id-38 .brz-columns,
body.page-id-38 .brz-column__items {
  padding-inline: 0 !important;   /* Brizy's own 15px column gutter */
}

/* The form lives in its own .brz-wrapper, a sibling of the HTML element.
   Brizy gives that wrapper vertical margin, which would open a gap between
   the "Send us a secure message" card and the navy form panel below it. */
body.page-id-38 .brz-wrapper:has(> .brz-forms2) {
  margin-block: 0 !important;
  /* Same side gutter as #sim-contact-page, so the navy form panel lines up
     with the "Send us a secure message" card directly above it. */
  padding-inline: min(2.6vw, 38px);
}

/* Brizy dropped the HTML element straight into .brz-container while the form
   kept its own row, so the row's chrome sits between the two halves of what
   should read as one card. Measured on the live page at 1440px:
     .brz-wrapper (embed)   margin-bottom  10px
     .brz-column__items     padding-top     5px
     .brz-forms2            margin-top     -1px   (the pull already in place)
   = 14px of daylight. Both !important — Brizy's generated .brz-css-* classes
   outrank a plain override. */
body.page-id-38 .brz-wrapper:has(> .brz-embed-code) {
  margin-block-end: 0 !important;
}

body.page-id-38 .brz-column__items {
  padding-block: 0 !important;
}

/* Hide the leftover Brizy rich-text ("Email Us: info@similius.com") if you
   would rather not delete it in the editor. Prefer deleting it — this is a
   fallback only.
body.page-id-38 .brz-rich-text { display: none; }
*/


/* --- 1. Tokens + base -------------------------------------------------- */

#sim-contact-page {
  --uc-ink: #1a1b2e;
  --uc-muted: #62647d;
  --uc-brand: #2b2c48;
  --uc-brand-2: #4a4c75;
  --uc-soft: #ececf4;
  --uc-bg: #ffffff;
  --uc-bg-alt: #f6f7f9;
  --uc-border: rgba(43, 44, 72, .13);
  --uc-green: #2f6e55;
  --uc-amber: #94611f;
  --uc-radius-sm: 14px;
  --uc-radius: 22px;
  --uc-radius-lg: 32px;
  --uc-shadow: 0 18px 55px rgba(31, 33, 59, .10);
  --uc-shadow-sm: 0 8px 26px rgba(31, 33, 59, .07);

  color: var(--uc-ink);
  background: var(--uc-bg);
  font-family: inherit;   /* DM Sans, already the site font */
  line-height: 1.65;
  text-align: left;

  /* urenus.com's bands are not edge-to-edge — its theme wraps the block in a
     page container with ~37px of side padding at 1440px, so the grey band
     stops short of the viewport. Blocksy's content area here IS edge-to-edge,
     so that gutter is reproduced explicitly. Set to 0 for true full-bleed. */
  padding-inline: min(2.6vw, 38px);
}

#sim-contact-page,
#sim-contact-page * { box-sizing: border-box; }

#sim-contact-page a { color: inherit; }

#sim-contact-page .uc-container {
  width: min(calc(100% - clamp(2rem, 5vw, 6rem)), 1520px);
  margin-inline: auto;
}


/* --- 2. Hero ----------------------------------------------------------- */

#sim-contact-page .uc-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: clamp(4rem, 8vw, 7rem) 0 clamp(3.5rem, 7vw, 5.8rem);
  background: transparent;
}

#sim-contact-page .uc-hero::before {
  content: "";
  position: absolute;
  z-index: -2;
  inset: -12% -5% -28%;
  pointer-events: none;
  background:
    radial-gradient(ellipse at 16% 18%, rgba(74, 76, 117, .15) 0%, rgba(74, 76, 117, .07) 28%, transparent 62%),
    radial-gradient(ellipse at 84% 10%, rgba(43, 44, 72, .09) 0%, transparent 55%),
    linear-gradient(180deg, rgba(250, 250, 253, .88) 0%, rgba(246, 247, 249, .62) 52%, rgba(255, 255, 255, 0) 100%);
}

/* Hairline that closes the hero */
#sim-contact-page .uc-hero::after {
  content: "";
  position: absolute;
  z-index: -1;
  left: 50%;
  bottom: 0;
  width: min(86vw, 1180px);
  height: 1px;
  transform: translateX(-50%);
  background: linear-gradient(90deg, transparent, rgba(43, 44, 72, .12), transparent);
}

#sim-contact-page .uc-eyebrow,
#sim-contact-page .uc-pill {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  border-radius: 999px;
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .11em;
  text-transform: uppercase;
}

#sim-contact-page .uc-eyebrow {
  margin-bottom: 1rem;
  padding: .5rem .78rem;
  border: 1px solid var(--uc-border);
  background: rgba(255, 255, 255, .76);
  color: var(--uc-brand-2);
}

#sim-contact-page .uc-eyebrow::before {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--uc-green);
  box-shadow: 0 0 0 5px rgba(47, 110, 85, .12);
}

#sim-contact-page h1,
#sim-contact-page h2,
#sim-contact-page h3,
#sim-contact-page p { margin-top: 0; }

#sim-contact-page h1 {
  max-width: 1120px;
  margin-bottom: 1.15rem;
  color: var(--uc-brand);
  font-size: clamp(2.65rem, 6vw, 5.3rem);
  font-weight: 700;
  line-height: .98;
  letter-spacing: -.055em;
}

#sim-contact-page .uc-hero-copy {
  max-width: 980px;
  margin-bottom: 1.8rem;
  color: var(--uc-muted);
  font-size: clamp(1.03rem, 1.7vw, 1.2rem);
}

#sim-contact-page .uc-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .8rem;
}

#sim-contact-page .uc-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .65rem;
  min-height: 52px;
  padding: .9rem 1.3rem;
  border: 1px solid transparent;
  border-radius: 999px;
  text-decoration: none;
  font-weight: 700;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

#sim-contact-page .uc-button:hover { transform: translateY(-2px); }

#sim-contact-page .uc-button--primary {
  color: #fff;
  background: var(--uc-brand);
  box-shadow: 0 12px 30px rgba(43, 44, 72, .24);
}

#sim-contact-page .uc-button--secondary {
  color: var(--uc-brand);
  background: rgba(255, 255, 255, .84);
  border-color: var(--uc-border);
}

#sim-contact-page .uc-response-note {
  margin: .9rem 0 0;
  color: var(--uc-muted);
  font-size: .91rem;
}


/* --- 3. Sections + headings -------------------------------------------- */

#sim-contact-page .uc-section {
  padding: clamp(3.4rem, 7vw, 6rem) 0;
}

#sim-contact-page .uc-section--soft {
  background: var(--uc-bg-alt);
  border-block: 1px solid var(--uc-border);
}

#sim-contact-page .uc-heading {
  max-width: 980px;
  margin-bottom: 2rem;
}

#sim-contact-page .uc-heading h2 {
  margin-bottom: .7rem;
  color: var(--uc-brand);
  font-size: clamp(2rem, 4vw, 3.2rem);
  font-weight: 700;
  line-height: 1.05;
  letter-spacing: -.045em;
}

#sim-contact-page .uc-heading p {
  margin-bottom: 0;
  color: var(--uc-muted);
}


/* --- 4. Email card + channel guide ------------------------------------- */

#sim-contact-page .uc-top-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
  gap: clamp(1rem, 2vw, 1.5rem);
  align-items: stretch;
}

#sim-contact-page .uc-top-grid > .uc-card { height: 100%; }

#sim-contact-page .uc-top-grid > .uc-card:not(.uc-email-card) {
  display: flex;
  flex-direction: column;
}

#sim-contact-page .uc-card {
  border: 1px solid var(--uc-border);
  border-radius: var(--uc-radius);
  background: #fff;
  box-shadow: var(--uc-shadow-sm);
}

#sim-contact-page .uc-card h2 {
  font-size: 1.55rem;
  font-weight: 700;
  letter-spacing: -.03em;
  color: var(--uc-brand);
  margin-bottom: .8rem;
}

#sim-contact-page .uc-card-pad { padding: clamp(1.5rem, 3.4vw, 2.35rem); }

#sim-contact-page .uc-email-card {
  position: relative;
  overflow: hidden;
  color: #fff;
  background: linear-gradient(150deg, var(--uc-brand) 0%, #41436a 100%);
  box-shadow: var(--uc-shadow);
}

/* Oversized watermark "@" in the corner */
#sim-contact-page .uc-email-card::after {
  content: "@";
  position: absolute;
  right: -18px;
  bottom: -58px;
  color: rgba(255, 255, 255, .055);
  font-size: 14rem;
  font-weight: 700;
  line-height: 1;
  pointer-events: none;
}

#sim-contact-page .uc-email-card h2,
#sim-contact-page .uc-email-card p { color: #fff; }
#sim-contact-page .uc-email-card p { opacity: .8; }

#sim-contact-page .uc-pill {
  margin-bottom: 1rem;
  padding: .45rem .72rem;
  border: 1px solid rgba(255, 255, 255, .18);
  background: rgba(255, 255, 255, .12);
  color: #fff;
}

#sim-contact-page .uc-email-address {
  position: relative;
  z-index: 1;
  display: inline-block;
  margin: .35rem 0 1.15rem;
  color: #fff;
  font-size: clamp(1.45rem, 3.3vw, 2.25rem);
  font-weight: 700;
  letter-spacing: -.04em;
  text-decoration: underline;
  text-underline-offset: 4px;
  overflow-wrap: anywhere;
}

#sim-contact-page .uc-help-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .85rem;
  margin-top: .9rem;
  flex: 1;
  align-content: stretch;
}

#sim-contact-page .uc-help-item {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 0;
  padding: 1rem;
  border: 1px solid var(--uc-border);
  border-radius: var(--uc-radius-sm);
  background: var(--uc-bg-alt);
}

#sim-contact-page .uc-help-item strong {
  display: block;
  margin-bottom: .2rem;
  color: var(--uc-brand);
  font-weight: 700;
}

#sim-contact-page .uc-help-item span {
  color: var(--uc-muted);
  font-size: .92rem;
}


/* --- 5. Ordering / dispatch band --------------------------------------- */

#sim-contact-page .uc-hours-grid {
  display: grid;
  grid-template-columns: minmax(290px, .34fr) minmax(0, .66fr);
  gap: 1rem;
  align-items: start;
}

#sim-contact-page .uc-uk-hours {
  padding: 1.65rem;
  border-radius: var(--uc-radius);
  color: #fff;
  background: var(--uc-brand);
  box-shadow: var(--uc-shadow);
}

#sim-contact-page .uc-uk-hours h3 {
  margin-bottom: .4rem;
  color: #fff;
  font-size: 1.35rem;
  font-weight: 700;
  letter-spacing: -.02em;
}

#sim-contact-page .uc-uk-hours p {
  margin-bottom: .6rem;
  color: rgba(255, 255, 255, .72);
}

#sim-contact-page .uc-hours-large {
  display: block;
  color: #fff;
  font-size: 1.45rem;
  font-weight: 700;
  letter-spacing: -.03em;
}

#sim-contact-page .uc-hours-small { color: rgba(255, 255, 255, .7); }

#sim-contact-page .uc-status {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  margin-top: 1.15rem;
  padding: .55rem .78rem;
  border: 1px solid rgba(255, 255, 255, .15);
  border-radius: 999px;
  background: rgba(255, 255, 255, .11);
  color: #fff;
  font-size: .84rem;
  font-weight: 600;
}

#sim-contact-page .uc-status-dot {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #84d7ad;
  box-shadow: 0 0 0 5px rgba(132, 215, 173, .14);
}

#sim-contact-page .uc-region-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .85rem;
}

#sim-contact-page .uc-zone {
  position: relative;
  overflow: hidden;
  padding: 1.1rem;
  border: 1px solid var(--uc-border);
  border-radius: var(--uc-radius-sm);
  background: #fff;
  box-shadow: var(--uc-shadow-sm);
}

#sim-contact-page .uc-zone strong {
  display: block;
  margin-bottom: .5rem;
  color: var(--uc-brand);
  font-weight: 700;
}

#sim-contact-page .uc-zone span {
  display: block;
  color: var(--uc-brand-2);
  font-size: 1.28rem;
  font-weight: 700;
  letter-spacing: -.03em;
}

#sim-contact-page .uc-zone small {
  display: block;
  margin-top: .35rem;
  color: var(--uc-muted);
  font-size: .88rem;
  line-height: 1.5;
}

#sim-contact-page .uc-call-note {
  margin-top: 1rem;
  padding: 1rem 1.1rem;
  border-left: 4px solid var(--uc-amber);
  border-radius: 0 var(--uc-radius-sm) var(--uc-radius-sm) 0;
  background: #fff8ee;
  color: #70491b;
  font-size: .95rem;
}

#sim-contact-page .uc-call-note strong { font-weight: 700; }


/* --- 6. Contact details cards ------------------------------------------ */

#sim-contact-page .uc-contact-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .9rem;
  align-items: stretch;
}

#sim-contact-page .uc-contact-item {
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 1.25rem;
}

#sim-contact-page .uc-icon {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  margin-bottom: .9rem;
  border-radius: 13px;
  background: var(--uc-soft);
  color: var(--uc-brand);
}

#sim-contact-page .uc-icon svg { width: 21px; height: 21px; }

#sim-contact-page .uc-contact-item h3 {
  margin-bottom: .4rem;
  color: var(--uc-brand);
  font-size: 1.1rem;
  font-weight: 700;
}

/* The big underlined value (email address, phone number, link) */
#sim-contact-page .uc-contact-link,
#sim-contact-page .uc-contact-strong {
  display: inline-block;
  margin-bottom: .55rem;
  color: var(--uc-brand);
  font-size: 1.16rem;
  font-weight: 700;
  letter-spacing: -.025em;
  overflow-wrap: anywhere;
}

#sim-contact-page .uc-contact-link {
  text-decoration: underline;
  text-underline-offset: 3px;
}

#sim-contact-page .uc-contact-item p,
#sim-contact-page .uc-contact-item address {
  margin-top: auto;
  margin-bottom: 0;
  color: var(--uc-muted);
  font-size: .93rem;
  font-style: normal;
}

#sim-contact-page .uc-contact-item p a { text-decoration: underline; }

#sim-contact-page .uc-address { grid-column: span 1; }


/* --- 7. "Send us a secure message" bridge ------------------------------ */

#sim-contact-page .uc-form-bridge {
  margin-top: 1.25rem;
  padding: clamp(1.35rem, 3vw, 2rem);
  border: 1px solid var(--uc-border);
  border-radius: var(--uc-radius) var(--uc-radius) 0 0;
  border-bottom: 0;
  background: linear-gradient(145deg, #ffffff 0%, #f6f7f9 100%);
  box-shadow: var(--uc-shadow-sm);
}

#sim-contact-page .uc-form-bridge h2 {
  margin-bottom: .65rem;
  color: var(--uc-brand);
  font-size: clamp(1.8rem, 3vw, 2.6rem);
  font-weight: 700;
  line-height: 1.08;
  letter-spacing: -.035em;
}

#sim-contact-page .uc-form-bridge p {
  margin-bottom: 0;
  color: var(--uc-muted);
}

/* The bridge card is the last thing in the last section, and the Brizy form
   is the next element on the page. Without this the section's 96px bottom
   padding wedges a gap between the two halves of what should read as one
   card. Measured: 96px padding + 20px card margin = 116px of daylight. */
#sim-contact-page > .uc-section:last-child { padding-bottom: 0; }


/* --- 8. The Brizy form ------------------------------------------------- */
/* The form element is left untouched in the editor so submissions keep
   working; it is restyled here into the navy panel that closes the page,
   the way urenus.com ends its contact page.

   It sits in its own .brz-wrapper, a sibling of the HTML element, so it is
   pulled up flush against the bridge card above with a negative margin and
   given matching bottom corners. */

body.page-id-38 .brz-forms2:not(.brz-forms2__item) {
  width: min(calc(100% - clamp(2rem, 5vw, 6rem)), 1520px);
  margin: -1px auto clamp(3.4rem, 7vw, 6rem);
  padding: clamp(1.5rem, 3.4vw, 2.35rem);
  border-radius: 0 0 22px 22px;
  background: linear-gradient(150deg, #2b2c48 0%, #41436a 100%);
  box-shadow: 0 18px 55px rgba(31, 33, 59, .10);
}

body.page-id-38 .brz-form {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .85rem;
}

/* Name + Email share the top row; message and button span both columns. */
body.page-id-38 .brz-forms2__item:has(> .brz-textarea),
body.page-id-38 .brz-forms2__item-button,
body.page-id-38 .brz-forms2__messages {
  grid-column: 1 / -1;
}

body.page-id-38 .brz-forms2__item {
  margin: 0 !important;
  padding: 0 !important;
  width: auto !important;
}

body.page-id-38 .brz-input,
body.page-id-38 .brz-textarea {
  width: 100%;
  padding: 14px 16px !important;
  border: 1px solid rgba(255, 255, 255, .22) !important;
  border-radius: 12px !important;
  background: rgba(255, 255, 255, .07) !important;
  color: #fff !important;
  font-size: 16px !important;
  line-height: 1.5;
  transition: border-color .18s ease, background .18s ease;
}

body.page-id-38 .brz-textarea { min-height: 150px; resize: vertical; }

body.page-id-38 .brz-input::placeholder,
body.page-id-38 .brz-textarea::placeholder {
  color: rgba(255, 255, 255, .55);
}

body.page-id-38 .brz-input:focus,
body.page-id-38 .brz-textarea:focus {
  outline: none;
  border-color: rgba(255, 255, 255, .5) !important;
  background: rgba(255, 255, 255, .12) !important;
}

/* Submit — light pill, mirroring "Write to our team" on the email card */
body.page-id-38 .brz-forms2__item-button {
  display: flex;
  justify-content: flex-start;
  padding: 0 !important;
  margin: .15rem 0 0 !important;
}

body.page-id-38 .brz-btn.brz-btn-submit {
  /* Brizy's generated .brz-css-* class sets width:100%; a plain override
     loses to it, so the pill would stretch the full panel width. */
  width: auto !important;
  flex: 0 0 auto;
  min-height: 52px;
  padding: .9rem 2rem !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #ececf4 !important;
  color: #2b2c48 !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  transition: transform .2s ease, background .2s ease;
}

body.page-id-38 .brz-btn.brz-btn-submit:hover {
  background: #fff !important;
  transform: translateY(-2px);
}

body.page-id-38 .brz-btn.brz-btn-submit .brz-icon-svg { color: #2b2c48; }

body.page-id-38 .brz-forms2__messages { color: #fff; }


/* --- 9. Responsive ----------------------------------------------------- */

@media (min-width: 1200px) {
  #sim-contact-page .uc-hero { padding-top: clamp(5rem, 7vw, 8rem); }
  #sim-contact-page .uc-card-pad { padding: clamp(2rem, 2.4vw, 3rem); }

  #sim-contact-page .uc-email-card {
    display: flex;
    flex-direction: column;
    justify-content: center;
  }

  #sim-contact-page .uc-help-grid { gap: 1.15rem; }
  #sim-contact-page .uc-help-item { padding: 1.15rem; }

  /* Sticky only works because the full-bleed above uses container resets
     rather than overflow:hidden. */
  #sim-contact-page .uc-uk-hours {
    position: sticky;
    top: 2rem;
    padding: 2rem;
  }

  #sim-contact-page .uc-zone { padding: 1.25rem; }
  #sim-contact-page .uc-contact-item { padding: 1.4rem; }
}

@media (max-width: 1199px) {
  #sim-contact-page .uc-region-grid,
  #sim-contact-page .uc-contact-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 900px) {
  #sim-contact-page .uc-container,
  body.page-id-38 .brz-forms2:not(.brz-forms2__item) {
    width: min(calc(100% - 2rem), 760px);
  }

  #sim-contact-page .uc-top-grid,
  #sim-contact-page .uc-hours-grid { grid-template-columns: 1fr; }

  #sim-contact-page .uc-hero { padding: 4.2rem 0 3.7rem; }
  #sim-contact-page .uc-section { padding: 3.6rem 0; }
}

@media (max-width: 640px) {
  #sim-contact-page { line-height: 1.55; }

  #sim-contact-page .uc-container,
  body.page-id-38 .brz-forms2:not(.brz-forms2__item) {
    width: calc(100% - 1.25rem);
  }

  #sim-contact-page .uc-hero { padding: 3.25rem 0 2.8rem; }
  #sim-contact-page .uc-hero::after { width: calc(100% - 2rem); }

  #sim-contact-page h1 {
    max-width: 12ch;
    font-size: clamp(2.35rem, 12vw, 3.45rem);
    line-height: 1.02;
  }

  #sim-contact-page .uc-hero-copy { margin-bottom: 1.35rem; font-size: 1rem; }

  #sim-contact-page .uc-actions,
  #sim-contact-page .uc-button { width: 100%; }

  #sim-contact-page .uc-button { min-height: 50px; padding-inline: 1rem; }

  #sim-contact-page .uc-section { padding: 2.7rem 0; }
  #sim-contact-page .uc-heading { margin-bottom: 1.35rem; }
  #sim-contact-page .uc-heading h2 { font-size: clamp(1.8rem, 9vw, 2.45rem); }

  #sim-contact-page .uc-card-pad { padding: 1.35rem; }
  #sim-contact-page .uc-card { border-radius: 18px; }

  #sim-contact-page .uc-help-grid,
  #sim-contact-page .uc-region-grid,
  #sim-contact-page .uc-contact-grid { grid-template-columns: 1fr; }

  #sim-contact-page .uc-top-grid,
  #sim-contact-page .uc-hours-grid { gap: .85rem; }

  #sim-contact-page .uc-help-item { padding: 1rem; }
  #sim-contact-page .uc-uk-hours { padding: 1.35rem; }
  #sim-contact-page .uc-hours-large { font-size: 1.28rem; }
  #sim-contact-page .uc-zone { padding: 1.05rem; }
  #sim-contact-page .uc-zone span { font-size: 1.08rem; line-height: 1.3; }

  #sim-contact-page .uc-call-note {
    margin-top: .85rem;
    padding: .9rem 1rem;
    font-size: .92rem;
  }

  #sim-contact-page .uc-contact-item { padding: 1.15rem; }
  #sim-contact-page .uc-address { grid-column: auto; }

  #sim-contact-page .uc-form-bridge {
    padding: 1.2rem;
    border-radius: 18px 18px 0 0;
  }

  #sim-contact-page .uc-form-bridge h2 { font-size: 1.65rem; }

  body.page-id-38 .brz-forms2:not(.brz-forms2__item) {
    padding: 1.2rem;
    border-radius: 0 0 18px 18px;
  }

  body.page-id-38 .brz-form { grid-template-columns: 1fr; }
  body.page-id-38 .brz-btn.brz-btn-submit { width: 100%; }
}

@media (max-width: 390px) {
  #sim-contact-page .uc-container { width: calc(100% - 1rem); }
  #sim-contact-page .uc-eyebrow { font-size: .7rem; }
  #sim-contact-page .uc-email-address { font-size: 1.28rem; }
}


/* --- 10. Trailing-margin cleanup + reduced motion ---------------------- */

#sim-contact-page .uc-card h2:last-child,
#sim-contact-page .uc-card h3:last-child,
#sim-contact-page .uc-card p:last-child,
#sim-contact-page .uc-card address:last-child { margin-bottom: 0; }

@media (prefers-reduced-motion: reduce) {
  #sim-contact-page *,
  #sim-contact-page *::before,
  #sim-contact-page *::after {
    transition: none !important;
    scroll-behavior: auto !important;
  }
}
