/*
Theme Name:   Palmtrees & Snow (Vagabonds)
Theme URI:    https://palmtreesandsnow.com
Description:  Child-Theme für Vagabonds in der CI von Palmtrees & Snow.
Author:       Elena & Yannick
Template:     vagabonds
Version:      0.1.0
Text Domain:  palmtrees-vagabonds
*/

/* These: Das Feldbuch zweier Klimazonen. Vagabonds liefert die Bühne, die CI den Ton. */

body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
::selection{background:var(--pts-frangipani);color:var(--pts-lava)}
:focus-visible{outline:2px solid var(--pts-frangipani);outline-offset:3px}
h1,h2,h3{text-wrap:balance}
a{text-underline-offset:3px}

/* Buttons: eckig statt Pillen */
.sc_button,.theme_button,.wp-block-button__link,input[type="submit"],button:not(.pts-video-start):not(.pts-teilen-link){border-radius:2px!important}

/* ---------- Knöpfe ---------- */
.pts-knoepfe{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.pts-knopf{display:inline-flex;align-items:center;font:600 15px/1 var(--pts-text);padding:15px 22px;border:1.5px solid transparent;border-radius:2px;text-decoration:none!important;transition:transform .18s var(--pts-ease),background-color .18s var(--pts-ease),color .18s var(--pts-ease)}
.pts-knopf:hover{transform:translateY(-1px)}
.pts-knopf--sonne{background:var(--pts-frangipani);color:var(--pts-lava)!important}
.pts-knopf--sonne:hover{background:#fff}
.pts-knopf--linie{border-color:currentColor;color:var(--pts-fernblau)!important}
.pts-knopf--linie:hover{background:var(--pts-fernblau);color:#EEF2F3!important;border-color:var(--pts-fernblau)}
.scheme_dark .pts-knopf--linie{color:#fff!important}
.scheme_dark .pts-knopf--linie:hover{background:#fff;color:var(--pts-lava)!important;border-color:#fff}

/* ---------- Kopfzeile ---------- */
.top_panel{background:var(--pts-fernblau)}
.pts-kopf{padding-block:14px}
.pts-kopf .pts-logo svg{height:40px}
.pts-kopf .wpb_content_element{margin-bottom:0!important}
.pts-kopf-menue .sc_layouts_menu{justify-content:flex-end}
.pts-kopf .sc_layouts_menu_nav>li>a{font-family:var(--pts-mono)!important;font-size:11px!important;letter-spacing:.14em!important;font-weight:600!important;color:#EEF2F3!important;text-transform:uppercase}
.pts-kopf .sc_layouts_menu_nav>li>a:hover,.pts-kopf .sc_layouts_menu_nav>li.current-menu-item>a{color:var(--pts-frangipani)!important}
.home .top_panel{position:absolute;top:0;left:0;right:0;z-index:30;background:transparent}
.home .pts-kopf{background:transparent!important}
@media (max-width:767px){.pts-kopf .pts-logo svg{height:30px}}

/* ---------- Titelbild ---------- */
.pts-hero{position:relative;background:#0F1C26 url("/wp-content/uploads/sonnenaufgang-gipfel-wolkenmeer-scaled.webp") center 58%/cover no-repeat;padding-top:120px!important;padding-bottom:72px!important}
.pts-hero::before{content:"";position:absolute;inset:0;background:rgba(15,28,38,.32);pointer-events:none}
.pts-hero>.vc_column_container,.pts-hero .wpb_column{position:relative;z-index:1}
.pts-hero .pts-kicker{color:#EEF2F3}
.pts-hero-titel{font:400 clamp(56px,7.4vw,112px)/.92 var(--pts-display)!important;letter-spacing:-.035em!important;color:#fff!important;margin:6px 0 24px!important}
.pts-hero-lede{font-size:19px;line-height:1.55;color:#EEF2F3;max-width:30em}
.pts-hero-karte{align-self:center}
@media (max-width:1023px){.pts-hero{background-image:url("/wp-content/uploads/sonnenaufgang-gipfel-wolkenmeer-1536x1026.webp")}}
@media (max-width:767px){.pts-hero{padding-top:100px!important;background-position:52% 50%}.pts-hero-karte{margin-top:36px}}

/* ---------- Abschnitte ---------- */
.pts-willkommen,.pts-themen,.pts-neueste-reihe{padding-block:clamp(64px,9vw,128px)!important}
.pts-neueste-reihe .wpb_content_element:empty{display:none}
.pts-bild-hoch img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}
.pts-willkommen-text{padding-left:clamp(0px,4vw,64px)!important}
.pts-band{padding-block:clamp(64px,9vw,120px)!important}
.pts-band .pts-kicker{color:#C9D3D8}
.pts-band .pts-sektion-titel{color:#fff}
.pts-band--video{background:var(--pts-fernblau)}
.pts-band--guide{background:#173247}
.pts-guide-titel{font:400 clamp(56px,8vw,112px)/.9 var(--pts-display)!important;letter-spacing:-.035em!important;color:#fff!important;margin:0 0 20px!important}
.pts-hunde{background:var(--pts-firn);padding-block:clamp(64px,9vw,120px)!important}
.pts-hunde-text{padding-right:clamp(0px,4vw,64px)!important}

/* ---------- Themen-Register ---------- */
.pts-register{list-style:none;padding:0;margin:0;border-top:1px solid var(--pts-fernblau)}
.pts-register li{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:16px 0;border-bottom:1px solid var(--pts-linie);margin:0}
.pts-register li::before{display:none}
.pts-register a{font:400 clamp(26px,3vw,36px)/1.1 var(--pts-display);letter-spacing:-.02em;color:var(--pts-lava);text-decoration:none}
.pts-register a:hover{color:var(--pts-fernblau)}
.pts-register .pts-kicker{margin:0;text-align:right}
@media (max-width:600px){.pts-register li{flex-direction:column;gap:4px}.pts-register .pts-kicker{text-align:left}}

/* ---------- Fußzeile ---------- */
.pts-fuss{background:var(--pts-fernblau)!important;padding-top:72px!important;padding-bottom:40px!important;color:#DDE4E7}
.pts-fuss-unten{padding-top:0!important;padding-bottom:28px!important;border-top:1px solid #2B5473}
.pts-fuss-unten .pts-kicker{color:#A9B8C2;margin:20px 0 0}
.pts-fuss .pts-kicker{color:#A9B8C2}
.pts-fuss-text{max-width:28em;margin-top:18px}
.pts-fuss-social a{margin-right:18px}
.pts-fuss a{color:#EEF2F3!important;text-decoration:none}
.pts-fuss a:hover{color:var(--pts-frangipani)!important}
.pts-fuss-liste{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}
.pts-fuss-liste li::before{display:none}

@media (max-width:767px){.pts-willkommen-text,.pts-hunde-text{padding-inline:0!important;margin-top:28px}}

/* ---------- Korrekturen nach Sichtprüfung ---------- */
.pts-weltkarte figcaption{background:none!important;padding:0!important;position:static!important;text-align:left!important;margin-top:14px!important}
.pts-hero-titel{font-size:clamp(52px,6.4vw,96px)!important}
.pts-bild-hoch figure,.pts-bild-hoch .vc_single_image-wrapper{display:block!important;width:100%!important}
.pts-willkommen p,.pts-band p,.pts-hunde p,.pts-themen p{font-size:18px;line-height:1.6}
.pts-neueste-reihe:not(:has(.pts-neueste)){display:none!important}
.pts-kopf .wpb_text_column{margin:0!important}
.pts-weltkarte figcaption,.pts-weltkarte figcaption span{color:#EEF2F3!important}
.pts-weltkarte figcaption .pts-weltkarte-zahl{color:var(--pts-frangipani)!important}
.pts-hero::before{background:rgba(15,28,38,.2)}

/* ---------- Runde 2: Unterseiten ---------- */
body .top_panel.top_panel_custom{background-color:var(--pts-fernblau)!important}
body.home .top_panel.top_panel_custom{background-color:transparent!important}
.top_panel .vc_row{margin-left:0!important;margin-right:0!important;padding-inline:clamp(4px,2vw,24px)}
.home .pts-titelzeile{display:none!important}
.pts-titelzeile{padding-block:clamp(40px,6vw,88px) clamp(36px,5vw,64px)!important;border-top:1px solid #2B5473}
.pts-titel{max-width:980px}
.pts-titel .pts-kicker,.pts-titel .pts-kicker a{color:#C9D3D8!important;text-decoration:none}
.pts-titel .pts-kicker a:hover{color:var(--pts-frangipani)!important}
.pts-titel-h1{font:400 clamp(40px,6vw,84px)/.98 var(--pts-display)!important;letter-spacing:-.03em!important;color:#fff!important;margin:0!important;text-transform:none!important}
.pts-titel-unter{margin:20px 0 0!important;color:#DDE4E7;font-size:18px;line-height:1.5;max-width:40em}
.pts-titel-meta{font:600 11px/1.6 var(--pts-mono);letter-spacing:.12em;text-transform:uppercase;color:#C9D3D8}
.pts-titel-meta a{color:#EEF2F3!important}

/* Theme-eigene Titel und Zähler, die der Titelbereich ersetzt */
.single .post_header_single,.single .post_meta_single,.single .socials_share,.post_meta .post_counters_item,.post_meta .post_share{display:none!important}
.single .post_featured{margin-bottom:32px}
.single .post_featured img{width:100%;aspect-ratio:16/9;object-fit:cover;object-position:center 30%}
.pts-stempel-wrap{margin-bottom:24px}

/* Lesebreite für Beiträge und einfache Seiten (ohne Page-Builder) */
.single .post_content.entry-content,.page .post_content.entry-content:not(:has(.vc_row)){max-width:720px;margin-inline:auto}
.single .post_content.entry-content>p,.page .post_content.entry-content:not(:has(.vc_row))>p{font-size:18px;line-height:1.65}
.post_content h2{margin-top:1.8em}

/* Knöpfe des Themes: eckig, gerade, lesbar */
.sc_button,.theme_button,input[type="submit"],.comments_wrap .form-submit input,.more-link,.nav-links a{font-style:normal!important;border-radius:2px!important}
.comments_wrap .form-submit input,input[type="submit"]{background:var(--pts-fernblau)!important;color:#fff!important;border:0!important}
.more-link{background:transparent!important;color:var(--pts-fernblau)!important;border:1.5px solid var(--pts-fernblau)!important}
.more-link:hover{background:var(--pts-fernblau)!important;color:#fff!important}
.pts-teilen .pts-kopieren{color:var(--pts-fernblau)!important;background:transparent!important}
.pts-teilen .pts-kopieren:hover{color:#fff!important;background:var(--pts-fernblau)!important}

/* Archive: ruhige Karten statt Blog-Demo */
.post_item .post_title,.post_item .post_title a{text-transform:none!important;font-family:var(--pts-display)!important;letter-spacing:-.015em!important}
.post_layout_excerpt .post_featured img,.post_layout_classic .post_featured img{aspect-ratio:4/3;object-fit:cover;object-position:center 25%}

/* 404 */
.pts-404{max-width:720px;margin:0 auto;padding-block:24px 48px}
.pts-404-text{font-size:19px;line-height:1.55;margin-bottom:24px}
.pts-404 .search_wrap,.pts-404 form{margin-bottom:40px}

/* Neueste: ein einzelner Beitrag als breite Karte */
.pts-neueste-raster:has(>.pts-karte:only-child){grid-template-columns:1fr}
.pts-neueste-raster>.pts-karte:only-child{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:32px;align-items:center}
.pts-neueste-raster>.pts-karte:only-child h3{font-size:clamp(28px,3vw,40px)}
@media (max-width:767px){.pts-neueste-raster>.pts-karte:only-child{grid-template-columns:1fr}}

@media (max-width:767px){.pts-fuss .pts-kicker{margin-top:28px!important}}

/* ---------- Runde 3 ---------- */
@media (max-width:1279px){body .content_wrap,body .content_container{width:auto!important;max-width:none!important;padding-inline:clamp(18px,4vw,40px)!important}}
.top_panel .vc_row{padding-inline:0!important}
@media (max-width:767px){
  .pts-kopf{display:flex!important;flex-wrap:nowrap!important;align-items:center}
  .pts-kopf>.wpb_column{width:auto!important;flex:1 1 auto}
  .pts-kopf>.pts-kopf-menue{flex:0 0 auto}
}
.pts-sektion-titel,.pts-guide-titel,.pts-hero-titel{margin-top:0!important}
.pts-neueste-raster>.pts-karte:only-child{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:40px;align-items:center}
.pts-neueste-raster>.pts-karte:only-child .pts-karte-bild img{margin-bottom:0}
.single .comments_wrap,.single .nav-links-single,.single .related_wrap{max-width:720px;margin-inline:auto}
body .pts-teilen button.pts-teilen-link.pts-kopieren{color:var(--pts-fernblau)!important;border:1px solid var(--pts-fernblau)!important;background:transparent!important}
body .pts-teilen button.pts-teilen-link.pts-kopieren:hover{color:#fff!important;background:var(--pts-fernblau)!important}
.pts-404 form,.pts-404 .search_form{display:flex!important;flex-wrap:nowrap;gap:8px;align-items:stretch}
.pts-404 form input[type="text"],.pts-404 form input[type="search"]{flex:1;min-width:0;height:auto!important}
.pts-404 form button,.pts-404 form input[type="submit"]{flex:0 0 auto;height:auto!important}
.single .post_featured img{object-position:center 20%}
.post_layout_excerpt .post_featured img,.post_layout_classic .post_featured img{object-position:center 15%}
.pts-insta-reihe{padding-block:clamp(64px,9vw,120px)!important}
.pts-fuss-unten{padding-bottom:96px!important}
/* „Nach oben“-Knopf des Themes über den Instagram-Knopf setzen, eckig in CI */
.trx_addons_scroll_to_top{right:max(16px,env(safe-area-inset-right))!important;bottom:calc(max(16px,env(safe-area-inset-bottom)) + 62px)!important;border-radius:2px!important;background:var(--pts-fernblau)!important;color:#fff!important;width:44px!important;height:44px!important;line-height:44px!important}

/* ---------- Typo v2: Big Shoulders (Überschriften) + Familjen Grotesk (Text) ---------- */
body,p,li,.post_content{font-family:var(--pts-text)}
h1,h2,h3,h4,.post_title{font-family:var(--pts-display)!important;font-weight:800!important;text-transform:uppercase!important;letter-spacing:.005em!important}
.pts-hero-titel{font:800 clamp(60px,7.8vw,124px)/.86 var(--pts-display)!important;letter-spacing:.005em!important;text-transform:uppercase}
.pts-hero-titel .pts-duenn{display:block;font-weight:200;letter-spacing:.14em}
.pts-guide-titel{font:800 clamp(64px,9vw,132px)/.86 var(--pts-display)!important;letter-spacing:.005em!important;text-transform:uppercase}
.pts-titel-h1{font:800 clamp(52px,7vw,108px)/.88 var(--pts-display)!important;letter-spacing:.005em!important;text-transform:uppercase!important}
.pts-titel-meta{font:600 12px/1.6 var(--pts-text);letter-spacing:.1em}
.pts-register a{font:800 clamp(30px,3.4vw,44px)/1 var(--pts-display);letter-spacing:.01em;text-transform:uppercase}
.pts-knopf{font-family:var(--pts-text);font-weight:700;letter-spacing:.02em}
.pts-hero-lede,.pts-willkommen p,.pts-band p,.pts-hunde p,.pts-themen p{font-family:var(--pts-text)}
.post_content h2{font-size:clamp(34px,4vw,48px)!important;line-height:.95!important}
.post_content h3{font-size:28px!important;line-height:1!important}
body{font-size:17px}
.wpb_text_column p,.post_content p,.pts-hero-lede{font-size:17px;line-height:1.65}
.pts-hero-lede{font-size:19px}
.wpb_text_column .pts-sektion-titel,h2.pts-sektion-titel{font-size:clamp(48px,6vw,88px)!important;line-height:.9!important;margin-bottom:24px!important}
.pts-hero .pts-kicker{font:600 13px/1.5 var(--pts-text)!important;letter-spacing:.12em!important;color:#EEF2F3}

/* ---------- Runde 4 (Fremdkritik) ---------- */
.trx_addons_scroll_to_top{display:none!important}
.post_item .post_title,.post_item .post_title a{text-transform:uppercase!important;letter-spacing:.005em!important}
/* Archiv: Bild 4:5 links, Text rechts, Titel ist der Link */
.post_layout_excerpt{display:grid!important;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:clamp(20px,4vw,56px);align-items:start;border-top:1px solid var(--pts-linie);padding-top:32px!important;margin-top:32px!important}
.post_layout_excerpt .post_featured{margin:0!important}
.post_layout_excerpt .post_featured img{aspect-ratio:4/5!important;object-fit:cover;width:100%}
.post_layout_excerpt .post_header .post_title{font-size:clamp(34px,4.4vw,60px)!important;line-height:.92!important;margin:6px 0 16px!important}
.post_layout_excerpt .more-link,.post_layout_excerpt .post_meta_item.post_date{display:none!important}
.post_layout_excerpt:not(:has(.post_featured)){grid-template-columns:1fr}
@media (max-width:767px){.post_layout_excerpt{grid-template-columns:1fr}}
/* Theme-Deko-Striche unter Überschriften entfernen (nur im Kommentarbereich vorhanden, kein System) */
.comments_form_title::after,.comments_list_title::after,.section_title::after,.comment-reply-title::after{display:none!important}
.page .post_content.entry-content:not(:has(.vc_row)):has(.pts-ueber-kopf){max-width:980px}
.pts-ueber-kopf{gap:clamp(20px,4vw,56px)!important;margin-bottom:2.5em}
.pts-ueber-kopf p{font-size:21px!important;line-height:1.5!important}
.page .post_content.entry-content:has(.pts-ueber-kopf)>*:not(.pts-ueber-kopf){max-width:720px;margin-inline:auto}

/* ---------- Beitrags-Layouts (Vorschau ?pv=a|b|c) ---------- */
.pts-pv-a .post_featured,.pts-pv-b .post_featured,.pts-pv-c .post_featured{display:none!important}
.pts-titel--post{max-width:none}
.pts-titel-bild{margin:0;position:relative}
.pts-titel-bild img{display:block;width:100%;height:100%;object-fit:cover}
.pts-titel--post .pts-stempel-wrap{margin:22px 0 0}

/* A: Hochkant-Split */
.pts-pv-a .pts-titelzeile{padding:0!important;border-top:0}
.pts-pv-a .pts-titelzeile .wpb_column,.pts-pv-a .pts-titelzeile .vc_column-inner,.pts-pv-a .pts-titelzeile .wpb_wrapper{padding:0!important;margin:0!important}
.pts-titel--a{display:grid;grid-template-columns:minmax(0,42fr) minmax(0,58fr);align-items:stretch}
.pts-titel--a .pts-titel-bild{min-height:min(78vh,760px);max-height:860px}
.pts-titel--a .pts-titel-bild img{position:absolute;inset:0;object-position:center 30%}
.pts-titel--a .pts-titel-text{padding:clamp(32px,6vw,96px) clamp(20px,5vw,80px);display:flex;flex-direction:column;justify-content:center}
.pts-titel--a .pts-stempel{border:0;color:#fff;font:300 clamp(18px,1.8vw,24px)/1.3 var(--pts-display);letter-spacing:.14em;flex-wrap:wrap;white-space:normal;gap:4px 18px}
.pts-titel--a .pts-stempel>span{border:0;padding:0}
.pts-titel--a .pts-stempel .pts-temp{font-weight:800;color:var(--pts-frangipani)}
.pts-titel--a .pts-stempel .pts-koord{display:inline!important}
@media (max-width:899px){.pts-titel--a{grid-template-columns:1fr}.pts-titel--a .pts-titel-bild{min-height:0;aspect-ratio:4/5;max-height:none}}

/* B: Hängendes Bild */
.pts-titel--b{position:relative;display:block;padding-right:36%;min-height:clamp(260px,30vw,420px)}
.pts-titel--b .pts-titel-bild{position:absolute;right:0;top:0;width:30%;aspect-ratio:3/4;z-index:5}
.pts-titel--b .pts-titel-bild.pts-hoch{aspect-ratio:3/4}
.pts-titel--b .pts-titel-bild:not(.pts-hoch){aspect-ratio:1/1}
.pts-titel--b .pts-titel-bild .pts-stempel-wrap{position:absolute;left:-18px;bottom:22px;margin:0;transform:rotate(-3deg)}
.pts-titel--b .pts-titel-bild .pts-stempel{background:var(--pts-sand);color:var(--pts-lava);border-color:var(--pts-lava)}
.pts-pv-b .pts-titelzeile{overflow:visible!important;padding-bottom:clamp(36px,5vw,64px)!important}
.pts-pv-b .pts-titelzeile .wpb_column,.pts-pv-b .pts-titelzeile .vc_column-inner,.pts-pv-b .pts-titelzeile .wpb_wrapper,.pts-pv-b .top_panel{overflow:visible!important}
@media (min-width:1200px){
  .pts-pv-b.single .post_content.entry-content{max-width:660px;margin-left:max(280px,calc(50% - 470px));margin-right:auto}
  .pts-pv-b .pts-toc{float:left;position:sticky;top:24px;width:230px;margin:6px 0 0 -280px;border-bottom:0}
  .pts-pv-b .pts-toc summary{pointer-events:none}.pts-pv-b .pts-toc summary::after{display:none}
}
@media (max-width:899px){
  .pts-titel--b{padding-right:0;min-height:0}
  .pts-titel--b .pts-titel-bild{position:relative;width:100%;aspect-ratio:4/5!important;margin:28px 0 -72px}
  .pts-titel--b .pts-titel-bild .pts-stempel-wrap{left:12px}
  .pts-pv-b .page_content_wrap{padding-top:72px}
}

/* C: Magazin-Spalte */
.pts-pv-c .pts-titelzeile{background:transparent!important;border-top:0;padding-bottom:8px!important}
.pts-pv-c .top_panel.top_panel_custom{background-color:transparent!important}
.pts-pv-c .pts-kopf{background:var(--pts-fernblau)!important}
.pts-pv-c .top_panel{background:inherit}
.pts-titel--c .pts-titel-text{max-width:900px;margin-inline:auto}
.pts-titel--c .pts-stempel{border:0;font:300 clamp(18px,1.9vw,24px)/1.3 var(--pts-display);letter-spacing:.18em;color:var(--pts-fernblau);flex-wrap:wrap;white-space:normal;gap:4px 18px}
.pts-titel--c .pts-stempel>span{border:0;padding:0}
.pts-titel--c .pts-stempel .pts-koord{display:inline!important}
.pts-titel--c .pts-stempel .pts-temp{font-weight:800}
.pts-titel--c .pts-stempel-wrap{margin:0 0 10px}
.pts-titel--c .pts-titel-h1{color:var(--pts-lava)!important;font-size:clamp(52px,7.4vw,116px)!important}
.pts-titel--c .pts-kicker,.pts-titel--c .pts-kicker a{color:var(--pts-fernblau)!important;font:600 12px/1.5 var(--pts-text)!important;letter-spacing:.1em!important;display:inline}
.pts-titel--c .pts-titel-unter{border-top:1px solid var(--pts-fernblau);border-bottom:1px solid var(--pts-linie);padding:12px 0;margin-top:24px!important;max-width:none;color:var(--pts-asche)}
.pts-titel--c .pts-titel-meta,.pts-titel--c .pts-titel-meta a{color:var(--pts-asche)!important}
.pts-titel--c .pts-kicker{margin:22px 0 0}
.pts-ausbruch{margin:2em 0!important}
.pts-ausbruch img{display:block;width:100%;height:auto}
.pts-ausbruch.pts-hoch img{aspect-ratio:4/5;object-fit:cover}
@media (min-width:1100px){.pts-ausbruch{margin-inline:-22%!important}.pts-ausbruch.pts-hoch{margin-inline:-6%!important}}
@media (max-width:899px){
  .pts-titel--b{display:flex;flex-direction:column}
  .pts-titel--b .pts-titel-bild{order:2;margin:28px 0 -72px}
}
