/* ONE's day-to-night programme and newsletter. Existing palette and typefaces. */
.today-programme{margin-block:55px 10px;padding:34px;background:var(--panel);border:1px solid var(--line);border-top:3px solid var(--accent)}
.today-heading{display:flex;justify-content:space-between;gap:28px;align-items:flex-end;margin-bottom:28px}
.today-heading h2{font:500 clamp(32px,4.2vw,62px)/1 var(--heading);letter-spacing:-.045em;margin:13px 0 12px}
.today-heading p:not(.eyebrow){font-size:13px;color:var(--muted);line-height:1.6}
.today-heading time{font:11px/1.6 var(--mono);text-transform:uppercase;color:var(--accent);text-align:right}
.today-events{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.today-event{display:grid;grid-template-columns:64px minmax(0,1fr);gap:14px;padding:15px 12px;border:1px solid var(--line);background:var(--bg);transition:border-color .2s}
.today-event img{width:64px;height:auto;aspect-ratio:9/16;object-fit:contain;align-self:start}
.today-event>div{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:9px}
.today-event .meta{font-size:8px;color:var(--muted);line-height:1.7}
.today-event h3{font:500 17px/1.18 var(--heading);letter-spacing:-.025em;overflow-wrap:anywhere}
.today-event .event-room{font-size:9px}
.today-open{font:8px/1.5 var(--mono);text-transform:uppercase;margin-top:auto;color:var(--accent)}
.today-bottom{display:flex;justify-content:flex-end;margin-top:25px}
.today-bottom .text-link{font-size:10px}
.today-empty{grid-column:1/-1;color:var(--muted);font-size:14px;line-height:1.7;padding:18px 0}
.day-to-night .feature-copy{padding-block:65px}.day-to-night .feature-copy h2{font-size:clamp(40px,4.7vw,74px)}
.day-to-night .body-copy{margin-bottom:20px}.day-space-facts{display:flex;gap:25px;border-block:1px solid var(--line);padding:19px 0;margin:24px 0}
.day-space-facts>span{font:500 35px/1 var(--heading);color:var(--accent);display:flex;align-items:center;gap:12px}
.day-space-facts small{font:8px/1.6 var(--mono);max-width:108px;color:var(--muted)}
.ed-service .text-link+.text-link{margin-left:15px}.ed-service .text-link{margin-top:8px}
.ed-space-5{grid-column:1/8}.ed-space-6{grid-column:9/13;padding-top:100px}.ed-space-6 img{aspect-ratio:.78}
.pd-archive-banner{display:flex;justify-content:space-between;gap:38px;align-items:center;border:1px solid var(--pd-line);border-left:4px solid var(--accent);padding:42px;background:#1a1e1b}
.pd-archive-banner h2{font:500 clamp(38px,4.4vw,66px)/.97 var(--heading);letter-spacing:-.04em;margin:17px 0}
.pd-archive-banner p:not(.eyebrow){max-width:490px;color:var(--muted);font-size:14px;line-height:1.7}.pd-archive-banner>.btn{flex-shrink:0}
.newsletter-invite{border-block:1px solid var(--line);padding-block:34px;margin-block:40px 65px;display:flex;align-items:center;justify-content:space-between;gap:25px}
.newsletter-invite p:not(.eyebrow){font:500 clamp(23px,2.5vw,36px)/1.2 var(--heading);letter-spacing:-.03em;margin-top:10px}
.newsletter-invite .btn{flex-shrink:0}
body.newsletter-scroll-locked{position:fixed;width:100%;top:var(--newsletter-scroll);overflow:hidden}
#newsletter-popup{width:min(930px,92vw);max-width:none;max-height:90dvh;inset:0;margin:auto;padding:0;border:1px solid #767e75;background:#161a18;color:var(--paper);overflow-y:auto;overscroll-behavior:contain;box-shadow:0 30px 110px #0007}
#newsletter-popup[open]{display:grid;grid-template-columns:.8fr 1.2fr}
#newsletter-popup::backdrop{background:#05080680;backdrop-filter:blur(3px)}
.newsletter-popup-art{position:relative;overflow:hidden;min-height:100%;isolation:isolate;padding:36px 25px;display:flex;flex-direction:column;justify-content:space-between;background:#252d24;color:var(--accent)}
.newsletter-popup-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;filter:brightness(.45)}
.newsletter-popup-art:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0b1006bc,transparent);z-index:-1}
.newsletter-popup-art>span{font:500 clamp(60px,7vw,102px)/.83 var(--heading);letter-spacing:-.075em;overflow-wrap:anywhere;margin-top:35px}
.newsletter-popup-art small{font:9px/1.6 var(--mono);margin-top:50px;letter-spacing:.08em}
.newsletter-popup-copy{position:relative;padding:76px 36px 30px;min-width:0}
.newsletter-popup-close{position:absolute;top:16px;right:17px;min-height:44px;padding:10px 14px;display:flex;align-items:center;gap:24px;background:var(--accent);color:#111; font:10px/1.5 var(--mono);text-transform:uppercase}
.newsletter-popup-close span{font-size:19px}.newsletter-popup-copy h2{font:500 clamp(35px,4.6vw,58px)/.98 var(--heading);letter-spacing:-.05em;margin:19px 0}
.newsletter-popup-copy>p:not(.eyebrow){font-size:13px;line-height:1.75;color:#c6ccc5}
.newsletter-popup-copy ul{list-style:none;display:flex;flex-wrap:wrap;gap:8px 17px;padding:0;margin:20px 0 25px;font:9px/1.5 var(--mono);color:var(--accent)}
.newsletter-popup-copy li:before{content:'↗ ';}.newsletter-popup-copy form>label.meta{display:block;margin-bottom:9px;font-size:10px}
#newsletter-popup-email{width:100%;min-height:48px;background:#0e1210;border:1px solid #596057;color:var(--paper);padding:12px;font:14px var(--body)}
#newsletter-popup-email:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.newsletter-popup-copy .consent{margin:16px 0;font-size:10px;line-height:1.65;align-items:flex-start}.newsletter-popup-copy .consent input{width:18px;height:18px;min-width:18px;accent-color:var(--accent)}
.newsletter-popup-copy .consent a{text-decoration:underline}.newsletter-popup-copy form>.btn{width:100%;justify-content:space-between;min-height:49px;background:var(--accent);border-color:var(--accent);color:#111;font-size:11px}
.newsletter-popup-status{font-size:10px;line-height:1.5;margin-top:11px;color:var(--muted)}
.newsletter-later{display:block;margin:18px auto 0;min-height:36px;font:10px/1.5 var(--mono);text-decoration:underline;color:#c6ccc5}
@media(min-width:1000px){.programme-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(hover:hover){.today-event:hover{border-color:var(--accent)}.newsletter-popup-close:hover,.newsletter-popup-copy form>.btn:hover{background:var(--paper);border-color:var(--paper)}}
@media(max-width:1100px){.today-events{grid-template-columns:repeat(2,minmax(0,1fr))}.ed-space-5{grid-column:1/7}.ed-space-6{grid-column:8/13}.day-space-facts{flex-direction:column;gap:16px}}
@media(max-width:700px){
 .today-programme{margin-block:30px 0;padding:22px 17px}.today-heading{display:block}.today-heading h2{font-size:35px}.today-heading time{display:block;text-align:left;margin-top:18px;font-size:10px}.today-heading p:not(.eyebrow){font-size:12px}
 .today-events{grid-template-columns:1fr;gap:10px}.today-event{grid-template-columns:67px 1fr;padding:13px}.today-event img{width:67px}.today-event h3{font-size:21px}.today-event .meta{font-size:9px}.today-event .event-room{font-size:10px}.today-open{font-size:9px}
 .day-to-night .feature-copy{padding-block:40px}.day-to-night .feature-copy h2{font-size:49px}.day-space-facts{flex-direction:row;gap:18px}.day-space-facts>span{font-size:30px}.day-space-facts small{font-size:7px;max-width:90px}
 .ed-space-5,.ed-space-6{grid-column:1/7;padding:0}.ed-space-6 img{aspect-ratio:1.1}
 .pd-archive-banner{display:block;padding:27px 22px}.pd-archive-banner h2{font-size:43px}.pd-archive-banner p:not(.eyebrow){font-size:12px}.pd-archive-banner>.btn{margin-top:25px}
 .newsletter-invite{display:block;padding-block:28px;margin-block:28px 45px}.newsletter-invite .btn{margin-top:23px}
 #newsletter-popup{width:94vw;max-height:94dvh}#newsletter-popup[open]{display:block}.newsletter-popup-art{display:none}.newsletter-popup-copy{padding:75px 24px 23px}.newsletter-popup-copy h2{font-size:45px}.newsletter-popup-copy ul{margin-bottom:23px}
 .newsletter-popup-close{position:sticky;top:0;float:right;margin-top:-59px;z-index:1}
}
@media(prefers-reduced-motion:reduce){.today-event{transition:none}}

/* Four spaces and four parts of ONE's home-page offer. */
.day-space-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 24px; }
.day-space-facts small { text-transform:uppercase; }
.home-moments .experience-links { grid-template-columns:repeat(4,minmax(0,1fr)); }
@media(max-width:1100px) { .home-moments .experience-links { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:700px) { .home-moments .experience-links { grid-template-columns:1fr; } .day-space-facts { gap:18px 14px; } }

@media(min-width:701px) {
 .restaurant-services-four { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .restaurant-services-four .ed-service:nth-child(odd) { border-left:0; padding-left:0; }
 .restaurant-services-four .ed-service:nth-child(n+3) { border-top:1px solid var(--ed-line); }
}

/* Preserve touch scrolling without page pinch or double-tap zoom. */
@media(any-pointer:coarse) { html { touch-action:pan-x pan-y; } }
