/* ============================================================
   FELINE FREEDOM FOUNDATION — Grunge Collage Design System
   Palette kept intentionally: navy / gold-orange / crimson / mint
   on aged paper + charcoal ink. No other palette is used anywhere.
   ============================================================ */

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

:root{
  /* paper */
  --paper:#F8F4E8;
  --paper-dim:#EFE8D6;
  --ink:#09090B;
  --muted:#5c5a52;
  /* brand accents (ours — do not swap for the reference red/gold) */
  --blue:#194796;
  --blue-dim:#0f2f66;
  --gold:#E28F2D;
  --gold-dim:#f9e6d1;
  --crimson:#C44552;
  --crimson-dim:#f2d6d9;
  --mint:#8BD2B6;
  --mint-dim:#e4f5ee;
  /* structure */
  --r-sm:3px;
  --r-md:5px;
}

html{scroll-behavior:smooth}
body{
  font-family:'Space Grotesk',sans-serif;
  color:var(--ink);
  background:var(--paper);
  overflow-x:hidden;
  line-height:1.6;
  font-size:16px;
  position:relative;
}
img{display:block;max-width:100%}
.container{max-width:1240px;margin:0 auto;padding:0 24px}
a{color:inherit}
::selection{background:var(--crimson);color:var(--paper)}

h1,h2,h3,h4,.font-display{
  font-family:'Anton',system-ui,sans-serif;
  text-transform:uppercase;
  letter-spacing:.01em;
  line-height:.94;
  font-weight:400;
}
.mono{font-family:'Space Mono',monospace}
.marker{font-family:'Permanent Marker',cursive;text-transform:none;letter-spacing:0}

/* ============ TEXTURE LAYERS ============ */
.grain{
  position:fixed;inset:0;z-index:9997;pointer-events:none;
  opacity:.16;mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  animation:grain-shift 1s steps(4) infinite;
}
@keyframes grain-shift{
  0%{transform:translate(0,0)} 25%{transform:translate(-2%,1%)}
  50%{transform:translate(1%,-2%)} 75%{transform:translate(-1%,-1%)} 100%{transform:translate(0,0)}
}
.scanlines{
  position:fixed;inset:0;z-index:9996;pointer-events:none;opacity:.05;
  background-image:repeating-linear-gradient(0deg,var(--ink) 0px,var(--ink) 1px,transparent 1px,transparent 3px);
}
@media (prefers-reduced-motion: reduce){ .grain{animation:none} }

.halftone{position:relative;overflow:hidden}
.halftone::after{
  content:'';position:absolute;inset:0;pointer-events:none;
  background-image:radial-gradient(circle,var(--ink) .7px,transparent .8px);
  background-size:6px 6px;opacity:.16;mix-blend-mode:multiply;
}

/* ============ CURSOR ============ */
.cursor{position:fixed;top:0;left:0;width:24px;height:24px;border:2px solid var(--paper);border-radius:0;background:transparent;mix-blend-mode:difference;pointer-events:none;z-index:9999;transform:translate(-50%,-50%) rotate(45deg);transition:width .15s,height .15s,opacity .2s;opacity:0}
.cursor.on{opacity:1}
.cursor.grow{width:46px;height:46px}
@media(pointer:coarse){.cursor{display:none}}

/* ============ JITTER / GLITCH ============ */
@keyframes jitter{
  0%,100%{transform:translate(0,0) rotate(var(--rot,0deg))}
  20%{transform:translate(-1px,1px) rotate(calc(var(--rot,0deg) - .4deg))}
  40%{transform:translate(1px,-1px) rotate(calc(var(--rot,0deg) + .3deg))}
  60%{transform:translate(-1px,-1px) rotate(var(--rot,0deg))}
  80%{transform:translate(1px,1px) rotate(calc(var(--rot,0deg) + .4deg))}
}
.jitter{animation:jitter 1.1s steps(2) infinite}
@keyframes glitch-pop{
  0%{opacity:0;transform:translate(-6px,0)}
  20%{opacity:1;transform:translate(3px,0)}
  40%{transform:translate(-2px,0)}
  60%{transform:translate(2px,0)}
  80%{transform:translate(-1px,0)}
  100%{transform:translate(0,0)}
}
.glitch-in{animation:glitch-pop .5s steps(5) both}
.glitch-text{position:relative;display:inline-block}
.glitch-text::before,.glitch-text::after{
  content:attr(data-text);position:absolute;top:0;left:0;width:100%;overflow:hidden;
  clip-path:inset(0 0 0 0);
}
.glitch-text::before{color:var(--crimson);transform:translate(2px,0);opacity:.6;animation:glitch-slice 3.2s steps(1) infinite}
.glitch-text::after{color:var(--blue);transform:translate(-2px,0);opacity:.5;animation:glitch-slice 2.6s steps(1) infinite reverse}
@keyframes glitch-slice{
  0%,92%,100%{clip-path:inset(0 0 100% 0);transform:translate(0,0)}
  93%{clip-path:inset(10% 0 60% 0);transform:translate(2px,0)}
  95%{clip-path:inset(60% 0 5% 0);transform:translate(-2px,0)}
  97%{clip-path:inset(30% 0 40% 0);transform:translate(1px,0)}
}
@media (prefers-reduced-motion: reduce){
  .jitter,.glitch-in{animation:none}
  .glitch-text::before,.glitch-text::after{animation:none;display:none}
}

/* ============ TORN STRIPS (safe: decorative bars, never clip real content) ============ */
.torn-strip{height:22px;width:100%}
.torn-strip.top{clip-path:polygon(0 100%,5% 0,10% 100%,15% 0,20% 100%,25% 0,30% 100%,35% 0,40% 100%,45% 0,50% 100%,55% 0,60% 100%,65% 0,70% 100%,75% 0,80% 100%,85% 0,90% 100%,95% 0,100% 100%,100% 100%,0 100%)}
.torn-strip.bottom{clip-path:polygon(0 0,100% 0,100% 0,95% 100%,90% 0,85% 100%,80% 0,75% 100%,70% 0,65% 100%,60% 0,55% 100%,50% 0,45% 100%,40% 0,35% 100%,30% 0,25% 100%,20% 0,15% 100%,10% 0,5% 100%,0 0)}

/* ============ TAPE / STAMP DECORATIONS ============ */
.tape{position:absolute;background:var(--gold-dim);border:1px solid var(--ink);opacity:.9;box-shadow:0 1px 2px rgba(0,0,0,.25)}
.stamp{
  width:84px;height:84px;border-radius:50%;border:2px dashed var(--ink);
  display:flex;align-items:center;justify-content:center;text-align:center;
  font-family:'Space Mono',monospace;font-size:10px;font-weight:700;text-transform:uppercase;
  letter-spacing:.04em;line-height:1.3;background:var(--paper);
  box-shadow:2px 2px 0 0 var(--ink);
}

/* ============ HARD BOX / BUTTONS ============ */
.hard{border:2px solid var(--ink);box-shadow:5px 5px 0 0 var(--ink)}
.hard-sm{border:2px solid var(--ink);box-shadow:3px 3px 0 0 var(--ink)}
.hard-lg{border:3px solid var(--ink);box-shadow:9px 9px 0 0 var(--ink)}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:'Space Mono',monospace;font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;text-decoration:none;border-radius:var(--r-sm);border:2px solid var(--ink);padding:15px 28px;transition:transform .1s linear,box-shadow .1s linear;white-space:nowrap}
.btn-primary{background:var(--blue);color:var(--gold);box-shadow:4px 4px 0 0 var(--ink)}
.btn-primary:hover{transform:translate(2px,2px);box-shadow:0 0 0 0 var(--ink)}
.btn-primary:active{transform:translate(4px,4px)}
.btn-outline{background:var(--paper);color:var(--ink);box-shadow:4px 4px 0 0 var(--ink)}
.btn-outline:hover{transform:translate(2px,2px);box-shadow:0 0 0 0 var(--ink);background:var(--gold-dim)}
.btn-outline:active{transform:translate(4px,4px)}
.btn-acid{background:var(--gold);color:var(--ink);box-shadow:4px 4px 0 0 var(--crimson)}
.btn-acid:hover{transform:translate(2px,2px);box-shadow:0 0 0 0 var(--crimson)}
.btn-sm{padding:9px 16px;font-size:11px;border-radius:2px}

/* ============ NAV ============ */
.navwrap{position:sticky;top:14px;z-index:1000;padding:0 16px}
.nav{max-width:1240px;margin:0 auto;background:var(--paper);backdrop-filter:blur(6px);border:2px solid var(--ink);border-radius:var(--r-sm);padding:12px 20px;display:flex;align-items:center;justify-content:space-between;gap:20px;box-shadow:5px 5px 0 0 var(--ink)}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none}
.brand-mark{width:38px;height:38px;border-radius:var(--r-sm);background:var(--blue);color:var(--gold);display:flex;align-items:center;justify-content:center;flex-shrink:0;border:2px solid var(--ink)}
.brand-mark svg{width:20px;height:20px}
.brand-name{font-family:'Anton',sans-serif;font-size:17px;letter-spacing:.01em}
.navlinks{display:flex;align-items:center;gap:2px}
.navlinks a{text-decoration:none;font-family:'Space Mono',monospace;font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.05em;padding:9px 12px;border-radius:2px;transition:background .15s,color .15s}
.navlinks a:hover{background:var(--ink);color:var(--gold)}
.navcta{display:flex;align-items:center;gap:10px}
.hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:8px}
.hamburger span{display:block;width:22px;height:3px;background:var(--ink)}
.mobile-menu{display:none;position:fixed;inset:16px;background:var(--paper);border:2px solid var(--ink);border-radius:var(--r-sm);z-index:1001;flex-direction:column;align-items:center;justify-content:center;gap:10px;box-shadow:8px 8px 0 0 var(--ink)}
.mobile-menu.open{display:flex}
.mob-close{position:absolute;top:18px;right:18px;background:var(--crimson);color:var(--paper);border:2px solid var(--ink);border-radius:2px;width:38px;height:38px;font-size:18px;cursor:pointer}
.mobile-menu a{font-family:'Anton',sans-serif;font-size:24px;text-decoration:none;padding:10px 20px;text-transform:uppercase}

/* ============ TICKER / MARQUEE ============ */
.marquee{overflow:hidden;white-space:nowrap;background:var(--crimson);color:var(--paper);border-top:2px solid var(--ink);border-bottom:2px solid var(--ink);padding:12px 0;position:relative}
.marquee__track{display:inline-flex;gap:36px;animation:marquee 16s steps(140) infinite}
.marquee__track.rev{animation-direction:reverse}
.marquee__group{display:inline-flex;gap:36px;flex-shrink:0}
.marquee span{font-family:'Space Mono',monospace;font-weight:700;font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;display:inline-flex;align-items:center;gap:12px}
@keyframes marquee{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
@media (prefers-reduced-motion: reduce){ .marquee__track{animation-play-state:paused} }

/* ============ SECTION HEAD ============ */
.sec-hd{margin-bottom:46px;position:relative}
.sec-hd .tag{display:inline-flex;align-items:center;gap:6px;background:var(--ink);color:var(--gold);font-family:'Space Mono',monospace;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;padding:6px 14px;border-radius:2px;margin-bottom:16px;transform:rotate(-1deg)}
.sec-hd h2{font-size:clamp(2rem,4.6vw,3.5rem)}
.sec-hd p{color:var(--muted);max-width:560px;font-size:16px;margin-top:14px}

/* ============ HERO ============ */
.hero{padding:44px 0 72px}
.hero__grid{display:grid;grid-template-columns:repeat(12,1fr);gap:28px;align-items:center}
.hero__text{grid-column:span 7;max-width:820px;position:relative}
.hero__eyebrow{margin-bottom:20px}
.hero__eyebrow .tag{display:inline-flex;align-items:center;gap:8px;background:var(--gold);color:var(--ink);border:2px solid var(--ink);border-radius:999px;padding:7px 16px;font-family:'Space Mono',monospace;font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;transform:rotate(-2deg)}
.hero__title{font-size:clamp(2.5rem,6.6vw,6rem);line-height:.96;padding-top:.1em}
.hero__title mark{background:var(--gold);color:var(--ink);padding:0 8px;box-decoration-break:clone;-webkit-box-decoration-break:clone;position:relative}
.hero__sub{font-size:17px;color:var(--muted);max-width:520px;margin:24px 0 32px;line-height:1.7;font-family:'Space Grotesk',sans-serif}
.hero__actions{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.hero__visual{grid-column:span 5;position:relative}
.hero__img-card{border:3px solid var(--ink);overflow:hidden;aspect-ratio:4/5;background:var(--blue);position:relative;box-shadow:9px 9px 0 0 var(--crimson);clip-path:polygon(0 2%,3% 0,97% 1%,100% 3%,99% 97%,96% 100%,4% 99%,0 96%)}
.hero__img-card img{width:100%;height:100%;object-fit:cover;filter:grayscale(.15) contrast(1.08)}
.hero__float{position:absolute;left:0;right:0;margin:0 auto;width:max-content;bottom:-26px;background:var(--paper);border:2px solid var(--ink);border-radius:var(--r-sm);padding:12px 18px 12px 12px;box-shadow:6px 6px 0 0 var(--ink);--rot:-3deg;display:flex;align-items:center;gap:12px;z-index:2}
.hero__float-img{width:46px;height:46px;border-radius:var(--r-sm);object-fit:cover;border:2px solid var(--ink);flex-shrink:0;background:var(--crimson)}
.hero__float b{display:block;font-family:'Anton',sans-serif;font-size:15px;margin-bottom:2px;text-transform:uppercase}
.hero__float span{font-size:11px;color:var(--muted);font-family:'Space Mono',monospace}
.hero__stamp{position:absolute;top:-16px;right:18px;transform:rotate(9deg);z-index:2}

/* ============ MISSION QUOTE ============ */
.mission-quote{padding:76px 0;position:relative}
.mq-box{max-width:900px;margin:0 auto;text-align:center;position:relative;padding:0 50px}
.mq-text{font-family:'Anton',sans-serif;font-size:clamp(1.6rem,4vw,3rem);line-height:1.22;position:relative;z-index:1;text-transform:uppercase}
.mq-text .hl{background:var(--crimson);color:var(--paper);padding:2px 10px;display:inline-block;transform:rotate(-1deg)}
.mq-chip{position:absolute;width:52px;height:52px;background:var(--mint);border:2px solid var(--ink);--rot:6deg;z-index:0}
.mq-chip-1{top:-8px;left:-6px}
.mq-chip-2{bottom:-14px;right:-6px;background:var(--gold);--rot:-8deg}

/* ============ PROGRAMS BENTO ============ */
.programs{padding:76px 0}
.bento{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(2,180px);gap:18px}
.b-card{border:2px solid var(--ink);padding:26px;position:relative;overflow:hidden;transition:transform .15s,box-shadow .15s;box-shadow:5px 5px 0 0 var(--ink);display:flex;flex-direction:column;justify-content:flex-end}
.b-card:hover{transform:translate(4px,4px);box-shadow:0 0 0 0 var(--ink)}
.b-large{grid-column:span 2;grid-row:span 2;background:var(--blue);color:var(--paper)}
.b-large::before{content:'';position:absolute;inset:0;opacity:.5;mix-blend-mode:overlay;background-image:radial-gradient(var(--gold) 1.5px,transparent 1.5px);background-size:24px 24px}
.b-large::after{content:'';position:absolute;top:-40px;right:-40px;width:200px;height:200px;border-radius:50%;background:var(--crimson);opacity:.28}
.b-large .b-icon{position:relative;z-index:1;width:60px;height:60px}
.b-large .b-icon svg{width:28px;height:28px}
.b-small{grid-column:span 2;background:var(--paper)}
.b-small.halftone::after{opacity:.1}
.b-num{font-family:'Space Mono',monospace;font-size:12px;opacity:.6;margin-bottom:auto;position:relative;z-index:1}
.b-icon{width:42px;height:42px;border-radius:2px;background:var(--gold);color:var(--ink);display:flex;align-items:center;justify-content:center;margin-bottom:14px;position:relative;z-index:1;border:2px solid var(--ink)}
.b-large .b-icon{background:var(--gold)}
.b-title{font-family:'Anton',sans-serif;font-size:21px;margin-bottom:8px;position:relative;z-index:1;text-transform:uppercase}
.b-large .b-title{font-size:30px}
.b-desc{font-size:14px;line-height:1.6;position:relative;z-index:1;font-family:'Space Grotesk',sans-serif}
.b-small .b-desc{color:var(--muted)}
.b-large .b-desc{color:rgba(248,244,232,.75)}

/* ============ FOUNDER ============ */
.founder{padding:76px 0}
.founder-card{max-width:920px;margin:0 auto;display:grid;grid-template-columns:190px 1fr;gap:38px;align-items:center;background:var(--paper);border:3px solid var(--ink);padding:42px;box-shadow:9px 9px 0 0 var(--ink);position:relative}
.founder-photo{width:160px;height:160px;border-radius:var(--r-sm);background:var(--blue);border:2px solid var(--ink);display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative}
.founder-photo img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.founder-photo b{font-family:'Anton',sans-serif;font-size:42px;color:var(--gold)}
.founder-role{display:inline-block;background:var(--gold);border:2px solid var(--ink);border-radius:999px;padding:5px 14px;font-family:'Space Mono',monospace;font-size:11px;font-weight:700;text-transform:uppercase;margin-bottom:12px;transform:rotate(-1deg)}
.founder-name{font-size:26px;margin-bottom:14px}
.founder-bio{font-size:15px;color:var(--muted);line-height:1.85;font-family:'Space Grotesk',sans-serif}

/* ============ CATS ============ */
.cats{padding:76px 0}
.cats-hd{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:34px;flex-wrap:wrap}
.scroll-arrows{display:flex;gap:10px}
.arrow-btn{width:44px;height:44px;border-radius:2px;background:var(--blue);color:var(--gold);border:2px solid var(--ink);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:3px 3px 0 0 var(--ink);transition:transform .1s,box-shadow .1s}
.arrow-btn:hover{transform:translate(1px,1px);box-shadow:0 0 0 0 var(--ink)}
.cats-track{display:flex;gap:20px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;padding-bottom:8px}
.cats-track::-webkit-scrollbar{display:none}
.cat-card{flex:0 0 300px;border:2px solid var(--ink);overflow:hidden;background:var(--paper);box-shadow:6px 6px 0 0 var(--ink)}
.cat-card__img{aspect-ratio:1/1;background:var(--gold);position:relative;overflow:hidden}
.cat-card__img img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;filter:contrast(1.08) saturate(1.05)}
.cat-card.adopted .cat-card__img img{filter:grayscale(1);opacity:.6}
.cat-fallback{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:var(--ink);opacity:.65}
.cat-fallback svg{width:36px;height:36px}
.cat-fallback span{font-size:11px;font-weight:700;text-transform:uppercase;font-family:'Space Mono',monospace}
.status-tag{position:absolute;top:12px;left:12px;background:var(--crimson);color:var(--paper);border:2px solid var(--ink);font-family:'Space Mono',monospace;font-size:10.5px;font-weight:700;text-transform:uppercase;padding:4px 10px;border-radius:999px;z-index:2}
.status-tag.adopted{background:var(--paper);color:var(--ink);border:2px solid var(--ink)}
.cat-card__body{padding:15px 17px}
.cat-card__name{font-family:'Anton',sans-serif;font-size:19px;margin-bottom:2px;text-transform:uppercase}
.cat-card__meta{font-size:12.5px;color:var(--muted);font-family:'Space Mono',monospace}
.cats-note{margin-top:30px;font-size:14px;color:var(--muted);font-family:'Space Grotesk',sans-serif}
.cats-note a{color:var(--ink);font-weight:700;text-decoration:underline}

/* ============ VALUES ============ */
.values{padding:76px 0}
.val-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.val-card{border:2px solid var(--ink);padding:25px;box-shadow:4px 4px 0 0 var(--ink);transition:transform .15s,box-shadow .15s;position:relative}
.val-card:hover{transform:translate(4px,4px);box-shadow:0 0 0 0 var(--ink)}
.val-card:nth-child(1){background:var(--paper)}
.val-card:nth-child(2){background:var(--crimson);color:var(--paper)}
.val-card:nth-child(3){background:var(--blue);color:var(--paper)}
.val-card:nth-child(4){background:var(--mint);color:var(--ink)}
.val-icon{width:38px;height:38px;border-radius:2px;background:var(--blue);color:var(--gold);border:2px solid var(--ink);display:flex;align-items:center;justify-content:center;margin-bottom:15px}
.val-card:nth-child(2) .val-icon,.val-card:nth-child(4) .val-icon{background:var(--paper);color:var(--ink)}
.val-title{font-family:'Anton',sans-serif;font-size:17px;margin-bottom:8px;text-transform:uppercase}
.val-desc{font-size:14px;line-height:1.7;font-family:'Space Grotesk',sans-serif}
.val-card:nth-child(1) .val-desc{color:var(--muted)}
.val-card:nth-child(2) .val-desc{color:rgba(248,244,232,.85)}
.val-card:nth-child(3) .val-desc{color:rgba(248,244,232,.7)}
.val-card:nth-child(4) .val-desc{color:rgba(9,9,11,.65)}

/* ============ CTA ============ */
.cta{padding:86px 0}
.cta-box{background:var(--ink);color:var(--paper);padding:60px 40px;text-align:center;position:relative;overflow:hidden;border:3px solid var(--ink)}
.cta-box::before{content:'';position:absolute;inset:0;opacity:.3;background-image:radial-gradient(var(--gold) 1.5px,transparent 1.5px);background-size:24px 24px}
.cta-box::after{content:'';position:absolute;bottom:-60px;left:-60px;width:220px;height:220px;background:var(--crimson);opacity:.25;border-radius:50%}
.cta-box>*{position:relative;z-index:1}
.cta-box h2{font-size:clamp(2rem,5vw,3.5rem);margin-bottom:18px}
.cta-box p{color:rgba(248,244,232,.65);max-width:520px;margin:0 auto 32px;font-size:16px;line-height:1.7;font-family:'Space Grotesk',sans-serif}

/* ============ FOOTER ============ */
.footer{background:var(--ink);color:var(--paper);padding:60px 0 26px;margin-top:20px}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1.3fr;gap:44px;padding-bottom:42px;border-bottom:2px solid rgba(248,244,232,.15)}
.f-brand{display:flex;align-items:center;gap:10px;margin-bottom:16px;text-decoration:none}
.f-desc{font-size:14px;color:rgba(248,244,232,.55);line-height:1.8;font-family:'Space Grotesk',sans-serif}
.f-col-title{font-family:'Space Mono',monospace;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin-bottom:18px}
.f-links{list-style:none;display:flex;flex-direction:column;gap:11px}
.f-links a{color:rgba(248,244,232,.6);text-decoration:none;font-size:12.5px;text-transform:uppercase;letter-spacing:.04em;font-family:'Space Mono',monospace;transition:color .15s}
.f-links a:hover{color:var(--gold)}
.f-info{display:flex;flex-direction:column;gap:8px}
.f-info span,.f-info a{font-size:13px;color:rgba(248,244,232,.6);text-decoration:none;line-height:1.6;font-family:'Space Grotesk',sans-serif}
.f-info a:hover{color:var(--gold)}
.newsletter{margin-top:20px;display:flex;gap:0;border:2px solid rgba(248,244,232,.4);border-radius:2px;overflow:hidden}
.newsletter input{flex:1;background:transparent;border:none;padding:12px 14px;color:var(--paper);font-family:'Space Grotesk',sans-serif;font-size:13px;outline:none}
.newsletter input::placeholder{color:rgba(248,244,232,.4)}
.newsletter button{background:var(--gold);color:var(--ink);border:none;padding:12px 18px;font-family:'Space Mono',monospace;font-weight:700;font-size:12px;cursor:pointer;text-transform:uppercase}
.footer-bottom{margin-top:24px;text-align:center;font-family:'Space Mono',monospace;font-size:10.5px;color:rgba(248,244,232,.35);letter-spacing:.03em}

/* ============ INNER PAGE BANNER (contact/donate/legal) ============ */
.banner{padding:18px 0 40px}
.back{display:inline-flex;align-items:center;gap:7px;font-family:'Space Mono',monospace;font-size:12px;font-weight:700;text-decoration:none;margin-bottom:20px;text-transform:uppercase;letter-spacing:.04em}
.banner h1{font-size:clamp(2rem,5vw,3.6rem)}
.banner p{color:var(--muted);margin-top:10px;font-size:14px;font-family:'Space Grotesk',sans-serif}
.navbtn{display:inline-flex;align-items:center;gap:8px;font-family:'Space Mono',monospace;font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;text-decoration:none;border-radius:2px;border:2px solid var(--ink);padding:9px 16px;background:var(--blue);color:var(--gold);box-shadow:4px 4px 0 0 var(--ink);transition:transform .1s,box-shadow .1s}
.navbtn:hover{transform:translate(2px,2px);box-shadow:0 0 0 0 var(--ink)}

/* ============ CONTACT PAGE ============ */
.body{padding:20px 0 90px}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:start}
.form-card{background:var(--paper);border:2px solid var(--ink);padding:32px;box-shadow:7px 7px 0 0 var(--ink)}
.field{margin-bottom:18px}
.field label{display:block;font-family:'Space Mono',monospace;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px}
.field input,.field textarea{width:100%;padding:12px 14px;border:2px solid var(--ink);border-radius:2px;font-family:'Space Grotesk',sans-serif;font-size:15px;background:#fff;outline:none}
.field textarea{min-height:120px;resize:vertical}
.submit{width:100%;padding:14px;background:var(--blue);color:var(--gold);border:2px solid var(--ink);border-radius:2px;font-family:'Space Mono',monospace;font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;box-shadow:4px 4px 0 0 var(--ink);transition:transform .1s,box-shadow .1s}
.submit:hover{transform:translate(2px,2px);box-shadow:0 0 0 0 var(--ink)}
.info h3{font-family:'Anton',sans-serif;font-size:21px;margin-bottom:16px;text-transform:uppercase}
.info>p{color:var(--muted);font-size:15px;line-height:1.75;margin-bottom:24px;font-family:'Space Grotesk',sans-serif}
.ci{display:flex;gap:14px;margin-bottom:20px;align-items:flex-start}
.ci-icon{width:42px;height:42px;border-radius:2px;background:var(--gold);border:2px solid var(--ink);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.ci-label{font-family:'Space Mono',monospace;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:3px}
.ci-value{font-size:15px;font-weight:500;font-family:'Space Grotesk',sans-serif}
.ci-value a{text-decoration:none;font-weight:700}
.donate-box{background:var(--ink);color:var(--paper);border:2px solid var(--ink);padding:22px;margin-top:6px}
.donate-box h4{font-family:'Space Mono',monospace;font-size:13px;color:var(--gold);margin-bottom:8px;font-weight:700;text-transform:uppercase}
.donate-box p{font-size:14px;color:rgba(248,244,232,.7);line-height:1.7;font-family:'Space Grotesk',sans-serif}

/* ============ DONATE PAGE ============ */
.donate-hero{padding:8px 0 36px;text-align:center}
.donate-hero .tag{display:inline-flex;align-items:center;gap:8px;background:var(--gold);border:2px solid var(--ink);border-radius:999px;padding:6px 16px;font-family:'Space Mono',monospace;font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin-bottom:20px;transform:rotate(-1deg)}
.donate-hero h1{font-size:clamp(2.2rem,5.5vw,4.2rem);max-width:820px;margin:0 auto 18px}
.donate-hero h1 mark{background:var(--crimson);color:var(--paper);padding:0 8px;display:inline-block}
.donate-hero p{max-width:560px;margin:0 auto;color:var(--muted);font-size:16px;line-height:1.75;font-family:'Space Grotesk',sans-serif}
.donate-wrap{padding:0 0 90px}
.donate-card{max-width:640px;margin:0 auto;background:var(--paper);border:3px solid var(--ink);padding:38px;box-shadow:10px 10px 0 0 var(--ink)}
.freq-toggle{display:flex;border:2px solid var(--ink);border-radius:999px;padding:4px;margin-bottom:26px;background:var(--paper)}
.freq-btn{flex:1;text-align:center;padding:11px 0;border-radius:999px;font-family:'Space Mono',monospace;font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.03em;cursor:pointer;border:none;background:transparent;color:var(--ink);transition:background .15s,color .15s}
.freq-btn.active{background:var(--blue);color:var(--gold)}
.amount-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:20px}
.amount-btn{border:2px solid var(--ink);border-radius:2px;padding:16px 8px;background:var(--paper);cursor:pointer;text-align:center;transition:transform .1s,box-shadow .1s;box-shadow:3px 3px 0 0 var(--ink)}
.amount-btn:hover{transform:translate(2px,2px);box-shadow:0 0 0 0 var(--ink)}
.amount-btn.active{background:var(--gold);box-shadow:3px 3px 0 0 var(--crimson)}
.amount-val{font-family:'Anton',sans-serif;font-size:17px;display:block}
.custom-field{margin-bottom:26px}
.donate-submit{width:100%;padding:17px;background:var(--blue);color:var(--gold);border:2px solid var(--ink);border-radius:2px;font-family:'Space Mono',monospace;font-weight:700;font-size:14px;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;box-shadow:5px 5px 0 0 var(--ink);transition:transform .1s,box-shadow .1s;display:flex;align-items:center;justify-content:center;gap:10px}
.donate-submit:hover{transform:translate(3px,3px);box-shadow:0 0 0 0 var(--ink)}
.donate-submit:active{transform:translate(5px,5px)}
.trust-row{display:flex;flex-wrap:wrap;justify-content:center;gap:18px;margin-top:22px}
.trust-item{display:flex;align-items:center;gap:7px;font-family:'Space Mono',monospace;font-size:11.5px;color:var(--muted);font-weight:700;text-transform:uppercase}
.notice{max-width:640px;margin:22px auto 0;background:var(--gold-dim);border:2px solid var(--ink);padding:16px 20px;font-size:13.5px;color:var(--ink);line-height:1.65;display:none;font-family:'Space Grotesk',sans-serif}
.notice.show{display:block}
.notice strong{display:block;margin-bottom:3px;font-family:'Space Mono',monospace;font-size:11px;text-transform:uppercase;letter-spacing:.05em}
.founder-note{max-width:640px;margin:34px auto 0;display:flex;gap:16px;align-items:center;padding:22px;border:2px solid var(--ink);background:var(--blue);color:var(--paper)}
.founder-note .fn-photo{width:52px;height:52px;border-radius:2px;background:var(--gold);color:var(--ink);display:flex;align-items:center;justify-content:center;font-family:'Anton',sans-serif;font-size:18px;flex-shrink:0;border:2px solid var(--ink)}
.founder-note p{font-size:14px;line-height:1.6;font-family:'Space Grotesk',sans-serif}
.founder-note p b{font-family:'Space Grotesk',sans-serif}

/* ============ LEGAL PAGES — kept calm & readable on purpose ============ */
.content-card{max-width:800px;margin:0 auto;background:var(--paper);border:2px solid var(--ink);padding:44px;box-shadow:7px 7px 0 0 var(--ink)}
.content-card h2{font-family:'Anton',sans-serif;font-size:19px;text-transform:uppercase;letter-spacing:0;margin:36px 0 12px;padding-top:22px;border-top:2px solid var(--ink)}
.content-card h2:first-child{margin-top:0;padding-top:0;border-top:none}
.content-card p{font-size:15px;color:var(--muted);line-height:1.85;margin-bottom:14px;font-family:'Space Grotesk',sans-serif}
.content-card ul{padding-left:20px;margin-bottom:16px}
.content-card ul li{font-size:15px;color:var(--muted);line-height:1.8;margin-bottom:8px;font-family:'Space Grotesk',sans-serif}
.content-card a{color:var(--ink);text-decoration:underline;font-weight:700}
.highlight{background:var(--gold-dim);border:2px solid var(--ink);padding:20px 22px;margin-bottom:8px;font-size:15px;line-height:1.7;font-family:'Space Grotesk',sans-serif}
.highlight strong{display:block;margin-bottom:4px;font-family:'Space Mono',monospace;font-size:12px;text-transform:uppercase;letter-spacing:.05em;font-weight:700}

/* ============ RESPONSIVE ============ */
@media(max-width:1024px){
  .hero__grid{grid-template-columns:1fr}
  .hero__text,.hero__visual{grid-column:span 1}
  .hero__visual{margin-top:44px;max-width:400px}
  .bento{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(3,180px)}
  .b-large{grid-column:span 2}
  .b-small{grid-column:span 1}
  .val-grid{grid-template-columns:repeat(2,1fr)}
  .footer-grid{grid-template-columns:1fr 1fr;gap:36px}
  .footer-grid>div:first-child{grid-column:1/-1}
  .grid{grid-template-columns:1fr}
}
@media(max-width:768px){
  .navlinks,.navcta .btn:not(.btn-sm){display:none}
  .hamburger{display:flex}
  .founder-card{grid-template-columns:1fr;text-align:center;justify-items:center}
  .footer-grid{grid-template-columns:1fr;gap:28px}
  .footer-grid>div:first-child{grid-column:auto}
  .content-card{padding:28px}
}
@media(max-width:480px){
  .hero__actions{flex-direction:column;align-items:stretch}
  .val-grid{grid-template-columns:1fr}
  .bento{grid-template-columns:1fr;grid-template-rows:repeat(4,180px)}
  .b-large{grid-column:span 1;grid-row:span 1;min-height:220px}
  .amount-grid{grid-template-columns:repeat(3,1fr)}
  .founder-note{flex-direction:column;text-align:center}
  .donate-card{padding:26px}
}
