/* Shared editorial grid and restrained photography. */
:root{--page-gutter:7vw;--header-height:108px}
header{padding-inline:var(--page-gutter)}
.hero-copy{border:0;margin:0;padding:clamp(28px,5vh,72px) var(--page-gutter);width:auto}
.hero-copy:after{display:none}
.hero h1{font-size:clamp(2.7rem,5.7vw,6rem);line-height:1.08;margin:26px 0;letter-spacing:-.035em}
.hero-subtitle{max-width:35ch;line-height:1.8;margin:0}
.hero>picture{align-self:center;overflow:hidden}
.hero>picture img{filter:saturate(.92);object-position:52% center}
.intro{padding-inline:var(--page-gutter);column-gap:7vw}
.story{margin-inline:var(--page-gutter);column-gap:7vw}
.wine,.contact{padding-inline:var(--page-gutter);column-gap:7vw}
.intro h2,.story h2{margin:24px 0 0}
.intro-body,.story>.copy{padding-top:46px}
.copy p,.intro-body p{max-width:52ch}
.project-facts p{margin-bottom:0;line-height:1.75;max-width:30ch}
.project-facts>div{padding-inline:24px}.project-facts>div:first-child{padding-left:0}.project-facts>div:last-child{padding-right:0}
.landscape{margin-inline:var(--page-gutter)}
.landscape img{height:clamp(230px,27vw,370px);object-position:center 55%;filter:saturate(.92)}
.cellar-photo{width:100%;max-width:960px;justify-self:center;border:0;padding:0;margin-top:20px}
.cellar-photo .photo-frame{height:clamp(230px,29vw,380px);aspect-ratio:auto}
.cellar-photo img{height:100%;width:100%;object-fit:cover;aspect-ratio:auto}
.cellar-photo figcaption{padding:0;margin-top:12px}
.vine-photo-pair{grid-template-columns:1fr 1fr;gap:32px;margin-top:20px;align-items:start}
.vine-photo-pair figure:nth-child(2){margin-top:0}
.vine-photo-pair .photo-frame{border:0}
.vine-photo-pair img{height:clamp(200px,22vw,300px);aspect-ratio:auto;object-fit:cover;filter:saturate(.92)}
.document-photo figcaption,.landscape p{font-size:.8125rem;letter-spacing:0;line-height:1.6;margin-top:12px}
.work-photo{max-width:390px;justify-self:start;margin-top:12px}
.work-photo .photo-frame{border:0;padding:0;background:none}
.work-photo img{height:300px;object-position:center 45%}
footer{padding-inline:var(--page-gutter)}
@media(min-width:761px){
 html{scroll-padding-top:calc(var(--header-height) + 20px)}
 .hero{height:calc(100svh - var(--header-height));min-height:440px;grid-template-columns:56% 44%;padding-right:var(--page-gutter);gap:0}
 .hero>picture{height:calc(100% - 64px);max-height:780px;width:100%}
 .hero-copy{padding-right:5vw}
 .intro>span{grid-column:1;grid-row:1}.intro h2{grid-column:1;grid-row:2;align-self:start}
 .intro-body{grid-column:2;grid-row:1 / 3}.project-facts{grid-row:3}
}
@media(max-width:760px){
 :root{--page-gutter:7vw}
 .hero{height:auto;min-height:0;padding:0 0 28px}
 .hero-copy{padding:38px var(--page-gutter) 28px;max-width:none;margin:0}
 .hero h1{font-size:clamp(2.25rem,7vw,3.125rem);margin:20px 0}
 .hero>picture{width:86%;height:clamp(180px,45vw,290px);margin:0 var(--page-gutter)}
 .hero>picture img{width:100%;height:100%;margin:0}
 .intro-body,.story>.copy{padding-top:24px}
 .intro h2,.story h2{margin:20px 0 0}
 .project-facts>div,.project-facts>div:first-child,.project-facts>div:last-child{padding:20px 0}
 .project-facts p{max-width:none}
 .landscape img,.cellar-photo .photo-frame{height:clamp(180px,43vw,290px)}
 .vine-photo-pair{gap:24px;margin-top:24px}
 .vine-photo-pair img{height:clamp(190px,45vw,280px)}
 .work-photo{max-width:340px;margin-top:24px;width:100%}.work-photo img{height:280px}
}
@media(max-width:539px){.vine-photo-pair{grid-template-columns:1fr}}
@media(min-width:761px) and (max-height:600px){.hero{min-height:0}.hero h1{font-size:clamp(2.3rem,5vw,4rem);margin:18px 0}.hero-copy{padding-block:24px}.hero-subtitle{font-size:.9375rem}}


/* One border system: contained frames and single section rules. */
:root{--frame-line:#b8aa8e99;--frame-space:8px}
.hero{border-bottom:0}
.hero:after,.hero-copy:after,.document-photo .photo-frame:before,.document-photo .photo-frame:after{content:none;display:none}
.hero>picture{outline:0;border:1px solid var(--frame-line);padding:var(--frame-space);background:var(--paper);overflow:hidden}
.hero-copy>span{display:flex;align-items:center;gap:14px}
.hero-copy>span:before{content:'';width:27px;height:1px;background:var(--wine);flex:none}
.project-facts{background:#f2ead54d;border-block:1px solid var(--frame-line);padding:26px 20px}
.project-facts>div:first-child{padding-left:0}.project-facts>div:last-child{padding-right:0}
.landscape{border:0;padding:0}
.landscape>img{border:1px solid var(--frame-line);padding:var(--frame-space);background:var(--paper)}
.landscape p{padding:0;margin-top:12px}
.story{border-bottom:1px solid var(--line)}
#territorio{border-bottom:0}
.document-photo{border:0;outline:0;padding:0}
.document-photo .photo-frame,.work-photo .photo-frame,.vine-photo-pair .photo-frame{position:relative;box-sizing:border-box;border:1px solid var(--frame-line);padding:var(--frame-space);height:auto;aspect-ratio:auto;outline:0;overflow:hidden;background:var(--paper);box-shadow:none}
.document-photo .photo-frame img{display:block;width:100%;max-width:100%;margin:0;border:0;outline:0}
.cellar-photo .photo-frame img{height:auto;max-height:none;aspect-ratio:auto;object-fit:contain}
.document-photo figcaption{padding:0;margin:12px 0 0}
.wine-identity{outline:0;border:1px solid var(--frame-line);box-shadow:inset 0 0 0 7px var(--paper),inset 0 0 0 8px #b8aa8e55}
.wine-identity:after{content:'';display:block;width:5px;height:5px;background:var(--wine);transform:rotate(45deg);margin:22px auto 0}
.contact{border-top:1px solid #7e7059;background:radial-gradient(ellipse at 95% 0%,#45322238,transparent 65%),var(--ink)}
.contact>span{display:flex;align-items:center;gap:14px}
.contact>span:before{content:'';height:1px;width:28px;background:#bfa592}
footer{border-top:1px solid #b8aa8e40}
@media(min-width:761px){.intro>span{grid-row:1;align-self:start}.intro h2{grid-row:1;margin-top:48px}.intro-body{grid-row:1;padding-top:48px}.project-facts{grid-row:2}}
@media(max-width:760px){
 :root{--frame-space:6px}
 .hero-copy>span{gap:10px}.hero-copy>span:before{width:20px}
 .project-facts{padding:4px 16px}
 .project-facts>div:first-child,.project-facts>div:last-child{padding-inline:0}
 .wine-identity:after{margin-top:16px}
}

/* Mobile: avoid repeating the opening vineyard photograph. */
@media(max-width:760px){main>.landscape{display:none}}
