/* pelagic-encounters-trip — migrated from SCUBA DIVER NETWORK - NEW ARTICTURE */

*{margin:0;padding:0;box-sizing:border-box;}
:root{
  --midnight:#040d14;--midnight2:#060f1a;--midnight3:#081220;
  --cool:#eef3f8;--cool2:#e4ecf4;
  --ink:#0a1e2e;--ink-light:#1a3a4e;--ink-faint:#3a6a7e;
  --phosphor:#2dd4a0;--phosphor2:#7eecd0;--phosphor3:rgba(45,212,160,0.12);
  --teal:#1a9bb5;--teal2:#7dd3e8;
  --rule-dark:rgba(255,255,255,0.07);--rule-cool:rgba(0,0,0,0.08);--rule-phosphor:rgba(45,212,160,0.25);
}
html{scroll-behavior:smooth;}
body{font-family:'Crimson Pro',serif;background:var(--cool);color:var(--ink);overflow-x:hidden;}
#reading-progress{position:fixed;top:0;left:0;width:0%;height:2px;background:var(--phosphor);z-index:1000;transition:width .1s linear;}
.skip-link{position:absolute;top:-100%;left:1rem;background:var(--phosphor);color:#040d14;font-family:'Crimson Pro',serif;font-size:14px;font-weight:600;padding:.5rem 1rem;border-radius:0 0 8px 8px;text-decoration:none;z-index:2000;transition:top .2s;}
.skip-link:focus{top:0;}
a:focus-visible,button:focus-visible{outline:2px solid var(--phosphor);outline-offset:2px;}
.topbar{position:fixed;top:0;left:0;right:0;z-index:500;background:rgba(4,13,20,0.96);backdrop-filter:blur(20px);border-bottom:1px solid var(--rule-dark);height:56px;display:flex;align-items:center;justify-content:space-between;padding:0 1.25rem;gap:1rem;transition:background .3s;}
.topbar.scrolled{background:rgba(4,13,20,1);}
.logo{font-family:'Crimson Pro',serif;font-size:24px;font-weight:400;color:#fff;letter-spacing:-.2px;text-decoration:none;flex-shrink:0;}
.logo span{color:var(--teal);font-style:italic;}
.breadcrumb{display:none;font-family:'Crimson Pro',serif;font-size:13px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,0.55);white-space:nowrap;overflow:hidden;min-width:0;}
.bc-sep{color:rgba(255,255,255,0.25);margin:0 2px;flex-shrink:0;}
.bc-current{color:var(--phosphor2);overflow:hidden;text-overflow:ellipsis;}
.bc-link{color:rgba(255,255,255,0.55);text-decoration:none;transition:color .2s;}
.bc-link:hover{color:#fff;}
.hero{background:var(--midnight);min-height:92vh;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden;padding:5rem 2.5rem 5.5rem;}
.hero-texture{position:absolute;inset:0;background:radial-gradient(ellipse 70% 50% at 10% 70%,rgba(45,212,160,0.05) 0%,transparent 65%),radial-gradient(ellipse 50% 60% at 90% 20%,rgba(26,155,181,0.04) 0%,transparent 65%),radial-gradient(ellipse 90% 40% at 50% 100%,rgba(4,13,20,0.9) 0%,transparent 55%);pointer-events:none;}
.hero-ghost-num{position:absolute;bottom:-3rem;right:-2rem;font-family:'Crimson Pro',serif;font-size:clamp(18rem,38vw,34rem);font-weight:200;color:rgba(255,255,255,0.018);line-height:1;user-select:none;pointer-events:none;letter-spacing:-12px;}
.hero-inner{position:relative;z-index:2;max-width:820px;margin:0 auto;width:100%;}
.hero-label{font-family:'Crimson Pro',serif;font-size:13px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--phosphor);margin-bottom:1.5rem;display:flex;align-items:center;gap:12px;opacity:0;animation:fadeUp .8s ease .2s forwards;}
.hero-label-line{width:28px;height:1px;background:var(--phosphor);opacity:.45;}
.hero-title{font-family:'Crimson Pro',serif;font-size:clamp(2.8rem,8vw,7.5rem);font-weight:200;line-height:.9;letter-spacing:-3px;color:#ffffff;margin-bottom:1.25rem;opacity:0;animation:fadeUp .9s ease .35s forwards;}
.hero-title em{font-style:italic;color:var(--phosphor2);display:block;}
.hero-caption{font-family:'Crimson Pro',serif;font-size:clamp(1.1rem,2vw,1.5rem);font-weight:300;font-style:italic;color:rgba(126,236,208,0.85);margin-bottom:2.5rem;opacity:0;animation:fadeUp .9s ease .5s forwards;}
.hero-rule{width:48px;height:1px;background:var(--rule-phosphor);margin-bottom:1.5rem;opacity:0;animation:fadeUp .9s ease .6s forwards;}
.hero-opening{font-size:19px;font-weight:400;color:rgba(232,240,248,0.75);max-width:540px;line-height:1.8;opacity:0;animation:fadeUp .9s ease .7s forwards;}
.wave{display:block;width:100%;line-height:0;}
.article{background:var(--cool);padding:0 2.5rem;}
#article-body{scroll-margin-top:70px;}
.article-inner{max-width:700px;margin:0 auto;padding:5rem 0 6rem;}
.section{margin-bottom:4rem;}
.section-header{margin-bottom:2rem;padding-bottom:1.25rem;border-bottom:1px solid var(--rule-cool);position:relative;}
.section-header::after{content:'';position:absolute;bottom:-1px;left:0;width:32px;height:1px;background:var(--phosphor);}
.section-num{font-family:'Crimson Pro',serif;font-size:13px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--ink-faint);margin-bottom:.5rem;display:block;}
.section-title{font-family:'Crimson Pro',serif;font-size:clamp(1.7rem,3vw,2.3rem);font-weight:300;color:var(--ink);line-height:1.1;letter-spacing:-.3px;}
.section p{font-size:19px;font-weight:400;color:var(--ink-light);line-height:1.9;margin-bottom:1.5rem;}
.section p:last-child{margin-bottom:0;}
.section p strong{font-weight:600;color:var(--ink);}
.pull-quote{margin:2.5rem 0;padding:0 0 0 1.5rem;border-left:2px solid var(--phosphor);}
.pull-quote-text{font-family:'Crimson Pro',serif;font-size:1.5rem;font-weight:300;font-style:italic;color:var(--ink);line-height:1.5;}
.reality-check{background:var(--midnight);border-radius:16px;padding:2.5rem 2.75rem;margin:2.5rem 0;position:relative;overflow:hidden;}
.reality-check::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--phosphor),rgba(45,212,160,0));}
.rc-label{font-family:'Crimson Pro',serif;font-size:13px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--phosphor);opacity:.7;margin-bottom:1rem;}
.rc-text{font-family:'Crimson Pro',serif;font-size:1.2rem;font-weight:300;font-style:italic;color:rgba(232,240,248,0.8);line-height:1.65;}
.rc-text strong{color:var(--phosphor2);font-style:normal;font-weight:400;}
.encounter-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--rule-cool);border:1px solid var(--rule-cool);border-radius:14px;overflow:hidden;margin:2rem 0;}
.enc-cell{background:var(--cool);padding:1.5rem 1.75rem;}
.enc-species{font-family:'Crimson Pro',serif;font-size:1.15rem;font-weight:400;color:var(--ink);margin-bottom:.3rem;}
.enc-where{font-family:'Crimson Pro',serif;font-size:13px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--phosphor);margin-bottom:.4rem;}
.enc-note{font-size:14px;font-weight:400;color:var(--ink-faint);line-height:1.6;}
.article-rule{width:100%;height:1px;background:var(--rule-cool);margin:3.5rem 0;}
.connected{background:var(--midnight);padding:4rem 2.5rem;}
.connected-inner{max-width:700px;margin:0 auto;}
.connected-label{font-family:'Crimson Pro',serif;font-size:13px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:rgba(45,212,160,0.5);margin-bottom:2rem;}
.connected-item{padding:1.25rem 0;border-bottom:1px solid rgba(255,255,255,0.06);text-decoration:none;display:block;transition:all .2s;}
.connected-item:last-child{border-bottom:none;}
.connected-item:hover h3{color:var(--phosphor2);}
h3.connected-title{font-family:'Crimson Pro',serif;font-size:1.2rem;font-weight:300;color:rgba(232,240,248,0.85);margin-bottom:.4rem;transition:color .2s;}
.connected-desc{font-size:17px;font-weight:400;color:rgba(232,240,248,0.65);line-height:1.6;}
.site-footer{background:var(--midnight2);padding:2.5rem;border-top:1px solid var(--rule-dark);}
.footer-inner{max-width:700px;margin:0 auto;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.70);}
.footer-brand span{color:var(--teal);font-style:italic;}
.footer-links{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap;}
.footer-links a{font-size:16px;font-weight:400;color:rgba(232,240,248,0.55);text-decoration:none;transition:color .2s;}
.footer-links a:hover{color:rgba(232,240,248,0.9);}
.footer-dan{color:var(--phosphor) !important;font-weight:600 !important;}
.footer-copy{font-size:14px;font-weight:400;color:rgba(232,240,248,0.40);font-family:'Crimson Pro',serif;width:100%;margin-top:.5rem;}
@keyframes fadeUp{from{opacity:0;transform:translateY(20px);}to{opacity:1;transform:translateY(0);}}
.reveal{opacity:0;transform:translateY(20px);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;}
.ham-btn{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:38px;height:38px;background:none;border:none;cursor:pointer;padding:4px;border-radius:8px;transition:background .2s;-webkit-tap-highlight-color:transparent;}
.ham-btn:hover{background:rgba(255,255,255,0.08);}
.ham-btn span{display:block;width:22px;height:2px;background:#fff;border-radius:2px;transition:transform .3s ease,opacity .3s ease,width .3s ease;transform-origin:center;}
.ham-btn.open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.ham-btn.open span:nth-child(2){opacity:0;width:0;}
.ham-btn.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
.nav-drawer{position:fixed;top:0;right:0;bottom:0;width:min(320px,85vw);background:#07121e;z-index:600;transform:translateX(100%);transition:transform .35s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;border-left:1px solid rgba(255,255,255,0.08);overflow-y:auto;}
.nav-drawer.open{transform:translateX(0);}
.nav-overlay{position:fixed;inset:0;background:rgba(0,0,0,0);z-index:590;pointer-events:none;transition:background .35s ease;}
.nav-overlay.open{background:rgba(0,0,0,0.6);pointer-events:all;}
.drawer-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid rgba(255,255,255,0.07);flex-shrink:0;}
.drawer-logo{font-family:'Crimson Pro',serif;font-size:22px;font-weight:400;color:#fff;text-decoration:none;letter-spacing:-.2px;}
.drawer-logo span{color:#1a9bb5;font-style:italic;}
.drawer-close{width:36px;height:36px;background:none;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:8px;color:rgba(255,255,255,0.5);transition:all .2s;font-size:22px;line-height:1;}
.drawer-close:hover{background:rgba(255,255,255,0.08);color:#fff;}
.drawer-nav{padding:1rem 0;flex:1;}
.drawer-section{margin-bottom:.5rem;}
.drawer-section-label{font-family:'Crimson Pro',serif;font-size:13px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,0.35);padding:.75rem 1.5rem .4rem;display:block;}
.drawer-link{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.5rem;text-decoration:none;font-size:16px;font-weight:400;color:rgba(255,255,255,0.75);transition:all .2s;border-left:2px solid transparent;}
.drawer-link:hover{color:#fff;background:rgba(255,255,255,0.05);border-left-color:#1a9bb5;}
.drawer-link.active{color:#fff;border-left-color:#1a9bb5;background:rgba(26,155,181,0.08);}
.drawer-link svg{opacity:.3;flex-shrink:0;}
.drawer-link:hover svg{opacity:.7;}
.drawer-divider{height:1px;background:rgba(255,255,255,0.06);margin:.5rem 1.5rem;}
.drawer-dan{padding:1.25rem 1.5rem;border-top:1px solid rgba(255,255,255,0.07);flex-shrink:0;}
.drawer-dan a{display:flex;align-items:center;gap:.5rem;font-size:13px;font-weight:500;color:#1a9bb5;text-decoration:none;}
.drawer-dan a:hover{color:#7dd3e8;}
@media(max-width:640px){
  .breadcrumb{display:none;}
  .topbar{padding:0 1.25rem;}
  .hero{padding:4rem 1.25rem;}
  .article{padding:0 1.25rem;}
  .connected{padding:3rem 1.25rem;}
  .site-footer{padding:2rem 1.25rem;}
  .pull-quote-text{font-size:1.25rem;}
}
@media(min-width:640px){
  body{padding-top:60px;}
  .topbar{height:60px;padding:0 2rem;}
  .breadcrumb{display:flex;align-items:center;gap:8px;}
}
@media(min-width:900px){
  body{padding-top:64px;}
  .topbar{height:64px;padding:0 2.5rem;}
  .ham-btn{display:none;}
}
  .topbar{padding:0 1.5rem;}
  .hero{padding:4rem 1.5rem;}
  .article{padding:0 1.5rem;}
  .connected{padding:3rem 1.5rem;}
  .site-footer{padding:2rem 1.5rem;}
  .pull-quote-text{font-size:1.25rem;}
  .encounter-grid{grid-template-columns:1fr;}
}
