
/*
Theme Name: ABS
Theme URI: https://example.com/
Author: Your Name
Author URI: https://example.com/
Description: A custom theme for PVA Bay.
Version: 1.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: abs
*/

body {
    margin: 0;
    padding: 0;
}




.homepage-container {
    max-width: 1200px;
    margin: auto;
    padding: 40px 10px;
    font-family: sans-serif;
}

.homepage-title {
    text-align: center;
    font-size: 2.2rem;
    margin-bottom: 30px;
}

.card-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 20px;
}

.card {
    border: 1px solid #ddd;
    border-radius: 10px;
    overflow: hidden;
    background: #fff;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.card-image {
    width: 100%;
    height: 200px;
    object-fit: cover;
}

.card-body {
    padding: 15px;
}

.card-title {
    font-size: 1.2rem;
    margin: 10px 0;
    color: #222;
}

.card-title a {
    color: #111;
    text-decoration: none;
}

.card-excerpt {
    font-size: 0.95rem;
    color: #444;
    margin-bottom: 10px;
}

.read-more {
    display: inline-block;
    padding: 8px 14px;
    background-color: #007bff;
    color: #fff;
    text-decoration: none;
    border-radius: 5px;
}

.read-more:hover {
    background-color: #0056b3;
}

.pagination-container {
    text-align: center;
    margin-top: 30px;
}

.pagination-container .page-numbers {
    display: inline-block;
    margin: 0 5px;
    padding: 8px 12px;
    background: #f1f1f1;
    color: #333;
    text-decoration: none;
    border-radius: 4px;
}

.pagination-container .current {
    background: #007bff;
    color: #fff;
    font-weight: bold;
}


/* Single Post Container */
.single-container {
    max-width: 600px;
    margin: auto;
    padding: 40px 10px;
    font-family: sans-serif;
}

/* Title */
.single-title {
    font-size: 2rem;
    margin-bottom: 10px;
    color: #111;
}

/* Meta Info */
.single-meta {
    font-size: 0.9rem;
    color: #666;
    margin-bottom: 20px;
}

/* Featured Image */
.single-thumbnail img {
    width: 100%;
    height: auto;
    border-radius: 10px;
    margin-bottom: 20px;
}

/* Post Content */
.single-content {
    font-size: 1rem;
    line-height: 1.7;
    color: #333;
}

/* Content Images Responsive */
.single-content img {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 20px auto;
}

/* Tags and Category */
.single-tags {
    margin-top: 30px;
    font-size: 0.9rem;
    color: #444;
}

.single-tags strong {
    color: #000;
    font-weight: 600;
}

/* Post Navigation */
.post-navigation {
    display: flex;
    justify-content: space-between;
    margin: 40px 0;
    font-weight: bold;
    flex-wrap: wrap;
    gap: 15px;
}

.post-navigation a {
    color: inherit;
    text-decoration: none;
    transition: color 0.3s;
}

.post-navigation a:hover {
    color: #007bff;
    text-decoration: none;
}

/* Related Posts Section */
.related-posts {
    margin-top: 60px;
}

.related-posts h3 {
    margin-bottom: 20px;
}

.related-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 20px;
}

.related-item {
    border: 1px solid #eee;
    padding: 15px;
    border-radius: 6px;
    background: #fafafa;
    transition: box-shadow 0.3s ease;
    cursor: pointer;
}

.related-item:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

.related-item img {
    width: 100%;
    height: 140px;
    object-fit: cover;
    border-radius: 4px;
    margin-bottom: 10px;
}

.related-item h4 {
    font-size: 1rem;
    margin: 0;
    color: #007bff;
}

/* Global Link Styling */
a {
    color: inherit;
    text-decoration: none;
}

a:hover {
    color: #007bff;
    text-decoration: none;
}

/* Responsive Styles */
@media (max-width: 768px) {
    .single-title {
        font-size: 1.6rem;
    }

    .single-content {
        font-size: 0.95rem;
    }

    .post-navigation {
        flex-direction: column;
        align-items: flex-start;
    }

    .related-grid {
        grid-template-columns: 1fr;
    }
}


/*header*/



:root {
  --notice-bg: #1976d2;
  --notice-color: #ffffff;
}

.main-header {
  background: #24344d;
  color: white;
  padding: 10px 0;
}

.header-container {
  max-width: 1200px;
  margin: auto;
  padding: 0 15px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
}

.site-logo img {
  max-height: 40px;
  height: auto;
  width: auto;
}
.site-title {
  color: white;
  font-size: 22px;
  text-decoration: none;
}

.main-nav {
  flex-grow: 1;
  text-align: right;
}
.primary-menu {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  gap: 20px;
}
.primary-menu li a {
  color: white;
  text-decoration: none;
  font-weight: 500;
}

.header-notice-wrapper {
  background-color: var(--notice-bg);
  color: var(--notice-color);
  text-align: center;
  padding: 10px;
}
.notice-inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 15px;
  font-size: 14px;
  line-height: 1.6;
}

/* Mobile Styles */
.mobile-menu-toggle {
  display: none;
  font-size: 28px;
  color: white;
  cursor: pointer;
}

.mobile-menu {
  display: none;
  background-color: #24344d;
}
.mobile-menu.active {
  display: block;
}
.mobile-menu-list li a {
  display: block;
  padding: 12px;
  border-bottom: 1px solid #3c4d66;
  color: white;
  text-decoration: none;
}

@media (max-width: 768px) {
  .main-nav {
    display: none;
  }
  .mobile-menu-toggle {
    display: block;
  }
}













/*footer*/




.container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 15px;
}

    .site-footer {
  background: #1e3a5d;
  color: white;
  padding-top: 40px;
  font-size: 14px;
}
.footer-widgets {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
  justify-content: space-between;
  margin-bottom: 30px;
}
.footer-col {
  flex: 1 1 220px;
}
.footer-col h4 {
  font-size: 16px;
  margin-bottom: 10px;
  border-bottom: 1px solid #555;
  padding-bottom: 5px;
}
.footer-col ul {
  list-style: none;
  padding: 0;
}
.footer-col ul li {
  margin-bottom: 6px;
}
.footer-col ul li a {
  color: #ddd;
  text-decoration: none;
}
.footer-col ul li a:hover {
  color: #fff;
}
.logo-col img {
  max-width: 150px;
  margin-bottom: 10px;
}
.footer-bottom {
  display: flex;
  justify-content: space-between;
  border-top: 1px solid #334c6a;
  padding: 15px 0;
  font-size: 13px;
}
.footer-bottom img {
  vertical-align: middle;
  height: 22px;
  margin-left: 8px;
}
@media (max-width: 768px) {
  .footer-widgets {
    flex-direction: column;
  }
  .footer-bottom {
    flex-direction: column;
    text-align: center;
    gap: 10px;
  }
}




/* Responsive Blog Card Styles */
.blog-card {
    display: flex;
    gap: 20px;
    margin: 30px 0;
    border: 1px solid #ddd;
    border-radius: 10px;
    padding: 20px;
    box-shadow: 0 0 10px rgba(0,0,0,0.05);
    transition: 0.3s;
    flex-wrap: wrap;
}

.blog-card:hover {
    box-shadow: 0 0 15px rgba(0,0,0,0.15);
}

.blog-card img {
    width: 250px;
    height: 160px;
    object-fit: cover;
    border-radius: 10px;
    flex-shrink: 0;
}

.blog-card-content {
    flex: 1;
    min-width: 240px;
}

.blog-card-content h2 {
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 10px;
}

.blog-card-content p {
    color: #555;
    font-size: 15px;
}

.read-more-btn {
    display: inline-block;
    margin-top: 10px;
    padding: 8px 16px;
    background-color: #0073e6;
    color: white;
    text-decoration: none;
    border-radius: 5px;
    transition: background 0.3s;
}

.read-more-btn:hover {
    background-color: #005bb5;
}

/* Mobile Responsive */
@media (max-width: 768px) {
    .blog-card {
        flex-direction: column;
        align-items: center;
    }

    .blog-card img {
        width: 100%;
        height: auto;
    }

    .blog-card-content {
        padding-top: 10px;
    }
}


/*ad*/

.custom-ad-block {
    background: #f9f9f9;
    border: 1px dashed #aaa;
    padding: 20px;
    margin: 30px 0;
    position: relative;
    text-align: center;
}

.custom-ad-block .close-ad {
    position: absolute;
    top: 5px;
    right: 10px;
    color: #444;
    cursor: pointer;
    font-size: 20px;
}
















/* Single product layout */
.mm-single-product { margin: 20px 0; }
.mm-single-grid {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: 28px;
  align-items: start;
}
.mm-single-summary {
  background:#fff;
  border-radius:12px;
  box-shadow:0 2px 12px rgba(0,0,0,.06);
  padding:18px;
}
.mm-price-row {
  display:flex;
  align-items:baseline;
  gap:10px;
  margin:6px 0 12px;
}
.mm-single-summary .price { margin:0; }

/* Make price & button sit nicely on mobile */
@media (max-width: 600px){
  .mm-single-grid { grid-template-columns: 1fr; }
}
@media (max-width: 768px){
  .mm-single-summary .price,
  .mm-single-summary form.cart {
    display:flex;
    align-items:center;
    gap:16px;
    flex-wrap:wrap;
  }
  .mm-single-summary .single_add_to_cart_button { margin-left:auto; }
}

/* Woo gallery opacity fix if needed */
.woocommerce-product-gallery { opacity: 1 !important; }

/* Tabs spacing */
.mm-single-extras { margin-top: 26px; }




















/* Shop header */
.abs-shop-header{background:#0a2233;color:#fff;padding:28px 0;margin-bottom:22px}
.abs-shop-title{margin:0;font-size:28px;line-height:1.2}
.abs-toolbar{display:flex;gap:16px;justify-content:space-between;align-items:center;margin-top:12px}

/* Grid */
.woocommerce ul.products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
@media (max-width:1100px){.woocommerce ul.products{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:768px){.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:480px){.woocommerce ul.products{grid-template-columns:1fr}}

/* Card */
.woocommerce ul.products li.product{
  background:#fff;border:1px solid #e8edf3;border-radius:14px;overflow:hidden;
  padding:14px;box-shadow:0 6px 18px rgba(0,0,0,.06);transition:transform .2s,box-shadow .2s
}
.woocommerce ul.products li.product:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(0,0,0,.08)}
.woocommerce ul.products li.product img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:12px}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:16px;min-height:42px;margin:10px 0 6px}
.woocommerce ul.products li.product .price{font-weight:700;margin-bottom:10px}
.woocommerce span.onsale{background:#ffd43b;color:#1a1a1a;border-radius:999px;padding:6px 10px;font-weight:700}

/* Read more button (forced) */
.abs-read-more.button{
  display:inline-block;width:100%;text-align:center;border-radius:10px;
  padding:10px 14px;background:#0a7cff;color:#fff;border:0;font-weight:600
}
.abs-read-more.button:hover{opacity:.92}

/* Pagination area */
.abs-pagination{margin-top:18px}


