.footer-legal-links{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px 12px;color:var(--muted);font-size:13px}
.footer-legal-links a,.footer-legal-links button{color:inherit}
.footer-legal-links a:hover,.footer-legal-links a:focus-visible,.footer-legal-links button:hover,.footer-legal-links button:focus-visible{text-decoration:underline;text-underline-offset:3px}
.footer-legal-links button{border:0;background:none;padding:0;cursor:pointer;font:inherit}
.footer-legal-links button:focus-visible,.cookie-notice button:focus-visible,.cookie-notice a:focus-visible{outline:3px solid #608b8c;outline-offset:3px}
.cookie-notice{position:fixed;z-index:80;left:clamp(12px,2vw,24px);bottom:clamp(12px,2vw,24px);width:min(440px,calc(100vw - 112px));padding:20px 22px;border:1px solid #cadad5;border-radius:22px;background:#f8f6f1;color:#243e3e;box-shadow:0 16px 48px #243e3e25;display:grid;gap:12px}
.cookie-notice[hidden]{display:none!important}
.cookie-notice h2{margin:5px 0 7px;font-family:Georgia,serif;font-size:23px;line-height:1.15;font-weight:400;color:#243e3e}
.cookie-notice p{margin:0;color:#586b69;font-size:14px;line-height:1.55}
.cookie-kicker{font-size:10px;letter-spacing:.18em;font-weight:700;color:#608b8c}
.cookie-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.cookie-actions a{font-size:13px;color:#315f60;text-decoration:underline;text-underline-offset:3px}
.cookie-notice button{min-height:42px;padding:0 19px;border:0;border-radius:999px;background:#315f60;color:#fff;font-weight:700;cursor:pointer}
.cookie-notice button:hover{background:#243e3e}
.privacy-article{max-width:900px}
.privacy-article h2{margin:36px 0 12px;font-size:clamp(25px,3vw,34px);color:#315f60}
.privacy-article h2:first-of-type{margin-top:32px}
.privacy-article p{line-height:1.8}
.privacy-article a{text-decoration:underline;text-underline-offset:3px}
.privacy-updated{color:var(--muted);font-size:13px}
.privacy-draft-note{margin-bottom:24px;padding:20px 22px;border:1px solid #cbdad5;border-radius:18px;background:#e8efeb;color:#315f60}
.privacy-draft-note strong{display:block;margin-bottom:8px}
.privacy-draft-note p{margin:0;font-size:15px}
@media(max-width:760px){.footer-legal-links{justify-content:flex-start;gap:8px 10px}.cookie-notice{left:12px;right:56px;bottom:max(12px,env(safe-area-inset-bottom));width:auto;padding:13px 14px;border-radius:17px}.cookie-notice h2{font-size:19px;margin:3px 0 5px}.cookie-notice p{font-size:12.5px;line-height:1.45}.cookie-actions{justify-content:space-between;gap:10px}.cookie-notice button{min-height:40px;padding:0 15px}}
@media(prefers-reduced-motion:reduce){.cookie-notice *{scroll-behavior:auto}}

/* Clear, balanced cookie choices */
.cookie-notice{gap:15px}
.cookie-kicker{color:#527b78}
.cookie-actions{display:grid;grid-template-columns:1fr;gap:12px}
.cookie-actions>a{justify-self:start}
.cookie-choice-buttons{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.cookie-choice-buttons button{width:100%;min-height:48px;padding:8px 12px;font-size:13px;line-height:1.2;white-space:normal;transition:background-color .18s ease,color .18s ease,transform .18s ease}
.cookie-choice-buttons button:hover{transform:translateY(-1px)}
.cookie-choice-buttons [data-cookie-choice="necessary"]{border:1px solid #cbdad5;background:#e8efeb;color:#315f60}
.cookie-choice-buttons [data-cookie-choice="necessary"]:hover{background:#dce8e3}
.cookie-choice-buttons [data-cookie-choice="all"]{background:#315f60;color:#fff}
.cookie-choice-buttons [data-cookie-choice="all"]:hover{background:#243e3e}
@media(max-width:760px){.cookie-notice{gap:10px}.cookie-actions{gap:8px}.cookie-choice-buttons{grid-template-columns:1fr;gap:7px}.cookie-choice-buttons button{min-height:42px;font-size:13px}}
@media(prefers-reduced-motion:reduce){.cookie-choice-buttons button{transition:none}.cookie-choice-buttons button:hover{transform:none}}


/* Focus service: Angsthund-Coaching */
.anxiety-feature{background:#e8eeea;padding:clamp(58px,8vw,100px) 0}
.anxiety-feature-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:center;gap:clamp(32px,7vw,88px)}
.anxiety-feature-grid>img{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;object-position:center 56%;border-radius:26px}
.anxiety-feature-copy h2{font:400 clamp(38px,4.2vw,58px)/1.08 Georgia,serif;letter-spacing:-.04em;color:#263f3e;margin:15px 0 22px}
.anxiety-feature-copy h2 em{font-weight:400;color:#578180}
.anxiety-feature-copy p{max-width:58ch;color:#536764;font-size:16px;line-height:1.8}
.anxiety-feature-copy .pill{margin-top:12px}
.anxiety-page .subhero img{height:340px;aspect-ratio:1/1;object-position:center 56%;border-radius:26px}
.anxiety-page .article-cta .pill{margin:6px 10px 4px 0}
@media(max-width:760px){.anxiety-feature{padding:58px 0}.anxiety-feature-grid{grid-template-columns:1fr;gap:28px}.anxiety-feature-grid>img{aspect-ratio:4/3;object-position:center 54%}.anxiety-feature-copy h2{font-size:clamp(35px,9vw,48px)}.anxiety-page .subhero img{width:100%;height:auto;aspect-ratio:4/3;object-position:center 55%}}
@media(prefers-reduced-motion:reduce){.anxiety-feature *{scroll-behavior:auto}}


/* Welpenbild: quadratischer Kartenausschnitt zeigt den Welpen vollständig */
.card .photo.puppy-photo{height:auto;aspect-ratio:1/1}
.card .photo.puppy-photo img{object-position:center 36%}
.subhero img.puppy-image{height:auto;aspect-ratio:4/5;object-position:center 42%}


/* Slogan direkt mit dem h-u-n-d-Logo verbinden */
.brand-lockup{display:flex;align-items:center;gap:12px;flex:0 0 auto;min-width:0;text-decoration:none}
.brand-lockup .brand-slogan{display:grid;gap:3px;max-width:200px;color:#315f60;line-height:1.25}
.brand-slogan span:first-child{font:700 12px/1.25 Arial,sans-serif;letter-spacing:.025em}
.brand-slogan span:last-child{font:italic 14px/1.25 Georgia,serif;color:#587b78}
@media(max-width:760px){.nav{gap:12px}.brand-lockup{gap:9px}.brand-lockup .brand-slogan{max-width:clamp(125px,38vw,165px)}.brand-slogan span:first-child{font-size:9.5px;letter-spacing:.01em}.brand-slogan span:last-child{font-size:11px}}
@media(max-width:360px){.brand-lockup .brand-slogan{max-width:125px}.brand-slogan span:first-child{font-size:9px}.brand-slogan span:last-child{font-size:10.5px}}


/* Keep the fixed contact rail out of the way while visitors use the contact form. */
.contact-bar{transition:opacity .22s ease,transform .22s ease,visibility .22s ease}
body.contact-form-visible .contact-bar:not(:focus-within){opacity:0;visibility:hidden;pointer-events:none;transform:translateX(12px)}
@media(prefers-reduced-motion:reduce){.contact-bar{transition:none}}


/* Google reviews section: h-u-n-d */
.reviews-section{max-width:1180px;margin:0 auto 54px;padding:0 22px;color:#263f3e}
.reviews-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,270px);align-items:end;gap:clamp(24px,5vw,62px);margin-bottom:26px}
.reviews-intro .eyebrow{display:block;color:#608b86;text-transform:uppercase;letter-spacing:.17em;font-size:11px;font-weight:700}
.reviews-intro h2{margin:14px 0 12px;font:400 clamp(34px,4.2vw,54px)/1.05 Georgia,serif;letter-spacing:-.04em;color:#263f3e}
.reviews-intro h2 em{font-weight:400;color:#5b8380}
.reviews-intro p{max-width:54ch;margin:0;color:#586b69;line-height:1.7}
.reviews-summary{display:grid;justify-items:start;gap:5px;padding:20px 22px;border:1px solid #d7e1dc;border-radius:20px;background:#fbfaf6;box-shadow:0 8px 24px #263f3e0a}
.reviews-summary-label{font-size:10px;font-weight:700;letter-spacing:.15em;color:#608b86}
.reviews-score{display:flex;align-items:baseline;gap:7px;color:#315f60}
.reviews-score strong{font:400 48px/.98 Georgia,serif;letter-spacing:-.04em}
.reviews-score span{font-size:15px;color:#647674}
.reviews-summary>.reviews-stars{color:#fbbc04;font-family:Arial,Helvetica,sans-serif;font-size:19px;letter-spacing:.06em;line-height:1}
.reviews-summary p{margin:0;color:#586b69;font-size:13px}
.reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.review-card{display:flex;min-width:0;min-height:212px;flex-direction:column;padding:21px;border:1px solid #d7e1dc;border-radius:20px;background:#fbfaf6;box-shadow:0 9px 24px #263f3e0a}
.review-card-meta{display:flex;align-items:center;justify-content:space-between;gap:12px}
.review-source{display:inline-flex;align-items:center;gap:7px;color:#617370;font-size:11px;font-weight:700;letter-spacing:.04em}
.review-source b{display:grid;width:20px;height:20px;place-items:center;border:1px solid #cad9d3;border-radius:50%;color:#315f60;font-size:12px;font-weight:700}
.review-stars{color:#fbbc04;font-family:Arial,Helvetica,sans-serif;font-size:15px;letter-spacing:.04em;line-height:1;white-space:nowrap}
.review-card blockquote{flex:1;margin:21px 0 19px;color:#315f60;font:400 clamp(19px,2vw,24px)/1.3 Georgia,serif;letter-spacing:-.015em}
.review-author{display:flex;align-items:baseline;justify-content:space-between;gap:10px;color:#263f3e;font-size:13px}
.review-author time{color:#71807d;font-size:11px}
.review-link{align-self:flex-start;margin-top:10px;color:#527a77;font-size:12px;font-weight:700;text-decoration:none}
.review-link:hover,.review-link:focus-visible{text-decoration:underline;text-underline-offset:3px}
.reviews-note{max-width:80ch;margin:19px auto 0;text-align:center;color:#687673;font-size:11px;line-height:1.6}
.reviews-cta{display:flex;justify-content:center;margin-top:19px}
.reviews-cta .pill{display:inline-flex;align-items:center;justify-content:center;gap:8px}
@media(max-width:760px){.reviews-section{margin-bottom:44px;padding:0}.reviews-heading{grid-template-columns:1fr;gap:19px;margin-bottom:19px}.reviews-intro h2{font-size:clamp(34px,8.5vw,45px)}.reviews-summary{grid-template-columns:1fr auto;align-items:center;justify-items:start;gap:2px 14px;padding:16px 18px}.reviews-summary-label{grid-column:1/-1}.reviews-score{grid-row:2/4}.reviews-score strong{font-size:42px}.reviews-summary>.reviews-stars{align-self:end;font-size:16px}.reviews-summary p{grid-column:2;align-self:start;font-size:12px}.reviews-grid{grid-template-columns:1fr;gap:11px}.review-card{min-height:0;padding:18px 19px}.review-card blockquote{margin:15px 0;font-size:21px}.reviews-note{margin-top:15px;font-size:10.5px}.reviews-cta{margin-top:16px}.reviews-cta .pill{width:100%;max-width:360px}}
@media(prefers-reduced-motion:reduce){.reviews-section *{scroll-behavior:auto}}

/* Desktop: vertically balance the form against the taller contact details column. */
@media(min-width:761px){body .contact-layout{align-items:stretch}body .contact-layout>.contact-form{align-self:center}}

/* Prevent sideways page panning on narrow touch screens. Clip avoids creating an
   extra horizontal scroll area from decorative offsets and fixed interface rails. */
html,body{max-width:100%;overflow-x:clip!important;overscroll-behavior-x:none}

/* Feiner, versetzter Rahmen passend zum Startbild */
.offer-photo,.subgrid > img,.aboutgrid > img{box-shadow:-10px -10px 0 -1px var(--cream,#f8f5f0),-10px -10px 0 0 #a9beb7!important;border-radius:26px!important}
.offer-photo{overflow:visible!important}
.offer-photo img{border-radius:inherit}
@media(max-width:760px){.offer-photo,.subgrid > img,.aboutgrid > img{box-shadow:-8px -8px 0 -1px var(--cream,#f8f5f0),-8px -8px 0 0 #a9beb7!important}}

/* Haltung & Begleitung: der Marken-Satz bewusst fein und kleingeschrieben. */
.subhero:has(.heading-rose) .eyebrow{text-transform:lowercase!important}
.heading-rose{color:#b98783!important}

/* Feine, zurückhaltende rosa Unterzeilen auf der Startseite. */
.nina-offers .rose-subtitle{font-size:clamp(15px,1.25vw,18px)!important}

/* Zitat-Slogans folgen derselben ruhigen rosa Schrift der Angebotsunterzeilen. */
.nina-offers .offer-quote{color:#b98783!important;font-family:Georgia,serif!important;font-style:normal!important;font-size:clamp(15px,1.25vw,18px)!important;line-height:1.28}

/* Der Markenbereich bleibt auf jeder Seite identisch zur Startseite. */
.brand-lockup .brand-slogan{display:grid!important;color:#a67c70!important}
.brand-lockup .brand-slogan span:last-child{color:#a67c70!important}

