:root {
    --snap-cream: #FAF8F5;
    --snap-dark: #1C1917;
    --snap-gold: #C5A880;
    --snap-gold-hover: #B3946B;
    --snap-gold-light: #E8DFD1;
    --snap-sage: #606C5D;
    --snap-wine: #6B2737;
    --snap-surface: #F4EFEA;
    --snap-stone-50: #fafaf9;
    --snap-stone-100: #f5f5f4;
    --snap-stone-200: #e7e5e4;
    --snap-stone-300: #d6d3d1;
    --snap-stone-400: #a8a29e;
    --snap-stone-500: #78716c;
    --snap-stone-600: #57534e;
    --snap-stone-700: #44403c;
    --snap-stone-800: #292524;
    --snap-stone-900: #1c1917;
    --snap-radius-xl: 1.5rem;
}

html { scroll-behavior: smooth; }
body { font-family: 'Plus Jakarta Sans', sans-serif; color: var(--snap-dark); }
.snap-heading, .snap-brand { font-family: 'Cormorant Garamond', serif; }
.snap-brand { font-size: 1.75rem; font-weight: 700; }
.snap-navbar { background: var(--snap-dark); }
.snap-auth-bg { background: var(--snap-cream); }
.snap-login-card { width: 100%; max-width: 440px; border-radius: 1rem; }
.snap-btn-primary { background: var(--snap-dark); border-color: var(--snap-dark); color: #fff; }
.snap-btn-primary:hover, .snap-btn-primary:focus { background: #332f2c; border-color: #332f2c; color: #fff; }
.event-shell { min-height: 100vh; background: var(--snap-cream); }

::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: var(--snap-cream); }
::-webkit-scrollbar-thumb { background: #D8CEBE; border-radius: 999px; }

.landing-page { background: var(--snap-cream); color: var(--snap-stone-800); -webkit-font-smoothing: antialiased; }
.landing-page h1, .landing-page h2, .landing-page h3, .landing-page h4 { font-family: 'Cormorant Garamond', serif; }
.landing-page a { color: inherit; }
.landing-page main > section[id] { scroll-margin-top: 80px; }
.text-wine { color: var(--snap-wine) !important; }
.min-w-0 { min-width: 0; }

.landing-header { position: fixed; top: 0; left: 0; right: 0; z-index: 1040; background: rgba(250, 248, 245, .91); border-bottom: 1px solid rgba(214, 211, 209, .55); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); transition: box-shadow .25s ease, background .25s ease; }
.landing-header.is-scrolled { background: rgba(250, 248, 245, .97); box-shadow: 0 10px 30px rgba(28, 25, 23, .06); }
.landing-nav-shell { min-height: 80px; }
.snap-logo { text-decoration: none; color: var(--snap-dark); }
.snap-logo:hover { color: var(--snap-dark); }
.snap-logo-mark { width: 40px; height: 40px; border-radius: 15px; display: grid; place-items: center; background: var(--snap-dark); color: var(--snap-gold); box-shadow: 0 8px 18px rgba(28, 25, 23, .14); transition: transform .2s ease; }
.snap-logo:hover .snap-logo-mark { transform: scale(1.05); }
.snap-logo-copy { display: flex; flex-direction: column; line-height: 1; }
.snap-logo-name { font-weight: 800; font-size: 1.2rem; letter-spacing: -.04em; }
.snap-logo-name span { color: var(--snap-gold); font-family: 'Cormorant Garamond', serif; font-style: italic; font-weight: 600; font-size: 1.48rem; }
.snap-logo-copy small { margin-top: 4px; font-size: .53rem; text-transform: uppercase; letter-spacing: .16em; color: var(--snap-stone-400); font-weight: 700; }
.landing-nav-links { gap: 1.3rem; }
.landing-nav-links .nav-link { padding: .5rem .1rem !important; font-size: .69rem; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: var(--snap-stone-600); transition: color .2s ease; }
.landing-nav-links .nav-link:hover { color: var(--snap-wine); }
.landing-login-link { color: var(--snap-stone-600); font-size: .73rem; font-weight: 700; padding: .6rem .55rem; }
.landing-login-link:hover { color: var(--snap-wine); }
.landing-header-demo { align-items: center; gap: .45rem; color: var(--snap-dark); font-size: .7rem; font-weight: 700; padding: .6rem .55rem; }
.landing-header-demo i { color: var(--snap-gold); }
.landing-toggler { border: 0; padding: .45rem; box-shadow: none !important; }

.btn-snap-dark, .btn-snap-gold, .btn-snap-light, .btn-plan-outline, .btn-cta-secondary { display: inline-flex; align-items: center; justify-content: center; gap: .6rem; border-radius: 999px; font-weight: 700; font-size: .78rem; transition: transform .18s ease, background .18s ease, border-color .18s ease, color .18s ease; }
.btn-snap-dark { background: var(--snap-dark); color: #fff; border: 1px solid var(--snap-dark); padding: .72rem 1.25rem; box-shadow: 0 10px 24px rgba(28, 25, 23, .12); }
.btn-snap-dark:hover { background: var(--snap-wine); border-color: var(--snap-wine); color: #fff; }
.btn-snap-gold { background: var(--snap-gold); color: var(--snap-dark); border: 1px solid var(--snap-gold); padding: .78rem 1.25rem; }
.btn-snap-gold:hover { background: var(--snap-gold-hover); border-color: var(--snap-gold-hover); color: var(--snap-dark); }
.btn-snap-light { background: #fff; color: var(--snap-stone-800); border: 1px solid var(--snap-stone-300); padding: .78rem 1.35rem; box-shadow: 0 5px 16px rgba(28, 25, 23, .04); }
.btn-snap-light i { color: var(--snap-gold); }
.btn-snap-light:hover { background: var(--snap-stone-100); border-color: var(--snap-stone-300); }
.btn-snap-dark:active, .btn-snap-gold:active, .btn-snap-light:active { transform: scale(.97); }

.landing-hero { position: relative; overflow: hidden; padding: 9.2rem 0 6rem; }
.hero-orb { position: absolute; width: 800px; height: 400px; top: 72px; left: 50%; transform: translateX(-50%); border-radius: 50%; background: radial-gradient(circle at 30% 35%, rgba(232, 223, 209, .7), rgba(253, 230, 138, .16) 48%, transparent 72%); filter: blur(38px); pointer-events: none; }
.hero-copy { position: relative; max-width: 780px; }
.industry-badge { display: inline-flex; align-items: center; gap: .55rem; padding: .42rem .85rem; margin-bottom: 1.5rem; border-radius: 999px; border: 1px solid rgba(197, 168, 128, .5); background: rgba(232, 223, 209, .55); font-size: .7rem; font-weight: 700; color: var(--snap-dark); }
.industry-badge span { width: 8px; height: 8px; border-radius: 50%; background: var(--snap-wine); box-shadow: 0 0 0 0 rgba(107, 39, 55, .35); animation: snapPulse 2.2s infinite; }
@keyframes snapPulse { 0% { box-shadow: 0 0 0 0 rgba(107,39,55,.32); } 70% { box-shadow: 0 0 0 8px rgba(107,39,55,0); } 100% { box-shadow: 0 0 0 0 rgba(107,39,55,0); } }
.hero-copy h1 { color: #0f0e0d; font-size: clamp(3rem, 6vw, 5rem); line-height: 1.03; letter-spacing: -.035em; font-weight: 700; margin-bottom: 1.5rem; }
.hero-copy h1 em { font-weight: 400; background: linear-gradient(135deg, var(--snap-dark) 20%, var(--snap-gold) 70%, var(--snap-wine) 100%); -webkit-background-clip: text; background-clip: text; color: transparent; }
.hero-subtitle { max-width: 680px; margin: 0 auto 2.4rem; color: var(--snap-stone-600); font-size: 1rem; line-height: 1.75; }
.hero-actions .btn-lg { min-height: 56px; padding-left: 1.65rem; padding-right: 1.65rem; font-size: .82rem; }
.hero-metrics { max-width: 680px; margin: 3rem auto 0; padding-top: 2.3rem; border-top: 1px solid rgba(214, 211, 209, .72); }
.hero-metrics strong { display: block; font-family: 'Cormorant Garamond', serif; font-size: clamp(1.7rem, 3vw, 2.2rem); line-height: 1; color: var(--snap-dark); }
.hero-metrics span { display: block; margin-top: .45rem; color: var(--snap-stone-500); font-size: .67rem; line-height: 1.45; font-weight: 500; }

.demo-preview { position: relative; max-width: 1030px; margin-top: 3.6rem; }
.demo-browser { position: relative; overflow: hidden; background: var(--snap-dark); border: 1px solid var(--snap-stone-800); border-radius: 1.65rem; padding: 1.5rem 1.75rem 1.8rem; color: #fff; box-shadow: 0 34px 70px rgba(28, 25, 23, .23); }
.demo-browser-bar { padding-bottom: 1rem; margin-bottom: 1.5rem; border-bottom: 1px solid var(--snap-stone-800); }
.browser-dots span { display: block; width: 11px; height: 11px; border-radius: 50%; }
.browser-dots span:nth-child(1) { background: #fb7185; }.browser-dots span:nth-child(2) { background: #f59e0b; }.browser-dots span:nth-child(3) { background: #34d399; }
.browser-address { color: var(--snap-stone-400); font: .66rem ui-monospace, SFMono-Regular, Menlo, monospace; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.live-status { display: inline-flex; align-items: center; gap: .4rem; white-space: nowrap; color: #6ee7b7; background: #022c22; border: 1px solid #065f46; border-radius: 999px; padding: .3rem .55rem; font-size: .56rem; font-weight: 800; }
.live-status i { width: 6px; height: 6px; background: #34d399; border-radius: 50%; }
.live-wall-panel { background: #0c0a09; border: 1px solid var(--snap-stone-800); border-radius: 1.1rem; padding: 1.25rem; box-shadow: inset 0 0 28px rgba(0,0,0,.25); }
.live-wall-panel h4 { color: #fff; font-size: 1.2rem; font-weight: 700; margin: 0; }
.live-wall-panel > div > div > p { margin: .15rem 0 0; color: var(--snap-stone-400); font-size: .62rem; }
.live-wall-panel > div > div > p strong { color: var(--snap-gold); }
.projection-label { color: var(--snap-gold); font-size: .68rem; font-weight: 700; display: block; }
.live-wall-panel small { color: var(--snap-stone-500); font-size: .55rem; display: block; }
.projected-photo { position: relative; aspect-ratio: 16 / 9; border-radius: .8rem; overflow: hidden; background: var(--snap-stone-900); border: 1px solid var(--snap-stone-800); }
.projected-photo img { width: 100%; height: 100%; object-fit: cover; display: block; }
.photo-caption { position: absolute; left: 0; right: 0; bottom: 0; padding: 2.8rem 1.1rem 1rem; background: linear-gradient(to top, rgba(0,0,0,.94), rgba(0,0,0,.38), transparent); font-size: .67rem; color: #d6d3d1; }
.photo-caption p { margin: 0; color: #fff; font-size: .78rem; font-weight: 600; }
.new-moment { display: inline-block; margin-right: .5rem; padding: .15rem .38rem; background: var(--snap-gold); color: var(--snap-dark); border-radius: .22rem; text-transform: uppercase; font-size: .53rem; font-weight: 800; }
.wall-qr-bar { margin-top: .85rem; padding: .65rem; border: 1px solid var(--snap-stone-800); border-radius: .7rem; background: rgba(28, 25, 23, .8); font-size: .65rem; }
.qr-placeholder { width: 40px; height: 40px; flex: 0 0 40px; display: grid; place-items: center; background: #fff; color: var(--snap-dark); border-radius: .5rem; font-size: 1.5rem; }
.wall-qr-bar strong { display: block; color: #e7e5e4; }
.wall-qr-bar small { color: var(--snap-stone-400); }
.wall-count { color: var(--snap-gold); font: .58rem ui-monospace, monospace; }
.phone-mockup { width: 100%; max-width: 280px; padding: .72rem; color: var(--snap-stone-800); background: var(--snap-cream); border: 4px solid var(--snap-stone-700); border-radius: 36px; box-shadow: 0 26px 50px rgba(0,0,0,.35); }
.phone-notch { width: 96px; height: 13px; margin: 0 auto .55rem; border-radius: 999px; background: var(--snap-stone-800); }
.phone-mini-header { display: flex; align-items: center; justify-content: space-between; padding: 0 .4rem .55rem; border-bottom: 1px solid var(--snap-stone-200); color: var(--snap-stone-500); font-size: .52rem; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.phone-mini-header i { width: 8px; height: 8px; border-radius: 50%; background: #22c55e; }
.phone-feed-item { padding: .65rem 0 .2rem; }
.phone-avatar { width: 25px; height: 25px; border-radius: 50%; display: grid; place-items: center; background: var(--snap-wine); color: #fff; font-size: .52rem; font-weight: 800; }
.phone-feed-item .d-flex > span:last-child strong, .phone-feed-item .d-flex > span:last-child small { display: block; }
.phone-feed-item .d-flex > span:last-child strong { font-size: .6rem; color: var(--snap-dark); line-height: 1.05; }.phone-feed-item .d-flex > span:last-child small { font-size: .49rem; color: var(--snap-stone-400); }
.phone-feed-item > img { width: 100%; height: 145px; border-radius: .72rem; object-fit: cover; }
.phone-like { font-size: .58rem; font-weight: 700; }.phone-like i { color: #f43f5e; margin-right: .2rem; }
.hd-pill { background: rgba(197,168,128,.18); color: var(--snap-dark); border-radius: .3rem; padding: .13rem .35rem; font-size: .48rem; }
.phone-feed-item p { margin: .3rem 0 0; color: var(--snap-stone-600); font-size: .52rem; line-height: 1.35; }
.phone-lead-banner { background: var(--snap-dark); color: #fff; border-radius: .7rem; padding: .45rem; text-align: center; }
.phone-lead-banner span { display: block; color: #e7e5e4; font-size: .48rem; }.phone-lead-banner strong { display: inline-block; margin-top: .22rem; padding: .13rem .42rem; border-radius: 999px; background: var(--snap-gold); color: var(--snap-dark); font-size: .48rem; }
.phone-browser-note { margin: .75rem 0 0; color: var(--snap-stone-400); font-size: .65rem; }

.landing-section { padding: 5rem 0; }
.section-white { background: #fff; }.section-cream { background: var(--snap-cream); }
.border-section { border-top: 1px solid rgba(231,229,228,.85); border-bottom: 1px solid rgba(231,229,228,.85); }.border-section-bottom { border-bottom: 1px solid rgba(231,229,228,.85); }
.section-heading { max-width: 690px; margin-bottom: 3.1rem; }
.section-eyebrow { display: block; margin-bottom: .45rem; color: var(--snap-gold); font-size: .66rem; line-height: 1.2; font-weight: 800; text-transform: uppercase; letter-spacing: .16em; }
.section-heading h2, .section-title { color: var(--snap-dark); font-size: clamp(2.15rem, 4vw, 3rem); line-height: 1.08; font-weight: 700; letter-spacing: -.02em; }
.section-heading p, .section-side-copy { margin-top: .75rem; color: var(--snap-stone-600); font-size: .84rem; line-height: 1.7; }
.benefit-card { padding: 2rem; border: 1px solid rgba(231,229,228,.9); border-radius: 1.5rem; background: var(--snap-cream); box-shadow: 0 5px 18px rgba(28,25,23,.035); transition: transform .22s ease, box-shadow .22s ease; }
.benefit-card:hover { transform: translateY(-3px); box-shadow: 0 12px 30px rgba(28,25,23,.065); }
.feature-icon { width: 48px; height: 48px; display: grid; place-items: center; margin-bottom: 1.4rem; border-radius: 15px; font-size: 1rem; }.icon-wine { color: var(--snap-wine); background: rgba(107,39,55,.09); }.icon-gold { color: #a88656; background: rgba(197,168,128,.2); }.icon-dark { color: #fff; background: var(--snap-dark); }
.benefit-card h3 { margin-bottom: .65rem; color: var(--snap-dark); font-size: 1.35rem; font-weight: 700; }.benefit-card p { min-height: 96px; margin-bottom: 1rem; color: var(--snap-stone-600); font-size: .77rem; line-height: 1.7; }.benefit-card strong { color: var(--snap-dark); font-size: .7rem; }.benefit-card strong i { color: #059669; margin-right: .35rem; }

.module-card { position: relative; overflow: hidden; display: flex; flex-direction: column; justify-content: space-between; padding: 2rem; border: 1px solid rgba(231,229,228,.85); border-radius: 1.5rem; background: #fff; box-shadow: 0 6px 18px rgba(28,25,23,.035); }
.module-top { display: flex; align-items: center; justify-content: space-between; margin-bottom: 1.5rem; }.module-top span { padding: .3rem .65rem; border-radius: 999px; background: var(--snap-stone-100); color: var(--snap-stone-800); font-size: .62rem; font-weight: 800; text-transform: uppercase; }.module-top i { color: var(--snap-stone-400); }.module-top-gold span { background: rgba(232,223,209,.7); }.module-top-gold i { color: var(--snap-wine); }
.module-card h3 { margin-bottom: .55rem; color: var(--snap-dark); font-size: 1.65rem; font-weight: 700; }.module-intro { margin-bottom: 1.4rem; color: var(--snap-stone-500); font-size: .72rem; }
.feature-list { list-style: none; padding: 0; margin: 0; display: grid; gap: .82rem; }.feature-list li { display: flex; align-items: flex-start; gap: .6rem; color: var(--snap-stone-700); font-size: .72rem; line-height: 1.55; }.feature-list li > i { margin-top: .17rem; color: var(--snap-wine); }.module-foot { margin-top: 2rem; padding-top: 1rem; border-top: 1px solid var(--snap-stone-100); color: var(--snap-stone-500); font-size: .64rem; font-weight: 600; }
.module-card-dark { background: var(--snap-dark); color: #fff; border-color: var(--snap-stone-800); box-shadow: 0 20px 45px rgba(28,25,23,.14); }.module-glow { position: absolute; right: -40px; top: -40px; width: 150px; height: 150px; border-radius: 50%; background: rgba(197,168,128,.2); filter: blur(28px); }.module-card-dark .module-top span { background: var(--snap-gold); color: var(--snap-dark); }.module-card-dark .module-top i { color: var(--snap-gold); }.module-card-dark h3 { color: #fff; }.module-card-dark .module-intro { color: var(--snap-stone-400); }.module-card-dark .feature-list li { color: #d6d3d1; }.module-card-dark .feature-list li > i { color: var(--snap-gold); }.module-card-dark .module-foot { color: var(--snap-gold); border-top-color: var(--snap-stone-800); }

.simulator-container { max-width: 1010px; }.simulator-card { padding: 2.2rem; border: 1px solid var(--snap-stone-200); border-radius: 1.6rem; background: var(--snap-cream); box-shadow: 0 20px 45px rgba(28,25,23,.08); }.simulator-control label { margin: 0; color: var(--snap-stone-700); font-size: .67rem; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }.simulator-control strong { color: var(--snap-wine); font-family: 'Cormorant Garamond', serif; font-size: 1.22rem; white-space: nowrap; }.simulator-control .form-range { accent-color: var(--snap-dark); }.simulator-control .form-range::-webkit-slider-thumb { background: var(--snap-dark); }.simulator-control .form-range::-moz-range-thumb { background: var(--snap-dark); }.range-labels { display: flex; justify-content: space-between; color: var(--snap-stone-400); font-size: .57rem; }.simulator-notes { padding: .9rem; border: 1px solid rgba(231,229,228,.9); border-radius: 1rem; background: rgba(255,255,255,.74); }.simulator-notes p { display: flex; gap: .5rem; margin: 0; color: var(--snap-stone-600); font-size: .66rem; line-height: 1.5; }.simulator-notes p + p { margin-top: .45rem; }.simulator-notes i { color: #059669; margin-top: .18rem; }
.simulator-result { position: relative; overflow: hidden; padding: 2rem; border: 1px solid var(--snap-stone-800); border-radius: 1.2rem; background: var(--snap-dark); color: #fff; box-shadow: 0 25px 45px rgba(28,25,23,.18); }.result-glow { position: absolute; right: -30px; bottom: -30px; width: 120px; height: 120px; background: rgba(197,168,128,.15); border-radius: 50%; filter: blur(20px); }.result-eyebrow { margin-bottom: 1rem; color: var(--snap-gold); font-size: .65rem; font-weight: 800; text-transform: uppercase; letter-spacing: .13em; }.simulator-result #totalLeadsResult { display: block; font-family: 'Cormorant Garamond', serif; font-size: 2.7rem; line-height: 1; }.simulator-result #totalLeadsResult + span { display: block; margin-top: .35rem; color: var(--snap-stone-400); font-size: .65rem; }.result-row { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding-top: .8rem; margin-top: .8rem; border-top: 1px solid var(--snap-stone-800); color: var(--snap-stone-400); font-size: .66rem; }.result-row b { color: #e7e5e4; text-align: right; }.result-row .result-positive { color: #6ee7b7; }.result-impact { margin-top: 1.2rem; padding-top: 1rem; border-top: 1px solid var(--snap-stone-800); color: #d6d3d1; font-size: .64rem; line-height: 1.55; }

.pricing-heading { max-width: 800px; }.billing-toggle { display: inline-flex; align-items: center; gap: .25rem; margin-top: 1.35rem; padding: .35rem; border-radius: 999px; background: rgba(231,229,228,.88); }.billing-btn { border: 0; border-radius: 999px; padding: .55rem 1rem; background: transparent; color: var(--snap-stone-600); font-size: .65rem; font-weight: 700; }.billing-btn.active { background: #fff; color: var(--snap-dark); box-shadow: 0 2px 8px rgba(28,25,23,.08); }.billing-btn span { margin-left: .3rem; padding: .15rem .38rem; border-radius: 999px; background: var(--snap-wine); color: #fff; font-size: .48rem; font-weight: 800; text-transform: uppercase; }
.pricing-grid { max-width: 1160px; }.pricing-card { position: relative; display: flex; flex-direction: column; justify-content: space-between; padding: 2rem; border: 1px solid rgba(231,229,228,.9); border-radius: 1.5rem; background: #fff; box-shadow: 0 6px 18px rgba(28,25,23,.035); transition: transform .2s ease, box-shadow .2s ease; }.pricing-card:hover { transform: translateY(-3px); box-shadow: 0 14px 32px rgba(28,25,23,.08); }.pricing-card h3 { color: var(--snap-dark); font-size: 1.65rem; font-weight: 700; }.pricing-card h3 span { font-size: 1.1rem; }.pricing-card h3 + p { min-height: 36px; margin: .25rem 0 0; color: var(--snap-stone-500); font-size: .68rem; line-height: 1.5; }.plan-price-wrap strong { color: var(--snap-dark); font-family: 'Cormorant Garamond', serif; font-size: 2.65rem; line-height: 1; }.plan-price-wrap > span { color: var(--snap-stone-500); font-size: .67rem; font-weight: 600; }.plan-price-wrap small { display: block; margin-top: .3rem; color: var(--snap-stone-400); font-size: .57rem; }.plan-features { list-style: none; padding: 0 0 1.35rem; margin: 0; border-bottom: 1px solid var(--snap-stone-100); display: grid; gap: .72rem; }.plan-features li { display: flex; align-items: flex-start; gap: .55rem; color: var(--snap-stone-700); font-size: .69rem; line-height: 1.45; }.plan-features li i { width: 12px; margin-top: .15rem; }.plan-features .included i { color: #059669; }.plan-features .excluded { color: var(--snap-stone-400); }.btn-plan-outline { min-height: 44px; border: 1px solid var(--snap-stone-300); color: var(--snap-stone-800); background: #fff; }.btn-plan-outline:hover { background: var(--snap-stone-100); border-color: var(--snap-stone-300); }
.pricing-card-featured { border: 2px solid var(--snap-gold); background: var(--snap-dark); color: #fff; box-shadow: 0 28px 50px rgba(28,25,23,.18); transform: translateY(-8px); }.pricing-card-featured:hover { transform: translateY(-11px); }.recommended-badge { position: absolute; top: -14px; left: 50%; transform: translateX(-50%); white-space: nowrap; padding: .3rem .8rem; border-radius: 999px; background: var(--snap-gold); color: var(--snap-dark); box-shadow: 0 5px 13px rgba(28,25,23,.12); font-size: .52rem; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; }.pricing-card-featured h3 { color: #fff; }.pricing-card-featured h3 + p { color: var(--snap-stone-400); }.pricing-card-featured .plan-price-wrap strong { color: var(--snap-gold); }.pricing-card-featured .plan-price-wrap > span { color: var(--snap-stone-400); }.pricing-card-featured .plan-price-wrap small { color: #d8b98f; }.pricing-card-featured .plan-features { border-bottom-color: var(--snap-stone-800); }.pricing-card-featured .plan-features li { color: #d6d3d1; }.pricing-card-featured .plan-features .included i { color: var(--snap-gold); }.pricing-card-featured .plan-features .excluded { color: var(--snap-stone-500); }

.faq-container { max-width: 870px; }.snap-accordion { display: grid; gap: .75rem; }.snap-accordion .accordion-item { overflow: hidden; border: 1px solid var(--snap-stone-200); border-radius: 1rem; background: rgba(250,248,245,.35); }.snap-accordion .accordion-button { padding: 1.15rem 1.25rem; background: transparent; color: var(--snap-dark); box-shadow: none; font-family: 'Plus Jakarta Sans', sans-serif; font-size: .82rem; font-weight: 700; }.snap-accordion .accordion-button:not(.collapsed) { background: var(--snap-cream); color: var(--snap-wine); }.snap-accordion .accordion-button::after { width: .85rem; height: .85rem; background-size: .85rem; }.snap-accordion .accordion-body { padding: 0 1.25rem 1.2rem; color: var(--snap-stone-600); font-size: .75rem; line-height: 1.7; }

.final-cta-section { position: relative; overflow: hidden; padding: 5.4rem 0; background: #0c0a09; color: #fff; }.final-cta-section::before { content: ''; position: absolute; width: 580px; height: 250px; left: 50%; top: -130px; transform: translateX(-50%); border-radius: 50%; background: rgba(197,168,128,.12); filter: blur(55px); }.final-cta-section h2 { max-width: 780px; margin: 0 auto 1.2rem; color: #fff; font-size: clamp(2.2rem, 4.5vw, 3.4rem); font-weight: 700; line-height: 1.08; }.final-cta-section p { max-width: 590px; margin: 0 auto 2rem; color: var(--snap-stone-400); font-size: .84rem; line-height: 1.7; }.final-cta-section .btn-lg { min-height: 52px; padding-left: 1.45rem; padding-right: 1.45rem; }.btn-cta-secondary { border: 1px solid var(--snap-stone-800); background: var(--snap-dark); color: #d6d3d1; }.btn-cta-secondary:hover { background: var(--snap-stone-800); color: #fff; }

.landing-footer { padding: 3rem 0; border-top: 1px solid var(--snap-stone-800); background: var(--snap-dark); color: var(--snap-stone-400); font-size: .68rem; }.footer-main { padding-bottom: 2rem; border-bottom: 1px solid var(--snap-stone-800); }.footer-mark { width: 34px; height: 34px; display: grid; place-items: center; border-radius: .72rem; background: var(--snap-gold); color: var(--snap-dark); font-size: .68rem; font-weight: 800; }.footer-main strong { display: block; color: #fff; font-size: .95rem; }.footer-main strong em { color: var(--snap-gold); font-family: 'Cormorant Garamond', serif; font-size: 1.05rem; }.footer-main small { display: block; color: var(--snap-stone-500); font-size: .55rem; }.footer-links a, .footer-links button { padding: 0; border: 0; background: transparent; color: var(--snap-stone-400); text-decoration: none; font-size: .66rem; }.footer-links a:hover, .footer-links button:hover { color: #fff; }.server-note { color: #d6d3d1; font-size: .62rem; }.server-note i { display: inline-block; width: 8px; height: 8px; margin-right: .4rem; border-radius: 50%; background: #22c55e; }.footer-bottom { padding-top: 2rem; color: var(--snap-stone-500); font-size: .58rem; }.footer-bottom p { margin: 0; }

.snap-lead-modal .modal-content { position: relative; border: 0; border-radius: 1.65rem; box-shadow: 0 30px 80px rgba(0,0,0,.25); }.snap-lead-modal .modal-body { padding: 2rem; }.snap-lead-modal .modal-close { position: absolute; top: 1.1rem; right: 1.1rem; z-index: 2; width: 2rem; height: 2rem; padding: .55rem; border-radius: 50%; background-color: var(--snap-stone-100); opacity: .65; }.snap-lead-modal h2 { margin-bottom: .25rem; color: var(--snap-dark); font-size: 1.85rem; font-weight: 700; }.modal-intro { margin-bottom: 1.35rem; color: var(--snap-stone-500); font-size: .7rem; line-height: 1.55; }.snap-lead-modal .form-label { margin-bottom: .3rem; color: var(--snap-stone-600); font-size: .58rem; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }.snap-lead-modal .form-label span { color: var(--snap-stone-400); font-weight: 500; text-transform: none; }.snap-lead-modal .form-control, .snap-lead-modal .form-select { min-height: 44px; border: 1px solid transparent; border-radius: .72rem; background: var(--snap-stone-100); color: var(--snap-stone-800); font-size: .72rem; }.snap-lead-modal textarea.form-control { min-height: auto; }.snap-lead-modal .form-control:focus, .snap-lead-modal .form-select:focus { border-color: var(--snap-gold); background: #fff; box-shadow: 0 0 0 .2rem rgba(197,168,128,.16); }.snap-lead-modal .invalid-feedback { font-size: .58rem; }.lead-submit { min-height: 48px; border-radius: .75rem; }.lead-privacy-note { margin: .7rem 0 0; color: var(--snap-stone-400); text-align: center; font-size: .55rem; }.landing-toast-container { z-index: 1090; margin-top: 78px; }.landing-toast-container .toast { background: var(--snap-dark); color: #fff; border-radius: 999px; box-shadow: 0 14px 35px rgba(28,25,23,.22); }.landing-toast-container .toast-body { display: flex; align-items: center; gap: .55rem; font-size: .68rem; font-weight: 600; }.landing-toast-container .toast-body i { color: #34d399; }

@media (max-width: 1199.98px) { .landing-nav-links { gap: .75rem; } }
@media (max-width: 991.98px) {
    .landing-header .navbar-collapse { position: absolute; top: 80px; left: 0; right: 0; padding: 1rem calc((100vw - 720px) / 2 + .75rem) 1.25rem; background: rgba(250,248,245,.985); border-bottom: 1px solid var(--snap-stone-200); box-shadow: 0 18px 30px rgba(28,25,23,.08); }
    .landing-nav-links { gap: .1rem; }.landing-nav-links .nav-link { padding: .65rem 0 !important; }
    .pricing-card-featured { transform: none; }.pricing-card-featured:hover { transform: translateY(-3px); }
}
@media (max-width: 767.98px) {
    .landing-hero { padding: 7.8rem 0 4.5rem; }.hero-copy h1 { font-size: clamp(2.65rem, 12vw, 4rem); }.hero-subtitle { font-size: .88rem; }.hero-metrics { margin-top: 2.4rem; }.hero-metrics span { font-size: .59rem; }
    .demo-browser { padding: 1rem; border-radius: 1.3rem; }.demo-preview { margin-top: 2.8rem; }.live-wall-panel { padding: .85rem; }.photo-caption { padding: 2.4rem .8rem .75rem; }.photo-caption p { font-size: .65rem; }
    .landing-section { padding: 4rem 0; }.section-heading { margin-bottom: 2.4rem; }.benefit-card p { min-height: auto; }
    .simulator-card { padding: 1.25rem; }.simulator-result { padding: 1.4rem; }
    .pricing-grid { gap: 1.5rem !important; }.pricing-card { padding: 1.6rem; }
    .final-cta-section { padding: 4.4rem 0; }.snap-lead-modal .modal-body { padding: 1.5rem; }
}
@media (max-width: 575.98px) {
    .landing-nav-shell { min-height: 72px; }.landing-header .navbar-collapse { top: 72px; padding-left: .9rem; padding-right: .9rem; }.snap-logo-mark { width: 36px; height: 36px; border-radius: 13px; }.snap-logo-copy small { display: none; }.snap-logo-name { font-size: 1.05rem; }.snap-logo-name span { font-size: 1.3rem; }.landing-login-link { padding-left: .25rem; padding-right: .25rem; }
    .landing-hero { padding-top: 7rem; }.industry-badge { max-width: 94%; font-size: .61rem; text-align: left; }.hero-actions .btn { width: 100%; }.hero-metrics { --bs-gutter-x: .65rem; }.hero-metrics strong { font-size: 1.6rem; }.hero-metrics span { font-size: .53rem; }
    .demo-browser-bar { margin-bottom: 1rem; }.live-status { font-size: .48rem; }.wall-qr-bar { padding: .5rem; }.qr-placeholder { width: 34px; height: 34px; flex-basis: 34px; font-size: 1.2rem; }
    .section-heading h2, .section-title { font-size: 2.15rem; }.billing-toggle { width: 100%; justify-content: center; }.billing-btn { flex: 1 1 0; padding: .5rem .5rem; }.billing-btn span { display: block; margin: .18rem 0 0; }
    .result-row { align-items: flex-start; }.snap-accordion .accordion-button { font-size: .74rem; }.footer-main, .footer-bottom { text-align: center; }
}
