@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;600;700&family=Manrope:wght@400;500;600;700&display=swap";:root{color:#223d35;font-synthesis:none;--green:#254c42;--orange:#bf643c;--line:#dedfd4;--muted:#6c756b;background:#faf8f2;font-family:DM Sans,sans-serif;font-weight:400}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,summary,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible,select:focus-visible{outline-offset:4px;outline:3px solid #d68449}button{color:inherit}p{line-height:1.75}h1,h2,h3{letter-spacing:-.055em;font-family:Manrope,sans-serif;font-weight:500}h1{margin:.35em 0;font-size:clamp(2.6rem,4.6vw,4.7rem);line-height:1.13}h2{white-space:pre-line;font-size:clamp(2rem,3.4vw,3.2rem);line-height:1.2}h3{margin:1rem 0;font-size:1.8rem;line-height:1.2}header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:108px;padding:0 5.6%;display:flex}.brand{letter-spacing:-.07em;align-items:center;gap:12px;font-size:1.95rem;font-weight:600;display:flex}.brand img{width:auto;height:58px}.brand small{letter-spacing:.22em;margin-top:3px;font-size:.49rem;font-weight:500;display:block}nav{align-items:center;gap:33px;font-size:.85rem;display:flex}nav>a:not(.button){padding:10px 0}.language{background:0 0;border:0;align-items:center;gap:8px;padding:10px;font-size:.8rem;display:flex}.button{border:1px solid var(--green);background:var(--green);color:#fff;border-radius:6px;justify-content:center;align-items:center;gap:32px;min-height:53px;padding:15px 25px;font-size:.88rem;font-weight:500;transition:background .2s;display:inline-flex}.button:hover{background:#376656}.button.small{gap:22px;min-height:44px;padding:12px 19px;font-size:.8rem}.button:disabled{opacity:.5}.button.secondary{color:var(--green);background:0 0;border-color:#acb7a7}.button.light{color:var(--green);background:#f5f3e8;border-color:#f5f3e8}.hero{grid-template-columns:1fr 1fr;gap:3.5%;min-height:645px;padding:32px 3% 0 5.6%;display:grid}.hero-copy{flex-direction:column;align-items:flex-start;padding:49px 0 0;display:flex}.eyebrow{letter-spacing:.17em;text-transform:uppercase;align-items:center;gap:10px;margin:0 0 25px;font-size:.65rem;font-weight:600;display:flex}.eyebrow>span{background:var(--orange);border-radius:50%;width:6px;height:6px}.hero h1 em{letter-spacing:-.045em;color:var(--orange);font-family:Georgia,serif;font-weight:400}.intro{max-width:430px;color:var(--muted);margin:24px 0 29px;font-size:.98rem}.quiet-note{color:var(--muted);margin:14px 0 30px;font-size:.71rem}.quiet-note span{color:var(--green);margin-right:5px}.hero-bottom{letter-spacing:.14em;width:100%;color:var(--muted);justify-content:space-between;align-items:center;margin-top:auto;padding:30px 0 23px;font-size:.55rem;display:flex}.hero-bottom>span:last-child{font-size:1.4rem}.hero-photo{background:#bdc4a7;border-radius:140px 8px 8px;min-height:600px;position:relative;overflow:hidden}.hero-photo>img{object-fit:cover;object-position:52% center;width:100%;height:100%;position:absolute;inset:0}.hero-photo:after{content:"";background:linear-gradient(#0000,#182e2599);position:absolute;inset:45% 0 0}.photo-label{z-index:1;color:#fff;align-items:center;gap:18px;display:flex;position:absolute;bottom:27px;left:32px;right:32px}.photo-label>span:first-child{font-size:.65rem}.photo-label>div{font-family:Georgia,serif;font-size:1.6rem;font-style:italic}.photo-label small{letter-spacing:.06em;margin-top:5px;font-family:DM Sans,sans-serif;font-size:.65rem;font-style:normal;display:block}.photo-label>span:last-child{margin-left:auto;font-size:2.5rem}.facts{border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:25px;margin:0 5.6%;padding:34px 0;display:grid}.facts>div{align-items:center;gap:20px;display:flex}.facts>div+div{border-left:1px solid var(--line);padding-left:35px}.fact-icon{font-size:1.8rem;font-weight:400}.facts p{margin:0}.facts strong,.facts small{display:block}.facts strong{font-size:.98rem;font-weight:500}.facts small{color:var(--muted);margin-top:2px;font-size:.75rem}.section{max-width:1400px;margin:auto;padding:90px 5.6%}.story{grid-template-columns:1fr .8fr;align-items:center;gap:12%;display:grid}.story h2{margin:0 0 23px}.story>div>p:not(.eyebrow){max-width:450px;color:var(--muted);font-size:.9rem}.text-link{background:0 0;border:0;border-bottom:1px solid;padding:7px 0;font-size:.85rem;font-weight:500;display:inline-block}.story aside{background:#e7ebdf;border-radius:8px;padding:38px 40px}.story aside p{color:#586a5c;font-size:.88rem}.flower{color:var(--orange);font-size:2.8rem}.planning{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:8%;padding-top:65px;display:grid}.planning h2{max-width:400px}.planning p{color:var(--muted);font-size:.88rem}.faq h3{font-size:1.2rem}.faq details{border-bottom:1px solid var(--line);padding:20px 0}.faq summary{cursor:pointer;justify-content:space-between;font-size:.9rem;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq details[open] summary span{transform:rotate(45deg)}footer{background:#e9eddf;grid-template-columns:2fr 1.3fr 1fr;gap:30px;padding:48px 5.6%;display:grid}footer>div{flex-direction:column;align-items:flex-start;gap:14px;display:flex}footer p,footer a:not(.brand){font-size:.78rem}footer p{color:var(--muted);margin:0}footer small{color:var(--muted);margin-top:auto;font-size:.65rem}.skip{z-index:10;background:#fff;padding:15px;position:absolute;top:-100px}.skip:focus{top:0}.narrow{max-width:760px;margin:auto}.page{min-height:65vh;padding:60px 25px 90px}.page h1,.booking-layout h1{font-size:clamp(2.3rem,3.5vw,3.3rem)}.booking-layout{grid-template-columns:minmax(0,1.5fr) minmax(270px,.85fr);align-items:start;gap:8%;padding-top:55px;display:grid}.booking-main>p{color:var(--muted);font-size:.9rem}.steps{border-bottom:1px solid var(--line);justify-content:space-between;gap:8px;margin:0 0 30px;padding:20px 0 30px;list-style:none;display:flex}.steps li{color:var(--muted);align-items:center;gap:9px;font-size:.78rem;display:flex}.steps li span{border:1px solid var(--line);border-radius:50%;place-items:center;width:26px;height:26px;display:grid}.steps .active{color:var(--green);font-weight:700}.steps .active span,.steps .done span{background:var(--green);color:#fff;border-color:var(--green)}form h2{letter-spacing:-.03em;font-size:1.6rem}form h2:focus{outline:none}label,.label{flex-direction:column;gap:9px;margin:15px 0;font-size:.82rem;font-weight:500;display:flex}input,textarea,select{color:#223d35;background:#fffefa;border:1px solid #b8c1b3;border-radius:5px;width:100%;min-width:0;padding:13px;font-size:1rem}input[type=number]{max-width:170px}textarea{resize:vertical}.field-grid{grid-template-columns:1fr 1fr;gap:0 20px;display:grid}.fine{color:var(--muted);font-size:.72rem;line-height:1.7}.fine a{text-decoration:underline}.calendar{border:1px solid var(--line);background:#fffefa;border-radius:8px;max-width:520px;min-height:320px;padding:20px}.calendar-nav{text-transform:capitalize;justify-content:space-between;align-items:center;margin:0 0 20px;display:flex}.calendar-nav strong{font-size:.88rem;font-weight:500}.calendar-nav button{border:1px solid var(--line);background:0 0;border-radius:4px;width:35px;height:35px}.calendar-nav button:disabled{opacity:.3}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.calendar-grid .weekday{text-align:center;color:var(--muted);padding:8px 0;font-size:.7rem}.calendar-grid button{aspect-ratio:1.25;background:0 0;border:0;border-radius:5px;min-height:36px;font-size:.87rem}.calendar-grid button:not(:disabled):hover{background:#e7ebdf}.calendar-grid button.selected{color:#fff;background:var(--green)!important}.calendar-grid button:disabled{color:#aeb3a9;background:#f6f5ee;text-decoration:line-through}.calendar .fine{margin-bottom:0}.slot{background:#e9eddf;border:1px solid #b8c6ab;border-radius:6px;align-items:center;gap:16px;max-width:520px;margin:20px 0;padding:17px 20px;display:flex}.slot>span:first-child{font-size:1.5rem}.slot small{color:var(--muted);margin-top:4px;font-size:.72rem;display:block}.slot .check{margin-left:auto}.form-actions{justify-content:flex-end;gap:12px;margin-top:28px;display:flex}.booking-summary{border:1px solid var(--line);background:#fffefa;border-radius:12px;margin-top:30px;position:sticky;top:25px;overflow:hidden}.booking-summary>img{object-fit:cover;width:100%;height:215px}.booking-summary>div{padding:25px}.booking-summary h3{font-size:1.6rem}.booking-summary p{font-size:.83rem}.booking-summary .eyebrow{margin-bottom:16px;font-size:.6rem}.booking-summary hr{border:0;border-top:1px solid var(--line);margin:25px 0}.summary-total{flex-direction:column;gap:10px;display:flex}.summary-total span{color:var(--muted);font-size:.8rem}.summary-total strong{font-size:1.65rem;font-weight:500}.error{color:#83311f;overflow-wrap:anywhere;background:#f9e7df;border-left:3px solid #aa4d34;padding:14px;font-size:.85rem}.review{margin:20px 0}.review>div{border-bottom:1px solid var(--line);grid-template-columns:1fr 1.6fr;gap:15px;padding:18px 0;font-size:.86rem;line-height:1.7;display:grid}.review dt{color:var(--muted)}.review dd{overflow-wrap:anywhere;margin:0}.review>div:last-child dd{font-weight:600}.confirmation>p{color:var(--muted)}.success-symbol{color:var(--green);background:#e4eadb;border-radius:50%;place-items:center;width:58px;height:58px;margin-bottom:25px;font-size:1.5rem;display:grid}.confirmation-card{border:1px solid var(--line);background:#fffefa;border-radius:10px;margin-top:35px;padding:30px}.confirmation-card h2{font-size:1.9rem}.badge{white-space:nowrap;background:#e8edde;border-radius:20px;padding:6px 12px;font-size:.68rem;display:inline-block}.reference{overflow-wrap:anywhere;font-family:monospace;font-size:.75rem}.manage-actions{align-items:center;gap:22px;margin-top:25px;display:flex}.action-panel{background:#eff1e7;border-radius:8px;margin-top:25px;padding:25px}.action-panel>.button{margin:15px 10px 0 0}.admin{max-width:1400px;padding-left:5.6%;padding-right:5.6%}.login{max-width:430px}.admin-toolbar{justify-content:space-between;align-items:center;gap:20px;display:flex}.admin-toolbar form{align-items:end;gap:12px;display:flex}.admin-toolbar label{margin:15px 0 0}.admin-stats{gap:45px;margin:25px 0;display:flex}.admin-stats p{color:var(--muted);font-size:.8rem}.admin-stats strong{color:var(--green);font-size:2rem;display:block}.table-wrap{overflow:auto}table{border-collapse:collapse;text-align:left;width:100%;font-size:.8rem}th{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);padding:15px 10px;font-size:.7rem}td{border-top:1px solid var(--line);vertical-align:top;padding:22px 10px}td small,td a{margin-top:7px;display:block}td small{white-space:pre-wrap;overflow-wrap:anywhere;max-width:230px}.status-action{background:0 0;border:0;padding:8px 0;font-size:.75rem;text-decoration:underline;display:block}@media (width>=1550px){.hero{max-width:1550px;margin:auto}.hero h1{font-size:4.6rem}.facts{max-width:1370px;margin:auto}}@media (width<=1000px){header{height:88px;padding:0 4%}nav{gap:18px}.hero{gap:25px;min-height:560px;padding-left:4%}.hero-copy{padding-top:35px}.hero-photo{border-top-left-radius:100px;min-height:530px}.hero h1{font-size:3.4rem}.intro{font-size:.88rem}.facts{margin:0 4%}.facts>div+div{padding-left:20px}.facts>div{gap:12px}.section{padding-left:4%;padding-right:4%}.booking-layout{gap:5%}.story{gap:7%}.story aside{padding:30px}nav>a:not(.button){display:none}}@media (width<=650px){header{height:80px;padding:0 20px}.brand{gap:7px;font-size:1.65rem}.brand img{height:42px}.brand small{font-size:.4rem}.button.small{gap:12px;min-height:40px;padding:10px 12px;font-size:.7rem}nav{gap:4px}.language{padding:8px;font-size:.7rem}.language span{display:none}.hero{grid-template-columns:1fr;gap:23px;padding:0 20px}.hero-copy{padding:35px 0 0}.eyebrow{margin-bottom:20px;font-size:.58rem}.hero h1{margin-top:0;font-size:3rem;line-height:1.13}.intro{max-width:100%;margin-top:16px;font-size:.9rem}.quiet-note{margin-bottom:0}.hero-bottom{display:none}.hero-photo{border-radius:85px 6px 6px;min-height:360px}.photo-label{bottom:22px;left:25px;right:25px}.facts{grid-template-columns:1fr;gap:20px;margin:0 20px;padding:25px 0}.facts>div+div{border:0;padding-left:0}.facts>div{gap:20px}.facts strong{font-size:.9rem}.facts small{font-size:.73rem}.fact-icon{width:27px}.section{padding:50px 20px}.story,.planning{grid-template-columns:1fr;gap:35px}.story h2{font-size:2.3rem}.story aside{padding:27px}.planning{padding-top:35px}.planning h2{margin-top:0;font-size:2.2rem}.planning .eyebrow{margin-bottom:17px}footer{grid-template-columns:1fr 1fr;gap:30px;padding:35px 20px}footer>div:first-child{grid-column:1/-1}footer>div:last-child{align-items:flex-end}.booking-layout{grid-template-columns:1fr;gap:20px;padding-top:35px}.booking-summary{order:-1;margin:0;display:none;position:static}.booking-layout h1{font-size:2.4rem}.steps li{gap:6px;font-size:.72rem}.steps li span{width:23px;height:23px}.steps{padding-bottom:25px}.field-grid{grid-template-columns:1fr;gap:0}.calendar{padding:15px}.calendar-grid{gap:4px}.calendar-grid button{min-height:38px}.form-actions .button{flex:1;gap:15px;padding-left:13px;padding-right:13px}.review>div{grid-template-columns:1fr;gap:7px}.page{padding:40px 20px 60px}.confirmation-card{padding:22px}.manage-actions{flex-direction:column;align-items:stretch;gap:15px}.action-panel{padding:16px}.admin-toolbar,.admin-toolbar form{flex-wrap:wrap}.admin-toolbar label{flex:1;min-width:120px}.admin-toolbar form .button{width:100%}table{min-width:720px}.admin-stats{gap:25px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.facts .price-fact{background:var(--green);color:#fff;border:0;border-radius:8px;margin:-14px 0;padding:14px 22px}.facts .price-fact small{color:#dce8df}.story>div>p:not(.eyebrow){max-width:520px;font-size:1rem}.booking-main>p{font-size:1rem}.booking-highlights{border:1px solid var(--line);background:#fffefa;border-radius:9px;grid-template-columns:repeat(3,1fr);max-width:520px;margin:28px 0 12px;display:grid;overflow:hidden}.booking-highlights span{color:var(--muted);flex-direction:column;gap:2px;padding:15px 18px;font-size:.7rem;display:flex}.booking-highlights span+span{border-left:1px solid var(--line)}.booking-highlights strong{color:var(--green);font:500 1.35rem Manrope,sans-serif}.guest-field{border:0;max-width:520px;margin:27px 0 0;padding:0}.guest-field legend{margin-bottom:11px;font-size:.82rem;font-weight:600}.guest-picker{grid-template-columns:repeat(6,1fr);gap:7px;display:grid}.guest-picker button{background:#fffefa;border:1px solid #b8c1b3;border-radius:6px;min-height:48px;font-weight:600}.guest-picker button:hover{background:#edf1e7}.guest-picker button.selected{background:var(--green);border-color:var(--green);color:#fff}.live-price{border-top:1px solid var(--line);border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-end;margin:18px 0 2px;padding:17px 0;display:flex}.live-price span{color:var(--muted);font-size:.78rem}.live-price strong{font:500 1.55rem Manrope,sans-serif}.hero-visual{flex-direction:column;min-width:0;display:flex}.hero-visual .hero-photo{border-radius:140px 8px 0 0;min-height:525px}.fox-story-caption{background:#e7ebdf;border-radius:0 0 8px 8px;padding:22px 32px 26px}.fox-story-caption p{color:#586a5c;margin:0 0 10px;font-size:.82rem;line-height:1.65}.fox-story-caption .text-link{font-size:.76rem}.story-meta{border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--muted);gap:12px;margin-top:35px;padding:20px 0;font-size:.76rem;display:grid}.story-meta span{align-items:center;gap:9px;display:flex}@media (width<=1000px){.hero-visual .hero-photo{min-height:470px}.fox-story-caption{padding:20px 25px 24px}.fox-story-caption p{font-size:.78rem}}@media (width<=650px){.hero-visual .hero-photo{border-top-left-radius:85px;min-height:360px}.fox-story-caption{padding:20px 22px 23px}.fox-story-caption p{font-size:.8rem}.facts .price-fact{margin:0;padding:17px 20px}.booking-highlights span{padding:13px 10px}.booking-highlights strong{font-size:1.2rem}.guest-picker{gap:5px}.guest-picker button{min-height:45px}}.slot-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:520px;margin:0 0 20px;display:grid}.slot-options .slot{text-align:left;background:#fffefa;width:100%;min-width:0;margin:0}.slot-options .slot.selected{border-color:var(--green);background:#e9eddf}.slot-options .slot:disabled{color:#9da49b;background:#f6f5ee;text-decoration:line-through}@media (width<=430px){.slot-options{grid-template-columns:1fr}}.terms-page{max-width:820px}.terms-page>h1{margin-bottom:45px}.terms-section{border-top:1px solid var(--line);padding:30px 0}.terms-section h2{margin:0 0 20px;font-size:1.55rem}.terms-section p{color:var(--muted);margin:0 0 14px;font-size:.9rem}.terms-contact{color:var(--muted);background:#e9eddf;border-radius:7px;margin-top:20px;padding:22px 25px;font-size:.82rem}.terms-contact a,.terms-consent a{text-underline-offset:3px;text-decoration:underline}.terms-consent{background:#fffefa;border:1px solid #b8c1b3;border-radius:7px;grid-template-columns:auto 1fr;align-items:start;gap:7px 11px;margin:24px 0 8px;padding:18px 20px;font-size:.82rem;line-height:1.55;display:grid}.terms-consent input{width:18px;min-width:18px;height:18px;accent-color:var(--green);margin:2px 0 0}.terms-consent label{font-size:inherit;cursor:pointer;margin:0;font-weight:500;display:block}.terms-consent a{color:var(--muted);grid-column:2;justify-self:start;font-size:.76rem}@media (width<=650px){.terms-page>h1{margin-bottom:30px}.terms-section{padding:24px 0}.terms-consent{padding:16px}}
