:root{--ink:#20221f;--gold:#b89a56;--cream:#f7f4ec;--muted:#64685e;--line:#ddd8cc;--white:#fffdf8}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.65 Arial,sans-serif}a{color:inherit}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{outline-offset:5px}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #88611b}button{cursor:pointer}button:disabled{cursor:not-allowed}h1,h2,h3,p{margin:0 0 20px}h1,h2{font-family:Georgia,serif;font-weight:400;line-height:1.06;letter-spacing:-2px}h1{font-size:clamp(54px,6.4vw,94px)}h2{font-size:clamp(38px,4vw,57px)}h3{font-family:Georgia,serif;font-size:24px;font-weight:400;line-height:1.3}em{font-weight:400;color:#91763d}section{scroll-margin-top:20px}.preview-bar{padding:9px 20px;text-align:center;background:#e9dfc7;color:#4d422e;font-size:12px;letter-spacing:.8px}header{max-width:1440px;margin:auto;padding:28px 5%;display:flex;align-items:center;justify-content:space-between;gap:28px;border-bottom:1px solid var(--line)}.brand{text-decoration:none;display:flex;align-items:center;gap:13px;font-size:10px;letter-spacing:2px;line-height:1.5}.monogram{font:36px Georgia,serif;letter-spacing:-3px;border-right:1px solid #b5a98b;padding-right:18px}nav{display:flex;gap:22px;font-size:13px}nav a{text-decoration:none}nav a:hover,.text-link:hover{text-decoration:underline}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;background:var(--ink);color:var(--white);padding:16px 24px;text-decoration:none;border:1px solid var(--ink);font-size:14px}.button:hover{background:#383b34}.button.outline{background:transparent;color:var(--ink)}.button.outline:hover{background:#e7e2d7}.button.small{font-size:12px;padding:12px 18px}.hero{max-width:1440px;margin:auto;display:grid;grid-template-columns:1.1fr 1fr;gap:6%;padding:65px 6% 70px}.eyebrow{font-size:11px;letter-spacing:2.3px;font-weight:600;color:#726345;margin-bottom:26px}.hero h1{margin-bottom:28px}.intro{max-width:420px;color:var(--muted);font-size:17px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin:25px 0}.fine{font-size:12px;color:var(--muted);line-height:1.7}.hero-art{position:relative;min-height:520px;padding:20px 45px;background:#eae4d7;overflow:hidden;display:flex;align-items:center;justify-content:center;flex-direction:column}.hero-art:before,.hero-art:after{content:'';position:absolute;width:270px;height:270px;border:1px solid #c9ba96;border-radius:50%;left:-130px;top:140px}.hero-art:after{left:auto;right:-170px;top:30px;width:430px;height:430px}.arch{width:100%;height:440px;border:1px solid #ab925c;border-radius:48% 48% 0 0;display:flex;align-items:center;flex-direction:column;justify-content:center;position:relative;background:linear-gradient(130deg,#f3ede0,#e1d5ba)}.arch:before{position:absolute;content:'';inset:12px;border:1px solid #c2ac7b;border-radius:48% 48% 0 0}.art-star{color:#93763c;font-size:56px;line-height:1}.art-initial{font:86px Georgia,serif;letter-spacing:-8px;color:#6c5a36}.art-rule{width:45px;height:1px;background:#9d8652;margin:22px}.art-caption{font-size:10px;letter-spacing:3px;text-align:center}.art-flower{position:absolute;font-size:170px;bottom:-65px;right:-35px;color:#a79262;opacity:.5}.hero-art>p{font-size:9px;letter-spacing:1.5px;margin:24px 0 0;z-index:1}.feature-strip{border-block:1px solid var(--line);display:flex;justify-content:space-evenly;gap:20px;padding:22px 5%;font-size:13px}.feature-strip strong{font-weight:500}.section{max-width:1440px;padding:80px 6%;margin:auto}.section-heading{display:grid;grid-template-columns:1.1fr 1fr;gap:10%;margin-bottom:34px;align-items:end}.section-heading>p{max-width:450px;color:var(--muted)}.price-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line)}.price-grid article{padding:30px;border-right:1px solid var(--line)}.price-grid article:last-child{border:0}.price-grid p{font-size:11px;letter-spacing:2px}.price-grid h3{font-size:44px;margin:15px 0}.price-grid span{font-size:12px;color:var(--muted)}.price-grid .featured{background:#eae2ce}.price-grid+.fine{margin-top:14px}.detail-row{display:grid;grid-template-columns:1fr 1fr;gap:9%;border-top:1px solid var(--line);padding-top:35px;margin-top:38px}.detail-row p{color:var(--muted);font-size:14px}.booking-section{background:#efede5}.booking-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:5%;align-items:start}.calendar-panel{background:var(--white);padding:28px;border:1px solid var(--line)}.tabs{display:flex;border-bottom:1px solid var(--line);margin-bottom:25px}.tabs button{background:transparent;border:0;border-bottom:2px solid transparent;padding:12px 15px;flex:1}.tabs .active{border-bottom-color:#8d7138;color:#675027}.month-nav{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.month-nav h3{font-size:23px;margin:0}.month-nav button{border:0;background:transparent;font-size:22px;padding:5px 10px}.calendar,.weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.weekdays{text-align:center;font-size:11px;color:var(--muted);margin:20px 0 10px}.calendar button{aspect-ratio:1;border:1px solid transparent;background:transparent;border-radius:50%;font-size:13px;padding:0;min-height:34px}.calendar button:hover:enabled{border-color:#a78a4e}.calendar button:disabled{text-decoration:line-through;color:#868477;background:#efeee8}.calendar button.selected{background:var(--ink);color:white}.calendar button.in-range{background:#e4dac1;border-radius:0}.legend{display:flex;gap:12px;flex-wrap:wrap;font-size:10px;margin:25px 0 15px}.form-title{display:flex;gap:12px;align-items:center;margin-bottom:18px}.form-title h3{margin:0}.step{border:1px solid #c8b98f;border-radius:50%;font-size:10px;width:29px;height:29px;display:grid;place-items:center}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px}label{display:flex;flex-direction:column;font-size:12px;gap:6px}.wide{grid-column:1/-1}input,select,textarea{min-width:0;width:100%;padding:11px 12px;border:1px solid #c9c7bb;background:var(--white);color:var(--ink);border-radius:0}textarea{resize:vertical}.check{flex-direction:row;align-items:flex-start;gap:10px;margin:20px 0}.check input{width:17px;height:17px;flex-shrink:0;margin-top:3px}.quote{padding:20px 0;border-block:1px solid var(--line);font-size:12px}.quote>div{display:flex;justify-content:space-between;gap:15px;padding:5px 0}.quote .total{border-top:1px solid var(--line);margin-top:9px;padding-top:14px}.submit{width:100%}#form-message{font-size:13px;color:#84351d;margin-top:15px}.stay-banner{display:grid;grid-template-columns:1fr 1fr;gap:10%;background:#242820;color:var(--cream)}.stay-banner .eyebrow{color:#d0bb85}.stay-banner em{color:#c9b27d}.stay-banner>div+div{align-self:center}.text-link{background:none;border:0;border-bottom:1px solid #9f8b5b;padding:0 0 5px;text-decoration:none;font-size:14px}.gallery-placeholders{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:20px}.gallery-placeholders>div{padding:35px 25px;height:230px;border:1px solid #cfc5ad;background:linear-gradient(140deg,#e2dac9,#f3eee3);display:flex;flex-direction:column;justify-content:flex-end}.gallery-placeholders span{margin-bottom:auto;color:#8b794f;font-size:12px}.gallery-placeholders h3{margin-bottom:8px}.gallery-placeholders p{font-size:11px;margin:0;color:#6d685b}.faq{display:grid;grid-template-columns:.9fr 1.1fr;gap:10%;border-top:1px solid var(--line)}.faq>div>p:last-child{font-size:14px;color:var(--muted);max-width:330px}details{border-bottom:1px solid var(--line);padding:18px 0}summary{cursor:pointer;font-size:15px}details p{font-size:14px;color:var(--muted);margin:15px 0 0}.contact{text-align:center;background:#eae3d4}.contact .actions{justify-content:center}.contact>p{margin-bottom:10px}footer{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:35px 6%;font-size:12px}footer p{margin:0;color:var(--muted)}dialog{border:1px solid var(--line);background:var(--cream);color:var(--ink);padding:45px;max-width:800px;width:90%;max-height:88vh}dialog::backdrop{background:#151a15b3}dialog .close{position:absolute;top:10px;right:15px;border:0;background:none;font-size:30px}dialog h2{font-size:38px}pre{font:13px/1.7 Arial,sans-serif;white-space:pre-wrap;overflow-wrap:anywhere;border-block:1px solid var(--line);padding:20px 0}.owner-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;font-size:13px}.owner-stats>div{padding:15px;background:#e7dfcd}.owner-stats p{margin:8px 0 0}.skip{position:absolute;left:15px;top:-100px;background:white;padding:10px;z-index:5}.skip:focus{top:10px}[hidden]{display:none!important}@media(max-width:1000px){header{flex-wrap:wrap}nav{order:3;width:100%;justify-content:space-between;gap:12px}.hero{gap:4%;padding-top:45px}.hero-art{min-height:460px;padding:25px}.arch{height:380px}.hero .actions .button{width:100%}.booking-layout{gap:25px;grid-template-columns:1fr 1.1fr}.calendar-panel{padding:20px}.section{padding:60px 5%}}@media(max-width:700px){.preview-bar{font-size:10px}header{padding:20px 5%;gap:18px}nav{overflow-x:auto;justify-content:flex-start;gap:22px;white-space:nowrap;padding-bottom:8px}header>.button{padding:10px;font-size:11px}.hero{grid-template-columns:1fr;padding:40px 6%}.hero-art{margin-top:15px;min-height:360px}.arch{height:320px;width:85%}.hero h1{font-size:60px}.feature-strip{display:grid;grid-template-columns:1fr 1fr;font-size:11px;gap:15px;padding:20px 6%}.section-heading,.booking-layout,.stay-banner,.faq{grid-template-columns:1fr;gap:25px}.section-heading{margin-bottom:25px}.price-grid{grid-template-columns:1fr 1fr}.price-grid article{padding:22px;border-bottom:1px solid var(--line)}.price-grid h3{font-size:36px}.detail-row{grid-template-columns:1fr;gap:20px}.gallery-placeholders{grid-template-columns:1fr}.gallery-placeholders>div{height:160px}.form-grid{gap:14px}.quote>div{flex-wrap:wrap}.section{padding:50px 6%}.owner-stats{grid-template-columns:1fr}footer{align-items:flex-start;flex-direction:column}dialog{padding:35px 22px}.legend{font-size:10px}.contact .button{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{body>*{display:none!important}body>#review[open]{display:block!important;position:static;width:100%;max-width:none;max-height:none;border:0;padding:0}#review button,#review .actions{display:none!important}#review pre{font-size:11pt}dialog::backdrop{background:none}}

/* Owner-supplied photographs; preserve the complete frames. */
.hero-photo{margin:0;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:35px 30px;background:#eae3d4;text-align:center;border:1px solid #cfc5ad}.hero-photo img{display:block;width:100%;max-width:294px;height:auto;object-fit:contain;border:8px solid var(--white);box-shadow:0 12px 28px #28251c24}.hero-photo figcaption{font:25px/1.3 Georgia,serif;margin:25px 0 10px}.hero-photo .fine{max-width:280px}.venue-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.venue-gallery figure{margin:0;min-width:0}.photo-frame{min-height:300px;display:flex;align-items:center;justify-content:center;padding:22px;background:#eae3d4;border:1px solid #cfc5ad}.photo-frame img{display:block;max-width:100%;width:auto;max-height:268px;height:auto;object-fit:contain;box-shadow:0 5px 18px #28251c24;transform:none}.venue-gallery figcaption{padding:20px 0}.venue-gallery h3{font-size:23px;margin:0 0 8px}.venue-gallery p{font-size:13px;color:var(--muted);margin:0}@media(max-width:700px){.hero-photo{padding:28px 20px;margin-top:15px}.venue-gallery{grid-template-columns:1fr}.photo-frame{min-height:230px}.venue-gallery figcaption{padding:15px 0}}

.property-gallery{border-bottom:1px solid var(--line)}.property-gallery figure{margin:0 0 30px}.property-photo-strip{overflow-x:auto;border:1px solid var(--line);background:var(--white);padding:10px;scrollbar-width:thin}.property-photo-strip:focus-visible{outline:3px solid #88611b;outline-offset:5px}.property-photo-strip img{display:block;width:100%;min-width:880px;height:auto}.property-gallery figcaption{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:13px;color:var(--muted);padding:12px 0}.property-gallery figcaption a{color:var(--ink)}

.payments-section{border-top:1px solid var(--line)}.payment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:start}.payment-grid article{min-width:0;background:var(--white);border:1px solid var(--line);padding:25px}.payment-grid article>p{font-size:14px}.payment-grid .eyebrow{font-size:10px}.payment-recipient{overflow-wrap:anywhere;font-weight:600}.payment-grid .button{width:100%;justify-content:center}.payment-grid .fine{font-size:12px;margin-top:16px}.zelle-image-link{display:block;background:#fff;padding:6px;margin-bottom:12px}.zelle-image-link img{display:block;width:100%;max-width:300px;height:auto;margin:auto}.payment-verification{margin-top:25px;padding:22px;background:#eae3d4;font-size:14px}.payment-verification p{margin:10px 0 0}@media(max-width:700px){.payment-grid{grid-template-columns:1fr}}

.quickbooks-deposit{display:grid;grid-template-columns:1.1fr 1fr;gap:30px;align-items:center;padding:28px;margin-bottom:26px;border:1px solid #b6a77c;background:#eae3d4}.quickbooks-deposit p{font-size:14px}.quickbooks-deposit .fine{font-size:12px}.quickbooks-deposit .button{width:100%;justify-content:center;text-align:center}.quickbooks-deposit h3{font-size:28px}#quickbooks-deposit-mismatch{padding:15px;background:var(--white);border:1px solid var(--line)}@media(max-width:700px){.quickbooks-deposit{grid-template-columns:1fr;gap:10px;padding:22px}}

.admin-main{max-width:1150px}.admin-main h1{font-size:52px}.admin-main h2{font-size:36px}.admin-main section{padding:35px 0;border-top:1px solid var(--line);margin-top:30px}.admin-form{display:grid;gap:16px;max-width:850px;margin:25px 0}.admin-form>.button{justify-self:start}.admin-nav{display:flex;flex-wrap:wrap;gap:20px;padding:25px 0}.admin-notice{padding:20px;background:#eae3d4}.admin-notice p{margin:10px 0 0;font-size:14px}.admin-record{padding:22px;border:1px solid var(--line);background:var(--white);margin:18px 0;overflow-wrap:anywhere}.admin-record h3{font-size:25px}.admin-record p{font-size:13px}.admin-inline{display:flex;gap:15px;align-items:end;flex-wrap:wrap}.admin-record .admin-form{border-top:1px solid var(--line);padding-top:15px}.error-message{color:#8b2b1e}#admin-message{padding:10px 0;font-weight:600}#invite-result{overflow-wrap:anywhere;background:#eae3d4}.admin-records{overflow-wrap:anywhere}@media(max-width:700px){.admin-main h1{font-size:40px}.admin-main .form-grid{grid-template-columns:1fr}}
