:root{--red:#c92335;--red-dark:#a7192a;--ink:#20232b;--muted:#687080;--soft:#fff5f5;--line:#f0e3e4}
*{box-sizing:border-box}body{font-family:"DM Sans",sans-serif;color:var(--ink);background:#fff}h1,h2,h3,.navbar-brand{font-family:Manrope,sans-serif}.navbar{z-index:1000}.navbar-brand{font-size:1.45rem;letter-spacing:-.7px}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:13px;background:var(--red);color:white;box-shadow:0 7px 18px #c9233533}.nav-link{font-weight:600;color:#555b66}.btn-danger{background:var(--red);border-color:var(--red)}.btn-danger:hover{background:var(--red-dark);border-color:var(--red-dark)}.text-danger{color:var(--red)!important}
.hero-section{padding:90px 0 82px;background:radial-gradient(circle at 85% 35%,#ffe6e8 0,transparent 28%),linear-gradient(120deg,#fff 48%,#fff8f8 100%);overflow:hidden}.eyebrow{display:inline-flex;align-items:center;color:var(--red);font-size:.78rem;font-weight:800;letter-spacing:1.5px;text-transform:uppercase}.hero-section h1{letter-spacing:-3px;line-height:1.08;max-width:650px}.hero-section .lead{max-width:560px;line-height:1.8}.avatar-stack{display:flex}.avatar-stack span{width:39px;height:39px;display:grid;place-items:center;background:#fff;border:2px solid #fff;border-radius:50%;margin-right:-9px;box-shadow:0 4px 15px #00000012}.hero-art{height:420px;position:relative;display:grid;place-items:center}.hero-art:before,.hero-art:after{content:"";position:absolute;border:1px solid #f4c7cc;border-radius:50%;width:370px;height:370px}.hero-art:after{width:460px;height:460px;border-color:#f8e0e2}.blood-orb{width:245px;height:245px;border-radius:42% 58% 57% 43%/43% 42% 58% 57%;background:linear-gradient(145deg,#f24b5d,#b70e27);display:grid;place-items:center;color:white;font-size:7rem;box-shadow:0 30px 70px #c9233540;transform:rotate(-12deg);z-index:1}.blood-orb i{transform:rotate(12deg);filter:drop-shadow(0 8px 10px #760b1c55)}.floating-card{position:absolute;z-index:2;background:#fff;border:1px solid #f5e5e7;border-radius:17px;padding:14px 17px;display:flex;align-items:center;gap:12px;box-shadow:0 15px 45px #6f1c2918}.floating-card>i{font-size:1.7rem}.floating-card span{display:grid}.floating-card small{color:var(--muted);font-size:.75rem}.card-one{top:65px;left:0}.card-two{bottom:72px;right:-5px}.hero-caption{position:absolute;bottom:0;z-index:2;background:#fff;padding:10px 17px;border-radius:30px;box-shadow:0 10px 30px #00000010;font-size:.83rem;font-weight:700}.pulse-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#20ad69;margin-right:8px;box-shadow:0 0 0 5px #20ad6920}
.trust-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}.trust-strip .fw-semibold{font-size:.88rem;margin-top:5px}.section-pad{padding:90px 0}.section-heading{max-width:650px}.section-heading p{line-height:1.7}.choice-card{padding:34px;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:0 14px 45px #641b2608;transition:.25s}.choice-card:hover{transform:translateY(-6px);box-shadow:0 20px 55px #641b2612}.request-card{background:linear-gradient(145deg,#fff,#fff8f8)}.choice-icon{width:60px;height:60px;border-radius:19px;display:grid;place-items:center;font-size:1.8rem;margin-bottom:23px}.donor-icon{background:#ffeaec;color:var(--red)}.request-icon{background:#fff0e8;color:#df663d}.choice-card p{line-height:1.8;min-height:82px}.how-section{background:#fff9f9}.step-card{height:100%;padding:30px;background:white;border:1px solid var(--line);border-radius:20px;position:relative}.step-number{font-size:.78rem;font-weight:800;color:#e6a0a7;letter-spacing:1px}.step-card>i{display:block;color:var(--red);font-size:2rem;margin-top:22px}.step-card p{line-height:1.75}.safety-panel{display:flex;align-items:flex-start;gap:22px;background:#fff8f3;border:1px solid #f5e2d4;padding:28px 32px;border-radius:20px}.safety-icon{flex:0 0 52px;width:52px;height:52px;border-radius:16px;background:#fff;color:#c56b35;display:grid;place-items:center;font-size:1.6rem}.site-footer{border-top:1px solid var(--line);background:#fff}.site-footer .container{align-items:center}
@media(max-width:991px){.hero-section{padding:65px 0}.hero-art{height:370px;margin-top:15px}.card-one{left:3%}.card-two{right:2%}.hero-section h1{font-size:3.2rem}}@media(max-width:575px){.hero-section{padding:52px 0 40px}.hero-section h1{font-size:2.65rem;letter-spacing:-2px}.hero-art{height:310px}.blood-orb{width:185px;height:185px;font-size:5.3rem}.hero-art:before{width:270px;height:270px}.hero-art:after{width:320px;height:320px}.floating-card{padding:10px 12px}.floating-card>i{font-size:1.35rem}.floating-card b{font-size:.8rem}.floating-card small{font-size:.68rem}.card-one{top:25px}.card-two{bottom:44px}.hero-caption{font-size:.72rem}.section-pad{padding:65px 0}.choice-card{padding:25px}.choice-card p{min-height:0}.safety-panel{padding:22px;display:block}.safety-icon{margin-bottom:15px}.trust-strip .fw-semibold{font-size:.7rem}}

/* Authentication and dashboard */
.auth-wrap,.dashboard-wrap{background:linear-gradient(135deg,#fff8f8,#fff 55%,#fff4f5);min-height:72vh}
.auth-card{background:#fff;border:1px solid #f0e3e4;border-radius:25px;padding:clamp(22px,4vw,42px);box-shadow:0 20px 70px #651b260c}
.auth-icon{width:64px;height:64px;display:inline-grid;place-items:center;border-radius:21px;background:#ffeaec;color:var(--red);font-size:1.8rem}
.auth-card .form-control,.auth-card .form-select{min-height:49px;border-radius:12px;border-color:#e9dfe0}
.auth-card .form-control:focus,.auth-card .form-select:focus{border-color:#e58a94;box-shadow:0 0 0 .2rem #c9233518}
.form-label{font-size:.9rem;font-weight:700}.account-switch{display:grid;grid-template-columns:1fr 1fr;padding:5px;background:#fff2f3;border-radius:14px;gap:5px}
.account-switch a{text-align:center;text-decoration:none;padding:12px 8px;border-radius:11px;color:#6b6264;font-weight:700;font-size:.9rem}
.account-switch a.active{background:#c92335;color:#fff;box-shadow:0 5px 14px #c9233530}
.privacy-note{background:#fff7f0;border:1px solid #f3e3d4;color:#745a43;border-radius:13px;padding:14px;font-size:.88rem}
.dash-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:25px;box-shadow:0 12px 35px #641b2608;height:100%}
.dash-label{font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:1px;color:#81818a}
.blood-group{font:800 3rem Manrope,sans-serif;color:var(--red);margin-top:9px}
.link-danger{color:var(--red)}


/* LifeDrop Phase 3 donor workspace refinements */
.dashboard-wrap { background: #fff8f9; min-height: 75vh; }
.dash-card { background:#fff; border:1px solid #f1e4e6; border-radius:20px; padding:22px; box-shadow:0 10px 30px rgba(90,20,35,.045); }
.dash-label { color:#77808b; font-size:.82rem; font-weight:700; text-transform:uppercase; letter-spacing:.06em; }
.blood-group { color:#c92335; font-size:2.6rem; line-height:1.2; font-weight:800; margin-top:10px; }
.dash-card .form-control,.dash-card .form-select { border-radius:11px; border-color:#e8dfe1; padding:.65rem .8rem; }
.dash-card .form-control:focus,.dash-card .form-select:focus { border-color:#d94a5a; box-shadow:0 0 0 .2rem rgba(201,35,53,.1); }
@media(max-width:575.98px){.dash-card{padding:17px;border-radius:16px}.blood-group{font-size:2.2rem}}


/* LifeDrop home refresh — mobile-first app-inspired interface */
.lifedrop-home{overflow:hidden;background:#fff}
.app-hero{position:relative;isolation:isolate;padding:46px 0 35px;background:radial-gradient(circle at 80% 48%,rgba(255,205,211,.7),transparent 27%),linear-gradient(135deg,#fff8f8 0%,#fff 48%,#fff0f2 100%)}
.app-hero:before{content:"";position:absolute;z-index:-1;inset:0;background-image:radial-gradient(#d94b5c18 1px,transparent 1px);background-size:22px 22px;mask-image:linear-gradient(to bottom,black,transparent 85%)}
.hero-topline{display:flex;justify-content:space-between;align-items:center;margin-bottom:35px;gap:12px}
.live-pill,.hero-location{display:inline-flex;align-items:center;gap:8px;font-size:.66rem;font-weight:800;letter-spacing:.09em;color:#a91d2d}
.live-pill{padding:8px 12px;border:1px solid #f4dadd;background:#fff;border-radius:30px}
.live-pill span,.caption-pulse{width:7px;height:7px;background:#22b573;border-radius:50%;box-shadow:0 0 0 4px #22b57320}
.hero-location{color:#707783;letter-spacing:0;font-size:.76rem}
.hero-kicker{display:inline-flex;align-items:center;gap:8px;color:#c92335;font-size:.78rem;font-weight:800;margin-bottom:17px}
.hero-copy h1{font-size:clamp(3.15rem,7vw,5.9rem);font-weight:900;line-height:.99;letter-spacing:-.075em;margin:0;color:#20232b}
.hero-copy h1 em,.privacy-copy h2 em{font-style:normal;color:#cf2639}
.hero-copy>p{max-width:510px;color:#687080;font-size:1.08rem;line-height:1.75;margin:22px 0 25px}
.hero-actions{display:flex;flex-wrap:wrap;gap:11px}
.hero-actions .btn{border-radius:15px;padding:14px 19px;font-size:.92rem;font-weight:800;box-shadow:0 9px 24px #a7192a18}
.hero-actions .btn-light{border:1px solid #f0dfe1;color:#323640;background:#fff}
.hero-proof{display:flex;align-items:center;gap:12px;margin-top:27px;max-width:420px}
.proof-icon{width:39px;height:39px;flex:0 0 39px;border-radius:13px;display:grid;place-items:center;background:#e9f8f0;color:#15965c}
.hero-proof span:last-child{display:grid;gap:2px}.hero-proof strong{font-size:.82rem}.hero-proof small{font-size:.72rem;color:#78808c;line-height:1.4}
.hero-visual{height:410px;position:relative;display:grid;place-items:center;isolation:isolate}
.visual-ring{position:absolute;border:1px solid #efc6cc;border-radius:50%;width:300px;height:300px}
.ring-b{width:370px;height:370px;border-style:dashed;border-color:#f0dadd;animation:lifedrop-spin 45s linear infinite}
.ring-a:after{content:"";position:absolute;inset:25px;border:1px solid #f5dfe2;border-radius:50%}
.drop-core{width:220px;height:220px;border-radius:46% 54% 54% 46%/39% 42% 58% 61%;background:linear-gradient(145deg,#ff6474,#b80f2a 78%);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;transform:rotate(-9deg);box-shadow:0 30px 70px #c9233545,inset 0 2px 12px #ffffff55;z-index:1}
.drop-core i{font-size:6rem;filter:drop-shadow(0 10px 10px #770b1e55);transform:rotate(9deg)}
.drop-core span{font-family:Manrope,sans-serif;font-size:.85rem;font-weight:900;letter-spacing:.06em;transform:rotate(9deg)}
.float-chip{position:absolute;z-index:2;display:flex;align-items:center;gap:10px;padding:12px 14px;background:#ffffffed;border:1px solid #f2e1e3;border-radius:16px;box-shadow:0 16px 40px #641b2618;backdrop-filter:blur(12px)}
.float-chip>i{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;font-size:1.2rem}
.float-chip span{display:grid;gap:2px}.float-chip b{font-size:.78rem}.float-chip small{font-size:.66rem;color:#7d8490}
.chip-heart{top:46px;left:0}.chip-heart>i{background:#ffeaed;color:#d52c40}
.chip-safe{right:-3px;bottom:62px}.chip-safe>i{background:#eaf8f0;color:#15965c}
.visual-caption{position:absolute;bottom:7px;background:#fff;padding:9px 15px;border-radius:30px;box-shadow:0 8px 25px #00000010;font-size:.72rem;font-weight:800;color:#525967;display:flex;align-items:center;gap:9px}
.hero-scroll-hint{display:none}
.quick-actions{padding:65px 0 55px}
.quick-heading,.section-title-row{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:23px}
.section-eyebrow{font-size:.68rem;letter-spacing:.13em;font-weight:900;color:#ce2b3d}
.quick-heading h2,.section-title-row h2{font-family:Manrope,sans-serif;font-size:clamp(1.6rem,3vw,2.3rem);font-weight:900;letter-spacing:-.055em;margin:7px 0 0}
.quick-spark{width:44px;height:44px;display:grid;place-items:center;border-radius:15px;background:#fff0f2;color:#ce2b3d;font-size:1.25rem}
.action-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.action-tile{position:relative;display:flex;align-items:center;gap:13px;padding:20px 18px;border-radius:20px;text-decoration:none;color:#262a33;border:1px solid #f1e2e4;min-height:118px;transition:transform .2s,box-shadow .2s}
.action-tile:hover{transform:translateY(-4px);color:#262a33;box-shadow:0 15px 35px #631b2612}
.action-request{background:linear-gradient(135deg,#fff2f3,#fff)}
.action-donor{background:linear-gradient(135deg,#f0fbf5,#fff);border-color:#dcefe4}
.tile-icon{width:49px;height:49px;flex:0 0 49px;border-radius:16px;display:grid;place-items:center;background:#ffe1e5;color:#c92335;font-size:1.35rem}
.action-donor .tile-icon{background:#ddf5e8;color:#15965c}
.tile-text{display:grid;gap:5px}.tile-text b{font-size:.93rem}.tile-text small{font-size:.73rem;color:#78808c;line-height:1.45}
.tile-arrow{position:absolute;right:15px;top:14px;color:#bd7a82}
.blood-groups-section{padding:65px 0;background:#fff8f8}
.section-title-row{align-items:center}.section-title-row>div:first-child{max-width:650px}
.section-title-row p{color:#77808b;font-size:.9rem;line-height:1.7;margin:10px 0 0}
.blood-drop-mark{width:55px;height:55px;display:grid;place-items:center;border-radius:18px;background:#ffe7ea;color:#c92335;font-size:1.8rem}
.blood-type-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:11px;margin-top:27px}
.blood-type{display:grid;place-items:center;min-height:64px;border:1px solid #f0dadd;border-radius:17px;background:#fff;text-decoration:none;color:#c92335;font:900 1.15rem Manrope,sans-serif;box-shadow:0 7px 18px #641b2606;transition:.2s}
.blood-type:hover{background:#c92335;color:#fff;border-color:#c92335;transform:translateY(-3px)}
.blood-note{display:flex;align-items:center;gap:9px;margin-top:17px;color:#777f8b;font-size:.75rem}.blood-note i{color:#c92335}
.how-app-section{padding:72px 0}
.timeline-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px;margin-top:28px}
.timeline-item{position:relative;padding:24px;border:1px solid #f0e5e6;border-radius:20px;background:#fff;box-shadow:0 10px 30px #641b2606}
.timeline-index{position:absolute;right:20px;top:18px;font:900 1.2rem Manrope,sans-serif;color:#f0c9ce}
.timeline-icon{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:#ffeaed;color:#c92335;font-size:1.3rem}
.timeline-item h3{font-size:1.02rem;font-weight:900;margin:18px 0 8px}
.timeline-item p{font-size:.81rem;color:#78808c;line-height:1.7;margin:0}
.privacy-feature{padding:15px 0 70px}
.privacy-card{display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;gap:30px;padding:38px 48px;border-radius:28px;background:linear-gradient(120deg,#fff3f4,#fff 62%);border:1px solid #f3e1e3;overflow:hidden}
.privacy-art{height:235px;position:relative;display:grid;place-items:center}
.privacy-shield{width:135px;height:150px;display:grid;place-items:center;clip-path:path("M 67 0 C 92 18 113 18 135 22 L 130 85 C 125 120 94 142 67 150 C 40 142 10 120 5 85 L 0 22 C 24 18 45 18 67 0 Z");background:linear-gradient(145deg,#ff6c7b,#b90d29);color:#fff;font-size:3.5rem;filter:drop-shadow(0 20px 25px #c9233544)}
.privacy-orbit{position:absolute;width:210px;height:210px;border:1px solid #efc8cd;border-radius:50%}
.orbit-two{width:255px;height:255px;border-style:dashed}
.privacy-copy h2{font-size:clamp(2rem,4vw,3.1rem);font-weight:900;letter-spacing:-.06em;margin:9px 0 14px;line-height:1.08}
.privacy-copy p{font-size:.87rem;line-height:1.8;color:#717986;max-width:560px}
.privacy-link{display:inline-flex;align-items:center;gap:9px;margin-top:8px;color:#c92335;font-weight:900;text-decoration:none;font-size:.86rem}
.closing-cta{padding:0 0 75px}
.closing-panel{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:37px 45px;border-radius:26px;background:linear-gradient(115deg,#a9152a,#e33e50);color:#fff}
.closing-panel .section-eyebrow{color:#ffd5da}.closing-panel h2{font-size:clamp(1.8rem,4vw,2.8rem);font-weight:900;letter-spacing:-.06em;line-height:1.08;margin:10px 0}
.closing-panel p{color:#ffe1e4;margin:0;font-size:.9rem}.closing-panel .btn{position:relative;z-index:2;border-radius:14px;font-weight:900;padding:13px 20px}
.closing-watermark{position:absolute;right:22%;font-size:12rem;color:#ffffff0e;transform:rotate(-17deg)}
.mobile-app-nav{display:none}
@keyframes lifedrop-spin{to{transform:rotate(360deg)}}
@media(max-width:991.98px){.app-hero{padding-top:34px}.hero-visual{height:370px}.chip-heart{left:3%}.chip-safe{right:2%}.blood-type-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:767.98px){
 .app-hero{padding:23px 0 24px}.hero-topline{margin-bottom:27px}.hero-copy h1{font-size:clamp(3.2rem,13vw,4.5rem)}.hero-copy>p{font-size:.94rem;line-height:1.65;margin:16px 0 19px}.hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.hero-actions .btn{font-size:.78rem;padding:13px 8px;border-radius:13px;white-space:nowrap}.hero-proof{margin-top:20px}.hero-visual{height:300px;margin-top:2px}.visual-ring{width:225px;height:225px}.ring-b{width:280px;height:280px}.drop-core{width:165px;height:165px}.drop-core i{font-size:4.4rem}.drop-core span{font-size:.72rem}.chip-heart{top:22px;left:0}.chip-safe{right:0;bottom:42px}.float-chip{padding:9px 10px;gap:7px;border-radius:13px}.float-chip>i{width:31px;height:31px;font-size:1rem}.float-chip b{font-size:.68rem}.float-chip small{font-size:.58rem}.visual-caption{bottom:0;font-size:.64rem}
 .quick-actions{padding:42px 0 40px}.quick-heading,.section-title-row{margin-bottom:18px}.quick-heading h2,.section-title-row h2{font-size:1.55rem}.action-grid{grid-template-columns:1fr;gap:11px}.action-tile{min-height:91px;padding:15px;border-radius:17px}.tile-icon{width:44px;height:44px;flex-basis:44px;border-radius:14px}.tile-text b{font-size:.85rem}.tile-text small{font-size:.68rem}
 .blood-groups-section{padding:43px 0}.blood-type-grid{grid-template-columns:repeat(4,1fr);gap:8px;margin-top:20px}.blood-type{min-height:56px;border-radius:14px;font-size:1.02rem}.blood-drop-mark{width:43px;height:43px;border-radius:14px;font-size:1.35rem}.blood-note{align-items:flex-start;font-size:.69rem;line-height:1.5}
 .how-app-section{padding:47px 0}.timeline-grid{grid-template-columns:1fr;gap:10px;margin-top:21px}.timeline-item{display:grid;grid-template-columns:44px 1fr;column-gap:13px;padding:16px;border-radius:16px}.timeline-index{right:15px;top:13px;font-size:.9rem}.timeline-icon{grid-row:span 2;width:42px;height:42px;font-size:1.1rem}.timeline-item h3{margin:1px 30px 5px 0;font-size:.9rem}.timeline-item p{font-size:.73rem}
 .privacy-feature{padding:0 0 45px}.privacy-card{grid-template-columns:1fr;gap:9px;padding:23px 21px;border-radius:21px}.privacy-art{height:155px}.privacy-shield{transform:scale(.76)}.privacy-orbit{width:150px;height:150px}.orbit-two{width:180px;height:180px}.privacy-copy h2{font-size:2rem}.privacy-copy p{font-size:.78rem;line-height:1.7}
 .closing-cta{padding-bottom:95px}.closing-panel{display:block;padding:27px 23px;border-radius:21px}.closing-panel h2{font-size:2rem}.closing-panel p{font-size:.8rem;margin-bottom:18px}.closing-panel .btn{font-size:.85rem}.closing-watermark{right:-5%;bottom:-24%;font-size:9rem}
 .mobile-app-nav{position:fixed;z-index:1050;left:12px;right:12px;bottom:max(10px,env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(4,1fr);gap:4px;padding:8px 7px;background:#ffffffed;border:1px solid #f0dfe1;border-radius:20px;box-shadow:0 12px 35px #35101826;backdrop-filter:blur(18px)}
 .mobile-app-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:5px 2px;color:#858b95;text-decoration:none;font-size:.58rem;font-weight:800;border-radius:13px}
 .mobile-app-nav a i{font-size:1.12rem}.mobile-app-nav a.active{background:#fff0f2;color:#c92335}
 body:has(.mobile-app-nav) .site-footer{padding-bottom:85px}
}
@media(max-width:380px){.hero-copy h1{font-size:3rem}.hero-actions .btn{font-size:.7rem}.hero-location{font-size:.66rem}.float-chip{transform:scale(.92)}}
@media(prefers-reduced-motion:reduce){.ring-b{animation:none}.action-tile,.blood-type{transition:none}}
