:root{--cream: #FAF6F0;--cream-dark: #F2EBE0;--paper: #FFFFFF;--forest: #2D4A2C;--forest-light: #3F6440;--rust: #C8602F;--rust-light: #E07F4A;--rust-soft: #F7E5DA;--charcoal: #2A2A28;--gray-700: #4A4946;--gray-500: #8B8983;--gray-300: #C8C5BC;--gray-200: #E5E1D6;--gray-100: #F0EDE5;--leaf: #6B8E4E;--leaf-soft: #E8EFDE;--warning: #B8881F;--warning-soft: #FBF3DA;--shadow-sm: 0 1px 2px rgba(42, 42, 40, .06);--shadow-md: 0 4px 16px rgba(42, 42, 40, .08);--shadow-lg: 0 12px 40px rgba(42, 42, 40, .12);--serif: "Fraunces", Georgia, serif;--sans: "Manrope", -apple-system, BlinkMacSystemFont, sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--sans);background:var(--cream);color:var(--charcoal);line-height:1.55;min-height:100vh;background-image:radial-gradient(circle at 15% 10%,rgba(200,96,47,.04) 0%,transparent 40%),radial-gradient(circle at 85% 90%,rgba(45,74,44,.05) 0%,transparent 40%)}.app{max-width:720px;margin:0 auto;padding:24px 20px 60px;min-height:100vh}.top-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:32px}.logo{font-family:var(--serif);font-size:22px;font-weight:600;color:var(--forest);letter-spacing:-.02em;display:flex;align-items:center;gap:8px}.logo svg{width:28px;height:28px}.badge{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--rust);background:var(--rust-soft);padding:4px 10px;border-radius:100px;font-weight:600}.progress-wrap{margin-bottom:40px}.progress-bar{height:4px;background:var(--gray-200);border-radius:100px;overflow:hidden;position:relative}.progress-fill{height:100%;background:linear-gradient(90deg,var(--forest),var(--leaf));border-radius:100px;transition:width .5s cubic-bezier(.16,1,.3,1);width:0%}.progress-meta{display:flex;justify-content:space-between;margin-top:10px;font-size:13px;color:var(--gray-500);font-weight:500}.progress-meta strong{color:var(--forest);font-weight:600}.screen{display:none;animation:fadeUp .5s cubic-bezier(.16,1,.3,1)}.screen.active{display:block}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.intro{text-align:center;padding-top:20px}.intro-illustration{width:180px;height:180px;margin:0 auto 32px}.intro-eyebrow{font-family:var(--sans);font-size:13px;text-transform:uppercase;letter-spacing:.15em;color:var(--rust);font-weight:600;margin-bottom:20px}.intro h1{font-family:var(--serif);font-size:clamp(36px,7vw,56px);line-height:1.05;font-weight:500;color:var(--forest);letter-spacing:-.025em;margin-bottom:24px;max-width:580px;margin-left:auto;margin-right:auto}.intro h1 em{font-style:italic;color:var(--rust);font-weight:400}.intro-lede{font-size:18px;color:var(--gray-700);max-width:480px;margin:0 auto 40px;line-height:1.6}.intro-features{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-bottom:48px}.intro-feature{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;background:var(--paper);border:1px solid var(--gray-200);border-radius:100px;font-size:13px;font-weight:500;color:var(--gray-700)}.intro-feature svg{width:16px;height:16px;color:var(--leaf)}.step-eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.15em;color:var(--rust);font-weight:600;margin-bottom:12px}.step-title{font-family:var(--serif);font-size:clamp(28px,5vw,40px);font-weight:500;line-height:1.15;color:var(--forest);letter-spacing:-.02em;margin-bottom:12px}.step-title em{font-style:italic;color:var(--rust)}.step-subtitle{font-size:16px;color:var(--gray-700);margin-bottom:36px;max-width:520px;line-height:1.6}.field-group{margin-bottom:32px}.field-label{display:block;font-size:14px;font-weight:600;color:var(--forest);margin-bottom:12px;letter-spacing:.02em}.field-hint{font-size:13px;color:var(--gray-500);margin-top:8px;font-style:italic}.text-input{width:100%;padding:16px 20px;font-family:var(--sans);font-size:16px;background:var(--paper);border:1.5px solid var(--gray-200);border-radius:14px;color:var(--charcoal);transition:all .2s ease}.text-input:focus{outline:none;border-color:var(--forest);box-shadow:0 0 0 4px #2d4a2c14}.text-input::placeholder{color:var(--gray-300)}.options-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.options-grid.two-col{grid-template-columns:repeat(2,1fr)}.options-grid.three-col{grid-template-columns:repeat(3,1fr)}.options-grid.four-col{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.option{display:flex;flex-direction:column;align-items:flex-start;padding:18px 20px;background:var(--paper);border:1.5px solid var(--gray-200);border-radius:14px;cursor:pointer;transition:all .2s ease;text-align:left;font-family:var(--sans);width:100%;position:relative}.option:hover{border-color:var(--forest-light);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.option.selected{border-color:var(--forest);background:var(--leaf-soft);box-shadow:0 0 0 4px #2d4a2c14}.option-icon{width:32px;height:32px;margin-bottom:8px;color:var(--forest)}.option-title{font-size:15px;font-weight:600;color:var(--charcoal);margin-bottom:2px}.option-desc{font-size:13px;color:var(--gray-500);line-height:1.4}.option-checkmark{position:absolute;top:12px;right:12px;width:22px;height:22px;border-radius:50%;background:var(--forest);color:#fff;display:none;align-items:center;justify-content:center}.option.selected .option-checkmark{display:flex}.option-checkmark svg{width:12px;height:12px}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{padding:10px 18px;background:var(--paper);border:1.5px solid var(--gray-200);border-radius:100px;cursor:pointer;font-family:var(--sans);font-size:14px;font-weight:500;color:var(--gray-700);transition:all .2s ease}.chip:hover{border-color:var(--forest-light);color:var(--forest)}.chip.selected{background:var(--forest);border-color:var(--forest);color:#fff}.slider-wrap{background:var(--paper);border:1.5px solid var(--gray-200);border-radius:16px;padding:28px 24px 24px}.slider-display{text-align:center;margin-bottom:24px}.slider-value{font-family:var(--serif);font-size:48px;font-weight:500;color:var(--forest);letter-spacing:-.02em;line-height:1}.slider-unit{font-family:var(--sans);font-size:18px;color:var(--gray-500);margin-left:4px;font-weight:500}.slider{-webkit-appearance:none;width:100%;height:6px;background:var(--gray-200);border-radius:100px;outline:none;margin:8px 0 4px}.slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:28px;height:28px;background:var(--forest);border-radius:50%;cursor:pointer;border:4px solid var(--cream);box-shadow:var(--shadow-md);transition:transform .15s ease}.slider::-webkit-slider-thumb:hover{transform:scale(1.1)}.slider::-moz-range-thumb{width:28px;height:28px;background:var(--forest);border-radius:50%;cursor:pointer;border:4px solid var(--cream);box-shadow:var(--shadow-md)}.slider-marks{display:flex;justify-content:space-between;font-size:12px;color:var(--gray-500);margin-top:4px}.info-bar{display:flex;align-items:center;gap:16px;padding:20px 24px;background:linear-gradient(135deg,var(--leaf-soft) 0%,var(--cream) 100%);border:1px solid var(--leaf);border-radius:16px;margin-top:24px}.info-bar-icon{width:44px;height:44px;border-radius:12px;background:var(--forest);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}.info-bar-icon svg{width:22px;height:22px}.info-bar-text{flex:1}.info-bar-label{font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:var(--forest-light);font-weight:600;margin-bottom:2px}.info-bar-value{font-size:17px;font-weight:600;color:var(--charcoal)}.info-bar-value strong{font-family:var(--serif);font-weight:600;font-size:22px;color:var(--forest)}.actions{display:flex;gap:12px;align-items:center;margin-top:40px;padding-top:28px;border-top:1px solid var(--gray-200)}.btn{font-family:var(--sans);font-size:15px;font-weight:600;padding:14px 28px;border-radius:12px;border:none;cursor:pointer;transition:all .15s ease;display:inline-flex;align-items:center;gap:8px;text-decoration:none}.btn-primary{background:var(--forest);color:#fff;box-shadow:var(--shadow-sm)}.btn-primary:hover{background:var(--forest-light);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-primary:disabled{background:var(--gray-300);cursor:not-allowed;transform:none;box-shadow:none}.btn-ghost{background:transparent;color:var(--gray-700)}.btn-ghost:hover{color:var(--forest)}.btn-large{padding:18px 36px;font-size:17px;border-radius:14px}.btn-block{width:100%;justify-content:center}.spacer{flex:1}.result-hero{text-align:center;margin-bottom:40px}.result-celebrate{font-size:13px;text-transform:uppercase;letter-spacing:.15em;color:var(--rust);font-weight:600;margin-bottom:12px}.result-title{font-family:var(--serif);font-size:clamp(32px,6vw,44px);font-weight:500;line-height:1.1;color:var(--forest);letter-spacing:-.02em;margin-bottom:14px}.result-title em{font-style:italic;color:var(--rust)}.result-subtitle{font-size:16px;color:var(--gray-700);max-width:480px;margin:0 auto;line-height:1.6}.summary-card{background:var(--paper);border:1.5px solid var(--gray-200);border-radius:18px;padding:28px;margin-bottom:20px}.summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:24px}.summary-stat{text-align:center}.summary-stat-label{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--gray-500);font-weight:600;margin-bottom:6px}.summary-stat-value{font-family:var(--serif);font-size:28px;font-weight:500;color:var(--forest);line-height:1}.summary-stat-unit{font-size:14px;color:var(--gray-500);margin-left:2px;font-family:var(--sans)}.recommendation-pill{display:inline-flex;align-items:center;gap:8px;background:var(--leaf-soft);color:var(--forest);border:1px solid var(--leaf);border-radius:100px;padding:6px 14px;font-size:13px;font-weight:500;margin-bottom:8px}.recommendation-pill svg{width:14px;height:14px}.cart-section-title{font-family:var(--serif);font-size:22px;font-weight:500;color:var(--forest);margin:32px 0 16px;letter-spacing:-.01em}.product-list{display:flex;flex-direction:column;gap:10px}.product{display:flex;align-items:center;gap:16px;padding:14px 16px;background:var(--paper);border:1px solid var(--gray-200);border-radius:12px;transition:all .15s ease}.product:hover{border-color:var(--gray-300)}.product-thumb{width:48px;height:48px;border-radius:10px;background:var(--cream-dark);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:20px}.product-thumb.beef{background:#e8d4c9}.product-thumb.pork{background:#f5ddd2}.product-thumb.chicken{background:#fcefd3}.product-thumb.duck{background:#f0e0cf}.product-thumb.turkey{background:#e8d9c3}.product-thumb.fish{background:#d6e5ea}.product-info{flex:1;min-width:0}.product-name{font-size:14px;font-weight:600;color:var(--charcoal);margin-bottom:2px;line-height:1.3}.product-meta{font-size:12px;color:var(--gray-500)}.product-qty{text-align:right;flex-shrink:0}.product-qty-num{font-family:var(--serif);font-size:18px;font-weight:500;color:var(--forest)}.product-qty-price{font-size:12px;color:var(--gray-500)}.upsell{margin-top:28px;padding:22px;background:var(--rust-soft);border:1px solid var(--rust-light);border-radius:16px}.upsell-title{font-size:14px;font-weight:600;color:var(--rust);margin-bottom:4px}.upsell-desc{font-size:13px;color:var(--gray-700);margin-bottom:14px;line-height:1.5}.upsell-list{display:flex;flex-direction:column;gap:8px}.upsell-item{display:flex;align-items:center;gap:12px;padding:10px 14px;background:var(--paper);border-radius:10px}.upsell-checkbox{width:20px;height:20px;border:2px solid var(--gray-300);border-radius:6px;cursor:pointer;flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.upsell-checkbox.checked{background:var(--rust);border-color:var(--rust);color:#fff}.upsell-checkbox svg{width:12px;height:12px;opacity:0;transition:opacity .15s ease}.upsell-checkbox.checked svg{opacity:1}.upsell-item-info{flex:1}.upsell-item-name{font-size:14px;font-weight:600;color:var(--charcoal)}.upsell-item-reason{font-size:12px;color:var(--gray-500)}.upsell-item-price{font-family:var(--serif);font-size:16px;font-weight:500;color:var(--forest)}.delivery{margin-top:28px;padding:18px 22px;background:var(--warning-soft);border:1px solid #E8C77C;border-radius:14px;display:flex;gap:14px;align-items:flex-start}.delivery-icon{width:36px;height:36px;border-radius:10px;background:var(--warning);color:#fff;flex-shrink:0;display:flex;align-items:center;justify-content:center}.delivery-icon svg{width:18px;height:18px}.delivery-text{flex:1;font-size:14px;color:var(--charcoal);line-height:1.5}.delivery-text strong{color:var(--warning)}.total-bar{margin-top:32px;padding:24px 28px;background:var(--forest);color:#fff;border-radius:18px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px}.total-label{font-size:12px;text-transform:uppercase;letter-spacing:.12em;opacity:.8;margin-bottom:4px}.total-value{font-family:var(--serif);font-size:38px;font-weight:500;line-height:1;letter-spacing:-.02em}.total-value-unit{font-size:16px;font-family:var(--sans);font-weight:500;margin-left:6px;opacity:.85}.total-cta{background:var(--rust);color:#fff;padding:16px 32px;border-radius:12px;font-size:16px;font-weight:600;border:none;cursor:pointer;transition:all .15s ease;box-shadow:0 4px 16px #c8602f4d}.total-cta:hover{background:var(--rust-light);transform:translateY(-1px)}.v2-teaser{margin-top:60px;padding:32px;background:linear-gradient(135deg,var(--cream-dark) 0%,var(--cream) 100%);border:1px dashed var(--gray-300);border-radius:18px;text-align:center}.v2-eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.18em;color:var(--rust);font-weight:600;margin-bottom:8px}.v2-title{font-family:var(--serif);font-size:22px;font-weight:500;color:var(--forest);margin-bottom:8px;font-style:italic}.v2-desc{font-size:14px;color:var(--gray-700);max-width:420px;margin:0 auto;line-height:1.6}.stack{display:flex;flex-direction:column;gap:16px}.stack-sm{display:flex;flex-direction:column;gap:8px}.row{display:flex;gap:12px;flex-wrap:wrap}.text-center{text-align:center}@media(max-width:540px){.options-grid.two-col,.options-grid.three-col,.options-grid.four-col{grid-template-columns:1fr}.summary-grid{grid-template-columns:1fr;gap:16px}.total-bar{flex-direction:column;align-items:stretch}.total-cta{width:100%}}
