:root{
  --ink:#14130F;
  --forest:#25382E;
  --cognac:#D8B86A;
  --cognac-bright:#ECD79A;
  --bone:#EDE8DD;
  --bone-dim:#C9C2B4;
  --stone:#8A8377;
  --line:rgba(237,232,221,.14);
  --serif:"Fraunces",Georgia,serif;
  --sans:"Archivo",system-ui,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  background:var(--ink);
  color:var(--bone);
  font-family:var(--sans);
  font-weight:400;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
a{color:inherit;text-decoration:none}
.wrap{max-width:1240px;margin:0 auto;padding:0 32px}
.eyebrow{
  font-family:var(--sans);
  font-size:12px;font-weight:600;
  letter-spacing:.28em;text-transform:uppercase;
  color:var(--cognac-bright);
}

/* ---------- NAV ---------- */
header{
  position:fixed;top:0;left:0;right:0;z-index:50;
  transition:background .4s ease,backdrop-filter .4s ease,border-color .4s ease;
  border-bottom:1px solid transparent;
}
header.scrolled{
  background:rgba(20,19,15,.88);
  backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line);
}
.nav{display:flex;align-items:center;justify-content:space-between;height:100px}
.brand{display:flex;align-items:center;gap:14px}
.med-logo{height:54px;width:auto;display:block;filter:drop-shadow(0 0 10px rgba(0,0,0,.5))}
.brand span{color:var(--cognac-bright)}
.nav-links{display:flex;gap:38px;align-items:center}
.nav-links a{
  font-size:13px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;
  color:var(--bone-dim);transition:color .25s;position:relative;
}
.nav-links a:hover{color:var(--bone)}
.nav-links a.cta{
  border:1px solid var(--cognac);color:var(--cognac-bright);
  padding:11px 20px;border-radius:2px;transition:all .25s;
}
.nav-links a.cta:hover{background:var(--cognac);color:var(--ink)}
.burger{display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:6px}
.burger span{width:26px;height:2px;background:var(--bone);transition:.3s}

/* ---------- HERO ---------- */
.hero{
  position:relative;padding:150px 0 0;overflow:hidden;
  background:#000;
}
.hero-intro{max-width:62ch}
.hero-intro h1{
  font-family:var(--serif);font-weight:500;
  font-size:clamp(42px,7.2vw,104px);line-height:.98;letter-spacing:-.015em;
  max-width:14ch;margin:22px 0 26px;
}
.hero-intro h1 em{font-style:italic;color:var(--cognac-bright)}
.hero-intro p.lede{font-size:clamp(16px,1.5vw,19px);color:var(--bone-dim);max-width:46ch;margin-bottom:38px}
.hero-full{width:100%;margin-top:56px;line-height:0}
.hero-full img{width:100%;height:auto;display:block}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.hero-grid .hero-intro{max-width:none}
.hero-aside{line-height:0}
.hero-aside img{width:100%;height:auto;display:block;border-radius:4px}
@media(max-width:900px){.hero{padding:120px 0 0}.hero-full{margin-top:40px}.hero-grid{grid-template-columns:1fr;gap:36px}}

/* ---------- MARQUEE STATS ---------- */
.stats{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.stats .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.stat{padding:40px 24px;border-right:1px solid var(--line)}
.stat:last-child{border-right:0}
.stat .v{font-family:var(--serif);font-size:clamp(30px,3.6vw,46px);font-weight:500;color:var(--bone);line-height:1}
.stat .k{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--stone);margin-top:12px}

/* ---------- SECTION SHELL ---------- */
section.block{padding:120px 0}
.sec-head{max-width:64ch;margin-bottom:64px}
.sec-head h2{
  font-family:var(--serif);font-weight:500;
  font-size:clamp(30px,4.4vw,56px);line-height:1.04;letter-spacing:-.01em;margin:18px 0 22px;
}
.sec-head p{color:var(--bone-dim);font-size:17px;max-width:52ch}

/* ---------- EXPERIENCE ---------- */
.exp{background:#000}
.exp-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:72px;align-items:center}
.exp-copy h2{font-family:var(--serif);font-weight:500;font-size:clamp(28px,4vw,50px);line-height:1.06;margin:18px 0 24px}
.exp-copy p{color:var(--bone-dim);margin-bottom:18px;max-width:50ch}
.exp-list{list-style:none;margin-top:30px}
.exp-list li{display:flex;gap:16px;padding:18px 0;border-top:1px solid var(--line);align-items:baseline}
.exp-list li:last-child{border-bottom:1px solid var(--line)}
.exp-list .idx{font-family:var(--sans);font-size:12px;font-weight:700;color:var(--cognac-bright);letter-spacing:.1em;min-width:28px}
.exp-list strong{font-weight:600;color:var(--bone);display:block;margin-bottom:3px}
.exp-list span{color:var(--stone);font-size:14.5px}
.ph{position:relative;border-radius:0;overflow:hidden;background:#000;border:none;min-height:480px;display:flex;align-items:flex-end}
.ph .tag{
  font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--bone-dim);
  padding:14px 18px;background:rgba(20,19,15,.5);backdrop-filter:blur(4px);
  border-top:1px solid var(--line);width:100%;
}
.ph.small{min-height:300px}
.ph.has-img{padding:0;min-height:0;overflow:visible;position:static}
.ph.has-img img{display:block;width:100%;height:auto;object-fit:unset}

/* ---------- GENERATIONS ---------- */
.gens{background:radial-gradient(100% 90% at 50% 0%, rgba(216,184,106,.18), transparent 60%), var(--ink)}
.gen-row{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.gen{position:relative;background:#1b1a15;padding:30px 26px;min-height:0;aspect-ratio:5/6;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;transition:background .45s ease}
.gen .era{font-family:var(--sans);font-size:12px;font-weight:700;letter-spacing:.16em;color:var(--cognac-bright);position:relative;z-index:2;transition:color .35s}
.gen .name{font-family:var(--serif);font-size:26px;font-weight:500;margin:12px 0 8px;position:relative;z-index:2;transition:color .35s}
.gen .desc{font-size:14px;color:var(--bone-dim);position:relative;z-index:2;transition:color .35s}
.gen .model{position:absolute;inset:0;background:transparent;opacity:0;transition:opacity .28s ease;z-index:5}
.gen .model img{width:100%;height:100%;object-fit:cover;object-position:center top}
.gen .era,.gen .name,.gen .desc{transition:opacity .28s ease}
.gen:not(.logo-cell):not(.empty):hover .model{opacity:1}
.gen:not(.logo-cell):not(.empty):hover .era,
.gen:not(.logo-cell):not(.empty):hover .name,
.gen:not(.logo-cell):not(.empty):hover .desc{opacity:0}
.gen.empty{opacity:.72}
.gen.empty:hover{background:#232017;opacity:1}
.gen.logo-cell{padding:0;background:#000;overflow:hidden}
.gen.logo-cell .med{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:26px}

/* ---------- ROUTE / CONCIERGE feature ---------- */
.feature{display:grid;grid-template-columns:1fr 1fr;gap:0;align-items:stretch}
.feature .ph{min-height:560px;border-radius:0}
.feature .body{padding:96px 72px;display:flex;flex-direction:column;justify-content:center}
.feature .body h2{font-family:var(--serif);font-weight:500;font-size:clamp(28px,3.8vw,46px);line-height:1.08;margin:18px 0 22px}
.feature .body p{color:var(--bone-dim);margin-bottom:18px;max-width:46ch}
.feature .body .btn{align-self:flex-start;margin-top:14px}

/* ---------- REVIEWS ---------- */
.reviews{background:linear-gradient(180deg,#171611,var(--ink))}
.rev-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.rev{border:1px solid var(--line);border-radius:4px;padding:34px;background:rgba(237,232,221,.02)}
.rev .stars{color:var(--cognac-bright);letter-spacing:.3em;font-size:13px;margin-bottom:18px}
.rev blockquote{font-family:var(--serif);font-size:19px;line-height:1.45;font-style:italic;color:var(--bone);margin-bottom:22px}
.rev .who{font-size:13px;letter-spacing:.08em;color:var(--stone);text-transform:uppercase}

/* ---------- FINAL CTA ---------- */
.final{
  text-align:center;padding:150px 0;
  background:
    radial-gradient(100% 90% at 50% 0%, rgba(216,184,106,.18), transparent 60%),
    var(--ink);
}
.final h2{font-family:var(--serif);font-weight:500;font-size:clamp(38px,6vw,80px);line-height:1.02;letter-spacing:-.01em;margin-bottom:26px}
.final h2 em{font-style:italic;color:var(--cognac-bright)}
.final p{color:var(--bone-dim);max-width:42ch;margin:0 auto 40px;font-size:18px}

/* ---------- FOOTER ---------- */
footer{border-top:1px solid var(--line);padding:64px 0 40px}
.foot-top{display:flex;justify-content:space-between;gap:40px;flex-wrap:wrap;margin-bottom:48px}
.foot-brand{font-family:var(--serif);font-size:28px;font-weight:600;color:var(--cognac-bright)}
.foot-brand span{color:var(--cognac-bright)}
.foot-brand p{font-family:var(--sans);font-size:14px;color:var(--stone);margin-top:14px;max-width:34ch}
.foot-cols{display:flex;gap:72px;flex-wrap:wrap}
.foot-col h4{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--stone);margin-bottom:18px}
.foot-col a{display:block;color:var(--bone-dim);font-size:14.5px;padding:6px 0;transition:color .2s}
.foot-col a:hover{color:var(--cognac-bright)}
.foot-bottom{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding-top:28px;border-top:1px solid var(--line);font-size:12.5px;color:var(--stone);letter-spacing:.04em}
.footer-links{
    margin-top:25px;
    text-align:center;
}

.footer-links a{
    color:#bdbdbd;
    font-size:14px;
    text-decoration:none;
    margin:0 8px;
}

.footer-links a:hover{
    color:#ffffff;
}


/* ---------- REVEAL ---------- */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s ease}
.reveal.in{opacity:1;transform:none}

/* ---------- RESPONSIVE ---------- */
@media(max-width:900px){
  .nav{
    height:86px;
  }

  .med-logo{
    height:46px;
  }

  .nav-links{
    position:fixed;
    top:86px;
    left:0;
    right:0;
    z-index:49;

    display:flex;
    flex-direction:column;
    gap:0;

    background:rgba(20,19,15,.98);
    backdrop-filter:blur(14px);
    border-bottom:1px solid var(--line);

    padding:0;
    max-height:0;
    overflow:hidden;
    opacity:0;
    pointer-events:none;

    transition:max-height .35s ease, opacity .25s ease;
  }

  .nav-links.open{
    max-height:420px;
    opacity:1;
    pointer-events:auto;
  }

  .nav-links a{
    width:100%;
    padding:18px 32px;
    border-bottom:1px solid var(--line);
    text-align:left;
  }

  .burger{
    display:flex;
  }

  .exp-grid,.feature{grid-template-columns:1fr}
  .feature .body{padding:64px 32px}
  .feature .ph{min-height:380px}
  .stats .wrap{grid-template-columns:repeat(2,1fr)}
  .stat:nth-child(2){border-right:0}
  .gen-row{grid-template-columns:1fr 1fr}
  .rev-grid{grid-template-columns:1fr}
}
@media(max-width:560px){

  .wrap{
    padding:0 22px;
  }

  .stats .wrap{
    grid-template-columns:1fr;
  }

  .stat{
    border-right:0;
  }

  .gen-row{
    grid-template-columns:1fr;
  }

  /* ---------- MOBILE GENERATIONS ---------- */

  .gen{
    aspect-ratio:auto;
    min-height:auto;
    padding:0;
    display:block;
  }

  .gen .model{
    position:relative;
    inset:auto;
    opacity:1;
    height:220px;
  }

  .gen .model img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
  }

  .gen .era,
  .gen .name,
  .gen .desc{
    opacity:1 !important;
    position:relative;
    z-index:2;
    padding-left:20px;
    padding-right:20px;
  }

  .gen .era{
    padding-top:18px;
  }

  .gen .desc{
    padding-bottom:24px;
  }

  /* Hover deaktivieren auf Mobile */

  .gen:hover .model{
    opacity:1;
  }

  .gen:hover .era,
  .gen:hover .name,
  .gen:hover .desc{
    opacity:1;
  }

}
@media(prefers-reduced-motion:reduce){
  *{scroll-behavior:auto!important}
  .reveal{opacity:1;transform:none;transition:none}
}
/* ---------- ABOUT ---------- */

.about-grid{
  display:grid;
  grid-template-columns:1.3fr .7fr;
  gap:72px;
  align-items:center;
}

.about-photos{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px;
}

.about-ph{
  position:relative;
  height:380px;
  overflow:hidden;
  border-radius:4px;
  border:1px solid var(--line);
  background:#111009;
}

.team-photo{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 20%;
  display:block;
}

.about-ph .ph-name{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  padding:14px 18px;
  text-align:center;

  font-family:var(--serif);
  font-size:22px;
  color:var(--bone);

  background:linear-gradient(
    to top,
    rgba(0,0,0,.85),
    rgba(0,0,0,.4),
    transparent
  );
}

@media(max-width:900px){
  .about-grid{
    grid-template-columns:1fr;
    gap:48px;
  }

  .about-photos{
    grid-template-columns:1fr 1fr;
    gap:16px;
  }

  .about-ph{
    height:300px;
  }
}

@media(max-width:560px){
  .about-photos{
    grid-template-columns:1fr;
    gap:22px;
  }

  .about-ph{
    height:360px;
  }

  .team-photo{
    object-position:center 18%;
  }
}


/* ---------- CARS extra lede line ---------- */
.lede-extra{margin-top:10px;font-family:var(--serif);font-style:italic;color:var(--cognac-bright);font-size:19px}

/* ---------- TOURS ---------- */

.tours-row{
    display:flex;
    flex-direction:column;
    gap:100px;
}

.tour{
    display:grid;
    grid-template-columns:55% 45%;
    gap:70px;
    align-items:center;

    padding-bottom:80px;
    border-bottom:1px solid var(--line);
}

.tour:last-child{
    border-bottom:none;
    padding-bottom:0;
}

.tour-media{
    overflow:hidden;
    border-radius:6px;
}

.tour-media img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    aspect-ratio:16 / 10;
}

.tour-content{
    max-width:560px;
}

.tour-content .era{
    display:block;
    margin-bottom:12px;

    font-size:12px;
    font-weight:700;
    letter-spacing:.16em;
    text-transform:uppercase;
    color:var(--cognac-bright);
}

.tour-content h3{
    font-family:var(--serif);
    font-weight:500;
    font-size:42px;
    line-height:1.1;
    margin-bottom:12px;
}

.tour-content .sub{
    display:block;
    color:var(--stone);
    margin-bottom:24px;
    font-size:15px;
}

.tour-content p{
    color:var(--bone-dim);
    line-height:1.85;
    font-size:16px;
}

.tour-bottom{
    object-position:center bottom;
}

@media(max-width:900px){

    .tour{
        grid-template-columns:1fr;
        gap:32px;
        padding-bottom:60px;
    }

    .tour-media{
        overflow:visible;
    }

    .tour-media img{
        aspect-ratio:4 / 3;
        object-fit:cover;
        object-position:center;
    }

    .tour-content{
        max-width:none;
    }

    .tour-content h3{
        font-size:32px;
    }
    .tour-bottom{
        object-position:center bottom !important;
    }
}


/* ---------- GALLERY ---------- */
.gallery-wrap{position:relative;margin-top:36px}
.gallery-track{
  display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;
  padding:0 32px 8px;scrollbar-width:none;
}
.gallery-track::-webkit-scrollbar{display:none}
.gal-item{flex:0 0 auto;height:380px;scroll-snap-align:start;border-radius:4px;overflow:hidden;background:#000}
.gal-item img{height:100%;width:auto;display:block}
.gal-arrow{
  position:absolute;top:50%;transform:translateY(-50%);z-index:5;
  width:46px;height:46px;border-radius:50%;border:1px solid var(--line);
  background:rgba(20,19,15,.88);color:var(--bone);font-size:24px;line-height:1;
  display:flex;align-items:center;justify-content:center;cursor:pointer;
  transition:background .25s ease;
}
.gal-arrow:hover{background:rgba(20,19,15,1)}
.gal-prev{left:8px}
.gal-next{right:8px}
@media(max-width:900px){.gal-item{height:280px}}
@media(max-width:560px){.gal-item{height:220px}.gal-arrow{width:38px;height:38px;font-size:20px}}

/* ---------- BOOKING BUTTON (scoped to #booking only â€” hero buttons stay plain text) ---------- */
.final .btn{
  display:inline-block;font-family:var(--sans);font-weight:700;
  font-size:18px;letter-spacing:.02em;padding:20px 44px;border-radius:2px;
  text-decoration:none;cursor:pointer;transition:background .3s ease,color .3s ease;
  border:1px solid transparent;line-height:1.1;
}
.final .btn-primary{background:var(--cognac-bright);color:var(--ink)}
.final .btn-primary:hover{background:var(--cognac)}
.booking-form .btn-primary{font-size:16px;padding:17px 36px}

/* ---------- BOOKING FORM ---------- */
.booking-form{
  max-width:640px;margin:0 auto;overflow:hidden;
  max-height:0;opacity:0;transition:max-height .5s ease,opacity .4s ease,margin-top .4s ease;
}
.booking-form.open{max-height:900px;opacity:1;margin-top:44px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.form-field{margin-bottom:20px;text-align:left}
.form-field label{
  display:block;font-family:var(--sans);font-size:12px;font-weight:600;
  letter-spacing:.08em;text-transform:uppercase;color:var(--stone);margin-bottom:8px;
}
.form-field input,.form-field select,.form-field textarea{
  width:100%;background:#1b1a15;border:1px solid var(--line);border-radius:2px;
  padding:13px 14px;color:var(--bone);font-family:var(--sans);font-size:15px;
  transition:border-color .25s ease;
}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{
  outline:none;border-color:var(--cognac-bright);
}
.form-field textarea{resize:vertical}
.booking-form .btn-primary{margin-top:6px}
.privacy-check{
    margin:20px 0 25px;
    font-size:14px;
    line-height:1.6;
    color:#c7c7c7;
    text-align:left;
}

.privacy-check label{
    display:flex;
    align-items:flex-start;
    gap:10px;
    cursor:pointer;
}

.privacy-check input[type="checkbox"]{
    margin-top:4px;
    transform:scale(1.1);
}

.privacy-check a{
    color:#d9b36c;
    text-decoration:none;
}

.privacy-check a:hover{
    color:#ffffff;
    text-decoration:underline;
}

@media(max-width:560px){.form-row{grid-template-columns:1fr}}


/* ---------- FLOATING SOCIAL ---------- */
.floating-social{
  position:fixed;right:22px;bottom:22px;z-index:80;
  display:flex;flex-direction:column;gap:14px;
}
.fab{
  width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  color:#fff;box-shadow:0 6px 18px rgba(0,0,0,.35);transition:transform .25s ease,box-shadow .25s ease;
}
.fab:hover{transform:translateY(-3px);box-shadow:0 10px 22px rgba(0,0,0,.45)}
.fab-whatsapp{background:#25D366}
.fab-instagram{background:radial-gradient(circle at 30% 110%,#fdf497 0%,#fdf497 5%,#fd5949 45%,#d6249f 60%,#285AEB 90%)}
@media(max-width:560px){.floating-social{right:14px;bottom:14px;gap:12px}.fab{width:46px;height:46px}}


/* ---------- Impressum ---------- */



    .legal-header {
      width: 100%;
      padding: 28px 5%;
      box-sizing: border-box;
      display: flex;
      align-items: center;
      justify-content: space-between;
      border-bottom: 1px solid var(--border-soft);
      background: rgba(15, 15, 15, 0.96);
    }

    .legal-brand {
      color: var(--text-main);
      text-decoration: none;
      font-size: 18px;
      letter-spacing: 2px;
      text-transform: uppercase;
      font-weight: 600;
    }

    .legal-brand span {
      color: var(--accent);
    }

    .legal-nav {
      display: flex;
      gap: 24px;
      align-items: center;
    }

    .legal-nav a {
      color: var(--text-muted);
      text-decoration: none;
      font-size: 13px;
      letter-spacing: 1.2px;
      text-transform: uppercase;
    }

    .legal-nav a:hover {
      color: var(--accent);
    }

    .legal-hero {
      padding: 90px 5% 60px;
      text-align: center;
      border-bottom: 1px solid var(--border-soft);
      background:
        linear-gradient(rgba(15, 15, 15, 0.78), rgba(15, 15, 15, 0.96)),
        radial-gradient(circle at center, rgba(217, 179, 108, 0.18), rgba(15, 15, 15, 0.3) 45%, rgba(15, 15, 15, 1) 80%);
    }

    .legal-hero p {
      margin: 0 0 18px;
      color: var(--accent);
      font-size: 12px;
      letter-spacing: 2px;
      text-transform: uppercase;
    }

    .legal-hero h1 {
      max-width: 900px;
      margin: 0 auto 28px;
      font-size: clamp(34px, 5vw, 64px);
      line-height: 1.05;
      letter-spacing: 1px;
      text-transform: uppercase;
    }

    .back-home-button {
      display: inline-block;
      margin-top: 10px;
      padding: 13px 24px;
      border: 1px solid var(--accent);
      color: var(--accent);
      text-decoration: none;
      font-size: 13px;
      letter-spacing: 1.4px;
      text-transform: uppercase;
      transition: all 0.25s ease;
    }

    .back-home-button:hover {
      background: var(--accent);
      color: #c7c7c7;
    }
    
    .legal-page {
      max-width: 1050px;
      margin: 0 auto;
      padding: 70px 25px 90px;
      box-sizing: border-box;
    }

    .legal-card {
      background: var(--bg-card);
      border: 1px solid var(--border-soft);
      padding: clamp(28px, 5vw, 58px);
      box-sizing: border-box;
    }

    .legal-page h2 {
      margin: 52px 0 18px;
      color: var(--text-main);
      font-size: 26px;
      line-height: 1.25;
      letter-spacing: 0.5px;
    }

    .legal-page h2:first-child {
      margin-top: 0;
    }

    .legal-page h3 {
      margin: 34px 0 14px;
      color: var(--text-main);
      font-size: 20px;
      line-height: 1.35;
    }

    .legal-page p,
    .legal-page li {
      color: var(--text-muted);
      font-size: 16px;
      line-height: 1.8;
    }

    .legal-page ul {
      padding-left: 22px;
      margin-top: 8px;
    }

    .legal-page a {
      color: var(--accent);
      text-decoration: none;
    }

    .legal-page a:hover {
      text-decoration: underline;
    }

    .legal-divider {
      height: 1px;
      width: 100%;
      background: var(--border-soft);
      margin: 58px 0;
    }

    .legal-note {
      padding: 20px 24px;
      border-left: 3px solid var(--accent);
      background: rgba(217, 179, 108, 0.07);
      margin: 26px 0;
    }

    .legal-note p {
      margin: 0;
      color: var(--text-muted);
    }

    .legal-footer {
      border-top: 1px solid var(--border-soft);
      padding: 34px 5%;
      text-align: center;
      color: var(--text-soft);
      font-size: 13px;
      line-height: 1.7;
    }

    .legal-footer a {
      color: var(--text-muted);
      text-decoration: none;
      margin: 0 8px;
    }

    .legal-footer a:hover {
      color: var(--accent);
    }

    @media (max-width: 760px) {
      .legal-header {
        padding: 22px 24px;
        flex-direction: column;
        gap: 18px;
      }

      .legal-nav {
        gap: 16px;
        flex-wrap: wrap;
        justify-content: center;
      }

      .legal-hero {
        padding: 70px 24px 50px;
      }

      .legal-page {
        padding: 45px 18px 70px;
      }

      .legal-card {
        padding: 28px 22px;
      }

      .legal-page h2 {
        font-size: 23px;
      }

      .legal-page p,
      .legal-page li {
        font-size: 15px;
      }
    }


