/* ===== Golden Ship · Lovable design layer (navy + gold, Fraunces / Manrope) =====
   Loaded after the base stylesheet: re-maps the design tokens and restyles components.
   Content, structure, forms and scripts are unchanged. */
:root:not([data-gs]),:root[data-theme]{
  --navy:#05101e; --navy-2:#0b192a; --navy-3:#1c2f46; --on-navy:#f5f1e9; --on-navy-muted:#97a7b7;
  --copper:#edb345; --copper-fill:#edb345; --copper-bright:#f9d46b; --copper-soft:rgba(237,179,69,.12); --on-copper:#071221;
  --paper:#0a1727; --surface:#05101e; --ink:#f5f1e9; --muted:#97a7b7; --line:rgba(245,241,233,.12);
  --card:#0b192a; --card-2:#122237; --ok:#6cc59a; --warn:#e7a35a;
  --display:"Fraunces",Georgia,"Times New Roman",serif;
  --body:"Manrope",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --cond:"Manrope",system-ui,-apple-system,"Segoe UI",sans-serif;
  --gold-grad:linear-gradient(120deg,#edb345,#f9d46b);
  --shadow-gold:0 20px 50px -20px rgba(237,179,69,.45);
  --radius:.5rem;
  color-scheme:dark;
}
html{background:var(--navy)}
body{background:var(--navy);color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased}
::selection{background:#edb345;color:#071221}
h1,h2,h3,h4{font-family:var(--display);font-weight:400;letter-spacing:-.015em;font-optical-sizing:auto}
h3,h4{font-weight:600}
em{font-style:italic;color:var(--copper);background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.label{font-family:var(--body);font-weight:600;font-size:.78rem;letter-spacing:.22em;color:var(--copper)}
.code{color:var(--copper)}
:focus-visible{outline-color:var(--copper)}

/* buttons */
.btn{border-radius:var(--radius);background:var(--gold-grad);color:var(--on-copper);font-family:var(--body);font-weight:700;box-shadow:var(--shadow-gold);transition:filter .2s,transform .2s,background .2s}
.btn:hover{background:var(--gold-grad);filter:brightness(1.08);transform:translateY(-1px)}
.btn.line{background:transparent;color:var(--ink);border:1px solid var(--line);box-shadow:none}
.btn.line:hover{background:#1c2f46;filter:none}

/* header – frosted glass */
body::before{background:var(--navy)}
.top{background:rgba(5,16,30,.72);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.brand img{width:34px}
.brand b{font-family:var(--display);font-weight:600;letter-spacing:.01em;font-size:1.35rem;text-transform:none;color:var(--ink)}
.brand small{font-family:var(--body);color:var(--copper);letter-spacing:.24em}
.mainnav a{color:var(--muted);font-weight:500;transition:color .2s}
.mainnav a:hover{color:var(--ink);border-bottom-color:var(--copper)}
.lang{border-color:var(--line);border-radius:var(--radius)}
.lang a,.lang button{font-family:var(--body);color:var(--muted)}
.lang [aria-current="true"],.lang [aria-pressed="true"]{background:var(--gold-grad);color:var(--on-copper)}
.mnav summary{border-color:var(--line);border-radius:var(--radius);color:var(--ink);background:transparent}
.mnav ul{background:var(--card);border-color:var(--line);border-radius:var(--radius);box-shadow:0 20px 40px rgba(0,0,0,.45)}

/* bands */
.band{background:var(--navy);color:var(--on-navy)}

/* HERO – full-bleed port photograph */
.hero{position:relative;overflow:hidden;isolation:isolate;background:#020917}
.hero .gs-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.hero .gs-fade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(2,9,23,.96) 0%,rgba(2,9,23,.78) 45%,rgba(2,9,23,.18) 100%)}
.hero .gs-fade::after{content:"";position:absolute;inset:auto 0 0;height:160px;background:linear-gradient(180deg,transparent,var(--navy))}
.hero .wrap{min-height:min(88vh,900px);align-items:center;padding-block:96px 72px}
.hero h1{font-weight:400;font-size:clamp(2.5rem,6vw,4.6rem);line-height:1.04}
.hero .lede{color:#c9d2dc;font-size:1.1rem}
.facts{border-top:1px solid var(--line)}
.facts b{font-family:var(--display);font-weight:400;color:var(--copper-bright)}
.facts span{color:var(--muted)}
.plate{border-radius:var(--radius);box-shadow:0 18px 40px -18px rgba(0,0,0,.6)}
.quick{background:rgba(11,25,42,.82);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--line);border-top:3px solid var(--copper);border-radius:var(--radius);color:var(--ink)}
.quick [role=tablist]{border-bottom-color:var(--line)}
.quick [role=tab]{font-family:var(--body);color:var(--muted)}
.quick [role=tab][aria-selected="true"]{color:var(--ink);border-bottom-color:var(--copper)}
.quick .msg{color:var(--muted);border-left-color:var(--copper)}
@media (max-width:920px){.hero .wrap{min-height:0;padding-block:72px 48px}.hero .gs-fade{background:linear-gradient(180deg,rgba(2,9,23,.70) 0%,rgba(2,9,23,.90) 60%,var(--navy) 100%)}}

/* forms */
label{color:var(--ink)}
input[type=text],input[type=email],select,textarea{background:rgba(5,16,30,.6);color:var(--ink);border:1px solid rgba(245,241,233,.16);border-radius:var(--radius)}
input::placeholder,textarea::placeholder{color:#6f8093}
input:focus,select:focus,textarea:focus{border-color:var(--copper);box-shadow:0 0 0 3px rgba(237,179,69,.18)}
select option{background:#0b192a;color:#f5f1e9}

/* sections */
.sec{padding-block:96px}
.sec.alt{background:var(--paper);border-block:1px solid var(--line)}
.sh h2{font-weight:400;font-size:clamp(2rem,4vw,3.1rem)}
.sh p,.src,.mapnote{color:var(--muted)}
.gs-media{margin:0 0 48px;position:relative}
.gs-media img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:.9rem;box-shadow:var(--shadow-gold);border:1px solid var(--line)}
.gs-media figcaption{position:absolute;left:18px;bottom:16px;font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;font-weight:600;color:#f5f1e9;background:rgba(2,9,23,.6);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:8px 12px;border-radius:999px;border:1px solid var(--line)}
.gs-photo-sec{position:relative;overflow:hidden;isolation:isolate}
.gs-photo-sec>.gs-sbg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;opacity:.24}
.gs-photo-sec>.gs-sfade{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,var(--navy) 0%,rgba(5,16,30,.55) 35%,rgba(5,16,30,.55) 65%,var(--navy) 100%)}
#contact.gs-photo-sec>.gs-sbg{opacity:.2}

/* pain points */
.pains{border-top:1px solid var(--line);gap:20px}
.pains div{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:24px;margin-top:24px;transition:border-color .25s,transform .25s}
.pains div:hover{border-color:rgba(237,179,69,.45);transform:translateY(-3px)}
.pains .n{font-family:var(--display);color:var(--copper);font-size:1.4rem}
.pains p{color:var(--muted)}

/* solutions */
.sol{gap:20px;background:transparent;border:0}
.sol article{background:var(--card);border:1px solid var(--line);border-radius:.75rem;transition:border-color .25s,transform .25s,box-shadow .25s}
.sol article:hover{border-color:rgba(237,179,69,.5);transform:translateY(-4px);box-shadow:var(--shadow-gold)}
.sol h4{font-family:var(--body);color:var(--copper)}
.sol li::before{width:7px;height:7px;transform:rotate(45deg);background:var(--copper)}
.sol p,.sol .kpi{color:var(--muted)}
.sol .kpi{border-top-color:var(--line)}
.sol .kpi b{color:var(--ink)}

/* agents */
.agents{gap:16px;background:transparent;border:0}
.agent{background:var(--card);border:1px solid var(--line);border-radius:.75rem;transition:border-color .25s,transform .25s}
.agent:hover{border-color:rgba(237,179,69,.5);transform:translateY(-3px)}
.agent .id b{font-family:var(--display);font-weight:600;font-size:1.15rem;color:var(--copper-bright)}
.agent .hc{border-top-color:var(--line);color:var(--ink)}
.agent .hc .hl{font-family:var(--body);color:var(--copper)}
.rules dd,.agent p{color:var(--muted)}
.console{background:#020917;border:1px solid var(--line);border-radius:.75rem;box-shadow:var(--shadow-gold);overflow:hidden}
.console header{border-bottom-color:var(--line)}
.console button{border-radius:var(--radius);border-color:var(--copper);color:var(--copper-bright)}

/* industries */
.ind{gap:20px}
.ind article{background:rgba(11,25,42,.78);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid var(--line);border-top:2px solid var(--copper);border-radius:.75rem;padding:22px}
.ind p{color:#b3c0cd}

/* process */
.proc li{border-top-color:var(--line)}
.proc li::before{background:var(--gold-grad);color:var(--on-copper);font-family:var(--body)}
.proc li:first-child{border-top-color:var(--copper)}
.proc .when{font-family:var(--body);color:var(--copper)}
.proc p{color:var(--muted)}
.proc .dl{background:var(--copper-soft);border:1px solid rgba(237,179,69,.25);border-radius:var(--radius)}
.proc .dl b{font-family:var(--body);color:var(--copper)}

/* technology */
.layer{border-color:var(--line);background:var(--card);border-radius:var(--radius);overflow:hidden}
.layer h3{background:var(--card-2);color:var(--ink);font-family:var(--body);font-weight:700}
.layer.core h3{background:var(--gold-grad);color:var(--on-copper)}
.chips span{background:rgba(5,16,30,.6);border-color:var(--line);border-radius:999px;color:var(--ink)}
.arrow{color:var(--copper)}
.sec-box{border-top:2px solid var(--copper)}
.sec-box li::before{border-color:var(--copper)}

/* network */
.gs-globe{display:block;width:100%;height:auto;border-radius:.9rem;border:1px solid var(--line);box-shadow:var(--shadow-gold)}
.lanes{border-top-color:var(--line)}
.lanes li{border-bottom-color:var(--line)}
.lanes span.m{color:var(--muted)}

/* comparison table */
.tbl{border-color:var(--line);background:var(--card);border-radius:.75rem}
th,td{border-bottom-color:var(--line)}
thead th{background:var(--card-2);color:var(--ink);font-family:var(--body)}
thead th.us{background:var(--gold-grad);color:var(--on-copper)}
td.us{background:var(--copper-soft);color:var(--ink)}

/* savings */
.calc{border-color:var(--line);background:var(--card);border-radius:.75rem;overflow:hidden}
.calc>div+div{background:#020917;border-left-color:var(--line)}
.big{font-family:var(--display);font-weight:400;background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
input[type=range]{accent-color:#edb345}

/* engagement models */
.model{background:var(--card);border-color:var(--line);border-radius:.75rem}
.model.pop{border:1px solid var(--copper);box-shadow:var(--shadow-gold)}
.model .badge{background:var(--gold-grad);color:var(--on-copper);border-radius:999px;font-family:var(--body)}
.model p{color:var(--muted)}
.model li::before{color:var(--copper)}
.model .fee{border-top-color:var(--line);font-family:var(--display);font-weight:600}

/* ESG, glossary, FAQ */
.esg div{background:var(--card);border:1px solid var(--line);border-left:3px solid var(--copper);border-radius:var(--radius)}
.esg p,.gloss dd,.faq .ans{color:var(--muted)}
.gloss div,.faq,.faq details{border-color:var(--line)}
.gloss dt{font-family:var(--display);font-weight:600}
.faq summary{font-family:var(--display);font-weight:400;font-size:1.15rem}
.faq summary::after{color:var(--copper)}

/* contact */
.contact ol li::before{border-color:var(--copper);color:var(--copper-bright);border-radius:999px;font-family:var(--body)}
.office{border-top-color:var(--line)}
form.lead{background:rgba(11,25,42,.85);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--line);border-top:3px solid var(--copper);border-radius:.75rem;color:var(--ink)}
.formmsg{color:var(--ok)}

/* footer */
footer.foot{background:#020917;border-top:1px solid var(--line)}
.foot h3{font-family:var(--body);color:var(--copper)}
.foot .legal{border-top-color:var(--line)}
.foot .plate{border-radius:var(--radius)}

/* gentle reveal */
@media (prefers-reduced-motion:no-preference){
  .gs-reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
  .gs-reveal.gs-in{opacity:1;transform:none}
}
