
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;1,400&family=Inter:wght@300;400;500&display=swap');

:root{
  --paper:#f4f0e8; --ink:#252724; --muted:#6d706a; --line:rgba(37,39,36,.18);
  --serif:"Cormorant Garamond",Georgia,serif; --sans:"Inter",Arial,sans-serif;
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-weight:300;line-height:1.7}
img{display:block;width:100%;height:auto} a{color:inherit;text-decoration:none} main{overflow:hidden}
.site-header{position:fixed;z-index:20;top:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;padding:22px 4vw;color:#fff;transition:.4s ease}
.site-header.scrolled,.body-light .site-header{background:rgba(244,240,232,.94);color:var(--ink);backdrop-filter:blur(12px);box-shadow:0 1px 0 var(--line)}
.brand{display:flex;align-items:baseline;gap:12px;z-index:2}.brand-mark{font-family:var(--serif);font-style:italic;font-size:34px;line-height:1}.brand-sub{text-transform:uppercase;letter-spacing:.18em;font-size:9px}
.zero{position:relative;display:inline-block}.zero:after{content:"";position:absolute;left:1px;right:-1px;top:52%;height:1.5px;background:currentColor;transform:rotate(-42deg);transform-origin:center}
.site-nav{display:flex;gap:24px;font-size:12px;letter-spacing:.06em}.site-nav a{opacity:.82}.site-nav a:hover{opacity:1}
.menu-button{display:none;background:none;border:0;color:inherit;width:40px;height:40px;z-index:3}.menu-button span{display:block;height:1px;background:currentColor;margin:7px 0}
.hero{height:100svh;min-height:680px;position:relative;color:#fff}.hero>img{height:100%;object-fit:cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.46),rgba(0,0,0,.08) 65%),linear-gradient(0deg,rgba(0,0,0,.30),transparent 45%)}
.hero-copy{position:absolute;left:7vw;bottom:10vh;max-width:900px}.arrival,.eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:10px;font-weight:500}.hero h1{font:400 clamp(50px,7vw,104px)/.95 var(--serif);margin:20px 0 38px}.hero h1 span{display:block}.hero h1 span+span{font-style:italic;margin-left:8vw}
.text-link{display:inline-flex;gap:14px;align-items:center;border-bottom:1px solid currentColor;padding-bottom:6px;font-size:12px;letter-spacing:.08em}.text-link.light{color:#fff}
.section-pad{padding:120px max(6vw,24px)}.intro{max-width:980px;margin:auto;text-align:center}.intro h2,.home-contact h2,.season h2,.print-info h2,.local-events h2{font:400 clamp(44px,6vw,78px)/1 var(--serif);margin:18px 0}.lead{font:italic 400 26px/1.5 var(--serif)}
.intro>p:last-child{max-width:710px;margin:30px auto 0}
.feature-grid{display:grid;grid-template-columns:1.25fr 1fr;grid-template-rows:400px 400px;gap:18px}.feature-card{position:relative;overflow:hidden}.feature-card.tall{grid-row:1/3}.feature-card img{height:100%;object-fit:cover;transition:transform 1s ease}.feature-card:hover img{transform:scale(1.025)}.feature-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.52),transparent 55%)}.feature-label{position:absolute;z-index:1;left:28px;bottom:25px;color:#fff;font:400 32px/1.05 var(--serif)}.feature-label small{font:500 9px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;display:block;margin-bottom:10px}
.season{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center}.season img{aspect-ratio:4/5;object-fit:cover}.philosophy-strip{padding:150px 7vw;background:#262823;color:#f4f0e8;text-align:center}.philosophy-strip blockquote{font:400 clamp(48px,7vw,92px)/1.05 var(--serif);margin:0}.philosophy-strip em{font-weight:400}.home-contact{text-align:center;max-width:1050px;margin:auto}.button-row{display:flex;justify-content:center;gap:12px;margin-top:35px}.button{display:inline-block;background:var(--ink);color:var(--paper);padding:14px 22px;font-size:11px;letter-spacing:.11em;text-transform:uppercase;border:1px solid var(--ink)}.button.ghost{background:transparent;color:var(--ink)}
.page-hero{min-height:82svh;display:grid;grid-template-columns:1fr 1fr;padding-top:85px}.page-hero>div{padding:10vw 7vw;align-self:center}.page-hero>img{height:100%;object-fit:cover}.page-hero h1,.manifesto-hero h1,.contact-intro h1{font:400 clamp(64px,8vw,118px)/.85 var(--serif);margin:18px 0 30px}.page-hero p{max-width:600px}.page-hero.compact{display:block;min-height:auto;padding:190px 7vw 70px}.page-hero.compact>div{padding:0;max-width:900px}
.masonry{columns:3 320px;column-gap:18px}.photo-card{break-inside:avoid;margin:0 0 30px}.photo-card img{max-height:720px;object-fit:cover}.photo-card figcaption{padding:15px 0 10px;display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line)}.photo-card strong{font:500 24px var(--serif)}.photo-card span{font-size:11px;color:var(--muted);max-width:180px}
.story-list{display:flex;flex-direction:column;gap:130px}.story{display:grid;grid-template-columns:1.25fr 1fr;gap:7vw;align-items:center}.story.reverse{grid-template-columns:1fr 1.25fr}.story.reverse img{order:2}.story h2{font:400 clamp(42px,5vw,70px)/1 var(--serif);margin:15px 0}.story img{max-height:700px;object-fit:cover}
.manifesto-hero{height:72svh;position:relative;color:#fff}.manifesto-hero img{height:100%;object-fit:cover}.manifesto-hero:after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.35)}.manifesto-hero>div{position:absolute;z-index:1;left:7vw;bottom:9vh}.manifesto-copy{max-width:850px;margin:auto}.manifesto-copy p{font:400 30px/1.45 var(--serif);margin:0 0 34px}.manifesto-copy .dropcap:first-letter{font-size:110px;float:left;line-height:.72;margin:16px 12px 0 0}.manifesto-copy blockquote{font:italic 400 48px/1.2 var(--serif);text-align:center;margin:100px 0 0}.gentle{background:#dfe3d7}.gentle ul{list-style:none;padding:0;margin:40px 0 0;max-width:900px}.gentle li{font:400 clamp(30px,4vw,55px)/1.3 var(--serif);padding:18px 0;border-bottom:1px solid var(--line)}
.print-info,.about-copy{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.print-triptych{display:grid;grid-template-columns:1fr 1fr 1fr;gap:15px}.print-triptych img{height:500px;object-fit:cover}.local-events{max-width:1000px}
.about-copy h2{font:400 clamp(46px,6vw,82px)/1 var(--serif);margin:0}.about-copy blockquote{font:italic 400 34px/1.4 var(--serif);margin:50px 0 0}.wide-image img{height:80svh;object-fit:cover}
.contact-page{padding-top:190px;display:grid;grid-template-columns:1.2fr .8fr;gap:8vw}.contact-intro{grid-column:1}.email-link{font:400 clamp(25px,4vw,48px) var(--serif);border-bottom:1px solid}.contact-photo{grid-column:2;grid-row:1/3}.contact-photo img{height:800px;object-fit:cover}.contact-social{max-width:760px}.contact-social a{display:flex;justify-content:space-between;font:400 30px var(--serif);padding:18px 0;border-bottom:1px solid var(--line)}
.site-footer{background:#262823;color:#f4f0e8;padding:110px 7vw 30px}.footer-invitation{text-align:center}.footer-invitation h2{font:400 clamp(48px,7vw,92px)/1 var(--serif);margin:20px 0 30px}.farewell{font:italic 400 28px var(--serif)}.footer-meta{border-top:1px solid rgba(255,255,255,.2);margin-top:90px;padding-top:25px;display:flex;justify-content:space-between;gap:30px;font-size:10px;letter-spacing:.08em}.social-links{display:flex;gap:22px}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .9s ease,transform .9s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){
 .site-header{padding:18px 20px}.menu-button{display:block}.site-nav{position:fixed;inset:0;background:var(--paper);color:var(--ink);display:flex;flex-direction:column;justify-content:center;align-items:center;font:400 36px var(--serif);transform:translateY(-100%);transition:.45s ease}.site-nav.open{transform:none}.feature-grid,.season,.page-hero,.story,.story.reverse,.print-info,.about-copy,.contact-page{grid-template-columns:1fr}.feature-grid{grid-template-rows:520px 350px 350px}.feature-card.tall{grid-row:auto}.page-hero>div{padding:145px 24px 80px}.page-hero>img{height:65svh}.story.reverse img{order:0}.section-pad{padding:85px 24px}.print-triptych{grid-template-columns:1fr}.print-triptych img{height:420px}.contact-photo{grid-column:auto;grid-row:auto}.contact-photo img{height:550px}.footer-meta{flex-direction:column}.hero-copy{left:24px;right:24px}.hero h1 span+span{margin-left:0}.masonry{columns:1}.photo-card figcaption{display:block}.photo-card span{display:block;margin-top:6px;max-width:none}
}
