/*
Theme Name:   Avelorna Child
Theme URI:    https://avelorna.com
Description:  Child-Theme für Divi 5 — Avelorna (Light Luxury). Lädt Fraunces + Jost und stellt die Design-Tokens als CSS-Variablen bereit.
Author:       Zoom Internetagentur
Template:     Divi-5
Version:      1.1.0
Text Domain:  avelorna-child
*/

/* =========================================================
   ⚠️  WICHTIG: "Template:" oben MUSS exakt dem Ordnernamen des
   installierten Divi-5-Parent-Themes entsprechen (in wp-content/themes/).
   Klassisch heißt der Ordner "Divi". Falls Divi 5 unter einem anderen
   Ordnernamen liegt, diese Zeile entsprechend anpassen — sonst lässt sich
   das Child-Theme nicht aktivieren.
   ========================================================= */

/* ---- NOMAD VERIFIED · DESIGN TOKENS ---- */
:root{
  --nv-ivory:#F7F3EC;
  --nv-ivory-warm:#FBF8F2;
  --nv-navy:#122A3F;
  --nv-navy-deep:#0B1C2B;
  --nv-gold:#C4A567;
  --nv-gold-ink:#9C7C38;
  --nv-gold-soft:#D8C295;
  --nv-ink:#1E2A32;
  --nv-stone:#6E6A61;
  --nv-azur:#3E7C93;
  --nv-line:#E3DCCC;
  --nv-serif:"Fraunces",Georgia,serif;
  --nv-sans:"Jost","Helvetica Neue",Arial,sans-serif;
}

/* ---- Basis-Typo (greift, wo Divi nichts überschreibt) ---- */
body{ font-family:var(--nv-sans); color:var(--nv-ink); font-weight:300; }
h1,h2,h3,h4,h5,h6,
.et_pb_module h1,.et_pb_module h2,.et_pb_module h3,.et_pb_module h4{
  font-family:var(--nv-serif); font-weight:300; color:var(--nv-navy); letter-spacing:-.01em;
}
.nv-eyebrow{ font-family:var(--nv-sans); font-size:.76rem; font-weight:500;
  letter-spacing:.30em; text-transform:uppercase; color:var(--nv-gold-ink); }
.nv-gold{ color:var(--nv-gold-ink); }
em.nv-accent{ font-style:italic; color:var(--nv-gold-ink); }

/* ---- Gold-Haarlinie (Deko) ---- */
.nv-rule{ width:46px; height:1px; background:var(--nv-gold); border:0; margin:0 0 24px; }

/* ---- Buttons (leichte Veredelung; Feinschliff via Divi Global Presets) ---- */
.nv-btn{ font-family:var(--nv-sans); font-size:.84rem; font-weight:400;
  letter-spacing:.16em; text-transform:uppercase; padding:16px 34px;
  display:inline-block; text-decoration:none; border:1px solid transparent; transition:.22s; }
.nv-btn--primary{ background:var(--nv-navy); color:var(--nv-ivory); }
.nv-btn--primary:hover{ background:var(--nv-navy-deep); }
.nv-btn--gold{ border-color:var(--nv-gold); color:var(--nv-gold-ink); }
.nv-btn--gold:hover{ background:var(--nv-gold); color:var(--nv-navy); }

/* ---- Nomad-Verified-Siegel ---- */
.nv-seal{ display:inline-flex; align-items:center; gap:10px; font-size:.82rem; color:var(--nv-stone); }
.nv-seal .nv-mark{ width:30px; height:30px; border:1px solid var(--nv-gold); border-radius:50%;
  display:grid; place-items:center; color:var(--nv-gold-ink); }

/* ---- Headline-Schutz: keine Wort-Trennung ---- */
.et_pb_text h1,.et_pb_text h2,.et_pb_text h3{overflow-wrap:normal;word-break:normal;hyphens:none;}

/* ---- Hero: Vollbild-Foto + Ivory-Verlauf links (Text bleibt lesbar) ---- */
.nv-hero{
  background-image:
    radial-gradient(64% 55% at 82% 4%, rgba(255,241,205,0.55) 0%, rgba(255,241,205,0) 55%),
    linear-gradient(0deg, rgba(255,249,233,0.12), rgba(255,249,233,0.12)),
    linear-gradient(95deg,#F7F3EC 0%,#F7F3EC 30%,rgba(247,243,236,0.5) 54%,rgba(247,243,236,0) 80%),
    url('https://avelorna.com/wp-content/uploads/2026/07/nv-hero-bodrum-sun.jpeg');
  background-size:cover;background-position:center right;
}
@media(max-width:980px){
  .nv-hero{
    background-image:linear-gradient(0deg,rgba(247,243,236,0.93) 35%,rgba(247,243,236,0.72) 100%),
      url('https://avelorna.com/wp-content/uploads/2026/07/nv-hero-bodrum-sun.jpeg');
    background-position:center;
  }
}

/* ---- Anfrage-Band: Sonnenuntergang + dunkles Overlay (weißer Text) ---- */
.nv-cta-sunset{
  background-image:linear-gradient(180deg,rgba(11,28,43,0.74),rgba(11,28,43,0.5)),
    url('https://avelorna.com/wp-content/uploads/2026/07/nv-sunset-terrace.jpeg');
  background-size:cover;background-position:center;
}

/* ---- Avelorna-Rebrand Kopfzeile (2026-07-19, ersetzt Nomad-Verified-Wortmarke) ----
   Logo laeuft wieder ueber den Divi-Standardweg (Theme Options: avelorna-logo-kopfzeile.png, ID 443).
   Groessen final lt. Yasemin: Desktop 284x48, fixierter Header 190x32, mobil 213x36
   (Bild 1200x203 = gleiches Seitenverhaeltnis, daher genuegt die Hoehe). */
#main-header #logo{height:48px;max-height:48px;width:auto;}
.et-fixed-header#main-header #logo, .et-fixed-header #logo{height:32px;max-height:32px;}
@media(max-width:980px){#main-header #logo{height:36px;max-height:36px;}}

/* ---- Kopf- & Fusszeile in Marken-Navy (2026-07-19, aus Widget-Zwischenloesung uebernommen) ---- */
#main-footer{background-color:#122A3F !important;}
#main-header, .et-fixed-header#main-header{background-color:#122A3F !important; box-shadow:0 1px 0 rgba(196,165,103,.35) !important;}
#top-menu a{color:#F7F3EC !important;}
#top-menu li.current-menu-item > a, #top-menu li.current_page_item > a, #top-menu a:hover{color:#C4A567 !important; opacity:1 !important;}
#main-header .mobile_menu_bar:before{color:#F7F3EC !important;}
.et_mobile_menu{background-color:#122A3F !important;}
.et_mobile_menu li a{color:#F7F3EC !important;}

/* ---- Fließtext-Größe erzwingen (Divi generiert Modul-Größen bei CLI-Content unzuverlässig) ---- */
.nv-copy .et_pb_text_inner, .nv-copy .et_pb_text_inner p, .nv-copy .et_pb_text_inner li{font-size:22px !important;line-height:1.72 !important;}
.nv-lead .et_pb_text_inner, .nv-lead .et_pb_text_inner p{font-size:25px !important;line-height:1.5 !important;}
@media(max-width:768px){
  .nv-copy .et_pb_text_inner, .nv-copy .et_pb_text_inner p{font-size:19px !important;}
  .nv-lead .et_pb_text_inner, .nv-lead .et_pb_text_inner p{font-size:21px !important;}
}

/* ---- Dunkle Sektionen: Text hell erzwingen (Divi generiert Modul-Farben unzuverlässig; + überschreibt mein h1-h6=navy) ---- */
.nv-dark h1,.nv-dark h2,.nv-dark h3,.nv-dark h4,.nv-dark h5,.nv-dark h6,
.nv-cta-sunset h1,.nv-cta-sunset h2,.nv-cta-sunset h3{color:#FFFFFF !important;}
.nv-dark p,.nv-dark .et_pb_text_inner p,.nv-cta-sunset p,.nv-cta-sunset .et_pb_text_inner p{color:#B9CCD1 !important;}
.nv-dark p strong,.nv-cta-sunset p strong{color:#FFFFFF !important;}

/* ---- Homes-Karten (Leben-Seite): gleiche Höhe, einheitliche Bildhöhe, Hover, Platzhalter ---- */
/* Reihe als Flexbox → alle Karten einer Reihe strecken sich auf die Höhe der höchsten (robust, unabhängig von Divis JS) */
.nv-homes-row{display:flex !important;flex-wrap:wrap !important;align-items:stretch !important;}
.nv-homes-row > .et_pb_column{align-self:stretch !important;}
.nv-home{background:#fff !important;border:1px solid #D6CCB6 !important;box-shadow:0 1px 3px rgba(18,42,63,.05);overflow:hidden;min-height:380px;transition:transform .15s ease,box-shadow .15s ease;}
.nv-home:hover{transform:translateY(-4px);box-shadow:0 16px 34px -18px rgba(23,63,78,.32);}
.nv-home .et_pb_image{margin:0 !important;line-height:0;width:100% !important;max-width:100% !important;display:block !important;}
.nv-home .et_pb_image .et_pb_image_wrap{display:block !important;width:100% !important;}
.nv-home .et_pb_image img{width:100% !important;max-width:100% !important;height:220px !important;object-fit:cover !important;display:block !important;}
.nv-home h3{font-family:"Fraunces",Georgia,serif !important;color:#122A3F !important;font-size:21px !important;font-weight:400 !important;margin:0 0 6px !important;}
.nv-home-place{color:#6E6A61 !important;font-size:15px !important;line-height:1.6 !important;margin:0 !important;}
.nv-home-badge{display:inline-block;margin-top:12px;color:#9C7C38;font-family:"Jost",sans-serif;font-size:13px;letter-spacing:.04em;}
.nv-home-note{display:block;margin-top:8px;color:#9a958c;font-family:"Jost",sans-serif;font-size:12px;font-style:italic;}
.nv-home--soon .nv-ph{height:220px;background:repeating-linear-gradient(135deg,#eef3f4,#eef3f4 14px,#e6eef0 14px,#e6eef0 28px);display:flex;align-items:center;justify-content:center;}
.nv-home--soon .nv-ph span{font-family:"Jost",sans-serif;font-size:12px;letter-spacing:2px;text-transform:uppercase;color:#5c7d86;background:rgba(255,255,255,.8);padding:6px 14px;border:1px dashed #9db8bf;border-radius:2px;}

/* ---- Bausteine-Karten: gleiche Höhe, Gold-Akzent, Badges, Hover ---- */
#bausteine .nv-block{background:#fff !important;border:1px solid #E3DCCC !important;border-top:2px solid #C4A567 !important;min-height:210px;transition:transform .15s ease,box-shadow .15s ease;}
#bausteine .nv-block:hover{transform:translateY(-4px);box-shadow:0 16px 34px -18px rgba(23,63,78,.32);}
#bausteine .nv-block--note{background:#FBF8F2 !important;border-top-color:#E3DCCC !important;}
#bausteine .nv-mk{color:#C4A567;font-size:18px;line-height:1;margin-bottom:14px;}
#bausteine .nv-block h4{font-family:"Fraunces",Georgia,serif !important;color:#122A3F !important;font-size:22px !important;font-weight:400 !important;margin:0 0 8px !important;}
#bausteine .nv-d{color:#6E6A61 !important;font-size:15px !important;line-height:1.6 !important;margin:0 !important;}
#bausteine .nv-badge{display:inline-block;margin-top:16px;font-family:"Jost",sans-serif;font-size:11px;letter-spacing:1.5px;text-transform:uppercase;padding:5px 11px;border-radius:2px;}
#bausteine .nv-badge--live{background:#C4A567;color:#122A3F;font-weight:500;}
#bausteine .nv-badge--soon{border:1px solid #ddd6c6;color:#9a958c;}
#bausteine .nv-note{font-family:"Jost",sans-serif;font-style:italic;color:#6E6A61;font-size:15px;line-height:1.7;margin:0;}

/* ---- Footer aufräumen: Social-Icons weg, Elegant-Themes-Credit ersetzen ---- */
#footer-bottom .et-social-icons{display:none !important;}
#footer-bottom .container{text-align:center;}
#footer-info{float:none !important;text-align:center;font-size:0 !important;}
#footer-info a{display:none !important;}
#footer-info::after{content:"© 2026 Dr Yasemin Yazan LLC — Avelorna";font-size:13px;color:#8FA8B0;letter-spacing:.02em;}

/* Platz für weitere Komponenten (Aufnahme-Formular, Home-Karte) — kommen beim Seitenbau dazu. */

/* ============================================================================
   WETTER-ROTATOR (Bodrum · Istanbul · Frankfurt) — Hero „Leben"/Homes (ID 30)
   Markup = leerer Anker #nvW im Divi-Code-Modul; Aufbau + Logik: nv-weather.js
   ============================================================================ */

/* Hero-Row: rechte Spalte = Wetterkarte, vertikal zentriert */
.nv-hero-weather-col{ display:flex; align-items:center; justify-content:center; }
@media(max-width:980px){ .nv-hero-weather-col{ margin-top:34px; } }

.nv-weather{
  --nv-ivory:#F7F3EC;--nv-navy:#122A3F;--nv-navy-deep:#0B1C2B;--nv-gold:#C4A567;--nv-gold-ink:#9C7C38;
  --nv-ink:#1E2A32;--nv-stone:#6E6A61;--nv-line:#E3DCCC;
  --nv-serif:"Fraunces",Georgia,serif;--nv-sans:"Jost","Helvetica Neue",Arial,sans-serif;
  position:relative;z-index:1;width:min(408px,100%);margin:0 auto;box-sizing:border-box;
  font-family:var(--nv-sans);color:var(--nv-ink);font-weight:300;
  background:rgba(255,255,255,.82);backdrop-filter:blur(12px) saturate(1.1);-webkit-backdrop-filter:blur(12px) saturate(1.1);
  border:1px solid rgba(227,220,204,.9);border-top:2px solid var(--nv-gold);
  box-shadow:0 30px 60px -30px rgba(18,42,63,.5),0 2px 6px rgba(18,42,63,.06);
  padding:26px 28px 16px;overflow:hidden;
}
.nv-weather *{box-sizing:border-box}
.nv-weather .progress{position:absolute;top:0;left:0;height:2px;width:0;background:var(--nv-gold);opacity:.9}
.nv-weather.run .progress{animation:nvfill 10s linear forwards}
@keyframes nvfill{from{width:0}to{width:100%}}
.nv-weather .eyebrow{display:flex;align-items:center;gap:8px;font-size:.68rem;font-weight:500;letter-spacing:.26em;text-transform:uppercase;color:var(--nv-gold-ink)}
.nv-weather .diamond{color:var(--nv-gold);font-size:.72rem;line-height:1}
.nv-weather .live{margin-left:auto;display:inline-flex;align-items:center;gap:6px;letter-spacing:.16em;color:var(--nv-stone)}
.nv-weather .live .dot{width:7px;height:7px;border-radius:50%;background:var(--nv-gold);animation:nvpulse 2.4s infinite}
@keyframes nvpulse{0%{box-shadow:0 0 0 0 rgba(196,165,103,.55)}70%{box-shadow:0 0 0 8px rgba(196,165,103,0)}100%{box-shadow:0 0 0 0 rgba(196,165,103,0)}}
.nv-weather .stage{transition:opacity .5s ease,transform .5s ease}
.nv-weather .stage.fade{opacity:0;transform:translateY(6px)}
.nv-weather .place{font-family:var(--nv-serif);font-weight:400;color:var(--nv-navy);font-size:2.2rem;letter-spacing:-.01em;margin:12px 0 2px;line-height:1}
.nv-weather .region{color:var(--nv-stone);font-size:.83rem;letter-spacing:.02em}
.nv-weather .rule{width:44px;height:1px;background:var(--nv-gold);border:0;margin:16px 0}
.nv-weather .now{display:flex;align-items:center;gap:18px}
.nv-weather .now .icon{flex:0 0 auto;color:var(--nv-navy)}
.nv-weather .now .icon svg{width:62px;height:62px;display:block}
.nv-weather .temp{font-family:var(--nv-serif);font-weight:300;color:var(--nv-navy);font-size:3.7rem;line-height:.9;letter-spacing:-.03em}
.nv-weather .temp .deg{font-size:1.5rem;vertical-align:top;color:var(--nv-gold-ink);margin-left:2px}
.nv-weather .cond{font-family:var(--nv-serif);font-style:italic;font-weight:300;color:var(--nv-gold-ink);font-size:1.08rem;margin-top:3px}
.nv-weather .metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:20px;border-top:1px solid var(--nv-line);border-bottom:1px solid var(--nv-line);padding:14px 0}
.nv-weather .metric{text-align:center}
.nv-weather .metric .k{font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--nv-stone)}
.nv-weather .metric .v{font-family:var(--nv-serif);font-size:1.24rem;color:var(--nv-navy);margin-top:4px}
.nv-weather .fc-h{font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:var(--nv-gold-ink);margin:18px 0 10px}
.nv-weather .forecast{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.nv-weather .day{text-align:center;padding:10px 2px}
.nv-weather .day .dow{font-size:.68rem;letter-spacing:.06em;color:var(--nv-stone);text-transform:uppercase}
.nv-weather .day .di{color:var(--nv-navy);margin:7px 0}
.nv-weather .day .di svg{width:28px;height:28px;display:block;margin:0 auto}
.nv-weather .day .hi{font-family:var(--nv-serif);color:var(--nv-navy);font-size:.98rem}
.nv-weather .day .lo{color:var(--nv-stone);font-size:.8rem;margin-top:1px}
.nv-weather .foot{display:flex;align-items:center;justify-content:space-between;margin-top:16px;font-size:.66rem;color:var(--nv-stone);letter-spacing:.02em}
.nv-weather .foot a{color:var(--nv-stone);text-decoration:none;border-bottom:1px solid var(--nv-line)}
.nv-weather .foot a:hover{color:var(--nv-gold-ink)}
.nv-weather .dots{display:flex;gap:8px}
.nv-weather .cdot{width:8px;height:8px;border-radius:50%;border:1px solid var(--nv-gold);background:transparent;cursor:pointer;padding:0;transition:.2s}
.nv-weather .cdot.on{background:var(--nv-gold)}
.nv-weather .error{text-align:center;padding:10px 0}
.nv-weather .error p{color:var(--nv-stone);font-size:.9rem;margin:0 0 12px}
.nv-weather .error button{font-family:var(--nv-sans);font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;padding:10px 24px;background:var(--nv-navy);color:var(--nv-ivory);border:0;cursor:pointer}
.nv-weather .hidden{display:none !important}
.nv-weather.is-loading .stage{opacity:.35}
@media(prefers-reduced-motion:reduce){.nv-weather.run .progress{animation:none;width:100%}.nv-weather .stage{transition:opacity .01s}}
