:root {

  --navy:
    #14213d;

  --navy-soft:
    #263654;

  --navy-pale:
    #52627a;

  --gold:
    #ad7a20;

  --gold-soft:
    #d7b56f;

  --ivory:
    #faf7ef;

  --ivory-deep:
    #efe8da;

  --paper:
    #ffffff;

  --text:
    #1d2a42;

  --muted:
    #627087;

  --line:
    rgba(166, 120, 38, 0.22);

  --navy-line:
    rgba(20, 33, 61, 0.10);

  --shadow:
    rgba(40, 31, 18, 0.11);
}


* {
  box-sizing:
    border-box;
}


html {

  min-height:
    100%;

  scroll-behavior:
    smooth;

  background:
    var(--ivory);
}


body {

  margin:
    0;

  min-height:
    100vh;

  color:
    var(--text);

  background:
    radial-gradient(
      circle at 82% 4%,
      rgba(255, 255, 255, 0.98),
      transparent 30%
    ),
    linear-gradient(
      135deg,
      #fbf8f1,
      #f4eee3 62%,
      #f8f5ed
    );

  font-family:
    Inter,
    ui-sans-serif,
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
}


a {
  color:
    inherit;
}


.community-page {

  min-height:
    100vh;

  overflow:
    hidden;
}


/* ============================================================
   HEADER
============================================================ */

.site-header {

  width:
    min(
      1460px,
      calc(100% - 48px)
    );

  min-height:
    76px;

  margin:
    0 auto;

  display:
    flex;

  align-items:
    center;

  gap:
    34px;

  border-bottom:
    1px solid
    rgba(173, 122, 32, 0.18);
}


.brand-lockup {

  display:
    inline-flex;

  align-items:
    center;

  gap:
    11px;

  flex:
    0 0 auto;

  text-decoration:
    none;
}


.brand-seal {

  width:
    42px;

  height:
    42px;

  object-fit:
    contain;
}


.brand-copy {

  display:
    flex;

  flex-direction:
    column;

  line-height:
    1;
}


.brand-copy strong {

  color:
    var(--navy);

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    20px;

  font-weight:
    600;

  letter-spacing:
    .04em;
}


.brand-copy small {

  margin-top:
    5px;

  color:
    var(--gold);

  font-size:
    8px;

  font-weight:
    800;

  letter-spacing:
    .18em;
}


.site-navigation {

  margin-left:
    auto;

  display:
    flex;

  align-items:
    center;

  gap:
    21px;
}


.site-navigation > a {

  color:
    var(--navy-soft);

  text-decoration:
    none;

  font-size:
    12px;

  font-weight:
    650;

  transition:
    color 160ms ease;
}


.site-navigation > a:hover,
.site-navigation > a[aria-current="page"] {

  color:
    var(--gold);
}


.site-navigation .profile-link {

  min-height:
    39px;

  display:
    inline-flex;

  align-items:
    center;

  padding:
    0 14px;

  border:
    1px solid
    rgba(173, 122, 32, .34);

  border-radius:
    999px;

  background:
    rgba(255, 255, 255, .64);
}


/* ============================================================
   HERO
============================================================ */

.community-hero {

  position:
    relative;

  width:
    min(
      1380px,
      calc(100% - 64px)
    );

  min-height:
    700px;

  margin:
    0 auto;

  padding:
    110px 0 120px;

  display:
    grid;

  grid-template-columns:
    minmax(0, 1.3fr)
    minmax(340px, .7fr);

  gap:
    clamp(
      55px,
      8vw,
      130px
    );

  align-items:
    center;
}


.community-hero::before {

  content:
    "";

  position:
    absolute;

  width:
    700px;

  height:
    700px;

  top:
    -190px;

  right:
    -300px;

  border:
    1px solid
    rgba(173, 122, 32, .09);

  border-radius:
    50%;

  box-shadow:
    inset 0 0 0 78px
    rgba(173, 122, 32, .015);

  pointer-events:
    none;
}


.eyebrow,
.section-eyebrow {

  margin:
    0 0 13px;

  color:
    var(--gold);

  font-size:
    10px;

  font-weight:
    850;

  letter-spacing:
    .19em;
}


.hero-copy h1 {

  max-width:
    920px;

  margin:
    0;

  color:
    var(--navy);

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    clamp(
      3.6rem,
      6.5vw,
      7rem
    );

  font-weight:
    500;

  line-height:
    .94;

  letter-spacing:
    -.055em;
}


.hero-copy h1 em {

  display:
    block;

  margin-top:
    13px;

  color:
    var(--gold);

  font-size:
    .63em;

  font-weight:
    400;

  line-height:
    1.06;
}


.hero-lead {

  max-width:
    770px;

  margin:
    34px 0 0;

  color:
    var(--text);

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    clamp(
      1.2rem,
      2vw,
      1.55rem
    );

  line-height:
    1.6;
}


.hero-body {

  max-width:
    720px;

  margin:
    18px 0 0;

  color:
    var(--muted);

  font-size:
    14px;

  line-height:
    1.78;
}


/* ============================================================
   PRINCIPLE CARD
============================================================ */

.principle-card {

  position:
    relative;

  padding:
    38px 35px;

  border:
    1px solid
    var(--line);

  background:
    linear-gradient(
      145deg,
      rgba(255,255,255,.94),
      rgba(247,241,228,.80)
    );

  box-shadow:
    0 28px 70px
    rgba(40,31,18,.10);
}


.principle-card::before {

  content:
    "";

  position:
    absolute;

  top:
    0;

  left:
    35px;

  width:
    85px;

  height:
    2px;

  background:
    var(--gold);
}


.principle-symbol {

  width:
    55px;

  height:
    55px;

  display:
    grid;

  place-items:
    center;

  margin-bottom:
    30px;

  border:
    1px solid
    rgba(173,122,32,.34);

  border-radius:
    50%;

  color:
    var(--gold);

  font-size:
    23px;
}


.principle-label {

  margin:
    0 0 23px;

  color:
    var(--gold);

  font-size:
    8px;

  font-weight:
    850;

  letter-spacing:
    .16em;
}


.principle-card > strong {

  display:
    block;

  margin:
    8px 0;

  color:
    var(--navy);

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    25px;

  font-weight:
    500;
}


.principle-rule {

  height:
    1px;

  margin:
    29px 0 17px;

  background:
    linear-gradient(
      90deg,
      rgba(173,122,32,.45),
      transparent
    );
}


.principle-card small {

  color:
    var(--gold);

  font-size:
    8px;

  font-weight:
    800;

  letter-spacing:
    .18em;
}


/* ============================================================
   SHARED CONTENT
============================================================ */

.content-section {

  width:
    min(
      1320px,
      calc(100% - 64px)
    );

  margin:
    0 auto;

  padding:
    100px 0;

  display:
    grid;

  grid-template-columns:
    145px
    minmax(0, 1fr);

  gap:
    50px;

  border-top:
    1px solid
    rgba(173,122,32,.16);
}


.section-marker {

  padding-top:
    4px;
}


.section-marker > span {

  display:
    block;

  color:
    var(--gold);

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    36px;
}


.section-marker > small {

  display:
    block;

  max-width:
    110px;

  margin-top:
    8px;

  color:
    var(--muted);

  font-size:
    8px;

  font-weight:
    800;

  line-height:
    1.5;

  letter-spacing:
    .15em;
}


.section-content h2,
.model-heading h2,
.identity-content h2,
.atlas-public-copy h2,
.governance-heading h2,
.closing-section h2 {

  max-width:
    970px;

  margin:
    0;

  color:
    var(--navy);

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    clamp(
      2.3rem,
      4.4vw,
      4.15rem
    );

  font-weight:
    500;

  line-height:
    1.07;

  letter-spacing:
    -.04em;
}


.section-intro {

  max-width:
    830px;

  margin:
    25px 0 0;

  color:
    var(--muted);

  font-size:
    15px;

  line-height:
    1.76;
}


.prose-grid {

  display:
    grid;

  grid-template-columns:
    repeat(2, minmax(0, 1fr));

  gap:
    42px;

  margin-top:
    34px;
}


.prose-grid p {

  margin:
    0;

  color:
    var(--muted);

  font-size:
    15px;

  line-height:
    1.82;
}


.institutional-quote {

  max-width:
    970px;

  margin:
    55px 0 0;

  padding:
    6px 0 6px 30px;

  border-left:
    2px solid
    var(--gold);
}


.institutional-quote p {

  margin:
    0;

  color:
    var(--navy);

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    clamp(
      1.4rem,
      2.6vw,
      2rem
    );

  line-height:
    1.5;
}


/* ============================================================
   CONTRIBUTION MODEL
============================================================ */

.model-section {

  padding:
    105px
    max(
      32px,
      calc((100vw - 1320px) / 2)
    );

  color:
    #fff;

  background:
    radial-gradient(
      circle at 85% 0%,
      rgba(215,181,111,.14),
      transparent 32%
    ),
    linear-gradient(
      135deg,
      #14213d,
      #1e314f
    );
}


.model-heading {

  max-width:
    1000px;
}


.model-heading .section-eyebrow {

  color:
    var(--gold-soft);
}


.model-heading h2 {

  color:
    #fff;
}


.contribution-grid {

  display:
    grid;

  grid-template-columns:
    repeat(4, minmax(0, 1fr));

  gap:
    11px;

  margin-top:
    52px;
}


.contribution-card {

  position:
    relative;

  min-height:
    440px;

  padding:
    28px;

  display:
    flex;

  flex-direction:
    column;

  border:
    1px solid
    rgba(255,255,255,.10);

  background:
    rgba(255,255,255,.045);
}


.card-number {

  color:
    var(--gold-soft);

  font-size:
    8px;

  font-weight:
    800;
}


.card-symbol {

  width:
    48px;

  height:
    48px;

  margin-top:
    40px;

  display:
    grid;

  place-items:
    center;

  border:
    1px solid
    rgba(215,181,111,.28);

  border-radius:
    50%;

  color:
    var(--gold-soft);

  font-size:
    18px;
}


.card-label {

  margin:
    27px 0 8px;

  color:
    var(--gold-soft);

  font-size:
    8px;

  font-weight:
    800;

  letter-spacing:
    .16em;
}


.contribution-card h3 {

  margin:
    0 0 15px;

  color:
    #fff;

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    23px;

  font-weight:
    500;

  line-height:
    1.35;
}


.contribution-card > p:not(.card-label) {

  margin:
    0;

  color:
    rgba(255,255,255,.61);

  font-size:
    12px;

  line-height:
    1.7;
}


.contribution-card > strong {

  margin-top:
    auto;

  padding-top:
    25px;

  color:
    rgba(255,255,255,.88);

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    14px;

  font-weight:
    500;

  line-height:
    1.5;
}


/* ============================================================
   PRIVATE / PUBLIC BOUNDARY
============================================================ */

.boundary-model {

  display:
    grid;

  grid-template-columns:
    1fr 230px 1fr;

  align-items:
    stretch;

  margin-top:
    50px;
}


.boundary-space {

  min-height:
    390px;

  padding:
    35px;

  border:
    1px solid
    var(--line);

  background:
    rgba(255,255,255,.63);
}


.boundary-status {

  display:
    inline-flex;

  padding:
    5px 8px;

  border:
    1px solid
    rgba(173,122,32,.28);

  border-radius:
    999px;

  color:
    var(--gold);

  font-size:
    8px;

  font-weight:
    800;

  letter-spacing:
    .14em;
}


.boundary-eyebrow {

  margin:
    42px 0 7px;

  color:
    var(--muted);

  font-size:
    8px;

  font-weight:
    800;

  letter-spacing:
    .15em;
}


.boundary-space h3 {

  margin:
    0;

  color:
    var(--navy);

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    33px;

  font-weight:
    500;
}


.boundary-space ul {

  margin:
    27px 0 0;

  padding:
    22px 0 0;

  list-style:
    none;

  border-top:
    1px solid
    var(--navy-line);
}


.boundary-space li {

  position:
    relative;

  padding:
    7px 0 7px 17px;

  color:
    var(--muted);

  font-size:
    12px;
}


.boundary-space li::before {

  content:
    "";

  position:
    absolute;

  left:
    0;

  top:
    13px;

  width:
    5px;

  height:
    5px;

  border-radius:
    50%;

  background:
    var(--gold);
}


.boundary-transition {

  display:
    flex;

  flex-direction:
    column;

  align-items:
    center;

  justify-content:
    center;
}


.transition-line {

  width:
    1px;

  height:
    80px;

  background:
    linear-gradient(
      transparent,
      rgba(173,122,32,.44)
    );
}


.transition-line:last-child {

  background:
    linear-gradient(
      rgba(173,122,32,.44),
      transparent
    );
}


.transition-choice {

  width:
    150px;

  height:
    150px;

  display:
    flex;

  flex-direction:
    column;

  align-items:
    center;

  justify-content:
    center;

  border:
    1px solid
    rgba(173,122,32,.38);

  border-radius:
    50%;

  background:
    rgba(255,255,255,.66);

  box-shadow:
    0 18px 45px
    rgba(40,31,18,.07);
}


.transition-choice small {

  color:
    var(--gold);

  font-size:
    7px;

  font-weight:
    800;

  letter-spacing:
    .13em;
}


.transition-choice strong {

  margin-top:
    7px;

  color:
    var(--navy);

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    20px;

  font-weight:
    500;
}


.transition-choice > span {

  margin-top:
    6px;

  color:
    var(--gold);

  font-size:
    18px;
}


/* ============================================================
   IDENTITY
============================================================ */

.identity-section {

  width:
    min(
      1180px,
      calc(100% - 64px)
    );

  margin:
    35px auto 110px;

  padding:
    58px;

  display:
    grid;

  grid-template-columns:
    105px 1fr;

  gap:
    45px;

  color:
    #fff;

  background:
    radial-gradient(
      circle at 90% 0%,
      rgba(215,181,111,.14),
      transparent 34%
    ),
    linear-gradient(
      135deg,
      #14213d,
      #203451
    );

  box-shadow:
    0 30px 70px
    rgba(20,33,61,.17);
}


.identity-symbol {

  width:
    88px;

  height:
    88px;

  display:
    grid;

  place-items:
    center;

  border:
    1px solid
    rgba(215,181,111,.42);

  border-radius:
    50%;

  color:
    var(--gold-soft);

  font-size:
    32px;
}


.identity-content .section-eyebrow {

  color:
    var(--gold-soft);
}


.identity-content h2 {

  color:
    #fff;
}


.identity-content > p {

  max-width:
    860px;

  margin:
    21px 0 0;

  color:
    rgba(255,255,255,.67);

  font-size:
    13px;

  line-height:
    1.76;
}


.identity-note {

  max-width:
    850px;

  margin-top:
    31px;

  padding-top:
    27px;

  border-top:
    1px solid
    rgba(215,181,111,.24);
}


.identity-note strong {

  display:
    block;

  color:
    #fff;

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    20px;

  font-weight:
    500;
}


.identity-note span {

  display:
    block;

  margin-top:
    9px;

  color:
    rgba(255,255,255,.59);

  font-size:
    11px;

  line-height:
    1.65;
}


/* ============================================================
   ATLAS PUBLIC
============================================================ */

.atlas-public-section {

  width:
    min(
      1320px,
      calc(100% - 64px)
    );

  margin:
    0 auto;

  padding:
    105px 0;

  display:
    grid;

  grid-template-columns:
    minmax(0, 1fr)
    minmax(370px, .75fr);

  gap:
    75px;

  align-items:
    center;

  border-top:
    1px solid
    rgba(173,122,32,.16);
}


.atlas-public-copy > p:not(.section-eyebrow) {

  max-width:
    760px;

  margin:
    20px 0 0;

  color:
    var(--muted);

  font-size:
    13px;

  line-height:
    1.76;
}


.public-preview {

  padding:
    32px;

  border:
    1px solid
    var(--line);

  background:
    linear-gradient(
      145deg,
      rgba(255,255,255,.94),
      rgba(247,241,228,.75)
    );

  box-shadow:
    0 24px 60px
    rgba(40,31,18,.08);
}


.preview-label {

  margin:
    0 0 18px;

  color:
    var(--gold);

  font-size:
    8px;

  font-weight:
    850;

  letter-spacing:
    .18em;
}


.preview-status {

  display:
    inline-flex;

  padding:
    5px 8px;

  border:
    1px solid
    rgba(173,122,32,.26);

  border-radius:
    999px;

  color:
    var(--gold);

  font-size:
    7px;

  font-weight:
    800;

  letter-spacing:
    .12em;
}


.public-preview h3 {

  margin:
    32px 0 24px;

  color:
    var(--navy);

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    29px;

  font-weight:
    500;
}


.preview-meta {

  border-top:
    1px solid
    var(--navy-line);
}


.preview-meta > div {

  display:
    grid;

  grid-template-columns:
    120px 1fr;

  gap:
    15px;

  padding:
    13px 0;

  border-bottom:
    1px solid
    var(--navy-line);
}


.preview-meta span {

  color:
    var(--muted);

  font-size:
    9px;
}


.preview-meta strong {

  color:
    var(--navy);

  font-size:
    10px;

  font-weight:
    700;
}


.preview-notice {

  margin-top:
    25px;

  padding:
    18px;

  border-left:
    2px solid
    var(--gold);

  background:
    rgba(173,122,32,.055);
}


.preview-notice strong {

  color:
    var(--navy);

  font-size:
    10px;
}


.preview-notice p {

  margin:
    7px 0 0;

  color:
    var(--muted);

  font-size:
    10px;

  line-height:
    1.6;
}


/* ============================================================
   RIGHTS
============================================================ */

.rights-grid {

  display:
    grid;

  grid-template-columns:
    repeat(2, minmax(0, 1fr));

  gap:
    1px;

  margin-top:
    48px;

  border:
    1px solid
    var(--navy-line);

  background:
    var(--navy-line);
}


.rights-grid article {

  min-height:
    245px;

  padding:
    30px;

  background:
    rgba(250,247,239,.96);
}


.rights-grid article > span {

  color:
    var(--gold);

  font-size:
    8px;

  font-weight:
    800;
}


.rights-grid h3 {

  margin:
    28px 0 12px;

  color:
    var(--navy);

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    22px;

  font-weight:
    500;
}


.rights-grid p {

  margin:
    0;

  color:
    var(--muted);

  font-size:
    12px;

  line-height:
    1.7;
}


.legal-clarifier {

  margin-top:
    30px;

  padding:
    24px 27px;

  border:
    1px solid
    rgba(173,122,32,.22);

  background:
    rgba(255,255,255,.47);
}


.legal-clarifier strong {

  display:
    block;

  color:
    var(--navy);

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    17px;

  font-weight:
    500;
}


.legal-clarifier p {

  margin:
    9px 0 0;

  color:
    var(--muted);

  font-size:
    11px;

  line-height:
    1.68;
}


/* ============================================================
   GOVERNANCE
============================================================ */

.governance-section {

  padding:
    105px
    max(
      32px,
      calc((100vw - 1320px) / 2)
    );

  color:
    #fff;

  background:
    radial-gradient(
      circle at 82% 0%,
      rgba(215,181,111,.14),
      transparent 32%
    ),
    linear-gradient(
      135deg,
      #14213d,
      #1d304e
    );
}


.governance-heading {

  max-width:
    970px;
}


.governance-heading .section-eyebrow {

  color:
    var(--gold-soft);
}


.governance-heading h2 {

  color:
    #fff;
}


.governance-heading > p:last-child {

  max-width:
    760px;

  margin:
    22px 0 0;

  color:
    rgba(255,255,255,.63);

  font-size:
    13px;

  line-height:
    1.7;
}


.governance-grid {

  display:
    grid;

  grid-template-columns:
    repeat(3, minmax(0, 1fr));

  gap:
    1px;

  margin-top:
    48px;

  background:
    rgba(255,255,255,.10);
}


.governance-grid article {

  min-height:
    230px;

  padding:
    27px;

  background:
    rgba(20,33,61,.74);
}


.governance-grid span {

  color:
    var(--gold-soft);

  font-size:
    8px;

  font-weight:
    800;
}


.governance-grid h3 {

  margin:
    29px 0 10px;

  color:
    #fff;

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    21px;

  font-weight:
    500;
}


.governance-grid p {

  margin:
    0;

  color:
    rgba(255,255,255,.58);

  font-size:
    11px;

  line-height:
    1.65;
}


/* ============================================================
   CONTENT TYPES
============================================================ */

.content-types {

  display:
    grid;

  grid-template-columns:
    repeat(3, minmax(0, 1fr));

  gap:
    16px;

  margin-top:
    48px;
}


.content-types article {

  min-height:
    290px;

  padding:
    29px;

  border:
    1px solid
    var(--line);

  background:
    rgba(255,255,255,.54);
}


.content-badge {

  display:
    inline-flex;

  padding:
    5px 8px;

  border-radius:
    999px;

  font-size:
    7px;

  font-weight:
    850;

  letter-spacing:
    .13em;
}


.content-badge.institutional {

  color:
    var(--navy);

  border:
    1px solid
    rgba(20,33,61,.18);
}


.content-badge.community {

  color:
    var(--gold);

  border:
    1px solid
    rgba(173,122,32,.30);
}


.content-badge.ai {

  color:
    var(--navy-pale);

  border:
    1px dashed
    rgba(20,33,61,.22);
}


.content-types h3 {

  margin:
    42px 0 12px;

  color:
    var(--navy);

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    23px;

  font-weight:
    500;
}


.content-types p {

  margin:
    0;

  color:
    var(--muted);

  font-size:
    12px;

  line-height:
    1.7;
}


/* ============================================================
   CLOSING
============================================================ */

.closing-section {

  width:
    min(
      1120px,
      calc(100% - 64px)
    );

  margin:
    20px auto 110px;

  padding:
    75px;

  text-align:
    center;

  border:
    1px solid
    var(--line);

  background:
    radial-gradient(
      circle at 50% -10%,
      rgba(215,181,111,.19),
      transparent 42%
    ),
    rgba(255,255,255,.58);

  box-shadow:
    0 25px 65px
    rgba(40,31,18,.07);
}


.closing-symbol {

  width:
    68px;

  height:
    68px;

  margin:
    0 auto 27px;

  display:
    grid;

  place-items:
    center;

  border:
    1px solid
    rgba(173,122,32,.36);

  border-radius:
    50%;

  color:
    var(--gold);

  font-size:
    25px;
}


.closing-section h2 {

  margin:
    0 auto;
}


.closing-section > p:not(.section-eyebrow) {

  max-width:
    760px;

  margin:
    19px auto 0;

  color:
    var(--muted);

  font-size:
    13px;

  line-height:
    1.75;
}


.closing-section > strong {

  display:
    block;

  margin-top:
    31px;

  color:
    var(--gold);

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    24px;

  font-weight:
    500;

  font-style:
    italic;
}


.closing-actions {

  display:
    flex;

  flex-wrap:
    wrap;

  justify-content:
    center;

  gap:
    11px;

  margin-top:
    36px;
}


.primary-action,
.secondary-action {

  min-height:
    46px;

  display:
    inline-flex;

  align-items:
    center;

  justify-content:
    center;

  gap:
    9px;

  padding:
    0 19px;

  border-radius:
    999px;

  text-decoration:
    none;

  font-size:
    12px;

  font-weight:
    750;
}


.primary-action {

  color:
    #fff;

  background:
    var(--navy);

  box-shadow:
    0 12px 28px
    rgba(20,33,61,.17);
}


.secondary-action {

  color:
    var(--navy);

  border:
    1px solid
    rgba(20,33,61,.14);

  background:
    rgba(255,255,255,.62);
}


/* ============================================================
   FOOTER
============================================================ */

.site-footer {

  width:
    min(
      1380px,
      calc(100% - 64px)
    );

  min-height:
    125px;

  margin:
    0 auto;

  display:
    grid;

  grid-template-columns:
    auto 1fr auto;

  gap:
    30px;

  align-items:
    center;

  border-top:
    1px solid
    rgba(173,122,32,.18);
}


.footer-brand {

  display:
    flex;

  flex-direction:
    column;
}


.footer-brand strong {

  color:
    var(--navy);

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    15px;

  letter-spacing:
    .05em;
}


.footer-brand span {

  margin-top:
    4px;

  color:
    var(--gold);

  font-size:
    7px;

  font-weight:
    800;

  letter-spacing:
    .17em;
}


.site-footer > p {

  margin:
    0;

  color:
    var(--muted);

  font-size:
    10px;
}


.site-footer nav {

  display:
    flex;

  gap:
    18px;
}


.site-footer nav a {

  color:
    rgba(70,78,91,.70);

  text-decoration:
    none;

  font-size:
    10px;
}


/* ============================================================
   ACCESSIBILITY
============================================================ */

:focus-visible {

  outline:
    3px solid
    rgba(173,122,32,.48);

  outline-offset:
    3px;
}


/* ============================================================
   RESPONSIVE
============================================================ */

@media (max-width: 1080px) {

  .site-header {

    flex-wrap:
      wrap;

    padding:
      17px 0;
  }


  .site-navigation {

    width:
      100%;

    margin-left:
      0;

    flex-wrap:
      wrap;
  }


  .community-hero,
  .atlas-public-section {

    grid-template-columns:
      1fr;
  }


  .principle-card,
  .public-preview {

    max-width:
      650px;
  }


  .contribution-grid {

    grid-template-columns:
      repeat(2, minmax(0, 1fr));
  }


  .boundary-model {

    grid-template-columns:
      1fr;
  }


  .boundary-transition {

    min-height:
      220px;
  }


  .governance-grid {

    grid-template-columns:
      repeat(2, minmax(0, 1fr));
  }

}


@media (max-width: 760px) {

  .site-header,
  .community-hero,
  .content-section,
  .identity-section,
  .atlas-public-section,
  .closing-section,
  .site-footer {

    width:
      calc(100% - 30px);
  }


  .site-navigation {

    gap:
      14px;
  }


  .site-navigation > a {

    font-size:
      11px;
  }


  .community-hero {

    padding:
      70px 0 80px;
  }


  .content-section {

    grid-template-columns:
      1fr;

    gap:
      25px;

    padding:
      75px 0;
  }


  .section-marker {

    display:
      flex;

    align-items:
      center;

    gap:
      12px;
  }


  .section-marker > span {

    font-size:
      25px;
  }


  .section-marker > small {

    max-width:
      none;

    margin:
      0;
  }


  .prose-grid,
  .contribution-grid,
  .rights-grid,
  .governance-grid,
  .content-types {

    grid-template-columns:
      1fr;
  }


  .model-section,
  .governance-section {

    padding:
      75px 20px;
  }


  .identity-section {

    grid-template-columns:
      1fr;

    padding:
      39px 27px;
  }


  .atlas-public-section {

    gap:
      40px;
  }


  .closing-section {

    padding:
      50px 27px;
  }


  .site-footer {

    grid-template-columns:
      1fr;

    gap:
      15px;

    padding:
      30px 0;
  }


  .site-footer nav {

    flex-wrap:
      wrap;
  }

}


@media (max-width: 480px) {

  .brand-seal {

    width:
      36px;

    height:
      36px;
  }


  .hero-copy h1 {

    font-size:
      clamp(
        3rem,
        16vw,
        4.4rem
      );
  }


  .principle-card {

    padding:
      29px 24px;
  }


  .boundary-space {

    padding:
      27px 23px;
  }


  .public-preview {

    padding:
      26px 22px;
  }


  .preview-meta > div {

    grid-template-columns:
      1fr;
  }

}


@media (prefers-reduced-motion: reduce) {

  *,
  *::before,
  *::after {

    scroll-behavior:
      auto !important;

    transition-duration:
      .001ms !important;

    animation-duration:
      .001ms !important;

    animation-iteration-count:
      1 !important;
  }

}
