/* ──────────────────────────────────────────────
   Sejatwa site chrome — custom header & footer
   ────────────────────────────────────────────── */

/* ░░ HEADER ░░ */
.sej-site-header {
  position: sticky; top: 0; z-index: 200;
  background: rgba(244, 238, 225, 0.92);
  backdrop-filter: saturate(140%) blur(10px);
  border-bottom: 1px solid var(--sej-line);
  transition: box-shadow .3s var(--sej-ease), background .3s var(--sej-ease);
}
.sej-site-header.is-stuck { background: rgba(244, 238, 225, 0.97); box-shadow: 0 6px 24px rgba(27,58,39,.08); }
.sej-site-header__inner {
  max-width: 1280px; margin: 0 auto; padding: 14px 24px;
  display: flex; align-items: center; gap: 22px;
}

/* Logo */
.sej-logo { display: inline-flex; align-items: center; gap: 12px; text-decoration: none; flex: none; }
.sej-logo__sprig { width: 30px; height: 36px; color: var(--sej-gold); flex: none; }
.sej-logo__mark { height: 46px; width: auto; display: block; flex: none; }
.is-stuck .sej-logo__mark { height: 40px; transition: height .3s var(--sej-ease); }
.sej-logo__text { display: flex; flex-direction: column; line-height: 1; }
.sej-logo__name { font-family: var(--sej-font-display); font-weight: 600; font-size: 1.5rem; color: var(--sej-green); letter-spacing: .01em; }
.sej-logo__tag { font-family: var(--sej-font-body); font-size: .6rem; letter-spacing: .22em; text-transform: uppercase; color: var(--sej-gold-600); margin-top: 3px; font-weight: 700; }

/* Primary nav */
.sej-primary-nav { margin-left: auto; }
.sej-menu { display: flex; align-items: center; gap: 4px; list-style: none; margin: 0; padding: 0; }
.sej-menu a {
  display: inline-block; padding: 10px 14px; text-decoration: none;
  font-family: var(--sej-font-body); font-weight: 600; font-size: .92rem; letter-spacing: .01em;
  color: var(--sej-green); border-radius: 8px; position: relative; transition: color .2s var(--sej-ease);
}
.sej-menu a::after {
  content: ''; position: absolute; left: 14px; right: 14px; bottom: 6px; height: 1.5px;
  background: var(--sej-gold); transform: scaleX(0); transform-origin: left; transition: transform .25s var(--sej-ease);
}
.sej-menu a:hover { color: var(--sej-gold-600); }
.sej-menu a:hover::after { transform: scaleX(1); }
.sej-menu .menu-item-has-children { position: relative; }
.sej-menu .menu-item-has-children > a { padding-right: 26px; }
.sej-menu .menu-item-has-children > a::after {
  content: ''; left: auto; right: 14px; bottom: auto; top: 50%; width: 7px; height: 7px;
  border: 1.5px solid var(--sej-gold-600); border-top: 0; border-left: 0;
  background: none; transform: translateY(-65%) rotate(45deg); transition: transform .2s var(--sej-ease);
}
.sej-menu .menu-item-has-children:hover > a::after { transform: translateY(-35%) rotate(45deg); }
.sej-menu .sub-menu {
  position: absolute; top: 100%; left: 0; min-width: 220px; list-style: none; margin: 0; padding: 8px;
  background: var(--sej-cream); border: 1px solid var(--sej-line); border-radius: 12px;
  box-shadow: var(--sej-shadow-lg); opacity: 0; visibility: hidden; transform: translateY(8px);
  transition: all .25s var(--sej-ease); z-index: 10;
}
.sej-menu .menu-item-has-children:hover > .sub-menu { opacity: 1; visibility: visible; transform: translateY(4px); }
.sej-menu .sub-menu a { display: block; padding: 9px 12px; font-size: .9rem; border-radius: 8px; }
.sej-menu .sub-menu a::after { display: none; }
.sej-menu .sub-menu a:hover { background: rgba(124,139,115,.14); }

/* Header actions */
.sej-header-actions { display: flex; align-items: center; gap: 4px; flex: none; }
.sej-iconbtn {
  display: inline-grid; place-items: center; width: 42px; height: 42px; border-radius: 50%;
  border: 0; background: transparent; color: var(--sej-green); cursor: pointer; text-decoration: none;
  transition: background .2s var(--sej-ease), color .2s var(--sej-ease); position: relative;
}
.sej-iconbtn svg { width: 22px; height: 22px; }
.sej-iconbtn:hover { background: rgba(124,139,115,.16); color: var(--sej-gold-600); }
.sej-cart__count {
  position: absolute; top: 4px; right: 4px; min-width: 18px; height: 18px; padding: 0 5px;
  background: var(--sej-gold); color: #fff; border-radius: 999px; font-size: .68rem; font-weight: 800;
  display: grid; place-items: center; line-height: 1;
}
.sej-cart__count[hidden] { display: none; }

/* Search drawer */
.sej-search-drawer { border-top: 1px solid var(--sej-line); background: var(--sej-cream); }
.sej-search-drawer[hidden] { display: none; }
.sej-search-drawer__inner { max-width: 720px; margin: 0 auto; padding: 18px 24px; }
.sej-search-drawer .dgwt-wcas-search-wrapp { max-width: 100%; }
.sej-search-drawer input[type="search"], .sej-search-drawer .search-field {
  width: 100%; padding: .8rem 1rem; border-radius: 10px; border: 1.5px solid var(--sej-line); font-family: var(--sej-font-body);
}

/* Burger (mobile only) */
.sej-burger { display: none; width: 42px; height: 42px; border: 0; background: transparent; cursor: pointer; flex-direction: column; gap: 5px; align-items: center; justify-content: center; }
.sej-burger span { display: block; width: 22px; height: 2px; background: var(--sej-green); border-radius: 2px; transition: transform .3s var(--sej-ease), opacity .2s; }
.sej-burger[aria-expanded="true"] span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.sej-burger[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.sej-burger[aria-expanded="true"] span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* Off-canvas + scrim */
.sej-offcanvas {
  position: fixed; top: 0; left: 0; bottom: 0; width: min(82vw, 340px); z-index: 400;
  background: var(--sej-parchment); border-right: 1px solid var(--sej-line);
  transform: translateX(-100%); transition: transform .35s var(--sej-ease);
  padding: 20px 22px; overflow-y: auto; display: flex; flex-direction: column;
}
.sej-offcanvas.is-open { transform: translateX(0); box-shadow: 0 0 60px rgba(27,58,39,.25); }
.sej-offcanvas__head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 14px; padding-bottom: 14px; border-bottom: 1px solid var(--sej-line); }
.sej-offcanvas__close { background: none; border: 0; font-size: 2rem; line-height: 1; color: var(--sej-green); cursor: pointer; }
.sej-offcanvas__menu { list-style: none; margin: 0; padding: 0; }
.sej-offcanvas__menu li { border-bottom: 1px solid var(--sej-line); }
.sej-offcanvas__menu a { display: block; padding: 13px 4px; text-decoration: none; color: var(--sej-green); font-family: var(--sej-font-display); font-size: 1.15rem; }
.sej-offcanvas__menu .sub-menu { list-style: none; margin: 0 0 8px; padding: 0 0 0 14px; }
.sej-offcanvas__menu .sub-menu li { border: 0; }
.sej-offcanvas__menu .sub-menu a { font-family: var(--sej-font-body); font-size: .95rem; padding: 8px 4px; color: var(--sej-green-700); }
.sej-offcanvas__actions { margin-top: auto; padding-top: 18px; display: flex; flex-direction: column; gap: 10px; }
.sej-offcanvas__actions a:not(.sej-btn) { color: var(--sej-green); font-weight: 600; text-decoration: none; padding: 6px 0; }
.sej-offcanvas__actions .sej-btn { margin-top: 8px; }
.sej-scrim { position: fixed; inset: 0; background: rgba(27,58,39,.4); z-index: 300; opacity: 0; transition: opacity .3s; }
.sej-scrim.is-open { opacity: 1; }
.sej-scrim[hidden] { display: none; }

/* ░░ FOOTER ░░ */
.sej-site-footer { background: var(--sej-green); color: var(--sej-parchment); }
.sej-footer__top {
  max-width: 1280px; margin: 0 auto; padding: clamp(48px,6vw,72px) 24px clamp(32px,4vw,48px);
  display: grid; grid-template-columns: 1.3fr 2fr; gap: clamp(32px,5vw,72px);
}
.sej-footer__brand .sej-logo__name { color: var(--sej-parchment); font-size: 1.8rem; }
.sej-footer__brand p { color: rgba(244,238,225,.7); line-height: 1.6; font-size: .94rem; margin: 12px 0 20px; max-width: 32em; }
.sej-footer__news { display: flex; max-width: 320px; border: 1.5px solid rgba(197,135,26,.5); border-radius: 999px; overflow: hidden; background: rgba(244,238,225,.06); }
.sej-footer__news input { flex: 1; background: transparent; border: 0; padding: .7rem 1rem; color: var(--sej-parchment); font-family: var(--sej-font-body); font-size: .9rem; }
.sej-footer__news input::placeholder { color: rgba(244,238,225,.5); }
.sej-footer__news input:focus { outline: none; }
.sej-footer__news button { background: var(--sej-gold); border: 0; color: #fff; width: 46px; font-size: 1.2rem; cursor: pointer; }
.sej-footer__news button:hover { background: var(--sej-gold-600); }
.sej-footer__social { display: flex; gap: 10px; margin-top: 18px; }
.sej-footer__social a { display: inline-grid; place-items: center; width: 38px; height: 38px; border-radius: 50%; border: 1px solid rgba(244,238,225,.25); color: var(--sej-parchment); transition: all .2s var(--sej-ease); }
.sej-footer__social a:hover { background: var(--sej-gold); border-color: var(--sej-gold); color: #fff; }
.sej-footer__social svg { width: 18px; height: 18px; }

.sej-footer__cols { display: grid; grid-template-columns: repeat(3,1fr); gap: 24px; }
.sej-footer__col h3 { font-family: var(--sej-font-display); font-size: 1.05rem; color: var(--sej-gold); margin: 0 0 14px; }
.sej-footer__col ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 9px; }
.sej-footer__col a { color: rgba(244,238,225,.78); text-decoration: none; font-size: .92rem; transition: color .2s var(--sej-ease); }
.sej-footer__col a:hover { color: var(--sej-gold); }

.sej-footer__trust {
  max-width: 1280px; margin: 0 auto; padding: 18px 24px;
  display: flex; flex-wrap: wrap; gap: 10px 24px; align-items: center;
  border-top: 1px solid rgba(244,238,225,.14); font-size: .85rem; color: rgba(244,238,225,.82); font-weight: 600;
}
.sej-footer__pay { margin-left: auto; color: var(--sej-gold); letter-spacing: .04em; }

.sej-footer__legal {
  max-width: 1280px; margin: 0 auto; padding: 16px 24px;
  display: flex; flex-wrap: wrap; gap: 10px 18px; align-items: center; justify-content: space-between;
  border-top: 1px solid rgba(244,238,225,.14); font-size: .85rem; color: rgba(244,238,225,.6);
}
.sej-footer__legal nav { display: flex; gap: 18px; }
.sej-footer__legal a { color: rgba(244,238,225,.6); text-decoration: none; }
.sej-footer__legal a:hover { color: var(--sej-gold); }
.sej-footer__disclaimer { max-width: 1280px; margin: 0 auto; padding: 0 24px 28px; font-size: .76rem; color: rgba(244,238,225,.45); line-height: 1.5; }

/* ░░ RESPONSIVE ░░ */
@media (max-width: 980px) {
  .sej-primary-nav, .sej-hide-mobile { display: none; }
  .sej-burger { display: flex; }
  .sej-logo { margin-right: auto; }
  .sej-header-actions { gap: 0; }
  .sej-footer__top { grid-template-columns: 1fr; gap: 36px; }
}
@media (max-width: 560px) {
  .sej-footer__cols { grid-template-columns: 1fr 1fr; }
  .sej-footer__legal { justify-content: flex-start; }
  .sej-footer__pay { margin-left: 0; flex-basis: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  .sej-offcanvas, .sej-menu .sub-menu, .sej-burger span { transition: none; }
}
