:root {
  --bg: oklch(1 0 0);
  --ink: oklch(0.17 0.012 20);
  --dark: oklch(0.13 0.008 20);
  --quiet: oklch(0.46 0.018 24);
  --line: oklch(0.85 0.014 35);
  --gold: oklch(0.69 0.115 85);
  --copper: oklch(0.52 0.17 29);
  --serif: "Source Serif 4", Georgia, serif;
  --sans: Manrope, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --text-body: 1rem;
  --text-lead: 1.125rem;
  --text-caption: .72rem;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--bg); font-family: var(--sans); font-size: var(--text-body); line-height: 1.55; font-kerning: normal; font-optical-sizing: auto; }
a { color: inherit; text-decoration: none; }
a:focus-visible, button:focus-visible { outline: 3px solid var(--copper); outline-offset: 4px; }
.page-width { width: min(1200px, calc(100% - 48px)); margin-inline: auto; }
.skip-link { position: fixed; left: 16px; top: -4rem; z-index: 20; background: var(--bg); padding: 10px 16px; }
.skip-link:focus { top: 16px; }
.sr-only { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); }
.site-header { position: absolute; inset: 0 0 auto; z-index: 5; height: 86px; padding: 0 clamp(24px, 4vw, 64px); display: flex; align-items: center; justify-content: space-between; color: white; border-bottom: 1px solid oklch(1 0 0 / .2); }
.wordmark { display: inline-flex; align-items: center; gap: 11px; font-size: 1.08rem; font-weight: 700; letter-spacing: -.045em; }
.mark { display: inline-flex; width: 25px; height: 25px; transform: rotate(-35deg); }
.mark i { width: 11px; height: 25px; display: block; border: 1.5px solid currentColor; border-radius: 50% 50% 45% 45%; }
.mark i + i { margin-left: -3px; }
.site-header nav { display: flex; gap: clamp(18px, 2.5vw, 40px); font-size: .75rem; font-weight: 600; }
.site-header nav a, .lang { opacity: .88; transition: opacity .2s ease; }
.site-header nav a:hover, .lang:hover { opacity: 1; }
.header-tools { display: flex; align-items: center; gap: 22px; }
.language-switch { display: flex; align-items: center; gap: 10px; font-size: .7rem; font-weight: 750; letter-spacing: .08em; }
.language-switch a { color: inherit; opacity: .48; transition: opacity .2s ease; }
.language-switch a:hover, .language-switch a[aria-current="page"] { opacity: 1; }
.language-switch a[aria-current="page"] { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 5px; }
.lang, .menu { border: 0; background: none; color: inherit; font: inherit; cursor: pointer; }
.lang { font-size: .72rem; font-weight: 700; }.lang span { padding-left: 5px; }
.menu { display: none; width: 28px; padding: 4px 0; }.menu span:not(.sr-only) { display: block; height: 1px; background: currentColor; margin: 5px 0; }
.mobile-nav { position: fixed; z-index: 4; top: 86px; inset-inline: 0; padding: 20px 24px 28px; background: var(--dark); color: white; }.mobile-nav a { display: block; padding: 11px 0; border-bottom: 1px solid oklch(1 0 0 / .15); }
.hero { min-height: 720px; height: 100svh; position: relative; display: grid; overflow: hidden; color: white; background: var(--dark); }
.hero > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 65% center; animation: hero-in 1.1s cubic-bezier(.16,1,.3,1) both; }
.hero-shade { position: absolute; inset: 0; background: linear-gradient(90deg, oklch(0.08 0.01 25 / .86) 0%, oklch(0.08 0.01 25 / .55) 37%, oklch(0.08 0.01 25 / .05) 75%), linear-gradient(0deg, oklch(0.08 0.01 25 / .52), transparent 45%); }
.hero-copy { position: relative; z-index: 1; align-self: center; padding-top: 70px; }
.location, .section-tag { font-size: .67rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; margin: 0 0 24px; }
.location { color: oklch(.9 .03 85); }
h1, h2, h3, p { margin-top: 0; }h1, h2, h3 { font-weight: 500; text-wrap: balance; font-variant-ligatures: common-ligatures discretionary-ligatures contextual; font-feature-settings: "kern" 1, "liga" 1, "clig" 1, "dlig" 1; }
h1 { font-family: var(--serif); font-size: clamp(3.6rem, 7.3vw, 6rem); line-height: .91; letter-spacing: -.037em; max-width: 700px; margin-bottom: 30px; }
.hero-intro { max-width: 510px; font-size: clamp(1rem, 1.35vw, 1.18rem); line-height: 1.65; color: oklch(.95 .01 65); text-wrap: pretty; }
.hero-qualifier { margin: 22px 0 -2px; color: oklch(.84 .045 85); font-size: .72rem; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }
.button { display: inline-flex; align-items: center; gap: 32px; margin-top: 20px; padding: 14px 17px; border: 1px solid transparent; font-size: .76rem; font-weight: 700; transition: transform .2s ease, background .2s ease; }.button:hover { transform: translateY(-2px); }
.button-light { background: white; color: var(--ink); }.button-dark { background: var(--dark); color: white; }
.scroll-cue { position: absolute; z-index: 1; right: clamp(24px, 4vw, 64px); bottom: 28px; display: flex; gap: 14px; font-size: .68rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }.scroll-cue span { font-size: 1rem; line-height: .85; }
.statement { padding-block: clamp(96px, 13vw, 190px); }.section-tag { color: var(--quiet); }
.statement-grid { display: grid; grid-template-columns: minmax(0, 1.18fr) minmax(280px, .55fr); gap: clamp(38px, 10vw, 150px); align-items: end; }.statement h2, .metals h2, .principles h2, .contact h2 { font-family: var(--serif); font-size: clamp(2.5rem, 5.4vw, 5.3rem); line-height: .98; letter-spacing: -.037em; margin-bottom: 0; }.statement-grid > div p { font-size: 1.08rem; line-height: 1.68; margin-bottom: 28px; }
.text-link { display: inline-flex; gap: 15px; border-bottom: 1px solid var(--ink); padding-bottom: 4px; font-size: .75rem; font-weight: 700; }.text-link span { transition: transform .2s ease; }.text-link:hover span { transform: translateX(4px); }
.why { padding-bottom: clamp(95px, 13vw, 175px); display: grid; grid-template-columns: .88fr 1.12fr; gap: clamp(50px, 9vw, 140px); }.why h2 { font-family: var(--serif); font-size: clamp(2.5rem, 4.6vw, 4.6rem); line-height: .98; letter-spacing: -.037em; margin: 0; max-width: 420px; }.why-columns { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(28px, 5vw, 80px); }.why-columns article { border-top: 1px solid var(--line); padding-top: 21px; }.why-metal { margin: 0 0 52px; color: oklch(.55 .10 85); font-family: var(--serif); font-size: 1.15rem; }.why-metal.copper-label { color: var(--copper); }.why h3 { font-family: var(--serif); font-size: clamp(1.45rem, 2.2vw, 2rem); line-height: 1.1; letter-spacing: -.025em; margin-bottom: 14px; }.why-columns article > p:last-child { color: var(--quiet); font-size: .92rem; }.focus-line { grid-column: 1 / -1; margin: clamp(10px, 2vw, 30px) 0 0; padding-top: 18px; border-top: 1px solid var(--line); color: var(--ink); font-family: var(--serif); font-size: clamp(1.35rem, 2vw, 1.8rem); letter-spacing: -.025em; }
.history { padding-block: clamp(96px, 12vw, 165px); background: var(--dark); color: white; }.history-head { display: grid; grid-template-columns: .85fr 1.15fr; column-gap: clamp(50px, 10vw, 145px); }.history .section-tag { grid-column: 1; color: oklch(.78 .10 85); }.history h2 { grid-column: 1 / -1; max-width: 800px; margin: 14px 0 35px; font-family: var(--serif); font-size: clamp(2.8rem, 5.7vw, 5.8rem); line-height: .94; letter-spacing: -.04em; }.history-head > p:last-child { grid-column: 2; margin: 0; color: oklch(.79 .012 40); font-size: 1.05rem; line-height: 1.7; }.price-grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(32px, 7vw, 115px); margin-top: clamp(60px, 8vw, 100px); }.price-history header { display: flex; align-items: flex-end; gap: 16px; padding-bottom: 23px; border-bottom: 1px solid oklch(1 0 0 / .23); }.element { margin: 0; color: var(--gold); font-family: var(--serif); font-size: 3.6rem; line-height: .8; letter-spacing: -.05em; }.copper-history .element { color: oklch(.69 .14 50); }.price-history h3 { margin: 0; font-family: var(--serif); font-size: 1.8rem; line-height: 1; }.price-history header div p { margin: 5px 0 0; color: oklch(.68 .012 40); font-size: .7rem; }.price-history dl { margin: 0; }.price-history dl div { display: flex; align-items: baseline; justify-content: space-between; gap: 20px; padding: 14px 0; border-bottom: 1px solid oklch(1 0 0 / .14); }.price-history dt { font-size: .78rem; font-weight: 700; }.price-history dt span { margin-left: 7px; color: oklch(.66 .012 40); font-size: .68rem; font-weight: 500; }.price-history dd { margin: 0; color: oklch(.94 .03 85); font-family: var(--serif); font-size: 1.25rem; }.copper-history dd { color: oklch(.81 .10 55); }.source-note { margin-top: 28px; border-top: 1px solid oklch(1 0 0 / .14); padding-top: 17px; }.source-note p { max-width: 760px; margin: 0; color: oklch(.63 .01 40); font-size: .71rem; line-height: 1.65; }
.finance { padding-block: clamp(95px, 12vw, 165px); background: oklch(.94 .025 80); }.finance-intro { display: grid; grid-template-columns: .8fr 1.2fr; column-gap: clamp(48px, 10vw, 150px); }.finance .section-tag { grid-column: 1; color: oklch(.43 .10 38); }.finance h2 { grid-column: 1 / -1; max-width: 900px; margin: 16px 0 35px; font-family: var(--serif); font-size: clamp(2.8rem, 5.8vw, 5.8rem); line-height: .94; letter-spacing: -.04em; }.finance-intro > p:last-child { grid-column: 2; margin: 0; color: oklch(.31 .028 30); font-size: 1.06rem; line-height: 1.68; }.finance-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; margin-top: clamp(58px, 8vw, 100px); }.finance-grid article { border-top: 1px solid oklch(.4 .06 35); padding-top: 19px; }.finance-grid span { color: var(--copper); font-size: .7rem; font-weight: 700; }.finance-grid h3 { margin: 44px 0 12px; font-family: var(--serif); font-size: 1.75rem; line-height: 1.05; letter-spacing: -.025em; }.finance-grid p { margin: 0; color: oklch(.36 .025 30); font-size: .91rem; }.finance-steps { display: flex; justify-content: space-between; align-items: flex-end; gap: 40px; margin-top: clamp(68px, 9vw, 112px); padding-top: 17px; border-top: 1px solid oklch(.4 .06 35); }.finance-steps > p { margin: 0; font-size: .68rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }.finance-steps ol { display: flex; gap: clamp(12px, 2vw, 35px); flex-wrap: wrap; list-style: none; padding: 0; margin: 0; counter-reset: finance; }.finance-steps li { display: flex; gap: 8px; font-size: .72rem; }.finance-steps li::before { counter-increment: finance; content: "0" counter(finance); color: var(--copper); font-weight: 700; }
.principles { padding-block: clamp(100px, 14vw, 200px); display: grid; grid-template-columns: 1fr 1fr; gap: clamp(50px, 10vw, 160px); }.principles h2 { max-width: 520px; }.principles ol { padding: 0; margin: 0; list-style: none; border-top: 1px solid var(--line); }.principles li { display: grid; grid-template-columns: 48px 1fr; gap: 20px; padding: 28px 0; border-bottom: 1px solid var(--line); }.principles li > span { color: var(--copper); font-size: .7rem; font-weight: 700; }.principles h3 { margin-bottom: 8px; font-size: 1rem; font-weight: 700; }.principles li p { margin: 0; color: var(--quiet); font-size: .92rem; }
.contact { background: oklch(.94 .025 80); }.contact-inner { padding-block: clamp(85px, 12vw, 155px); }.contact .section-tag { color: oklch(.43 .10 38); }.contact h2 { max-width: 650px; }.contact-copy > p:not(.section-tag) { max-width: 470px; margin: 28px 0 0; font-size: 1.06rem; }.enquiry-form { display: grid; grid-template-columns: 1fr 1fr; gap: 22px 28px; margin-top: clamp(48px, 7vw, 88px); }.form-field { display: grid; gap: 8px; }.form-field-wide, .form-submit { grid-column: 1 / -1; }.form-field label { font-size: .7rem; font-weight: 700; }.form-field label span { color: var(--quiet); font-weight: 500; }.form-field input, .form-field select, .form-field textarea { width: 100%; border: 0; border-bottom: 1px solid oklch(.38 .045 35); border-radius: 0; background: transparent; color: var(--ink); font: 500 .96rem var(--sans); padding: 10px 0; }.form-field select { cursor: pointer; }.form-field textarea { resize: vertical; min-height: 86px; }.form-field input::placeholder { color: oklch(.39 .028 30); }.form-field input:focus, .form-field select:focus, .form-field textarea:focus { outline: 0; border-bottom: 2px solid var(--copper); padding-bottom: 9px; }.form-submit { display: flex; align-items: center; gap: 22px; margin-top: 14px; }.form-submit .button { margin: 0; }.form-submit p { max-width: 360px; margin: 0; color: oklch(.37 .03 30); font-size: .7rem; }.legal-note { max-width: 560px; margin: 78px 0 0; color: oklch(.37 .03 30); font-size: .74rem; }
.site-footer { min-height: 160px; display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 20px; align-items: center; font-size: .72rem; color: var(--quiet); }.footer-mark { color: var(--ink); }.site-footer > :last-child { text-align: right; }
.subpage { background: var(--bg); }.page-header { position: relative; color: var(--ink); border-bottom-color: var(--line); }.page-hero { padding-block: clamp(115px, 15vw, 210px) clamp(72px, 10vw, 125px); }.page-hero .section-tag { color: var(--copper); }.page-hero h1 { max-width: 980px; color: var(--dark); font-size: clamp(3.3rem, 7.1vw, 6rem); line-height: .94; margin-bottom: 28px; }.lead { max-width: 650px; margin: 0; color: oklch(.31 .025 28); font-size: clamp(1.08rem, 1.65vw, 1.35rem); line-height: 1.62; }.article-layout { display: grid; grid-template-columns: .84fr 1.16fr; gap: clamp(55px, 10vw, 150px); padding-block: clamp(78px, 11vw, 155px); border-top: 1px solid var(--line); }.article-layout .section-tag { color: var(--quiet); }.article-layout h2 { max-width: 470px; margin: 0; font-family: var(--serif); font-size: clamp(2.3rem, 4.5vw, 4.6rem); line-height: .98; letter-spacing: -.035em; }.article-layout > div:last-child { max-width: 580px; font-size: 1.05rem; line-height: 1.75; }.article-layout > div:last-child p:last-child { margin-bottom: 0; }.copper-copy { padding-top: 0; border-top: 0; }.process-panel { padding-block: clamp(78px, 10vw, 140px); background: var(--dark); color: white; }.process-panel .section-tag { color: oklch(.78 .10 85); }.process-list { display: grid; grid-template-columns: repeat(3, 1fr); gap: 35px; padding: 0; margin: clamp(42px, 7vw, 84px) 0 0; list-style: none; }.process-list li { padding-top: 18px; border-top: 1px solid oklch(1 0 0 / .25); }.process-list li > span { color: oklch(.76 .11 85); font-size: .7rem; font-weight: 700; }.process-list h3 { margin: 41px 0 11px; font-family: var(--serif); font-size: 1.65rem; line-height: 1.05; letter-spacing: -.02em; }.process-list p { margin: 0; color: oklch(.78 .012 35); font-size: .9rem; }.cta-band { display: flex; align-items: center; justify-content: space-between; gap: 35px; padding-block: clamp(75px, 11vw, 145px); }.cta-band p { max-width: 430px; margin: 0; font-family: var(--serif); font-size: clamp(1.8rem, 3vw, 2.8rem); line-height: 1.05; letter-spacing: -.03em; }.cta-band .button { margin: 0; white-space: nowrap; }.company-facts { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }.company-facts div { min-height: 155px; padding: 22px; border-right: 1px solid var(--line); display: flex; flex-direction: column; justify-content: space-between; }.company-facts div:first-child { padding-left: 0; }.company-facts div:last-child { border-right: 0; }.company-facts span { color: var(--quiet); font-size: .68rem; font-weight: 700; }.company-facts strong { font-family: var(--serif); font-size: 1.25rem; font-weight: 500; line-height: 1.2; }
@keyframes hero-in { from { transform: scale(1.05); opacity: .65; } to { transform: scale(1); opacity: 1; } }
.statement-grid > div p { font-size: var(--text-lead); text-wrap: pretty; }
.source-note p { text-wrap: pretty; }
.price-history dd { font-variant-numeric: lining-nums tabular-nums; font-feature-settings: "kern" 1, "liga" 1, "tnum" 1; }
@media (max-width: 720px) { .site-header { height: 72px; }.site-header nav, .lang { display: none; }.menu { display: block; }.mobile-nav { top: 72px; }.hero { min-height: 660px; }.hero > img { object-position: 60% center; }.hero-copy { padding-top: 60px; }.scroll-cue { display: none; }.statement-grid, .why, .history-head, .finance-intro, .principles, .article-layout { grid-template-columns: 1fr; }.why { gap: 42px; }.why-columns, .price-grid, .finance-grid, .enquiry-form, .process-list, .company-facts { grid-template-columns: 1fr; gap: 36px; }.why-metal { margin-bottom: 22px; }.history h2, .history-head > p:last-child, .finance h2, .finance-intro > p:last-child { grid-column: 1; }.finance-steps { display: block; }.finance-steps ol { margin-top: 18px; }.form-field-wide, .form-submit { grid-column: 1; }.form-submit { display: block; }.form-submit p { margin-top: 16px; }.page-header { padding-inline: 24px; }.page-header .wordmark { font-size: 1.05rem; }.page-header nav, .page-header .lang { display: none; }.page-hero { padding-top: 100px; }.article-layout { gap: 37px; }.process-list { gap: 32px; }.company-facts { gap: 0; }.company-facts div, .company-facts div:first-child { min-height: 122px; padding: 20px 0; border-right: 0; border-bottom: 1px solid var(--line); }.company-facts div:last-child { border-bottom: 0; }.cta-band { display: block; }.cta-band .button { margin-top: 24px; }.principles { gap: 45px; }.site-footer { padding-block: 35px; grid-template-columns: 1fr; gap: 10px; }.site-footer > :last-child { text-align: left; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; }.hero > img { animation: none; }.button, .text-link span { transition: none; } }
@media (max-width: 720px) { .page-header { height: auto; min-height: 72px; flex-wrap: wrap; padding-block: 17px; }.site-header.page-header nav { display: flex; order: 3; width: 100%; gap: 17px; overflow-x: auto; padding-top: 16px; font-size: .68rem; white-space: nowrap; }.page-header .header-tools { display: none; } }
