@font-face{font-family:Playfair Display;src:url(/assets/PlayfairDisplay-VariableFont_wght-Cl-XvBsO.ttf)format("truetype-variations");font-weight:400 900;font-style:normal;font-display:swap}@font-face{font-family:Playfair Display;src:url(/assets/PlayfairDisplay-Italic-VariableFont_wght-1BGmD3Ln.ttf)format("truetype-variations");font-weight:400 900;font-style:italic;font-display:swap}@font-face{font-family:"Source Sans 3";src:url(/assets/SourceSans3-VariableFont_wght-rZwVYbt3.ttf)format("truetype-variations");font-weight:200 900;font-style:normal;font-display:swap}@font-face{font-family:"Source Sans 3";src:url(/assets/SourceSans3-Italic-VariableFont_wght-CpqQxOj_.ttf)format("truetype-variations");font-weight:200 900;font-style:italic;font-display:swap}:root{--color-bg:#1c3d2b;--color-surface:#16302038;--color-surface-raised:#ffffff14;--color-border:#fff3;--color-text-light:#f5f7f4;--color-text-muted:#cbd8cd;--color-accent:#3f9d5c;--color-accent-hover:#359152;--color-sky:#bcd9e8;--color-fairway:#6fae66;--color-green-dark:#1f4d2c;--font-heading:"Playfair Display", Georgia, serif;--font-body:"Source Sans 3", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:var(--font-body)}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background-color:var(--color-bg);color:var(--color-text-light);background-image:repeating-linear-gradient(135deg,#ffffff06 0 1px,#0000 1px 4px)}#root{min-height:100vh}h1,h2,h3{font-family:var(--font-heading)}a{color:inherit}.header{background-color:var(--color-surface);z-index:10;padding:1rem 1.5rem;position:sticky;top:0}.header__inner{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;display:flex}.header__brand{color:var(--color-text-light);align-items:center;gap:.75rem;text-decoration:none;display:flex}.header__logo{object-fit:cover;border-radius:8px;width:96px;height:44px;display:inline-block}.header__wordmark{font-size:1.25rem;font-weight:700}.header__cta{background-color:var(--color-accent);color:var(--color-text-light);border-radius:999px;justify-content:center;align-items:center;padding:.65rem 1.4rem;font-weight:600;text-decoration:none;transition:background-color .2s;display:inline-flex}.header__cta:hover{background-color:var(--color-accent-hover)}.footer{background-color:var(--color-surface);padding:1.25rem 1.5rem}.footer__inner{max-width:1200px;color:var(--color-text-muted);justify-content:space-between;align-items:center;margin:0 auto;font-size:.9rem;display:flex}.footer__copyright,.footer__location,.footer__version{margin:0}.button{cursor:pointer;border:none;border-radius:999px;justify-content:center;align-items:center;padding:.85rem 1.75rem;font-size:1rem;font-weight:600;text-decoration:none;transition:background-color .2s,color .2s,border-color .2s;display:inline-flex}.button__label--primary{background-color:var(--color-accent);color:var(--color-text-light)}.button__label--primary:hover{background-color:var(--color-accent-hover)}.button__label--secondary{color:var(--color-text-muted);border:1px solid var(--color-border);background-color:#0000}.button__label--secondary:hover{color:var(--color-text-light);border-color:var(--color-text-light)}.button:disabled{opacity:.6;cursor:not-allowed}.hero{padding:4rem 1.5rem 5rem}.hero__inner{grid-template-columns:1.1fr .9fr;align-items:center;gap:3rem;max-width:1200px;margin:0 auto;display:grid}.hero__copy{flex-direction:column;gap:1.5rem;display:flex}.hero__heading{color:var(--color-text-light);margin:0;font-size:3.25rem;font-weight:800;line-height:1.1}.hero__heading-accent{color:var(--color-accent);font-style:italic}.hero__subtext{max-width:44ch;color:var(--color-text-muted);margin:0;font-size:1.05rem;line-height:1.6}.hero__actions{flex-wrap:wrap;gap:1rem;display:flex}.hero__visual{justify-content:center;display:flex}.hero__image{border-radius:18px;width:100%;max-width:600px;box-shadow:0 30px 60px #00000059}@media (width<=860px){.hero__inner{grid-template-columns:1fr}.hero__heading{font-size:2.5rem}}.features{background-color:var(--color-surface);padding:4rem 1.5rem}.features__inner{max-width:1200px;margin:0 auto}.features__heading{color:var(--color-text-light);text-align:center;margin:0 0 2.5rem;font-size:2rem}.features__grid{grid-template-columns:repeat(3,1fr);gap:2rem;display:grid}.features__item{background-color:var(--color-surface-raised);border-radius:14px;padding:1.75rem;box-shadow:0 4px 10px #0000002e}.features__item-title{color:var(--color-text-light);margin:0 0 .75rem;font-size:1.15rem}.features__item-description{color:var(--color-text-muted);margin:0;font-size:.95rem;line-height:1.6}@media (width<=860px){.features__grid{grid-template-columns:1fr}}.about{background-image:linear-gradient(#163020b8,#163020b8),url(/assets/allan-nygren--xvKQuNtOhI-unsplash-DzecOapb.jpg);background-position:50%;background-repeat:no-repeat;background-size:cover;padding:4rem 1.5rem}.about__inner{flex-direction:column;gap:1.25rem;max-width:760px;margin:0 auto;display:flex}.about__heading{color:var(--color-text-light);text-align:center;margin:0 0 .5rem;font-size:2rem}.about__paragraph{color:var(--color-text-muted);margin:0;font-size:1.05rem;line-height:1.7}.about__paragraph--emphasis{color:var(--color-text-light);font-style:italic}.about__actions{justify-content:center;display:flex}.gallery{padding:4rem 1.5rem}.gallery__inner{max-width:1200px;margin:0 auto}.gallery__heading{color:var(--color-text-light);text-align:center;margin:0 0 2.5rem;font-size:2rem}.gallery__carousel{background-color:var(--color-surface-raised);border-radius:14px;padding:2rem 0;position:relative;overflow:hidden;box-shadow:0 4px 10px #0000002e}.gallery__lightbox{z-index:100;background-color:#000000d9;justify-content:center;align-items:center;padding:2rem;display:flex;position:fixed;inset:0}.gallery__lightbox-image{object-fit:contain;border-radius:14px;max-width:min(90vw,900px);max-height:85vh;box-shadow:0 20px 50px #00000080}.gallery__lightbox-close{width:44px;height:44px;color:var(--color-text-light);cursor:pointer;background-color:#ffffff26;border:none;border-radius:50%;font-size:1.75rem;line-height:1;position:fixed;top:1.5rem;right:1.5rem}.gallery__lightbox-close:hover{background-color:#ffffff4d}.gallery__lightbox-control{width:56px;height:56px;color:var(--color-text-light);cursor:pointer;background-color:#ffffff26;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:2.25rem;line-height:1;transition:background-color .2s;display:flex;position:fixed;top:50%;transform:translateY(-50%)}.gallery__lightbox-control:hover{background-color:#ffffff4d}.gallery__lightbox-control--prev{left:1.5rem}.gallery__lightbox-control--next{right:1.5rem}.gallery__track{align-items:center;transition:transform .5s;display:flex}.gallery__slide{cursor:pointer;opacity:.55;background:0 0;border:none;flex:none;padding:0;transition:opacity .4s,transform .4s;transform:scale(.88)}.gallery__slide--active{opacity:1;z-index:1;transform:scale(1.15)}.gallery__slide-image{object-fit:cover;border-radius:14px;width:100%;height:240px;display:block;box-shadow:0 4px 10px #0000004d}.gallery__control{width:40px;height:40px;color:var(--color-text-light);cursor:pointer;z-index:2;background-color:#00000073;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:1.5rem;line-height:1;transition:background-color .2s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.gallery__control:hover{background-color:#000000b3}.gallery__control--prev{left:1rem}.gallery__control--next{right:1rem}.gallery__dots{justify-content:center;gap:.5rem;margin-top:1.25rem;display:flex}.gallery__dot{cursor:pointer;background-color:#ffffff73;border:none;border-radius:50%;width:9px;height:9px;padding:0}.gallery__dot--active{background-color:var(--color-text-light)}@media (width<=860px){.gallery__slide-image{height:180px}}.faq{padding:4rem 1.5rem}.faq__inner{max-width:760px;margin:0 auto}.faq__heading{color:var(--color-text-light);text-align:center;margin:0 0 2rem;font-size:2rem}.faq__list{flex-direction:column;gap:1rem;display:flex}.faq__item{background-color:var(--color-surface-raised);border-radius:12px;overflow:hidden;box-shadow:0 4px 10px #0000002e}.faq__question{width:100%;color:var(--color-text-light);text-align:left;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem 1.5rem;font-size:1rem;font-weight:600;display:flex}.faq__question-icon{color:var(--color-accent);flex-shrink:0;font-size:1.25rem;line-height:1}.faq__answer{color:var(--color-text-muted);margin:0;padding:0 1.5rem 1.25rem;font-size:.95rem;line-height:1.6}.cta{text-align:center;padding:5rem 1.5rem}.cta__inner{flex-direction:column;align-items:center;gap:1.25rem;max-width:640px;margin:0 auto;display:flex}.cta__heading{color:var(--color-text-light);margin:0;font-size:2.25rem}.cta__subtext{color:var(--color-text-muted);margin:0;font-size:1.05rem}.contact{padding:4rem 1.5rem 5rem}.contact__inner{max-width:560px;margin:0 auto}.contact__heading{color:var(--color-text-light);text-align:center;margin:0 0 .5rem;font-size:2rem}.contact__subtext{color:var(--color-text-muted);text-align:center;margin:0 0 2rem;font-size:1rem}.contact__form{flex-direction:column;gap:1.25rem;display:flex}.contact__row{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}.contact__field{flex-direction:column;gap:.4rem;display:flex}.contact__label{color:var(--color-text-light);font-size:.85rem;font-weight:600}.contact__input,.contact__textarea{border:1px solid var(--color-border);background-color:var(--color-surface-raised);color:var(--color-text-light);border-radius:8px;padding:.75rem 1rem;font-family:inherit;font-size:1rem}.contact__textarea{resize:vertical}.contact__input:focus,.contact__textarea:focus{outline:2px solid var(--color-accent);outline-offset:1px}.contact__success{color:var(--color-accent);margin:0;font-size:.9rem}.contact__error{color:#ff8a8a;margin:0;font-size:.9rem}.contact__submit{background-color:var(--color-accent);color:var(--color-text-light);cursor:pointer;border:none;border-radius:999px;align-self:flex-start;padding:.85rem 1.75rem;font-size:1rem;font-weight:600}.contact__submit:hover{background-color:var(--color-accent-hover)}.contact__submit:disabled{opacity:.6;cursor:not-allowed}@media (width<=600px){.contact__row{grid-template-columns:1fr}}.home{flex-direction:column;display:flex}.flag-placement{border-top:1px solid var(--color-border);flex-direction:column;gap:.6rem;padding-top:.5rem;display:flex}.flag-placement__heading{color:var(--color-text-light);margin:0;font-size:.9rem;font-weight:600}.flag-placement__description{color:var(--color-text-muted);max-width:52ch;margin:0;font-size:.85rem;line-height:1.5}.flag-placement__board{grid-template-rows:auto auto auto;grid-template-columns:auto 1fr auto auto;place-items:center;gap:.5rem;max-width:420px;display:grid}.flag-placement__nudge{border:1px solid var(--color-border);background-color:var(--color-surface-raised);width:36px;height:36px;color:var(--color-text-light);cursor:pointer;border-radius:8px;font-size:1rem}.flag-placement__nudge--up{grid-area:1/2}.flag-placement__nudge--left{grid-area:2/1}.flag-placement__nudge--right{grid-area:2/3}.flag-placement__nudge--down{grid-area:3/2}.flag-placement__green{background-color:var(--color-green-dark);border:2px solid var(--color-accent);border-radius:50%;grid-area:2/2;width:220px;height:220px;position:relative}.flag-placement__fringe{border:1px solid var(--color-accent);opacity:.6;border-radius:50%;position:absolute;inset:22px}.flag-placement__flag{color:var(--color-accent);font-size:1.5rem;transition:left .15s,top .15s;position:absolute;transform:translate(-50%,-100%)}.flag-placement__reset{border:1px solid var(--color-border);color:var(--color-text-light);cursor:pointer;white-space:nowrap;background-color:#0000;border-radius:999px;grid-area:2/4;padding:.6rem 1rem;font-size:.85rem}.flag-placement__reset:hover{border-color:var(--color-text-light)}@media (width<=640px){.flag-placement__board{grid-template-columns:auto 1fr auto}.flag-placement__reset{grid-area:4/2}}.hole-details-form{flex-direction:column;gap:1.25rem;display:flex}.hole-details-form__heading{color:var(--color-text-light);margin:0;font-size:1.4rem}.hole-details-form__subtext{color:var(--color-text-muted);margin:-.75rem 0 0;font-size:.9rem}.hole-details-form__row{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.hole-details-form__field{flex-direction:column;gap:.4rem;display:flex}.hole-details-form__label{color:var(--color-text-light);font-size:.85rem;font-weight:600}.hole-details-form__hint{color:var(--color-text-muted);font-size:.75rem}.hole-details-form__field--date{position:relative}.hole-details-form__hint--date{margin-top:.4rem;position:absolute;top:100%;left:0;right:0}.hole-details-form__required{color:#ff8a8a}.hole-details-form__input{border:1px solid var(--color-border);background-color:var(--color-surface-raised);color:var(--color-text-light);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;border-radius:8px;margin-right:0;padding:.75rem 1rem;font-size:1rem}.hole-details-form__input::-webkit-calendar-picker-indicator{filter:invert()}.hole-details-form__input option{color:#1a1a1a;background-color:#fff}.hole-details-form__date-button{border:1px solid var(--color-border);background-color:var(--color-surface-raised);width:100%;color:var(--color-text-light);cursor:pointer;text-align:left;white-space:nowrap;border-radius:8px;align-items:center;gap:.6rem;padding:.75rem 1rem;font-family:inherit;font-size:1rem;display:flex}.hole-details-form__date-button:hover{border-color:var(--color-accent)}.hole-details-form__date-button:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.hole-details-form__date-icon{width:18px;height:18px;color:var(--color-text-muted);flex-shrink:0}.hole-details-form__date-input-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.hole-details-form__input:focus{outline:2px solid var(--color-accent);outline-offset:1px}.hole-details-form__next{background-color:var(--color-accent);color:var(--color-text-light);cursor:pointer;border:none;border-radius:999px;align-self:flex-end;padding:.85rem 1.75rem;font-size:1rem;font-weight:600}.hole-details-form__next:hover{background-color:var(--color-accent-hover)}.hole-details-form__next:disabled{opacity:.6;cursor:not-allowed}@media (width<=640px){.hole-details-form__row{grid-template-columns:1fr}}.customer-info-form{flex-direction:column;gap:1.25rem;display:flex}.customer-info-form__heading{color:var(--color-text-light);margin:0;font-size:1.4rem}.customer-info-form__section-label{color:var(--color-text-light);margin:.5rem 0 -.5rem;font-size:.95rem;font-weight:600}.customer-info-form__row{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.customer-info-form__field{flex-direction:column;gap:.4rem;display:flex}.customer-info-form__label{color:var(--color-text-light);font-size:.85rem;font-weight:600}.customer-info-form__required{color:#ff8a8a}.customer-info-form__input{border:1px solid var(--color-border);background-color:var(--color-surface-raised);color:var(--color-text-light);border-radius:8px;padding:.75rem 1rem;font-size:1rem}.customer-info-form__input option{color:#1a1a1a;background-color:#fff}.customer-info-form__input:focus{outline:2px solid var(--color-accent);outline-offset:1px}.customer-info-form__actions{justify-content:space-between;gap:1rem;display:flex}.customer-info-form__back{border:1px solid var(--color-border);color:var(--color-text-light);cursor:pointer;background-color:#0000;border-radius:999px;padding:.85rem 1.5rem;font-size:1rem;font-weight:600}.customer-info-form__back:hover{border-color:var(--color-text-light)}.customer-info-form__next{background-color:var(--color-accent);color:var(--color-text-light);cursor:pointer;border:none;border-radius:999px;padding:.85rem 1.75rem;font-size:1rem;font-weight:600}.customer-info-form__next:hover{background-color:var(--color-accent-hover)}.customer-info-form__next:disabled{opacity:.6;cursor:not-allowed}.customer-info-form__shipping-options{flex-direction:column;gap:.6rem;display:flex}.customer-info-form__shipping-option{border:1.5px solid var(--color-border);background-color:var(--color-surface-raised);cursor:pointer;text-align:left;border-radius:10px;align-items:center;gap:.75rem;width:100%;padding:.9rem 1rem;transition:border-color .15s;display:flex}.customer-info-form__shipping-option:hover{border-color:var(--color-accent)}.customer-info-form__shipping-option--selected{border-color:var(--color-accent);background-color:color-mix(in srgb, var(--color-accent) 8%, var(--color-surface-raised))}.customer-info-form__shipping-radio{border:2px solid var(--color-border);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;transition:border-color .15s;display:flex}.customer-info-form__shipping-option--selected .customer-info-form__shipping-radio{border-color:var(--color-accent)}.customer-info-form__shipping-radio-dot{background-color:#0000;border-radius:50%;width:8px;height:8px;transition:background-color .15s}.customer-info-form__shipping-option--selected .customer-info-form__shipping-radio-dot{background-color:var(--color-accent)}.customer-info-form__shipping-text{flex-direction:column;flex:1;gap:.15rem;display:flex}.customer-info-form__shipping-label{color:var(--color-text-light);font-size:.95rem;font-weight:600}.customer-info-form__shipping-desc{color:var(--color-text-muted);font-size:.8rem}.customer-info-form__shipping-price{color:var(--color-text-light);flex-shrink:0;font-size:.95rem;font-weight:600}@media (width<=640px){.customer-info-form__row{grid-template-columns:1fr}}.payment-review{flex-direction:column;gap:1.25rem;display:flex}.payment-review__heading{color:var(--color-text-light);margin:0;font-size:1.4rem}.payment-review__subtext{color:var(--color-text-muted);margin:-.75rem 0 0;font-size:.9rem}.payment-review__summary{background-color:var(--color-surface-raised);border-radius:12px;flex-direction:column;gap:.75rem;margin:0;padding:1.25rem;display:flex}.payment-review__row{justify-content:space-between;gap:1rem;display:flex}.payment-review__term{color:var(--color-text-muted);margin:0;font-size:.9rem}.payment-review__value{color:var(--color-text-light);text-align:right;margin:0;font-size:.9rem}.payment-review__error{color:#ff8a8a;margin:0;font-size:.9rem}.payment-review__price-breakdown{background-color:var(--color-surface-raised);border-radius:12px;flex-direction:column;gap:.6rem;margin:0;padding:1.25rem;display:flex}.payment-review__row--total{border-top:1px solid var(--color-border);margin-top:.4rem;padding-top:.75rem}.payment-review__term--total,.payment-review__value--total{color:var(--color-text-light);font-size:1rem;font-weight:700}.payment-review__loading{color:var(--color-text-muted);margin:0;font-size:.9rem}.payment-review__form{flex-direction:column;gap:1.25rem;display:flex}.payment-review__element{background-color:var(--color-surface-raised);border-radius:12px;padding:1.25rem}.payment-review__actions{justify-content:space-between;gap:1rem;display:flex}.payment-review__back{border:1px solid var(--color-border);color:var(--color-text-light);cursor:pointer;background-color:#0000;border-radius:999px;padding:.85rem 1.5rem;font-size:1rem;font-weight:600}.payment-review__back:hover{border-color:var(--color-text-light)}.payment-review__pay{background-color:var(--color-accent);color:var(--color-text-light);cursor:pointer;border:none;border-radius:999px;padding:.85rem 1.75rem;font-size:1rem;font-weight:600}.payment-review__pay:hover{background-color:var(--color-accent-hover)}.payment-review__pay:disabled{opacity:.6;cursor:not-allowed}.order{padding:4rem 1.5rem 6rem}.order__inner{max-width:640px;margin:0 auto}.order__stepper{justify-content:space-between;gap:.75rem;margin:0 0 2rem;padding:0;list-style:none;display:flex}.order__step{text-align:center;border-bottom:3px solid var(--color-border);color:var(--color-text-muted);flex:1;padding-bottom:.75rem;font-size:.8rem;font-weight:600}.order__step--active{border-bottom-color:var(--color-accent);color:var(--color-text-light)}.order__step--complete{border-bottom-color:var(--color-accent);color:var(--color-text-muted)}.order__card{background-color:var(--color-surface);border-radius:18px;padding:2rem;box-shadow:0 4px 12px #0003}.order-success{text-align:center;padding:6rem 1.5rem}.order-success__inner{flex-direction:column;align-items:center;gap:1rem;max-width:480px;margin:0 auto;display:flex}.order-success__heading{color:var(--color-text-light);margin:0;font-size:2.25rem}.order-success__subtext{color:var(--color-text-muted);margin:0;font-size:1.05rem}.order-success__link{color:var(--color-accent);font-weight:600}.order-cancel{text-align:center;padding:6rem 1.5rem}.order-cancel__inner{flex-direction:column;align-items:center;gap:1rem;max-width:480px;margin:0 auto;display:flex}.order-cancel__heading{color:var(--color-text-light);margin:0;font-size:2.25rem}.order-cancel__subtext{color:var(--color-text-muted);margin:0;font-size:1.05rem}.order-cancel__link{color:var(--color-accent);font-weight:600}.app{flex-direction:column;min-height:100vh;display:flex}
