/* Figma 44:830 — menu-specific prices and original exported artwork. */
/* MV pests: staggered dashes, brief pauses, and quick turns. */
.hero-pests img{--escape-left:-38px;--escape-right:38px;animation:pest-escape 5.4s infinite;transform-origin:50% 85%}
.hero-pests img:last-child{--escape-left:-22px;--escape-right:58px;animation-duration:6.3s;animation-delay:-2.4s}
@keyframes pest-escape{
  0%,8%{transform:translate(var(--escape-right),0) scaleX(-1) rotate(-3deg)}
  16%{transform:translate(8px,-4px) scaleX(-1) rotate(3deg)}
  24%{transform:translate(var(--escape-left),0) scaleX(-1) rotate(-3deg)}
  30%{transform:translate(var(--escape-left),0) scaleX(-1) rotate(0)}
  31%,38%{transform:translate(var(--escape-left),0) scaleX(1) rotate(2deg)}
  47%{transform:translate(0,-4px) scaleX(1) rotate(-3deg)}
  57%{transform:translate(var(--escape-right),0) scaleX(1) rotate(3deg)}
  66%{transform:translate(var(--escape-right),0) scaleX(1) rotate(0)}
  67%,100%{transform:translate(var(--escape-right),0) scaleX(-1) rotate(-3deg)}
}
@media(max-width:760px){.hero-pests img{--escape-left:-10px;--escape-right:18px}.hero-pests img:last-child{--escape-left:-18px;--escape-right:22px}}
@media(prefers-reduced-motion:reduce){.hero-pests img{animation:none;transform:scaleX(-1)}}
.bot-field{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important}
.hero-area{position:absolute;top:0;left:50%;transform:translateX(-50%);width:255px;height:74px}
@media(max-width:760px){.hero-area{position:static;transform:none;width:220px;height:auto;margin:0 auto 12px}}
.pricing{background:#fffaea;padding:34px 0 62px}
.pricing .section-title{margin-bottom:29px}
.price-panel{border-radius:30px}
.price-panel>h3{height:55px;padding:0;display:flex;align-items:center;justify-content:center;font-size:30px}
.price-row{grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);gap:25px;padding:12px 32px 20px;min-height:258px}
.price-heading{display:flex;align-items:center;position:relative;gap:12px;min-height:64px;margin-bottom:12px}
.price-heading .pest-symbol{width:60px;height:60px;flex-shrink:0}
.price-description .price-heading h4{font-size:28px;line-height:1.3;color:#6b4a19;margin:0;letter-spacing:-1px;white-space:nowrap}
.price-row.german h4{color:#b8791a;font-size:27px}
.price-row.black h4{color:#493210}
.price-row.mouse h4{color:#8a8989}
.work-icons{gap:0;justify-content:space-between;margin-bottom:9px;max-width:100%}
.work-icons>div{gap:5px;min-width:0}
.work-icons img{width:48px;height:48px;background:none;border-radius:0;padding:0}
.work-icons small{font-size:11px;font-weight:800;line-height:1.35;letter-spacing:-.6px}
.home-work{position:relative;padding-right:115px}
.home-work .work-icons{gap:22px;justify-content:flex-start}
.home-work .price-mascot{position:absolute;width:109px;height:108px;object-fit:cover;right:-2px;top:-22px}
.price-heading>.price-mascot{position:absolute;width:110px;height:85px;object-fit:cover;right:-3px;bottom:0}
.mouse .price-heading{padding-right:90px}
.mouse .price-heading h4{font-size:26px}
.price-row .fine{font-size:11px;line-height:1.5;font-weight:500}
.home-price .fine{font-size:11px}
.price-row table{font-size:20px;line-height:1.4}
.price-row th{font-size:14px;padding:7px 0 12px;color:#052b6a}
.home-price th{color:#a7c622;font-size:14px}
.price-row td{border-bottom:2px solid #ddd;padding:6px 1px;font-weight:800}
.price-row tr:last-child td{border:0}
.guarantee{display:flex;justify-content:space-between;align-items:center;background:#f0f0f0;font-size:19px;line-height:1.5;padding:2px 8px;margin-top:10px;white-space:nowrap}
.guarantee small{font-size:13px}
.store-price{margin-top:42px}
.store-price>h3{height:64px}
.store-price .price-row{margin-inline:32px;padding:20px 0 23px;min-height:255px;border-bottom:2px dotted #052b6a}
.store-price .price-row:last-of-type{border:0}
.store-price .work-icons img{width:51px;height:51px}
.german .work-icons{width:224px}
.maintenance{display:block;margin:0 32px 36px;font-size:18px;text-align:center;white-space:normal;padding:9px}
.review-prev,.review-next{padding:0;background:transparent;width:43px;height:43px;font-size:0;line-height:1;border-radius:50%}
.review-prev img,.review-next img{width:43px;height:43px}
.review-prev img{transform:scaleX(-1)}
.review-track{overscroll-behavior-x:contain;touch-action:pan-x pan-y;overflow-anchor:none}
.review>img{width:95px}
.review>img[src$="f6185.svg"]{width:64px}
.review>img[src$="8073b.svg"]{width:74px}
.review>img[src$="4a803.svg"]{width:95px}
footer{min-height:244px;padding:58px 20px 34px}
.social-links{display:flex;justify-content:center;align-items:center;gap:48px;margin-bottom:34px}
.social-links a,.social-links img{display:block;width:47px;height:47px}
.social-links a[href]{transition:transform .2s}
.social-links a[href]:hover{transform:translateY(-3px)}
.back-top{position:fixed;top:auto;bottom:24px;right:24px;z-index:55;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:6px;background:#a7c622;padding:16px 0 0;line-height:1}
.back-top>img{width:25px;height:12px}
.back-top small{font-size:14px;line-height:20px;font-weight:500}
@media(max-width:760px){.back-top{right:14px;bottom:calc(90px + env(safe-area-inset-bottom))}}
@media(min-width:761px) and (max-width:900px){.price-row{gap:15px;padding-inline:24px}.store-price .price-row{margin-inline:24px}.price-description .price-heading h4{font-size:24px}.price-row.german h4{font-size:23px}.price-heading{gap:8px}.price-heading .pest-symbol{width:52px;height:52px}.price-row table{font-size:17px}.price-row th{font-size:12px}.work-icons small{font-size:10px}.home-work{padding-right:85px}.home-work .work-icons{gap:16px}.home-work .price-mascot{width:88px;height:90px}.work-icons img,.store-price .work-icons img{width:43px;height:43px}.mouse .price-heading h4{font-size:23px}.price-heading>.price-mascot{width:85px;height:70px}}
@media(max-width:760px){.pricing{padding:38px 0 44px}.price-panel{border-radius:20px}.price-panel>h3{font-size:25px;height:54px}.price-row{grid-template-columns:1fr;padding:20px 16px;gap:22px;min-height:0}.price-heading{gap:10px;margin-bottom:14px}.price-heading .pest-symbol{width:49px;height:49px}.price-description .price-heading h4{font-size:24px;white-space:normal;letter-spacing:-.5px}.price-row.german h4{font-size:22px}.price-heading>.price-mascot{width:85px;height:65px;right:0}.mouse .price-heading h4{font-size:23px}.home-work{padding-right:90px}.home-work .work-icons{gap:14px}.work-icons img,.store-price .work-icons img{width:40px;height:40px}.work-icons small{font-size:10px;letter-spacing:-.6px}.home-work .price-mascot{width:90px;height:90px;top:-15px}.price-row .fine{font-size:10px}.guarantee{font-size:16px}.guarantee small{font-size:11px}.price-row table{font-size:16px}.price-row th,.home-price th{font-size:12px}.price-row td{padding:9px 1px}.store-price{margin-top:28px}.store-price>h3{height:58px}.store-price .price-row{margin-inline:16px;padding:24px 0;min-height:0}.maintenance{margin:0 16px 22px;font-size:14px;line-height:1.7}.german .work-icons{width:210px}.review-prev,.review-next,.review-prev img,.review-next img{width:36px;height:36px}.social-links{gap:40px;margin-bottom:30px}.social-links a,.social-links img{width:40px;height:40px}footer{padding:58px 20px 30px}}
@media(max-width:360px){.price-description .price-heading h4{font-size:21px}.price-row.german h4{font-size:19px}.mouse .price-heading h4{font-size:20px}.price-heading .pest-symbol{width:42px;height:42px}.home-work{padding-right:72px}.home-work .work-icons{gap:9px}.home-work .price-mascot{width:72px;height:80px}.work-icons img,.store-price .work-icons img{width:35px;height:35px}.work-icons small{font-size:9px}.price-heading>.price-mascot{width:70px}.mouse .price-heading{padding-right:70px}.price-row th{font-size:11px}}
/* Contact confirmation dialog */
body.confirmation-open{overflow:hidden}
.form-confirmation{width:min(640px,calc(100% - 32px));max-height:85vh;max-height:85dvh;margin:auto;padding:28px;border:0;border-radius:20px;color:var(--ink);background:#fff;box-shadow:0 20px 70px #052b6a40;overflow-y:auto;overscroll-behavior:contain}
.form-confirmation::backdrop{background:rgb(5 43 106 / 60%)}
.form-confirmation h2{margin:0 0 8px;color:var(--navy);font-size:24px}
.form-confirmation p{margin:0 0 20px}
.confirmation-details{margin:0}
.confirmation-details dt{padding-top:14px;color:var(--navy);font-weight:700;border-top:1px solid #dce3eb}
.confirmation-details dd{margin:5px 0 14px;white-space:pre-wrap;overflow-wrap:anywhere;font-weight:400}
.confirmation-actions{display:flex;gap:12px;margin-top:24px}
.confirmation-actions button{flex:1;min-width:0;min-height:56px;padding:12px;border-radius:10px;font-size:16px;cursor:pointer}
.confirmation-edit{border:1px solid var(--navy);background:white;color:var(--navy)}
.confirmation-actions button:focus-visible{outline:3px solid var(--navy);outline-offset:3px}
@media(max-width:480px){.form-confirmation{padding:22px 18px}.form-confirmation h2{font-size:21px}.confirmation-actions{flex-direction:column-reverse}}
.form-completion{text-align:center;padding:40px 28px}
.completion-check{display:grid;place-items:center;width:76px;height:76px;margin:0 auto 20px;border-radius:50%;background:#e9f4df;color:#357326;font-size:46px;font-weight:700;line-height:1}
.form-completion h2{font-size:clamp(22px,5vw,30px);margin-bottom:18px}
.form-completion p{font-size:16px;line-height:1.9}
.form-completion .completion-receipt{color:var(--navy);font-weight:700}
.completion-receipt:empty{display:none}
.form-completion .button{width:min(100%,280px);min-height:56px;margin:8px auto 0;cursor:pointer}
#form-status.form-success{padding:20px;margin-top:24px;border:2px solid #70a452;border-radius:12px;background:#f1f8e9;color:#24521d;font-size:16px;line-height:1.9;text-align:center}
#form-status.form-error{padding:16px;border:1px solid #b73535;border-radius:10px;background:#fff1f1;color:#8b2020;font-size:15px}
.top-socials{display:flex;align-items:center;justify-content:center;gap:20px;padding:10px 16px;background:var(--navy);color:white}
.top-socials a{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:700}
.top-socials img{width:32px;height:32px}.top-socials a:hover{text-decoration:underline}
.line-consult{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:12px 36px;border-radius:10px;background:#06c755;color:#fff;font-size:18px;font-weight:700}
.line-consult:hover{background:#059d43}.flow-line,.contact-line{text-align:center;margin:28px auto}.contact-line{margin-bottom:36px}.contact-line p{margin-bottom:12px}
.area-extra{text-align:center;color:var(--navy);font-size:20px;margin:-12px 0 35px}.service-extra{color:var(--navy);margin-top:16px!important;font-weight:700}.store-scope{text-align:center;padding:14px 20px;margin:0;background:#eef7fc;color:var(--navy)}
.payment-section{text-align:center;padding-top:45px;padding-bottom:55px}.payment-section h2{color:var(--navy);font-size:28px;margin:0 0 16px}.payment-list{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;list-style:none;padding:0;margin:25px 0}.payment-list li{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:20px 8px;border:1px solid #d7e2ee;border-radius:12px;background:#fff;color:var(--navy)}.payment-list span{font-size:16px}.payment-note{font-size:13px}
@media(max-width:760px){.top-socials{gap:16px;flex-wrap:wrap}.top-socials>span{font-size:12px}.top-socials a{font-size:14px}.top-socials img{width:28px;height:28px}.payment-list{grid-template-columns:repeat(2,1fr);gap:10px}.payment-list span{font-size:14px}.payment-section h2{font-size:24px}.area-extra{font-size:17px}.store-scope{font-size:13px}}
.contact-phone{text-align:center;margin:28px auto 20px;padding:24px 16px;border:2px solid var(--navy);border-radius:14px;background:white;max-width:640px}.contact-phone p{margin:0 0 8px;font-size:18px;color:var(--navy)}.contact-phone>strong{display:block;color:var(--navy);margin-bottom:8px}.contact-phone .phone{justify-content:center;font-size:clamp(25px,6vw,36px)}
.payment-brands{grid-template-columns:repeat(4,minmax(0,1fr))}.payment-brands li{gap:10px;padding:16px 8px}.payment-logo-box{height:100px;width:100%;display:flex;align-items:center;justify-content:center}.payment-logo-box>img{width:150px;max-width:100%;height:90px;object-fit:contain}.payment-logo-box .transit-logo{display:block;width:90px;height:65px;background-image:url('assets/payments/transit.webp');background-repeat:no-repeat;background-size:1000px 300px}.suica-logo{background-position:-452px -60px}.pasmo-logo{background-position:-550px -60px}.payment-logo-box .id-logo{display:block;width:174px;height:120px;background:url('assets/payments/id.webp') no-repeat -413px -90px/1000px 300px;transform:scale(.8)}.payment-brands li>span{font-size:14px}
@media(max-width:760px){.payment-brands{grid-template-columns:repeat(2,minmax(0,1fr))}.payment-logo-box>img{max-width:130px}.payment-brands li>span{font-size:13px}}
.payment-brands .payment-cards{grid-column:span 3}.payment-cards .payment-logo-box{gap:16px;flex-wrap:wrap;height:auto;min-height:100px}.payment-cards .payment-logo-box>img{width:100px;height:72px;max-width:100%;flex-shrink:0}.payment-transit .payment-logo-box{gap:4px}.payment-transit .transit-logo{flex-shrink:0}
@media(max-width:760px){.payment-brands .payment-cards{grid-column:1 / -1}.payment-cards .payment-logo-box{gap:12px;min-height:0}.payment-cards .payment-logo-box>img{width:76px;height:60px}.payment-brands .payment-transit{grid-column:span 2}.payment-transit .payment-logo-box{gap:24px}}
.banner-actions .line-consult{width:100%;min-height:54px;margin-top:10px;padding:10px 16px;box-sizing:border-box}
@media(max-width:760px){.mobile-cta{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding-inline:8px}.mobile-cta .mobile-line{background:#06c755;color:white}.mobile-cta strong{font-size:clamp(12px,3.4vw,16px)}.mobile-cta small{font-size:9px}.banner-actions .line-consult{font-size:16px;min-height:50px}}
.line-consult{gap:10px}.line-button-icon{display:block;flex:0 0 32px;width:32px;height:32px;border-radius:50%;background:url('assets/e0d50.webp') no-repeat -11px -6px/150px 48px}
@media(max-width:760px){.payment-brands>li{order:4}.payment-brands .payment-cash{order:1;grid-column:1 / -1;flex-direction:row;gap:20px;padding:18px}.payment-cash .payment-logo-box{width:auto;height:auto}.payment-brands .payment-cards{order:2}.payment-brands .payment-transit{order:3}}
.video-section{padding-top:40px}.video-intro{text-align:center;margin:16px 0 28px}.video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}.video-post{min-width:0;padding:14px;background:#f7f9fc;border:1px solid #dce3eb;border-radius:14px;overflow:hidden}.video-post blockquote{margin:0;padding:24px 12px;line-height:1.8}.video-post .twitter-tweet{margin:0 auto!important;max-width:100%!important}.video-original{display:block;text-align:center;color:var(--navy);text-decoration:underline;padding:14px 4px 4px;font-size:13px}
@media(max-width:760px){.video-grid{grid-template-columns:minmax(0,1fr);gap:20px}.video-section .section-title{font-size:23px;gap:12px}.video-post{padding:8px}.video-intro{font-size:13px}}
.header-phone{display:flex;flex-direction:column;align-items:center;gap:3px}.header-phone>small{font-size:12px;font-weight:600;line-height:1.4}.header-socials{display:flex;align-items:center;justify-content:center;gap:10px}.header-socials a{display:block;background:var(--navy);border-radius:50%;padding:2px}.header-socials img{width:36px;height:36px}.menu-contact{display:none}
@media(min-width:761px) and (max-width:1000px){.header-contact{gap:8px}.header-contact .phone{font-size:24px}.header-socials{gap:6px}.header-socials img{width:30px;height:30px}.header-contact .line-link{max-width:130px}}
@media(max-width:760px){#navigation{max-height:calc(100dvh - 72px);overflow-y:auto;overscroll-behavior:contain;padding-bottom:calc(94px + env(safe-area-inset-bottom))}.menu-contact{display:block;margin:4px 16px 16px;padding:20px 14px;background:#fff;border-radius:12px;color:var(--navy);text-align:center}.menu-contact>p{font-size:16px;font-weight:700}.menu-phone{margin:12px 0}.menu-phone .phone{font-size:28px;padding:0;border:0;color:var(--navy)}.menu-phone small{font-size:11px}.menu-contact-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px}.menu-contact-buttons>a{padding:10px 6px;min-width:0;min-height:54px;border:0;font-size:14px}.menu-contact-buttons .line-consult{gap:5px}.menu-contact-buttons .line-button-icon{flex-basis:32px}.menu-contact .header-socials{margin-top:20px}.menu-contact .header-socials a{padding:2px;border:0}.menu-contact .header-socials img{width:36px;height:36px}}
@media(max-width:760px){.menu-contact-buttons{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:8px}.menu-contact-buttons>a{width:100%;max-width:100%;height:56px;min-height:56px;margin:0;padding:8px 4px;border-radius:10px;white-space:nowrap;font-size:13px;line-height:1.4}.menu-contact-buttons>.button{background:var(--navy);color:#fff}.menu-contact-buttons>.line-consult{background:#06c755;color:#fff;gap:4px}.menu-contact-buttons .line-button-icon{width:24px;height:24px;flex:0 0 24px;background-position:-8.25px -4.5px;background-size:112.5px 36px}.menu-contact-buttons>a:hover{transform:none}.menu-contact .menu-phone .phone{font-size:clamp(23px,7vw,28px);gap:8px}}
@media(min-width:761px){.step:not(:last-child)::after{content:'';display:block;position:absolute;top:36px;right:-33px;width:46px;height:24px;z-index:3;background:url('assets/flow-arrow.svg') center/contain no-repeat;pointer-events:none}}
