.sej-site-header { background: rgba(255,255,255,.97); border-bottom: 1px solid var(--sej-line); position: sticky; top: 0; z-index: 100; }
.admin-bar .sej-site-header { top: 32px; }
.sej-header-inner { align-items: center; display: flex; justify-content: space-between; min-height: 82px; }
.sej-brand { align-items: center; color: var(--sej-ink); display: inline-flex; gap: 12px; text-decoration: none; }
.sej-brand img { height: 58px; object-fit: contain; width: 58px; }
.sej-brand strong, .sej-brand small { display: block; }
.sej-brand strong { font-size: 15px; letter-spacing: .08em; }
.sej-brand small { color: var(--sej-muted); font-size: 12px; }
.sej-site-nav { align-items: center; display: flex; gap: 22px; }
.sej-site-nav a { color: var(--sej-ink); font-size: 13px; font-weight: 750; text-decoration: none; }
.sej-site-nav a:hover { color: var(--sej-green); }
.sej-site-nav .sej-nav-cta { background: var(--sej-green); border-radius: 7px; color: #fff; padding: 10px 16px; }
.sej-menu-button { background: transparent; border: 0; display: none; height: 50px; padding: 7px; width: 54px; }
.sej-menu-button span { background: var(--sej-ink); display: block; height: 2px; margin: 5px auto; width: 25px; }
.sej-menu-button em { display: block; font-size: 9px; font-style: normal; }

.sej-hero { background: linear-gradient(120deg, #fff 0 62%, #e9f5ec 62%); border-bottom: 1px solid var(--sej-line); overflow: hidden; }
.sej-hero-inner { align-items: center; display: grid; gap: 58px; grid-template-columns: minmax(0, 1.35fr) minmax(290px, .65fr); min-height: 520px; padding-bottom: 75px; padding-top: 75px; position: relative; }
.sej-hero-inner::after { border: 62px solid rgba(243,146,0,.1); border-radius: 50%; content: ""; height: 260px; position: absolute; right: -115px; top: -125px; width: 260px; }
.sej-eyebrow, .sej-section-heading > p, .sej-route-card > p { color: var(--sej-green); font-size: 12px; font-weight: 850; letter-spacing: .15em; margin: 0 0 9px; text-transform: uppercase; }
.sej-hero h1 { font-size: clamp(30px, 3.8vw, 48px); letter-spacing: -.035em; line-height: 1.35; margin: 0 0 22px; white-space: nowrap; }
.sej-lead { color: var(--sej-ink); font-size: 18px; font-weight: 650; margin: 0 0 10px; }
@media (min-width: 721px) { .sej-lead { white-space: nowrap; } }
.sej-note { color: var(--sej-muted); font-size: 14px; margin: 0; max-width: 720px; }
.sej-actions { display: flex; flex-wrap: wrap; gap: 15px; margin-top: 28px; }
.sej-button { align-items: center; background: var(--sej-green); border-radius: 8px; color: #fff !important; display: inline-flex; font-size: 15px; font-weight: 800; justify-content: center; min-height: 50px; padding: 11px 24px; text-decoration: none; transition: background .16s ease, transform .16s ease; }
.sej-button:hover { background: var(--sej-green-dark); transform: translateY(-1px); }
.sej-button--orange { background: var(--sej-green); }
.sej-button--orange:hover { background: var(--sej-green-dark); }
.sej-hero-guide { display: grid; gap: 12px; position: relative; z-index: 1; }
.sej-hero-guide span { align-items: center; background: #fff; border: 1px solid var(--sej-line); border-radius: 14px; box-shadow: var(--sej-shadow); color: var(--sej-orange); display: flex; font-size: 26px; font-weight: 900; justify-content: space-between; min-height: 92px; padding: 20px 24px; }
.sej-hero-guide small { color: var(--sej-ink); font-size: 14px; letter-spacing: .04em; }

.sej-section { padding: 82px 0; }
.sej-section-heading { margin-bottom: 34px; }
.sej-section-heading h2, .sej-split h2, .sej-support-box h2 { font-size: clamp(27px, 4vw, 40px); line-height: 1.35; margin: 0 0 10px; }
.sej-section-heading > span { color: var(--sej-muted); }
.sej-routes { background: #fff; }
.sej-route-grid { display: grid; gap: 18px; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.sej-route-card { background: #fff; border: 2px solid var(--sej-line); border-radius: 14px; box-shadow: 0 7px 22px rgba(30,52,42,.05); display: flex; flex-direction: column; padding: 24px; transition: border .16s ease, transform .16s ease; }
.sej-route-card:hover { border-color: var(--sej-orange); transform: translateY(-3px); }
.sej-route-card--primary { border-color: var(--sej-green); }
.sej-route-card h3 { font-size: 18px; letter-spacing: -.02em; line-height: 1.4; margin: 0; white-space: nowrap; }
.sej-route-card > p:not(:first-child) { color: var(--sej-muted); }
.sej-route-card small { background: var(--sej-bg); border-radius: 6px; color: var(--sej-muted); display: block; margin: auto 0 22px; padding: 10px 12px; }
.sej-route-card .sej-button { font-size: 13px; padding-left: 10px; padding-right: 10px; white-space: nowrap; width: 100%; }
.sej-route-icon { align-items: center; background: #e8f4eb; border-radius: 50%; color: var(--sej-green); display: flex; font-size: 23px; font-weight: 900; height: 52px; justify-content: center; margin: 20px 0 4px; width: 52px; }

.sej-manual-guide { background: var(--sej-bg); }
.sej-mini-grid { display: grid; gap: 16px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.sej-mini-grid a { background: #fff; border: 1px solid var(--sej-line); border-radius: 11px; color: var(--sej-ink); display: flex; flex-direction: column; min-height: 215px; padding: 25px; text-decoration: none; transition: box-shadow .16s ease, transform .16s ease; }
.sej-mini-grid a:hover { box-shadow: var(--sej-shadow); transform: translateY(-2px); }
.sej-mini-grid b { color: var(--sej-orange); font-size: 13px; }
.sej-mini-grid strong { font-size: 18px; margin: 10px 0; }
.sej-mini-grid span { color: var(--sej-muted); font-size: 14px; }
.sej-center { margin-top: 30px; text-align: center; }

.sej-split-section { background: #fff; }
.sej-split { align-items: center; display: grid; gap: 70px; grid-template-columns: 1.25fr .75fr; }
.sej-split > div:first-child > p:not(.sej-eyebrow):not(.sej-alert), .sej-support-box > div > p:not(.sej-eyebrow):not(.sej-support-note) { color: var(--sej-muted); font-size: 16px; }
.sej-product-list { display: flex; flex-wrap: wrap; gap: 10px; list-style: none; margin: 24px 0; padding: 0; }
.sej-product-list li { background: #eef7f0; border-radius: 100px; color: var(--sej-green-dark); font-weight: 800; padding: 8px 16px; }
.sej-alert { border-left: 4px solid var(--sej-orange); font-size: 14px; margin: 22px 0; padding: 8px 14px; }
.sej-number-art { align-items: center; aspect-ratio: 1; background: linear-gradient(145deg, #e7f5ea, #fff); border: 1px solid #d4e8d8; border-radius: 50%; display: flex; flex-direction: column; justify-content: center; }
.sej-number-art span { color: var(--sej-orange); font-size: clamp(60px, 10vw, 112px); font-weight: 900; line-height: 1; }
.sej-number-art strong { font-size: 13px; letter-spacing: .15em; }

.sej-support-section { background: linear-gradient(110deg, #e7f4ea, #f7fbf8); }
.sej-support-box { align-items: center; display: grid; gap: 50px; grid-template-columns: 1fr auto; }
.sej-support-note { background: #fff; border: 1px solid #cfe4d4; border-radius: 8px; font-size: 14px; margin: 22px 0 0; padding: 15px 18px; }
.sej-check-section { background: #fff; }
.sej-check-list { display: grid; gap: 14px; grid-template-columns: repeat(2, minmax(0, 1fr)); list-style: none; margin: 0; padding: 0; }
.sej-check-list li { background: var(--sej-bg); border-radius: 9px; padding: 18px 20px 18px 52px; position: relative; }
.sej-check-list li::before { align-items: center; background: var(--sej-green); border-radius: 50%; color: #fff; content: "✓"; display: flex; font-size: 12px; font-weight: 900; height: 24px; justify-content: center; left: 18px; position: absolute; top: 20px; width: 24px; }

.sej-site-footer { background: #25312b; color: #fff; padding: 52px 0 24px; }
.sej-footer-grid { display: flex; gap: 35px; justify-content: space-between; }
.sej-footer-grid strong { font-size: 18px; }
.sej-footer-grid p { color: #bcc7c1; }
.sej-footer-grid nav { display: flex; flex-wrap: wrap; gap: 20px; }
.sej-footer-grid a { color: #fff; }
.sej-footer-bottom { border-top: 1px solid rgba(255,255,255,.15); color: #aebbb4; display: flex; font-size: 12px; justify-content: space-between; margin-top: 30px; padding-top: 20px; }
.sej-page { background: #fff; min-height: 70vh; padding-bottom: 90px; padding-top: 70px; }

@media (min-width: 1001px) {
  .sej-support-note, .sej-check-list li { white-space: nowrap; }
  .sej-check-list li { font-size: 14px; }
}
@media (min-width: 721px) {
  .sej-footer-grid strong { white-space: nowrap; }
}

@media (max-width: 1000px) {
  .admin-bar .sej-site-header { top: 46px; }
  .sej-menu-button { display: block; }
  .sej-site-nav { background: #fff; border-bottom: 1px solid var(--sej-line); box-shadow: var(--sej-shadow); display: none; flex-direction: column; gap: 0; left: 0; padding: 14px 28px 24px; position: absolute; right: 0; top: 100%; }
  .sej-site-nav.is-open { display: flex; }
  .sej-site-nav a { border-bottom: 1px solid var(--sej-line); padding: 13px 4px; width: 100%; }
  .sej-site-nav .sej-nav-cta { margin-top: 12px; text-align: center; }
  .sej-route-grid { grid-template-columns: 1fr; }
  .sej-route-card { min-height: 0; }
  .sej-mini-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 720px) {
  .sej-shell { padding-left: 18px; padding-right: 18px; }
  .sej-header-inner { min-height: 70px; }
  .sej-brand img { height: 48px; width: 48px; }
  .sej-brand strong { font-size: 13px; }
  .sej-brand small { font-size: 10px; }
  .sej-hero { background: linear-gradient(165deg, #fff 0 74%, #e9f5ec 74%); }
  .sej-hero-inner { gap: 38px; grid-template-columns: 1fr; min-height: auto; padding-bottom: 52px; padding-top: 52px; }
  .sej-hero h1 { font-size: clamp(19px, 5.2vw, 30px); }
  .sej-actions { align-items: stretch; flex-direction: column; }
  .sej-actions .sej-button { width: 100%; }
  .sej-hero-guide { grid-template-columns: repeat(2, 1fr); }
  .sej-hero-guide span { align-items: center; flex-direction: column; font-size: 21px; min-height: 84px; padding: 12px 5px; }
  .sej-hero-guide small { font-size: 10px; text-align: center; }
  .sej-section { padding: 58px 0; }
  .sej-mini-grid, .sej-check-list { grid-template-columns: 1fr; }
  .sej-mini-grid a { min-height: 0; }
  .sej-split { gap: 40px; grid-template-columns: 1fr; }
  .sej-number-art { margin: auto; max-width: 280px; width: 80%; }
  .sej-support-box { align-items: stretch; grid-template-columns: 1fr; }
  .sej-support-box .sej-button { width: 100%; }
  .sej-footer-grid { align-items: stretch; flex-direction: column; }
  .sej-footer-grid nav { flex-direction: column; gap: 12px; }
}

@media (max-width: 420px) {
  .sej-brand small { display: none; }
}
