/* HS Engenharias — LP "Gestão de Obras de Condomínios" (reconstrução do design Canva do cliente).
   Medidas em "px de design" do Canva: o e-mail tem 600px de largura e 552px de área útil.
   --d converte 1px de design para a coluna atual (até 720px); --h faz o mesmo para o topo em largura total. */

@font-face { font-family: "Montserrat"; font-style: normal; font-weight: 300 800; font-display: swap; src: url("assets/fonts/montserrat-latin-variable.woff2") format("woff2"); }
@font-face { font-family: "Montserrat"; font-style: italic; font-weight: 700; font-display: swap; src: url("assets/fonts/montserrat-italic-700-latin.woff2") format("woff2"); }
@font-face { font-family: "Open Sans"; font-style: normal; font-weight: 300 700; font-display: swap; src: url("assets/fonts/opensans-latin-variable.woff2") format("woff2"); }

:root {
  --orange: #ec7023;
  --orange-2: #f7942b;
  --orange-line: #ed5c03;
  --navy: #17313f;
  --ink: #0f1015;
  --graphite: #535754;
  --gray: #7a7a7a;
  --band: #b3bbc1;
  --box: #e6e6e6;
  --soft: #eaeaea;
  --sky-top: #2d6b92;
  --sky-bottom: #56a2ff;
  --font: "Montserrat", "Segoe UI", Arial, sans-serif;
  --grotesk: "Helvetica Neue", Helvetica, Arial, sans-serif;
  --open: "Open Sans", "Segoe UI", Arial, sans-serif;
  --gutter: clamp(16px, 4vw, 32px);
  --col: 720px;
  --d: calc(min(100vw - 2 * var(--gutter), var(--col)) / 552);
  --h: calc(100vw / 600);
  color-scheme: light;
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
body { margin: 0; background: #fff; color: var(--navy); font-family: var(--font); font-size: 16px; line-height: 1.45; -webkit-font-smoothing: antialiased; overflow-x: hidden; }
img { display: block; max-width: 100%; height: auto; }
h1, h2, p, ul { margin: 0; }
ul { padding: 0; list-style: none; }
a { color: inherit; }
a:focus-visible { outline: 3px solid #1855d8; outline-offset: 3px; border-radius: 4px; }
.sprite { position: absolute; width: 0; height: 0; overflow: hidden; }
.sr-only { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }

.col { width: min(100% - 2 * var(--gutter), var(--col)); margin-inline: auto; }
.bleed { margin-inline: calc(-1 * var(--gutter)); }

.chev li::before { content: "»\00a0"; content: "»\00a0" / ""; font-weight: 700; }

/* ---------- Topo (largura total) ---------- */
.hero {
  position: relative;
  overflow: hidden;
  min-height: calc(628 * var(--h));
  padding-bottom: calc(40 * var(--h));
  background: linear-gradient(180deg, var(--sky-top) 0%, var(--sky-bottom) 100%);
  color: #fff;
}
.hero__bar {
  position: relative;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin: calc(25 * var(--h)) calc(17 * var(--h)) 0 calc(14 * var(--h));
  min-height: calc(33 * var(--h));
  padding: 4px calc(12 * var(--h));
  background: rgba(12, 47, 83, 0.3);
  font: 700 max(10px, calc(18.5 * var(--h))) / 1.2 var(--font);
  white-space: nowrap;
}
.brand { display: flex; align-items: center; gap: 0.38em; letter-spacing: -0.025em; }
.brand__mark { width: 1.6em; height: 1.01em; flex: none; }
.hero__tagline { color: var(--orange-2); letter-spacing: -0.05em; }
.hero__title { position: relative; z-index: 2; margin: 0; padding-left: calc(42 * var(--h)); font-weight: 400; }
.hero__kicker { display: block; margin-top: calc(98 * var(--h)); font: 400 calc(30.5 * var(--h)) / 1 var(--font); letter-spacing: -0.05em; }
.hero__kicker b { font-weight: 700; }
.hero__slogan {
  display: block;
  margin-top: calc(17 * var(--h));
  font: 700 calc(80 * var(--h)) / 1.02 var(--grotesk);
  letter-spacing: -0.012em;
  text-shadow: 0.03em 0.06em 0.1em rgba(16, 28, 40, 0.5);
}
.hero__building { position: absolute; z-index: 1; left: calc(120 * var(--h)); top: calc(44 * var(--h)); width: calc(663 * var(--h)); max-width: none; }

/* ---------- Problema ---------- */
.divider { width: calc(486 * var(--d)); height: max(3px, calc(5.5 * var(--d))); margin: calc(24 * var(--d)) auto calc(16 * var(--d)); border: 0; background: var(--orange-line); }
.cost { margin-bottom: calc(26 * var(--d)); }
.cost__label {
  position: relative;
  z-index: 1;
  width: calc(492 * var(--d));
  max-width: 100%;
  padding: calc(9 * var(--d)) max(28px, calc(34 * var(--d))) calc(9 * var(--d)) calc(7 * var(--d));
  background: var(--orange);
  color: #fff;
  font: 700 max(16px, calc(25.5 * var(--d))) / 1.13 var(--font);
  letter-spacing: -0.028em;
  box-shadow: calc(5 * var(--d)) calc(7 * var(--d)) calc(12 * var(--d)) rgba(0, 0, 0, 0.2);
}
.cost__emoji { position: absolute; right: calc(-10 * var(--d)); top: 50%; font-size: 1.45em; line-height: 1; letter-spacing: 0; transform: translateY(-52%) rotate(-8deg); }
.cost__list {
  width: calc(496 * var(--d));
  max-width: calc(100% - 27 * var(--d));
  margin: calc(-30 * var(--d)) 0 0 calc(27 * var(--d));
  padding: calc(41 * var(--d)) calc(9 * var(--d)) calc(16 * var(--d)) calc(10 * var(--d));
  background: var(--box);
  color: var(--navy);
  font: 400 max(15px, calc(18 * var(--d))) / 1.3 var(--font);
  letter-spacing: -0.02em;
}
.cost__list li + li { margin-top: calc(6 * var(--d)); }
.cost__list strong { font-weight: 700; }

.media-row { display: grid; grid-template-columns: 36.9% 1fr; gap: calc(14 * var(--d)); align-items: start; width: calc(496 * var(--d)); margin: 0 auto; }
.media-row p { color: var(--gray); font: 400 max(17px, calc(25.3 * var(--d))) / 1.11 var(--grotesk); letter-spacing: -0.028em; }

/* ---------- Serviços (bloco do engenheiro) ---------- */
.eng {
  position: relative;
  overflow: hidden;
  aspect-ratio: 552 / 350;
  margin-top: calc(44 * var(--d));
  border-radius: calc(12 * var(--d));
  background: radial-gradient(120% 90% at 62% 28%, #a6a7a3 0%, #a0a19c 55%, #979893 100%);
  isolation: isolate;
}
.eng::after { content: ""; position: absolute; inset: 0; z-index: 3; background: linear-gradient(180deg, rgba(0, 0, 0, 0) 40%, rgba(0, 0, 0, 0.2) 70%, rgba(0, 0, 0, 0.6) 100%); pointer-events: none; }
.eng__label {
  position: absolute;
  z-index: 1;
  left: calc(23.9 * var(--d));
  top: calc(38.6 * var(--d));
  min-width: calc(310 * var(--d));
  padding: calc(9 * var(--d)) calc(24 * var(--d)) calc(13 * var(--d)) calc(14.1 * var(--d));
  background: var(--orange);
  color: #fff;
  font: 700 max(11px, calc(21.7 * var(--d))) / 1.22 var(--font);
  letter-spacing: -0.037em;
  white-space: nowrap;
}
.eng__label-alt { display: inline-block; margin: calc(2 * var(--d)) 0 0 calc(-23.3 * var(--d)); padding: calc(1 * var(--d)) calc(12 * var(--d)) calc(1 * var(--d)) calc(23.3 * var(--d)); background: var(--orange-2); text-shadow: 0 1px 2px rgba(120, 50, 0, 0.25); }
.eng__person { position: absolute; z-index: 2; left: calc(-152.3 * var(--d)); top: calc(-24.4 * var(--d)); width: calc(995.9 * var(--d)); max-width: none; }
.eng__list { position: absolute; z-index: 4; left: calc(36.8 * var(--d)); bottom: calc(6 * var(--d)); color: #fff; font: 700 max(11px, calc(22 * var(--d))) / 1.07 var(--font); letter-spacing: -0.037em; text-shadow: 0 1px 3px rgba(0, 0, 0, 0.35); }

/* ---------- Gestão por si ---------- */
.pitch__intro { margin: calc(40 * var(--d)) auto calc(16 * var(--d)); color: var(--ink); text-align: center; font: 400 max(15px, calc(16 * var(--d))) / 1.26 var(--font); }
.pitch__intro strong { font-weight: 700; }
.pitch__title { color: var(--navy); text-align: center; font: 400 max(30px, calc(48 * var(--d))) / 1.06 var(--font); }
.pitch__title strong { font-weight: 700; }

/* ---------- Menos stress ---------- */
.stress {
  position: relative;
  width: calc(507.5 * var(--d));
  max-width: calc(100% - 17.5 * var(--d));
  margin: calc(52 * var(--d)) 0 calc(40 * var(--d)) calc(17.5 * var(--d));
  padding: calc(17.9 * var(--d)) calc(8 * var(--d)) calc(26 * var(--d)) calc(51.5 * var(--d));
  background: var(--orange);
  color: #fff;
  font: 700 max(20px, calc(38.5 * var(--d))) / 1.09 var(--font);
  letter-spacing: -0.028em;
  box-shadow: 0 calc(11 * var(--d)) calc(12 * var(--d)) rgba(0, 0, 0, 0.22);
}
.stress__hl { margin-left: calc(-69 * var(--d)); padding: 0 0 0 calc(69 * var(--d)); background: var(--graphite); -webkit-box-decoration-break: clone; box-decoration-break: clone; }
.stress__nowrap { white-space: nowrap; }
.stress__check { display: inline-block; width: 0.9em; height: 0.9em; margin-left: 0.18em; vertical-align: -0.06em; color: #fff; }
.benefits__list { width: calc(510 * var(--d)); margin: 0 auto; color: var(--navy); font: 400 max(18px, calc(22.1 * var(--d))) / 1.35 var(--font); letter-spacing: -0.02em; }
.benefits__list li + li { margin-top: calc(16 * var(--d)); }
.benefits__list li::before { font-weight: 400; }

.slogan-row { display: grid; grid-template-columns: 45.68% 1fr; gap: calc(14 * var(--d)); align-items: center; width: calc(508 * var(--d)); margin: calc(18 * var(--d)) auto 0; padding: calc(25.5 * var(--d)) 0; }
.slogan { color: var(--gray); font: 700 max(25px, calc(41.3 * var(--d))) / 0.98 var(--font); letter-spacing: -0.077em; }

/* ---------- Autoridade ---------- */
.authority { text-align: center; }
.since { margin-top: calc(10 * var(--d)); color: #818181; font: italic 700 max(15px, calc(16 * var(--d))) / 1.26 var(--font); }
.authority__logo { width: calc(272 * var(--d)); margin: calc(22 * var(--d)) auto calc(26 * var(--d)); }
.years { font: 700 max(12px, calc(17.3 * var(--d))) / 1.4 var(--font); text-transform: uppercase; }
.years span { padding: 0.1em 0.75em; background: var(--band); color: #fff; -webkit-box-decoration-break: clone; box-decoration-break: clone; }
.stats { display: grid; grid-template-columns: 34.58fr 30.99fr 30.81fr; gap: calc(10 * var(--d)); align-items: end; padding: calc(32 * var(--d)) 0 calc(30 * var(--d)); color: var(--graphite); }
.stats img { height: auto; margin: 0 auto calc(10 * var(--d)); }
.stats li:nth-child(1) img { width: max(46px, calc(66 * var(--d))); }
.stats li:nth-child(2) img { width: max(47px, calc(67 * var(--d))); }
.stats li:nth-child(3) img { width: max(48px, calc(69 * var(--d))); }
.stats strong { display: block; margin-bottom: calc(6 * var(--d)); font: 700 max(22px, calc(25.3 * var(--d))) / 1.15 var(--font); }
.stats__euro { color: var(--orange-2); font-weight: 400; }
.stats span:not(.stats__euro) { display: block; color: #4b4f4b; font: 400 max(11px, calc(13.3 * var(--d))) / 1.17 var(--font); text-transform: uppercase; }

/* ---------- Mapa ---------- */
.near__title { margin-bottom: calc(16 * var(--d)); text-align: center; color: var(--navy); font: 400 max(14px, calc(13.3 * var(--d))) / 1.5 var(--font); }
.near__title span { padding: 0.15em 4em; background: var(--soft); }
.map { padding: calc(6 * var(--d)); border-radius: calc(10 * var(--d)); background: #e0efff; }
.map__head { display: flex; align-items: center; gap: calc(12 * var(--d)); padding: calc(6 * var(--d)) calc(10 * var(--d)) calc(10 * var(--d)) calc(8 * var(--d)); }
.map__icon { flex: none; width: max(30px, calc(40 * var(--d))); height: max(30px, calc(40 * var(--d))); color: #1855d8; }
.map__kicker { display: block; color: #1855d8; font: 700 max(14px, calc(18.7 * var(--d))) / 1.25 var(--grotesk); text-transform: uppercase; }
.map__text { display: block; color: #0d1216; font: 400 max(17px, calc(25.3 * var(--d))) / 1.2 var(--grotesk); }
.map__frame { overflow: hidden; aspect-ratio: 1 / 0.9; border-radius: calc(8 * var(--d)); background: #cfdcea; }
.map__frame iframe { display: block; width: 100%; height: 100%; border: 0; }
.map__link { display: inline-flex; align-items: center; gap: 0.35em; margin: calc(10 * var(--d)) calc(8 * var(--d)) calc(4 * var(--d)); color: #1855d8; font: 600 max(14px, calc(14 * var(--d))) / 1.3 var(--font); text-decoration: none; }
.map__link:hover { text-decoration: underline; }
.map__link svg { width: 1em; height: 1em; }

/* ---------- Chamada final ---------- */
.helmet { margin-top: calc(44 * var(--d)); }
.helmet__photo { position: relative; aspect-ratio: 600 / 355.5; }
.helmet__photo img { width: 100%; height: 100%; object-fit: cover; }
.helmet__text {
  position: absolute;
  left: 5.25%;
  right: 1.9%;
  top: 4.8%;
  padding: calc(9 * var(--d)) calc(14 * var(--d)) calc(12 * var(--d)) calc(33 * var(--d));
  background: rgba(103, 107, 106, 0.95);
  color: #fff;
  font: 300 max(15px, calc(25.5 * var(--d))) / 1.27 var(--open);
  letter-spacing: -0.028em;
}
.helmet__text strong { font-weight: 700; }
.helmet__strip { position: relative; height: calc(60.5 * var(--d)); background: #e7e7e7; }
.helmet__frame { position: absolute; left: 3%; right: 2.75%; top: 21%; bottom: 25%; border: max(1px, calc(1.2 * var(--d))) solid #fff; }
.helmet__strip svg { position: absolute; right: 5.4%; top: 50%; width: calc(28 * var(--d)); height: calc(18 * var(--d)); transform: translateY(-55%); color: #6f7170; }

.cta__action { padding: calc(30 * var(--d)) 0 calc(34 * var(--d)); text-align: center; }
.btn-quote {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.28em;
  width: calc(350 * var(--d));
  min-width: 240px;
  height: calc(90 * var(--d));
  min-height: 58px;
  padding: 0 1em;
  border-radius: 999px;
  background: linear-gradient(100deg, #ff7033 0%, #fa6520 38%, #ea5b12 70%, #c94b05 100%);
  box-shadow: 0 calc(9 * var(--d)) calc(18 * var(--d)) rgba(160, 64, 6, 0.32), inset 0 -3px 6px rgba(150, 50, 0, 0.18);
  color: #fff;
  font: 300 max(19px, calc(29 * var(--d))) / 1 var(--font);
  text-decoration: none;
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}
.btn-quote strong { font-weight: 800; letter-spacing: 0.01em; }
.btn-quote:hover { transform: translateY(-2px); box-shadow: 0 calc(12 * var(--d)) calc(22 * var(--d)) rgba(160, 64, 6, 0.4), inset 0 -3px 6px rgba(150, 50, 0, 0.18); }
.btn-quote:active { transform: translateY(0); }

.band { padding: calc(40 * var(--d)) var(--gutter); background: var(--band); color: var(--graphite); text-align: center; font: 400 max(16px, calc(18.7 * var(--d))) / 1.2 var(--grotesk); letter-spacing: -0.02em; }
.band { text-wrap: balance; }

.info { display: grid; grid-template-columns: 1fr 1fr; gap: calc(16 * var(--d)); align-items: center; width: min(100% - 2 * var(--gutter), calc(508 * var(--d))); padding: calc(26 * var(--d)) 0 calc(22 * var(--d)); }
.btn-info {
  justify-self: center;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: calc(228 * var(--d));
  min-width: 170px;
  min-height: max(48px, calc(57 * var(--d)));
  padding: 0 0.5em;
  border-radius: calc(16 * var(--d));
  white-space: nowrap;
  background: linear-gradient(180deg, #f1f2f4 0%, #edeef1 100%);
  box-shadow: 0 calc(5 * var(--d)) calc(12 * var(--d)) rgba(0, 0, 0, 0.16);
  color: var(--graphite);
  font: 400 max(15px, calc(18 * var(--d))) / 1.1 var(--font);
  letter-spacing: -0.01em;
  text-align: center;
  text-decoration: none;
  transition: box-shadow 0.15s ease, transform 0.15s ease;
}
.btn-info:hover { transform: translateY(-1px); box-shadow: 0 calc(7 * var(--d)) calc(16 * var(--d)) rgba(0, 0, 0, 0.2); }
.info p { color: #6b6b6b; font: 400 max(13px, calc(13.3 * var(--d))) / 1.34 var(--grotesk); }
@media (max-width: 479px) {
  .info { grid-template-columns: 1fr; gap: 14px; text-align: center; }
  .info p { max-width: 34ch; margin-inline: auto; font-size: 14px; }
}

/* ---------- Rodapé ---------- */
.contact { margin-bottom: calc(16 * var(--d)); padding: calc(10 * var(--d)) calc(14 * var(--d)) calc(18 * var(--d)); background: var(--soft); color: #5b5d5c; letter-spacing: -0.03em; }
.contact a { text-decoration: none; }
.contact a:hover { text-decoration: underline; }
.contact__site { display: block; width: fit-content; margin: 0 auto calc(14 * var(--d)); color: #555; font: 700 max(15px, calc(16 * var(--d))) / 1.3 var(--font); }
.contact__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px 12px; }
.contact__links { grid-column: 1 / -1; display: grid; gap: 8px; font: 400 15px / 1.3 var(--font); }
.contact__links a { display: inline-flex; align-items: center; gap: 0.55em; }
.contact__links svg { flex: none; width: 1.35em; height: 1.35em; }
.contact__phone { font-size: 19px; }
.contact__regions { color: #5f6160; text-align: center; font: 700 15px / 1.05 var(--font); letter-spacing: 0.029em; }
.contact__address { font: 400 14px / 1.35 var(--font); font-style: normal; color: #6b6d6c; }

.footer__bar { padding: calc(15 * var(--d)) var(--gutter) calc(16 * var(--d)); background: var(--orange-2); color: #5e2503; text-align: center; font: 300 12px / 1.55 var(--grotesk); }
.footer__bar a { color: inherit; text-decoration: none; }
.footer__bar a:hover { text-decoration: underline; }
.footer__bar p + p { margin-top: 4px; font-weight: 400; }

/* ---------- Banner de cookies (só aparece com GTM configurado) ---------- */
.consent { position: fixed; z-index: 1000; left: 12px; right: 12px; bottom: 12px; display: flex; justify-content: center; pointer-events: none; }
.consent[hidden] { display: none; }
.consent__inner { width: min(100%, 760px); padding: 16px 18px 14px; border-radius: 14px; background: #fff; color: #2b2f2c; box-shadow: 0 10px 40px rgba(15, 30, 45, 0.28), 0 0 0 1px rgba(15, 30, 45, 0.06); pointer-events: auto; font: 400 14px / 1.45 var(--font); }
.consent__title { margin-bottom: 4px; color: var(--navy); font-weight: 700; font-size: 15px; }
.consent__text a { color: var(--navy); font-weight: 600; }
.consent__prefs { display: grid; gap: 8px; margin: 12px 0 2px; padding: 12px; border-radius: 10px; background: #f3f4f6; }
.consent__prefs[hidden] { display: none; }
.consent__option { display: flex; gap: 10px; align-items: flex-start; cursor: pointer; }
.consent__option input { flex: none; width: 18px; height: 18px; margin: 2px 0 0; accent-color: var(--orange); }
.consent__actions { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; justify-content: flex-end; margin-top: 12px; }
.consent__btn { min-height: 44px; padding: 0 20px; border: 0; border-radius: 999px; font: 700 14px / 1 var(--font); cursor: pointer; }
.consent__btn[hidden] { display: none; }
.consent__btn--primary { background: var(--orange); color: #fff; }
.consent__btn--secondary { background: #3f4441; color: #fff; }
.consent__btn--link { margin-right: auto; padding: 0 6px; background: none; color: var(--navy); text-decoration: underline; text-underline-offset: 3px; }
.consent__btn:focus-visible, .footer__cookies-btn:focus-visible { outline: 3px solid #1855d8; outline-offset: 2px; }
.footer__cookies[hidden] { display: none; }
.footer__cookies-btn { padding: 0; border: 0; background: none; color: inherit; font: inherit; cursor: pointer; }
.footer__cookies-btn:hover { text-decoration: underline; }
@media (max-width: 479px) {
  .consent__actions { justify-content: stretch; }
  .consent__btn--primary, .consent__btn--secondary { flex: 1 1 40%; }
  .consent__btn--link { order: 3; flex-basis: 100%; margin: 0; }
}

/* Telemóvel: o bloco do capacete vai de ponta a ponta, como no e-mail. */
@media (min-width: 560px) {
  .contact { padding: calc(10 * var(--d)) calc(14 * var(--d)) calc(22 * var(--d)); }
  .contact__grid { grid-template-columns: 1.08fr 0.92fr 1.05fr; gap: 0; align-items: center; }
  .contact__links { grid-column: auto; gap: calc(4 * var(--d)); padding-right: calc(14 * var(--d)); font-size: max(12px, calc(13 * var(--d))); }
  .contact__phone { font-size: max(15px, calc(17 * var(--d))); }
  .contact__mail { font-size: max(11px, calc(11.5 * var(--d))); }
  .contact__regions { padding: calc(4 * var(--d)) 0; border-inline: 1px solid #b9b9b9; font-size: max(13px, calc(14 * var(--d))); }
  .contact__address { padding-left: calc(18 * var(--d)); font-size: max(12px, calc(13.5 * var(--d))); line-height: 1.37; white-space: nowrap; }
}

/* Desktop: topo em largura total com o prédio ancorado à direita; restantes blocos seguem a coluna do Canva. */
@media (min-width: 760px) {
  .bleed { margin-inline: calc(-24 * var(--d)); }
  .hero { min-height: 0; padding-bottom: clamp(56px, 6vw, 96px); }
  .hero__bar { width: min(100% - 64px, 1200px); margin: clamp(20px, 2vw, 32px) auto 0; min-height: 0; padding: 12px 24px; font-size: clamp(17px, 1.45vw, 21px); }
  .hero__title { width: min(100% - 64px, 1200px); margin: 0 auto; padding-left: 24px; }
  .hero__kicker { margin-top: clamp(40px, 5.4vw, 92px); font-size: clamp(26px, 2.55vw, 38px); }
  .hero__slogan { margin-top: clamp(14px, 1.4vw, 24px); font-size: clamp(76px, min(8.3vw, 15.5vh), 128px); }
  .hero__building { left: auto; right: -6vw; top: clamp(70px, 6.6vw, 110px); width: clamp(520px, 56vw, 1040px); }
  .map__frame { aspect-ratio: 16 / 10; }
}
@media (min-width: 1500px) {
  .hero__building { right: -3vw; }
}

@media (prefers-reduced-motion: reduce) {
  .btn-quote, .btn-info { transition: none; }
  .btn-quote:hover, .btn-info:hover { transform: none; }
}
