/* Content reflows instead of scaling a full-page screenshot. */
.header .inner{gap:24px}
.header .nav{gap:30px;white-space:nowrap}
a:focus-visible,button:focus-visible{outline:3px solid #a77a31;outline-offset:4px}
.mobile-toggle{cursor:pointer;min-width:44px;min-height:44px;flex-shrink:0}
.home-page .header .exact-user-logo{width:210px!important}
.home-page .header,.home-page .header .inner{background:#fbfaf8!important}
.home-hero{display:grid;grid-template-columns:44% 56%;background:linear-gradient(110deg,#e9e3db,#f8f5f0);min-height:480px}
.home-copy{padding:76px 40px 52px max(40px,calc((100vw - 1300px)/2));align-self:center}
.home-copy .eyebrow{font-size:12px;letter-spacing:6px;margin:0 0 24px}
.home-copy h1{font-size:52px;line-height:1.28;letter-spacing:-2px;margin:0 0 22px}
.home-intro{font-size:18px;line-height:1.7;margin:0 0 26px;word-break:keep-all}
.home-page .btn{font-size:16px;min-height:48px;padding:12px 28px;justify-content:center}
.home-art{min-width:0;display:flex}
.home-art img{width:100%;height:100%;object-fit:cover;object-position:center}
.home-values{padding:28px 0;border-bottom:1px solid #e4ded6}
.home-value-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.home-value-grid article{display:flex;gap:22px;align-items:center;padding:0 28px;border-right:1px solid #e4ded6}
.home-value-grid article:first-child{padding-left:0}
.home-value-grid article:last-child{border:0;padding-right:0}
.home-value-grid img{width:66px;height:66px;object-fit:contain;flex-shrink:0}
.home-value-grid h2{font-size:21px;margin:0 0 8px;word-break:keep-all}
.home-value-grid p{font-size:16px;color:#555;margin:0;line-height:1.6;word-break:keep-all}
.home-story{display:grid;grid-template-columns:45% 55%}
.home-story-copy{padding:36px 36px 36px max(40px,calc((100vw - 1420px)/2))}
.home-story-copy .section-kicker{margin:0 0 14px}
.home-story-copy h2{font-size:29px;line-height:1.35;margin:0 0 12px;letter-spacing:-1px}
.home-story-copy>p:not(.section-kicker){font-size:16px;line-height:1.65;color:#555;word-break:keep-all}
.home-story>img{width:100%;height:100%;object-fit:cover;object-position:center}
/* Switch navigation before links collide with the logo. */
@media(max-width:1100px){
 .header .nav{display:none}
 .header .tools{display:none}
 .header .mobile-toggle{display:block}
 .header .nav.is-open{display:flex;position:absolute;top:78px;left:0;right:0;background:#fbfaf8;flex-direction:column;gap:0;padding:12px 24px;border-bottom:1px solid #e4ded6;max-height:calc(100dvh - 78px);overflow-y:auto}
 .header .nav.is-open a{height:48px;flex-shrink:0}
 .header .nav.is-open a.active:after,.header .nav.is-open a:hover:after{bottom:3px}
 .home-copy{padding:56px 28px}
 .home-copy h1{font-size:42px}
 .home-value-grid article{gap:12px;padding:0 16px}
 .home-value-grid img{width:48px;height:48px}
 .home-value-grid h2{font-size:19px}
 .home-story-copy{padding:32px 28px}
 .footer .inner{grid-template-columns:1fr;text-align:center;padding:24px 0}
 .footer .brand,.copy{justify-self:center;text-align:center}
 .footer-links{justify-content:center;flex-wrap:wrap}
}
@media(max-width:760px){
 .container{width:calc(100% - 36px)}
 .home-hero,.home-story{grid-template-columns:minmax(0,1fr)}
 .home-copy{padding:44px 24px 36px}
 .home-copy h1{font-size:38px}
 .home-copy .eyebrow{letter-spacing:4px;font-size:11px}
 .home-intro{font-size:17px}
 .home-art img{height:auto;object-fit:contain}
 .home-values{padding:0}
 .home-value-grid{grid-template-columns:1fr}
 .home-value-grid article,.home-value-grid article:first-child,.home-value-grid article:last-child{padding:24px 6px;border-right:0;border-bottom:1px solid #e4ded6;gap:20px}
 .home-value-grid article:last-child{border-bottom:0}
 .home-value-grid img{width:58px;height:58px}
 .home-value-grid h2{font-size:21px}
 .home-story-copy{padding:36px 24px}
 .home-story-copy h2{font-size:27px}
 .home-story>img{height:auto}
 .section-head{display:block}
 .section-head p{margin-top:16px}
 .brand-board>div{padding:28px;border-right:0;border-bottom:1px solid #e4ded6;min-width:0}
 .swatches{gap:14px;flex-wrap:wrap}
 .about-block{padding:30px 24px}
 .card{padding:26px}
 .page-title{padding:44px 24px}
 .page-title h1{font-size:34px}
 .page-title .eyebrow{letter-spacing:4px}
 .contact-grid,.news-layout,.form-grid{min-width:0}
 input,select,textarea{width:100%;min-width:0;font-size:16px}
 .news-item{grid-template-columns:1fr;gap:8px}
 .header .inner{gap:12px}
 html body .header .exact-user-logo-brand{min-width:0!important;flex:0 1 210px}
 html body .header .exact-user-logo{width:190px!important;max-width:100%}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Fill the viewport without clipping content or scaling the whole page. */
html{min-height:100%}
body{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}
body>.header,body>.footer{flex-shrink:0}
body>main{flex:1 0 auto;min-width:0}
.home-page>main{display:flex;flex-direction:column}
.home-page .home-hero{flex:1 0 auto}
.home-page .home-values,.home-page .home-story{flex-shrink:0}
.home-art{align-items:center;background:#f3eee7}
.home-art img{height:auto;object-fit:contain}
.home-story{background:#eee6da;align-items:center}
.home-story-copy{background:#fff;align-self:stretch}
.home-story>img{height:auto;object-fit:contain}
.home-copy,.home-art,.home-story-copy,.home-value-grid article,.header .inner{min-width:0}
@media(max-width:760px){
 .home-page .home-hero{flex-grow:0}
 .home-page .home-story{flex-grow:1;align-content:start;background:#fff}
}

/* Site search stays accessible even when the navigation is collapsed. */
.header .nav{margin-left:auto}
.site-search-link{display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;border-radius:50%;color:#222}
.site-search-link:hover{background:#eee8df}
.site-search-page{padding:64px 0 80px}
.search-container{max-width:900px}
.site-search-page h1{font-size:36px;margin:0 0 16px;word-break:keep-all}
.search-intro{color:#666;line-height:1.6}
.site-search-form{margin:32px 0}
.site-search-form label{display:block;font-weight:600;margin-bottom:10px}
.search-input-row{display:flex;gap:12px}
.search-input-row input{flex:1;min-width:0;border-radius:0;font-size:17px}
.search-input-row button{flex-shrink:0;cursor:pointer;font:inherit}
.search-status{margin:28px 0 18px;line-height:1.6;color:#555;overflow-wrap:anywhere}
.search-result{padding:25px 0;border-top:1px solid #e4ded6}
.search-result h2{font-size:23px;margin:0 0 12px}
.search-result h2 a{color:#946623;text-decoration:underline;text-underline-offset:5px}
.search-result p{margin:0;line-height:1.8;color:#555;overflow-wrap:anywhere}
.search-suggestions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.search-suggestions a{border:1px solid #d8cbb7;padding:12px 18px;border-radius:24px}
@media(max-width:1100px){.site-search-link{margin-left:auto}}
@media(max-width:760px){
 .site-search-page{padding:38px 0 50px}
 .site-search-page h1{font-size:29px}
 .search-input-row{gap:8px}
 .search-input-row button{padding:12px 20px}
 .header .inner{gap:8px}
}

.contact-info .info-row{overflow-wrap:anywhere}
.contact-info .info-row a{text-decoration:underline;text-underline-offset:3px}
.news-admin-link{display:inline-block;margin-top:18px;color:#946623;text-decoration:underline;text-underline-offset:4px}
.notice-list{display:grid;gap:18px}
.notice-card{display:block;border:1px solid #e4ded6;padding:28px;transition:background .15s}
.notice-card:hover{background:#faf6ef}
.notice-card h3{font-size:23px;line-height:1.5;margin:12px 0;overflow-wrap:anywhere}
.notice-card p{font-size:16px;line-height:1.75;color:#555}
.notice-more{display:block;margin-top:18px;color:#946623}
.news-meta{font-size:14px;color:#7b6543;line-height:1.7}
.news-detail{max-width:980px;padding-top:48px;padding-bottom:64px}
.news-detail article{margin:32px 0}
.news-detail h1{font-size:36px;line-height:1.45;overflow-wrap:anywhere;margin:16px 0 30px}
.news-body{border-top:1px solid #e4ded6;padding-top:22px;font-size:18px;line-height:1.9;overflow-wrap:anywhere}
.admin-start{padding-top:60px;padding-bottom:60px;max-width:900px}
.admin-start p{line-height:1.8}
.admin-start a{text-decoration:underline}
@media(max-width:760px){.notice-card{padding:22px}.news-detail h1{font-size:28px}.news-body{font-size:17px}}
.language-switch{display:inline-flex;align-items:center;gap:9px;font-size:13px;white-space:nowrap}
.language-switch a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:25px}
.language-switch a[aria-current="true"]{color:#946623;font-weight:700;text-decoration:underline;text-underline-offset:6px}
html[lang="en"] .home-copy h1{font-size:46px;letter-spacing:-1px}
html[lang="en"] .home-value-grid article{gap:14px}
html[lang="en"] .home-value-grid h2{font-size:19px}
html[lang="en"] .home-value-grid p{font-size:16px}
html[lang="en"] .eyebrow{letter-spacing:4px}
@media(max-width:1100px){.header .tools{display:flex}.header .tools .tool-sep{display:none}.header .tools{gap:0}}
@media(max-width:760px){
 html body .header .exact-user-logo-brand{flex:0 1 150px}
 html body .header .exact-user-logo{width:150px!important}
 .header .inner{gap:5px}
 .language-switch{gap:4px;font-size:12px}
 .site-search-link{flex-basis:38px;width:38px}
 html[lang="en"] .home-copy h1{font-size:36px}
}
@media(max-width:380px){html body .header .exact-user-logo-brand{flex-basis:112px}.language-switch{gap:2px}}


/* KEEP TOP NAV VISIBLE ON SMALL SCREENS */
@media(max-width:1100px){
  .header{
    height:auto !important;
  }
  .header .inner{
    min-height:78px !important;
    gap:14px !important;
  }
  .header .nav{
    display:flex !important;
    position:static !important;
    flex-direction:row !important;
    gap:20px !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    max-height:none !important;
    overflow:visible !important;
    white-space:nowrap !important;
    font-size:14px !important;
    margin-left:auto !important;
  }
  .header .nav a{
    height:78px !important;
    flex-shrink:0 !important;
  }
  .header .mobile-toggle{
    display:none !important;
  }
  html body .header .exact-user-logo-brand{
    flex:0 1 170px !important;
    min-width:130px !important;
  }
  html body .header .exact-user-logo{
    width:165px !important;
    max-width:100% !important;
  }
  .header .tools{
    display:flex !important;
    flex-shrink:0 !important;
  }
}

@media(max-width:760px){
  .header{
    height:auto !important;
  }
  .header .inner{
    width:100% !important;
    max-width:none !important;
    padding:0 16px !important;
    display:grid !important;
    grid-template-columns:auto 1fr auto auto !important;
    grid-template-areas:
      "logo spacer search tools"
      "nav nav nav nav" !important;
    align-items:center !important;
    gap:0 8px !important;
  }
  .header .exact-user-logo-brand{
    grid-area:logo !important;
    min-width:0 !important;
  }
  html body .header .exact-user-logo{
    width:145px !important;
    max-width:145px !important;
  }
  .header .site-search-link{
    grid-area:search !important;
  }
  .header .tools{
    grid-area:tools !important;
  }
  .header .nav{
    grid-area:nav !important;
    display:flex !important;
    width:100% !important;
    justify-content:flex-start !important;
    gap:24px !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    scrollbar-width:none !important;
    -webkit-overflow-scrolling:touch !important;
    border-top:1px solid #eee8df !important;
    font-size:14px !important;
  }
  .header .nav::-webkit-scrollbar{
    display:none !important;
  }
  .header .nav a{
    height:54px !important;
    flex:0 0 auto !important;
  }
  .header .nav a.active:after,
  .header .nav a:hover:after{
    bottom:7px !important;
  }
  .header .mobile-toggle{
    display:none !important;
  }
}

@media(max-width:430px){
  .header .inner{
    padding:0 12px !important;
  }
  html body .header .exact-user-logo{
    width:125px !important;
    max-width:125px !important;
  }
  .header .nav{
    gap:19px !important;
    font-size:13px !important;
  }
  .language-switch{
    font-size:11px !important;
  }
}
