/* Brand-led imagery: wide editorial compositions instead of portrait crops. */
.brand-image{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
body .v5-home-photo{aspect-ratio:3/2;max-height:none;border-radius:16px 64px 16px 16px;background:#eee9e1}
body .v5-home-photo .brand-image{object-position:center}
body .v5-home-photo figcaption{font-size:11px;letter-spacing:.03em}
body .advisor-personal{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:60px}
body .advisor-garden-card{aspect-ratio:3/2;max-width:none;border-radius:16px 52px 16px 16px;background:#eee9e1}
body .subhero-grid>.advisor-garden-card{max-width:530px}
body .advisor-garden-card figcaption{padding:55px 24px 22px}
body .advisor-garden-card figcaption span{font-size:12px}
body .building-grid{grid-template-columns:1.05fr 1fr;gap:50px}
body .building-portrait{width:100%;max-width:570px;aspect-ratio:4/3;border-radius:16px 64px 16px 16px}
body .building-portrait img{object-position:center}
body .building-portrait figcaption{padding:70px 24px 22px}
body .building-portrait figcaption strong{font-size:21px}
body .pi-page .pi-hero-visual{aspect-ratio:4/3;height:auto;max-width:none;min-height:0}
body .pi-page .pi-hero-visual .brand-image{height:100%;object-position:center}
body .pi-feature-photo img,body .pi-model-photo img{aspect-ratio:3/2;height:auto}
body .ds-advisor figure{aspect-ratio:3/2;height:auto;overflow:hidden;border-radius:16px 50px 16px 16px}
body .ds-advisor figure img{height:100%;width:100%;object-fit:cover}
body .v5-online-grid figure{aspect-ratio:3/2}
body .ip-personal-hero img{aspect-ratio:3/2;object-position:center}
.brand-topics{padding-block:15px 80px}
.brand-section-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:32px}
.brand-section-heading h2{font-size:clamp(29px,3.4vw,43px);letter-spacing:-.04em;line-height:1.14;margin:14px 0 0}
.brand-section-heading h2 em{font-style:normal;color:#a9531b}
.brand-section-heading>p{max-width:380px;margin:0;color:#536570;font-size:14px;line-height:1.8}
.brand-topic-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.brand-topic{display:block;color:#162e40;text-decoration:none;background:#f5f3ed;border-radius:12px;overflow:hidden;border:1px solid #e5e3db;transition:transform .2s ease,box-shadow .2s ease}
.brand-topic:hover{transform:translateY(-4px);box-shadow:0 12px 28px #162e4010}
.brand-topic:focus-visible{outline:3px solid #a9531b;outline-offset:5px}
.brand-topic-image{aspect-ratio:3/2;overflow:hidden}
.brand-topic-copy{padding:22px 20px 24px}
.brand-topic h3{font-size:19px;line-height:1.3;letter-spacing:-.025em;margin:0 0 10px}
.brand-topic p{font-size:13px;line-height:1.75;color:#536570;margin:0 0 20px;min-height:3.5em}
.brand-topic-copy>span{display:flex;align-items:center;justify-content:space-between;font-weight:700;font-size:12px;color:#8f4619}
.brand-about-note{margin-top:28px;padding-top:20px;border-top:1px solid #dbe4e2;color:#536570;font-size:13px;line-height:1.8}
@media(max-width:1000px){.brand-topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.brand-section-heading{gap:25px}.brand-section-heading>p{max-width:300px}body .advisor-personal{gap:32px}body .building-grid{gap:30px}}
@media(max-width:760px){body .advisor-personal,body .building-grid{grid-template-columns:1fr}body .advisor-personal .advisor-garden-card,body .subhero-grid>.advisor-garden-card{width:100%;max-width:none}body .pi-page .pi-hero-visual{display:block;aspect-ratio:3/2;width:100%;max-width:none;margin:28px 0 0}body .building-portrait{aspect-ratio:3/2;max-width:none}body .building-portrait figcaption strong{font-size:19px}body .building-portrait figcaption span{font-size:12px}body .v5-home-photo{aspect-ratio:3/2}.brand-topics{padding-block:5px 48px}.brand-section-heading{display:block;margin-bottom:24px}.brand-section-heading>p{max-width:none;margin-top:18px}.brand-topic-copy{padding:18px}.brand-topic h3{font-size:18px}}
@media(max-width:480px){.brand-topic-grid{grid-template-columns:1fr;gap:20px}.brand-topic p{min-height:0}.brand-topic-image{aspect-ratio:16/9}}
@media(prefers-reduced-motion:reduce){.brand-topic{transition:none}.brand-topic:hover{transform:none}}

/* Homepage gallery: identical framing and gentle crossfades, no layout shifts. */
body .home-carousel .home-slides{position:absolute;inset:0}
.home-slide{position:absolute;inset:0;opacity:0;transition:opacity .9s ease;pointer-events:none}
.home-slide.is-active{opacity:1;z-index:1}
body .home-carousel .home-carousel-footer{position:absolute;inset:auto 0 0;z-index:2;max-width:none;margin:0;padding:48px 20px 16px;background:linear-gradient(transparent,#162e40e8);border-radius:0;display:flex;align-items:end;justify-content:space-between;gap:14px;color:#fff;font-size:13px;line-height:1.5;letter-spacing:0}
.home-carousel-footer>[data-carousel-caption]{font-weight:600;max-width:260px;padding-bottom:10px}
.home-carousel-controls{display:flex;align-items:center;gap:4px;flex-shrink:0}
.home-carousel-controls[hidden]{display:none}
.home-carousel-controls button{display:grid;place-items:center;width:40px;min-height:44px;padding:0;border:1px solid #ffffff55;border-radius:50%;background:#162e4059;color:#fff;font:inherit;font-size:20px;cursor:pointer}
.home-carousel-controls button:hover{background:#fff;color:#162e40}
.home-carousel-controls button:focus-visible{outline:3px solid #fff;outline-offset:3px}
.home-carousel-controls [data-carousel-toggle]{margin-left:4px;font-size:15px}
.home-carousel-count{min-width:32px;text-align:center;font-size:11px;font-variant-numeric:tabular-nums}
.home-carousel-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1000px){body .home-carousel .home-carousel-footer{display:block;padding:38px 16px 12px}.home-carousel-footer>[data-carousel-caption]{display:block;max-width:none;padding-bottom:8px}.home-carousel-controls{justify-content:flex-end}}
@media(prefers-reduced-motion:reduce){.home-slide{transition:none}}
