
/* ONE SITE PER DAY QA additions — 2026-09-12 */
.review-section{background:#fff}
.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.review-card{border:1px solid var(--line);border-radius:20px;background:#fff;padding:26px;box-shadow:0 10px 34px #0b2c380c;display:flex;flex-direction:column;min-height:100%}
.review-card blockquote{margin:0 0 20px;color:var(--text);font-size:16px;line-height:1.7}
.review-card footer{margin-top:auto;color:var(--mint-dark);font-weight:800;font-size:13px}
.review-card footer span{display:block;color:var(--muted);font-weight:600;margin-top:3px}
.review-disclaimer{margin-top:22px;color:var(--muted);font-size:13px;max-width:900px}
.local-review{display:grid;grid-template-columns:.9fr 1.1fr;gap:28px;align-items:center}
.local-review__label{color:var(--mint-dark);text-transform:uppercase;letter-spacing:.14em;font-weight:800;font-size:11px}
.local-review blockquote{margin:12px 0 12px;font-size:23px;line-height:1.5;color:var(--text)}
.local-review cite{font-style:normal;font-weight:800;color:var(--ink)}
.real-work-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:28px}
.real-work-grid figure{margin:0;border-radius:18px;overflow:hidden;background:var(--soft);border:1px solid var(--line)}
.real-work-grid img{display:block;width:100%;height:230px;object-fit:cover}
.real-work-grid figure.portrait img{object-position:center 58%}
.real-work-grid figcaption{padding:12px 14px;font-size:12px;color:var(--muted);font-weight:700;background:#fff}
.scope-four{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}
.scope-four article{border:1px solid var(--line);border-radius:17px;background:#fff;padding:24px;min-height:180px}
.scope-four b{display:block;color:var(--mint-dark);font-size:12px;letter-spacing:.12em;margin-bottom:22px}
.scope-four h3{font-size:20px;margin:0 0 8px}.scope-four p{font-size:14px;color:var(--muted);margin:0}
.area-gallery--compact figure{min-height:0!important;aspect-ratio:4/3}.area-gallery--compact img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.area-gallery--compact .portrait-focus img{object-position:center 58%}
.area-hero{min-height:560px}.area-hero>img{object-position:center 50%}
.proof-note{font-size:13px;color:var(--muted);margin-top:16px}
.reviews-hero{background:linear-gradient(135deg,var(--cream),#eef8f4);padding:85px 0 70px}
.reviews-hero h1{max-width:850px}.reviews-hero p{max-width:760px;color:var(--muted);font-size:18px}
.area-list-new{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:28px}.area-list-new a{border:1px solid var(--line);background:#fff;border-radius:16px;padding:19px;display:block}.area-list-new b{display:block;color:var(--ink);margin-bottom:5px}.area-list-new span{color:var(--muted);font-size:12px}
@media(max-width:980px){.review-grid{grid-template-columns:1fr 1fr}.real-work-grid{grid-template-columns:1fr 1fr}.scope-four{grid-template-columns:1fr 1fr}.area-list-new{grid-template-columns:1fr 1fr}.local-review{grid-template-columns:1fr}}
@media(max-width:640px){.review-grid,.real-work-grid,.scope-four,.area-list-new{grid-template-columns:1fr}.real-work-grid img{height:240px}.local-review blockquote{font-size:19px}.area-hero{min-height:520px}.review-card{padding:22px}.reviews-hero{padding:62px 0 52px}}
/* Contrast fix found in visual QA */
.reviews-hero h1{color:var(--ink);text-shadow:none}
/* Area hero image must be a background layer, not a flex item. */
.area-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

/* Human readability + suburb hero sizing pass */
.area-hero{min-height:400px!important}
.area-hero__inner{padding-top:52px!important;padding-bottom:46px!important}
.area-hero h1{font-size:clamp(38px,4.6vw,58px)!important;line-height:1.02}
.area-hero p{font-size:18px!important;line-height:1.55;max-width:720px}
.area-proof{padding:18px 0}
.area-proof__grid{min-height:0}
@media(max-width:980px){.area-hero{min-height:380px!important}.area-hero__inner{padding-top:46px!important;padding-bottom:40px!important}}
@media(max-width:640px){.area-hero{min-height:340px!important}.area-hero__inner{padding-top:38px!important;padding-bottom:32px!important}.area-hero h1{font-size:36px!important}.area-hero p{font-size:16px!important}.real-work-grid img{height:210px!important}}


/* 2026-09 human-scale image pass: keep photography useful without taking over the page. */
.section{padding:76px 0!important}
.page-hero{padding:58px 0 50px!important}

/* Homepage hero */
.hero{min-height:560px!important}
.hero__inner{padding-top:44px!important;padding-bottom:44px!important}
.hero h1{font-size:clamp(42px,4.8vw,64px)!important;line-height:1.04!important}
.hero p{font-size:17px!important;line-height:1.55!important}

/* Suburb hero photography */
.area-hero{min-height:315px!important;max-height:360px!important}
.area-hero__inner{padding-top:38px!important;padding-bottom:34px!important}
.area-hero h1{font-size:clamp(36px,4.1vw,52px)!important;line-height:1.04!important}
.area-hero p{font-size:16px!important;line-height:1.5!important;max-width:700px!important;margin:14px 0 0!important}

/* Photo grids on suburb/review/home pages */
.area-gallery,.area-gallery--compact{gap:14px!important}
.area-gallery figure,.area-gallery--compact figure{min-height:0!important;height:220px!important;aspect-ratio:auto!important}
.area-gallery img,.area-gallery--compact img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important}
.real-work-grid{gap:12px!important;margin-top:22px!important}
.real-work-grid img{height:175px!important;object-fit:cover!important}
.real-work-grid figcaption{padding:9px 11px!important;font-size:11px!important}

/* Other image sections */
.split__media{min-height:0!important;height:360px!important;max-height:360px!important}
.split__media img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important}
.area-image-grid__photo{height:175px!important}
.result-card__image{aspect-ratio:auto!important;height:205px!important}
.result-card__image img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important}
.case-hero-proof figure{min-height:0!important;height:390px!important;max-height:390px!important}
.case-hero-proof figure img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important}
.case-gallery figure>div{aspect-ratio:auto!important;height:260px!important;max-height:260px!important}
.case-gallery--3 figure:first-child>div{aspect-ratio:auto!important;height:300px!important;max-height:300px!important}
.case-gallery img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important}
.home-video-teaser{max-width:980px!important;margin-left:auto!important;margin-right:auto!important}
.video-frame{max-width:720px!important;margin-inline:auto!important}

@media(max-width:980px){
  .section{padding:64px 0!important}
  .hero{min-height:0!important}
  .hero__inner{padding-top:40px!important;padding-bottom:40px!important}
  .area-hero{min-height:300px!important;max-height:none!important}
  .area-gallery figure,.area-gallery--compact figure{height:200px!important}
  .split__media{height:310px!important;max-height:310px!important}
  .case-hero-proof figure{height:330px!important;max-height:330px!important}
}
@media(max-width:640px){
  .section{padding:52px 0!important}
  .page-hero{padding:46px 0 40px!important}
  .hero__inner{padding-top:34px!important;padding-bottom:34px!important}
  .hero h1{font-size:38px!important}
  .area-hero{min-height:265px!important;max-height:none!important}
  .area-hero__inner{padding-top:30px!important;padding-bottom:28px!important}
  .area-hero h1{font-size:34px!important}
  .area-hero p{font-size:15px!important}
  .area-gallery figure,.area-gallery--compact figure{height:190px!important}
  .real-work-grid img{height:185px!important}
  .split__media{height:250px!important;max-height:250px!important}
  .area-image-grid__photo{height:165px!important}
  .result-card__image{height:190px!important}
  .case-hero-proof figure{height:260px!important;max-height:260px!important}
  .case-gallery figure>div,.case-gallery--3 figure:first-child>div{height:210px!important;max-height:210px!important}
}
