@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&family=Playfair+Display:ital,wght@0,500;0,600;1,500;1,600&display=swap');

:root { --ink:#0d1714; --ink-soft:#1b2a25; --paper:#f5f4ee; --paper-deep:#e9e9e1; --green:#a7e84d; --green-soft:#d7f4a9; --sand:#d7c7a3; --muted:#8d9890; --line:rgba(13,23,20,.17); --max:1440px; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:'Manrope',Arial,sans-serif; font-size:15px; line-height:1.55; }
a { color:inherit; text-decoration:none; }
.site-shell { overflow:hidden; }
.section-pad { padding-left:clamp(24px,6vw,96px); padding-right:clamp(24px,6vw,96px); }
.site-header { max-width:var(--max); margin:0 auto; min-height:92px; display:flex; align-items:center; justify-content:space-between; padding:20px clamp(24px,6vw,96px); position:relative; z-index:4; }
.brand { display:flex; align-items:center; gap:12px; }
.brand-mark { width:48px; height:39px; object-fit:contain; mix-blend-mode:multiply; }
.brand-copy { display:flex; flex-direction:column; letter-spacing:.08em; line-height:1; }
.brand-copy strong { font-size:17px; letter-spacing:.18em; }
.brand-copy span { color:#66736c; font-family:'DM Mono',monospace; font-size:8px; margin-top:5px; }
.site-nav { align-items:center; display:flex; gap:34px; font-size:12px; font-weight:700; letter-spacing:.02em; }
.site-nav a { opacity:.7; transition:opacity .25s ease; }
.site-nav a:hover { opacity:1; }
.site-nav .nav-cta { background:var(--ink); color:var(--paper); opacity:1; padding:13px 17px; border-radius:2px; }
.site-nav .nav-cta span, .button span { color:var(--green); margin-left:12px; }
.menu-toggle { display:none; border:0; background:none; padding:8px; }
.menu-toggle span { display:block; width:24px; height:2px; background:var(--ink); margin:5px 0; }
.hero-slider { background:var(--ink); color:var(--paper); position:relative; }
.slider-track { max-width:var(--max); margin:0 auto; min-height:360px; position:relative; }
.slide { display:none; min-height:360px; padding:52px clamp(24px,6vw,96px) 55px; position:relative; overflow:hidden; }
.slide.is-active { display:block; animation:slideIn .6s ease both; }
@keyframes slideIn { from { opacity:0; transform:translateX(18px); } to { opacity:1; transform:translateX(0); } }
.slide-index { color:#87968d; font-family:'DM Mono',monospace; font-size:9px; letter-spacing:.08em; position:absolute; left:clamp(24px,6vw,96px); top:27px; text-transform:uppercase; }
.slide-copy { max-width:650px; position:relative; z-index:2; }
.slide-kicker { color:var(--green); font-family:'DM Mono',monospace; font-size:10px; letter-spacing:.1em; text-transform:uppercase; }
.slide h2 { font-size:clamp(37px,5.1vw,72px); letter-spacing:-.06em; line-height:.98; margin:15px 0 19px; }.slide h2 em { color:var(--green); }
.slide p { color:#aab6ad; font-size:14px; line-height:1.6; max-width:390px; }.slide-link { border-bottom:1px solid rgba(167,232,77,.6); color:var(--paper); display:inline-block; font-size:11px; font-weight:800; margin-top:14px; padding-bottom:6px; }.slide-link span { color:var(--green); margin-left:15px; }
.slide-art { height:245px; position:absolute; right:clamp(35px,8vw,130px); top:57px; width:355px; }.slide-art-map { border:1px solid rgba(167,232,77,.4); border-radius:50%; height:315px; right:clamp(35px,10vw,160px); top:22px; transform:rotate(-17deg); width:315px; }.slide-art-map strong { color:var(--green); font-size:122px; left:79px; letter-spacing:-.13em; line-height:1; position:absolute; top:75px; }.map-ring { border:1px solid rgba(245,244,238,.22); border-radius:50%; position:absolute; }.ring-1 { height:230px; left:41px; top:41px; width:230px; }.ring-2 { height:150px; left:81px; top:81px; width:150px; }.map-label { bottom:47px; color:#aab6ad; font-family:'DM Mono',monospace; font-size:8px; left:96px; letter-spacing:.12em; position:absolute; transform:rotate(17deg); }.map-route { background:var(--green); height:1px; left:35px; opacity:.8; position:absolute; top:160px; width:245px; }.route-1 { transform:rotate(27deg); }.route-2 { transform:rotate(-34deg); }
.slide-art-pumps { align-items:center; display:flex; gap:13px; justify-content:center; padding-top:7px; transform:rotate(-7deg); }.pump { align-items:center; background:#1b2a25; border:1px solid rgba(167,232,77,.6); display:flex; flex-direction:column; height:178px; justify-content:space-between; padding:16px 13px; width:107px; }.pump span { color:var(--green); font-family:'DM Mono',monospace; font-size:12px; }.pump strong { color:#87968d; font-family:'DM Mono',monospace; font-size:38px; font-weight:400; }.pump-diesel { transform:translateY(30px); }.slide-art-pumps small { bottom:1px; color:#87968d; font-family:'DM Mono',monospace; font-size:7px; left:34px; letter-spacing:.08em; position:absolute; white-space:nowrap; }
.slide-art-stamp { align-items:center; display:flex; flex-direction:column; justify-content:center; transform:rotate(8deg); }.stamp-circle { align-items:center; border:1px solid var(--green); border-radius:50%; color:var(--green); display:flex; flex-direction:column; font-family:'DM Mono',monospace; font-size:42px; height:190px; justify-content:center; letter-spacing:-.08em; line-height:.9; width:190px; }.stamp-circle small { font-size:9px; letter-spacing:.15em; margin-top:13px; }.stamp-line { color:#87968d; font-family:'DM Mono',monospace; font-size:8px; letter-spacing:.1em; margin-top:22px; }
.slider-controls { align-items:center; border-top:1px solid rgba(245,244,238,.15); display:flex; gap:24px; margin:0 clamp(24px,6vw,96px); min-height:57px; position:relative; }.slider-dots { display:flex; gap:8px; }.slider-dot { background:#66766d; border:0; border-radius:50%; cursor:pointer; height:6px; padding:0; transition:background .2s ease,transform .2s ease; width:6px; }.slider-dot.is-active { background:var(--green); transform:scale(1.35); }.slider-arrows { display:flex; gap:5px; }.slider-arrow { background:transparent; border:1px solid rgba(245,244,238,.25); color:var(--paper); cursor:pointer; font-size:14px; height:27px; line-height:1; width:31px; }.slider-arrow:hover { border-color:var(--green); color:var(--green); }.slider-progress { background:rgba(245,244,238,.2); height:1px; margin-left:auto; overflow:hidden; width:110px; }.slider-progress span { background:var(--green); display:block; height:100%; transform-origin:left; transition:transform .2s linear; width:100%; }
.hero { max-width:var(--max); margin:0 auto; display:grid; grid-template-columns:1.04fr .96fr; min-height:590px; align-items:center; gap:clamp(24px,5vw,96px); padding-top:56px; padding-bottom:92px; }
.eyebrow, .section-kicker { color:#5c6c62; font-family:'DM Mono',monospace; font-size:10px; letter-spacing:.13em; text-transform:uppercase; }
.eyebrow { align-items:center; display:flex; gap:10px; margin-bottom:24px; }
.eyebrow-dot { background:var(--green); border-radius:50%; box-shadow:0 0 0 6px rgba(167,232,77,.2); height:7px; width:7px; }
h1, h2, h3, p { margin-top:0; }
h1, h2 { letter-spacing:-.055em; line-height:.98; font-weight:700; }
h1 { font-size:clamp(54px,7.4vw,106px); max-width:760px; margin-bottom:30px; }
h1 em, h2 em { font-family:'Playfair Display',Georgia,serif; font-weight:500; }
.hero-lede { color:#58655d; font-size:17px; max-width:505px; line-height:1.65; }
.hero-actions { display:flex; align-items:center; gap:26px; margin-top:37px; }
.button { align-items:center; display:inline-flex; justify-content:space-between; min-width:184px; padding:16px 19px; font-size:11px; font-weight:800; letter-spacing:.04em; transition:transform .25s ease,background .25s ease; }
.button:hover { transform:translateY(-3px); }
.button-primary { background:var(--ink); color:var(--paper); }
.text-link, .arrow-link { font-size:11px; font-weight:800; letter-spacing:.02em; border-bottom:1px solid var(--line); padding-bottom:5px; }
.text-link span { color:#708074; margin-left:10px; }
.hero-note { align-items:center; color:#718078; display:flex; font-family:'DM Mono',monospace; font-size:9px; gap:10px; margin-top:64px; text-transform:uppercase; letter-spacing:.06em; }
.note-line { width:38px; height:1px; background:var(--green); }
.hero-visual { min-height:450px; position:relative; display:flex; align-items:center; justify-content:center; }
.visual-panel { background:var(--ink); color:var(--paper); width:min(100%,470px); aspect-ratio:1.08; padding:clamp(26px,4vw,45px); position:relative; z-index:1; box-shadow:20px 22px 0 rgba(167,232,77,.65); }
.panel-topline, .panel-footer { color:#84938a; display:flex; font-family:'DM Mono',monospace; font-size:9px; justify-content:space-between; letter-spacing:.08em; }
.energy-symbol { width:120px; height:120px; border:1px solid rgba(215,244,169,.3); border-radius:50%; position:absolute; right:12%; top:23%; }
.symbol-core { position:absolute; width:28px; height:28px; border-radius:50%; background:var(--green); top:46px; left:46px; box-shadow:0 0 0 14px rgba(167,232,77,.09); }
.symbol-ray { position:absolute; width:42px; height:1px; background:var(--green); left:39px; top:59px; transform-origin:center; }
.ray-a { transform:rotate(0); }.ray-b { transform:rotate(60deg); }.ray-c { transform:rotate(-60deg); }
.panel-statement { bottom:24%; font-size:clamp(28px,4vw,47px); left:11%; letter-spacing:-.07em; line-height:.96; position:absolute; }.panel-statement strong { color:var(--green); font-weight:500; }
.panel-footer { bottom:9%; left:11%; position:absolute; right:11%; }
.hero-orbit { border:1px solid rgba(61,83,70,.2); border-radius:50%; height:300px; position:absolute; width:500px; transform:rotate(-25deg); }.orbit-one { top:18%; left:0; }.orbit-two { height:380px; right:-15%; top:8%; transform:rotate(35deg); }
.floating-stamp { align-items:center; background:var(--green); border-radius:50%; bottom:5%; display:flex; flex-direction:column; height:100px; justify-content:center; position:absolute; right:3%; text-align:center; transform:rotate(10deg); width:100px; z-index:2; }.floating-stamp span { font-size:22px; font-weight:800; line-height:1; }.floating-stamp small { font-family:'DM Mono',monospace; font-size:7px; line-height:1.2; text-transform:uppercase; margin-top:5px; }
.ticker-wrap { align-items:center; background:var(--ink); color:var(--paper); display:grid; grid-template-columns:clamp(170px,17vw,260px) 1fr 135px; min-height:78px; padding:0 clamp(24px,6vw,96px); }
.ticker-heading { display:flex; flex-direction:column; font-family:'DM Mono',monospace; font-size:10px; letter-spacing:.08em; text-transform:uppercase; }.ticker-heading small { color:#75857b; font-size:8px; margin-top:5px; }.live-pulse { background:var(--green); border-radius:50%; box-shadow:0 0 0 5px rgba(167,232,77,.12); height:7px; margin-bottom:10px; width:7px; }
.ticker-window { overflow:hidden; }.ticker-track { display:flex; gap:28px; white-space:nowrap; }.price-chip { align-items:baseline; border-left:1px solid rgba(245,244,238,.15); display:flex; gap:12px; padding-left:28px; }.price-chip .price-name { color:#9fac9f; font-family:'DM Mono',monospace; font-size:10px; }.price-chip strong { color:var(--green); font-size:22px; letter-spacing:-.04em; }.price-chip .unit { color:#75857b; font-size:9px; }.price-chip .change { color:#d7f4a9; font-family:'DM Mono',monospace; font-size:9px; }.ticker-time { color:#75857b; font-family:'DM Mono',monospace; font-size:8px; text-align:right; text-transform:uppercase; }
.market-bar { grid-template-columns:clamp(190px,19vw,285px) 1fr 105px; min-height:38px; padding-top:0; padding-bottom:0; }.market-bar .ticker-heading { align-items:center; flex-direction:row; gap:9px; }.market-bar .ticker-heading small { margin:0 0 0 3px; }.market-bar .live-pulse { margin:0; }.market-bar .ticker-window { max-width:700px; }.market-bar .ticker-track { gap:18px; }.market-bar .price-chip { gap:7px; padding-left:18px; }.market-bar .price-chip strong { font-size:14px; }.market-bar .price-chip .price-name { font-size:9px; }.market-bar .price-chip .unit, .market-bar .price-chip .change { font-size:8px; }.market-bar .ticker-time { font-size:7px; }
.site-nav a.is-current { color:var(--ink); opacity:1; }.site-nav .nav-cta.is-current { color:var(--paper); }
.page-hero { background:var(--paper-deep); padding-top:66px; padding-bottom:84px; }.page-hero-dark { background:var(--ink); color:var(--paper); }.page-hero-meta { color:#7d8981; display:flex; font-family:'DM Mono',monospace; font-size:9px; justify-content:space-between; letter-spacing:.08em; margin-bottom:58px; text-transform:uppercase; }.page-hero-grid { align-items:end; display:grid; grid-template-columns:1.25fr .75fr; gap:clamp(30px,7vw,110px); max-width:var(--max); margin:0 auto; }.page-hero h1 { font-size:clamp(51px,7vw,98px); margin:16px 0 0; max-width:830px; }.page-hero-aside { padding-bottom:7px; max-width:360px; }.page-hero-aside p { color:#68756c; font-size:15px; margin-bottom:25px; }.page-hero-dark .page-hero-aside p, .page-hero-dark .page-hero-meta { color:#9baaa0; }
.page-body, .product-showcase, .service-detail, .operating-model, .safety-principles, .contact-grid { display:grid; grid-template-columns:1fr 4fr; gap:clamp(30px,7vw,115px); max-width:var(--max); margin:0 auto; padding-top:135px; padding-bottom:135px; }.page-body-content, .safety-principles-grid, .contact-content { min-width:0; }.two-col { display:grid; grid-template-columns:1fr 1fr; gap:clamp(30px,7vw,120px); }.page-body-content h2, .model-lead h2, .safety-principles h2, .contact-route h2, .product-card h2 { font-size:clamp(39px,5vw,72px); letter-spacing:-.055em; line-height:.98; margin:16px 0 0; }.page-body-content .body-column { padding-top:49px; }
.principles-band, .international-band, .assurance-band { background:var(--ink); color:var(--paper); padding:110px 0 125px; }.principles-grid, .international-grid, .assurance-grid { display:grid; grid-template-columns:1.15fr repeat(3,1fr); gap:1px; max-width:var(--max); margin:0 auto; }.principles-grid > div:first-child { padding-right:50px; }.principles-grid h2, .international-grid h2, .assurance-grid h2 { font-size:clamp(38px,4.5vw,63px); letter-spacing:-.06em; line-height:.98; margin:16px 0 0; }.principles-grid .section-kicker, .international-grid .section-kicker, .assurance-grid .section-kicker { color:#a7e84d; }.principle-item { border-left:1px solid rgba(245,244,238,.2); padding:0 23px; }.principle-item strong { color:var(--green); font-family:'DM Mono',monospace; font-size:10px; }.principle-item h3 { font-size:20px; letter-spacing:-.04em; margin:62px 0 10px; }.principle-item p, .international-grid p, .assurance-grid p { color:#aab6ad; font-size:13px; }.page-cta { padding-top:0; padding-bottom:105px; }.page-cta-panel { background:var(--green); max-width:var(--max); margin:0 auto; padding:50px clamp(26px,5vw,76px) 45px; }.page-cta-panel .section-kicker { color:#4a633e; }.page-cta-panel h2 { font-size:clamp(42px,5.2vw,76px); letter-spacing:-.06em; line-height:.98; margin:16px 0 34px; }
.product-showcase { background:var(--paper); }.product-content { display:grid; grid-template-columns:1fr 1fr; gap:18px; }.product-card { min-height:385px; padding:27px 30px 30px; position:relative; }.product-petrol { background:var(--ink); color:var(--paper); }.product-diesel { background:var(--green); color:var(--ink); }.product-code { font-family:'DM Mono',monospace; font-size:9px; letter-spacing:.08em; }.product-mark { font-size:100px; font-weight:800; letter-spacing:-.12em; line-height:1; margin-top:42px; opacity:.18; }.product-card h2 { bottom:70px; left:30px; margin:0; position:absolute; }.product-card p { bottom:29px; font-size:13px; left:30px; max-width:310px; position:absolute; }.product-card > span { bottom:29px; font-family:'DM Mono',monospace; font-size:8px; letter-spacing:.07em; position:absolute; right:30px; text-transform:uppercase; }.product-petrol p { color:#aab6ad; }.service-detail { background:var(--paper-deep); max-width:none; }.service-detail-content { max-width:var(--max); width:100%; }.service-detail-row { align-items:center; border-top:1px solid var(--line); display:grid; grid-template-columns:72px 1fr 25px; gap:20px; padding:27px 0; }.service-detail-row:last-child { border-bottom:1px solid var(--line); }.service-detail-row > strong { color:#758178; font-family:'DM Mono',monospace; font-size:10px; }.service-detail-row h3 { font-size:22px; letter-spacing:-.04em; margin:0 0 4px; }.service-detail-row p { color:#68766c; font-size:13px; margin:0; max-width:600px; }.service-detail-row > span { color:#829482; font-size:18px; text-align:right; }
.model-grid { display:grid; grid-template-columns:1.35fr repeat(3,1fr); gap:1px; }.model-lead { padding-right:45px; }.model-lead p { color:#68766c; font-size:14px; margin-top:31px; max-width:390px; }.model-step { border-left:1px solid var(--line); padding:0 23px; }.model-step strong { color:#758178; font-family:'DM Mono',monospace; font-size:10px; }.model-step h3 { font-size:19px; letter-spacing:-.04em; margin:60px 0 10px; }.model-step p { color:#68766c; font-size:12px; }.international-grid { grid-template-columns:1.3fr .7fr; gap:clamp(40px,9vw,140px); }.international-grid p { font-size:15px; max-width:410px; }.international-tags { border-top:1px solid rgba(245,244,238,.2); display:flex; flex-wrap:wrap; gap:12px 18px; margin-top:32px; padding-top:17px; }.international-tags span { color:var(--green); font-family:'DM Mono',monospace; font-size:8px; }.safety-principles-grid { display:grid; grid-template-columns:1fr 1fr; gap:clamp(35px,7vw,120px); }.safety-intro { color:#68766c; font-size:15px; margin-top:30px; max-width:390px; }.safety-list { border-top:1px solid var(--line); }.safety-list > div { align-items:flex-start; border-bottom:1px solid var(--line); display:flex; gap:17px; padding:19px 0; }.safety-list h3 { font-size:18px; letter-spacing:-.04em; margin:0 0 4px; }.safety-list p { color:#68766c; font-size:12px; margin:0; }.assurance-grid { grid-template-columns:.5fr 1.5fr; gap:clamp(40px,8vw,140px); }.assurance-number { color:var(--green); font-family:'DM Mono',monospace; font-size:67px; letter-spacing:-.1em; line-height:.85; }.assurance-number span { color:#aab6ad; font-size:12px; letter-spacing:.05em; }.assurance-grid p { max-width:570px; }.contact-grid { padding-bottom:110px; }.contact-content { display:grid; grid-template-columns:1fr 1fr; gap:clamp(30px,7vw,120px); }.contact-route { max-width:400px; }.contact-route p { color:#68766c; font-size:15px; margin-top:30px; }.contact-link, .direct-links a { border-bottom:1px solid var(--line); display:inline-block; font-size:12px; font-weight:800; margin-top:20px; padding-bottom:7px; }.contact-link span, .direct-links span { color:#7a9080; margin-left:14px; }.direct-links { display:flex; flex-wrap:wrap; gap:18px; }.enquiry-panel { background:var(--paper-deep); padding-top:85px; padding-bottom:95px; }.enquiry-inner { display:grid; grid-template-columns:1fr 1fr; gap:80px; max-width:var(--max); margin:0 auto; }.enquiry-inner h2 { font-size:clamp(42px,5vw,70px); letter-spacing:-.06em; line-height:.98; margin:16px 0 0; }.enquiry-list { border-top:1px solid var(--line); }.enquiry-list span { border-bottom:1px solid var(--line); display:block; font-family:'DM Mono',monospace; font-size:10px; padding:14px 0; text-transform:uppercase; }
.proof-strip { align-items:stretch; background:var(--green); display:grid; grid-template-columns:2fr repeat(3,1fr); gap:0; max-width:var(--max); margin:0 auto; padding-top:26px; padding-bottom:26px; }.proof-intro { padding-right:30px; }.proof-intro .section-kicker { color:#4a633e; }.proof-intro p { font-size:15px; font-weight:700; letter-spacing:-.03em; max-width:270px; margin:8px 0 0; }.proof-item { border-left:1px solid rgba(13,23,20,.2); padding:0 24px; display:flex; flex-direction:column; justify-content:space-between; min-height:70px; }.proof-item strong { font-family:'DM Mono',monospace; font-size:10px; font-weight:400; }.proof-item span { font-weight:700; font-size:13px; letter-spacing:-.02em; line-height:1.15; }
.section-grid { max-width:var(--max); margin:0 auto; display:grid; grid-template-columns:1fr 4fr; gap:clamp(30px,7vw,115px); }.section-label { align-items:flex-start; color:#859088; display:flex; font-family:'DM Mono',monospace; font-size:9px; gap:14px; letter-spacing:.08em; padding-top:10px; text-transform:uppercase; }.label-line { background:var(--green); height:1px; margin-top:6px; width:35px; }.about { padding-top:150px; padding-bottom:155px; }.section-content { min-width:0; }.about-content { display:grid; grid-template-columns:1fr 1fr; gap:clamp(30px,7vw,120px); }.section-content h2, .operations h2, .contact h2 { font-size:clamp(38px,5vw,72px); margin:18px 0 0; }.body-column { color:#58655d; max-width:410px; padding-top:48px; }.body-column p { font-size:16px; }.body-column .muted-copy { color:#95a097; font-size:13px; margin-top:24px; }.arrow-link { color:var(--ink); display:inline-block; margin-top:20px; }.arrow-link span { color:#7a9080; margin-left:14px; }
.services { background:var(--paper-deep); max-width:100%; padding-top:115px; padding-bottom:130px; }.services .section-content { max-width:var(--max); }.services-intro { display:grid; grid-template-columns:1.1fr .9fr; column-gap:10%; }.services-intro h2 { font-size:clamp(45px,5.7vw,78px); margin:17px 0 0; }.services-intro p { align-self:end; color:#66736c; font-size:15px; max-width:350px; margin:0 0 5px; }.service-list { border-top:1px solid var(--line); margin-top:80px; }.service-card { align-items:center; border-bottom:1px solid var(--line); display:grid; grid-template-columns:72px 1fr 30px; gap:22px; padding:26px 0; transition:padding .3s ease; }.service-card:hover { padding-left:14px; padding-right:14px; background:rgba(255,255,255,.25); }.service-number { color:#758178; font-family:'DM Mono',monospace; font-size:10px; }.service-card h3 { font-size:21px; letter-spacing:-.04em; margin:0 0 4px; }.service-card p { color:#68766c; font-size:13px; margin:0; max-width:530px; }.card-arrow { color:#829482; font-size:18px; text-align:right; }
.operations { background:var(--ink); color:var(--paper); max-width:100%; padding-top:125px; padding-bottom:135px; }.operations-header { align-items:end; display:grid; grid-template-columns:1.3fr .7fr; gap:60px; max-width:var(--max); margin:0 auto; }.operations .section-kicker { color:#a2b0a7; }.operations h2 { color:var(--paper); }.operations-header > p { color:#a2b0a7; font-size:14px; max-width:350px; margin:0 0 4px; }.operations-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; max-width:var(--max); margin:95px auto 0; background:rgba(245,244,238,.18); }.operation-feature { background:var(--ink); min-height:320px; padding:28px 30px; transition:background .3s ease; }.operation-feature:hover, .operation-feature.featured { background:var(--ink-soft); }.feature-index { color:#83968a; font-family:'DM Mono',monospace; font-size:10px; }.operation-feature h3 { font-size:25px; letter-spacing:-.05em; margin:82px 0 14px; max-width:220px; }.operation-feature p { color:#a2b0a7; font-size:13px; max-width:265px; }.feature-rule { height:1px; background:var(--green); margin:39px 0 10px; width:45px; }.operation-feature > span { color:#a7e84d; font-family:'DM Mono',monospace; font-size:9px; text-transform:uppercase; }
.safety { padding-top:145px; padding-bottom:150px; }.safety-content { display:grid; grid-template-columns:1fr 1fr; gap:clamp(30px,7vw,120px); }.safety-copy { color:#58655d; max-width:410px; padding-top:52px; }.safety-copy > p { font-size:16px; }.safety-points { border-top:1px solid var(--line); margin-top:46px; }.safety-points div { align-items:center; border-bottom:1px solid var(--line); display:flex; gap:15px; padding:14px 0; font-size:12px; font-weight:700; }.point-mark { color:var(--green); font-size:21px; font-weight:400; }
.contact { padding-top:0; padding-bottom:90px; }.contact-panel { background:var(--green); max-width:var(--max); margin:0 auto; padding:42px clamp(25px,5vw,75px) 27px; }.contact-top, .contact-bottom { color:#4a633e; display:flex; font-family:'DM Mono',monospace; font-size:9px; justify-content:space-between; letter-spacing:.08em; text-transform:uppercase; }.contact-main { align-items:end; display:grid; grid-template-columns:1.1fr .9fr; gap:60px; padding:75px 0 88px; }.contact h2 { color:var(--ink); margin:0; }.contact-main p { color:#4f634b; font-size:14px; max-width:345px; }.button-light { background:var(--ink); color:var(--paper); margin-top:22px; }.contact-bottom { border-top:1px solid rgba(13,23,20,.2); padding-top:17px; }
.site-footer { align-items:end; display:grid; grid-template-columns:1fr 1fr 1fr; gap:30px; max-width:var(--max); margin:0 auto; padding-top:0; padding-bottom:34px; }.footer-brand { align-items:center; display:flex; gap:12px; }.footer-brand img { width:42px; height:33px; object-fit:contain; mix-blend-mode:multiply; }.footer-brand span { color:#718078; font-size:10px; line-height:1.2; }.footer-nav { display:flex; justify-content:center; gap:22px; font-size:11px; font-weight:700; }.footer-meta { color:#929d96; display:flex; flex-direction:column; font-family:'DM Mono',monospace; font-size:8px; gap:4px; text-align:right; text-transform:uppercase; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
@media (max-width:900px) { .site-nav { gap:19px; }.hero { grid-template-columns:1fr; padding-top:45px; padding-bottom:75px; }.hero-copy { max-width:650px; }.hero-visual { min-height:390px; margin-top:10px; }.ticker-wrap { grid-template-columns:180px 1fr; grid-template-rows:1fr 1fr; padding-top:15px; padding-bottom:15px; }.ticker-time { grid-column:2; text-align:left; }.proof-strip { grid-template-columns:1.5fr repeat(3,1fr); }.section-grid { grid-template-columns:1fr; gap:30px; }.section-label { padding-top:0; }.about-content, .safety-content { gap:20px 50px; }.services-intro { grid-template-columns:1fr 1fr; }.operations-header { grid-template-columns:1fr 1fr; }.site-footer { grid-template-columns:1fr 1fr; }.footer-meta { grid-column:1 / -1; text-align:left; flex-direction:row; justify-content:space-between; } }
@media (max-width:640px) { .site-header { min-height:76px; }.menu-toggle { display:block; }.site-nav { background:var(--paper); box-shadow:0 10px 20px rgba(13,23,20,.12); display:none; flex-direction:column; align-items:stretch; gap:0; left:0; padding:12px 24px 22px; position:absolute; right:0; top:76px; }.site-nav.open { display:flex; }.site-nav a { border-bottom:1px solid var(--line); padding:13px 0; }.site-nav .nav-cta { border:0; margin-top:10px; padding:14px 17px; }.hero { padding-top:35px; }.hero-lede { font-size:15px; }.hero-actions { align-items:flex-start; flex-direction:column; gap:19px; }.hero-note { margin-top:42px; }.hero-visual { min-height:310px; }.visual-panel { box-shadow:12px 14px 0 rgba(167,232,77,.65); }.energy-symbol { transform:scale(.75); transform-origin:top right; }.floating-stamp { bottom:1%; height:78px; right:0; width:78px; }.floating-stamp span { font-size:17px; }.panel-statement { font-size:32px; }.ticker-wrap { display:block; min-height:0; padding-top:18px; padding-bottom:18px; }.ticker-window { margin:17px 0 11px; }.ticker-time { text-align:left; }.proof-strip { grid-template-columns:1fr 1fr; gap:24px 0; padding-top:23px; padding-bottom:23px; }.proof-intro { grid-column:1 / -1; padding-right:10px; }.proof-item { min-height:55px; padding:0 12px; }.proof-item:nth-child(2) { border-left:0; padding-left:0; }.proof-item span { font-size:11px; }.about, .safety { padding-top:82px; padding-bottom:88px; }.about-content, .safety-content, .services-intro, .operations-header, .contact-main { grid-template-columns:1fr; gap:26px; }.body-column, .safety-copy { padding-top:10px; }.services { padding-top:78px; padding-bottom:88px; }.service-list { margin-top:50px; }.service-card { grid-template-columns:42px 1fr 20px; gap:10px; padding:20px 0; }.service-card h3 { font-size:18px; }.service-card p { font-size:12px; }.operations { padding-top:82px; padding-bottom:88px; }.operations-grid { grid-template-columns:1fr; margin-top:55px; }.operation-feature { min-height:0; padding:23px; }.operation-feature h3 { margin-top:45px; }.contact { padding-bottom:58px; }.contact-panel { padding-top:28px; }.contact-main { padding:60px 0 64px; }.contact-bottom { align-items:flex-start; flex-direction:column; gap:9px; }.site-footer { align-items:start; grid-template-columns:1fr; padding-bottom:27px; }.footer-nav { justify-content:flex-start; }.footer-meta { grid-column:auto; flex-direction:column; gap:5px; } }
@media (max-width:900px) { .slide-art { opacity:.72; right:12px; transform:scale(.82); transform-origin:top right; }.slide-art-map { right:24px; transform:rotate(-17deg) scale(.82); transform-origin:top right; }.slide-copy { max-width:58%; } }
@media (max-width:640px) { .slider-track, .slide { min-height:505px; }.slide { padding:55px 24px 35px; }.slide-index { left:24px; top:23px; }.slide-copy { max-width:100%; }.slide h2 { font-size:39px; max-width:335px; }.slide p { font-size:13px; max-width:300px; }.slide-art { bottom:10px; opacity:.5; right:-33px; top:auto; transform:scale(.7); transform-origin:bottom right; }.slide-art-map { bottom:4px; right:-5px; top:auto; transform:rotate(-17deg) scale(.66); transform-origin:bottom right; }.slider-controls { gap:15px; margin:0 24px; }.slider-progress { width:65px; } }

@media (max-width:900px) {
  .market-bar { grid-template-columns:190px 1fr 75px; }
  .page-hero-grid, .principles-grid, .model-grid { grid-template-columns:1fr 1fr; }
  .page-hero-grid { gap:40px; }
  .page-hero h1 { font-size:clamp(48px,7vw,82px); }
  .principles-grid > div:first-child { grid-column:1 / -1; padding-bottom:28px; }
  .principle-item { min-height:185px; }
  .principle-item h3, .model-step h3 { margin-top:38px; }
  .model-lead { grid-column:1 / -1; padding-bottom:28px; }
  .international-grid, .assurance-grid { grid-template-columns:1fr 1fr; }
}
@media (max-width:640px) {
  .market-bar { grid-template-columns:1fr auto; display:grid; min-height:38px; padding-top:0; padding-bottom:0; }
  .market-bar .ticker-heading { font-size:8px; }
  .market-bar .ticker-heading small { display:none; }
  .market-bar .ticker-window { grid-column:1 / -1; grid-row:2; margin:0; }
  .market-bar .ticker-time { display:none; }
  .market-bar .price-chip { padding-left:12px; }
  .market-bar .price-chip strong { font-size:13px; }
  .page-hero { padding-top:43px; padding-bottom:62px; }
  .page-hero-meta { margin-bottom:42px; }
  .page-hero-grid, .two-col, .product-content, .safety-principles-grid, .contact-content, .enquiry-inner, .international-grid, .assurance-grid { grid-template-columns:1fr; gap:30px; }
  .page-hero h1 { font-size:49px; }
  .page-hero-aside { padding-bottom:0; }
  .page-body, .product-showcase, .service-detail, .operating-model, .safety-principles, .contact-grid { display:block; padding-top:82px; padding-bottom:88px; }
  .page-body .section-label, .product-showcase .section-label, .service-detail .section-label, .operating-model .section-label, .safety-principles .section-label, .contact-grid .section-label { margin-bottom:33px; }
  .page-body-content .body-column { padding-top:0; }
  .principles-band, .international-band, .assurance-band { padding-top:78px; padding-bottom:84px; }
  .principles-grid, .model-grid { display:grid; grid-template-columns:1fr; gap:28px; }
  .principles-grid > div:first-child, .model-lead { grid-column:auto; padding-right:0; padding-bottom:6px; }
  .principle-item, .model-step { border-left:0; border-top:1px solid rgba(245,244,238,.2); padding:22px 0 0; min-height:0; }
  .principle-item h3, .model-step h3 { margin-top:30px; }
  .product-card { min-height:330px; }
  .product-mark { font-size:80px; }
  .service-detail-row { grid-template-columns:42px 1fr 20px; gap:10px; padding:21px 0; }
  .service-detail-row h3 { font-size:18px; }
  .model-grid { display:block; }
  .model-step { margin-top:24px; padding-top:20px; }
  .international-grid, .assurance-grid { display:grid; }
  .assurance-number { font-size:54px; }
  .contact-grid { padding-bottom:78px; }
  .enquiry-panel { padding-top:66px; padding-bottom:75px; }
  .page-cta { padding-bottom:65px; }
}

/* International polish: restrained surfaces, stronger hierarchy, less visual noise. */
:root { --green:#b2ed59; --green-soft:#dff7b7; --paper:#f7f6f0; --paper-deep:#ecece5; }
body { -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility; }
.site-header { background:rgba(247,246,240,.92); border-bottom:1px solid rgba(13,23,20,.1); }
.hero-slider { background:radial-gradient(circle at 80% 20%, rgba(39,72,56,.28), transparent 32%), linear-gradient(112deg, #0b1512 0%, #0d1b16 60%, #0d1714 100%); }
.slide p, .hero-lede, .page-hero-aside p { letter-spacing:-.01em; }
.button, .site-nav .nav-cta { border-radius:3px; }
.market-bar { border-bottom:1px solid rgba(245,244,238,.08); }
.page-hero { background:linear-gradient(135deg, #ecece5 0%, #f7f6f0 78%); }
.page-hero-dark { background:radial-gradient(circle at 80% 18%, rgba(39,72,56,.25), transparent 34%), #0d1714; }
.section-kicker, .eyebrow { letter-spacing:.16em; }
.site-footer { border-top:1px solid rgba(13,23,20,.12); }
@media (max-width:640px) { .site-header { background:var(--paper); } }

/* Bootstrap 5.3 is used for utilities and component conventions; GAB styling owns the brand layer. */
:root {
  --bs-primary:#0d1714;
  --bs-primary-rgb:13,23,20;
  --bs-success:#b2ed59;
  --bs-success-rgb:178,237,89;
  --bs-body-bg:var(--paper);
  --bs-body-color:var(--ink);
  --bs-border-color:rgba(13,23,20,.14);
}
.btn { font-family:'Manrope',Arial,sans-serif; font-weight:800; letter-spacing:.02em; }
.btn-dark { --bs-btn-bg:var(--ink); --bs-btn-border-color:var(--ink); --bs-btn-hover-bg:#21342c; --bs-btn-hover-border-color:#21342c; }
.btn-light { --bs-btn-bg:var(--paper); --bs-btn-border-color:var(--paper); --bs-btn-hover-bg:#fff; --bs-btn-hover-border-color:#fff; --bs-btn-color:var(--ink); }
.site-nav .btn { padding:13px 17px; }
.market-bar .badge { background:rgba(178,237,89,.12)!important; color:var(--green)!important; font-family:'DM Mono',monospace; font-size:7px; font-weight:400; letter-spacing:.05em; padding:.3rem .55rem; }
.product-card.card { border-radius:0; }
.shadow-sm { box-shadow:0 .35rem 1.1rem rgba(13,23,20,.08)!important; }
