@font-face { font-family: "Norwester"; src: url("assets/norwester.woff") format("woff"); font-display: swap; }
:root { color-scheme:dark; --bg:#010207; --panel:#071126; --ink:#f8f4ec; --muted:#9ca9bf; --mint:#d9e7ff; --red:#ff4b45; --blue:#246bff; --blue-bright:#63a0ff; --blue-deep:#082d80; --line:rgba(74,128,255,.22); --shell:min(1120px,calc(100% - 40px)); --display:"Norwester",Impact,sans-serif; --body:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
* { box-sizing:border-box; }
@property --edge-angle { syntax:"<angle>"; initial-value:0deg; inherits:false; }
html { scroll-behavior:smooth; background:var(--bg); }
body { margin:0; min-width:320px; overflow-x:hidden; background:var(--bg); color:var(--ink); font-family:var(--body); font-weight:700; letter-spacing:.008em; }
body::before,body::after { content:""; position:fixed; z-index:0; inset:0; pointer-events:none; }
body::before { background:radial-gradient(circle at 14% 12%,rgba(36,107,255,.105),transparent 23rem),radial-gradient(circle at 86% 34%,rgba(22,63,165,.075),transparent 22rem),radial-gradient(circle at 54% 82%,rgba(255,75,69,.04),transparent 21rem); animation:ambient 12s ease-in-out infinite alternate; }
body::after { opacity:.46; background-image:radial-gradient(circle,rgba(99,160,255,.95) 0 1px,transparent 1.7px),radial-gradient(circle,rgba(255,75,69,.86) 0 1px,transparent 1.7px),radial-gradient(circle,rgba(255,255,255,.5) 0 1px,transparent 1.6px),radial-gradient(circle,rgba(45,113,255,.82) 0 1px,transparent 1.8px),radial-gradient(circle,rgba(255,91,82,.68) 0 1px,transparent 1.7px); background-size:118px 139px,157px 181px,219px 197px,273px 241px,331px 287px; background-position:18px 24px,74px 102px,152px 42px,208px 156px,31px 226px; animation:sparkle 8s ease-in-out infinite alternate; }
header,main,footer { position:relative; z-index:1; }
a { color:inherit; }
img { display:block; max-width:100%; }
.shell { width:var(--shell); margin-inline:auto; }
.site-header { display:flex; align-items:center; justify-content:space-between; min-height:70px; border-bottom:1px solid var(--line); }
.libr8aid-brand { display:inline-flex; align-items:center; gap:10px; text-decoration:none; font:26px/1 var(--display); letter-spacing:.06em; }
.libr8aid-brand>span:last-child>span,.footer-brand span { color:var(--blue); }
.brand-mark { position:relative; display:block; width:40px; height:40px; overflow:hidden; border:1px solid rgba(74,143,255,.48); border-radius:50%; background:#000; transition:transform .3s ease,box-shadow .3s ease; }
.brand-mark img { position:absolute; width:337.5%; max-width:none; left:-111.25%; top:-39.7%; }
.libr8aid-brand:hover .brand-mark { transform:rotate(8deg); box-shadow:0 0 20px rgba(40,124,255,.34); }
.site-header nav { display:flex; align-items:center; gap:24px; }
.site-header nav a { text-decoration:none; color:#d8ddd9; font:.92rem/1 var(--display); letter-spacing:.07em; text-transform:uppercase; }
.site-header nav a[aria-current="page"] { color:var(--blue); text-shadow:0 0 15px rgba(40,124,255,.28); }
.nav-contact { padding:10px 16px; border:1px solid var(--line); border-radius:999px; }
.nav-contact:hover { border-color:var(--red); background:var(--red); }
.hero { padding:12px 0 9px; }
.video-frame { position:relative; overflow:hidden; border:1px solid rgba(74,143,255,.38); border-radius:12px; background:#000; box-shadow:0 0 0 1px rgba(40,124,255,.08),0 0 44px rgba(40,124,255,.2),0 22px 70px rgba(0,0,0,.5); }
.video-frame::before { content:""; position:absolute; z-index:3; inset:0; padding:1.5px; border-radius:inherit; background:conic-gradient(from var(--edge-angle),transparent 0 60%,rgba(255,75,69,.08) 65%,rgba(255,75,69,.58) 73%,#ff6a61 81%,rgba(255,75,69,.48) 87%,rgba(255,75,69,.16) 92%,transparent 96%); -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0); -webkit-mask-composite:xor; mask-composite:exclude; filter:drop-shadow(0 0 5px rgba(255,75,69,.65)); animation:edge-run 4.8s linear infinite; pointer-events:none; }
.video-frame::after { content:""; position:absolute; inset:0; pointer-events:none; box-shadow:inset 0 0 44px rgba(40,124,255,.08); }
.video-frame video { display:block; width:100%; max-height:min(64vh,690px); object-fit:contain; background:#000; }
.sound-toggle { position:absolute; z-index:2; top:12px; right:12px; display:grid; place-items:center; width:36px; height:36px; padding:0; border:1px solid rgba(255,255,255,.24); border-radius:50%; background:rgba(2,6,18,.84); color:var(--mint); cursor:pointer; backdrop-filter:blur(9px); transition:transform .2s ease,background .2s ease; }
.sound-toggle:hover { transform:scale(1.06); background:var(--blue); color:#fff; }
.sound-toggle span { position:absolute; font:900 .82rem/1 Arial,sans-serif; }
.sound-on { box-shadow:0 0 10px currentColor; border-radius:50%; }
.sound-off { transform:translate(5px,5px); font-size:.72rem!important; }
.sound-toggle[aria-pressed="true"] .sound-off { display:none; }
.hero-copy { display:grid; grid-template-columns:minmax(0,.95fr) minmax(320px,1.05fr); grid-template-areas:"identity lede" "actions actions"; align-items:end; column-gap:32px; row-gap:10px; padding-top:15px; }
.identity { grid-area:identity; display:flex; align-items:center; gap:14px; min-width:0; }
.identity img { flex:0 0 auto; width:76px; height:76px; border:1px solid rgba(74,143,255,.38); border-radius:50%; object-fit:cover; box-shadow:0 0 26px rgba(40,124,255,.22); }
.eyebrow { margin:0 0 6px; color:var(--red); font-size:.7rem; font-weight:900; letter-spacing:.17em; text-transform:uppercase; }
.eyebrow span { display:inline-block; width:7px; height:7px; margin-right:8px; border-radius:50%; background:var(--red); box-shadow:0 0 16px var(--red); animation:pulse 1.8s ease-in-out infinite; }
h1,h2,h3 { margin:0; font-family:var(--display); font-weight:400; text-transform:uppercase; }
h1 { font-size:clamp(2.8rem,5.4vw,5.4rem); line-height:.85; letter-spacing:.01em; }
h1 em,h2 em { color:#64a5ff; font-style:normal; text-shadow:0 0 24px rgba(40,124,255,.18); }
.lede { grid-area:lede; align-self:end; margin:0; color:var(--muted); font-size:1rem; line-height:1.5; }
.hero-actions { grid-area:actions; display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:5px; align-self:start; }
.hero-actions>*:nth-child(1),.hero-actions>*:nth-child(2) { grid-column:span 3; }
.hero-actions>*:nth-child(n+3) { grid-column:span 3; }
.hero-actions .button { min-height:39px; padding:6px 9px; }
.button { position:relative; overflow:hidden; display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:45px; padding:8px 12px; border:1px solid transparent; border-radius:7px; color:var(--ink); text-align:center; text-decoration:none; font:clamp(.72rem,1vw,.9rem)/1 var(--display); letter-spacing:.045em; text-transform:uppercase; cursor:pointer; transition:transform .2s ease,border-color .2s ease,background .2s ease,box-shadow .2s ease; }
.button>span { position:relative; z-index:3; }
.button-primary::after,.button-crypto::after,.button-social::after { content:""; position:absolute; z-index:2; inset:0; padding:1.3px; border-radius:inherit; -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0); -webkit-mask-composite:xor; mask-composite:exclude; pointer-events:none; animation:edge-run 4.4s linear infinite; }
.button-primary::after,.button-crypto::after { background:conic-gradient(from var(--edge-angle),transparent 0 61%,rgba(255,75,69,.12) 68%,#ff756d 78%,rgba(255,75,69,.5) 85%,transparent 93%); filter:drop-shadow(0 0 4px rgba(255,75,69,.58)); }
.button-social::after { background:conic-gradient(from var(--edge-angle),transparent 0 61%,rgba(36,107,255,.14) 68%,#76a8ff 78%,rgba(36,107,255,.54) 85%,transparent 93%); filter:drop-shadow(0 0 4px rgba(36,107,255,.62)); }
.button-primary { background:var(--blue); color:#fff; box-shadow:0 0 20px rgba(40,124,255,.16); }
.button-secondary { border-color:rgba(74,143,255,.25); background:#061022; }
.button-crypto { border-color:#5e94ff; background:var(--blue); color:#fff; box-shadow:0 0 22px rgba(36,107,255,.23); }
.button.button-crypto:hover { border-color:#ff9a94; background:var(--red); color:#fff; box-shadow:0 9px 28px rgba(255,75,69,.3); }
.button-social { border-color:#ff7169; background:var(--red); color:#fff; box-shadow:0 0 18px rgba(255,75,69,.16); }
.button.button-social:hover { border-color:#8bb4ff; background:var(--blue); color:#fff; box-shadow:0 9px 28px rgba(36,107,255,.3); }
.button:hover { transform:translateY(-2px); border-color:var(--red); background:var(--red); color:#fff; box-shadow:0 9px 26px rgba(239,77,85,.22); }
.work { padding-block:12px 7px; }
.section-heading { display:grid; grid-template-columns:1.15fr .85fr; align-items:end; gap:34px; margin-bottom:14px; }
.section-heading h2,.final-cta h2 { font-size:clamp(2.5rem,5vw,4.8rem); line-height:.92; }
.section-heading>p { margin:0; color:var(--muted); font-size:.9rem; line-height:1.55; transform:translateY(3px); }
.media-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; align-items:start; }
.media-card { position:relative; overflow:hidden; height:clamp(390px,52vw,600px); margin:0; border:1px solid rgba(255,75,69,.26); border-radius:10px; background:#000; box-shadow:0 0 24px rgba(40,124,255,.07); }
.media-card::before { content:""; position:absolute; z-index:2; inset:0; padding:1.5px; border-radius:inherit; background:conic-gradient(from var(--edge-angle),transparent 0 66%,rgba(255,75,69,.06) 71%,rgba(255,75,69,.65) 77%,#ff7169 80%,rgba(255,75,69,.2) 85%,transparent 90%); -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0); -webkit-mask-composite:xor; mask-composite:exclude; filter:drop-shadow(0 0 4px rgba(255,75,69,.55)); animation:edge-run 5.8s linear infinite; pointer-events:none; }
.media-card img { width:100%; height:100%; object-fit:contain; }
.media-card figcaption { position:absolute; left:10px; bottom:10px; padding:6px 9px; border:1px solid rgba(74,143,255,.3); border-radius:999px; background:rgba(2,6,18,.86); color:#8cbdff; font:.72rem/1 var(--display); letter-spacing:.08em; text-transform:uppercase; backdrop-filter:blur(8px); }
.care-list { grid-column:1/-1; grid-row:2; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; }
.care-list article { display:grid; grid-template-columns:36px 1fr; gap:9px; align-items:center; min-height:88px; padding:9px 11px; border:1px solid rgba(74,143,255,.2); border-radius:10px; background:linear-gradient(135deg,rgba(40,124,255,.12),rgba(7,18,37,.96)); }
.care-list article>span { display:grid; place-items:center; width:36px; height:36px; border-radius:50%; background:var(--red); color:#fff; font:900 1.5rem/1 Arial,sans-serif; box-shadow:0 0 18px rgba(255,75,69,.25); }
.care-list h3 { font-size:clamp(1.5rem,2.6vw,2.3rem); }
.care-list p { margin:5px 0 0; color:var(--muted); font-size:.8rem; line-height:1.4; }
.doctor-actions { grid-column:1/-1; grid-row:3; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; }
.doctor-actions .button { min-height:39px; padding:6px 10px; }
.final-cta { position:relative; isolation:isolate; display:grid; grid-template-columns:78px minmax(0,1fr) 78px; grid-template-rows:auto auto; gap:7px 16px; align-items:center; margin-top:3px; margin-bottom:14px; padding:12px 14px; border:1px solid rgba(255,75,69,.42); border-radius:11px; background:linear-gradient(100deg,rgba(36,107,255,.2),rgba(11,38,95,.38)); box-shadow:0 0 30px rgba(36,107,255,.13); }
.final-cta::before { content:""; position:absolute; z-index:3; inset:-1px; padding:2px; border-radius:inherit; background:conic-gradient(from var(--edge-angle),transparent 0 62%,rgba(255,75,69,.08) 69%,rgba(255,75,69,.72) 76%,#ff7169 80%,rgba(255,75,69,.22) 86%,transparent 92%); -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0); -webkit-mask-composite:xor; mask-composite:exclude; filter:drop-shadow(0 0 5px rgba(255,75,69,.56)); animation:edge-run 5.2s linear infinite; pointer-events:none; }
.hope-logo { width:76px; height:76px; border:1px solid rgba(99,160,255,.34); border-radius:50%; object-fit:cover; box-shadow:0 0 22px rgba(36,107,255,.16); }
.logo-light { grid-column:1; grid-row:1; justify-self:start; align-self:center; }
.logo-dark { grid-column:3; grid-row:1; justify-self:end; align-self:center; }
.final-cta>div:nth-child(2) { grid-column:2; grid-row:1; justify-self:center; text-align:center; }
.final-cta h2 { font-size:clamp(2rem,3.8vw,3.7rem); }
.final-cta h2,.final-cta h2 em { color:var(--red); text-shadow:0 0 22px rgba(255,75,69,.2); }
.cta-actions { grid-column:2; grid-row:2; justify-self:center; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; width:min(100%,520px); }
.share-button { width:100%; font-family:var(--display); }
.site-footer { padding-block:26px; border-top:1px solid var(--line); background:#030403; }
.footer-grid { display:grid; grid-template-columns:1fr auto auto; align-items:center; gap:40px; }
.footer-brand { font:25px/1 var(--display); letter-spacing:.06em; text-decoration:none; }
.footer-grid p { margin:8px 0 0; color:#707771; font-size:.76rem; }
.footer-links { display:grid; gap:8px; }
.footer-links a { color:var(--muted); text-decoration:none; font-size:.78rem; }
.footer-contact { display:inline-flex; gap:16px; align-items:center; text-decoration:none; font-size:.84rem; }
.footer-contact span { color:var(--blue); }
.wallet-modal[hidden] { display:none; }
.wallet-modal { position:fixed; z-index:100; inset:0; display:grid; place-items:center; padding:18px; }
.modal-backdrop { position:absolute; inset:0; background:rgba(0,0,0,.82); backdrop-filter:blur(8px); }
.modal-panel { position:relative; z-index:1; width:min(760px,100%); max-height:calc(100vh - 36px); overflow:auto; padding:18px; border:1px solid rgba(255,156,63,.65); border-radius:13px; background:linear-gradient(145deg,#071328,#02040b); box-shadow:0 24px 80px rgba(0,0,0,.68),0 0 34px rgba(242,122,24,.14); }
.modal-panel h2 { font-size:clamp(2.5rem,5vw,4.6rem); line-height:.92; }
.modal-close { position:absolute; z-index:2; top:11px; right:11px; display:grid; place-items:center; width:34px; height:34px; padding:0; border:1px solid rgba(255,255,255,.2); border-radius:50%; background:#080d18; color:#fff; font:400 1.35rem/1 Arial,sans-serif; cursor:pointer; }
.modal-close:hover { border-color:var(--red); background:var(--red); }
.modal-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(240px,.72fr); gap:16px; align-items:center; margin-top:12px; }
.modal-layout>img { width:100%; border-radius:9px; background:#fff; }
.wallet-details { min-width:0; }
.wallet-details>p { margin:0 0 12px; color:var(--muted); font-size:.88rem; line-height:1.5; }
.wallet-details code { display:block; overflow-wrap:anywhere; padding:10px; border:1px solid rgba(74,128,255,.24); border-radius:7px; background:#02050c; color:#d9e7ff; font:600 .78rem/1.45 ui-monospace,SFMono-Regular,Menlo,monospace; }
.wallet-copy { width:100%; margin-top:8px; min-height:42px; border:1px solid #ff9c3f; border-radius:7px; background:#f27a18; color:#130700; font:1rem/1 var(--display); letter-spacing:.06em; text-transform:uppercase; cursor:pointer; }
.wallet-copy:hover { background:#ff9a3d; }
.network-warning { margin-top:12px!important; padding-left:10px; border-left:2px solid var(--red); font-size:.75rem!important; }
.modal-open { overflow:hidden; }
.reveal { opacity:0; transform:translateY(16px); transition:opacity .65s ease,transform .65s ease; }
.reveal.is-visible { opacity:1; transform:none; }
.reactive::before { content:""; position:absolute; inset:0; background:radial-gradient(220px circle at var(--x,50%) var(--y,50%),rgba(255,255,255,.28),transparent 55%); opacity:0; transition:opacity .2s ease; pointer-events:none; }
.reactive:hover::before { opacity:1; }
@keyframes ambient { to { transform:translate3d(1.5%,1%,0) scale(1.05); } }
@keyframes sparkle { 0% { background-position:18px 24px,74px 102px,152px 42px,208px 156px,31px 226px; opacity:.38; } 48% { opacity:.58; } 100% { background-position:62px 78px,28px 148px,207px 91px,151px 104px,87px 171px; opacity:.48; } }
@keyframes pulse { 50% { transform:scale(1.25); box-shadow:0 0 22px var(--red); } }
@keyframes edge-run { to { --edge-angle:360deg; } }
@media (max-width:860px) {
  :root { --shell:min(100% - 26px,700px); }
  .site-header { flex-wrap:wrap; padding-top:8px; }
  .site-header nav { order:2; width:100%; justify-content:space-between; gap:7px; padding:8px 0 10px; }
  .site-header nav a { font-size:.72rem; white-space:nowrap; }
  .hero-copy { grid-template-columns:1fr; grid-template-areas:"identity" "lede" "actions"; gap:10px; }
  .media-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .media-card { height:clamp(340px,64vw,490px); }
  .care-list { grid-template-columns:1fr; }
  .hero-actions { grid-template-columns:repeat(6,minmax(0,1fr)); gap:6px; }
  .hero-actions>*:nth-child(1),.hero-actions>*:nth-child(2) { grid-column:span 3; }
  .hero-actions>*:nth-child(n+3) { grid-column:span 3; }
  .final-cta { grid-template-columns:64px minmax(0,1fr) 64px; }
  .hope-logo { width:62px; height:62px; }
  .cta-actions { grid-column:2; grid-template-columns:1fr 1fr; }
  .footer-grid { grid-template-columns:1fr auto; }
  .footer-contact { grid-column:1/-1; }
}
@media (max-width:560px) {
  :root { --shell:calc(100% - 20px); }
  .site-header { min-height:62px; }
  .libr8aid-brand { font-size:22px; }
  .brand-mark { width:35px; height:35px; }
  .site-header nav a { font-size:.62rem; }
  .nav-contact { padding:8px 9px; }
  .hero { padding-top:10px; }
  .video-frame { border-radius:8px; }
  .video-frame video { max-height:58vh; }
  .sound-toggle { top:8px; right:8px; width:32px; height:32px; }
  .identity { gap:10px; }
  .identity img { width:56px; height:56px; }
  h1 { font-size:clamp(2.5rem,12.6vw,3.8rem); }
  .hero-actions { grid-template-columns:repeat(6,minmax(0,1fr)); gap:5px; }
  .hero-actions .button { min-height:39px; padding:7px 8px; font-size:.72rem; }
  .modal-panel { padding:14px; }
  .modal-layout { grid-template-columns:1fr; }
  .modal-layout>img { width:min(100%,380px); margin-inline:auto; }
  .section-heading { grid-template-columns:1fr; gap:9px; }
  .section-heading>p { transform:none; }
  .media-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; align-items:start; }
  .media-card { min-height:0; aspect-ratio:9/16; background:#000; }
  .media-card img { object-fit:contain; }
  .media-card:last-child { display:block; }
  .care-list { grid-column:1/-1; grid-row:2; gap:6px; }
  .care-list { grid-template-columns:1fr; }
  .care-list article { min-height:82px; padding:10px; }
  .media-card figcaption { left:7px; bottom:7px; padding:5px 7px; font-size:.6rem; }
  .final-cta { grid-template-columns:52px minmax(0,1fr) 52px; gap:7px 10px; }
  .hope-logo { width:50px; height:50px; }
  .cta-actions { grid-column:1/-1; grid-row:2; width:min(100%,360px); grid-template-columns:1fr; margin-top:3px; }
  .footer-grid { grid-template-columns:1fr; gap:22px; }
}
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; } .reveal { opacity:1; transform:none; } }
