
.welcome[hidden],.welcome [hidden]{display:none!important}.welcome{position:fixed;inset:0;z-index:1000;background:#102c21;color:#fff;overflow:auto;isolation:isolate}.welcome-backdrop{position:fixed;inset:-35px;background:linear-gradient(#102c2155,#102c21bb),url('assets/welcome-poster.jpg') center/cover;filter:blur(24px);z-index:-2}.welcome:after{content:"";position:fixed;inset:0;background:linear-gradient(180deg,#102c2166,transparent 40%,#102c21dd);pointer-events:none;z-index:-1}.welcome-top{position:absolute;top:0;left:0;right:0;z-index:2;padding:26px 32px;display:flex;align-items:center;justify-content:space-between;gap:20px}.welcome-logo{width:156px;filter:grayscale(1) invert(1) brightness(3);mix-blend-mode:screen}.welcome button{font:inherit;cursor:pointer}.welcome-skip,.welcome-play{border:1px solid #ffffff66;background:#12382980;color:white;border-radius:100px;padding:12px 20px;backdrop-filter:blur(12px)}.welcome-film{height:100svh;display:flex;justify-content:center;position:relative}.welcome-film video{height:100%;width:100%;object-fit:contain}.welcome-caption{position:absolute;bottom:max(48px,env(safe-area-inset-bottom));left:24px;right:24px;text-align:center;text-shadow:0 2px 20px #000}.welcome-caption p{font-size:11px;letter-spacing:.22em;text-transform:uppercase;margin:0 0 12px}.welcome-caption h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(32px,5vw,56px);margin:0}.welcome-progress{position:absolute;bottom:0;left:0;height:3px;background:#bce354;width:0;transition:width .2s linear}.welcome-play{position:absolute;top:45%;left:50%;transform:translateX(-50%);white-space:nowrap}.welcome-choices{max-width:820px;margin:auto;padding:128px 28px 38px;min-height:100svh;display:flex;flex-direction:column;justify-content:center}.welcome-choices .eyebrow{color:#cee998;font-size:11px;margin-bottom:14px}.welcome-choices h1{font-family:Georgia,serif;font-size:clamp(38px,6vw,64px);font-weight:400;line-height:1.08;margin:0 0 30px}.welcome-links{display:grid;grid-template-columns:1fr 1fr;gap:10px}.welcome-links a{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:70px;border:1px solid #ffffff33;padding:20px;color:#fff;text-decoration:none;background:#173d2fd9;border-radius:4px;font-size:16px}.welcome-links a:first-child{grid-column:1/-1;background:#c7ec69;color:#163b2b;border-color:#c7ec69;min-height:86px;font-size:22px}.welcome-links a:hover{background:#345b40}.welcome-links a:first-child:hover{background:#d7f38e}.welcome-links a:focus-visible,.welcome button:focus-visible{outline:3px solid white;outline-offset:4px}.welcome-address{font-size:12px;letter-spacing:.04em;color:#d6dfd2;margin:25px 0 0}.welcome-replay{background:none;border:0;color:#e6eddf;text-decoration:underline;text-underline-offset:5px;padding:16px 0;align-self:flex-start;font-size:13px!important}.welcome-open{overflow:hidden}.menu-booking{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:24px 0;padding:18px 20px;background:#e9eedf;border:1px solid #cbd6bf;color:#173c2b}.menu-booking a{font-weight:700;white-space:nowrap}.menu-booking p{margin:0;font-size:14px}@media(max-width:600px){.welcome-top{padding:22px 20px}.welcome-logo{width:125px}.welcome-skip{font-size:12px!important;padding:10px 14px}.welcome-choices{padding:110px 20px 28px;justify-content:flex-start}.welcome-choices h1{margin-bottom:25px}.welcome-links{gap:9px}.welcome-links a{padding:16px 13px;min-height:67px;font-size:15px}.welcome-links a:first-child{font-size:21px;min-height:82px}.menu-booking{align-items:flex-start;flex-direction:column;gap:10px}.welcome-film video{object-fit:cover}.welcome-caption{bottom:55px}}@media(prefers-reduced-motion:reduce){.welcome-progress{transition:none}}

.welcome-logo{filter:url(#welcome-logo-white);mix-blend-mode:normal}

.welcome-sound{position:absolute;top:105px;right:24px;z-index:3;border:1px solid #ffffff80;background:#123829aa;color:white;border-radius:100px;padding:12px 18px;backdrop-filter:blur(12px);font-size:13px!important}.welcome-sound[aria-pressed="true"]{background:#c7ec69;color:#163b2b;border-color:#c7ec69}@media(max-width:600px){.welcome-sound{top:92px;right:20px}}

.cocof-wordmark{display:inline-flex;flex-direction:column;align-items:flex-start;line-height:.85;letter-spacing:.025em;font-family:Georgia,serif;font-size:32px;font-weight:900;color:#c7ec69;white-space:nowrap}.cocof-wordmark small{font:700 7px/1.5 Arial,sans-serif;letter-spacing:.22em;color:#e4f2cb;margin-top:7px}.brand-logo .cocof-wordmark{font-size:37px}.welcome-logo{width:auto;filter:none;mix-blend-mode:normal}.welcome-film{background:#143829}.welcome-film video{position:relative;z-index:1;object-fit:contain;background:#143829}.welcome-film .welcome-caption,.welcome-film .welcome-progress,.welcome-film .welcome-play,.welcome-film .welcome-sound{z-index:2}.welcome-film .welcome-caption{pointer-events:none}.welcome-play{white-space:normal;max-width:260px;min-width:180px;text-align:center;z-index:4!important}.welcome .welcome-backdrop{opacity:.35}.section-back{display:none;position:sticky;top:0;z-index:101;width:100%;padding:15px 20px;border:0;background:#153e2d;color:#fff;text-align:left;font:700 15px Arial,sans-serif;cursor:pointer}body[data-section] .section-back{display:block}body[data-section] header,body[data-section] footer,body[data-section] .quick,body[data-section] main > *{display:none!important}body[data-section="about"] main > #about,body[data-section="food"] main > #food,body[data-section="dessert"] main > #dessert,body[data-section="wines"] main > #wines,body[data-section="terrace"] main > #terrace,body[data-section="events"] main > #events,body[data-section="contact"] main > #contact{display:block!important}body[data-section] main{min-height:100svh}body[data-section] .section-back[hidden]{display:none}@media(max-width:600px){.welcome-film video{object-fit:cover}.brand-logo .cocof-wordmark{font-size:27px}}

/* Keep the film and choices on the same viewport to prevent Safari scroll anchoring after playback. */
.welcome{overflow:hidden;overflow-anchor:none}.welcome-film,.welcome-choices{position:absolute;inset:0;width:100%;height:100%;box-sizing:border-box}.welcome-choices{min-height:0;overflow-y:auto;overscroll-behavior:contain;overflow-anchor:none}.welcome-film{overflow:hidden}
