/* One navigation style in both transparent and solid states. */
/* Main navigation uses champagne gold for pointer and keyboard feedback. */
#wb-header #wb-nav>a:is(:hover,:focus,:active),#wb-header #wb-nav .wb-nav-pair>a:is(:hover,:focus,:active),#wb-header #wb-nav .wb-products-toggle:is(:hover,:focus,:active){color:#a17a45!important;opacity:1;outline:none;box-shadow:none}
#wb-header #wb-nav>a:focus-visible,#wb-header #wb-nav .wb-nav-pair>a:focus-visible,#wb-header #wb-nav .wb-products-toggle:focus-visible{text-decoration:underline;text-underline-offset:6px}
.wb-mega .wb-mega-top{align-items:center;gap:20px;flex-wrap:wrap}
.wb-mega .wb-mega-top>span{font-family:"Times New Roman",Times,serif;font-size:24px;font-weight:700;line-height:1.25;letter-spacing:0}
.wb-mega .wb-mega-top>.wb-text-link{margin-left:auto;flex-shrink:0}
body:has(.wb-hero,.cap-brand-banner,.quality-brand-banner,.about-top-banner,.contact-hero,.wb-product-banner){padding-top:0!important}
body:has(.wb-hero,.cap-brand-banner,.quality-brand-banner,.about-top-banner,.contact-hero,.wb-product-banner) #wb-header:not(.is-scrolled){background:transparent!important;backdrop-filter:none!important;border:0!important;box-shadow:none!important}
#wb-header #wb-nav>a,#wb-header #wb-nav .wb-nav-pair>a{font-family:"Times New Roman",Times,serif!important;font-size:19px!important;font-weight:700!important;letter-spacing:0!important}
#wb-header #wb-nav>a.wb-home-mark{display:flex;color:#111}
#wb-header .wb-home-logo{display:block;width:40px;height:40px;background-color:currentColor;-webkit-mask:url('../images/brand/official-1.png') center/contain no-repeat;mask:url('../images/brand/official-1.png') center/contain no-repeat}
body.wb-banner-page{padding-top:0!important}
.wb-banner-page .wb-product-banner{margin-top:0!important}
#wb-header.is-over-hero{background:transparent!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;border:0!important;box-shadow:none!important}
#wb-header.is-scrolled{background:#fff!important;color:#111!important}
#wb-header .wb-social{opacity:1;visibility:visible}
@media(min-width:768px) and (max-width:1100px){#wb-header #wb-nav{gap:16px}#wb-header #wb-nav>a,#wb-header #wb-nav .wb-nav-pair>a{font-size:18px!important}}
/* Slide floating controls in from beyond the right edge. */
.wb-consult-edge{right:24px;top:auto;bottom:88px;width:52px;height:52px;pointer-events:none}
.wb-consult-edge .wb-consult-button,.wb-backtop{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;padding:0;border:1px solid #ffffffa6;box-shadow:0 5px 22px #47352a26;transform:translateX(110px);background:#b99682;color:#fff;transition:transform .35s ease,background .2s,box-shadow .2s,visibility 0s .35s}
.wb-consult-edge .wb-consult-button:hover,.wb-consult-edge .wb-consult-button:focus{background:#a5806d;box-shadow:0 7px 25px #47352a33}
.wb-consult-edge.is-visible .wb-consult-button,.wb-consult-edge .wb-consult-button:focus-visible,.wb-consult-edge .wb-consult-button[aria-expanded="true"]{transform:translateX(0);pointer-events:auto}
.wb-backtop{opacity:1;visibility:hidden;pointer-events:none}
.wb-backtop.is-visible{transform:translateX(0);visibility:visible;pointer-events:auto;transition-delay:0s}
@media(hover:none){.wb-consult-edge .wb-consult-button{transform:translateX(0);pointer-events:auto}}
.wb-consult-button svg{width:26px;height:26px;stroke-width:1.6}
.wb-backtop{right:24px;bottom:24px;background:#fffaf5;color:#8b6853;border-color:#e4d6cb}
.wb-backtop:hover{background:#eee2d8}
.wb-backtop .wb-icon{width:22px;height:22px}
.wb-consult{top:auto;bottom:88px;right:88px;width:min(410px,calc(100% - 32px));max-width:none;max-height:calc(100dvh - 112px);padding:24px;border:1px solid #eee8e1;border-radius:18px;box-shadow:0 12px 48px #45332826}
.wb-consult #wb-consult-title{font:600 18px/1.3 Arial,Helvetica,sans-serif;letter-spacing:0;margin:0 36px 18px 0;color:#363a35}
.wb-consult-close{right:12px;top:12px;width:30px;height:30px;color:#777;background:transparent}
.wb-compact-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
.wb-consult .wb-compact-form input:not([type=hidden]),.wb-consult .wb-compact-form textarea{display:block;min-width:0;width:100%;margin:0;padding:12px;border:1px solid transparent;border-radius:6px;background:#f6f5f3;box-shadow:none;font:14px/1.4 Arial,Helvetica,sans-serif;color:#303630}
.wb-consult .wb-compact-form textarea{grid-column:1/-1;min-height:110px;resize:vertical}
.wb-consult .wb-compact-form input:focus,.wb-consult .wb-compact-form textarea:focus{outline:2px solid #b99682;outline-offset:1px;background:#fff}
.wb-consult .wb-compact-form .wb-button{width:auto;min-width:100px;margin:14px 0 0;background:#b99682;border-color:#b99682;color:#fff}
.wb-consult .wb-compact-form .wb-button:hover{background:#a5806d;border-color:#a5806d}
.wb-compact-code{display:block;margin-top:12px;font-size:13px}
@media(max-width:767px){.wb-consult-edge{right:16px;bottom:80px}.wb-backtop{right:16px;bottom:16px}.wb-consult{right:16px;bottom:144px;padding:20px;max-height:calc(100dvh - 168px)}#wb-header.menu-open #wb-nav{background:#fff}}
@media(prefers-reduced-motion:reduce){.wb-consult-edge .wb-consult-button,.wb-backtop{transition:none}}
/* Keep the About lettering in the wall area, below the overlaid navigation. */
body.wb-banner-page #wb-about-content .about-top-banner>img{height:max(500px,36.72vw);object-fit:cover;object-position:44.5% center}
body.wb-banner-page #wb-about-content .about-banner-copy{top:72px;translate:-50% 0}
body.wb-banner-page #wb-about-content .about-banner-since{font-size:clamp(20px,2vw,34px);margin-bottom:4px}
body.wb-banner-page #wb-about-content .about-banner-year{font-size:clamp(30px,2.8vw,48px)}
body.wb-banner-page #wb-about-content .about-banner-message{font-size:clamp(20px,1.7vw,30px);line-height:1.2}
@media(max-width:767px){body.wb-banner-page #wb-about-content .about-top-banner{height:430px}body.wb-banner-page #wb-about-content .about-top-banner>img{height:430px;object-position:42% center}body.wb-banner-page #wb-about-content .about-banner-copy{top:64px;left:calc(42% + 29px)}body.wb-banner-page #wb-about-content .about-banner-message{font-size:20px}}

@media(max-width:767px){body.wb-banner-page #wb-contact-content .contact-hero{padding-top:80px}}
@media(max-width:767px){.wb-consult .wb-compact-form input:not([type=hidden]),.wb-consult .wb-compact-form textarea,body #wb-contact-content input,body #wb-contact-content select,body #wb-contact-content textarea{font-size:16px}}

/* Mobile inner-page banners show the complete artwork below the navigation. */
@media(max-width:767px){
 body.wb-banner-page:not(.wb-home-page),body:not(.wb-home-page):has(.cap-brand-banner,.quality-brand-banner,.about-top-banner,.contact-hero,.wb-product-banner){padding-top:56px!important}
 body.wb-banner-page:not(.wb-home-page) #wb-header:not(.is-scrolled){background:#fff!important}
 body.wb-banner-page #wb-capabilities-content .cap-brand-banner,
 body.wb-banner-page #wb-quality-content .quality-brand-banner,
 body.wb-banner-page #wb-about-content .about-top-banner,
 body.wb-banner-page #wb-contact-content .contact-hero,
 body.wb-banner-page .wb-product-banner{aspect-ratio:2069/760;height:auto;min-height:0}
 body.wb-banner-page #wb-capabilities-content .cap-brand-banner>img,
 body.wb-banner-page #wb-quality-content .quality-brand-banner>img,
 body.wb-banner-page .wb-product-banner>img{object-fit:contain;object-position:center}
 body.wb-banner-page #wb-about-content .about-top-banner>img{height:auto;object-fit:contain;object-position:center}
 body.wb-banner-page #wb-capabilities-content .cap-brand-copy{left:3.7%;top:27%;width:60%}
 body.wb-banner-page #wb-capabilities-content .cap-brand-copy h1{font-size:3.4vw;line-height:1.15;letter-spacing:-.04em;white-space:nowrap;margin-bottom:.75vw}
 body.wb-banner-page #wb-capabilities-content .cap-brand-copy p{font-size:2.1vw;line-height:1.3;letter-spacing:-.035em}
 body.wb-banner-page #wb-capabilities-content .cap-brand-rule{margin-top:1vw;width:62%}
 body.wb-banner-page #wb-quality-content .quality-brand-copy{left:20%;top:22%;width:51%}
 body.wb-banner-page #wb-quality-content .quality-brand-copy h1{font-size:3.2vw;letter-spacing:-.035em;margin-bottom:.9vw}
 body.wb-banner-page #wb-quality-content .quality-brand-subtitle{font-size:1.65vw;line-height:1.4}
 body.wb-banner-page #wb-quality-content .quality-brand-tagline{font-size:1.45vw;line-height:1.5;letter-spacing:.04em}
 body.wb-banner-page #wb-quality-content .quality-brand-rule{margin:1vw 0}
 body.wb-banner-page #wb-about-content .about-banner-copy{left:44.5%;top:10%;width:30%;translate:-50% 0}
 body.wb-banner-page #wb-about-content .about-banner-since{font-size:2vw;margin-bottom:.25vw}
 body.wb-banner-page #wb-about-content .about-banner-year{font-size:2.8vw}
 body.wb-banner-page #wb-about-content .about-banner-message{font-size:1.7vw;line-height:1.2}
 body.wb-banner-page #wb-contact-content .contact-hero{padding:8.5vw 4vw 4vw;background-size:contain;background-position:center}
 body.wb-banner-page #wb-contact-content .contact-hero>div{width:68%}
 body.wb-banner-page #wb-contact-content .contact-brand-heading{font-size:3.1vw;margin-bottom:.9vw;white-space:nowrap}
 body.wb-banner-page #wb-contact-content .contact-brand-tagline{font-size:2vw;margin-bottom:1.1vw;white-space:nowrap}
 body.wb-banner-page #wb-contact-content .contact-hero h1{font-size:2vw}
 body.wb-banner-page .wb-product-banner>p{display:flex;align-items:center;padding:0 10%;font-size:2.7vw;white-space:nowrap}
 body.wb-banner-page .wb-product-banner>p span{display:inline;margin:0;flex:none}
}
/* Touch category links reveal the desktop overlay only while pressed. */
@media(hover:none){
 #wb-capabilities-content .categories .wb-product-card .wb-card-caption,
 .wb-products-page .wb-catalog-grid .wb-product-card .wb-card-caption,
 #wb-contact-content .contact-categories>a h3{opacity:0;align-items:center;background:rgba(0,0,0,.38);transition:none;pointer-events:none}
 #wb-capabilities-content .categories .wb-product-card.is-touch-pressed .wb-card-caption,
 #wb-capabilities-content .categories .wb-product-card:focus-visible .wb-card-caption,
 .wb-products-page .wb-catalog-grid .wb-product-card.is-touch-pressed .wb-card-caption,
 .wb-products-page .wb-catalog-grid .wb-product-card:focus-visible .wb-card-caption,
 #wb-contact-content .contact-categories>a.is-touch-pressed h3,
 #wb-contact-content .contact-categories>a:focus-visible h3{opacity:1}
}
