/*
Theme Name: Dogplorer Child
Theme URI: https://dogplorer.de/
Description: Editorial, photo-first local dog guide child theme for GeneratePress.
Author: Dogplorer
Template: generatepress
Version: 0.9.0
Text Domain: dogplorer
License: GPL-2.0-or-later
*/

:root{
  --dp-paper:#fbfaf7;
  --dp-white:#fff;
  --dp-ink:#062747;
  --dp-muted:#687681;
  --dp-moss:#315f68;
  --dp-moss-dark:#062747;
  --dp-rust:#d59000;
  --dp-sun:#f9ba18;
  --dp-sky:#d9e8f2;
  --dp-line:#e2ddd2;
  --dp-soft:#f2eee5;
  --dp-shadow:0 14px 36px rgba(6,39,71,.10);
  --dp-radius:18px;
  --dp-max:1320px;
  --dp-read:760px;
  --dp-sans:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --dp-serif:"Iowan Old Style","Baskerville","Times New Roman",serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--dp-paper);color:var(--dp-ink);font-family:var(--dp-sans);font-size:17px;line-height:1.62;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body,button,input,select,textarea{font-family:var(--dp-sans)}
::selection{background:#ffe08a;color:var(--dp-ink)}
a{color:inherit;text-underline-offset:.16em}
a:hover{color:var(--dp-rust)}
h1,h2,h3,h4,h5,h6{margin-top:0;color:var(--dp-ink);font-family:var(--dp-serif);font-weight:600;letter-spacing:-.035em;line-height:1.03;text-wrap:balance}
h1{font-size:clamp(3.5rem,7.6vw,7.2rem)}
h2{font-size:clamp(2.25rem,4.8vw,4.4rem)}
h3{font-size:clamp(1.4rem,2.2vw,2rem)}
p{text-wrap:pretty}
.grid-container{max-width:var(--dp-max)}
.one-container .site-content{padding-inline:clamp(16px,3vw,30px)}
 .site-content{padding-top:0}.inside-article,.comments-area,.page-header{background:transparent}

/* Dogplorer front page: full-width canvas, no blog shell */
.home #page.grid-container{max-width:none}
.home .site-content{padding:0}
.home #primary{width:100%}
.home .inside-article{padding:0}
.home .entry-content{margin:0}
.home .entry-header{display:none}

/* Basic content pages */
.dp-page-intro{font-size:clamp(1.08rem,1.8vw,1.3rem);line-height:1.55;max-width:58ch}
.dp-legal{max-width:820px}.dp-legal h2{font-size:clamp(1.5rem,2.5vw,2.2rem);margin-top:2.4rem}.dp-legal p{max-width:72ch}.dp-legal address{font-style:normal}
.dp-contact-card{background:#fff;border:1px solid var(--dp-line);border-radius:16px;box-shadow:var(--dp-shadow);margin-top:2rem;max-width:680px;padding:clamp(1.2rem,3vw,2rem)}
.dp-contact-card a{font-weight:800}

/* Header: quiet, editorial, not app-ish */
.site-header{background:rgba(246,242,234,.94);border-bottom:1px solid rgba(32,37,33,.10);position:sticky;top:0;z-index:90;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.inside-header{min-height:76px;padding:12px clamp(16px,3vw,30px)}
.site-logo img,.site-logo .header-image{display:block;height:auto;max-height:none;width:clamp(250px,25vw,365px)}
.site-branding .main-title{font-family:var(--dp-sans);font-size:1.65rem;font-weight:900;letter-spacing:-.055em;text-transform:lowercase}
.site-branding .main-title a{text-decoration:none}.site-description{display:none}
.main-navigation{background:transparent}.main-navigation .main-nav ul li a,.menu-toggle,.main-navigation .menu-bar-item>a{color:var(--dp-ink);font-size:.88rem;font-weight:700}
.main-navigation .main-nav ul li>a{padding-inline:14px}
.main-navigation .main-nav ul li:hover>a,.main-navigation .main-nav ul li:focus-within>a,.main-navigation .main-nav ul li[class*="current-menu-"]>a{background:transparent;color:var(--dp-rust)}
.main-navigation .main-nav ul ul{background:var(--dp-white);border:1px solid var(--dp-line);border-radius:12px;box-shadow:var(--dp-shadow);overflow:hidden}

/* Common */
.dp-wrap{margin-inline:auto;max-width:var(--dp-max);padding-inline:clamp(16px,3vw,30px)}
.dp-section{padding-block:clamp(4rem,8vw,8rem)}
.dp-section--compact{padding-block:clamp(2.7rem,5vw,5rem)}
.dp-eyebrow{align-items:center;color:var(--dp-rust);display:flex;font-size:.72rem;font-weight:850;gap:.55rem;letter-spacing:.12em;margin:0 0 .9rem;text-transform:uppercase}
.dp-eyebrow::before{background:currentColor;border-radius:99px;content:"";height:7px;width:7px}
.dp-lead{color:#39413b;font-size:clamp(1.05rem,1.8vw,1.27rem);line-height:1.55;max-width:60ch}
.dp-muted{color:var(--dp-muted)}
.dp-section-head{align-items:end;display:flex;gap:2rem;justify-content:space-between;margin-bottom:1.8rem}
.dp-section-head h2{margin:0;max-width:10ch}.dp-section-head p{margin:0;max-width:48ch}
.dp-link{font-size:.86rem;font-weight:800;text-decoration:none}.dp-link::after{content:" →"}

/* Hero: one strong photograph, editorial title */
.dp-hero{margin:0 auto;max-width:1600px;padding:0 clamp(10px,1.6vw,22px);position:relative}
.dp-hero__media{border-radius:0 0 30px 30px;min-height:min(760px,76vh);overflow:hidden;position:relative}
.dp-hero__media::after{background:linear-gradient(90deg,rgba(12,17,14,.72) 0%,rgba(12,17,14,.34) 46%,rgba(12,17,14,.04) 76%),linear-gradient(0deg,rgba(12,17,14,.28),transparent 45%);content:"";inset:0;position:absolute}
.dp-hero__media>img{height:100%;inset:0;object-fit:cover;position:absolute;width:100%}
.dp-hero__content{bottom:clamp(2rem,7vw,6.2rem);color:#fff;left:clamp(1.5rem,6vw,6.5rem);max-width:760px;position:absolute;z-index:2}
.dp-hero .dp-eyebrow{color:#fff;opacity:.9}.dp-hero h1{color:#fff;font-size:clamp(3.4rem,7.8vw,7.7rem);margin:0 0 1rem;max-width:8.4ch}.dp-hero__content>p{font-size:clamp(1.06rem,1.8vw,1.28rem);line-height:1.5;margin:0;max-width:52ch}
.dp-hero__search{align-items:center;background:rgba(255,255,255,.96);border-radius:12px;box-shadow:0 18px 50px rgba(0,0,0,.18);display:flex;gap:.55rem;margin-top:1.5rem;max-width:640px;padding:7px 8px 7px 16px}
.dp-hero__search svg{color:var(--dp-muted);flex:0 0 21px}.dp-hero__search .wp-block-search{margin:0;width:100%}.dp-hero__search .wp-block-search__inside-wrapper{border:0;padding:0}.dp-hero__search input{background:transparent;border:0!important;box-shadow:none!important;color:var(--dp-ink);font-size:.97rem;min-width:0;padding:.8rem .4rem}.dp-hero__search button{background:var(--dp-ink);border:0;border-radius:9px;color:#fff;font-size:.82rem;font-weight:800;padding:.9rem 1.1rem;white-space:nowrap}
.dp-hero__note{align-items:center;bottom:24px;color:rgba(255,255,255,.82);display:flex;font-size:.72rem;font-weight:700;gap:7px;position:absolute;right:28px;z-index:2}

/* Browse strip */
.dp-browse{border-bottom:1px solid var(--dp-line);padding-block:1.25rem}.dp-browse__inner{display:flex;gap:.55rem;overflow-x:auto;scrollbar-width:none}.dp-browse__inner::-webkit-scrollbar{display:none}.dp-browse a{align-items:center;background:transparent;border:1px solid var(--dp-line);border-radius:99px;display:inline-flex;flex:0 0 auto;font-size:.82rem;font-weight:750;gap:.45rem;padding:.7rem .95rem;text-decoration:none}.dp-browse a:hover{background:var(--dp-ink);border-color:var(--dp-ink);color:#fff}.dp-browse a:first-child{background:var(--dp-rust);border-color:var(--dp-rust);color:#fff}

/* Photo cards: magazine-like, not rounded SaaS cards */
.dp-card-grid{display:grid;gap:clamp(16px,2.4vw,30px);grid-template-columns:1.4fr 1fr 1fr}
.dp-card{color:var(--dp-ink);display:block;text-decoration:none}.dp-card__media{aspect-ratio:4/3;border-radius:15px;overflow:hidden;position:relative}.dp-card--lead .dp-card__media{aspect-ratio:5/4}.dp-card img{height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.2,.7,.2,1);width:100%}.dp-card:hover img{transform:scale(1.025)}.dp-card__meta{align-items:center;color:var(--dp-muted);display:flex;font-size:.72rem;font-weight:700;gap:.55rem;margin-top:.85rem}.dp-card__meta span+span::before{content:"·";margin-right:.55rem}.dp-card h3{font-size:clamp(1.35rem,2.15vw,2rem);margin:.3rem 0 .35rem}.dp-card p{color:#4b534d;font-size:.9rem;margin:0;max-width:42ch}.dp-card__badge{background:var(--dp-white);border-radius:99px;left:10px;padding:.48rem .66rem;position:absolute;top:10px;font-size:.67rem;font-weight:850;letter-spacing:.03em}.dp-card__badge--checked{background:#f0ddb1}

/* Editorial split */
.dp-editorial{display:grid;gap:clamp(18px,3vw,44px);grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr)}
.dp-editorial__image{border-radius:18px;min-height:590px;overflow:hidden;position:relative}.dp-editorial__image img{height:100%;object-fit:cover;position:absolute;width:100%}.dp-editorial__caption{background:rgba(246,242,234,.92);bottom:16px;left:16px;max-width:320px;padding:1rem 1.05rem;position:absolute}.dp-editorial__caption strong{display:block;font-family:var(--dp-serif);font-size:1.4rem;line-height:1.05;margin-bottom:.3rem}.dp-editorial__aside{display:flex;flex-direction:column;justify-content:space-between;padding-block:1rem}.dp-editorial__aside h2{font-size:clamp(2.6rem,5vw,5rem);max-width:8ch}.dp-note{border-top:1px solid var(--dp-ink);padding-top:1.2rem}.dp-note strong{display:block;font-size:.76rem;letter-spacing:.08em;margin-bottom:.4rem;text-transform:uppercase}.dp-note p{color:#475048;margin:0}

/* Service index */
.dp-index{border-top:1px solid var(--dp-line)}.dp-index a{align-items:center;border-bottom:1px solid var(--dp-line);display:grid;gap:1rem;grid-template-columns:60px minmax(0,1fr) auto;padding:1.15rem 0;text-decoration:none}.dp-index__icon{align-items:center;background:var(--dp-soft);border-radius:50%;display:flex;height:48px;justify-content:center;width:48px}.dp-index__icon img{height:23px;width:23px}.dp-index strong{font-family:var(--dp-serif);font-size:clamp(1.45rem,2.4vw,2.2rem);font-weight:600}.dp-index span:last-child{color:var(--dp-muted);font-size:.82rem}.dp-index a:hover strong{color:var(--dp-rust)}

/* Horizontal rail on touch */
.dp-rail{display:grid;gap:18px;grid-auto-columns:minmax(270px,31%);grid-auto-flow:column;overflow-x:auto;padding:0 2px 10px;scroll-snap-type:inline mandatory;scrollbar-width:thin}.dp-rail>*{scroll-snap-align:start}.dp-rail .dp-card__media{aspect-ratio:4/3}

/* Lightweight map teaser without an external map service */
.dp-map-teaser{padding-block:clamp(3rem,6vw,6rem)}.dp-map-teaser__inner{align-items:stretch;background:#eef3f5;border:1px solid #dbe4e8;border-radius:24px;display:grid;gap:clamp(1.5rem,4vw,4rem);grid-template-columns:minmax(0,.8fr) minmax(340px,1.2fr);overflow:hidden;padding:clamp(1.5rem,4vw,3.5rem)}.dp-map-teaser h2{font-size:clamp(2.3rem,4.4vw,4rem);max-width:11ch}.dp-map-teaser p{max-width:54ch}.dp-map-teaser__map{background-color:#f9fbfc;background-image:linear-gradient(#dce6eb 1px,transparent 1px),linear-gradient(90deg,#dce6eb 1px,transparent 1px);background-size:42px 42px;border-radius:18px;min-height:360px;position:relative;transform:rotate(-1deg)}.dp-map-teaser__map::after{border:9px solid rgba(6,39,71,.14);border-radius:50%;content:"";height:150px;left:50%;position:absolute;top:48%;transform:translate(-50%,-50%);width:150px}.dp-map-pin{align-items:center;background:var(--dp-sun);border:4px solid #fff;border-radius:50% 50% 50% 0;box-shadow:0 10px 24px rgba(6,39,71,.18);color:var(--dp-ink);display:flex;font-size:0;height:38px;justify-content:center;position:absolute;transform:rotate(-45deg);width:38px}.dp-map-pin::after{background:var(--dp-ink);border-radius:50%;content:"";height:10px;width:10px}.dp-map-pin--one{left:26%;top:28%}.dp-map-pin--two{right:25%;top:46%}.dp-map-pin--three{bottom:18%;left:46%}

/* Trust strip */
.dp-trust{background:var(--dp-moss-dark);color:#fff;padding-block:clamp(2.4rem,5vw,4.6rem)}.dp-trust__grid{display:grid;gap:1rem;grid-template-columns:1.2fr repeat(3,1fr)}.dp-trust h2{color:#fff;font-size:clamp(2rem,4vw,3.6rem);margin:0;max-width:8ch}.dp-trust__item{border-left:1px solid rgba(255,255,255,.2);padding-left:1.2rem}.dp-trust__item strong{display:block;font-size:.88rem;margin-bottom:.3rem}.dp-trust__item span{color:rgba(255,255,255,.7);font-size:.78rem;line-height:1.45}

/* Articles */
.entry-content img,.featured-image img,.post-image img{border-radius:14px}.single .entry-content>:where(p,ul,ol,blockquote,h2,h3,h4),.page .entry-content>:where(p,ul,ol,blockquote,h2,h3,h4){max-width:var(--dp-read)}.entry-content blockquote{border-left:3px solid var(--dp-rust);font-family:var(--dp-serif);font-size:1.25rem;margin-left:0;padding:.2rem 0 .2rem 1.3rem}.wp-block-image figcaption{color:var(--dp-muted);font-size:.76rem;text-align:left}.breadcrumbs,.yoast-breadcrumb{color:var(--dp-muted);font-size:.75rem;margin-bottom:1.2rem}.page-header{border-bottom:1px solid var(--dp-line);margin-bottom:2.5rem;padding-bottom:1.4rem}.page-header .page-title{font-size:clamp(2.5rem,5vw,4.7rem)}
.wp-block-post-template.is-layout-grid{gap:clamp(1.2rem,2.3vw,2rem)}.wp-block-post-template .wp-block-post{background:transparent;padding:0}.wp-block-post-template .wp-block-post-featured-image{margin:0 0 .85rem}.wp-block-post-template .wp-block-post-featured-image img{aspect-ratio:4/3;border-radius:14px;object-fit:cover;width:100%}.wp-block-post-template .wp-block-post-title{font-family:var(--dp-serif);font-size:1.45rem}.wp-block-post-template .wp-block-post-date{color:var(--dp-muted);font-size:.72rem}

/* Forms/buttons */
button,input[type="submit"],.wp-block-button__link,.gb-button,.dp-button{background:var(--dp-ink);border:0;border-radius:9px;color:#fff;font-size:.86rem;font-weight:800;padding:.9rem 1.1rem;text-decoration:none;transition:.18s ease}.wp-block-button__link:hover,.gb-button:hover,.dp-button:hover{background:var(--dp-rust);color:#fff}input[type="text"],input[type="email"],input[type="url"],input[type="tel"],input[type="search"],textarea,select{background:#fff;border:1px solid var(--dp-line);border-radius:9px;color:var(--dp-ink);padding:.82rem .9rem}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--dp-sun);outline-offset:3px}
.site-footer{margin-top:clamp(4rem,8vw,8rem)}.footer-widgets{background:#0a3157;color:rgba(255,255,255,.86)}.site-info{background:#062747;color:rgba(255,255,255,.68);font-size:.8rem}.site-info a,.footer-widgets a{color:#fff}

/* Mobile dock */
.dp-mobile-dock{display:none}
@media(max-width:980px){.dp-map-teaser__inner{grid-template-columns:1fr}.dp-card-grid{grid-template-columns:1fr 1fr}.dp-card--lead{grid-column:1/3}.dp-editorial{grid-template-columns:1fr}.dp-editorial__image{min-height:520px}.dp-editorial__aside h2{max-width:11ch}.dp-trust__grid{grid-template-columns:1fr 1fr}.dp-trust h2{grid-column:1/3}.dp-rail{grid-auto-columns:44%}}
@media(max-width:720px){body{font-size:16.5px;padding-bottom:70px}.dp-map-teaser__inner{border-radius:0;margin-inline:-16px;padding:2rem 16px}.dp-map-teaser__map{min-height:300px}.inside-header{min-height:64px;padding:10px 14px}.site-logo img,.site-logo .header-image{display:block;height:auto;max-height:none;width:min(210px,58vw)}
.site-branding .main-title{font-size:1.45rem}.dp-wrap{padding-inline:16px}.dp-section{padding-block:4rem}.dp-section-head{align-items:flex-start;flex-direction:column;gap:.55rem}.dp-section-head h2{max-width:12ch}.dp-hero{padding:0}.dp-hero__media{border-radius:0;min-height:72svh}.dp-hero__media::after{background:linear-gradient(0deg,rgba(10,15,12,.78) 0%,rgba(10,15,12,.30) 58%,rgba(10,15,12,.08) 100%)}.dp-hero__content{bottom:2rem;left:18px;right:18px}.dp-hero h1{font-size:clamp(3.25rem,15vw,5rem);max-width:8ch}.dp-hero__content>p{font-size:1rem}.dp-hero__search{border-radius:10px;margin-top:1.15rem;padding:5px 6px 5px 12px}.dp-hero__search button{font-size:0;padding:.86rem}.dp-hero__search button::after{content:"→";font-size:1rem}.dp-hero__note{display:none}.dp-browse{padding-block:.9rem}.dp-browse__inner{margin-inline:-16px;padding-inline:16px}.dp-card-grid{display:block}.dp-card{margin-bottom:2.3rem}.dp-card--lead{grid-column:auto}.dp-card__media,.dp-card--lead .dp-card__media{aspect-ratio:4/3}.dp-editorial__image{min-height:440px}.dp-editorial__aside{padding-top:.5rem}.dp-editorial__aside h2{font-size:3rem}.dp-index a{grid-template-columns:50px minmax(0,1fr) auto}.dp-index__icon{height:42px;width:42px}.dp-index strong{font-size:1.5rem}.dp-rail{grid-auto-columns:83%;margin-right:-16px;padding-right:16px;scrollbar-width:none}.dp-trust__grid{grid-template-columns:1fr}.dp-trust h2{grid-column:auto}.dp-trust__item{border-left:0;border-top:1px solid rgba(255,255,255,.2);padding-left:0;padding-top:1rem}.dp-mobile-dock{align-items:center;background:rgba(251,250,247,.96);border:1px solid rgba(6,39,71,.12);border-radius:18px;bottom:8px;box-shadow:0 10px 28px rgba(6,39,71,.16);display:grid;grid-template-columns:repeat(4,1fr);left:8px;padding:5px;position:fixed;right:8px;z-index:999;backdrop-filter:blur(16px)}.dp-mobile-dock a{align-items:center;border-radius:13px;color:var(--dp-ink);display:flex;flex-direction:column;font-size:.61rem;font-weight:800;gap:2px;padding:6px 3px;text-decoration:none}.dp-mobile-dock a:hover,.dp-mobile-dock a:focus{background:var(--dp-soft);color:var(--dp-rust)}.dp-mobile-dock svg{height:19px;width:19px}}
@media(max-width:440px){.dp-hero h1{font-size:3.65rem}.dp-editorial__image{min-height:390px}.dp-rail{grid-auto-columns:88%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}


/* ========================================================================
   Dogplorer 0.6 — publication layout, structured spots and real OSM map
   ======================================================================== */

/* Header cleanup: the image wordmark is the brand; never repeat the site title beside it. */
.dogplorer-site .site-branding{display:none!important}
.dogplorer-site .site-header .inside-header{align-items:center;display:flex;gap:1.5rem;justify-content:space-between}
.dogplorer-site .site-logo{flex:0 1 auto}
.dogplorer-site .site-logo img,.dogplorer-site .site-logo .header-image{width:clamp(245px,24vw,335px)!important}
.dogplorer-site .main-navigation{margin-left:auto}
.dogplorer-site .main-navigation .inside-navigation{justify-content:flex-end}

/* Icons: restrained outline system. No decorative paw symbols. */
.dp-icon{display:inline-block;flex:0 0 auto;height:1.15em;vertical-align:-.18em;width:1.15em}
.dp-browse .dp-icon{height:18px;width:18px}
.dp-proof-list .dp-icon,.dp-hub-facts .dp-icon,.dp-status-chip .dp-icon{height:21px;width:21px}

/* Frontpage cannot inherit GeneratePress content boxes or page padding. */
.dp-front-main{display:block;margin:0;max-width:none;padding:0;width:100%}
.home #page,.home #content,.home #primary,.home main{max-width:none!important;width:100%!important}
.home #page{margin:0!important}
.home .site-content,.home .content-area{display:block!important;margin:0!important;padding:0!important}
.home article,.home .inside-article,.home .entry-content{background:transparent!important;margin:0!important;max-width:none!important;padding:0!important;width:100%!important}
.home .entry-header,.home .featured-image{display:none!important}

/* Stronger, safer hero: still editorial but no clipped oversized headline. */
.dp-hero{max-width:1660px;padding:0 clamp(10px,1.5vw,24px)}
.dp-hero__media{align-items:end;border-radius:0 0 28px 28px;display:grid;min-height:clamp(560px,72vh,760px);overflow:hidden;position:relative}
.dp-hero__content{align-self:end;bottom:auto;left:auto;margin:0;padding:clamp(2rem,6vw,5.5rem);position:relative;right:auto;width:min(820px,78%);z-index:3}
.dp-hero h1{font-size:clamp(3.45rem,6vw,5.9rem);line-height:.94;max-width:9ch}
.dp-hero__photo-note{background:rgba(6,39,71,.72);border-radius:999px;bottom:18px;color:#fff;font-size:.66rem;font-weight:750;letter-spacing:.02em;padding:.42rem .68rem;position:absolute;right:18px;z-index:4}
.dp-hero__search .dp-icon{height:21px;width:21px}

/* Cards and labels */
.dp-card-grid--spots{grid-template-columns:minmax(0,1.3fr) repeat(2,minmax(0,1fr))}
.dp-card-grid--spots .dp-card:nth-child(4),.dp-card-grid--spots .dp-card:nth-child(5){margin-top:.7rem}
.dp-card__badge{align-items:center;display:inline-flex;gap:6px}
.dp-card__badge .dp-icon{height:14px;width:14px}
.dp-card__photo-note,.dp-photo-label{background:rgba(6,39,71,.78);border-radius:999px;bottom:10px;color:#fff;font-size:.62rem;font-weight:750;letter-spacing:.02em;padding:.38rem .6rem;position:absolute;right:10px;z-index:3}
.dp-section-action{margin:2rem 0 0;text-align:right}.dp-text-link{align-items:center;display:inline-flex;font-size:.86rem;font-weight:850;gap:.45rem;text-decoration:none}.dp-text-link .dp-icon{height:18px;width:18px}

/* Editorial proof block */
.dp-editorial--clean .dp-editorial__image{min-height:570px}
.dp-editorial--clean .dp-editorial__image .dp-photo-label{bottom:14px;right:14px}
.dp-proof-list{border-top:1px solid var(--dp-line);margin-top:2.4rem;padding-top:.3rem}
.dp-proof-list>div{align-items:flex-start;border-bottom:1px solid var(--dp-line);display:grid;gap:.9rem;grid-template-columns:28px 1fr;padding:1rem 0}
.dp-proof-list .dp-icon{color:var(--dp-rust);margin-top:.12rem}.dp-proof-list span{color:#485765;font-size:.88rem;line-height:1.5}.dp-proof-list strong{color:var(--dp-ink)}

/* Topic index: more magazine/navigation, less SaaS-card. */
.dp-topic-grid{border-top:1px solid var(--dp-line);display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.dp-topic-card{border-bottom:1px solid var(--dp-line);display:grid;gap:.7rem;grid-template-columns:42px 1fr;padding:1.4rem .4rem}
.dp-topic-card:nth-child(odd){border-right:1px solid var(--dp-line);padding-right:2rem}.dp-topic-card:nth-child(even){padding-left:2rem}
.dp-topic-card .dp-icon{color:var(--dp-rust);grid-row:1/3;height:28px;margin-top:.12rem;width:28px}.dp-topic-card h3{font-size:clamp(1.55rem,2.2vw,2.15rem);margin:0}.dp-topic-card p{color:var(--dp-muted);font-size:.86rem;margin:0;max-width:46ch}

/* Trust strip: keep heading broad enough to read naturally. */
.dp-trust__grid{grid-template-columns:minmax(280px,1.55fr) repeat(3,minmax(150px,1fr));gap:clamp(1rem,2.5vw,2.2rem)}
.dp-trust h2{font-size:clamp(2.2rem,3.8vw,3.7rem);line-height:1;max-width:12ch}
.dp-trust__item{padding-left:clamp(1rem,2vw,1.6rem)}
.dp-trust__item strong{font-size:.9rem}.dp-trust__item span{font-size:.8rem}

/* Real OpenStreetMap container — third-party content stays unloaded until button click. */
.dp-section--map{background:#edf3f6}
.dp-map-frame{background:#fff;border:1px solid #d9e2e7;border-radius:22px;box-shadow:0 14px 40px rgba(6,39,71,.08);overflow:hidden;position:relative}
.dp-map-consent{align-items:center;background:linear-gradient(135deg,#e7eff3,#f8f6ee);display:flex;height:clamp(330px,48vw,560px);justify-content:center;padding:1.5rem;position:relative}
.dp-map-consent::before,.dp-map-consent::after{background:rgba(6,39,71,.06);content:"";inset:auto;position:absolute;transform:rotate(-10deg)}
.dp-map-consent::before{height:1px;left:-10%;top:38%;width:120%}.dp-map-consent::after{height:1px;left:-10%;top:62%;width:120%}
.dp-map-load{align-items:center;background:#fff!important;border:1px solid rgba(6,39,71,.12)!important;border-radius:16px!important;box-shadow:0 18px 50px rgba(6,39,71,.12);color:var(--dp-ink)!important;display:flex;gap:.9rem;max-width:320px;padding:1rem 1.15rem!important;position:relative;text-align:left;z-index:2}
.dp-map-load:hover{border-color:var(--dp-sun)!important;transform:translateY(-1px)}.dp-map-load>.dp-icon{background:var(--dp-sun);border-radius:50%;height:44px;padding:10px;width:44px}.dp-map-load span{display:block}.dp-map-load strong{display:block;font-size:.9rem}.dp-map-load small{color:var(--dp-muted);display:block;font-size:.7rem;font-weight:650;margin-top:.12rem}.dp-map-load.is-loading{opacity:.7}
.dp-live-map{display:none;min-height:320px;width:100%;z-index:1}.dp-map-frame.is-map-loaded .dp-map-consent{display:none}.dp-map-frame.is-map-loaded .dp-live-map{display:block}
.dp-map-credit-note{border-top:1px solid #e5ebee;color:#667680;font-size:.69rem;line-height:1.45;margin:0!important;max-width:none!important;padding:.7rem 1rem}
.dp-osm-divicon{background:transparent!important;border:0!important}.dp-osm-marker{align-items:center;background:#fff;border:3px solid #fff;border-radius:50% 50% 50% 0;box-shadow:0 6px 18px rgba(6,39,71,.24);display:flex;height:42px;justify-content:center;overflow:hidden;transform:rotate(-45deg);width:42px}.dp-osm-marker img{height:32px!important;object-fit:contain!important;transform:rotate(45deg);width:32px!important}.dp-osm-marker--plain{background:var(--dp-sun)}
.dp-map-popup{min-width:180px}.dp-map-popup a{color:var(--dp-ink);display:block;font-size:.87rem;font-weight:850;line-height:1.25;text-decoration:none}.dp-map-popup span{color:#64737d;display:block;font-size:.7rem;margin-top:.35rem}.leaflet-popup-content-wrapper{border-radius:12px!important;box-shadow:0 12px 32px rgba(6,39,71,.18)!important}.leaflet-control-attribution{font-size:9px!important}

/* SEO hub */
.dp-hub-page,.dp-spot-page{background:var(--dp-paper)}
.dp-hub-hero{background:#f4efe5;border-bottom:1px solid var(--dp-line);padding-block:clamp(4rem,8vw,7.5rem)}
.dp-hub-hero h1{font-size:clamp(3.1rem,6vw,6rem);margin-bottom:1rem;max-width:12ch}.dp-hub-hero .dp-lead{max-width:66ch}
.dp-hub-facts{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.7rem}.dp-hub-facts>span{align-items:center;background:#fff;border:1px solid var(--dp-line);border-radius:999px;display:inline-flex;font-size:.76rem;font-weight:750;gap:.45rem;padding:.65rem .85rem}.dp-hub-facts .dp-icon{color:var(--dp-rust)}
.dp-reading{max-width:820px}.dp-reading h2{font-size:clamp(2rem,3.8vw,3.2rem);margin-top:2.5rem}.dp-reading h2:first-child{margin-top:0}.dp-reading p{max-width:68ch}.dp-source{border-top:1px solid var(--dp-line);color:var(--dp-muted);font-size:.78rem;margin-top:2rem;padding-top:1rem}

/* Individual spot pages */
.dp-spot-template{display:block;margin:0;max-width:none;padding:0;width:100%}
.page-template-dogplorer-spot .site-content{display:block!important;margin:0!important;max-width:none!important;padding:0!important}
.dp-spot-hero{background:#f4efe5;padding-block:clamp(2.8rem,6vw,6rem)}
.dp-crumbs{align-items:center;color:var(--dp-muted);display:flex;flex-wrap:wrap;font-size:.72rem;font-weight:700;gap:.5rem;margin-bottom:1.8rem}.dp-crumbs a{text-decoration:none}
.dp-spot-hero__grid{align-items:center;display:grid;gap:clamp(2rem,5vw,5rem);grid-template-columns:minmax(0,1fr) minmax(380px,.82fr)}
.dp-spot-hero h1{font-size:clamp(3rem,5.4vw,5.5rem);margin:0 0 1.2rem;max-width:11ch}.dp-spot-intro p{margin:.25rem 0 0}.dp-status-chip{align-items:center;background:#fff;border:1px solid var(--dp-line);border-radius:999px;display:inline-flex;font-size:.75rem;gap:.45rem;margin-top:1.25rem;padding:.65rem .85rem}.dp-status-chip .dp-icon{color:var(--dp-rust)}
.dp-spot-hero__photo{aspect-ratio:4/3;border-radius:20px;box-shadow:var(--dp-shadow);overflow:hidden;position:relative}.dp-spot-hero__photo img{height:100%;object-fit:cover;width:100%}
.dp-fact-row{background:#fff;border:1px solid var(--dp-line);border-radius:18px;display:grid;grid-template-columns:repeat(4,1fr);overflow:hidden}.dp-fact-row>div{border-right:1px solid var(--dp-line);padding:1.15rem 1.25rem}.dp-fact-row>div:last-child{border-right:0}.dp-fact-row span{color:var(--dp-muted);display:block;font-size:.66rem;font-weight:750;letter-spacing:.04em;margin-bottom:.22rem;text-transform:uppercase}.dp-fact-row strong{font-size:.94rem}
.dp-spot-body{align-items:start;display:grid;gap:clamp(2rem,5vw,5rem);grid-template-columns:minmax(0,1fr) minmax(310px,.58fr)}
.dp-spot-side{display:grid;gap:1rem;position:sticky;top:106px}.dp-side-card{background:#fff;border:1px solid var(--dp-line);border-radius:18px;overflow:hidden;padding:1.15rem}.dp-side-card h3{font-family:var(--dp-sans);font-size:.86rem;font-weight:850;letter-spacing:0;margin:0 0 .8rem}.dp-side-card .dp-map-frame{border-radius:12px;box-shadow:none;margin:-.25rem}.dp-side-card .dp-map-consent{height:320px}.dp-small{color:var(--dp-muted);font-size:.72rem;line-height:1.5}.dp-section--soft{background:#f4efe5}

/* Utility legal/content pages */
.page:not(.home):not(.page-template-dogplorer-spot) .site-content{padding-top:clamp(2.5rem,5vw,5rem)}
.page:not(.home):not(.page-template-dogplorer-spot) .inside-article{padding-bottom:clamp(2rem,5vw,5rem)}

@media(max-width:980px){
  .dogplorer-site .site-header .inside-header{gap:.6rem}
  .dogplorer-site .main-navigation .main-nav ul li>a{padding-inline:10px}
  .dp-card-grid--spots{grid-template-columns:1fr 1fr}.dp-card-grid--spots .dp-card--lead{grid-column:1/3}
  .dp-topic-grid{grid-template-columns:1fr}.dp-topic-card:nth-child(odd){border-right:0;padding-right:.4rem}.dp-topic-card:nth-child(even){padding-left:.4rem}
  .dp-trust__grid{grid-template-columns:1fr 1fr}.dp-trust__grid>div:first-child{grid-column:1/3}.dp-trust h2{max-width:15ch}
  .dp-spot-hero__grid{grid-template-columns:1fr}.dp-spot-hero__photo{max-width:720px}.dp-spot-body{grid-template-columns:1fr}.dp-spot-side{position:static}.dp-fact-row{grid-template-columns:1fr 1fr}.dp-fact-row>div:nth-child(2){border-right:0}.dp-fact-row>div:nth-child(-n+2){border-bottom:1px solid var(--dp-line)}
}
@media(max-width:768px){
  .dogplorer-site .site-header .inside-header{min-height:68px;padding:9px 14px}
  .dogplorer-site .site-logo img,.dogplorer-site .site-logo .header-image{width:min(205px,58vw)!important}
  .dp-hero{padding:0}.dp-hero__media{border-radius:0;min-height:670px}.dp-hero__content{padding:2.1rem 18px 4.4rem;width:100%}.dp-hero h1{font-size:clamp(3.15rem,13vw,4.7rem);max-width:8.5ch}.dp-hero__content>p{font-size:1rem;max-width:42ch}.dp-hero__photo-note{bottom:12px;font-size:.58rem;right:12px}
  .dp-hero__search{max-width:none}.dp-hero__search button{font-size:0;min-width:44px;padding:.82rem}.dp-hero__search button::after{content:"→";font-size:1rem}
  .dp-card-grid--spots{display:block}.dp-card-grid--spots .dp-card{margin-bottom:2.25rem}.dp-card-grid--spots .dp-card:nth-child(4),.dp-card-grid--spots .dp-card:nth-child(5){margin-top:0}
  .dp-editorial--clean .dp-editorial__image{min-height:430px}
  .dp-topic-card{grid-template-columns:36px 1fr}.dp-topic-card .dp-icon{height:24px;width:24px}
  .dp-trust__grid{display:block}.dp-trust__grid>div:first-child{margin-bottom:2rem}.dp-trust__item{border-left:0;border-top:1px solid rgba(255,255,255,.2);margin-top:1rem;padding:1rem 0 0}.dp-trust h2{font-size:2.65rem;max-width:12ch}
  .dp-map-frame{border-radius:16px}.dp-map-consent{height:360px}.dp-live-map{height:420px!important}.dp-map-load{max-width:280px}
  .dp-hub-hero{padding-block:3.5rem}.dp-hub-hero h1{font-size:clamp(3rem,13vw,4.5rem)}.dp-hub-facts{align-items:flex-start;flex-direction:column}
  .dp-spot-hero{padding-block:2.4rem 3.2rem}.dp-spot-hero h1{font-size:clamp(2.9rem,12vw,4.4rem)}.dp-spot-hero__photo{aspect-ratio:4/3}.dp-fact-row{display:block}.dp-fact-row>div{border-bottom:1px solid var(--dp-line)!important;border-right:0!important}.dp-fact-row>div:last-child{border-bottom:0!important}.dp-spot-side .dp-live-map{height:340px!important}
}
@media(max-width:440px){
  .dp-hero__media{min-height:620px}.dp-hero h1{font-size:3.35rem}.dp-section{padding-block:3.5rem}.dp-editorial--clean .dp-editorial__image{min-height:380px}.dp-trust h2{font-size:2.4rem}
}


/* ===== Dogplorer 0.7 refinements ===== */
/* Hero: keep the dog head in frame with the current portrait demo image. */
.dp-hero__media>img{object-position:center 23%!important}

/* Search: editorial command-bar instead of generic search box. */
.dp-search-panel{background:rgba(255,255,255,.95);border-radius:18px;box-shadow:0 24px 70px rgba(0,0,0,.18);color:var(--dp-ink);margin-top:1.55rem;max-width:720px;padding:1rem 1rem .85rem}
.dp-hero__search{background:transparent!important;box-shadow:none!important;display:block!important;margin:0!important;max-width:none!important;padding:0!important}
.dp-hero__search label{display:block;font-size:.7rem;font-weight:850;letter-spacing:.08em;margin:0 0 .45rem .2rem;text-transform:uppercase}
.dp-search-row{align-items:stretch;display:grid;gap:.55rem;grid-template-columns:minmax(0,1fr) auto}
.dp-search-row input{background:#f4f1ea!important;border:1px solid transparent!important;border-radius:11px!important;font-size:.95rem!important;padding:.92rem 1rem!important}
.dp-search-row input:focus{background:#fff!important;border-color:rgba(6,39,71,.22)!important}
.dp-search-row button{align-items:center;background:var(--dp-sun)!important;color:var(--dp-ink)!important;display:flex;gap:.55rem;justify-content:center;min-width:92px;padding:.9rem 1.1rem!important}
.dp-search-row button:hover{background:#f0aa00!important;color:var(--dp-ink)!important}
.dp-search-suggestions{align-items:center;display:flex;flex-wrap:wrap;font-size:.7rem;gap:.35rem .7rem;margin-top:.7rem;padding-inline:.2rem}.dp-search-suggestions>span{color:var(--dp-muted);font-weight:700}.dp-search-suggestions a{color:var(--dp-ink);font-weight:800;text-decoration:none}.dp-search-suggestions a:hover{text-decoration:underline}

/* Browse: remove icon-system feeling. */
.dp-browse a{gap:.65rem}.dp-browse a span{color:var(--dp-rust);font-size:.8rem}.dp-browse a:first-child span{color:#fff}.dp-browse .dp-icon{display:none!important}

/* Numbered navigation cards instead of generic pet icons. */
.dp-topic-grid--numbered .dp-topic-card{color:var(--dp-ink);grid-template-columns:52px minmax(0,1fr) 30px;text-decoration:none;transition:background .18s ease}
.dp-topic-grid--numbered .dp-topic-card:hover{background:#fbf7ef}
.dp-topic-grid--numbered .dp-topic-no{color:var(--dp-rust);font-size:.72rem;font-weight:900;grid-row:1/3;letter-spacing:.08em;padding-top:.35rem}
.dp-topic-grid--numbered .dp-topic-arrow{align-self:center;font-size:1.25rem;grid-column:3;grid-row:1/3;justify-self:end}.dp-topic-grid--numbered .dp-icon{display:none}
.dp-proof-list--text>div{grid-template-columns:42px 1fr}.dp-proof-list--text b{align-items:center;background:var(--dp-soft);border-radius:999px;color:var(--dp-rust);display:flex;font-size:.68rem;height:34px;justify-content:center;width:34px}

/* About page: true editorial sections instead of one narrow text column. */
.page-id-0{} /* specificity placeholder */
.dp-about-page{margin-inline:auto;max-width:1280px;padding:clamp(2rem,5vw,5rem) clamp(16px,4vw,48px) clamp(4rem,7vw,7rem)}
.dp-about-hero{align-items:end;border-bottom:1px solid var(--dp-line);display:grid;gap:clamp(2rem,6vw,7rem);grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr);padding-bottom:clamp(3rem,6vw,6rem)}
.dp-about-hero h1{font-size:clamp(3.5rem,7vw,7rem);line-height:.94;margin:.35rem 0 1.2rem;max-width:11ch}.dp-about-hero .dp-page-intro{font-size:clamp(1.05rem,1.7vw,1.35rem);line-height:1.55;max-width:60ch}
.dp-about-hero aside{background:var(--dp-soft);border-radius:20px;padding:1.5rem}.dp-about-number{color:var(--dp-rust);display:block;font-size:.74rem;font-weight:900;letter-spacing:.08em;margin-bottom:2rem}.dp-about-hero aside strong{display:block;font-family:var(--dp-serif);font-size:2rem;line-height:1.05;margin-bottom:.65rem}.dp-about-hero aside p{color:var(--dp-muted);margin:0}
.dp-about-principles{display:grid;grid-template-columns:repeat(3,1fr)}.dp-about-principles>div{border-bottom:1px solid var(--dp-line);padding:clamp(2rem,4vw,4rem) clamp(1rem,2.5vw,2.5rem)}.dp-about-principles>div+div{border-left:1px solid var(--dp-line)}.dp-about-principles span{color:var(--dp-rust);font-size:.72rem;font-weight:900;letter-spacing:.08em}.dp-about-principles h2{font-size:clamp(2rem,3vw,3rem);margin:.9rem 0}.dp-about-principles p{color:var(--dp-muted);margin:0}
.dp-about-local{align-items:start;background:var(--dp-ink);border-radius:24px;color:#fff;display:grid;gap:clamp(2rem,6vw,7rem);grid-template-columns:.8fr 1.2fr;margin-top:clamp(3rem,6vw,6rem);padding:clamp(2rem,5vw,5rem)}.dp-about-local h2{color:#fff;font-size:clamp(2.5rem,4vw,4.3rem);margin:.4rem 0 0}.dp-about-local>p{font-size:clamp(1.05rem,1.6vw,1.3rem);line-height:1.65;margin:0;max-width:58ch}.dp-about-local .dp-eyebrow{color:var(--dp-sun)}

/* Overview pages */
.dp-overview-hero{border-bottom:1px solid var(--dp-line);padding:clamp(3rem,7vw,7rem) 0}.dp-overview-hero h1{font-size:clamp(3.5rem,7vw,7rem);line-height:.95;margin:.4rem 0 1.1rem;max-width:11ch}.dp-overview-hero .dp-lead{max-width:62ch}
.dp-overview-list{border-top:1px solid var(--dp-line)}.dp-overview-list>div{align-items:start;border-bottom:1px solid var(--dp-line);display:grid;gap:1rem 2rem;grid-template-columns:60px minmax(240px,.7fr) 1fr;padding:1.7rem 0}.dp-overview-list span{color:var(--dp-rust);font-size:.72rem;font-weight:900}.dp-overview-list h2{font-size:clamp(1.7rem,2.5vw,2.5rem);margin:0}.dp-overview-list p{color:var(--dp-muted);margin:0}

/* Dogplorer rating + video */
.dp-rating{align-items:center;display:flex;flex-wrap:wrap;gap:.35rem .7rem;margin-top:1.1rem}.dp-rating__stars{color:#d9d4c8;display:flex;font-size:1.2rem;letter-spacing:.05em}.dp-rating__stars .is-full,.dp-rating__stars .is-half{color:var(--dp-sun)}.dp-rating small{color:var(--dp-muted);font-size:.68rem}.dp-rating-note{color:var(--dp-muted);font-size:.82rem;margin-top:.45rem}.dp-spot-video{border-radius:18px;overflow:hidden}.dp-spot-video video,.dp-spot-video iframe{aspect-ratio:16/9;display:block;height:auto;max-width:100%;width:100%}

/* Route planner */
.dp-route-grid{display:grid;gap:.5rem;grid-template-columns:1fr 1fr}.dp-route-grid a{background:#f6f3ed;border:1px solid var(--dp-line);border-radius:10px;color:var(--dp-ink);font-size:.78rem;font-weight:850;padding:.75rem .65rem;text-align:center;text-decoration:none}.dp-route-grid a:hover{background:var(--dp-sun);border-color:var(--dp-sun)}.dp-route-note{color:var(--dp-muted);font-size:.76rem;line-height:1.5;margin:.8rem 0 0}

/* Footer spacing: no mysterious white canyon above the legal line. */
.site-footer{margin-top:clamp(2rem,4vw,4rem)!important}.home .site-footer,.page-template-dogplorer-spot .site-footer{margin-top:0!important}.site-info{padding-block:1rem!important}
.dp-trust + .site-footer{margin-top:0!important}

@media(max-width:980px){.dp-about-hero{grid-template-columns:1fr}.dp-about-principles{grid-template-columns:1fr}.dp-about-principles>div+div{border-left:0}.dp-about-local{grid-template-columns:1fr}.dp-overview-list>div{grid-template-columns:42px 1fr}.dp-overview-list p{grid-column:2}.dp-topic-grid--numbered .dp-topic-card{grid-template-columns:42px 1fr 26px}}
@media(max-width:720px){.dp-hero__media>img{object-position:center 24%!important}.dp-search-panel{border-radius:14px;margin-top:1rem;padding:.8rem}.dp-search-row{grid-template-columns:1fr auto}.dp-search-row button{min-width:58px}.dp-search-suggestions{display:none}.dp-about-page{padding-top:2.5rem}.dp-about-hero h1,.dp-overview-hero h1{font-size:3.6rem}.dp-about-local{border-radius:0;margin-inline:-16px;padding-inline:16px}.dp-route-grid{grid-template-columns:repeat(2,1fr)}}


/* ===== Dogplorer 0.8: browse-first polish ===== */
/* Never split words such as Hundewiesen across lines. */
h1,h2,h3,h4,h5,h6{hyphens:none!important;overflow-wrap:normal!important;word-break:normal!important}

/* Section headings need breathing room; 0.7 was too narrow on wide screens. */
.dp-section-head{align-items:end;display:grid;gap:clamp(2rem,6vw,6rem);grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);justify-content:initial}
.dp-section-head>div{min-width:0}
.dp-section-head h2{max-width:15ch!important}
.dp-section-head>p{justify-self:end;max-width:48ch}
.dp-section--map .dp-section-head h2{max-width:16ch!important}
.dp-section--map .dp-section-head>p{max-width:50ch}

/* The quick browse bar should feel like navigation, not a row of mystery arrows. */
.dp-browse{background:#fff}
.dp-browse__inner{gap:.65rem}
.dp-browse a{border-color:#ded7c8;border-radius:12px;font-size:.82rem;letter-spacing:-.01em;padding:.78rem 1rem;transition:background .16s ease,border-color .16s ease,transform .16s ease}
.dp-browse a::after{content:"";background:var(--dp-rust);border-radius:99px;height:5px;margin-left:.22rem;opacity:.55;width:5px}
.dp-browse a:first-child::after{background:#fff;opacity:.9}
.dp-browse a:hover{transform:translateY(-1px)}

/* Category cards: clear destination labels instead of standalone arrows. */
.dp-topic-grid--numbered .dp-topic-card{align-content:start;grid-template-columns:52px minmax(0,1fr);padding:clamp(1.6rem,3vw,2.3rem);position:relative}
.dp-topic-grid--numbered .dp-topic-no{grid-row:1/4}
.dp-topic-grid--numbered .dp-topic-card h3{margin-bottom:.55rem}
.dp-topic-grid--numbered .dp-topic-card p{margin:0;max-width:40ch}
.dp-topic-cta{align-items:center;color:var(--dp-rust);display:inline-flex;font-size:.72rem;font-weight:900;gap:.45rem;letter-spacing:.06em;margin-top:1.15rem;text-transform:uppercase}
.dp-topic-cta::after{background:currentColor;content:"";height:1px;transition:width .18s ease;width:22px}
.dp-topic-card:hover .dp-topic-cta::after{width:36px}
.dp-topic-arrow{display:none!important}

/* Overview map section: stronger visual separation and readable heading. */
.dp-section--map{background:#eef5f7}
.dp-section--map .dp-wrap{padding-block:clamp(2.2rem,4vw,3.5rem)}
.dp-hub-page .dp-section--map{padding-block:0}

/* Overview pages should look useful even while young. */
.dp-overview-list>div{border-radius:0;transition:background .16s ease}
.dp-overview-list>div:hover{background:#fbf7ef}
.dp-overview-list h2{max-width:22ch}

/* Footer: keep compact on short pages; no blank canyon. */
body:not(.home) .site-footer{margin-top:clamp(1.25rem,2.5vw,2.5rem)!important}
body:not(.home) .footer-widgets:empty{display:none!important}
.site-info{margin-top:0!important}

@media(max-width:980px){
  .dp-section-head{align-items:start;grid-template-columns:1fr;gap:.8rem}
  .dp-section-head h2{max-width:18ch!important}
  .dp-section-head>p{justify-self:start;max-width:56ch}
}
@media(max-width:720px){
  .dp-section-head h2{font-size:clamp(2.45rem,12vw,3.55rem);max-width:none!important}
  .dp-topic-grid--numbered .dp-topic-card{grid-template-columns:40px minmax(0,1fr);padding:1.35rem .35rem}
  .dp-topic-grid--numbered .dp-topic-no{padding-top:.15rem}
  .dp-browse__inner{margin-inline:-16px;padding-inline:16px}
  .dp-browse a{border-radius:10px;padding:.72rem .9rem}
  .dp-section--map .dp-wrap{padding-block:2rem}
}

/* ===== Dogplorer 0.9: cleaner navigation, search and managed pages ===== */
/* Managed landing pages already render their own editorial H1. Never show the native GP title above it. */
.dp-managed-landing .entry-header,
.dp-managed-legal .entry-header{display:none!important}
.dp-managed-landing .site-content{padding-top:0!important}
.dp-managed-landing .inside-article,
.dp-managed-landing .entry-content{margin-top:0!important;padding-top:0!important}
.dp-managed-landing .site-footer{margin-top:0!important}
.footer-widgets:not(:has(.widget)){display:none!important}

/* Keep the first real H1 strong, but no longer billboard-sized. */
.dp-about-hero h1,
.dp-overview-hero h1{font-size:clamp(3.15rem,5.7vw,5.8rem);line-height:.97;max-width:13ch}
.dp-overview-hero{padding:clamp(2.8rem,5.5vw,5.6rem) 0}

/* Search: one confident finder instead of a form sitting inside a large empty card. */
.dp-search-panel{background:rgba(251,250,247,.97)!important;border:1px solid rgba(255,255,255,.68);border-radius:16px;box-shadow:0 18px 48px rgba(0,0,0,.16);max-width:760px;padding:.85rem!important;backdrop-filter:blur(12px)}
.dp-search-head{align-items:center;display:flex;gap:1rem;justify-content:space-between;padding:.15rem .25rem .65rem}
.dp-search-head strong{font-size:.72rem;font-weight:900;letter-spacing:.075em;text-transform:uppercase}
.dp-search-head span{color:var(--dp-muted);font-size:.7rem;font-weight:750}
.dp-hero__search{margin:0!important}
.dp-hero__search label.screen-reader-text{border:0!important;clip:rect(1px,1px,1px,1px)!important;clip-path:inset(50%)!important;height:1px!important;margin:-1px!important;overflow:hidden!important;padding:0!important;position:absolute!important;width:1px!important;word-wrap:normal!important}
.dp-search-row{align-items:center;background:#fff;border:1px solid #e5dfd3;border-radius:13px;display:grid;gap:.45rem;grid-template-columns:minmax(0,1fr) auto;padding:.38rem .4rem .38rem .95rem;transition:border-color .16s ease,box-shadow .16s ease}
.dp-search-row:focus-within{border-color:rgba(6,39,71,.34);box-shadow:0 0 0 3px rgba(255,184,0,.14)}
.dp-search-row input{background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;font-size:1rem!important;line-height:1.3;min-width:0;padding:.78rem .15rem!important}
.dp-search-row input::placeholder{color:#7b8790;opacity:1}
.dp-search-row button{background:var(--dp-sun)!important;border-radius:10px!important;color:var(--dp-ink)!important;font-size:.8rem!important;font-weight:900;min-width:108px;padding:.84rem 1.05rem!important}
.dp-search-row button:hover{background:#f0aa00!important;color:var(--dp-ink)!important}
.dp-search-suggestions{gap:.42rem .55rem;margin-top:.7rem;padding:0 .2rem .05rem}
.dp-search-suggestions>span{font-size:.68rem;font-weight:800;margin-right:.12rem}
.dp-search-suggestions a{background:#fff;border:1px solid #e5dfd3;border-radius:999px;font-size:.68rem;font-weight:800;padding:.38rem .62rem;text-decoration:none!important}
.dp-search-suggestions a:hover{background:var(--dp-ink);border-color:var(--dp-ink);color:#fff}

/* Quick browse: no icons, no arrows, no decorative dots. Just useful destinations. */
.dp-browse{background:#fff;border-bottom:1px solid var(--dp-line);padding-block:0}
.dp-browse__inner{gap:1.55rem}
.dp-browse a,.dp-browse a:first-child{background:transparent!important;border:0!important;border-bottom:2px solid transparent!important;border-radius:0!important;color:var(--dp-ink)!important;font-size:.8rem;font-weight:850;padding:1rem .05rem .88rem!important;transform:none!important}
.dp-browse a:first-child{border-bottom-color:var(--dp-rust)!important;color:var(--dp-rust)!important}
.dp-browse a::after,.dp-browse a::before{content:none!important;display:none!important}
.dp-browse a:hover,.dp-browse a:focus{border-bottom-color:var(--dp-rust)!important;color:var(--dp-rust)!important}

/* Footer should close the page, not float below an empty widget area. */
.dp-managed-landing .footer-widgets,
.dp-managed-legal .footer-widgets{margin:0!important}
.dp-managed-landing .site-info,
.dp-managed-legal .site-info{margin-top:0!important}

@media(max-width:720px){
  .dp-about-hero h1,.dp-overview-hero h1{font-size:clamp(2.9rem,12vw,4rem);max-width:12ch}
  .dp-search-panel{border-radius:14px;padding:.72rem!important}
  .dp-search-head{padding:.1rem .15rem .55rem}.dp-search-head span{display:none}
  .dp-search-row{grid-template-columns:minmax(0,1fr) auto;padding-left:.7rem}
  .dp-search-row input{font-size:.92rem!important}.dp-search-row button{min-width:auto;padding:.8rem .9rem!important}
  .dp-search-suggestions{display:flex!important;flex-wrap:nowrap;margin-right:-.65rem;overflow-x:auto;padding-bottom:.15rem;scrollbar-width:none}.dp-search-suggestions::-webkit-scrollbar{display:none}.dp-search-suggestions>span{display:none}.dp-search-suggestions a{flex:0 0 auto}
  .dp-browse__inner{gap:1.2rem}.dp-browse a,.dp-browse a:first-child{padding:.9rem 0 .78rem!important}
}
