:root {
      --bg:#f3f8ff; --fg:#162033; --muted:#5f6d83; --card:rgba(255,255,255,.86); --line:rgba(125,146,178,.22); --max:980px;
    }
    *{box-sizing:border-box}
    html,body{height:100%}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family: "Instrument Sans", "Segoe UI", Helvetica, Arial, sans-serif;
      background:
        radial-gradient(1100px 620px at -12% -6%, rgba(59,130,246,.14) 0%, transparent 64%),
        radial-gradient(920px 520px at 112% 10%, rgba(6,182,212,.12) 0%, transparent 60%),
        radial-gradient(960px 560px at 50% 118%, rgba(99,102,241,.08) 0%, transparent 66%),
        #f6f9ff;
      background-repeat:no-repeat;
      color:var(--fg);
      overflow-x:hidden;
    }
    .skip-link{
      position:fixed;
      top:10px;
      left:10px;
      z-index:1000;
      padding:10px 14px;
      border-radius:8px;
      background:#111827;
      color:#fff;
      font-weight:700;
      text-decoration:none;
      transform:translateY(-160%);
      transition:transform .15s ease;
    }
    .skip-link:focus{transform:translateY(0)}
    .wrap{width:min(var(--max), calc(100% - 36px)); margin:20px auto 32px; padding-bottom:14px}
    .site-nav{
      display:flex;
      justify-content:flex-end;
      gap:clamp(16px, 3vw, 26px);
      margin:0 0 14px;
      padding:4px 2px 8px;
      flex-wrap:wrap;
      border-bottom:1px solid rgba(125,146,178,.16);
    }
    .site-nav a{
      position:relative;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      min-height:38px;
      padding:8px 1px;
      text-decoration:none;
      color:#52637c;
      font-weight:650;
      line-height:1.2;
      transition:color .18s ease;
    }
    .site-nav a::after{
      content:"";
      position:absolute;
      right:0;
      bottom:2px;
      left:0;
      height:2px;
      border-radius:999px;
      background:linear-gradient(90deg, #2563eb, #06b6d4);
      transform:scaleX(0);
      transform-origin:center;
      transition:transform .18s ease;
    }
    .site-nav a:hover,
    .site-nav a:focus-visible{
      color:#1d4ed8;
    }
    .site-nav a:hover::after,
    .site-nav a:focus-visible::after,
    .site-nav a[aria-current="page"]::after{
      transform:scaleX(1);
    }
    .site-nav a[aria-current="page"]{
      color:#1d4ed8;
      font-weight:800;
    }
    .site-nav a:focus-visible{
      outline:2px solid rgba(37,99,235,.38);
      outline-offset:4px;
      border-radius:2px;
    }
    .hero,.panel,.aside-panel{
      background:var(--card);
      border:1px solid var(--line);
      border-radius:18px;
      backdrop-filter:blur(8px);
      box-shadow:0 24px 70px rgba(15,23,42,.08);
    }
    .hero{padding:36px 32px; margin-bottom:18px}
    .hero-header{
      display:grid;
      grid-template-columns:minmax(0, 1fr) auto;
      align-items:center;
      gap:20px;
    }
    .hero-header .hero-brand{grid-column:1; grid-row:1; min-width:0}
    .hero-header .site-nav{
      grid-column:2;
      grid-row:1;
      align-self:start;
      gap:clamp(12px, 1.6vw, 18px);
      margin:0;
      padding:0;
      border-bottom:0;
    }
    .hero-header .site-nav a{
      min-height:34px;
      padding:6px 1px;
      font-size:15px;
    }
    .brand-lockup{display:inline-flex; align-items:center; gap:12px}
    .hero-brand{text-decoration:none}
    .brand-lockup.hero-brand{gap:20px}
    .brand{
      position:relative;
      width:62px;
      height:62px;
      border-radius:10px;
      border:1px solid rgba(59,130,246,.14);
      background:linear-gradient(135deg, rgba(239,246,255,.98) 0%, rgba(255,255,255,.95) 100%);
      box-shadow:0 16px 34px rgba(15,23,42,.06);
      overflow:hidden;
    }
    .brand::before,.brand::after{content:""; position:absolute; border-radius:999px}
    .brand::before{
      inset:14px 14px auto 14px;
      height:10px;
      background:linear-gradient(90deg, #2563eb 0%, #06b6d4 52%, #6366f1 100%);
    }
    .brand::after{
      width:18px;
      height:18px;
      right:12px;
      bottom:12px;
      background:linear-gradient(135deg, rgba(124,58,237,.20) 0%, rgba(20,184,166,.26) 100%);
      border:1px solid rgba(124,58,237,.10);
    }
    .brand-name{
      color:#1d4ed8;
      font-size:14px;
      font-weight:800;
      letter-spacing:.16em;
      text-transform:uppercase;
      line-height:1;
      white-space:nowrap;
    }
    .hero-brand .brand{width:82px; height:82px; border-radius:14px}
    .hero-brand .brand::before{inset:19px 18px auto 18px; height:12px}
    .hero-brand .brand::after{width:23px; height:23px; right:15px; bottom:15px}
    .hero-brand .brand-name{
      font-size:clamp(30px,4.4vw,44px);
      letter-spacing:-.05em;
      text-transform:none;
      color:#111827;
      font-weight:700;
    }
    .page-title{
      margin:22px 0 0;
      color:#111827;
      font-size:clamp(27px,3.8vw,38px);
      line-height:1.12;
      letter-spacing:-.035em;
      font-weight:750;
    }
    .lead{
      margin:18px 0 0;
      color:var(--muted);
      font-size:clamp(17px,2.2vw,20px);
      line-height:1.7;
      width:100%;
    }
    .lead-tight{margin-top:12px}
    .section{margin-top:30px}
    .section-head{padding:8px 2px 20px}
    .panel > .section-head,
    .aside-panel > .section-head{
      margin:0 0 10px;
      padding:14px 12px 20px;
      border-bottom:1px solid rgba(125,146,178,.16);
    }
    .section-title{
      margin:0;
      font-size:clamp(24px,3.6vw,32px);
      line-height:1.1;
      letter-spacing:-.03em;
      font-weight:700;
      color:#111827;
    }
    .section-copy{
      margin:10px 0 0;
      color:var(--muted);
      font-size:16px;
      line-height:1.7;
      width:100%;
    }
    .copy-tight{margin-top:6px}
    .text-link,
    .card-link{
      color:#1d4ed8;
      font-weight:700;
      text-decoration:underline;
      text-decoration-thickness:1.5px;
      text-underline-offset:3px;
    }
    .card-link{color:inherit}
    .text-link:hover,
    .card-link:hover{color:#1d4ed8}
    .text-link:focus-visible,
    .card-link:focus-visible{
      outline:2px solid rgba(37,99,235,.42);
      outline-offset:3px;
      border-radius:2px;
    }
    .panel,.aside-panel{padding:10px}
    .commandment,.modern-commandment{
      display:grid;
      grid-template-columns:54px 1fr;
      gap:16px;
      align-items:center;
      padding:16px 18px;
      border-radius:14px;
    }
    .commandment + .commandment,.modern-commandment + .modern-commandment{margin-top:10px}
    .commandment{
      border:1px solid rgba(59,130,246,.12);
      background:linear-gradient(135deg, rgba(239,246,255,.96) 0%, rgba(255,255,255,.92) 100%);
      box-shadow:0 10px 24px rgba(59,130,246,.06);
    }
    .modern-commandment{
      border:1px solid rgba(59,130,246,.12);
      background:linear-gradient(135deg, rgba(239,246,255,.96) 0%, rgba(255,255,255,.92) 100%);
      box-shadow:0 10px 24px rgba(59,130,246,.06);
    }
    .capstone-commandment{
      border:1px solid rgba(79,70,229,.26);
      background:linear-gradient(135deg, rgba(224,231,255,.99) 0%, rgba(237,242,255,.96) 48%, rgba(255,255,255,.92) 100%);
      box-shadow:0 16px 30px rgba(79,70,229,.10), inset 0 1px 0 rgba(255,255,255,.75);
    }
    .capstone-block{
      margin-top:22px;
      padding-top:10px;
      border-top:1px solid rgba(125,146,178,.18);
    }
    .capstone-head{padding:14px 12px 16px}
    .commandment-index,.modern-index{
      width:54px; height:54px; border-radius:8px; display:grid; place-items:center; font-weight:700;
      box-shadow:inset 0 1px 0 rgba(255,255,255,.75);
    }
    .commandment-index{
      background:linear-gradient(135deg, #dbeafe 0%, #bfdbfe 100%);
      border:1px solid rgba(59,130,246,.18); color:#1d4ed8;
    }
    .modern-index{
      background:linear-gradient(135deg, #dbeafe 0%, #bfdbfe 100%);
      border:1px solid rgba(59,130,246,.18); color:#1d4ed8;
    }
    .capstone-index{
      background:linear-gradient(135deg, #c7d2fe 0%, #a5b4fc 100%);
      border:1px solid rgba(79,70,229,.30);
      color:#4338ca;
    }
    .capstone-commandment .modern-text{
      font-size:clamp(20px,2.3vw,25px);
      font-weight:650;
    }
    .commandment-text,.modern-text,.coming-soon{
      margin:0;
      color:#111827;
      font-size:clamp(19px,2.2vw,24px);
      line-height:1.45;
      font-weight:600;
      letter-spacing:-.02em;
    }
    .source-reference{
      margin:0 0 5px;
      color:#52637c;
      font-size:13px;
      font-weight:750;
      letter-spacing:.02em;
    }
    .credit{
      margin:14px 2px 0;
      color:#52637c;
      font-size:13px;
      line-height:1.6;
    }
    .credit a{
      color:#1d4ed8;
      text-decoration:underline;
      text-underline-offset:2px;
    }
    .updated-date{margin:14px 0 0; color:#52637c; font-size:14px}
    .footer-row{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:16px;
      margin:18px 0 14px;
    }
    .footer-links{
      display:flex;
      justify-content:flex-end;
      gap:clamp(12px, 1.6vw, 18px);
      flex-wrap:wrap;
      margin:0;
    }
    .footer-links a{
      position:relative;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      min-height:34px;
      padding:6px 1px;
      text-decoration:none;
      color:#52637c;
      font-weight:650;
      font-size:15px;
      transition:color .18s ease;
    }
    .footer-links a::after{
      content:"";
      position:absolute;
      right:0;
      bottom:0;
      left:0;
      height:2px;
      border-radius:999px;
      background:linear-gradient(90deg, #2563eb, #06b6d4);
      transform:scaleX(0);
      transform-origin:center;
      transition:transform .18s ease;
    }
    .footer-links a:hover,
    .footer-links a:focus-visible{
      color:#1d4ed8;
    }
    .footer-links a:hover::after,
    .footer-links a:focus-visible::after{
      transform:scaleX(1);
    }
    .footer-links a:focus-visible{
      outline:2px solid rgba(37,99,235,.38);
      outline-offset:3px;
      border-radius:2px;
    }
    .coming-soon{
      padding:16px 18px;
      border:1px solid rgba(99,102,241,.14);
      border-radius:14px;
      background:linear-gradient(135deg, rgba(238,242,255,.96) 0%, rgba(255,255,255,.92) 100%);
      box-shadow:0 10px 24px rgba(99,102,241,.05);
    }
    .footer{font-size:12px; color:#52637c; text-align:left}
    @media (prefers-reduced-motion: reduce){
      html{scroll-behavior:auto}
      *,*::before,*::after{animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important}
    }
    @media (max-width: 900px){
      .hero-header{display:flex; flex-direction:column; align-items:stretch; gap:0}
      .hero-header .site-nav{
        order:2;
        align-self:stretch;
        width:100%;
        margin:14px 0 0;
        padding:8px 2px 0;
        border-top:1px solid rgba(125,146,178,.16);
      }
      .hero-header .hero-brand{order:1; align-self:flex-start}
    }
    @media (max-width: 640px){
      .wrap{width:min(var(--max), calc(100% - 24px)); margin:10px auto 24px; padding-bottom:14px}
      .hero{padding:24px 20px}
      .panel,.aside-panel{padding:6px}
      .brand-lockup{gap:10px}
      .brand-name{font-size:12px; letter-spacing:.14em}
      .hero-brand{gap:14px}
      .hero-brand .brand{width:74px; height:74px; border-radius:12px}
      .hero-brand .brand::before{inset:18px 16px auto 16px; height:11px}
      .hero-brand .brand::after{width:21px; height:21px; right:14px; bottom:14px}
      .hero-brand .brand-name{
        font-size:clamp(22px,7vw,32px);
        line-height:1.02;
        white-space:normal;
      }
      .page-title{font-size:29px}
      .lead{font-size:17px; line-height:1.65}
      .section{margin-top:24px}
      .section-head{padding:4px 2px 16px}
      .section-title{font-size:27px}
      .section-copy{font-size:15px; line-height:1.6}
      .commandment,.modern-commandment{grid-template-columns:1fr; gap:10px}
      .commandment-index,.modern-index{width:44px; height:44px; border-radius:7px}
      .commandment-text,.modern-text,.coming-soon{font-size:18px; line-height:1.4}
      .footer-row{flex-direction:column; align-items:stretch; gap:10px}
      .footer{order:2; text-align:center}
      .footer-links{justify-content:center}
      .hero-header .site-nav{justify-content:center; gap:6px 10px; padding-bottom:10px}
      .hero-header .site-nav a{min-height:44px; padding:10px 1px; font-size:16px}
      .footer-links a{min-height:44px; padding:10px 1px; font-size:16px}
    }
    @media (max-width: 380px){
      .site-nav{
        display:grid;
        grid-template-columns:repeat(2, max-content);
        justify-content:center;
      }
    }