
    :root {
      --ink: #0a0b0d;
      --paper: #f7f7f4;
      --white: #ffffff;
      --line: rgba(10, 11, 13, .14);
      --muted: #5b6068;
      --orange: #ff5a00;
      --orange-dark: #c94100;
      --charcoal: #171a1f;
      --steel: #dce1e4;
      --shadow: 0 18px 60px rgba(10, 11, 13, .14);
      --radius: 8px;
      --hero-image: url("assets/hero-store-experience.png");
      --hero-mobile-image: url("assets/hero-store-experience.png");
    }

    * {
      box-sizing: border-box;
    }

    html {
      scroll-behavior: smooth;
    }

    body {
      margin: 0;
      color: var(--ink);
      background: var(--paper);
      font-family: "Hiragino Kaku Gothic ProN", "Yu Gothic", "Meiryo", system-ui, sans-serif;
      letter-spacing: 0;
      line-height: 1.75;
    }

    a {
      color: inherit;
      text-decoration: none;
    }

    img {
      display: block;
      max-width: 100%;
    }

    .site-header {
      position: fixed;
      z-index: 20;
      top: 0;
      left: 0;
      right: 0;
      border-bottom: 1px solid rgba(255, 255, 255, .24);
      color: var(--white);
      background: linear-gradient(180deg, rgba(0, 0, 0, .72), rgba(0, 0, 0, .06));
      backdrop-filter: blur(14px);
    }

    .header-inner {
      display: flex;
      align-items: center;
      justify-content: space-between;
      width: min(1180px, calc(100% - 32px));
      min-height: 72px;
      margin: 0 auto;
      gap: 24px;
    }

    .brand {
      display: inline-flex;
      align-items: center;
      gap: 12px;
      font-weight: 900;
      line-height: 1.2;
    }

    .brand-mark {
      width: 34px;
      height: 46px;
      border: 2px solid var(--white);
      border-radius: 5px;
      background: linear-gradient(150deg, var(--orange) 0 48%, #111 49% 100%);
      box-shadow: 8px 8px 0 rgba(255, 90, 0, .24);
      transform: skew(-8deg) rotate(4deg);
    }

    .brand small {
      display: block;
      color: rgba(255, 255, 255, .7);
      font-size: 10px;
      font-weight: 800;
      letter-spacing: .08em;
      text-transform: uppercase;
    }

    .nav {
      display: flex;
      align-items: center;
      gap: 18px;
      font-size: 13px;
      font-weight: 800;
      white-space: nowrap;
    }

    .nav a {
      position: relative;
      padding: 10px 0;
    }

    .nav a::after {
      position: absolute;
      right: 0;
      bottom: 4px;
      left: 0;
      height: 2px;
      background: var(--orange);
      content: "";
      transform: scaleX(0);
      transform-origin: right;
      transition: transform .2s ease;
    }

    .nav a:hover::after {
      transform: scaleX(1);
      transform-origin: left;
    }

    .menu-button {
      display: none;
      width: 44px;
      height: 44px;
      border: 1px solid rgba(255, 255, 255, .45);
      border-radius: 6px;
      color: var(--white);
      background: rgba(0, 0, 0, .35);
      font-size: 24px;
      line-height: 1;
    }

    .hero {
      position: relative;
      min-height: 94svh;
      overflow: hidden;
      isolation: isolate;
      color: var(--white);
      background: #111;
    }

    .hero::before {
      position: absolute;
      inset: 0;
      z-index: -2;
      background-image: linear-gradient(90deg, rgba(0, 0, 0, .78) 0%, rgba(0, 0, 0, .42) 34%, rgba(0, 0, 0, .08) 64%), var(--hero-image);
      background-position: center;
      background-size: cover;
      content: "";
    }

    .hero::after {
      position: absolute;
      inset: auto 0 0;
      z-index: -1;
      height: 30%;
      background: linear-gradient(180deg, rgba(247, 247, 244, 0), var(--paper));
      content: "";
    }

    .hero-inner {
      display: grid;
      align-items: center;
      width: min(1180px, calc(100% - 32px));
      min-height: 94svh;
      margin: 0 auto;
      padding: 112px 0 120px;
    }

    .eyebrow {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      margin: 0 0 22px;
      color: var(--orange);
      font-size: 13px;
      font-weight: 900;
      letter-spacing: .08em;
      text-transform: uppercase;
    }

    .eyebrow::before {
      width: 46px;
      height: 3px;
      background: var(--orange);
      content: "";
    }

    .hero-copy {
      max-width: 760px;
    }

    body[data-hero-x="center"] .hero-copy {
      justify-self: center;
      text-align: center;
    }

    body[data-hero-x="right"] .hero-copy {
      justify-self: end;
      text-align: right;
    }

    body[data-hero-y="top"] .hero-inner {
      align-items: start;
      padding-top: 132px;
    }

    body[data-hero-y="middle"] .hero-inner {
      align-items: center;
    }

    .hero h1 {
      margin: 0;
      font-size: clamp(40px, 7vw, 86px);
      font-weight: 950;
      line-height: 1.05;
      text-wrap: balance;
    }

    .hero h1 span {
      color: var(--orange);
    }

    .hero h1 .no-break {
      color: var(--white);
      white-space: nowrap;
    }

    .hero-lead {
      max-width: 670px;
      margin: 26px 0 0;
      color: rgba(255, 255, 255, .9);
      font-size: clamp(17px, 2.2vw, 23px);
      font-weight: 800;
      line-height: 1.75;
    }

    .hero-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 14px;
      margin-top: 36px;
    }

    .button {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 50px;
      padding: 12px 20px;
      border: 2px solid transparent;
      border-radius: 6px;
      font-size: 14px;
      font-weight: 900;
      line-height: 1.2;
      transition: transform .2s ease, background .2s ease, color .2s ease, border-color .2s ease;
    }

    .button:hover {
      transform: translateY(-2px);
    }

    .button-primary {
      color: var(--white);
      background: var(--orange);
      box-shadow: 0 16px 34px rgba(255, 90, 0, .3);
    }

    .button-ghost {
      border-color: rgba(255, 255, 255, .62);
      color: var(--white);
      background: rgba(255, 255, 255, .08);
    }

    .hero-stats {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 1px;
      width: min(780px, 100%);
      margin-top: 62px;
      border: 1px solid rgba(255, 255, 255, .26);
      background: rgba(255, 255, 255, .22);
    }

    .stat {
      min-height: 96px;
      padding: 18px;
      background: rgba(0, 0, 0, .42);
      backdrop-filter: blur(12px);
    }

    .stat b {
      display: block;
      color: var(--orange);
      font-size: clamp(20px, 3vw, 34px);
      line-height: 1.1;
    }

    .stat span {
      display: block;
      margin-top: 6px;
      color: rgba(255, 255, 255, .78);
      font-size: 12px;
      font-weight: 800;
    }

    main {
      overflow: hidden;
    }

    section {
      padding: 96px 0;
    }

    .section-dark {
      color: var(--white);
      background: var(--charcoal);
    }

    .section-orange {
      color: var(--white);
      background: linear-gradient(135deg, #ff5a00, #b83200);
    }

    .container {
      width: min(1180px, calc(100% - 32px));
      margin: 0 auto;
    }

    .section-head {
      display: grid;
      grid-template-columns: minmax(0, .78fr) minmax(280px, .62fr);
      gap: 42px;
      align-items: end;
      margin-bottom: 42px;
    }

    .section-kicker {
      display: inline-block;
      margin: 0 0 12px;
      color: var(--orange);
      font-size: 12px;
      font-weight: 950;
      letter-spacing: .1em;
      text-transform: uppercase;
    }

    .section-dark .section-kicker,
    .section-orange .section-kicker {
      color: var(--white);
    }

    h2 {
      margin: 0;
      font-size: clamp(30px, 4vw, 52px);
      font-weight: 950;
      line-height: 1.15;
      text-wrap: balance;
    }

    .section-head p,
    .lead {
      margin: 0;
      color: var(--muted);
      font-size: 16px;
      font-weight: 700;
    }

    .section-dark .section-head p,
    .section-dark .lead,
    .section-orange .section-head p,
    .section-orange .lead {
      color: rgba(255, 255, 255, .78);
    }

    .service-grid {
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 14px;
    }

    .service-card,
    .store-card,
    .news-card,
    .recruit-card {
      border: 1px solid var(--line);
      border-radius: var(--radius);
      background: var(--white);
      box-shadow: 0 10px 34px rgba(10, 11, 13, .06);
    }

    .service-card {
      min-height: 280px;
      padding: 24px;
      position: relative;
      overflow: hidden;
    }

    .service-card::before {
      position: absolute;
      top: 0;
      left: 0;
      width: 74px;
      height: 5px;
      background: var(--orange);
      content: "";
    }

    .service-card strong {
      display: block;
      margin-top: 24px;
      font-size: 22px;
      font-weight: 950;
      line-height: 1.35;
    }

    .service-card p {
      margin: 18px 0 0;
      color: var(--muted);
      font-size: 14px;
      font-weight: 700;
    }

    .number {
      color: rgba(10, 11, 13, .1);
      font-size: 60px;
      font-weight: 950;
      line-height: 1;
    }

    .timeline {
      position: relative;
      display: grid;
      gap: 24px;
      padding-left: 28px;
    }

    .timeline::before {
      position: absolute;
      top: 8px;
      bottom: 8px;
      left: 6px;
      width: 2px;
      background: linear-gradient(var(--orange), rgba(255, 255, 255, .24));
      content: "";
    }

    .timeline-item {
      position: relative;
      display: grid;
      grid-template-columns: 150px minmax(0, 1fr);
      gap: 24px;
      padding: 22px 0;
      border-bottom: 1px solid rgba(255, 255, 255, .16);
    }

    .timeline-item::before {
      position: absolute;
      top: 32px;
      left: -28px;
      width: 14px;
      height: 14px;
      border: 3px solid var(--charcoal);
      border-radius: 50%;
      background: var(--orange);
      content: "";
    }

    .timeline-item time {
      color: var(--orange);
      font-size: 22px;
      font-weight: 950;
    }

    .timeline-item h3 {
      margin: 0;
      font-size: 22px;
      line-height: 1.35;
    }

    .timeline-item p {
      margin: 8px 0 0;
      color: rgba(255, 255, 255, .72);
      font-weight: 700;
    }

    .company-grid {
      display: grid;
      grid-template-columns: .8fr 1.2fr;
      gap: 18px;
      margin-top: 44px;
    }

    .company-panel {
      padding: 30px;
      border: 1px solid rgba(255, 255, 255, .14);
      border-radius: var(--radius);
      background: rgba(255, 255, 255, .06);
    }

    .company-list {
      display: grid;
      gap: 0;
      margin: 0;
    }

    .company-list div {
      display: grid;
      grid-template-columns: 130px minmax(0, 1fr);
      gap: 18px;
      padding: 18px 0;
      border-bottom: 1px solid rgba(255, 255, 255, .14);
    }

    .company-list dt {
      color: rgba(255, 255, 255, .58);
      font-weight: 900;
    }

    .company-list dd {
      margin: 0;
      font-weight: 800;
    }

    .recruit-layout {
      display: grid;
      grid-template-columns: minmax(0, .9fr) minmax(320px, .7fr);
      gap: 20px;
      align-items: stretch;
    }

    .recruit-card {
      padding: 30px;
    }

    .recruit-card h3 {
      margin: 0 0 18px;
      font-size: 26px;
      line-height: 1.35;
    }

    .policy-list {
      display: grid;
      gap: 12px;
      margin: 24px 0 0;
      padding: 0;
      list-style: none;
    }

    .policy-list li {
      display: grid;
      grid-template-columns: 34px minmax(0, 1fr);
      gap: 12px;
      align-items: start;
      color: var(--muted);
      font-weight: 800;
    }

    .policy-list b {
      display: grid;
      place-items: center;
      width: 34px;
      height: 34px;
      border-radius: 5px;
      color: var(--white);
      background: var(--orange);
      font-size: 13px;
    }

    .reward-panel {
      display: grid;
      gap: 1px;
      overflow: hidden;
      border-radius: var(--radius);
      background: rgba(255, 255, 255, .22);
      box-shadow: var(--shadow);
    }

    .reward-row {
      display: grid;
      grid-template-columns: 120px minmax(0, 1fr);
      gap: 20px;
      padding: 22px;
      background: var(--charcoal);
    }

    .reward-row b {
      color: var(--orange);
      font-size: 18px;
    }

    .reward-row span {
      color: rgba(255, 255, 255, .8);
      font-weight: 800;
    }

    .store-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 14px;
    }

    .store-card {
      overflow: hidden;
    }

    .store-visual {
      display: grid;
      place-items: center;
      aspect-ratio: 16 / 10;
      color: var(--white);
      background:
        linear-gradient(135deg, rgba(0, 0, 0, .72), rgba(255, 90, 0, .55)),
        repeating-linear-gradient(120deg, #111 0 16px, #222 17px 30px, #ff5a00 31px 36px);
      font-size: 13px;
      font-weight: 950;
      letter-spacing: .08em;
      text-transform: uppercase;
    }

    .store-body {
      padding: 24px;
    }

    .store-body h3 {
      margin: 0;
      font-size: 22px;
      line-height: 1.35;
    }

    .store-body p {
      margin: 12px 0 0;
      color: var(--muted);
      font-weight: 700;
    }

    .store-tag {
      display: inline-flex;
      margin-top: 18px;
      padding: 5px 9px;
      border-radius: 4px;
      color: var(--orange-dark);
      background: rgba(255, 90, 0, .12);
      font-size: 12px;
      font-weight: 950;
    }

    .news-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 14px;
    }

    .news-card {
      padding: 24px;
    }

    .news-card time {
      color: var(--orange);
      font-size: 12px;
      font-weight: 950;
    }

    .news-card h3 {
      margin: 10px 0 0;
      font-size: 18px;
      line-height: 1.5;
    }

    .contact {
      position: relative;
      isolation: isolate;
      overflow: hidden;
    }

    .contact::before {
      position: absolute;
      inset: 0;
      z-index: -1;
      background:
        linear-gradient(90deg, rgba(0, 0, 0, .84), rgba(0, 0, 0, .36)),
        var(--hero-image) center / cover;
      content: "";
      filter: saturate(1.1);
    }

    .contact-box {
      max-width: 760px;
      color: var(--white);
    }

    .contact-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 12px;
      margin-top: 32px;
    }

    .contact-actions .button-ghost {
      background: rgba(0, 0, 0, .32);
    }

    .site-footer {
      color: rgba(255, 255, 255, .72);
      background: #070809;
    }

    .footer-inner {
      display: flex;
      justify-content: space-between;
      gap: 24px;
      width: min(1180px, calc(100% - 32px));
      margin: 0 auto;
      padding: 34px 0;
      font-size: 13px;
      font-weight: 800;
    }

    @media (max-width: 980px) {
      .menu-button {
        display: inline-grid;
        place-items: center;
      }

      .nav {
        position: absolute;
        top: 72px;
        right: 16px;
        left: 16px;
        display: none;
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        padding: 12px;
        border: 1px solid rgba(255, 255, 255, .18);
        border-radius: var(--radius);
        background: rgba(8, 9, 10, .96);
        box-shadow: var(--shadow);
      }

      .nav.is-open {
        display: flex;
      }

      .nav a {
        padding: 13px 12px;
      }

      .section-head,
      .recruit-layout,
      .company-grid {
        grid-template-columns: 1fr;
      }

      .service-grid,
      .store-grid,
      .news-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
    }

    @media (max-width: 680px) {
      .header-inner {
        min-height: 64px;
      }

      .brand {
        font-size: 14px;
      }

      .brand-mark {
        width: 28px;
        height: 38px;
      }

      .nav {
        top: 64px;
      }

      .hero {
        min-height: 100svh;
      }

      .hero::before {
        background-image: linear-gradient(180deg, rgba(0, 0, 0, .78) 0%, rgba(0, 0, 0, .48) 48%, rgba(0, 0, 0, .28) 100%), url("assets/hero-trecaline.png");
        background-position: 62% center;
      }

      .hero-inner {
        min-height: 100svh;
        padding: 96px 0 92px;
      }

      .hero h1 {
        font-size: clamp(38px, 13vw, 62px);
      }

      .hero-stats,
      .service-grid,
      .store-grid,
      .news-grid {
        grid-template-columns: 1fr;
      }

      section {
        padding: 72px 0;
      }

      .timeline-item,
      .company-list div,
      .reward-row {
        grid-template-columns: 1fr;
        gap: 8px;
      }

      .footer-inner {
        flex-direction: column;
      }
    }

    @media (max-width: 680px) {
      body {
        line-height: 1.68;
      }

      .site-header {
        background: linear-gradient(180deg, rgba(0, 0, 0, .84), rgba(0, 0, 0, .2));
      }

      .header-inner,
      .container {
        width: min(100% - 28px, 420px);
      }

      .brand small {
        font-size: 8px;
      }

      .hero::before {
        background-image:
          linear-gradient(180deg, rgba(0, 0, 0, .62) 0%, rgba(0, 0, 0, .16) 42%, rgba(0, 0, 0, .62) 100%),
          var(--hero-mobile-image);
        background-position: center top;
      }

      .hero-inner {
        align-items: end;
        padding: 78px 0 24px;
      }

      .hero-copy {
        max-width: 100%;
        padding-bottom: env(safe-area-inset-bottom);
      }

      .eyebrow {
        margin-bottom: 12px;
        font-size: 10px;
        line-height: 1.4;
      }

      .eyebrow::before {
        width: 32px;
      }

      .hero h1 {
        font-size: clamp(36px, 11.5vw, 50px);
        line-height: 1.08;
        text-shadow: 0 2px 18px rgba(0, 0, 0, .28);
      }

      .hero-lead {
        max-width: 20em;
        margin-top: 16px;
        font-size: 15px;
        line-height: 1.7;
        text-shadow: 0 2px 16px rgba(0, 0, 0, .4);
      }

      .hero-actions,
      .contact-actions {
        flex-direction: column;
        gap: 10px;
        margin-top: 20px;
      }

      .button {
        width: 100%;
        min-height: 52px;
        padding: 14px 16px;
        font-size: 14px;
      }

      .hero-stats {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        margin-top: 14px;
      }

      .stat {
        min-height: 66px;
        padding: 8px 7px;
      }

      .stat b {
        font-size: 18px;
      }

      .stat span {
        font-size: 10px;
        line-height: 1.35;
      }

      section {
        padding: 62px 0;
      }

      .section-head {
        gap: 14px;
        margin-bottom: 24px;
      }

      h2 {
        font-size: clamp(28px, 8.8vw, 38px);
        line-height: 1.22;
      }

      .section-head p,
      .lead {
        font-size: 14px;
      }

      .service-card,
      .recruit-card,
      .company-panel,
      .news-card {
        padding: 20px;
      }

      .service-card {
        min-height: 0;
      }

      .service-card strong,
      .store-body h3 {
        font-size: 20px;
      }

      .number {
        font-size: 44px;
      }

      .timeline {
        gap: 8px;
        padding-left: 22px;
      }

      .timeline-item {
        padding: 18px 0;
      }

      .timeline-item::before {
        left: -25px;
      }

      .timeline-item h3,
      .timeline-item time {
        font-size: 19px;
      }

      .company-list div {
        padding: 14px 0;
      }

      .policy-list li {
        grid-template-columns: 30px minmax(0, 1fr);
        gap: 10px;
        font-size: 14px;
      }

      .policy-list b {
        width: 30px;
        height: 30px;
        font-size: 12px;
      }

      .reward-row {
        padding: 18px;
      }

      .store-body {
        padding: 20px;
      }

      .contact::before {
        background:
          linear-gradient(180deg, rgba(0, 0, 0, .78), rgba(0, 0, 0, .54)),
          var(--hero-mobile-image) center / cover;
      }
    }
  

:root{--hero-image:url('duel-masters-interior.jpg');--hero-mobile-image:url('duel-masters-interior.jpg')}
.site-header{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:14px max(18px,calc((100vw - 1180px)/2));background:rgba(255,255,255,.96);border-bottom:1px solid rgba(10,11,13,.12);backdrop-filter:blur(14px)}
.brand{display:flex;align-items:center;gap:10px;color:#0a0b0d;text-decoration:none}.brand-mark{display:grid;place-items:center;width:38px;height:38px;background:#ff5a00;color:#fff;font-weight:900}.brand strong,.brand small{display:block}.brand small{margin-top:2px;color:#69717c;font-size:10px}.menu-toggle{display:none;border:1px solid rgba(10,11,13,.18);background:#fff;padding:9px 12px;font-weight:800}.nav{display:flex;align-items:center;gap:22px}.nav a{color:#0a0b0d;text-decoration:none;font-weight:800;font-size:14px}.nav a:hover{color:#d94c00}
.hero{min-height:min(840px,92vh);background:#111}.hero::before{background-image:linear-gradient(90deg,rgba(8,10,13,.92) 0%,rgba(8,10,13,.58) 31%,rgba(8,10,13,.12) 62%),var(--hero-image);background-position:center;background-size:cover}.hero::after{height:18%;background:linear-gradient(180deg,rgba(8,10,13,0),rgba(8,10,13,.4))}.hero-inner{position:relative;min-height:min(840px,92vh);padding-bottom:150px}.hero-copy{max-width:650px}.hero h1{max-width:760px;font-size:clamp(52px,8vw,104px);letter-spacing:0}.hero-lead{max-width:560px}.hero-actions{flex-wrap:wrap}.hero-value-line{position:absolute;right:0;bottom:44px;left:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:760px;border-top:1px solid rgba(255,255,255,.42);color:rgba(255,255,255,.68);font-size:11px;font-weight:900}.hero-value-line span{padding:16px 18px;border-right:1px solid rgba(255,255,255,.22)}.hero-value-line span:first-child{padding-left:0}.hero-value-line b{display:block;margin-top:3px;color:#fff;font-size:16px}.hero-image-note{position:absolute;right:max(18px,calc((100vw - 1180px)/2));bottom:20px;z-index:2;margin:0;color:rgba(255,255,255,.7);font-size:11px;font-weight:700}.page-hero{padding:clamp(84px,12vw,150px) 0 70px;background:#11151a;color:#fff}.page-hero h1{max-width:880px;margin:10px 0 18px;font-size:clamp(38px,6vw,72px);line-height:1.12;letter-spacing:0}.page-hero p{max-width:720px;color:rgba(255,255,255,.72);font-size:18px;font-weight:700}
.experience-section{padding-top:clamp(76px,10vw,132px)}.experience-heading{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);gap:28px;align-items:end}.experience-heading .section-kicker{grid-column:1/-1}.experience-heading h2{max-width:780px;margin:0;font-size:clamp(38px,5.5vw,72px);line-height:1.12}.experience-heading p{margin:0;color:#59616c;font-size:17px;font-weight:700}.experience-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:54px;border-top:1px solid rgba(10,11,13,.18);border-bottom:1px solid rgba(10,11,13,.18)}.experience-value{display:grid;grid-template-columns:auto 1fr;gap:20px;min-height:220px;padding:34px 28px;border-right:1px solid rgba(10,11,13,.16)}.experience-value:last-child{border-right:0}.experience-value>span{color:#d94c00;font-size:14px;font-weight:900}.experience-value h3{margin:0 0 14px;font-size:26px}.experience-value p{margin:0;color:#59616c;font-weight:700}.experience-actions{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:28px}.experience-actions>span{color:#69717c;font-size:12px;font-weight:700}.buyback-feature{background:#11151a;color:#fff}.buyback-layout,.recruit-layout{display:flex;align-items:center;justify-content:space-between;gap:40px}.buyback-layout h2,.recruit-layout h2{margin:7px 0 10px;font-size:clamp(34px,4.5vw,58px);line-height:1.12}.buyback-layout p{max-width:680px;margin:0;color:rgba(255,255,255,.7);font-weight:700}.connected-section{background:#eef0f1}.recruit-feature{background:#ff5a00;color:#111}.recruit-layout p{max-width:640px;margin:0;font-weight:800}.button-ink{color:#fff;background:#11151a}.company-closing{padding-top:72px;padding-bottom:72px;background:#fff}.company-closing-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.8fr);gap:56px;align-items:start}.company-closing-layout h2{max-width:650px;margin:8px 0 0;font-size:clamp(30px,4vw,52px);line-height:1.2}.company-closing-layout p{margin:0;color:#59616c;font-weight:700}
.text-link{display:inline-flex;margin-top:18px;color:#d94c00;font-weight:900;text-decoration:none}.text-link::after{content:' →'}.action-band{display:flex;align-items:center;justify-content:space-between;gap:28px;padding-top:36px;padding-bottom:36px}.action-band h2{margin:5px 0 8px}.step-list{display:grid;gap:0;margin:0;padding:0;list-style:none}.step-list li{display:grid;grid-template-columns:80px 1fr;gap:20px;padding:24px 0;border-top:1px solid rgba(255,255,255,.18)}.step-list b{color:#ff5a00;font-size:28px}.step-list h3{margin:0 0 6px}.step-list p{margin:0;color:rgba(255,255,255,.68)}
.principle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:#d8dce0;border:1px solid #d8dce0}.principle-grid article{padding:26px;background:#fff}.principle-grid article>b{color:#d94c00}.principle-grid h2{font-size:22px}.list-stack{display:grid;gap:1px;background:#d8dce0;border:1px solid #d8dce0}.list-row{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px;background:#fff}.list-row h2{margin:5px 0 0;font-size:24px}.empty-state{padding:30px;border:1px solid rgba(10,11,13,.15);background:#fff;font-weight:800;color:#59616c}.detail-list,.policy-meta{margin:0}.detail-list>div,.policy-meta>div{display:grid;grid-template-columns:180px 1fr;padding:18px 0;border-top:1px solid rgba(10,11,13,.14)}.detail-list dt,.policy-meta dt{font-weight:900}.policy-document{max-width:860px}.policy-document>section{padding:24px 0;border-top:1px solid rgba(10,11,13,.14)}.policy-document h2{font-size:24px}.review-note{padding:14px 16px;border-left:4px solid #ff5a00;background:#fff3e8;font-weight:900;color:#853600}
.site-footer{padding:34px max(18px,calc((100vw - 1180px)/2));background:#0a0b0d;color:#fff}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:24px}.footer-inner>div small{display:block;color:rgba(255,255,255,.55)}.footer-inner nav{display:flex;gap:16px}.footer-inner a{color:rgba(255,255,255,.78);text-decoration:none;font-size:13px}
@media(max-width:760px){.site-header{padding:10px 14px}.brand strong{font-size:13px}.menu-toggle{display:block}.nav{display:none;position:absolute;top:59px;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;padding:8px 14px 18px;background:#fff;border-bottom:1px solid rgba(10,11,13,.14)}.nav.is-open{display:flex}.nav a{padding:13px 4px;border-bottom:1px solid rgba(10,11,13,.08)}.hero{min-height:720px}.hero::before{background-image:linear-gradient(180deg,rgba(8,10,13,.12) 0%,rgba(8,10,13,.3) 38%,rgba(8,10,13,.94) 78%),var(--hero-mobile-image);background-position:62% center}.hero-inner{min-height:720px;align-items:end;padding:110px 0 138px}.hero h1{font-size:clamp(48px,15vw,68px)}.hero-lead{font-size:17px}.hero-value-line{bottom:32px}.hero-value-line span{padding:12px 8px}.hero-value-line span:first-child{padding-left:0}.hero-value-line b{font-size:13px}.hero-image-note{right:14px;bottom:8px;font-size:10px}.experience-heading,.company-closing-layout{grid-template-columns:1fr}.experience-heading .section-kicker{grid-column:auto}.experience-heading h2{font-size:38px}.experience-grid{grid-template-columns:1fr}.experience-value{min-height:auto;padding:24px 4px;border-right:0;border-bottom:1px solid rgba(10,11,13,.14)}.experience-value:last-child{border-bottom:0}.experience-actions,.buyback-layout,.recruit-layout{align-items:flex-start;flex-direction:column}.action-band,.footer-inner,.list-row{align-items:flex-start;flex-direction:column}.principle-grid{grid-template-columns:1fr}.detail-list>div,.policy-meta>div{grid-template-columns:1fr;gap:6px}.footer-inner nav{flex-wrap:wrap}}

:root {
  --brand-orange: #d94717;
  --brand-coral: #ff6b3a;
  --brand-ink: #141414;
  --brand-paper: #f7f7f7;
}

[hidden] { display: none !important; }
.site-header { height: 76px; min-height: 76px; padding: 8px max(24px, calc((100vw - 1180px) / 2)); background: #fff; gap: 24px; view-transition-name: site-header; }
.brand { flex: 0 0 auto; }
.brand-logo { width: 196px; height: 51px; object-fit: contain; display: block; }
.ui-icon { display: block; width: 22px; height: 22px; flex: 0 0 auto; }
.icon-button { position: relative; display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; padding: 0; border: 0; border-radius: 6px; background: transparent; cursor: pointer; color: #222; flex: 0 0 auto; }
.icon-button:hover, .icon-button[aria-current="page"] { background: #f0f0f0; }
.icon-button[aria-current="page"]::before { content: ''; position: absolute; bottom: 3px; width: 14px; height: 2px; background: var(--brand-orange); }
.icon-button:focus-visible, .text-link:focus-visible, .button:focus-visible { outline: 2px solid var(--brand-orange); outline-offset: 4px; }
.site-header .nav { position: static; inset: auto; display: flex; flex-direction: row; align-items: center; gap: 8px; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.nav .nav-icon { width: 58px; height: 54px; flex-direction: column; gap: 4px; }
.nav-label { font-size: 11px; font-weight: 600; line-height: 1.4; white-space: nowrap; }
.nav .nav-icon::after { display: none; }
.nav .nav-icon { padding: 0; border: 0; }
.nav-icon::after { content: attr(data-tooltip); position: absolute; top: calc(100% + 7px); left: 50%; transform: translateX(-50%); padding: 5px 9px; background: #141414; color: #fff; border-radius: 4px; font-size: 12px; font-weight: 500; white-space: nowrap; opacity: 0; pointer-events: none; transition: opacity .12s; }
.nav-icon:hover::after, .nav-icon:focus-visible::after { opacity: 1; }
.menu-toggle.icon-button { display: none; }
@media (max-width: 980px) {
  .site-header .menu-toggle.icon-button { display: inline-flex; }
  .site-header .nav { position: absolute; top: 100%; right: 0; bottom: auto; left: 0; display: none; padding: 12px 14px 20px; border-bottom: 1px solid #ddd; border-radius: 0 0 6px 6px; background: #fff; box-shadow: 0 12px 20px #0000000d; max-height: calc(100dvh - 76px); overflow-y: auto; }
  .site-header .nav.is-open { display: grid; grid-template-columns: repeat(4, 58px); justify-content: space-around; gap: 12px 6px; }
}
.is-navigating .site-header::after { content: ''; position: absolute; bottom: -1px; left: 0; height: 2px; width: 100%; background: var(--brand-orange); animation: navigation-pulse 1s ease-in-out infinite; }
@keyframes navigation-pulse { 50% { opacity: .25; } }
@view-transition { navigation: auto; }
.store-directory { background: #fff; }
.store-row { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 56px; padding: 36px 0; border-top: 1px solid #d9d9d9; }
.store-row:last-child { border-bottom: 1px solid #d9d9d9; }
.store-identity h2 { font-size: 30px; line-height: 1.45; margin: 8px 0 18px; letter-spacing: 0; }
.store-identity h2 a { color: #141414; text-decoration: none; }
.store-features { list-style: none; padding: 0; margin: 0 0 24px; display: flex; flex-wrap: wrap; gap: 8px 18px; }
.store-features li { font-size: 13px; color: #555; border-bottom: 2px solid #ee7026; padding-bottom: 4px; }
.store-overview > p { margin-top: 0; font-size: 16px; color: #444; line-height: 1.85; font-weight: 400; }
.store-overview dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin: 22px 0 0; }
.store-overview dt { color: #555; font-size: 12px; margin-bottom: 5px; }
.store-overview dd { margin: 0; white-space: pre-line; color: #141414; font-size: 14px; }
.store-overview .text-link { margin-right: 24px; font-size: 14px; }
.store-heading { padding: 36px 0 40px; background: #fff; border-bottom: 1px solid #e2e2e2; }
.store-heading .text-link { margin: 0 0 32px; font-size: 13px; }
.store-heading .text-link { display: flex; width: fit-content; }
.store-heading .section-kicker { display: block; }
.button { box-shadow: none; }
.store-heading h1 { font-size: 42px; line-height: 1.4; letter-spacing: 0; margin: 12px 0 20px; }
.store-heading p:not(.section-kicker) { max-width: 720px; color: #444; font-size: 16px; line-height: 1.9; }
.store-information { padding: 40px 0 56px; }
.store-information .detail-list dd { white-space: pre-line; margin: 0; color: #222; }
.store-actions, .store-related { display: flex; flex-wrap: wrap; gap: 12px 24px; margin-top: 24px; }
.store-actions .button { min-height: 44px; font-size: 14px; font-weight: 600; padding: 12px 18px; border-radius: 4px; }
.store-update-note { color: #666; font-size: 13px; }
.store-events { padding: 0; scroll-margin-top: 76px; border-top: 1px solid #d9d9d9; }
.embedded-service { display: flex; flex-direction: column; min-width: 0; height: 100%; background: #fff; }
.service-toolbar { display: flex; align-items: center; gap: 8px; min-height: 54px; padding: 5px 20px; border-bottom: 1px solid #e0e0e0; flex: 0 0 auto; }
.service-toolbar h1, .service-toolbar h2 { margin: 0 auto 0 0; color: #222; font-size: 18px; font-weight: 600; line-height: 1.4; letter-spacing: 0; }
.service-status { font-size: 12px; color: #666; }
.service-frame { display: block; width: 100%; flex: 1 1 auto; min-height: 0; border: 0; background: #fff; }
.service-route { height: 100dvh; overflow: hidden; }
.service-route main { height: calc(100dvh - 76px); }
.service-route .site-footer { display: none; }
.store-events .embedded-service { height: calc(100dvh - 76px); min-height: 480px; }
.company-profile-block { grid-template-columns: minmax(180px, .55fr) minmax(0, 1.45fr); gap: 64px; }
.company-profile-block h2 { font-size: 32px; line-height: 1.45; letter-spacing: 0; }
.company-profile-block .company-list div { grid-template-columns: 110px minmax(0, 1fr); gap: 24px; padding: 20px 0; border-bottom: 1px solid #d7d7d7; }
.company-profile-block .company-list dt { color: #5c5c5c; font-weight: 500; font-size: 14px; }
.company-profile-block .company-list dd { color: #141414; font-size: 16px; font-weight: 500; white-space: pre-line; line-height: 1.8; }
@media (max-width: 760px) {
  .site-header { height: 64px; min-height: 64px; padding: 7px 14px; }
  .brand-logo { width: 176px; height: 46px; }
  .nav-icon::after { top: calc(100% - 2px); font-size: 10px; padding: 2px 5px; }
  .store-row { grid-template-columns: 1fr; gap: 14px; padding: 28px 0; }
  .store-identity h2 { font-size: 24px; margin-bottom: 14px; }
  .store-heading h1 { font-size: 30px; }
  .store-identity .section-kicker, .store-heading .section-kicker { font-size: 12px; letter-spacing: 0; }
  .store-features { margin-bottom: 8px; gap: 8px 12px; }
  .store-features li { font-size: 12px; }
  .store-overview dl { gap: 12px; }
  .store-overview dd { font-size: 13px; }
  .store-information { padding-top: 24px; }
  .service-toolbar { padding: 4px 12px; }
  .service-toolbar h1, .service-toolbar h2 { font-size: 16px; }
  .service-status { max-width: 64px; font-size: 10px; }
  .service-route main, .store-events .embedded-service { height: calc(100dvh - 64px); }
  .store-events { scroll-margin-top: 64px; }
  .company-profile-block { grid-template-columns: 1fr; gap: 24px; }
  .company-profile-block h2 { font-size: 28px; }
  .company-profile-block .company-list div { grid-template-columns: 1fr; gap: 6px; padding: 16px 0; }
  .company-profile-block .company-list dd { font-size: 14px; }
}
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; } }

body {
  background: var(--brand-paper);
}

.site-header {
  min-height: 68px;
}

.brand-mark {
  border-radius: 2px;
  background: var(--brand-orange);
}

.hero-support {
  max-width: 560px;
  margin: 14px 0 0;
  color: rgba(255, 255, 255, .74);
  font-size: 15px;
  font-weight: 700;
}

.home-page .hero-lead .hero-lead-unit { display: inline-block; white-space: nowrap; }

.experience-section {
  background: #fff;
}

.experience-heading h2,
.company-story-layout h2,
.company-closing h2,
.belief-row h2 {
  text-wrap: pretty;
}

.company-story-band {
  padding: 96px 0;
  color: var(--brand-ink);
  background: #fff;
}

.company-story-layout {
  display: grid;
  grid-template-columns: 180px minmax(0, 1fr);
  gap: 56px;
  align-items: start;
}

.company-story-layout .section-kicker {
  color: var(--brand-orange);
  font-size: 13px;
  letter-spacing: 0;
}

.company-story-layout h2 {
  max-width: 840px;
  margin: 0 0 24px;
  font-size: 38px;
  line-height: 1.45;
  letter-spacing: 0;
}

.company-story-layout>div:last-child>p {
  max-width: 680px;
  color: #555;
  font-size: 16px;
  font-weight: 400;
  line-height: 2;
}

.story-label {
  padding-top: 16px;
  border-top: 2px solid var(--brand-orange);
}

.company-story-band .text-link {
  color: var(--brand-ink);
  padding-bottom: 8px;
  border-bottom: 1px solid #b8b8b8;
}

.vision-copy {
  margin: 0 0 24px;
  font-size: clamp(25px, 3.5vw, 42px);
  font-weight: 900;
  line-height: 1.35;
}

.company-beliefs {
  padding: 0;
  color: #fff;
  background: var(--brand-ink);
}

.company-beliefs .container {
  display: grid;
  grid-template-columns: 1fr 1fr;
  padding-top: clamp(72px, 9vw, 120px);
  padding-bottom: clamp(72px, 9vw, 120px);
}

.belief-row {
  min-height: 270px;
  padding: 12px clamp(30px, 5vw, 70px);
  border-left: 1px solid rgba(255, 255, 255, .24);
}

.belief-row:first-child {
  padding-left: 0;
  border-left: 0;
}

.belief-row h2 {
  max-width: 520px;
  margin: 34px 0 0;
  font-size: clamp(34px, 4.6vw, 62px);
  line-height: 1.22;
}

.company-narrative {
  padding: 96px 0;
  color: var(--brand-ink);
  background: #fff;
}

.commitment-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 46px;
  border-top: 1px solid rgba(16, 20, 19, .2);
  border-bottom: 1px solid rgba(16, 20, 19, .2);
}

.commitment {
  min-height: 270px;
  padding: 34px 30px;
  border-right: 1px solid rgba(16, 20, 19, .2);
}

.commitment:last-child {
  border-right: 0;
}

.commitment>span {
  color: var(--brand-orange);
  font-size: 13px;
  font-weight: 900;
}

.commitment h3 {
  margin: 42px 0 14px;
  font-size: 25px;
}

.commitment p {
  margin: 0;
  color: #59625f;
}

.company-profile-block {
  display: grid;
  grid-template-columns: .7fr 1.3fr;
  gap: clamp(40px, 8vw, 110px);
}

.company-profile-block h2 {
  margin: 12px 0 0;
  font-size: clamp(34px, 5vw, 58px);
}

.policy-document {
  max-width: 900px;
}

.policy-document>section {
  padding: 34px 0;
  border-bottom: 1px solid rgba(16, 20, 19, .14);
}

.policy-document>section h2 {
  margin-top: 0;
  font-size: clamp(22px, 3vw, 30px);
}

.policy-document>section p {
  white-space: pre-line;
}

.site-footer .footer-inner {
  align-items: flex-start;
}

.site-footer nav {
  flex-wrap: wrap;
}

@media (max-width: 760px) {
  .site-header {
    min-height: 62px;
  }

  .brand strong {
    max-width: 180px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .hero {
    min-height: 720px;
  }

  .hero::before {
    background-image: linear-gradient(180deg, rgba(8, 10, 13, .05) 5%, rgba(8, 10, 13, .9) 62%, rgba(8, 10, 13, .98) 100%), var(--hero-mobile-image);
    background-position: 64% center;
  }

  .hero-inner {
    align-items: end;
    min-height: 720px;
    padding-top: 240px;
    padding-bottom: 138px;
  }

  .hero h1 {
    white-space: nowrap;
    font-size: clamp(40px, 13vw, 54px);
  }

  .hero-lead {
    font-size: 20px;
  }

  .hero-support {
    font-size: 14px;
  }

  .hero-value-line {
    bottom: 30px;
  }

  .hero-value-line span {
    min-width: 0;
    padding: 12px 8px;
  }

  .hero-value-line b {
    font-size: 12px;
    overflow-wrap: normal;
  }

  .hero-image-note {
    display: none;
  }

  .experience-heading,
  .company-story-layout,
  .company-profile-block {
    grid-template-columns: 1fr;
  }

  .company-story-layout {
    gap: 34px;
  }

  .company-story-band, .company-narrative {
    padding: 64px 0;
  }

  .company-story-layout h2 {
    font-size: 24px;
  }

  .story-label {
    max-width: 120px;
  }

  .company-beliefs .container {
    grid-template-columns: 1fr;
  }

  .belief-row {
    min-height: 0;
    padding: 44px 0;
    border-top: 1px solid rgba(255, 255, 255, .24);
    border-left: 0;
  }

  .belief-row:first-child {
    border-top: 0;
  }

  .commitment-grid {
    grid-template-columns: 1fr;
  }

  .commitment {
    min-height: 0;
    border-right: 0;
    border-bottom: 1px solid rgba(16, 20, 19, .2);
  }

  .commitment:last-child {
    border-bottom: 0;
  }

  .site-footer .footer-inner {
    gap: 22px;
  }
}

@media (max-width: 390px) {
  .hero-inner {
    width: calc(100% - 28px);
  }

  .hero h1 {
    font-size: 38px;
  }

  .hero-actions .button {
    width: 100%;
  }
}

.company-profile-block { grid-template-columns: minmax(180px, .55fr) minmax(0, 1.45fr); gap: 64px; }
.company-profile-block h2 { font-size: 32px; line-height: 1.45; }
@media (max-width: 760px) {
  .company-profile-block { grid-template-columns: 1fr; gap: 24px; }
  .company-profile-block h2 { font-size: 28px; }
  .hero, .hero-inner { min-height: 0; }
  .hero-inner { padding: 96px 0 134px; }
  .hero h1 { font-size: 38px; }
  .hero-actions { display: flex; gap: 10px; }
  .hero-actions .button { min-height: 44px; padding: 12px 18px; font-size: 14px; }
}

.company-route { background: #fff; color: var(--brand-ink); }
.company-route .site-header { position: sticky; top: 0; z-index: 30; }
.company-route main, .company-route .container, .company-route .container > *, .company-route .timeline-item > * { min-width: 0; }
.company-route section { scroll-margin-top: 92px; }
.company-route .page-hero { padding: 80px 0 64px; background: var(--brand-ink); }
.company-route .page-hero h1 { max-width: 100%; font-size: 64px; line-height: 1.35; letter-spacing: 0; }
.company-route .heading-line { display: block; }
.company-route .page-hero h1 .heading-line { white-space: nowrap; }
.company-route .heading-word { display: inline-block; white-space: nowrap; }
.company-route h2, .company-route h3 { word-break: normal; overflow-wrap: normal; letter-spacing: 0; }
.company-route .section-head { grid-template-columns: minmax(0, 1fr); }
.company-route .section-head h2 { font-size: 38px; line-height: 1.45; }
.company-route .company-beliefs .container { grid-template-columns: repeat(2, minmax(0, 1fr)); padding-top: 72px; padding-bottom: 72px; }
.company-route .belief-row { min-width: 0; padding: 12px 32px; }
.company-route .belief-row:first-child { padding-left: 0; }
.company-route .belief-row h2 { max-width: 100%; font-size: 40px; line-height: 1.5; }
.company-route .commitment p { color: #555; }
.company-route .section-dark { background: var(--brand-ink); }
.company-route .timeline::before { background: var(--brand-orange); }
.company-route .timeline-item::before { background: var(--brand-orange); border-color: var(--brand-ink); }
.company-route .timeline-label { display: block; margin-bottom: 4px; color: #fff; font-size: 11px; font-weight: 700; line-height: 1.5; }
.company-route .timeline-date-value { display: block; color: var(--brand-orange); font-size: 22px; font-weight: 900; line-height: 1.5; white-space: nowrap; }
.company-route .timeline-item h3 { font-size: 22px; line-height: 1.6; }
.company-route .company-list dd { overflow-wrap: anywhere; }
@media (max-width: 1024px) {
  .company-route .page-hero h1 { font-size: 52px; }
  .company-route .company-beliefs .container { grid-template-columns: minmax(0, 1fr); padding-top: 40px; padding-bottom: 40px; }
  .company-route .belief-row { min-height: 0; padding: 32px 0; border-left: 0; border-top: 1px solid #555; }
  .company-route .belief-row:first-child { border-top: 0; }
  .company-route .belief-row h2 { margin-top: 20px; font-size: 36px; }
  .company-route .commitment-grid { grid-template-columns: minmax(0, 1fr); }
  .company-route .commitment { min-height: 0; padding: 28px 0; border-right: 0; border-bottom: 1px solid #ddd; }
  .company-route .commitment:last-child { border-bottom: 0; }
  .company-route .commitment h3 { margin-top: 18px; }
}
@media (max-width: 760px) {
  .company-route section { scroll-margin-top: 80px; }
  .company-route .page-hero { padding: 48px 0 40px; }
  .company-route .page-hero h1 { font-size: 34px; }
  .company-route .page-hero p { font-size: 16px; }
  .company-route .belief-row h2 { font-size: 28px; }
  .company-route .section-head h2 { font-size: 28px; }
  .company-route .timeline-item h3 { font-size: 20px; }
  .company-route .timeline-date-value { font-size: 20px; }
}

.recruitment-page{--ink:#141414;--paper:#fff;--mist:#f2f2f2;--rule:#d8d8d8;--orange:#c43a16;--orange-dark:#982a0f;--secondary:#222;background:var(--paper);color:var(--ink);font-size:16px;letter-spacing:0}
.recruitment-page *{box-sizing:border-box;letter-spacing:0;overflow-wrap:anywhere}.recruitment-page [hidden]{display:none!important}.recruit-shell{width:min(1160px,calc(100% - 64px));margin-inline:auto}.recruitment-page h1,.recruitment-page h2,.recruitment-page h3{letter-spacing:0}.recruitment-page h2{font-size:clamp(32px,4vw,52px);line-height:1.35;margin:0;font-weight:800}.recruitment-page h3{font-size:22px;line-height:1.45;margin:0 0 10px}.recruitment-page p{line-height:1.85}.recruit-kicker{margin:0 0 16px!important;font-size:13px!important;font-weight:800;line-height:1.2!important;color:var(--orange);text-transform:uppercase}.recruit-section{padding:96px 0!important;scroll-margin-top:100px}
.recruit-hero{position:relative;isolation:isolate;min-height:620px;height:calc(100svh - 72px);max-height:760px;display:flex;align-items:center;color:#fff;background:#151515;overflow:hidden}.recruit-hero-image{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center}.recruit-hero-shade{position:absolute;inset:0 auto 0 0;width:54%;z-index:-1;background:rgba(9,11,10,.88)}.recruit-hero-copy{width:min(1160px,calc(100% - 64px));margin-inline:auto}.recruit-hero .recruit-kicker{color:#ff9b7b}.recruitment-page h1{font-size:clamp(40px,4vw,56px);line-height:1.25;margin:0 0 26px;font-weight:800}.recruit-lead{max-width:500px;margin:0;font-size:18px;line-height:1.9!important}.recruit-image-note{position:absolute;right:18px;bottom:14px;margin:0!important;padding:5px 8px;background:rgba(0,0,0,.78);font-size:12px;line-height:1.4!important}.recruit-actions{display:flex;align-items:center;gap:22px;margin-top:34px}.recruit-button{min-height:52px;display:inline-flex;align-items:center;justify-content:center;padding:13px 22px;border:2px solid var(--ink);border-radius:3px;background:#fff;color:var(--ink);text-decoration:none;font-weight:800;text-align:center}.recruit-primary{background:var(--orange);border-color:var(--orange);color:#fff}.recruit-primary:hover{background:var(--orange-dark);border-color:var(--orange-dark);color:#fff}.recruit-link{color:#fff;font-weight:700;text-decoration:underline;text-underline-offset:6px}.recruit-button:focus-visible,.recruit-link:focus-visible,.recruit-jump a:focus-visible,.recruit-faq summary:focus-visible{outline:3px solid #a52f10;outline-offset:4px}
.recruit-jump{height:64px;display:flex;align-items:center;justify-content:center;gap:42px;position:sticky;top:0;z-index:4;background:rgba(255,255,255,.96);border-bottom:1px solid var(--rule);backdrop-filter:blur(8px)}.recruit-jump a{color:var(--ink);font-size:14px;font-weight:700;text-decoration:none}.recruit-jump a:hover{color:var(--orange)}
.recruit-opening{background:var(--orange);color:#fff}.recruit-opening-grid{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:80px}.recruit-opening .recruit-kicker{color:#fff}.recruit-statement{margin:0;font-size:22px;line-height:1.9!important;font-weight:700}
.recruit-work{padding-top:24px!important}.recruit-work-list{list-style:none;padding:0;margin:0}.recruit-work-list li{display:grid;grid-template-columns:90px minmax(0,1fr);gap:34px;padding:48px 0;border-bottom:1px solid var(--rule)}.recruit-work-list li>span{font-size:42px;font-weight:900;color:#aeaeae;line-height:1}.recruit-work-list li>div{display:grid;grid-template-columns:160px minmax(250px,1fr) minmax(300px,1.2fr);align-items:start;gap:28px}.recruit-work-label{font-size:13px;font-weight:800;color:var(--orange);margin:7px 0 0!important}.recruit-work-list p:last-child{margin:0;color:#535353}
.recruit-values{background:#141414;color:#fff}.recruit-values-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:100px}.recruit-values-grid>div>p:last-child{max-width:480px;color:#c1c1c1}.recruit-values ul{list-style:none;margin:0;padding:0}.recruit-values li{display:grid;grid-template-columns:220px 1fr;gap:28px;padding:25px 0;border-bottom:1px solid #3f3f3f}.recruit-values strong{font-size:19px}.recruit-values span{color:#c8c8c8;line-height:1.75}
.recruit-section-head{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:end;margin-bottom:46px}.recruit-section-head>p{margin:0;color:#585858;max-width:500px}.recruit-opening-list{display:grid;gap:14px}.recruit-loading,.recruit-empty{padding:28px;border:1px solid var(--rule);background:var(--mist)}.recruit-job{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) auto;align-items:center;gap:28px;padding:28px 30px;border:1px solid #c2c2c2;border-left:6px solid var(--orange);background:#fff}.recruit-job h3{font-size:24px}.recruit-job p{margin:0;color:#525252}.recruit-job-meta{display:flex;gap:8px;flex-wrap:wrap}.recruit-job-meta span{padding:5px 9px;background:#f1f1f1;color:#333;font-size:13px;font-weight:700}.recruit-job .recruit-button{white-space:nowrap}.recruit-empty h3{margin-bottom:8px}.recruit-empty p{margin:0 0 18px}.recruit-line-button{background:var(--secondary);border-color:var(--secondary);color:#fff}.recruit-line-button:hover{background:#444;color:#fff}
.recruit-process{background:var(--mist)}.recruit-process>div>ol{list-style:none;margin:0;padding:0;border-top:1px solid #b2b2b2}.recruit-process li{display:grid;grid-template-columns:64px 240px 1fr;gap:30px;align-items:start;padding:30px 0;border-bottom:1px solid #b2b2b2}.recruit-process li>span{font-size:30px;color:var(--orange);font-weight:900}.recruit-process li p{margin:0;color:#565656}.recruit-contact{background:var(--orange);color:#fff}.recruit-contact .recruit-kicker{color:#fff}.recruit-contact-inner{display:grid;grid-template-columns:1fr auto;align-items:center;gap:50px}.recruit-contact-inner p:last-child{max-width:650px;margin-bottom:0}.recruit-contact .recruit-line-button{min-width:230px;background:#fff;border-color:#fff;color:#111}.recruit-faq .recruit-shell{max-width:900px}.recruit-faq h2{margin-bottom:36px}.recruit-faq details{border-top:1px solid var(--rule);padding:24px 0}.recruit-faq details:last-child{border-bottom:1px solid var(--rule)}.recruit-faq summary{font-size:18px;font-weight:800;cursor:pointer;list-style-position:outside;margin-left:22px}.recruit-faq details p{margin:16px 0 0 22px;color:#585858}.recruit-mobile-action{display:none}
@media(max-width:900px){.recruit-opening-grid,.recruit-values-grid{grid-template-columns:1fr;gap:34px}.recruit-work-list li>div{grid-template-columns:120px 1fr}.recruit-work-list li>div p:last-child{grid-column:2}.recruit-values li{grid-template-columns:190px 1fr}.recruit-section-head{grid-template-columns:1fr;gap:18px}.recruit-job{grid-template-columns:1fr auto}.recruit-job-meta{grid-column:1}.recruit-process li{grid-template-columns:54px 190px 1fr}}
@media(max-width:640px){.recruit-shell,.recruit-hero-copy{width:calc(100% - 36px)}.recruit-section{padding:64px 0!important}.recruit-hero{height:auto;min-height:660px;align-items:flex-end}.recruit-hero-image{object-position:63% center}.recruit-hero-shade{background:linear-gradient(180deg,rgba(8,10,9,.05) 12%,rgba(8,10,9,.9) 63%,rgba(8,10,9,.98))}.recruit-hero-copy{padding:250px 0 66px}.recruitment-page h1{font-size:43px}.recruit-lead{font-size:16px}.recruit-actions{align-items:stretch;flex-direction:column;gap:16px}.recruit-link{text-align:center}.recruit-image-note{font-size:11px}.recruit-jump{display:none}.recruit-opening-grid{align-items:start}.recruit-statement{font-size:18px}.recruit-work-list li{grid-template-columns:48px 1fr;gap:12px;padding:34px 0}.recruit-work-list li>span{font-size:27px}.recruit-work-list li>div{display:block}.recruit-work-label{margin:0 0 8px!important}.recruit-work-list li p:last-child{margin-top:12px}.recruit-values li{grid-template-columns:1fr;gap:6px}.recruit-job{grid-template-columns:1fr;padding:24px 20px}.recruit-job-meta,.recruit-job .recruit-button{grid-column:auto}.recruit-section-head{margin-bottom:30px}.recruit-process li{grid-template-columns:42px 1fr;gap:12px}.recruit-process li p{grid-column:2}.recruit-contact-inner{grid-template-columns:1fr;gap:28px}.recruit-contact .recruit-line-button{min-width:0}.recruit-faq{padding-bottom:100px!important}.recruit-mobile-action{display:block;position:fixed;left:0;right:0;bottom:0;z-index:10;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:rgba(255,255,255,.96);border-top:1px solid var(--rule)}.recruit-mobile-action a{display:flex;min-height:48px;align-items:center;justify-content:center;border-radius:3px;background:var(--orange);color:#fff;text-decoration:none;font-weight:800}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.recruit-job{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr)}.recruit-job-status{font-size:12px;font-weight:800;color:var(--orange)!important}.recruit-job-details{grid-column:1/-1;border-top:1px solid var(--rule);padding-top:18px}.recruit-job-details summary{font-weight:800;cursor:pointer}.recruit-job-details dl{margin:18px 0 24px}.recruit-job-details dl>div{display:grid;grid-template-columns:210px 1fr;gap:24px;padding:13px 0;border-bottom:1px solid #e2e2e2}.recruit-job-details dt{font-weight:700}.recruit-job-details dd{margin:0;white-space:pre-wrap}
@media(max-width:640px){.recruit-job{grid-template-columns:1fr}.recruit-job-details dl>div{grid-template-columns:1fr;gap:4px}}
@media(max-width:640px){.recruit-hero-shade{inset:auto 0 0;width:100%;height:58%;background:rgba(9,11,10,.92)}.recruitment-page h1{font-size:32px}.recruit-mobile-action{transform:translateY(110%);transition:transform .2s ease}.recruit-mobile-action.is-visible{transform:none}}
.recruit-hero-copy h1,.recruit-hero-copy .recruit-lead{max-width:min(500px,calc(54vw - 64px))}
@media(max-width:640px){.recruit-hero-copy h1,.recruit-hero-copy .recruit-lead{max-width:none}}
.recruit-hero{min-height:520px;height:calc(100svh - 150px);max-height:680px}.recruit-hero-copy h1{max-width:none;white-space:nowrap;font-size:clamp(36px,4vw,48px);font-weight:700;margin-bottom:10px}.recruit-tagline{margin:0 0 20px!important;font-size:28px;font-weight:700;line-height:1.4!important}.recruit-hero-copy .recruit-lead{max-width:min(500px,calc(54vw - 64px))}
@media(max-width:640px){.recruit-hero{height:calc(100svh - 125px);min-height:560px;max-height:640px}.recruit-hero-copy{padding:210px 0 52px}.recruit-hero-copy h1{font-size:clamp(26px,8vw,32px)}.recruit-tagline{font-size:22px}.recruit-hero-copy .recruit-lead{max-width:none}}

.recruit-company{background:#fff;color:var(--ink);border-bottom:1px solid var(--rule)}.recruit-company-grid{display:grid;grid-template-columns:180px minmax(0,1fr);gap:56px;align-items:start}.recruit-story-label{padding-top:16px;border-top:2px solid var(--orange)}.recruit-company .recruit-kicker{color:#d94717}.recruit-company h2{max-width:760px;font-size:38px;line-height:1.45}.recruit-company p:last-child{max-width:680px;color:#555;font-weight:400}.recruit-company .recruit-story-label p{color:var(--orange);font-weight:800}
.recruit-growth{background:#f3f3f3}.recruit-growth-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(50px,8vw,110px)}.recruit-growth-grid>div:last-child p{margin-top:0;margin-bottom:20px;color:#444;font-weight:650}
.recruit-mobile-action{grid-template-columns:1fr 128px;gap:8px}.recruit-mobile-action a:last-child{background:var(--secondary)}
@media(max-width:760px){.recruit-company-grid,.recruit-growth-grid{grid-template-columns:1fr;gap:32px}.recruit-work-list li>div{grid-template-columns:1fr}.recruit-work-list li>div p:last-child{grid-column:auto}.recruit-process li{grid-template-columns:42px 1fr}.recruit-process li p{grid-column:2}.recruitment-page h2{font-size:clamp(30px,9vw,40px);line-height:1.3}.recruit-opening h2 br,.recruit-company h2 br,.recruit-growth h2 br{display:none}}
@media(max-width:640px){.recruit-mobile-action{display:grid}.recruit-hero-copy{padding-bottom:44px}.recruit-hero-copy h1{font-size:30px;white-space:nowrap}.recruit-tagline{font-size:27px;line-height:1.35!important}.recruit-hero .recruit-actions{margin-top:26px}.recruit-hero .recruit-button{width:100%}}

@media(max-width:820px){.recruit-company-grid{grid-template-columns:1fr;gap:34px}.recruit-story-label{max-width:120px}.recruit-company h2{font-size:24px}}

/* Shared anniversary mark and verified store photography. */
.store-photo { display: block; margin-bottom: 24px; overflow: clip; }
.store-photo img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; transition: transform 250ms ease; }
.store-photo:hover img { transform: scale(1.025); }
.store-gallery h2 { margin-bottom: 28px; }
.store-gallery-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 36px 24px; }
.store-gallery-grid figure { min-width: 0; margin: 0; }
.store-gallery-grid figure:first-child { grid-column: 1 / -1; }
.store-gallery-grid a { display: block; position: relative; }
.store-gallery-grid img { display: block; width: 100%; height: auto; max-height: 620px; object-fit: contain; background: #fff; }
.store-gallery-grid figcaption { margin-top: 12px; font-size: 14px; line-height: 1.6; }
.store-photo-zoom { display: grid; place-items: center; position: absolute; right: 12px; bottom: 12px; width: 40px; height: 40px; background: #fff; border: 1px solid #111; }
.store-photo-zoom .ui-icon { width: 20px; height: 20px; }
@media (max-width: 640px) {
  .store-gallery-grid { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .store-gallery-grid figcaption { font-size: 12px; }
}
.site-anniversary-mark {
  display: inline-flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
  flex: 0 0 auto;
  width: 62px;
  height: 38px;
  margin-left: 10px;
  border-left: 2px solid #ff5a00;
  color: #000;
  font-family: Arial, sans-serif;
  font-size: 24px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0;
}
.site-header .brand:has(.site-anniversary-mark) { display: inline-flex; align-items: center; }
.site-anniversary-mark b { font-size: 24px; line-height: 1; }
.site-anniversary-mark > span { margin-top: 3px; font-size: 6px; line-height: 1; }
.anniversary-route .anniversary-marquee { display: flex; width: max-content; animation: anniversary-drift 32s linear infinite; }
.anniversary-route .anniversary-marquee > span { flex: 0 0 auto; padding-right: 48px; font: 700 12px/56px Arial, sans-serif; }
.anniversary-route .anniversary-marquee-band { overflow: hidden; border-bottom: 1px solid #000; }
@keyframes anniversary-drift { to { transform: translateX(-50%); } }

.anniversary-route {
  --anniversary-orange: #ff5a00;
  --anniversary-header-height: 76px;
  --anniversary-hint: 56px;
  background: #fff;
  color: #000;
}
.anniversary-route *, .anniversary-route *::before, .anniversary-route *::after { box-sizing: border-box; letter-spacing: 0; }
.anniversary-route .site-header { position: sticky; top: 0; z-index: 30; height: var(--anniversary-header-height); min-height: var(--anniversary-header-height); background: #fff; border-bottom: 1px solid #000; }
.anniversary-route main { position: relative; margin: 0; padding: 0; background: #fff; }
.anniversary-route .anniversary-page { overflow: clip; }
.anniversary-route section { padding: 80px 0; scroll-margin-top: calc(var(--anniversary-header-height) + 16px); }
.anniversary-route .anniversary-shell { width: min(1240px, calc(100% - 80px)); margin-inline: auto; min-width: 0; }
.anniversary-route :is(h1, h2, h3, p, ol) { margin: 0; }
.anniversary-route :is(h1, h2, h3) { color: inherit; font-weight: 900; word-break: normal; overflow-wrap: anywhere; text-wrap: pretty; }
.anniversary-route h2 { font-size: 46px; line-height: 1.35; }
.anniversary-route h3 { font-size: 23px; line-height: 1.5; }
.anniversary-route .heading-word { display: inline-block; white-space: nowrap; }
.anniversary-route .anniversary-heading-line { display: block; white-space: nowrap; }
.anniversary-route p { font-size: 16px; line-height: 1.9; font-weight: 400; }
.anniversary-route .anniversary-kicker { margin-bottom: 24px; font-family: Arial, sans-serif; font-size: 12px; line-height: 1.5; font-weight: 700; }
.anniversary-route .anniversary-link { display: inline-flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 48px; max-width: 100%; padding: 10px 0; border-bottom: 1px solid currentColor; color: inherit; text-decoration: none; font-size: 15px; font-weight: 700; line-height: 1.5; }
.anniversary-route .anniversary-link span { min-width: 0; overflow-wrap: anywhere; }
.anniversary-route .anniversary-link .ui-icon { width: 22px; height: 22px; transition: transform 180ms ease; }
.anniversary-route .anniversary-link:hover .ui-icon { transform: translate(3px, -3px); }
.anniversary-route :is(a, button):focus-visible { outline: 3px solid currentColor; outline-offset: 5px; }

.anniversary-route .anniversary-hero {
  --anniversary-photo-height: clamp(320px, calc(100svh - var(--anniversary-header-height) - var(--anniversary-hint) - 204px), 640px);
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-rows: var(--anniversary-photo-height) auto;
  padding: 0;
  overflow: clip;
  background: #fff;
  color: #000;
}
.anniversary-route .anniversary-art { position: absolute; inset: -12px 0 auto; height: calc(var(--anniversary-photo-height) + 24px); z-index: -1; display: block; pointer-events: none; transform: translate3d(0, clamp(-12px, var(--anniversary-shift, 0px), 12px), 0); }
/* Keep the orange sign below the lockup; the white message band is not part of the crop. */
.anniversary-route .anniversary-art img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 40% 16%; }
.anniversary-route .anniversary-hero-inner { display: flex; align-items: flex-start; justify-content: center; padding: 32px 0; }
.anniversary-route .anniversary-hero-copy { width: min(560px, 80%); min-width: 0; margin-right: 20%; text-align: center; }
/* The emblem includes the authentic wordmark; retain a semantic brand heading. */
.anniversary-route .anniversary-hero h1 { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.anniversary-route .anniversary-lockup { width: min(var(--anniversary-emblem-size, 216px), calc(var(--anniversary-photo-height) * .42), 100%); aspect-ratio: 1; margin-inline: auto; border-radius: 50%; overflow: hidden; background: #000; }
/* Clip only the black corners, preserving the artwork's built-in breathing room. */
.anniversary-route .anniversary-emblem { display: block; width: 100%; height: 100%; aspect-ratio: 1; object-fit: contain; }
.anniversary-route .anniversary-hero-message { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: center; gap: 32px; padding-block: 24px; }
.anniversary-route .anniversary-hero-message > * { min-width: 0; }
.anniversary-route .anniversary-hero-statement { font-size: 34px; font-weight: 900; line-height: 1.35; }
.anniversary-route .anniversary-hero-statement > span { display: block; }
.anniversary-route .anniversary-hero-thanks { font-size: 14px; font-weight: 700; line-height: 1.8; }
.anniversary-route .anniversary-origin-note { margin-top: 8px; font-size: 11px; font-weight: 500; line-height: 1.5; }
.anniversary-route .anniversary-hero-foot { background: #fff; border-top: 1px solid #000; }
.anniversary-route .anniversary-hero-foot-inner { display: flex; justify-content: space-between; align-items: center; gap: 20px; min-height: 64px; border-top: 1px solid #000; }
.anniversary-route .anniversary-hero-tools { display: flex; align-items: center; gap: 24px; }
.anniversary-route .anniversary-hero-tools .anniversary-link { border: 0; font-size: 13px; }
.anniversary-route .anniversary-motion-toggle { position: relative; display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; padding: 0; flex: 0 0 44px; border: 1px solid #000; border-radius: 0; background: #fff; color: #000; cursor: pointer; }
.anniversary-route .anniversary-motion-toggle img { display: block; width: 20px; height: 20px; }
.anniversary-route .anniversary-motion-toggle:hover { background: var(--anniversary-orange); }

.anniversary-route .anniversary-story { padding-top: 0; background: var(--anniversary-orange); }
.anniversary-route .anniversary-chapter-line { display: flex; justify-content: space-between; align-items: center; gap: 24px; min-height: 56px; border-bottom: 1px solid #000; font-family: Arial, sans-serif; font-size: 11px; font-weight: 700; }
.anniversary-route .anniversary-story-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 70px; padding-top: 64px; }
.anniversary-route .anniversary-story h2 { font-size: 100px; line-height: 1.12; }
.anniversary-route .anniversary-story-body { padding-top: 4px; }
.anniversary-route .anniversary-story-body > * + * { margin-top: 26px; }
.anniversary-route .anniversary-story-body .anniversary-intro { font-size: 22px; font-weight: 700; line-height: 1.7; }
.anniversary-route .anniversary-history { background: #000; color: #fff; }
.anniversary-route .anniversary-history-layout { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: 72px; }
.anniversary-route .anniversary-history .anniversary-kicker { color: var(--anniversary-orange); }
.anniversary-route .anniversary-history-years { display: flex; align-items: center; gap: 12px; margin: 36px 0 14px; font-family: Arial, sans-serif; font-size: 36px; font-weight: 900; line-height: 1; }
.anniversary-route .anniversary-history-years span { color: var(--anniversary-orange); }
.anniversary-route .anniversary-timeline { list-style: none; padding: 0 0 0 22px; border-left: 1px solid var(--anniversary-orange); }
.anniversary-route .anniversary-history-item { position: relative; display: grid; grid-template-columns: 100px minmax(0, 1fr); gap: 20px; padding: 26px 0; border-bottom: 1px solid #ffffff40; }
.anniversary-route .anniversary-history-item:first-child { padding-top: 0; }
.anniversary-route .anniversary-history-item:last-child { padding-bottom: 0; border-bottom: 0; }
.anniversary-route .anniversary-history-item::before { content: ''; position: absolute; top: 36px; left: -26px; width: 7px; height: 7px; background: var(--anniversary-orange); }
.anniversary-route .anniversary-history-item:first-child::before { top: 7px; }
.anniversary-route .anniversary-history-date { font-family: Arial, sans-serif; font-size: 20px; font-weight: 700; line-height: 1.5; color: var(--anniversary-orange); }
.anniversary-route .anniversary-history-date small { display: block; font-size: 10px; color: #fff; }
.anniversary-route .anniversary-history-item h3 { font-size: 20px; }
.anniversary-route .anniversary-history-item p { margin-top: 10px; font-size: 14px; white-space: pre-line; }

.anniversary-route .anniversary-section-head { display: grid; grid-template-columns: 1.1fr 1fr; gap: 72px; align-items: end; margin-bottom: 44px; }
.anniversary-route .anniversary-section-head > *, .anniversary-route .anniversary-action-layout > * { min-width: 0; }
.anniversary-route .anniversary-values { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; list-style: none; padding: 0; }
.anniversary-route .anniversary-values li { padding: 22px 0 26px; border-top: 3px solid #000; }
.anniversary-route .anniversary-index { display: block; margin-bottom: 28px; color: #000; font-family: Arial, sans-serif; font-size: 16px; font-weight: 700; }
.anniversary-route .anniversary-values h3 { margin-bottom: 14px; }
.anniversary-route .anniversary-values p { font-size: 14px; }
.anniversary-route .anniversary-store-heading { display: flex; justify-content: space-between; align-items: center; gap: 24px; margin: 50px 0 24px; }
.anniversary-route .anniversary-store-heading h3 { font-size: 28px; }
.anniversary-route .store-row { grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: 72px; padding: 30px 0; border-color: #000; background: transparent; }
.anniversary-route .store-identity h2 { margin: 10px 0 16px; font-size: 28px; }
.anniversary-route .store-identity .section-kicker { color: #000; font-size: 12px; font-weight: 700; }
.anniversary-route .store-identity h2 a, .anniversary-route .store-features li, .anniversary-route .store-overview :is(p, dt, dd) { color: #000; }
.anniversary-route .store-features li { border-color: var(--anniversary-orange); }
.anniversary-route .store-overview dl { margin-top: 20px; }
.anniversary-route .store-overview dd { line-height: 1.8; }
.anniversary-route .text-link { gap: 12px; align-items: center; min-height: 44px; color: #000; font-size: 14px; text-underline-offset: 5px; }
.anniversary-route .text-link:hover { text-decoration: underline; }
.anniversary-route .anniversary-action-layout { display: flex; justify-content: space-between; align-items: flex-end; gap: 56px; }
.anniversary-route .anniversary-action-layout p:not(.anniversary-kicker) { margin-top: 24px; }
.anniversary-route .anniversary-link-large { min-width: 260px; padding-block: 18px; font-size: 19px; border-bottom-width: 2px; }
.anniversary-route .anniversary-buyback { background: var(--anniversary-orange); color: #000; }
.anniversary-route .anniversary-services { background: #fff; }
.anniversary-route .anniversary-services .anniversary-section-head .anniversary-link { margin-top: 16px; }
.anniversary-route .service-grid { display: block; border-top: 1px solid #000; }
.anniversary-route .service-card { display: grid; grid-template-columns: 48px minmax(0, .8fr) minmax(0, 1fr) auto; align-items: center; gap: 28px; min-height: 0; padding: 28px 0; border: 0; border-bottom: 1px solid #000; border-radius: 0; box-shadow: none; background: transparent; color: #000; }
.anniversary-route .service-card::before { display: none; }
.anniversary-route .service-card .number { position: static; width: auto; height: auto; margin: 0; padding: 0; color: #000; background: transparent; font-family: Arial, sans-serif; font-size: 16px; font-weight: 700; }
.anniversary-route .service-card strong { margin: 0; font-size: 24px; line-height: 1.45; overflow-wrap: anywhere; }
.anniversary-route .service-card p { margin: 0; color: #000; font-size: 14px; font-weight: 400; }
.anniversary-route .service-card .text-link { margin: 0; white-space: nowrap; }
.anniversary-route .anniversary-recruit { background: #000; color: #fff; }
.anniversary-route .anniversary-recruit .anniversary-kicker { color: var(--anniversary-orange); }
.anniversary-route .anniversary-recruit .ui-icon { filter: invert(1); }
.anniversary-route .anniversary-closing { padding-block: 72px 40px; background: #fff; }
.anniversary-route .anniversary-closing h2 { font-size: 74px; line-height: 1.3; }
.anniversary-route .anniversary-closing h2 > span { display: inline-block; }
.anniversary-route .anniversary-closing-bottom { display: flex; justify-content: space-between; align-items: flex-end; gap: 32px; margin-top: 52px; padding-top: 24px; border-top: 3px solid var(--anniversary-orange); }
.anniversary-route .anniversary-closing-sign { flex-shrink: 0; font-family: Arial, sans-serif; font-size: 18px; font-weight: 900; }
.anniversary-route .anniversary-closing-sign span { display: block; font-size: 13px; font-weight: 400; }
.anniversary-route .site-footer { background: #000; color: #fff; }

/* Static HTML is complete. The parent opts targets into reveal after observing them. */
.anniversary-route [data-anniversary-reveal] { opacity: 1; transform: none; }
html.anniversary-motion-ready .anniversary-route [data-anniversary-reveal] { transition: opacity 500ms ease, transform 600ms cubic-bezier(.2, .7, .2, 1); }
html.anniversary-motion-ready .anniversary-route [data-anniversary-reveal].anniversary-reveal-pending:not(.is-visible) { opacity: 0; transform: translate3d(0, 20px, 0); }
html.anniversary-motion-ready .anniversary-route [data-anniversary-reveal].is-visible,
html.anniversary-motion-ready .anniversary-route [data-anniversary-reveal].anniversary-reveal-pending:focus-within { opacity: 1; transform: none; }
html.anniversary-motion-paused .anniversary-route *,
html.anniversary-motion-paused .anniversary-route *::before,
html.anniversary-motion-paused .anniversary-route *::after { animation-play-state: paused !important; transition: none !important; }
html.anniversary-motion-paused .anniversary-route [data-anniversary-reveal].anniversary-reveal-pending { opacity: 1; transform: none; }

@media (min-width: 1366px) {
  .anniversary-route .anniversary-hero { --anniversary-emblem-size: 240px; }
}
@media (min-width: 1600px) {
  .anniversary-route .anniversary-art img { object-position: 40% 34%; }
}
@media (min-width: 768px) and (max-width: 1100px) {
  .anniversary-route .anniversary-hero { --anniversary-photo-height: clamp(320px, calc(100svh - var(--anniversary-header-height) - var(--anniversary-hint) - 204px), 560px); }
  .anniversary-route .anniversary-art img { object-position: 38% 22%; }
  .anniversary-route .anniversary-shell { width: calc(100% - 48px); }
  .anniversary-route .anniversary-hero-copy { width: 80%; }
  .anniversary-route .anniversary-hero { --anniversary-emblem-size: 184px; }
  .anniversary-route .anniversary-hero-statement { font-size: 30px; }
  .anniversary-route .anniversary-hero-thanks { font-size: 12px; }
  .anniversary-route .anniversary-story h2 { font-size: 78px; }
  .anniversary-route :is(.anniversary-story-layout, .anniversary-history-layout, .anniversary-section-head, .store-row) { gap: 36px; }
  .anniversary-route h2 { font-size: 36px; }
  .anniversary-route #anniversary-experience-title { font-size: 30px; }
  .anniversary-route .anniversary-values { gap: 22px; }
  .anniversary-route .anniversary-values h3 { font-size: 20px; }
  .anniversary-route .service-card { grid-template-columns: 32px minmax(0, .8fr) minmax(0, 1fr); gap: 20px; }
  .anniversary-route .service-card .text-link { grid-column: 3; justify-self: start; }
  .anniversary-route .anniversary-closing h2 { font-size: 58px; }
}
@media (max-width: 767px) {
  .site-header .brand:has(.site-anniversary-mark) .brand-logo { width: 140px; height: 38px; }
  .site-anniversary-mark { width: 56px; height: 34px; margin-left: 8px; }
  .anniversary-route { --anniversary-header-height: 64px; --anniversary-hint: 48px; }
  .anniversary-route .site-header { padding: 7px 16px; gap: 12px; }
  .anniversary-route .anniversary-shell { width: calc(100% - 40px); }
  .anniversary-route section { padding: 52px 0; }
  .anniversary-route h2 { font-size: 32px; }
  .anniversary-route h3 { font-size: 21px; }
  .anniversary-route p { font-size: 14px; line-height: 1.9; }
  .anniversary-route .anniversary-kicker { margin-bottom: 20px; font-size: 11px; }
  .anniversary-route .anniversary-hero { --anniversary-photo-height: clamp(320px, calc(100svh - var(--anniversary-header-height) - var(--anniversary-hint) - 264px), 480px); padding: 0; }
  .anniversary-route .anniversary-art img { object-position: 34% 16%; }
  .anniversary-route .anniversary-hero-inner { padding: 24px 0; }
  .anniversary-route .anniversary-hero-copy { width: 100%; margin-right: 0; }
  .anniversary-route .anniversary-hero { --anniversary-emblem-size: 160px; }
  .anniversary-route .anniversary-lockup { width: min(var(--anniversary-emblem-size), calc(var(--anniversary-photo-height) * .34), 100%); }
  .anniversary-route .anniversary-hero-message { grid-template-columns: minmax(0, 1fr); gap: 14px; padding-block: 20px; }
  .anniversary-route .anniversary-hero-statement { font-size: 26px; line-height: 1.35; }
  .anniversary-route .anniversary-hero-thanks { font-size: 12px; line-height: 1.75; }
  .anniversary-route .anniversary-origin-note { margin-top: 6px; font-size: 10px; line-height: 1.5; }
  .anniversary-route .anniversary-hero-foot-inner { min-height: 58px; gap: 10px; }
  .anniversary-route .anniversary-hero-tools { gap: 10px; }
  .anniversary-route .anniversary-hero-tools .anniversary-link { gap: 8px; font-size: 12px; }
  .anniversary-route .anniversary-hero-tools .anniversary-link .ui-icon { width: 18px; height: 18px; }
  .anniversary-route .anniversary-story { padding-top: 0; }
  .anniversary-route .anniversary-chapter-line { min-height: 48px; gap: 12px; font-size: 9px; }
  .anniversary-route .anniversary-chapter-line > span:last-child { white-space: nowrap; }
  .anniversary-route :is(.anniversary-story-layout, .anniversary-history-layout, .anniversary-section-head) { grid-template-columns: minmax(0, 1fr); gap: 30px; }
  .anniversary-route .anniversary-story-layout { padding-top: 36px; }
  .anniversary-route .anniversary-story h2 { font-size: 72px; }
  .anniversary-route .anniversary-story-body .anniversary-intro { font-size: 19px; }
  .anniversary-route .anniversary-story-body > * + * { margin-top: 22px; }
  .anniversary-route .anniversary-history-years { margin-top: 24px; font-size: 28px; }
  .anniversary-route .anniversary-history-item { grid-template-columns: minmax(0, 1fr); gap: 8px; padding: 22px 0; }
  .anniversary-route .anniversary-history-item::before { top: 30px; }
  .anniversary-route .anniversary-history-date small { display: inline; margin-right: 10px; }
  .anniversary-route .anniversary-history-date { font-size: 18px; }
  .anniversary-route .anniversary-history-item h3 { font-size: 20px; }
  .anniversary-route .anniversary-section-head { margin-bottom: 30px; }
  .anniversary-route .anniversary-values { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .anniversary-route .anniversary-values li { display: grid; grid-template-columns: 30px minmax(0, 1fr); gap: 12px 16px; padding-block: 22px; border-top-width: 1px; }
  .anniversary-route .anniversary-index, .anniversary-route .anniversary-values h3 { margin: 0; }
  .anniversary-route .anniversary-index { padding-top: 5px; font-size: 13px; }
  .anniversary-route .anniversary-values p { grid-column: 2; }
  .anniversary-route .anniversary-store-heading { flex-direction: column; align-items: flex-start; gap: 8px; margin-top: 30px; }
  .anniversary-route .anniversary-store-heading h3 { font-size: 24px; }
  .anniversary-route .store-row { grid-template-columns: minmax(0, 1fr); gap: 16px; padding-block: 24px; }
  .anniversary-route .store-identity h2 { font-size: 24px; }
  .anniversary-route .store-overview dl { gap: 10px; }
  .anniversary-route .store-overview dd { font-size: 12px; }
  .anniversary-route .store-overview .text-link { margin-right: 16px; font-size: 13px; }
  .anniversary-route .anniversary-action-layout { flex-direction: column; align-items: stretch; gap: 28px; }
  .anniversary-route .anniversary-link-large { min-width: 0; width: 100%; font-size: 18px; }
  .anniversary-route .service-card { grid-template-columns: 28px minmax(0, 1fr); gap: 12px 16px; align-items: start; padding-block: 24px; }
  .anniversary-route .service-card .number { padding-top: 5px; font-size: 13px; }
  .anniversary-route .service-card strong { font-size: 22px; }
  .anniversary-route .service-card p, .anniversary-route .service-card .text-link { grid-column: 2; }
  .anniversary-route .service-card .text-link { justify-self: start; }
  .anniversary-route .anniversary-closing { padding-block: 48px 32px; }
  .anniversary-route .anniversary-closing h2 { font-size: 38px; }
  .anniversary-route .anniversary-closing h2 > span { display: block; }
  .anniversary-route .anniversary-closing-bottom { flex-direction: column; align-items: flex-start; gap: 22px; margin-top: 30px; }
  .anniversary-route .anniversary-closing-sign { font-size: 16px; }
}
@media (max-width: 390px) {
  .anniversary-route .anniversary-art img { object-position: 33% 16%; }
  .anniversary-route .anniversary-closing h2 { font-size: 36px; }
}
@media (max-width: 375px) {
  .anniversary-route .anniversary-shell { width: calc(100% - 32px); }
  .anniversary-route .anniversary-hero { --anniversary-emblem-size: 152px; }
  .anniversary-route .anniversary-story h2 { font-size: 64px; }
  .anniversary-route .anniversary-hero-tools { gap: 6px; }
}
@media (max-height: 850px) and (min-width: 768px) {
  .anniversary-route .anniversary-art img { object-position: 38% 28%; }
  .anniversary-route .anniversary-hero-inner { padding-block: 24px; }
  .anniversary-route .anniversary-hero { --anniversary-emblem-size: 176px; }
  .anniversary-route .anniversary-hero-statement { font-size: 30px; }
  .anniversary-route .anniversary-hero-thanks { font-size: 12px; }
}
@media (max-height: 700px) and (min-width: 768px) {
  .anniversary-route .anniversary-art img { object-position: 38% 40%; }
  .anniversary-route .anniversary-hero-inner { padding-block: 16px; }
  .anniversary-route .anniversary-hero { --anniversary-emblem-size: 120px; }
  .anniversary-route .anniversary-hero-message { padding-block: 16px; }
  .anniversary-route .anniversary-hero-statement { font-size: 26px; }
}
@media (max-height: 760px) and (max-width: 767px) {
  .anniversary-route .anniversary-hero-inner { padding-block: 16px; }
  .anniversary-route .anniversary-hero { --anniversary-emblem-size: 112px; }
  .anniversary-route .anniversary-hero-statement { font-size: 24px; }
}
@media (prefers-reduced-motion: reduce) {
  .anniversary-route *, .anniversary-route *::before, .anniversary-route *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
  html.anniversary-motion-ready .anniversary-route [data-anniversary-reveal].anniversary-reveal-pending,
  .anniversary-route [data-anniversary-reveal] { opacity: 1 !important; transform: none !important; }
  .anniversary-route .anniversary-art { transform: none !important; }
}
