*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--font-display:"Instrument Serif",Georgia,serif;--font-body:"Satoshi","Inter",sans-serif;--text-xs:clamp(0.75rem,0.7rem + 0.25vw,0.875rem);--text-sm:clamp(0.875rem,0.8rem + 0.35vw,1rem);--text-base:clamp(1rem,0.95rem + 0.25vw,1.125rem);--text-lg:clamp(1.125rem,1rem + 0.75vw,1.5rem);--text-xl:clamp(1.5rem,1.2rem + 1.25vw,2.25rem);--text-2xl:clamp(2rem,1.2rem + 2.5vw,3.5rem);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--color-bg:#f5f7f4;--color-surface:#ffffff;--color-surface-2:#f9faf8;--color-surface-offset:#eef1eb;--color-divider:#dde3d8;--color-border:#d0d9ca;--color-text:#1a2018;--color-text-muted:#5a6b55;--color-text-faint:#9aaa94;--color-text-inverse:#f5f7f4;--color-primary:#2d6a2d;--color-primary-hover:#1e4f1e;--color-primary-active:#153815;--color-primary-highlight:#c8e0c4;--color-primary-light:#e8f4e5;--color-success:#3a7a3a;--color-success-highlight:#d4edcc;--color-error:#a12c2c;--radius-sm:0.375rem;--radius-md:0.5rem;--radius-lg:0.75rem;--radius-xl:1rem;--radius-2xl:1.5rem;--radius-full:9999px;--shadow-sm:0 1px 3px oklch(0.18 0.04 140/0.08);--shadow-md:0 4px 16px oklch(0.18 0.04 140/0.10);--shadow-lg:0 12px 40px oklch(0.18 0.04 140/0.14);--transition:180ms cubic-bezier(0.16,1,0.3,1);--content-narrow:560px;--grass-img:url(/5B7AC18C-742D-4B7B-A6E8-2BEFF5ECD2B0.png)}[data-theme=dark]{--color-bg:#111510;--color-surface:#171c15;--color-surface-2:#1c221a;--color-surface-offset:#1a201a;--color-divider:#252d22;--color-border:#2e382a;--color-text:#d4ddd0;--color-text-muted:#7a8f74;--color-text-faint:#4a5c46;--color-text-inverse:#111510;--color-primary:#5da85d;--color-primary-hover:#3d8a3d;--color-primary-active:#2d6a2d;--color-primary-highlight:#2a3f28;--color-primary-light:#1e2d1c;--color-success:#5da85d;--color-success-highlight:#253025;--color-error:#e05050;--shadow-sm:0 1px 3px oklch(0 0 0/0.25);--shadow-md:0 4px 16px oklch(0 0 0/0.35);--shadow-lg:0 12px 40px oklch(0 0 0/0.45)}@media (prefers-color-scheme:dark){:root:not([data-theme]){--color-bg:#111510;--color-surface:#171c15;--color-surface-2:#1c221a;--color-surface-offset:#1a201a;--color-divider:#252d22;--color-border:#2e382a;--color-text:#d4ddd0;--color-text-muted:#7a8f74;--color-text-faint:#4a5c46;--color-text-inverse:#111510;--color-primary:#5da85d;--color-primary-hover:#3d8a3d;--color-primary-active:#2d6a2d;--color-primary-highlight:#2a3f28;--color-primary-light:#1e2d1c;--color-success:#5da85d;--color-success-highlight:#253025;--color-error:#e05050;--shadow-sm:0 1px 3px oklch(0 0 0/.25);--shadow-md:0 4px 16px oklch(0 0 0/.35);--shadow-lg:0 12px 40px oklch(0 0 0/.45)}}html{-webkit-font-smoothing:antialiased;scroll-behavior:smooth;text-size-adjust:none}body{min-height:100dvh;font-family:var(--font-body);font-size:var(--text-base);color:var(--color-text);background:var(--color-bg);line-height:1.6}img,svg{display:block;max-width:100%}button,input,select,textarea{font:inherit;color:inherit}h1,h2,h3,h4,h5,h6{line-height:1.2;text-wrap:balance}li,p{text-wrap:pretty;max-width:72ch}button{cursor:pointer;background:none;border:none}::selection{background:color-mix(in oklch,var(--color-primary) 20%,transparent)}:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px;border-radius:var(--radius-sm)}[role=button],a,button,input,select,textarea{transition:color var(--transition),background var(--transition),border-color var(--transition),box-shadow var(--transition),opacity var(--transition)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;transition-duration:.01ms!important}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.container--narrow{max-width:var(--content-narrow);margin-inline:auto;padding-inline:var(--space-4)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);border-radius:var(--radius-lg);font-size:var(--text-sm);font-weight:600;text-decoration:none;white-space:nowrap;border:1.5px solid transparent}.btn-primary{background:var(--color-primary);color:var(--color-text-inverse);border-color:var(--color-primary)}.btn-primary:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.btn-primary:active{background:var(--color-primary-active)}.btn-primary:disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.btn-outline{background:transparent;color:var(--color-primary);border-color:var(--color-primary)}.btn-outline:hover{background:var(--color-primary-light)}.btn-ghost{background:transparent;color:var(--color-text-muted);border-color:transparent}.btn-ghost:hover{background:var(--color-surface-offset);color:var(--color-text)}.btn-full{width:100%}.btn-lg{padding:var(--space-4) var(--space-8);font-size:var(--text-base)}.btn-sm{padding:var(--space-2) var(--space-4);font-size:var(--text-xs)}.field{display:flex;flex-direction:column;gap:var(--space-2)}.field label{font-size:var(--text-sm);font-weight:500;color:var(--color-text)}.field .hint{font-size:var(--text-xs);color:var(--color-text-muted)}.input,.select,.textarea{width:100%;padding:var(--space-3) var(--space-4);background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--text-base);color:var(--color-text)}.input:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in oklch,var(--color-primary) 15%,transparent)}.input::placeholder,.textarea::placeholder{color:var(--color-text-faint)}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%235a6b55' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-3) center;padding-right:var(--space-10)}.textarea{resize:vertical;min-height:80px}.field-error .input,.field-error .select,.field-error .textarea{border-color:var(--color-error)}.error-msg{font-size:var(--text-xs);color:var(--color-error);margin-top:var(--space-1)}.card{background:var(--color-surface);border-radius:var(--radius-2xl);box-shadow:var(--shadow-md);border:1px solid oklch(from var(--color-text) l c h/.07);padding:var(--space-8)}@media (max-width:600px){.card{padding:var(--space-6);border-radius:var(--radius-xl)}}.steps{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-8);justify-content:center}.step-dot{width:8px;height:8px;border-radius:var(--radius-full);background:var(--color-border);transition:background var(--transition),transform var(--transition)}.step-dot.active{background:var(--color-primary);transform:scale(1.4)}.step-dot.done{background:var(--color-primary);opacity:.5}.step-line{flex:1 1;height:1.5px;background:var(--color-divider);max-width:60px}.slots-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));grid-gap:var(--space-3);gap:var(--space-3)}.slot-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-1);padding:var(--space-3) var(--space-2);background:var(--color-surface-2);border:1.5px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition)}.slot-btn.selected,.slot-btn:hover:not(:disabled){border-color:var(--color-primary);background:var(--color-primary-light)}.slot-btn.selected{color:var(--color-primary)}.slot-btn:disabled{opacity:.4;cursor:not-allowed;background:var(--color-surface-offset)}.slot-time{font-weight:600;font-size:var(--text-sm)}.slot-label{font-size:var(--text-xs);color:var(--color-text-muted)}.slot-btn.selected .slot-label{color:var(--color-primary)}.pay-options{display:flex;flex-direction:column;gap:var(--space-3)}.pay-option{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);background:var(--color-surface-2);border:1.5px solid var(--color-border);border-radius:var(--radius-xl);cursor:pointer;transition:all var(--transition)}.pay-option.selected,.pay-option:hover{border-color:var(--color-primary);background:var(--color-primary-light)}.pay-option input[type=radio]{accent-color:var(--color-primary);width:18px;height:18px;flex-shrink:0}.pay-option--logo{align-items:flex-start;padding:var(--space-5)}.pay-option--logo input[type=radio]{margin-top:3px}.pay-option-body{flex:1 1;gap:var(--space-3);min-width:0}.pay-option-body,.pay-option-top{display:flex;flex-direction:column}.pay-option-top{gap:2px}.pay-option-title{font-size:var(--text-sm);font-weight:600;color:var(--color-text)}.pay-option-desc{font-size:var(--text-xs);color:var(--color-text-muted)}.pay-option-logos{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-4);padding-top:var(--space-1);opacity:.65;transition:opacity var(--transition),filter var(--transition);filter:grayscale(15%)}.pay-option.selected .pay-option-logos{opacity:1;filter:none}.pay-logo-sep{width:1px;height:18px;background:var(--color-divider);flex-shrink:0}.pay-option-content{gap:2px}.pay-option-content,.summary-box{display:flex;flex-direction:column}.summary-box{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);gap:var(--space-3)}.summary-row{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4)}.summary-label{font-size:var(--text-xs);color:var(--color-text-muted);font-weight:500;text-transform:uppercase;letter-spacing:.05em;flex-shrink:0;padding-top:2px}.summary-value{font-size:var(--text-sm);font-weight:500;text-align:right}.summary-divider{height:1px;background:var(--color-divider)}.summary-total .summary-label,.summary-total .summary-value{font-size:var(--text-base);font-weight:700;color:var(--color-text)}.callout{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-5);background:var(--color-primary-light);border:1px solid var(--color-primary-highlight);border-radius:var(--radius-lg);font-size:var(--text-sm);color:var(--color-text-muted);line-height:1.5}.callout-icon{color:var(--color-primary);flex-shrink:0;margin-top:2px}.nav{position:-webkit-sticky;position:sticky;top:0;z-index:50;background:color-mix(in oklch,var(--color-bg) 85%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--color-divider)}.nav-inner{display:flex;align-items:center;justify-content:space-between;height:100px}@media (max-width:600px){.nav-inner{height:80px}}.nav-logo{display:flex;align-items:center;gap:var(--space-3);text-decoration:none;color:var(--color-text)}.nav-logo img{width:90px;height:90px;object-fit:contain}@media (max-width:600px){.nav-logo img{width:72px;height:72px}}.nav-logo-text{font-family:var(--font-display);font-size:var(--text-base);font-weight:400;color:var(--color-text)}.nav-actions{gap:var(--space-2)}.nav-actions,.theme-toggle{display:flex;align-items:center}.theme-toggle{width:36px;height:36px;border-radius:var(--radius-full);justify-content:center;color:var(--color-text-muted)}.theme-toggle:hover{background:var(--color-surface-offset);color:var(--color-text)}.hero{position:relative;overflow:hidden;min-height:clamp(420px,70vw,600px);text-align:center;width:100%}.hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 10%;display:block;filter:saturate(1.2) brightness(1);z-index:0}[data-theme=dark] .hero-img{filter:saturate(1) brightness(.75)}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.08) 0,rgba(0,0,0,.05) 40%,rgba(0,0,0,.18) 75%,rgba(0,0,0,.32));z-index:1;pointer-events:none}[data-theme=dark] .hero:before{background:linear-gradient(180deg,rgba(0,0,0,.15) 0,rgba(0,0,0,.1) 40%,rgba(0,0,0,.35) 75%,rgba(0,0,0,.5))}.hero-content{position:relative;z-index:2;padding:var(--space-16) var(--space-4) var(--space-20);max-width:var(--content-narrow);margin-inline:auto}.hero-eyebrow{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);font-weight:500;text-shadow:0 1px 4px rgba(0,0,0,.55);text-transform:uppercase;letter-spacing:.08em}.hero h1,.hero-eyebrow{color:#fff;margin-bottom:var(--space-4)}.hero h1{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:400;line-height:1.1;text-shadow:0 2px 12px rgba(0,0,0,.45),0 1px 3px rgba(0,0,0,.6)}.hero h1 em{font-style:italic;color:#a8e6a8;text-shadow:0 2px 12px rgba(0,0,0,.5)}.hero-sub{font-size:var(--text-base);color:rgba(255,255,255,.92);text-shadow:0 1px 6px rgba(0,0,0,.5);max-width:44ch;margin-inline:auto;margin-bottom:var(--space-6)}.hero-price{display:inline-flex;align-items:baseline;gap:var(--space-2);background:rgba(0,0,0,.32);border:1px solid rgba(255,255,255,.25);border-radius:var(--radius-full);padding:var(--space-2) var(--space-5);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.hero-price-amount{font-family:var(--font-display);font-size:var(--text-xl);font-weight:400;color:#a8e6a8}.hero-price-label{font-size:var(--text-xs);color:rgba(255,255,255,.8);font-weight:500}.grass-banner{width:100%;position:relative;height:clamp(220px,35vw,360px);overflow:hidden;margin-block:var(--space-8)}.grass-banner-img{width:100%;height:100%;object-fit:cover;object-position:center 40%;display:block;filter:saturate(1.1) brightness(1)}.grass-banner:after,.grass-banner:before{content:"";position:absolute;left:0;right:0;height:40px;z-index:1;pointer-events:none}.grass-banner:before{top:0;background:linear-gradient(to bottom,var(--color-bg),transparent)}.grass-banner:after{bottom:0;background:linear-gradient(to top,var(--color-bg),transparent)}[data-theme=dark] .grass-banner-img{filter:saturate(.9) brightness(.7)}.about-section{position:relative}.about-cards{display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.footer-grass{width:100%;max-width:var(--content-narrow);margin-inline:auto;margin-bottom:var(--space-8);border-radius:var(--radius-xl);overflow:hidden;height:160px;position:relative;box-shadow:var(--shadow-md)}.footer-grass-img{width:100%;height:100%;object-fit:cover;object-position:center 30%;display:block;filter:saturate(1.1) brightness(1)}.footer-grass:after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,transparent 50%,color-mix(in oklch,var(--color-bg) 35%,transparent) 100%);border-radius:inherit;pointer-events:none}[data-theme=dark] .footer-grass-img{filter:saturate(.85) brightness(.65)}.auth-card{display:flex;flex-direction:column;gap:var(--space-4)}.google-btn{display:flex;align-items:center;justify-content:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-6);background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-lg);font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:all var(--transition)}.google-btn:hover{background:var(--color-surface-offset);border-color:var(--color-text-muted)}.google-btn:disabled{opacity:.5;cursor:not-allowed}.divider-text{text-align:center;font-size:var(--text-xs);color:var(--color-text-faint);position:relative;padding:var(--space-2) 0}.divider-text:after,.divider-text:before{content:"";position:absolute;top:50%;width:38%;height:1px;background:var(--color-divider)}.divider-text:before{left:0}.divider-text:after{right:0}.step-header{margin-bottom:var(--space-6)}.step-title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:400;margin-bottom:var(--space-1)}.step-desc{font-size:var(--text-sm);color:var(--color-text-muted)}.confirm-icon{width:64px;height:64px;border-radius:var(--radius-full);background:var(--color-success-highlight);align-items:center;margin:0 auto var(--space-6)}.confirm-icon,.trust-bar{display:flex;justify-content:center}.trust-bar{flex-wrap:wrap;gap:var(--space-4) var(--space-6);padding:var(--space-6) var(--space-4);margin-top:var(--space-4)}.trust-item{gap:var(--space-2);font-size:var(--text-xs);color:var(--color-text-muted);font-weight:500}.trust-item,.trust-item--pay{display:flex;align-items:center}.trust-item--pay{width:100%;flex-wrap:wrap;justify-content:center;gap:var(--space-2) var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--color-divider)}.trust-pay-label{font-size:var(--text-xs);font-weight:500;color:var(--color-text-faint);text-transform:uppercase;letter-spacing:.06em;flex-shrink:0;align-self:center}.trust-pay-grid{flex-wrap:wrap;justify-content:center}.trust-pay-grid,.trust-pay-group{display:flex;align-items:center;gap:var(--space-2) var(--space-3)}.trust-pay-group{flex-wrap:nowrap}.trust-pay-sep{display:inline-block;width:1px;height:14px;background:var(--color-divider);flex-shrink:0;align-self:center}.trust-pay-grid svg,.trust-pay-group span[aria-label],.trust-pay-group svg{opacity:.75}.form-grid{display:grid;grid-gap:var(--space-5);gap:var(--space-5)}.form-2col{grid-template-columns:1fr 1fr}@media (max-width:480px){.form-2col{grid-template-columns:1fr}.slots-grid{grid-template-columns:repeat(2,1fr)}}.pay-strip{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap;justify-content:center}.pay-strip-label{font-size:var(--text-xs);font-weight:500;color:var(--color-text-faint);text-transform:uppercase;letter-spacing:.06em}.pay-strip-logos{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.pay-strip-sep{width:1px;height:16px;background:var(--color-divider)}.pay-strip-cash-label{font-size:var(--text-xs);font-weight:600;color:var(--color-text-muted);letter-spacing:.04em;text-transform:uppercase}.site-footer{border-top:1px solid var(--color-divider);padding:var(--space-8) var(--space-4);margin-top:var(--space-16)}.footer-inner{flex-direction:column;gap:var(--space-6)}.footer-brand,.footer-inner{display:flex;align-items:center}.footer-brand{gap:var(--space-3)}.footer-brand-name{font-family:var(--font-display);font-size:var(--text-base);color:var(--color-text-muted)}.footer-pay-strip{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap;justify-content:center}.footer-copy{font-size:var(--text-xs);color:var(--color-text-faint);text-align:center}@keyframes slide-up{0%{opacity:0;-webkit-clip-path:inset(20px 0 0 0);clip-path:inset(20px 0 0 0)}to{opacity:1;-webkit-clip-path:inset(0 0 0 0);clip-path:inset(0 0 0 0)}}.animate-in{animation:slide-up .35s cubic-bezier(.16,1,.3,1) both}