/* BILDEN parent brand and Genesis Outdoor Living division. */
.division-section{padding:85px 6.5%;background:#f6f7f4;color:#263740}
.division-section .eyebrow{font-size:.875rem;line-height:1.7;letter-spacing:.12em;color:#91462f;margin-bottom:20px}
.division-section h2{font-size:clamp(2.25rem,4vw,4rem);line-height:1.1;letter-spacing:-.045em;max-width:950px}
.division-section p{font-size:1.0625rem;line-height:1.8;max-width:850px}
.division-section .nl-link{font-size:1rem;line-height:1.7;text-decoration:underline;text-underline-offset:5px;color:#86432e;display:inline-block;padding:8px 0}
.division-cards{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:40px}
.division-card{background:#18262d;color:white;min-width:0;display:flex;flex-direction:column}
.division-card.genesis-card{background:#294138}
.division-card figure{margin:0;position:relative;overflow:hidden}
.division-card img{display:block;width:100%;height:300px;object-fit:cover}
.division-card figcaption{font-size:.8125rem;line-height:1.6;padding:12px 25px;color:#d7e1df}
.division-card-copy{padding:32px;display:flex;flex-direction:column;align-items:flex-start;flex:1}
.division-card-copy .eyebrow{color:#f1b49c;font-size:.875rem;margin-bottom:15px}
.division-card h3{font-size:clamp(2rem,3vw,3rem);line-height:1.15;letter-spacing:-.04em;margin:0 0 20px}
.division-card p{font-size:1rem;color:#d8e3df;line-height:1.8;margin:0 0 24px}
.division-card a{font-size:1rem;text-decoration:underline;text-underline-offset:6px;margin-top:auto;padding:12px 0;line-height:1.5}
.division-complete{margin-top:30px;padding:28px 32px;border:1px solid #b5c4bd;display:flex;align-items:center;justify-content:space-between;gap:25px}
.division-complete p{margin:0;font-size:1rem;max-width:770px}
.division-complete strong{display:block;font-size:1.4rem;font-weight:500;margin-bottom:7px}
.division-complete a{font-size:1rem;line-height:1.5;text-decoration:underline;text-underline-offset:5px;flex-shrink:0}
.division-hero{display:grid;grid-template-columns:1.05fr 1fr;background:#20372e;color:#fff}
.division-hero-copy{padding:60px 6.5vw;align-self:center}
.division-hero .eyebrow{font-size:.875rem;color:#efb69d;letter-spacing:.1em;line-height:1.7;margin-bottom:25px}
.division-hero h1{font-weight:400;font-size:clamp(3rem,5.3vw,5.7rem);letter-spacing:-.05em;line-height:1.05;margin:0 0 28px}
.division-hero h1 em{font-family:Georgia,serif;font-weight:400;color:#eab396}
.division-hero p{font-size:1.1rem;line-height:1.8;color:#d7e3dc}
.division-hero .division-endorsement{font-size:.875rem;line-height:1.6;color:#c8d9cf;margin-top:25px}
.division-hero figure{position:relative;min-height:650px;margin:0;overflow:hidden}
.division-hero img{position:absolute;width:100%;height:100%;object-fit:cover;inset:0}
.division-hero figcaption{position:absolute;bottom:0;left:0;right:0;padding:16px 24px;background:#172c25e8;color:#fff;font-size:.8125rem;line-height:1.7}
.division-hero .button,.division-section .button{display:inline-flex;font-size:1rem;line-height:1.5;min-height:54px;gap:16px}
.division-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:40px}
.division-grid article{border-top:1px solid #acbfb4;padding-top:25px;min-width:0;scroll-margin-top:30px}
.division-grid h3{font-size:1.6rem;line-height:1.3;margin:0 0 18px}
.division-grid p{font-size:1rem;line-height:1.8}
.division-grid a{font-size:1rem;text-decoration:underline;text-underline-offset:5px;display:inline-block;padding:8px 0;line-height:1.6}
.division-band{padding:28px 6.5%;background:#e4ebe5;display:flex;gap:30px;align-items:center;justify-content:space-between;color:#294237}
.division-band p{font-size:1rem;line-height:1.75;margin:0;max-width:900px}
.division-band strong{display:block;font-weight:600}
.division-band a{font-size:.9375rem;line-height:1.7;text-decoration:underline;text-underline-offset:4px;white-space:nowrap}
.division-split{display:grid;grid-template-columns:1fr 1.2fr;gap:7vw}
.division-split h3{font-size:1.45rem;margin:25px 0 10px;line-height:1.3}
.division-split p:first-child{margin-top:0}
.division-muted{background:#e7ece8}
.division-cta{background:#18262d;color:#fff}
.division-cta .eyebrow{color:#ecad91}
.division-cta p{color:#d3e0e4}
.division-cta a:not(.button){font-size:1rem;line-height:1.7;text-decoration:underline;text-underline-offset:5px}
.division-cta .division-actions{display:flex;gap:25px;align-items:center;flex-wrap:wrap;margin-top:28px}
.division-nav-label{display:block;font-size:.8125rem;line-height:1.6;letter-spacing:.08em;text-transform:uppercase;color:#984d35;padding:12px 14px 5px}
.footer-division{font-size:.9375rem;line-height:1.7;margin-top:20px}
.footer-division a{text-decoration:underline;text-underline-offset:4px}
.division-page .breadcrumbs{background:#20372e}
.division-page .section-navigation a{white-space:normal;line-height:1.6}
.division-context{font-size:1rem;line-height:1.8;margin:15px 0 25px}
.division-context a{text-decoration:underline;text-underline-offset:4px;color:#85432d}
@media(max-width:1050px){.division-hero-copy{padding:45px 6%}.division-hero h1{font-size:3.5rem}.division-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.division-section{padding:65px 6%}.division-complete{flex-direction:column;align-items:flex-start}.division-card-copy{padding:26px}}
@media(max-width:760px){.division-hero,.division-cards,.division-split,.division-grid{grid-template-columns:1fr;gap:30px}.division-hero{gap:0}.division-hero-copy{padding:42px 6% 48px}.division-hero h1{font-size:clamp(2.75rem,10vw,4.4rem)}.division-hero figure{min-height:0;height:380px}.division-hero p{font-size:1rem}.division-section{padding:54px 6%}.division-card img{height:280px}.division-card-copy{padding:27px}.division-complete{padding:25px}.division-complete a{flex-shrink:1}.division-band{padding:25px 6%;flex-direction:column;align-items:flex-start;gap:15px}.division-band a{white-space:normal}.division-grid{gap:28px}.division-split{gap:30px}}

/* Genesis source portfolio refresh */
.genesis-portfolio{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin:36px 0 20px}
.genesis-portfolio figure{margin:0;min-width:0;background:#fff}
.genesis-portfolio img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.genesis-portfolio figcaption{padding:24px}
.genesis-portfolio h3{font-size:1.45rem;line-height:1.35;margin:0 0 12px}
.genesis-portfolio figcaption p{font-size:1rem;line-height:1.7;margin:0}
.division-section .genesis-source-note{font-size:.875rem;line-height:1.7}
.genesis-brand-mark{display:block;width:240px;height:auto;max-width:100%;background:transparent;padding:0;margin-bottom:28px}
@media(max-width:900px){.genesis-portfolio{grid-template-columns:1fr}.genesis-portfolio figure{max-width:720px}.genesis-portfolio figcaption{padding:22px}}

/* Expandable navigation: all links visible, with scrolling only when needed. */
.site-header .desktop-nav .services-dropdown>div{width:min(620px,calc(100vw - 48px));display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 24px;padding:24px;max-height:calc(100dvh - 130px);overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
.site-header .menu-overview{grid-column:1/-1;border-bottom:1px solid #d5ded8;padding-bottom:8px}
.site-header .menu-group{min-width:0}
.site-header .menu-group h2{font:600 .875rem/1.6 Arial,sans-serif;letter-spacing:.03em;text-transform:uppercase;color:#91462f;margin:0 0 10px;padding:0 8px}
.site-header .nav-dropdown a{white-space:normal;overflow-wrap:anywhere;line-height:1.5;min-height:44px;display:flex;align-items:center}
.site-header .mobile-menu nav{max-height:none;overflow:visible}
.site-header .mobile-menu .nav-dropdown>div{position:static;width:100%;max-height:none;overflow:visible;box-shadow:none;padding:12px 0 12px 16px;border:0;border-left:2px solid #b8593d;background:transparent;display:block;box-sizing:border-box}
.site-header .mobile-menu .nav-dropdown:not([open])>div{display:none}
.site-header .mobile-menu .nav-dropdown>summary{min-height:48px;display:flex;align-items:center;justify-content:space-between;padding:14px 0}
.site-header .mobile-menu .menu-group{margin:18px 0}
.site-header .mobile-menu .menu-group h2{padding:0;color:inherit;opacity:.85}
.site-header .mobile-menu .menu-overview{border-color:currentColor}
.site-header .mobile-menu[open]>summary>span[aria-hidden]{font-size:0}
.site-header .mobile-menu[open]>summary>span[aria-hidden]:after{content:'−';font-size:1rem}
/* Complete location directory, aligned inside the viewport. */
.site-header .desktop-nav .locations-dropdown>div{left:auto;right:0;width:min(570px,calc(100vw - 48px));padding:20px;display:block;max-height:var(--dropdown-available-height,calc(100dvh - 140px));overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
.site-header .location-menu-directories{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 16px;border-bottom:1px solid #ccd5d0;padding-bottom:12px;margin-bottom:12px}
.site-header .location-menu-directories a{font-weight:600}
.site-header .location-menu-cities{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 16px}
.site-header .locations-dropdown a{font-size:1rem;min-height:44px;line-height:1.5;padding:9px 10px;color:#263740}
.site-header .desktop-nav .locations-dropdown:not([open])>div{display:none}
.site-header .mobile-menu .locations-dropdown .location-menu-directories,.site-header .mobile-menu .location-menu-cities{grid-template-columns:1fr;gap:0}
.site-header .mobile-menu .locations-dropdown a{color:inherit;padding:12px 0}
/* Closed menus must stay hidden regardless of panel layout rules. */
.site-header details:not([open])>div,.site-header details:not([open])>nav,.site-header details>div[hidden],.site-header details>nav[hidden]{display:none!important}

/* Explicit closed state, including browsers with details layout differences. */
.site-header .nav-dropdown:not([open]) > div,
.site-header .mobile-menu:not([open]) > nav {
 display:none!important;visibility:hidden!important;pointer-events:none!important;
 height:0!important;min-height:0!important;max-height:0!important;
 padding:0!important;margin:0!important;border:0!important;overflow:hidden!important;
}
.site-header .nav-dropdown[open] > div,.site-header .mobile-menu[open] > nav{visibility:visible;pointer-events:auto}
