/* sanctuary · expeditions product hub */
.ex-hub{max-width:820px;margin:0 auto;padding:0 24px 80px;position:relative;z-index:1}

.ex-need{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:8px 0 36px}
.ex-need-card{
  display:flex;flex-direction:column;gap:6px;padding:18px 16px;
  border:0.5px solid var(--border);border-radius:14px;background:rgba(255,255,255,0.35);
  text-decoration:none;color:inherit;transition:border-color .3s var(--ease),transform .3s var(--ease),background .3s;
}
.ex-need-card:hover{border-color:rgba(82,121,111,0.45);background:rgba(82,121,111,0.04);transform:translateY(-2px);text-decoration:none}
.ex-need-k{font-size:10px;letter-spacing:2px;text-transform:lowercase;color:var(--sage)}
.ex-need-t{font-size:16px;font-weight:400;color:var(--ink);line-height:1.35}
.ex-need-s{font-size:12px;font-weight:300;color:var(--stone);line-height:1.55}

.ex-science{
  margin:0 0 40px;padding:22px 24px;border-radius:14px;
  background:linear-gradient(165deg,rgba(82,121,111,0.08),rgba(163,177,138,0.06));
  border:0.5px solid rgba(82,121,111,0.14);
}
.ex-science-k{font-size:10px;letter-spacing:2.5px;text-transform:lowercase;color:var(--sage);margin-bottom:10px}
.ex-science p{font-size:14px;font-weight:300;color:var(--stone);line-height:1.75;margin:0 0 10px}
.ex-science p:last-child{margin-bottom:0}
.ex-science a{color:var(--sage)}

.ex-grid{display:grid;grid-template-columns:1fr;gap:14px;margin-bottom:40px}
@media(min-width:720px){.ex-grid{grid-template-columns:1fr 1fr}.ex-card.featured{grid-column:1/-1}}

.ex-card{
  display:block;padding:0;border-radius:16px;overflow:hidden;
  border:0.5px solid var(--border);background:rgba(255,255,255,0.4);
  text-decoration:none;color:inherit;transition:border-color .3s,transform .3s var(--ease),box-shadow .3s;
}
.ex-card:hover{border-color:rgba(82,121,111,0.4);transform:translateY(-3px);box-shadow:0 12px 32px rgba(44,62,80,0.06);text-decoration:none}
.ex-card.featured{background:linear-gradient(165deg,var(--ink) 0%,#2a3d4d 100%);color:var(--shell);border-color:transparent}
.ex-card.featured .ex-card-type{color:rgba(163,177,138,0.7)}
.ex-card.featured .ex-card-name{color:var(--shell)}
.ex-card.featured .ex-card-desc{color:rgba(245,241,236,0.68)}
.ex-card.featured .ex-card-go{color:rgba(163,177,138,0.95)}
.ex-card.featured .ex-card-move{color:rgba(245,241,236,0.4)}

.ex-card-visual{height:96px;position:relative;overflow:hidden}
.ex-card-visual svg{position:absolute;inset:0;width:100%;height:100%}
.ex-card-body{padding:18px 20px 20px}
.ex-card-type{font-size:10px;letter-spacing:2px;text-transform:lowercase;color:var(--sage);margin-bottom:6px}
.ex-card-name{font-size:20px;font-weight:400;color:var(--ink);line-height:1.25;margin-bottom:8px}
.ex-card-desc{font-size:13px;font-weight:300;color:var(--stone);line-height:1.65;margin-bottom:12px}
.ex-card-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.ex-card-move{font-size:11px;letter-spacing:0.5px;color:var(--mist);text-transform:lowercase}
.ex-card-go{font-size:11px;letter-spacing:1.5px;text-transform:lowercase;color:var(--sage);display:inline-flex;align-items:center;gap:6px}

.ex-flow{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px 4px;margin:8px 0 40px;padding:20px 12px;border-radius:14px;border:0.5px solid var(--border);background:rgba(255,255,255,0.3)}
.ex-flow-step{font-size:12px;letter-spacing:1px;text-transform:lowercase;color:var(--stone);padding:8px 14px;border-radius:999px;background:rgba(82,121,111,0.06)}
.ex-flow-arrow{color:var(--mist);opacity:0.5;font-size:14px;padding:0 2px}

.ex-elsewhere{margin-top:8px}
.ex-elsewhere-grid{display:grid;grid-template-columns:1fr;gap:12px;margin-top:14px}
@media(min-width:640px){.ex-elsewhere-grid{grid-template-columns:1fr 1fr 1fr}}
.ex-else{
  display:flex;flex-direction:column;gap:4px;padding:18px 16px;border-radius:14px;
  border:0.5px solid var(--border);text-decoration:none;color:inherit;transition:border-color .25s,background .25s;
}
.ex-else:hover{border-color:rgba(82,121,111,0.4);background:rgba(82,121,111,0.03);text-decoration:none}
.ex-else-k{font-size:10px;letter-spacing:2px;text-transform:lowercase;color:var(--sage)}
.ex-else-t{font-size:16px;font-weight:400;color:var(--ink)}
.ex-else-s{font-size:12px;color:var(--stone);line-height:1.5}

.ex-faq{margin:48px 0 24px}
.ex-faq-item{border-bottom:0.5px solid var(--border);padding:14px 0}
.ex-faq-item summary{cursor:pointer;font-size:15px;font-weight:400;color:var(--ink);list-style:none}
.ex-faq-item summary::-webkit-details-marker{display:none}
.ex-faq-item p{margin-top:10px;font-size:14px;font-weight:300;color:var(--stone);line-height:1.7}
.ex-faq-more{margin-top:16px;font-size:13px;color:var(--mist)}

.ex-safety{margin:28px 0;padding:16px 18px;border-radius:12px;background:rgba(192,96,122,0.06);border:0.5px solid rgba(192,96,122,0.12);font-size:13px;color:var(--stone);line-height:1.65}
.ex-safety b{font-weight:500;color:var(--ink)}
.ex-safety a{color:var(--sage)}

@media(max-width:720px){
  .ex-need{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  .ex-card,.ex-need-card{transition:none}
  .ex-card:hover,.ex-need-card:hover{transform:none}
}
