/* FoxCare V25 – responsive Ergänzungen ohne Änderung des Desktop-Designs */
.site-page .comparison-mobile{display:none}
.site-page .offer-items-toggle{display:none}
.site-page :where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #72b2ff;outline-offset:3px}
.site-page .booking-field-error{display:block;margin-top:6px;color:#a12626;font-size:.75rem;font-weight:700;line-height:1.45}
.site-page [aria-invalid="true"]{border-color:#c83d3d!important;box-shadow:0 0 0 3px rgba(200,61,61,.1)!important}
.site-page .booking-options label:has(input:focus-visible)>span,.site-page .booking-addon-options label:has(input:focus-visible)>span{outline:3px solid #72b2ff;outline-offset:3px}

@media(max-width:1279px){
  .site-page .section-dark,.site-page .section-light{padding-block:clamp(78px,8vw,100px)}
  .site-page .site-footer .footer-grid{grid-template-columns:1.25fr 1fr 1fr;gap:40px 32px}
  .site-page .site-footer .footer-grid>div:first-child{grid-row:span 2}
}

@media(min-width:1024px) and (max-width:1279px){
  .site-page .offer-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .site-page .protection-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .site-page .service-world-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:1160px){
  .site-page.nav-open{overflow:hidden}
  .site-page .menu-button{width:44px;height:44px;padding:0;display:grid;place-items:center;border-radius:2px;position:relative;z-index:3}
  .site-page .menu-button svg{width:25px;height:25px}
  .site-page .mobile-nav{position:fixed;z-index:2;inset:78px 0 0 auto;width:min(430px,100%);height:calc(100dvh - 78px);padding:clamp(22px,5vw,42px);overflow-y:auto;overscroll-behavior:contain;background:rgba(4,13,25,.985);border-left:1px solid var(--line);border-bottom:0;box-shadow:-24px 0 70px rgba(0,0,0,.34);display:flex;flex-direction:column;gap:0;transform:none;clip-path:inset(0 0 0 100%);opacity:0;visibility:hidden;pointer-events:none;transition:clip-path .28s ease,opacity .2s ease,visibility .28s}
  .site-page .mobile-nav.is-open{clip-path:inset(0);opacity:1;visibility:visible;pointer-events:auto}
  .site-page .mobile-nav>a:not(.btn){min-height:48px;padding:0 4px;display:flex;align-items:center;border-bottom:1px solid var(--line);font-size:.875rem;line-height:1.3;color:#d6e0ec}
  .site-page .mobile-nav .btn{width:100%;min-height:50px;margin-top:22px;font-size:.8125rem}
}

@media(max-width:1023px){
  .site-page .container{width:min(100% - 64px,1180px)}
  .site-page .section-head h2,.site-page .section-copy h2,.site-page .contact-intro h2{font-size:clamp(2.5rem,7vw,3.75rem)}
  .site-page .about-grid,.site-page .proof-grid,.site-page .contact-single{grid-template-columns:1fr;gap:48px}
  .site-page .about-mark{min-height:340px}
  .site-page .process-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 24px}
  .site-page .process-grid:before{display:none}
  .site-page .service-world-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .site-page .service-world-card{min-height:390px}
  .site-page .offer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .site-page .compact-offer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .site-page .offer-description,.site-page .offer-card.compact .offer-description{min-height:0}
  .site-page .protection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .site-page .addon-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .site-page .category-options,.site-page .subservice-options,.site-page .booking-addon-options{grid-template-columns:repeat(2,minmax(0,1fr))}
  .site-page .booking-options label>span{min-width:0}
  .site-page .instagram-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}

@media(max-width:767px){
  .site-page .container{width:min(100% - 32px,1180px)}
  .site-page .section-dark,.site-page .section-light,.site-page .social-proof{padding-block:clamp(56px,15vw,72px)}
  .site-page .section-head,.site-page .section-head.centered{margin-bottom:36px}
  .site-page .section-head h2,.site-page .section-copy h2,.site-page .contact-intro h2{font-size:clamp(2rem,9.5vw,2.75rem);line-height:.98;overflow-wrap:break-word;hyphens:auto}
  .site-page .section-head>p:last-child,.site-page .section-copy>p:not(.kicker),.site-page .contact-intro>p:not(.kicker){font-size:1rem;line-height:1.72}
  .site-page .kicker{font-size:.75rem}
  .site-page .header-inner{width:calc(100% - 28px);height:68px;gap:12px}
  .site-page .mobile-nav{top:68px;height:calc(100dvh - 68px);width:100%;border-left:0}
  .site-page .header-button{display:none}
  .site-page .hero{height:auto;min-height:0;max-height:none;padding:0;display:flex;flex-direction:column;align-items:stretch;background:#050e1b}
  .site-page .hero-content{order:1;width:min(100% - 32px,1180px);padding:58px 0 40px}
  .site-page .hero-overlay{display:none}
  .site-page .hero-media{order:2;position:relative;inset:auto;width:100%;aspect-ratio:16/10;min-height:250px;transform:none;background-size:contain;background-repeat:no-repeat;background-position:center;background-color:#050e1b}
  .site-page .hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#050e1b 0,transparent 22%,transparent 76%,rgba(5,14,27,.7) 100%);pointer-events:none}
  .site-page .hero h1{max-width:100%;font-size:clamp(1.85rem,9.2vw,3rem);line-height:.96;letter-spacing:-.045em;overflow-wrap:normal;word-break:normal;hyphens:none}
  .site-page .hero-text{max-width:36rem;font-size:1rem;line-height:1.7}
  .site-page .hero-brandline{font-size:.75rem;line-height:1.6}
  .site-page .button-row{display:grid;grid-template-columns:1fr;gap:10px}
  .site-page .button-row .btn,.site-page .cta-inner .btn,.site-page .contact-booking-card .btn{width:100%;min-height:50px;font-size:.75rem}
  .site-page .benefit-grid{grid-template-columns:1fr 1fr}
  .site-page .benefit-grid article{min-height:112px;padding:22px 18px}
  .site-page .about-grid{gap:38px}
  .site-page .about-mark{min-height:280px}
  .site-page .service-world-grid,.site-page .offer-grid,.site-page .compact-offer-grid{grid-template-columns:1fr}
  .site-page .service-world-card{min-height:clamp(330px,88vw,400px);background-position:center}
  .site-page .service-world-content{padding:24px}
  .site-page .service-world-content h3{font-size:1.45rem;overflow-wrap:break-word;hyphens:auto}
  .site-page .service-world-content>span{font-size:1rem}
  .site-page .service-world-content>a{min-height:44px;margin-top:14px;font-size:.8125rem}
  .site-page .package-family+.package-family{margin-top:44px;padding-top:42px}
  .site-page .package-family-head{align-items:flex-start}
  .site-page .package-family-head>span{display:none}
  .site-page .offer-card,.site-page .offer-card.compact{padding:22px 18px;background:linear-gradient(145deg,rgba(10,29,50,.98),rgba(6,20,36,.98));border-color:rgba(121,157,201,.22)}
  .site-page .offer-card.featured{border-color:var(--blue);background:linear-gradient(155deg,rgba(6,103,255,.2),rgba(6,20,36,.98) 44%)}
  .site-page .offer-card h3,.site-page .offer-card.compact h3{font-size:1.35rem;line-height:1.08}
  .site-page .offer-card .offer-category,.site-page .offer-card.compact .offer-category{font-size:.75rem;letter-spacing:.1em}
  .site-page .offer-description,.site-page .offer-card.compact .offer-description{margin-top:10px;font-size:.9375rem;line-height:1.55}
  .site-page .offer-price,.site-page .offer-card.compact .offer-price{min-height:0;margin:18px 0 12px}
  .site-page .offer-price strong,.site-page .offer-card.compact .offer-price strong{font-size:1.9rem}
  .site-page .offer-price small{font-size:.8125rem;padding-bottom:4px}
  .site-page .offer-card .offer-items,.site-page .offer-card.compact .offer-items{margin-bottom:8px;flex:0 0 auto}
  .site-page .offer-card:not(.items-open) .offer-items li:nth-child(n+4){display:none}
  .site-page .offer-card li,.site-page .offer-card.compact li{font-size:.9375rem;padding-block:9px;line-height:1.45}
  .site-page .offer-card li svg{width:17px;height:17px;margin-top:1px}
  .site-page .offer-items-toggle{width:100%;min-height:44px;margin:0 0 14px;padding:0;display:flex;align-items:center;justify-content:space-between;gap:12px;border:0;border-bottom:1px solid rgba(255,255,255,.1);background:transparent;color:#91bfff;font:700 .75rem 'Geist Mono',monospace;letter-spacing:.04em;text-align:left;cursor:pointer}
  .site-page .offer-items-toggle svg{width:18px;height:18px;transition:transform .2s ease}
  .site-page .offer-card.items-open .offer-items-toggle svg{transform:rotate(180deg)}
  .site-page .offer-card .btn,.site-page .offer-card.compact .btn{min-height:50px;font-size:.75rem}
  .site-page .protection-grid,.site-page .addon-grid{grid-template-columns:minmax(0,1fr)}
  .site-page .protection-grid article{min-width:0;min-height:0;padding:24px 20px}
  .site-page .protection-grid p,.site-page .protection-grid h3{max-width:100%;min-width:0;overflow-wrap:anywhere;hyphens:auto}
  .site-page .protection-grid p{font-size:.9375rem}
  .site-page .addon-grid a{min-height:58px;font-size:.9375rem}
  .site-page .addon-grid a>svg:first-child{width:20px;height:20px}
  .site-page .compare-tabs{justify-content:flex-start;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:4px}
  .site-page .compare-tabs button{min-height:44px;flex:0 0 auto;scroll-snap-align:start;font-size:.75rem}
  .site-page .compare-stage{aspect-ratio:4/3}
  .site-page .compare-stage .compare-layer{background-size:contain!important;background-position:center!important;background-repeat:no-repeat}
  .site-page .compare-divider b{width:52px;height:52px}
  .site-page .package-comparison summary{min-height:56px;justify-content:space-between;padding-inline:16px;font-size:.75rem}
  .site-page .package-comparison .comparison-scroll{display:none}
  .site-page .comparison-mobile{display:grid;gap:10px;padding:12px}
  .site-page .comparison-mobile article{border:1px solid var(--line);background:#08182a;padding:18px 16px}
  .site-page .comparison-mobile h3{margin:0 0 12px;text-transform:uppercase;font-size:1rem}
  .site-page .comparison-mobile dl{margin:0}
  .site-page .comparison-mobile dl>div{min-height:38px;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.06);display:flex;align-items:center;justify-content:space-between;gap:14px}
  .site-page .comparison-mobile dl>div:last-child{border-bottom:0}
  .site-page .comparison-mobile dt{color:#c1cedd;font-size:.8125rem}
  .site-page .comparison-mobile dd{margin:0;color:#70adff;font-weight:800}
  .site-page .category-options,.site-page .subservice-options,.site-page .booking-addon-options{grid-template-columns:1fr}
  .site-page .booking-shell{width:100%;overflow:hidden}
  .site-page .booking-progress{height:66px;padding-inline:8px}
  .site-page .booking-progress:before{top:29px;left:10%;right:10%}
  .site-page .booking-progress li{font-size:.6875rem}
  .site-page .booking-progress b{width:28px;height:28px}
  .site-page .booking-progress li span{display:none}
  .site-page .booking-form{padding:24px 16px}
  .site-page .booking-step-head h3{font-size:1.4rem;line-height:1.15}
  .site-page .booking-step-head p{font-size:1rem}
  .site-page .booking-options label>span,.site-page .category-options label>span,.site-page .subservice-options label>span{min-height:88px;padding:16px}
  .site-page .booking-options label>span>b{font-size:1rem}
  .site-page .booking-options label>span>small{font-size:.8125rem}
  .site-page .booking-date-grid,.site-page .booking-contact-grid{grid-template-columns:1fr;gap:16px}
  .site-page .booking-full{grid-column:auto}
  .site-page .booking-date-grid input,.site-page .booking-date-grid select,.site-page .booking-contact-grid input,.site-page .booking-contact-grid select,.site-page .booking-contact-grid textarea{min-height:52px;font-size:1rem}
  .site-page .booking-actions{display:grid;grid-template-columns:1fr;gap:10px}
  .site-page .booking-actions .btn,.site-page .booking-back{width:100%;min-height:50px;justify-content:center;font-size:.875rem}
  .site-page .booking-result{align-items:flex-start}
  .site-page .cta-band{padding-block:42px}
  .site-page .cta-inner{align-items:stretch;flex-direction:column}
  .site-page .proof-grid{gap:50px}
  .site-page .instagram-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .site-page .contact-single{gap:36px}
  .site-page .contact-details>a,.site-page .contact-details>div{min-height:44px;font-size:.9375rem}
  .site-page .contact-booking-card{padding:28px 22px}
  .site-page .site-footer{padding-top:58px}
  .site-page .site-footer .footer-grid{grid-template-columns:1fr;gap:34px}
  .site-page .site-footer .footer-grid>div:first-child{grid-column:auto;grid-row:auto}
  .site-page .site-footer .footer-grid h3{font-size:.75rem}
  .site-page .site-footer .footer-grid a,.site-page .site-footer .footer-grid span{min-height:44px;font-size:.875rem}
  .site-page .site-footer .footer-grid>div:first-child p{font-size:.875rem}
  .site-page .site-footer .footer-bottom{gap:16px;flex-direction:column;font-size:.75rem}
  .site-page .site-footer .footer-bottom a{min-height:44px;display:inline-flex;align-items:center}
}

@media(max-width:479px){
  .site-page .header-inner{height:66px}
  .site-page .mobile-nav{top:66px;height:calc(100dvh - 66px);padding:22px 18px}
  .site-page .logo{min-width:0;gap:7px}
  .site-page .logo-name{font-size:1.0625rem}
  .site-page .logo-sub{font-size:.4375rem}
  .site-page .logo-by{font-size:.5rem}
  .site-page .fox-mark{width:38px;transform:scale(.92)}
  .site-page .hero-content{padding-top:48px}
  .site-page .hero h1{font-size:clamp(1.85rem,9.2vw,2.75rem)}
  .site-page .hero-media{aspect-ratio:4/3;min-height:230px}
  .site-page .benefit-grid,.site-page .process-grid,.site-page .site-footer .footer-grid{grid-template-columns:1fr}
  .site-page .benefit-grid article{min-height:0;border-right:0!important;border-bottom:1px solid var(--line)}
  .site-page .process-grid{gap:36px}
  .site-page .instagram-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .site-page .testimonial-list strong{align-items:flex-start;flex-direction:column;gap:4px}
  .site-page .site-footer .footer-grid>div:first-child{grid-column:auto}
  .site-page .site-footer .footer-bottom div{flex-wrap:wrap;gap:8px 20px}
}

@media(max-width:374px){
  .site-page .container,.site-page .hero-content{width:calc(100% - 28px)}
  .site-page .section-head h2,.site-page .section-copy h2,.site-page .contact-intro h2{font-size:1.95rem}
  .site-page .hero h1{font-size:1.85rem;letter-spacing:-.035em}
  .site-page .booking-form{padding-inline:13px}
  .site-page .booking-progress{padding-inline:4px}
  .site-page .booking-progress b{width:26px;height:26px}
  .site-page .offer-card,.site-page .offer-card.compact,.site-page .protection-grid article{padding-inline:17px}
}

@media(max-width:900px) and (orientation:landscape) and (max-height:550px){
  .site-page .hero{min-height:560px;height:auto;padding-block:76px 48px}
  .site-page .hero-content{padding-block:0}
  .site-page .hero h1{font-size:clamp(2.5rem,7vw,3.6rem)}
}

@media(hover:none){
  .site-page :where(.btn,.service-world-card,.offer-card,.insta,.addon-grid a):hover{transform:none}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .site-page *,.site-page *:before,.site-page *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
