:root{--green:#1f573f;--green-dark:#173f30;--sage:#e7efdf;--cream:#f7f2e8;--paper:#fffdf8;--gold:#d3a13a;--ink:#192820;--muted:#6f776f;--shadow:0 24px 60px rgba(31,66,50,.14)}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;max-width:100%;overflow-x:hidden}body{margin:0;min-width:0;max-width:100%;overflow-x:hidden;font-family:"DM Sans",sans-serif;color:var(--ink);background:var(--paper);line-height:1.5}.page-shell{width:100%;overflow:clip}.container{width:min(1160px,calc(100% - 40px));margin-inline:auto;min-width:0}img{max-width:100%;height:auto}button,a{font:inherit}h1,h2,h3,p{margin-top:0;overflow-wrap:anywhere}.site-header{position:relative;z-index:20}.nav{min-height:94px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:inline-flex;min-width:0}.brand-logo{display:block;width:190px;height:70px;object-fit:contain;object-position:left center}.nav-download{flex:none;background:var(--green);color:#fff;text-decoration:none;padding:12px 20px;border-radius:999px;font-weight:800}.eyebrow{display:inline-block;font-size:12px;letter-spacing:.2em;font-weight:800;color:var(--green)}
.hero{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);align-items:center;gap:clamp(35px,6vw,75px);padding:45px 0 95px}.hero-copy{min-width:0}.hero h1{font-family:"Playfair Display",serif;font-size:clamp(50px,5.8vw,82px);line-height:1.02;letter-spacing:-.035em;margin:20px 0 24px;max-width:760px}.hero h1 em{display:block;color:var(--green);font-weight:600}.hero-text{font-size:19px;color:var(--muted);max-width:650px}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin:34px 0}.primary-cta,.light-cta,.sticky-download button{border:0;cursor:pointer;font-weight:800}.primary-cta{min-height:58px;background:var(--green);color:#fff;border-radius:17px;padding:16px 23px;display:inline-flex;justify-content:space-between;gap:34px;align-items:center;box-shadow:0 14px 35px rgba(33,79,59,.25);transition:.2s}.primary-cta:hover{transform:translateY(-2px)}.secondary-cta{color:var(--green);font-weight:800;text-underline-offset:4px}.trust-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:38px}.trust-row div{min-width:0}.trust-row strong,.trust-row span{display:block}.trust-row strong{font-size:14px}.trust-row span{font-size:12px;color:var(--muted)}
.hero-visual{position:relative;min-width:0;min-height:650px}.blob{position:absolute;border-radius:50%;pointer-events:none}.blob-one{width:min(500px,88%);aspect-ratio:1;background:var(--sage);right:0;top:55px}.blob-two{width:220px;aspect-ratio:1;background:#f1d7a7;left:2%;bottom:35px}.actual-phone{position:absolute;z-index:2;margin:0}.phone-frame{background:#101510;border:8px solid #101510;border-radius:38px;box-shadow:0 32px 70px rgba(22,57,43,.26);overflow:hidden}.phone-frame img{display:block;width:100%}.phone-food{width:min(300px,55%);left:10%;top:10px;transform:rotate(-5deg)}.phone-gifts{width:min(250px,46%);right:2%;top:130px;transform:rotate(7deg)}
.download-section{background:var(--cream);padding:105px 0}.section-heading{text-align:center;max-width:760px;margin:0 auto 52px}.section-heading.left{text-align:left;margin-left:0}.section-heading h2,.final-cta h2{font-family:"Playfair Display",serif;font-size:clamp(38px,4.5vw,58px);line-height:1.08;letter-spacing:-.025em;margin:14px 0}.section-heading p{color:var(--muted);font-size:18px}.download-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(310px,.8fr);gap:30px;align-items:stretch}.universal-card{min-width:0;background:#fff;border-radius:32px;padding:clamp(25px,3vw,38px);display:flex;align-items:center;gap:clamp(24px,3vw,36px);box-shadow:var(--shadow)}.qr-wrap{position:relative;flex:none;background:#fff;padding:15px;border-radius:22px;border:1px solid #e7e7df}.qr-code img,.qr-code canvas{display:block;width:220px!important;height:220px!important;max-width:100%}.qr-logo{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:48px;height:48px;border:5px solid #fff;border-radius:11px;background:#fff url('assets/soulful-streets-logo.png') center/92% auto no-repeat}.universal-copy{min-width:0}.smart-badge{display:inline-block;font-size:10px;letter-spacing:.13em;font-weight:800;background:var(--sage);color:var(--green);padding:7px 10px;border-radius:999px}.universal-copy h3{font-family:"Playfair Display",serif;font-size:clamp(28px,3vw,34px);line-height:1.12;margin:16px 0 10px}.universal-copy p{color:var(--muted)}.text-button{border:0;background:none;padding:0;color:var(--green);font-weight:800;cursor:pointer}.store-column{display:flex;flex-direction:column;gap:16px;min-width:0}.store-card{position:relative;min-width:0;display:flex;align-items:center;gap:16px;background:#fff;border:2px solid transparent;border-radius:24px;padding:24px;text-decoration:none;color:var(--ink);box-shadow:0 12px 35px rgba(31,66,50,.08);transition:.2s}.store-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.store-card.active{border-color:var(--green)}.store-icon{flex:0 0 55px;width:55px;height:55px;border-radius:17px;display:grid;place-items:center;font-size:28px;background:#f4f4ef}.play-icon{color:#238636}.store-copy{display:flex;flex-direction:column;min-width:0}.store-copy small{font-size:10px;letter-spacing:.12em}.store-copy strong{font-size:21px}.store-copy span{font-size:12px;color:var(--muted)}.store-arrow{margin-left:auto;flex:none;font-size:24px;color:var(--green)}.recommended{display:none;position:absolute;right:18px;top:8px;font-size:8px;font-weight:800;text-transform:uppercase;color:var(--green)}.store-card.active .recommended{display:block}.device-note{text-align:center;color:var(--muted);font-size:13px;padding:5px}
.app-showcase{padding:105px 0 30px}.screens-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.screen-showcase{margin:0;min-width:0;min-height:650px;border-radius:36px;padding:38px 38px 0;overflow:hidden;display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);align-items:end}.food-showcase{background:linear-gradient(145deg,#eaf1df,#f7f2e8)}.gifts-showcase{background:linear-gradient(145deg,#f7eedc,#fbf5ea)}.showcase-copy{align-self:start;padding-top:35px;position:relative;z-index:2;min-width:0}.showcase-number{font-family:"Playfair Display",serif;font-size:72px;line-height:1;color:rgba(33,79,59,.14);font-weight:700}.showcase-copy h3{font-family:"Playfair Display",serif;font-size:34px;line-height:1.1;margin:8px 0 14px}.showcase-copy p{color:var(--muted);font-size:15px}.showcase-phone{width:min(285px,100%);justify-self:end;filter:drop-shadow(0 30px 35px rgba(29,43,36,.2));transform:translateY(45px)}.showcase-phone img{display:block;width:100%;border:8px solid #151a15;border-radius:32px}.features{padding:70px 0 110px}.feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.feature-grid article{min-width:0;background:#fff;border:1px solid #eceae2;border-radius:24px;padding:27px}.feature-grid article>span{font-size:28px}.feature-grid h3{margin:18px 0 8px}.feature-grid p{font-size:14px;color:var(--muted)}
.final-cta{background:var(--green);color:#fff;padding:85px 0}.final-cta-inner{display:flex;justify-content:space-between;gap:50px;align-items:center}.final-cta-inner>div{max-width:760px;min-width:0}.final-cta p{color:#d5e1d9;font-size:18px}.eyebrow.light{color:#d9e8dd}.light-cta{flex:none;background:#fff;color:var(--green);padding:17px 22px;border-radius:16px;white-space:nowrap}.footer{padding:45px 0;display:grid;grid-template-columns:1fr auto;gap:25px;align-items:center}.footer-logo{width:210px;height:88px;object-fit:contain;object-position:left center}.footer-links{display:flex;gap:22px;flex-wrap:wrap;justify-content:flex-end}.footer-links a{color:var(--muted);text-decoration:none;font-size:14px}.footer>p{grid-column:1/-1;color:var(--muted);font-size:12px;border-top:1px solid #eeeae2;padding-top:22px}.sticky-download{display:none;position:fixed;left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right));bottom:max(12px,env(safe-area-inset-bottom));z-index:30}.sticky-download button{width:100%;min-height:58px;padding:15px 18px;border-radius:17px;background:var(--green);color:#fff;box-shadow:0 15px 40px rgba(0,0,0,.22)}.redirect-overlay{position:fixed;inset:0;background:rgba(11,26,19,.65);backdrop-filter:blur(8px);z-index:100;display:grid;place-items:center;padding:20px}.redirect-overlay[hidden]{display:none}.redirect-box{background:#fff;border-radius:28px;padding:34px;text-align:center;max-width:430px;width:100%}.loader{width:42px;height:42px;border-radius:50%;border:4px solid #dfe7e1;border-top-color:var(--green);margin:0 auto 18px;animation:spin .8s linear infinite}.redirect-box a{display:inline-block;margin:12px 5px;padding:10px 14px;border-radius:12px;background:var(--green);color:#fff;text-decoration:none}.redirect-box button{border:0;background:none;color:var(--muted);cursor:pointer}@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:1000px){.hero{grid-template-columns:minmax(0,1fr);padding-top:25px}.hero-copy{text-align:center;max-width:760px;margin-inline:auto}.hero h1,.hero-text{margin-left:auto;margin-right:auto}.hero-actions{justify-content:center}.trust-row{max-width:650px;margin-left:auto;margin-right:auto}.hero-visual{width:min(620px,100%);margin:auto;min-height:620px}.phone-food{left:11%}.phone-gifts{right:9%}.download-layout{grid-template-columns:minmax(0,1fr)}.screens-grid{grid-template-columns:minmax(0,1fr)}.screen-showcase{min-height:700px}.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.final-cta-inner{flex-direction:column;text-align:center}.footer{grid-template-columns:1fr;text-align:center}.footer-logo{margin:auto;object-position:center}.footer-links{justify-content:center}}
@media(max-width:620px){.container{width:calc(100% - 28px)}.nav{min-height:82px}.brand-logo{width:145px;height:62px}.nav-download{display:none}.hero{padding:32px 0 70px;gap:28px}.eyebrow{font-size:10px;letter-spacing:.17em}.hero h1{font-size:clamp(38px,12.3vw,52px);line-height:1.04;letter-spacing:-.04em;margin:15px auto 20px;max-width:100%}.hero h1 em{display:block}.hero-text{font-size:16px;line-height:1.65;max-width:100%}.hero-actions{flex-direction:column;align-items:stretch;margin:28px 0}.primary-cta{width:100%;justify-content:center;gap:18px}.secondary-cta{text-align:center}.trust-row{grid-template-columns:1fr;gap:0;margin-top:28px;border-top:1px solid #ebe8df;border-bottom:1px solid #ebe8df}.trust-row div{padding:13px 4px}.trust-row div+div{border-top:1px solid #ebe8df}.hero-visual{min-height:455px;width:100%}.blob-one{width:92%;right:-10%;top:40px}.blob-two{width:150px;left:-10%;bottom:25px}.phone-food{width:56%;left:3%;top:10px}.phone-gifts{width:47%;right:1%;top:90px}.phone-frame{border-width:5px;border-radius:25px}.download-section{padding:72px 0}.section-heading{margin-bottom:36px}.section-heading h2,.final-cta h2{font-size:clamp(34px,10vw,44px)}.section-heading p{font-size:16px}.universal-card{padding:24px;flex-direction:column;text-align:center}.qr-wrap{width:min(250px,100%)}.qr-code img,.qr-code canvas{width:100%!important;height:auto!important;aspect-ratio:1}.universal-copy h3{font-size:29px}.store-card{padding:20px 16px;gap:13px}.store-icon{flex-basis:48px;width:48px;height:48px;font-size:24px}.store-copy strong{font-size:19px}.store-arrow{font-size:20px}.app-showcase{padding:72px 0 10px}.screen-showcase{grid-template-columns:minmax(0,1fr);min-height:620px;padding:26px 20px 0}.showcase-copy{text-align:center;padding-top:4px}.showcase-number{font-size:52px}.showcase-copy h3{font-size:29px}.showcase-phone{justify-self:center;width:min(255px,83%);transform:translateY(35px)}.features{padding:55px 0 95px}.feature-grid{grid-template-columns:minmax(0,1fr)}.final-cta{padding:68px 0 105px}.light-cta{width:100%;white-space:normal}.footer{padding-bottom:105px}.sticky-download{display:block}}
@media(max-width:380px){.container{width:calc(100% - 22px)}.hero h1{font-size:39px}.hero-visual{min-height:410px}.phone-food{width:58%;left:0}.phone-gifts{width:48%;right:0;top:82px}.store-card{padding:17px 13px}.store-copy strong{font-size:17px}.store-copy span{font-size:11px}.recommended{display:none!important}.screen-showcase{min-height:580px}.showcase-phone{width:235px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
