.photo-link{display:block;position:relative;overflow:hidden;background:#dddccf}.photo-link img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.photo-link:hover img{transform:scale(1.025)}.enlarge{position:absolute;right:15px;bottom:15px;display:grid;place-items:center;width:42px;height:42px;background:#f3f0e7ee;color:var(--ink);border-radius:50%;font-size:24px}.room-grid{display:grid;grid-template-columns:1fr 1fr;gap:75px 7%}.room{min-width:0}.room-image{height:500px;position:relative;overflow:hidden}.room-image>.photo-link{height:100%}.room-image img{object-position:center 56%}.room-index{position:absolute;top:20px;left:20px;font:40px var(--serif);color:#fff;text-shadow:0 2px 12px #0008;pointer-events:none}.room-info{padding-top:25px}.room-info .eyebrow{margin-bottom:13px}.room h3{font:36px/1.1 var(--serif);letter-spacing:-.03em;margin-bottom:15px}.room-info p{font-size:.95rem;color:var(--muted);margin-bottom:15px}.room-info .bath-label{color:var(--ink);font-weight:600;padding-bottom:12px;border-bottom:1px solid var(--line)}.room-thumbs{display:flex;gap:12px;margin:20px 0}.room-thumbs .photo-link{width:90px;height:110px}.room-thumbs .enlarge{display:none}.text-link{display:inline-flex;align-items:center;gap:20px;padding:12px 0;border-bottom:1px solid currentColor;font-size:.9rem}.shared-bath{margin-top:75px;border-top:1px solid var(--line);padding-top:50px;display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.shared-bath h3{font:38px/1.08 var(--serif)}.shared-bath p{color:var(--muted)}.bath-photos{display:grid;grid-template-columns:1fr 1fr;gap:15px}.bath-photos .photo-link{height:330px}.garden{background:var(--ink);color:var(--paper)}.garden .section-head>p{color:#c6d0c6}.garden-grid{display:grid;grid-template-columns:1.7fr 1fr;grid-template-rows:250px 250px;gap:20px}.garden-main{grid-row:1/3}.living-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:25px}figure{margin:0}figcaption{font-size:.875rem;line-height:1.6;padding-top:15px;color:var(--muted)}.living-grid .photo-link{height:370px}.living-grid figure:nth-child(2){padding-top:70px}.area{display:grid;grid-template-columns:1fr 1fr;gap:8%;background:#e7e7dc}.area>div>p{color:var(--muted);max-width:470px}.area-links>a{display:flex;align-items:center;gap:25px;padding:24px 0;border-bottom:1px solid #bbc4b6}.area-links>a:first-child{border-top:1px solid #bbc4b6}.area-links>a>span{font:22px var(--serif);color:var(--muted)}.area-links h3{font:26px var(--serif);margin:0 0 6px}.area-links p{font-size:.875rem;margin:0;color:var(--muted)}.area-links b{margin-left:auto;font-size:23px;font-weight:400}.practical{display:grid;grid-template-columns:1fr 1.3fr;gap:8%}.faq details{padding:22px 0;border-bottom:1px solid var(--line)}.faq details:first-child{border-top:1px solid var(--line)}.faq summary{font-size:1.1rem;cursor:pointer;list-style:none;padding-right:30px;position:relative;line-height:1.4}.faq summary:after{content:'+';position:absolute;right:0;top:-3px;font-size:27px;font-weight:300}.faq details[open] summary:after{content:'−'}.faq details p{font-size:.95rem;color:var(--muted);padding-top:18px;margin-bottom:0}.contact-section{background:var(--ink);color:var(--paper);text-align:center;padding:100px 24px 80px}.contact-section h2{font:clamp(60px,9vw,130px)/.92 var(--serif);letter-spacing:-.05em;margin:30px 0}.contact-section h2 em{font-weight:400}.contact-section>p:not(.eyebrow){color:#c6d0c6}.contact-section>div{display:flex;justify-content:center;gap:15px;flex-wrap:wrap;margin:30px 0}.map-link{display:inline-block;padding:15px 0;font-size:.875rem;text-decoration:underline;text-underline-offset:5px}.contact-section+.footer{border-top:1px solid #ffffff28}.footer>div:last-child{max-width:370px}dialog{border:none;border-radius:0;background:#101b17;color:#fff;width:min(1100px,94vw);max-height:94svh;padding:50px 40px 25px;overflow:auto}dialog::backdrop{background:#07100ee8;backdrop-filter:blur(5px)}dialog .gallery-close{position:absolute;top:4px;right:12px;color:white;font-size:35px;background:none;border:none;width:44px;height:44px;cursor:pointer}.gallery-picture{display:flex;align-items:center;gap:15px;justify-content:center}.gallery-picture img{max-height:72svh;max-width:calc(100% - 108px);object-fit:contain;min-width:0}.gallery-prev,.gallery-next{background:#ffffff18;border:1px solid #ffffff55;color:white;width:44px;height:44px;flex-shrink:0;cursor:pointer;font-size:22px}.gallery-prev[hidden],.gallery-next[hidden]{display:none}#gallery-caption{margin:20px 0 0;text-align:center;font-size:.95rem}#gallery-count{display:block;text-align:center;font-size:.8rem;color:#c0cac5;margin-top:8px}.jab{--paper:#f1ebdf;--ink:#333c2f}.jab .nav{color:white;text-shadow:0 2px 14px #0009}.jab .brand{font-size:27px;letter-spacing:-.035em}.jab .season-stage{display:block;isolation:isolate}.jab .hero-visual{position:absolute;inset:0;z-index:-1}.jab .hero-visual>img{object-position:center}.jab .hero-visual:after{background:linear-gradient(180deg,#0005,transparent 25%,#101e0940 50%,#081107a3)}.jab-title{position:absolute;bottom:155px;left:6%;right:6%;color:#fff;text-shadow:0 2px 16px #071b0b55}.jab-title h1{font:clamp(55px,6vw,96px)/1.02 var(--serif);letter-spacing:-.045em;margin:20px 0}.jab-title h1 em{font-weight:400}.jab-title .season-caption{padding-top:0;min-height:0;font-size:.95rem}.jab-title .season-caption strong{display:none}.jab-title .text-link{margin-top:14px}.jab .visual-label{left:6%}.jab-living>.photo-link{aspect-ratio:16/9}.jab-details{display:grid;grid-template-columns:1.35fr 1fr;align-items:center;gap:7%;margin-top:70px}.jab-details figure:first-child .photo-link{aspect-ratio:3/2}.jab-details figure:last-child .photo-link{aspect-ratio:3/4}.pavilion{background:#e3e4d6}.pavilion>.photo-link{aspect-ratio:4/3;max-height:850px}.detail-pair{display:grid;grid-template-columns:1fr 1fr;gap:7%;max-width:850px;margin:auto}.detail-pair .photo-link{aspect-ratio:3/4}.section h2 em{font-weight:400}.season-controls{filter:drop-shadow(0 1px 6px #0008)}.season-controls button{font-weight:600}.season-controls button:hover{border-color:#ffffff80}.navlinks a:hover,.text-link:hover{text-decoration:underline;text-underline-offset:5px}
@media(max-width:1100px){.hero-copy{padding-top:125px;padding-bottom:32px}.hero-copy h1{font-size:clamp(55px,6.3vw,90px)}.room-image{height:410px}.living-grid .photo-link{height:300px}}@media(max-width:900px){.room-grid{gap:45px 20px}.room-image{height:350px}.room h3{font-size:30px}.living-grid{grid-template-columns:1fr 1fr}.living-grid figure:nth-child(2){padding-top:40px}.living-grid figure:last-child{grid-column:1/3}.living-grid figure:last-child .photo-link{height:320px}.shared-bath,.area,.practical{grid-template-columns:1fr;gap:30px}.garden-grid{grid-template-rows:200px 200px;gap:12px}.hero-copy{padding:25px 7% 20px}.hero-copy h1{font-size:clamp(42px,7.8vw,70px)}.jab .nav{color:var(--ink);text-shadow:none}.jab .nav .brand{font-size:20px}.jab .season-stage{height:90svh}.jab .hero-visual>img{object-position:43% center}.jab-title h1{font-size:58px}.jab-title{bottom:150px}.jab-details{gap:30px;margin-top:40px}.detail-pair{gap:25px}.contact-section{padding-top:70px}.nav .button{min-height:44px;padding:10px 15px;font-size:.85rem}}@media(max-width:560px){.room-grid{grid-template-columns:1fr;gap:50px}.room-image{height:auto;aspect-ratio:4/5}.room-info{padding-top:20px}.room h3{font-size:34px}.room-thumbs .photo-link{width:83px;height:105px}.shared-bath{margin-top:45px;padding-top:40px}.shared-bath h3{font-size:33px}.bath-photos .photo-link{height:270px}.garden-grid{grid-template-columns:1fr 1fr;grid-template-rows:270px 200px}.garden-main{grid-row:1;grid-column:1/3}.living-grid{grid-template-columns:1fr}.living-grid figure:nth-child(2){padding-top:0}.living-grid figure:last-child{grid-column:auto}.living-grid .photo-link,.living-grid figure:last-child .photo-link{height:auto;aspect-ratio:4/3}.living-grid{gap:30px}.jab-title h1{font-size:48px}.jab-title .eyebrow{font-size:.65rem}.jab-title{bottom:145px}.jab .season-number{font-size:30px;bottom:105px;right:7%}.jab .hero-visual>img{object-position:39% center}.jab-details{grid-template-columns:1fr}.jab-details figure:last-child{max-width:85%;margin-left:auto}.jab-living>.photo-link{aspect-ratio:4/3}.pavilion>.photo-link{aspect-ratio:1/1}.detail-pair{gap:15px}.area-links h3{font-size:24px}.contact-section>div{flex-direction:column;align-items:center}.season-caption{font-size:.78rem;line-height:1.35;max-width:62%}.season-caption strong{font-size:21px;margin-bottom:6px}.hero-copy .button{bottom:26px;right:7%;font-size:.75rem;min-height:44px;gap:7px}.hero-copy h1{max-width:100%;font-size:45px}.hero-copy .eyebrow{font-size:.66rem}.visual-label>span{font-size:.65rem}.season-number{font-size:29px}.season-controls{gap:16px}.season-controls button{font-size:.8rem}.gallery-picture{gap:6px}.gallery-picture img{max-width:calc(100% - 76px)}.gallery-prev,.gallery-next{width:32px;height:44px}.gallery-close{right:8px}dialog{width:98vw;padding:48px 8px 20px}#gallery-caption{font-size:.82rem}.jab .brand{max-width:200px}.footer{padding:45px 7%}.facts{justify-content:flex-start}}
@media(max-height:720px) and (min-width:901px){.hero-copy{padding-top:100px}.hero-copy h1{font-size:70px;margin:20px 0}.hero-copy .season-caption{padding-top:15px}.hero-copy .scroll-hint{margin-top:10px}.hero-copy>p:not(.eyebrow){font-size:.95rem}.season-stage{min-height:650px}}
@media(prefers-reduced-motion:reduce){.photo-link:hover img{transform:none}.portal-wordmark,.choices{animation:none}.hero-visual>img{transition:none}}
