/* Line C: one restrained composition, daylight palette, quiet interactions. */
.light-hero .line-actions { display:flex; flex-wrap:wrap; align-items:center; }
.light-hero .line-actions a { display:inline-flex; align-items:center; border:1px solid; line-height:1.5; transition:background .2s,transform .2s; }
.light-hero .line-actions a span { font-size:18px; }
.light-explore .phase-buttons { display:flex; flex-wrap:wrap; }
.light-explore .phase-buttons button { background:transparent; font-family:var(--sans); }
.light-sculpture { transform:perspective(1100px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)); transition:transform .3s ease-out; }
body.line-c {
  --ink:#233c33;
  --muted:#596a62;
  --surface:#fbfcfa;
  --accent:#426c5a;
  --hairline:#d9e1da;
  color:var(--ink);
  background:var(--surface);
  color-scheme:light;
}
.line-c :is(button,a,input):focus-visible { outline:2px solid var(--accent); outline-offset:5px; }
.line-c .light-nav {
  max-width:1220px;
  height:90px;
  margin:auto;
  padding:0 56px;
  border:0;
}
.line-c .line-brand { font-size:18px; font-weight:650; letter-spacing:-.6px; gap:10px; }
.line-c .line-mark { color:var(--accent); font-size:26px; }
.line-c .light-nav nav { gap:28px; font-size:12px; color:var(--muted); }
.line-c .light-nav nav a { display:inline; }
.line-c .light-nav nav :is(button,a):hover { color:var(--ink); }
.light-hero {
  display:grid;
  grid-template-columns:1.15fr 1fr;
  align-items:center;
  gap:14px;
  max-width:1220px;
  margin:auto;
  padding:70px 56px 88px;
  min-height:590px;
}
.light-hero-copy { min-width:0; position:relative; z-index:1; }
.light-hero h1 {
  font:500 clamp(49px,4.9vw,64px)/1.09 var(--sans);
  letter-spacing:-3px;
}
.light-hero h1 span { display:block; text-wrap:balance; }
.light-hero h1 span+span { color:var(--accent); }
.line-c .light-hero .line-description { font-size:14px; line-height:1.85; max-width:375px; margin-top:27px; color:var(--muted); }
.line-c .light-hero .line-actions { margin-top:29px; gap:12px; }
.line-c .light-hero .line-actions :is(button,a) { padding:14px 19px; min-height:48px; font-size:12px; border-radius:6px; gap:15px; font-weight:600; }
.line-c .line-primary { background:var(--accent); color:white; border-color:var(--accent); }
.line-c .line-primary:hover { background:#335744; border-color:#335744; }
.line-c .line-secondary { background:transparent; color:var(--ink); border-color:#b4c4ba; }
.line-c .line-secondary:hover { background:#edf2ed; }
.line-c .line-actions :is(button,a):hover { transform:translateY(-1px); }
.line-c .line-free { color:var(--muted); opacity:1; font-size:10px; margin-top:17px; }
.light-sculpture { width:100%; max-width:490px; justify-self:center; }
.light-sculpture img { width:100%; height:auto; user-select:none; filter:drop-shadow(0 20px 20px #19365e12); animation:light-arrive .9s ease-out both; }
.light-explore { background:#eff3ee; border-block:1px solid #e5ebe4; }
.light-explore-inner { max-width:1220px; margin:auto; padding:55px 56px; display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:center; }
.light-explore h2,.light-library h2 { font:500 29px/1.3 var(--sans); letter-spacing:-1px; text-wrap:balance; }
.light-explore-heading>p { max-width:355px; margin-top:14px; font-size:13px; line-height:1.85; color:var(--muted); }
.line-c .light-explore .phase-buttons { gap:5px; margin-top:23px; }
.line-c .light-explore .phase-buttons button { padding:10px 11px; min-width:46px; min-height:42px; border:1px solid transparent; border-radius:5px; font-size:11px; color:var(--muted); transition:background .18s,color .18s; }
.line-c .light-explore .phase-buttons button:hover { background:#e2e9e0; }
.line-c .light-explore .phase-buttons button[aria-pressed="true"] { color:#fff; background:var(--accent); border-color:var(--accent); }
.line-c .light-explore .phase-dot { display:none; }
.light-phase-reading { display:flex; align-items:center; gap:27px; padding-left:37px; border-left:1px solid #cad7cb; min-height:155px; }
.light-phase-glyph { font:400 70px/1 var(--serif); color:#668572; flex-shrink:0; }
.light-phase-reading h3 { font:550 21px/1.4 var(--sans); letter-spacing:-.5px; }
.light-phase-reading p { font-size:13px; line-height:1.85; margin-top:11px; color:var(--muted); max-width:280px; }
.light-library { max-width:1220px; margin:auto; padding:72px 56px 80px; }
.light-library-heading { display:flex; justify-content:space-between; gap:30px; align-items:center; margin-bottom:34px; }
.light-library-heading h2 { max-width:540px; }
.light-library-heading>a { flex-shrink:0; font-size:12px; color:var(--accent); text-decoration:underline; text-underline-offset:5px; }
.light-library-heading>a span { display:inline-block; margin-left:8px; }
.light-tool { border:0; border-top:1px solid var(--hairline); background:transparent; color:var(--ink); width:100%; display:grid; grid-template-columns:1fr 1.4fr 22px; gap:28px; align-items:center; padding:29px 0; text-align:left; transition:background .2s; }
.light-tool:last-child { border-bottom:1px solid var(--hairline); }
.light-tool:hover { background:#f0f4ee; }
.light-tool h3 { font:550 20px/1.4 var(--sans); letter-spacing:-.45px; }
.light-tool p { color:var(--muted); font-size:13px; line-height:1.85; max-width:400px; }
.light-tool>span { font-size:21px; color:var(--accent); }
.light-footer { max-width:1108px; margin:auto; padding:27px 0 36px; border-top:1px solid var(--hairline); display:flex; justify-content:space-between; align-items:center; gap:32px; }
.light-footer>a { font-size:14px; font-weight:650; white-space:nowrap; }
.light-footer p { font-size:11px; line-height:1.8; color:var(--muted); max-width:330px; }
html[lang="zh-Hant"] .light-hero h1 { font-family:var(--sans); font-size:clamp(38px,4.15vw,51px); line-height:1.28; letter-spacing:-1.2px; font-weight:500; }
html[lang="zh-Hant"] .line-c .line-description { font-size:14px; }
html[lang="zh-Hant"] .light-explore h2,html[lang="zh-Hant"] .light-library h2 { font-size:27px; letter-spacing:0; }
@keyframes light-arrive { from { opacity:0; transform:translateY(10px); } to { opacity:1; transform:none; } }
@media(min-width:1220px) { .light-hero { gap:40px; } }
@media(max-width:1220px) { .light-footer { margin-inline:56px; } }
@media(max-width:700px) {
  .line-c .light-nav { height:77px; padding:0 24px; gap:12px; }
  .line-c .line-brand { font-size:16px; }
  .line-c .line-mark { font-size:24px; }
  .line-c .light-nav nav { font-size:11px; gap:18px; }
  .line-c .light-nav nav button { display:none; }
  .light-hero { grid-template-columns:1fr; padding:42px 24px 28px; gap:15px; min-height:0; }
  .light-hero h1 { font-size:47px; line-height:1.13; letter-spacing:-2.2px; max-width:390px; }
  html[lang="zh-Hant"] .light-hero h1 { font-size:36px; line-height:1.38; letter-spacing:-.7px; max-width:350px; }
  .line-c .light-hero .line-description { margin-top:23px; font-size:13px; max-width:375px; }
  .line-c .light-hero .line-actions { gap:10px; margin-top:25px; }
  .line-c .light-hero .line-actions :is(button,a) { font-size:11px; padding:13px 15px; gap:12px; }
  .line-c .line-free { font-size:10px; margin-top:14px; }
  .light-sculpture { max-width:270px; margin-top:4px; }
  .light-explore-inner { display:block; padding:39px 24px; }
  .light-explore h2,.light-library h2 { font-size:26px; letter-spacing:-.6px; }
  html[lang="zh-Hant"] .light-explore h2,html[lang="zh-Hant"] .light-library h2 { font-size:25px; }
  .light-explore-heading>p { font-size:13px; }
  .light-phase-reading { margin-top:28px; border-left:0; border-top:1px solid #cad7cb; padding:24px 0 0; gap:24px; min-height:140px; }
  .light-phase-glyph { font-size:62px; }
  .light-phase-reading h3 { font-size:19px; }
  .light-phase-reading p { font-size:13px; }
  .light-library { padding:45px 24px 32px; }
  .light-library-heading { align-items:start; flex-direction:column; gap:17px; margin-bottom:25px; }
  .light-tool { grid-template-columns:1fr 22px; gap:9px 18px; padding:25px 0; }
  .light-tool h3 { font-size:20px; grid-column:1; }
  .light-tool p { font-size:13px; grid-column:1; }
  .light-tool>span { grid-column:2; grid-row:1/3; }
  .light-footer { margin-inline:24px; padding:25px 0 30px; flex-direction:column; align-items:start; gap:14px; }
  .light-footer p { font-size:11px; max-width:300px; }
}
@media(prefers-reduced-motion:reduce) { .light-sculpture img { animation:none; } .light-sculpture { transform:none; } }
