/* LSLS Trading Ltd — site styles */
:root{
  --bg:#0D0D0E;
  --bg-alt:#121214;
  --surface:#17171A;
  --surface-2:#1C1C1F;
  --line:#26262A;
  --line-2:#2E2E33;
  --text:#F4F2ED;
  --text-2:#D6D2C9;
  --text-3:#C9C5BC;
  --muted:#A9A59C;
  --gold:#D9B86A;
  --gold-hover:#F0D58F;
  --gold-line:#6E5D33;
  --serif:'Sora',system-ui,-apple-system,'Segoe UI',sans-serif;
  --sans:'Manrope',system-ui,-apple-system,'Segoe UI',sans-serif;
  --wrap:1240px;
  --pad:32px;
  --section:112px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--gold)}
a:hover{color:var(--gold-hover)}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
h1,h2,h3,p,ul,ol,dl,dd,figure,blockquote{margin:0}
ul,ol{padding:0;list-style:none}
.wrap{max-width:var(--wrap);margin:0 auto;padding-left:var(--pad);padding-right:var(--pad)}
.section{padding-top:var(--section);padding-bottom:var(--section)}
.alt{background:var(--bg-alt);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.skip{position:absolute;left:-9999px;top:0;background:var(--gold);color:var(--bg);padding:10px 16px;z-index:10}
.skip:focus{left:16px;top:16px}

/* type */
.eyebrow{font-size:14px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;color:var(--gold)}
.display{font-family:var(--serif);font-weight:400;letter-spacing:-.02em}
.h1{font-size:clamp(34px,4.6vw,54px);line-height:1.12}
.h2{font-size:clamp(28px,3.4vw,40px);line-height:1.18}
.gold{color:var(--gold)}
.lead{font-size:19px;color:var(--text-3)}
.body-lg{font-size:18px;color:var(--text-2)}
.muted{color:var(--muted)}
.stack{display:flex;flex-direction:column;gap:20px}
.stack-sm{display:flex;flex-direction:column;gap:14px}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:14px 28px;border-radius:2px;font-weight:600;font-size:16px;text-decoration:none;border:1px solid transparent;font-family:inherit;cursor:pointer}
.btn-gold{background:var(--gold);color:var(--bg)}
.btn-gold:hover{background:var(--gold-hover);color:var(--bg)}
.btn-line{border-color:#4A4740;color:var(--text);font-weight:500}
.btn-line:hover{border-color:var(--gold);color:var(--text)}
.btn-row{display:flex;flex-wrap:wrap;gap:16px}
.link-arrow{align-self:flex-start;color:var(--gold);text-decoration:none;font-weight:600;padding:10px 0;border-bottom:1px solid var(--gold-line)}

/* header */
.site-header{border-bottom:1px solid var(--line);background:var(--bg);position:sticky;top:0;z-index:5}
.header-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding-top:18px;padding-bottom:18px}
.logo img{height:52px;width:auto}
.nav{display:flex;flex-wrap:wrap;align-items:center;gap:8px 32px;font-size:15px;font-weight:500}
.nav a{color:var(--text-3);text-decoration:none;padding:10px 0}
.nav a:hover,.nav a[aria-current="page"]{color:var(--text)}
.nav .btn{color:var(--bg);padding:11px 20px;min-height:44px}

/* hero */
.hero{display:flex;flex-wrap:wrap;gap:64px;align-items:center;padding-top:96px;padding-bottom:88px}
.hero-copy{flex:1 1 520px;min-width:0;display:flex;flex-direction:column;gap:28px}
.hero-copy .lead{max-width:560px}
.dash{flex:1 1 420px;min-width:0;background:#151517;border:1px solid #2A2A2E;border-radius:6px;padding:28px;display:flex;flex-direction:column;gap:22px}
.dash-top{display:flex;justify-content:space-between;align-items:center;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.dots{display:flex;gap:6px}.dots span{width:8px;height:8px;border-radius:50%;background:#3A3A3F}.dots span:last-child{background:var(--gold)}
.kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.kpi{background:var(--surface-2);border-radius:4px;padding:14px;display:flex;flex-direction:column;gap:10px;font-size:12px;color:var(--muted)}
.kpi svg{width:100%;height:30px}
.bars-card{background:var(--surface-2);border-radius:4px;padding:18px 18px 12px;display:flex;flex-direction:column;gap:12px;font-size:12px;color:var(--muted)}
.bars{display:flex;align-items:flex-end;gap:10px;height:120px}
.bars span{flex:1;border-radius:2px 2px 0 0;background:#34322C}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips span{font-size:12px;border:1px solid #34343A;color:var(--text-3);padding:5px 10px;border-radius:20px}

/* credibility strip */
.strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:32px;padding-top:40px;padding-bottom:40px}
.stat{display:flex;flex-direction:column;gap:4px}
.stat b{font-family:var(--serif);font-size:28px;font-weight:500;letter-spacing:-.01em;color:var(--gold);line-height:1.2}
.stat span{font-size:14px;color:var(--muted)}

/* two-col */
.split{display:flex;flex-wrap:wrap;gap:64px}
.split > *{min-width:0}
.col-narrow{flex:1 1 360px}
.col-wide{flex:1.4 1 520px}

/* services */
.services-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:56px}
.services-head .stack-sm{max-width:640px}
.services-head p.muted{max-width:380px;font-size:16px}
.grid-services{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.service{background:var(--bg-alt);padding:40px 36px;display:flex;flex-direction:column;gap:16px}
.service .num{font-family:var(--serif);font-size:15px;color:var(--gold)}
.service h3{font-size:23px;font-weight:600;line-height:1.3}
.service p{color:var(--text-3);font-size:16px}
.service .tags{color:var(--muted);font-size:14px;line-height:1.8}

/* specialism list */
.check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line-2);column-gap:24px}
.check-grid li{padding:18px 0;border-bottom:1px solid var(--line-2);font-size:16px}

/* experience list */
.exp-list{border-top:1px solid var(--line-2)}
.exp-list li{padding:24px 0;border-bottom:1px solid var(--line-2);display:flex;flex-direction:column;gap:4px}
.exp-list b{font-family:var(--serif);font-size:24px;font-weight:500}
.exp-list span{font-size:15px;color:var(--muted)}
.exp-list.gold b{font-size:28px;color:var(--gold)}
.exp-list.gold span{font-size:14px}

/* steps */
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:40px;margin-top:56px}
.steps li{display:flex;flex-direction:column;gap:14px;border-top:2px solid #3A3A3F;padding-top:24px}
.steps li:first-child{border-top-color:var(--gold)}
.steps .num{font-family:var(--serif);font-size:15px;color:var(--muted)}
.steps h3{font-size:22px;font-weight:600}
.steps p{color:var(--text-3);font-size:16px}

/* testimonials */
.quotes{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(270px,100%),1fr));gap:24px;margin-top:56px}
.quotes.wide{grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),1fr))}
.quotes figure{background:var(--surface);border:1px solid #2A2A2E;padding:32px}
.quotes blockquote{font-family:var(--serif);font-weight:300;font-size:17px;line-height:1.65}

/* faq */
.faq{border-top:1px solid var(--line-2)}
.faq details{border-bottom:1px solid var(--line-2);padding:22px 0}
.faq summary{cursor:pointer;font-size:19px;font-weight:600;padding:4px 32px 4px 0;list-style:none;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:0;top:0;font-family:var(--serif);font-size:28px;font-weight:300;color:var(--gold);line-height:1.2}
.faq details[open] summary::after{content:"–"}
.faq details p{margin-top:14px;color:var(--text-3);font-size:16px}

/* timeline cards */
.cards4{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:1px;background:var(--line);border:1px solid var(--line);margin-top:48px}
.cards4 li{background:var(--bg);padding:32px;display:flex;flex-direction:column;gap:10px}
.cards4 .tag{font-size:14px;color:var(--gold);font-weight:600}
.cards4 h3{font-size:20px;font-weight:600}
.cards4 p{color:var(--text-3);font-size:15px}
.alt .cards4 li{background:var(--bg-alt)}

/* contact */
.contact-title{font-family:var(--serif);font-weight:400;letter-spacing:-.02em;font-size:clamp(40px,5vw,56px);line-height:1.05;color:var(--gold)}
.contact-details{display:flex;flex-direction:column;gap:18px;margin-top:16px}
.contact-details dt{font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.contact-details a{color:var(--text);text-decoration:none;font-size:17px}
.contact-details a:hover{color:var(--gold)}
.form{flex:1.3 1 480px;min-width:0;background:var(--surface);border:1px solid #2A2A2E;padding:40px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.form label{display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:500;color:var(--text-3)}
.form .full{grid-column:1/-1}
.form input,.form select,.form textarea{background:var(--bg);border:1px solid #3A3A3F;color:var(--text);padding:14px;font:inherit;font-size:16px;border-radius:2px;width:100%}
.form input:focus,.form select:focus,.form textarea:focus{border-color:var(--gold);outline:none}
.form textarea{resize:vertical;min-height:140px}
.form button{justify-self:start}
.form .note{font-size:13px;color:var(--muted)}
.hidden{position:absolute;left:-9999px}

/* footer */
.site-footer{border-top:1px solid var(--line)}
.footer-inner{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;padding-top:40px;padding-bottom:40px;font-size:14px;color:var(--muted)}
.footer-brand{display:flex;flex-wrap:wrap;align-items:center;gap:24px}
.footer-brand img{height:64px;width:auto}
.footer-links{display:flex;flex-wrap:wrap;gap:24px}
.footer-links a{color:var(--muted);text-decoration:none}
.footer-links a:hover{color:var(--text)}

/* simple page */
.simple{min-height:60vh;display:flex;flex-direction:column;justify-content:center;gap:24px;padding-top:120px;padding-bottom:120px;max-width:720px}

@media (max-width:760px){
  :root{--pad:20px;--section:72px}
  .hero{padding-top:56px;padding-bottom:56px;gap:40px}
  .logo img{height:40px}
  .nav{gap:4px 20px;font-size:14px}
  .nav .btn{padding:10px 16px}
  .form{grid-template-columns:1fr;padding:24px}
  .check-grid{grid-template-columns:1fr}
  .strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
  .stat b{font-size:26px}
  .service{padding:32px 24px}
  .split{gap:40px}
  .site-header{position:static}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
