.wh-contact{position:fixed;inset:0;margin:auto;width:min(860px,calc(100% - 32px));padding:0;border:0;border-radius:22px;max-height:calc(100dvh - 40px);overflow:auto;box-shadow:0 26px 90px #08152b55;background:#fffaf2;color:#18334d;font-family:'Open Sans',Arial,sans-serif}.wh-contact::backdrop{background:#0b1a3699;backdrop-filter:blur(5px)}.wh-contact[open]{display:grid;grid-template-columns:.9fr 1.1fr}.contact-photo{min-height:530px}.contact-photo img{height:100%;width:100%;object-fit:cover;object-position:40% center}.contact-copy{padding:48px 34px}.contact-copy h2{font-family:'Open Sans',Arial,sans-serif;font-weight:600;font-size:32px;line-height:1.12;letter-spacing:-.04em;color:#18334d;margin:12px 0 18px}.contact-copy>p{font-size:13px;line-height:1.65;margin:0 0 20px}.contact-kicker{font-size:10px!important;letter-spacing:.15em;font-weight:700;color:#a94f18}.contact-close{position:absolute;top:12px;right:14px;width:36px;height:36px;border:0;border-radius:50%;background:#fff9;font:28px/1 Arial;color:#18334d;cursor:pointer;z-index:2}.contact-action{display:flex;flex-direction:column;gap:3px;padding:14px 18px;text-decoration:none;background:#004299;color:#fff;border-radius:12px;margin-bottom:10px;font-size:13px}.contact-action b{font-weight:600;font-size:15px}.contact-action:nth-of-type(2){background:white;color:#18334d;border:1px solid #d8d9d3}.contact-desktop{font-size:11px!important;color:#56636d;margin:15px 0 5px!important}.copy-number{background:none;border:0;color:#004299;font-size:12px;cursor:pointer;text-decoration:underline;padding:0;min-height:35px}.contact-status{font-size:11px!important;color:#137a4b}.wh-contact [hidden]{display:none!important}@media(max-width:650px){.wh-contact[open]{display:block}.contact-photo{height:150px;min-height:0}.contact-photo img{object-position:center 30%}.contact-copy{padding:24px}.contact-copy h2{font-size:29px}.contact-copy>p{font-size:12px}}
/* Shared improvements found during the UI audit. */
html:has(dialog[open]){overflow:hidden;scrollbar-gutter:stable}.contact-booking{background:#edf2f5;color:#18334d;border:1px solid #d8d9d3}.contact-booking small{font-size:11px;line-height:1.5}.contact-copy{padding-top:38px;padding-bottom:28px}.contact-photo{min-height:0}.contact-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.contact-photo{position:relative}.contact-close:focus-visible{outline:3px solid #004299}.contact-action{min-height:68px}.copy-number{min-height:44px}.wh-contact:focus-visible{outline:none}
.wh-install-cards{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:25px 0}.wh-install-cards article{overflow:hidden;border:1px solid #d8d9d3;border-radius:14px;background:#fff}.wh-install-cards article>img{width:100%;height:175px;object-fit:contain;background:#edf2f5}.wh-install-cards article>div{padding:20px}.wh-install-cards h3{font:600 17px/1.3 'Open Sans',Arial,sans-serif!important;letter-spacing:-.02em;margin:0!important;color:#18334d}.wh-install-cards p{font-size:13px;line-height:1.7;color:#56636d;margin:12px 0 0!important}.install-applicability{display:inline-block;font-size:10px;font-weight:600;color:#004299;background:#edf2f5;padding:4px 8px;border-radius:99px;margin-top:12px}.wh-brand-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.wh-brand-grid article{padding:25px 0;border-top:1px solid #d8d9d3}.wh-brand-stat{font:600 32px/1 'Open Sans',Arial,sans-serif;color:#004299;letter-spacing:-.04em;display:block;margin-bottom:20px}.wh-brand-grid h3{font:600 20px/1.25 'Open Sans',Arial,sans-serif!important;letter-spacing:-.025em;color:#18334d;margin:0 0 14px!important}.wh-brand-grid p{font-size:14px;line-height:1.8;color:#56636d;margin:0}.wh-brand-note{font-size:12px;color:#56636d;margin-top:24px!important}.wh-brand-sources{display:flex;flex-wrap:wrap;gap:10px 25px;margin-top:14px}.wh-brand-sources a{display:inline-flex;align-items:center;min-height:44px;font-size:12px;color:#004299;text-underline-offset:3px}
@media(max-width:650px){.wh-contact[open]{display:block}.contact-photo{height:140px}.contact-copy{padding:26px 24px}.wh-install-cards{grid-template-columns:1fr;gap:16px}.wh-install-cards article{display:grid;grid-template-columns:105px 1fr;align-items:start}.wh-install-cards article>img{height:100%;min-height:130px;padding:7px;object-fit:contain}.wh-install-cards article>div{padding:18px 16px}.wh-install-cards h3{font-size:15px!important}.wh-install-cards p{font-size:12px}.wh-brand-grid{grid-template-columns:1fr;gap:0}.wh-brand-grid article{display:grid;grid-template-columns:100px 1fr;column-gap:20px}.wh-brand-stat{grid-row:span 2;font-size:26px}.wh-brand-grid h3{font-size:18px!important}.wh-brand-grid p{font-size:13px}.contact-copy h2{margin-top:8px}.wh-contact .contact-action{min-height:60px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
/* Manufacturer imagery and commercial-grade story, shared by page and detail sheet. */
.wh-brand-feature{display:grid;grid-template-columns:1.1fr 1fr;gap:35px;align-items:center;margin:25px 0 35px}.wh-brand-feature figure{margin:0;background:#fff;border-radius:15px;overflow:hidden;border:1px solid #e0e4e8}.wh-brand-feature figure>img{width:100%;height:auto;display:block}.wh-brand-feature figcaption{font-size:10px;line-height:1.6;color:#56636d;padding:5px 18px 15px}.wh-brand-feature h3{font-size:28px!important;line-height:1.15!important;letter-spacing:-.035em!important;margin:12px 0 18px!important}.wh-brand-feature p{font-size:14px;line-height:1.8;color:#56636d;margin:14px 0 0}.wh-brand-kicker{font-size:10px!important;font-weight:700;letter-spacing:.12em;color:#004299!important}.wh-brand-grid .wh-brand-icon{display:block;width:48px;height:48px;object-fit:contain;margin:0 0 22px;grid-row:span 2}.wh-brand-heritage{margin-top:12px;border-block:1px solid #d8d9d3}.wh-brand-heritage>summary{display:flex;align-items:center;justify-content:space-between;padding:20px 0;min-height:60px;cursor:pointer;list-style:none;font-size:14px;font-weight:600}.wh-brand-heritage>summary::-webkit-details-marker{display:none}.wh-brand-heritage>summary span{font-size:24px;font-weight:400;transition:transform .2s}.wh-brand-heritage[open]>summary span{transform:rotate(45deg)}.wh-brand-history{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:0 0 25px}.wh-brand-history figure{margin:0;overflow:hidden;border-radius:12px;background:#edf2f5}.wh-brand-history img{width:100%;height:auto;display:block}.wh-brand-history figcaption{padding:20px;font-size:12px;line-height:1.8;color:#56636d}.wh-brand-history figcaption b{display:block;color:#18334d;font-size:15px;margin-bottom:10px}
@media(max-width:650px){.wh-brand-feature{grid-template-columns:1fr;gap:23px;margin-top:20px}.wh-brand-feature h3{font-size:26px!important}.wh-brand-grid article{grid-template-columns:48px 1fr;gap:0 18px}.wh-brand-grid .wh-brand-icon{width:40px;height:40px}.wh-brand-history{grid-template-columns:1fr}.wh-brand-heritage>summary{gap:20px;font-size:13px}}
.wh-brand-grid .wh-brand-icon{background:#004299;border-radius:12px;padding:10px;box-sizing:border-box}
.wh-contact[open]{grid-template-areas:'photo copy'}.wh-contact .contact-photo{grid-area:photo}.wh-contact .contact-copy{grid-area:copy}.contact-close-wrap{grid-area:copy;position:sticky;top:0;height:0;z-index:5;pointer-events:none;align-self:start}.contact-close-wrap .contact-close{pointer-events:auto;position:absolute;top:12px;right:14px}

/* A real header row keeps headings and close controls out of the scrolling content. */
dialog.wh-sheet{inset:24px 0;margin:0 auto;width:min(1000px,calc(100% - 48px));height:calc(100dvh - 48px);max-height:calc(100dvh - 48px);max-width:none;padding:0;border:0;border-radius:18px;background:#fff;color:#18334d;overflow:hidden;box-shadow:0 24px 90px #08152b55}
dialog.wh-sheet[open]{display:flex;flex-direction:column}
dialog.wh-sheet::backdrop{background:#0b1a3680;backdrop-filter:blur(3px)}
.wh-sheet>.sheet-head{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:25px 32px;margin:0;border-bottom:1px solid #e3e7eb;background:#fff;flex:0 0 auto;z-index:2}
.sheet-head h2{font:600 30px/1.2 'Open Sans',Arial,sans-serif;letter-spacing:-.035em;margin:0;min-width:0;overflow-wrap:anywhere;color:#18334d}
.sheet-close{flex:0 0 44px;display:grid;place-items:center;width:44px;height:44px;padding:0;margin:-3px 0 0;border:1px solid #dfe5eb;border-radius:50%;background:#f3f5f9;color:#18334d;font:28px/1 Arial;cursor:pointer}
.sheet-close:hover{background:#e5ecf3}
.wh-sheet>.sheet-scroll{flex:1 1 auto;min-height:0;height:auto;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;overflow-anchor:none;scroll-padding-block:24px;padding:28px 32px 36px}
.wh-sheet>.sheet-scroll>:first-child{margin-top:0}
.wh-card-copy{font:400 15px/1.8 'Open Sans',Arial,sans-serif;color:#56636d}
.wh-card-copy>p+p{margin-top:18px}
.wh-card-copy .text-link{margin-top:24px}
.wh-sheet .sheet-context{font-size:11px;color:#56636d;letter-spacing:.08em;text-transform:uppercase;margin:0 0 8px}
.wh-card-sheet{height:auto!important;max-height:calc(100dvh - 48px)}
html:has(.wh-sheet[open]) .order-dock{visibility:hidden!important;pointer-events:none}
@media(max-width:760px){dialog.wh-sheet{inset:12px 0;width:calc(100% - 24px);height:calc(100dvh - 24px);max-height:calc(100dvh - 24px);border-radius:14px}.wh-sheet>.sheet-head{padding:20px;gap:16px}.sheet-head h2{font-size:25px;line-height:1.25}.wh-sheet>.sheet-scroll{padding:22px 20px 28px!important}.wh-card-copy{font-size:14px}.sheet-close{margin-top:0}}
@media(max-height:500px){dialog.wh-sheet{inset:8px 0;height:calc(100dvh - 16px);max-height:calc(100dvh - 16px)}.wh-sheet>.sheet-head{padding:14px 20px}.sheet-head h2{font-size:23px}.wh-sheet>.sheet-scroll{padding-block:18px!important}}

.wh-card-sheet{height:fit-content!important;margin:auto!important}

.sheet-head h2:focus{outline:none}.sheet-close:focus-visible{outline:3px solid #004299;outline-offset:2px}
/* Reserve a dedicated close-control slot even when a sheet title wraps. */
.wh-sheet>.sheet-head{display:block;padding-right:100px;min-height:94px}
.wh-sheet>.sheet-head>.sheet-close{position:absolute;top:25px;right:32px;margin:0;z-index:3}
@media(max-width:760px){.wh-sheet>.sheet-head{padding-right:80px;min-height:85px}.wh-sheet>.sheet-head>.sheet-close{top:20px;right:20px}}
@media(max-height:500px){.wh-sheet>.sheet-head{padding-right:80px;min-height:73px}.wh-sheet>.sheet-head>.sheet-close{top:14px;right:20px}}
