/* 4 August 2026 exec review layer. The 1 August review remains unchanged. */
:root {
  --exec-white: #fff;
  --exec-paper: #f7f7f4;
  --exec-soft: #eef0ee;
  --insurance-chenin: #dbc77d;
  --insurance-deep-ocean: #005764;
}

/* The page families now share one deliberate light, shaded, light rhythm. */
main > :where(section:nth-of-type(even):not(.closing):not(.service-testimonial):not(.story-band):not(.aw-voices):not(.community-portal)) {
  background: var(--exec-paper);
}

main > :where(section:nth-of-type(odd):not(.closing):not(.service-testimonial):not(.story-band):not(.aw-voices):not(.community-portal):not(.service-hero)) {
  background: var(--exec-white);
}

.suite-section.alt,
.content-section.alt,
.split-section.alt,
.service-insights,
.location-team,
.team-directory .page-library-hero,
.people-august #directory {
  background: var(--exec-paper);
}

.service-august .breadcrumbs {
  background: var(--exec-white);
}

.service-august .service-hero,
.service-august .inner-hero {
  border-bottom: 1px solid var(--line);
  background: var(--exec-soft);
}

.service-august .service-hero-grid,
.service-august .inner-hero-grid {
  min-height: 620px;
  grid-template-columns: minmax(390px, .92fr) minmax(0, 1.08fr);
  gap: clamp(44px, 6vw, 88px);
  align-items: center;
  padding-top: 42px;
  padding-bottom: 54px;
}

.service-august .service-hero-grid > div,
.service-august .inner-hero-copy {
  max-width: 610px;
}

.service-august .service-hero h1,
.service-august .inner-hero h1 {
  max-width: 10ch;
  margin: 16px 0 22px;
  font-size: clamp(58px, 5.8vw, 84px);
  line-height: .96;
}

.service-august .service-hero-photo,
.service-august .inner-hero-photo,
.service-august .service-hero-photo img,
.service-august .inner-hero-photo img {
  width: 100%;
  height: 520px;
  min-height: 520px;
}

.service-august .service-hero-photo img,
.service-august .inner-hero-photo img {
  object-fit: cover;
  object-position: center;
}

.service-phone {
  margin: 24px 0;
}

.service-phone span {
  display: block;
  color: var(--muted);
  font-size: 12px;
}

.service-phone a {
  color: var(--syrah);
  font-family: var(--display);
  font-size: clamp(34px, 4vw, 48px);
  text-decoration: none;
}

/* One team treatment across service and office templates. */
.specialist-team,
.wealth-team,
.location-team {
  padding-top: var(--section-space);
  padding-bottom: var(--section-space);
}

.specialist-team .team-tiles,
.location-team .team-tiles {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  max-width: none;
  gap: 36px 18px;
}

.team-tile img,
.team-tile .directory-initials {
  aspect-ratio: 4 / 5;
}

.team-tile a {
  display: none;
}

.team-tile h3 {
  margin-top: 14px;
  font-size: 23px;
}

.team-tile p {
  font-size: 13px;
}

/* Service reading follows one three-column editorial component. */
.service-insights .section-intro {
  max-width: 760px;
}

.service-insights .insights-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.service-insights .post {
  height: 100%;
  background: var(--exec-white);
  border-bottom: 2px solid var(--gold);
}

.service-insights .post > img {
  width: 100%;
  aspect-ratio: 3 / 2;
  object-fit: cover;
}

.service-insights .post-body {
  padding: 24px 24px 28px;
}

/* All closing CTAs now share the same content, office and form hierarchy. */
.exec-closing,
.closing {
  background: var(--gris);
}

.exec-closing .closing-grid {
  padding-top: clamp(78px, 7vw, 104px);
  padding-bottom: clamp(78px, 7vw, 104px);
}

.exec-closing .closing-copy h2 {
  max-width: 10ch;
}

.exec-closing .office-choice {
  margin-top: 32px;
}

.exec-closing .enquiry-form {
  box-shadow: none;
  border: 1px solid rgba(255,255,255,.16);
}

/* Adviser profile feedback. */
.profile-august .profile-grid {
  grid-template-columns: minmax(260px, .52fr) minmax(0, 1.48fr);
}

.profile-august .profile-grid > div {
  max-width: 720px;
}

.profile-qualifications {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 8px 14px;
  margin: 18px 0 0;
  padding-top: 18px;
  border-top: 1px solid var(--line);
  font-size: 15px;
}

.profile-qualifications strong {
  color: var(--ink);
}

.profile-qualifications span {
  color: var(--muted);
}

.profile-insights .related-list a,
.related-band .related-list a {
  text-decoration: none;
}

/* Accounting compliance marks copied as verified registrations, not decorative badges. */
.compliance-panel.accounting-compliance {
  padding: clamp(60px, 7vw, 88px) 0;
}

.compliance-panel.accounting-compliance .wrap {
  display: block;
}

.accounting-seals {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin-top: 30px;
}

.accounting-seal {
  min-height: 150px;
  padding: 24px;
  border: 1px solid var(--line);
  background: var(--exec-white);
}

.accounting-seal strong {
  display: block;
  margin-bottom: 8px;
  color: var(--syrah);
  font-family: var(--display);
  font-size: 26px;
  font-weight: 400;
}

.accounting-seal span {
  color: var(--muted);
  font-size: 13px;
}

/* Alteris Insurance follows its own supplied palette. */
.insurance-august .service-hero {
  background: var(--insurance-sorbet);
  color: var(--insurance-deep-ocean);
}

.insurance-august .service-hero h1 {
  color: var(--insurance-deep-ocean);
}

.insurance-august .service-hero .service-lede,
.insurance-august .service-hero .eyebrow {
  color: #28565d;
}

.insurance-august .insurance-logo {
  width: min(300px, 64%);
  height: auto;
  max-height: 108px;
  margin-bottom: 26px;
  object-fit: contain;
  object-position: left center;
}

.insurance-august .service-hero-photo img {
  object-position: center;
}

.insurance-august .suite-section h2,
.insurance-august .specialist-team h2,
.insurance-august .service-insights h2 {
  color: var(--insurance-seafoam);
}

.insurance-august .capability-list h3,
.insurance-august .capability-list strong,
.insurance-august .team-tile h3,
.insurance-august .service-insights h3,
.insurance-august .enquiry-form h3 {
  color: var(--insurance-chenin);
}

.insurance-august .specialist-team {
  background: var(--insurance-deep-ocean);
}

.insurance-august .team-tile p {
  color: rgba(255,255,255,.78);
}

.insurance-august .btn-primary {
  background: var(--insurance-deep-ocean);
  color: var(--exec-white);
}

.insurance-august .text-link.light {
  color: var(--insurance-deep-ocean);
  border-color: var(--insurance-deep-ocean);
}

/* Alteris Women hero is a true editorial split with the supplied reel. */
.community-august .community-portal {
  background: var(--aw-purple);
}

.community-august .community-portal-grid {
  width: 100%;
  max-width: none;
  min-height: min(720px, calc(100svh - 82px));
  grid-template-columns: 1fr 1fr;
  gap: 0;
}

.community-august .community-portal-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  max-width: 660px;
  margin-left: auto;
  padding: clamp(64px, 8vw, 118px) clamp(42px, 7vw, 96px) clamp(64px, 8vw, 118px) 36px;
}

.aw-reel {
  position: relative;
  min-height: 620px;
  overflow: hidden;
  background: #17131f;
}

.aw-reel iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.aw-voices .aw-voice-photo {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}

.aw-video-note .btn {
  margin-top: 18px;
}

/* The full footer now carries all regulated resources and payment access. */
.site-footer .footer-grid {
  grid-template-columns: .9fr .9fr 1.35fr 1.15fr;
  gap: clamp(30px, 4vw, 62px);
}

.site-footer .footer-care {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid var(--line);
}

.site-footer .footer-care span {
  display: block;
  color: var(--muted);
  font-size: 11px;
}

.site-footer .footer-care a {
  color: var(--syrah);
  font-family: var(--display);
  font-size: 24px;
}

@media (max-width: 1024px) {
  .service-august .service-hero-grid,
  .service-august .inner-hero-grid {
    min-height: 560px;
    grid-template-columns: 1fr 1fr;
    gap: 34px;
  }

  .specialist-team .team-tiles,
  .location-team .team-tiles {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .site-footer .footer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .service-august .service-hero-grid,
  .service-august .inner-hero-grid,
  .community-august .community-portal-grid {
    grid-template-columns: 1fr;
  }

  .service-august .service-hero h1,
  .service-august .inner-hero h1 {
    max-width: 12ch;
    font-size: clamp(48px, 14vw, 64px);
  }

  .service-august .service-hero-photo,
  .service-august .inner-hero-photo,
  .service-august .service-hero-photo img,
  .service-august .inner-hero-photo img {
    height: 340px;
    min-height: 340px;
  }

  .specialist-team .team-tiles,
  .location-team .team-tiles,
  .service-insights .insights-grid,
  .accounting-seals,
  .site-footer .footer-grid {
    grid-template-columns: 1fr;
  }

  .specialist-team .team-tiles,
  .location-team .team-tiles {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .community-august .community-portal-copy {
    max-width: none;
    margin: 0;
    padding: 58px 20px;
  }

  .aw-reel {
    min-height: 420px;
  }

  .profile-august .profile-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 420px) {
  .specialist-team .team-tiles,
  .location-team .team-tiles {
    grid-template-columns: 1fr 1fr;
    gap: 30px 12px;
  }

  .team-tile h3 {
    font-size: 19px;
  }

  .team-tile p {
    font-size: 11px;
  }

  .profile-qualifications {
    grid-template-columns: 1fr;
  }
}

@media (prefers-reduced-motion: reduce) {
  .aw-reel iframe {
    display: none;
  }

  .aw-reel {
    background: var(--aw-purple) url("assets/august/alteris-women/sydney-welcome.webp") center / cover no-repeat;
  }
}
