:root{--black:#080808;--white:#f0ece4;--orange:#d4521a;--orange-l:#e8753a;--gray:#111;--gm:#1c1c1c;--gl:#666;--fd:'Oswald',sans-serif;--fs:'Cormorant Garamond',serif;--fb:'Montserrat',sans-serif;}
*{margin:0;padding:0;box-sizing:border-box;}html{scroll-behavior:smooth;}
body{background:var(--black);color:var(--white);font-family:var(--fb);overflow-x:hidden;cursor:none;}
.cur{width:8px;height:8px;background:var(--orange);border-radius:50%;position:fixed;pointer-events:none;z-index:9999;transform:translate(-50%,-50%);transition:transform .15s;}
.cur-ring{width:30px;height:30px;border:1px solid rgba(212,82,26,.5);border-radius:50%;position:fixed;pointer-events:none;z-index:9998;transform:translate(-50%,-50%);}
nav{position:fixed;top:0;left:0;right:0;z-index:1000;padding:28px 60px;display:flex;justify-content:space-between;align-items:center;background:linear-gradient(to bottom,rgba(8,8,8,.65),transparent);transition:all .4s;}
nav.sc{background:rgba(8,8,8,.96);padding:18px 60px;border-bottom:1px solid rgba(212,82,26,.1);}
.nl{display:flex;align-items:center;gap:12px;text-decoration:none;}
.nl svg{display:none;}
.nl img{width:44px;height:44px;object-fit:contain;}
.nl-t{font-family:var(--fd);font-size:17px;letter-spacing:5px;color:var(--white);}
.nm{display:flex;gap:44px;list-style:none;align-items:center;}
.nm a{font-size:10px;letter-spacing:3px;text-transform:uppercase;color:rgba(240,236,228,.55);text-decoration:none;transition:color .3s;}
.nm a:hover{color:var(--orange);}
.nc{color:var(--orange)!important;border:1px solid rgba(212,82,26,.4)!important;padding:9px 22px;}
.nc:hover{background:var(--orange)!important;color:var(--black)!important;}
.hero{position:relative;min-height:100vh;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:120px 60px 80px;overflow:hidden;}
.hbg{position:absolute;inset:0;z-index:0;}
.hbg::after{content:'';position:absolute;inset:0;background:linear-gradient(to bottom,rgba(8,8,8,.2) 0%,rgba(8,8,8,.45) 58%,rgba(8,8,8,1) 100%);z-index:1;}
.hbg video{width:100%;height:100%;object-fit:cover;display:block;}
.hc{position:relative;z-index:2;text-align:left;max-width:580px;opacity:0;animation:fu 1.6s ease .5s forwards;}
@keyframes fu{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
.hey{font-size:10px;letter-spacing:6px;text-transform:uppercase;color:var(--orange);margin-bottom:28px;}
.ht{font-family:'Fraunces',serif;font-size:clamp(48px,7vw,96px);font-weight:300;font-style:italic;line-height:1.0;letter-spacing:1px;margin-bottom:36px;}
.hs{font-family:var(--fs);font-size:clamp(15px,1.6vw,19px);font-weight:300;font-style:italic;color:rgba(240,236,228,.6);max-width:480px;margin:0 0 52px;line-height:1.5;}
.hbs{display:flex;gap:14px;justify-content:flex-start;flex-wrap:wrap;}
.bp{background:var(--orange);color:var(--black);padding:15px 38px;font-size:10px;font-weight:600;letter-spacing:3px;text-transform:uppercase;text-decoration:none;cursor:none;transition:background .3s;display:inline-block;}
.bp:hover{background:var(--orange-l);}
.bs{background:transparent;color:rgba(240,236,228,.65);border:1px solid rgba(240,236,228,.2);padding:15px 38px;font-size:10px;letter-spacing:3px;text-transform:uppercase;text-decoration:none;cursor:none;transition:all .3s;display:inline-block;}
.bs:hover{border-color:var(--orange);color:var(--orange);}
.hscr{position:absolute;bottom:32px;left:50%;transform:translateX(-50%);z-index:2;display:flex;flex-direction:column;align-items:center;gap:10px;opacity:0;animation:fu 1.6s ease 1.6s forwards;pointer-events:none;}
.hscr span{font-size:8px;letter-spacing:4px;text-transform:uppercase;color:var(--gl);}
.sl{width:1px;height:44px;background:linear-gradient(to bottom,var(--orange),transparent);animation:pl 2s ease-in-out infinite;}
@keyframes pl{0%,100%{opacity:.3}50%{opacity:1}}
section{padding:120px 60px;}section[id],div[id]{scroll-margin-top:80px;}
.sl-{font-size:11px;letter-spacing:5px;text-transform:uppercase;color:var(--orange);margin-bottom:18px;display:block;}
.st{font-family:var(--fs);font-size:clamp(36px,4vw,56px);font-weight:300;line-height:1.2;letter-spacing:0px;margin-bottom:6px;}
.dv{width:44px;height:1px;background:var(--orange);margin-bottom:40px;opacity:.6;}
.mq-wrap{background:transparent;overflow:hidden;padding:18px 0;white-space:nowrap;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08);}
.mq-track{display:inline-flex;animation:marquee 32s linear infinite;}
.mq-track span{font-family:var(--fb);font-size:10px;font-weight:300;letter-spacing:4px;text-transform:uppercase;color:rgba(240,236,228,.35);padding:0 24px;}
.mq-track .dot{color:rgba(212,82,26,.4);padding:0;font-size:12px;}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.mission{background:var(--black);position:relative;scroll-margin-top:0;min-height:100vh;}
.mission::before{content:'';position:absolute;inset:0;opacity:0.3;z-index:0;
background-image:url('mission-bg-desktop.jpg');
background-size:cover;
background-position:center center;
background-repeat:no-repeat;}
@media(max-width:900px){.mission::before{background-image:url('mission-bg-mobile.jpg');}}
.mission .mi{position:relative;z-index:1;}
.mi{max-width:1280px;margin:0 auto;}
.mg{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:start;}
.bq{font-family:var(--fs);font-size:clamp(26px,3vw,42px);font-weight:300;line-height:1.4;margin-bottom:36px;}
.bq em{color:var(--orange);font-style:normal;}
.mb p{font-size:13px;font-weight:300;line-height:2.1;color:rgba(240,236,228,.5);margin-bottom:18px;}
.mb p strong{color:rgba(240,236,228,.5);font-weight:300;}
.ms{display:grid;grid-template-columns:repeat(3,1fr);margin-top:80px;border-top:1px solid rgba(212,82,26,.18);padding-top:60px;}
.si{text-align:center;padding:0 20px;border-right:1px solid rgba(255,255,255,.05);}
.si:last-child{border-right:none;}
.sn{font-family:var(--fd);font-size:70px;color:var(--orange);line-height:1;margin-bottom:10px;}
.slb{font-size:9px;letter-spacing:3px;text-transform:uppercase;color:var(--gl);}
.expeditions{background:var(--gray);}
.ei{max-width:1280px;margin:0 auto;}
.eh{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:36px;}
.en{font-family:var(--fs);font-style:italic;color:var(--gl);font-size:15px;max-width:300px;text-align:right;line-height:1.7;align-self:flex-end;}
.tg{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;}
.tc{position:relative;aspect-ratio:1/1;height:auto;overflow:hidden;cursor:none;}
.tg .tc:first-child{grid-column:span 1;}
.cg .tc:first-child{grid-column:span 1;}
.tb{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform .8s;filter:brightness(.5);}
.tc:hover .tb{transform:scale(1.05);filter:brightness(.3);}
.to{position:absolute;inset:0;background:linear-gradient(to top,rgba(8,8,8,.97) 0%,rgba(8,8,8,.05) 55%,transparent 100%);}
.tcon{position:absolute;bottom:0;left:0;right:0;padding:36px;}
.tt{display:inline-block;font-size:8px;letter-spacing:3px;text-transform:uppercase;color:var(--orange);border:1px solid rgba(212,82,26,.4);padding:4px 12px;margin-bottom:12px;}
.td_{font-size:10px;letter-spacing:3px;color:var(--orange);margin-bottom:10px;text-transform:uppercase;font-weight:400;}
.tn{font-family:var(--fd);font-size:clamp(42px,5vw,70px);letter-spacing:1px;line-height:1;margin-bottom:5px;}
.tsub{font-family:var(--fs);font-size:14px;font-style:italic;color:rgba(240,236,228,.4);margin-bottom:16px;}
.tdesc{font-size:12px;font-weight:300;line-height:1.9;color:rgba(240,236,228,.58);margin-bottom:18px;max-width:480px;opacity:0;transform:translateY(8px);transition:all .4s;}
.tc:hover .tdesc{opacity:1;transform:translateY(0);}
.tp{font-size:10px;letter-spacing:2px;color:var(--orange);margin-bottom:18px;}
.tbs{display:flex;gap:10px;opacity:0;transform:translateY(8px);transition:all .4s .06s;}
.tc:hover .tbs{opacity:1;transform:translateY(0);}
.bt{font-size:9px;letter-spacing:2px;text-transform:uppercase;padding:10px 20px;text-decoration:none;font-weight:500;transition:all .3s;cursor:none;}
.btp{background:var(--orange);color:var(--black);}
.btp:hover{background:var(--orange-l);}
.bts{border:1px solid rgba(240,236,228,.2);color:rgba(240,236,228,.6);}
.bts:hover{border-color:var(--orange);color:var(--orange);}
.cg{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-top:2px;}
.tc-c{height:auto;}
.ctag{display:inline-block;font-size:8px;letter-spacing:3px;text-transform:uppercase;color:rgba(240,236,228,.28);border:1px solid rgba(240,236,228,.1);padding:4px 12px;margin-bottom:14px;}
.cdesc{font-size:12px;font-weight:300;line-height:1.9;color:rgba(240,236,228,.48);margin-bottom:20px;max-width:440px;}
.gallery{background:var(--black);padding:120px 0;}
.gh{padding:0 60px;max-width:1280px;margin:0 auto 52px;}
.gg{display:flex;align-items:flex-start;padding:0;margin:0;font-size:0;}
.gg-col{flex:1;display:flex;flex-direction:column;}
.gi{margin:0;padding:0;display:block;line-height:0;font-size:0;}
.gi img{width:100%;height:auto;display:block;}
.gig{text-align:center;padding:48px 60px;}
.gig p{font-family:var(--fs);font-style:italic;color:var(--gl);font-size:15px;margin-bottom:14px;}
.gig a{font-size:10px;letter-spacing:4px;text-transform:uppercase;color:var(--orange);text-decoration:none;border-bottom:1px solid rgba(212,82,26,.3);padding-bottom:3px;}
footer{background:var(--black);padding:52px 60px;border-top:1px solid rgba(255,255,255,.05);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:24px;}
.fb_{display:flex;align-items:center;gap:14px;}
.fb_ svg{width:40px;height:26px;}
.fbt{font-family:var(--fd);font-size:16px;letter-spacing:5px;}
.ftl{font-family:var(--fs);font-style:italic;color:var(--gl);font-size:12px;margin-top:3px;}
.fl{display:flex;gap:36px;list-style:none;}
.fl a{font-size:9px;letter-spacing:2px;text-transform:uppercase;color:var(--gl);text-decoration:none;transition:color .3s;}
.fl a:hover{color:var(--orange);}
.fr{text-align:right;}
.fi a{font-size:10px;letter-spacing:2px;color:var(--orange);text-decoration:none;opacity:.8;}
.fi a:hover{opacity:1;}
.fc{font-size:9px;color:rgba(102,102,102,.4);margin-top:6px;}
.mo{position:fixed;inset:0;background:rgba(8,8,8,.97);z-index:2000;display:flex;align-items:flex-start;justify-content:center;opacity:0;pointer-events:none;transition:opacity .4s;overflow-y:auto;padding:60px 20px;}
.mo.act{opacity:1;pointer-events:all;}
.md{background:var(--gm);border:1px solid rgba(212,82,26,.18);max-width:680px;width:100%;padding:56px;position:relative;transform:translateY(20px);transition:transform .4s;margin:auto;}
.mo.act .md{transform:translateY(0);}
.mc{position:absolute;top:20px;right:24px;background:none;border:none;color:var(--gl);font-size:18px;cursor:none;transition:color .3s;}
.mc:hover{color:var(--orange);}
.mh{margin-bottom:44px;}
.mti{font-family:var(--fd);font-size:50px;letter-spacing:4px;line-height:1;margin-bottom:10px;}
.msub{font-family:var(--fs);font-style:italic;color:var(--gl);font-size:15px;}
.fs_{margin-bottom:36px;}
.fql{font-size:8px;letter-spacing:4px;text-transform:uppercase;color:var(--orange);margin-bottom:8px;display:block;}
.fq-notice{font-size:11px;font-weight:400;color:var(--orange);letter-spacing:.3px;line-height:1.7;margin-bottom:16px;}
.fq{font-family:var(--fs);font-size:19px;font-weight:300;margin-bottom:18px;line-height:1.4;}
.fgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.ff{display:flex;flex-direction:column;gap:6px;}
.ff label{font-size:8px;letter-spacing:3px;text-transform:uppercase;color:var(--gl);}
.fi_{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);color:var(--white);padding:12px 15px;font-family:var(--fb);font-size:12px;font-weight:300;outline:none;width:100%;transition:border-color .3s;}
.fi_:focus{border-color:var(--orange);}
.fta{resize:vertical;min-height:100px;}
.ffu{grid-column:span 2;}
.fdiv{height:1px;background:rgba(255,255,255,.06);margin:4px 0 28px;}
.rg,.cg_{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
.ro,.co{display:flex;align-items:center;gap:12px;padding:11px 15px;border:1px solid rgba(255,255,255,.06);cursor:none;transition:all .25s;font-size:11px;font-weight:300;color:rgba(240,236,228,.5);}
.ro:hover,.co:hover{border-color:rgba(212,82,26,.35);color:rgba(240,236,228,.85);}
.ro.sel,.co.sel{border-color:var(--orange);background:rgba(212,82,26,.07);color:var(--orange);}
.rd,.cb{width:13px;height:13px;border:1px solid rgba(255,255,255,.2);border-radius:50%;flex-shrink:0;transition:all .25s;}
.cb{border-radius:2px;}
.ro.sel .rd,.co.sel .cb{background:var(--orange);border-color:var(--orange);}
.sa{text-align:center;margin-top:40px;}
.bsub{background:var(--orange);color:var(--black);border:none;padding:17px 60px;font-family:var(--fb);font-size:10px;font-weight:600;letter-spacing:4px;text-transform:uppercase;cursor:none;transition:background .3s;}
.bsub:hover{background:var(--orange-l);}
.sn_{font-family:var(--fs);font-style:italic;color:var(--gl);font-size:13px;margin-top:12px;}
.co_{position:fixed;inset:0;background:rgba(8,8,8,.98);z-index:3000;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .4s;padding:20px;}
.co_.act{opacity:1;pointer-events:all;}
.cb_{text-align:center;padding:72px 60px;border:1px solid rgba(212,82,26,.22);max-width:500px;width:100%;transform:translateY(16px);transition:transform .4s;}
.co_.act .cb_{transform:translateY(0);}
.cl svg{width:50px;margin:0 auto 30px;display:block;}
.cti{font-family:var(--fd);font-size:44px;letter-spacing:5px;color:var(--orange);margin-bottom:28px;}
.ctx{font-family:var(--fs);font-size:17px;font-weight:300;line-height:1.85;color:rgba(240,236,228,.65);margin-bottom:8px;}
.csi{font-size:9px;letter-spacing:4px;text-transform:uppercase;color:var(--gl);margin-top:36px;}
.rev{opacity:0;transform:translateY(28px);transition:opacity .9s,transform .9s;}
.rev.vis{opacity:1;transform:translateY(0);}
.d1{transition-delay:.1s;}.d2{transition-delay:.2s;}.d3{transition-delay:.3s;}


.has-drop{position:relative;}
.drop{position:absolute;top:100%;left:50%;transform:translateX(-50%);padding-top:12px;opacity:0;pointer-events:none;transition:opacity .2s;white-space:nowrap;z-index:100;}
.drop-inner{background:rgba(255,255,255,.07);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.1);padding:6px 0;}
.has-drop:hover .drop{opacity:1;pointer-events:all;}
.drop a{display:block;padding:10px 22px;font-size:9px;letter-spacing:3px;text-transform:uppercase;color:rgba(240,236,228,.55);text-decoration:none;transition:color .2s;}
.drop a:hover{color:var(--orange);}
.hb{display:none;flex-direction:column;justify-content:center;gap:6px;background:none;border:none;cursor:pointer;padding:6px;z-index:1002;}
.hb span{width:22px;height:1px;background:var(--white);display:block;transition:all .3s;}
.hb.open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.hb.open span:nth-child(2){opacity:0;}
.hb.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
.mob-nav{position:fixed;inset:0;background:rgba(8,8,8,.98);z-index:1001;display:flex;flex-direction:column;justify-content:center;align-items:center;opacity:0;pointer-events:none;transition:opacity .35s;}
.mob-nav.open{opacity:1;pointer-events:all;}
.mob-nav ul{list-style:none;text-align:center;}
.mob-nav li{margin-bottom:40px;}
.mob-nav a{font-family:var(--fb);font-size:11px;letter-spacing:5px;text-transform:uppercase;color:rgba(240,236,228,.7);text-decoration:none;transition:color .3s;}
.mob-nav a:active{color:var(--orange);}
.mob-nav li:has(a[href*="origin"]){margin-bottom:20px;margin-top:-24px;}
.mob-nav .nc{color:var(--orange)!important;border:1px solid rgba(212,82,26,.4)!important;padding:12px 32px;display:inline-block;margin-top:8px;}
@media(max-width:900px){
  /* base */
  .cur,.cur-ring{display:none;}body{cursor:auto;}
  /* nav */
  nav,nav.sc{padding:18px 24px;}.nm{display:none;}.hb{display:flex;}
  /* hero */
  .hero{padding:110px 24px 72px;}
  .hbs{flex-direction:column;gap:10px;align-items:stretch;}
  .bp,.bs{text-align:center;padding:14px 20px;width:100%;box-sizing:border-box;}
  /* sections */
  section{padding:72px 24px;}
  /* mission */
  .mg{grid-template-columns:1fr;gap:40px;}
  .ms{grid-template-columns:repeat(3,1fr);gap:0;}.si{padding:0 6px;}.sn{font-size:48px;letter-spacing:0;}.slb{font-size:7px;letter-spacing:2px;}

  /* expedition cards — 2-column grid on mobile */
  .tg{grid-template-columns:1fr 1fr;gap:2px;}
  .tg .tc:nth-child(5){grid-column:1/-1;width:50%;justify-self:center;}
  .tc{aspect-ratio:unset;height:280px;overflow:hidden;position:relative;}
  .tb{filter:brightness(.35);}
  .tdesc,.tbs{opacity:1;transform:none;}
  .tcon{position:absolute;bottom:0;left:0;right:0;padding:16px 14px 18px;}
  .tt{font-size:7px;letter-spacing:3px;margin-bottom:4px;display:block;}
  .td_{font-size:8px;margin-bottom:4px;}
  .tn{font-size:clamp(22px,6vw,32px)!important;line-height:.95;margin-bottom:4px;}
  .tsub{font-size:9px;margin-bottom:6px;line-height:1.3;}
  .tdesc,.cdesc{display:none;}
  .tp{font-size:9px;margin-bottom:10px;}
  .tbs{flex-wrap:wrap;gap:6px;}
  .bt,.btp{padding:8px 12px;font-size:7px;letter-spacing:2px;}
  /* gallery — 3 columns on mobile, gaps pushed to bottom */
  .gallery{padding:72px 0;}
  .gh{padding:0 24px;margin-bottom:36px;}
  .gg{display:flex;align-items:flex-start;}
  .gg-col{display:flex;flex-direction:column;flex:1;}
  .gg-col:nth-child(n+4){display:none;}
  .gi{aspect-ratio:unset;height:auto;overflow:visible;margin:0;padding:0;line-height:0;}
  .gi img{height:auto;}
  /* footer */
  footer{flex-direction:column;align-items:flex-start;padding:40px 24px;gap:20px;}
  .fr{text-align:left;}.fl{gap:16px;flex-wrap:wrap;}
  /* modal */
  .mo{padding:12px;align-items:flex-start;padding-top:60px;}
  .md{padding:28px 20px;width:100%;max-width:100%;}
  .mti{font-size:28px;letter-spacing:2px;}.msub{font-size:13px;}
  .fgrid{grid-template-columns:1fr;}.ffu{grid-column:1;}
  .rg,.cg_{grid-template-columns:1fr;}
  .cb_{padding:36px 20px;}
  /* gig caption row */
  .gig{padding:36px 24px;}
}
