:root{font-family:Manrope,sans-serif;color:#101010;background:radial-gradient(circle at top left,rgba(0,0,0,.08),transparent 30%),linear-gradient(180deg,#fff,#f5f5f5);color-scheme:light;line-height:1.5;font-weight:400;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}#root{min-height:100vh}.page-shell{padding:24px}.intro-scroll-stage{position:relative;height:170vh}.intro-screen{position:sticky;top:24px;min-height:calc(100vh - 48px);width:min(1160px,100%);margin:0 auto;padding:48px 28px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;border-radius:38px;border:1px solid rgba(16,16,16,.08);background:radial-gradient(circle at top,rgba(0,0,0,.08),transparent 34%),linear-gradient(180deg,#fffffffa,#f4f4f4f5);overflow:hidden;box-shadow:0 30px 90px #00000014;will-change:transform,opacity,filter}.intro-orbit{position:absolute;border-radius:50%;border:1px solid rgba(0,0,0,.08);background:#fff9}.intro-orbit-left{width:260px;height:260px;left:-70px;top:12%}.intro-orbit-right{width:340px;height:340px;right:-110px;bottom:8%}.intro-logo{position:relative;width:min(280px,58vw);filter:grayscale(1) contrast(1.2)}.intro-verse{position:relative;z-index:1;max-width:19ch;margin:0;text-align:center;font-family:Cormorant Garamond,serif;font-size:clamp(2rem,4vw,3.8rem);line-height:1.05}.intro-reference{position:relative;z-index:1;font-size:.92rem;letter-spacing:.28em;text-transform:uppercase;color:#101010a8}.typing-caret{display:inline-block;width:1px;height:.95em;margin-left:8px;vertical-align:-.08em;background:#111;animation:blink .9s steps(1) infinite}.scroll-indicator{position:absolute;bottom:32px;left:50%;transform:translate(-50%);padding:10px 18px;border-radius:999px;border:1px solid rgba(16,16,16,.12);background:#ffffffe6;font-size:.85rem;letter-spacing:.2em;text-transform:uppercase}@keyframes blink{0%,49%{opacity:1}50%,to{opacity:0}}.hero,.section{width:min(1160px,100%);margin:0 auto}.hero{min-height:calc(100vh - 48px);display:flex;flex-direction:column;gap:56px;padding:20px 0 48px}.subpage-hero{min-height:auto;padding-bottom:0}.topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 22px;border:1px solid rgba(16,16,16,.12);border-radius:999px;background:#ffffffe0;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.brand{display:inline-flex;align-items:center;gap:12px;font-weight:700;letter-spacing:.18em}.brand-logo{width:42px;height:42px;object-fit:contain}.menu-toggle{display:none;width:48px;height:48px;padding:0;border:1px solid rgba(16,16,16,.12);border-radius:50%;background:#fff;cursor:pointer}.menu-toggle span{display:block;width:18px;height:1.5px;margin:4px auto;background:#111}.nav-links{display:flex;flex-wrap:wrap;gap:24px;font-size:.95rem}.nav-links a{position:relative}.nav-links a:after{content:"";position:absolute;left:0;bottom:-6px;width:100%;height:1px;transform:scaleX(0);transform-origin:right;background:#111;transition:transform .3s ease}.nav-links a:hover:after,.nav-links a:focus-visible:after{transform:scaleX(1);transform-origin:left}.hero-content{flex:1;display:grid;grid-template-columns:1.35fr .85fr;gap:32px;align-items:center}.subpage-header{padding:84px 0 28px;max-width:820px}.subpage-title{max-width:11ch;font-size:clamp(2.6rem,6vw,5.4rem);line-height:.96}.subpage-text{max-width:560px;margin:20px 0 32px;font-size:1.04rem;color:#101010c2}.hero-copy,.hero-card,.verse-card,.contact-card,.dark-panel,.about-grid article{border-radius:28px}.hero-copy{padding:24px 0}.eyebrow{margin:0 0 14px;font-size:.85rem;letter-spacing:.3em;text-transform:uppercase;color:#101010ad}h1,h2,h3{margin:0;font-family:Cormorant Garamond,serif;font-weight:600;letter-spacing:.01em}h1{max-width:12ch;font-size:clamp(3.3rem,8vw,6.6rem);line-height:.95}.hero-title-small{max-width:22ch;font-size:clamp(1.6rem,2.7vw,2.7rem);line-height:1.08}h2{max-width:14ch;font-size:clamp(2.4rem,5vw,4.3rem);line-height:.98}h3{font-size:2rem;margin-bottom:14px}.hero-text,.section-heading{max-width:640px}.hero-text,.about-grid p,.dark-panel p,.verse-card p,.contact-card{font-size:1.02rem}.hero-text{margin:22px 0 0;color:#101010c2}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}.button{display:inline-flex;align-items:center;justify-content:center;min-width:152px;padding:14px 22px;border-radius:999px;border:1px solid #111111;transition:transform .25s ease,background .25s ease,color .25s ease}.button:hover,.button:focus-visible,.contact-card:hover,.contact-card:focus-visible,.verse-card:hover,.about-grid article:hover{transform:translateY(-4px)}.button-dark{background:#111;color:#fff}.button-light{background:transparent}.hero-card{position:relative;min-height:460px;padding:36px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(145deg,#0f0f0f,#222),#111;color:#fff;overflow:hidden;box-shadow:0 28px 90px #0000002e}.hero-card:before{content:"";position:absolute;inset:auto -10% -15% auto;width:220px;height:220px;border-radius:50%;background:#ffffff14}.hero-logo{width:min(280px,72%);align-self:center;border-radius:28px;object-fit:cover;box-shadow:0 18px 42px #00000038}.hero-card p{position:relative;margin:0;max-width:18ch;font-family:Cormorant Garamond,serif;font-size:clamp(1.3rem,2vw,1.8rem);line-height:1.2;text-align:left}.admin-shell{padding-bottom:56px}.admin-hero{gap:28px}.admin-header{max-width:940px}.admin-title{max-width:12ch}.public-shell,.public-main{padding-bottom:24px}.public-header,.public-panel{max-width:860px}.admin-main{width:min(1160px,100%);margin:0 auto}.admin-top-actions{margin-bottom:18px}.login-panel{max-width:520px}.admin-tabs{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:24px}.admin-tab{padding:12px 18px;border:1px solid rgba(16,16,16,.14);border-radius:999px;background:#ffffffdb;cursor:pointer}.admin-tab.is-active{background:#111;color:#fff}.admin-panel,.verse-editor-card,.petition-card,.assign-box{padding:28px;border-radius:30px;border:1px solid rgba(16,16,16,.1);background:#ffffffe0;box-shadow:0 18px 48px #0000000f}.compact-heading h2{max-width:16ch;font-size:clamp(2rem,4vw,3.2rem)}.admin-form,.stack-block,.verse-editor-list,.petition-list,.selected-person-list,.assign-panel,.assign-summary,.assign-grid{display:grid;gap:18px}.stack-header,.panel-actions,.petition-meta-row,.inline-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.form-grid{display:grid;gap:18px}.two-columns,.assign-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.field{display:grid;gap:8px}.field span,.assign-summary strong{font-size:.82rem;letter-spacing:.18em;text-transform:uppercase;color:#101010a8}.field input,.field textarea,.inline-actions input,.select-field{width:100%;padding:14px 16px;border:1px solid rgba(16,16,16,.16);border-radius:18px;background:#fff;font:inherit;color:#111}.toggle-field{align-content:end}.toggle-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.toggle-button{width:100%;padding:14px 16px;border:1px solid rgba(16,16,16,.16);border-radius:18px;background:#fff;color:#111;font:inherit;text-align:center;cursor:pointer;transition:background .25s ease,color .25s ease,border-color .25s ease}.toggle-button.is-active{background:#111;color:#fff;border-color:#111}.field textarea{resize:vertical}.button-small{min-width:auto;padding:11px 16px}.text-button,.chip-remove{padding:0;border:0;background:transparent;color:#111;cursor:pointer;font:inherit}.status-message{margin:0;color:#101010b8}.status-message.success{color:#0d6b32}.status-message.error{color:#991b1b}.petition-card{display:grid;grid-template-columns:28px minmax(0,1fr);gap:18px;align-items:start}.petition-copy p{margin:10px 0 14px;color:#101010c7}.petition-meta-row span,.petition-tags span,.tag-list span,.selected-person-chip span{padding:7px 11px;border-radius:999px;background:#1010100f;font-size:.88rem}.petition-tags,.tag-list{display:flex;flex-wrap:wrap;gap:10px}.compact-block{margin-top:18px}.selected-person-list{min-height:120px;align-content:start}.selected-person-chip{display:inline-flex;align-items:center;gap:10px}.section{padding:88px 0}.section-heading{margin-bottom:38px}.section-heading h2{margin-top:10px}.about-grid,.verses-grid,.contact-layout{display:grid;gap:22px}.about-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.about-grid article,.verse-card,.contact-card{padding:28px;background:#ffffffdb;border:1px solid rgba(16,16,16,.1);box-shadow:0 14px 36px #0000000d;transition:transform .25s ease,box-shadow .25s ease}.about-grid article:hover,.verse-card:hover,.contact-card:hover{box-shadow:0 24px 50px #0000001a}.verses-section{position:relative}.verses-grid,.verses-grid-page{grid-template-columns:repeat(3,minmax(0,1fr))}.verse-card{position:relative;min-height:280px;display:flex;flex-direction:column;justify-content:space-between}.quote-mark{font-family:Cormorant Garamond,serif;font-size:4rem;line-height:1}.verse-card p{margin:12px 0 24px;color:#101010c7}.verse-card strong,.contact-card strong{font-weight:700}.contact-layout{grid-template-columns:minmax(280px,.9fr) minmax(0,1.1fr);align-items:start}.dark-panel{height:100%;padding:34px;background:#111;color:#fff}.contact-list{display:grid;gap:18px}.contact-card{display:flex;align-items:center;justify-content:space-between;gap:20px}.contact-card span{font-size:.9rem;letter-spacing:.2em;text-transform:uppercase;color:#1010109e}@media (max-width: 980px){.intro-scroll-stage{height:155vh}.hero-content,.contact-layout,.about-grid,.verses-grid,.verses-grid-page,.two-columns,.assign-grid{grid-template-columns:1fr}.hero{min-height:auto}h1,h2{max-width:none}.hero-card{min-height:360px}.subpage-header{padding-top:56px}}@media (max-width: 720px){.page-shell{padding:16px}.intro-screen{top:16px;min-height:calc(100vh - 32px);padding:36px 22px;border-radius:28px}.intro-orbit-left{width:180px;height:180px;left:-70px}.intro-orbit-right{width:230px;height:230px;right:-90px}.hero{gap:32px;padding-bottom:28px}.topbar{position:relative;border-radius:28px;padding:18px;align-items:flex-start}.topbar,.contact-card,.inline-actions,.panel-actions{flex-direction:column;align-items:flex-start}.menu-toggle{display:inline-block;position:absolute;top:18px;right:18px}.nav-links{display:none;width:100%;margin-top:18px;padding-top:14px;border-top:1px solid rgba(16,16,16,.08);gap:14px;flex-direction:column;align-items:flex-start}.topbar.menu-open .nav-links{display:flex}.section{padding:64px 0}.hero-card,.dark-panel,.about-grid article,.verse-card,.contact-card{padding:24px}.hero-card p{max-width:none}}
