/* Farmhouse identity: photography, engraving, generous type and fine rules. */
:root{--paper:#f6f1e7;--ink:#2c3029;--line:#d5d0c3;--green:#303a30}
body{position:relative;max-width:none}
.header{position:absolute;top:0;left:0;right:0;z-index:5;height:132px;margin:0 4.8%;display:grid;grid-template-columns:1fr auto 1fr;gap:25px;color:#fffaf1;border-color:#fffaf13d}
.header .wordmark{grid-column:2;grid-row:1;font-size:42px;letter-spacing:8px;text-align:center;font-weight:500;text-shadow:0 1px 8px #0002}
.header .wordmark span{font-size:10px;letter-spacing:6px;margin-top:14px}
.header nav{grid-column:1;grid-row:1;gap:25px;font-size:11px}
.header nav a:hover{color:#fff;opacity:.7}
.header-actions{grid-column:3;grid-row:1;justify-content:flex-end;gap:22px}
.header select{color:#fffaf1}.header select option{background:var(--paper);color:var(--ink)}
.header .button-small{background:transparent;border-color:#fffaf180;color:#fffaf1;padding:12px 18px;font-size:10px}
.header .button-small:hover{background:#fffaf1;color:var(--ink)}
.hero{margin:0;min-height:790px;height:92svh;max-height:1100px;position:relative;display:block;isolation:isolate;color:#fffaf1;background:#403d35}
.hero-visuals{position:absolute;inset:0;display:grid;grid-template-columns:61% 39%;gap:3px;z-index:-3;overflow:hidden}
.hero-visuals img{width:100%;height:100%;min-height:0;object-fit:cover}
.hero-main-image{object-position:50% 68%}.hero-side-image{object-position:52% 50%}
.hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(180deg,#161b1bcc 0%,#161b1b12 29%,#161b1b00 43%,#161b1b26 61%,#11170fc9 100%),linear-gradient(90deg,#1b211e4d 0%,#1b211e15 54%,transparent 66%)}
.hero-editorial{position:absolute;left:7.3%;right:32%;bottom:142px;max-width:820px}
.hero-editorial .eyebrow{color:#f2eddf;font-size:10px;letter-spacing:2.6px}
.hero h1{font-size:clamp(76px,6.8vw,110px);line-height:.99;letter-spacing:-1.9px;margin:21px 0 20px;text-shadow:0 2px 22px #0002}
.hero-promise{font-size:13px;color:#f7f3e7;margin-bottom:27px;letter-spacing:.1px}
.button-light{background:var(--paper);border-color:var(--paper);color:var(--ink);min-width:225px;padding:17px 24px}
.button-light:hover{background:#fffaf1;color:var(--ink)}
.hero-baseline{position:absolute;bottom:32px;left:4.8%;right:4.8%;border-top:1px solid #fffaf14f;padding-top:25px;display:flex;justify-content:space-between;gap:30px;align-items:center}
.hero-scroll{display:flex;align-items:center;gap:14px;font-size:8px;letter-spacing:1.8px}
.scroll-arrow{display:grid;place-items:center;border:1px solid #fffaf166;border-radius:50%;height:35px;width:35px;font-size:18px;line-height:1}
.hero-photo-note{display:flex;gap:20px;align-items:center;font-size:8px;letter-spacing:1.6px;color:#fffaf1cf}
.hero-photo-note>span:first-child{font-family:var(--serif);font-size:20px;letter-spacing:1px}
.hero-baseline .photo-button{position:static;background:transparent;border:1px solid #fffaf180;color:#fffaf1;font-size:10px;padding:11px 17px}
.hero-baseline .photo-button:hover{background:var(--paper);color:var(--ink)}
.brand-story{position:relative;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:6%;align-items:center;margin:0 7.3%;padding:60px 3% 64px;border-bottom:4px double var(--line)}
.brand-art{width:100%;max-width:560px;justify-self:center;position:relative;mix-blend-mode:multiply}
.brand-art img{width:100%;height:auto;mix-blend-mode:normal}
.brand-copy{min-width:0;padding:20px 0}.brand-copy h2{font-size:clamp(47px,4.2vw,67px);line-height:1.03;margin:24px 0}
.brand-copy>p:not(.eyebrow){font-size:13px;color:var(--muted);line-height:1.95;max-width:390px;margin:0 0 25px}
.brand-side-note{position:absolute;right:-4%;top:50%;writing-mode:vertical-rl;font-size:8px;letter-spacing:2.2px;color:#858777;transform:translateY(-50%)}
.facts{margin:0 7.3%;border-top:0;padding:27px 0;border-bottom:1px solid var(--line)}
.facts b{font-size:36px}.facts>span>span{font-size:10px;letter-spacing:.1px}
.stay{padding-top:125px;padding-bottom:130px}.stay .section-copy h2{font-size:74px}
.stay-images{padding-right:15%;padding-bottom:75px}.living{aspect-ratio:.77}.dining{width:52%;right:-7%;bottom:10px;border:9px solid var(--paper)}
.image-index{bottom:-17px;font-size:8px;letter-spacing:2.7px}
.rooms{background:#eae5d9;position:relative;border-block:1px solid #d9d2c2}
.rooms .eyebrow:before{content:'';display:inline-block;width:35px;height:1px;background:#858777;vertical-align:middle;margin-right:13px}
.room-image{border:1px solid #d1cabb;padding:5px}.room-image img{aspect-ratio:.73}.room-image>span{top:22px;left:22px}
.room-image i{right:22px;bottom:22px}.room h3{font-size:32px}
.ducks-copy{position:relative;border:1px solid #ffffff26;outline:1px solid #ffffff26;outline-offset:-14px}
.tiny-duck{width:65px;height:81px;margin-bottom:22px}
.ducks h2{font-size:clamp(49px,4.8vw,77px)}
.ducks .signature{font-size:31px;color:#c6cab7}
.booking{border-block:1px solid #d9d2c2}.booking-intro>img{width:290px;margin:20px 0 0 -20px}
footer{padding-top:35px;gap:25px 50px;align-items:center}
.footer-brand{display:block;width:245px;margin-left:-19px}.footer-brand img{mix-blend-mode:multiply;width:100%}
footer p{margin-top:0}.footer-links{align-self:center}.footer-bottom{width:100%}
@media(min-width:1700px){.hero-editorial{left:9%}.brand-story{padding-block:85px}.brand-art{max-width:600px}}
@media(max-width:1100px){.header{height:115px;grid-template-columns:1fr auto 1fr;gap:14px}.header .wordmark{font-size:34px;letter-spacing:6px}.header nav{gap:17px;font-size:10px}.header-actions{gap:12px}.header .button-small{font-size:9px;padding:10px}.hero{min-height:740px;max-height:1000px}.hero-editorial{right:25%;left:6%;bottom:145px}.hero h1{font-size:79px}.hero-photo-note{display:none}.brand-story{gap:6%;margin-inline:6%;padding:45px 0}.brand-art{max-width:440px}.brand-copy h2{font-size:51px}.brand-side-note{right:-3%}.stay .section-copy h2{font-size:64px}.room h3{font-size:27px}}
@media(max-width:760px){
  .header{height:104px;margin-inline:5%;grid-template-columns:1fr auto;gap:12px}.header .wordmark{grid-column:1;font-size:29px;letter-spacing:5.5px;justify-self:start}.header .wordmark span{font-size:8px;letter-spacing:4.5px;margin-top:11px}.header-actions{grid-column:2;gap:13px}.header select{font-size:11px}.menu-toggle span{background:var(--paper);width:22px}.menu-toggle{padding:12px 0 12px 5px}
  .header nav{position:absolute;top:103px;left:-5.56%;width:111.12%;color:var(--ink);background:var(--paper);padding:25px 7%;font-size:14px;gap:20px;box-shadow:0 15px 20px #0002}.header nav a:hover{color:var(--ink)}
  .hero{height:90svh;min-height:710px;max-height:870px;margin:0;display:block}.hero-visuals{grid-template-columns:100%;gap:0}.hero-side-image{display:none}.hero-main-image{object-position:50% 50%}.hero-shade{background:linear-gradient(180deg,#181b1bc9 0%,#181b1b10 27%,#181b1b00 39%,#18201b45 58%,#11170fe8 100%)}
  .hero-editorial{left:7%;right:6%;bottom:135px;max-width:none}.hero-editorial .eyebrow{font-size:8px;letter-spacing:2px}.hero h1{font-size:clamp(52px,13.8vw,78px);line-height:1.03;letter-spacing:-1px;margin:19px 0 16px}.hero-promise{font-size:11px;max-width:255px;line-height:1.6;margin-bottom:23px}.hero .button-light{font-size:11px;min-width:215px;padding:15px 20px}
  .hero-baseline{bottom:24px;left:6%;right:6%;gap:10px;padding-top:19px}.hero-scroll{font-size:7px;letter-spacing:1px;gap:8px;max-width:155px}.scroll-arrow{width:28px;height:28px;font-size:16px;flex-shrink:0}.hero-baseline .photo-button{padding:9px 10px;font-size:9px;gap:6px;white-space:nowrap}.hero-baseline .photo-button>span:first-child{font-size:18px}
  .brand-story{display:flex;flex-direction:column;margin:0 7%;padding:25px 0 45px;gap:0;text-align:center}.brand-art{width:108%;max-width:380px}.brand-copy{padding:0}.brand-copy .eyebrow{font-size:8px;letter-spacing:1.6px}.brand-copy h2{font-size:46px;margin:19px 0 21px}.brand-copy>p:not(.eyebrow){font-size:12px;max-width:330px}.brand-side-note{display:none}
  .facts{margin:0 7%;padding:9px 0}.facts b{font-size:29px}.facts>span>span{font-size:9px}.facts>span{gap:10px;padding:13px 0}
  .stay{padding-top:65px;padding-bottom:65px}.stay .section-copy h2{font-size:58px}.stay-images{margin-right:10%;padding-right:17%;padding-bottom:60px}.dining{width:53%;right:-8%;bottom:18px;border-width:6px}.image-index{bottom:0;letter-spacing:1.7px}
  .room-image img{aspect-ratio:1.05}.room h3{font-size:30px}.room-image>span{top:20px;left:20px}.room-image i{bottom:20px;right:20px}
  .ducks h2{font-size:53px}.tiny-duck{width:55px;height:69px}.ducks-copy{padding:55px 9% 65px;outline-offset:-10px}.ducks .signature{font-size:28px}
  .booking-intro>img{display:block;width:230px;margin:10px auto -20px}.booking{gap:20px}footer{padding-top:30px;text-align:center}.footer-brand{width:250px;margin:0 auto}footer>.footer-links{justify-content:center}footer .footer-bottom{text-align:left}
}
@media(max-width:360px){.header .wordmark{font-size:25px;letter-spacing:4px}.hero{min-height:700px}.hero h1{font-size:50px}.hero-scroll{max-width:130px;font-size:6px}.hero-baseline .photo-button{font-size:8px}.brand-copy h2{font-size:41px}}

/* Less repetition; space for the photographs and the essential words. */
.brand-copy h2{margin-top:0;margin-bottom:22px}
.brand-copy>p:not(.eyebrow){margin-bottom:0}
.stay .section-copy h2,.rooms .section-heading h2,.area .section-heading h2{margin-top:0}
.ducks h2{margin-top:8px}
.ducks-copy>p:not(.eyebrow){max-width:320px}
.rooms-note{margin-top:30px}
.business-stay{margin-top:32px;gap:35px}
.business-stay h3{font-size:32px}
.area .section-heading{margin-bottom:40px}
.booking{padding-block:85px}
@media(max-width:760px){.brand-story{padding-bottom:40px}.brand-copy h2{margin-top:0}.booking{padding-block:55px;gap:30px}.business-stay{gap:14px}.business-stay h3{font-size:29px}.area .section-heading{margin-bottom:30px}}

.room{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch}
