/* liveaboard-gear-guide — migrated from SCUBA DIVER NETWORK - NEW ARTICTURE */

*{margin:0;padding:0;box-sizing:border-box;}
:root{
  --d-bg:#07121e;--d-bg2:#0c1d2e;--d-bg3:#0f2236;
  --d-border:rgba(255,255,255,0.07);--d-border2:rgba(255,255,255,0.15);
  --d-text:#e8f0f8;--d-text2:rgba(232,240,248,0.62);--d-text3:rgba(232,240,248,0.35);
  --d-card:rgba(255,255,255,0.04);--d-card-h:rgba(255,255,255,0.07);
  --l-bg:#f4f8fb;--l-bg2:#ffffff;--l-bg3:#e8f1f8;
  --l-border:rgba(0,0,0,0.08);--l-border2:rgba(0,0,0,0.16);
  --l-text:#0c1e2e;--l-text2:#3a5060;--l-text3:#5a7a8a;
  --l-card:#ffffff;--l-card-h:#f0f7fb;
  --accent:#1a9bb5;--accent2:#7dd3e8;--accent-dk:#0e6b8c;
  --wb:#2a7fc4;--wb2:#a8d4f0;
  --gear-gold:#c9a227;--gear-gold2:#f0d27a;--gear-gold-bright:#f5dc7a;
  --guide:#0e8c6b;--guide2:#5fd4b0;--guide3:rgba(14,140,107,0.12);
}
html{scroll-behavior:smooth;}
body{font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.75;overflow-x:hidden;background:#07121e;padding-top:68px;}

.sec-dark{background:var(--d-bg);--bg:var(--d-bg);--bg2:var(--d-bg2);--bg3:var(--d-bg3);--border:var(--d-border);--border2:var(--d-border2);--text:var(--d-text);--text2:var(--d-text2);--text3:var(--d-text3);--card:var(--d-card);--card-h:var(--d-card-h);color:var(--d-text);overflow:hidden;}
.sec-light{background:var(--l-bg);--bg:var(--l-bg);--bg2:var(--l-bg2);--bg3:var(--l-bg3);--border:var(--l-border);--border2:var(--l-border2);--text:var(--l-text);--text2:var(--l-text2);--text3:var(--l-text3);--card:var(--l-card);--card-h:var(--l-card-h);color:var(--l-text);overflow:hidden;}

.reveal{opacity:1;transform:translateY(0);transition:opacity .65s ease,transform .65s ease;width:100%;box-sizing:border-box;}
.reveal.animate{opacity:0;transform:translateY(24px);}
.reveal.animate.visible{opacity:1;transform:translateY(0);}

.guide-hero{position:relative;height:calc(92svh - 68px);min-height:520px;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-start;background:#020a14;}
.hero-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:1;}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(2,10,20,0.1) 0%,rgba(2,10,20,0.05) 30%,rgba(2,10,20,0.62) 65%,rgba(2,10,20,0.97) 100%);z-index:2;}
.hero-inner{position:relative;z-index:3;max-width:960px;margin:0 auto;padding:2.25rem 1.25rem 2.5rem;width:100%;}
.hero-category{display:flex;align-items:center;gap:10px;font-size:11px;font-weight:500;letter-spacing:2.5px;text-transform:uppercase;color:rgba(95,212,176,0.9);margin-bottom:.6rem;text-shadow:0 1px 8px rgba(0,0,0,0.8);}
.hero-category-dot{width:5px;height:5px;border-radius:50%;background:var(--guide);box-shadow:0 0 0 4px rgba(14,140,107,0.18),0 0 0 9px rgba(14,140,107,0.07);}
.hero-edition{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-bottom:.9rem;}
.hero-edition-pill{background:rgba(14,140,107,0.18);border:1px solid rgba(14,140,107,0.35);border-radius:20px;padding:3px 12px;font-size:11px;letter-spacing:1.5px;color:rgba(95,212,176,0.9);}
.hero-title{font-family:'Crimson Pro',serif;font-weight:300;font-size:clamp(2.6rem,6vw,4.8rem);color:white;line-height:1.05;margin-bottom:.55rem;letter-spacing:-.5px;text-shadow:0 2px 16px rgba(0,0,0,0.7);}
.hero-title em{color:var(--guide2);font-style:italic;}
.hero-title-answer{font-family:'Crimson Pro',serif;font-size:clamp(1.2rem,2.5vw,1.7rem);font-weight:300;font-style:italic;color:rgba(168,212,240,0.82);line-height:1.25;margin-bottom:.7rem;letter-spacing:.1px;text-shadow:0 1px 12px rgba(0,0,0,0.7);}
.hero-sub{font-size:17px;color:rgba(255,255,255,0.72);font-weight:300;max-width:560px;line-height:1.8;margin-bottom:1.75rem;}
.hero-badges{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:3rem;}
.hbadge{font-size:12px;font-weight:500;letter-spacing:.5px;text-transform:uppercase;padding:5px 13px;border-radius:20px;border:1px solid;backdrop-filter:blur(8px);}
.hb-gu{background:rgba(14,140,107,0.18);color:var(--guide2);border-color:rgba(14,140,107,0.35);}
.hb-bl{background:rgba(42,127,196,0.18);color:#a8d4f0;border-color:rgba(42,127,196,0.35);}
.hb-go{background:rgba(201,162,39,0.14);color:#f0d27a;border-color:rgba(201,162,39,0.3);}
.hb-rd{background:rgba(192,57,43,0.14);color:#f0a898;border-color:rgba(192,57,43,0.3);}
.wave{display:block;width:100%;line-height:0;}

.guide-nav-wrap{background:rgba(7,18,30,0.97);backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,0.08);position:sticky;top:68px;z-index:200;}
.guide-nav{max-width:960px;margin:0 auto;display:flex;overflow-x:auto;scrollbar-width:none;padding:0 1.25rem;}
.guide-nav::-webkit-scrollbar{display:none;}
.gnav{position:relative;padding:.9rem 1.4rem .75rem;font-size:14px;font-weight:400;color:rgba(255,255,255,0.5);cursor:pointer;white-space:nowrap;border-bottom:2px solid transparent;transition:color .2s;user-select:none;overflow:hidden;}
.gnav:hover{color:rgba(255,255,255,0.82);}
.gnav-fill{position:absolute;bottom:0;left:0;height:2px;width:0%;background:linear-gradient(90deg,var(--guide),var(--guide2));transition:width .12s linear;border-radius:2px;}
.gnav.done{color:rgba(255,255,255,0.65);}
.gnav.done .gnav-fill{width:100%;opacity:.55;}
.gnav.active{color:white;font-weight:500;}
.gnav.active .gnav-fill{opacity:1;}
.gnav-tick{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border-radius:50%;background:rgba(14,140,107,0.22);margin-left:6px;opacity:0;transform:scale(.6);transition:opacity .3s,transform .3s;vertical-align:middle;}
.gnav-tick svg{width:8px;height:8px;}
.gnav.done .gnav-tick{opacity:1;transform:scale(1);}

.sec{scroll-margin-top:110px;overflow:hidden;}
.sec-inner{max-width:860px;margin:0 auto;padding:3rem 1.25rem;box-sizing:border-box;width:100%;}
.sec-brand{display:flex;align-items:center;gap:1rem;margin-bottom:2.5rem;}
.sec-icon{width:50px;height:50px;border-radius:14px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border:1px solid;}
.sec-icon svg{width:25px;height:25px;}
.sec-eye{font-size:12px;font-weight:500;letter-spacing:2px;text-transform:uppercase;margin-bottom:4px;}
.sec-title{font-family:'Crimson Pro',serif;font-size:28px;font-weight:300;color:var(--text);line-height:1.1;}

.hook-body{font-family:'Crimson Pro',serif;font-size:1.32rem;font-weight:300;line-height:1.92;color:var(--text);max-width:660px;}
.hook-body p{margin-bottom:1.45rem;}
.hook-body p:last-child{margin-bottom:0;}

.pull-line{font-size:1.45rem;font-style:italic;color:var(--guide2);font-family:'Crimson Pro',serif;font-weight:300;line-height:1.55;border-left:2px solid rgba(14,140,107,0.4);padding-left:1.5rem;margin:2.25rem 0;max-width:600px;width:100%;box-sizing:border-box;}

.fact-body{font-size:17px;line-height:1.85;color:var(--text2);max-width:660px;}
.fact-body p{margin-bottom:1.3rem;}
.fact-body p:last-child{margin-bottom:0;}
.fact-body em{font-style:italic;color:var(--text);}
.fact-body strong{font-weight:500;color:var(--text);}

.fact-divider{display:flex;align-items:center;gap:1.25rem;margin:2.5rem 0;}
.fact-divider-line{flex:1;height:1px;background:var(--border);}
.fact-divider-mark{font-size:11px;font-weight:500;letter-spacing:2.5px;text-transform:uppercase;color:var(--text3);white-space:nowrap;}

.scenario-strip{border-radius:16px;padding:1.6rem 1.75rem;margin-bottom:2rem;}
.ss-eye{font-size:11px;font-weight:500;letter-spacing:2px;text-transform:uppercase;margin-bottom:.5rem;}
.ss-text{font-family:'Crimson Pro',serif;font-size:1.1rem;font-weight:300;font-style:italic;line-height:1.72;}

.gear-section{margin-bottom:2.5rem;}
.gs-head{display:flex;align-items:center;gap:.85rem;margin-bottom:1.1rem;padding-bottom:.85rem;border-bottom:1px solid var(--border);}
.gs-icon{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0;}
.gs-icon-guide{background:var(--guide3);border:1px solid rgba(14,140,107,0.25);}
.gs-icon-bl{background:rgba(42,127,196,0.12);border:1px solid rgba(42,127,196,0.22);}
.gs-icon-go{background:rgba(201,162,39,0.1);border:1px solid rgba(201,162,39,0.2);}
.gs-icon-pu{background:rgba(124,77,188,0.1);border:1px solid rgba(124,77,188,0.2);}
.gs-icon-rd{background:rgba(192,57,43,0.1);border:1px solid rgba(192,57,43,0.2);}
.gs-title{font-family:'Crimson Pro',serif;font-size:22px;font-weight:400;color:var(--text);line-height:1.1;}
.gs-sub{font-size:13px;color:var(--text3);margin-top:2px;}

.spec-req-list{display:flex;flex-direction:column;gap:.55rem;margin-bottom:1.25rem;}
.spec-req{display:flex;align-items:flex-start;gap:.85rem;padding:.85rem 1rem;border-radius:12px;border:1px solid var(--border);background:var(--card);transition:background .18s;}
.spec-req:hover{background:var(--card-h);}
.sr-indicator{width:8px;height:8px;border-radius:50%;flex-shrink:0;margin-top:.55rem;}
.sr-indicator.essential{background:var(--guide2);}
.sr-indicator.important{background:var(--gear-gold2);}
.sr-indicator.consider{background:rgba(168,212,240,0.7);}
.sr-content{flex:1;}
.sr-label{font-size:14px;font-weight:500;color:var(--text);margin-bottom:2px;display:flex;align-items:center;gap:.55rem;flex-wrap:wrap;}
.sr-tag{font-size:10px;font-weight:500;letter-spacing:1px;text-transform:uppercase;padding:2px 8px;border-radius:12px;}
.sr-tag-essential{background:rgba(14,140,107,0.15);color:var(--guide2);border:1px solid rgba(14,140,107,0.25);}
.sr-tag-important{background:rgba(201,162,39,0.1);color:var(--gear-gold2);border:1px solid rgba(201,162,39,0.2);}
.sr-tag-consider{background:rgba(42,127,196,0.1);color:#a8d4f0;border:1px solid rgba(42,127,196,0.18);}
.sr-desc{font-size:14px;color:var(--text2);line-height:1.65;}

.weight-strip{border-radius:14px;padding:1.4rem 1.6rem;margin:1.5rem 0;}
.ws-eye{font-size:11px;font-weight:500;letter-spacing:2px;text-transform:uppercase;margin-bottom:.45rem;}
.ws-text{font-size:15px;color:var(--text2);line-height:1.75;}
.ws-text strong{font-weight:500;color:var(--text);}

.gs-crosslink{display:flex;align-items:center;gap:.85rem;padding:.9rem 1.15rem;border-radius:11px;border:1px solid var(--border);background:var(--card);text-decoration:none;transition:all .22s;margin-top:.75rem;}
.gs-crosslink:hover{border-color:var(--border2);background:var(--card-h);transform:translateX(3px);}
.gs-cl-badge{font-size:10px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;padding:3px 8px;border-radius:12px;white-space:nowrap;flex-shrink:0;}
.gs-cl-text{flex:1;}
.gs-cl-title{font-size:14px;font-weight:500;color:var(--text);}
.gs-cl-sub{font-size:12px;color:var(--text3);margin-top:1px;}
.gs-cl-arrow{color:var(--text3);flex-shrink:0;font-size:16px;}

.checklist{border-radius:16px;overflow:hidden;border:1px solid var(--border);margin:1.75rem 0;}
.cl-header{padding:.85rem 1.35rem;border-bottom:1px solid var(--border);}
.cl-title{font-size:11px;font-weight:500;letter-spacing:2px;text-transform:uppercase;color:var(--text3);}
.cl-group{border-bottom:1px solid var(--border);}
.cl-group:last-child{border-bottom:none;}
.cl-group-head{padding:.7rem 1.25rem;font-size:12px;font-weight:500;letter-spacing:1px;text-transform:uppercase;display:flex;align-items:center;gap:.6rem;}
.cl-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0;}
.cl-items{padding:.5rem 0;}
.cl-item{display:flex;align-items:flex-start;gap:.85rem;padding:.55rem 1.25rem;transition:background .15s;cursor:pointer;}
.cl-item:hover{background:var(--card-h);}
.cl-check{width:16px;height:16px;border-radius:4px;border:1.5px solid var(--border2);flex-shrink:0;margin-top:2px;cursor:pointer;transition:all .18s;display:flex;align-items:center;justify-content:center;}
.cl-check.checked{border-color:var(--guide);background:var(--guide);}
.cl-check.checked::after{content:'✓';font-size:10px;color:white;font-weight:600;}
.cl-item-text{flex:1;}
.cl-item-name{font-size:14px;font-weight:500;color:var(--text);line-height:1.3;}
.cl-item-note{font-size:12px;color:var(--text3);line-height:1.5;margin-top:1px;}
.cl-progress{padding:.65rem 1.25rem;border-top:1px solid var(--border);display:flex;align-items:center;gap:.85rem;}
.cl-progress-bar-track{flex:1;height:4px;background:var(--border);border-radius:2px;overflow:hidden;}
.cl-progress-bar{height:100%;width:0%;background:linear-gradient(90deg,var(--guide),var(--guide2));border-radius:2px;transition:width .3s ease;}
.cl-progress-label{font-size:12px;color:var(--text3);white-space:nowrap;}
.cl-reset{font-size:11px;color:var(--text3);background:none;border:none;cursor:pointer;font-family:'DM Sans',sans-serif;padding:0;text-decoration:underline;transition:color .2s;}
.cl-reset:hover{color:var(--text);}

.diver-angle{border-left:3px solid rgba(14,140,107,0.45);background:rgba(14,140,107,0.05);border-radius:0 12px 12px 0;padding:1.25rem 1.5rem;margin:1.75rem 0;}
.da-eye{font-size:11px;font-weight:500;letter-spacing:2px;text-transform:uppercase;margin-bottom:.45rem;}
.da-text{font-size:16px;color:var(--text2);line-height:1.82;}
.da-text strong{font-weight:500;color:var(--text);}

.closing-band{background:linear-gradient(135deg,#07121e,#0c1c2e);border:1px solid rgba(95,212,176,0.12);border-radius:14px;padding:1.85rem 2rem;margin:2rem 0 0;}
.cb-text{font-family:'Crimson Pro',serif;font-size:1.22rem;font-weight:300;font-style:italic;color:rgba(232,240,248,0.75);line-height:1.85;margin:0;}
.cb-text strong{font-style:normal;font-weight:400;color:var(--guide2);}
.cb-final{margin-top:1.4rem;color:rgba(232,240,248,0.95);font-size:1.28rem;border-top:1px solid rgba(95,212,176,0.1);padding-top:1.35rem;}

.edition-meta{display:flex;gap:.6rem;flex-wrap:wrap;align-items:center;margin-top:2rem;}
.em-pill{font-size:12px;font-weight:500;letter-spacing:.5px;padding:4px 12px;border-radius:20px;border:1px solid;}
.em-guide{background:rgba(14,140,107,0.12);color:var(--guide2);border-color:rgba(14,140,107,0.25);}
.em-cat{background:rgba(201,162,39,0.1);color:var(--gear-gold2);border-color:rgba(201,162,39,0.22);}
.em-date{background:rgba(42,127,196,0.1);color:var(--wb2);border-color:rgba(42,127,196,0.2);}

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


@media(min-width:640px){
  body{padding-top:68px;}
  .guide-hero{height:calc(92svh - 68px);}
  .guide-nav-wrap{top:68px;}
  .hero-inner{padding:2.75rem 2rem 3rem;}
  .guide-nav{padding:0 2rem;}
  .sec-inner{padding:3.5rem 2rem;}
  .sec{scroll-margin-top:120px;}
}


@media(min-width:900px){
  body{padding-top:68px;}
  .guide-hero{height:calc(92svh - 68px);}
  .guide-nav-wrap{top:68px;}
  .hero-inner{padding:3.25rem 2.5rem 4rem;}
  .guide-nav{padding:0 2.5rem;}
  .gnav{padding:.9rem 1.4rem .75rem;font-size:14px;}
  .sec{scroll-margin-top:130px;}
  .sec-inner{padding:4rem 2.5rem;}
  .fact-body{font-size:17px;}
  .hook-body{font-size:1.32rem;}
}
