.restaurant-page{background:#cfd3d4;color:#17191a}
.restaurant-page .header{background:#cfd3d4;color:#17191a;border-color:#17191a24}
.restaurant-page .header nav a[aria-current="page"],.restaurant-page .header nav a:hover{color:#ff2525}
.restaurant-hero{position:relative;min-height:calc(100svh - 176px);overflow:hidden;background:#17191a;color:#fff;isolation:isolate}
.restaurant-hero-video,.restaurant-hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.restaurant-hero-video{z-index:-3}
.restaurant-hero-shade{z-index:-2;background:linear-gradient(90deg,#050505d9 0%,#1118 48%,transparent 82%),linear-gradient(0deg,#000b 0%,transparent 45%,#0004 100%)}
.restaurant-hero-copy{min-height:calc(100svh - 176px);padding:11svh 7% 15svh;display:flex;flex-direction:column;justify-content:center;max-width:980px}
.restaurant-hero-copy .eyebrow{color:#fff;margin-bottom:28px}
.restaurant-hero-copy h1{font-size:clamp(58px,8.8vw,138px);font-weight:400;letter-spacing:-.065em;line-height:.9;margin:0}
.restaurant-hero-copy h1 em{color:#ff2525}
.restaurant-hero-copy>p:last-child{max-width:590px;font-size:clamp(18px,1.6vw,24px);line-height:1.55;margin:36px 0 0}
.restaurant-hero-foot{position:absolute;left:7%;right:7%;bottom:35px;display:flex;justify-content:space-between;gap:30px;font-size:12px;letter-spacing:.16em}
.restaurant-hero-foot a{border-bottom:1px solid #fff;padding-bottom:7px}
.restaurant-motion{position:absolute;right:7%;top:28px;border:1px solid #ffffff70;background:#17191ab3;color:#fff;border-radius:30px;padding:10px 16px;cursor:pointer}
.restaurant-intro{padding:120px 7% 110px;display:grid;grid-template-columns:1fr 1fr;gap:45px 8%}
.restaurant-intro h2{max-width:720px;font-size:clamp(52px,6.4vw,98px)}
.restaurant-intro-copy{padding-top:45px;max-width:650px}
.restaurant-intro-copy p{font-size:18px}
.restaurant-intro-copy .restaurant-lead{font-size:clamp(23px,2.3vw,35px);line-height:1.35;margin-top:0}
.restaurant-principles{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #17191a;margin-top:55px}
.restaurant-principles article{padding:25px 25px 0 0;border-right:1px solid #17191a2b}
.restaurant-principles article+article{padding-left:25px}
.restaurant-principles article:last-child{border-right:0}
.restaurant-principles span,.process-number,.process-kicker{color:#ff2525;font-size:12px;letter-spacing:.14em}
.restaurant-principles h3{font-size:31px;margin:35px 0 10px}
.restaurant-principles p{margin:0;max-width:300px}
.restaurant-wide-media{margin:0;background:#17191a;color:#fff;padding:5vw}
.restaurant-wide-media img{display:block;width:100%;height:min(78svh,900px);object-fit:cover}
.restaurant-wide-media figcaption,.process-video figcaption{color:#fff;display:flex;justify-content:space-between;margin:14px 0 0;font-size:12px;letter-spacing:.08em}
.restaurant-process{position:relative;padding:125px 7%;background:#292b2c;color:#fff;display:grid;grid-template-columns:minmax(270px,.75fr) minmax(0,1.7fr);gap:8%}
.process-heading{position:sticky;top:30px;align-self:start}
.process-heading h2{font-size:clamp(57px,7vw,105px);line-height:.92}
.process-heading h2 em{color:#ff2525}
.process-heading>p:not(.eyebrow){max-width:410px;font-size:17px;color:#d8dbdc;margin-top:30px}
.process-line{height:2px;background:#ffffff28;margin-top:45px;overflow:hidden}
.process-line span{display:block;width:100%;height:100%;background:#ff2525;transform-origin:left;animation:process-progress linear both;animation-timeline:scroll();transform:scaleX(0)}
.process-flow{min-width:0}
.process-step{display:grid;grid-template-columns:55px minmax(190px,.8fr) minmax(250px,1.2fr);gap:25px;border-top:1px solid #ffffff3b;padding:35px 0 55px}
.process-step h3{font-size:clamp(26px,3vw,45px);line-height:1.05;margin:13px 0 0}
.process-step>div:last-child p{font-size:16px;color:#d8dbdc;margin:0}
.process-step small{display:block;margin-top:22px;color:#fff;font-size:12px;letter-spacing:.11em}
.process-media,.process-video{margin:10px 0 75px}
.process-media img,.process-video video{display:block;width:100%;object-fit:cover}
.process-media-pair{display:grid;grid-template-columns:1fr .72fr;gap:14px}
.process-media-pair img{height:420px}
.process-media-pair img:last-of-type{margin-top:75px}
.process-media figcaption{grid-column:1/-1;color:#aaa;font-size:12px;margin-top:2px}
.process-video video{height:min(62svh,670px);background:#181a1b}
.process-media-wide img{height:min(70svh,720px)}
.restaurant-experience{padding:120px 7%;display:grid;grid-template-columns:1.1fr .9fr;gap:35px 4%;align-items:start}
.experience-copy{grid-column:1/-1;display:grid;grid-template-columns:1.15fr .85fr;gap:7%;align-items:end;margin-bottom:35px}
.experience-copy .eyebrow{grid-column:1/-1}
.experience-copy h2{font-size:clamp(48px,6vw,94px)}
.experience-copy p:last-child{font-size:20px;max-width:470px;margin:0 0 10px}
.restaurant-experience figure{margin:0}
.restaurant-experience img{display:block;width:100%;height:100%;object-fit:cover}
.experience-main{height:70svh}
.experience-side{height:48svh;margin-top:16svh!important}
.restaurant-film{position:relative;height:86svh;min-height:560px;background:#17191a;color:#fff;overflow:hidden}
.restaurant-film video{width:100%;height:100%;object-fit:cover;display:block}
.restaurant-film:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#000b,transparent 70%)}
.restaurant-film>div{position:absolute;z-index:2;left:7%;top:50%;transform:translateY(-50%)}
.restaurant-film h2{font-size:clamp(52px,7vw,108px);line-height:.95}
.restaurant-film h2 em{color:#ff2525}
.restaurant-contact{padding:110px 7%;display:grid;grid-template-columns:1.2fr .8fr;gap:8%;align-items:end}
.restaurant-contact h2{font-size:clamp(52px,6vw,92px)}
.restaurant-contact>div:last-child p{font-size:20px;margin:0 0 35px}
.restaurant-contact a{font-size:18px;display:inline-flex;justify-content:space-between;gap:70px;border-bottom:2px solid #ff2525;padding:10px 0}
.restaurant-contact a span{color:#ff2525;font-size:28px}
.restaurant-page .service-next{background:#17191a;color:#fff}
.restaurant-page .service-next a{color:#ff2525}
@keyframes process-progress{to{transform:scaleX(1)}}
@supports(animation-timeline:view()){
 @media(prefers-reduced-motion:no-preference){
  .process-step,.process-media,.process-video,.experience-main,.experience-side{animation:restaurant-reveal linear both;animation-timeline:view();animation-range:entry 5% entry 75%}
  @keyframes restaurant-reveal{from{opacity:.12;transform:translateY(65px)}to{opacity:1;transform:translateY(0)}}
 }
}
@media(max-width:900px){
 .restaurant-hero{min-height:calc(100svh - 142px)}.restaurant-hero-copy{min-height:calc(100svh - 142px)}
 .restaurant-process{grid-template-columns:1fr}.process-heading{position:relative;top:auto;margin-bottom:40px}.process-line{display:none}
 .process-step{grid-template-columns:40px .8fr 1.2fr}
}
@media(max-width:700px){
 .restaurant-page .header{position:relative}.restaurant-hero{min-height:78svh}.restaurant-hero-copy{min-height:78svh;padding:80px 7% 130px}
 .restaurant-hero-copy h1{font-size:14vw}.restaurant-hero-copy>p:last-child{font-size:17px;margin-top:25px}
 .restaurant-hero-foot{bottom:25px;flex-direction:column;gap:12px}.restaurant-motion{top:18px}
 .restaurant-intro{padding:75px 7%;display:block}.restaurant-intro h2{font-size:52px}.restaurant-intro-copy{padding-top:28px}
 .restaurant-principles{grid-template-columns:1fr;margin-top:45px}.restaurant-principles article,.restaurant-principles article+article{padding:22px 0;border-right:0;border-bottom:1px solid #17191a2b}.restaurant-principles h3{margin:17px 0 7px}
 .restaurant-wide-media{padding:0}.restaurant-wide-media img{height:60svh}.restaurant-wide-media figcaption{padding:0 7%;flex-direction:column;gap:7px}
 .restaurant-process{padding:75px 7%}.process-heading h2{font-size:58px}.process-step{grid-template-columns:30px 1fr;padding:28px 0 42px}.process-step>div:last-child{grid-column:2}.process-step h3{font-size:30px}
 .process-media-pair{grid-template-columns:1fr}.process-media-pair img{height:42svh}.process-media-pair img:last-of-type{margin-top:0}.process-video video,.process-media-wide img{height:52svh}
 .restaurant-experience{padding:75px 7%;display:block}.experience-copy{display:block}.experience-copy h2{font-size:50px}.experience-copy p:last-child{font-size:18px;margin:25px 0 35px}
 .experience-main{height:55svh}.experience-side{height:42svh;margin-top:18px!important}
 .restaurant-film{height:72svh;min-height:500px}.restaurant-film>div{right:7%}.restaurant-film h2{font-size:13vw}
 .restaurant-contact{padding:75px 7%;display:block}.restaurant-contact h2{font-size:50px}.restaurant-contact>div:last-child{margin-top:35px}.restaurant-contact>div:last-child p{font-size:18px}
}
@media(prefers-reduced-motion:reduce){.process-line span{transform:scaleX(1);animation:none}}

