:root{--paper:#f8f7f2;--surface:#fff;--ink:#2a2d24;--slate:#6f7864;--slate-light:#a9b79b;--line:#e2e6da;--line-soft:#eef1e8;--focus:#5b6e4f;--focus-bright:#7d8f6f;--focus-soft:#e9ede3;--radius-sm:10px;--radius-md:16px;--radius-lg:22px;--container:1180px;--shadow-card:0 1px 2px rgba(42,45,36,.04),0 12px 32px rgba(42,45,36,.05)}*{box-sizing:border-box}body,html{margin:0;padding:0;min-height:100%;background:var(--paper);color:var(--ink)}body{font-family:var(--font-body),Inter,system-ui,-apple-system,sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{max-width:100%}img,main{display:block}h1,h2,h3{font-family:var(--font-display),Georgia,serif;font-weight:600;letter-spacing:-.01em;color:var(--ink);margin:0}h1{font-size:clamp(2rem,3.8vw,3rem);line-height:1.1}h2{font-size:clamp(1.4rem,2.6vw,2rem);line-height:1.18}h3{font-size:1.05rem;line-height:1.3}p{margin:0}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}@media (prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;transition-duration:.001ms!important}}.app-shell{width:min(var(--container),calc(100% - 40px));margin:0 auto}.section{padding:64px 0}.section--tight{padding:40px 0}.section--alt{background:var(--line-soft);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.section-head{max-width:640px;margin:0 0 32px;display:grid;gap:10px}.section-head--center{margin-inline:auto;text-align:center}.eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-body),Inter,sans-serif;font-size:12px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--focus)}.section-copy{color:var(--slate);max-width:60ch}.section-copy--center{margin-inline:auto}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:15px 30px;border-radius:var(--radius-sm);font-weight:600;font-size:15px;border:1px solid transparent;transition:background-color .15s ease,color .15s ease,border-color .15s ease,transform .1s ease;white-space:nowrap}.btn:active{transform:translateY(1px)}.btn--primary{background:var(--focus);color:#fff}.btn--primary:hover{filter:brightness(.92)}.btn--secondary{background:transparent;border-color:var(--line);color:var(--ink)}.btn--secondary:hover{border-color:var(--focus);color:var(--focus)}.btn--block{width:100%}.btn--lg{padding:17px 36px;font-size:16px}.btn:disabled{cursor:not-allowed}.btn--primary:disabled{background:var(--line-soft);color:var(--slate-light)}.btn--secondary:disabled{opacity:.5}.logo{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-display),serif;font-weight:600;font-size:1.15rem;color:var(--ink)}.logo-mark{flex:0 0 auto;width:38px;height:38px;border-radius:var(--radius-sm);-o-object-fit:cover;object-fit:cover}.frame{position:relative;border-radius:var(--radius-md)}.frame-corner{position:absolute;width:22px;height:22px;border:2px solid var(--ink);transition:border-color .2s ease;pointer-events:none}.frame-corner--tl{top:-2px;left:-2px;border-right:none;border-bottom:none;border-radius:4px 0 0 0}.frame-corner--tr{top:-2px;right:-2px;border-left:none;border-bottom:none;border-radius:0 4px 0 0}.frame-corner--bl{bottom:-2px;left:-2px;border-right:none;border-top:none;border-radius:0 0 0 4px}.frame-corner--br{bottom:-2px;right:-2px;border-left:none;border-top:none;border-radius:0 0 4px 0}.frame--focus .frame-corner{border-color:var(--focus)}.frame--muted .frame-corner{border-color:var(--line)}.navbar{position:sticky;top:0;z-index:50;background:transparent;border-bottom:1px solid transparent;transition:background-color .2s ease,border-color .2s ease,box-shadow .2s ease}.navbar--scrolled{background:hsla(50,30%,96%,.82);backdrop-filter:blur(14px);border-bottom-color:var(--line);box-shadow:0 4px 24px rgba(42,45,36,.04)}.navbar-inner{justify-content:space-between;gap:24px;padding:18px 0}.navbar-inner,.navbar-links{display:flex;align-items:center}.navbar-links{gap:28px;font-size:14px;font-weight:600;color:var(--slate)}.navbar-links a:hover{color:var(--ink)}.navbar-cta{padding:11px 22px;font-size:14px}@media (max-width:860px){.navbar-links{display:none}}.hero{padding:24px 0;min-height:calc(100vh - 160px);display:flex}.hero,.hero-grid{align-items:center}.hero-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:48px}.hero-copy{display:grid;gap:14px}.hero-copy h1{max-width:14ch}.hero-subtitle{font-size:1rem;color:var(--slate);max-width:46ch}.hero-actions{display:grid;gap:12px;margin-top:4px}.trust-line{display:flex;flex-wrap:wrap;align-items:center;gap:14px}.trust-line-label{font-size:14px;color:var(--slate)}.trust-badges{display:flex;flex-wrap:wrap;align-items:center;gap:14px}.trust-badge{display:inline-flex;align-items:center;gap:6px}.trust-stars{color:#f5b400;letter-spacing:2px;font-size:14px}.trust-line-icon{width:20px;height:20px;flex:0 0 auto}.trust-line-score{font-weight:700;font-size:15px;color:var(--ink)}.trustpilot-stars{display:inline-flex;gap:2px}.trustpilot-stars-icon{width:16px;height:16px}.hero-features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:20px}.hero-feature{display:flex;align-items:flex-start;gap:12px}.hero-feature-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:var(--focus-soft);color:var(--focus);flex:0 0 auto}.hero-feature-icon svg{width:18px;height:18px}.hero-feature h3{font-size:14px;font-weight:600;margin:0 0 2px;color:var(--ink)}.hero-feature p{font-size:14px;color:var(--slate);margin:0;line-height:1.5}.stats-banner-inner{display:grid;justify-items:center;gap:16px;text-align:center;padding-bottom:28px;margin-bottom:32px;border-bottom:1px solid var(--line)}.stats-banner-figure{max-width:34ch;font-size:2.1rem;line-height:1.25}.stats-highlight{color:var(--focus)}.stats-highlight--alt{color:var(--ink)}.stats-banner-caption{color:var(--slate);font-size:14px;margin:0}.brand-row{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:24px 44px;max-width:720px}.brand-logo{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-display),serif;font-weight:700;font-size:19px;color:var(--brand-color);opacity:.85;transition:opacity .2s ease}.brand-logo:hover{opacity:1}.brand-logo-icon{width:22px;height:22px;flex:0 0 auto}.brand-logo-icon svg{width:100%;height:100%;display:block}.brand-logo--wordmark .brand-logo-icon{width:auto;height:var(--icon-height,26px)}.brand-logo--wordmark .brand-logo-icon svg{width:auto;height:100%}.hero-showcase,.hero-showcase-pair{display:grid;gap:16px}.hero-showcase-pair{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-showcase-pane{display:grid;gap:8px}.hero-showcase-photo{position:relative;aspect-ratio:2/3;border-radius:var(--radius-lg);overflow:hidden;background:var(--line-soft)}.hero-showcase-img{-o-object-fit:cover;object-fit:cover}.showcase-label{font-family:var(--font-body),Inter,sans-serif;font-size:12px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--slate);text-align:center}.showcase-label--after{color:var(--focus)}.showcase-dots{display:flex;justify-content:center;gap:8px}.showcase-dot{width:8px;height:8px;border-radius:50%;background:var(--line);border:none;padding:0;transition:background-color .15s ease}.showcase-dot--active{background:var(--focus)}.how-it-works-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);margin-bottom:32px;box-shadow:var(--shadow-card)}.steps-row{display:flex;align-items:center;gap:16px;padding:14px 24px}.steps-row-label{flex:0 0 auto;font-family:var(--font-body),Inter,sans-serif;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--slate);padding-right:16px;border-right:1px solid var(--line)}.step-row-item{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.step-frame{flex:0 0 auto;width:28px;height:28px;color:var(--ink)}.step-frame svg{width:100%;height:100%;display:block}.step-row-text{margin:0;font-size:13px;line-height:1.4;color:var(--slate);white-space:nowrap}.step-row-text strong{font-family:var(--font-display),serif;font-size:13px;font-weight:600;color:var(--ink);margin-right:4px}.step-arrow{flex:0 0 auto;width:28px;height:14px;color:var(--slate-light)}.step-arrow svg{width:100%;height:100%;display:block}.pricing-card{max-width:420px;margin:0 auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:32px;box-shadow:var(--shadow-card);display:grid;gap:20px}.pricing-card-head{display:grid;gap:6px;text-align:center}.pricing-card-label{font-family:var(--font-body),Inter,sans-serif;font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--focus)}.pricing-card-price{margin:0;display:flex;align-items:baseline;justify-content:center;gap:6px}.pricing-card-amount{font-family:var(--font-display),Georgia,serif;font-size:2.6rem;font-weight:600;color:var(--ink)}.pricing-card-list,.pricing-card-unit{font-size:14px;color:var(--slate)}.pricing-card-list{margin:0;padding:0;list-style:none;display:grid;gap:10px}.pricing-card-list li{display:flex;align-items:flex-start;gap:10px;padding-left:0}.pricing-card-list li:before{content:"\2713";flex:0 0 auto;width:18px;height:18px;margin-top:1px;border-radius:50%;background:var(--focus-soft);color:var(--focus);font-size:11px;font-weight:700;line-height:18px;text-align:center}.cta-banner{background:var(--ink);padding:64px 0}.cta-banner-inner{display:grid;justify-items:center;gap:14px;text-align:center}.cta-banner-inner h2{color:var(--surface)}.cta-banner-inner p{color:var(--slate-light);max-width:48ch}.cta-banner-inner .btn--primary{background:var(--surface);color:var(--ink)}.cta-banner-inner .btn--primary:hover{filter:brightness(.95)}.generator-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:stretch}.generator-panel{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:32px;box-shadow:var(--shadow-card)}.generator-panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px}.generator-panel-head h3{margin-top:4px}.status-pill{padding:8px 14px;border-radius:999px;background:var(--focus-soft);border:1px solid #d3ddc7;color:var(--focus);font-weight:600;font-size:13px;white-space:nowrap}.field-group{display:grid;gap:8px;margin-bottom:18px}.field-group>span{font-size:13px;font-weight:600;color:var(--slate)}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.dropzone{position:relative;display:flex;align-items:center;gap:14px;border:1.5px dashed var(--line);border-radius:var(--radius-sm);background:var(--paper);padding:18px;transition:border-color .15s ease,background-color .15s ease}.dropzone:hover{border-color:var(--focus);background:var(--focus-soft)}.dropzone-input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.dropzone-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;flex:0 0 auto;border-radius:var(--radius-sm);background:var(--focus-soft);color:var(--focus)}.dropzone-icon svg{width:20px;height:20px}.dropzone-text{display:grid;gap:2px;min-width:0}.dropzone-text strong{font-size:14px;font-weight:600;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropzone-text span{font-size:12px;color:var(--slate)}.segmented{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.segmented-option{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper);color:var(--ink);padding:12px 14px;font-size:14px;font-weight:600;transition:border-color .15s ease,background-color .15s ease,color .15s ease}.segmented-option:hover{border-color:var(--focus)}.segmented-option--active{border-color:var(--focus);background:var(--focus-soft);color:var(--focus)}.pill-group{display:flex;flex-wrap:wrap;gap:8px}.pill-option{border:1px solid var(--line);border-radius:999px;background:var(--paper);color:var(--ink);padding:8px 16px;font-size:13px;font-weight:600;transition:border-color .15s ease,background-color .15s ease,color .15s ease}.pill-option--active,.pill-option:hover{border-color:var(--focus)}.pill-option--active{background:var(--focus-soft);color:var(--focus)}.progress-track{margin-top:14px;height:6px;border-radius:999px;overflow:hidden;background:var(--line-soft)}.progress-fill{height:100%;border-radius:999px;background:var(--focus);transition:width .4s ease}.notice-text{margin-top:14px;color:var(--slate);font-size:14px}.preview-box{flex:1;min-height:320px;border-radius:var(--radius-md);overflow:hidden;background:var(--paper);border:1px solid var(--line);display:grid;place-items:center}.preview-box img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.empty-state{display:grid;justify-items:center;gap:12px;color:var(--slate-light);padding:24px;text-align:center;font-size:14px}.empty-state-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:var(--surface);border:1px solid var(--line);color:var(--slate-light)}.empty-state-icon svg{width:22px;height:22px}.empty-state p{margin:0}.compare-slider{position:relative;width:100%;height:100%;align-self:stretch;justify-self:stretch;overflow:hidden;background:var(--line-soft);cursor:ew-resize;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.compare-slider-img{-o-object-fit:cover;object-fit:cover;pointer-events:none}.compare-slider-fade{animation:compare-slider-fade-in .6s ease}@keyframes compare-slider-fade-in{0%{opacity:0}to{opacity:1}}.compare-slider-badge{position:absolute;top:14px;display:inline-flex;align-items:center;padding:7px 14px;border-radius:999px;background:hsla(0,0%,100%,.88);backdrop-filter:blur(6px);color:var(--ink);font-size:12px;font-weight:600;letter-spacing:.01em;z-index:2;pointer-events:none}.compare-slider-badge--before{left:14px}.compare-slider-badge--after{right:14px}.compare-slider-handle{position:absolute;top:50%;transform:translate(-50%,-50%);width:38px;height:38px;border-radius:50%;background:var(--surface);border:1px solid var(--line);display:grid;place-items:center;box-shadow:var(--shadow-card);z-index:3;pointer-events:none;color:var(--focus);font-size:16px}.compare-slider-divider{position:absolute;top:0;bottom:0;width:2px;background:var(--surface);z-index:1;pointer-events:none;transform:translateX(-50%)}.result-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:18px;padding:14px 16px;border-radius:var(--radius-sm);background:var(--paper);border:1px solid var(--line);font-size:14px;color:var(--slate)}.result-grid{margin-top:16px}.result-card{position:relative;border-radius:var(--radius-md);overflow:hidden}.result-card img{width:100%;display:block}.result-card-actions{position:absolute;inset:14px 14px auto 14px;z-index:1;display:flex;justify-content:space-between;gap:8px}.result-badge{display:inline-flex;align-items:center;padding:7px 12px;border-radius:999px;border:1px solid var(--line);color:var(--ink);font-size:12px;font-weight:600}.result-badge,.result-card-actions .btn{background:hsla(0,0%,100%,.92);backdrop-filter:blur(8px)}.result-card-actions .btn{padding:9px 16px;font-size:13px}.testimonial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.testimonial-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);padding:28px;display:grid;gap:16px;box-shadow:var(--shadow-card)}.testimonial-quote{color:var(--ink);font-size:15px;line-height:1.7}.testimonial-person{display:flex;align-items:center;gap:12px}.testimonial-avatar{width:40px;height:40px;border-radius:50%;-o-object-fit:cover;object-fit:cover;background:var(--focus-soft);flex:0 0 auto}.testimonial-meta{display:grid;gap:2px}.testimonial-name{font-weight:600;font-size:14px}.testimonial-role{font-size:13px;color:var(--slate)}.faq-list{display:grid;gap:0;border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-question{width:100%;justify-content:space-between;gap:16px;padding:22px 0;background:none;border:none;text-align:left;font-size:1rem;font-weight:600;color:var(--ink)}.faq-icon,.faq-question{display:flex;align-items:center}.faq-icon{flex:0 0 auto;width:24px;height:24px;border-radius:50%;border:1px solid var(--line);justify-content:center;font-size:14px;color:var(--slate);transition:transform .2s ease,color .2s ease,border-color .2s ease}.faq-item--open .faq-icon{transform:rotate(45deg);color:var(--focus);border-color:var(--focus)}.faq-answer{max-height:0;overflow:hidden;transition:max-height .25s ease}.faq-item--open .faq-answer{max-height:240px}.faq-answer p{color:var(--slate);padding:0 0 22px;max-width:64ch}.privacy-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.privacy-card{border:1px solid var(--line);border-radius:var(--radius-md);padding:28px;display:grid;gap:10px;background:var(--surface)}.privacy-card p{color:var(--slate);font-size:14px}.privacy-card-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:var(--focus-soft);color:var(--focus);margin-bottom:4px}.privacy-card-icon svg{width:20px;height:20px}.site-footer{border-top:1px solid var(--line);padding:48px 0}.footer-inner{display:flex;justify-content:space-between;align-items:flex-start;gap:32px;flex-wrap:wrap}.footer-brand{display:grid;gap:10px;max-width:360px}.footer-tagline{color:var(--slate);font-size:14px}.footer-links{display:flex;gap:28px;flex-wrap:wrap;font-size:14px;font-weight:600}.footer-links a:hover{color:var(--focus)}.footer-copyright{margin-top:32px;padding-top:24px;border-top:1px solid var(--line);color:var(--slate-light);font-size:13px}.legal-shell{display:grid;gap:24px;padding:48px 0 80px}.legal-hero{display:grid;gap:14px;padding:48px 0 8px}.legal-hero h1{margin:4px 0 0}.legal-lede{font-size:1.05rem;color:var(--slate);max-width:60ch;line-height:1.7}.legal-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:32px;box-shadow:var(--shadow-card)}.legal-copy{display:grid;gap:12px;color:var(--slate)}.legal-copy h2{margin:18px 0 0;font-size:1.2rem;color:var(--ink)}.legal-copy li,.legal-copy p{line-height:1.7}.legal-copy ul{margin:0;padding-left:20px;display:grid;gap:8px}.legal-nav{display:flex;flex-wrap:wrap;gap:20px;padding:8px 2px}.legal-nav a{color:var(--focus);font-weight:600;font-size:14px}.contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.contact-card{border-radius:var(--radius-md);padding:24px;background:var(--paper);border:1px solid var(--line);display:grid;gap:12px}.contact-card h2{margin:0;word-break:break-word}.panel-kicker{margin:0;font-family:var(--font-body),Inter,sans-serif;font-weight:600;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--focus)}.panel-text{line-height:1.7}.contact-list,.panel-text{margin:0;color:var(--slate)}.contact-list{padding-left:20px;display:grid;gap:8px}.contact-cta{display:inline-flex;justify-content:center;align-items:center}.modal-backdrop{position:fixed;inset:0;background:rgba(42,45,36,.45);display:grid;place-items:center;padding:20px;z-index:100}.modal-card{width:min(520px,100%);border-radius:var(--radius-lg);padding:28px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-card)}.modal-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:16px}.modal-copy{margin:14px 0 0;color:var(--slate);font-size:14px}.modal-actions{display:grid;gap:12px}.close-btn{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:999px;padding:8px 16px;font-weight:600;font-size:13px}@media (max-width:980px){.contact-grid,.generator-grid,.hero-grid,.privacy-grid,.testimonial-grid{grid-template-columns:1fr}.hero-grid{gap:40px}.hero-showcase{order:-1;max-width:480px;margin:0 auto;width:100%}.steps-row{flex-direction:column;align-items:stretch;padding:16px 20px;gap:12px;white-space:normal}.steps-row-label{border-right:none;padding-right:0;padding-bottom:4px;border-bottom:1px solid var(--line)}.step-row-item{width:100%}.step-row-text{white-space:normal}.step-arrow{display:none}.step-row-item:not(:last-child){padding-bottom:12px;border-bottom:1px solid var(--line)}}@media (max-width:680px){.section{padding:56px 0}.hero-showcase-pair{gap:10px}.field-grid,.privacy-grid,.testimonial-grid{grid-template-columns:1fr}.footer-inner,.result-toolbar{flex-direction:column}.result-toolbar{align-items:stretch}.generator-panel{padding:22px}.hero-features{grid-template-columns:1fr}.stats-banner-figure{font-size:1.5rem}.brand-row{gap:20px 28px}}