/* Release 2026-10-29: brand buttons (orange on navy), policy pages on brand layout, responsive images */
.button,.mobile-contact a:first-child,.detail-info .button{background:#ffb56e;color:#112f47}
.button:hover,.button:focus-visible,.mobile-contact a:first-child:hover{background:#ffd2a6;color:#112f47}
.button.secondary{background:#112f47;color:#fff}
.button.secondary:hover,.button.secondary:focus-visible{background:#1d4766;color:#fff}
.hero .button.secondary,.visit .button.secondary{background:transparent;color:#fff;box-shadow:inset 0 0 0 2px #ffb56e}
.mobile-contact a:last-child{background:#112f47;color:#fff}
picture{display:contents}
.detail-main-wrap{width:100%;aspect-ratio:1;background:#f3f6f7;display:inline-block;vertical-align:baseline;overflow:hidden}
.detail-main-wrap img{width:100%;height:100%;object-fit:contain;display:block}
.thumbnails button[aria-current="true"]{outline:2px solid #112f47;outline-offset:2px}
.policy-page{display:block}
.policy-hero{background:var(--deep);color:#fff}
.policy-hero-inner{max-width:900px;margin:0 auto;padding:40px 5% 48px}
.policy-hero .breadcrumb{color:#ffb56e;font-weight:600;margin-bottom:22px}
.policy-hero .eyebrow{color:#ffb56e;font-weight:600;text-transform:uppercase;letter-spacing:.08em;font-size:15px;margin:0 0 8px}
.policy-hero h1{font-size:64px;line-height:1;margin:0 0 18px}
.policy-hero .policy-lede{color:#d9e3ea;font-size:20px;line-height:1.6;max-width:720px;margin:0}
.policy-hero .muted{color:#b9c8d3;margin:0 0 14px}
.policy-body{max-width:900px;margin:0 auto;padding:12px 5% 56px}
.policy-body section{border-top:1px solid var(--line);padding:26px 0}
.policy-body section:first-child{border-top:0}
.policy-body h2{font-size:34px;line-height:1.1;margin:0 0 10px;color:var(--deep)}
.policy-body p{font-size:18px;line-height:1.7;margin:0 0 10px;max-width:720px}
.policy-body a:not(.button){color:var(--deep);text-decoration:underline;text-underline-offset:3px}
.policy-cta{background:var(--wash);border-top:0!important;padding:28px!important;margin-top:12px}
.policy-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px}
@media(max-width:620px){.policy-hero-inner{padding:28px 20px 36px}.policy-hero h1{font-size:46px}.policy-hero .policy-lede{font-size:18px}.policy-body{padding:4px 20px 40px}.policy-body h2{font-size:28px}.policy-cta{padding:22px 18px!important}.policy-actions .button{width:100%}}
/* Fix 2026-10-29: width/height attrs on the hero <img> map to a fixed CSS height (e.g. 1185px), which overrides the
   original aspect-ratio box. Restore auto height so aspect-ratio + object-fit:contain size it exactly like before. */
.hero-image>picture>img{height:auto}
