/* encounter-index — migrated from SCUBA DIVER NETWORK - NEW ARTICTURE */

*{margin:0;padding:0;box-sizing:border-box;}
:root{
  --deep:#07121e;--deep2:#0a1a2e;--deep3:#0d2038;
  --paper:#f4f0eb;--paper2:#ece8e2;
  --ink:#0c1e2e;--ink-light:#2a3e45;--ink-faint:#4a6a75;
  --teal:#1a9bb5;--teal2:#7dd3e8;
  --emerald:#0e8c6b;--emerald2:#5fd4b0;
  --rule-dark:rgba(255,255,255,0.07);

  /* Article accent colours */
  --reef:#1D9E75;--reef2:#5fd4b0;
  --bleach:#EF9F27;--bleach2:#FAC775;
  --intruder:#e05a3a;--intruder2:#f4a58a;
  --shark:#2a5c8a;--shark2:#7ab0d8;
  --human:#5a3e8a;--human2:#b8a0f0;
}
html{scroll-behavior:smooth;}
body{font-family:'Crimson Pro',serif;background:var(--deep);color:#e8f0f8;overflow-x:hidden;}


.scroll-progress{position:fixed;top:0;left:0;width:100%;height:3px;z-index:1000;}
.progress-fill{height:100%;background:linear-gradient(90deg,var(--emerald),var(--emerald2));width:0%;transition:width .1s linear;}


@keyframes fadeUp{from{opacity:0;transform:translateY(20px);}to{opacity:1;transform:translateY(0);}}


.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease;}
.reveal.visible{opacity:1;transform:translateY(0);}
.rd1{transition-delay:.1s;}.rd2{transition-delay:.2s;}.rd3{transition-delay:.3s;}.rd4{transition-delay:.4s;}


.breadcrumb{position:relative;z-index:2;padding:6rem 2.5rem 0;max-width:1100px;margin:0 auto;display:flex;align-items:center;gap:.6rem;font-family:'DM Sans',sans-serif;font-size:11px;font-weight:500;letter-spacing:.5px;}
.bc-link{color:rgba(232,240,248,0.3);text-decoration:none;transition:color .2s;}
.bc-link:hover{color:rgba(232,240,248,0.7);}
.bc-sep{color:rgba(232,240,248,0.2);}
.bc-current{color:var(--emerald2);}


.hero{
  min-height:72vh;
  display:flex;flex-direction:column;justify-content:flex-end;
  padding:0 2.5rem 5rem;
  position:relative;
}
.hero-inner{max-width:820px;margin:0 auto;width:100%;}
.hero-eyebrow{
  display:flex;align-items:center;gap:.75rem;
  font-family:'DM Sans',sans-serif;
  font-size:11px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;
  color:var(--emerald2);
  margin-bottom:1.75rem;
  opacity:0;animation:fadeUp .8s ease .1s forwards;
}
.hero-eyebrow-line{width:24px;height:1px;background:var(--emerald);opacity:.6;}
.hero-title{
  font-family:'Crimson Pro',serif;
  font-size:clamp(3.5rem,9vw,7rem);
  font-weight:200;line-height:.88;
  letter-spacing:-3px;color:#fff;
  margin-bottom:1.75rem;
  opacity:0;animation:fadeUp .9s ease .2s forwards;
}
.hero-title em{font-style:italic;color:var(--emerald2);}
.hero-rule{width:48px;height:1px;background:rgba(95,212,176,0.3);margin-bottom:1.5rem;opacity:0;animation:fadeUp .9s ease .35s forwards;}
.hero-editorial{
  font-family:'DM Sans',sans-serif;
  font-size:10px;font-weight:600;letter-spacing:2px;text-transform:uppercase;
  color:rgba(232,240,248,0.3);
  margin-bottom:.5rem;
  opacity:0;animation:fadeUp .9s ease .45s forwards;
}
.hero-test{
  font-family:'Crimson Pro',serif;
  font-size:clamp(1.1rem,2vw,1.4rem);
  font-weight:300;font-style:italic;
  color:rgba(95,212,176,0.75);
  line-height:1.6;max-width:560px;
  margin-bottom:2.5rem;
  opacity:0;animation:fadeUp .9s ease .5s forwards;
}
.hero-stats{
  display:flex;align-items:center;gap:2rem;flex-wrap:wrap;
  padding-top:1.5rem;
  border-top:1px solid var(--rule-dark);
  opacity:0;animation:fadeUp .9s ease .6s forwards;
}
.hero-stat{display:flex;flex-direction:column;gap:3px;}
.hero-stat-val{font-family:'Crimson Pro',serif;font-size:1.75rem;font-weight:200;color:#fff;letter-spacing:-.5px;line-height:1;}
.hero-stat-label{font-family:'DM Sans',sans-serif;font-size:10px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:rgba(232,240,248,0.3);}
.hero-stat-sep{width:1px;height:32px;background:rgba(255,255,255,0.08);}


.wave{display:block;width:100%;line-height:0;}


.test-band{
  background:var(--deep2);
  border-top:1px solid var(--rule-dark);
  border-bottom:1px solid var(--rule-dark);
  padding:1.75rem 2.5rem;
}
.test-band-inner{
  max-width:1100px;margin:0 auto;
  display:flex;align-items:center;gap:2rem;
}
.test-band-rule{width:20px;height:1px;background:var(--emerald);opacity:.5;flex-shrink:0;}
.test-band-label{
  font-family:'DM Sans',sans-serif;
  font-size:10px;font-weight:600;letter-spacing:2px;text-transform:uppercase;
  color:rgba(232,240,248,0.3);
  flex-shrink:0;
}
.test-band-text{
  font-family:'Crimson Pro',serif;
  font-size:1.1rem;font-weight:300;font-style:italic;
  color:rgba(95,212,176,0.75);
}

.test-band:has(+ .art-nav){
  border-bottom:none;
}

.test-band + .art-nav{
  background:var(--deep2);
  border-top:1px solid rgba(95,212,176,0.28);
  box-shadow:none;
}

.test-band + .art-nav .art-nav-inner{
  max-width:1100px;
  height:48px;
}


.articles{padding:5rem 2.5rem;background:var(--deep);}
.articles-inner{max-width:1100px;margin:0 auto;}
.articles-label{
  font-family:'DM Sans',sans-serif;
  font-size:10px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;
  color:rgba(232,240,248,0.25);
  margin-bottom:2.5rem;
  display:flex;align-items:center;gap:.75rem;
}
.articles-label::after{content:'';flex:1;height:1px;background:rgba(255,255,255,0.06);}

.article-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1.25rem;
}

/* Article card */
.article-card{
  display:block;
  text-decoration:none;
  background:rgba(255,255,255,0.03);
  border:1px solid rgba(255,255,255,0.07);
  border-radius:18px;
  overflow:hidden;
  transition:border-color .25s,background .25s,transform .25s;
  position:relative;
}
.article-card:hover{
  background:rgba(255,255,255,0.05);
  transform:translateY(-3px);
}

/* Per-article accent */
.article-card.reef{border-color:rgba(29,158,117,0.2);}
.article-card.reef:hover{border-color:rgba(29,158,117,0.45);box-shadow:0 16px 48px rgba(29,158,117,0.1);}
.article-card.bleach{border-color:rgba(239,159,39,0.2);}
.article-card.bleach:hover{border-color:rgba(239,159,39,0.45);box-shadow:0 16px 48px rgba(239,159,39,0.1);}
.article-card.intruder{border-color:rgba(224,90,58,0.2);}
.article-card.intruder:hover{border-color:rgba(224,90,58,0.45);box-shadow:0 16px 48px rgba(224,90,58,0.1);}
.article-card.shark{border-color:rgba(42,92,138,0.2);}
.article-card.shark:hover{border-color:rgba(42,92,138,0.45);box-shadow:0 16px 48px rgba(42,92,138,0.1);}
.article-card.human{border-color:rgba(90,62,138,0.2);}
.article-card.human:hover{border-color:rgba(90,62,138,0.45);box-shadow:0 16px 48px rgba(90,62,138,0.1);}

/* Focus */
.article-card:focus-visible{outline:2px solid var(--emerald2);outline-offset:4px;transform:translateY(-3px);}

.card-accent{height:3px;}
.reef .card-accent{background:linear-gradient(90deg,var(--reef),var(--reef2));}
.bleach .card-accent{background:linear-gradient(90deg,var(--bleach),var(--bleach2));}
.intruder .card-accent{background:linear-gradient(90deg,var(--intruder),var(--intruder2));}
.shark .card-accent{background:linear-gradient(90deg,var(--shark),var(--shark2));}
.human .card-accent{background:linear-gradient(90deg,var(--human),var(--human2));}

.card-top{
  padding:1.75rem 2rem 0;
  display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;
}
.card-num{
  font-family:'DM Sans',sans-serif;
  font-size:10px;font-weight:600;letter-spacing:2px;
  color:rgba(232,240,248,0.2);
}
.card-tag{
  font-family:'DM Sans',sans-serif;
  font-size:10px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;
  padding:4px 10px;border-radius:20px;
}
.reef .card-tag{background:rgba(29,158,117,0.12);color:var(--reef2);}
.bleach .card-tag{background:rgba(239,159,39,0.12);color:var(--bleach2);}
.intruder .card-tag{background:rgba(224,90,58,0.12);color:var(--intruder2);}
.shark .card-tag{background:rgba(42,92,138,0.12);color:var(--shark2);}
.human .card-tag{background:rgba(90,62,138,0.12);color:var(--human2);}

.card-monument{
  padding:1.25rem 2rem .75rem;
  font-family:'Crimson Pro',serif;
  font-size:clamp(2.5rem,5vw,4rem);
  font-weight:200;
  line-height:.88;
  letter-spacing:-2px;
  opacity:.22;
  color:#fff;
}

.card-body{padding:0 2rem 0;}
.card-title{
  font-family:'Crimson Pro',serif;
  font-size:clamp(1.3rem,2.5vw,1.8rem);
  font-weight:300;
  color:#fff;letter-spacing:-.3px;line-height:1.1;
  margin-bottom:.4rem;
}
.card-caption{
  font-family:'DM Sans',sans-serif;
  font-size:10px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;
  color:rgba(232,240,248,0.45);
  margin-bottom:1rem;
}
.card-hook{
  font-family:'Crimson Pro',serif;
  font-size:1.05rem;font-weight:400;
  color:rgba(232,240,248,0.78);
  line-height:1.8;
}

.card-footer{
  display:flex;align-items:center;justify-content:space-between;
  padding:1.25rem 2rem 1.75rem;
  margin-top:1.25rem;
  border-top:1px solid rgba(255,255,255,0.06);
}
.card-read{
  font-family:'DM Sans',sans-serif;
  font-size:10px;font-weight:600;letter-spacing:2px;text-transform:uppercase;
}
.reef .card-read{color:var(--reef2);}
.bleach .card-read{color:var(--bleach2);}
.intruder .card-read{color:var(--intruder2);}
.shark .card-read{color:var(--shark2);}
.human .card-read{color:var(--human2);}

.card-arrow{
  width:32px;height:32px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,0.08);
  border:1px solid rgba(255,255,255,0.18);
  transition:background .2s,border-color .2s,transform .2s;
}
.card-arrow svg{color:rgba(232,240,248,0.62);}
.reef .card-arrow{border-color:rgba(29,158,117,0.32);}
.reef .card-arrow svg{color:var(--reef2);}
.bleach .card-arrow{border-color:rgba(239,159,39,0.32);}
.bleach .card-arrow svg{color:var(--bleach2);}
.intruder .card-arrow{border-color:rgba(224,90,58,0.32);}
.intruder .card-arrow svg{color:var(--intruder2);}
.shark .card-arrow{border-color:rgba(42,92,138,0.32);}
.shark .card-arrow svg{color:var(--shark2);}
.human .card-arrow{border-color:rgba(90,62,138,0.32);}
.human .card-arrow svg{color:var(--human2);}
.article-card:hover .card-arrow,
.article-card:focus-visible .card-arrow{background:rgba(255,255,255,0.14);border-color:rgba(255,255,255,0.34);transform:translateX(3px);}
.article-card.reef:hover .card-arrow,
.article-card.reef:focus-visible .card-arrow{background:rgba(29,158,117,0.22);border-color:rgba(95,212,176,0.7);}
.article-card.reef:hover .card-arrow svg,
.article-card.reef:focus-visible .card-arrow svg{color:#fff;}
.article-card.bleach:hover .card-arrow,
.article-card.bleach:focus-visible .card-arrow{background:rgba(239,159,39,0.22);border-color:rgba(250,199,117,0.7);}
.article-card.bleach:hover .card-arrow svg,
.article-card.bleach:focus-visible .card-arrow svg{color:#fff;}
.article-card.intruder:hover .card-arrow,
.article-card.intruder:focus-visible .card-arrow{background:rgba(224,90,58,0.22);border-color:rgba(244,165,138,0.7);}
.article-card.intruder:hover .card-arrow svg,
.article-card.intruder:focus-visible .card-arrow svg{color:#fff;}
.article-card.shark:hover .card-arrow,
.article-card.shark:focus-visible .card-arrow{background:rgba(42,92,138,0.22);border-color:rgba(122,176,216,0.7);}
.article-card.shark:hover .card-arrow svg,
.article-card.shark:focus-visible .card-arrow svg{color:#fff;}
.article-card.human:hover .card-arrow,
.article-card.human:focus-visible .card-arrow{background:rgba(90,62,138,0.22);border-color:rgba(184,160,240,0.7);}
.article-card.human:hover .card-arrow svg,
.article-card.human:focus-visible .card-arrow svg{color:#fff;}


.teaches{background:var(--paper);padding:5rem 2.5rem;}
.teaches-inner{max-width:820px;margin:0 auto;}
.teaches-eyebrow{
  font-family:'DM Sans',sans-serif;
  font-size:10px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;
  color:var(--teal);margin-bottom:.75rem;
}
.teaches-heading{
  font-family:'Crimson Pro',serif;
  font-size:clamp(1.7rem,3vw,2.6rem);
  font-weight:300;color:var(--ink);
  line-height:1.1;letter-spacing:-.3px;margin-bottom:1.5rem;
}
.teaches-body{
  font-family:'Crimson Pro',serif;
  font-size:1.2rem;font-weight:400;
  color:var(--ink-light);line-height:1.9;margin-bottom:1.25rem;
}
.teaches-body:last-child{margin-bottom:0;}
.teaches-body em{font-style:italic;color:var(--ink);}
.teaches-body strong{font-weight:600;color:var(--ink);}


.section-nav{background:var(--deep2);border-top:1px solid var(--rule-dark);padding:3.5rem 2.5rem;}
.section-nav-inner{max-width:820px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:2rem;}
.section-nav-item{display:flex;flex-direction:column;gap:.4rem;}
.section-nav-item.next{text-align:right;align-items:flex-end;}
.section-nav-label{font-family:'DM Sans',sans-serif;font-size:10px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:rgba(232,240,248,0.3);}
.section-nav-title{font-family:'Crimson Pro',serif;font-size:1.35rem;font-weight:300;color:#fff;letter-spacing:-.1px;}
.section-nav-link{display:inline-flex;align-items:center;gap:.5rem;font-family:'DM Sans',sans-serif;font-size:11px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--emerald2);text-decoration:none;margin-top:.5rem;transition:gap .2s;}
.section-nav-link:hover{gap:.8rem;}
.section-nav-link svg{width:13px;height:13px;}


.site-footer{background:var(--deep2);border-top:1px solid var(--rule-dark);}
.footer-inner{max-width:1100px;margin:0 auto;padding:2.5rem 2.5rem;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;}
.footer-brand{font-family:'Crimson Pro',serif;font-size:20px;font-weight:400;color:rgba(232,240,248,0.5);}
.footer-brand span{color:var(--teal);font-style:italic;}
.footer-links{display:flex;gap:1.5rem;flex-wrap:wrap;align-items:center;}
.footer-links a{font-family:'DM Sans',sans-serif;font-size:13px;color:rgba(232,240,248,0.3);text-decoration:none;transition:color .2s;}
.footer-links a:hover{color:rgba(232,240,248,0.7);}
.footer-dan{color:var(--teal) !important;font-weight:600;}
.footer-copy{font-family:'DM Sans',sans-serif;font-size:12px;color:rgba(232,240,248,0.2);width:100%;margin-top:.25rem;}


@media(min-width:640px){
  .hero{padding:6rem 2rem 4.5rem;}
  .articles{padding:4rem 2rem;}
  .teaches{padding:4rem 2rem;}
  .section-nav{padding:3rem 2rem;}
  .footer-notify{padding:2.5rem 2rem;}
  .footer-cols{grid-template-columns:1fr 1fr;padding:2.5rem 2rem;}
  .footer-bot{padding:1.5rem 2rem;}
}
@media(min-width:900px){
  .article-grid{grid-template-columns:1fr 1fr;}
  .hero{padding:8rem 2.5rem 6rem;}
  .articles{padding:5rem 2.5rem;}
  .teaches{padding:5rem 2.5rem;}
  .section-nav{padding:4rem 2.5rem;}
  .footer-notify{padding:3rem 2.5rem;}
  .footer-cols{grid-template-columns:repeat(4,1fr);padding:3rem 2.5rem;}
  .footer-bot{padding:1.5rem 2.5rem;}
}
