/* Layout concept: an assay ledger. Onyx bands carry real photography from the Tanzania
   operation; stone-white pages carry ledger hairlines; mono "hallmark" stamps carry the figures. */
:root{
  --paper:#F4F2ED;      /* stone white page */
  --stone:#E9E5DB;      /* recessed panels */
  --ink:#17160F;        /* body ink */
  --muted:#686355;      /* secondary text */
  --line:#D8D1C1;       /* ledger hairlines */
  --onyx:#0E1311;       /* dark bands, green-black */
  --onyx-2:#161D1A;
  --on-onyx:#EEEADF;
  --on-onyx-muted:#A9A595;
  --gold:#A87D28;       /* text-safe gold on paper */
  --gold-hi:#E2C06A;    /* gold on onyx */
  --gold-grad:linear-gradient(100deg,#B5852C 0%,#F3D57E 38%,#DDAE45 62%,#A87A24 100%);
  --f-display:"Marcellus","Trajan Pro","Cinzel",Georgia,serif;
  --f-body:"Hanken Grotesk","Helvetica Neue",Arial,sans-serif;
  --f-mono:"IBM Plex Mono",ui-monospace,Menlo,Consolas,monospace;
  --wrap:1200px;
  --gut:max(16px, env(safe-area-inset-left, 0px));
  --gut-r:max(16px, env(safe-area-inset-right, 0px));
  color-scheme:light;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font:400 17px/1.65 var(--f-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:60;background:var(--onyx)}
img,video{max-width:100%;display:block}
a{color:inherit}
:focus-visible{outline:2px solid var(--gold-hi);outline-offset:3px}
h1,h2,h3{font-family:var(--f-display);font-weight:400;letter-spacing:.01em;text-wrap:balance;margin:0;line-height:1.12}
h1{font-size:clamp(2.4rem,5.4vw,4.4rem)}
h2{font-size:clamp(1.9rem,3.6vw,2.9rem)}
h3{font-size:1.45rem;line-height:1.25}
p{margin:0}
.wrap{max-width:var(--wrap);margin:0 auto;padding-left:var(--gut);padding-right:var(--gut-r)}
.eyebrow{font:500 .74rem/1.2 var(--f-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--gold);display:flex;align-items:center;gap:.8em}
.eyebrow::before{content:"";width:28px;height:1px;background:currentColor}
.on-onyx .eyebrow{color:var(--gold-hi)}
.lead{font-size:1.18rem;line-height:1.6;color:var(--muted);max-width:62ch}
.on-onyx .lead{color:var(--on-onyx-muted)}
.prose{max-width:66ch;display:grid;gap:1.1em}
.prose p{color:var(--ink)}

/* Header */
.site-head{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:var(--onyx);color:var(--on-onyx);border-bottom:1px solid rgba(226,192,106,.18)}
.site-head .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:78px}
.brand{display:flex;align-items:center;gap:14px;text-decoration:none}
.brand img{width:42px;height:43px}
.brand-name{display:grid;line-height:1}
.brand-name b{font:400 1.32rem/1 var(--f-display);letter-spacing:.24em;background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.brand-name small{font:500 .58rem/1 var(--f-mono);letter-spacing:.32em;color:var(--on-onyx-muted);margin-top:7px;text-transform:uppercase}
.nav{display:flex;align-items:center;gap:4px}
.nav a{text-decoration:none;font-size:.86rem;letter-spacing:.04em;padding:10px 12px;color:var(--on-onyx-muted);position:relative;white-space:nowrap}
.nav a:hover,.nav a[aria-current="page"]{color:var(--on-onyx)}
.nav a[aria-current="page"]::after{content:"";position:absolute;left:12px;right:12px;bottom:2px;height:1px;background:var(--gold-hi)}
.nav .btn{margin-left:10px}
.menu-btn{display:none;background:none;border:1px solid rgba(226,192,106,.4);color:var(--on-onyx);font:500 .72rem var(--f-mono);letter-spacing:.18em;padding:10px 14px;cursor:pointer;text-transform:uppercase}
@media (max-width:1320px){
  .menu-btn{display:block}
  .nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--onyx);flex-direction:column;align-items:stretch;padding:8px var(--gut-r) 22px var(--gut);border-bottom:1px solid rgba(226,192,106,.2)}
  .nav.open{display:flex}
  .nav a{padding:14px 0;border-bottom:1px solid rgba(255,255,255,.07);font-size:1rem}
  .nav a[aria-current="page"]::after{display:none}
  .nav a[aria-current="page"]{color:var(--gold-hi)}
  .nav .btn{margin:14px 0 0;text-align:center}
}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.6em;text-decoration:none;font:500 .78rem/1 var(--f-mono);letter-spacing:.16em;text-transform:uppercase;padding:15px 22px;border:1px solid var(--gold);color:var(--ink);background:transparent;cursor:pointer;transition:background .2s,color .2s}
.btn:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.btn-gold{background:var(--gold-grad);border:0;color:#1A160B}
.btn-gold:hover{background:var(--on-onyx);color:var(--onyx)}
.on-onyx .btn:not(.btn-gold){color:var(--on-onyx);border-color:rgba(226,192,106,.55)}
.on-onyx .btn:not(.btn-gold):hover{background:var(--on-onyx);color:var(--onyx)}
.btn-row{display:flex;flex-wrap:wrap;gap:12px}
.arrow::after{content:"→";font-family:var(--f-body);letter-spacing:0}

/* Bands */
.band{padding-block:clamp(64px,9vw,120px)}
.band-tight{padding-block:clamp(48px,6vw,80px)}
.on-onyx{background:var(--onyx);color:var(--on-onyx)}
.on-stone{background:var(--stone)}
.sec-head{display:grid;gap:18px;margin-bottom:clamp(36px,5vw,56px);max-width:760px}

/* Hero (home) */
.hero{position:relative;background:var(--onyx);color:var(--on-onyx);overflow:hidden;isolation:isolate}
.hero video,.hero .hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(14,19,17,.94) 0%,rgba(14,19,17,.78) 45%,rgba(14,19,17,.35) 100%),linear-gradient(0deg,rgba(14,19,17,.9) 0%,rgba(14,19,17,0) 40%)}
.hero .wrap{padding-block:clamp(84px,12vw,150px) 0;display:grid;gap:28px}
.hero h1{max-width:15ch}
.hero h1 em{font-style:normal;background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero .lead{color:#C9C5B6}
.hallmarks{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid rgba(226,192,106,.25);margin-top:clamp(40px,7vw,90px)}
.hallmarks div{padding:22px 18px 26px 0;display:grid;gap:6px;min-width:0}
.hallmarks div+div{padding-left:18px;border-left:1px solid rgba(226,192,106,.18)}
.hallmarks b{font:500 1.05rem/1.2 var(--f-mono);color:var(--gold-hi);letter-spacing:.06em}
.hallmarks span{font-size:.8rem;color:var(--on-onyx-muted);letter-spacing:.04em}
@media (max-width:760px){.hallmarks{grid-template-columns:repeat(2,minmax(0,1fr))}.hallmarks div:nth-child(3){padding-left:0;border-left:0}.hallmarks div:nth-child(n+3){border-top:1px solid rgba(226,192,106,.18)}}

/* Page hero (inner) */
.page-hero{position:relative;background:var(--onyx);color:var(--on-onyx);isolation:isolate;overflow:hidden}
.page-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;opacity:.55}
.page-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(14,19,17,.95),rgba(14,19,17,.6))}
.page-hero .wrap{padding-block:clamp(72px,10vw,128px) clamp(48px,6vw,72px);display:grid;gap:20px}
.page-hero h1{max-width:18ch}
.crumbs{font:500 .72rem var(--f-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--on-onyx-muted);display:flex;gap:10px;flex-wrap:wrap}
.crumbs a{text-decoration:none;color:var(--gold-hi)}
.subnav{background:var(--onyx-2);border-top:1px solid rgba(226,192,106,.15)}
.subnav .wrap{display:flex;gap:6px;flex-wrap:wrap;padding-block:0}
.subnav a{font:500 .74rem var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--on-onyx-muted);text-decoration:none;padding:16px 14px 16px 0;margin-right:18px;border-bottom:2px solid transparent}
.subnav a[aria-current="page"]{color:var(--on-onyx);border-color:var(--gold-hi)}

/* Splits */
.split{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(32px,6vw,88px);align-items:center}
.split.rev>:first-child{order:2}
.split>*{min-width:0}
@media (max-width:880px){.split{grid-template-columns:1fr}.split.rev>:first-child{order:0}}
.frame{position:relative}
.frame img,.frame video{width:100%;height:100%;object-fit:cover;aspect-ratio:4/5}
.frame.wide img,.frame.wide video{aspect-ratio:16/10}
.caption{font:500 .7rem/1.4 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-top:12px}
.on-onyx .caption{color:var(--on-onyx-muted)}

/* Ledger list (definitions with hairlines) */
.ledger{display:grid;border-top:1px solid var(--line)}
.ledger>div{display:grid;grid-template-columns:minmax(0,14rem) minmax(0,1fr);gap:24px;padding:22px 0;border-bottom:1px solid var(--line)}
.ledger dt,.ledger .k{font-family:var(--f-display);font-size:1.18rem;line-height:1.3}
.ledger dd,.ledger .v{margin:0;color:var(--muted)}
.on-onyx .ledger,.on-onyx .ledger>div{border-color:rgba(226,192,106,.18)}
.on-onyx .ledger .v,.on-onyx .ledger dd{color:var(--on-onyx-muted)}
@media (max-width:640px){.ledger>div{grid-template-columns:1fr;gap:6px}}

/* Grid of points */
.points{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}
.points>div{padding:30px 28px 34px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;gap:12px;align-content:start;min-width:0}
.points .mark{font:500 .7rem var(--f-mono);letter-spacing:.18em;color:var(--gold);text-transform:uppercase}
.points p{color:var(--muted)}
.on-onyx .points,.on-onyx .points>div{border-color:rgba(226,192,106,.18)}
.on-onyx .points p{color:var(--on-onyx-muted)}
.on-onyx .points .mark{color:var(--gold-hi)}
.points.two{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:900px){.points{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.points,.points.two{grid-template-columns:1fr}}

/* Entity cards */
.entities{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.entity{border:1px solid var(--line);padding:30px;display:grid;gap:14px;align-content:start;background:var(--paper)}
.entity .loc{font:500 .72rem var(--f-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}
.entity p{color:var(--muted)}
@media (max-width:760px){.entities{grid-template-columns:1fr}}

/* Spec sheet */
.spec{width:100%;border-collapse:collapse;font-size:.98rem}
.spec th,.spec td{text-align:left;padding:16px 0;border-bottom:1px solid var(--line);vertical-align:top}
.spec th{font:500 .74rem var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);width:38%;padding-right:20px;padding-top:19px}
.spec td{font-variant-numeric:tabular-nums}
.spec td b{font-family:var(--f-mono);font-weight:500}
.table-scroll{overflow-x:auto}

/* Fineness scale */
.fineness{display:grid;gap:14px}
.scale{position:relative;height:56px;border:1px solid var(--line);background:repeating-linear-gradient(90deg,transparent 0 calc(10% - 1px),var(--line) calc(10% - 1px) 10%)}
.scale .seg{position:absolute;top:8px;bottom:8px;display:flex;align-items:center;justify-content:center;font:500 .7rem var(--f-mono);letter-spacing:.1em;color:#1A160B;background:var(--gold-grad);white-space:nowrap}
.scale .seg.fine{background:var(--onyx);color:var(--gold-hi)}
.scale-axis{display:flex;justify-content:space-between;font:500 .68rem var(--f-mono);color:var(--muted);font-variant-numeric:tabular-nums}
.scale-legend{display:flex;flex-wrap:wrap;gap:8px 24px;font-size:.88rem;color:var(--muted)}
.scale-legend i{display:inline-block;width:12px;height:12px;margin-right:8px;vertical-align:-1px;background:var(--gold-grad)}
.scale-legend i.fine{background:var(--onyx)}

/* Stamp */
.stamp{display:inline-grid;place-items:center;border:1px solid var(--gold);padding:10px 16px;font:500 .78rem/1.3 var(--f-mono);letter-spacing:.18em;color:var(--gold);text-transform:uppercase;text-align:center}
.on-onyx .stamp{border-color:var(--gold-hi);color:var(--gold-hi)}

/* People */
.person{display:grid;grid-template-columns:minmax(0,340px) minmax(0,1fr);gap:clamp(28px,5vw,64px);align-items:start;padding-block:48px;border-top:1px solid var(--line)}
.person:first-of-type{border-top:0;padding-top:0}
.person .portrait{background:var(--stone);aspect-ratio:4/5;overflow:hidden;position:relative}
.person .portrait img{width:100%;height:100%;object-fit:cover;object-position:50% 18%}
.person .mono{position:absolute;inset:0;display:grid;place-items:center;background:var(--onyx);font:400 4.5rem var(--f-display);letter-spacing:.08em}
.person .mono span{background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.person .role{font:500 .74rem var(--f-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-top:10px}
.person .body{display:grid;gap:16px;min-width:0}
.person .body p{color:var(--muted);max-width:62ch}
@media (max-width:760px){.person{grid-template-columns:1fr}.person .portrait{max-width:340px}}

/* Quote */
.quote{font:400 clamp(1.7rem,3.4vw,2.6rem)/1.25 var(--f-display);max-width:24ch;text-wrap:balance}
.quote em{font-style:normal;background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent}

/* Contact */
.contact-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(32px,6vw,80px);align-items:start}
@media (max-width:900px){.contact-grid{grid-template-columns:1fr}}
.office{display:grid;gap:10px;padding:26px 0;border-top:1px solid var(--line)}
.office h3{font-size:1.25rem}
.office address{font-style:normal;color:var(--muted);line-height:1.6}
.office .tel{font-family:var(--f-mono);font-size:.95rem;font-variant-numeric:tabular-nums;user-select:all}
.form{display:grid;gap:18px;background:var(--onyx);color:var(--on-onyx);padding:clamp(24px,4vw,44px)}
.form h2{font-size:1.9rem}
.field{display:grid;gap:8px}
.field label{font:500 .7rem var(--f-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--on-onyx-muted)}
.field input,.field select,.field textarea{font:inherit;font-size:1rem;color:var(--on-onyx);background:transparent;border:0;border-bottom:1px solid rgba(226,192,106,.35);padding:10px 0;border-radius:0;width:100%}
.field select option{color:#111;background:#fff}
.field textarea{min-height:120px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-bottom-color:var(--gold-hi)}
.row2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
@media (max-width:560px){.row2{grid-template-columns:1fr}}
.form-note{font-size:.9rem;color:var(--on-onyx-muted)}
.form-msg{border:1px solid var(--gold-hi);padding:14px 16px;font-size:.95rem}
.wa{display:inline-flex;align-items:center;gap:10px;text-decoration:none;font:500 .78rem var(--f-mono);letter-spacing:.14em;text-transform:uppercase;padding:14px 18px;border:1px solid #2E7D57;color:#1E6B47}
.wa svg{width:18px;height:18px;fill:currentColor}

/* CTA band */
.cta .wrap{display:flex;justify-content:space-between;align-items:end;gap:32px;flex-wrap:wrap}

/* Footer */
.site-foot{background:#0A0E0C;color:var(--on-onyx-muted);font-size:.92rem}
.site-foot .wrap{padding-block:72px 28px}
.foot-grid{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,1fr));gap:40px}
.foot-grid h4{font:500 .7rem var(--f-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--gold-hi);margin:0 0 16px}
.foot-grid ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.foot-grid a{text-decoration:none}
.foot-grid a:hover{color:var(--on-onyx)}
.foot-grid address{font-style:normal;line-height:1.6}
.foot-legal{margin-top:56px;padding-top:22px;border-top:1px solid rgba(226,192,106,.15);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:.8rem}
.foot-legal a{text-decoration:none;margin-left:18px}
@media (max-width:900px){.foot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.foot-grid{grid-template-columns:1fr}.foot-legal a{margin:0 18px 0 0}}

.legal{max-width:72ch;display:grid;gap:1em}
.legal h2{font-size:1.5rem;margin-top:1.2em}
.legal p,.legal li{color:var(--muted)}
.note{font-size:.88rem;color:var(--muted);border-left:2px solid var(--gold);padding-left:14px;max-width:70ch}

@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero video,.frame video{display:none}*{transition:none!important}}
.scale .seg-label{position:absolute;right:3.5%;top:50%;transform:translateY(-50%);font:500 .7rem var(--f-mono);letter-spacing:.1em;color:var(--ink);background:var(--stone);padding:2px 6px;white-space:nowrap}
@media (max-width:560px){.scale .seg-label{font-size:.6rem}.scale .seg{font-size:.6rem}}
.nav .btn-gold{color:#1A160B;padding:12px 18px}
.nav .btn-gold:hover{color:var(--onyx)}
@media (max-width:700px){.scale .seg-label,.scale .seg{font-size:0;padding:0}}
.faq{border-top:1px solid var(--line);max-width:860px}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;list-style:none;padding:22px 40px 22px 0;font-family:var(--f-display);font-size:1.3rem;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:4px;top:18px;font:400 1.6rem var(--f-body);color:var(--gold)}
.faq details[open] summary::after{content:"–"}
.faq details p{padding:0 0 24px;color:var(--muted);max-width:68ch}
/* Wordmark set like the official logo (geometric sans, black/ivory caps) */
.brand-name b{font:600 1rem/1 "Montserrat",var(--f-body);letter-spacing:.02em;background:none;-webkit-background-clip:border-box;background-clip:border-box;color:var(--on-onyx)}
.brand-name small{font:500 .62rem/1 "Montserrat",var(--f-body);letter-spacing:.42em;color:var(--on-onyx);margin-top:6px;text-align:center}
.brand img{width:40px;height:42px}
@media (max-width:420px){.brand-name b{font-size:.84rem}.brand-name small{font-size:.54rem;letter-spacing:.34em}}
.profiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-top:1px solid var(--line)}
.profile{padding:32px 36px 36px 0;display:grid;gap:10px;align-content:start;min-width:0}
.profile+.profile{padding:32px 0 36px 36px;border-left:1px solid var(--line)}
.profile h3{font-size:1.9rem}
.profile .role{font:500 .74rem var(--f-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
.profile p:not(.role){color:var(--muted);max-width:60ch}
@media (max-width:760px){.profiles{grid-template-columns:1fr}.profile,.profile+.profile{padding:28px 0;border-left:0}.profile+.profile{border-top:1px solid var(--line)}}
.person.profile-full{grid-template-columns:1fr}
.site-foot .brand{flex-direction:column;align-items:center;gap:14px;justify-self:start;display:inline-flex}
.site-foot .brand img{width:92px;height:96px}
.site-foot .brand-name b{font-size:1.15rem}
.site-foot .brand-name small{font-size:.74rem}
.site-head .brand-name b{font-size:1.08rem}
.brand-name b{white-space:nowrap}
@media (max-width:480px){.site-head .brand-name b{font-size:.86rem}.site-head .brand{gap:10px}.site-head .brand img{width:32px;height:34px}}

.nav a{padding:10px 10px;font-size:.84rem}
.nav a[aria-current="page"]::after{left:10px;right:10px}
@media (max-width:1320px){.nav a{padding:14px 0;font-size:1rem}}
.brand{flex-shrink:0}
