/* Accessible warm palette; all template overrides are kept here. */
:root {
    --pets-rust: #ba3c24;
    --pets-teal: #08778b;
    --pets-ink: #29251f;
}
body { font-weight: 400; }
html { scroll-padding-top: 105px; }
.banner-sec, .navbar-top-default,
.header-appear .navbar-top-default, .side-menu,
.serial-box, .go-top, .go-top::before {
    background-color: var(--pets-rust);
}
.header-appear .navbar-top-default { background: var(--pets-rust); }
.main-title.style-two h2, .portfolio-heading, .pricing-heading, .contact-heading {
    color: var(--pets-rust);
}
.main-title.style-two p { color: #343434; opacity: 1; }
.banner-heading, .banner-text { margin-left: 0; }
/* Keep the photo in normal flow: long Hungarian headings cannot collide
   with the following section when viewport or font metrics change. */
.banner-sec { padding: 155px 0 0; background: linear-gradient(var(--pets-rust) 0 78%, #fff 78%); }
.banner-text { padding-bottom: 0; margin-bottom: 48px; line-height: 1.6; }
.banner-img { position: relative; }
.banner-img img { transform: none; margin: 0; display: block; border-radius: 8px; }
.about-sec { padding-top: 110px; }
.main-title.style-two > div { flex: 1 1 0; min-width: 0; }
.main-title.style-two h2 { font-size: clamp(30px, 3.2vw, 44px); line-height: 1.25; }
.main-title.style-two p { line-height: 1.8; }
.about-box { border: 1px solid #eee5df; box-shadow: 0 8px 24px rgb(67 44 32 / 5%); }
.box-1:hover { background-color: var(--pets-teal); }
.box-2:hover { background-color: #855713; }
.box-3:hover { background-color: #b62943; }
.box-4:hover { background-color: var(--pets-rust); }
.bg-counter .box { background-color: var(--pets-teal); }
.bg-counter .serial-box, .bg-counter .box {
    width: min(100%, 300px); height: auto; padding: 32px 20px;
    margin: 0 auto; transform: none;
}
.bg-counter .count { display: block; font-size: 72px; line-height: 1.1; font-weight: 400; }
.bg-counter p { font-size: 19px; font-weight: 400; line-height: 1.5; }
.Pricing-sec .pricing-cards .pricing-box {
    height: 100%; border-radius: 8px; overflow: hidden;
    border: 1px solid #eee5df; box-shadow: 0 10px 30px rgb(67 44 32 / 9%);
}
.Pricing-sec .pricing-cards .pricing-box .pricing-header-overlay { background-color: var(--pets-rust); }
.Pricing-sec .pricing-cards .pricing-box .pricing-detail-overlay { background-color: var(--pets-teal); }
.Pricing-sec .pricing-cards .pricing-box .pricing-box-header .pricing-price {
    color: var(--pets-rust); font-size: clamp(25px, 2.25vw, 34px); white-space: nowrap;
}
.Pricing-sec .pricing-cards .pricing-box .pricing-box-detail ul li { color: #505050; font-weight: 400; }
.Pricing-sec .pricing-cards .pricing-card:hover .pricing-box .pricing-box-detail ul li,
.Pricing-sec .pricing-cards .pricing-card.active .pricing-box .pricing-box-detail ul li { color: #fff; }
/* Amber remains bright; dark ink gives readable quotations and names. */
#reviews .testimonial-heading, #reviews .testimonial-des,
#reviews .testimonial-box .text, #reviews .testimonial-box .user-name,
#reviews .testimonial-box .icon-holder i { color: var(--pets-ink); }
#reviews .testimonial-des, #reviews .testimonial-box .text,
#reviews .testimonial-box .user-name { font-weight: 400; }
.footer-style-1 .company-about, .footer-style-1 .company-about a { color: #595959; }
.footer-social li a:hover, .social-icon:hover { background-color: var(--pets-rust) !important; }
.btn.btn-black:hover { background: var(--pets-rust) !important; border-color: var(--pets-rust); }
.header-appear .navbar-top-default .white-btn:hover { color: var(--pets-ink); }
.btn.btn-hvr-orange-nav:hover { background-color: #fff; border-color: #fff; color: var(--pets-rust); }
.navigation-toggle:hover span, .header-appear .navigation-toggle:hover span { background-color: #fff; }
a:focus-visible, input:focus-visible { outline: 3px solid #08778b; outline-offset: 4px; }
.navbar a:focus-visible, .side-menu a:focus-visible { outline-color: #fff; }
.contact-sec .contact-details { width: auto; margin-left: 30px; }
.contact-sec .contact-details ul li span { display: inline-block; }
@media (max-width: 991px) {
    .banner-heading { font-size: 44px; }
    .pricing-card { margin-bottom: 24px; }
    .contact-sec .contact-details { margin-left: 0; }
}
@media (max-width: 767px) {
    .banner-sec { padding-top: 145px; }
    .banner-heading { padding-top: 0; font-size: 32px; line-height: 1.25; }
    .banner-text { font-size: 16px; margin: 22px 0 32px; }
    .about-sec { padding-top: 76px; }
    .main-title { margin-bottom: 48px; }
    .main-title.style-two p { font-size: 16px; }
    .main-title h5 { font-size: 16px; }
    .bg-counter .row > div { width: 50%; }
    .bg-counter .serial-box, .bg-counter .box { padding: 26px 10px; }
    .bg-counter .count { font-size: 38px; }
    .bg-counter p { font-size: 15px; }
    .portfolio-des, .pricing-dec { width: 100%; font-size: 16px; line-height: 1.7; }
    .Pricing-sec .pricing-cards { padding-top: 48px; }
    .Pricing-sec .pricing-cards .pricing-box .pricing-box-header .pricing-price { font-size: 36px; }
    .contact-sec .contact-details .text, .testimonial-des,
    .reviews .testimonial-carousel .testimonial-box .text { font-size: 16px; }
    .contact-sec .contact-details ul li span { display: block; }
    .footer-style-1 .company-about { font-size: 14px; line-height: 1.8; }
}
