/* Cathedral of Sound overrides for the Foundation homepage */
h1,h2,h3,.font-\[\'Cormorant_Garamond\'\]{font-family:'Cormorant Garamond',Georgia,serif!important;font-weight:500;letter-spacing:-.01em}
h1{letter-spacing:-.02em}
body{font-family:Inter,system-ui,sans-serif}
a,button{transition:transform .2s,box-shadow .2s,background-color .2s,color .2s}
[class*="rounded"]{--tw-radius:14px}
button,[role=button],a[class*="bg-\[\#e2c383\]"]{border-radius:8px!important}
a[class*="bg-\[\#e2c383\]"]:hover,button[class*="bg-\[\#e2c383\]"]:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(226,195,131,.35)}
[class*="border-\[\#e2c383\]"]{border-color:rgba(226,195,131,.45)!important}
::selection{background:#e2c383;color:#0d3334}
img{border-radius:12px}
/* Body copy: the Squarespace-era classes asked for Nunito Sans / Manrope, which are not loaded here, so browsers fell back to Times. Use Inter. */
.font-\[Nunito_Sans\],.font-\[Manrope\],p,li,blockquote,td{font-family:Inter,system-ui,sans-serif}
.font-\[Georgia\]{font-family:'Cormorant Garamond',Georgia,serif;font-size:1.08em}
p.text-lg,.text-lg{font-size:1.125rem;line-height:1.75}


/* ===== Civic & Dutchtown — postcard / walking-tour layout ===== */
.civic-wrap{position:relative;overflow:hidden;padding:4.5rem 0 5.5rem}
.civic-inner{position:relative;z-index:1;max-width:64rem;margin:0 auto;padding:0 1.5rem}
.civic-orb{position:absolute;right:-13rem;top:-9rem;width:30rem;height:30rem;border-radius:50%;pointer-events:none;
  background:radial-gradient(circle at 40% 40%,rgba(226,195,131,.22),rgba(226,195,131,.05) 45%,transparent 70%);filter:blur(1px)}
.civic-orb .medallion{position:absolute;inset:4rem;width:auto;height:auto;opacity:.11;animation:medallion-turn 240s linear infinite}

/* postcard */
.civic-postcard{display:grid;grid-template-columns:1fr;gap:1.5rem;background:linear-gradient(135deg,rgba(255,250,240,.07),rgba(255,255,255,.03));
  border:1px solid rgba(238,220,175,.35);border-radius:22px;padding:1.75rem;box-shadow:0 18px 60px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.08);
  background-image:repeating-linear-gradient(0deg,transparent 0 31px,rgba(238,220,175,.07) 31px 32px);position:relative}
.civic-postcard::before{content:"";position:absolute;inset:10px;border:1px dashed rgba(238,220,175,.22);border-radius:16px;pointer-events:none}
@media(min-width:768px){.civic-postcard{grid-template-columns:10rem 1fr;gap:2.25rem;padding:2.25rem 2.5rem}}
.civic-stamp{align-self:start;justify-self:center;width:9.5rem;aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;
  background:#fbf3e2;color:#0d3334;border-radius:6px;transform:rotate(-4deg);
  box-shadow:0 0 0 6px #fbf3e2,0 0 0 8px rgba(13,51,52,.9),0 14px 30px rgba(0,0,0,.35);
  background-image:radial-gradient(circle,#0d3334 1.6px,transparent 1.8px);background-size:12px 12px;background-position:-6px -6px;position:relative}
.civic-stamp::after{content:"";position:absolute;inset:8px;background:#fbf3e2;border-radius:4px;z-index:0}
.civic-stamp>*{position:relative;z-index:1;font-family:Inter,system-ui,sans-serif;letter-spacing:.18em;font-weight:700}
.civic-stamp-top,.civic-stamp-bot{font-size:.58rem}
.civic-stamp-big{font-family:'Cormorant Garamond',Georgia,serif;font-size:2.4rem;line-height:1;letter-spacing:.04em;color:#8a5a1c}
.civic-hello{font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-size:1.5rem;color:#eedcaf;margin:0 0 .6rem}
.civic-intro{font-family:Inter,system-ui,sans-serif;font-size:1.05rem;line-height:1.75;color:rgba(255,255,255,.88);margin:0}
.civic-em{color:#eedcaf;font-weight:600}
.civic-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.2rem}
.civic-chip{font-family:Inter,system-ui,sans-serif;font-size:.74rem;letter-spacing:.06em;text-transform:uppercase;color:#eedcaf;
  border:1px solid rgba(238,220,175,.45);border-radius:999px;padding:.35rem .8rem;background:rgba(238,220,175,.08)}

/* rail label */
.civic-rail-label{display:flex;align-items:center;gap:1rem;margin:3rem 0 1.25rem;font-family:Inter,system-ui,sans-serif;font-size:.72rem;letter-spacing:.3em;color:#e2c383}
.civic-rail-label::before,.civic-rail-label::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,transparent,rgba(226,195,131,.5),transparent)}

/* cards */
.civic-grid{display:grid;grid-template-columns:1fr;gap:1.25rem}
@media(min-width:768px){.civic-grid{grid-template-columns:1fr 1fr}.civic-card-feature{grid-column:1/-1}}
.civic-card{--tint:#e2c383;position:relative;display:flex;gap:1.1rem;align-items:flex-start;text-decoration:none;
  background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.12);border-radius:20px;padding:1.4rem 1.4rem 1.4rem 1.2rem;
  box-shadow:0 10px 30px rgba(0,0,0,.22);transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s,border-color .35s;overflow:hidden}
.civic-card::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 0% 0%,color-mix(in srgb,var(--tint) 28%,transparent),transparent 55%);opacity:.9;pointer-events:none}
.civic-card::after{content:"";position:absolute;left:0;top:14%;bottom:14%;width:4px;border-radius:4px;background:var(--tint);opacity:.9}
.civic-card:hover{transform:translateY(-4px) rotate(-.4deg);border-color:color-mix(in srgb,var(--tint) 70%,transparent);box-shadow:0 18px 44px rgba(0,0,0,.3),0 0 28px color-mix(in srgb,var(--tint) 35%,transparent)}
.civic-card-0{--tint:#f0c36a}.civic-card-1{--tint:#9fd8c9}.civic-card-2{--tint:#f29b6b}.civic-card-3{--tint:#c9b4f2}.civic-card-4{--tint:#8fc1ec}
.civic-num{position:absolute;right:1.1rem;top:.9rem;font-family:'Cormorant Garamond',Georgia,serif;font-size:1.4rem;color:var(--tint);opacity:.55;font-style:italic}
.civic-glyph{flex:0 0 auto;width:3.6rem;height:3.6rem;border-radius:50%;display:grid;place-items:center;font-size:1.7rem;
  background:color-mix(in srgb,var(--tint) 22%,rgba(255,255,255,.04));border:1px solid color-mix(in srgb,var(--tint) 55%,transparent);
  box-shadow:inset 0 0 18px color-mix(in srgb,var(--tint) 25%,transparent);transition:transform .4s}
.civic-card:hover .civic-glyph{transform:rotate(-8deg) scale(1.08)}
.civic-card-text{display:flex;flex-direction:column;gap:.35rem;position:relative;min-width:0}
.civic-card-title{font-family:'Cormorant Garamond',Georgia,serif;font-size:1.5rem;line-height:1.15;color:#fff;font-weight:600;padding-right:2rem}
.civic-card-desc{font-family:Inter,system-ui,sans-serif;font-size:.93rem;line-height:1.6;color:rgba(255,255,255,.72)}
.civic-enter{margin-top:.5rem;align-self:flex-start;font-family:Inter,system-ui,sans-serif;font-size:.8rem;font-weight:600;letter-spacing:.04em;color:#0d3334;
  background:var(--tint);border-radius:999px;padding:.4rem .95rem;transition:filter .3s}
.civic-card:hover .civic-enter{filter:brightness(1.08)}
.civic-card-feature{padding:1.8rem 1.8rem 1.8rem 1.6rem}
@media(min-width:768px){.civic-card-feature .civic-glyph{width:5rem;height:5rem;font-size:2.4rem}.civic-card-feature .civic-card-title{font-size:2rem}.civic-card-feature .civic-card-desc{font-size:1.02rem;max-width:40rem}}

/* street sign */
.civic-sign{margin-top:2.75rem;display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem;padding:1rem 1.4rem;
  border:1px solid rgba(238,220,175,.35);border-radius:14px;background:rgba(13,51,52,.55);position:relative}
.civic-sign::before,.civic-sign::after{content:"";position:absolute;top:-6px;width:10px;height:10px;border-radius:50%;background:#e2c383;box-shadow:0 0 0 3px #0d3334}
.civic-sign::before{left:1.2rem}.civic-sign::after{right:1.2rem}
.civic-sign-arrow{color:#e2c383;font-size:1.3rem}
.civic-sign-text{flex:1 1 18rem;font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-size:1.25rem;color:#eedcaf}
.civic-sign-cta{font-family:Inter,system-ui,sans-serif;font-size:.85rem;font-weight:600;color:#e2c383;border:1px solid rgba(226,195,131,.6);border-radius:999px;padding:.45rem 1rem;text-decoration:none;transition:background .3s,color .3s}
.civic-sign-cta:hover{background:#e2c383;color:#0d3334}
@media(max-width:767px){.civic-orb{right:-14rem;top:-10rem}.civic-stamp{transform:rotate(-3deg) scale(.9)}}

/* ===== Civic sub-pages ===== */
.civic-card-static{cursor:default}
.civic-card-static:hover{transform:none}
.civic-grid-3{grid-template-columns:1fr}
@media(min-width:768px){.civic-grid-3{grid-template-columns:repeat(3,1fr)}}
.civic-pending{margin-top:.5rem;align-self:flex-start;font-family:Inter,system-ui,sans-serif;font-size:.74rem;letter-spacing:.06em;text-transform:uppercase;color:#eedcaf;
  border:1px dashed rgba(238,220,175,.5);border-radius:999px;padding:.35rem .8rem;background:rgba(238,220,175,.06)}
.civic-ctas{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;margin-top:2rem}
.civic-footnote{margin-top:1.5rem;text-align:center;font-family:Inter,system-ui,sans-serif;font-size:.85rem;color:rgba(255,255,255,.6)}
.civic-link{color:#eedcaf;text-decoration:underline;text-underline-offset:3px}

/* manifesto (Dutchtown Owns Dutchtown) */
.civic-manifesto{position:relative;text-align:center;padding:2.5rem 1.5rem 2.25rem;border:1px solid rgba(238,220,175,.35);border-radius:22px;
  background:linear-gradient(160deg,rgba(255,250,240,.07),rgba(255,255,255,.02));box-shadow:0 18px 60px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.08)}
.civic-manifesto::before{content:"";position:absolute;inset:10px;border:1px dashed rgba(238,220,175,.22);border-radius:16px;pointer-events:none}
@media(min-width:768px){.civic-manifesto{padding:3rem 3rem 2.75rem}}
.civic-seal{display:inline-grid;place-items:center;width:7rem;height:7rem;border-radius:50%;margin:0 auto 1.25rem;background:#fbf3e2;color:#0d3334;transform:rotate(-6deg);
  box-shadow:0 0 0 5px #fbf3e2,0 0 0 7px rgba(13,51,52,.9),0 14px 30px rgba(0,0,0,.35);position:relative}
.civic-seal::after{content:"";position:absolute;inset:7px;border:1px dashed rgba(13,51,52,.55);border-radius:50%}
.civic-seal span{display:flex;flex-direction:column;align-items:center;gap:.1rem;font-family:Inter,system-ui,sans-serif;font-size:.5rem;letter-spacing:.2em;font-weight:700;position:relative;z-index:1}
.civic-seal b{font-family:'Cormorant Garamond',Georgia,serif;font-size:1.7rem;line-height:1;color:#8a5a1c;letter-spacing:.04em}
.civic-manifesto-kicker{font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-size:1.3rem;color:#eedcaf;margin:0 0 1.25rem}
.civic-manifesto-lines{list-style:none;margin:0 auto;padding:0;max-width:34rem;display:flex;flex-direction:column;gap:.8rem}
.civic-manifesto-lines li{display:flex;align-items:center;gap:.9rem;text-align:left;font-family:'Cormorant Garamond',Georgia,serif;font-size:1.55rem;line-height:1.25;color:#fff;
  padding:.7rem 1rem;border-radius:14px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.1)}
.civic-manifesto-glyph{flex:0 0 auto;width:2.6rem;height:2.6rem;border-radius:50%;display:grid;place-items:center;font-size:1.25rem;background:rgba(240,195,106,.18);border:1px solid rgba(240,195,106,.45)}
.civic-manifesto-motto{margin:1.75rem 0 0;font-family:'Cormorant Garamond',Georgia,serif;font-size:1.6rem;line-height:1.3;letter-spacing:.12em;text-transform:uppercase;font-weight:700;
  background:linear-gradient(90deg,#eedcaf,#e2c383,#c9a24a);-webkit-background-clip:text;background-clip:text;color:transparent}
@media(min-width:768px){.civic-manifesto-motto{font-size:2rem}}

/* ledger (Bill of Rights, Ten Demands) */
.civic-ledger-wrap{padding-top:3rem}
.civic-ledger-intro{font-family:Inter,system-ui,sans-serif;font-size:1.05rem;line-height:1.75;color:rgba(255,255,255,.88);max-width:44rem;margin:0 0 2.25rem;padding-left:1.1rem;border-left:3px solid #e2c383}
.civic-ledger-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.9rem;counter-reset:none}
.civic-article{--tint:#e2c383;position:relative;display:flex;gap:1.1rem;align-items:flex-start;padding:1.2rem 1.4rem 1.2rem 1.2rem;border-radius:18px;
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 24px rgba(0,0,0,.18);overflow:hidden;transition:transform .35s cubic-bezier(.2,.8,.2,1),border-color .35s}
.civic-article::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 0% 50%,color-mix(in srgb,var(--tint) 22%,transparent),transparent 45%);pointer-events:none}
.civic-article::after{content:"";position:absolute;left:0;top:18%;bottom:18%;width:4px;border-radius:4px;background:var(--tint);opacity:.9}
.civic-article:hover{transform:translateX(4px);border-color:color-mix(in srgb,var(--tint) 60%,transparent)}
.civic-article-num{flex:0 0 3.2rem;height:3.2rem;border-radius:50%;display:grid;place-items:center;font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-size:1.45rem;color:#0d3334;font-weight:700;
  background:var(--tint);box-shadow:0 0 0 4px color-mix(in srgb,var(--tint) 25%,transparent);position:relative}
.civic-article-text{position:relative;min-width:0;display:flex;flex-direction:column;gap:.3rem}
.civic-article-title{margin:0;font-family:'Cormorant Garamond',Georgia,serif;font-size:1.4rem;line-height:1.2;color:#fff;font-weight:600}
.civic-article-body{margin:0;font-family:Inter,system-ui,sans-serif;font-size:.95rem;line-height:1.65;color:rgba(255,255,255,.76)}
@media(min-width:768px){.civic-article{padding:1.4rem 1.7rem 1.4rem 1.5rem}.civic-article-title{font-size:1.55rem}}

/* facts row (Town Hall) */
.civic-facts{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:1.5rem}
@media(min-width:768px){.civic-facts{grid-template-columns:repeat(4,1fr)}}
.civic-fact{display:flex;flex-direction:column;gap:.2rem;padding:.9rem 1rem;border-radius:14px;background:rgba(255,255,255,.05);border:1px solid rgba(238,220,175,.25);text-align:center}
.civic-fact-label{font-family:Inter,system-ui,sans-serif;font-size:.62rem;letter-spacing:.25em;text-transform:uppercase;color:#e2c383}
.civic-fact-value{font-family:'Cormorant Garamond',Georgia,serif;font-size:1.25rem;color:#fff;line-height:1.2}
.civic-postcard-plain{margin-top:.25rem}

/* press list */
.civic-press-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1rem}
.civic-press-card{flex-direction:column;gap:.8rem}
@media(min-width:768px){.civic-press-card{flex-direction:row;gap:1.5rem;align-items:flex-start}}
.civic-press-meta{display:flex;flex-direction:row;gap:.6rem;align-items:baseline;flex:0 0 auto;position:relative}
@media(min-width:768px){.civic-press-meta{flex-direction:column;gap:.2rem;width:11rem}}
.civic-press-outlet{font-family:Inter,system-ui,sans-serif;font-size:.74rem;letter-spacing:.2em;text-transform:uppercase;color:var(--tint);font-weight:700}
.civic-press-date{font-family:Inter,system-ui,sans-serif;font-size:.78rem;color:rgba(255,255,255,.55)}

/* ===== Site-wide: Solarpunk section readability ===== */
[data-loc="client/src/components/sections/SolarpunkSection.tsx:22"]{background:linear-gradient(180deg,rgba(8,36,36,.78) 0%,rgba(8,36,36,.62) 45%,rgba(8,36,36,.9) 100%)!important}
[data-loc="client/src/components/sections/SolarpunkSection.tsx:28"]{text-shadow:0 2px 14px rgba(0,0,0,.75)}
[data-loc="client/src/components/sections/SolarpunkSection.tsx:34"]{background:rgba(8,36,36,.62);border:1px solid rgba(238,220,175,.18);border-radius:14px;padding:.65rem .95rem;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);text-shadow:0 1px 6px rgba(0,0,0,.6)}

/* ===== Site-wide: the glass cards, de-boxed ===== */
.solara-glass-card{--tint:#e2c383;position:relative;overflow:hidden;border-radius:20px!important;border:1px solid rgba(255,255,255,.12)!important;
  background:rgba(255,255,255,.055)!important;box-shadow:0 10px 30px rgba(0,0,0,.22)!important;
  transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s,border-color .35s}
.solara-glass-card::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 0% 0%,color-mix(in srgb,var(--tint) 26%,transparent),transparent 55%);pointer-events:none}
.solara-glass-card::after{content:"";position:absolute;left:0;top:14%;bottom:14%;width:4px;border-radius:4px;background:var(--tint);opacity:.9}
.solara-glass-card>*{position:relative}
.solara-glass-card:hover{transform:translateY(-4px) rotate(-.4deg)!important;border-color:color-mix(in srgb,var(--tint) 70%,transparent)!important;
  box-shadow:0 18px 44px rgba(0,0,0,.3),0 0 28px color-mix(in srgb,var(--tint) 35%,transparent)!important}
/* tint cycles through siblings so a grid reads as a hand of cards, not a wall of boxes */
.solara-glass-card:nth-child(5n+1){--tint:#f0c36a}
.solara-glass-card:nth-child(5n+2){--tint:#9fd8c9}
.solara-glass-card:nth-child(5n+3){--tint:#f29b6b}
.solara-glass-card:nth-child(5n+4){--tint:#c9b4f2}
.solara-glass-card:nth-child(5n+5){--tint:#8fc1ec}
/* the emoji glyph gets a tinted coin */
.solara-glass-card>span.text-3xl,.solara-glass-card>span.text-4xl{display:grid;place-items:center;width:3.4rem;height:3.4rem;border-radius:50%;font-size:1.6rem;line-height:1;
  background:color-mix(in srgb,var(--tint) 22%,rgba(255,255,255,.04));border:1px solid color-mix(in srgb,var(--tint) 55%,transparent);
  box-shadow:inset 0 0 18px color-mix(in srgb,var(--tint) 25%,transparent);transition:transform .4s}
.solara-glass-card:hover>span.text-3xl,.solara-glass-card:hover>span.text-4xl{transform:rotate(-8deg) scale(1.08)}
/* titles in the serif, like the rest of the cathedral */
.solara-glass-card>h3.font-\[Inter\]{font-family:'Cormorant Garamond',Georgia,serif!important;font-size:1.5rem!important;line-height:1.15;font-weight:600}
/* the text link at the bottom becomes a soft pill you want to press */
.solara-glass-card>a.text-\[\#e2c383\],.solara-glass-card>span.text-\[\#e2c383\]{display:inline-block;color:#0d3334!important;background:var(--tint);border-radius:999px;padding:.4rem .95rem;font-size:.8rem!important;letter-spacing:.04em;transition:filter .3s}
.solara-glass-card:hover>a.text-\[\#e2c383\],.solara-glass-card:hover>span.text-\[\#e2c383\]{filter:brightness(1.08);color:#0d3334!important}
/* ledger tints (fix: card tints must win over the article default) */
.civic-article.civic-card-0{--tint:#f0c36a}.civic-article.civic-card-1{--tint:#9fd8c9}.civic-article.civic-card-2{--tint:#f29b6b}.civic-article.civic-card-3{--tint:#c9b4f2}.civic-article.civic-card-4{--tint:#8fc1ec}
