/* ===== Patagonia demo header/footer CSS ===== */
.is-nb *, .is-nb *::before, .is-nb *::after { box-sizing: border-box; }


/* Fonts */
@font-face {
    font-family: 'Ridgeway Sans';
    src: url('https://s3.amazonaws.com/media.locally.net/sis/patagonia/fonts/RidgewaySans-Regular.woff2') format('woff2'),
        url('https://s3.amazonaws.com/media.locally.net/sis/patagonia/fonts/RidgewaySans-Regular.woff') format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}


* {
  font-family: 'Ridgeway Sans';
}



/* Header */
.generic-header {
  display: none;
}

#nb-header { width: 100%; }
.nb-navbar {
box-shadow: 0 1px 1px rgba(0,0,0,.2);
background: #fff;
display: flex;
align-items: center;
justify-content: space-between;
padding: 10px 16px;
}
.nb-logo { width: 160px; height: 60px; display: flex; align-items: center; }
.nb-logo a { display: flex; align-items: center; justify-content: flex-start; width: 100%; height: 100%; }
.nb-logo img { max-height: 50px; }


.shop-patagonia-button {
border-radius: 30px;
background: #000;
color: #fff;
margin: 10px 0;
font-size: 14px;
padding: 10px 24px;
border: none;
outline: none;
display: flex;
align-items: center;
justify-content: center;
}
.shop-patagonia-button a { color: #fff; text-decoration: none; display: inline-block; text-align: center; width: 100%; }

.shop-patagonia-button a:hover {
  color: #fff !important;
}


/* Placeholder main area */
main.demo-placeholder { min-height:420px; display:flex; align-items:center; justify-content:center; padding:48px 20px; background:#f6f6f6; border-top:1px solid #eee; border-bottom:1px solid #eee; }
main.demo-placeholder p { margin:0; opacity:.8; }


/* Footer */
#nb-footer { background:#232323; color:#fff; letter-spacing:.5px; display:flex; flex-wrap:wrap; justify-content:space-between; gap:12px; padding:20px 24px; }
.nb-legal { font-size:14px; }
.nb-legal a { color:#fff; margin:0 10px 0 0; text-decoration:none; }
.nb-legal a:hover { text-decoration: none; color: #fff !important; }
.right-footer { display:flex; flex-wrap:wrap; gap:16px; font-size:14px; }
.right-footer p { margin:0; color:#fff; }



/* Desktop padding */
@media (min-width:960px){
.nb-navbar { padding: 10px 50px; }
#nb-footer { padding: 24px 50px; }
}


/* Mobile footer layout */
@media (max-width: 767px){
#nb-footer { flex-direction: column; align-items: flex-start; gap: 24px; }
.nb-legal, .right-footer { width: 100%; }
.nb-legal a { display:block; margin: 0 0 16px 0; font-weight: 600; }
.right-footer { gap: 8px; }
.right-footer p { margin: 0; }
}
