/* Parent-brand alignment: Rutherford Farmers Co-op */
:root,[data-theme="light"]{
  --bg:#fff;--surface:#f7f7f7;--ink:#333;--muted:#535353;--line:rgb(51 51 51 / .17);
  --green:#1a5632;--coop-red:#e51937;--coop-cream:#f6edc9;--coop-charcoal:#1b1d1f;--accent:#f6edc9;--focus:#1a5632;
  --font-heading:'Raleway','Satoshi',sans-serif;
}
[data-theme="dark"]{--bg:#191d1a;--surface:#242925;--ink:#f4f4ee;--muted:#c2c9c2;--line:rgb(255 255 255 / .2);--focus:#e7d68f}
.announcement{background:var(--coop-cream);color:#333;padding-block:0}
.announcement .container{align-items:center;min-height:44px}
.announcement .container>span{font-size:var(--text-xs);letter-spacing:.09em;font-weight:600}
.utility-links{display:flex;align-items:center;gap:var(--space-8);margin-left:auto}
.utility-links a{display:flex;align-items:center;min-height:44px;font-size:var(--text-xs);font-weight:600}
.utility-links a:hover{color:var(--green);text-decoration:underline}
.utility-links .header-phone{font-weight:700;color:var(--green);white-space:nowrap}
.header{background:#fff;color:#333}
.parent-brand img{width:220px;height:103px;object-fit:contain;mix-blend-mode:normal!important;background:#fff;border-radius:0!important}
.header-inner{min-height:118px}
nav{font-family:var(--font-heading);text-transform:uppercase;font-weight:600;font-size:var(--text-xs)}
nav a:hover{color:var(--green)}
nav .nav-cta,[data-theme="dark"] nav .nav-cta{background:var(--coop-red);color:#fff;border-radius:0}
nav .nav-cta:hover{background:#bc102a;color:#fff}
.header .icon-button{border-color:#ddd;color:#333}.header .icon-button:focus-visible{outline-color:var(--green)}
.department-title{background:var(--surface);border-bottom:1px solid var(--line);padding-block:var(--space-5)}
.department-title .container{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6)}
.department-title a{font-family:var(--font-heading);font-size:var(--text-lg);font-weight:700;letter-spacing:.025em;min-height:44px;display:flex;align-items:center}
.department-title span{font-size:var(--text-xs);letter-spacing:.08em;color:var(--muted)}
.hero{min-height:640px;border-bottom:7px solid var(--coop-red)}
.hero-content{padding-top:var(--space-12);padding-bottom:var(--space-24)}
.hero .eyebrow{color:var(--coop-cream)}
.hero h1{font-size:clamp(3.8rem,2.4rem + 3.8vw,6rem)}
.hero h1 span{color:var(--coop-cream)}
.button-bright{background:var(--coop-red);color:#fff;border-radius:0}
.button-bright:hover{background:#bc102a}
.hero-brand-seal{position:absolute;right:max(5vw,calc((100vw - 1280px)/2));top:50%;transform:translateY(-50%);width:clamp(320px,30vw,420px);text-align:center}
.hero-brand-seal img{width:100%;height:auto;object-fit:contain;border-radius:0;filter:drop-shadow(0 8px 20px rgb(6 25 12 / .45))}
.hero-brand-seal span{display:block;font-size:var(--text-xs);letter-spacing:.1em;font-weight:700;line-height:1.7;margin-top:var(--space-4);text-shadow:0 1px 4px #123}
h2{font-family:var(--font-heading);font-size:clamp(1.5rem,1.2rem + 1vw,2rem);font-weight:800;line-height:1.3;letter-spacing:.005em;text-transform:uppercase}
.area h2{font-size:clamp(1.5rem,1.2rem + 1vw,2rem)}
h3{font-family:var(--font-heading);font-weight:700}
.eyebrow{font-family:var(--font-heading);color:var(--green)}
[data-theme="dark"] .eyebrow{color:var(--coop-cream)}
.area .eyebrow{color:var(--coop-cream)}
.roots-copy h2 br{display:block}
.logo-signature .signature-tagline{font-family:var(--font-heading);font-size:var(--text-lg);font-weight:700;line-height:1.35;color:var(--ink)}
.signature-tagline strong{font-weight:700}
.services{background:var(--bg)}
.service-number{color:var(--coop-red)}
[data-theme="dark"] .service-number{color:#ff91a0}
.area{background:var(--green)}
.mission{background:var(--coop-cream);color:var(--green);padding-block:var(--space-16)}
.mission-grid{display:grid;grid-template-columns:1fr 1.65fr;gap:var(--space-16);align-items:start}
.mission .eyebrow{color:var(--green);margin-bottom:var(--space-3)}
.mission-statement{font-size:var(--text-lg);font-weight:500;line-height:1.7;max-width:52ch}
[data-theme="dark"] .mission{background:#30372b;color:var(--coop-cream)}
[data-theme="dark"] .mission .eyebrow{color:var(--coop-cream)}
.contact{background:var(--surface)}
.contact-note{background:var(--bg)}
.contact-button{background:var(--green);color:#fff;width:100%;gap:var(--space-4);margin-top:var(--space-6);font-size:var(--text-sm);line-height:1.5;border-radius:0}
.contact-button:hover{background:#123d23}
.contact-email{display:flex;flex-direction:column;gap:var(--space-1);border:1px solid var(--line);padding:var(--space-4) var(--space-5);margin-top:var(--space-4);min-height:44px;transition:background .2s}
.contact-email:hover{background:var(--surface)}
.contact-email-label{font-size:var(--text-xs);font-weight:700;letter-spacing:.08em;color:var(--muted)}
.contact-email-address{font-size:var(--text-sm);font-weight:500;overflow-wrap:anywhere}
.store-address{border-top:1px solid var(--line);margin-top:var(--space-8);padding-top:var(--space-6)}
.store-address address{font-style:normal;font-size:var(--text-base);line-height:1.7;color:var(--muted);margin-top:var(--space-4)}
.store-hours{margin-top:var(--space-5);max-width:360px}
.store-hours h4{font-size:var(--text-sm);font-weight:700;margin:0 0 var(--space-2)}
.store-hours dl{margin:0;font-size:var(--text-sm);color:var(--muted)}
.store-hours dl>div{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-2) var(--space-4);padding-block:var(--space-1)}
.store-hours dt,.store-hours dd{margin:0}
.store-hours dd{white-space:nowrap;font-variant-numeric:tabular-nums}
.directions-link{display:inline-flex;align-items:center;gap:var(--space-6);min-height:44px;font-size:var(--text-sm);font-weight:700;color:var(--green);margin-top:var(--space-3);text-decoration:underline;text-underline-offset:5px}
.directions-link:hover{text-decoration-thickness:2px}
[data-theme="dark"] .directions-link{color:var(--coop-cream)}
footer{background:var(--coop-charcoal);color:#fff;border-top:0}
.footer-top p,.footer-bottom{color:#cbd0cd}
.footer-bottom{border-color:rgb(255 255 255 / .16);align-items:center}
.footer-bottom a{display:flex;align-items:center;min-height:44px}
.footer-parent a{min-height:44px;display:flex;align-items:center;font-size:var(--text-sm)}
.footer-parent a:hover,.footer-bottom a:hover{color:var(--coop-cream);text-decoration:underline}
@media(max-width:1050px){.parent-brand img{width:190px;height:89px}.header-inner{min-height:104px}.hero-brand-seal{width:clamp(220px,28vw,300px);right:var(--gutter)}.hero h1{font-size:clamp(3.5rem,5.3vw,4.7rem)}nav{gap:var(--space-5)}}
@media(max-width:900px){
  .mission-grid{grid-template-columns:1fr;gap:var(--space-6)}
  .mission{padding-block:var(--space-12)}
  .announcement .container{justify-content:space-between}
  .announcement .container>span{display:none}
  .utility-links{width:100%;justify-content:space-between;gap:var(--space-4)}
  .utility-links .utility-locations{display:none}
  .header-inner{min-height:90px}.parent-brand img{width:165px;height:77px}
  .header nav{background:#fff;color:#333}
  .header .menu-toggle{color:#333}
  .department-title{padding-block:var(--space-2)}
  .department-title .container{display:block}.department-title a{font-size:var(--text-sm);min-height:40px}.department-title span{display:none}
  .hero{min-height:0}.hero-content{order:2;padding-top:var(--space-8)}
  .hero .eyebrow{font-size:var(--text-xs);letter-spacing:.07em;max-width:310px}
  .hero .short-line{display:none}
  .hero-brand-seal{display:block;position:relative;order:1;top:auto;right:auto;bottom:auto;transform:none;width:clamp(220px,64vw,300px);margin:var(--space-8) auto 0}
  .hero-brand-seal span{display:none}
  .hero h1{font-size:clamp(3.2rem,8vw,4.5rem)}
  .hero-bottom span:first-child{font-size:var(--text-xs)}
  .footer-parent{order:3;width:100%}
  .footer-bottom{align-items:flex-start}
  .footer-bottom a{min-height:44px}
}
.department-title a{white-space:nowrap;flex-shrink:0}
@media(min-width:901px) and (max-width:1250px){
  .header nav{gap:var(--space-3)}
  .header nav a{white-space:nowrap}
  .header .nav-cta{gap:var(--space-3);padding-inline:var(--space-3)}
}
@media(min-width:901px) and (max-width:1000px){
  .header .parent-brand img{width:160px;height:75px}
  .header-inner{gap:var(--space-3)}
  .header nav{gap:var(--space-2)}
  .header .nav-cta{gap:var(--space-2);padding-inline:var(--space-2)}
}
