:root{--wine:#6e1f2a;--green:#24543d;--cream:#f5f0e7;--ink:#22201e;--paper:#fffdf9;--gold:#b7905b}*{box-sizing:border-box}html{scroll-behavior:smooth}body.dluca-site{margin:0;background:var(--paper);color:var(--ink);font-family:Montserrat,Arial,sans-serif}.dluca-site a{text-decoration:none;color:inherit}.dl-header{background:var(--paper);position:relative;z-index:20}.dl-top{background:#52202a;color:#fff;text-align:center;padding:9px 20px;font-size:11px;letter-spacing:.08em}.dl-top span{margin:0 12px}.dl-nav{max-width:1240px;margin:auto;padding:18px 28px;display:flex;align-items:center;justify-content:space-between}.dl-logo{display:flex;flex-direction:column;line-height:.8}.dl-logo strong{font:italic 600 38px/1 'Cormorant Garamond',serif;color:var(--wine)}.dl-logo small{font-size:9px;letter-spacing:.28em;margin-left:4px;margin-top:6px}.dl-nav nav{display:flex;gap:27px;align-items:center}.dl-nav nav>a{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.dl-btn{display:inline-block;padding:15px 22px;background:var(--wine);color:#fff!important;font-size:11px!important;font-weight:700;letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--wine)}.dl-btn.light{background:var(--paper);color:var(--ink)!important;border-color:var(--paper)}.dl-btn.outline{background:transparent;border-color:#fff}.dl-btn.dark{background:var(--ink);border-color:var(--ink)}.dl-btn.line{background:transparent;color:var(--ink)!important;border-color:var(--ink)}.dl-btn.whatsapp{background:var(--green);border-color:var(--green)}.dl-btn.wide{display:block;text-align:center;margin:12px 0}.dl-menu-toggle{display:none;background:none;border:0;font-size:26px}.dl-hero,.dl-pagehero,.dl-special{position:relative;background-image:var(--hero);background-size:cover;background-position:center;color:#fff}.dl-hero{min-height:680px;display:flex;align-items:center}.dl-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,13,12,.76),rgba(15,13,12,.18))}.dl-hero-copy,.dl-pagehero>div:last-child,.dl-special>div:last-child{position:relative;z-index:2}.dl-hero-copy{max-width:1240px;width:100%;margin:auto;padding:80px 40px}.dl-hero span,.dl-pagehero span,.dl-special span,.dl-intro>span,.dl-story-copy>span,.dl-dishes>span,.dl-editorial span,.dl-contactgrid span,.dl-menu-section>span{font-size:11px;font-weight:700;letter-spacing:.28em}.dl-hero h1,.dl-pagehero h1{font:600 76px/.9 'Cormorant Garamond',serif;margin:20px 0}.dl-hero h1 em{font-weight:500}.dl-hero p{font:500 20px/1.6 'Cormorant Garamond',serif;max-width:580px}.dl-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.dl-intro{text-align:center;max-width:900px;margin:auto;padding:95px 30px}.dl-intro h2,.dl-dishes h2,.dl-book h2,.dl-editorial h2,.dl-contactgrid h2,.dl-menu-section h2{font:italic 600 52px/1 'Cormorant Garamond',serif;margin:18px 0}.dl-intro p,.dl-book p{font:500 20px/1.65 'Cormorant Garamond',serif}.dl-tricolore{display:flex;gap:12px;justify-content:center;margin-top:30px}.dl-tricolore i{width:34px;height:4px;background:var(--green)}.dl-tricolore i:nth-child(2){background:#ddd}.dl-tricolore i:nth-child(3){background:#b73742}.dl-feature-grid{display:grid;grid-template-columns:repeat(3,1fr)}.dl-feature-grid>a{height:510px;position:relative;background-image:linear-gradient(0deg,rgba(0,0,0,.65),rgba(0,0,0,.05)),var(--bg);background-size:cover;background-position:center;color:#fff;padding:42px;display:flex;flex-direction:column;justify-content:flex-end}.dl-feature-grid h3{font:italic 600 48px/.9 'Cormorant Garamond',serif;margin:10px 0 25px}.dl-feature-grid span,.dl-feature-grid b{font-size:10px;letter-spacing:.2em}.dl-story{display:grid;grid-template-columns:1.1fr .9fr;min-height:620px;background:var(--cream)}.dl-story-image{background-size:cover;background-position:center}.dl-story-copy{padding:90px;display:flex;flex-direction:column;justify-content:center}.dl-story-copy h2{font:600 64px/.88 'Cormorant Garamond',serif;margin:20px 0}.dl-story-copy h2 em{color:var(--wine)}.dl-story-copy p,.dl-editorial p,.dl-contactgrid p{font:500 18px/1.65 'Cormorant Garamond',serif}.dl-textlink{font-size:11px;font-weight:700;letter-spacing:.2em;margin-top:25px}.dl-dishes{text-align:center;padding:90px 30px}.dl-card-grid{max-width:1180px;margin:45px auto;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.dl-card-grid figure{margin:0}.dl-card-grid img{width:100%;height:300px;object-fit:cover}.dl-card-grid figcaption{font:600 24px 'Cormorant Garamond',serif;padding:14px}.dl-special{min-height:500px;display:flex;align-items:center;justify-content:center;text-align:center}.dl-special .dl-overlay{background:rgba(37,14,20,.67)}.dl-special>div:last-child{max-width:720px;padding:50px}.dl-special h2{font:italic 600 65px 'Cormorant Garamond',serif;margin:16px}.dl-special p{font:500 20px/1.5 'Cormorant Garamond',serif;margin-bottom:30px}.dl-book{text-align:center;padding:95px 30px;background:var(--cream)}.dl-pagehero{min-height:440px;display:flex;align-items:center;justify-content:center;text-align:center}.dl-pagehero .dl-overlay{background:rgba(20,15,13,.55)}.dl-pagehero>div:last-child{padding:50px}.dl-pagehero p{font:500 20px 'Cormorant Garamond',serif}.dl-pagehero.compact{min-height:300px;background:#3b2025}.dl-menu-tabs{position:sticky;top:0;z-index:10;background:#fff;border-bottom:1px solid #ddd;display:flex;gap:24px;overflow:auto;padding:18px 30px;justify-content:center}.dl-menu-tabs a{white-space:nowrap;font-size:10px;font-weight:700;letter-spacing:.08em}.dl-menu-wrap{max-width:980px;margin:70px auto;padding:0 30px}.dl-menu-section{scroll-margin-top:80px;padding:45px 0;border-bottom:1px solid #ddd}.dl-menu-section h2{color:var(--wine)}.dl-menu-item{display:flex;justify-content:space-between;gap:30px;padding:14px 0}.dl-menu-item h3{font:600 23px 'Cormorant Garamond',serif;margin:0}.dl-menu-item p{font:400 13px/1.5 Montserrat,sans-serif;margin:4px 0;color:#6b6761}.dl-menu-item b{font:600 18px 'Cormorant Garamond',serif;white-space:nowrap}.dl-note{font-size:12px;color:#777;padding:25px 0}.dl-editorial,.dl-contactgrid{max-width:1180px;margin:80px auto;display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding:0 30px}.dl-editorial img,.dl-contactgrid img{width:100%;max-height:600px;object-fit:cover}.dl-eventcards{max-width:1180px;margin:40px auto 100px;display:grid;grid-template-columns:repeat(3,1fr);gap:18px;padding:0 30px}.dl-eventcards>div{background:var(--cream);padding:45px}.dl-eventcards span{font-size:10px;letter-spacing:.2em;color:var(--wine)}.dl-eventcards h3{font:600 32px 'Cormorant Garamond',serif}.dl-eventcards p{font:500 17px/1.5 'Cormorant Garamond',serif}.dl-gallery{max-width:1280px;margin:60px auto 100px;padding:0 30px;columns:3 300px;column-gap:18px}.dl-gallery figure{break-inside:avoid;margin:0 0 18px;position:relative}.dl-gallery img{width:100%;display:block}.dl-gallery figcaption{position:absolute;left:0;right:0;bottom:0;padding:28px 18px 14px;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.7));font:600 21px 'Cormorant Garamond',serif}.dl-contact-card{background:var(--cream);padding:50px}.dl-contact-card h3{font:600 36px 'Cormorant Garamond',serif}.dl-footer{background:#231f1d;color:#eee;display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:45px;padding:70px max(30px,calc((100% - 1180px)/2))}.dl-footer .dl-logo strong{color:#fff}.dl-footer h4{font-size:11px;letter-spacing:.18em;text-transform:uppercase}.dl-footer p{font:500 16px/1.6 'Cormorant Garamond',serif}.dl-mobilebar{display:none}
@media(max-width:900px){.dl-top{font-size:9px}.dl-nav{padding:14px 20px}.dl-menu-toggle{display:block}.dl-nav nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;padding:25px;flex-direction:column;align-items:stretch}.dl-nav nav.open{display:flex}.dl-nav nav a{text-align:center}.dl-hero{min-height:580px}.dl-hero h1,.dl-pagehero h1{font-size:55px}.dl-feature-grid{grid-template-columns:1fr}.dl-feature-grid>a{height:380px}.dl-story,.dl-editorial,.dl-contactgrid{grid-template-columns:1fr}.dl-story-image{min-height:430px}.dl-story-copy{padding:60px 30px}.dl-story-copy h2{font-size:52px}.dl-card-grid{grid-template-columns:1fr 1fr}.dl-eventcards{grid-template-columns:1fr}.dl-footer{grid-template-columns:1fr 1fr;padding-bottom:95px}.dl-menu-tabs{justify-content:flex-start}.dl-mobilebar{display:grid;grid-template-columns:repeat(3,1fr);position:fixed;z-index:50;bottom:0;left:0;right:0;background:var(--wine);color:#fff}.dl-mobilebar a{text-align:center;padding:15px 5px;font-size:10px;font-weight:700;letter-spacing:.08em;border-right:1px solid rgba(255,255,255,.2)}}
@media(max-width:560px){.dl-top span{margin:0 5px}.dl-logo strong{font-size:32px}.dl-hero-copy{padding:60px 24px}.dl-hero h1{font-size:48px}.dl-hero p{font-size:18px}.dl-intro h2,.dl-dishes h2,.dl-book h2,.dl-editorial h2,.dl-contactgrid h2,.dl-menu-section h2{font-size:42px}.dl-card-grid{grid-template-columns:1fr}.dl-card-grid img{height:330px}.dl-footer{grid-template-columns:1fr}.dl-pagehero{min-height:360px}.dl-pagehero h1{font-size:50px}.dl-menu-item h3{font-size:20px}.dl-menu-item{gap:15px}.dl-gallery{columns:1}.dl-actions .dl-btn{width:100%;text-align:center}}
/* Final polish v1.4 */
.dl-float-wa{position:fixed;right:22px;bottom:22px;z-index:60;background:var(--green);color:#fff!important;padding:14px 18px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.08em;box-shadow:0 8px 28px rgba(0,0,0,.2)}
.dl-booking-form{margin-top:28px}.dl-booking-form label{display:block;margin:0 0 16px;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.dl-booking-form input,.dl-booking-form textarea{display:block;width:100%;margin-top:7px;padding:14px 15px;border:1px solid #d8d0c5;background:#fff;font:500 15px Montserrat,Arial,sans-serif;color:var(--ink);border-radius:0}.dl-booking-form input:focus,.dl-booking-form textarea:focus{outline:2px solid rgba(110,31,42,.15);border-color:var(--wine)}.dl-form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.dl-gallery img{transition:transform .25s ease,filter .25s ease}.dl-gallery figure{overflow:hidden}.dl-gallery figure:hover img{transform:scale(1.025)}.dl-nav nav>a:not(.dl-btn){position:relative}.dl-nav nav>a:not(.dl-btn):after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:1px;background:var(--wine);transition:right .2s}.dl-nav nav>a:not(.dl-btn):hover:after{right:0}
@media(max-width:900px){.dl-float-wa{bottom:68px;right:14px}.dl-contactgrid{margin:55px auto}.dl-pagehero{min-height:330px}.dl-gallery{margin-top:35px}.dl-footer{gap:30px}.dl-booking-grid{align-items:start}}
@media(max-width:560px){.dl-form-row{grid-template-columns:1fr}.dl-float-wa{padding:12px 14px;font-size:10px}.dl-top{line-height:1.5}.dl-contact-card{padding:30px}.dl-menu-tabs{top:0}.dl-pagehero.compact{min-height:240px}}
/* D'Luca homepage image text visibility */

.dl-hero h1,
.dl-hero h1 em {
    color: #fffaf0 !important;
    text-shadow: 0 3px 14px rgba(0,0,0,.75);
}

.dl-feature-grid a h3,
.dl-feature-grid a h3 em {
    color: #fffaf0 !important;
    text-shadow: 0 3px 12px rgba(0,0,0,.85);
}

.dl-feature-grid a span,
.dl-feature-grid a b {
    color: #ffffff !important;
    text-shadow: 0 2px 8px rgba(0,0,0,.9);
}

.dl-feature-grid a::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to bottom,
        rgba(0,0,0,.05) 20%,
        rgba(0,0,0,.20) 55%,
        rgba(0,0,0,.50) 100%
    );
    pointer-events: none;
}

.dl-feature-grid a > * {
    position: relative;
    z-index: 2;
}
/* Make Specials & Events heading clearly visible */
.dl-special h2,
.dl-special h2 em {
    color: #ffffff !important;
    text-shadow: 0 3px 14px rgba(0,0,0,.85);
}
/* MENU PAGE HERO - brighter, clearer heading */
.dl-pagehero h1,
.dl-pagehero h1 em {
    color: #ffffff !important;
    text-shadow: 0 3px 14px rgba(0,0,0,.85);
}

.dl-pagehero > div > p {
    color: #ffffff !important;
    text-shadow: 0 2px 8px rgba(0,0,0,.75);
}

.dl-pagehero > div > span {
    color: #ffffff !important;
    text-shadow: 0 2px 8px rgba(0,0,0,.85);
}
/* MENU HERO - brighter, richer food photography */
.dl-pagehero {
    background-position: center center !important;
    background-size: cover !important;
}

.dl-pagehero .dl-overlay {
    background: rgba(0,0,0,.25) !important;
}

/* Keep menu hero wording crisp */
.dl-pagehero h1,
.dl-pagehero h1 em,
.dl-pagehero span,
.dl-pagehero p {
    color: #ffffff !important;
    text-shadow: 0 3px 12px rgba(0,0,0,.85);
}
/* MENU CATEGORY NAVIGATION */
.dl-menu-tabs {
    padding: 18px 20px !important;
    background: #fffaf0 !important;
    border-bottom: 1px solid rgba(0,0,0,.12);
   text-align: left !important;
overflow-x: auto !important;
white-space: nowrap !important;
}

.dl-menu-tabs a {
    color: #29231f !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    letter-spacing: .5px;
    padding: 10px 13px !important;
    display: inline-block;
    text-decoration: none !important;
    transition: all .2s ease;
}

.dl-menu-tabs a:hover {
    color: #8b2635 !important;
    transform: translateY(-1px);
}

/* Make menu navigation easier to use on phones */
@media (max-width: 768px) {
    .dl-menu-tabs {
        padding: 10px 8px !important;
        overflow-x: auto;
        white-space: nowrap;
        text-align: left;
        -webkit-overflow-scrolling: touch;
    }

    .dl-menu-tabs a {
        font-size: 13px !important;
        padding: 10px 12px !important;
    }
}
/* ===== D'LUCA PREMIUM MENU LAYOUT ===== */

.menu-section {
    max-width: 1120px;
    margin: 0 auto;
    padding: 55px 35px;
}

/* CUCINA ITALIANA */
.menu-title span {
    display: block;
    color: #5f1825 !important;
    font-size: 11px !important;
    font-weight: 700;
    letter-spacing: 3px;
    text-transform: uppercase;
    margin-bottom: 8px;
}

/* Breakfast, Pizza, Pasta etc */
.menu-title h2 {
    color: #7b2635 !important;
    font-size: 42px !important;
    line-height: 1.1;
    margin: 0 0 35px !important;
}

/* Two-column menu */
.menu-items {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 70px;
    row-gap: 0;
}

/* Individual dish */
.menu-item {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 8px 20px;
    padding: 0 0 20px;
    margin-bottom: 20px;
    border-bottom: 1px solid rgba(0,0,0,.10);
}

.menu-item > div {
    min-width: 0;
}

/* Dish name */
.menu-item h3 {
    color: #29231f !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    margin: 0 0 5px !important;
}

/* Description */
.menu-item p {
    color: #6a625d !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
    margin: 0 !important;
}

/* Price */
.menu-item > strong {
    color: #7b2635 !important;
    font-size: 17px !important;
    font-weight: 700 !important;
    white-space: nowrap;
    align-self: start;
}

/* MOBILE */
@media (max-width: 768px) {
    .menu-section {
        padding: 38px 20px;
    }

    .menu-title h2 {
        font-size: 34px !important;
    }

    .menu-items {
        grid-template-columns: 1fr;
        column-gap: 0;
    }

    .menu-item {
        grid-template-columns: 1fr auto;
        gap: 8px 15px;
    }

    .menu-item h3 {
        font-size: 17px !important;
    }

    .menu-item p {
        font-size: 13px !important;
    }

    .menu-item > strong {
        font-size: 16px !important;
    }
}


/* ===== D'LUCA MENU BAR - DESKTOP FINAL FIX ===== */
@media (min-width: 769px) {

    .dl-menu-tabs {
        display: block !important;
        width: 100% !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        white-space: nowrap !important;
        text-align: left !important;
        padding-left: 0 !important;
    }

    .dl-menu-tabs > div {
        display: flex !important;
        flex-wrap: nowrap !important;
        justify-content: flex-start !important;
        width: max-content !important;
        min-width: 100% !important;
        margin-left: 0 !important;
        padding-left: 0 !important;
    }

    .dl-menu-tabs a:first-child {
        margin-left: 0 !important;
    }
}

/* MENU SECTION HEADINGS */
.dl-menu-item.dl-menu-heading {
    display: block;
    width: 100%;
    padding: 14px 0;
}

.dl-menu-item.dl-menu-heading > div {
    width: 100%;
}

.dl-menu-item.dl-menu-heading h3 {
    font-weight: 600;
    font-size: 18px;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin: 0 0 4px;
}

.dl-menu-item.dl-menu-heading p {
    margin: 0;
    font-size: 14px;
    font-style: normal;
}
/* LUNCH MENU FULL WIDTH HEADINGS */
.dl-menu-item.dl-menu-heading {
    flex-basis: 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
}

.dl-menu-item.dl-menu-heading > div {
    width: 100% !important;
}
/* FIX LUNCH MENU SUBHEADINGS */
.dl-menu-item.dl-menu-heading {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    grid-column: 1 / -1 !important;
    clear: both !important;
}

.dl-menu-item.dl-menu-heading > div {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
}

.dl-menu-item.dl-menu-heading h3,
.dl-menu-item.dl-menu-heading p {
    width: 100% !important;
    max-width: 100% !important;
    text-align: left !important;
}
/* ===== D'LUCA MENU - CORRECT TWO COLUMN LAYOUT ===== */

@media (min-width: 769px) {

    .dl-menu-section {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        column-gap: 70px !important;
    }

    .dl-menu-section > span,
    .dl-menu-section > h2,
    .dl-menu-section > .dl-menu-heading {
        grid-column: 1 / -1 !important;
    }
}
/* ===== D'LUCA MENU - DESKTOP WIDTH ===== */

@media (min-width: 769px) {

    .dl-menu-section {
        max-width: 1050px !important;
        width: calc(100% - 80px) !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
}
/* ===== D'LUCA MENU - FIX SECTION GAPS ===== */

@media (min-width: 769px) {

    .dl-menu-section > .dl-menu-item.dl-menu-heading {
        grid-column: 1 / -1 !important;
        width: 100% !important;
    }

}
/* ===== D'LUCA MENU - FIX HEADING GAP + TWO COLUMNS ===== */

@media (min-width: 769px) {

    .dl-menu-section {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        column-gap: 55px !important;
        row-gap: 0 !important;
    }

    .dl-menu-section > span,
    .dl-menu-section > h2 {
        grid-column: 1 / -1 !important;
    }

    .dl-menu-section > h2 {
        margin-bottom: 20px !important;
    }

    .dl-menu-section > .dl-menu-item {
        margin-top: 0 !important;
        align-self: start !important;
    }
}

/* ===== D'LUCA MENU - CLEAN SUBHEADINGS ===== */
@media (min-width: 769px) {

    .dl-menu-section > .dl-menu-heading {
        grid-column: 1 / -1 !important;
        width: 100% !important;
        margin: 22px 0 10px 0 !important;
        padding: 0 0 8px 0 !important;
        border-bottom: 1px solid rgba(123,38,53,.20) !important;
    }

    .dl-menu-section > .dl-menu-heading h3 {
        font-size: 16px !important;
        font-weight: 700 !important;
        letter-spacing: 1.5px !important;
        line-height: 1.35 !important;
        margin: 0 !important;
        width: 100% !important;
    }
}

/* ===== D'LUCA MENU - SECONDARY SUBHEADING TEXT ===== */
@media (min-width: 769px) {
    .dl-menu-section > .dl-menu-heading + .dl-menu-heading {
        margin-top: -8px !important;
        padding-top: 0 !important;
    }

    .dl-menu-section > .dl-menu-heading + .dl-menu-heading h3 {
        font-size: 13px !important;
        font-weight: 500 !important;
        letter-spacing: 1px !important;
    }
}

/* ===== D'LUCA MENU - SUBHEADING COLOURS ===== */
@media (min-width: 769px) {

    .dl-menu-section > .dl-menu-heading h3 {
        color: #7b2635 !important;
        font-weight: 700 !important;
    }

    .dl-menu-section > .dl-menu-heading + .dl-menu-heading h3 {
        color: #6a625d !important;
        font-style: italic !important;
        font-weight: 400 !important;
        letter-spacing: 0.5px !important;
    }
}