
:root{
  --navy:#0c2340;
  --deep:#07182a;
  --teal:#005c5c;
  --teal2:#0a7f82;
  --silver:#c4ced4;
  --light:#eef3f5;
  --gold:#c7a256;
  --paper:#ffffff;
  --ink:#17212b;
  --muted:#657684;
  --line:#d8e1e6;
  --shadow:0 16px 38px rgba(7,24,42,.11);
  --radius:18px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#f6f8f9;color:var(--ink);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6}
a{text-decoration:none;color:inherit}
img{display:block;max-width:100%}
button,input,select,textarea{font:inherit}
.container{max-width:1180px;margin:auto;padding:0 24px}
.notice{background:#edf2f4;border-bottom:1px solid #d8e1e6;color:#415968;font-size:13px;text-align:center;padding:7px 16px}
.header{position:sticky;top:0;z-index:50;background:rgba(12,35,64,.97);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.08)}
.nav{height:68px;display:flex;align-items:center;gap:24px}
.brand{display:flex;align-items:center;gap:11px;color:white;font-weight:900;letter-spacing:.2px}
.mark{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--silver),#f4f6f7);color:var(--navy);font-size:21px;box-shadow:inset 0 0 0 3px var(--teal)}
.navlinks{display:flex;gap:22px;flex:1;color:#dbe6eb;font-size:14px}
.navlinks a:hover{color:white}
.navbtn{border:1px solid rgba(255,255,255,.26);color:white;border-radius:9px;padding:9px 13px;font-weight:800;font-size:14px}
.hero{position:relative;min-height:640px;display:flex;align-items:center;color:white;overflow:hidden;background:var(--deep)}
.hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,24,42,.96),rgba(7,24,42,.82) 40%,rgba(7,24,42,.38) 72%,rgba(7,24,42,.08))}
.hero-inner{position:relative;z-index:2;padding:78px 24px;max-width:1180px;width:100%;margin:auto}
.kicker{display:inline-block;border:1px solid rgba(196,206,212,.45);background:rgba(0,92,92,.20);padding:6px 10px;border-radius:999px;font-size:12px;font-weight:900;letter-spacing:.55px;color:#dcebed}
.hero h1{font-family:Georgia,"Times New Roman",serif;font-size:60px;line-height:1.03;max-width:780px;margin:18px 0;color:white}
.hero p{max-width:700px;font-size:20px;color:#d8e4ea;margin:0}
.ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:10px;padding:12px 17px;font-weight:900;cursor:pointer}
.btn-primary{background:var(--teal2);color:white}
.btn-secondary{background:rgba(255,255,255,.07);color:white;border:1px solid rgba(255,255,255,.28)}
.hero-points{display:flex;gap:26px;flex-wrap:wrap;margin-top:34px;color:#b8cad4;font-size:13px}
.hero-points strong{display:block;color:white;font-size:16px}
.section{padding:70px 0}
.section h2{font-family:Georgia,"Times New Roman",serif;font-size:40px;line-height:1.12;color:var(--navy);margin:0 0 10px}
.lead{font-size:17px;color:var(--muted);max-width:780px;margin:0}
.searchbox{display:flex;gap:9px;background:white;border:1px solid var(--line);border-radius:14px;padding:9px;box-shadow:0 6px 20px rgba(7,24,42,.04);margin:28px 0}
.searchbox input{flex:1;border:0;outline:0;background:transparent;padding:10px;font-size:16px}
.searchbox button{border:0;background:var(--teal);color:white;border-radius:9px;padding:10px 15px;font-weight:800}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.card{background:white;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:0 7px 22px rgba(7,24,42,.05);transition:.22s}
.card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.thumb{height:165px;overflow:hidden;background:#dfe7ea}
.thumb img{width:100%;height:100%;object-fit:cover;transition:.35s}
.card:hover .thumb img{transform:scale(1.03)}
.card-body{padding:20px}
.tag{display:inline-block;font-size:11px;letter-spacing:.45px;font-weight:900;color:#3e5b67;background:#edf3f5;border:1px solid #d9e3e7;border-radius:999px;padding:4px 8px;margin-bottom:10px}
.card h3{margin:0 0 7px;color:var(--navy);font-size:21px}
.card p{margin:0;color:var(--muted)}
.more{display:inline-block;margin-top:13px;color:var(--teal);font-weight:900}
.band{background:linear-gradient(180deg,#edf3f5,#f9fbfc);border-top:1px solid #dbe4e8;border-bottom:1px solid #dbe4e8}
.split{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center}
.photo{border-radius:22px;overflow:hidden;box-shadow:var(--shadow);min-height:420px}
.photo img{width:100%;height:100%;min-height:420px;object-fit:cover}
.checks{display:grid;gap:13px;margin-top:24px}
.check{display:flex;gap:12px}
.check b{color:var(--navy)}
.checkmark{width:28px;height:28px;flex:0 0 28px;border-radius:50%;background:#dceced;color:var(--teal);display:grid;place-items:center;font-weight:900}
.roadmap{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:30px}
.road{position:relative;background:white;border:1px solid var(--line);border-radius:14px;padding:18px;text-align:center}
.road strong{display:block;color:var(--navy)}
.road span{display:block;font-size:12px;color:var(--muted);margin-top:4px}
.road:not(:last-child):after{content:"→";position:absolute;right:-14px;top:42%;color:var(--teal2);font-size:22px;font-weight:900;z-index:2}
.calc{background:white;border:1px solid var(--line);border-radius:20px;padding:24px;box-shadow:var(--shadow)}
.formrow{display:grid;grid-template-columns:1fr 1fr;gap:14px}
label{display:block;font-size:13px;font-weight:900;color:#3f5867;margin-bottom:5px}
input,select,textarea{width:100%;padding:11px;border:1px solid #ccd7dd;border-radius:9px;background:white}
textarea{min-height:320px;resize:vertical}
.result{display:none;margin-top:16px;background:#edf8f1;border-left:4px solid #2d7b4b;padding:13px 15px;border-radius:8px}
.result.show{display:block}
.pagehero{position:relative;min-height:430px;display:flex;align-items:end;color:white;overflow:hidden;background:var(--deep)}
.pagehero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pagehero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,24,42,.94),rgba(7,24,42,.65) 55%,rgba(7,24,42,.18))}
.pagehero-inner{position:relative;z-index:2;padding:72px 24px 52px;max-width:980px;width:100%;margin:auto}
.pagehero h1{font-family:Georgia,"Times New Roman",serif;font-size:50px;line-height:1.05;margin:14px 0 10px;color:white}
.pagehero p{max-width:760px;color:#d9e6ed;font-size:18px}
.content{max-width:980px;margin:auto;padding:48px 24px 78px}
.content h2{font-family:Georgia,"Times New Roman",serif;font-size:33px;color:var(--navy);margin:40px 0 12px}
.content h3{color:var(--navy);font-size:21px}
.note{background:#fff8e6;border-left:4px solid var(--gold);padding:14px 16px;border-radius:8px;margin:20px 0}
.source{background:#edf5f6;border-left:4px solid var(--teal);padding:14px 16px;border-radius:8px;margin:20px 0}
.steps{counter-reset:step}
.step{counter-increment:step;position:relative;background:white;border:1px solid var(--line);border-radius:14px;padding:19px 20px 19px 70px;margin:14px 0;box-shadow:0 5px 16px rgba(7,24,42,.04)}
.step:before{content:counter(step);position:absolute;left:19px;top:18px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--teal);color:white;font-weight:900}
.step h3{margin:0 0 5px}
.inline-photo{border-radius:18px;overflow:hidden;box-shadow:var(--shadow);margin:28px 0}
.inline-photo img{width:100%;max-height:460px;object-fit:cover}
.tablewrap{overflow:auto;border-radius:14px;border:1px solid var(--line);background:white}
table{width:100%;border-collapse:collapse}
th,td{padding:13px 15px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
th{background:#edf3f5;color:var(--navy)}
tr:last-child td{border-bottom:0}
.footer{background:#071828;color:#c8d5dc;padding:44px 0}
.footergrid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:32px}
.footer h4{color:white;margin-top:0}
.footer small{color:#8ea4b1}
.hidden{display:none!important}
@media(max-width:900px){
  .navlinks{display:none}
  .grid,.split,.formrow,.footergrid{grid-template-columns:1fr}
  .roadmap{grid-template-columns:1fr}
  .road:not(:last-child):after{content:"↓";right:49%;top:auto;bottom:-20px}
  .hero h1{font-size:44px}
  .pagehero h1{font-size:40px}
}

/* ---- Author, facts, traps, sources (added) ---- */
.byline{display:flex;gap:14px;align-items:center;background:white;border:1px solid var(--line);border-radius:14px;padding:14px 16px;margin:0 0 8px}
.byline strong{color:var(--navy)}
.byline span{font-size:13px;color:var(--muted)}
.avatar{width:48px;height:48px;flex:0 0 48px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:white;font-weight:900;letter-spacing:.5px;box-shadow:inset 0 0 0 3px var(--teal2)}
.avatar.lg{width:120px;height:120px;flex:0 0 120px;font-size:38px;box-shadow:inset 0 0 0 5px var(--teal2)}
.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:22px 0}
.fact{background:white;border:1px solid var(--line);border-radius:14px;padding:16px}
.fact b{display:block;font-family:Georgia,serif;font-size:28px;color:var(--navy);line-height:1.1}
.fact span{font-size:14px;color:var(--muted)}
.traps{background:#fff4f2;border:1px solid #f1d4cf;border-left:5px solid #b4483a;border-radius:12px;padding:18px 20px;margin:26px 0}
.traps h3{margin:0 0 8px;color:#8a2f24}
.traps ul{margin:0;padding-left:20px}
.traps li{margin:7px 0}
.sources{background:#edf5f6;border-left:4px solid var(--teal);border-radius:10px;padding:16px 20px;margin:26px 0}
.sources h3{margin:0 0 6px}
.sources ul{margin:0;padding-left:20px}
.sources a{color:var(--teal);font-weight:700;text-decoration:underline}
.cite{font-size:12px;font-weight:800;color:var(--teal);background:#e3f0f1;border-radius:6px;padding:1px 6px;white-space:nowrap}
.about{display:grid;grid-template-columns:auto 1fr;gap:34px;align-items:start}
.about .creds{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}
.about .creds span{background:white;border:1px solid var(--line);border-radius:999px;padding:5px 11px;font-size:13px;font-weight:800;color:var(--navy)}
.about p{max-width:720px}
@media(max-width:900px){.facts{grid-template-columns:1fr}.about{grid-template-columns:1fr}}

/* ---- CFR + Editor's Desk (added) ---- */
.article p{font-size:18px;line-height:1.75;margin:0 0 18px}
.article h2{margin-top:36px}
.dek{font-size:20px;color:var(--muted);line-height:1.6;margin:6px 0 24px}
.answerbox{background:var(--navy);color:white;border-radius:16px;padding:22px 24px;margin:24px 0}
.answerbox b{color:#8fe3e3;text-transform:uppercase;font-size:13px;letter-spacing:.08em;display:block;margin-bottom:6px}
.answerbox p{margin:0;font-size:19px;line-height:1.6;color:white}
.pullquote{border-left:4px solid var(--teal);padding:4px 0 4px 20px;margin:28px 0;font-family:Georgia,serif;font-size:24px;line-height:1.45;color:var(--navy)}
.postlist{display:grid;gap:16px;margin-top:22px}
.post{background:white;border:1px solid var(--line);border-radius:16px;padding:22px 24px;display:block}
.post:hover{border-color:var(--teal)}
.post small{color:var(--muted);font-weight:700;letter-spacing:.04em;text-transform:uppercase;font-size:12px}
.post h3{margin:6px 0 8px;font-family:Georgia,serif;font-size:24px;color:var(--navy)}
.post p{margin:0;color:var(--muted)}
.overlap{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;margin:18px 0}
.overlap div{background:white;border:1px solid var(--line);border-radius:14px;padding:16px}
.overlap b{display:block;color:var(--teal);font-size:13px;letter-spacing:.06em;margin-bottom:4px}
.overlap h4{margin:0 0 6px;color:var(--navy);font-size:17px}
.overlap p{margin:0;font-size:14px;color:var(--muted)}
.featurepair{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.feature{background:var(--navy);color:white;border-radius:20px;padding:30px;display:block}
.feature small{color:#8fe3e3;font-weight:900;letter-spacing:.08em;font-size:12px}
.feature h3{font-family:Georgia,serif;font-size:28px;margin:8px 0 10px;color:white}
.feature p{color:#cfdbe6;margin:0 0 16px}
.feature span{color:#8fe3e3;font-weight:800}
@media(max-width:900px){.overlap,.featurepair{grid-template-columns:1fr}}
.article .pullquote{font-size:24px;line-height:1.45}

/* ---- Careers + dropdown menu (added) ---- */
.navlinks{align-items:center}
.dd{position:relative}
.dd>button{background:none;border:0;color:#dbe6eb;font-size:14px;cursor:pointer;padding:0}
.dd>button:hover{color:white}
.ddmenu{display:none;position:absolute;top:100%;left:-14px;padding-top:12px;min-width:230px;z-index:60}
.ddmenu div{background:white;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);padding:8px}
.ddmenu a{display:block;color:var(--ink);padding:8px 12px;border-radius:8px;font-size:14px}
.ddmenu a:hover{background:#edf3f5;color:var(--navy)}
.ddmenu small{display:block;padding:8px 12px 2px;font-size:11px;font-weight:900;letter-spacing:.06em;color:var(--muted)}
.dd:hover .ddmenu,.dd:focus-within .ddmenu{display:block}
.vgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:28px}
.vtile{position:relative;display:block;background:var(--navy);color:white;border-radius:var(--radius);padding:26px 24px;min-height:190px;overflow:hidden;box-shadow:0 7px 22px rgba(7,24,42,.08);transition:.22s}
.vtile:before{content:"";position:absolute;right:-40px;bottom:-40px;width:160px;height:160px;border-radius:50%;background:rgba(10,127,130,.35)}
a.vtile:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.vtile .vicon{font-size:34px;line-height:1}
.vtile h3{font-family:Georgia,serif;font-size:24px;margin:12px 0 6px;color:white}
.vtile p{margin:0;color:#cfdbe6;font-size:15px;position:relative}
.vtile .go{display:inline-block;margin-top:12px;color:#8fe3e3;font-weight:900;position:relative}
.vtile.soon{background:#5b6b78}
.vtile.soon .go{color:#e3e9ed}
.seeall{display:inline-block;margin-top:22px;color:var(--teal);font-weight:900;font-size:18px}
.ladder{display:grid;gap:10px;margin:18px 0}
.rung{position:relative;background:white;border:1px solid var(--line);border-radius:14px;padding:16px 18px 16px 18px}
.rung:not(:last-child):after{content:"↓";position:absolute;left:50%;bottom:-19px;color:var(--teal2);font-weight:900;font-size:18px;z-index:2}
.rung b{color:var(--navy);font-size:18px}
.rung span{display:block;color:var(--muted);font-size:14px}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}
.chips span{background:white;border:1px solid var(--line);border-radius:999px;padding:6px 12px;font-weight:800;font-size:14px;color:var(--navy)}
.jobs{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}
.jobs div{background:white;border:1px solid var(--line);border-radius:14px;padding:16px}
.jobs h4{margin:0 0 4px;color:var(--navy);font-size:17px}
.jobs p{margin:0;font-size:15px;color:var(--muted)}
.ctaband{background:var(--navy);color:white;border-radius:20px;padding:30px;margin:36px 0 10px}
.ctaband h2{color:white!important;margin:0 0 8px!important}
.ctaband p{color:#cfdbe6;margin:0 0 18px}
.pagehero.plain{background:linear-gradient(120deg,#07182a,#0c2340 55%,#005c5c)}
@media(max-width:900px){.vgrid,.jobs{grid-template-columns:1fr}}

/* ---- Work Ashore (added) ---- */
.switch{display:inline-flex;background:white;border:1px solid var(--line);border-radius:999px;padding:5px;margin-bottom:26px}
.switch a{padding:9px 18px;border-radius:999px;font-weight:900;color:var(--navy)}
.switch a.on{background:var(--navy);color:white}
.legend{background:white;border:1px solid var(--line);border-radius:14px;padding:16px 18px;margin:0 0 18px;line-height:2}
.legend span:last-child{display:block;line-height:1.5;color:var(--muted);font-size:14px;margin-top:4px}
.jumpnav{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 10px}
.jumpnav a{background:#edf3f5;border:1px solid var(--line);border-radius:999px;padding:6px 12px;font-weight:800;font-size:14px;color:var(--navy)}
.rolecat{padding-top:34px}
.rolecat h2{font-family:Georgia,serif;font-size:32px;color:var(--navy);margin:0 0 14px}
.roles{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.role{background:white;border:1px solid var(--line);border-radius:14px;padding:18px}
.rhead{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.role h4{margin:0 0 6px;color:var(--navy);font-size:18px}
.role p{margin:0;color:var(--muted);font-size:15px}
.role .rcred{margin-top:8px;color:var(--ink)}
.rtag{display:inline-block;white-space:nowrap;font-size:11px;font-weight:900;letter-spacing:.03em;border-radius:999px;padding:3px 9px;border:1px solid}
.t-e{background:var(--navy);color:white;border-color:var(--navy)}
.t-p{background:#e3f0f1;color:var(--teal);border-color:#c4dfe0}
.t-o{background:#fff8e6;color:#8a6a1f;border-color:#ecd9a8}
.t-n{background:#f1f3f5;color:#5b6b78;border-color:#d8e1e6}
.ladders{display:grid;gap:14px}
.lrow{background:white;border:1px solid var(--line);border-radius:14px;padding:16px 18px}
.lchain{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px}
.lstep{background:#edf3f5;border-radius:10px;padding:7px 12px;font-weight:900;color:var(--navy)}
.lstep.start{background:var(--navy);color:white}
.larrow{color:var(--teal2);font-weight:900}
.lrow p{margin:0;color:var(--muted);font-size:15px}
@media(max-width:900px){.roles{grid-template-columns:1fr}.rhead{flex-direction:column}}

/* ---- Downloads (added) ---- */
.dllist{display:grid;gap:14px}
.dlitem{display:flex;gap:18px;align-items:center;background:white;border:1px solid var(--line);border-radius:16px;padding:20px;box-shadow:0 5px 16px rgba(7,24,42,.04)}
.dlicon{flex:0 0 58px;height:70px;border-radius:8px;background:#b4483a;color:white;display:grid;place-items:center;font-weight:900;font-size:14px;letter-spacing:.05em}
.dlbody{flex:1}
.dlbody small{color:var(--teal);font-weight:900;font-size:12px;letter-spacing:.05em;text-transform:uppercase}
.dlbody h3{margin:4px 0 6px;color:var(--navy);font-family:Georgia,serif;font-size:22px}
.dlbody p{margin:0 0 6px;color:var(--muted);font-size:15px}
.dlmeta{font-size:13px;font-weight:800;color:#3f5867}
.dlbtn{flex:0 0 auto}
.dlpromo{display:flex;gap:16px;align-items:center;background:#edf5f6;border:1px solid #c4dfe0;border-left:5px solid var(--teal);border-radius:14px;padding:16px 18px;margin:0 0 24px}
.dlpromo p{margin:0;flex:1}
@media(max-width:700px){.dlitem,.dlpromo{flex-direction:column;align-items:flex-start}}

/* ---- Ways in (added) ---- */
.wgrid{grid-template-columns:repeat(4,1fr)}
.waysin h2{font-family:Georgia,serif;font-size:40px;line-height:1.12;color:var(--navy);margin:0 0 10px}
@media(max-width:900px){.wgrid{grid-template-columns:1fr}}

/* ---- Resources (added) ---- */
.journey{display:grid;gap:8px;counter-reset:j;margin:14px 0 10px}
.journey a{counter-increment:j;display:block;background:white;border:1px solid var(--line);border-radius:12px;padding:12px 14px 12px 52px;position:relative;font-weight:800;color:var(--navy)}
.journey a:before{content:counter(j);position:absolute;left:14px;top:10px;width:26px;height:26px;border-radius:50%;background:var(--teal);color:white;display:grid;place-items:center;font-size:13px}
.journey a:hover{border-color:var(--teal)}
.trgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:16px 0}
.trcat{background:white;border:1px solid var(--line);border-radius:16px;padding:20px}
.trcat .vicon{font-size:28px}
.trcat h3{margin:8px 0 6px;color:var(--navy);font-family:Georgia,serif;font-size:22px}
.trcat p{margin:0 0 8px;color:var(--muted);font-size:15px}
.trcat .tip{color:var(--ink)}
@media(max-width:900px){.trgrid{grid-template-columns:1fr}}

/* ---- Six-step roadmap (NVICs page) ---- */
.roadmap.six{grid-template-columns:repeat(6,1fr)}
@media(max-width:900px){.roadmap.six{grid-template-columns:1fr}}

/* ---- Site search (added) ---- */
.searchbtn{display:inline-flex;align-items:center;gap:7px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.26);color:white;border-radius:9px;padding:9px 13px;font-weight:800;font-size:14px;cursor:pointer;font-family:inherit}
.searchbtn:hover{background:rgba(255,255,255,.16)}
.searchbtn kbd{font:inherit;font-size:11px;opacity:.6;border:1px solid rgba(255,255,255,.3);border-radius:4px;padding:0 5px}
.sov{position:fixed;inset:0;z-index:200;background:rgba(7,24,42,.55);display:flex;justify-content:center;align-items:flex-start;padding:70px 16px 16px}
.sov[hidden]{display:none}
.spanel{background:white;width:100%;max-width:680px;border-radius:16px;box-shadow:0 24px 60px rgba(7,24,42,.35);overflow:hidden;display:flex;flex-direction:column;max-height:calc(100vh - 100px)}
.sbar{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid var(--line)}
.sbar input{flex:1;border:0;outline:0;font-size:18px;padding:8px 4px;background:transparent}
.sclose{border:1px solid var(--line);background:#edf3f5;border-radius:7px;padding:4px 9px;font-weight:800;font-size:12px;color:var(--muted);cursor:pointer}
.sres{overflow-y:auto}
.sitem{display:block;padding:14px 18px;border-bottom:1px solid var(--line)}
.sitem:hover,.sitem:focus{background:#edf5f6;outline:0}
.sitem small{display:block;font-size:11px;font-weight:800;letter-spacing:.08em;color:var(--teal);text-transform:uppercase}
.sitem strong{display:block;color:var(--navy);font-size:17px;margin:2px 0}
.sitem span{display:block;color:var(--muted);font-size:14px;line-height:1.5}
.sitem mark{background:#fff0c2;color:inherit;border-radius:3px;padding:0 1px}
.snone,.shint{padding:16px 18px;margin:0;color:var(--muted);font-size:14px}
.shint a{color:var(--teal);font-weight:800}
@media(max-width:900px){.searchbtn kbd{display:none}.navbtn{display:none}.nav{justify-content:space-between}.sov{padding-top:20px}}

/* ---- Phone menu (added) ---- */
.menubtn{display:none;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.26);color:white;border-radius:9px;width:42px;height:40px;font-size:20px;cursor:pointer}
@media(max-width:900px){
  .nav{gap:10px}.brand{flex:1}
  .menubtn{display:block}
  .header.open .navlinks{display:flex;flex-direction:column;align-items:stretch;gap:0;position:absolute;top:68px;left:0;right:0;background:var(--navy);padding:8px 20px 18px;max-height:calc(100vh - 68px);overflow-y:auto;border-top:1px solid rgba(255,255,255,.1);box-shadow:0 18px 30px rgba(7,24,42,.35)}
  .header.open .navlinks>a,.header.open .dd>button{display:block;padding:13px 4px;font-size:16px;font-weight:800;color:white;border-bottom:1px solid rgba(255,255,255,.1);text-align:left;width:100%}
  .header.open .dd>button{pointer-events:none}
  .header.open .ddmenu{display:block;position:static;padding:0 0 8px;min-width:0}
  .header.open .ddmenu div{background:transparent;border:0;box-shadow:none;padding:0 0 0 10px}
  .header.open .ddmenu a{color:#dbe6eb;padding:9px 8px;font-size:15px}
  .header.open .ddmenu small{color:#8fe3e3;padding:10px 8px 2px}
}

/* ---- Header fit (added) ---- */
.brand,.navlinks a,.dd>button,.navbtn,.searchbtn{white-space:nowrap}
@media(max-width:1320px){.navbtn{display:none}.navlinks{gap:18px}}
@media(max-width:1100px) and (min-width:901px){.searchbtn kbd{display:none}.navlinks{gap:14px}.navlinks a,.dd>button{font-size:13px}.nav{gap:16px}}

/* ---- Logo (added) ---- */
.brand:has(img.logo){flex-shrink:0}
.brand img.logo{height:40px;width:auto;max-width:none;display:block}
.footer .brand img.logo-footer{height:68px;width:auto;display:block;margin-bottom:6px}
@media (max-width:900px){.brand img.logo{height:34px}}

/* Legal pages + footer legal row */
.legalrow{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 24px;border-top:1px solid rgba(255,255,255,.12);margin-top:30px;padding-top:18px;font-size:13px;color:#8ea4b1}
.legalrow span:last-child{display:flex;flex-wrap:wrap;gap:6px 18px}
.legalrow a{color:#c8d5dc;text-decoration:none}
.legalrow a:hover{color:#fff;text-decoration:underline}
.content.legal{max-width:780px}
.content.legal h2{font-size:26px;margin:34px 0 10px}
.content.legal p,.content.legal li{line-height:1.7}
.legal-meta{color:#6b7c87;font-size:14px;margin-top:0}
.fillin{background:#fff3c4;color:#7a5c00;padding:0 4px;border-radius:4px;font-weight:700}

/* ---- Career categories (added) ---- */
.catgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:24px}
.catgrid .card{display:flex;flex-direction:column}
.catgrid .card-body{display:flex;flex-direction:column;flex:1}
.catgrid .card-body p{flex:1;font-size:14px}
.tag.new{background:var(--gold);color:var(--deep)}
.card.soon .more{color:var(--muted)}
.card.soon:hover{transform:none}
@media(max-width:900px){.catgrid{grid-template-columns:1fr}}
.catgrid .tag,.catgrid .more{align-self:flex-start}
.grid.two{grid-template-columns:repeat(2,1fr)}
@media(max-width:900px){.grid.two{grid-template-columns:1fr}}

/* ---- Two-part reference pages (added) ---- */
.partlabel{display:inline-block;font-size:12px;font-weight:900;letter-spacing:.1em;color:var(--teal);background:#e3f0f1;border-radius:999px;padding:5px 11px;margin:18px 0 4px}
.morehead{margin:48px 0 16px;padding:26px 24px;border-radius:16px;background:#edf3f5;border:1px solid var(--line)}
.morehead h2{margin:8px 0 6px!important}
.morehead p{margin:0 0 14px;color:var(--muted)}
.expandall{border:1px solid var(--teal);background:white;color:var(--teal);border-radius:9px;padding:8px 14px;font-weight:800;cursor:pointer}
details.topic{background:white;border:1px solid var(--line);border-radius:14px;margin-bottom:12px}
details.topic summary{cursor:pointer;list-style:none;padding:16px 18px;display:flex;gap:14px;align-items:center}
details.topic summary::-webkit-details-marker{display:none}
details.topic summary::after{content:"›";margin-left:auto;font-size:22px;color:var(--muted);transition:transform .2s}
details.topic[open] summary::after{transform:rotate(90deg)}
details.topic summary strong{display:block;color:var(--navy);font-size:17px}
details.topic summary small{display:block;color:var(--muted);font-size:14px}
.tnum{flex:0 0 36px;height:36px;border-radius:50%;background:#e3f0f1;color:var(--teal);display:grid;place-items:center;font-weight:900}
.tbody{padding:0 20px 20px}
.vgrid.two{grid-template-columns:repeat(2,1fr)}
@media(max-width:900px){.vgrid.two{grid-template-columns:1fr}}

/* ---- Site map page (added) ---- */
.smgrid{columns:2;column-gap:18px}
.smgroup{break-inside:avoid;margin-bottom:18px}
.smgroup{background:white;border:1px solid var(--line);border-radius:14px;padding:18px 22px}
.smgroup h2{font-size:22px!important;margin:0 0 8px!important}
.smgroup ul{margin:0;padding-left:18px}
.smgroup li{margin:5px 0}
.smgroup a{color:var(--teal);font-weight:700}
@media(max-width:900px){.smgrid{columns:1}}

/* ---- Homepage pathways (redesign Oct 2026) ---- */
.ph2{font-family:Georgia,serif;font-size:40px;line-height:1.12;color:var(--navy);margin:0 0 10px}
.pnum{flex:none;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--teal2);color:white;font-weight:900;font-size:18px}
.steprow{margin-top:30px;padding:26px;border:1px solid var(--line);border-radius:22px;background:white}
.steprow.alt{background:#edf3f5}
.stephead{display:flex;gap:14px;align-items:center}
.stephead h3{font-family:Georgia,serif;font-size:26px;color:var(--navy);margin:0}
.stephead p{margin:0;color:var(--muted)}
.stepgrid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:20px}
.stepgrid.four{grid-template-columns:repeat(4,1fr)}
.stepgrid .vtile{min-height:200px;padding:22px 18px}
.stepgrid .vtile h3{font-size:20px}
.stepgrid .vtile p{font-size:14px}
.stepgrid .vtile .go{font-size:14px}
.steprow.alt .vtile{background:var(--teal)}
.checklist{display:grid;gap:12px}
.checklist a{display:block;background:white;border:1px solid var(--line);border-left:5px solid var(--teal2);border-radius:12px;padding:14px 18px;transition:.2s}
.checklist a:hover{transform:translateX(3px);box-shadow:var(--shadow)}
.checklist b{display:block;color:var(--navy);font-size:17px}
.checklist span{color:var(--muted);font-size:15px}
@media(max-width:1100px){.stepgrid,.stepgrid.four{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.stepgrid,.stepgrid.four{grid-template-columns:repeat(2,1fr)}.ph2{font-size:32px}}
@media(max-width:480px){.stepgrid,.stepgrid.four{grid-template-columns:1fr}.steprow{padding:18px}}
.shortanswer{background:var(--navy);color:white;border-radius:16px;padding:22px 26px;margin:22px 0 30px}
.shortanswer h2{font-family:Georgia,serif;color:white;margin:0 0 10px;font-size:26px}
.shortanswer ul{margin:0;padding-left:20px}
.shortanswer li{margin:6px 0;color:#dbe6eb;font-size:17px}
.shortanswer b{color:white}
.reqform{background:white;border:1px solid var(--line);border-radius:18px;padding:24px;box-shadow:var(--shadow);margin-top:16px}
.reqform label{display:block;background:none;padding:0;margin:14px 0 5px;font-size:13px;letter-spacing:0;color:#3f5867}
@media(max-width:700px){.reqform .formrow{grid-template-columns:1fr;gap:0}}

/* ---- Newsletter signup (Kit) ---- */
.newsbox{background:var(--navy);color:white;border-radius:20px;padding:30px;margin:40px auto}
.newsbox.band-news{max-width:1132px;margin:40px auto 60px;width:calc(100% - 48px)}
.newsinner{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:center}
.newskicker{display:inline-block;font-size:11px;font-weight:900;letter-spacing:.08em;color:#8fe3e3}
.newsbox h2{font-family:Georgia,serif;color:white;font-size:30px;margin:6px 0 8px}
.newsbox p{color:#cfdbe6;margin:0}
.newsbox .newsfine{font-size:13px;color:#9fb3c2;margin-top:14px}
.newsbox .newsfine a{color:#8fe3e3;text-decoration:underline}
.newsform .formkit-fields{display:flex;gap:10px;flex-wrap:wrap}
.newsform .formkit-field{flex:1 1 220px}
.newsform .formkit-input{width:100%;padding:13px 14px;border:0;border-radius:10px;font-size:16px;color:var(--ink);background:white}
.newsform .formkit-submit{position:relative;border:0;border-radius:10px;background:var(--teal2);color:white;font-weight:900;font-size:16px;cursor:pointer;padding:0;flex:0 0 auto}
.newsform .formkit-submit>span{display:block;padding:13px 22px}
.newsform .formkit-submit:hover{background:#0c9599}
.newsform .formkit-spinner{display:none}
.newsform .formkit-submit[data-active] .formkit-spinner{display:none}
.newsform .formkit-submit[data-active]>span{opacity:.6}
.newsform .formkit-alert{list-style:none;margin:0 0 10px;padding:10px 12px;border-radius:8px;font-size:15px}
.newsform .formkit-alert:empty{display:none}
.newsform .formkit-alert-error{background:#fde8e2;color:#a3290c}
.newsform .formkit-alert-success{background:#d3fbeb;color:#0b6b45;margin:0}
.newsform .formkit-powered-by-convertkit-container{margin-top:8px}
.newsform .formkit-powered-by-convertkit{font-size:12px;color:#9fb3c2;text-decoration:underline}
@media(max-width:800px){.newsinner{grid-template-columns:1fr}.newsbox{padding:22px}.newsbox h2{font-size:25px}}

/* About page photos */
.aboutphoto{max-width:440px;margin:26px auto 30px}
.aboutphoto img{width:100%;height:auto;border-radius:14px;box-shadow:var(--shadow)}
.aboutphoto figcaption{margin-top:12px;font-size:.95rem;line-height:1.55;color:var(--ink,#1d2b3a)}
.aboutphoto figcaption span{display:block;margin-top:8px}
.aboutphoto figcaption small{display:block;margin-top:10px;opacity:.75}
.signoff{font-weight:800;font-style:italic;margin-top:4px}

/* ---- Start Here section (Oct 2026) ---- */
.inlink{color:var(--teal);font-weight:800;white-space:nowrap}
.inlink:hover{text-decoration:underline}
.captip{background:#edf5f6;border-left:5px solid var(--gold);border-radius:10px;padding:12px 16px;margin:14px 0 4px}
.captip b{display:block;color:var(--navy);font-size:12px;letter-spacing:.08em}
.captip p{margin:4px 0 0}
.captsays{background:var(--navy);color:white;border-radius:16px;padding:20px 24px;margin:30px 0}
.captsays b{color:var(--gold);font-size:12px;letter-spacing:.1em}
.captsays p{font-family:Georgia,serif;font-size:20px;line-height:1.45;margin:6px 0 0;color:white}
.planlist{padding-left:22px}.planlist li{margin:6px 0}
.steps.plain .step{padding-left:20px}.steps.plain .step:before{display:none}
.steplinkrow{margin:16px 0 0;font-size:15px}.steplink{color:var(--teal);font-weight:700}
.orgchart{background:white;border:1px solid var(--line);border-radius:18px;padding:22px;margin:18px 0 8px;box-shadow:var(--shadow)}
.orgtop{max-width:320px;margin:0 auto 18px;text-align:center;background:var(--navy);color:white;border-radius:12px;padding:12px}
.orgtop b{display:block;letter-spacing:.06em}.orgtop span{font-size:13px;color:#cfdbe6}
.orgcols{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.orgcol h3{margin:0 0 8px;font-size:15px;color:var(--navy);text-align:center;border-bottom:3px solid var(--gold);padding-bottom:6px}
.orgcol ol{list-style:none;margin:0;padding:0}
.orgcol li{background:#f2f5f7;border:1px solid var(--line);border-radius:8px;padding:8px 10px;margin:0 0 6px;text-align:center;font-size:15px;position:relative}
.orgcol li+li:before{content:"↓";position:absolute;top:-13px;left:50%;transform:translateX(-50%);font-size:11px;color:var(--muted)}
.orgcol li.lic{background:#e3f0f1;border-color:#bfdcdd;font-weight:700}
.orgcol li.entry{border:2px dashed var(--gold);background:#fff8e6}
.orgkey{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;margin-top:14px;font-size:13px;color:var(--muted)}
.orgkey .k:before{content:"";display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:6px;vertical-align:-1px;background:#f2f5f7;border:1px solid var(--line)}
.orgkey .k.lic:before{background:#e3f0f1;border-color:#bfdcdd}.orgkey .k.entry:before{background:#fff8e6;border:2px dashed var(--gold)}
@media(max-width:760px){.orgcols{grid-template-columns:1fr}}

/* ---- Layout fix (Oct 5, 2026): side margins + menu fit ---- */
.container.section{padding-left:24px;padding-right:24px}
@media(max-width:1100px){
  .navlinks{display:none}
  .searchbtn kbd{display:none}
  .nav{gap:10px;justify-content:space-between}.brand{flex:1}
  .menubtn{display:block}
  .header.open .navlinks{display:flex;flex-direction:column;align-items:stretch;gap:0;position:absolute;top:68px;left:0;right:0;background:var(--navy);padding:8px 20px 18px;max-height:calc(100vh - 68px);overflow-y:auto;border-top:1px solid rgba(255,255,255,.1);box-shadow:0 18px 30px rgba(7,24,42,.35)}
  .header.open .navlinks>a,.header.open .dd>button{display:block;padding:13px 4px;font-size:16px;font-weight:800;color:white;border-bottom:1px solid rgba(255,255,255,.1);text-align:left;width:100%}
  .header.open .dd>button{pointer-events:none}
  .header.open .ddmenu{display:block;position:static;padding:0 0 8px;min-width:0}
  .header.open .ddmenu div{background:transparent;border:0;box-shadow:none;padding:0 0 0 10px}
  .header.open .ddmenu a{color:#dbe6eb;padding:9px 8px;font-size:15px}
  .header.open .ddmenu small{color:#8fe3e3;padding:10px 8px 2px}
}

/* ---- Academy pages (Oct 2026) ---- */
.crumbs{font-size:14px;color:var(--muted);margin:0 0 14px}.crumbs a{color:var(--teal);font-weight:700}
.costtable td,.costtable th{white-space:normal}.costtable td:not(:first-child),.costtable th{text-align:right}.costtable th:first-child{text-align:left}
.tcap{font-size:14px;color:var(--muted);margin-top:6px}
.acadlink{color:var(--navy)}.acadlink:hover{color:var(--teal);text-decoration:underline}

/* ---- Training section (Oct 2026) ---- */
.trintro{margin:6px 0 10px}
.goalgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin:14px 0 30px}
.goalcard{background:white;border:1px solid var(--line);border-top:5px solid var(--teal2);border-radius:16px;padding:18px 20px;box-shadow:0 6px 18px rgba(7,24,42,.05)}
.goalcard h3{font-family:Georgia,serif;color:var(--navy);font-size:20px;margin:8px 0 10px}
.goalcard ul{list-style:none;margin:0;padding:0}
.goalcard li{padding:8px 0;border-top:1px solid var(--line);font-size:15px}
.goalcard li a{color:var(--teal);font-weight:800}
.goalcard li small a{font-weight:700}
.inprep-name{color:var(--muted);font-weight:700}
.inprep{display:inline-block;font-size:11px;font-weight:900;letter-spacing:.05em;color:#7a5b12;background:#fff3d6;border:1px solid #f0d79a;border-radius:999px;padding:2px 8px;margin-left:4px;text-transform:uppercase}

/* ---- Who's Hiring top-level menu (added 2026-10-06) ---- */
.dd.dd-hire>button{color:#fff;font-weight:800}
.dd-hire .ddmenu{min-width:330px}
.dd-hire .ddmenu a{font-size:16px;padding:10px 14px;line-height:1.35}
.dd-hire .ddmenu a.ddall{font-weight:800;color:var(--teal);border-bottom:1px solid var(--line);border-radius:8px 8px 0 0;margin-bottom:4px}
.ddtag{display:inline-block;margin-left:8px;font-size:12px;font-weight:700;color:var(--muted);background:#f1f5f7;border:1px solid var(--line);border-radius:999px;padding:1px 8px;vertical-align:middle}
@media(max-width:1100px){
  .header.open .dd-hire .ddmenu a{font-size:16px;padding:12px 8px}
  .header.open .dd-hire .ddmenu a.ddall{color:#8fe3e3;border-bottom-color:rgba(255,255,255,.12)}
  .header.open .ddtag{background:transparent;border-color:rgba(255,255,255,.25);color:#b8ccd5}
}

/* ---- Header: one line, no Find My Path button (updated 2026-10-06) ---- */
.navfmp{display:none}
.header .navbtn{display:none}
@media(min-width:1101px) and (max-width:1340px){
  .header .nav{gap:12px}
  .navlinks{gap:14px}
  .navlinks a,.dd>button{font-size:13.5px}
  .header .searchbtn{padding:8px 10px;font-size:13px}
  .header .logo{height:30px}
}
@media(min-width:821px) and (max-width:1100px){
  .header .menubtn{display:none}
  .header .nav{gap:10px}
  .header .brand{flex:0 0 auto}
  .header .navlinks{display:flex;flex:1;justify-content:center;gap:11px}
  .header .navlinks a,.header .dd>button{font-size:13px}
  .header .logo{height:26px}
  .header .searchbtn{padding:7px 9px;font-size:13px}
  .header .navlinks .dd:last-child .ddmenu,.header .navlinks .dd-hire .ddmenu{left:auto;right:-14px}
}
@media(min-width:821px) and (max-width:960px){
  .header .container.nav{padding:0 12px}
  .header .navlinks{gap:8px}
  .header .logo{height:22px}
  .header .searchbtn{width:40px;overflow:hidden;justify-content:flex-start;padding:7px 10px}
}
@media(max-width:820px){
  .header.open .navlinks>a.navfmp{display:block;color:#8fe3e3}
}

/* === Free Directory offer (added 2026-10-07) === */
.navcta{background:var(--gold);color:var(--deep);border-radius:9px;padding:9px 14px;font-weight:900;font-size:14px;white-space:nowrap;flex-shrink:0}
.navcta:hover{background:#d8b46a;color:var(--deep)}
@media(max-width:1100px){.navcta{padding:8px 10px;font-size:13px}}
@media(max-width:560px){.navcta{display:none}}
.newscover{float:left;width:104px;height:auto;margin:4px 18px 8px 0;border-radius:4px;box-shadow:0 8px 22px rgba(0,0,0,.4);transform:rotate(-2deg)}
@media(max-width:560px){.newscover{width:78px;margin-right:14px}}
.newsbox.band-news.top{margin-top:34px}
.dirhero{display:grid;grid-template-columns:300px 1fr;gap:36px;align-items:center}
.dirhero img{width:100%;height:auto;border-radius:6px;box-shadow:0 18px 40px rgba(7,24,42,.28);transform:rotate(-1.5deg)}
.dirlist{list-style:none;padding:0;margin:14px 0}
.dirlist li{padding:8px 0 8px 30px;border-bottom:1px solid var(--line);position:relative}
.dirlist li::before{content:"\2713";position:absolute;left:4px;color:var(--teal2);font-weight:900}
.dirpeek{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:18px 0}
.dirpeek figure{margin:0}.dirpeek img{width:100%;height:auto;border:1px solid var(--line);border-radius:6px;box-shadow:0 8px 22px rgba(7,24,42,.10)}
.dirpeek figcaption{font-size:14px;color:var(--muted);margin-top:6px}
@media(max-width:800px){.dirhero,.dirpeek{grid-template-columns:1fr}.dirhero img{max-width:240px}}
/* header fit for Captain's Log + Free Directory */
.header .container.nav{max-width:1380px}
@media(min-width:901px){.searchbtn .stext,.searchbtn kbd{display:none}.searchbtn{padding:9px 11px}}
@media(max-width:1380px) and (min-width:901px){.navlinks{gap:14px}.navlinks a,.dd>button{font-size:13.5px}.nav{gap:14px}}
@media(max-width:1240px) and (min-width:901px){.brand img.logo{height:30px}.navlinks{gap:11px}.navlinks a,.dd>button{font-size:13px}.navcta{padding:8px 10px;font-size:13px}}
@media(max-width:1060px) and (min-width:901px){.brand img.logo{height:26px}.navlinks{gap:9px}.navlinks a,.dd>button{font-size:12.5px}}
@media(max-width:1060px) and (min-width:901px){.brand img.logo{height:22px}.navlinks{gap:8px}.navlinks a,.dd>button{font-size:12px}.nav{gap:10px}.navcta{padding:7px 9px;font-size:12px}}
@media(max-width:1150px) and (min-width:901px){.navcta{white-space:normal;max-width:92px;line-height:1.15;text-align:center;padding:5px 8px;font-size:11.5px}}
@media(max-width:970px) and (min-width:901px){.brand img.logo{height:19px}.navlinks{gap:6px}.navlinks a,.dd>button{font-size:11.5px}.nav{gap:8px}}
@media(max-width:970px) and (min-width:901px){.searchbtn{padding:7px 8px}.navcta{padding:5px 6px}}
@media(max-width:1150px) and (min-width:901px){.navcta{max-width:98px;font-size:11px}}
@media(max-width:1060px) and (min-width:901px){.navlinks{gap:7px}}
@media(max-width:940px) and (min-width:901px){.navlinks a,.dd>button{font-size:11px}.navlinks{gap:5px}.searchbtn{display:none}}

.newsbox .newstrust{color:#e6eef4;font-size:14px;font-weight:600;margin:12px 0 0}

/* Useful Maritime Websites: make site names look like links (2026-10-08) */
.sitelist td:first-child a{color:var(--teal);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.sitelist td:first-child a:hover,.sitelist td:first-child a:focus-visible{color:var(--navy);text-decoration-thickness:2px}
.sitelist td:first-child a[target="_blank"]::after{content:"\00a0\2197";font-weight:800}
.clicknote{margin:0 0 18px}
.umwcard{margin-top:22px}
.umwcard p{margin:0 0 14px}
@media(max-width:600px){.umwcard .btn{display:flex;width:100%}}
.sitelist .inlink{white-space:normal}

/* Homepage redesign 2026-10-09: harbor hero, four pathways, compact Who's Hiring */
.hero img.hero-harbor{object-position:58% 45%}
.pathgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:24px}
.pathcard{display:flex;flex-direction:column;background:white;border:1px solid var(--line);border-top:5px solid var(--teal2);border-radius:16px;padding:22px 20px;box-shadow:0 6px 18px rgba(7,24,42,.05)}
.pathcard .vicon{font-size:30px;line-height:1}
.pathcard h3{font-family:Georgia,serif;color:var(--navy);font-size:22px;line-height:1.2;margin:10px 0 8px}
.pathcard p{margin:0 0 10px;font-size:15px}
.pathcard .pathnote{color:var(--navy);font-weight:600}
.pathcard .pathmore{font-size:14px;color:var(--muted);margin-bottom:16px}
.pathcard .pathmore a{color:var(--teal);font-weight:700;text-decoration:underline;text-underline-offset:2px}
.pathcard .btn{margin-top:auto}
@media(max-width:1100px){.pathgrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.pathgrid{grid-template-columns:1fr}}
.section.hiresec{padding:44px 0}
.hirepanel{display:flex;gap:24px;align-items:center;justify-content:space-between;background:white;border:1px solid var(--line);border-left:5px solid var(--teal2);border-radius:16px;padding:22px 26px;box-shadow:0 6px 18px rgba(7,24,42,.05)}
.hirepanel h2{font-size:28px;margin:8px 0 8px}
.hirepanel p{margin:0}
.hirepanel .hirefine{font-size:14px;color:var(--muted);margin-top:10px}
.hirepanel .hirefine a{color:var(--teal);font-weight:700;text-decoration:underline}
.hirepanel .btn{flex:none}
@media(max-width:900px){.hirepanel{flex-direction:column;align-items:stretch;padding:20px}.hirepanel h2{font-size:24px}}
.pathcard .btn{text-align:center}
@media(max-width:600px){.hero{min-height:0}.hero-inner{padding:44px 20px 48px}.hero h1{font-size:36px;margin:0 0 14px}.hero p{font-size:18px}.hero .ctas{margin-top:22px}}

/* Homepage "next step" revision 2026-10-09 */
.pathgrid.three{grid-template-columns:repeat(3,1fr)}
.pathcard .pathimg{display:block;max-width:none;width:calc(100% + 40px);height:auto;aspect-ratio:16/9;object-fit:cover;margin:-22px -20px 14px;border-radius:11px 11px 0 0}
.pathgrid.three .pathcard h3{margin-top:0}
.pathbody{display:flex;flex-direction:column;flex:1}
.interest{margin-top:26px;background:#edf3f5;border:1px solid var(--line);border-radius:16px;padding:20px 22px}
.interest h3{font-family:Georgia,serif;color:var(--navy);font-size:22px;margin:0 0 4px}
.interest .interestnote{margin:0 0 14px;color:var(--muted);font-size:15px}
.interestlist{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}
.interestlist a{display:flex;flex-direction:column;justify-content:space-between;gap:8px;background:white;border:1px solid var(--line);border-radius:12px;padding:12px 14px;transition:.2s}
.interestlist a:hover{border-color:var(--teal);box-shadow:var(--shadow)}
.interestlist span{color:var(--navy);font-size:15px;font-style:italic}
.interestlist b{color:var(--teal);font-size:14px}
.otherroutes{margin:18px 0 0;font-size:15px}
.otherroutes a{color:var(--teal);font-weight:700;text-decoration:underline;text-underline-offset:2px}
#dept-deck,#dept-engine,#dept-steward,#ladders{scroll-margin-top:90px}
@media(max-width:820px){.pathgrid.three{grid-template-columns:1fr;max-width:560px}}
.movetable .inlink{white-space:normal}
.interestlist{grid-template-columns:repeat(4,1fr)}
@media(max-width:900px){.interestlist{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.interestlist{grid-template-columns:1fr}}
/* umw links 2 (2026-10-10): remaining links on Useful Maritime Websites look clickable */
.sitelist td a.inlink{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.sitelist td a.inlink:hover,.sitelist td a.inlink:focus-visible{color:var(--navy);text-decoration-thickness:2px}
.clicknote ~ .note a[href^="mailto:"]{color:var(--teal);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.clicknote ~ .note a[href^="mailto:"]:hover,.clicknote ~ .note a[href^="mailto:"]:focus-visible{color:var(--navy);text-decoration-thickness:2px}
