/* =========================================================
   CONTACT PAGE
   ========================================================= */

   .contact-hero{
    position: relative;
    padding-top: 84px; /* space for fixed topbar */
    padding-bottom: 26px;
    overflow: hidden;
    isolation: isolate;
  }
  
  .contact-hero::before{
    content:"";
    position:absolute; inset:0;
    background:
      radial-gradient(circle at 18% 22%, rgba(64,185,235,.07), transparent 55%),
      radial-gradient(circle at 82% 18%, rgba(216,245,255,.05), transparent 60%),
      radial-gradient(circle at 50% 115%, rgba(255,255,255,.03), transparent 65%),
      linear-gradient(to bottom, rgba(7,6,7,.75), rgba(7,6,7,1));
    z-index: 0;
  }
  
  .contact-hero__inner{
    position: relative;
    z-index: 1;
    padding: 34px 0 16px;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
  }
  
  .contact-kicker{
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .34em;
    color: rgba(255,255,255,.55);
  }
  
  .contact-title{
    margin-top: 10px;
    font-size: 44px;
    line-height: 1.05;
    font-weight: 500;
    letter-spacing: .01em;
    color: rgba(255,255,255,.92);
  }
  
  .contact-sub{
    margin-top: 12px;
    max-width: 62ch;
    color: rgba(255,255,255,.70);
    line-height: 1.75;
    font-size: 15px;
  }
  
  .contact-badges{
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: flex-end;
  }
  
  .contact-badge{
    font-size: 11px;
    letter-spacing: .18em;
    text-transform: uppercase;
    color: rgba(255,255,255,.70);
    padding: 10px 12px;
    border-radius: 999px;
    border: 1px solid rgba(64,185,235,.18);
    background: rgba(255,255,255,.02);
    backdrop-filter: blur(10px);
  }
  
  /* =========================================================
     LEFT PANEL
     ========================================================= */
  
  .contact-panel{
    position: relative;
    overflow: hidden;
    border-radius: 26px;
    padding: 32px;
    border: 1px solid rgba(64,185,235,.09);
    background: rgba(255,255,255,.008);
    box-shadow:
      0 22px 70px rgba(0,0,0,.62),
      inset 0 1px 0 rgba(255,255,255,.04);
  }
  
  .contact-panel__bg{
    position: absolute;
    inset: -2px;
    pointer-events: none;
    background:
      radial-gradient(circle at 18% 22%, rgba(64,185,235,.10), transparent 58%),
      radial-gradient(circle at 82% 28%, rgba(216,245,255,.06), transparent 65%),
      radial-gradient(circle at 55% 120%, rgba(255,255,255,.03), transparent 70%);
    opacity: .48;
    filter: blur(10px);
    transform: scale(1.05);
  }
  
  .contact-panel__content{
    position: relative;
    z-index: 1;
  }
  
  .contact-panel__kicker{
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .34em;
    color: rgba(255,255,255,.55);
  }
  
  .contact-panel__title{
    margin-top: 10px;
    font-size: 30px;
    line-height: 1.06;
    font-weight: 500;
    color: rgba(255,255,255,.92);
  }
  
  .contact-panel__text{
    margin-top: 12px;
    color: rgba(255,255,255,.70);
    line-height: 1.75;
    font-size: 15px;
  }
  
  .contact-panel__list{
    margin-top: 20px;
    display: grid;
    gap: 12px;
    padding-top: 16px;
    border-top: 1px solid rgba(255,255,255,.08);
  }
  
  .contact-row{
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 14px;
  }
  
  .contact-row__label{
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .28em;
    color: rgba(255,255,255,.52);
  }
  
  .contact-row__value{
    text-align: right;
    color: rgba(255,255,255,.76);
    font-size: 14px;
  }
  
  .contact-panel__fine{
    margin-top: 18px;
    color: rgba(255,255,255,.52);
    font-size: 12px;
    line-height: 1.6;
  }
  
  .contact-link{
    color: rgba(216,245,255,.88);
    border-bottom: 1px solid rgba(64,185,235,.24);
    padding-bottom: 1px;
    transition: color .2s ease, border-color .2s ease;
  }
  .contact-link:hover{
    color: rgba(216,245,255,.96);
    border-color: rgba(64,185,235,.46);
  }
  
  /* =========================================================
     FORM CARD
     ========================================================= */
  
  .contact-card{
    position: relative;
    overflow: hidden;
    border-radius: 26px;
    padding: 32px;
    background: transparent;
    border: 1px solid transparent;
    box-shadow: none;
    transform: translateZ(0);
  }
  
  .contact-card__bg{
    position: absolute;
    inset: -2px;
    z-index: 0;
    pointer-events: none;
    background:
      radial-gradient(circle at 18% 22%, rgba(64,185,235,.08), transparent 60%),
      radial-gradient(circle at 82% 28%, rgba(216,245,255,.05), transparent 65%),
      radial-gradient(circle at 55% 115%, rgba(255,255,255,.025), transparent 70%);
    opacity: .48;
    transform: scale(1.02);
    filter: blur(8px);
  }
  
  .contact-card__top{
    position: relative;
    z-index: 1;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 18px;
  }
  
  .contact-card__kicker{
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .34em;
    color: rgba(255,255,255,.60);
  }
  
  .contact-card__title{
    margin-top: 10px;
    font-size: 30px;
    line-height: 1.06;
    font-weight: 500;
    color: rgba(255,255,255,.92);
  }
  
  .contact-card__meta{
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-size: 12px;
    color: rgba(255,255,255,.58);
    border: 1px solid rgba(64,185,235,.12);
    background: rgba(255,255,255,.01);
    padding: 10px 12px;
    border-radius: 999px;
  }
  
  .contact-dot{
    width: 8px;
    height: 8px;
    border-radius: 999px;
    background: rgba(64,185,235,.86);
    box-shadow: 0 0 0 3px rgba(64,185,235,.12);
  }
  
  /* Form */
  .contact-form{
    position: relative;
    z-index: 1;
    display: grid;
    gap: 14px;
  }
  
  .field{
    display: grid;
    gap: 8px;
  }
  
  .field__label{
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .28em;
    color: rgba(255,255,255,.58);
  }
  
  .field__input{
    width: 100%;
    border-radius: 18px;
    padding: 12px 14px;
  
    background: rgba(255,255,255,.02);
    border: 1px solid rgba(255,255,255,.10);
    color: rgba(255,255,255,.88);
  
    box-shadow:
      0 10px 30px rgba(0,0,0,.35),
      inset 0 1px 0 rgba(255,255,255,.06);
  
    outline: none;
    transition: border-color .2s ease, box-shadow .2s ease, transform .18s ease;
  }
  
  .field__input::placeholder{
    color: rgba(255,255,255,.40);
  }
  
  .field__input:focus{
    border-color: rgba(216,245,255,.24);
    box-shadow:
      0 0 0 3px rgba(64,185,235,.12),
      0 10px 30px rgba(0,0,0,.40),
      inset 0 1px 0 rgba(255,255,255,.07);
  }
  
  .field__select{
    appearance: none;
    background-image:
      linear-gradient(45deg, transparent 50%, rgba(216,245,255,.68) 50%),
      linear-gradient(135deg, rgba(216,245,255,.68) 50%, transparent 50%);
    background-position:
      calc(100% - 20px) calc(50% - 2px),
      calc(100% - 15px) calc(50% - 2px);
    background-size: 5px 5px, 5px 5px;
    background-repeat: no-repeat;
    padding-right: 42px;
  }
  
  .field__textarea{
    resize: vertical;
    min-height: 160px;
  }
  
  .field__hint{
    display: flex;
    justify-content: flex-end;
    font-size: 12px;
    color: rgba(255,255,255,.48);
  }
  
  .field__error{
    min-height: 18px;
    font-size: 12px;
    color: rgba(255,120,120,.92);
  }
  
  /* Actions */
  .contact-actions{
    margin-top: 6px;
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
  }
  
  .form-status{
    font-size: 13px;
    color: rgba(255,255,255,.72);
  }
  
  .form-status--ok{ color: rgba(216,245,255,.88); }
  .form-status--err{ color: rgba(255,120,120,.92); }
  
  .contact-fineprint{
    margin-top: 6px;
    font-size: 12px;
    line-height: 1.6;
    color: rgba(255,255,255,.46);
  }
  
  /* Honeypot */
  .hp-wrap{
    position: absolute !important;
    left: -9999px !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    opacity: 0 !important;
  }
  
  /* Responsive */
  @media (max-width: 640px){
    .contact-hero__inner{
      padding: 26px 0 10px;
      flex-direction: column;
      align-items: flex-start;
    }
    .contact-title{ font-size: 38px; }
    .contact-panel, .contact-card{
      padding: 26px 24px;
      border-radius: 22px;
    }
  }
  
  
  /* =========================================================
     CONTACT: SELECT / OPTIONS (Thema Dropdown) – readable + dark
     ========================================================= */
  
  .field__select{
    color: rgba(255,255,255,.88);
  }
  
  /* Wichtig: das Dropdown (Option-Liste) übernimmt oft NICHT die Styles vom Select.
     Darum explizit die Optionen stylen. */
  .field__select option{
    background-color: #0b0a0b;     /* dark */
    color: rgba(255,255,255,.92); /* readable */
  }
  
  /* Placeholder-Option ("Bitte wählen…") */
  .field__select option[disabled]{
    color: rgba(255,255,255,.55);
  }
  
  /* Wenn du optisch mehr „Premium“ willst: leichter Ice-Blue Hover/Focus Eindruck
     (wirkt v.a. beim Select selbst; OS-Option-UI bleibt je nach Browser limitiert) */
  .field__select:focus{
    border-color: rgba(216,245,255,.24);
    box-shadow:
      0 0 0 3px rgba(64,185,235,.12),
      0 10px 30px rgba(0,0,0,.40),
      inset 0 1px 0 rgba(255,255,255,.07);
  }
  
  /* Für Firefox: bessere Lesbarkeit im Dropdown */
  @supports (-moz-appearance: none){
    .field__select{
      background-color: rgba(255,255,255,.02);
    }
  }
  
  
  /* Mobile: Wishlist in der Topbar hart ausblenden (falls Tailwind/hidden mal nicht greift) */
  @media (max-width: 767px){
    header.topbar a[href*="wishlist"]{
      display: none !important;
    }
  }