.breadcrumb { display:flex; align-items:center; gap:10px; padding:26px 0; color:var(--color-muted); font-size:.86rem; }
.breadcrumb a { color:var(--color-primary); font-weight:800; }

.sitemap-page { padding:34px 0 112px; }
.sitemap-page__header { display:flex; align-items:end; justify-content:space-between; gap:48px; margin-bottom:42px; padding:46px clamp(28px,5vw,66px); border-radius:var(--radius-large); color:#fff; background:linear-gradient(120deg,var(--color-primary-dark),var(--color-primary)); box-shadow:var(--shadow); }
.sitemap-page__header > div { max-width:730px; }
.sitemap-page__header h1 { margin:0 0 14px; color:#fff; font-size:clamp(3rem,6vw,5.25rem); }
.sitemap-page__header .eyebrow { margin:0 0 10px; color:#cfe7ff; }
.sitemap-page__header > div > p:last-child { max-width:650px; margin:0; color:rgba(255,255,255,.82); font-size:1.05rem; }
.sitemap-page__count { display:grid; min-width:128px; justify-items:center; margin:0; padding:20px 22px; border:1px solid rgba(255,255,255,.25); border-radius:18px; background:rgba(255,255,255,.1); text-align:center; backdrop-filter:blur(8px); }
.sitemap-page__count strong { font-size:2.8rem; line-height:1; }
.sitemap-page__count span { margin-top:7px; color:#dceeff; font-size:.72rem; font-weight:800; letter-spacing:.09em; text-transform:uppercase; }
.sitemap-page__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; align-items:start; }
.sitemap-group { overflow:hidden; border:1px solid var(--color-line); border-radius:var(--radius-medium); background:#fff; transition:transform .28s ease,box-shadow .28s ease; animation:sitemap-card-in .58s both; }
.sitemap-group:hover { box-shadow:var(--shadow); transform:translateY(-4px); }
.sitemap-group:nth-child(2) { animation-delay:.08s; }
.sitemap-group:nth-child(3) { animation-delay:.16s; }
.sitemap-group__heading { display:flex; align-items:center; gap:12px; padding:25px 26px 20px; background:var(--color-soft); }
.sitemap-group__heading > span { display:grid; width:34px; height:34px; flex:0 0 auto; place-items:center; border-radius:50%; color:#fff; background:var(--color-primary); font-size:.67rem; font-weight:900; }
.sitemap-group h2 { margin:0; color:var(--color-text); font-size:1.18rem; }
.sitemap-group ul { display:grid; margin:0; padding:0 26px 13px; list-style:none; }
.sitemap-group li { border-top:1px solid var(--color-line); }
.sitemap-group a { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:16px 0; color:var(--color-text); font-size:.93rem; font-weight:800; transition:color .22s ease,padding-left .22s ease; }
.sitemap-group a span { color:var(--color-primary); font-size:1.05rem; transition:transform .22s ease; }
.sitemap-group a:hover { padding-left:5px; color:var(--color-primary); }
.sitemap-group a:hover span { transform:translate(2px,-2px); }
.sitemap-group a[aria-current="page"] { color:var(--color-primary); }
.sitemap-group--general { border-color:var(--color-primary); background:var(--color-primary); }
.sitemap-group--general .sitemap-group__heading { background:rgba(0,0,0,.08); }
.sitemap-group--general .sitemap-group__heading > span { color:var(--color-primary); background:#fff; }
.sitemap-group--general h2,.sitemap-group--general a { color:#fff; }
.sitemap-group--general li { border-color:rgba(255,255,255,.2); }
.sitemap-group--general a span { color:#d6ebff; }
.sitemap-group--general a:hover { color:#fff; }
.sitemap-group--legal .sitemap-group__heading { background:#eaf4ff; }
.sitemap-note { display:flex; align-items:center; justify-content:space-between; gap:40px; margin-top:28px; padding:24px 28px; border-left:4px solid var(--color-primary); border-radius:0 var(--radius-medium) var(--radius-medium) 0; background:var(--color-soft); }
.sitemap-note p { max-width:760px; margin:0; color:var(--color-muted); font-size:.9rem; }
.sitemap-note strong { color:var(--color-text); }
.sitemap-note .text-link { flex:0 0 auto; }
@keyframes sitemap-card-in { from { opacity:0; transform:translateY(16px); } to { opacity:1; transform:translateY(0); } }
@media (prefers-reduced-motion:reduce) { .sitemap-group { animation:none; } .sitemap-group:hover { transform:none; } }
@media (max-width:900px) { .sitemap-page { padding:24px 0 84px; } .sitemap-page__grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .sitemap-group--legal { grid-column:span 2; } .sitemap-note { align-items:flex-start; flex-direction:column; gap:14px; } }
@media (max-width:600px) { .breadcrumb { padding:18px 0; } .sitemap-page__header { display:block; margin-bottom:24px; padding:34px 24px; } .sitemap-page__header h1 { font-size:3rem; } .sitemap-page__count { width:100%; min-width:0; margin-top:28px; } .sitemap-page__grid { grid-template-columns:1fr; gap:14px; } .sitemap-group--legal { grid-column:auto; } .sitemap-group__heading { padding:22px 22px 17px; } .sitemap-group ul { padding:0 22px 10px; } .sitemap-note { padding:22px; } }
