/*
Theme Name: CA Charity Hope
Theme URI: https://cawpthemes.com/ca-charity-hope-free-wordpress-theme/
Author: CA WP Themes
Author URI: https://cawpthemes.com/
Description: CA Charity Hope Free is a versatile and visually appealing WordPress theme designed specifically for charity and non-profit organizations. It offers a perfect blend of functionality and aesthetics, allowing you to create a stunning website to promote your cause and engage with your target audience effectively.The theme comes with a clean and modern design that instantly grabs attention and conveys a sense of trustworthiness. With its responsive layout, your website will look great on all devices, ensuring a seamless user experience for your visitors, whether they are browsing from a desktop, tablet, or mobile device.CA Charity Hope Free provides you with an array of customization options to personalize your website and align it with your organizations branding. You can choose from various color schemes, typography options, and header styles to create a unique and professional look.CA Charity Hope Free is optimized for search engines, ensuring that your website ranks well in search results and attracts organic traffic. This, combined with its fast loading times, helps create a positive user experience and boosts your websites overall performance.Details: https://cawpthemes.com/ca-charity-hope-premium-theme/. Documentation: https://cawpthemes.com/docs/ca-charity-hope-free-theme-documenataion/
For any query: https://cawpthemes.com/support/
Demo: https://demo.cawpthemes.com/ca-charity-hope-pro/
Version: 1.7.0
Tested up to: 6.8
Requires PHP: 7.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: ca-charity-hope
Copyright (c) 2026 CA WP Themes. All rights reserved.
Tags: one-column, two-columns, three-columns, four-columns, grid-layout , custom-background, custom-logo, custom-menu, custom-header, editor-style, featured-images, footer-widgets, sticky-post, full-width-template, theme-options, translation-ready, threaded-comments, blog, photography
*/


/* Reset */
html {
    font-size: 16px;
    line-height: 1.5;
    font-family: sans-serif;
}
body {
    margin: 0;
    padding: 0;
    background: #fff;
    font-family: 'Roboto';
}
img {
    max-width: 100%;
    height: auto;
}

h1 {
    color: #000;
}

p{
    color: #000;
}

/* Typography */
h1, h2, h3, h4, h5, h6 {
    font-weight: bold;
    margin: 0 0 20px;
}

a {
    color: #000;
    text-decoration: none;
}

a:hover {
    text-decoration: underline;
    color: #000;
}

ul {
    text-align: left;
}

.widget footer {
    background: none;
}

.post-list {
    list-style: none;
    margin: 0;
    padding: 0;
}
.post-list li {
    margin-bottom: 20px;
}

p.logged-in-as {
    color: #000;
}

.comments {
    list-style: none;
    margin: 0;
    padding: 0;
}
.comment {
    margin-bottom: 20px;
}
.comment-avatar {
    float: left;
    margin-right: 20px;
}
.comment-body {
    overflow: hidden;
}
.comment-author {
    font-weight: bold;
    margin: 0;
}
.comment-date {
    font-size: 0.8rem;
    color: #666;
}
.comment-content {
    margin: 10px 0;
}
.comment-reply {
    margin-left: 50px;
}


.table {
    width: 100%;
    border-collapse: collapse;
    margin: 20px 0;
}
.table th {
    background-color: #000;
    color: #fff;
    padding: 10px;
    text-align: left;
}
.table td {
    border: 1px solid #ccc;
    padding: 10px;
}

/* Style links within post content */
.entry-content a {
  color: #000000;
  text-decoration: underline;
}

/* Style links within comment content */
.comment-content a {
  color: red;
  text-decoration: underline;
}

/* Style links within text widgets */
.widget_text a {
  color: green;
  text-decoration: underline;
}


/* Accessibility */
/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
  /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  clip-path: none;
  color: #21759b;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  height: auto;
  right: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
  /* Above WP toolbar. */
}

/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {
  outline: 0;
}


/*--------Comments-----------*/

/* Style the comments section */
.comments-area {
    background-color: #f9f9f9;
    padding: 20px;
    margin-top: 30px;
    border: 1px solid #ddd;
}

/* Style the comment form */
.comment-form {
    margin-top: 30px;
}

/* Style the comment form fields */
.comment-form label {
    display: block;
    margin-bottom: 10px;
    font-weight: bold;
}

.comment-form input[type="text"], 
.comment-form textarea {
    width: 100%;
    padding: 10px;
    border: 1px solid #ddd;
    margin-bottom: 20px;
}

/* Style the comment list */
.comment-list {
    margin-top: 30px;
}

.comment {
    margin-bottom: 30px;
}

.comment-author {
    font-weight: bold;
    margin-bottom: 10px;
}

.comment-meta {
    font-style: italic;
    margin-bottom: 10px;
}

.comment-content {
    margin-bottom: 10px;
}

.comment-reply-link {
    font-weight: bold;
    text-decoration: none;
    border-bottom: 1px solid #000;
    padding-bottom: 5px;
}

.comment-reply-link:hover {
    color: #f00;
}

/* Style the comment navigation links */
.comment-navigation {
    margin-top: 30px;
    display: flex;
    justify-content: space-between;
}

.comment-nav-prev,
.comment-nav-next {
    padding: 10px;
    background-color: #f9f9f9;
    border: 1px solid #ddd;
    border-radius: 5px;
}

.comment-nav-prev a,
.comment-nav-next a {
    text-decoration: none;
    color: #333;
}

.comment-nav-prev:hover,
.comment-nav-next:hover {
    background-color: #ddd;
}

/*-------404 Page--------*/

section.error-404.not-found {
    text-align: center;
    padding: 30px;
}

section.error-404.not-found h1 {
    color: #000;
}


section.error-404.not-found input.search-submit {
    padding: 10px;
}


section.error-404.not-found input.search-field {
    padding: 10px;
}

.go-home {
    margin-top: 10px;
}

.go-home a {
    color: red;
    font-size: 20px;
}
/*----------------sidebar---------------------*/

div#sidebar {
    margin-top: 20px;
}


.widget-area {
    background: #ffffff;
    padding: 2rem;
    border-radius: 16px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.05);
    border: 1px solid #eaeaea;
    font-family: 'Inter', sans-serif;
}

.widget-area .widget {
    margin-bottom: 2.5rem;
    padding-bottom: 1.5rem;
    border-bottom: 1px dashed #ddd;
}

.widget-area .widget:last-child {
    border-bottom: none;
    margin-bottom: 0;
}

.widget-area .widget-title {
    font-size: 1.15rem;
    font-weight: 700;
    color: #2b2b2b;
    position: relative;
    margin-bottom: 1rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.widget-area .widget-title::after {
    content: "";
    width: 40px;
    height: 3px;
    background: linear-gradient(135deg, #5c6ac4, #8895e6);
    display: block;
    margin-top: 8px;
    border-radius: 2px;
}

.widget-area ul {
    list-style: none;
    padding-left: 0;
    margin: 0;
}

.widget-area ul li {
    margin: 0;
    padding: 0.65rem 0;
    border-bottom: 1px solid #f0f0f0;
    transition: all 0.3s ease;
}

.widget-area ul li:last-child {
    border-bottom: none;
}

.widget-area ul li a {
    color: #444;
    font-weight: 500;
    text-decoration: none;
    transition: all 0.3s ease;
    display: inline-block;
    position: relative;
}

.widget-area ul li a::before {
    content: "›";
    color: #5c6ac4;
    margin-right: 6px;
    transition: margin 0.3s ease;
}

.widget-area ul li a:hover {
    color: #8b8b8b;
    text-decoration: none;
    padding-left: 4px;
}

.widget-area input[type="text"],
.widget-area input[type="search"] {
    width: 100%;
    padding: 0.7rem 1rem;
    border-radius: 8px;
    border: 1px solid #ccc;
    transition: border-color 0.3s ease, box-shadow 0.3s ease;
    font-size: 1rem;
    background-color: #fafafa;
}

.widget-area input[type="text"]:focus,
.widget-area input[type="search"]:focus {
    border-color: #5c6ac4;
    box-shadow: 0 0 0 2px rgba(92, 106, 196, 0.15);
    outline: none;
}

a.wp-block-latest-comments__comment-author {
    color: gray;
}


/*----------Recommended CSS-------*/

.wp-caption {
  font-size: 14px;
  color: #666;
  background-color: #f7f7f7;
  border: 1px solid #ddd;
  padding: 5px;
}


.wp-caption-text {
  font-size: 12px;
  color: #999;
  text-align: center;
}


.gallery-caption {
  font-size: 14px;
  color: #666;
  background-color: #f7f7f7;
  border: 1px solid #ddd;
  padding: 5px;
}


.bypostauthor {
  font-size: 14px;
  font-weight: bold;
  color: #333;
}


.alignright {
  float: right;
  margin-left: 10px;
}


.alignleft {
  float: left;
  margin-right: 10px;
}

.aligncenter {
  display: block;
  margin: 0 auto;
}




/*-----------button--------*/

.button {
    display: inline-block;
    padding: 10px 20px;
    border: none;
    border-radius: 5px;
    font-size: 1rem;
    text-align: center;
    text-decoration: none;
    background-color: #000;
    color: #fff;
}

.button:hover {
    background-color: #ffbf00;
}


.theme-btn a {
    padding: 15px;
    font-size: 18px;
    background-color: #ffbf00;
    font-weight: 600;
    color: #fff;
}

.theme-btn a:hover {
    background: #000;
}


/*--------------pagination----------*/

.nav-links {
    display: -webkit-inline-box;
    padding: 10px;
}

.pagination {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: center;
}

.pagination li {
    margin: 0 5px;
}

.pagination a {
    display: inline;
    padding: 5px 10px;
    text-decoration: none;
    color: #000;
    border: 1px solid #ccc;
    border-radius: 5px;
}

.pagination a:hover {
    color: #fff;
    background-color: #ffbf00;
}

.pagination .current {
    position: relative;
    top: 0px;
    background-color: #000;
    color: #fff;
    border-color: #000;
    margin: 10px;
   padding: 5px 10px;
   border-radius: 5px;
}

/* Pagination Styling */
.navigation.pagination {
    display: flex;
    justify-content: center;
    margin-top: 20px;
}
.navigation.pagination .page-numbers {
    display: inline-block;
    padding: 8px 14px;
    margin: 0 4px;
    border: 1px solid #ddd;
    border-radius: 4px;
    color: #555;
    text-decoration: none;
    transition: all 0.3s ease;
}
.navigation.pagination .page-numbers:hover,
.navigation.pagination .page-numbers.current {
    background: linear-gradient(135deg, #ffffff 0%, #000000 100%);
    color: #fff;
    border-color: transparent;
}

/*-------------------------------------Header CSS-------------------------------*/

/* Layout */



.header {
    background-color: #fff;
    padding: 20px;
    margin-bottom: 20px;
}
.site-title {
    font-size: 2rem;
    font-weight: bold;
    margin: 0;
}
.main {
    display: flex;
    flex-wrap: wrap;
}
.content {
    flex: 2;
    margin-right: 20px;
}

p.site-description {
    font-size: 26px;
    color: #fff;
}

.site-header {
    border-top: 1px solid #ede8e8;
}

.display_only h1 a {
    color: #ffbf00;
}

h1.site-title a:hover {
    text-decoration: none;
}

.head-banner-img {
   position: relative;
   background-size: cover;
   background-position: center;
}

h1.site-title a {
    font-size: 55px;
    color: #fff;
}

.display_only {
    text-align: center;
    padding: 10px;
}

.display_only p {
    color: #000;
}

.display_only h1 {
    font-size: 40px;
    margin: 0px;
}

.site-branding {
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
   padding: 50px;
   display: flex;
   flex-direction: column;
   align-items: center;
   text-align: center;
   color: #fff;
   text-shadow: 2px 2px 4px rgba(0,0,0,0.3);
}

.site-logo img {
   max-width: 200px;
   height: auto;
}
.site-title, .site-description {
    margin: 0;
}


.site-header .site-logo h1 {
  margin: 0;
  font-size: 36px;
  font-weight: 700;
}

.site-header .site-logo img {
  max-height: 50px;
}

/*-----------Blog Page-----*/

.blog-page-main h2.post-title {
    margin-top: 10px;
    padding: 0px;

}

.blog-page-main .post {
    border: 1px solid #ccc;
    padding: 10px;
    margin: 10px;
    text-align: center;
}


/*------------------------------------Index.php----------------------------------*/

h2.entry-title {
    font-size: 38px;
}

.main-post-content-box {
    margin: 15px;
    text-align: center;
    padding: 15px;
    border: 1px solid #ccc;
}

.main-post-content-box .entry-content {
    padding: 10px;
}

.card-body p {
    color: #000;
}

/* Content Styles */
.entry-content {
  font-size: 18px;
  line-height: 1.6;
  margin-bottom: 1.5em;
}

.entry-header {
  margin-bottom: 1.5em;
}

.entry-title {
  font-size: 24px;
  line-height: 1.2;
  margin-bottom: 0.5em;
}

.entry-meta {
  font-size: 14px;
  margin-bottom: 1em;
}

.entry-meta a {
  color: #fff;
  text-decoration: none;
  font-size: 16px;
}

.entry-meta a:hover {
  color: #000;
}

.entry-footer {
  margin-top: 1.5em;
}

.entry-title {
    margin-bottom: 10px;
}

.entry-content {
    margin-bottom: 20px;
}

.page-links {
    margin-top: 20px;
    clear: both;
}

.tags-list {
    margin-bottom: 10px;
}

.read-more-link {
    display: inline-block;
    margin-top: 10px;
    font-size: 14px;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #fff;
    background-color: #007bff;
    padding: 10px 15px;
    border-radius: 4px;
    text-decoration: none;
    transition: all 0.3s ease;
}

.read-more-link:hover {
    background-color: #ffbf00;
}


.single-post .post-thumbnail {
    padding: 0px 0px 40px 0px;
}

.single-post header.entry-header h1 {
    font-size: 36px;
    padding: 10px 0px;
}

.singlepost-category {
    padding: 20px 0px 0px 0px;
}

.singlepost-category a {
    background-color: #ffbf00;
    padding: 3px 15px;
    margin: 2px;
}

.card-body a {
    color: #000;
    background-color: #ffbf00 !important;
    border: none;
}

.card-body a:hover {
    background-color: #000;
}


.main-single-post-page {
    padding: 40px 0px 0px 0px;
}

h2.entry-title {
    padding: 20px 0px 10px 0px;
    font-size: 34px;
    color: #000;
}

.main-single-post-page h2.entry-title{
padding: 10px 0px;
}

.entry-meta {
    font-size: 14px;
    margin-bottom: 1em;
    font-weight: 700;
    color: #000;
    max-width: 260px;
    padding: 0px 0px 0px 10px;
    background-color: #ffbf00;
}

.card-body h5 {
    color: #000;
    font-size: 20px;
    padding: 0px 0px 0px 0px;
}

.cat-meta {
    padding: 10px 0px 10px 0px;
}

.cat-meta a {
    background: transparent !important;
}

.archive .page-container {
    margin-top: 30px;
}

/*-----------------Section-----------------------*/

/* Style for section */


/* Style for section heading */
section h2 {
  font-size: 36px;
  color: #000;
  margin-bottom: 20px;
}

/* Style for section content */
section p {
  font-size: 18px;
  color: #000;
  line-height: 1.5;
  margin-bottom: 30px;
}


header.entry-header h1 {
    padding: 40px 0px;
}

/*-------------Banner Section------*/

.main-banner-main {
  position: relative;
  display: inline-block;
}

.text-box {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    padding: 20px;
    text-align: center;
    width: 80%;
}

section#banner-section-first p {
    font-size: 26px;
    color: #fff;
}


section#banner-section-first h2 {
    font-size: 50px;
    color: #fff;
}


/*-----------------About Section----------------*/


    .about-box {
        padding: 30px;
        background: #fff;
        position: relative;
        right: 12%;
        top: 10%;
    }

    
/*-----------Section One-------------*/

.latest-content p {
    font-size: 14px;
    color: #666;
}

.latest-content {
    padding: 0px 10px;
    text-align: left;
    max-height: 5.5em;
    line-height: 1.5em;
    overflow: hidden;
}

.readmore-latest {
    padding: 0px 10px;
    text-align: left;
}

.readmore-latest a {
    color: #ffbf00;
    font-weight: 500;
}

.post {
    margin-bottom: 20px;
}



h2.post-title {
    margin: 0px;
    font-size: 19px;
    padding: 10px;
}

section#section1 .post-thumbnail {
    padding: 10px;
}

.section-heading-main h3 {
    text-align: center;
    padding: 40px 0px 30px 0px;
    font-size: 36px;
    color: #000;
}


section#section3 {
    padding: 40px;
}


section#section1 {
    padding: 0px;
}

h2.post-title a {
    color: #000;
}

h2.second-sec-heading a {
    color: #fff;
    font-size: 42px;
}


.post-sect2 {
    margin: 10px;
}


.the-content-box-sec2 {
    color: #fff;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
}

.the-content-box-sec2 p {
    color: #fff;
}

.sec2-meta span {
    color: sandybrown;
}

.sec2-cat a {
    color: #fff;
    background-color: #ffbf00;
    padding: 5px;
}   

.sec2-meta span {
    color: #ffbf00;
}


.post-sect4 {
    text-align: right;
    margin: 10px;
}


section#section3 h2.post-title {
    font-size: 19px;
    padding: 10px;
    text-align: center;
}


.post-sect4-more {
    text-align: center;
    margin: 10px;
}

.sec2-meta {
    padding: 0px 0px 0px 10px;
}

/*-------------------Post Nav-----------*/


.post-navigation {
    display: flex;
    justify-content: space-between;
    margin: 2em 0;
}

.nav-previous a, .nav-next a {
    width: 300px;
    display: inline-block;
    color: #000;
    font-weight: 700;
    text-transform: uppercase;
    transition: 0.5s;
}

.entry-share {
    color: #000;
}

.nav-previous a:hover, .nav-next a:hover {
   
    color: #ffbf00;
   
}

.nav-previous a {
    border-radius: 5px 0 0 5px;
}

.nav-next a {
    border-radius: 0 5px 5px 0;
}

@media screen and (max-width: 768px) {
    .post-navigation {
        flex-direction: column;
    }
    
    .nav-previous a, .nav-next a {
        width: 100%;
        border-radius: 5px;
        margin-bottom: 1em;
    }
}

/*----------Blog Page-*/


.blog-page-main {
    padding: 40px;
}

/*---------------------------Contact Us Page-------------*/

.contact-form-container {
    max-width: 800px;
    margin: 0 auto;
    padding: 40px;
    background-color: #f9f9f9;
    border-radius: 10px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}


.contact-form-container p {
    margin-bottom: 20px;
}

.contact-form-container input[type="text"],
.contact-form-container input[type="email"],
.contact-form-container textarea {
    width: 100%;
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 5px;
}

.contact-form-container input[type="submit"] {
    background-color: #4CAF50;
    color: white;
    padding: 10px 20px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
}

.contact-form-container input[type="submit"]:hover {
    background-color: #45a049;
}


.contact-main-box {
    padding: 40px;
}

.info-box {
    text-align: center;
    width: 200px;
    background-color: #fff;
    padding: 20px;
    box-shadow: 0 0 10px rgb(205 124 124 / 80%);
    margin: 10px;
}

.address i {
    font-size: 40px;
}

.address h6 {
    font-size: 20px;
    margin: 7px;
}


.info-box p {
    color: #000;
}



/*-------------------Woocommerce---------------*/

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce #respond input#submit.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce a.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce button.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce input.button.alt {
    background-color: #000000;
    color: #fff;
    -webkit-font-smoothing: antialiased;
}

.woocommerce ul.products li.product a {
    text-decoration: none;
    color: #fff;
    background: #000000;
}

.woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product p.price, .woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product span.price {
    color: #000000;
    font-size: 1.25em;
}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce #respond input#submit.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce a.button.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce button.button.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce input.button.alt:hover {
    background-color: #000000;
    color: #fff;
}


/* =========================================================
   MODERN SPLIT FOOTER
========================================================= */

.modern-site-footer {
    position: relative;
    margin-top: 90px;
    overflow: hidden;
    color: #ffffff;
}


/* =========================================================
   CTA
========================================================= */

.modern-footer-cta {
    position: relative;
    z-index: 3;
    margin-bottom: -65px;
}

.modern-footer-cta-inner {
    position: relative;
    min-height: 190px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    overflow: hidden;
    padding: 45px 60px;
    background: linear-gradient(
        120deg,
        #ffbf00,
        #737fda
    );
    border-radius: 24px;
    box-shadow: 0 25px 60px rgba(35, 39, 75, 0.25);
}

.modern-footer-cta-content {
    position: relative;
    z-index: 3;
    max-width: 700px;
}

.modern-footer-kicker {
    display: inline-block;
    margin-bottom: 10px;
    color: rgba(255, 255, 255, 0.75);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.modern-footer-cta h2 {
    margin: 0 0 12px;
    color: #ffffff !important;
    font-size: clamp(30px, 4vw, 45px);
    font-weight: 700;
    line-height: 1.15;
}

.modern-footer-cta p {
    max-width: 600px;
    margin: 0;
    color: rgba(255, 255, 255, 0.82) !important;
    font-size: 15px;
    line-height: 1.7;
}


/* =========================================================
   CTA DECORATIVE SHAPES
========================================================= */

.modern-footer-cta-shape {
    position: absolute;
    right: 50px;
    width: 180px;
    height: 180px;
}

.modern-footer-cta-shape span {
    position: absolute;
    display: block;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 50%;
}

.modern-footer-cta-shape span:nth-child(1) {
    width: 180px;
    height: 180px;
}

.modern-footer-cta-shape span:nth-child(2) {
    width: 130px;
    height: 130px;
    top: 25px;
    left: 25px;
}

.modern-footer-cta-shape span:nth-child(3) {
    width: 80px;
    height: 80px;
    top: 50px;
    left: 50px;
}


/* =========================================================
   MAIN FOOTER
========================================================= */

.modern-footer-main {
    position: relative;
    padding: 145px 0 75px;
    background: #11131c;
}

.modern-footer-main::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255, 255, 255, 0.15),
        transparent
    );
}


/* =========================================================
   ABOUT
========================================================= */

.modern-footer-about {
    padding-right: 35px;
}

.modern-footer-logo {
    margin-bottom: 25px;
}

.modern-footer-logo a {
    color: #ffffff;
    font-size: 28px;
    font-weight: 800;
    text-decoration: none;
}

.modern-footer-logo img {
    max-width: 180px;
    max-height: 70px;
    width: auto;
}

.modern-footer-about > p {
    max-width: 370px;
    margin: 0 0 25px;
    color: rgba(255, 255, 255, 0.58) !important;
    font-size: 14px;
    line-height: 1.9;
}


/* =========================================================
   SOCIAL
========================================================= */

.modern-footer-social {
    display: flex;
    align-items: center;
    gap: 10px;
}

.modern-footer-social a {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: rgba(255, 255, 255, 0.7);
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 50%;
    text-decoration: none;
    transition: all 0.3s ease;
}

.modern-footer-social a:hover {
    color: #ffffff;
    background: #5c6ac4;
    border-color: #5c6ac4;
    transform: translateY(-4px);
}

.modern-footer-social .dashicons {
    width: auto;
    height: auto;
    font-size: 17px;
}


/* =========================================================
   WIDGET COLUMNS
========================================================= */

.modern-footer-column {
    height: 100%;
}

.modern-footer-column .widget {
    margin: 0 0 25px;
}

.modern-footer-column .widget:last-child {
    margin-bottom: 0;
}

.modern-footer-column .widget-title,
.modern-footer-column h2,
.modern-footer-column h3,
.modern-footer-column h4 {
    margin: 0 0 22px;
    color: #ffffff !important;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.4;
}

.modern-footer-column .widget-title::after,
.modern-footer-column h2::after,
.modern-footer-column h3::after,
.modern-footer-column h4::after {
    content: "";
    display: block;
    width: 28px;
    height: 2px;
    margin-top: 10px;
    background: #ffbf00;
    border-radius: 10px;
}


/* =========================================================
   WIDGET TEXT
========================================================= */

.modern-footer-column p,
.modern-footer-column .textwidget {
    color: rgba(255, 255, 255, 0.57) !important;
    font-size: 14px;
    line-height: 1.8;
    overflow-wrap: anywhere;
    word-break: break-word;
}


/* =========================================================
   WIDGET LIST
========================================================= */

.modern-footer-column ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.modern-footer-column li {
    margin: 0 0 11px;
}

.modern-footer-column li:last-child {
    margin-bottom: 0;
}

.modern-footer-column li a {
    position: relative;
    display: inline-block;
    color: rgba(255, 255, 255, 0.58);
    font-size: 14px;
    text-decoration: none;
    transition: all 0.25s ease;
}

.modern-footer-column li a::before {
    content: "→";
    display: inline-block;
    margin-right: 7px;
    color: #737fda;
    opacity: 0;
    transform: translateX(-8px);
    transition: all 0.25s ease;
}

.modern-footer-column li a:hover {
    color: #ffffff;
}

.modern-footer-column li a:hover::before {
    opacity: 1;
    transform: translateX(0);
}


/* =========================================================
   LINKS
========================================================= */

.modern-footer-main a {
    color: rgba(255, 255, 255, 0.6);
}

.modern-footer-main a:hover {
    color: #ffffff;
}


/* =========================================================
   BOTTOM BAR
========================================================= */

.modern-footer-bottom {
    position: relative;
    background: #0a0c12;
    border-top: 1px solid rgba(255, 255, 255, 0.07);
}

.modern-footer-bottom-inner {
    min-height: 75px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 25px;
}

.modern-footer-copyright {
    color: rgba(255, 255, 255, 0.45);
    font-size: 12px;
    line-height: 1.6;
}

.modern-footer-legal {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 22px;
}

.modern-footer-legal a {
    position: relative;
    color: rgba(255, 255, 255, 0.5);
    font-size: 12px;
    text-decoration: none;
    transition: color 0.25s ease;
}

.modern-footer-legal a:hover {
    color: #ffffff;
}

.modern-footer-legal a:not(:last-child)::after {
    content: "";
    position: absolute;
    right: -12px;
    top: 50%;
    width: 3px;
    height: 3px;
    background: rgba(255, 255, 255, 0.25);
    border-radius: 50%;
    transform: translateY(-50%);
}


/* =========================================================
   BACK TO TOP
========================================================= */

.modern-back-to-top {
    position: fixed;
    right: 25px;
    bottom: 25px;
    z-index: 9999;

    width: 48px;
    height: 48px;

    display: none;
    align-items: center;
    justify-content: center;

    padding: 0;

    color: #ffffff;
    background: #5c6ac4;

    border: 0;
    border-radius: 50%;

    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.2);

    cursor: pointer;

    opacity: 0;
    transform: translateY(15px);

    transition: all 0.3s ease;
}

.modern-back-to-top.show {
    display: flex;
    opacity: 1;
    transform: translateY(0);
}

.modern-back-to-top:hover {
    background: #737fda;
    transform: translateY(-5px);
}

.modern-back-to-top .dashicons {
    width: auto;
    height: auto;
    font-size: 19px;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 991px) {

    .modern-footer-cta-inner {
        padding: 40px;
    }

    .modern-footer-cta-shape {
        right: 15px;
        opacity: 0.6;
    }

    .modern-footer-about {
        padding-right: 0;
    }

    .modern-footer-main {
        padding-top: 125px;
    }

}


@media (max-width: 767px) {

    .modern-site-footer {
        margin-top: 70px;
    }

    .modern-footer-cta {
        margin-bottom: -45px;
    }

    .modern-footer-cta-inner {
        min-height: auto;
        padding: 35px 28px;
        border-radius: 18px;
    }

    .modern-footer-cta h2 {
        font-size: 30px;
    }

    .modern-footer-cta-shape {
        display: none;
    }

    .modern-footer-main {
        padding: 105px 0 55px;
    }

    .modern-footer-about {
        margin-bottom: 15px;
    }

    .modern-footer-bottom-inner {
        flex-direction: column;
        justify-content: center;
        padding: 20px 0;
        text-align: center;
    }

    .modern-footer-legal {
        justify-content: center;
        gap: 18px;
    }

}


@media (max-width: 480px) {

    .modern-footer-cta-inner {
        padding: 30px 22px;
    }

    .modern-footer-cta h2 {
        font-size: 26px;
    }

    .modern-footer-cta p {
        font-size: 14px;
    }

    .modern-footer-main {
        padding-top: 90px;
    }

    .modern-footer-legal {
        gap: 12px;
    }

    .modern-footer-legal a {
        font-size: 11px;
    }

    .modern-back-to-top {
        right: 18px;
        bottom: 18px;
        width: 44px;
        height: 44px;
    }

}

/* =========================================================
   PREMIUM BACK TO TOP
========================================================= */

.modern-back-to-top {
    position: fixed;
    right: 28px;
    bottom: 28px;
    z-index: 9999;

    width: 54px;
    height: 54px;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 0;

    color: #ffffff;
    background: #11131c;

    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 50%;

    box-shadow:
        0 12px 35px rgba(0, 0, 0, 0.25),
        0 0 0 5px rgba(92, 106, 196, 0.08);

    cursor: pointer;

    opacity: 0;
    visibility: hidden;
    transform: translateY(20px) scale(0.85);

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease,
        background 0.3s ease,
        box-shadow 0.3s ease;
}


/* Visible state */

.modern-back-to-top.show {
    opacity: 1;
    visibility: visible;
    transform: translateY(0) scale(1);
}


/* Hover */

.modern-back-to-top:hover {
    color: #ffffff;
    background: #5c6ac4;

    box-shadow:
        0 15px 40px rgba(92, 106, 196, 0.35),
        0 0 0 7px rgba(92, 106, 196, 0.10);

    transform: translateY(-5px) scale(1.03);
}


/* Arrow */

.back-to-top-arrow {
    display: block;
    font-size: 22px;
    font-weight: 400;
    line-height: 1;

    transition: transform 0.3s ease;
}

.modern-back-to-top:hover .back-to-top-arrow {
    transform: translateY(-3px);
}


/* Hide text visually */

.back-to-top-text {
    position: absolute;

    width: 1px;
    height: 1px;

    padding: 0;
    margin: -1px;

    overflow: hidden;
    clip: rect(0, 0, 0, 0);

    white-space: nowrap;
    border: 0;
}


/* Mobile */

@media (max-width: 767px) {

    .modern-back-to-top {
        right: 18px;
        bottom: 18px;
        width: 48px;
        height: 48px;
    }

    .back-to-top-arrow {
        font-size: 20px;
    }

}



/*-----------------------MOBILE Media*--------------------------*/


@media only screen and (max-width: 768px) {

    .about-box {
    padding: 30px;
    background: #fff;
    position: relative;
    right: 0px;
    top: 10%;
}

section#banner-section-first h2 {
    font-size: 16px;
    color: #fff;
}

.text-box {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    padding: 10px;
    text-align: center;
}

    .text-box p {
    display: none;
}

    .sec2-cat {
    margin-top: 10px;
}

h2.second-sec-heading a {
    color: #fff;
    font-size: 26px;
}

.post-sect4 {
    text-align: left;
    margin: 10px;
}

    .about-text-box {
    text-align: center;
    background: #fff;
    width: 65%;
    padding: 20px;
    position: absolute;
    top: 0px;
    right: 0px;
    font-size: 18px;
}

.about-text-box h3 {
    color: #ffbf00;
    font-size: 12px;
}

.about-text-box p {
    font-size: 10px;
}

section#about-two {
    height: 400px;
}

    .about-box-1{
        width: 100%;
    }

    img.about-two-small {
    width: 30%;
    }

    .display_only h1 {
    font-size: 32px;
    }

    p.site-description {
    font-size: 14px;
    color: #fff;
    }


    .site-branding {
    padding: 5px;
    }


    h1.site-title a {
        font-size: 30px;
        color: #fff;
    }

    footer {
        padding: 10px;
    }

    h2.post-title {
    text-align: center;
    }

    h1.other-pages {
    color: rgba(0,0,0,1);
    font-size: 60px;
    text-align: center;
    }

    .info-box {
    text-align: center;
    width: 100%;
    background-color: #fff;
    padding: 20px;
    box-shadow: 0 0 10px rgb(205 124 124 / 80%);
    margin: 10px;
    }


}





