/* Apple-grade layer (apple-design skill): light-first, one accent (brand green, overrides graphene blue), type + space carry hierarchy.
   Loaded after graphene-theme.css. Remove the <link> to revert. */
:root{
  --primary:#053323;--primary-2:#095339;--accent:#1fa375;--accent-deep:#0f704e;--accent-link:#178c63;--accent-bright:#3ce6b4;--accent-light:#dbf0e9;
  --text:#1d1d1f;--text-secondary:#6e6e73;--bg-subtle:#f5f5f7;--border:#d2d2d7;
  --radius:22px;--shadow-sm:none;--shadow-md:none;--shadow-lg:none;
  --transition:all .35s cubic-bezier(.25,.1,.25,1);
  --font:-apple-system,BlinkMacSystemFont,'SF Pro Display','Pretendard Variable',Pretendard,'Inter','Apple SD Gothic Neo','Malgun Gothic',sans-serif;
}
body{letter-spacing:-.01em;line-height:1.5}

/* nav — slim translucent chrome (the only glass on the page) */
header{background:rgba(255,255,255,.72);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px)}
header.scrolled{border-bottom-color:rgba(0,0,0,.08);box-shadow:none}
.nav-inner{height:52px}
.logo img{height:24px}
nav.links a,.sustain-nav summary{font-size:.78rem;font-weight:400;color:rgba(29,29,31,.8)}
nav.links a:hover,.sustain-nav summary:hover{color:var(--text)}
.nav-cta{background:var(--accent-deep);border-color:var(--accent-deep);border-radius:980px;padding:6px 16px;font-size:.75rem;font-weight:500}
.nav-cta:hover{transform:none;filter:brightness(1.1)}
@media(max-width:920px){nav.links{top:52px}nav.links.open{max-height:calc(100dvh - 52px)}}

/* buttons — pills, no shine, no lift */
.btn{border-radius:980px;padding:12px 24px;font-weight:500;font-size:1rem}
.btn-primary::before{display:none}
.btn-primary,.hero .btn-primary{background:var(--accent-deep)}
.btn-primary:hover,.hero .btn-primary:hover{background:var(--accent-deep);filter:brightness(1.1);transform:none;box-shadow:none}
.btn-ghost,.hero .btn-ghost{background:transparent;color:var(--accent-link);border:none;padding-left:8px;padding-right:8px}
.btn-ghost:hover,.hero .btn-ghost:hover{background:transparent;text-decoration:underline}

/* hero — light, centered, headline does the work */
.hero{background:#fff;color:var(--text);min-height:0;padding:150px 0 96px;text-align:center}
.hero::before{background:none}
.hero .wrap{will-change:transform,opacity}
.hero .eyebrow,.eyebrow{color:var(--text-secondary);letter-spacing:.02em;text-transform:none;font-weight:600;font-size:1.05rem;justify-content:center}
.hero .eyebrow::before,.eyebrow::before{display:none}
.hero h1{color:var(--text);font-size:clamp(3rem,8vw,6.5rem);font-weight:700;letter-spacing:-.045em;line-height:1.04;max-width:none;margin:0 auto 22px}
.hero h1 .hl{color:var(--accent-deep)}
.hero p.lede{color:var(--text-secondary);font-size:clamp(1.1rem,2vw,1.5rem);line-height:1.45;max-width:720px;margin:0 auto 36px}
.hero-actions{justify-content:center}
.hero-stats{background:none;border:none;border-radius:0;margin-top:96px}
.hstat,.hstat:last-child{border:none;padding:0 16px}
.hstat .stat-num,.hero .hstat:first-child .stat-num,.hero .hstat:nth-child(2) .stat-num{color:var(--text);font-size:clamp(2.2rem,4vw,3.2rem);font-weight:700}
.hstat .stat-num .u{color:var(--text)}
.hstat .stat-label{color:var(--text-secondary);font-size:.9rem;font-weight:400}

/* section rhythm — alternating white / #f5f5f7, big tight headings, centered */
.pad{padding:128px 0}
.sec-head{max-width:820px;margin:0 auto 72px;text-align:center}
.sec-label{color:var(--text-secondary);letter-spacing:.02em;text-transform:none;font-size:1.05rem;font-weight:600;margin-bottom:10px}
.sec-label::before{display:none}
.sec-head h2{font-size:clamp(2.2rem,5vw,3.5rem);font-weight:700;letter-spacing:-.035em;line-height:1.08}
.sec-head p{font-size:clamp(1.05rem,1.6vw,1.3rem);line-height:1.5}
.solution,#solution{background:#fff}
#solution .sec-label{color:var(--text-secondary)}
.esg-hub-actions{justify-content:center}

/* cards — solid quiet surfaces, no borders, no hover lift */
.acard,.pcard,.sfeat,.prod,.esgcard,.news-card,.fc-panel,.polcard,.esg-topic{border:none;border-radius:var(--radius);background:var(--bg-subtle)}
.problem .pcard,.products .prod,.news .news-card,.problem .fc-panel{background:#fff}
.acard:hover,.pcard:hover,.sfeat:hover,.prod:hover,.esgcard:hover,.news-card:hover,.fc-panel:hover,.polcard:hover,.esg-topic:hover{border:none;box-shadow:none;transform:scale(1.015)}
.sdcard,.structure,.factsheet,.esg-statement,.form-card{border:none;border-radius:var(--radius);box-shadow:none}
.sdcard h4{border-left:none;padding-left:0}
.ico{background:transparent;width:auto;height:auto;justify-content:start}
.ico svg{width:30px;height:30px}
.prod .tag,.news-tag{border:none;background:var(--bg-subtle);border-radius:980px}
.pcard .figure{border-top:none;font-weight:700;color:var(--text)}
.field input,.field textarea{border-radius:12px;background:var(--bg-subtle);border-color:transparent}

/* performance — the one purposeful dark moment */
.performance{background:#000}
.performance::before{background:none}
.pstat{background:#000}
.perf-stats{background:none;gap:0}
.perf-chart,.perf-roi{background:#1d1d1f;border:none;border-radius:var(--radius)}
.logo-tile{border-radius:18px}

/* footer — Apple fat footer: light, small, grey */
footer{background:var(--bg-subtle);color:var(--text-secondary);font-size:.75rem;padding:56px 0 24px}
.foot-brand .logo img{filter:none;opacity:1}
.foot-col h5{color:var(--text);letter-spacing:0;text-transform:none;font-size:.8rem;font-weight:600}
.foot-col a{font-size:.8rem}
.foot-col a:hover{color:var(--text);text-decoration:underline}
.foot-bottom{border-top-color:var(--border);font-size:.75rem}

/* reveal — Apple ease, shorter travel */
.reveal{transform:translateY(40px);transition:opacity 1s cubic-bezier(.28,.11,.32,1),transform 1s cubic-bezier(.28,.11,.32,1)}

@media(max-width:560px){.pad{padding:88px 0}.hero{padding:120px 0 72px}.hero-stats{margin-top:64px;gap:32px}}
@media (prefers-reduced-motion: reduce){.reveal{transform:none;transition:none}.acard:hover,.pcard:hover,.sfeat:hover,.prod:hover,.esgcard:hover,.news-card:hover,.fc-panel:hover,.polcard:hover,.esg-topic:hover{transform:none}}
