@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;500;600&family=Inter:wght@300;400&display=swap');

:root {
  --black: #050607;
  --gold: #d8c49a;
  --gold-muted: #a9956f;
  --text: #eee7da;
  --line: rgba(216,196,154,.38);
  --max: 1200px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--black);
  color: var(--text);
  font-family: Inter, system-ui, sans-serif;
  line-height: 1.65;
}
a { color: inherit; text-decoration: none; }

.site-header {
  position: sticky;
  top: 0;
  z-index: 20;
  min-height: 74px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
  padding: 0 4vw;
  background: rgba(7,9,13,.96);
  border-bottom: 1px solid rgba(216,196,154,.12);
  backdrop-filter: blur(12px);
}

.brand, .site-nav a, .eyebrow, h1, h2, .button, .text-link, .menu-toggle {
  font-family: Cinzel, Georgia, serif;
  letter-spacing: .08em;
}

.brand {
  color: var(--gold);
  font-size: clamp(.9rem, 1.5vw, 1.2rem);
  white-space: nowrap;
}

.site-nav {
  display: flex;
  gap: clamp(18px, 2.5vw, 38px);
  align-items: center;
}

.site-nav a {
  color: #b9b4aa;
  font-size: .88rem;
  transition: color .2s ease;
}

.site-nav a:hover, .site-nav a:focus-visible { color: var(--gold); }

.menu-toggle {
  display: none;
  color: var(--gold);
  background: transparent;
  border: 1px solid var(--line);
  padding: 9px 12px;
}

.hero {
  position: relative;
  min-height: min(82vh, 900px);
  display: grid;
  place-items: center;
  text-align: center;
  isolation: isolate;
  background:
    radial-gradient(circle at 72% 24%, rgba(255,235,180,.30), transparent 22%),
    linear-gradient(to bottom, rgba(6,8,12,.18), rgba(3,4,6,.88)),
    url("../images/home-hero.jpg") center/cover no-repeat,
    linear-gradient(135deg, #1d2b39, #0b1119 48%, #332917);
}

.hero-overlay {
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(90deg, rgba(0,0,0,.45), transparent 45%, rgba(0,0,0,.18));
}

.hero-content {
  width: min(920px, 88vw);
  padding: 80px 20px;
  transform:translateY(-24px);
}

.eyebrow {
  margin: 0 0 16px;
  color: var(--gold-muted);
  font-size: .88rem;
}

h1, h2 {
  color: var(--gold);
  font-weight: 400;
  line-height: 1.12;
}

h1 {
  margin: 0;
  font-size: clamp(2.5rem, 7vw, 6.8rem);
  text-shadow: 0 4px 18px rgba(0,0,0,.72);
}

h2 {
  margin: 0 0 24px;
  font-size: clamp(2rem, 4.5vw, 4rem);
}

.hero-copy {
  margin: 28px auto 36px;
  color: #e8dfcf;
  font-family: Cinzel, Georgia, serif;
  font-size: clamp(1rem, 1.8vw, 1.35rem);
}

.button {
  display: inline-block;
  padding: 16px 34px;
  border: 1px solid var(--gold-muted);
  background: rgba(5,8,14,.88);
  color: var(--gold);
  font-size: .9rem;
  transition: transform .2s ease, background .2s ease;
}

.button:hover, .button:focus-visible {
  transform: translateY(-2px);
  background: #111722;
}

.secondary { background: transparent; }

.section {
  width: min(var(--max), 100%);
  margin: 0 auto;
  padding: clamp(80px, 11vw, 150px) 6vw;
  text-align: center;
}

.intro { border-bottom: 1px solid var(--line); }

.section p {
  max-width: 780px;
  margin: 0 auto 20px;
  color: #cfc8bb;
  font-size: 1.05rem;
}

.ornament {
  margin: 12px 0 30px;
  color: var(--gold-muted);
  letter-spacing: .45em;
}

.text-link {
  display: inline-block;
  margin-top: 26px;
  color: var(--gold);
}

.world {
  min-height: 560px;
  display: grid;
  place-content: center;
  background:
    linear-gradient(rgba(5,6,7,.68), rgba(5,6,7,.88)),
    url("../images/world-preview.jpg") center/cover no-repeat;
}

.site-footer {
  padding: 32px 6vw;
  text-align: center;
  border-top: 1px solid rgba(216,196,154,.18);
  color: #8f897f;
  font-size: .82rem;
}

@media (max-width: 820px) {
  .site-header {
    min-height: 66px;
    flex-wrap: wrap;
    padding: 14px 20px;
  }
  .menu-toggle { display: block; }
  .site-nav {
    display: none;
    width: 100%;
    flex-direction: column;
    align-items: flex-start;
    gap: 0;
    padding: 12px 0 4px;
  }
  .site-nav.open { display: flex; }
  .site-nav a {
    width: 100%;
    padding: 12px 0;
    border-top: 1px solid rgba(216,196,154,.12);
  }
  .hero { min-height: 78vh; }
  .hero-content { padding: 72px 10px; }
  .section { text-align: left; }
  .section p { margin-left: 0; }
  .world { text-align: center; }
}
/* ======================================================
   HOME HERO
====================================================== */
.home-hero{

    position:relative;

    min-height:100vh;

    overflow:hidden;

    display:flex;
    align-items:center;
    justify-content:center;

    background-image:url("../images/hero-home.png");
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;

}
.home-hero-overlay{
    position:absolute;
    inset:0;

    background:
        radial-gradient(
            circle at 50% 20%,
            rgba(214,177,101,.12),
            transparent 34%
        ),
        linear-gradient(
            to bottom,
            rgba(3,4,6,.10) 0%,
            rgba(3,4,6,.30) 52%,
            rgba(3,4,6,.72) 100%
        );

    z-index:1;
}
.home-hero-content{
    position:relative;
    z-index:2;

    width:min(980px, calc(100% - 48px));
    padding:120px 24px 100px;

    text-align:center;
}
.home-hero-eyebrow{
    margin:0 0 24px;

    font-family:"Cinzel", serif;
    font-size:14px;
    letter-spacing:.34em;

    color:rgba(203,170,105,.78);
}
.home-hero-title{
    margin:0;

    font-family:"Cinzel", serif;
    font-size:clamp(54px, 6vw, 98px);
    font-weight:400;
    line-height:.98;
    letter-spacing:.035em;

    color:#ead6a3;

    text-shadow:
        0 8px 28px rgba(0,0,0,.45);
        animation:heroTitleGlow 8s ease-in-out infinite;
        will-change:opacity, transform;
}
@keyframes heroTitleGlow{

    0%,100%{
        opacity:.96;
        transform:translateY(0);
    }

    50%{
        opacity:1;
        transform:translateY(-2px);
    }

}
.home-hero-actions{
    margin-top:48px;

    display:flex;
    align-items:center;
    justify-content:center;
    gap:34px;

    flex-wrap:wrap;
}
.home-primary-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;

    min-width:250px;
    padding:20px 34px;

    border:1px solid rgba(224,196,137,.72);
    border-radius:4px;

    background:rgba(8,10,13,.58);

    font-family:"Cinzel", serif;
    font-size:14px;
    letter-spacing:.22em;

    color:#ead6a3;
    text-decoration:none;

    box-shadow:
        0 12px 34px rgba(0,0,0,.28),
        inset 0 1px 0 rgba(255,255,255,.025);

    transition:
        transform .3s ease,
        border-color .3s ease,
        background .3s ease;
}

.home-primary-button:hover{
    transform:translateY(-2px);

    border-color:rgba(235,210,157,.95);

    background:rgba(16,16,16,.72);
}
.home-secondary-link{
    display:inline-flex;
    align-items:center;
    justify-content:center;

    min-width:250px;
    padding:20px 34px;

    border:1px solid rgba(224,196,137,.30);
    border-radius:4px;

    background:rgba(8,10,13,.34);

    font-family:"Cinzel", serif;
    font-size:14px;
    letter-spacing:.20em;

    color:rgba(234,214,163,.82);
    text-decoration:none;

    transition:
        transform .3s ease,
        border-color .3s ease,
        background .3s ease,
        color .3s ease;
}

.home-secondary-link:hover{
    transform:translateY(-2px);

    border-color:rgba(224,196,137,.60);

    background:rgba(8,10,13,.52);

    color:#ead6a3;
}

.home-hero-text{
    margin:52px auto 0;

    font-size:22px;
    line-height:1.55;

    color:rgba(245,239,226,.84);
}
/* ======================================================
   HOME GATEWAYS
====================================================== */
.home-gateways{
    padding:140px 32px 160px;

    background:
        radial-gradient(
            circle at 50% 0%,
            rgba(180,145,78,.055),
            transparent 34%
        ),
        #050606;
}

.home-gateways-inner{
    width:min(1220px, 100%);
    margin:0 auto;
}

.home-gateways-eyebrow{
    margin:0 0 18px;

    text-align:center;

    font-family:"Cinzel", serif;
    font-size:14px;
    letter-spacing:.32em;

    color:rgba(190,155,91,.74);
}

.home-gateways-title{
    margin:0 auto 76px;

    max-width:820px;

    text-align:center;

    font-family:"Cormorant Garamond", serif;
    font-size:clamp(38px, 4.8vw, 62px);
    font-weight:400;
    line-height:1.15;

    color:#e3cf9e;
}
.home-gateways-grid{
    display:grid;
    grid-template-columns:repeat(2, minmax(0,1fr));
    gap:28px;
}
.home-gateway-card{
    position:relative;
    overflow:hidden;

    min-height:360px;
    padding:48px;

    display:flex;
    align-items:flex-end;

    border:1px solid rgba(216,196,154,.16);
    border-radius:16px;

    background:
        linear-gradient(
            145deg,
            rgba(18,20,23,.96),
            rgba(7,9,12,.98)
        );

    text-decoration:none;

    box-shadow:
        0 22px 56px rgba(0,0,0,.32);

    transition:
        transform .35s ease,
        border-color .35s ease,
        box-shadow .35s ease;
}
.home-gateway-content{
    position:relative;
    z-index:2;

    width:100%;
}

.home-gateway-content h3{

    margin:0 0 18px;

    font-family:"Cinzel", serif;
    font-size:34px;
    font-weight:400;
    letter-spacing:.08em;

    color:#ead6a3;
}

.home-gateway-content p{

    max-width:420px;

    margin:0;

    font-size:18px;
    line-height:1.7;

    color:rgba(236,229,214,.78);
}

.home-gateway-content span{

    display:inline-block;

    margin-top:34px;

    font-family:"Cinzel", serif;
    font-size:13px;
    letter-spacing:.18em;

    color:#e0c98f;

    transition:
        color .3s ease,
        transform .3s ease;
}
.home-gateway-card:hover{

    transform:translateY(-4px);

    border-color:rgba(224,196,137,.42);

    box-shadow:
        0 28px 70px rgba(0,0,0,.42);
}

.home-gateway-card:hover span{

    transform:translateX(6px);

    color:#f0d89f;
}
.gateway-read{

    background:
        linear-gradient(
            140deg,
            #22180d,
            #090909
        );
}

.gateway-world{

    background:
        linear-gradient(
            140deg,
            #12201b,
            #090909
        );
}

.gateway-lore{

    background:
        linear-gradient(
            140deg,
            #1a1728,
            #090909
        );
}

.gateway-join{

    background:
        linear-gradient(
            140deg,
            #1d1b15,
            #090909
        );
}
.gateway-read::before,
.gateway-world::before,
.gateway-lore::before,
.gateway-join::before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;

    opacity:.68;

    transition:
        opacity .35s ease,
        transform .6s ease;
}

.gateway-read::before{
    background:
        radial-gradient(
            circle at 78% 20%,
            rgba(212,159,83,.18),
            transparent 40%
        );
}

.gateway-world::before{
    background:
        radial-gradient(
            circle at 78% 20%,
            rgba(92,135,111,.16),
            transparent 42%
        );
}

.gateway-lore::before{
    background:
        radial-gradient(
            circle at 78% 20%,
            rgba(125,102,161,.17),
            transparent 42%
        );
}

.gateway-join::before{
    background:
        radial-gradient(
            circle at 78% 20%,
            rgba(178,151,92,.14),
            transparent 42%
        );
}

.home-gateway-card:hover::before{
    opacity:.95;
    transform:scale(1.025);
}
@media (max-width:800px){

    .home-gateways{
        padding:100px 20px 110px;
    }

    .home-gateways-title{
        margin-bottom:56px;
        font-size:42px;
    }

    .home-gateways-grid{
        grid-template-columns:1fr;
        gap:20px;
    }

    .home-gateway-card{
        min-height:300px;
        padding:36px 30px;
        border-radius:12px;
    }

    .home-gateway-content h3{
        font-size:32px;
    }

    .home-gateway-content p{
        font-size:17px;
        line-height:1.65;
    }

    .home-gateway-content span{
        margin-top:28px;
    }
}
/* ======================================================
   HOME READING
====================================================== */
.home-reading{
    padding:150px 32px 170px;

    background:
        radial-gradient(
            circle at 78% 30%,
            rgba(183,145,75,.08),
            transparent 34%
        ),
        linear-gradient(
            to bottom,
            #050606,
            #080807 54%,
            #050606
        );
}

.home-reading-inner{
    width:min(1220px, 100%);
    margin:0 auto;

    display:grid;
    grid-template-columns:1.05fr .95fr;
    gap:90px;

    align-items:center;
}

.home-reading-eyebrow{
    margin:0 0 20px;

    font-family:"Cinzel", serif;
    font-size:14px;
    letter-spacing:.32em;

    color:rgba(190,155,91,.76);
}

.home-reading-title{
    margin:0;

    font-family:"Cinzel", serif;
    font-size:clamp(48px, 6vw, 82px);
    font-weight:400;
    line-height:1.03;
    letter-spacing:.025em;

    color:#ead6a3;
}

.home-reading-text{
    max-width:600px;
    margin:40px 0 0;

    font-family:"Cormorant Garamond", serif;
    font-size:clamp(22px, 2.2vw, 29px);
    line-height:1.7;

    color:rgba(238,226,202,.78);
}

.home-reading-actions{
    margin-top:46px;

    display:flex;
    align-items:center;
    gap:26px;
    flex-wrap:wrap;
}

.home-reading-primary{
    display:inline-flex;
    align-items:center;
    justify-content:center;

    min-width:220px;
    padding:18px 30px;

    border:1px solid rgba(224,196,137,.68);
    border-radius:4px;

    background:rgba(8,10,13,.46);

    font-family:"Cinzel", serif;
    font-size:13px;
    letter-spacing:.20em;

    color:#ead6a3;
    text-decoration:none;

    transition:
        transform .3s ease,
        border-color .3s ease,
        background .3s ease;
}

.home-reading-primary:hover{
    transform:translateY(-2px);

    border-color:rgba(235,210,157,.92);

    background:rgba(14,14,14,.68);
}

.home-reading-secondary{
    font-family:"Cinzel", serif;
    font-size:13px;
    letter-spacing:.18em;

    color:rgba(226,205,163,.76);
    text-decoration:none;

    transition:
        color .3s ease,
        transform .3s ease;
}

.home-reading-secondary:hover{
    color:#ead6a3;
    transform:translateX(4px);
}
.home-reading-visual{
    display:flex;
    justify-content:center;
}

.home-reading-book{
    position:relative;

    width:min(430px, 100%);
    min-height:560px;

    padding:64px 48px;

    display:flex;
    flex-direction:column;
    justify-content:flex-end;

    border:1px solid rgba(214,188,132,.22);
    border-radius:10px;

    background:
        radial-gradient(
            circle at 50% 18%,
            rgba(198,157,82,.12),
            transparent 34%
        ),
        linear-gradient(
            155deg,
            #1c1710,
            #090909 72%
        );

    box-shadow:
        -22px 28px 60px rgba(0,0,0,.42),
        inset 1px 0 0 rgba(255,255,255,.025);

    transform:rotate(2deg);

    transition:
        transform .5s ease,
        border-color .5s ease;
}

.home-reading-book::before{
    content:"";

    position:absolute;
    top:0;
    bottom:0;
    left:22px;

    width:1px;

    background:
        linear-gradient(
            to bottom,
            transparent,
            rgba(210,176,109,.26),
            transparent
        );
}

.home-reading-book:hover{
    transform:rotate(0deg) translateY(-4px);
    border-color:rgba(224,196,137,.38);
}

.home-reading-book-label{
    margin:0 0 20px;

    font-family:"Cinzel", serif;
    font-size:12px;
    letter-spacing:.26em;

    color:rgba(190,155,91,.72);
}

.home-reading-book h3{
    margin:0 0 26px;

    font-family:"Cinzel", serif;
    font-size:46px;
    font-weight:400;

    color:#ead6a3;
}

.home-reading-book p:not(.home-reading-book-label){
    margin:0;

    font-family:"Cormorant Garamond", serif;
    font-size:21px;
    line-height:1.65;

    color:rgba(238,226,202,.72);
}
@media (max-width:900px){

    .home-reading{
        padding:110px 20px 125px;
    }

    .home-reading-inner{
        grid-template-columns:1fr;
        gap:70px;
    }

    .home-reading-copy{
        text-align:center;
    }

    .home-reading-text{
        margin-left:auto;
        margin-right:auto;
    }

    .home-reading-actions{
        justify-content:center;
    }

    .home-reading-book{
        min-height:470px;
        transform:none;
    }
}
/* ======================================================
   HOME EXPLORE
====================================================== */
.home-explore{
    padding:150px 32px 170px;

    background:
        radial-gradient(
            circle at 50% 0%,
            rgba(181,143,75,.06),
            transparent 34%
        ),
        #050606;
}

.home-explore-inner{
    width:min(1220px, 100%);
    margin:0 auto;
}

.home-explore-heading{
    width:min(900px, 100%);
    margin:0 auto 90px;

    text-align:center;
}

.home-explore-eyebrow{
    margin:0 0 20px;

    font-family:"Cinzel", serif;
    font-size:14px;
    letter-spacing:.32em;

    color:rgba(190,155,91,.75);
}

.home-explore-title{
    margin:0;

    font-family:"Cinzel", serif;
    font-size:clamp(44px, 5.6vw, 76px);
    font-weight:400;
    line-height:1.08;
    letter-spacing:.025em;

    color:#ead6a3;
}

.home-explore-text{
    max-width:760px;
    margin:38px auto 0;

    font-family:"Cormorant Garamond", serif;
    font-size:clamp(22px, 2.2vw, 29px);
    line-height:1.7;

    color:rgba(238,226,202,.76);
}
.home-explore-grid{
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:28px;
}

.home-explore-card{
    position:relative;
    overflow:hidden;

    min-height:430px;
    padding:48px;

    display:flex;
    align-items:flex-end;

    border:1px solid rgba(216,196,154,.16);
    border-radius:16px;

    background:#090a0b;

    text-decoration:none;

    box-shadow:
        0 24px 60px rgba(0,0,0,.34);

    transition:
        transform .35s ease,
        border-color .35s ease,
        box-shadow .35s ease;
}

.home-explore-card::before{
    content:"";
    position:absolute;
    inset:0;

    pointer-events:none;

    background:
        linear-gradient(
            to bottom,
            transparent 0%,
            rgba(5,6,7,.18) 40%,
            rgba(5,6,7,.82) 78%,
            #070809 100%
        );

    z-index:1;
}

.home-explore-content{
    position:relative;
    z-index:2;

    width:100%;
}

.home-explore-label{
    margin:0 0 16px;

    font-family:"Cinzel", serif;
    font-size:12px;
    letter-spacing:.26em;

    color:rgba(190,155,91,.72);
}

.home-explore-content h3{
    margin:0 0 24px;

    font-family:"Cinzel", serif;
    font-size:clamp(34px, 4vw, 52px);
    font-weight:400;
    line-height:1.08;

    color:#ead6a3;
}

.home-explore-content p:not(.home-explore-label){
    max-width:440px;
    margin:0;

    font-family:"Cormorant Garamond", serif;
    font-size:21px;
    line-height:1.65;

    color:rgba(238,226,202,.74);
}

.home-explore-content span{
    display:inline-block;
    margin-top:30px;

    font-family:"Cinzel", serif;
    font-size:13px;
    letter-spacing:.18em;

    color:#d8c08a;

    transition:
        color .3s ease,
        transform .3s ease;
}
.explore-world{
    background:
        radial-gradient(
            circle at 76% 20%,
            rgba(87,128,104,.18),
            transparent 42%
        ),
        #090a0b;
}

.explore-history{
    background:
        radial-gradient(
            circle at 76% 20%,
            rgba(157,111,65,.18),
            transparent 42%
        ),
        #090a0b;
}

.explore-civilizations{
    background:
        radial-gradient(
            circle at 76% 20%,
            rgba(106,123,154,.17),
            transparent 42%
        ),
        #090a0b;
}

.explore-echo{
    background:
        radial-gradient(
            circle at 76% 20%,
            rgba(126,97,157,.18),
            transparent 42%
        ),
        #090a0b;
}
.home-explore-card:hover{
    transform:translateY(-3px);

    border-color:rgba(224,196,137,.36);

    box-shadow:
        0 30px 72px rgba(0,0,0,.44);
}

.home-explore-card:hover span{
    transform:translateX(5px);
    color:#ead6a3;
}
@media (max-width:800px){

    .home-explore{
        padding:110px 20px 125px;
    }

    .home-explore-heading{
        margin-bottom:64px;
    }

    .home-explore-title{
        font-size:42px;
    }

    .home-explore-grid{
        grid-template-columns:1fr;
        gap:20px;
    }

    .home-explore-card{
        min-height:330px;
        padding:36px 30px;
        border-radius:12px;
    }

    .home-explore-content h3{
        font-size:38px;
    }

    .home-explore-content p:not(.home-explore-label){
        font-size:20px;
    }
}
/* ======================================================
   HOME JOIN
====================================================== */
.home-join{
    padding:160px 32px 220px;

    background:
        radial-gradient(
            circle at 50% 18%,
            rgba(181,143,75,.07),
            transparent 36%
        ),
        linear-gradient(
            to bottom,
            #050606,
            #070706 56%,
            #030404
        );
}

.home-join-inner{
    width:min(900px, 100%);
    margin:0 auto;

    text-align:center;
}

.home-join-eyebrow{
    margin:0 0 22px;

    font-family:"Cinzel", serif;
    font-size:14px;
    letter-spacing:.32em;

    color:rgba(190,155,91,.74);
}

.home-join-title{
    margin:0;

    font-family:"Cinzel", serif;
    font-size:clamp(48px, 6vw, 82px);
    font-weight:400;
    line-height:1.05;
    letter-spacing:.025em;

    color:#ead6a3;
}

.home-join-text{
    max-width:720px;
    margin:42px auto 0;

    font-family:"Cormorant Garamond", serif;
    font-size:clamp(22px, 2.2vw, 29px);
    line-height:1.72;

    color:rgba(238,226,202,.76);
}

.home-join-emphasis{
    margin:36px auto 0;

    font-family:"Cormorant Garamond", serif;
    font-size:clamp(26px, 2.7vw, 36px);
    font-style:italic;

    color:#dfc88f;
}

.home-join-actions{
    margin-top:70px;

    display:flex;
    align-items:center;
    justify-content:center;
    gap:34px;
    flex-wrap:wrap;
}
.home-join-primary{
    display:inline-flex;
    align-items:center;
    justify-content:center;

    min-width:260px;
    padding:20px 34px;

    border:1px solid rgba(224,196,137,.68);
    border-radius:4px;

    background:rgba(8,10,13,.48);

    font-family:"Cinzel", serif;
    font-size:13px;
    letter-spacing:.20em;

    color:#ead6a3;
    text-decoration:none;

    transition:
        transform .3s ease,
        border-color .3s ease,
        background .3s ease;
}

.home-join-primary:hover{
    transform:translateY(-2px);

    border-color:rgba(235,210,157,.92);

    background:rgba(14,14,14,.68);
}
.home-join-secondary{
    display:inline-block;

    font-family:"Cinzel", serif;
    font-size:12px;
    letter-spacing:.18em;

    color:rgba(213,196,161,.52);
    text-decoration:none;

    transition:
        color .3s ease,
        transform .3s ease;
}

.home-join-secondary:hover{
    color:rgba(234,214,163,.88);
    transform:translateX(4px);
}
.home-join-ornament{
    width:min(280px, 60%);
    margin:105px auto 82px;

    display:flex;
    align-items:center;
}

.home-join-ornament span{
    height:1px;
    flex:1;

    background:
        linear-gradient(
            to right,
            transparent,
            rgba(201,167,101,.38)
        );
}

.home-join-ornament span:last-child{
    background:
        linear-gradient(
            to left,
            transparent,
            rgba(201,167,101,.38)
        );
}

.home-join-ornament i{
    width:10px;
    height:10px;
    margin:0 16px;

    border:1px solid rgba(215,183,119,.65);
    transform:rotate(45deg);
}

.home-join-closing{
    margin:0;

    font-family:"Cormorant Garamond", serif;
    font-size:22px;
    line-height:1.65;

    color:rgba(221,208,181,.56);
}
@media (max-width:700px){

    .home-join{
        padding:115px 22px 135px;
    }

    .home-join-title{
        font-size:44px;
    }

    .home-join-text{
        font-size:21px;
    }

    .home-join-emphasis{
        font-size:28px;
    }

    .home-join-actions{
        gap:18px;
    }

    .home-join-primary{
        width:100%;
        max-width:320px;
    }

    .home-join-ornament{
        margin:82px auto 68px;
    }
}
/* ===========================
   Cornerstone Footer
=========================== */

.site-footer{
    margin-top:120px;
    padding:72px 24px 58px;
    border-top:1px solid rgba(212,176,106,0.22);
    text-align:center;
}

.footer-brand{

    font-family:"Cinzel", serif;

    font-size:44px;

    font-weight:500;

    letter-spacing:.14em;

    color:#D4B06A;

    margin-bottom:10px;

}

.footer-tagline{
    font-family:"Cormorant Garamond", serif;
    font-style:italic;
    font-size:18px;
    color:#D8C8A8;
    margin-bottom:32px;
}

.footer-studio{
    font-family:Inter,sans-serif;
    font-size:12px;
    letter-spacing:.18em;
    text-transform:uppercase;
    color:rgba(245,239,226,.55);
    margin-bottom:12px;
}

.footer-copyright{
    font-family:Inter,sans-serif;
    font-size:12px;
    color:rgba(245,239,226,.35);
}
/* ======================================================
   ABOUT HERO
====================================================== */
.about-hero{

    position:relative;

    min-height:100vh;

    overflow:hidden;

    display:flex;
    align-items:center;
    justify-content:center;

    background-image:url("../images/about-hero.png");
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
}
.about-hero-overlay{

    position:absolute;
    inset:0;

    background:

        radial-gradient(
            circle at 50% 22%,
            rgba(220,188,120,.10),
            transparent 40%
        ),

        linear-gradient(
            to bottom,
            rgba(0,0,0,.34),
            rgba(0,0,0,.56),
            rgba(0,0,0,.82)
        );
}
.about-hero-content{

    position:relative;
    z-index:2;

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

    text-align:center;
    padding-top:100px;
}
.about-hero-eyebrow{
    margin:0 0 28px;

    font-family:"Cinzel", serif;
    font-size:14px;
    letter-spacing:.28em;
    text-transform:uppercase;

    color:rgba(190,155,91,.82);
}

.about-hero-title{
    margin:0;

    font-family:"Cormorant Garamond", serif;
    font-size:clamp(82px,8vw,170px);
    line-height:.92;
    font-weight:400;
    letter-spacing:.02em;

    color:#ead6a3;

    text-shadow:
        0 8px 30px rgba(0,0,0,.45);
}

.about-hero-copy{
    width:min(820px,100%);
    margin:56px auto 0;

    font-family:"Cormorant Garamond", serif;
    font-size:clamp(26px,2vw,34px);
    line-height:1.7;
    font-weight:400;

    color:rgba(233,223,198,.82);
}
/* ======================================================
   ABOUT MANIFESTO
====================================================== */
.about-manifesto{
    padding:150px 32px 170px;

    background:
        radial-gradient(
            circle at 24% 18%,
            rgba(181,143,75,.055),
            transparent 32%
        ),
        #050606;
}

.about-manifesto-inner{
    width:min(1180px, 100%);
    margin:0 auto;

    display:grid;
    grid-template-columns:.9fr 1.1fr;
    gap:90px;

    align-items:start;
}
.about-manifesto-eyebrow{
    margin:0 0 28px;

    font-family:"Cinzel", serif;
    font-size:13px;
    letter-spacing:.30em;

    color:rgba(190,155,91,.72);
}

.about-manifesto-quote blockquote{
    margin:0;

    font-family:"Cormorant Garamond", serif;
    font-size:clamp(42px, 5vw, 68px);
    font-weight:400;
    font-style:italic;
    line-height:1.12;

    color:#e2ca92;
}
.about-manifesto-copy{
    padding-top:44px;
}

.about-manifesto-copy p{
    margin:0 0 30px;

    font-family:"Cormorant Garamond", serif;
    font-size:clamp(22px, 2.15vw, 28px);
    line-height:1.72;

    color:rgba(238,226,202,.76);
}

.about-manifesto-copy p:last-child{
    margin-bottom:0;
}

.about-manifesto-emphasis{
    margin-top:46px !important;

    font-style:italic;

    color:#dfc88f !important;
}
@media (max-width:850px){

    .about-manifesto{
        padding:110px 22px 125px;
    }

    .about-manifesto-inner{
        grid-template-columns:1fr;
        gap:58px;
    }

    .about-manifesto-copy{
        padding-top:0;
    }

    .about-manifesto-quote{
        text-align:center;
    }

    .about-manifesto-copy{
        text-align:center;
    }
}
* ======================================================
   ABOUT THEMES
====================================================== */
.about-themes{
    padding:150px 32px 170px;

    background:
        radial-gradient(
            circle at 50% 0%,
            rgba(180,145,78,.05),
            transparent 34%
        ),
        #060606;
}

.about-themes-inner{
    width:min(1180px, 100%);
    margin:0 auto;
}

.about-themes-heading{
    width:min(820px, 100%);
    margin:0 auto 90px;

    text-align:center;
}

.about-themes-eyebrow{
    margin:0 0 20px;

    font-family:"Cinzel", serif;
    font-size:13px;
    letter-spacing:.30em;

    color:rgba(190,155,91,.72);
}

.about-themes-title{
    margin:0;

    font-family:"Cinzel", serif;
    font-size:clamp(44px, 5.5vw, 74px);
    font-weight:400;
    line-height:1.08;
    letter-spacing:.025em;

    color:#ead6a3;
}

.about-themes-text{
    max-width:700px;
    margin:36px auto 0;

    font-family:"Cormorant Garamond", serif;
    font-size:clamp(21px, 2.1vw, 27px);
    line-height:1.7;

    color:rgba(238,226,202,.72);
}
.about-themes-grid{
    display:grid;
    grid-template-columns:repeat(2, minmax(0,1fr));

    border-top:1px solid rgba(216,196,154,.14);
    border-left:1px solid rgba(216,196,154,.14);
}

.about-theme-card{
    min-height:280px;
    padding:54px 48px;

    border-right:1px solid rgba(216,196,154,.14);
    border-bottom:1px solid rgba(216,196,154,.14);

    background:
        linear-gradient(
            145deg,
            rgba(18,19,20,.48),
            rgba(7,8,9,.22)
        );

    transition:
        background .35s ease,
        border-color .35s ease;
}

.about-theme-card h3{
    margin:0 0 26px;

    font-family:"Cinzel", serif;
    font-size:30px;
    font-weight:400;
    letter-spacing:.10em;

    color:#e4cd97;
}

.about-theme-card p{
    margin:0;

    font-family:"Cormorant Garamond", serif;
    font-size:22px;
    line-height:1.7;

    color:rgba(238,226,202,.70);
}

.about-theme-card:hover{
    background:
        radial-gradient(
            circle at 80% 18%,
            rgba(183,145,75,.07),
            transparent 42%
        ),
        rgba(12,13,14,.62);

    border-color:rgba(216,196,154,.24);
}
@media (max-width:800px){

    .about-themes{
        padding:110px 20px 125px;
    }

    .about-themes-heading{
        margin-bottom:64px;
    }

    .about-themes-title{
        font-size:42px;
    }

    .about-themes-grid{
        grid-template-columns:1fr;
    }

    .about-theme-card{
        min-height:auto;
        padding:42px 30px;
    }

    .about-theme-card h3{
        font-size:27px;
    }

    .about-theme-card p{
        font-size:20px;
    }
}
/* ======================================================
   ABOUT STUDIO
====================================================== */
.about-studio{
    padding:150px 32px 170px;

    background:
        radial-gradient(
            circle at 22% 18%,
            rgba(181,143,75,.055),
            transparent 34%
        ),
        linear-gradient(
            to bottom,
            #050606,
            #070706 58%,
            #050606
        );
}

.about-studio-inner{
    width:min(1180px, 100%);
    margin:0 auto;

    display:grid;
    grid-template-columns:1fr 1fr;
    gap:90px;

    align-items:start;
}

.about-studio-eyebrow{
    margin:0 0 22px;

    font-family:"Cinzel", serif;
    font-size:13px;
    letter-spacing:.30em;

    color:rgba(190,155,91,.72);
}

.about-studio-title{
    margin:0;

    font-family:"Cinzel", serif;
    font-size:clamp(46px, 5.6vw, 76px);
    font-weight:400;
    line-height:1.06;
    letter-spacing:.025em;

    color:#ead6a3;
}

.about-studio-text{
    max-width:560px;
    margin:40px 0 0;

    font-family:"Cormorant Garamond", serif;
    font-size:clamp(22px, 2.1vw, 28px);
    line-height:1.72;

    color:rgba(238,226,202,.76);
}

.about-studio-emphasis{
    max-width:560px;
    margin:38px 0 0;

    font-family:"Cormorant Garamond", serif;
    font-size:clamp(25px, 2.5vw, 34px);
    font-style:italic;
    line-height:1.5;

    color:#dfc88f;
}
.about-studio-principles{
    border-top:1px solid rgba(216,196,154,.14);
}

.about-studio-principle{
    display:grid;
    grid-template-columns:64px 1fr;
    gap:24px;

    padding:38px 0;

    border-bottom:1px solid rgba(216,196,154,.14);
}

.about-studio-principle > span{
    padding-top:4px;

    font-family:"Cinzel", serif;
    font-size:13px;
    letter-spacing:.18em;

    color:rgba(190,155,91,.58);
}

.about-studio-principle h3{
    margin:0 0 14px;

    font-family:"Cinzel", serif;
    font-size:24px;
    font-weight:400;
    letter-spacing:.08em;

    color:#e4cd97;
}

.about-studio-principle p{
    margin:0;

    font-family:"Cormorant Garamond", serif;
    font-size:21px;
    line-height:1.65;

    color:rgba(238,226,202,.68);
}

.about-studio-principle{
    transition:
        padding-left .35s ease,
        border-color .35s ease;
}

.about-studio-principle:hover{
    padding-left:8px;
    border-color:rgba(216,196,154,.28);
}
@media (max-width:850px){

    .about-studio{
        padding:110px 22px 125px;
    }

    .about-studio-inner{
        grid-template-columns:1fr;
        gap:70px;
    }

    .about-studio-copy{
        text-align:center;
    }

    .about-studio-text,
    .about-studio-emphasis{
        margin-left:auto;
        margin-right:auto;
    }

    .about-studio-title{
        font-size:44px;
    }

    .about-studio-principle{
        grid-template-columns:48px 1fr;
        gap:18px;
    }
}
/* ======================================================
   ABOUT CREATOR
====================================================== */

.about-creator{
    padding:150px 32px 170px;

    background:
        radial-gradient(
            circle at 76% 18%,
            rgba(181,143,75,.055),
            transparent 34%
        ),
        #050606;
}

.about-creator-inner{
    width:min(1180px, 100%);
    margin:0 auto;

    display:grid;
    grid-template-columns:1.05fr .95fr;
    gap:90px;

    align-items:start;
}

.about-creator-eyebrow{
    margin:0 0 22px;

    font-family:"Cinzel", serif;
    font-size:13px;
    letter-spacing:.30em;

    color:rgba(190,155,91,.72);
}

.about-creator-title{
    margin:0;

    font-family:"Cinzel", serif;
    font-size:clamp(46px, 5.6vw, 76px);
    font-weight:400;
    line-height:1.06;
    letter-spacing:.025em;

    color:#ead6a3;
}

.about-creator-text{
    max-width:600px;
    margin:38px 0 0;

    font-family:"Cormorant Garamond", serif;
    font-size:clamp(22px, 2.1vw, 28px);
    line-height:1.72;

    color:rgba(238,226,202,.75);
}

.about-creator-note{
    margin-top:38px;
    padding:46px 44px;

    border-left:1px solid rgba(216,196,154,.28);

    background:
        linear-gradient(
            145deg,
            rgba(20,18,14,.46),
            rgba(8,9,10,.16)
        );
}

.about-creator-note-label{
    margin:0 0 26px;

    font-family:"Cinzel", serif;
    font-size:12px;
    letter-spacing:.28em;

    color:rgba(190,155,91,.66);
}

.about-creator-note blockquote{
    margin:0 0 30px;

    font-family:"Cormorant Garamond", serif;
    font-size:clamp(30px, 3.2vw, 44px);
    font-style:italic;
    line-height:1.35;

    color:#dfc88f;
}

.about-creator-note > p:last-child{
    margin:0;

    font-family:"Cormorant Garamond", serif;
    font-size:21px;
    line-height:1.7;

    color:rgba(238,226,202,.66);
}
/* ======================================================
   ABOUT FINAL
====================================================== */

.about-final{
    min-height:85vh;
    padding:160px 32px 190px;

    display:flex;
    align-items:center;
    justify-content:center;

    background:
        radial-gradient(
            circle at 50% 30%,
            rgba(181,143,75,.07),
            transparent 35%
        ),
        linear-gradient(
            to bottom,
            #050606,
            #030404
        );
}

.about-final-inner{
    width:min(900px, 100%);
    margin:0 auto;

    text-align:center;
}

.about-final-eyebrow{
    margin:0 0 22px;

    font-family:"Cinzel", serif;
    font-size:13px;
    letter-spacing:.32em;

    color:rgba(190,155,91,.72);
}

.about-final-title{
    margin:0;

    font-family:"Cinzel", serif;
    font-size:clamp(48px, 6vw, 82px);
    font-weight:400;
    line-height:1.05;
    letter-spacing:.025em;

    color:#ead6a3;
}

.about-final-text{
    max-width:700px;
    margin:42px auto 0;

    font-family:"Cormorant Garamond", serif;
    font-size:clamp(22px, 2.2vw, 29px);
    line-height:1.7;

    color:rgba(238,226,202,.72);
}

.about-final-actions{
    margin-top:58px;

    display:flex;
    align-items:center;
    justify-content:center;
    gap:30px;

    flex-wrap:wrap;
}

.about-final-primary{
    display:inline-flex;
    align-items:center;
    justify-content:center;

    min-width:240px;
    padding:20px 34px;

    border:1px solid rgba(224,196,137,.68);
    border-radius:4px;

    background:rgba(8,10,13,.48);

    font-family:"Cinzel", serif;
    font-size:13px;
    letter-spacing:.20em;

    color:#ead6a3;
    text-decoration:none;

    transition:
        transform .3s ease,
        border-color .3s ease,
        background .3s ease;
}

.about-final-primary:hover{
    transform:translateY(-2px);
    border-color:rgba(235,210,157,.92);
    background:rgba(14,14,14,.68);
}

.about-final-secondary{
    font-family:"Cinzel", serif;
    font-size:12px;
    letter-spacing:.18em;

    color:rgba(213,196,161,.54);
    text-decoration:none;

    transition:
        color .3s ease,
        transform .3s ease;
}

.about-final-secondary:hover{
    color:rgba(234,214,163,.88);
    transform:translateX(4px);
}
@media (max-width:850px){

    .about-creator{
        padding:110px 22px 125px;
    }

    .about-creator-inner{
        grid-template-columns:1fr;
        gap:64px;
    }

    .about-creator-copy{
        text-align:center;
    }

    .about-creator-title{
        font-size:44px;
    }

    .about-creator-text{
        margin-left:auto;
        margin-right:auto;
    }

    .about-creator-note{
        margin-top:0;
        padding:38px 30px;
    }

    .about-final{
        min-height:auto;
        padding:125px 22px 145px;
    }

    .about-final-title{
        font-size:44px;
    }

    .about-final-text{
        font-size:21px;
    }

    .about-final-actions{
        gap:20px;
    }

    .about-final-primary{
        width:100%;
        max-width:320px;
    }
}

/* ======================================================
   JOIN HERO
====================================================== */
.join-hero{
    position:relative;

    min-height:100vh;

    overflow:hidden;

    display:flex;
    align-items:center;
    justify-content:center;

    background-image:url("../images/join-hero.png");
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
}
.join-hero-overlay{
    position:absolute;
    inset:0;

    background:
        radial-gradient(
            circle at 50% 22%,
            rgba(214,177,101,.10),
            transparent 38%
        ),
        linear-gradient(
            to bottom,
            rgba(4,5,6,.26),
            rgba(4,5,6,.48),
            rgba(3,4,5,.82)
        );

    z-index:1;
}
.join-hero-content{
    position:relative;
    z-index:2;

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

    padding-top:90px;

    text-align:center;
}
.join-hero-eyebrow{
    margin:0 0 24px;

    font-family:"Cinzel", serif;
    font-size:14px;
    letter-spacing:.30em;

    color:rgba(190,155,91,.82);
}

.join-hero-title{
    margin:0;

    font-family:"Cinzel", serif;
    font-size:clamp(58px, 7vw, 108px);
    font-weight:400;
    line-height:.98;
    letter-spacing:.025em;

    color:#ead6a3;

    text-shadow:
        0 8px 30px rgba(0,0,0,.45);
}
.join-hero-copy{
    width:min(760px, 100%);
    margin:52px auto 0;

    font-family:"Cormorant Garamond", serif;
    font-size:clamp(23px, 2.1vw, 30px);
    line-height:1.72;

    color:rgba(233,223,198,.80);
}
.join-hero-actions{
    margin-top:54px;

    display:flex;
    align-items:center;
    justify-content:center;
    gap:30px;

    flex-wrap:wrap;
}
.join-primary-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;

    min-width:260px;
    padding:20px 34px;

    border:1px solid rgba(224,196,137,.68);
    border-radius:4px;

    background:rgba(8,10,13,.48);

    font-family:"Cinzel", serif;
    font-size:13px;
    letter-spacing:.20em;

    color:#ead6a3;
    text-decoration:none;

    transition:
        transform .3s ease,
        border-color .3s ease,
        background .3s ease;
}

.join-primary-button:hover{
    transform:translateY(-2px);

    border-color:rgba(235,210,157,.92);

    background:rgba(14,14,14,.68);
}
.join-secondary-link{
    display:inline-block;

    font-family:"Cinzel", serif;
    font-size:12px;
    letter-spacing:.18em;

    color:rgba(213,196,161,.54);
    text-decoration:none;

    transition:
        color .3s ease,
        transform .3s ease;
}

.join-secondary-link:hover{
    color:rgba(234,214,163,.88);
    transform:translateX(4px);
}
/* ======================================================
   JOIN TOGETHER
====================================================== */
.join-together{
    padding:150px 32px 170px;

    background:
        radial-gradient(
            circle at 22% 18%,
            rgba(181,143,75,.05),
            transparent 32%
        ),
        #050606;
}

.join-together-inner{
    width:min(1160px, 100%);
    margin:0 auto;

    display:grid;
    grid-template-columns:.9fr 1.1fr;
    gap:90px;

    align-items:start;
}
.join-together-eyebrow{
    margin:0 0 24px;

    font-family:"Cinzel", serif;
    font-size:13px;
    letter-spacing:.30em;

    color:rgba(190,155,91,.72);
}

.join-together-title{
    margin:0;

    font-family:"Cinzel", serif;
    font-size:clamp(46px, 5.5vw, 74px);
    font-weight:400;
    line-height:1.06;
    letter-spacing:.025em;

    color:#ead6a3;
}
.join-together-copy{
    padding-top:40px;
}

.join-together-copy p{
    margin:0 0 30px;

    font-family:"Cormorant Garamond", serif;
    font-size:clamp(22px, 2.1vw, 28px);
    line-height:1.72;

    color:rgba(238,226,202,.75);
}

.join-together-copy p:last-child{
    margin-bottom:0;
}

.join-together-emphasis{
    margin-top:44px !important;

    font-style:italic;

    color:#dfc88f !important;
}
@media (max-width:850px){

    .join-together{
        padding:110px 22px 125px;
    }

    .join-together-inner{
        grid-template-columns:1fr;
        gap:58px;
    }

    .join-together-heading,
    .join-together-copy{
        text-align:center;
    }

    .join-together-copy{
        padding-top:0;
    }

    .join-together-title{
        font-size:44px;
    }
}
/* ======================================================
   JOIN CONTRIBUTE
====================================================== */
.join-contribute{
    padding:150px 32px 170px;

    background:
        radial-gradient(
            circle at 50% 0%,
            rgba(181,143,75,.05),
            transparent 34%
        ),
        #060606;
}

.join-contribute-inner{
    width:min(1160px, 100%);
    margin:0 auto;
}

.join-contribute-heading{
    width:min(820px, 100%);
    margin:0 auto 88px;

    text-align:center;
}

.join-contribute-eyebrow{
    margin:0 0 20px;

    font-family:"Cinzel", serif;
    font-size:13px;
    letter-spacing:.30em;

    color:rgba(190,155,91,.72);
}

.join-contribute-title{
    margin:0;

    font-family:"Cinzel", serif;
    font-size:clamp(44px, 5.5vw, 74px);
    font-weight:400;
    line-height:1.08;
    letter-spacing:.025em;

    color:#ead6a3;
}

.join-contribute-text{
    max-width:720px;
    margin:36px auto 0;

    font-family:"Cormorant Garamond", serif;
    font-size:clamp(21px, 2.1vw, 27px);
    line-height:1.7;

    color:rgba(238,226,202,.72);
}
.join-contribute-grid{
    display:grid;
    grid-template-columns:repeat(2, minmax(0,1fr));

    border-top:1px solid rgba(216,196,154,.14);
    border-left:1px solid rgba(216,196,154,.14);
}

.join-contribute-card{
    min-height:260px;
    padding:52px 46px;

    border-right:1px solid rgba(216,196,154,.14);
    border-bottom:1px solid rgba(216,196,154,.14);

    background:
        linear-gradient(
            145deg,
            rgba(18,19,20,.46),
            rgba(7,8,9,.20)
        );

    transition:
        background .35s ease,
        border-color .35s ease,
        transform .35s ease;
}

.join-contribute-card h3{
    margin:0 0 24px;

    font-family:"Cinzel", serif;
    font-size:30px;
    font-weight:400;
    letter-spacing:.10em;

    color:#e4cd97;
}

.join-contribute-card p{
    margin:0;

    font-family:"Cormorant Garamond", serif;
    font-size:22px;
    line-height:1.7;

    color:rgba(238,226,202,.70);
}

.join-contribute-card:hover{
    transform:translateY(-2px);

    background:
        radial-gradient(
            circle at 82% 18%,
            rgba(183,145,75,.07),
            transparent 42%
        ),
        rgba(12,13,14,.58);

    border-color:rgba(216,196,154,.24);
}
@media (max-width:800px){

    .join-contribute{
        padding:110px 20px 125px;
    }

    .join-contribute-heading{
        margin-bottom:62px;
    }

    .join-contribute-title{
        font-size:42px;
    }

    .join-contribute-grid{
        grid-template-columns:1fr;
    }

    .join-contribute-card{
        min-height:auto;
        padding:42px 30px;
    }

    .join-contribute-card h3{
        font-size:27px;
    }

    .join-contribute-card p{
        font-size:20px;
    }
}
/* ======================================================
   JOIN HONESTY
====================================================== */
.join-honesty{
    padding:160px 32px 180px;

    background:
        radial-gradient(
            circle at 22% 18%,
            rgba(181,143,75,.045),
            transparent 34%
        ),
        #050606;
}

.join-honesty-inner{
    width:min(1120px, 100%);
    margin:0 auto;

    display:grid;
    grid-template-columns:.85fr 1.15fr;
    gap:100px;

    align-items:start;
}
.join-honesty-eyebrow{
    margin:0 0 24px;

    font-family:"Cinzel", serif;
    font-size:13px;
    letter-spacing:.30em;

    color:rgba(190,155,91,.70);
}

.join-honesty-title{
    margin:0;

    font-family:"Cinzel", serif;
    font-size:clamp(44px, 5.3vw, 72px);
    font-weight:400;
    line-height:1.07;
    letter-spacing:.025em;

    color:#ead6a3;
}
.join-honesty-copy{
    padding-top:34px;
}

.join-honesty-copy p{
    margin:0 0 28px;

    font-family:"Cormorant Garamond", serif;
    font-size:clamp(22px, 2.05vw, 28px);
    line-height:1.72;

    color:rgba(238,226,202,.72);
}

.join-honesty-emphasis{
    margin:44px 0 !important;

    padding-left:28px;

    border-left:1px solid rgba(216,196,154,.30);

    font-style:italic;

    color:#dfc88f !important;
}
.join-honesty-closing{
    margin-top:52px !important;

    font-family:"Cinzel", serif !important;
    font-size:14px !important;
    line-height:2 !important;
    letter-spacing:.16em;

    color:rgba(215,195,153,.58) !important;
}
@media (max-width:850px){

    .join-honesty{
        padding:115px 22px 135px;
    }

    .join-honesty-inner{
        grid-template-columns:1fr;
        gap:58px;
    }

    .join-honesty-heading{
        text-align:center;
    }

    .join-honesty-title{
        font-size:44px;
    }

    .join-honesty-copy{
        padding-top:0;
        text-align:center;
    }

    .join-honesty-emphasis{
        padding-left:0;
        padding-top:26px;

        border-left:0;
        border-top:1px solid rgba(216,196,154,.24);
    }
}
/* ======================================================
   JOIN FINAL
====================================================== */
.join-final{
    min-height:90vh;

    padding:160px 32px 220px;

    display:flex;
    align-items:center;
    justify-content:center;

    background:
        radial-gradient(
            circle at 50% 28%,
            rgba(181,143,75,.07),
            transparent 36%
        ),
        linear-gradient(
            to bottom,
            #050606,
            #030404
        );
}

.join-final-inner{
    width:min(900px,100%);
    margin:0 auto;

    text-align:center;
}
.join-final-eyebrow{
    margin:0 0 22px;

    font-family:"Cinzel", serif;
    font-size:13px;
    letter-spacing:.32em;

    color:rgba(190,155,91,.72);
}

.join-final-title{
    margin:0;

    font-family:"Cinzel", serif;
    font-size:clamp(50px,6vw,84px);
    font-weight:400;
    line-height:1.05;

    color:#ead6a3;
}
.join-final-text{
    max-width:700px;
    margin:42px auto 0;

    font-family:"Cormorant Garamond", serif;
    font-size:clamp(22px,2.2vw,29px);
    line-height:1.7;

    color:rgba(238,226,202,.72);
}

.join-final-emphasis{
    margin:44px auto 0;

    font-family:"Cormorant Garamond", serif;
    font-size:clamp(28px,2.8vw,38px);
    font-style:italic;
    line-height:1.6;

    color:#dfc88f;
}
.join-final-actions{
    margin-top:58px;

    display:flex;
    justify-content:center;
    align-items:center;
    gap:30px;

    flex-wrap:wrap;
}

.join-final-primary{

    display:inline-flex;
    align-items:center;
    justify-content:center;

    min-width:260px;
    padding:20px 34px;

    border:1px solid rgba(224,196,137,.68);
    border-radius:4px;

    background:rgba(8,10,13,.48);

    font-family:"Cinzel", serif;
    font-size:13px;
    letter-spacing:.20em;

    color:#ead6a3;
    text-decoration:none;

    transition:
        transform .3s ease,
        border-color .3s ease,
        background .3s ease;
}

.join-final-primary:hover{

    transform:translateY(-2px);

    border-color:rgba(235,210,157,.92);

    background:rgba(14,14,14,.68);
}

.join-final-secondary{

    font-family:"Cinzel", serif;
    font-size:12px;
    letter-spacing:.18em;

    color:rgba(213,196,161,.54);

    text-decoration:none;

    transition:
        color .3s ease,
        transform .3s ease;
}

.join-final-secondary:hover{

    color:rgba(234,214,163,.88);

    transform:translateX(4px);
}
.join-final-ornament{

    width:min(280px,60%);

    margin:100px auto 80px;

    display:flex;
    align-items:center;
}

.join-final-ornament span{

    flex:1;
    height:1px;

    background:
        linear-gradient(
            to right,
            transparent,
            rgba(201,167,101,.36)
        );
}

.join-final-ornament span:last-child{

    background:
        linear-gradient(
            to left,
            transparent,
            rgba(201,167,101,.36)
        );
}

.join-final-ornament i{

    width:10px;
    height:10px;

    margin:0 16px;

    border:1px solid rgba(215,183,119,.64);

    transform:rotate(45deg);
}

.join-final-closing{

    margin:0;

    font-family:"Cormorant Garamond", serif;
    font-size:22px;
    line-height:1.7;

    color:rgba(221,208,181,.56);
}
@media (max-width:850px){

    .join-final{

        min-height:auto;

        padding:120px 22px 150px;
    }

    .join-final-title{

        font-size:44px;
    }

    .join-final-text{

        font-size:21px;
    }

    .join-final-actions{

        gap:20px;
    }

    .join-final-primary{

        width:100%;
        max-width:320px;
    }

    .join-final-ornament{

        margin:82px auto 68px;
    }
}

/* ======================================================
   BOOK PAGE — LONG-FORM DIRECTORY
====================================================== */
.book-page{background:#050606;color:#efe4c6;}
.book-hero{position:relative;min-height:72vh;display:flex;align-items:center;justify-content:center;padding:140px 32px 115px;overflow:hidden;background:radial-gradient(circle at 50% 18%,rgba(187,151,82,.09),transparent 34%),linear-gradient(to bottom,#080909 0%,#050606 100%);}
.book-hero::after{content:"";position:absolute;left:50%;bottom:0;width:min(760px,70%);height:1px;transform:translateX(-50%);background:linear-gradient(to right,transparent,rgba(216,196,154,.30),transparent);}
.book-hero-inner{position:relative;z-index:2;width:min(960px,100%);text-align:center;}
.book-eyebrow,.book-introduction-eyebrow,.book-contents-eyebrow{margin:0 0 22px;font-family:"Cinzel",serif;font-size:12px;letter-spacing:.32em;color:rgba(190,155,91,.74);}
.book-title{margin:0;font-family:"Cinzel",serif;font-size:clamp(54px,6.5vw,94px);font-weight:400;line-height:1.02;letter-spacing:.025em;color:#ead6a3;text-shadow:0 10px 34px rgba(0,0,0,.48);}
.book-hero-tagline{max-width:680px;margin:38px auto 0;font-family:"Cormorant Garamond",serif;font-size:clamp(24px,2.2vw,32px);font-style:italic;line-height:1.55;color:rgba(231,215,181,.78);}
.book-begin-button{display:inline-flex;align-items:center;justify-content:center;min-width:220px;margin-top:44px;padding:17px 30px;border:1px solid rgba(224,196,137,.62);border-radius:4px;background:rgba(8,10,13,.42);font-family:"Cinzel",serif;font-size:12px;letter-spacing:.19em;color:#ead6a3;text-decoration:none;transition:.3s ease;}
.book-begin-button:hover{transform:translateY(-2px);border-color:rgba(235,210,157,.94);background:rgba(18,17,14,.66);}
.book-introduction{padding:120px 32px 130px;background:radial-gradient(circle at 22% 12%,rgba(181,143,75,.045),transparent 30%),#050606;}
.book-introduction-inner{width:min(1040px,100%);margin:0 auto;display:grid;grid-template-columns:.8fr 1.2fr;gap:84px;align-items:start;}
.book-introduction-title{margin:0;font-family:"Cinzel",serif;font-size:clamp(40px,4.4vw,62px);font-weight:400;line-height:1.08;color:#ead6a3;}
.book-introduction-copy{padding-top:30px;}
.book-introduction-copy p{margin:0 0 26px;font-family:"Cormorant Garamond",serif;font-size:clamp(21px,1.8vw,27px);line-height:1.72;color:rgba(238,226,202,.74);}
.book-contents{padding:115px 32px 155px;background:radial-gradient(circle at 50% 0%,rgba(181,143,75,.055),transparent 31%),#060606;}
.book-contents-inner{width:min(1120px,100%);margin:0 auto;}
.book-contents-heading{margin-bottom:46px;text-align:center;}
.book-contents-heading h2{margin:0;font-family:"Cinzel",serif;font-size:clamp(42px,4.8vw,66px);font-weight:400;letter-spacing:.04em;color:#ead6a3;}
.book-contents-note{max-width:620px;margin:18px auto 0;font-family:"Cormorant Garamond",serif;font-size:18px;line-height:1.55;color:rgba(238,226,202,.5);}
.toc-prologue{display:grid;grid-template-columns:130px 1fr auto;gap:20px;align-items:center;padding:18px 20px;margin-bottom:42px;border-top:1px solid rgba(216,196,154,.18);border-bottom:1px solid rgba(216,196,154,.18);text-decoration:none;background:rgba(181,143,75,.025);transition:.25s ease;}
.toc-prologue:hover{background:rgba(181,143,75,.06);padding-left:26px;}
.toc-prologue-kicker,.toc-chapter-number,.toc-part-number{font-family:"Cinzel",serif;font-size:11px;letter-spacing:.19em;color:rgba(190,155,91,.72);}
.toc-prologue-title{font-family:"Cormorant Garamond",serif;font-size:23px;color:rgba(238,226,202,.86);}
.toc-prologue-action,.toc-chapter-arrow{font-family:"Cinzel",serif;font-size:10px;letter-spacing:.16em;color:rgba(213,196,161,.58);}
.toc-parts-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 48px;align-items:start;}
.toc-part{border-top:1px solid rgba(216,196,154,.19);}
.toc-part-heading{display:flex;align-items:baseline;gap:18px;padding:18px 6px 14px;border-bottom:1px solid rgba(216,196,154,.10);}
.toc-part-heading h3{margin:0;font-family:"Cinzel",serif;font-size:18px;font-weight:400;letter-spacing:.09em;color:#dfc998;}
.toc-chapters{display:flex;flex-direction:column;}
.toc-chapter{display:grid;grid-template-columns:42px 1fr 18px;gap:10px;align-items:center;min-height:50px;padding:10px 6px;border-bottom:1px solid rgba(216,196,154,.085);text-decoration:none;transition:.22s ease;}
.toc-chapter:hover{padding-left:12px;background:linear-gradient(to right,rgba(181,143,75,.045),transparent 80%);}
.toc-chapter-number{font-size:10px;}
.toc-chapter-title{font-family:"Cormorant Garamond",serif;font-size:18px;line-height:1.25;color:rgba(238,226,202,.80);}
.toc-chapter-arrow{opacity:.45;transition:.2s ease;}
.toc-chapter:hover .toc-chapter-arrow{opacity:1;transform:translateX(3px);}

/* ======================================================
   CHRONICLE
====================================================== */
.chronicle-page{background:#050606;color:#efe4c6;}
.chronicle-hero{min-height:86vh;display:flex;align-items:center;justify-content:center;padding:150px 30px 120px;text-align:center;background:radial-gradient(circle at 50% 22%,rgba(190,155,91,.12),transparent 34%),linear-gradient(to bottom,rgba(5,6,6,.72),#050606),url("../images/history.png") center/cover no-repeat;}
.chronicle-hero-inner{width:min(950px,100%);}
.chronicle-eyebrow,.chronicle-section-label,.age-kicker,.map-eyebrow,.map-section-label{font-family:"Cinzel",serif;font-size:12px;letter-spacing:.3em;color:rgba(197,164,99,.78);}
.chronicle-hero h1{margin:24px 0 28px;font-family:"Cinzel",serif;font-weight:400;font-size:clamp(55px,7vw,102px);line-height:1.02;letter-spacing:.035em;color:#ead6a3;}
.chronicle-lead{margin:0;font-family:"Cormorant Garamond",serif;font-size:clamp(27px,2.5vw,36px);font-style:italic;color:rgba(238,226,202,.82);}
.chronicle-copy{max-width:720px;margin:24px auto 0;font-family:"Cormorant Garamond",serif;font-size:21px;line-height:1.65;color:rgba(238,226,202,.64);}
.chronicle-enter{display:inline-block;margin-top:42px;padding:17px 28px;border:1px solid rgba(224,196,137,.55);font-family:"Cinzel",serif;font-size:11px;letter-spacing:.2em;color:#e5cf9d;text-decoration:none;}
.chronicle-intro{padding:110px 30px 90px;text-align:center;}
.chronicle-intro-inner{width:min(840px,100%);margin:0 auto;}
.chronicle-intro h2{margin:20px 0 24px;font-family:"Cinzel",serif;font-size:clamp(36px,4.2vw,58px);font-weight:400;color:#e7d29f;}
.chronicle-intro p:last-child{margin:0;font-family:"Cormorant Garamond",serif;font-size:22px;line-height:1.72;color:rgba(238,226,202,.66);}
.ages-timeline{position:relative;width:min(1120px,calc(100% - 44px));margin:0 auto;padding:20px 0 100px;}
.ages-line{position:absolute;left:48px;top:38px;bottom:140px;width:1px;background:linear-gradient(to bottom,rgba(224,196,137,.42),rgba(224,196,137,.12),rgba(224,196,137,.28));}
.age-entry{position:relative;display:grid;grid-template-columns:98px 1fr;gap:34px;margin:0 0 38px;}
.age-marker{position:relative;z-index:2;width:62px;height:62px;margin-left:17px;border:1px solid rgba(224,196,137,.42);border-radius:50%;display:flex;align-items:center;justify-content:center;background:#070808;box-shadow:0 0 0 10px #050606;}
.age-marker span{font-family:"Cinzel",serif;font-size:13px;color:#d8bd82;}
.age-marker-open{border-style:dashed;opacity:.7;}
.age-panel{padding:38px 42px 40px;border:1px solid rgba(216,196,154,.12);background:linear-gradient(135deg,rgba(255,255,255,.018),transparent 60%);}
.age-entry-light .age-panel{background:radial-gradient(circle at 12% 20%,rgba(190,155,91,.08),transparent 34%),rgba(255,255,255,.012);}
.age-panel h2{margin:12px 0 6px;font-family:"Cinzel",serif;font-size:clamp(34px,4vw,54px);font-weight:400;color:#e5cd94;}
.age-panel h3{margin:0 0 22px;font-family:"Cormorant Garamond",serif;font-size:25px;font-weight:500;font-style:italic;color:rgba(238,226,202,.72);}
.age-panel>p:not(.age-kicker):not(.age-return-line){max-width:780px;margin:0 0 25px;font-family:"Cormorant Garamond",serif;font-size:21px;line-height:1.65;color:rgba(238,226,202,.62);}
.age-panel>a,.age-links a,.age-story-callout a{font-family:"Cinzel",serif;font-size:10px;letter-spacing:.16em;color:#d6bd86;text-decoration:none;}
.age-keywords{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 26px;}
.age-keywords span{padding:7px 10px;border:1px solid rgba(216,196,154,.13);font-family:"Inter",sans-serif;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:rgba(238,226,202,.42);}
.age-links{display:flex;gap:24px;flex-wrap:wrap;}
.age-story-callout{margin-top:28px;padding:20px 22px;border-left:1px solid rgba(224,196,137,.5);background:rgba(181,143,75,.025);display:grid;grid-template-columns:110px 1fr auto;gap:18px;align-items:center;}
.age-story-callout span{font-family:"Cinzel",serif;font-size:10px;letter-spacing:.18em;color:rgba(190,155,91,.68);}
.age-story-callout strong{font-family:"Cinzel",serif;font-size:16px;font-weight:400;letter-spacing:.06em;color:#e6d2a4;}
.age-entry-return{opacity:.76;}
.age-return-line{margin:18px 0 0!important;font-family:"Cinzel",serif!important;font-size:13px!important;letter-spacing:.2em!important;color:rgba(218,194,143,.62)!important;text-transform:uppercase;}
.chronicle-closing{padding:110px 30px 130px;text-align:center;border-top:1px solid rgba(216,196,154,.10);}
.chronicle-closing p{font-family:"Cormorant Garamond",serif;font-size:22px;color:rgba(238,226,202,.5);}
.chronicle-closing h2{margin:15px 0 28px;font-family:"Cinzel",serif;font-size:clamp(34px,4vw,54px);font-weight:400;color:#e5cd94;}
.chronicle-closing a{font-family:"Cinzel",serif;font-size:11px;letter-spacing:.18em;color:#d6bd86;text-decoration:none;}

/* ======================================================
   MAP — LIVING ATLAS
====================================================== */
.map-page{background:#050606;color:#efe4c6;}
.map-hero{position:relative;min-height:86vh;display:flex;align-items:flex-end;padding:140px 5vw 90px;overflow:hidden;background:url("../images/world-hero.png") center/cover no-repeat;}
.map-hero-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(3,5,6,.94) 0%,rgba(4,5,6,.48) 48%,rgba(4,5,6,.22) 100%),radial-gradient(circle at 70% 26%,rgba(225,194,126,.10),transparent 32%);}
.map-hero-inner{position:relative;z-index:2;width:min(920px,100%);}
.map-hero h1{margin:20px 0 24px;font-family:"Cinzel",serif;font-size:clamp(46px,6vw,86px);font-weight:400;line-height:1.04;color:#ecd9aa;}
.map-hero p:not(.map-eyebrow){max-width:700px;margin:0;font-family:"Cormorant Garamond",serif;font-size:23px;line-height:1.6;color:rgba(241,229,204,.72);}
.map-hero a{display:inline-block;margin-top:35px;padding-bottom:6px;border-bottom:1px solid rgba(224,196,137,.42);font-family:"Cinzel",serif;font-size:11px;letter-spacing:.18em;color:#e0c58d;text-decoration:none;}
.map-philosophy{width:min(900px,calc(100% - 50px));margin:0 auto;padding:115px 0 95px;text-align:center;}
.map-philosophy h2{margin:18px 0 24px;font-family:"Cinzel",serif;font-size:clamp(38px,4.6vw,62px);font-weight:400;color:#e5ce98;}
.map-philosophy p:last-child{max-width:720px;margin:0 auto;font-family:"Cormorant Garamond",serif;font-size:22px;line-height:1.7;color:rgba(238,226,202,.62);}
.age-atlas{padding:35px 28px 90px;}
.atlas-heading{text-align:center;margin-bottom:34px;}
.atlas-heading h2{margin:14px 0 0;font-family:"Cinzel",serif;font-size:clamp(36px,4.2vw,56px);font-weight:400;color:#e5ce98;}
.atlas-tabs{width:min(1180px,100%);margin:0 auto 18px;display:grid;grid-template-columns:repeat(5,1fr);border:1px solid rgba(216,196,154,.12);}
.atlas-tab{appearance:none;border:0;border-right:1px solid rgba(216,196,154,.10);padding:15px 8px;background:#070808;font-family:"Cinzel",serif;font-size:10px;letter-spacing:.12em;color:rgba(238,226,202,.46);cursor:pointer;}
.atlas-tab:last-child{border-right:0;}.atlas-tab.active{background:rgba(181,143,75,.08);color:#dfc68f;}
.atlas-stage{position:relative;width:min(1180px,100%);min-height:680px;margin:0 auto;overflow:hidden;border:1px solid rgba(216,196,154,.16);background:#070808;}
.atlas-image{position:absolute;inset:0;background:url("../images/world-hero.png") center/cover no-repeat;transform:scale(1.02);transition:filter .5s ease,opacity .5s ease,background-image .5s ease;}
.atlas-vignette{position:absolute;inset:0;background:linear-gradient(to right,rgba(3,5,6,.88) 0%,rgba(3,5,6,.48) 48%,rgba(3,5,6,.20) 76%,rgba(3,5,6,.34) 100%),linear-gradient(to top,rgba(3,5,6,.72),transparent 55%);}
.age-elarion .atlas-image{filter:saturate(.92) brightness(1.08) contrast(.95);}
.age-division .atlas-image{filter:saturate(.64) brightness(.72) contrast(1.05);}
.age-nations .atlas-image{background-image:url("../images/world-map.png");filter:saturate(.70) brightness(.62) contrast(1.03);}
.age-humanity .atlas-image{background-image:url("../images/world-map.png");filter:saturate(.90) brightness(.82) contrast(1.03);}
.age-return .atlas-image{background-image:url("../images/world-map.png");filter:grayscale(.85) brightness(.22) blur(2px);opacity:.58;}
.atlas-caption{position:absolute;z-index:3;left:5%;bottom:8%;width:min(560px,88%);padding:30px 32px;background:rgba(4,6,7,.80);border-left:1px solid rgba(224,196,137,.48);backdrop-filter:blur(5px);}
.atlas-age{margin:0 0 10px;font-family:"Cinzel",serif;font-size:10px;letter-spacing:.2em;color:rgba(190,155,91,.72);}
.atlas-caption h3{margin:0;font-family:"Cinzel",serif;font-size:clamp(28px,3vw,42px);font-weight:400;color:#e6d09c;}
.atlas-subtitle{margin:9px 0 17px!important;font-family:"Cormorant Garamond",serif!important;font-size:22px!important;font-style:italic;color:rgba(238,226,202,.72)!important;}
.atlas-description{margin:0 0 15px;font-family:"Cormorant Garamond",serif;font-size:18px;line-height:1.55;color:rgba(238,226,202,.64);}
.atlas-note{margin:0 0 21px;font-family:"Inter",sans-serif;font-size:10px;line-height:1.55;letter-spacing:.05em;color:rgba(238,226,202,.35);}
.atlas-caption a{font-family:"Cinzel",serif;font-size:10px;letter-spacing:.14em;color:#d6bd86;text-decoration:none;}
.map-age-index{padding:80px 28px 115px;}
.map-age-index-inner{width:min(1120px,100%);margin:0 auto;}
.map-age-index-inner>.map-section-label{text-align:center;display:block;margin-bottom:28px;}
.map-age-cards{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid rgba(216,196,154,.14);border-bottom:1px solid rgba(216,196,154,.14);}
.map-age-card{padding:24px 18px;border-right:1px solid rgba(216,196,154,.10);text-decoration:none;display:flex;flex-direction:column;gap:8px;transition:.25s ease;}.map-age-card:last-child{border-right:0;}.map-age-card:hover{background:rgba(181,143,75,.045);}
.map-age-card span{font-family:"Cinzel",serif;font-size:10px;color:rgba(190,155,91,.62);}.map-age-card strong{font-family:"Cinzel",serif;font-size:13px;font-weight:400;color:#dcc48e;}.map-age-card em{font-family:"Cormorant Garamond",serif;font-size:16px;color:rgba(238,226,202,.48);}
.map-closing{padding:105px 30px 125px;text-align:center;border-top:1px solid rgba(216,196,154,.10);}.map-closing p{font-family:"Cormorant Garamond",serif;font-size:22px;color:rgba(238,226,202,.50);}.map-closing h2{margin:14px 0 30px;font-family:"Cinzel",serif;font-size:clamp(34px,4vw,54px);font-weight:400;color:#e5ce98;}.map-closing-links{display:flex;justify-content:center;gap:30px;flex-wrap:wrap;}.map-closing-links a{font-family:"Cinzel",serif;font-size:10px;letter-spacing:.16em;color:#d6bd86;text-decoration:none;}

/* ======================================================
   RESPONSIVE — BOOK / CHRONICLE / MAP
====================================================== */
@media (max-width:850px){
  .book-hero{min-height:auto;padding:115px 22px 95px}.book-introduction{padding:95px 22px 105px}.book-introduction-inner{grid-template-columns:1fr;gap:38px}.book-introduction-copy{padding-top:0}.book-contents{padding:90px 18px 115px}.toc-parts-grid{grid-template-columns:1fr;gap:28px}.toc-prologue{grid-template-columns:1fr auto;gap:8px}.toc-prologue-title{grid-column:1/-1;grid-row:2}.toc-prologue-action{grid-column:2;grid-row:1}.chronicle-hero{min-height:75vh;padding:125px 22px 95px}.chronicle-intro{padding:90px 22px 70px}.ages-timeline{width:min(100% - 28px,1120px)}.ages-line{left:25px}.age-entry{grid-template-columns:52px 1fr;gap:10px}.age-marker{width:46px;height:46px;margin-left:2px;box-shadow:0 0 0 7px #050606}.age-panel{padding:28px 22px}.age-story-callout{grid-template-columns:1fr;gap:8px}.map-hero{min-height:76vh;padding:120px 24px 75px}.atlas-tabs{grid-template-columns:1fr 1fr}.atlas-tab{border-bottom:1px solid rgba(216,196,154,.10)}.atlas-stage{min-height:650px}.atlas-caption{left:4%;bottom:4%;width:92%;padding:24px}.map-age-cards{grid-template-columns:1fr 1fr}.map-age-card{border-bottom:1px solid rgba(216,196,154,.10)}}
@media (max-width:560px){.book-title{font-size:44px}.book-hero-tagline{font-size:22px}.toc-chapter{grid-template-columns:34px 1fr 14px}.toc-chapter-title{font-size:17px}.age-entry{grid-template-columns:1fr}.ages-line,.age-marker{display:none}.age-panel{padding:26px 20px}.atlas-tabs{grid-template-columns:1fr}.atlas-stage{min-height:720px}.atlas-caption{position:absolute}.map-age-cards{grid-template-columns:1fr}.map-age-card{border-right:0}.map-closing-links{flex-direction:column;gap:18px}}
