/* base.css */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:110px}
body,h1,h2,h3,p,figure,dl,dd{margin:0}
body{-webkit-font-smoothing:antialiased}
button,input,textarea{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
a{color:inherit;text-decoration:none}
img,svg{display:block;max-width:100%}
img{height:auto}
button{color:inherit}
button:disabled{cursor:not-allowed}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}
[hidden]{display:none!important}
dialog{color:inherit}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* style.css */
:root{
  --bg:oklch(96.5% .011 80);--surface:oklch(99% .005 80);--offset:oklch(92% .015 80);--ink:oklch(26% .017 65);--muted:oklch(47% .018 65);--line:oklch(26% .017 65 / .19);--accent:oklch(43% .056 50);--accent-hover:oklch(33% .042 50);--inverse:oklch(97% .01 80);
  --font-display:'Boska',Georgia,serif;--font-body:'Satoshi',Arial,sans-serif;
  --text-xs:clamp(.75rem,.72rem + .14vw,.875rem);--text-sm:clamp(.875rem,.83rem + .15vw,1rem);--text-base:clamp(1rem,.96rem + .15vw,1.1rem);--text-lg:clamp(1.125rem,1rem + .6vw,1.4rem);--text-xl:clamp(1.75rem,1.4rem + 1vw,2.3rem);--text-2xl:clamp(2.4rem,1.6rem + 2.4vw,4rem);--text-hero:clamp(3.5rem,2.6rem + 3.6vw,6.8rem);
  --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;--space-32:8rem;--gutter:clamp(var(--space-5),4.4vw,var(--space-20));
}
[data-theme=dark]{--bg:oklch(23% .015 65);--surface:oklch(26% .015 65);--offset:oklch(29% .017 65);--ink:oklch(93% .013 80);--muted:oklch(76% .017 80);--line:oklch(93% .013 80 / .2);--accent:oklch(77% .05 65);--accent-hover:oklch(86% .035 65);--inverse:oklch(22% .014 65)}
body{background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:var(--text-base);line-height:1.65}
h1,h2,h3{font-family:var(--font-display);font-weight:400;line-height:1.05;letter-spacing:-.025em}
h1{font-size:var(--text-hero)}h2{font-size:var(--text-2xl)}h3{font-size:var(--text-xl)}
p{max-width:64ch}p+p{margin-top:var(--space-5)}
button{border:0;background:none}
.skip{position:fixed;top:-100px;left:var(--space-4);z-index:100;background:var(--ink);color:var(--bg);padding:var(--space-3)}.skip:focus{top:var(--space-4)}
.eyebrow,.micro,.small-number{font-size:var(--text-xs)}
.eyebrow{text-transform:uppercase;letter-spacing:.17em;font-weight:500;margin-bottom:var(--space-6)}
.micro{color:var(--muted);margin-top:var(--space-4)}
.small-number{color:var(--muted);letter-spacing:.1em}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:var(--space-8);min-height:54px;padding:var(--space-4) var(--space-6);background:var(--accent);color:var(--inverse);font-size:var(--text-sm);font-weight:500;transition:background .2s,transform .2s}
.button:hover{background:var(--accent-hover);transform:translateY(-2px)}.button:active{transform:none}
.button span,.text-link span{transition:transform .2s}.button:hover span,.text-link:hover span{transform:translate(2px,-2px)}
.text-link{display:inline-flex;min-height:44px;align-items:center;gap:var(--space-8);font-size:var(--text-sm);border-bottom:1px solid var(--line);padding:var(--space-2) 0;font-weight:500}
.section-wrap{max-width:1440px;margin-inline:auto;padding-inline:var(--gutter)}
.site-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:var(--space-8);padding:var(--space-5) var(--gutter);background:var(--bg);border-bottom:1px solid var(--line)}
.brand{display:block;width:245px;flex-shrink:0}.brand svg{width:100%;height:auto}.brand img{width:100%}
[data-theme=dark] .brand{filter:invert(.95)}
.desktop-nav{display:flex;gap:var(--space-8);align-items:center;font-size:var(--text-sm)}.desktop-nav a{padding-block:var(--space-3);position:relative}.desktop-nav a:after{content:'';position:absolute;bottom:0;left:0;width:0;height:1px;background:var(--accent);transition:width .2s}.desktop-nav a:hover:after{width:100%}
.header-actions{display:flex;align-items:center;gap:var(--space-4)}.compact{min-height:48px;padding:var(--space-3) var(--space-5);gap:var(--space-5)}
.theme-toggle{height:44px;width:44px;font-size:var(--text-lg);border:1px solid var(--line);border-radius:50%}
.menu-toggle{display:none;min-height:44px;font-size:var(--text-sm)}
.hero{display:grid;grid-template-columns:.85fr 1.15fr;position:relative;min-height:670px}
.hero-copy{padding:var(--space-20) var(--gutter) var(--space-24);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.hero-copy .eyebrow{margin-bottom:var(--space-6)}.hero h1{line-height:.98}.soft-word{color:var(--accent)}
.hero-description{font-size:var(--text-base);max-width:34ch;margin-top:var(--space-8);margin-bottom:var(--space-8);color:var(--muted)}
.hero-photo{position:relative;min-width:0;overflow:hidden}.hero-photo>img{width:100%;height:100%;object-fit:cover;object-position:44% 50%;position:absolute}
.photo-label{position:absolute;bottom:var(--space-6);right:var(--space-6);padding:var(--space-2) var(--space-4);background:oklch(23% .015 65 / .82);color:#fff;font-size:var(--text-xs)}
.hero-scroll{position:absolute;bottom:var(--space-6);left:var(--gutter);display:flex;gap:var(--space-12);align-items:center;font-size:var(--text-xs);min-height:44px}
.intro-strip{display:flex;justify-content:space-between;align-items:center;gap:var(--space-6);padding:var(--space-6) var(--gutter);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.12em;background:var(--offset);border-block:1px solid var(--line)}
.farm-section{padding-block:var(--space-24);display:grid;grid-template-columns:1.15fr .85fr;column-gap:var(--space-24);row-gap:var(--space-16);align-items:start}
.farm-story{color:var(--muted);padding-top:var(--space-10)}.farm-story .text-link{color:var(--ink);margin-top:var(--space-6)}
.barn-image img{width:100%;aspect-ratio:4/3;object-fit:cover}.barn-image figcaption{font-size:var(--text-xs);color:var(--muted);margin-top:var(--space-3)}
.barn-image img[src*="reception-room"]{aspect-ratio:5/4;object-position:center 58%}
.suite-section{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-24);align-items:center;padding-top:var(--space-24);padding-bottom:var(--space-12)}
.suite-copy>p:not(.eyebrow){color:var(--muted);margin-top:var(--space-6);max-width:44ch}.suite-copy .text-link{margin-top:var(--space-6)}.suite-section figure{max-width:490px;justify-self:end}.suite-section figure img{width:100%;height:auto}.suite-section figcaption{font-size:var(--text-xs);color:var(--muted);margin-top:var(--space-3)}
.gallery-details{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4);padding:var(--space-4) var(--gutter) 0}.gallery-details .gallery-photo{aspect-ratio:3/4}.gallery-details .gallery-photo>span{gap:var(--space-2);padding:var(--space-4)}
.barn-note{align-self:center;padding-right:var(--space-12)}.barn-note h3{margin-block:var(--space-5) var(--space-6);line-height:1.15}.barn-note p{color:var(--muted)}.barn-note .text-link{margin-top:var(--space-6)}
.silo-section{display:grid;grid-template-columns:1fr 1fr;background:var(--offset)}
.silo-image{min-height:680px;max-height:760px;overflow:hidden}.silo-image img{width:100%;height:100%;object-fit:cover;object-position:center 50%}
.silo-copy{padding:var(--space-20) clamp(var(--space-8),7vw,var(--space-32));align-self:center}.silo-copy h2{font-size:var(--text-hero)}.silo-copy>p:not(.eyebrow){margin-top:var(--space-6);color:var(--muted)}.silo-copy .text-link{margin-top:var(--space-8)}
.fine-print{font-size:var(--text-xs);line-height:1.6;color:var(--muted)}
.gatherings{display:grid;grid-template-columns:.85fr 1.15fr;gap:var(--space-20);padding-block:var(--space-24)}
.occasion-list article{display:grid;grid-template-columns:32px 1fr 44px;gap:var(--space-6);padding-block:var(--space-8);border-top:1px solid var(--line)}.occasion-list article:last-child{border-bottom:1px solid var(--line)}
.occasion-list h3{margin-bottom:var(--space-3)}.occasion-list p{font-size:var(--text-sm);color:var(--muted);max-width:42ch}
.occasion-link{font-size:var(--text-lg);width:44px;height:44px;border:1px solid var(--line);border-radius:50%;align-self:center;transition:background .2s}.occasion-link:hover{background:var(--offset)}
.gallery-section{background:var(--offset);padding-top:var(--space-20)}.gallery-title{display:flex;justify-content:space-between;align-items:end;gap:var(--space-12);padding-bottom:var(--space-12)}
.photo-grid{display:grid;grid-template-columns:1.2fr .8fr;grid-template-rows:340px 340px;gap:var(--space-4);padding-inline:var(--gutter)}
.gallery-photo{position:relative;padding:0;overflow:hidden;text-align:left}.gallery-photo.tall{grid-column:2;grid-row:1/3}.gallery-photo img{height:100%;width:100%;object-fit:cover;transition:transform .6s}.gallery-photo:hover img{transform:scale(1.03)}
.gallery-photo>span{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;color:#fff;font-size:var(--text-sm);padding:var(--space-6);background:linear-gradient(transparent,rgba(0,0,0,.65))}
.gallery-photo b{font-size:var(--text-lg);font-weight:400}
.films{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-8);padding-block:var(--space-16) var(--space-20)}.films>div{grid-column:1/-1}.films h3{margin-bottom:var(--space-4)}.films>div p:not(.eyebrow){font-size:var(--text-sm);color:var(--muted)}
.film-link img{width:100%;aspect-ratio:16/9;object-fit:cover}.film-caption{display:block;font-size:var(--text-sm);margin-top:var(--space-3);font-weight:500}.film-caption>span{float:right}.film-caption small{display:block;font-size:var(--text-xs);font-weight:400;color:var(--muted);margin-top:var(--space-1)}
.details-section{padding-block:var(--space-24) var(--space-16);display:grid;grid-template-columns:1fr 1fr;gap:var(--space-16) var(--space-24)}
.details-section .section-heading>p:not(.eyebrow){margin-block:var(--space-6) var(--space-8);color:var(--muted);max-width:43ch}
.amenities>div{padding-block:var(--space-5);border-top:1px solid var(--line)}.amenities>div:first-child{padding-top:0;border-top:0}.amenities dt{font-size:var(--text-base);font-weight:500}.amenities dd{font-size:var(--text-sm);color:var(--muted);margin-top:var(--space-1)}
.inclusions-note{grid-column:1/-1;border-block:1px solid var(--line);padding-block:var(--space-5)}.inclusions-note p{max-width:none;font-size:var(--text-xs);color:var(--muted)}
.faq-section{display:grid;grid-template-columns:.85fr 1.15fr;gap:var(--space-20);padding-block:var(--space-8) var(--space-24)}
.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{font-size:var(--text-base);font-weight:500;cursor:pointer;list-style:none;display:flex;gap:var(--space-6);justify-content:space-between;align-items:center;padding-block:var(--space-5)}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span{font-size:var(--text-lg);font-weight:400;transition:transform .2s}.faq-list details[open] summary>span{transform:rotate(45deg)}.faq-list details p{font-size:var(--text-sm);color:var(--muted);padding-bottom:var(--space-6);padding-right:var(--space-8)}
.visit-section{position:relative;min-height:550px;display:grid;align-items:center;overflow:hidden;background:#25201b;color:#fff}.visit-section>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:50% 53%;opacity:.4}.visit-copy{position:relative;padding:var(--space-20) var(--gutter);max-width:820px}.visit-copy h2{font-size:var(--text-2xl)}.visit-copy>p:not(.eyebrow){max-width:46ch;margin-top:var(--space-6)}.visit-copy .button{margin-top:var(--space-8)}.visit-copy .micro{color:#eee4d5}.button.light{background:#f6f3ed;color:#29231e}.button.light:hover{background:#e3d8c6}
.footer-top{display:grid;grid-template-columns:1.4fr 1fr .7fr;gap:var(--space-16);padding-block:var(--space-16)}.footer-brand{width:300px;align-self:start}.footer-top address{font-style:normal;font-size:var(--text-sm)}.footer-top .eyebrow{margin-bottom:var(--space-4)}.footer-top .text-link{display:flex;width:max-content;margin-top:var(--space-2)}.footer-bottom{display:flex;justify-content:space-between;gap:var(--space-8);align-items:center;border-top:1px solid var(--line);padding:var(--space-5) var(--gutter);font-size:var(--text-xs);color:var(--muted)}.privacy-button{min-height:44px;font-size:var(--text-xs)}
dialog{background:var(--bg);border:none;padding:var(--space-12);max-height:90dvh;overflow:auto;width:min(580px,calc(100% - 32px));box-shadow:0 20px 100px #0005}
dialog::backdrop{background:rgba(20,17,14,.7);backdrop-filter:blur(4px)}
.dialog-close{position:absolute;top:var(--space-3);right:var(--space-3);width:44px;height:44px;font-size:var(--text-xl);z-index:2}
dialog h2{font-size:var(--text-2xl);margin-bottom:var(--space-6)}dialog .eyebrow{padding-right:var(--space-6)}dialog p{font-size:var(--text-sm);color:var(--muted)}
#tour-form{margin-top:var(--space-6)}#tour-form label{display:block;font-size:var(--text-sm);font-weight:500;margin-block:var(--space-5) var(--space-2)}
input,textarea{width:100%;background:var(--surface);color:var(--ink);border:1px solid var(--line);padding:var(--space-3);border-radius:0;font-size:var(--text-base)}textarea{resize:vertical;min-height:130px}input::placeholder,textarea::placeholder{color:var(--muted);opacity:.85}
#tour-form .button{margin-top:var(--space-6);width:100%}#tour-form .fine-print{font-size:var(--text-xs);margin-top:var(--space-4)}
.email-preview{background:var(--offset);padding:var(--space-5);margin-block:var(--space-6);overflow-wrap:anywhere}.email-recipient{font-size:var(--text-xs);border-bottom:1px solid var(--line);padding-bottom:var(--space-3)}#inquiry-preview{font:inherit;font-size:var(--text-sm);white-space:pre-wrap;line-height:1.5}.review-actions{display:flex;justify-content:space-between;gap:var(--space-6);margin-top:var(--space-5)}
.photo-dialog{width:min(1100px,calc(100% - 32px));background:#201c18;color:#fff;padding:var(--space-12) var(--space-6) var(--space-5);text-align:center}.photo-dialog>img{max-height:68dvh;max-width:100%;width:auto;object-fit:contain;margin:auto}.photo-dialog>p{max-width:none;color:#fff;margin-top:var(--space-4)}.photo-controls{display:flex;justify-content:center;align-items:center;gap:var(--space-8);margin-top:var(--space-3)}.photo-controls button{border:1px solid #fff5;width:44px;height:44px}.photo-controls span{font-size:var(--text-xs)}
.image-error{background:var(--offset)!important;color:var(--muted);object-fit:contain!important}
@media(min-width:1700px){.hero{min-height:800px}.hero-copy{padding-left:max(var(--gutter),calc((100vw - 1440px)/2))}}
@media(max-width:1100px){.desktop-nav{gap:var(--space-5)}.site-header{gap:var(--space-4)}.brand{width:205px}.header-actions{gap:var(--space-2)}.hero{min-height:600px}.hero-copy{padding-block:var(--space-16) var(--space-24)}.farm-section,.details-section{column-gap:var(--space-12)}.gatherings,.faq-section{gap:var(--space-12)}.silo-image{min-height:580px}.silo-copy{padding:var(--space-12)}}
@media(max-width:850px){.desktop-nav{display:none}.menu-toggle{display:flex;align-items:center;gap:var(--space-3)}.mobile-nav{position:absolute;left:0;right:0;top:100%;background:var(--bg);border-bottom:1px solid var(--line);padding:var(--space-5) var(--gutter);box-shadow:0 12px 20px #0001}.mobile-nav a{display:block;padding:var(--space-3) 0}.brand{width:210px}.hero{grid-template-columns:1fr 1fr;min-height:560px}.hero h1{font-size:clamp(3.2rem,6.8vw,5rem)}.hero-copy{padding-right:var(--space-6)}.intro-strip{font-size:var(--text-xs);letter-spacing:.04em;gap:var(--space-4)}.farm-section{row-gap:var(--space-10);padding-block:var(--space-16)}.barn-note{padding-right:0}.silo-copy h2{font-size:var(--text-2xl)}.silo-image{min-height:530px}.gatherings,.details-section,.faq-section{grid-template-columns:1fr}.gatherings,.details-section{padding-block:var(--space-16)}.section-heading>h2 br{display:none}.occasion-list article:first-child{padding-top:var(--space-6)}.details-section{gap:var(--space-10)}.amenities{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4) var(--space-8)}.amenities>div:first-child{padding-top:var(--space-5);border-top:1px solid var(--line)}.gallery-title{align-items:start}.films{grid-template-columns:1fr 1fr}.films>div{grid-column:1/-1}.photo-grid{grid-template-rows:250px 250px}.footer-top{grid-template-columns:1fr 1fr;gap:var(--space-8)}.footer-brand{grid-column:1/-1;width:260px}.footer-bottom>span:nth-child(2){display:none}}
@media(max-width:600px){html{scroll-padding-top:90px}.site-header{padding-block:var(--space-4)}.brand{width:190px}.header-actions>.compact{display:none}.theme-toggle{width:40px;height:44px;border:0}.header-actions{gap:var(--space-2)}.menu-toggle{font-size:var(--text-xs);padding:0}.hero{display:flex;flex-direction:column}.hero-copy{padding:var(--space-12) var(--gutter) var(--space-10)}.hero h1{font-size:clamp(3.65rem,12vw,5.5rem);line-height:1}.hero h1 br:nth-child(2){display:none}.hero-copy .eyebrow{margin-bottom:var(--space-5)}.hero-description{margin-block:var(--space-6);max-width:38ch}.hero-photo{height:360px;min-height:360px}.hero-photo>img{object-position:center 52%}.hero-scroll{display:none}.photo-label{left:var(--space-5);right:auto;bottom:var(--space-5);max-width:calc(100% - 40px)}.intro-strip{flex-direction:column;gap:var(--space-2);padding-block:var(--space-5);font-size:var(--text-xs)}.intro-strip>span:first-child{display:none}.farm-section{grid-template-columns:1fr;padding-block:var(--space-16);gap:var(--space-8)}.farm-story{padding-top:0}.barn-image{margin-top:var(--space-4)}.barn-note{padding-top:var(--space-4)}.barn-note h3 br{display:none}.silo-section{display:flex;flex-direction:column}.silo-image{height:480px;min-height:0}.silo-image img{object-position:center 50%}.silo-copy{padding:var(--space-12) var(--gutter)}.silo-copy h2{font-size:var(--text-2xl)}.silo-copy h2 br{display:none}.gatherings{padding-block:var(--space-16);gap:var(--space-8)}.occasion-list article{gap:var(--space-3);grid-template-columns:24px 1fr 44px;padding-block:var(--space-6)}.occasion-list h3{font-size:var(--text-xl)}.gallery-title{display:block;padding-bottom:var(--space-8)}.gallery-title>.text-link{margin-top:var(--space-6)}.gallery-section{padding-top:var(--space-12)}.photo-grid{grid-template-columns:1fr 1fr;grid-template-rows:270px 250px;gap:var(--space-2)}.gallery-photo.wide:first-child{grid-column:1/-1}.gallery-photo.tall{grid-column:auto;grid-row:auto}.gallery-photo>span{padding:var(--space-4);font-size:var(--text-xs)}.films{padding-block:var(--space-12);gap:var(--space-8) var(--space-4)}.film-caption{font-size:var(--text-sm)}.film-caption small{font-size:var(--text-xs)}.amenities{grid-template-columns:1fr;gap:0}.details-section{padding-bottom:var(--space-12)}.faq-section{padding-bottom:var(--space-16);gap:var(--space-8)}.faq-list summary{font-size:var(--text-sm)}.visit-section{min-height:470px}.visit-copy{padding:var(--space-12) var(--gutter)}.visit-copy h2{font-size:var(--text-2xl)}.visit-section>img{object-position:45% center;opacity:.28}.footer-top{grid-template-columns:1fr 1fr;gap:var(--space-10) var(--space-6);padding-block:var(--space-12)}.footer-brand{width:250px}.footer-top .eyebrow{font-size:var(--text-xs);letter-spacing:.1em}.footer-bottom{gap:var(--space-4);padding-block:var(--space-3)}dialog{padding:var(--space-12) var(--space-6) var(--space-8)}dialog .eyebrow{letter-spacing:.09em;font-size:var(--text-xs)}.photo-dialog{padding:var(--space-12) var(--space-3) var(--space-4)}.photo-dialog>img{max-height:65dvh}}
@media(max-width:850px){.suite-section{gap:var(--space-10);padding-top:var(--space-16)}.gallery-details{grid-template-columns:repeat(2,1fr)}.gallery-details .gallery-photo{aspect-ratio:1}}
@media(max-width:600px){.suite-section{grid-template-columns:1fr;padding-bottom:0;gap:var(--space-8)}.suite-section figure{justify-self:stretch;max-width:none}.suite-section figure img{max-height:470px;object-fit:cover;object-position:center 52%}.gallery-details{gap:var(--space-2);padding-top:var(--space-2)}}
@media(max-width:600px){.films{grid-template-columns:1fr}.film-caption{font-size:var(--text-base)}}

/* Oct 15 2026: header phone + hero h1 eyebrow */
.header-phone{font-family:var(--font-body);font-size:var(--text-xs);font-weight:500;letter-spacing:.06em;text-decoration:none;color:inherit;white-space:nowrap;border-bottom:1px solid currentColor;padding-bottom:1px}
.header-phone:hover{opacity:.75}
@media (max-width:900px){.header-phone{display:none}}
.hero h1 .hero-eyebrow{display:block;font-family:var(--font-body);font-size:var(--text-xs);line-height:1.4;font-weight:500;letter-spacing:.17em;text-transform:uppercase;margin:0 0 var(--space-6)}
/* Oct 15 2026: FAQ rows styled as clickable cards */
.faq-list details{border:1px solid var(--line);border-radius:12px;background:#fff;padding-inline:var(--space-5);margin-bottom:var(--space-3);box-shadow:0 1px 2px oklch(23% .009 25 / .07);transition:box-shadow .18s ease,transform .18s ease,border-color .18s ease}
.faq-list details:last-child{margin-bottom:0}
.faq-list details:hover,.faq-list details:focus-within{transform:translateY(-2px);box-shadow:0 12px 26px oklch(23% .009 25 / .15);border-color:var(--accent)}
.faq-list details[open]{border-color:var(--accent);box-shadow:0 8px 20px oklch(23% .009 25 / .11)}
.faq-list summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:8px}
@media (prefers-reduced-motion:reduce){.faq-list details,.faq-list details:hover,.faq-list details:focus-within{transition:none;transform:none}}
/* Oct 15 2026: photo inside an FAQ answer */
.faq-list .faq-photo{margin:var(--space-4) 0 var(--space-2);max-width:620px}
.faq-list .faq-photo img{width:100%;height:auto;display:block;border-radius:10px}
.faq-list .faq-photo figcaption{margin-top:var(--space-2);font-size:.9rem;line-height:1.45;color:var(--muted)}
/* Oct 16 2026: drive-times table on the Greensboro page */
.drive-intro{max-width:62ch;margin:0 0 var(--space-5)}
.drive-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.drive-table{width:100%;max-width:640px;border-collapse:collapse;font-size:.95rem}
.drive-table caption{text-align:left;padding-bottom:var(--space-3);color:var(--muted);font-size:.9rem}
.drive-table th,.drive-table td{text-align:left;padding:.6rem var(--space-4) .6rem 0;border-bottom:1px solid var(--line)}
.drive-table thead th{font-weight:600;color:var(--muted);font-size:.82rem;letter-spacing:.04em;text-transform:uppercase}
.drive-table tbody th{font-weight:500}
.drive-table tbody tr:last-child th,.drive-table tbody tr:last-child td{border-bottom:0}
.drive-note{margin-top:var(--space-4);max-width:62ch;font-size:.9rem;color:var(--muted)}
/* romantic.css */
:root{
  --bg:oklch(100% 0 0);--surface:oklch(99% .004 25);--offset:oklch(97% .006 25);--ink:oklch(23% .009 25);--muted:oklch(46% .014 25);--line:oklch(45% .02 25 / .2);
  --accent:oklch(47% .032 25);--accent-hover:oklch(37% .027 25);--inverse:oklch(99% .003 25);
  --font-display:'Allura',cursive;
  --text-hero:clamp(4rem,1.6rem + 7.1vw,8rem);
  --text-2xl:clamp(2.9rem,2.3rem + 2.2vw,4.75rem);
  --text-xl:clamp(1.35rem,1.15rem + .65vw,1.8rem);
  --rose-footer:oklch(45% .026 25);
}
[data-theme=dark]{--bg:oklch(21% .011 25);--surface:oklch(25% .014 25);--offset:oklch(27% .018 25);--ink:oklch(96% .006 25);--muted:oklch(79% .014 25);--line:oklch(92% .009 25 / .2);--accent:oklch(77% .035 25);--accent-hover:oklch(86% .025 25);--inverse:oklch(22% .014 25);--rose-footer:oklch(31% .025 25)}
body{line-height:1.8}
h1,h2{font-family:var(--font-display);font-weight:400;letter-spacing:0;line-height:1.13}
h3{font-family:var(--font-body);font-size:var(--text-xl);font-weight:400;letter-spacing:0;line-height:1.4}
.eyebrow{font-size:var(--text-xs);letter-spacing:.13em;color:var(--muted);margin-bottom:var(--space-4)}
.button{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.075em;font-weight:500;min-height:48px;padding:var(--space-3) var(--space-6);gap:var(--space-6)}
.text-link{font-weight:400}
.site-header{border:0;max-width:1600px;margin-inline:auto;padding:var(--space-5) var(--gutter);gap:var(--space-8);min-height:94px}
.brand{width:215px}
.desktop-nav{gap:clamp(var(--space-4),2.2vw,var(--space-10));margin-left:auto}
.desktop-nav a{font-size:var(--text-xs);text-transform:uppercase;white-space:nowrap}
.header-actions{gap:var(--space-4)}.header-actions .compact{background:none;color:var(--accent);padding:var(--space-2) 0;white-space:nowrap;gap:var(--space-3)}
.theme-toggle{border:0;font-size:var(--text-base);width:32px;height:44px}
.hero{max-width:1600px;margin-inline:auto;padding:var(--space-8) var(--gutter) var(--space-12);display:grid;grid-template-columns:.78fr 1.22fr;grid-template-rows:auto 1fr;column-gap:clamp(var(--space-10),6vw,var(--space-24));row-gap:var(--space-5);min-height:0;align-items:center}
.hero-heading{grid-column:1/-1;position:relative;z-index:1;text-align:center;padding-block:var(--space-5) var(--space-6)}
.hero-heading .eyebrow{margin-bottom:var(--space-4)}
.hero h1{font-size:var(--text-hero);white-space:nowrap;line-height:1.15}
.hero h1>span{white-space:nowrap}
.hero-photo{grid-column:2;grid-row:2;height:610px;min-height:0;overflow:hidden}
.hero-photo>img{position:static;width:100%;height:100%;object-fit:cover;object-position:48% center}
.hero-copy{grid-column:1;grid-row:2;display:block;padding:0;align-self:center}
.hero-welcome{font-size:var(--text-lg);color:var(--ink);font-weight:500;line-height:1.5;margin-bottom:var(--space-5)}
.hero-description{font-size:var(--text-base);line-height:1.95;max-width:45ch;margin:0;color:var(--muted)}
.hero-description+.hero-description{margin-top:var(--space-5)}
.hero-copy .button{margin-top:var(--space-8)}.hero-copy .micro{margin-top:var(--space-3);font-size:var(--text-xs)}
.welcome-note{text-align:center;max-width:1100px;padding-block:var(--space-24) var(--space-16)}
.welcome-note h2{font-size:var(--text-2xl);margin-bottom:var(--space-6)}
.welcome-note>p:not(.eyebrow){max-width:70ch;margin-inline:auto;color:var(--muted)}
.welcome-details{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-6);font-size:var(--text-xs);color:var(--muted);margin-top:var(--space-8);padding-top:var(--space-6);border-top:1px solid var(--line)}
.welcome-details span+span:before{content:'·';padding-right:var(--space-6)}
.farm-section{border-top:1px solid var(--line);padding-block:var(--space-16) var(--space-20);grid-template-columns:1fr 1fr;gap:var(--space-12) var(--space-20)}
.farm-story{padding-top:var(--space-6);font-size:var(--text-base)}
.barn-image img[src*="reception-room"]{aspect-ratio:1.15;object-position:center 65%}
.barn-note h3{font-size:var(--text-xl)}
.silo-section{max-width:1600px;margin-inline:auto;background:var(--offset);grid-template-columns:1fr 1fr}
.silo-image{height:610px;min-height:0;max-height:none}
.silo-copy{padding:var(--space-16) clamp(var(--space-8),6vw,var(--space-24))}
.silo-copy h2{font-size:var(--text-2xl)}
.suite-section{max-width:1300px;padding-top:var(--space-20);padding-bottom:var(--space-16);gap:var(--space-24)}
.suite-section figure{max-width:440px}.suite-copy h2{font-size:var(--text-2xl)}
.gatherings{border-top:1px solid var(--line);padding-block:var(--space-16);grid-template-columns:.85fr 1.15fr;gap:var(--space-20)}
.occasion-list article{padding-block:var(--space-6)}.occasion-list h3{font-size:var(--text-xl)}
.gallery-section{background:var(--bg);border-top:1px solid var(--line);padding-top:var(--space-16)}
.gallery-title{align-items:end;gap:var(--space-8)}
.gallery-tools{display:flex;align-items:center;gap:var(--space-8)}
.gallery-arrows{display:flex;gap:var(--space-2)}
.gallery-arrows button{height:44px;width:44px;border:1px solid var(--line);font-size:var(--text-lg);background:var(--bg)}
.gallery-arrows button:hover:not(:disabled){background:var(--offset)}.gallery-arrows button:disabled{opacity:.3}
#gallery-track{display:flex;grid-template-columns:none;grid-template-rows:none;gap:var(--space-3);height:auto;padding:0 var(--gutter) var(--space-4);overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:var(--gutter);scrollbar-width:thin;scrollbar-color:var(--accent) var(--offset)}
#gallery-track .gallery-photo{flex:0 0 clamp(260px,28vw,460px);height:430px;aspect-ratio:auto;grid-column:auto;grid-row:auto;scroll-snap-align:start}
#gallery-track .gallery-photo.wide{flex-basis:clamp(310px,34vw,540px)}
#gallery-track .gallery-photo>span{padding:var(--space-5);font-size:var(--text-sm)}
.films{max-width:1400px;padding-top:var(--space-16);padding-bottom:var(--space-16)}.films>div{text-align:center}.films>div p{margin-inline:auto}.films h3{font-family:var(--font-display);font-size:var(--text-2xl);line-height:1.2}
.film-link img{transition:filter .2s}.film-link:hover img{filter:brightness(.93)}
.details-section{background:var(--offset);max-width:1600px;padding-block:var(--space-16);gap:var(--space-10) var(--space-20)}.details-section h2{font-size:var(--text-2xl)}.amenities>div{padding-block:var(--space-4)}
.inclusions-note{padding-block:var(--space-4)}
.faq-section{padding-block:var(--space-16);gap:var(--space-20)}.faq-section h2{font-size:var(--text-2xl)}
.visit-section{min-height:450px}.visit-copy{max-width:none;width:100%;text-align:center;padding:var(--space-16) var(--gutter)}.visit-copy h2{font-size:var(--text-2xl)}.visit-copy .eyebrow{color:#fff}.visit-copy>p:not(.eyebrow){max-width:50ch;margin-inline:auto}.visit-copy .button{margin-top:var(--space-6)}.visit-copy .micro{font-size:var(--text-xs)}
footer{background:var(--rose-footer);color:#fff}.footer-top{grid-template-columns:1.1fr 1fr 1fr;padding-block:var(--space-16);gap:var(--space-12)}footer .brand{filter:brightness(0) invert(1);width:min(270px,100%)}footer .eyebrow{color:#fff}footer .text-link{border-color:#ffffff50}footer .footer-email{display:inline-block;font-size:var(--text-sm);overflow-wrap:anywhere;min-height:44px}.footer-bottom{border-color:#ffffff30;color:#fff}footer address{line-height:1.8}
dialog h2{font-size:clamp(2.6rem,2rem + 2vw,3.75rem);line-height:1.1}dialog p{line-height:1.7}.dialog-close{font-family:var(--font-body);font-size:var(--text-lg)}
.menu-lines{display:grid;gap:5px;width:22px}.menu-lines span{width:22px;height:1px;background:currentColor}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.hero.video-hero .hero-media{aspect-ratio:16/9}
#homepage-film{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;opacity:1;background:transparent}
.hero-media.video-ready #homepage-film{opacity:1}
.hero-media.video-error #homepage-film{visibility:hidden}
.video-playback-note{margin-top:var(--space-2);color:var(--muted)}
@media(max-width:600px){.video-playback-note{padding-inline:var(--space-4)}}
.hero-video-toolbar{display:flex;align-items:center;gap:var(--space-5);padding-top:var(--space-3);min-height:60px}
.hero-video-toolbar>button{border:1px solid var(--line);padding:var(--space-2) var(--space-4);min-height:44px;font-size:var(--text-xs)}
.hero-video-toolbar>button:hover{background:var(--offset)}
.hero-video-credit{font-size:var(--text-xs);color:var(--muted);min-height:44px;display:flex;align-items:center}
.hero-video-toolbar>#film-credits-open{border:0;text-decoration:underline;text-underline-offset:3px;padding-inline:var(--space-2);font-size:var(--text-xs)}
.film-credits-dialog ul{list-style:none;padding:0;margin-block:var(--space-6)}.film-credits-dialog li{padding-block:var(--space-4);border-bottom:1px solid var(--line);font-size:var(--text-sm)}.film-credits-dialog li strong{font-weight:500}.film-credits-dialog li span{display:block;color:var(--muted);font-size:var(--text-xs);margin-top:var(--space-1)}
.reviews-section{padding-block:var(--space-16) var(--space-20);border-top:1px solid var(--line)}
.reviews-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--space-8);margin-bottom:var(--space-10)}
.reviews-heading h2{font-size:var(--text-2xl)}
.reviews-summary{flex-shrink:0}.reviews-summary strong{font-size:var(--text-lg);font-weight:500}.reviews-summary .fine-print{margin-top:var(--space-2)}
.reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-8)}
.guest-review{margin:0;padding-block:var(--space-6);border-block:1px solid var(--line);display:flex;flex-direction:column}
.review-rating{font-size:var(--text-xs);color:var(--muted);margin-bottom:var(--space-4)}
.guest-review blockquote{margin:0;font-size:var(--text-base);line-height:1.85}
.guest-review figcaption{margin-top:auto;padding-top:var(--space-6);font-size:var(--text-sm)}
.guest-review figcaption strong{font-weight:500}.guest-review figcaption span{display:block;color:var(--muted);font-size:var(--text-xs)}
.reviews-note{margin-top:var(--space-6)}
.payments-section{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-16);padding-block:var(--space-16);border-top:1px solid var(--line)}
.payments-section h2{font-size:var(--text-2xl);margin-bottom:var(--space-6)}
.payments-intro>p:not(.eyebrow){color:var(--muted)}
.payments-intro .button{margin-top:var(--space-6)}
.payments-intro .fine-print{margin-top:var(--space-3);max-width:52ch}
.payments-details{padding-left:var(--space-10);border-left:1px solid var(--line)}
.payments-details h3{font-size:var(--text-lg);margin-bottom:var(--space-4)}
.payments-details p{font-size:var(--text-sm);margin-bottom:var(--space-4);color:var(--muted)}
.payments-details .payment-booking-note{font-size:var(--text-xs);padding-top:var(--space-4);border-top:1px solid var(--line)}
.payment-email{font-size:var(--text-sm);overflow-wrap:anywhere}
.footer-bottom>a{display:inline-flex;align-items:center;min-height:44px}
@media(max-width:850px){.payments-section{grid-template-columns:1fr;gap:var(--space-8)}.payments-details{padding-left:0;padding-top:var(--space-6);border-left:0;border-top:1px solid var(--line)}}
@media(max-width:850px){.reviews-heading{display:block}.reviews-summary{margin-top:var(--space-6)}.reviews-grid{grid-template-columns:1fr;gap:var(--space-4)}.guest-review{border-bottom:0}.guest-review:last-child{border-bottom:1px solid var(--line)}}
.hero-video-toolbar .walkthrough-launch{position:static;margin-left:auto}
.hero-video-toolbar .walkthrough-launch .button{box-shadow:none;border:1px solid var(--line);min-height:44px}
@media(max-width:600px){.hero-video-toolbar{padding-inline:var(--space-4);gap:var(--space-3);flex-wrap:wrap}.hero-video-credit{order:3;width:100%;min-height:28px;justify-content:center}.hero-video-toolbar>button{min-width:90px}.hero-video-toolbar .walkthrough-launch .button{font-size:var(--text-xs);gap:var(--space-3);padding-inline:var(--space-3)}}
@media(max-width:1000px){.site-header:not(.archive-header){grid-template-columns:44px minmax(0,1fr) 44px}.site-header>.brand{min-width:0}}
.guest-teaser{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:var(--space-16);padding-block:var(--space-12) var(--space-16);border-top:1px solid var(--line);max-width:1400px}
.guest-teaser>img{width:100%;aspect-ratio:4/3;object-fit:cover;object-position:center 65%}
.guest-teaser h2{margin-bottom:var(--space-5)}.guest-teaser p:not(.eyebrow){color:var(--muted);font-size:var(--text-sm)}
.guest-teaser .button{margin-top:var(--space-6)}.guest-teaser .fine-print{font-size:var(--text-xs);margin-top:var(--space-4)}.guest-teaser .fine-print a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:850px){.guest-teaser{grid-template-columns:1fr;gap:var(--space-8);padding-block:var(--space-12)}.guest-teaser>img{max-height:470px}.guest-teaser>div{text-align:center}.guest-teaser p{margin-inline:auto}}
.archive-link{padding-block:var(--space-10) var(--space-16)}.archive-link p{margin-top:var(--space-3)}
.archive-intro{padding-block:var(--space-16) var(--space-6);text-align:center;max-width:1100px}.archive-intro h1{font-size:var(--text-2xl);margin-bottom:var(--space-6)}.archive-intro p{margin-inline:auto}.archive-intro .archive-notice{background:var(--offset);padding:var(--space-6);font-size:var(--text-sm);margin-block:var(--space-8)}.archive-header{display:flex!important;justify-content:space-between}.archive-header>.brand{margin-right:auto}.archive-header .text-link{font-size:var(--text-sm)}
.hero-media .hero-poster[src*="reception-room"]{object-position:center 65%}
#gallery-track .cattle-photo{flex-basis:clamp(390px,44vw,680px)}
#gallery-track .cattle-photo img{object-fit:contain;background:var(--offset)}
.walkthrough-launch{position:absolute;right:var(--space-6);bottom:var(--space-6)}.walkthrough-launch .button{background:var(--bg);color:var(--ink);box-shadow:0 2px 18px #0002}
.walkthrough-dialog{width:min(560px,calc(100% - 32px));padding:var(--space-10) var(--space-6) var(--space-6);text-align:center}.walkthrough-dialog h2{font-size:var(--text-xl);font-family:var(--font-body);margin-bottom:var(--space-5)}.walkthrough-dialog .eyebrow{padding-right:0}
.walkthrough-dialog video{display:block;width:auto;max-width:100%;height:min(62dvh,650px);margin-inline:auto;background:#121212}.walkthrough-dialog .fine-print{margin-top:var(--space-4);font-size:var(--text-xs)}.walkthrough-dialog .text-link{margin-top:var(--space-2);font-size:var(--text-xs)}
.footer-top>.host-contact{display:flex;gap:var(--space-4);align-items:start}.host-contact>img{width:80px;height:110px;object-fit:cover;flex-shrink:0}.host-contact>div{min-width:0}.host-contact h3{font-size:var(--text-lg);line-height:1.3}.host-contact .eyebrow{margin-bottom:var(--space-2)}.host-contact .host-role{font-size:var(--text-xs);margin-top:var(--space-2)}.host-contact .footer-email{font-size:var(--text-xs);margin-top:var(--space-3)}
@media(max-width:600px){.archive-header{flex-wrap:wrap;gap:var(--space-4)}.archive-header>.brand{width:185px}.archive-header>.text-link{order:3;width:100%;justify-content:center}.archive-intro{padding-top:var(--space-10)}.hero-media .hero-poster[src*="reception-room"]{object-position:center 63%}}
.hero.video-hero{display:block;max-width:1600px;padding-top:var(--space-5);padding-bottom:var(--space-8)}
.video-hero .hero-heading{padding-block:var(--space-3) var(--space-8)}
.video-hero .hero-heading>.eyebrow{margin-inline:auto}
.video-hero .hero-copy{text-align:center;max-width:840px;margin:var(--space-12) auto 0;padding:0}
.video-hero .hero-copy p{margin-inline:auto;max-width:75ch}
.video-hero .hero-description{font-size:var(--text-base)}
.hero-media{position:relative;width:100%;aspect-ratio:16/8;overflow:hidden;background:var(--offset);isolation:isolate}
.hero-poster{width:100%;height:100%;object-fit:cover;object-position:center 56%;position:absolute;inset:0}



.hero-media-controls{position:absolute;z-index:2;bottom:0;left:0;right:0;padding:var(--space-8) var(--space-6) var(--space-4);display:flex;align-items:end;justify-content:space-between;gap:var(--space-4);color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.65));font-size:var(--text-xs)}
.hero-film-credit{display:block;line-height:1.6}.hero-film-credit>span{display:block;font-size:var(--text-xs);opacity:.9}
.hero-media-controls>div{display:flex;align-items:center;gap:var(--space-4)}
.hero-media-controls button,.hero-media-controls a{display:inline-flex;min-height:44px;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);border:1px solid #ffffff90;background:rgba(0,0,0,.2);color:#fff;font-size:var(--text-xs)}
.hero-media-controls button:hover,.hero-media-controls a:hover{background:rgba(0,0,0,.45)}
.hero-media[data-state=fallback] .hero-film-credit::after{content:'Photo preview · Open the full film to watch';display:block;font-size:var(--text-xs)}
@media(max-width:600px){.hero.video-hero{padding-top:var(--space-4);padding-inline:0}.video-hero .hero-heading{padding:var(--space-4) var(--gutter) var(--space-8)}.video-hero .hero-poster{object-position:center}.video-hero .hero-copy{padding-inline:var(--gutter);margin-top:var(--space-8)}.video-hero .hero-description{font-size:var(--text-sm)}.hero-media-controls{padding:var(--space-8) var(--space-4) var(--space-3);align-items:end}.hero-media-controls>div{gap:var(--space-2)}.hero-media-controls a,.hero-media-controls button{padding-inline:var(--space-3)}.hero-film-credit{max-width:135px}.hero-media[data-state=fallback] .hero-film-credit::after{display:none}}
@media(min-width:1700px){.hero-copy{padding:0}.hero{min-height:0}.hero-photo{height:680px}}
@media(max-width:1200px){.site-header{gap:var(--space-5)}.desktop-nav{gap:var(--space-5)}.brand{width:190px}.header-actions{gap:var(--space-2)}.hero-photo{height:550px}.hero{column-gap:var(--space-10)}.hero-welcome{font-size:var(--text-base)}.hero-description{font-size:var(--text-sm)}.farm-section,.gatherings,.suite-section,.details-section,.faq-section{column-gap:var(--space-12)}}
@media(max-width:1000px){.desktop-nav{display:none}.site-header{display:grid;grid-template-columns:44px 1fr 44px;min-height:86px;padding:var(--space-4) var(--gutter);gap:var(--space-3)}.site-header>.brand{grid-column:2;grid-row:1;justify-self:center;width:215px;max-width:100%}.header-actions{display:contents}.header-actions .compact{display:none}.theme-toggle{grid-column:3;grid-row:1;justify-self:end;width:44px}.menu-toggle{grid-column:1;grid-row:1;display:flex;align-items:center;justify-content:center;width:44px;height:44px;min-height:44px;background:var(--accent);color:var(--inverse);padding:0}.mobile-nav{display:block;position:absolute;left:0;right:0;top:100%;background:var(--bg);padding:var(--space-4) var(--gutter);box-shadow:0 12px 20px #0001}.mobile-nav a{display:block;padding-block:var(--space-3);font-size:var(--text-sm)}.hero{grid-template-columns:1fr;gap:var(--space-8);padding-top:var(--space-6);padding-bottom:var(--space-8)}.hero-heading{grid-column:1;grid-row:1;padding:var(--space-4) 0}.hero h1{font-size:clamp(3.5rem,7.8vw,5rem);white-space:normal}.hero-photo{grid-column:1;grid-row:2;width:100%;height:500px;min-height:0}.hero-copy{grid-column:1;grid-row:3;text-align:center;max-width:640px;margin-inline:auto;padding:var(--space-2) 0}.hero-description{font-size:var(--text-base);max-width:60ch;margin-inline:auto}.hero-copy .micro{margin-inline:auto}.hero-welcome{max-width:none;font-size:var(--text-lg)}.hero-heading .eyebrow{font-size:var(--text-xs)}.welcome-note{padding-top:var(--space-16)}.gallery-title{display:block}.gallery-tools{justify-content:space-between;margin-top:var(--space-6)}.silo-image{height:540px}.silo-copy{padding:var(--space-10)}.suite-section{gap:var(--space-12)}.gatherings{grid-template-columns:1fr}.details-section,.faq-section{grid-template-columns:1fr}.section-heading>h2 br{display:initial}.footer-top{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.amenities{gap:var(--space-4) var(--space-8)}}
@media(max-width:600px){:root{--text-hero:clamp(3.2rem,12vw,4.4rem);--text-2xl:clamp(2.6rem,1.9rem + 4vw,3.5rem)}.site-header{min-height:82px;padding-block:var(--space-3)}.site-header>.brand{width:205px}.hero{display:grid;padding-top:var(--space-5);padding-inline:var(--gutter);row-gap:var(--space-6)}.hero-heading{padding:var(--space-4) 0 var(--space-2)}.hero-heading .eyebrow{font-size:var(--text-xs);letter-spacing:.07em;max-width:29ch;margin-inline:auto;margin-bottom:var(--space-5);line-height:1.7}.hero h1{font-size:var(--text-hero);line-height:.98}.hero h1>span{display:block;font-size:1.19em;margin-top:var(--space-3)}.hero-photo{height:410px}.hero-photo>img{object-position:48% center}.hero-copy{padding-top:var(--space-2)}.hero-welcome{font-size:var(--text-base);margin-bottom:var(--space-4)}.hero-description{font-size:var(--text-sm);line-height:1.95;max-width:44ch}.hero-description+.hero-description{margin-top:var(--space-4)}.hero-copy .button{margin-top:var(--space-6)}.welcome-note{padding-block:var(--space-12)}.welcome-note h2{font-size:var(--text-2xl)}.welcome-note>p:not(.eyebrow){font-size:var(--text-sm)}.welcome-details{gap:var(--space-2) var(--space-4);margin-top:var(--space-6);padding-top:var(--space-5)}.welcome-details span+span:before{display:none}.welcome-details>span{width:100%}.farm-section{display:grid;grid-template-columns:1fr;padding-block:var(--space-12);gap:var(--space-6)}.farm-section>.section-heading{text-align:center}.farm-story{padding:0;font-size:var(--text-sm)}.barn-note{padding-top:var(--space-3)}.barn-note h3{font-size:var(--text-xl);margin-block:var(--space-3) var(--space-4)}.barn-note p{font-size:var(--text-sm)}.silo-section{display:flex;flex-direction:column}.silo-image{height:450px;min-height:0}.silo-copy{padding:var(--space-10) var(--gutter)}.silo-copy h2{font-size:var(--text-2xl)}.silo-copy>p:not(.eyebrow){font-size:var(--text-sm);margin-top:var(--space-4)}.silo-copy>p.fine-print{font-size:var(--text-xs)}.suite-section{grid-template-columns:1fr;padding-block:var(--space-12);gap:var(--space-8)}.suite-copy p:not(.eyebrow){font-size:var(--text-sm)}.suite-section figure{max-width:none}.suite-section figure img{max-height:none;aspect-ratio:auto;object-fit:contain}.gatherings{padding-block:var(--space-12);gap:var(--space-6)}.gatherings .section-heading{text-align:center}.occasion-list h3{font-size:var(--text-xl)}.gallery-section{padding-top:var(--space-12)}.gallery-title{text-align:center;padding-bottom:var(--space-6)}.gallery-tools{text-align:left;margin-top:var(--space-4);gap:var(--space-4)}.gallery-tools .text-link{font-size:var(--text-xs);gap:var(--space-4)}#gallery-track{padding-bottom:var(--space-3);gap:var(--space-3)}#gallery-track .gallery-photo,#gallery-track .gallery-photo.wide{height:390px;flex-basis:82vw}#gallery-track .gallery-photo>span{font-size:var(--text-sm);padding:var(--space-5)}.films{grid-template-columns:1fr;padding-block:var(--space-12);gap:var(--space-8)}.films h3{font-size:var(--text-2xl)}.film-caption{font-size:var(--text-sm)}.details-section{padding-block:var(--space-12);gap:var(--space-8)}.details-section .section-heading>p:not(.eyebrow){font-size:var(--text-sm)}.amenities{grid-template-columns:1fr;gap:0}.faq-section{padding-block:var(--space-12);gap:var(--space-6)}.visit-section{min-height:440px}.visit-copy{padding-block:var(--space-12)}.visit-copy h2{font-size:var(--text-2xl)}.visit-copy>p:not(.eyebrow){font-size:var(--text-sm)}.footer-top{grid-template-columns:1fr;gap:var(--space-8);padding-block:var(--space-12)}.footer-brand{grid-column:auto}footer .brand{width:245px}.footer-top>div{display:block}.footer-bottom{font-size:var(--text-xs)}dialog h2{font-size:var(--text-2xl)}.mobile-nav .tour-button{width:100%}}

.host-contact .footer-email{display:flex;align-items:center;width:fit-content;min-height:36px}.host-contact .footer-phone{margin-top:0}
/* review-polish.css */
.theme-toggle{font-family:var(--font-body);font-size:var(--text-xs);width:44px;min-width:44px;border-radius:0}
.hero-video-toolbar>.hero-tour-action{background:var(--accent);color:var(--inverse);border-color:var(--accent);order:0}
.hero-video-toolbar>.hero-tour-action:hover{background:var(--accent-hover)}
.hero-inquiry-note{margin-top:var(--space-2)}
.current-barn{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:var(--space-12);padding-block:var(--space-12)}
.current-barn>img{width:100%;aspect-ratio:4/3;object-fit:cover}
.current-barn h2{font-size:var(--text-2xl);margin-bottom:var(--space-5)}
.current-barn p{color:var(--muted);font-size:var(--text-base)}
.current-barn .text-link{margin-top:var(--space-4)}
.mobile-nav{max-height:calc(100dvh - 88px);overflow-y:auto}
.mobile-nav>.button{width:100%;margin-bottom:var(--space-3)}
.email-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-block:var(--space-5)}
.email-preview pre{white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%;font-family:var(--font-body);font-size:var(--text-sm)}
.button.secondary{background:transparent;color:var(--ink);border:1px solid var(--accent)}
.inquiry-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}
.inquiry-grid>div{min-width:0}
.inquiry-grid input{min-width:0;max-width:100%;width:100%}
.payment-dialog label{display:block;margin-block:var(--space-4) var(--space-2);font-size:var(--text-sm)}
.payment-dialog input,.payment-dialog select{width:100%;min-height:48px;padding:var(--space-3);border:1px solid var(--line);background:var(--bg);color:var(--ink);font:inherit}
.payment-dialog form>.button{margin-top:var(--space-6)}
.payment-dialog,.tour-dialog{max-height:calc(100dvh - 32px);overflow-y:auto}
.fine-print{font-size:clamp(.8125rem,.78rem + .15vw,.875rem)}
@media(max-width:850px){
  .current-barn{grid-template-columns:1fr;gap:var(--space-6)}
  .current-barn figcaption{max-width:60ch}
}
@media(max-width:600px){
  .hero-video-toolbar{display:grid;grid-template-columns:auto 1fr;padding-inline:var(--space-4);gap:var(--space-3)}
  .hero-video-toolbar>.hero-tour-action{grid-column:1/-1;grid-row:1;justify-content:center}
  .hero-video-toolbar>#homepage-video-toggle{grid-column:1;grid-row:2}
  .hero-video-toolbar .walkthrough-launch{grid-column:2;grid-row:2;justify-self:end;margin-left:0}
  .hero-inquiry-note{padding-inline:var(--space-4)}
  .inquiry-grid{grid-template-columns:1fr}
  .email-actions{flex-direction:column}
  .email-actions>.button{justify-content:center}
}

/* polish.css */
/* polish.css — loaded last. Typography, immersive hero, gallery grid, cleanup. */
:root{
  --font-display:'Cormorant Garamond',Georgia,'Times New Roman',serif;
  --text-hero:clamp(3.6rem,2rem + 7vw,8.5rem);
  --text-2xl:clamp(2.6rem,2rem + 2.6vw,4.6rem);
  --text-xl:clamp(1.5rem,1.25rem + .8vw,2rem);
}
h1,h2{font-family:var(--font-display);font-style:italic;font-weight:400;letter-spacing:-.005em;line-height:1.05}
h3{font-family:var(--font-display);font-style:normal;font-weight:500;font-size:var(--text-xl);line-height:1.25;letter-spacing:0}
.films h3,dialog h2{font-family:var(--font-display)}

/* Eyebrows: quiet italic serif instead of tracked capitals */
.eyebrow{font-family:var(--font-display);font-style:italic;font-weight:400;text-transform:none;letter-spacing:0;font-size:clamp(1.15rem,1.05rem + .35vw,1.4rem);color:var(--accent);margin-bottom:var(--space-3)}
.small-number{letter-spacing:0;font-family:var(--font-display);font-style:italic;font-size:1.1rem;text-transform:none}
.occasions .small-number,.occasion-list .small-number{display:none}

/* Header over the hero on the homepage */
body.immersive .site-header{position:fixed;left:0;right:0;top:0;max-width:none;background:transparent;border:0;color:#fff;transition:background .35s,color .35s,box-shadow .35s;z-index:30;padding-top:calc(var(--space-4) + env(safe-area-inset-top,0px))}
body.immersive .site-header .brand svg{filter:brightness(0) invert(1);transition:filter .35s}
body.immersive .site-header .desktop-nav a{color:#fff}
body.immersive .site-header .menu-lines span{background:#fff}
body.immersive .site-header .button.compact{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.55);color:#fff;backdrop-filter:blur(6px)}
body.immersive .site-header.scrolled{background:color-mix(in oklab,var(--bg) 92%,transparent);backdrop-filter:blur(10px);color:var(--ink);box-shadow:0 1px 0 var(--line)}
body.immersive .site-header.scrolled .brand svg{filter:none}
body.immersive .site-header.scrolled .desktop-nav a{color:var(--ink)}
body.immersive .site-header.scrolled .menu-lines span{background:var(--ink)}
body.immersive .site-header.scrolled .button.compact{background:var(--accent);border-color:var(--accent);color:var(--inverse);backdrop-filter:none}
body.immersive .site-header.menu-open{background:var(--bg);color:var(--ink)}
body.immersive .site-header.menu-open .brand svg{filter:none}
body.immersive .mobile-nav{color:var(--ink)}

/* Full-screen hero */
body.immersive .hero.video-hero{max-width:none;padding:0;margin:0}
body.immersive .hero-media{height:100svh;min-height:560px;max-height:1100px;aspect-ratio:auto;background:#1c1714}
body.immersive .hero-media::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,.42) 0%,rgba(0,0,0,0) 32%,rgba(0,0,0,0) 44%,rgba(0,0,0,.7) 100%)}
body.immersive .hero-poster,body.immersive #homepage-film{object-fit:cover;object-position:center 50%}
body.immersive .hero-overlay{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:0 var(--gutter) calc(clamp(2.5rem,7vh,5rem) + env(safe-area-inset-bottom,0px));color:#fff;display:flex;align-items:end;justify-content:space-between;gap:var(--space-8)}
body.immersive .hero-heading{text-align:left;padding:0;max-width:min(62%,900px)}
body.immersive .hero-heading .eyebrow{color:rgba(255,255,255,.88);margin:0 0 var(--space-3)}
body.immersive .hero h1{font-size:clamp(3.4rem,1.6rem + 6vw,7.4rem);line-height:1;white-space:nowrap;text-shadow:0 2px 24px rgba(0,0,0,.35)}
body.immersive .hero h1>span{display:block;white-space:nowrap}
body.immersive .hero-video-toolbar{padding:0;min-height:0;gap:var(--space-3);flex-shrink:0;flex-wrap:wrap;justify-content:flex-end}
body.immersive .hero-video-toolbar .walkthrough-launch{margin:0}
body.immersive .hero-video-toolbar>.hero-tour-action{background:#fff;color:var(--ink);border-color:#fff}
body.immersive .hero-video-toolbar>.hero-tour-action:hover{background:rgba(255,255,255,.88)}
body.immersive .hero-video-toolbar .walkthrough-launch .button{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.6);color:#fff;backdrop-filter:blur(6px)}
body.immersive .hero-video-toolbar .walkthrough-launch .button:hover{background:rgba(255,255,255,.22)}
body.immersive #homepage-video-toggle{border:0;background:transparent;color:rgba(255,255,255,.8);text-decoration:underline;text-underline-offset:4px;padding-inline:var(--space-2);font-size:var(--text-xs);min-width:0}
body.immersive .video-playback-note{display:none!important}
body.immersive .video-hero .hero-copy{margin:var(--space-24) auto var(--space-16);padding-inline:var(--gutter)}
body.immersive .hero-welcome{font-family:var(--font-display);font-style:italic;font-weight:400;font-size:clamp(1.9rem,1.5rem + 1.4vw,2.9rem);line-height:1.2;margin-bottom:var(--space-6)}

@media(max-width:850px){
  body.immersive .hero-overlay{flex-direction:column;align-items:flex-start}
  body.immersive .hero-heading{max-width:none}
  body.immersive .hero h1{font-size:clamp(3rem,12vw,4.4rem)}
  body.immersive .hero-video-toolbar{justify-content:flex-start;width:100%}
  body.immersive .hero-video-toolbar>.hero-tour-action{flex:1 1 auto}
  body.immersive .hero-media{min-height:520px}
  body.immersive .video-hero .hero-copy{margin-top:var(--space-16)}
}

/* Gallery: one full grid instead of a side scroller */
.gallery-arrows{display:none!important}
.gallery-title{padding-bottom:var(--space-8)}
#gallery-track.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:clamp(190px,24vw,330px);grid-auto-flow:dense;gap:var(--space-3);padding-inline:var(--gutter);padding-bottom:0;overflow:visible;scroll-snap-type:none}
#gallery-track .gallery-photo{grid-column:auto;grid-row:auto;aspect-ratio:auto;width:auto;min-width:0;height:100%;scroll-snap-align:none;flex:none}
#gallery-track .gallery-photo.wide{grid-column:span 2}
#gallery-track .gallery-photo.tall{grid-row:span 2}
#gallery-track .cattle-photo{background:none}#gallery-track .cattle-photo img{object-fit:cover;object-position:center 40%}
#gallery-track .gallery-photo>span{opacity:0;transition:opacity .3s}
#gallery-track .gallery-photo:hover>span,#gallery-track .gallery-photo:focus-visible>span{opacity:1}
@media(max-width:850px){
  #gallery-track.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:clamp(150px,34vw,260px);gap:var(--space-2)}
  #gallery-track .gallery-photo.wide{grid-column:span 2}
  #gallery-track .gallery-photo.tall{grid-row:span 1}
  #gallery-track .gallery-photo>span{opacity:1}
}

/* Reviews: quieter */
.review-rating{font-family:var(--font-display);font-style:italic;font-size:1.05rem;text-transform:none;letter-spacing:0}
.guest-review blockquote p{font-family:var(--font-display);font-size:clamp(1.3rem,1.15rem + .5vw,1.65rem);line-height:1.4}
.reviews-summary strong{font-family:var(--font-display);font-size:2rem;font-weight:500}

/* Section headings breathe a little more */
.section-heading h2,.gallery-title h2{margin-bottom:var(--space-4)}

/* Occasion list: numbers were removed, so the text takes the full first column */
.occasion-list article{grid-template-columns:minmax(0,1fr) 44px}
.occasion-list p{max-width:48ch}
.find-us-note{margin:.6rem 0 .9rem;max-width:34ch;font-size:.92rem;line-height:1.5;opacity:.8}
#gallery-track.photo-grid{grid-auto-flow:dense}
.gallery-photo img[src*="ceremony-lawn-aisle"]{object-position:center 80%}
#photo-caption{display:none}

/* mobile-fixes.css */
/* Phone readability + tap-target fixes (Sep 29 2026) */
@media (max-width:600px){
  :root{--text-xs:.875rem}
  main p a:not(.button),.fine-print a,footer a:not(.button):not(.brand),.host-contact a{padding-block:.6rem}
}
/* index inline */
@media (min-width:1241px){.immersive .desktop-nav{gap:18px;font-size:.78rem}}@media (max-width:1240px){.immersive .desktop-nav{display:none}}
/* site-fixes.css */
/* Site fixes, November 2, 2026 — loaded last on every page */

/* Laptop screens: keep "Request a Tour" fully visible */
@media (max-width: 1600px) {
  .hp-label { display: none; }
  .desktop-nav, .seo-page .desktop-nav, .immersive .desktop-nav { gap: 16px; }
}
@media (min-width: 1341px) and (max-width: 1440px) {
  .desktop-nav a { font-size: .74rem; letter-spacing: .04em; }
  .site-header { column-gap: 20px; }
  .header-actions { gap: 14px; }
}

/* Below 1341 px the full menu doesn't fit next to the buttons: use the menu button */
@media (max-width: 1340px) {
  .desktop-nav, .seo-page .desktop-nav, .immersive .desktop-nav { display: none; }
}
@media (min-width: 1001px) and (max-width: 1340px) {
  .menu-toggle {
    display: flex; align-items: center; justify-content: center;
    width: 44px; height: 44px; min-height: 44px; padding: 0;
    background: var(--accent); color: var(--inverse);
  }
  .mobile-nav {
    position: absolute; right: var(--gutter); top: 100%; left: auto;
    width: 320px; background: var(--bg); padding: var(--space-4) var(--space-6);
    box-shadow: 0 12px 24px #0002;
  }
  .mobile-nav a { display: block; padding-block: var(--space-3); font-size: var(--text-sm); color: var(--ink); }
  .mobile-nav .button { color: var(--inverse); }
}

/* Tap-to-call icon in the header (phones and tablets only) */
.header-call { display: none; }
@media (max-width: 1000px) {
  .header-call {
    display: flex; align-items: center; justify-content: center;
    grid-column: 3; grid-row: 1; justify-self: end;
    width: 44px; height: 44px; border-radius: 50%;
    color: inherit; text-decoration: none;
    border: 1px solid currentColor;
  }
}

/* Call link inside the open mobile menu */
.mobile-nav .mobile-call { font-weight: 600; }

/* Hero line wraps instead of being cut off on phones */
.hero-overlay .hero-heading { min-width: 0; max-width: 100%; }
.hero .hero-heading h1 .hero-eyebrow { white-space: normal !important; overflow-wrap: break-word; max-width: 100%; }
@media (max-width: 700px) { .hero .hero-heading h1 { white-space: normal; } }
/* Home page: the sticky bar waits until the hero's own button has scrolled away */
@media (max-width: 700px) { body.hero-cta-visible .mobile-cta-bar { transform: translateY(110%); } .mobile-cta-bar { transition: transform .25s ease; } }

/* Sticky "Request a tour / Call" bar on phones */
.mobile-cta-bar { display: none; }
@media (max-width: 700px) {
  .mobile-cta-bar {
    display: grid; grid-template-columns: 1fr 1fr; gap: 8px;
    position: fixed; left: 0; right: 0; bottom: 0; z-index: 60;
    padding: 10px 12px calc(10px + env(safe-area-inset-bottom));
    background: var(--bg, #fff);
    box-shadow: 0 -6px 18px rgba(0,0,0,.10);
  }
  .mobile-cta-bar .button {
    justify-content: center; min-height: 48px; margin: 0;
    padding: 0 10px; font-size: var(--text-xs, .8rem); white-space: nowrap;
  }
  .mobile-cta-bar .button.secondary {
    background: transparent; color: var(--accent); border: 1px solid var(--accent);
  }
  body { padding-bottom: calc(70px + env(safe-area-inset-bottom)); }
  body:has(dialog[open]) .mobile-cta-bar { display: none; }
}

/* Contact page map */
.map-section { padding-block: var(--space-16, 64px) var(--space-8, 32px); }
.map-section h2 { margin-bottom: var(--space-6, 24px); }
.map-frame { position: relative; aspect-ratio: 16 / 9; width: 100%; overflow: hidden; background: var(--line, #eee); }
.map-frame iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
@media (max-width: 700px) { .map-frame { aspect-ratio: 4 / 5; } }

/* Reviews block on inner pages */
.page-reviews { padding-block: var(--space-16, 64px); }

/* Planning guides (blog), November 2026 */
.guide-article { max-width: 760px; margin-inline: auto; padding-block: var(--space-16, 64px) var(--space-8, 32px); }
.guide-head { text-align: center; margin-bottom: var(--space-10, 40px); }
.guide-head h1 { font-size: clamp(2.6rem, 6vw, 4.4rem); line-height: 1.05; margin: var(--space-4, 16px) 0; }
.guide-head .eyebrow a { color: inherit; text-decoration: none; }
.guide-byline { font-size: var(--text-sm, .9rem); opacity: .75; }
.guide-figure { margin: 0 0 var(--space-10, 40px); }
.guide-figure img { width: 100%; height: auto; max-height: 560px; object-fit: cover; display: block; }
.guide-figure figcaption { font-size: var(--text-xs, .8rem); opacity: .7; margin-top: var(--space-2, 8px); }
.guide-article h2 { font-size: clamp(1.9rem, 3.6vw, 2.5rem); margin: var(--space-12, 48px) 0 var(--space-4, 16px); }
.guide-article h3 { font-size: var(--text-lg, 1.2rem); margin: var(--space-6, 24px) 0 var(--space-2, 8px); }
.guide-article p, .guide-article li { font-size: var(--text-base, 1rem); line-height: 1.7; }
.guide-article p { margin: 0 0 var(--space-4, 16px); }
.guide-article ul { padding-left: 1.2em; margin: 0 0 var(--space-4, 16px); }
.guide-article a { text-decoration: underline; text-underline-offset: 3px; }
.guide-table-wrap { overflow-x: auto; margin: var(--space-4, 16px) 0 var(--space-4, 16px); }
.guide-table { width: 100%; border-collapse: collapse; font-size: var(--text-sm, .92rem); }
.guide-table th, .guide-table td { text-align: left; padding: 10px 12px; border-bottom: 1px solid var(--line, #ddd); vertical-align: top; }
.guide-table th { font-weight: 600; }
.guide-table.worksheet td:last-child { min-width: 110px; border-bottom-style: dashed; }
.guide-table tr.total td { font-weight: 700; border-bottom: 2px solid currentColor; }
.guide-lead { max-width: 60ch; margin: var(--space-4, 16px) auto 0; text-align: center; }
.guide-index-hero { text-align: center; }
.guide-list { max-width: 980px; margin-inline: auto; padding-block: var(--space-8, 32px) var(--space-16, 64px); }
.guide-card { display: grid; grid-template-columns: 300px 1fr; gap: var(--space-8, 32px); align-items: center; text-decoration: none; color: inherit; border-top: 1px solid var(--line, #ddd); border-bottom: 1px solid var(--line, #ddd); padding-block: var(--space-6, 24px); }
.guide-card img { width: 100%; height: 220px; object-fit: cover; display: block; }
.guide-card h2 { font-size: clamp(1.7rem, 3vw, 2.3rem); margin: var(--space-2, 8px) 0; }
.guide-card:hover h2 { text-decoration: underline; text-underline-offset: 4px; }
@media (max-width: 700px) {
  .guide-card { grid-template-columns: 1fr; gap: var(--space-4, 16px); }
  .guide-card img { height: 200px; }
  .guide-article { padding-top: var(--space-10, 40px); }
  .guide-figure img { max-height: 420px; }
}
