/* Pacific Conservation Database. */

body.skin .pcd-hero.page-hero{
  width:100vw;
  margin-top:calc(var(--section-pad) * -1);
  margin-right:calc(50% - 50vw);
  margin-left:calc(50% - 50vw);
  padding:80px 0 104px;
  background:
    linear-gradient(90deg, rgba(0,47,73,.88), rgba(0,111,125,.64)),
    url('/themes/custom/pirt_theme/images/hero-bg.jpg') center/cover !important;
  color:#fff;
}

body.skin .pcd-detail-hero{
  background:
    linear-gradient(135deg, rgba(6,41,64,.92), rgba(6,41,64,.78) 55%, rgba(0,145,194,.62)),
    url('/themes/custom/pirt_theme/images/hero-bg.jpg') center/cover;
  color:#fff;
}

body.skin .pcd-hero.page-hero h1{
  max-width:920px;
  color:#fff;
}

body.skin .pcd-hero.page-hero .lede,
body.skin .pcd-detail-hero .lede{
  color:rgba(255,255,255,.92);
}

body.skin .pcd-hero.page-hero .crumbs,
body.skin .pcd-hero.page-hero .crumbs a{
  color:rgba(255,255,255,.88);
}

body.skin .pcd-hero.page-hero .eyebrow{
  color:#f5c17a;
}

.pcd.section{
  padding-top:44px;
}

.pcd-shell{
  display:grid;
  grid-template-columns:minmax(0,1fr) 360px;
  gap:28px;
  align-items:start;
}

.pcd-main .section-head{
  margin-bottom:22px;
}

.pcd-stats{
  gap:10px;
}

body.skin .page-hero .pcd-stats span{
  gap:6px;
  min-height:36px;
  padding:7px 12px;
  border:1px solid rgba(255,255,255,.34);
  border-radius:999px;
  background:rgba(255,255,255,.12);
  color:#fff;
  font-size:13px;
  font-weight:750;
}

.pcd-toolbar{
  border:1px solid var(--sp-line);
  border-radius:8px;
  background:#fff;
  padding:18px;
  margin-bottom:16px;
  box-shadow:0 12px 32px rgba(8,42,53,.08);
}

.pcd-filters{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  align-items:end;
}

.pcd-field--search{
  grid-column:1 / -1;
}

.pcd-field label{
  display:block;
  font-size:11px;
  line-height:1.2;
  font-weight:800;
  letter-spacing:.7px;
  color:var(--sp-secondary-d);
  text-transform:uppercase;
  margin-bottom:6px;
}

.pcd-field input,
.pcd-field select{
  width:100%;
  min-height:44px;
  border:1px solid var(--sp-line);
  border-radius:8px;
  background:#f8fbfb;
  color:var(--sp-secondary-d);
  font:inherit;
  font-size:14px;
  padding:10px 12px;
}

.pcd-field input:focus,
.pcd-field select:focus{
  outline:3px solid rgba(0,145,194,.18);
  border-color:var(--sp-primary);
}

.pcd-actions{
  display:flex;
  gap:8px;
  align-items:center;
  grid-column:1 / -1;
}

.pcd-reset{
  min-height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid var(--sp-line);
  border-radius:8px;
  padding:10px 14px;
  color:var(--sp-secondary-d);
  background:#fff;
  font-size:14px;
  font-weight:800;
  text-decoration:none;
}

.pcd-reset:hover{
  border-color:var(--sp-primary);
  color:var(--sp-primary);
}

.pcd-results-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  color:var(--sp-muted);
  gap:14px;
  font-size:14px;
  margin:8px 0 14px;
}

.pcd-results-head strong{color:var(--sp-secondary-d)}
.pcd-results-head p{margin:0}

.pcd-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  align-items:stretch;
}

.pcd-card{
  background:#fff;
  border:1px solid var(--sp-line);
  border-radius:8px;
  padding:18px 18px 16px;
  box-shadow:0 10px 26px rgba(8,42,53,.07);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:14px;
  height:100%;
  min-height:520px;
  transition:transform .2s, box-shadow .2s, border-color .2s;
}

.pcd-card > div:first-child{
  display:flex;
  flex:1 1 auto;
  flex-direction:column;
  min-height:0;
}

.pcd-card:hover{
  transform:translateY(-3px);
  box-shadow:var(--sp-shadow-md);
  border-color:rgba(0,145,194,.45);
}

.pcd-card__top{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:flex-start;
  justify-content:space-between;
  margin-bottom:12px;
}

.pcd-chip{
  display:inline-flex;
  align-items:center;
  max-width:100%;
  min-height:28px;
  border-radius:999px;
  padding:5px 10px;
  background:#eef6f3;
  color:#09313d;
  font-size:11px;
  line-height:1.25;
  font-weight:800;
  overflow-wrap:anywhere;
}

.pcd-status,
.pcd-country,
.pcd-track-list span,
.pcd-hero-chips span{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  border-radius:999px;
  padding:5px 10px;
  font-size:11px;
  line-height:1.25;
  font-weight:800;
}

.pcd-status{background:#007f87;color:#fff}
.pcd-status--completed{background:rgba(0,145,194,.14);color:#075f80}
.pcd-status--approved-not-started{background:rgba(238,176,146,.24);color:#7b3c1e}
.pcd-status--awaiting-review{background:rgba(142,92,180,.15);color:#5d357f}
.pcd-country{background:#f4f7f8;color:var(--sp-secondary-d);text-align:left}

.pcd-card h2{
  font-size:17px;
  line-height:1.3;
  color:var(--sp-secondary-d);
  margin:0 0 9px;
}

.pcd-card h2 a{
  color:inherit;
  text-decoration:none;
  display:-webkit-box;
  overflow:hidden;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
}
.pcd-card h2 a:hover{color:var(--sp-primary)}

.pcd-summary{
  color:var(--sp-muted);
  font-size:13.5px;
  line-height:1.58;
  margin:0 0 16px;
  display:-webkit-box;
  overflow:hidden;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:4;
}

.pcd-meta{
  display:grid;
  gap:10px;
  margin:0 0 14px;
  padding-top:14px;
  border-top:1px solid var(--sp-line);
}

.pcd-meta div,
.pcd-fact-list div{display:grid;gap:3px}

.pcd-meta dt,
.pcd-fact-list dt{
  color:var(--sp-muted);
  font-size:10.5px;
  line-height:1.2;
  font-weight:800;
  letter-spacing:.8px;
  text-transform:uppercase;
}

.pcd-meta dd,
.pcd-fact-list dd{
  margin:0;
  color:var(--sp-secondary-d);
  font-size:13px;
  line-height:1.5;
  font-weight:650;
}

.pcd-card .pcd-meta dd{
  display:-webkit-box;
  overflow:hidden;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
}

.pcd-track-list{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:0;
}

.pcd-track-list span{
  background:rgba(0,145,194,.09);
  color:#075f80;
  font-size:10.5px;
  max-width:100%;
}

.pcd-card__actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  align-items:center;
  margin-top:auto;
  padding-top:14px;
  border-top:1px solid var(--sp-line);
}

.pcd-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  border-radius:999px;
  background:#007f87;
  color:#fff;
  font-weight:800;
  padding:9px 14px;
  text-decoration:none;
  box-shadow:0 10px 20px rgba(0,127,135,.14);
}

body.skin .pcd-card__actions .pcd-link.cta-link{
  margin-top:0;
  padding:9px 14px;
  background:#007f87 !important;
  color:#fff !important;
  letter-spacing:0;
  text-transform:none;
}

.pcd-link:hover,
.pcd-link:focus{
  background:#006771;
  color:#fff;
}

body.skin .pcd-card__actions .pcd-link.cta-link:hover,
body.skin .pcd-card__actions .pcd-link.cta-link:focus{
  background:#006771 !important;
  color:#fff !important;
}

.cta-link--muted{color:var(--sp-muted)}

.pcd-pager{
  display:flex;
  justify-content:center;
  margin-top:24px;
}

.pcd-pager .pager__items{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:8px;
  margin:0;
  padding:0;
}

.pcd-pager .pager__item{
  margin:0;
}

.pcd-pager .pager__item a,
.pcd-pager .pager__item.is-active a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:38px;
  min-height:38px;
  border:1px solid var(--sp-line);
  border-radius:8px;
  background:#fff;
  color:var(--sp-secondary-d);
  font-size:13px;
  font-weight:800;
  text-decoration:none;
}

.pcd-pager .pager__item.is-active a{
  border-color:#007f87;
  background:#007f87;
  color:#fff;
}

.pcd-results-region{
  transition:opacity .18s ease;
}

.pcd-results-region[aria-busy="true"],
.pcd-is-loading .pcd-preview{
  opacity:.55;
  pointer-events:none;
}

.pcd-preview{
  position:sticky;
  top:92px;
  border:1px solid #cfdddf;
  border-radius:8px;
  background:#f7fbfa;
  padding:24px;
  box-shadow:0 14px 34px rgba(8,42,53,.09);
}

.pcd-preview h2{
  margin:10px 0 12px;
  color:var(--sp-secondary-d);
  font-size:21px;
  line-height:1.25;
}

.pcd-preview p{
  color:var(--sp-muted);
  font-size:13.5px;
  line-height:1.6;
  margin:0;
}

.pcd-preview dl{
  display:grid;
  gap:12px;
  margin:16px 0 18px;
}

.pcd-preview dt{
  color:var(--sp-muted);
  font-size:10.5px;
  font-weight:800;
  letter-spacing:.8px;
  line-height:1.2;
  text-transform:uppercase;
}

.pcd-preview dd{
  margin:3px 0 0;
  color:var(--sp-secondary-d);
  font-size:13px;
  line-height:1.5;
  font-weight:650;
}

.pcd-preview .btn{
  width:100%;
  justify-content:center;
  min-height:46px;
}

.pcd-empty{
  text-align:center;
  background:#fff;
  border:1px solid var(--sp-line);
  border-radius:12px;
  padding:40px 24px;
  box-shadow:var(--sp-shadow);
}

.pcd-empty h2{margin:0 0 8px;color:var(--sp-secondary-d)}
.pcd-empty p{margin:0 auto 18px;max-width:520px;color:var(--sp-muted)}

.pcd-hero-chips{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:14px;
}

.pcd-hero-chips span{
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.25);
  color:#fff;
}

.pcd-hero-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:12px;
}

.pcd-hero-meta span{
  color:rgba(255,255,255,.92);
  font-size:12px;
  font-weight:750;
}

.pcd-hero-meta span + span::before{
  content:'';
  display:inline-block;
  width:5px;
  height:5px;
  margin:0 8px 2px 0;
  border-radius:50%;
  background:rgba(255,255,255,.62);
}

.pcd-detail-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) 360px;
  gap:28px;
  align-items:start;
}

.pcd-detail-main{
  background:#fff;
  border:1px solid var(--sp-line);
  border-radius:12px;
  padding:34px;
  box-shadow:var(--sp-shadow);
}

.pcd-article-section + .pcd-article-section{
  margin-top:28px;
  padding-top:24px;
  border-top:1px solid var(--sp-line);
}

.pcd-article-section .section-tag{
  margin-bottom:12px;
}

.pcd-section-title{
  color:var(--sp-secondary-d);
  font-size:22px;
  line-height:1.28;
  margin:0 0 14px;
}

.pcd-detail-main .field,
.pcd-detail-main .field__item{margin:0}

.pcd-detail-main p,
.pcd-detail-main li,
.pcd-section-body{
  color:var(--sp-secondary-d);
  line-height:1.75;
  font-size:16px;
}

.pcd-detail-main p{margin:0 0 16px}
.pcd-detail-main p:last-child{margin-bottom:0}

.pcd-detail-main .field ul{
  display:grid;
  gap:10px;
  margin:12px 0 18px;
  padding-left:24px;
}

.pcd-detail-main .field li::marker{color:var(--sp-primary)}

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

.pcd-glance-card{
  background:#f7fafb;
  border:1px solid var(--sp-line);
  border-radius:10px;
  padding:14px;
}

.pcd-glance-card span{
  display:block;
  color:var(--sp-muted);
  font-size:10.5px;
  font-weight:800;
  letter-spacing:.8px;
  line-height:1.2;
  text-transform:uppercase;
  margin-bottom:5px;
}

.pcd-glance-card strong{
  color:var(--sp-secondary-d);
  font-size:14px;
  line-height:1.45;
}

.pcd-clean-list,
.pcd-side-list{
  display:grid;
  gap:8px;
  margin:0;
  padding:0;
  list-style:none;
}

.pcd-clean-list li,
.pcd-side-list li{
  position:relative;
  padding-left:16px;
}

.pcd-clean-list li::before,
.pcd-side-list li::before{
  content:'';
  position:absolute;
  left:0;
  top:.7em;
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--sp-primary);
}

.pcd-clean-list--narrative{
  gap:12px;
  margin-top:12px;
}

.pcd-clean-list--narrative li{
  padding-left:20px;
}

.pcd-detail-track-grid{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.pcd-detail-track-grid span{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  border-radius:999px;
  background:rgba(0,145,194,.09);
  color:#075f80;
  padding:6px 11px;
  font-size:12px;
  line-height:1.3;
  font-weight:750;
}

.pcd-detail-track-grid--gbf span{
  background:rgba(142,92,180,.13);
  color:#5d357f;
}

.pcd-track-lines{
  display:grid;
  gap:8px;
  margin:0;
  padding:0;
  list-style:none;
}

.pcd-track-lines li{
  display:block;
  width:fit-content;
  max-width:100%;
  border-radius:8px;
  background:rgba(0,145,194,.09);
  color:#075f80;
  padding:8px 12px;
  font-size:13px;
  line-height:1.45;
  font-weight:750;
}

.pcd-track-lines--side li{
  width:100%;
  padding:8px 10px;
  font-size:12px;
}

.pcd-detail-side{
  display:grid;
  gap:16px;
  position:sticky;
  top:92px;
}

.pcd-side-card{
  background:#fff;
  border:1px solid var(--sp-line);
  border-radius:12px;
  padding:22px;
  box-shadow:var(--sp-shadow);
}

.pcd-side-card--muted{background:#f7fafb}

.pcd-side-card h2{
  color:var(--sp-secondary-d);
  font-size:17px;
  line-height:1.25;
  margin:0 0 14px;
}

.pcd-fact-list{
  display:grid;
  gap:14px;
  margin:0;
}

.pcd-side-list li{
  color:var(--sp-secondary-d);
  font-size:13px;
  line-height:1.5;
  font-weight:650;
}

.pcd-side-list a{color:var(--sp-primary);font-weight:800}

.pcd-side-actions{
  display:grid;
  gap:9px;
  margin-top:18px;
}

.pcd-side-actions .btn{text-align:center}

.pcd-source-details{
  background:#f7fafb;
  border:1px solid var(--sp-line);
  border-radius:10px;
  color:var(--sp-muted);
  font-size:12px;
  line-height:1.5;
  padding:12px 14px;
}

.pcd-source-details summary{
  color:var(--sp-secondary-d);
  cursor:pointer;
  font-weight:800;
}

.pcd-source-details p{
  margin:10px 0 0;
  overflow-wrap:anywhere;
}

.pcd-source-details a{
  color:var(--sp-primary);
  font-weight:800;
}

.pcd-source-path{
  font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
}

@media (max-width:1180px){
  .pcd-shell{grid-template-columns:1fr}
  .pcd-preview{position:static}
  [data-pcd-preview-region]{order:-1}
  .pcd-filters{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pcd-field--search{grid-column:1 / -1}
  .pcd-actions{grid-column:1 / -1}
  .pcd-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:820px){
  .pcd-grid,
  .pcd-detail-grid{grid-template-columns:1fr}
  .pcd-card{min-height:0}
  .pcd-results-head{
    align-items:flex-start;
    flex-direction:column;
    gap:4px;
  }
  .pcd-detail-side{position:static}
  .pcd-glance-grid{grid-template-columns:1fr}
  body.skin .pcd-hero.page-hero{
    padding:64px 0 92px;
  }
}

@media (max-width:560px){
  .pcd-filters{grid-template-columns:1fr}
  .pcd-actions{flex-direction:column;align-items:stretch}
  .pcd-actions .btn{width:100%;text-align:center}
  .pcd-reset{width:100%}
  .pcd-card,
  .pcd-detail-main,
  .pcd-side-card,
  .pcd-preview{padding:18px}
  .pcd-card__top{flex-direction:column;align-items:flex-start}
  .pcd-country{text-align:left}
}
