/* ============================================================
   ORA · 1929 — "Our Science" page-specific styles
   Loaded after styles.css (shares tokens, nav, footer, buttons)
   ============================================================ */

.sci-wrap{ max-width:1080px; margin-inline:auto; padding-inline:var(--gutter); }
.sci-narrow{ max-width:780px; }
.sci-section{ padding:clamp(64px,9vw,118px) 0; }
.sci-section--cream{ background:var(--cream); }
.sci-section--paper{ background:var(--paper); }
.sci-section--green{ background:linear-gradient(160deg,#1c4d36,#0f2e1f); color:var(--cream); }
.sci-section--ink{ background:var(--ink); color:var(--cream); }

.sci-head h2{ font-family:var(--display); font-weight:300; font-size:clamp(1.9rem,4vw,3rem); line-height:1.1; margin:.35em 0 .5em; max-width:22ch; }
.sci-head .lead{ font-size:clamp(1.05rem,1.7vw,1.22rem); font-weight:300; max-width:60ch; line-height:1.6; }
.sci-section--cream .sci-head h2, .sci-section--paper .sci-head h2{ color:var(--green-dk); }
.sci-section--cream .lead, .sci-section--paper .lead{ color:var(--muted); }
.sci-section--green .lead, .sci-section--ink .lead{ color:rgba(245,239,226,.82); }
.sci-note{ font-size:.82rem; color:var(--muted); margin-top:1.6em; }
.sci-section--green .sci-note, .sci-section--ink .sci-note{ color:rgba(245,239,226,.78); }   /* AA */
.sci-src{ display:block; margin-top:2.4em; font-size:.7rem; letter-spacing:.12em; text-transform:uppercase; color:var(--muted); }
.sci-section--green .sci-src, .sci-section--ink .sci-src{ color:rgba(245,239,226,.78); }       /* AA */

/* ---- Hero ---- */
.sci-hero{ background:linear-gradient(135deg,#1c4d36,#0c2419); color:var(--cream); padding:160px 0 clamp(64px,8vw,100px); position:relative; overflow:hidden; }
.sci-hero::before{ content:""; position:absolute; inset:0; background:radial-gradient(70% 90% at 85% 0%, rgba(195,155,67,.16), transparent 55%); }
.sci-hero__inner{ position:relative; }
.sci-hero h1{ font-family:var(--display); font-weight:300; font-size:clamp(2.4rem,6vw,4.6rem); line-height:1.02; letter-spacing:-.01em; margin:.2em 0 .4em; }
.sci-hero h1 em{ font-style:italic; color:var(--gold-soft); }
.sci-hero .lead{ color:rgba(245,239,226,.85); max-width:62ch; font-weight:300; font-size:clamp(1.05rem,1.8vw,1.28rem); line-height:1.6; }
.sci-meta{ display:flex; flex-wrap:wrap; gap:14px; margin-top:40px; }
.sci-meta__item{ border:1px solid rgba(227,199,126,.3); border-radius:var(--radius); padding:14px 20px; background:rgba(245,239,226,.04); }
.sci-meta__item span{ display:block; font-size:.66rem; letter-spacing:.22em; text-transform:uppercase; color:var(--gold-soft); margin-bottom:5px; }
.sci-meta__item strong{ font-family:var(--display); font-weight:400; font-size:1.05rem; color:var(--cream); }

/* ---- Big figures ---- */
.sci-figs{ display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(24px,4vw,44px); margin:clamp(40px,5vw,60px) 0 0; }
.sci-fig strong{ display:block; font-family:var(--display); font-weight:400; font-size:clamp(2.4rem,5vw,3.6rem); color:var(--gold); line-height:1; }
.sci-section--cream .sci-fig strong, .sci-section--paper .sci-fig strong{ color:var(--green); }
.sci-fig p{ font-size:.95rem; color:inherit; margin-top:.7em; font-weight:500; }
.sci-fig small{ display:block; font-size:.8rem; opacity:.7; margin-top:.4em; line-height:1.5; }
.sci-callout{ margin-top:clamp(32px,4vw,48px); padding:22px 26px; border-left:3px solid var(--gold); background:rgba(195,155,67,.08); font-size:1.05rem; line-height:1.55; }

/* ---- Tables ---- */
.sci-tablewrap{ margin-top:clamp(32px,4vw,48px); overflow-x:auto; -webkit-overflow-scrolling:touch; border:1px solid var(--cream-3); border-radius:var(--radius); background:var(--paper); box-shadow:0 30px 70px -45px rgba(12,36,25,.6); }
.sci-section--green .sci-tablewrap, .sci-section--ink .sci-tablewrap{ border-color:rgba(245,239,226,.16); }
.sci-table{ width:100%; min-width:640px; border-collapse:collapse; font-size:.92rem; }
.sci-table th{ text-align:left; font-family:var(--body); font-weight:600; font-size:.7rem; letter-spacing:.14em; text-transform:uppercase; padding:16px 20px; background:var(--green-dk); color:var(--gold-soft); white-space:nowrap; }
.sci-table td{ padding:16px 20px; border-top:1px solid var(--cream-3); vertical-align:top; line-height:1.5; color:var(--text); }
.sci-table td:first-child{ font-weight:500; color:var(--green-dk); white-space:nowrap; }
.sci-table tr.is-highlight td{ background:rgba(195,155,67,.12); }
.sci-table tr.is-highlight td:first-child{ color:var(--green); }
.sci-gi{ font-family:var(--display); font-size:1.15rem; color:var(--green); font-variant-numeric:tabular-nums; }
.sci-table tr.is-highlight .sci-gi{ color:var(--green-dk); }   /* readable on gold-tint row */

/* ---- Blueprint / numbered cards ---- */
.sci-cards{ display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(20px,2.5vw,28px); margin-top:clamp(40px,5vw,60px); }
.sci-card{ border:1px solid rgba(245,239,226,.14); border-radius:var(--radius); padding:30px 28px; background:rgba(245,239,226,.04); }
.sci-section--cream .sci-card, .sci-section--paper .sci-card{ border-color:var(--cream-3); background:var(--surface); }
.sci-card__num{ font-family:var(--display); font-size:2.2rem; color:var(--gold-soft); line-height:1; }
.sci-section--cream .sci-card__num, .sci-section--paper .sci-card__num{ color:var(--green); }   /* AA on light */
.sci-card h3{ font-family:var(--display); font-weight:400; font-size:1.35rem; margin:.4em 0 .15em; }
.sci-section--cream .sci-card h3, .sci-section--paper .sci-card h3{ color:var(--green-dk); }
.sci-card .sci-card__tag{ font-family:var(--accent-serif); font-style:italic; font-size:1rem; color:var(--gold-soft); margin-bottom:1em; display:block; }
.sci-section--cream .sci-card__tag, .sci-section--paper .sci-card__tag{ color:var(--green); }
.sci-card p{ font-size:.92rem; line-height:1.6; color:inherit; opacity:.92; }
.sci-section--cream .sci-card p, .sci-section--paper .sci-card p{ color:var(--muted); opacity:1; }

/* ---- Effects / arrow list ---- */
.sci-list{ display:grid; grid-template-columns:1fr 1fr; gap:18px 40px; margin-top:clamp(36px,4vw,52px); }
.sci-list li{ position:relative; padding-left:34px; font-size:.96rem; line-height:1.6; }
.sci-list li::before{ content:"→"; position:absolute; left:0; top:0; color:var(--gold); font-size:1.1rem; }
.sci-section--green .sci-list li, .sci-section--ink .sci-list li{ color:rgba(245,239,226,.85); }
.sci-section--cream .sci-list li, .sci-section--paper .sci-list li{ color:var(--muted); }

/* ---- Applications ---- */
.sci-apps{ display:grid; grid-template-columns:repeat(2,1fr); gap:20px; margin-top:clamp(36px,4vw,52px); }
.sci-app{ border-top:1px solid var(--cream-3); padding-top:20px; }
.sci-section--green .sci-app{ border-color:rgba(245,239,226,.16); }
.sci-app h3{ font-family:var(--display); font-weight:400; font-size:1.15rem; margin-bottom:.4em; }
.sci-section--cream .sci-app h3, .sci-section--paper .sci-app h3{ color:var(--green-dk); }
.sci-app p{ font-size:.9rem; line-height:1.55; opacity:.9; }

/* ---- Proof of concept ---- */
.sci-proof{ display:grid; grid-template-columns:1fr 1fr; gap:24px; margin-top:clamp(36px,4vw,52px); }
.sci-proof__card{ border:1px solid rgba(227,199,126,.3); border-radius:var(--radius); padding:30px 30px; background:rgba(245,239,226,.04); }
.sci-proof__when{ font-size:.7rem; letter-spacing:.18em; text-transform:uppercase; color:var(--gold-soft); }
.sci-proof__card h3{ font-family:var(--display); font-weight:400; font-size:1.5rem; margin:.5em 0 .5em; color:var(--cream); }
.sci-proof__card p{ font-size:.92rem; line-height:1.6; color:rgba(245,239,226,.8); }
.sci-quote{ margin:clamp(40px,5vw,64px) auto 0; max-width:780px; text-align:center; }
.sci-quote blockquote{ font-family:var(--accent-serif); font-style:italic; font-size:clamp(1.4rem,2.8vw,2.1rem); line-height:1.35; color:var(--gold-soft); margin:0 0 .7em; }
.sci-quote cite{ font-style:normal; font-size:.78rem; letter-spacing:.16em; text-transform:uppercase; color:rgba(245,239,226,.7); }

/* ---- Engage CTA ---- */
.sci-engage{ text-align:center; }
.sci-engage .sci-head{ margin-inline:auto; }
.sci-engage .sci-head h2{ margin-inline:auto; }
.sci-engage .lead{ margin:0 auto; }
.sci-engage__actions{ display:flex; flex-wrap:wrap; gap:14px; justify-content:center; margin-top:34px; }

/* back-to-home crumb */
.sci-crumb{ display:inline-flex; align-items:center; gap:.5em; font-size:.8rem; letter-spacing:.04em; color:var(--gold-soft); margin-bottom:8px; }
.sci-crumb:hover{ color:var(--cream); }

/* ---- Responsive ---- */
@media (max-width:900px){
  .sci-figs{ grid-template-columns:1fr; gap:28px; }
  .sci-cards{ grid-template-columns:1fr; }
  .sci-list{ grid-template-columns:1fr; }
  .sci-apps{ grid-template-columns:1fr; }
  .sci-proof{ grid-template-columns:1fr; }
}

/* ---- Dedicated mobile pass ---- */
@media (max-width:640px){
  .sci-hero{ padding:100px 0 52px; }
  .sci-section{ padding:54px 0; }
  .sci-head h2{ max-width:none; }
  .sci-meta{ gap:10px; }
  .sci-meta__item{ flex:1 1 100%; }            /* full-width meta tiles, easy to read/tap */
  .sci-card{ padding:24px 22px; }
  .sci-proof__card{ padding:24px 22px; }
  .sci-callout{ padding:18px 20px; font-size:1rem; }

  /* Tables → stacked cards (no horizontal scroll) */
  .sci-tablewrap{ overflow:visible; box-shadow:0 20px 50px -42px rgba(12,36,25,.6); }
  .sci-table{ min-width:0; }
  .sci-table thead{ display:none; }
  .sci-table, .sci-table tbody, .sci-table tr, .sci-table td{ display:block; width:100%; }
  .sci-table tr{ border-top:1px solid var(--cream-3); padding:8px 0 16px; }
  .sci-table tr:first-child{ border-top:0; }
  .sci-table tr.is-highlight{ background:rgba(195,155,67,.12); }
  .sci-table td{ border-top:0; padding:6px 18px; white-space:normal; }
  .sci-table td:first-child{ padding-top:16px; font-size:1.05rem; white-space:normal; color:var(--green-dk); }
  .sci-table td[data-label]::before{ content:attr(data-label); display:block; margin-bottom:3px;
    font-size:.6rem; letter-spacing:.14em; text-transform:uppercase; color:var(--gold); font-weight:600; }
}
