/* liveaboards — migrated from SCUBA DIVER NETWORK - NEW ARTICTURE */

*{margin:0;padding:0;box-sizing:border-box;}
:root{
  --deep:#061a1f;--deep2:#082028;--deep3:#0a2530;
  --warm:#f2ede6;--warm2:#e8e1d8;
  --ink:#1a2e35;--ink-light:#3a5560;--ink-faint:#6a8a92;
  --amber:#c9932a;--amber2:#e8b86a;--amber3:rgba(201,147,42,0.15);
  --amber-rule:rgba(201,147,42,0.3);
  --teal:#1a9bb5;--teal2:#7dd3e8;
  --rule-dark:rgba(255,255,255,0.07);--rule-warm:rgba(0,0,0,0.09);
}
html{scroll-behavior:smooth;}
body{font-family:'DM Sans',sans-serif;background:var(--deep);color:#e8f0f8;overflow-x:hidden;}


.hero{
  position:relative;
  min-height:92vh;
  display:flex;flex-direction:column;justify-content:flex-end;
  background:var(--deep);
  overflow:hidden;
  padding:8rem 2.5rem 5.5rem;
}
.hero-bg-text{
  position:absolute;
  top:50%;left:50%;
  transform:translate(-50%,-52%);
  font-family:'Crimson Pro',serif;
  font-size:clamp(10rem,24vw,22rem);
  font-weight:200;
  color:rgba(255,255,255,0.022);
  line-height:1;
  white-space:nowrap;
  user-select:none;pointer-events:none;
  letter-spacing:-6px;
}
.hero-glow{
  position:absolute;bottom:0;left:0;right:0;height:65%;
  background:
    radial-gradient(ellipse 70% 60% at 20% 100%,rgba(201,147,42,0.06) 0%,transparent 70%),
    radial-gradient(ellipse 50% 40% at 80% 80%,rgba(26,155,181,0.04) 0%,transparent 70%);
  pointer-events:none;
}
.hero-inner{position:relative;z-index:2;max-width:1100px;margin:0 auto;width:100%;}
.hero-kicker{
  display:flex;align-items:center;gap:12px;
  font-family:'DM Mono',monospace;
  font-size:10px;font-weight:300;
  letter-spacing:3px;text-transform:uppercase;
  color:var(--amber2);
  margin-bottom:1.75rem;
  opacity:0;animation:fadeUp .8s ease .15s forwards;
}
.hero-kicker-line{width:28px;height:1px;background:var(--amber);opacity:.5;}
.hero-title{
  font-family:'Crimson Pro',serif;
  font-size:clamp(3.5rem,9vw,8.5rem);
  font-weight:200;
  line-height:.9;
  letter-spacing:-3px;
  color:#ffffff;
  margin-bottom:1.5rem;
  opacity:0;animation:fadeUp .9s ease .3s forwards;
}
.hero-title em{font-style:italic;color:var(--amber2);}
.hero-rule{width:56px;height:1px;background:var(--amber-rule);margin-bottom:1.5rem;opacity:0;animation:fadeUp .9s ease .45s forwards;}
.hero-sub{
  font-family:'Crimson Pro',serif;
  font-size:clamp(1.1rem,2vw,1.5rem);
  font-weight:300;font-style:italic;
  color:rgba(232,184,106,0.6);
  max-width:580px;line-height:1.6;
  margin-bottom:2.5rem;
  opacity:0;animation:fadeUp .9s ease .55s forwards;
}
.hero-meta{
  display:flex;align-items:center;gap:2rem;
  opacity:0;animation:fadeUp .9s ease .7s forwards;
}
.hero-meta-item{display:flex;flex-direction:column;gap:3px;}
.hero-meta-val{font-family:'Crimson Pro',serif;font-size:2rem;font-weight:200;color:#fff;line-height:1;}
.hero-meta-label{font-family:'DM Mono',monospace;font-size:9px;font-weight:300;letter-spacing:2.5px;text-transform:uppercase;color:rgba(232,240,248,0.3);}
.hero-meta-sep{width:1px;height:36px;background:rgba(255,255,255,0.1);align-self:center;}


.wave{display:block;width:100%;line-height: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;}.rd5{transition-delay:.5s;}


.conviction{background:var(--warm);padding:5rem 2.5rem;}
.conviction-inner{max-width:760px;margin:0 auto;}
.conviction-label{
  font-family:'DM Mono',monospace;font-size:9px;font-weight:300;
  letter-spacing:3px;text-transform:uppercase;
  color:var(--amber);margin-bottom:1.25rem;
  display:flex;align-items:center;gap:10px;
}
.conviction-rule{width:20px;height:1px;background:var(--amber);opacity:.5;}
.conviction-heading{
  font-family:'Crimson Pro',serif;
  font-size:clamp(1.8rem,3.5vw,2.6rem);
  font-weight:300;color:var(--ink);
  line-height:1.1;letter-spacing:-.3px;
  margin-bottom:1.25rem;
}
.conviction-body{font-size:17px;font-weight:300;color:var(--ink-light);line-height:1.85;}


.guides-sec{background:var(--deep);padding:5.5rem 2.5rem 6rem;}
.guides-inner{max-width:1100px;margin:0 auto;}
.guides-header{margin-bottom:3.5rem;}
.guides-label{font-family:'DM Mono',monospace;font-size:10px;font-weight:500;letter-spacing:3px;text-transform:uppercase;color:var(--amber2);margin-bottom:.5rem;}
.guides-heading{font-family:'Crimson Pro',serif;font-size:clamp(1.6rem,3vw,2.4rem);font-weight:300;color:#fff;letter-spacing:-.3px;}


.arc-phase{margin-bottom:3rem;}
.arc-phase-label{
  display:flex;align-items:center;gap:12px;
  font-family:'DM Mono',monospace;
  font-size:9px;font-weight:300;
  letter-spacing:3px;text-transform:uppercase;
  color:rgba(232,184,106,0.88);
  margin-bottom:1.25rem;
  padding-bottom:.75rem;
  border-bottom:1px solid rgba(201,147,42,0.12);
}
.arc-phase-line{flex:1;height:1px;background:rgba(201,147,42,0.08);}


.guide-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1px;
  background:rgba(255,255,255,0.04);
  border-radius:18px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,0.05);
  margin-bottom:1px;
}
.guide-grid.single{grid-template-columns:1fr;}

.guide-card{
  background:var(--deep2);
  padding:2.5rem 2.75rem;
  text-decoration:none;
  display:block;
  position:relative;
  transition:background .25s;
  overflow:hidden;
}
.guide-card::before{
  content:'';
  position:absolute;
  bottom:0;left:0;right:0;
  height:2px;
  background:linear-gradient(90deg,var(--amber),var(--amber2));
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .35s ease;
}
.guide-card:hover{background:var(--deep3);}
.guide-card:hover::before{transform:scaleX(1);}
.guide-card:hover .gc-title{color:var(--amber2);}

.gc-ghost{
  position:absolute;
  top:1rem;right:1.5rem;
  font-family:'Crimson Pro',serif;
  font-size:5rem;font-weight:200;
  color:rgba(255,255,255,0.03);
  line-height:1;user-select:none;pointer-events:none;
  letter-spacing:-3px;
}
.gc-num{
  font-family:'DM Mono',monospace;
  font-size:10px;font-weight:500;
  letter-spacing:2.5px;text-transform:uppercase;
  color:var(--amber2);
  margin-bottom:.85rem;
}
.gc-title{
  font-family:'Crimson Pro',serif;
  font-size:clamp(1.4rem,2.2vw,1.85rem);
  font-weight:300;color:#fff;
  line-height:1.1;letter-spacing:-.2px;
  margin-bottom:.45rem;
  transition:color .2s;
}
.gc-caption{
  font-family:'Crimson Pro',serif;
  font-size:.95rem;font-weight:300;font-style:italic;
  color:rgba(232,184,106,0.88);
  margin-bottom:1rem;
}
.gc-opening{
  font-size:13px;font-weight:300;
  color:rgba(232,240,248,0.38);
  line-height:1.75;
  max-width:400px;
}
.gc-arrow{
  display:inline-flex;align-items:center;gap:.5rem;
  margin-top:1.5rem;
  font-family:'DM Mono',monospace;
  font-size:10px;font-weight:500;
  letter-spacing:2px;text-transform:uppercase;
  color:var(--amber2);opacity:.88;
  transition:opacity .2s,gap .2s;
}
.guide-card:hover .gc-arrow{opacity:1;gap:.75rem;}

/* Full width card for solo guide */
.guide-card.full{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:2rem;
  align-items:center;
}
.gc-full-right{
  display:flex;flex-direction:column;align-items:flex-end;justify-content:center;
}
.gc-series-note{
  font-family:'Crimson Pro',serif;
  font-size:1.1rem;font-weight:300;font-style:italic;
  color:rgba(232,240,248,0.18);
  text-align:right;line-height:1.6;
  max-width:280px;
}


.position-sec{background:var(--warm);padding:5rem 2.5rem;}
.position-inner{max-width:680px;margin:0 auto;}
.position-label{
  font-family:'DM Mono',monospace;font-size:9px;font-weight:300;
  letter-spacing:3px;text-transform:uppercase;
  color:var(--amber);margin-bottom:1rem;
  display:flex;align-items:center;gap:10px;
}
.position-rule{width:20px;height:1px;background:var(--amber);opacity:.5;}
.position-heading{
  font-family:'Crimson Pro',serif;
  font-size:clamp(2rem,4vw,3rem);
  font-weight:300;color:var(--ink);
  line-height:1.1;letter-spacing:-.3px;
  margin-bottom:1.25rem;
}
.position-body{font-size:18px;font-weight:300;color:var(--ink-light);line-height:1.85;}


.site-footer{background:var(--deep2);border-top:1px solid var(--rule-dark);}
.footer-notify{display:flex;align-items:center;justify-content:space-between;gap:2rem;flex-wrap:wrap;padding:2.5rem 2.5rem;border-bottom:1px solid var(--rule-dark);}
.footer-notify-headline{font-family:'Crimson Pro',serif;font-size:1.25rem;font-weight:300;color:#e8f0f8;margin-bottom:.35rem;}
.footer-notify-sub{font-size:13px;font-weight:300;color:rgba(232,240,248,0.35);line-height:1.6;}
.fnl{color:var(--amber2);text-decoration:none;}
.fnl:hover{text-decoration:underline;}
.footer-notify-form{display:flex;gap:.5rem;flex-shrink:0;}
.footer-notify-input{padding:10px 16px;border-radius:8px;border:1px solid rgba(255,255,255,0.12);background:rgba(255,255,255,0.05);color:#e8f0f8;font-size:14px;font-family:'DM Sans',sans-serif;font-weight:300;width:240px;outline:none;transition:border-color .2s;}
.footer-notify-input:focus{border-color:var(--amber-rule);}
.footer-notify-input::placeholder{color:rgba(232,240,248,0.3);}
.footer-notify-btn{padding:10px 20px;border-radius:8px;background:var(--amber);color:#fff;border:none;cursor:pointer;font-size:13px;font-weight:500;font-family:'DM Sans',sans-serif;transition:background .2s;white-space:nowrap;}
.footer-notify-btn:hover{background:#b8821f;}
.footer-cols{display:grid;grid-template-columns:2fr 1fr 1fr;gap:2rem;padding:2.5rem 2.5rem;border-bottom:1px solid var(--rule-dark);}
.footer-brand-name{font-family:'Crimson Pro',serif;font-size:22px;font-weight:400;color:#e8f0f8;margin-bottom:.4rem;}
.footer-brand-name span{color:var(--teal);font-style:italic;}
.footer-brand-tag{font-size:13px;font-weight:300;color:rgba(232,240,248,0.35);line-height:1.6;max-width:280px;}
.footer-col-head{font-family:'DM Mono',monospace;font-size:9px;font-weight:300;letter-spacing:2.5px;text-transform:uppercase;color:rgba(232,240,248,0.3);margin-bottom:.85rem;}
.footer-col-links{display:flex;flex-direction:column;gap:.4rem;}
.footer-col-links a{font-size:13px;font-weight:300;color:rgba(232,240,248,0.5);text-decoration:none;transition:color .2s;}
.footer-col-links a:hover{color:#fff;}
.footer-bot{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;padding:1.5rem 2.5rem;}
.footer-bot-left{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap;}
.footer-copy{font-size:12px;font-weight:300;color:rgba(232,240,248,0.3);}
.footer-policy{display:flex;gap:1.25rem;}
.footer-policy a{font-size:12px;font-weight:300;color:rgba(232,240,248,0.3);text-decoration:none;transition:color .2s;}
.footer-policy a:hover{color:#e8f0f8;}
.footer-dan{color:var(--amber) !important;font-weight:500 !important;}
.footer-dp{font-size:12px;font-weight:300;color:rgba(232,240,248,0.3);}
.footer-dp strong{color:rgba(232,240,248,0.5);font-weight:500;}


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


@media(min-width:640px){
  body{padding-top:60px;}
  .topbar{height:60px;padding:0 2rem;}
  .hero{padding:6rem 2rem 4rem;}
  .conviction{padding:4rem 2rem;}
  .guides-sec{padding:5rem 2rem 6rem;}
  .position-sec{padding:4rem 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){
  body{padding-top:64px;}
  .topbar{height:64px;padding:0 2.5rem;}
  .ham-btn{display:none;}
  .guide-grid{grid-template-columns:1fr 1fr;}
  .hero{padding:8rem 2.5rem 5.5rem;}
  .conviction{padding:5rem 2.5rem;}
  .guides-sec{padding:6rem 2.5rem 7rem;}
  .position-sec{padding:5rem 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;}
}
.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:20px;height:2px;background:rgba(255,255,255,0.75);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-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;}
.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);}
.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{font-size:13px;font-weight:500;color:#1a9bb5;text-decoration:none;}
.drawer-dan a:hover{color:#7dd3e8;}
