/* Shared public site chrome and hero: keep these rules after page-specific CSS. */
.header .nav a,.header .nav-cta,.mobile-menu>a,.mobile-menu>button,.footer-nav a,.footer-bottom>a{text-transform:uppercase;letter-spacing:.09em}.header .nav{gap:clamp(17px,2.3vw,30px);font-size:11px}.header .nav-cta{font-size:10px}.header .nav a[aria-current=page]:after{transform:scaleX(1)}.mobile-menu>a{font-family:var(--sans);font-weight:500;font-style:normal;font-size:clamp(14px,2vw,18px);letter-spacing:.08em}.mobile-menu-contact{margin-top:15px!important;color:var(--accent)}.footer .footer-nav{flex-wrap:wrap}.footer .footer-nav a{font-size:10px}.site-account-actions{text-align:center}.site-account-actions:has([hidden]){display:none}
body .site-hero{position:relative;isolation:isolate;display:grid;place-items:center;margin:0 24px;min-height:660px;height:auto;max-height:none;border-radius:30px;overflow:hidden;padding:90px 28px 110px;background:#594939;color:#fff8ee;text-align:center}
body .site-hero>img,body .site-hero>.site-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-3}
body .site-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#29241d48,#29241d70 55%,#29241d8a);z-index:-1;pointer-events:none}
body .site-hero .hero-copy,body .site-hero .landing-hero-content,body .site-hero .site-hero-content{position:relative;inset:auto;width:100%;max-width:960px;display:flex;flex-direction:column;align-items:center;justify-content:center;height:auto;min-height:0;padding:0;text-align:center}
body .site-hero h1{font:400 clamp(52px,6.5vw,94px)/1.02 var(--serif);letter-spacing:-.035em;margin:23px auto;max-width:100%;text-wrap:balance;color:#fff8ee;overflow-wrap:break-word}
body .site-hero h1 em{display:inline;font-weight:400;color:#f4e0c5;margin:0}
body .site-hero .eyebrow,body .site-hero .hero-kicker{color:#fff3e5;font:500 10px/1.7 var(--sans);letter-spacing:.15em;margin:0;padding:0;background:none;border:0}
body .site-hero .hero-copy>p:not(.hero-kicker),body .site-hero .landing-hero-content>p:not(.eyebrow),body .site-hero .site-hero-content>p:not(.eyebrow){font:400 15px/1.8 var(--sans);color:#fff9ef;max-width:620px;margin:0 auto}
body .site-hero .hero-actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:28px}
body .site-hero .hero-actions .button{font-size:12px;min-height:50px;padding:14px 25px;line-height:1.5;border-radius:100px}
body .site-hero .landing-breadcrumb{margin:0 0 25px;font:400 10px/1.5 var(--sans);color:#f4e8d8;letter-spacing:.04em}
body .site-hero .hero-top{display:none}body .site-hero .hero-media{inset:0}body .site-hero .hero-shade{display:none}
body .site-hero .hero-bottom{bottom:22px;left:30px;right:30px}body .site-hero .landing-video-controls{bottom:22px;left:30px;right:30px}
body .site-hero.planner-hero{touch-action:pan-y;padding-bottom:110px}
body .site-hero .planner-hero-slides{z-index:-3}body .site-hero .planner-hero-shade{display:none}
body .site-hero .planner-hero-slides picture{position:absolute;inset:0;display:block}body .site-hero .planner-hero-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
body .site-hero .site-hero-content>small{font-size:10px;color:#f3e8d7;margin-top:17px}
body .site-hero .planner-hero-bottom{bottom:22px;left:30px;right:30px}body .site-hero .planner-hero-bottom p{font-size:10px}
body .site-hero .planner-slide-arrow,body .site-hero .planner-slide-pause{width:40px;height:40px}
.journal-grid{padding-top:65px}.journal-article-body-wrap{max-width:1000px;margin:auto;padding:0 25px 65px}.journal-article-body-wrap .article-byline{margin:30px auto;max-width:690px}.journal-article-body-wrap .article-cover{max-width:690px;margin:20px auto}.journal-article-body-wrap .article-cover figcaption{text-align:center}.journal-article-body-wrap .article-body{margin-top:30px}.site-hero .article-byline{color:inherit}
.footer-instagram{max-width:1140px;margin:0 auto 55px;padding:0 0 55px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:center;text-align:left}.footer-instagram h2{font-size:clamp(42px,4.6vw,64px);margin:18px 0;line-height:1.05}.footer-instagram-copy>p:not(.eyebrow){max-width:400px;font-size:13px;color:var(--muted);line-height:1.8}.instagram-handle{display:flex;align-items:center;gap:10px;font-size:13px;margin:22px 0}.instagram-handle svg{width:22px;height:22px}.footer-instagram .button{font-size:12px}.instagram-preview{min-height:290px;padding:32px 26px;background:#efe9de;border:1px solid #dfd5c5;border-radius:24px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:18px}.instagram-preview-icon{font:55px/1 var(--serif);color:var(--accent)}.instagram-preview>p{font:28px/1.2 var(--serif)}.instagram-preview small{font-size:10px;max-width:290px;line-height:1.7;color:var(--muted)}.instagram-preview small a{text-decoration:underline}.instagram-preview.is-loaded{padding:0;gap:0;overflow:hidden}.instagram-profile-frame{display:block;border:0;width:100%;height:480px;background:#fff}.instagram-fallback{display:block;font-size:10px;line-height:1.6;padding:12px 18px;background:var(--paper);width:100%}.footer-instagram :focus-visible{outline:2px solid var(--sage);outline-offset:5px}
@media(max-width:1000px){.footer-instagram{gap:35px}}
@media(max-width:760px){body .site-hero{margin:0 10px;border-radius:24px;min-height:560px;padding:65px 22px 95px}body .site-hero h1{font-size:clamp(42px,10.7vw,64px);line-height:1.04;margin:22px auto}body .site-hero .hero-copy>p:not(.hero-kicker),body .site-hero .landing-hero-content>p:not(.eyebrow),body .site-hero .site-hero-content>p:not(.eyebrow){font-size:13px;line-height:1.8}body .site-hero .hero-actions{gap:10px;margin-top:24px;width:100%}body .site-hero .hero-actions .button{font-size:11px;padding:13px 18px;min-height:48px}body .site-hero .eyebrow,body .site-hero .hero-kicker{font-size:9px;letter-spacing:.12em}body .site-hero .landing-breadcrumb{font-size:9px;margin-bottom:22px}body .site-hero.planner-hero{padding-bottom:125px}body .site-hero .planner-hero-bottom{bottom:18px;left:18px;right:18px;gap:8px}body .site-hero .hero-bottom{left:20px;right:20px}body .site-hero.landing-hero-film{padding-bottom:125px!important}body .site-hero .landing-video-controls{left:20px;right:20px;bottom:18px}.footer-instagram{grid-template-columns:1fr;gap:28px;text-align:center;margin-bottom:40px;padding-bottom:40px}.footer-instagram-copy>p:not(.eyebrow){margin-inline:auto}.instagram-handle{justify-content:center}.instagram-preview{max-width:450px;width:100%;margin:auto}.footer-instagram h2{font-size:46px}.header .nav-cta{font-size:9px}.footer .footer-nav{gap:17px}.journal-grid{padding-top:40px}}

.photo-grid-extension{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin-top:17px}.photo-grid-extension .photo-tile{width:100%;aspect-ratio:3/2;min-height:0}.photo-grid-extension img{width:100%;height:100%;object-fit:cover}.photo-grid-extension .reference-caption{font-size:12px}
@media(max-width:760px){.photo-grid-extension{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px}.photo-grid-extension .photo-tile{aspect-ratio:4/5}.photo-grid-extension .reference-caption{font-size:10px;padding:14px 10px}}

.instagram-close{width:100%;padding:10px;background:var(--paper);border:0;border-top:1px solid var(--line);font:11px var(--sans);color:var(--muted)}
/* Stories reach the viewport edges, with the selected collection centered. */
.home-stories.section{width:100%;max-width:none;padding-inline:0;overflow:hidden}.home-stories .story-collections-heading{padding-inline:24px}.home-stories .story-collection-grid{position:relative;gap:24px;padding:8px max(20px,calc((100% - min(62vw,780px))/2)) 20px;scroll-padding-inline:0;overscroll-behavior-x:contain}.home-stories .story-card{flex:0 0 min(62vw,780px);scroll-snap-align:center;opacity:.62;transform:scale(.94);transition:opacity .3s,transform .3s}.home-stories .story-card.is-current{opacity:1;transform:scale(1)}.home-stories .story-cover{aspect-ratio:3/2}.home-stories .story-info{padding-inline:8px}
@media(max-width:760px){.home-stories .story-card{flex-basis:84vw}.home-stories .story-collection-grid{gap:16px;padding-inline:8vw}.home-stories .story-info b{font-size:29px}}
@media(prefers-reduced-motion:reduce){.home-stories .story-card{transition:none}}
