
/* v0.1.2: hide the active Virtue theme header only on the Database Wastra page.
   The dedicated Wastra header (.dwih-site-header) remains visible. */
body.dwih-database-page #kad-banner,
body.dwih-database-page .headerclass,
body.dwih-database-page #topbar,
body.dwih-database-page .topclass,
body.dwih-database-page .kad-topbar,
body.dwih-database-page .kad-header-menu,
body.dwih-database-page .kad-header-style-basic,
body.dwih-database-page #nav-main,
body.dwih-database-page .mobile-headerclass,
body.dwih-database-page .page-header,
body.dwih-database-page .titleclass {
  display: none !important;
}
body.dwih-database-page #wrapper,
body.dwih-database-page #container,
body.dwih-database-page .contentclass,
body.dwih-database-page .main,
body.dwih-database-page .wrap {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/*
 * Editorial Heritage v0.1.1
 * Dedicated portal template removes the Virtue sidebar and duplicate page title
 * on the database page only. Styles are scoped to portal classes.
 */
html { scroll-behavior: smooth; }
body.dwih-standalone-portal { margin: 0 !important; background: #f7f5ef; }
body.dwih-standalone-portal #wpadminbar { position: fixed; }
.dwih-site-header {
  min-height: 66px; padding: 10px clamp(22px, 5.2vw, 78px);
  display: flex; align-items: center; justify-content: space-between; gap: 24px;
  background: #f7f5ef; color: #18354a; border-bottom: 1px solid #ded9cf;
  font-family: "Helvetica Neue", Arial, sans-serif; position: relative; z-index: 5;
}
.dwih-brand { display: flex; align-items: center; gap: 12px; color: #18354a; text-decoration: none; flex-shrink: 0; }
.dwih-brand__mark { font-size: 32px; line-height: 1; color: #8b6848; }
.dwih-brand__text { display: flex; flex-direction: column; line-height: 1.1; }
.dwih-brand__text strong { font: 400 22px/1.05 Georgia, serif; letter-spacing: .025em; }
.dwih-brand__text small { font: 10px/1.7 Georgia, serif; letter-spacing: .16em; }
.dwih-nav { display: flex; align-items: center; justify-content: center; gap: clamp(16px, 3vw, 44px); }
.dwih-nav a, .dwih-header-search { color: #1d2931; text-transform: uppercase; letter-spacing: .12em; font: 10px Arial, sans-serif; text-decoration: none; padding: 12px 0; }
.dwih-nav a.is-current { color: #a4533d; border-bottom: 1px solid #a4533d; }
.dwih-nav a:hover, .dwih-header-search:hover { color: #a4533d; }
.dwih-header-search { display: flex; align-items: center; gap: 10px; white-space: nowrap; }
.dwih-header-search span { font-size: 24px; line-height: .5; }
.dwih-portal {
  --dwih-navy: #18354a; --dwih-ink: #1d2931; --dwih-cream: #f7f5ef;
  --dwih-paper: #eeece5; --dwih-terracotta: #a4533d; --dwih-muted: #6f7778; --dwih-line: #d8d3c9;
  color: var(--dwih-ink); background: var(--dwih-cream);
  font-family: "Helvetica Neue", Arial, sans-serif; font-size: 16px; line-height: 1.55;
  margin: 0 auto; width: 100%; max-width: none; overflow: hidden;
}
.dwih-portal * { box-sizing: border-box; }
.dwih-portal a { text-decoration: none; }
.dwih-portal h1, .dwih-portal h2, .dwih-portal .dwih-category-card strong {
  font-family: Georgia, "Times New Roman", serif; font-weight: 400; letter-spacing: -.035em;
}
.dwih-portal h1, .dwih-portal h2, .dwih-portal p { margin-top: 0; }
.dwih-portal .dwih-hero {
  position: relative; isolation: isolate; min-height: 378px; display: flex; align-items: center;
  padding: 38px clamp(24px, 5.4vw, 82px); color: #fff; background: #122b3b;
}
.dwih-portal .dwih-hero__image {
  position: absolute; inset: 0; z-index: -2;
  background-image: url("https://images.unsplash.com/photo-1590736969955-71cc94901144?auto=format&fit=crop&w=2000&q=85");
  background-position: center 48%; background-size: cover; opacity: .76;
}
.dwih-portal .dwih-hero__veil {
  position: absolute; inset: 0; z-index: -1;
  background: linear-gradient(90deg, rgba(12,31,43,.96) 0%, rgba(12,31,43,.86) 42%, rgba(12,31,43,.25) 100%);
}
.dwih-portal .dwih-hero__content { max-width: min(740px, 68%); position: relative; z-index: 1; }
.dwih-portal .dwih-eyebrow { color: #d7bd8e; text-transform: uppercase; letter-spacing: .16em; font-size: 11px; font-weight: 700; margin: 0 0 16px; }
.dwih-portal .dwih-eyebrow--dark { color: var(--dwih-terracotta); }
.dwih-portal .dwih-hero h1 { color: #fff; font-size: clamp(34px, 4vw, 58px); line-height: 1.02; max-width: 780px; margin: 0 0 18px; }
.dwih-portal .dwih-hero h1 em { font-weight: 400; }
.dwih-portal .dwih-hero__intro { max-width: 620px; color: #e5e7e5; font-size: 15px; line-height: 1.55; margin-bottom: 18px; }
.dwih-portal .dwih-search { display: flex; align-items: center; background: #fff; color: var(--dwih-ink); max-width: 730px; min-height: 48px; border: 1px solid rgba(255,255,255,.7); margin: 0; }
.dwih-portal .dwih-search__icon { font-size: 27px; padding: 0 14px; color: var(--dwih-navy); }
.dwih-portal .dwih-search input { flex: 1; min-width: 0; border: 0 !important; box-shadow: none !important; background: transparent !important; padding: 12px 4px !important; height: auto !important; color: var(--dwih-ink) !important; font-size: 13px; margin: 0 !important; }
.dwih-portal .dwih-search button { align-self: stretch; border: 0; border-radius: 0; padding: 0 26px; color: #fff; background: var(--dwih-terracotta); font-size: 13px; cursor: pointer; margin: 0; }
.dwih-portal .dwih-search button:hover { background: #843e2d; }
.dwih-portal .dwih-popular { display: flex; flex-wrap: wrap; gap: 17px; margin-top: 11px; font-size: 11px; }
.dwih-portal .dwih-popular span { color: #c7cccd; }
.dwih-portal .dwih-popular a { color: #fff; border-bottom: 1px solid transparent; }
.dwih-portal .dwih-popular a:hover { border-color: #d7bd8e; }
.dwih-portal .dwih-hero__note { position: absolute; right: clamp(24px, 5.4vw, 82px); bottom: 38px; max-width: 170px; font-family: Georgia, serif; font-style: italic; color: #eee4d2; font-size: 13px; line-height: 1.45; }
.dwih-portal .dwih-note-line { display: block; width: 36px; height: 2px; background: #d7bd8e; margin-bottom: 12px; }
.dwih-portal .dwih-stats { display: grid; grid-template-columns: .72fr repeat(4, 1fr) .8fr; background: #eeece5; border-bottom: 1px solid var(--dwih-line); padding: 21px clamp(24px, 5.4vw, 82px); gap: 0; align-items: center; }
.dwih-portal .dwih-stats__intro, .dwih-portal .dwih-stat { padding: 4px 18px; border-right: 1px solid #d2cdc3; }
.dwih-portal .dwih-stats__intro { padding-left: 0; display: flex; flex-direction: column; justify-content: center; }
.dwih-portal .dwih-stats__intro span, .dwih-portal .dwih-stats__intro strong { text-transform: uppercase; letter-spacing: .13em; font-size: 9px; color: var(--dwih-muted); font-weight: 500; }
.dwih-portal .dwih-stat:last-of-type { border-right: 1px solid #d2cdc3; }
.dwih-portal .dwih-stat strong { display: block; color: var(--dwih-terracotta); font: 400 35px/1 Georgia, serif; margin-bottom: 7px; }
.dwih-portal .dwih-stat span { display: block; font-family: Georgia, serif; font-size: 13px; }
.dwih-portal .dwih-stat small { display: block; color: var(--dwih-muted); font-size: 10px; margin-top: 3px; }
.dwih-portal .dwih-stats__end { display: flex; align-items: center; justify-content: flex-end; gap: 12px; color: var(--dwih-muted); text-transform: uppercase; letter-spacing: .12em; font-size: 9px; line-height: 1.5; }
.dwih-portal .dwih-stats__ornament { color: #9b8c77; font-size: 36px; }
.dwih-portal .dwih-map-preview { display: grid; grid-template-columns: minmax(190px, .8fr) minmax(300px, 2.2fr) minmax(170px, .7fr); gap: 26px; padding: 35px clamp(24px, 5.4vw, 82px); align-items: center; border-bottom: 1px solid var(--dwih-line); background: #f2f0e9; }
.dwih-portal .dwih-map-preview__copy h2, .dwih-portal .dwih-section-heading h2 { font-size: clamp(26px, 2.4vw, 36px); line-height: 1.08; color: var(--dwih-navy); margin: 0 0 12px; }
.dwih-portal .dwih-map-preview__copy p:not(.dwih-eyebrow) { color: #616a6c; font-size: 12px; }
.dwih-portal .dwih-text-link { display: inline-flex; align-items: center; gap: 12px; border: 1px solid #b67b64; color: #854833; padding: 8px 12px; text-transform: none; font: 12px Georgia, serif; }
.dwih-portal .dwih-map-preview__visual { min-height: 220px; background: #e9e7df; position: relative; display: flex; align-items: center; justify-content: center; overflow: hidden; border: 1px solid #dedbd2; }
.dwih-portal .dwih-map-watermark { position: absolute; left: 16px; top: 12px; color: #b9b9af; font-size: 9px; letter-spacing: .18em; }
.dwih-portal .dwih-map-placeholder { display: flex; flex-direction: column; align-items: center; text-align: center; padding: 22px; color: #67777b; }
.dwih-portal .dwih-map-placeholder__mark { font-size: 31px; color: #9caaa9; line-height: 1; margin-bottom: 9px; }
.dwih-portal .dwih-map-placeholder strong { font: 400 18px Georgia, serif; color: var(--dwih-navy); }
.dwih-portal .dwih-map-placeholder span:last-child { font-size: 10px; margin-top: 5px; }
.dwih-portal .dwih-legend { position: absolute; bottom: 10px; left: 12px; font-size: 9px; color: #687477; display: flex; gap: 6px; align-items: center; }
.dwih-portal .dwih-legend span { display: inline-block; width: 13px; height: 9px; background: #d1d7d3; }
.dwih-portal .dwih-legend i { display: inline-block; width: 16px; height: 9px; background: #b8c4c5; }
.dwih-portal .dwih-legend i:nth-of-type(2) { background: #8fa5aa; }
.dwih-portal .dwih-legend i:nth-of-type(3) { background: #587b87; }
.dwih-portal .dwih-legend i:nth-of-type(4) { background: #18354a; }
.dwih-portal .dwih-legend b { display: inline-block; width: 13px; height: 9px; background: #d5ccbd; margin-left: 8px; }
.dwih-portal .dwih-map-preview__side { border-left: 1px solid var(--dwih-line); padding-left: 20px; }
.dwih-portal .dwih-map-preview__side label { display: block; color: var(--dwih-muted); font-size: 11px; margin-bottom: 8px; }
.dwih-portal .dwih-map-preview__side select { width: 100%; min-height: 36px; border: 1px solid #d5d0c6; background: #faf9f5; padding: 7px 10px; color: var(--dwih-ink); font: 12px Georgia, serif; }
.dwih-portal .dwih-map-preview__side p { font-size: 11px; color: #687174; margin: 10px 0 12px; }
.dwih-portal .dwih-map-preview__side .dwih-text-link { border: 0; border-top: 1px solid #c8b9a7; padding: 10px 0 0; }
.dwih-portal .dwih-categories { padding: 20px clamp(24px, 5.4vw, 82px) 38px; display: grid; grid-template-columns: 115px 1fr; gap: 22px; align-items: stretch; }
.dwih-portal .dwih-category-intro { padding-top: 12px; }
.dwih-portal .dwih-category-intro .dwih-eyebrow { line-height: 1.7; font-size: 9px; }
.dwih-portal .dwih-category-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; }
.dwih-portal .dwih-category-card { min-height: 150px; display: flex; flex-direction: column; justify-content: end; padding: 15px; color: #fff; position: relative; isolation: isolate; overflow: hidden; background-color: var(--dwih-navy); }
.dwih-portal .dwih-category-card::before { content: ""; position: absolute; inset: 0; z-index: -2; background-size: cover; background-position: center; transition: transform .35s ease; }
.dwih-portal .dwih-category-card::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(0deg, rgba(8,19,25,.91), rgba(8,19,25,.04) 90%); }
.dwih-portal .dwih-category-card:hover::before { transform: scale(1.04); }
.dwih-portal .dwih-category-card--tenun::before { background-image: url("https://images.unsplash.com/photo-1605000797499-95a51c5269ae?auto=format&fit=crop&w=800&q=80"); }
.dwih-portal .dwih-category-card--batik::before { background-image: url("https://images.unsplash.com/photo-1582562124811-c09040d0a901?auto=format&fit=crop&w=800&q=80"); }
.dwih-portal .dwih-category-card--songket::before { background-image: url("https://images.unsplash.com/photo-1610030469983-98e550d6193c?auto=format&fit=crop&w=800&q=80"); }
.dwih-portal .dwih-category-card--ulos::before { background-image: url("https://images.unsplash.com/photo-1590736969955-71cc94901144?auto=format&fit=crop&w=800&q=80"); }
.dwih-portal .dwih-category-card--lainnya::before { background-image: url("https://images.unsplash.com/photo-1590736969955-71cc94901144?auto=format&fit=crop&w=800&q=80"); filter: saturate(.55); }
.dwih-portal .dwih-category-card strong { font-size: clamp(20px, 1.9vw, 27px); line-height: 1.1; }
.dwih-portal .dwih-category-card small { font-size: 9px; margin-top: 8px; color: #eee9df; text-transform: uppercase; letter-spacing: .08em; }
.dwih-portal .dwih-editorial-note { margin: 0 clamp(24px, 5.4vw, 82px) 28px; padding: 18px 0; border-top: 1px solid var(--dwih-line); border-bottom: 1px solid var(--dwih-line); display: grid; grid-template-columns: 150px 1fr 40px; gap: 20px; align-items: center; }
.dwih-portal .dwih-editorial-note__index { font-size: 9px; letter-spacing: .15em; color: var(--dwih-terracotta); }
.dwih-portal .dwih-editorial-note p { font: italic 16px/1.45 Georgia, serif; color: var(--dwih-navy); margin: 0; max-width: 720px; }
.dwih-portal .dwih-editorial-note__rule { height: 1px; background: var(--dwih-terracotta); }
.dwih-portal .dwih-footer { padding: 18px clamp(24px, 5.4vw, 82px); background: #18354a; color: #e7e0d4; display: flex; justify-content: space-between; gap: 20px; font-size: 9px; letter-spacing: .13em; text-transform: uppercase; }
.dwih-footer-about { display: none; }
@media (max-width: 1000px) {
  .dwih-nav { gap: 14px; }
  .dwih-brand__text strong { font-size: 18px; }
  .dwih-portal .dwih-hero__content { max-width: 72%; }
  .dwih-portal .dwih-hero__note { max-width: 145px; font-size: 11px; right: 24px; }
  .dwih-portal .dwih-stats { grid-template-columns: repeat(3, minmax(0, 1fr)); row-gap: 14px; }
  .dwih-portal .dwih-stats__intro, .dwih-portal .dwih-stats__end { display: none; }
  .dwih-portal .dwih-map-preview { grid-template-columns: minmax(160px, .8fr) minmax(250px, 1.7fr); }
  .dwih-portal .dwih-map-preview__side { grid-column: 1 / -1; border-left: 0; border-top: 1px solid var(--dwih-line); padding: 14px 0 0; }
  .dwih-portal .dwih-category-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 680px) {
  .dwih-site-header { padding: 12px 18px; flex-wrap: wrap; gap: 10px; }
  .dwih-brand__mark { font-size: 27px; }
  .dwih-brand__text strong { font-size: 17px; }
  .dwih-brand__text small { font-size: 8px; }
  .dwih-nav { order: 3; width: 100%; justify-content: flex-start; overflow-x: auto; gap: 20px; }
  .dwih-nav a { white-space: nowrap; padding: 7px 0; font-size: 9px; }
  .dwih-header-search { margin-left: auto; }
  .dwih-portal .dwih-hero { min-height: auto; padding: 36px 20px 28px; }
  .dwih-portal .dwih-hero__image { background-position: 62% center; }
  .dwih-portal .dwih-hero__veil { background: linear-gradient(90deg, rgba(12,31,43,.95), rgba(12,31,43,.75)); }
  .dwih-portal .dwih-hero__content { max-width: 100%; }
  .dwih-portal .dwih-hero h1 { font-size: clamp(34px, 9vw, 46px); }
  .dwih-portal .dwih-hero__intro { font-size: 13px; }
  .dwih-portal .dwih-hero__note { display: none; }
  .dwih-portal .dwih-search { flex-wrap: wrap; }
  .dwih-portal .dwih-search__icon { padding-left: 10px; padding-right: 8px; }
  .dwih-portal .dwih-search input { width: calc(100% - 50px); flex: 1; }
  .dwih-portal .dwih-search button { width: 100%; min-height: 42px; }
  .dwih-portal .dwih-popular { gap: 9px 13px; }
  .dwih-portal .dwih-stats { padding: 20px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dwih-portal .dwih-stat { padding: 5px 12px; }
  .dwih-portal .dwih-stat:nth-child(2n) { border-right: 0; }
  .dwih-portal .dwih-stat strong { font-size: 30px; }
  .dwih-portal .dwih-stat span { font-size: 12px; }
  .dwih-portal .dwih-stat small { font-size: 10px; }
  .dwih-portal .dwih-map-preview { grid-template-columns: 1fr; padding: 32px 20px; gap: 18px; }
  .dwih-portal .dwih-map-preview__visual { min-height: 180px; }
  .dwih-portal .dwih-map-preview__side { grid-column: auto; }
  .dwih-portal .dwih-categories { grid-template-columns: 1fr; padding: 28px 20px; gap: 8px; }
  .dwih-portal .dwih-category-intro { padding-top: 0; }
  .dwih-portal .dwih-category-intro .dwih-eyebrow { margin-bottom: 8px; }
  .dwih-portal .dwih-category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .dwih-portal .dwih-category-card { min-height: 150px; padding: 12px; }
  .dwih-portal .dwih-editorial-note { margin: 0 20px 22px; grid-template-columns: 1fr; gap: 9px; }
  .dwih-portal .dwih-editorial-note p { font-size: 15px; }
  .dwih-portal .dwih-footer { flex-direction: column; padding: 18px 20px; gap: 5px; }
}


/* Editorial Heritage v0.3.5 — live collection and category statistics */
.dwih-portal .dwih-category-stats {
  display: grid;
  grid-template-columns: minmax(210px, .8fr) minmax(0, 2fr);
  gap: clamp(24px, 4vw, 56px);
  padding: 34px clamp(24px, 5.4vw, 82px);
  background: #f7f5ef;
  border-bottom: 1px solid var(--dwih-line);
}
.dwih-portal .dwih-category-stats__heading h2 {
  margin: 0 0 10px;
  color: var(--dwih-navy);
  font: 400 clamp(25px, 2.4vw, 34px)/1.12 Georgia, serif;
}
.dwih-portal .dwih-category-stats__heading > p:last-child {
  color: #687174;
  font-size: 12px;
  line-height: 1.7;
}
.dwih-portal .dwih-category-stats__list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 24px;
}
.dwih-portal .dwih-category-stat {
  display: grid;
  grid-template-columns: minmax(90px, .8fr) minmax(40px, 1fr) 28px;
  align-items: center;
  gap: 12px;
  padding: 12px 0;
  color: var(--dwih-ink);
  text-decoration: none;
  border-bottom: 1px solid #ded9cf;
}
.dwih-portal .dwih-category-stat__name { font: 13px Georgia, serif; }
.dwih-portal .dwih-category-stat__track { height: 5px; background: #e5e0d6; overflow: hidden; }
.dwih-portal .dwih-category-stat__track span { display: block; height: 100%; background: #a4533d; min-width: 0; }
.dwih-portal .dwih-category-stat strong { color: var(--dwih-navy); text-align: right; font: 400 17px Georgia, serif; }
.dwih-portal .dwih-category-stat:hover .dwih-category-stat__name { color: #a4533d; }
@media(max-width:760px) {
  .dwih-portal .dwih-category-stats { grid-template-columns: 1fr; padding: 28px 20px; gap: 12px; }
  .dwih-portal .dwih-category-stats__list { grid-template-columns: 1fr; }
}


/* Editorial Heritage v0.3.7 — province, material and technique statistics */
.dwih-portal .dwih-live-stats {
  padding: 38px clamp(24px, 5.4vw, 82px) 42px;
  background: #f1eee7;
  border-bottom: 1px solid var(--dwih-line);
}
.dwih-portal .dwih-live-stats__heading {
  max-width: 680px;
  margin-bottom: 26px;
}
.dwih-portal .dwih-live-stats__heading h2 {
  margin: 0 0 10px;
  color: var(--dwih-navy);
  font: 400 clamp(26px, 2.5vw, 36px)/1.12 Georgia, serif;
}
.dwih-portal .dwih-live-stats__heading > p:last-child,
.dwih-portal .dwih-live-stats__caption {
  color: #687174;
  font-size: 12px;
  line-height: 1.65;
}
.dwih-portal .dwih-live-stats__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px 28px;
}
.dwih-portal .dwih-live-stats__panel {
  padding: 22px 24px 18px;
  background: #f8f6f0;
  border: 1px solid #ded9cf;
  min-width: 0;
}
.dwih-portal .dwih-live-stats__panel--wide {
  grid-column: 1 / -1;
}
.dwih-portal .dwih-live-stats__panel h3 {
  margin: 0 0 5px;
  color: var(--dwih-navy);
  font: 400 22px/1.2 Georgia, serif;
}
.dwih-portal .dwih-live-stats__caption {
  margin: 0 0 12px;
}
.dwih-portal .dwih-live-stat-row {
  display: grid;
  grid-template-columns: minmax(105px, .8fr) minmax(50px, 1.5fr) 24px;
  gap: 12px;
  align-items: center;
  padding: 11px 0;
  border-top: 1px solid #e1dcd2;
}
.dwih-portal .dwih-live-stat-row__name {
  color: var(--dwih-ink);
  font: 13px/1.35 Georgia, serif;
  overflow-wrap: anywhere;
}
.dwih-portal .dwih-live-stat-row__track {
  display: block;
  height: 5px;
  background: #e5e0d6;
  overflow: hidden;
}
.dwih-portal .dwih-live-stat-row__track span {
  display: block;
  height: 100%;
  background: #a4533d;
}
.dwih-portal .dwih-live-stat-row strong {
  color: var(--dwih-navy);
  text-align: right;
  font: 400 16px Georgia, serif;
}
.dwih-portal .dwih-live-stats__empty {
  padding: 14px 0 4px;
  color: #687174;
  font-size: 12px;
  border-top: 1px solid #e1dcd2;
}
@media(max-width:760px) {
  .dwih-portal .dwih-live-stats { padding: 28px 20px; }
  .dwih-portal .dwih-live-stats__grid { grid-template-columns: 1fr; gap: 12px; }
  .dwih-portal .dwih-live-stats__panel--wide { grid-column: auto; }
  .dwih-portal .dwih-live-stats__panel { padding: 18px; }
  .dwih-portal .dwih-live-stat-row { grid-template-columns: minmax(95px, .9fr) minmax(35px, 1fr) 22px; gap: 9px; }
}

/* v0.3.8 — interactive choropleth map, Editorial Heritage */
.dwih-portal .dwih-map-preview__copy .dwih-text-link { display:inline-flex; margin-top:2px; color:var(--dwih-terracotta); text-decoration:none; border:1px solid #b77a67; padding:9px 12px; font:12px Georgia,serif; gap:10px; }
.dwih-portal .dwih-map-preview__visual { min-height:270px; display:block; padding:30px 12px 42px; }
.dwih-portal .dwih-map-watermark { position:absolute; top:16px; left:18px; z-index:1; }
.dwih-portal .dwih-map-canvas { position:relative; z-index:2; width:100%; }
.dwih-portal .dwih-map-canvas svg { display:block; width:100%; height:auto; max-height:340px; overflow:visible; }
.dwih-portal .dwih-map-canvas path { cursor:pointer; transition:fill .18s ease, opacity .18s ease; outline:none; }
.dwih-portal .dwih-map-canvas path:hover, .dwih-portal .dwih-map-canvas path:focus { stroke:#a4533d; stroke-width:2.2; opacity:.9; }
.dwih-portal .dwih-map-canvas path.is-selected { stroke:#a4533d; stroke-width:2.6; }
.dwih-portal .dwih-map-loading { min-height:190px; display:flex; align-items:center; justify-content:center; text-align:center; color:#687174; font:13px Georgia,serif; }
.dwih-portal .dwih-map-loading[hidden] { display:none; }
.dwih-portal .dwih-map-tooltip { position:relative; z-index:2; min-height:17px; margin:2px 10px 0; color:#536166; font:11px/1.4 Georgia,serif; }
.dwih-portal .dwih-legend { position:absolute; left:14px; bottom:12px; z-index:3; display:flex; align-items:center; gap:6px; flex-wrap:wrap; color:#5c6668; font-size:9px; }
.dwih-portal .dwih-legend__swatch { display:inline-block; width:13px; height:8px; background:#b9c5c6; }
.dwih-portal .dwih-legend__swatch--mid { background:#81999f; }
.dwih-portal .dwih-legend__swatch--high { background:#476b79; }
.dwih-portal .dwih-legend__swatch--max { background:#18394a; }
.dwih-portal .dwih-legend__swatch--empty { background:#d9d3c7; }
.dwih-portal .dwih-map-preview__side .dwih-map-selected { margin:14px 0; padding:12px; background:#e9e5dc; border-left:2px solid #a4533d; }
.dwih-portal .dwih-map-selected span, .dwih-portal .dwih-map-selected small { display:block; color:#687174; font-size:10px; line-height:1.5; }
.dwih-portal .dwih-map-selected strong { display:block; color:var(--dwih-navy); margin:5px 0; font:400 18px/1.2 Georgia,serif; overflow-wrap:anywhere; }
.dwih-portal .dwih-map-preview__side .dwih-map-source { font-size:9px; color:#81817b; line-height:1.5; }
@media(max-width:760px) {
 .dwih-portal .dwih-map-preview__visual { min-height:230px; padding:28px 8px 44px; }
 .dwih-portal .dwih-map-canvas svg { max-height:none; }
 .dwih-portal .dwih-legend { gap:4px; left:9px; right:8px; bottom:9px; font-size:8px; }
 .dwih-portal .dwih-legend__swatch { width:10px; }
}


/* v0.5.0 — dedicated full-width map page inside the main Wastra plugin */
.dwih-database-page .dwih-map-page { width:100%; max-width:none; margin:0; background:#f2f0e9; color:#18394a; }
.dwih-map-page .dwih-map-page__intro { position:relative; padding:clamp(28px,4vw,58px) clamp(22px,5.5vw,84px) 28px; display:grid; grid-template-columns:minmax(0,1fr) minmax(190px,250px); column-gap:40px; align-items:end; }
.dwih-map-page .dwih-map-page__intro .dwih-eyebrow { grid-column:1/-1; margin:0 0 12px; }
.dwih-map-page .dwih-map-page__intro h1 { margin:0; max-width:900px; color:#18394a; font:400 clamp(36px,5.2vw,72px)/.98 Georgia,serif; letter-spacing:-.035em; }
.dwih-map-page .dwih-map-page__intro > p:not(.dwih-eyebrow) { grid-column:1; max-width:740px; margin:18px 0 0; color:#637078; font-size:clamp(14px,1.2vw,17px); line-height:1.6; }
.dwih-map-page .dwih-map-page__summary { grid-column:2; grid-row:2 / span 2; background:#e8e4da; border-left:3px solid #a4533d; padding:22px 26px; display:flex; flex-direction:column; align-self:stretch; justify-content:center; }
.dwih-map-page .dwih-map-page__summary span,.dwih-map-page .dwih-map-page__summary small { color:#687477; font-size:13px; line-height:1.5; }
.dwih-map-page .dwih-map-page__summary strong { display:block; color:#18394a; font:400 clamp(42px,5vw,64px)/1 Georgia,serif; margin:12px 0 4px; }
.dwih-map-page .dwih-map-page__body { padding:0 clamp(16px,5.5vw,84px); }
.dwih-map-page .dwih-map-page__visual { width:100%; min-height:clamp(350px,52vw,650px); padding:50px 28px 70px; box-sizing:border-box; display:block; background:#e9e7df; border:1px solid #dedbd2; position:relative; overflow:hidden; }
.dwih-map-page .dwih-map-canvas { width:100%; }
.dwih-map-page .dwih-map-canvas svg { width:100%; height:auto; max-height:none; display:block; }
.dwih-map-page .dwih-map-tooltip { position:absolute; right:22px; top:18px; max-width:42%; background:rgba(250,249,245,.94); border:1px solid #d5d0c6; padding:9px 12px; color:#18394a; font-size:12px; }
.dwih-map-page .dwih-legend { left:28px; bottom:22px; font-size:12px; gap:9px; }
.dwih-map-page .dwih-map-page__controls { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:28px; padding:28px 0 12px; }
.dwih-map-page .dwih-map-page__indicator { display:grid; grid-template-columns:max-content minmax(180px,275px) minmax(150px,1fr); align-items:center; gap:16px; }
.dwih-map-page .dwih-map-page__indicator label { color:#18394a; font-weight:600; }
.dwih-map-page .dwih-map-page__indicator select { width:100%; min-height:48px; border:1px solid #d5d0c6; background:#faf9f5; padding:10px 12px; color:#18394a; }
.dwih-map-page .dwih-map-page__indicator p { margin:0; color:#637078; font-size:13px; line-height:1.5; }
.dwih-map-page .dwih-map-page__province { border-left:1px solid #d5d0c6; padding:6px 0 6px 28px; }
.dwih-map-page .dwih-map-page__province .dwih-eyebrow { margin:0 0 12px; }
.dwih-map-page .dwih-map-page__province .dwih-map-selected { margin:0 0 16px; padding:16px; background:#e8e4da; border-left:3px solid #a4533d; }
.dwih-map-page .dwih-map-page__province .dwih-map-selected strong { display:block; font:400 28px/1.1 Georgia,serif; color:#18394a; margin:8px 0; }
.dwih-map-page .dwih-map-page__province .dwih-map-selected small { display:block; color:#637078; line-height:1.5; }
.dwih-map-page .dwih-map-page__source,.dwih-map-page .dwih-map-page__back { margin:16px clamp(16px,5.5vw,84px); color:#687477; font-size:12px; line-height:1.5; }
.dwih-map-page .dwih-map-page__back { padding:18px 0 32px; border-top:1px solid #d5d0c6; }
.dwih-map-page .dwih-map-page__back a { color:#18394a; text-decoration:none; }
@media(max-width:900px) { .dwih-map-page .dwih-map-page__intro { grid-template-columns:1fr; } .dwih-map-page .dwih-map-page__summary { grid-column:1; grid-row:auto; margin-top:22px; } .dwih-map-page .dwih-map-page__controls { grid-template-columns:1fr; } .dwih-map-page .dwih-map-page__indicator { grid-template-columns:1fr; gap:10px; } .dwih-map-page .dwih-map-page__province { border-left:0; border-top:1px solid #d5d0c6; padding:20px 0 0; } }
@media(max-width:560px) { .dwih-map-page .dwih-map-page__visual { min-height:280px; padding:40px 8px 58px; } .dwih-map-page .dwih-map-tooltip { top:8px; right:8px; max-width:65%; font-size:10px; } .dwih-map-page .dwih-legend { left:8px; bottom:14px; flex-wrap:wrap; font-size:9px; gap:5px; } }


/* Dedicated nine-category landing page, v0.5.1 */
.dwih-database-page .dwih-category-page { width:100%; max-width:none; margin:0; background:#f2f0e9; color:#18394a; min-height:70vh; }
.dwih-category-page__intro { position:relative; padding:clamp(32px,5vw,72px) clamp(22px,5.5vw,84px) 36px; display:grid; grid-template-columns:minmax(0,1fr) minmax(170px,250px); column-gap:40px; align-items:end; }
.dwih-category-page__intro .dwih-eyebrow { grid-column:1/-1; margin:0 0 12px; }
.dwih-category-page__intro h1 { margin:0; color:#18394a; font:400 clamp(38px,5.5vw,76px)/.98 Georgia,serif; letter-spacing:-.035em; }
.dwih-category-page__intro > p:not(.dwih-eyebrow) { grid-column:1; max-width:760px; margin:18px 0 0; color:#637078; font-size:clamp(14px,1.2vw,17px); line-height:1.65; }
.dwih-category-page__count { grid-column:2; grid-row:2/span 2; background:#e8e4da; border-left:3px solid #a4533d; padding:24px; display:flex; flex-direction:column; justify-content:center; min-height:150px; }
.dwih-category-page__count strong { color:#18394a; font:400 clamp(42px,5vw,64px)/1 Georgia,serif; }
.dwih-category-page__count span { color:#637078; font-size:13px; line-height:1.5; }
.dwih-category-page__grid { padding:8px clamp(22px,5.5vw,84px) 46px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.dwih-category-page__card { min-height:235px; padding:24px; display:flex; flex-direction:column; align-items:flex-start; text-decoration:none!important; color:#f8f5ed!important; background:#18394a; border:1px solid rgba(24,57,74,.14); transition:transform .18s ease,background .18s ease; }
.dwih-category-page__card:hover,.dwih-category-page__card:focus-visible { background:#244b5c; transform:translateY(-2px); }
.dwih-category-page__number { font:11px Arial,sans-serif; letter-spacing:.18em; color:#e0b47b; margin-bottom:25px; }
.dwih-category-page__card-title { font:400 clamp(24px,2.5vw,34px)/1.08 Georgia,serif; }
.dwih-category-page__description { margin-top:12px; color:#d8e0e0; font-size:13px; line-height:1.55; max-width:340px; }
.dwih-category-page__bottom { margin-top:auto; padding-top:24px; width:100%; display:flex; justify-content:space-between; align-items:center; color:#e6c59b; font-size:11px; letter-spacing:.04em; }
.dwih-category-page__back { margin:0 clamp(22px,5.5vw,84px); padding:20px 0 34px; border-top:1px solid #d5d0c6; font-size:12px; }
.dwih-category-page__back a { color:#18394a; text-decoration:none; }
@media(max-width:900px) { .dwih-category-page__intro { grid-template-columns:1fr; } .dwih-category-page__count { grid-column:1; grid-row:auto; margin-top:24px; min-height:0; } .dwih-category-page__grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:560px) { .dwih-category-page__intro { padding:32px 20px 24px; } .dwih-category-page__intro h1 { font-size:clamp(36px,10vw,48px); } .dwih-category-page__grid { padding:0 20px 30px; grid-template-columns:1fr; gap:10px; } .dwih-category-page__card { min-height:190px; padding:20px; } .dwih-category-page__number { margin-bottom:18px; } .dwih-category-page__back { margin:0 20px; } }


/* Province-click collection gallery, v0.5.2 */
.dwih-map-page .dwih-map-collections { margin:30px 0 18px; padding:28px 0 10px; border-top:1px solid #d5d0c6; }
.dwih-map-page .dwih-map-collections__heading { display:flex; flex-wrap:wrap; align-items:baseline; gap:8px 22px; margin-bottom:20px; }
.dwih-map-page .dwih-map-collections__heading .dwih-eyebrow { width:100%; margin:0; }
.dwih-map-page .dwih-map-collections__heading h2 { margin:0; color:#18394a; font:400 clamp(26px,3vw,38px)/1.12 Georgia,serif; }
.dwih-map-page .dwih-map-collections__heading > p:last-child { margin:0; color:#687477; font-size:13px; line-height:1.6; }
.dwih-map-page .dwih-map-collections__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.dwih-map-page .dwih-map-collection-card { display:flex; flex-direction:column; min-width:0; background:#faf9f5; border:1px solid #ded9cf; color:#18394a; text-decoration:none; transition:transform .18s ease,border-color .18s ease; }
.dwih-map-page .dwih-map-collection-card:hover { transform:translateY(-2px); border-color:#a4533d; }
.dwih-map-page .dwih-map-collection-card:focus-visible { outline:2px solid #a4533d; outline-offset:3px; }
.dwih-map-page .dwih-map-collection-card__media { aspect-ratio:4/3; background:#e8e4da; overflow:hidden; display:flex; align-items:center; justify-content:center; }
.dwih-map-page .dwih-map-collection-card__media img { width:100%; height:100%; object-fit:cover; display:block; }
.dwih-map-page .dwih-map-collection-card__placeholder { color:#8c8b80; font-size:10px; letter-spacing:.16em; }
.dwih-map-page .dwih-map-collection-card__body { display:flex; flex:1; flex-direction:column; align-items:flex-start; padding:17px; }
.dwih-map-page .dwih-map-collection-card__category { color:#a4533d; font-size:10px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.dwih-map-page .dwih-map-collection-card__body h3 { margin:8px 0; color:#18394a; font:400 23px/1.15 Georgia,serif; }
.dwih-map-page .dwih-map-collection-card__local,.dwih-map-page .dwih-map-collection-card__district { margin:0 0 5px; color:#687477; font-size:12px; line-height:1.5; }
.dwih-map-page .dwih-map-collection-card__link { margin-top:auto; padding-top:18px; color:#a4533d; font-size:12px; }
.dwih-map-page .dwih-map-collections__empty { grid-column:1/-1; margin:0; padding:22px; background:#e8e4da; color:#687477; font-size:14px; line-height:1.6; }
@media(max-width:760px) { .dwih-map-page .dwih-map-collections__grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; } .dwih-map-page .dwih-map-collection-card__body { padding:13px; } .dwih-map-page .dwih-map-collection-card__body h3 { font-size:19px; } }
@media(max-width:480px) { .dwih-map-page .dwih-map-collections__grid { grid-template-columns:1fr; } .dwih-map-page .dwih-map-collection-card { display:grid; grid-template-columns:112px minmax(0,1fr); } .dwih-map-page .dwih-map-collection-card__media { aspect-ratio:auto; min-height:145px; } .dwih-map-page .dwih-map-collection-card__body { padding:12px; } .dwih-map-page .dwih-map-collection-card__body h3 { font-size:18px; } }
