:root{--green:#2d3d2e;--cream:#f4f0e6;--sage:#b9c3ac;--caramel:#dcb377}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--cream);color:var(--green);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}[hidden]{display:none!important}button:disabled{cursor:default}img{max-width:100%}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}header{position:absolute;z-index:5;top:0;left:0;width:100%;padding:18px 5%;display:flex;align-items:center;justify-content:space-between;gap:30px;color:var(--cream);background:linear-gradient(#14291cf5,#14291c88);border-bottom:1px solid #ffffff30}header>a{display:block;flex-shrink:0}header img{width:280px;height:79px;object-fit:contain;display:block}nav{display:flex;align-items:center;gap:28px;font-size:13px}nav .visit-link{border:1px solid #ffffff80;padding:14px 20px;border-radius:30px}nav span{margin-left:20px}.hero{min-height:780px;height:100svh;max-height:1050px;position:relative;overflow:hidden;background:#253829;color:var(--cream)}.hero-films,.film-layer{position:absolute;inset:0}.film-layer{transition:opacity 1.2s ease;overflow:hidden}.film-layer video{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.coffee-layer{opacity:0;background:#6b523b url('assets/coffee-poster.jpg') center/cover}.mill-layer{opacity:1;background:#334031 url('assets/mill-poster.jpg') center/cover}.hero[data-scene="coffee"] .coffee-layer{opacity:1}.hero[data-scene="coffee"] .mill-layer{opacity:0}.hero-shade{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,#1e302ae6 0%,#1e302a95 32%,#1e302a08 72%),linear-gradient(0deg,#152a20df 0%,transparent 65%);opacity:1;transition:opacity 1.15s}.hero[data-scene="coffee"] .hero-shade{opacity:.10}.hero-copy{position:absolute;z-index:2;left:7%;bottom:135px;max-width:540px;width:44%;opacity:1;transform:none;transition:opacity 1.1s ease,transform 1.1s ease}.hero[data-scene="coffee"] .hero-copy{opacity:0;transform:translateY(20px);pointer-events:none}.eyebrow{font-size:10px;letter-spacing:2.7px;font-weight:600;line-height:1.7}h1{margin:22px 0 26px}h1 img{display:block;width:100%;height:auto}.hero-tagline,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-1.8px;line-height:1.07;margin:22px 0}.hero-tagline{font-size:clamp(32px,3.3vw,52px)}h2{font-size:clamp(40px,4.1vw,66px)}em{font-weight:400;color:var(--caramel)}.intro{font-size:15px;line-height:1.7;color:#e6e6d5;margin:20px 0}.button{display:inline-flex;align-items:center;gap:35px;background:var(--cream);color:var(--green);padding:17px 26px;border-radius:40px;font-size:13px}.hero-bottom{position:absolute;bottom:24px;left:5%;right:5%;display:flex;justify-content:space-between;align-items:center;gap:20px;z-index:4;font-size:9px;letter-spacing:1.5px;text-shadow:0 1px 8px #142318}.motion-buttons{display:flex;gap:9px}.hero-bottom button,.skip{background:#1d2f2590;border:1px solid #ffffff60;color:var(--cream);font-size:10px;letter-spacing:.7px;border-radius:30px;padding:11px 15px;backdrop-filter:blur(10px)}.skip{position:absolute;top:137px;right:5%;z-index:5}.hero:not([data-scene="coffee"]) .skip{display:none}.film-caption{position:absolute;z-index:2;left:0;right:0;bottom:115px;text-align:center;opacity:0;transform:translateY(8px);transition:opacity .8s,transform .8s;pointer-events:none}.hero[data-scene="coffee"] .film-caption{opacity:1;transform:none}.film-caption span{font-size:10px;letter-spacing:2.8px;color:#fffaf2;background:#20302570;backdrop-filter:blur(12px);padding:12px 18px;border-radius:30px}.play-entrance{position:absolute;z-index:5;right:6%;bottom:100px;background:var(--cream);color:var(--green);border:0;border-radius:30px;padding:15px 22px;font-size:12px}.ribbon{display:flex;justify-content:space-around;align-items:center;background:var(--sage);padding:22px 4%;font-size:10px;letter-spacing:1.8px;gap:20px}.ribbon i{font-style:normal;font-size:20px}.section{padding:105px 8%}.inside{background:#f4f0e6}.inside-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:7%;align-items:center}.inside-film-wrap{position:relative;aspect-ratio:9/16;max-height:780px;overflow:hidden;background:#27372b;box-shadow:0 25px 55px #1f331820}.inside-film-wrap video{display:block;width:100%;height:100%;object-fit:cover}.real-film-label{position:absolute;top:22px;left:0;right:0;text-align:center;font-size:8px;letter-spacing:1.8px;color:white;text-shadow:0 1px 10px #000}.inside-toggle{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);background:#f4f0e6ee;color:var(--green);border:0;border-radius:30px;padding:13px 20px;font-size:11px;white-space:nowrap}.inside-copy h2{font-size:clamp(36px,3.6vw,58px)}.inside-copy h2 em,.menu h2 em,.story h2 em{color:#7d8668}.inside-intro{font-size:14px;line-height:1.9;max-width:470px}.inside-details{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:32px}.inside-details figure{margin:0}.inside-details img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block}.inside-details figcaption{padding-top:15px}.inside-details span{display:block;font-size:8px;letter-spacing:1.1px}.inside-details strong{display:block;margin-top:8px;font-family:Georgia,serif;font-size:21px;font-weight:400}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:45px}.section-heading>p{font-size:14px;line-height:1.8;max-width:250px;margin-bottom:25px}.menu{background:#e9e9dd}.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.photo{aspect-ratio:4/5;overflow:hidden;background:#d7d8c7}.photo img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.menu-card:hover img{transform:scale(1.045)}.card-line{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #2d3d2e40;padding:12px 0}h3{font-family:Georgia,serif;font-size:23px;font-weight:400;margin:10px 0}.menu-card p{font-size:12px;line-height:1.6}.text-link{display:inline-block;margin-top:30px;font-size:13px;border-bottom:1px solid;padding-bottom:8px}.story{display:grid;grid-template-columns:1fr 1fr;gap:9%;background:var(--cream);align-items:center}.owner-photo{position:relative}.owner-photo img{width:100%;height:620px;object-fit:cover;object-position:center}.owner-photo span{position:absolute;bottom:25px;left:25px;background:var(--cream);padding:15px 20px;font-size:9px;letter-spacing:2px}.story-copy p:not(.eyebrow){font-size:15px;line-height:1.85;max-width:410px}.visit{display:grid;grid-template-columns:1fr 1fr;background:var(--green);color:var(--cream)}.visit>img{width:100%;height:810px;object-fit:cover;object-position:center}.visit-copy{padding:90px 12%;align-self:center}.visit-copy p:not(.eyebrow){line-height:1.9;font-size:15px;margin:30px 0}.visit-detail{color:#cbd3c4}.visit-copy strong{font-weight:400;color:var(--caramel)}footer{background:#223124;color:var(--cream);padding:45px 8%;display:flex;justify-content:space-between;align-items:center;gap:30px}footer img{width:240px}footer a{font-size:13px}footer span{font-size:10px;line-height:1.7;color:#c4cabb}a:focus-visible,button:focus-visible{outline:2px solid var(--caramel);outline-offset:5px}
@media(max-width:1050px){nav{gap:18px}header img{width:245px;height:69px}.hero-copy{max-width:460px}.inside-layout{gap:5%}.inside-details{gap:14px}.inside-details strong{font-size:18px}.hero-bottom>a{display:none}}
@media(max-width:760px){header{padding:15px 6%;gap:12px;background:#253929f5}header img{width:min(62vw,250px);height:auto}nav{gap:0}nav>a:not(.visit-link){display:none}nav .visit-link{padding:10px 13px;font-size:10px;white-space:nowrap}nav span{margin-left:5px}.hero{min-height:840px;max-height:960px;height:100svh}.mill-layer{inset:108px 0 auto;height:360px;max-height:45svh}.film-layer video{object-fit:cover;object-position:center}.coffee-layer video{object-fit:cover;object-position:center}.mill-layer video{object-position:50% center}.hero-shade{background:linear-gradient(0deg,#253829 0%,#253829 24%,#25382999 40%,transparent 67%)}.hero[data-scene="coffee"] .hero-shade{opacity:.1}.hero-copy{top:auto;bottom:115px;left:7%;right:7%;width:auto;max-width:none}h1{margin:15px 0 16px;max-width:350px}h1 img{width:100%}.hero-copy>.eyebrow{font-size:8px;letter-spacing:1.7px}.hero-tagline{font-size:31px;letter-spacing:-1px;margin:15px 0}.intro{margin:15px 0;font-size:13px}.button{padding:14px 23px;font-size:12px}.hero-bottom{left:7%;right:7%;bottom:22px;align-items:flex-end;font-size:8px;line-height:1.7;gap:12px}.hero-bottom>span{max-width:115px}.motion-buttons{flex-direction:column;align-items:stretch;gap:6px}.hero-bottom button{font-size:9px;letter-spacing:.3px;padding:9px 13px;white-space:nowrap}.film-caption{bottom:115px}.film-caption span{font-size:8px;letter-spacing:1.5px}.skip{top:123px}.play-entrance{top:123px;bottom:auto;right:7%;padding:12px 18px}.ribbon{flex-wrap:wrap;font-size:8px;gap:12px;padding:20px}.ribbon i{display:none}.section{padding:65px 7%}.inside-layout{display:flex;flex-direction:column;gap:34px}.inside-copy{display:contents}.inside-copy>.eyebrow{order:0;margin-bottom:-23px;align-self:flex-start}.inside-copy>h2{order:1;align-self:flex-start;margin:0;font-size:40px}.inside-intro{order:2;margin:0;font-size:14px}.inside-film-wrap{order:3;width:100%;aspect-ratio:9/14;max-height:none}.inside-film-wrap video{object-fit:cover}.inside-details{order:4;width:100%;margin:0;gap:15px}.inside-details strong{font-size:18px}.inside-copy>.text-link{order:5;align-self:flex-start;margin:0}.section-heading{display:block;margin-bottom:30px}.section-heading>p{max-width:100%;font-size:13px}h2{font-size:40px}.menu-grid{grid-template-columns:1fr;gap:30px}.photo{aspect-ratio:1/1}.menu-card h3{font-size:26px}.story{grid-template-columns:1fr;gap:35px}.owner-photo img{height:auto}.visit{grid-template-columns:1fr}.visit>img{height:600px}.visit-copy{padding:60px 7%}footer{padding:35px 7%;flex-wrap:wrap}footer img{width:220px}footer span{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Keep the original full-screen coffee entrance; later scenes retain their new layout. */
body:has(.hero[data-scene="coffee"]) header{background:linear-gradient(#15271d80,transparent)}

/* Frame the supplied Instagram photograph; its controls stay below the image window. */
.photo--instagram{position:relative}
.photo--instagram img{position:absolute;top:50%;left:-2%;width:104%;max-width:none;height:auto;margin-top:-65%;transform-origin:50% 43.16%}
.inside-details .barista-detail{object-position:center 65%}

/* Selected media is already framed without social overlays; keep its full composition. */
.inside-film-wrap{aspect-ratio:4/5}
.inside-details--people{display:block}
.inside-details--people img{aspect-ratio:18/13;height:auto;object-fit:contain}
.menu-grid{row-gap:38px}
