/* Deluxe Döner & Pizzahaus – statische Website (Lieferfrei). Keine WordPress-Abhängigkeit. */

@font-face {
    font-family: 'Bebas Neue';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/bebas-neue.woff2') format('woff2');
}

@font-face {
    font-family: 'Outfit';
    font-style: normal;
    font-weight: 300 700;
    font-display: swap;
    src: url('../fonts/outfit.woff2') format('woff2');
}

/* Font Awesome Free 6.5.1 – Icons CC BY 4.0, Fonts SIL OFL 1.1, Code MIT (https://fontawesome.com/license/free); Subset */
@font-face { font-family: 'Font Awesome 6 Free'; font-style: normal; font-weight: 900; font-display: block; src: url('../fonts/fa-solid-900.woff2') format('woff2'); }
.fa, .fas, .far, .fab, .fa-solid, .fa-regular, .fa-brands { -webkit-font-smoothing: antialiased; display: var(--fa-display, inline-block); font-style: normal; font-variant: normal; line-height: 1; text-rendering: auto; }
.fa, .fas, .fa-solid { font-family: 'Font Awesome 6 Free'; font-weight: 900; }
.far, .fa-regular { font-family: 'Font Awesome 6 Free'; font-weight: 400; }
.fab, .fa-brands { font-family: 'Font Awesome 6 Brands'; font-weight: 400; }
.fa-arrow-right::before { content: "\f061"; }
.fa-book-open::before { content: "\f518"; }
.fa-bowl-food::before { content: "\e4c6"; }
.fa-burger::before { content: "\f805"; }
.fa-circle-info::before { content: "\f05a"; }
.fa-clock::before { content: "\f017"; }
.fa-crown::before { content: "\f521"; }
.fa-drumstick-bite::before { content: "\f6d7"; }
.fa-house-chimney::before { content: "\e3af"; }
.fa-leaf::before { content: "\f06c"; }
.fa-location-dot::before { content: "\f3c5"; }
.fa-phone::before { content: "\f095"; }
.fa-pizza-slice::before { content: "\f818"; }
.fa-road::before { content: "\f018"; }
.fa-route::before { content: "\f4d7"; }
.fa-shopping-bag::before { content: "\f290"; }
.fa-shopping-cart::before { content: "\f07a"; }
.fa-truck-fast::before { content: "\f48b"; }
.fa-utensils::before { content: "\f2e7"; }

/* aus p_reset.css (Hello Elementor, GPL) */
html{line-height:1.15;-webkit-text-size-adjust:100%}*,:after,:before{box-sizing:border-box}body{background-color:#fff;color:#333;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-size:1rem;font-weight:400;line-height:1.5;margin:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:clip}h1,h2,h3,h4,h5,h6{color:inherit;font-family:inherit;font-weight:500;line-height:1.2;margin-block-end:1rem;margin-block-start:.5rem}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.75rem}h4{font-size:1.5rem}h5{font-size:1.25rem}h6{font-size:1rem}p{margin-block-end:.9rem;margin-block-start:0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace;font-size:1em;white-space:pre-wrap}a{background-color:transparent;color:#c36;text-decoration:none}a:active,a:hover{color:#336}a:not([href]):not([tabindex]),a:not([href]):not([tabindex]):focus,a:not([href]):not([tabindex]):hover{color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus{outline:0}abbr[title]{border-block-end:none;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none;height:auto;max-width:100%}details{display:block}summary{display:list-item}figcaption{color:#333;font-size:16px;font-style:italic;font-weight:400;line-height:1.4}[hidden],template{display:none}@media print{*,:after,:before{background:transparent!important;box-shadow:none!important;color:#000!important;text-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="#"]:after,a[href^="javascript:"]:after{content:""}pre{white-space:pre-wrap!important}blockquote,pre{-moz-column-break-inside:avoid;border:1px solid #ccc;break-inside:avoid}thead{display:table-header-group}img,tr{-moz-column-break-inside:avoid;break-inside:avoid}h2,h3,p{orphans:3;widows:3}h2,h3{-moz-column-break-after:avoid;break-after:avoid}}label{display:inline-block;line-height:1;vertical-align:middle}button,input,optgroup,select,textarea{font-family:inherit;font-size:1rem;line-height:1.5;margin:0}input[type=date],input[type=email],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],select,textarea{border:1px solid #666;border-radius:3px;padding:.5rem 1rem;transition:all .3s;width:100%}input[type=date]:focus,input[type=email]:focus,input[type=number]:focus,input[type=password]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=text]:focus,input[type=time]:focus,input[type=url]:focus,select:focus,textarea:focus{border-color:#333}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button;width:auto}[type=button],[type=submit],button{background-color:transparent;border:1px solid #c36;border-radius:3px;color:#c36;display:inline-block;font-size:1rem;font-weight:400;padding:.5rem 1rem;text-align:center;transition:all .3s;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}[type=button]:focus,[type=button]:hover,[type=submit]:focus,[type=submit]:hover,button:focus,button:hover{background-color:#c36;color:#fff;text-decoration:none}[type=button]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto;resize:vertical}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}select{display:block}table{background-color:transparent;border-collapse:collapse;border-spacing:0;font-size:.9em;margin-block-end:15px;width:100%}table td,table th{border:1px solid hsla(0,0%,50%,.502);line-height:1.5;padding:15px;vertical-align:top}table th{font-weight:700}table tfoot th,table thead th{font-size:1em}table caption+thead tr:first-child td,table caption+thead tr:first-child th,table colgroup+thead tr:first-child td,table colgroup+thead tr:first-child th,table thead:first-child tr:first-child td,table thead:first-child tr:first-child th{border-block-start:1px solid hsla(0,0%,50%,.502)}table tbody>tr:nth-child(odd)>td,table tbody>tr:nth-child(odd)>th{background-color:hsla(0,0%,50%,.071)}table tbody tr:hover>td,table tbody tr:hover>th{background-color:hsla(0,0%,50%,.102)}table tbody+tbody{border-block-start:2px solid hsla(0,0%,50%,.502)}@media(max-width:767px){table table{font-size:.8em}table table td,table table th{line-height:1.3;padding:7px}table table th{font-weight:400}}dd,dl,dt,li,ol,ul{background:transparent;border:0;font-size:100%;margin-block-end:0;margin-block-start:0;outline:0;vertical-align:baseline}[tabindex]:not([tabindex="-1"]):focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{box-shadow:0 0 0 4px #fff;outline:2px solid #000;outline-offset:2px}[tabindex]:not([tabindex="-1"]):focus:not(:focus-visible),a:focus:not(:focus-visible),button:focus:not(:focus-visible),input:focus:not(:focus-visible),select:focus:not(:focus-visible),textarea:focus:not(:focus-visible){box-shadow:none;outline:none}

/* aus p_theme.css (Hello Elementor, GPL) */
.comments-area a,.page-content a{text-decoration:underline}.alignright{float:right;margin-left:1rem}.alignleft{float:left;margin-right:1rem}.aligncenter{clear:both;display:block;margin-inline:auto}.alignwide{margin-inline:-80px}.alignfull{margin-inline:calc(50% - 50vw);max-width:100vw;overflow-x:hidden;width:100vw}.alignfull img{width:100%}.wp-caption{margin-block-end:1.25rem;max-width:100%}.wp-caption.alignleft{margin:5px 20px 20px 0}.wp-caption.alignright{margin:5px 0 20px 20px}.wp-caption img{display:block;margin-inline:auto}.wp-caption-text{margin:0}.gallery-caption{display:block;font-size:.8125rem;line-height:1.5;margin:0;padding:.75rem}.pagination{display:flex;justify-content:space-between;margin:20px auto}.sticky{display:block;position:relative}.bypostauthor{font-size:inherit}.hide{display:none!important}.post-password-form{margin:50px auto;max-width:500px}.post-password-form p{align-items:flex-end;display:flex;width:100%}.post-password-form [type=submit]{margin-inline-start:3px}.screen-reader-text{clip:rect(1px,1px,1px,1px);height:1px;overflow:hidden;position:absolute!important;width:1px;word-wrap:normal!important}.screen-reader-text:focus{background-color:#eee;clip:auto!important;clip-path:none;color:#333;display:block;font-size:1rem;height:auto;left:5px;line-height:normal;padding:12px 24px;text-decoration:none;top:5px;width:auto;z-index:100000}.post .entry-title a{text-decoration:none}.post .wp-post-image{max-height:500px;-o-object-fit:cover;object-fit:cover;width:100%}@media(max-width:991px){.post .wp-post-image{max-height:400px}}@media(max-width:575px){.post .wp-post-image{max-height:300px}}#comments .comment-list{font-size:.9em;list-style:none;margin:0;padding:0}#comments .comment,#comments .pingback{position:relative}#comments .comment .comment-body,#comments .pingback .comment-body{border-block-end:1px solid #ccc;display:flex;flex-direction:column;padding-block-end:30px;padding-block-start:30px;padding-inline-end:0;padding-inline-start:60px}#comments .comment .avatar,#comments .pingback .avatar{border-radius:50%;left:0;margin-inline-end:10px;position:absolute}body.rtl #comments .comment .avatar,body.rtl #comments .pingback .avatar,html[dir=rtl] #comments .comment .avatar,html[dir=rtl] #comments .pingback .avatar{left:auto;right:0}#comments .comment-meta{display:flex;justify-content:space-between;margin-block-end:.9rem}#comments .comment-metadata,#comments .reply{font-size:11px;line-height:1}#comments .children{list-style:none;margin:0;padding-inline-start:30px;position:relative}#comments .children li:last-child{padding-block-end:0}#comments ol.comment-list .children:before{content:"↪";display:inline-block;font-size:1em;font-weight:400;left:0;line-height:1;position:absolute;top:45px;width:auto}body.rtl #comments ol.comment-list .children:before,html[dir=rtl] #comments ol.comment-list .children:before{content:"↩";left:auto;right:0}@media(min-width:768px){#comments .comment-author,#comments .comment-metadata{line-height:1}}@media(max-width:767px){#comments .comment .comment-body{padding:30px 0}#comments .children{padding-inline-start:20px}#comments .comment .avatar{float:left;position:inherit}body.rtl #comments .comment .avatar,html[dir=rtl] #comments .comment .avatar{float:right}}.page-header .entry-title,.site-footer .footer-inner,.site-footer:not(.dynamic-footer),.site-header .header-inner,.site-header:not(.dynamic-header),body:not([class*=elementor-page-]) .site-main{margin-inline-end:auto;margin-inline-start:auto;width:100%}@custom-media --hello-screen-xs-and-below (width < 576px);@custom-media --hello-screen-xs-and-above (width >= 576px);@custom-media --hello-screen-xs-only (0 <= width < 576px);@custom-media --hello-screen-sm-and-below (width < 768px);@custom-media --hello-screen-sm-and-above (width >= 768px);@custom-media --hello-screen-sm-only (576px <= width < 768px);@custom-media --hello-screen-md-and-below (width < 992px);@custom-media --hello-screen-md-and-above (width >= 992px);@custom-media --hello-screen-md-only (768px <= width < 992px);@custom-media --hello-screen-xl-and-below (width < 1200px);@custom-media --hello-screen-xl-and-above (width >= 1200px);@custom-media --hello-screen-xl-only (992px <= width < 1200px);@media(max-width:575px){.page-header .entry-title,.site-footer .footer-inner,.site-footer:not(.dynamic-footer),.site-header .header-inner,.site-header:not(.dynamic-header),body:not([class*=elementor-page-]) .site-main{padding-inline-end:10px;padding-inline-start:10px}}@media(min-width:576px){.page-header .entry-title,.site-footer .footer-inner,.site-footer:not(.dynamic-footer),.site-header .header-inner,.site-header:not(.dynamic-header),body:not([class*=elementor-page-]) .site-main{max-width:500px}.site-footer.footer-full-width .footer-inner,.site-header.header-full-width .header-inner{max-width:100%}}@media(min-width:768px){.page-header .entry-title,.site-footer .footer-inner,.site-footer:not(.dynamic-footer),.site-header .header-inner,.site-header:not(.dynamic-header),body:not([class*=elementor-page-]) .site-main{max-width:600px}.site-footer.footer-full-width,.site-header.header-full-width{max-width:100%}}@media(min-width:992px){.page-header .entry-title,.site-footer .footer-inner,.site-footer:not(.dynamic-footer),.site-header .header-inner,.site-header:not(.dynamic-header),body:not([class*=elementor-page-]) .site-main{max-width:800px}.site-footer.footer-full-width,.site-header.header-full-width{max-width:100%}}@media(min-width:1200px){.page-header .entry-title,.site-footer .footer-inner,.site-footer:not(.dynamic-footer),.site-header .header-inner,.site-header:not(.dynamic-header),body:not([class*=elementor-page-]) .site-main{max-width:1140px}.site-footer.footer-full-width,.site-header.header-full-width{max-width:100%}}.site-header+.elementor{min-height:calc(100vh - 320px)}


/* ============================================
   DESIGN SYSTEM – DELUXE PREMIUM
   Premium Obsidian & Glowing Gold
   ============================================ */
:root {
    /* Brand Gold */
    --dl-gold:       #d4af37;
    --dl-gold-light: #f3d45d;
    --dl-gold-glow:  rgba(212, 175, 55, 0.25);
    
    /* Dark palette (Obsidian) */
    --dl-black:  #080808;
    --dl-dark-1: #111111;
    --dl-dark-2: #1a1a1a;
    --dl-dark-3: #222222;
    --dl-dark-4: #2b2b2b;
    --dl-white:  #fdfdfd;
    --dl-gray:   #999999;
    --dl-gray-lt:#c0c0c0;

    /* Typography */
    --font-display: 'Bebas Neue', 'Impact', sans-serif;
    --font-body:    'Outfit', 'Inter', 'Segoe UI', sans-serif;

    /* Spacing */
    --sp-xs:  0.5rem;
    --sp-sm:  1rem;
    --sp-md:  1.5rem;
    --sp-lg:  2.5rem;
    --sp-xl:  4rem;
    --sp-xxl: 6.5rem;

    /* Radius */
    --r-sm:   4px;
    --r-md:   8px;
    --r-lg:   16px;
    --r-xl:   24px;
    --r-full: 9999px;

    /* Shadows */
    --sh-sm:     0 4px 12px rgba(0,0,0,0.5);
    --sh-md:     0 8px 30px rgba(0,0,0,0.6);
    --sh-lg:     0 16px 50px rgba(0,0,0,0.8);
    --sh-gold:   0 8px 30px rgba(212, 175, 55, 0.35);

    /* Transitions */
    --tr-fast:   0.2s ease;
    --tr-smooth: 0.4s cubic-bezier(0.25, 1, 0.5, 1);
    --tr-bounce: 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
}

/* ============================================
   GOOGLE FONTS IMPORT - REMOVED FOR SPEED
   Fonts are now loaded asynchronously via functions.php
   ============================================ */

/* ============================================
   GLOBAL RESET
   ============================================ */
*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }

html { scroll-behavior: smooth; font-size: 16px; }

body {
    font-family: var(--font-body);
    background: var(--dl-black);
    color: var(--dl-gray-lt);
    overflow-x: hidden;
    padding-top: 0 !important;
    -webkit-font-smoothing: antialiased;
}

/* Remove WordPress/Elementor space constraints */
.site, #page, .site-content, #content, .content-area,
.site-main, #primary, .elementor, .elementor-section-wrap {
    max-width: 100% !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}
.site-main { padding-top: 0 !important; }

/* Hide WP default header */
.site-header, .elementor-location-header, header.elementor-location-header, .hello-elementor-header, #masthead, .site-branding, .main-navigation { display: none !important; }

h1,h2,h3,h4,h5,h6 {
    font-family: var(--font-display);
    color: var(--dl-white);
    line-height: 1.05;
    letter-spacing: 1px;
    margin-bottom: var(--sp-sm);
}

h2 { font-size: clamp(2.5rem, 5vw, 4rem); letter-spacing: 1.5px; }
h3 { font-size: clamp(1.8rem, 3.5vw, 2.8rem); }
h4 { font-size: 1.4rem; }

p { font-size: 1.05rem; line-height: 1.6; margin-bottom: var(--sp-md); font-weight: 300; }
a { text-decoration: none; color: inherit; }
img { max-width: 100%; height: auto; display: block; }
section { width: 100%; overflow: hidden; position: relative; }

.dl-container {
    width: 100%;
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 clamp(1.2rem, 4vw, 3rem);
}

/* ============================================
   BUTTONS
   ============================================ */
.dl-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 16px 36px;
    font-family: var(--font-body);
    font-size: 1rem;
    font-weight: 600;
    border-radius: var(--r-md);
    border: none;
    cursor: pointer;
    transition: all var(--tr-bounce);
    white-space: nowrap;
    letter-spacing: 0.5px;
    text-transform: uppercase;
}

.dl-btn-primary {
    background: var(--dl-gold);
    color: var(--dl-black) !important;
    box-shadow: var(--sh-gold);
}
.dl-btn-primary:hover {
    background: var(--dl-gold-light);
    transform: translateY(-4px) scale(1.02);
    box-shadow: 0 15px 35px rgba(212, 175, 55, 0.5);
    color: var(--dl-black) !important;
}

.dl-btn-outline {
    background: transparent;
    color: var(--dl-gold) !important;
    border: 2px solid var(--dl-gold);
}
.dl-btn-outline:hover {
    background: var(--dl-gold);
    color: var(--dl-black) !important;
    transform: translateY(-4px);
    box-shadow: var(--sh-gold);
}

.dl-btn-ghost {
    background: rgba(255,255,255,0.05);
    color: var(--dl-white) !important;
    border: 1px solid rgba(255,255,255,0.15);
    backdrop-filter: blur(10px);
}
.dl-btn-ghost:hover {
    background: rgba(255,255,255,0.1);
    color: var(--dl-white) !important;
    border-color: rgba(255,255,255,0.3);
    transform: translateY(-4px);
}

/* ============================================
   HEADER
   ============================================ */
.dl-header {
    position: fixed;
    top: 0; left: 0; right: 0;
    z-index: 9999;
    height: 80px;
    background: transparent;
    transition: background 0.4s ease, box-shadow 0.4s ease, height 0.4s ease;
}
.dl-header.scrolled {
    height: 70px;
    background: rgba(8, 8, 8, 0.85);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    box-shadow: 0 1px 0 rgba(212, 175, 55, 0.15), 0 10px 30px rgba(0,0,0,0.8);
}

.dl-header-inner {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 clamp(1rem, 4vw, 3rem);
}

.dl-hbtn {
    width: 46px;
    height: 46px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(212, 175, 55, 0.1);
    border: 1px solid rgba(212, 175, 55, 0.3);
    border-radius: var(--r-full);
    color: var(--dl-gold);
    font-size: 1.2rem;
    transition: all var(--tr-bounce);
    backdrop-filter: blur(10px);
}
.dl-hbtn:hover {
    background: var(--dl-gold);
    color: var(--dl-black);
    transform: scale(1.1);
    box-shadow: var(--sh-gold);
}

.dl-logo {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    line-height: 1;
}
.dl-logo-main {
    font-family: var(--font-display);
    font-size: 2.2rem;
    color: var(--dl-gold);
    letter-spacing: 4px;
    text-shadow: 0 0 25px rgba(212, 175, 55, 0.4);
    transition: text-shadow 0.3s;
}
.dl-logo-sub {
    font-family: var(--font-body);
    font-size: 0.6rem;
    color: var(--dl-white);
    letter-spacing: 6px;
    text-transform: uppercase;
    font-weight: 300;
    opacity: 0.8;
}
.dl-logo:hover .dl-logo-main {
    text-shadow: 0 0 45px rgba(212, 175, 55, 0.7);
}

/* ============================================
   HERO SECTION
   ============================================ */
.dl-hero {
    position: relative;
    width: 100%;
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.dl-hero-bg {
    position: absolute; inset: 0; z-index: 0; pointer-events: none;
}
.dl-hero-img {
    position: absolute; inset: 0;
    background-image: url('../../assets/images/unsplash-1565299624946-b28f40a0ae-w1600.jpg');
    background-size: cover;
    background-position: center 30%;
    animation: dlBgSlowZoom 25s ease-in-out infinite alternate;
}
@keyframes dlBgSlowZoom {
    0% { transform: scale(1.0); }
    100% { transform: scale(1.12); }
}

.dl-hero-overlay {
    position: absolute; inset: 0;
    background: linear-gradient(180deg, rgba(8,8,8,0.75) 0%, rgba(8,8,8,0.3) 40%, #080808 100%),
                radial-gradient(circle at center, rgba(212, 175, 55, 0.1) 0%, transparent 60%);
}
.dl-hero-grain {
    position: absolute; inset: 0;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.05'/%3E%3C/svg%3E");
    mix-blend-mode: overlay;
}

.dl-hero-content {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
    padding: clamp(120px, 15vh, 160px) clamp(1rem, 5vw, 3rem) clamp(80px, 10vh, 120px);
    text-align: center;
    animation: dlFadeUp 1s cubic-bezier(0.2, 0.8, 0.2, 1) both;
}

.dl-hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 20px;
    background: rgba(212, 175, 55, 0.15);
    border: 1px solid rgba(212, 175, 55, 0.4);
    border-radius: var(--r-full);
    color: var(--dl-gold);
    font-size: 0.85rem;
    font-weight: 600;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 2rem;
    backdrop-filter: blur(10px);
    animation: dlFadeUp 0.8s ease both;
}

.dl-hero-content h1 {
    font-size: clamp(4.5rem, 12vw, 9rem);
    color: var(--dl-white);
    line-height: 0.85;
    letter-spacing: 2px;
    margin-bottom: 1rem;
    text-shadow: 0 10px 40px rgba(0,0,0,0.8);
    animation: dlFadeUp 0.8s ease 0.1s both;
}
.dl-h1-gold {
    color: var(--dl-gold);
    display: block;
    font-size: clamp(3rem, 8vw, 6rem);
    letter-spacing: 6px;
    text-shadow: 0 0 40px rgba(212, 175, 55, 0.3);
}

.dl-hero-desc {
    font-size: clamp(1rem, 1.5vw, 1.25rem);
    color: rgba(255,255,255,0.7);
    max-width: 600px;
    margin: 0 auto 3rem;
    line-height: 1.8;
    animation: dlFadeUp 0.8s ease 0.2s both;
}

.dl-hero-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 16px;
    animation: dlFadeUp 0.8s ease 0.3s both;
}

@keyframes dlFadeUp {
    from { opacity: 0; transform: translateY(30px); }
    to { opacity: 1; transform: translateY(0); }
}

/* ============================================
   SHARED HEADINGS
   ============================================ */
.dl-section-head {
    text-align: center;
    margin-bottom: var(--sp-xl);
}
.dl-label {
    display: inline-block;
    color: var(--dl-gold);
    font-family: var(--font-display);
    font-size: 1.2rem;
    letter-spacing: 4px;
    margin-bottom: var(--sp-xs);
    position: relative;
}
.dl-label::after {
    content: '';
    position: absolute;
    bottom: -6px; left: 50%;
    transform: translateX(-50%);
    width: 40px; height: 2px;
    background: var(--dl-gold);
}
.dl-section-head h2 {
    margin-top: var(--sp-sm);
    color: var(--dl-white);
}

/* ============================================
   SIGNATURE SECTION
   ============================================ */
.dl-signature {
    padding: var(--sp-xxl) 0;
    background: var(--dl-black);
}

.dl-grid-3 {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 30px;
}

.dl-card {
    background: var(--dl-dark-1);
    border-radius: var(--r-xl);
    overflow: hidden;
    border: 1px solid rgba(255,255,255,0.03);
    transition: all var(--tr-smooth);
    display: block;
    text-decoration: none;
}
.dl-card:hover {
    transform: translateY(-10px);
    border-color: rgba(212, 175, 55, 0.4);
    box-shadow: 0 25px 50px rgba(0,0,0,0.8), 0 0 20px rgba(212, 175, 55, 0.15);
}

.dl-card-img {
    position: relative;
    height: 250px;
    overflow: hidden;
}
.dl-card-img img {
    width: 100%; height: 100%; object-fit: cover;
    transition: transform 0.6s cubic-bezier(0.2, 0.8, 0.2, 1);
}
.dl-card:hover .dl-card-img img { transform: scale(1.08); }

.dl-card-badge {
    position: absolute;
    top: 15px; left: 15px;
    background: var(--dl-gold);
    color: var(--dl-black);
    font-weight: 700;
    font-size: 0.75rem;
    padding: 6px 14px;
    border-radius: var(--r-full);
    text-transform: uppercase;
    letter-spacing: 1px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.4);
}

.dl-card-body {
    padding: var(--sp-lg);
    background: linear-gradient(180deg, var(--dl-dark-2) 0%, var(--dl-dark-1) 100%);
}
.dl-card-body h4 {
    font-size: 1.8rem;
    letter-spacing: 1px;
    margin-bottom: 10px;
}
.dl-card-body p {
    font-size: 0.95rem;
    color: var(--dl-gray);
    margin-bottom: var(--sp-lg);
}

.dl-card-foot {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-top: 1px solid rgba(255,255,255,0.05);
    padding-top: var(--sp-md);
}
.dl-card-price {
    font-family: var(--font-display);
    font-size: 1.8rem;
    color: var(--dl-gold);
}
.dl-card-cta {
    font-weight: 600;
    font-size: 0.9rem;
    color: var(--dl-white);
    text-transform: uppercase;
    letter-spacing: 1px;
    display: flex;
    align-items: center;
    gap: 6px;
    transition: color 0.2s;
}
.dl-card:hover .dl-card-cta { color: var(--dl-gold); }
.dl-card-cta i { transition: transform 0.3s; }
.dl-card:hover .dl-card-cta i { transform: translateX(4px); }

/* ============================================
   CATEGORIES SECTION
   ============================================ */
.dl-categories {
    padding: var(--sp-xxl) 0;
    background: var(--dl-dark-1);
    position: relative;
}
.dl-categories::before {
    content: '';
    position: absolute; top:0; left:0; right:0; height:1px;
    background: linear-gradient(90deg, transparent, rgba(212,175,55,0.2), transparent);
}

.dl-cats-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 20px;
}

.dl-cat {
    position: relative;
    height: 280px;
    border-radius: var(--r-lg);
    overflow: hidden;
    border: 1px solid rgba(255,255,255,0.04);
    display: block;
    transition: all var(--tr-smooth);
}
.dl-cat:hover {
    transform: translateY(-8px);
    border-color: rgba(212, 175, 55, 0.4);
    box-shadow: 0 20px 40px rgba(0,0,0,0.6);
}

.dl-cat-bg {
    position: absolute; inset: 0;
    background-size: cover; background-position: center;
    transition: transform 0.6s;
}
.dl-cat:hover .dl-cat-bg { transform: scale(1.1); }

.dl-cat-overlay {
    position: absolute; inset: 0;
    background: linear-gradient(0deg, rgba(8,8,8,0.95) 0%, rgba(8,8,8,0.2) 100%);
    transition: background 0.4s;
}
.dl-cat:hover .dl-cat-overlay {
    background: linear-gradient(0deg, rgba(8,8,8,0.95) 0%, rgba(212, 175, 55, 0.15) 100%);
}

.dl-cat-content {
    position: absolute; bottom: 0; left: 0; right: 0;
    padding: var(--sp-lg);
    z-index: 2;
}
.dl-cat-icon {
    font-size: 2rem;
    color: var(--dl-gold);
    margin-bottom: 12px;
    transition: transform 0.4s var(--tr-bounce);
}
.dl-cat:hover .dl-cat-icon { transform: scale(1.2) translateY(-4px); }
.dl-cat-content h4 {
    font-size: 1.8rem;
    margin: 0 0 6px 0;
}
.dl-cat-content p {
    font-size: 0.85rem; color: var(--dl-gray); margin: 0;
}

/* ============================================
   DELIVERY / LIEFERGEBÜHREN SECTION
   ============================================ */
.dl-delivery {
    padding: var(--sp-xxl) 0;
    background: var(--dl-black);
    position: relative;
}
.dl-delivery::before {
    content: '';
    position: absolute; top:0; left:0; right:0; height:1px;
    background: linear-gradient(90deg, transparent, rgba(212,175,55,0.2), transparent);
}

.dl-delivery-wrap {
    max-width: 960px;
    margin: 0 auto;
}

/* Mindestbestellwert Badge */
.dl-deliv-badge {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 12px 28px;
    background: rgba(212, 175, 55, 0.1);
    border: 1px solid rgba(212, 175, 55, 0.3);
    border-radius: var(--r-full);
    color: var(--dl-gold);
    font-size: 1rem;
    font-weight: 500;
    letter-spacing: 0.5px;
    margin: 0 auto var(--sp-xl);
    width: fit-content;
    backdrop-filter: blur(10px);
}
.dl-deliv-badge strong {
    color: var(--dl-gold-light);
    font-size: 1.15rem;
}

/* Delivery Cards Grid */
.dl-deliv-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    margin-bottom: var(--sp-lg);
}

/* Individual Card */
.dl-deliv-card {
    background: var(--dl-dark-2);
    border: 1px solid rgba(255,255,255,0.04);
    border-radius: var(--r-xl);
    padding: var(--sp-lg) var(--sp-md);
    text-align: center;
    transition: all var(--tr-smooth);
    position: relative;
    overflow: hidden;
}
.dl-deliv-card::before {
    content: '';
    position: absolute; top: 0; left: 0; right: 0;
    height: 3px;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.06), transparent);
    transition: background 0.4s;
}
.dl-deliv-card:hover {
    transform: translateY(-6px);
    border-color: rgba(212, 175, 55, 0.25);
    box-shadow: 0 20px 40px rgba(0,0,0,0.5), 0 0 15px rgba(212,175,55,0.08);
}
.dl-deliv-card:hover::before {
    background: linear-gradient(90deg, transparent, rgba(212,175,55,0.5), transparent);
}

/* Highlight Card (Innerorts) */
.dl-deliv-highlight {
    background: linear-gradient(180deg, rgba(212,175,55,0.08) 0%, var(--dl-dark-2) 100%);
    border-color: rgba(212, 175, 55, 0.2);
}
.dl-deliv-highlight::before {
    height: 3px;
    background: linear-gradient(90deg, transparent, var(--dl-gold), transparent);
}

/* Card Icon */
.dl-deliv-icon {
    width: 56px; height: 56px;
    margin: 0 auto var(--sp-md);
    background: rgba(212, 175, 55, 0.1);
    border-radius: var(--r-full);
    display: flex; align-items: center; justify-content: center;
    font-size: 1.4rem;
    color: var(--dl-gold);
    transition: all var(--tr-bounce);
}
.dl-deliv-card:hover .dl-deliv-icon {
    transform: scale(1.1);
    background: rgba(212, 175, 55, 0.2);
    box-shadow: 0 0 20px rgba(212,175,55,0.2);
}

/* Card Texts */
.dl-deliv-card h4 {
    font-size: 1.3rem;
    letter-spacing: 1px;
    margin-bottom: 4px;
}
.dl-deliv-zone {
    font-size: 0.85rem !important;
    color: var(--dl-gray) !important;
    margin-bottom: var(--sp-md) !important;
    font-weight: 400;
}
.dl-deliv-price {
    font-family: var(--font-display);
    font-size: 2.5rem;
    color: var(--dl-gold);
    letter-spacing: 1px;
    margin-bottom: var(--sp-xs);
    text-shadow: 0 0 20px rgba(212,175,55,0.2);
}
.dl-deliv-note {
    font-size: 0.78rem !important;
    color: var(--dl-gray) !important;
    margin: 0 !important;
    opacity: 0.7;
}

/* Ab 8 km Notice */
.dl-deliv-notice {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 16px 28px;
    background: rgba(212, 175, 55, 0.06);
    border: 1px solid rgba(212, 175, 55, 0.15);
    border-radius: var(--r-lg);
    color: var(--dl-gray-lt);
    font-size: 0.95rem;
    text-align: center;
    margin-top: var(--sp-sm);
}
.dl-deliv-notice i {
    color: var(--dl-gold);
    font-size: 1.2rem;
    flex-shrink: 0;
}
.dl-deliv-notice a {
    color: var(--dl-gold);
    transition: color 0.2s;
}
.dl-deliv-notice a:hover {
    color: var(--dl-gold-light);
    text-decoration: underline;
}

/* Delivery section responsive */
@media (max-width: 900px) {
    .dl-deliv-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width: 520px) {
    .dl-deliv-grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }
    .dl-deliv-card {
        padding: var(--sp-md);
    }
    .dl-deliv-price {
        font-size: 2rem;
    }
    .dl-deliv-notice {
        flex-direction: column;
        gap: 8px;
        font-size: 0.88rem;
    }
}


/* ============================================
   INFO SECTION
   ============================================ */
.dl-info {
    padding: var(--sp-xxl) 0;
    background: var(--dl-black);
}

.dl-info-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 30px;
}

.dl-info-box {
    background: var(--dl-dark-2);
    padding: var(--sp-xl) var(--sp-lg);
    border-radius: var(--r-xl);
    text-align: center;
    border: 1px solid rgba(255,255,255,0.03);
    transition: transform 0.3s;
}
.dl-info-box:hover { transform: translateY(-5px); border-color: rgba(212,175,55,0.2); }

.dl-info-icon {
    width: 64px; height: 64px;
    margin: 0 auto var(--sp-md);
    background: rgba(212, 175, 55, 0.1);
    color: var(--dl-gold);
    border-radius: var(--r-full);
    display: flex; align-items: center; justify-content: center;
    font-size: 1.6rem;
}

.dl-info-box h4 { font-size: 1.5rem; letter-spacing: 1px; }
.dl-info-box p { color: var(--dl-gray); font-size: 0.95rem; margin: 0; }
.dl-info-box strong { color: var(--dl-white); display: block; margin-top: 4px; }


/* ============================================
   FINAL CTA
   ============================================ */
.dl-final {
    position: relative;
    padding: var(--sp-xxl) 0;
    background: var(--dl-dark-1);
    text-align: center;
    overflow: hidden;
}
.dl-final-bg {
    position: absolute; inset: 0;
    background: radial-gradient(circle at center, rgba(212, 175, 55, 0.1) 0%, transparent 60%);
}
.dl-final .dl-container { position: relative; z-index: 2; }
.dl-final h2 { font-size: clamp(3rem, 6vw, 5rem); margin-bottom: var(--sp-sm); }
.dl-final p { font-size: 1.2rem; margin-bottom: var(--sp-lg); color: var(--dl-gray-lt); }


/* ============================================
   STICKY BOTTOM BUTTON
   ============================================ */
.dl-sticky {
    position: fixed;
    bottom: 24px; left: 50%;
    transform: translateX(-50%);
    z-index: 9999;
    background: var(--dl-gold);
    color: var(--dl-black);
    padding: 14px 32px;
    border-radius: var(--r-full);
    font-family: var(--font-body);
    font-weight: 700;
    font-size: 1rem;
    text-transform: uppercase;
    letter-spacing: 1px;
    display: flex; align-items: center; gap: 10px;
    box-shadow: var(--sh-gold), 0 0 0 6px rgba(212, 175, 55, 0.15);
    transition: all var(--tr-bounce);
    opacity: 0; pointer-events: none;
    transform: translate(-50%, 20px);
}
.dl-sticky.visible {
    opacity: 1; pointer-events: auto;
    transform: translate(-50%, 0);
}
.dl-sticky:hover {
    background: var(--dl-gold-light);
    transform: translate(-50%, -4px);
    box-shadow: 0 15px 35px rgba(212,175,55,0.5), 0 0 0 8px rgba(212, 175, 55, 0.2);
}

/* ============================================
   REVEAL ANIMATIONS (Triggered by JS)
   ============================================ */
.reveal {
    opacity: 0;
    transform: translateY(40px);
    transition: opacity 0.8s ease, transform 0.8s cubic-bezier(0.2, 0.8, 0.2, 1);
}
.reveal.active {
    opacity: 1; transform: translateY(0);
}

/* ============================================
   RESPONSIVE
   ============================================ */
@media (max-width: 768px) {
    .dl-hero-actions { flex-direction: column; width: 100%; max-width: 320px; margin: 0 auto; }
    .dl-hero-actions .dl-btn { width: 100%; }
    .dl-sticky { width: 90%; max-width: 400px; justify-content: center; }
}

/* ===== Lieferfrei: Rechtliches im Footer ===== */
.screen-reader-text { clip: rect(1px,1px,1px,1px); height: 1px; overflow: hidden; position: absolute !important; width: 1px; word-wrap: normal !important; }
.screen-reader-text:focus { background-color: #eee; clip: auto !important; clip-path: none; color: #333; display: block; font-size: 1rem; height: auto; left: 5px; line-height: normal; padding: 12px 24px; text-decoration: none; top: 5px; width: auto; z-index: 100000; }
.lf-legal { font-size: .85rem; text-align: center; padding: 12px 16px; }
.lf-legal a { color: inherit; text-decoration: underline; }
.lf-footer { background: var(--dl-black, #0a0a0a); color: var(--dl-gray-lt, #bbb); border-top: 1px solid rgba(255,255,255,.08); padding: 8px 0 110px; }
