/*
Theme Name: Turia Rentals 2026
Theme URI: https://turiarentals.com/
Author: Turia Rentals
Description: Tema corporativo personalizado de Turia Rentals.
Version: 1.1.4
Text Domain: turia-rentals
*/

:root {
  --ink: #10233f;
  --navy: #0b2f5b;
  --blue: #0a4c8a;
  --mist: #eef3f6;
  --cream: #f7f4ee;
  --white: #ffffff;
  --gold: #c99d55;
  --gold-text: #7f5a24;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--cream);
  color: var(--ink);
  font-family: Arial, Helvetica, sans-serif;
  -webkit-font-smoothing: antialiased;
}
a { color: inherit; text-decoration: none; }

.site-header {
  position: absolute;
  z-index: 10;
  top: 0;
  left: 0;
  width: 100%;
  height: 96px;
  padding: 0 clamp(24px, 5vw, 80px);
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: var(--white);
}
.brand { display: flex; align-items: center; }
.brand img { width: 108px; height: 68px; object-fit: contain; filter: brightness(0) invert(1); }
.site-header nav { display: flex; gap: 34px; font-size: 14px; }
.site-header nav a { opacity: .82; transition: opacity .2s ease; }
.site-header nav a:hover, .site-header nav a:focus-visible { opacity: 1; }
.header-cta {
  padding: 13px 20px;
  border: 1px solid rgba(255,255,255,.55);
  border-radius: 999px;
  font-size: 13px;
  font-weight: 700;
}
.mobile-whatsapp-cta { display: none; }

.hero {
  min-height: 790px;
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  background: var(--navy);
  color: var(--white);
  overflow: hidden;
}
.hero-copy {
  padding: 190px clamp(32px, 7vw, 112px) 100px;
  align-self: center;
}
.eyebrow {
  margin: 0 0 26px;
  color: #b7cce0;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .2em;
}
h1 {
  max-width: 720px;
  margin: 0;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(54px, 5.35vw, 86px);
  font-weight: 400;
  line-height: .98;
  letter-spacing: -.045em;
}
h1 span { display: block; color: #bcd0e1; }
.hero-lead {
  max-width: 610px;
  margin: 32px 0 0;
  color: #d4dfeb;
  font-size: clamp(17px, 1.35vw, 21px);
  line-height: 1.6;
}
.hero-actions { display: flex; align-items: center; gap: 30px; margin-top: 38px; }
.primary-button {
  display: inline-flex;
  align-items: center;
  min-height: 54px;
  padding: 0 25px;
  border-radius: 4px;
  background: var(--white);
  color: var(--navy);
  font-size: 14px;
  font-weight: 800;
  box-shadow: 0 14px 35px rgba(0,0,0,.15);
}
.text-button { font-size: 14px; font-weight: 700; border-bottom: 1px solid rgba(255,255,255,.45); padding-bottom: 5px; }
.promise-list {
  display: flex;
  flex-wrap: wrap;
  gap: 16px 26px;
  margin: 48px 0 0;
  padding: 0;
  list-style: none;
  color: #d7e2ec;
  font-size: 13px;
}
.promise-list li { display: flex; align-items: center; gap: 8px; }
.check-icon { width: 17px; height: 17px; fill: none; stroke: var(--gold); stroke-width: 2; }

.hero-visual {
  position: relative;
  min-height: 790px;
  background:
    linear-gradient(145deg, rgba(10,52,90,.32), rgba(5,35,67,.58)),
    url('images/cocina-turia-1152.webp') center / cover no-repeat;
  display: grid;
  place-items: center;
  padding: 120px 48px 80px;
}
.hero-visual::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(11,47,91,.25), transparent 25%);
  pointer-events: none;
}
.building-grid {
  position: absolute;
  inset: 80px 0 0 16%;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(4, 1fr);
  gap: 10px;
  transform: perspective(900px) rotateY(-7deg) rotateZ(-1deg);
  opacity: .28;
}
.building-grid span { border: 1px solid rgba(255,255,255,.48); background: rgba(255,255,255,.055); }
.rent-card {
  position: relative;
  z-index: 2;
  width: min(450px, 90%);
  padding: 42px;
  border: 1px solid rgba(255,255,255,.38);
  background: rgba(8,37,71,.78);
  backdrop-filter: blur(15px);
  box-shadow: 0 30px 80px rgba(0,0,0,.25);
}
.rent-card > p { margin: 0 0 25px; color: #a7c0d6; font-size: 11px; font-weight: 700; letter-spacing: .18em; }
.rent-card strong { display: block; font-family: Georgia, "Times New Roman", serif; font-size: clamp(30px, 3vw, 46px); font-weight: 400; line-height: 1.17; }
.rent-card strong:nth-of-type(2) { color: #c8d9e6; }
.location-pill { position: absolute; z-index: 2; right: 28px; bottom: 32px; padding: 10px 15px; border-radius: 99px; background: rgba(255,255,255,.12); color: #d8e4ed; font-size: 12px; }

.trust-strip {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
  padding: 29px clamp(24px, 6vw, 96px);
  background: var(--white);
  border-bottom: 1px solid #dce3e8;
  color: #42546a;
  font-size: 13px;
}
.trust-strip div { display: flex; flex-wrap: wrap; gap: 12px 32px; }
.trust-strip .portfolio-proof { align-items: center; flex-wrap: nowrap; gap: 13px; color: var(--ink); }
.portfolio-proof strong { font-family: Georgia, "Times New Roman", serif; font-size: 36px; font-weight: 400; line-height: 1; }
.portfolio-proof span { font-size: 11px; font-weight: 700; line-height: 1.35; text-transform: uppercase; letter-spacing: .08em; }
.trust-strip span { position: relative; }
.trust-strip > div:last-child span + span::before { content: "·"; position: absolute; left: -18px; color: var(--gold); }

.proof-section {
  padding: 120px clamp(24px, 7vw, 112px);
  background: var(--cream);
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: clamp(60px, 9vw, 150px);
  align-items: end;
}
.section-kicker { margin: 0 0 20px; color: #50657a; font-size: 11px; font-weight: 800; letter-spacing: .19em; }
.section-intro h2, .process-heading h2 {
  margin: 0;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(39px, 4.4vw, 65px);
  font-weight: 400;
  line-height: 1.08;
  letter-spacing: -.035em;
}
.section-intro > p:last-child { max-width: 590px; margin: 29px 0 0; color: #596979; font-size: 16px; line-height: 1.75; }
.proof-metrics { border-top: 1px solid #bdc8d0; }
.proof-metrics article { display: grid; grid-template-columns: 140px 1fr; gap: 30px; align-items: center; padding: 30px 0; border-bottom: 1px solid #bdc8d0; }
.proof-metrics strong { font-family: Georgia, "Times New Roman", serif; font-size: 50px; font-weight: 400; color: var(--navy); }
.proof-metrics span { max-width: 240px; color: #56687a; font-size: 13px; font-weight: 700; line-height: 1.5; text-transform: uppercase; letter-spacing: .06em; }

.mobile-proof-cta { display: none; }

.process-section {
  padding: 120px clamp(24px, 7vw, 112px);
  background: var(--white);
  display: grid;
  grid-template-columns: .82fr 1.18fr;
  gap: clamp(55px, 9vw, 145px);
}
.process-heading { position: sticky; top: 50px; align-self: start; }
.process-list { margin: 0; padding: 0; list-style: none; border-top: 1px solid #cbd4db; }
.process-list li { display: grid; grid-template-columns: 55px 1fr; gap: 24px; padding: 30px 0; border-bottom: 1px solid #cbd4db; }
.process-list li > span { padding-top: 4px; color: var(--gold-text); font-size: 12px; font-weight: 800; letter-spacing: .1em; }
.process-list h3 { margin: 0; font-family: Georgia, "Times New Roman", serif; color: var(--navy); font-size: 28px; font-weight: 400; }
.process-list p { margin: 9px 0 0; color: #637284; font-size: 15px; line-height: 1.65; }

.benefits-section {
  padding: 120px clamp(24px, 7vw, 112px);
  background: var(--mist);
}
.benefits-heading { display: grid; grid-template-columns: .35fr .9fr .65fr; gap: 45px; align-items: end; margin-bottom: 65px; }
.benefits-heading .section-kicker { align-self: start; margin-top: 10px; }
.benefits-heading h2 { margin: 0; font-family: Georgia, "Times New Roman", serif; font-size: clamp(39px, 4.4vw, 65px); font-weight: 400; line-height: 1.08; letter-spacing: -.035em; }
.benefits-heading > p:last-child { margin: 0; color: #5e6f7f; font-size: 15px; line-height: 1.75; }
.benefits-grid { display: grid; grid-template-columns: repeat(6, 1fr); border-top: 1px solid #b7c4cd; border-left: 1px solid #b7c4cd; }
.benefits-grid article { grid-column: span 2; min-height: 290px; padding: 30px; border-right: 1px solid #b7c4cd; border-bottom: 1px solid #b7c4cd; display: flex; flex-direction: column; justify-content: center; }
.benefits-grid article > span { color: var(--gold-text); font-size: 11px; font-weight: 800; letter-spacing: .12em; }
.benefits-grid h3 { margin: 18px 0 12px; font-family: Georgia, "Times New Roman", serif; color: var(--navy); font-size: 28px; font-weight: 400; }
.benefits-grid p { margin: 0; color: #5e6f7f; font-size: 14px; line-height: 1.65; }
.benefits-grid article:nth-child(4),
.benefits-grid .wide-benefit { grid-column: span 3; }

.homes-section { padding: 120px clamp(24px, 7vw, 112px); background: var(--navy); color: var(--white); }
.homes-heading { display: grid; grid-template-columns: 1.25fr .75fr; gap: clamp(50px, 9vw, 150px); align-items: end; margin-bottom: 60px; }
.homes-heading h2 { max-width: 750px; margin: 0; font-family: Georgia, "Times New Roman", serif; font-size: clamp(39px, 4.4vw, 65px); font-weight: 400; line-height: 1.08; letter-spacing: -.035em; }
.homes-heading > p { margin: 0; color: #c9d8e4; font-size: 15px; line-height: 1.75; }
.homes-section .section-kicker { color: #91aec6; }
.homes-gallery { display: grid; grid-template-columns: 1.4fr 1fr 1fr; grid-template-rows: 330px 330px; gap: 14px; }
.homes-gallery figure { position: relative; margin: 0; overflow: hidden; background: #163f68; }
.homes-gallery .gallery-main { grid-row: span 2; }
.homes-gallery figure:nth-child(4) { grid-column: span 2; }
.homes-gallery img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.homes-gallery figure:hover img { transform: scale(1.025); }
.homes-gallery figcaption { position: absolute; left: 18px; bottom: 18px; padding: 9px 12px; background: rgba(5,35,67,.85); color: #eef5fa; font-size: 11px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }

.founder-section { display: grid; grid-template-columns: 1fr 1fr; min-height: 690px; background: var(--cream); }
.founder-photo { min-height: 690px; overflow: hidden; }
.founder-photo img { width: 100%; height: 100%; object-fit: cover; object-position: 55% center; }
.founder-copy { padding: 100px clamp(32px, 7vw, 105px); display: flex; flex-direction: column; justify-content: center; }
.founder-copy h2 { margin: 0; font-family: Georgia, "Times New Roman", serif; color: var(--navy); font-size: clamp(48px, 5vw, 72px); font-weight: 400; line-height: 1; letter-spacing: -.04em; }
.founder-role { margin: 15px 0 32px; color: var(--gold-text); font-size: 12px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.founder-copy > p:not(.section-kicker):not(.founder-role) { max-width: 590px; margin: 0 0 18px; color: #596979; font-size: 16px; line-height: 1.75; }
.founder-link { align-self: flex-start; margin-top: 20px; padding-bottom: 6px; border-bottom: 1px solid #a2afba; color: var(--navy); font-size: 14px; font-weight: 800; }

.testimonials-section { padding: 120px clamp(24px, 7vw, 112px); background: var(--white); }
.testimonials-heading { display: grid; grid-template-columns: 1.25fr .75fr; gap: clamp(50px, 9vw, 150px); align-items: end; margin-bottom: 58px; }
.testimonials-heading h2 { max-width: 760px; margin: 0; font-family: Georgia, "Times New Roman", serif; color: var(--navy); font-size: clamp(39px, 4.4vw, 65px); font-weight: 400; line-height: 1.08; letter-spacing: -.035em; }
.testimonials-heading > p { margin: 0; color: #5e6f7f; font-size: 15px; line-height: 1.75; }
.testimonials-grid { display: grid; grid-template-columns: repeat(6, 1fr); border-top: 1px solid #c4ced5; border-left: 1px solid #c4ced5; }
.testimonials-grid article { grid-column: span 2; min-height: 360px; padding: 34px; border-right: 1px solid #c4ced5; border-bottom: 1px solid #c4ced5; display: flex; flex-direction: column; justify-content: space-between; }
.testimonials-grid article:nth-child(4), .testimonials-grid article:nth-child(5) { grid-column: span 3; min-height: 310px; }
.testimonials-grid article > p { margin: 0; font-family: Georgia, "Times New Roman", serif; color: #273b52; font-size: 20px; line-height: 1.55; }
.testimonials-grid footer { display: flex; flex-direction: column; gap: 6px; margin-top: 30px; }
.testimonials-grid footer strong { color: var(--navy); font-size: 12px; letter-spacing: .08em; text-transform: uppercase; }
.testimonials-grid footer span { color: #5f6f7e; font-size: 12px; }
.testimonial-note { margin: 18px 0 0; color: #5f6f7e; font-size: 11px; }

.faq-section { padding: 120px clamp(24px, 7vw, 112px); background: var(--cream); display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(55px, 9vw, 145px); }
.faq-heading { align-self: start; position: sticky; top: 50px; }
.faq-heading h2 { margin: 0; font-family: Georgia, "Times New Roman", serif; color: var(--navy); font-size: clamp(39px, 4.4vw, 65px); font-weight: 400; line-height: 1.08; letter-spacing: -.035em; }
.faq-heading > p:last-child { max-width: 480px; margin: 25px 0 0; color: #5f6f7e; font-size: 15px; line-height: 1.7; }
.faq-list { border-top: 1px solid #bcc7ce; }
.faq-list details { border-bottom: 1px solid #bcc7ce; }
.faq-list summary { position: relative; padding: 27px 45px 27px 0; color: var(--navy); cursor: pointer; list-style: none; font-family: Georgia, "Times New Roman", serif; font-size: 23px; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary::after { content: "+"; position: absolute; right: 5px; top: 25px; font-family: Arial, sans-serif; color: var(--gold-text); font-size: 25px; font-weight: 300; }
.faq-list details[open] summary::after { content: "−"; }
.faq-list details p { max-width: 720px; margin: -5px 0 28px; color: #5f6f7e; font-size: 15px; line-height: 1.7; }

.valuation-section { padding: 120px clamp(24px, 7vw, 112px); background: var(--navy); color: var(--white); display: grid; grid-template-columns: .82fr 1.18fr; gap: clamp(55px, 9vw, 145px); }
.valuation-section .section-kicker { color: #94afc6; }
.valuation-copy h2 { margin: 0; font-family: Georgia, "Times New Roman", serif; font-size: clamp(42px, 4.8vw, 70px); font-weight: 400; line-height: 1.05; letter-spacing: -.04em; }
.valuation-copy > p:not(.section-kicker) { max-width: 530px; margin: 28px 0 0; color: #c8d6e2; font-size: 16px; line-height: 1.75; }
.valuation-contact { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; margin-top: 50px; }
.valuation-contact span { margin-bottom: 5px; color: #91aec6; font-size: 10px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.valuation-contact a { color: #eef5fa; font-size: 14px; border-bottom: 1px solid rgba(255,255,255,.25); padding-bottom: 3px; }
.valuation-form { padding: clamp(30px, 4vw, 55px); background: var(--white); color: var(--ink); box-shadow: 0 28px 80px rgba(0,0,0,.18); }
.valuation-form label { display: flex; flex-direction: column; gap: 9px; margin-bottom: 20px; color: #34495e; font-size: 11px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }
.valuation-form label > span { color: #5f6f7e; font-weight: 500; text-transform: none; letter-spacing: 0; }
.valuation-form input, .valuation-form select, .valuation-form textarea { width: 100%; border: 1px solid #c9d2d9; border-radius: 0; background: #fff; color: var(--ink); padding: 14px 15px; font: 15px Arial, sans-serif; text-transform: none; letter-spacing: 0; outline: none; }
.valuation-form input:focus, .valuation-form select:focus, .valuation-form textarea:focus { border-color: var(--blue); box-shadow: 0 0 0 2px rgba(10,76,138,.12); }
.valuation-form textarea { resize: vertical; }
.field-row { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.valuation-form button { width: 100%; min-height: 56px; border: 0; background: var(--blue); color: var(--white); cursor: pointer; font-size: 14px; font-weight: 800; }
.valuation-form button:hover { background: var(--navy); }
.form-note { margin: 12px 0 0; color: #5f6f7e; font-size: 11px; line-height: 1.5; }
.privacy-layer { margin: 10px 0 0; color: #5f6f7e; font-size: 10px; line-height: 1.55; }
.privacy-layer a { color: var(--blue); text-decoration: underline; }

.site-footer { position: relative; display: grid; grid-template-columns: 1.1fr 1fr .6fr; gap: 55px; padding: 75px clamp(24px, 7vw, 112px) 100px; background: var(--white); color: var(--ink); border-top: 1px solid #d6dde2; }
.footer-brand img { width: 150px; height: 90px; object-fit: contain; object-position: left center; }
.footer-brand p { max-width: 330px; margin: 15px 0 0; color: #697886; font-size: 13px; line-height: 1.6; }
.footer-contact { display: flex; flex-direction: column; align-items: flex-start; gap: 7px; color: #637282; font-size: 12px; line-height: 1.45; }
.footer-contact strong { margin-bottom: 5px; color: var(--navy); font-size: 12px; letter-spacing: .06em; }
.footer-contact a { color: var(--navy); border-bottom: 1px solid #c6d0d7; }
.site-footer nav { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; color: #536476; font-size: 12px; }
.site-footer nav a { border-bottom: 1px solid #c6d0d7; }
.footer-copy { position: absolute; left: clamp(24px, 7vw, 112px); bottom: 28px; margin: 0; color: #536476; font-size: 10px; }

.legal-page { min-height: 100vh; background: var(--cream); }
.legal-header { height: 90px; padding: 0 clamp(24px, 7vw, 112px); display: flex; align-items: center; justify-content: space-between; background: var(--white); border-bottom: 1px solid #d6dde2; }
.legal-header img { width: 110px; height: 68px; object-fit: contain; }
.legal-header > a:last-child { color: var(--navy); font-size: 13px; font-weight: 800; border-bottom: 1px solid #b8c4cd; padding-bottom: 4px; }
.legal-content { max-width: 920px; margin: 0 auto; padding: 100px 24px 130px; }
.legal-content h1 { max-width: none; color: var(--navy); font-size: clamp(48px, 6vw, 76px); }
.legal-updated { margin: 18px 0 55px; color: #5f6f7e; font-size: 12px; }
.legal-content h2 { margin: 42px 0 13px; color: var(--navy); font-family: Georgia, "Times New Roman", serif; font-size: 27px; font-weight: 400; }
.legal-content p, .legal-content li { color: #576879; font-size: 15px; line-height: 1.75; }
.legal-content ul { padding-left: 22px; }

@media (max-width: 900px) {
  html { scroll-padding-top: 86px; }
  [id] { scroll-margin-top: 86px; }
  .site-header {
    position: fixed;
    height: 74px;
    background: rgba(8, 37, 71, .95);
    box-shadow: 0 8px 24px rgba(0, 0, 0, .16);
    backdrop-filter: blur(12px);
  }
  .brand img { width: 94px; height: 59px; }
  .site-header nav { display: none; }
  .header-cta { display: none; }
  .mobile-whatsapp-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 0 16px;
    border-radius: 999px;
    background: #25d366;
    color: #073f21;
    font-size: 12px;
    font-weight: 800;
  }
  .hero { grid-template-columns: 1fr; }
  .hero-copy { padding: 145px 24px 70px; }
  h1 { font-size: clamp(50px, 13vw, 70px); }
  .hero-visual {
    min-height: 510px;
    padding: 70px 22px;
    background-image:
      linear-gradient(145deg, rgba(10,52,90,.32), rgba(5,35,67,.58)),
      url('images/cocina-turia-720.webp');
  }
  .building-grid { inset: 30px 0 0 10%; }
  .trust-strip { flex-direction: column; gap: 16px; }
  .proof-section, .process-section { grid-template-columns: 1fr; padding-top: 85px; padding-bottom: 85px; }
  .proof-metrics article { grid-template-columns: 110px 1fr; }
  .mobile-proof-cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    padding: 30px 24px;
    background: var(--navy);
    color: var(--white);
  }
  .mobile-proof-cta p {
    margin: 0 0 8px;
    color: #a9bfd2;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .16em;
  }
  .mobile-proof-cta h2 {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(27px, 6vw, 36px);
    font-weight: 400;
    line-height: 1.08;
  }
  .mobile-proof-cta > a {
    flex: 0 0 auto;
    min-height: 50px;
    padding: 0 20px;
    border-radius: 4px;
    background: var(--white);
    color: var(--navy);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    font-weight: 800;
  }
  .process-heading { position: static; }
  .benefits-heading { grid-template-columns: 1fr; gap: 20px; }
  .benefits-grid { grid-template-columns: repeat(2, 1fr); }
  .benefits-grid article,
  .benefits-grid article:nth-child(4),
  .benefits-grid .wide-benefit { grid-column: span 1; }
  .homes-heading { grid-template-columns: 1fr; gap: 24px; }
  .homes-gallery { grid-template-columns: 1fr 1fr; grid-template-rows: 420px 260px 260px; }
  .homes-gallery .gallery-main { grid-column: span 2; grid-row: auto; }
  .homes-gallery figure:nth-child(4) { grid-column: span 2; }
  .founder-section { grid-template-columns: 1fr; }
  .founder-photo { min-height: 520px; }
  .testimonials-heading { grid-template-columns: 1fr; gap: 24px; }
  .testimonials-grid { grid-template-columns: repeat(2, 1fr); }
  .testimonials-grid article, .testimonials-grid article:nth-child(4), .testimonials-grid article:nth-child(5) { grid-column: span 1; }
  .faq-section { grid-template-columns: 1fr; }
  .faq-heading { position: static; }
  .valuation-section { grid-template-columns: 1fr; }
  .site-footer { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 560px) {
  .site-header { padding: 0 18px; }
  .mobile-whatsapp-cta { min-height: 40px; padding: 0 14px; font-size: 11px; }
  .hero-copy { padding-left: 20px; padding-right: 20px; }
  .hero-actions { align-items: flex-start; flex-direction: column; gap: 20px; }
  .primary-button { width: 100%; justify-content: center; }
  .promise-list { flex-direction: column; gap: 11px; margin-top: 36px; }
  .mobile-proof-cta { align-items: stretch; flex-direction: column; gap: 20px; }
  .mobile-proof-cta > a { width: 100%; }
  .hero-visual { min-height: 460px; }
  .rent-card { width: 100%; padding: 28px 24px; }
  .location-pill { right: 18px; bottom: 18px; }
  .trust-strip div { flex-direction: column; gap: 9px; }
  .trust-strip > div:last-child span + span::before { display: none; }
  .benefits-grid { grid-template-columns: 1fr; }
  .benefits-grid article,
  .benefits-grid article:nth-child(4),
  .benefits-grid .wide-benefit { grid-column: span 1; }
  .homes-gallery { display: flex; flex-direction: column; }
  .homes-gallery figure { height: 330px; }
  .founder-copy { padding: 75px 24px; }
  .founder-photo { min-height: 420px; }
  .testimonials-grid { grid-template-columns: 1fr; }
  .testimonials-grid article { min-height: 300px; }
  .field-row { grid-template-columns: 1fr; gap: 0; }
  .valuation-form { padding: 28px 20px; }
  .site-footer { grid-template-columns: 1fr; gap: 35px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}
