/* Consistent navigation and footer on every page. */
:host{font-family:"Avenir Next",Avenir,"Segoe UI",sans-serif;line-height:1.6}
.nav .brand{position:relative;z-index:2;min-width:44px;min-height:44px;cursor:pointer}
.nav .brand picture,.nav .brand img{pointer-events:none}
.menu{appearance:none;-webkit-appearance:none;color:#9e482b;background:#fff8f2;border:1px solid #dfc6b3;border-radius:10px;padding:10px 15px;font-weight:600;font-size:14px;cursor:pointer;align-items:center;justify-content:center;gap:10px;line-height:1.2}
.menu::after{content:"";width:16px;height:10px;border-top:2px solid currentColor;border-bottom:2px solid currentColor;display:block}
.menu[aria-expanded="true"]{background:#f4e5d9}
@media(max-width:900px){.menu{display:flex}.navlinks{background:white;border-bottom:1px solid #e8e0da}.navlinks a{padding:12px 0}.navlinks.open{display:flex;flex-direction:column;align-items:stretch}.nav{height:72px}.navlinks{top:72px}footer{background:#fff;padding:40px 0 24px}.footer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 20px;align-items:start}.footer-grid>*{min-width:0}.footer-brand{grid-column:1/-1}.footer-brand img{width:140px;height:auto;display:block}.footer-brand p{margin:12px 0 0;max-width:none;font-size:14px;line-height:1.6}.footer-col:last-child{grid-column:auto}.footer-col strong{font-size:14px;margin-bottom:10px}.footer-col a{font-size:14px;line-height:1.45;min-height:44px;display:flex;align-items:center;padding:8px 0;overflow-wrap:anywhere}.footer-bottom{margin-top:28px;padding-top:20px;display:flex;flex-direction:column;align-items:flex-start;gap:14px;font-size:13px}.languages{display:flex;flex-wrap:wrap;gap:4px 16px}.languages button{min-height:44px;padding:8px 0;font:inherit;color:#69625d}}
@media(max-width:600px){.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 24px}.footer-brand{grid-column:1/-1}.footer-col:last-child{grid-column:1/-1}.footer-col:last-child a{display:inline-flex;margin-right:22px}.wrap{width:calc(100% - 40px);padding-left:0;padding-right:0}.footer-brand img{width:128px}}

/* One symbol-only header at every screen size. */
.nav .brand img{width:46px!important;height:46px!important;object-fit:contain}.nav .brand{width:46px;flex:0 0 46px}header .wrap.nav{max-width:1240px;width:calc(100% - 48px);margin-inline:auto;padding-inline:0}header{background:#fff}
@media(max-width:600px){header .wrap.nav{width:calc(100% - 40px)}}

/* Compact aligned footer on desktop and phones. */
footer{padding:28px 0 16px!important;background:#fff}
footer .wrap{width:calc(100% - 48px);max-width:1240px;margin-inline:auto;padding:0}
.footer-grid{grid-template-columns:1.1fr 1fr 1fr 1fr!important;gap:24px!important;align-items:start}
.footer-brand{display:flex;align-items:center;gap:12px;grid-column:auto!important}
.footer-brand img{width:36px!important;height:36px!important;display:block}
.footer-brand p{font-size:12px!important;line-height:1.5;margin:0!important}
.footer-col:last-child{grid-column:auto!important}
.footer-col strong{font-size:12px!important;line-height:1.4;margin-bottom:8px!important}
.footer-col a,.footer-col:last-child a{display:block!important;font-size:12px!important;line-height:1.5;padding:5px 0!important;min-height:0!important;margin:0!important}
.footer-bottom{margin-top:20px!important;padding-top:12px!important;font-size:12px!important;gap:12px!important;align-items:center;flex-direction:row!important;flex-wrap:wrap}
.languages{gap:12px!important;flex-wrap:wrap}.languages button{font-size:12px!important;padding:6px 0!important;min-height:32px!important}
@media(max-width:900px){.footer-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:20px 12px!important}.footer-brand{grid-column:1/-1!important}.footer-brand p br{display:none}.footer-brand p{max-width:240px}.footer-bottom{justify-content:space-between}}
@media(max-width:600px){footer .wrap{width:calc(100% - 32px)}footer{padding-top:22px!important}.footer-col a{min-height:32px!important;display:flex!important;align-items:center}.footer-col:last-child a{min-height:32px!important;display:flex!important;align-items:center}.footer-bottom{gap:4px!important;margin-top:14px!important;padding-top:10px!important}.languages{width:100%;justify-content:space-between;gap:8px!important}.footer-brand{gap:10px}.footer-brand p{font-size:11px!important}.footer-col strong{font-size:11px!important}.footer-col a,.footer-col:last-child a{font-size:11px!important}}

.footer-brand{justify-content:flex-start!important;text-align:left!important;flex-direction:row!important}.footer-brand>a{width:36px!important;max-width:36px!important;flex:0 0 36px!important;margin:0!important}.footer-brand p{flex:1;text-align:left!important}.footer-brand p br{display:block!important}

/* Product-first navigation. */
.nav{gap:36px!important;height:88px}.navlinks{gap:30px!important}.navlinks a{font-size:14px!important;padding:12px 0;position:relative}.navlinks a[aria-current="page"]{color:#9e482b;font-weight:600}.navlinks a[aria-current="page"]::after{content:"";position:absolute;bottom:4px;left:0;right:0;height:2px;background:#d9874b}.nav>.button{margin-left:8px;padding:12px 20px}
@media(min-width:901px) and (max-width:1100px){.nav{gap:20px!important}.navlinks{gap:20px!important}.navlinks a{font-size:13px!important}}
@media(max-width:900px){.nav{height:72px;gap:20px!important}.navlinks{gap:4px!important;padding:16px 24px 24px}.navlinks a{font-size:16px!important;padding:14px 0}.navlinks a[aria-current="page"]::after{display:none}}

/* Align the shared header to each page's established content gutters. */
header .wrap.nav{width:calc(100% - 96px);max-width:1240px;padding-inline:0}
:host(.content-inset) header .wrap.nav{width:100%;max-width:1240px;padding-inline:clamp(22px,6vw,80px)}
.nav .brand picture{display:block;line-height:0}
@media(min-width:1101px){.nav .brand{width:180px;flex:0 0 180px}.nav .brand img{width:180px!important;height:46px!important}.nav{gap:24px!important}.navlinks{gap:24px!important}}
@media(max-width:900px){header .wrap.nav,:host(.content-inset) header .wrap.nav{width:calc(100% - 32px);padding-inline:0}.navlinks{left:0;right:0}}

/* One page measure: inner-page header/footer sit on the same 1240px column as the home page. */
:host(.content-inset) header .wrap.nav{width:min(1240px,calc(100% - 96px));max-width:1240px;padding-inline:0}
@media(max-width:900px){:host(.content-inset) header .wrap.nav{width:calc(100% - 32px)}}
