/*
Theme Name: Vinc_v2.2
Description: Helles, modernes Da-Vinci-Theme mit dezenten italienischen Akzenten.
Version: 2.2.0
Text Domain: davinci
*/
:root{--ivory:#fffdf8;--cream:#f7f1e7;--ink:#2e2823;--muted:#766b61;--gold:#b98232;--green:#15803d;--red:#b4232d;--line:#e8dfd2;--shadow:0 18px 48px rgba(58,42,27,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.65}a{text-decoration:none;color:inherit}img{display:block;max-width:100%}.container{width:min(1180px,92%);margin:auto}
.v2-header{position:sticky;top:0;z-index:90;background:rgba(255,253,248,.97);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.v2-flagline{height:3px;display:grid;grid-template-columns:1fr 1fr 1fr}.v2-flagline span:nth-child(1){background:#16834a}.v2-flagline span:nth-child(2){background:#fff}.v2-flagline span:nth-child(3){background:#c43b3f}.v2-header-inner{height:88px;display:flex;align-items:center;justify-content:space-between;gap:24px}.v2-brand strong{display:block;font-family:Georgia,serif;font-style:italic;font-size:31px;font-weight:400;color:#3c3129}.v2-brand small{display:block;font-size:9px;letter-spacing:.28em;color:#86776a;margin-top:5px}.main-nav{display:flex;align-items:center;gap:22px;font-size:14px;font-weight:600}.main-nav a:hover{color:var(--gold)}.v2-reserve{padding:12px 21px;border:1px solid var(--gold);border-radius:4px;color:#7f551c!important}.mobile-toggle{display:none;border:1px solid var(--line);background:#fff;padding:9px 11px}
.v2-hero{display:grid;grid-template-columns:46% 54%;min-height:690px;background:var(--cream)}.v2-hero-copy{display:flex;flex-direction:column;justify-content:center;padding:70px 7vw 70px max(4vw,calc((100vw - 1180px)/2))}.v2-kicker{color:#9d6824;text-transform:uppercase;font-size:11px;letter-spacing:.21em;font-weight:700}.v2-hero h1{font-family:Georgia,serif;font-size:clamp(52px,5vw,76px);line-height:1.02;font-weight:400;letter-spacing:-.03em;margin:22px 0 24px;color:#2e2823}.v2-lead{font-family:Georgia,serif;font-size:28px;line-height:1.35;margin:0;color:#5a4c41}.v2-lead em{color:#b27325;font-size:1.16em}.v2-small{margin:24px 0 0;color:#75685e;font-size:16px;max-width:480px}.v2-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px}.v2-btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 23px;border-radius:4px;font-weight:700;min-width:185px;transition:.25s}.v2-btn-primary{background:#b98232;color:#fff}.v2-btn-primary:hover{transform:translateY(-2px);background:#9f6d28}.v2-btn-outline{border:1px solid #b9a58a;color:#4b4036;background:#fff}.v2-btn-outline:hover{border-color:#b98232;color:#8b5c1f}.v2-italy-line{display:flex;width:82px;height:4px;margin-top:38px;border-radius:10px;overflow:hidden}.v2-italy-line span{flex:1}.v2-it-green{background:#17834b}.v2-it-white{background:#fff}.v2-it-red{background:#c73b43}
.v2-hero-photo{padding:34px 34px 34px 0;display:flex;align-items:center}.v2-hero-photo img{width:100%;height:620px;object-fit:cover;object-position:60% 38%;border-radius:24px;box-shadow:var(--shadow)}
.v2-quick{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.v2-quick-grid{display:grid;grid-template-columns:repeat(3,1fr)}.v2-quick-grid>div{padding:26px 28px;border-right:1px solid var(--line)}.v2-quick-grid>div:last-child{border-right:0}.v2-quick strong{display:block;color:#9a6525;font-size:12px;text-transform:uppercase;letter-spacing:.12em;margin-bottom:6px}.v2-quick span{color:#5f544b;font-size:14px}
.v2-welcome{padding:110px 0;background:linear-gradient(180deg,#fffdf9,#f8f1e8)}.v2-welcome-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:70px;align-items:center}.v2-welcome h2{font-family:Georgia,serif;font-size:49px;line-height:1.08;font-weight:400;letter-spacing:-.02em;margin:16px 0 25px}.v2-welcome p{font-size:17px;color:#6e6258;line-height:1.8}.v2-textlink{display:inline-block;margin-top:15px;color:#9b6420;font-weight:700;border-bottom:1px solid rgba(155,100,32,.4)}.v2-food-grid{display:grid;grid-template-columns:1.2fr .8fr;grid-template-rows:230px 230px;gap:16px}.v2-food-card{position:relative;overflow:hidden;margin:0;border-radius:18px;box-shadow:var(--shadow)}.v2-food-large{grid-row:1/3}.v2-food-card img{width:100%;height:100%;object-fit:cover;transition:transform .7s}.v2-food-card:hover img{transform:scale(1.045)}.v2-food-card::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(15,10,7,.48),transparent 52%)}.v2-food-card figcaption{position:absolute;z-index:2;left:20px;bottom:16px;color:#fff;font-family:Georgia,serif;font-size:25px}
.section{padding:100px 0}.section-title{text-align:center;margin-bottom:42px}.section-title h2{font-family:Georgia,serif;font-size:44px;font-weight:400;margin:10px 0}.section-title p{color:var(--muted)}.menu-section{margin:0 auto 54px;max-width:980px}.menu-category-title{font-family:Georgia,serif;font-size:32px;color:#76512a;border-bottom:1px solid var(--line);padding-bottom:10px}.menu-list{background:#fff;border-radius:18px;box-shadow:var(--shadow);padding:8px 24px}.menu-item{display:grid;grid-template-columns:1fr auto;gap:24px;padding:18px 0;border-bottom:1px solid var(--line)}.menu-item:last-child{border-bottom:0}.menu-item h4{font-family:Georgia,serif;font-size:21px;margin:0 0 4px}.menu-desc p{margin:0;color:var(--muted);font-size:14px}.menu-price{font-weight:700;color:#9c6824}.team-section{background:#fffaf4}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.team-card{background:#fff;border-radius:18px;overflow:hidden;box-shadow:var(--shadow)}.team-card img{width:100%;height:380px;object-fit:cover}.team-card-body{text-align:center;padding:22px}.team-card h3{font-family:Georgia,serif;font-size:26px;margin:0 0 4px}.team-card span{color:#9a6525;text-transform:uppercase;font-size:11px;letter-spacing:.12em}.gallery{display:grid;grid-template-columns:2fr 1fr 1fr;grid-auto-rows:220px;gap:16px}.gallery img{width:100%;height:100%;object-fit:cover;border-radius:16px}.gallery img:first-child{grid-row:span 2}.contact-strip{background:#302820;color:#fff;padding:55px 0}.contact-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.contact-grid strong{display:block;color:#ddb57b;margin-bottom:5px}.site-footer{background:#241e19;color:#cfc4bb;padding:28px 0;text-align:center;font-size:13px}
.davinci-notice{background:#fff4df;border-bottom:1px solid #ead3aa;color:#3c2b1e}.davinci-notice-inner{width:min(1180px,92%);margin:auto;padding:14px 0;display:flex;gap:12px;align-items:center;justify-content:center}
@media(max-width:900px){.main-nav{display:none;position:absolute;top:91px;left:0;right:0;background:#fff;padding:18px 4%;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}.main-nav.active{display:flex}.mobile-toggle{display:block}.v2-hero{grid-template-columns:1fr}.v2-hero-copy{padding:70px 6% 40px}.v2-hero-photo{padding:0 6% 45px}.v2-hero-photo img{height:560px}.v2-welcome-grid{grid-template-columns:1fr}.v2-quick-grid{grid-template-columns:1fr}.v2-quick-grid>div{border-right:0;border-bottom:1px solid var(--line)}.team-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.v2-hero h1{font-size:46px}.v2-lead{font-size:24px}.v2-actions{flex-direction:column}.v2-btn{width:100%}.v2-hero-photo img{height:470px;object-position:58% 34%}.v2-welcome h2{font-size:38px}.v2-food-grid{grid-template-columns:1fr;grid-template-rows:300px 210px 210px}.v2-food-large{grid-row:auto}.team-grid{grid-template-columns:1fr}.gallery{grid-template-columns:1fr;grid-auto-rows:220px}.gallery img:first-child{grid-row:auto}.contact-grid{grid-template-columns:1fr}}

/* V2.1 Premium-Finish */
.v2-header{box-shadow:0 8px 28px rgba(61,43,25,.035)}
.v2-hero{grid-template-columns:44% 56%;min-height:660px;background:linear-gradient(120deg,#f8f2e8 0%,#fbf7f0 44%,#fffdf9 44%)}
.v2-hero-copy{padding-top:76px;padding-bottom:76px}
.v2-hero h1{font-size:clamp(54px,4.55vw,72px);line-height:.99;max-width:620px;margin-top:25px}
.v2-lead{font-size:27px}
.v2-small{max-width:430px}
.v2-hero-photo{padding:42px 34px 42px 0}
.v2-hero-photo img{height:576px;border-radius:12px;box-shadow:0 24px 60px rgba(58,42,27,.13)}
.v2-kicker{letter-spacing:.23em}
.v2-brand strong{letter-spacing:-.025em}
.davinci-notice{background:#fff8ea;border-bottom:1px solid #e7d3ad}
.davinci-notice-inner{padding:13px 0}
.davinci-notice-icon{font-size:18px}
.davinci-notice p{margin:0;font-size:14px}
@media(max-width:900px){.v2-hero{grid-template-columns:1fr;background:var(--cream)}.v2-hero-photo{padding:0 6% 45px}.v2-hero-photo img{height:560px}}


/* =========================================================
   V2.2 – Premium Hero + dezente Da-Vinci-Anspielung
   ========================================================= */

.v2-hero{
  position:relative;
  grid-template-columns:45% 55%;
  min-height:610px;
  background:
    radial-gradient(circle at 21% 48%,rgba(185,130,50,.065),transparent 31%),
    linear-gradient(120deg,#f8f2e8 0%,#fbf7f0 45%,#fffdf9 45%);
}

/* abstrahiertes Vitruvian-Wasserzeichen – bewusst extrem dezent */
.v2-hero-copy{
  position:relative;
  overflow:hidden;
  padding-top:58px;
  padding-bottom:58px;
}

.v2-hero-copy::before{
  content:"";
  position:absolute;
  width:390px;
  height:390px;
  left:-92px;
  top:50%;
  transform:translateY(-48%);
  border:1px solid rgba(164,113,42,.075);
  border-radius:50%;
  pointer-events:none;
}

.v2-hero-copy::after{
  content:"";
  position:absolute;
  width:270px;
  height:270px;
  left:-31px;
  top:50%;
  transform:translateY(-48%) rotate(45deg);
  border:1px solid rgba(164,113,42,.055);
  pointer-events:none;
}

.v2-hero-copy > *{
  position:relative;
  z-index:2;
}

.v2-hero h1{
  max-width:650px;
  font-size:clamp(50px,4.15vw,67px);
  line-height:1.015;
  margin:20px 0 20px;
  letter-spacing:-.032em;
}

.v2-lead{
  font-size:25px;
  line-height:1.32;
}

.v2-lead em{
  font-size:1.12em;
}

.v2-small{
  margin-top:18px;
  max-width:455px;
  font-size:15px;
  line-height:1.65;
}

.v2-actions{
  margin-top:25px;
}

.v2-btn{
  padding:13px 21px;
}

.v2-italy-line{
  margin-top:25px;
  width:72px;
  height:3px;
}

.v2-hero-photo{
  padding:28px 32px 28px 0;
}

.v2-hero-photo img{
  height:554px;
  object-position:60% 37%;
  border-radius:10px;
  box-shadow:0 22px 55px rgba(58,42,27,.12);
}

/* Kleines DV-Monogramm als zusätzlicher Markenakzent */
.v2-brand{
  position:relative;
  padding-left:0;
}

.v2-brand strong::first-letter{
  color:#9b6828;
}

@media(max-width:1100px){
  .v2-hero h1{
    font-size:56px;
  }
}

@media(max-width:900px){
  .v2-hero{
    grid-template-columns:1fr;
    min-height:auto;
  }
  .v2-hero-copy{
    padding-top:60px;
    padding-bottom:42px;
  }
  .v2-hero-photo{
    padding:0 6% 42px;
  }
  .v2-hero-photo img{
    height:540px;
  }
}

@media(max-width:600px){
  .v2-hero h1{
    font-size:44px;
  }
  .v2-hero-copy::before{
    width:300px;
    height:300px;
    left:-140px;
  }
  .v2-hero-copy::after{
    width:205px;
    height:205px;
    left:-92px;
  }
}

.v2-hero-copy{
  background-image:url("assets/images/davinci-mark.svg");
  background-repeat:no-repeat;
  background-size:360px 360px;
  background-position:-78px center;
}

/* ===== V2.3 Wasserzeichen final subtil ===== */

.v2-hero-copy::before{
  opacity:.12 !important;
  left:-135px !important;
  width:340px !important;
  height:340px !important;
}


/* ===== V2.3 Wasserzeichen AUS ===== */

.v2-hero-copy{
  background-image:none !important;
}

.v2-hero-copy::before,
.v2-hero-copy::after{
  display:none !important;
  content:none !important;
}


/* Vincenzo Hero-Foto leicht aufhellen */
.v2-hero-photo img {
    filter: brightness(1.10) contrast(1.02);
}


/* Lightroom-Version final – keine zusätzliche CSS-Aufhellung */
.v2-hero-photo img {
    filter: none !important;
}


/* =========================================================
   DA VINCI – Aktuell / Themenabende / Saison
   ========================================================= */

.davinci-aktuell {
    padding: 90px 24px 100px;
    background:
        radial-gradient(circle at 90% 10%, rgba(169,110,35,.08), transparent 30%),
        #f8f4ed;
}

.davinci-aktuell-inner {
    max-width: 1220px;
    margin: 0 auto;
}

.davinci-aktuell-head {
    max-width: 820px;
    margin-bottom: 52px;
}

.davinci-eyebrow,
.davinci-card-label {
    display: block;
    color: #a56a20;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .18em;
    text-transform: uppercase;
}

.davinci-aktuell-head h2 {
    margin: 12px 0 18px;
    max-width: 780px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(38px, 4vw, 58px);
    line-height: 1.08;
    font-weight: 500;
    color: #29231e;
}

.davinci-aktuell-head p {
    max-width: 760px;
    margin: 0;
    font-size: 18px;
    line-height: 1.75;
    color: #625a52;
}

.davinci-aktuell-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 26px;
}

.davinci-event-card {
    position: relative;
    min-height: 290px;
    padding: 42px 42px 38px;
    background: rgba(255,255,255,.78);
    border: 1px solid rgba(151,105,51,.18);
    border-radius: 4px;
    box-shadow: 0 18px 50px rgba(55,42,28,.06);
    transition: transform .25s ease, box-shadow .25s ease;
}

.davinci-event-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 24px 60px rgba(55,42,28,.11);
}

.davinci-event-card h3 {
    margin: 16px 0 14px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 31px;
    line-height: 1.2;
    font-weight: 500;
    color: #2b251f;
}

.davinci-event-card p {
    margin: 0 0 30px;
    max-width: 500px;
    color: #665e56;
    font-size: 16px;
    line-height: 1.7;
}

.davinci-event-card a {
    display: inline-block;
    color: #945d18;
    font-weight: 700;
    text-decoration: none;
    border-bottom: 1px solid rgba(148,93,24,.35);
    padding-bottom: 4px;
}

.davinci-event-card a:hover {
    border-bottom-color: #945d18;
}

@media (max-width: 800px) {
    .davinci-aktuell {
        padding: 65px 20px 70px;
    }

    .davinci-aktuell-grid {
        grid-template-columns: 1fr;
    }

    .davinci-event-card {
        min-height: auto;
        padding: 34px 28px;
    }
}

