/* Native Elementor widgets retain the source typography and editable boxes. */
body.pho55-theme{line-height:normal;font-weight:400}
.pho55-theme .elementor-widget:not(:last-child){margin-bottom:0}
.pho55-native{min-width:0}
.pho55-theme .pho55-dish-widget{width:100%;min-width:0}
.pho55-theme .pho55-dish-widget>.elementor-widget-container{padding:0;margin:0}
.pho55-native.elementor-widget-text-editor{font-family:inherit;color:inherit;font-size:inherit;line-height:inherit}
.pho55-native.elementor-widget-heading .elementor-heading-title{color:inherit;font-family:inherit;line-height:inherit}
.pho55-native.elementor-widget-image img{display:block;border-radius:0;box-shadow:none}
.pho55-native.elementor-widget-image{width:100%;text-align:inherit}
.pho55-native .elementor-widget-container{margin:0}
.pho55-theme .pho55-link-widget .elementor-button{font:inherit;line-height:normal;color:inherit;background:transparent;border:0;border-radius:0;padding:0;letter-spacing:inherit;box-shadow:none}
.pho55-theme .pho55-link-widget .elementor-button:hover,.pho55-theme .pho55-link-widget .elementor-button:focus{color:inherit;background:transparent}
.pho55-theme .pho55-link-widget .elementor-button.btn{display:inline-block;margin-top:22px;background:var(--red);color:#fff;padding:16px 28px;text-transform:uppercase;letter-spacing:.08em;font-size:13px;font-family:Georgia,'Times New Roman',serif}
.pho55-theme .pho55-link-widget .elementor-button.outline{background:transparent;border:1px solid #fff}
.pho55-theme .features .pho55-link-widget .elementor-button{color:var(--red);font-size:12px;text-transform:uppercase}
.pho55-theme .e-con.pho55-layout{flex-direction:row}
.pho55-theme .e-con.pho55-layout.wrap{max-width:1440px}
.pho55-theme .e-con.pho55-layout.full-menu{max-width:1440px}
.pho55-theme .e-con.pho55-layout.menu-grid{max-width:1320px}
.pho55-theme .e-con.pho55-layout.menu-heading{max-width:700px}
.pho55-theme .e-con.pho55-layout.editorial-intro{max-width:850px}
.pho55-theme .e-con.pho55-layout.interior-hero-content{max-width:800px}
.pho55-theme .e-con.pho55-layout.blog-grid{max-width:1340px}
.pho55-theme .e-con.pho55-layout.legal-content{max-width:930px}
.pho55-link-widget{width:auto!important}
.pho55-link-widget .elementor-button-content-wrapper{gap:0}
.pho55-theme .dish .dish-price{color:#b92c22;font:700 15px Arial,sans-serif;white-space:nowrap}
.pho55-theme.menu-page .dish .dish-price{font-size:14px}
.pho55-price-widget{flex:0 0 auto;width:auto!important}
.pho55-theme .dish-title>.elementor-widget-heading:not(.pho55-price-widget){width:auto;flex:1}
.pho55-theme .blog-card .elementor-widget-text-editor span{font:11px Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#77963c}
.pho55-theme .blog-card .elementor-widget-text-editor b{font:12px Arial,sans-serif;text-transform:uppercase;color:#b12b20}
.pho55-rule .elementor-divider{padding:0;line-height:0}
.pho55-rule .elementor-divider-separator{margin:0}
.pho55-theme .hero-rule{width:64px;border:0}
.pho55-theme .features .pho55-rule{width:32px}
/* Restore the source spacing lost when a span/heading becomes separate widgets. */
.pho55-theme .features .elementor-widget-divider.pho55-rule{margin-bottom:18px}
/* Keep physical padding and Elementor's logical padding variables in agreement. */
.pho55-theme .reservation>.pho55-layout:not(.reservation-photo){
    --pho55-reservation-inset:55px;
    --padding-top:var(--pho55-reservation-inset);--padding-right:var(--pho55-reservation-inset);
    --padding-bottom:var(--pho55-reservation-inset);--padding-left:var(--pho55-reservation-inset);
    padding:55px;padding:var(--pho55-reservation-inset);min-width:0;
}
@supports(padding:clamp(55px,8vw,120px)){
    .pho55-theme .reservation>.pho55-layout:not(.reservation-photo){--pho55-reservation-inset:clamp(55px,8vw,120px)}
}
.pho55-theme .reservation>.pho55-layout:not(.reservation-photo)>.elementor-widget{max-width:100%;min-width:0}
.pho55-theme .pho55-bg-interior,.pho55-theme .pho55-bg-menu{position:relative;background-image:none}
.pho55-theme .pho55-bg-interior::before,.pho55-theme .pho55-bg-menu::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(1,31,23,.86),rgba(1,31,23,.20));z-index:0}
.pho55-theme .pho55-bg-menu::before{background:linear-gradient(90deg,rgba(2,34,25,.94),rgba(2,34,25,.50))}
.pho55-theme .pho55-bg-interior>*,.pho55-theme .pho55-bg-menu>*{position:relative;z-index:1}
.pho55-theme .pho55-bg-reservation{background-image:none}
.pho55-theme .site-footer>.elementor{width:100%}
.pho55-theme .site-footer .footer-about>.elementor-widget-shortcode:first-child{margin-bottom:16px}
.pho55-theme .site-footer .footer-about .footer-logo{margin:0}
.pho55-theme .site-footer .footer-about .elementor-widget-shortcode a{display:inline-block;vertical-align:top}
.pho55-theme .category-nav .elementor-button{font:inherit;text-transform:inherit;letter-spacing:inherit}
.pho55-theme .category-nav .elementor-button:hover{color:var(--red)}
.pho55-theme .footer-bottom .elementor-widget-text-editor{width:auto}
.pho55-theme .footer-bottom>.pho55-layout{width:auto}
.pho55-theme .e-con.pho55-layout.footer-bottom{max-width:1300px}
.pho55-theme .reservation-contact-actions,.pho55-theme .e-con.pho55-layout.reservation-contact-actions{display:flex;flex-direction:row;flex-wrap:wrap;gap:12px;align-items:center;margin-top:22px}
.pho55-theme .reservation-contact-actions .elementor-button.btn,.pho55-theme .reservation-contact-actions>.btn{margin-top:0;min-width:130px;text-align:center}
.pho55-theme .pho55-contact-link[aria-disabled="true"]{opacity:.65;cursor:not-allowed;pointer-events:none}
.pho55-theme .features .elementor-widget-image,.pho55-theme .features .elementor-widget-image>.elementor-widget-container{height:100%}
.pho55-theme .story-image>.elementor-widget-image,.pho55-theme .story-image>.elementor-widget-image>.elementor-widget-container{height:100%}
.pho55-theme .editorial-photo>.elementor-widget-image,.pho55-theme .editorial-photo>.elementor-widget-image>.elementor-widget-container{height:100%}
.pho55-theme .story-image img{height:100%}
.pho55-theme [hidden]{display:none!important}
.pho55-theme a:focus-visible,.pho55-theme button:focus-visible,.pho55-theme input:focus-visible{outline:2px solid #d3bd87;outline-offset:4px}
.pho55-theme .skip-link{position:absolute;left:16px;top:-80px;background:#fffaf1;color:#073f31;padding:12px 20px;z-index:99999}
.pho55-theme .skip-link:focus{top:10px}
.pho55-theme .skip-link:focus{width:auto;height:auto;clip:auto;clip-path:none;overflow:visible;white-space:normal;margin:0}
.pho55-theme.admin-bar .site-header{top:32px}
.pho55-theme.admin-bar .category-nav{top:32px}
.pho55-theme.dish-detail-page .site-header{background:var(--green)}
.pho55-theme .dish-detail-wrap{padding-top:130px}
.pho55-theme .dish-detail-photo img{height:auto}
.elementor-editor-active .pho55-layout:empty{min-height:20px}
@media(max-width:782px){.pho55-theme.admin-bar .site-header{top:46px}.pho55-theme.admin-bar .category-nav{top:46px}}
@media(max-width:1024px){.pho55-theme .reservation>.pho55-layout:not(.reservation-photo){--pho55-reservation-inset:55px;padding:55px}}
@media(max-width:760px){
    .pho55-theme .reservation>.pho55-layout:not(.reservation-photo){--padding-top:50px;--padding-right:25px;--padding-bottom:50px;--padding-left:25px;padding:50px 25px}
    .pho55-theme .reservation .elementor-widget-heading .elementor-heading-title{font-size:clamp(32px,8.8vw,38px);line-height:1.12;overflow-wrap:normal}
    .pho55-theme .reservation-contact-actions{max-width:100%}
    .pho55-theme .dish-detail-wrap{padding-top:100px}
}
.pho55-theme .menu-page-hero>.elementor-widget-text-editor:last-child p.delivery-hint{font-size:.9rem;opacity:.75}
.pho55-theme .e-con.pho55-layout.delivery-platforms{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;gap:18px;margin:32px auto;max-width:760px}
.pho55-theme .delivery-platforms>.pho55-platform-widget{min-width:240px;flex:1;display:flex;width:auto!important}
.pho55-theme .delivery-platforms .elementor-button.platform-btn{width:100%;box-sizing:border-box;min-width:240px;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;padding:25px 22px;border-radius:14px;text-decoration:none;font:inherit;border:2px solid transparent;transition:transform .2s;box-shadow:none}
.pho55-theme .delivery-platforms .elementor-button.platform-btn.uber{background:#142b20;color:#fff}
.pho55-theme .delivery-platforms .elementor-button.platform-btn.uber:hover,.pho55-theme .delivery-platforms .elementor-button.platform-btn.uber:focus{background:#142b20;color:#fff;transform:translateY(-3px)}
.pho55-theme .delivery-platforms .elementor-button.platform-btn.deliveroo{background:#e5f8f6;color:#087f78;border-color:#00ccbd;opacity:.75;cursor:not-allowed}
.pho55-theme .delivery-platforms a.elementor-button.platform-btn.deliveroo{opacity:1;cursor:pointer}
.pho55-theme .delivery-platforms a.elementor-button.platform-btn.deliveroo:hover,.pho55-theme .delivery-platforms a.elementor-button.platform-btn.deliveroo:focus{background:#e5f8f6;color:#087f78;transform:translateY(-3px)}
@media(max-width:760px){.pho55-theme .story-image img{height:100%}.pho55-theme.admin-bar .category-nav{top:auto}}
@media(prefers-reduced-motion:reduce){.pho55-theme *{scroll-behavior:auto!important}.pho55-theme .slide{transition:none}}
