/*
Theme Name: Decorzee
Template: bluehost-blueprint
Version: 1.0
Description: Decorzee child theme
Author: Jeremy Salter
*/

/* ================================
   CHANGE TYPOGRAPHY
================================ */
/* Remove ALL dotted underlines or decorations on links */
a:active,
a:focus,
a:visited
{
  text-decoration: none !important;
  outline: none !important;
  box-shadow: none !important;
}
a:hover {
    text-decoration: none;
}

.wp-block-navigation-item__content:active,
.wp-block-navigation-item__content:focus,
.wp-block-navigation-item__content:visited {
  text-decoration: none !important;
  outline: none !important;
  box-shadow: none !important;
}

/* ================================
   HEADER UPDATES
================================ */

.wp-block-site-logo a, .wp-block-site-logo img {
    padding-bottom: 1px;
}

.wp-block-search__inside-wrapper input {
    padding: 0 !important;
}

.wp-element-button {
    padding: 2px 12px;
}

/* ================================
   MOBILE HEADER LAYOUT
================================ */
@media (max-width: 782px) {

  /* Header flex wrapper */
  header .wp-block-group.is-layout-flex {
    display: flex;
    justify-content: center;  /* center logo */
    align-items: center;
    position: relative;
  }

  /* Center logo */
  .wp-block-site-logo {
    order: 2;
    margin: 0 auto;
  }

  .wp-block-site-logo img {
    width: 220px;
  }

  /* Position hamburger left */
  .wp-block-navigation {
    order: 1;
    position: absolute;
    left: 0;
    z-index: 9999;
  }

  /* Optional: prevent nav from forcing right alignment */
  .wp-block-navigation.is-content-justification-right {
    justify-content: flex-start !important;
  }

  /* Limit menu width when open */
  .wp-block-navigation__responsive-container.is-menu-open {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 80% !important;
    max-width: 260px !important;
    height: 100vh !important;
    background: #ffffff !important;
    box-shadow: 2px 0 10px rgba(0,0,0,0.2) !important;
    transform: none !important;
  }

  /* Prevent full-screen overlay */
  .wp-block-navigation__responsive-container {
    width: 0;
  }

  /* Fix search bar in mobile menu */
  #modal-2-content {
    display: block !important; /* children stack vertically */
  }

  /* Search bar shifted to bottom */
  #modal-2-content > .wp-block-search {
    display: block !important;
    position: relative !important;
    z-index: 1;
    margin-bottom: 1rem; /* space between search and links */
  }

  /* Navigation links stack vertically with spacing and left-aligned */
  #modal-2-content > .wp-block-navigation__container {
    display: block !important;
    position: relative !important;
    margin: 0;           /* reset anything from desktop */
    padding: 0;
  }

  /* Each navigation item styling */
  #modal-2-content > .wp-block-navigation__container > li.wp-block-navigation-item {
    display: block;
    margin-bottom: 1rem; /* spacing between links */
    text-align: left;    /* force left alignment */
  }

  /* Nav link content styling */
  #modal-2-content > .wp-block-navigation__container > li.wp-block-navigation-item > a.wp-block-navigation-item__content {
    display: block;
    text-align: left;    /* ensure links are left-aligned */
  }
}


/* ================================
   SINGLE POST UPDATES
================================ */

/* Limit cover height on mobile */
@media (max-width: 782px) {
.wp-block-cover, .wp-block-cover-image {
    min-height: 400px !important;
}
/* Reduce heading size on mobile */
.wp-block-cover h1 {
    font-size: 3em !important;
}
}

/* Ensure post image covers full width */
.entry-content .wideimg img {
    display: block;
    max-width: 100%;
    width: 100%;
    height: auto;
}

/* Table of contents */
#ez-toc-container {
    padding: 15px 20px;
    border-color: #cccccc;
    border-radius: 8px;
}

#ez-toc-container li, #ez-toc-container ul, #ez-toc-container ul li, div.ez-toc-widget-container, div.ez-toc-widget-container li {
    line-height: 1.8;
}

#ez-toc-container a {
    color: #735C47;
    text-decoration: underline;
}

#ez-toc-container a:hover {
    color: #735C47;
    text-decoration: none;
}

#ez-toc-container a:visited {
    color: #735C47;
}

.product-listing {
    margin-top: 0;
    padding: 20px;
    border: 2px solid #cccccc;
    border-top: none;
    border-bottom-left-radius: 6px;
    border-bottom-right-radius: 6px;
    line-height: 1.25em;
}

h3.product-title {
    padding: 16px 20px;
    background-color: #553E29;
    border-top-left-radius: 6px;
    border-top-right-radius: 6px;
}

h3.product-title a {
    color: #ffffff;
    text-decoration: none;
}

.product-title a:hover {
    text-decoration: underline;
}

.product-listing td {
    padding: 12px;
    border: 2px solid #cccccc;
    border-top: none;
}

.product-listing thead {
    border: 2px solid #553E29;
    border-bottom: none;
}

.product-listing th {
    padding: 4px 12px 5px;
    background-color: #553E29;
    color: #fff;
    font-weight: normal;
    border: none;
}

.product-listing td img {
    padding-top: 6px;
}

.product-listing td a {
    padding: 8px 12px;
    background-color: #f0f0f0;
    border: 1px solid #cccccc;
    border-radius: 10px;
    text-decoration: none;
    white-space: nowrap;
    overflow: hidden;
}

.product-listing td em {
    white-space: nowrap;
    overflow: hidden;
}

.product-listing td a:hover {
    background-color: #ffffff;
}

.product-listing p {
    line-height: 1.45em;
}

.product-listing li {
    margin-top: 12px;
    font-style: italic;
    line-height: 1.45em;
}

.product-listing .explanation {
    background-color: #f0f0f0;
    border: none;
    border-radius: 8px;
    padding: 27px 25px 30px;
}

.explanation {
    background-color: #f3f3f3;
    border-left: 8px solid #dddddd;
    border-top-right-radius: 8px;
    border-bottom-right-radius: 8px;
    padding: 27px 25px 30px;
}

.explanation p {
    margin-top: 18px;
}

/* ================================
   FOOTER UPDATES
================================ */

.footer-nav a {
    text-decoration: none;
}

.footer-nav a:hover {
    text-decoration: underline;
}

.footer-logo {
    max-width: 200px;
}

.wp-block-mailchimp-mailchimp {
    width: 100%;
}

.wp-block-mailchimp-mailchimp-form-field {
    width: 72%;
    float: left;
}

input.mc_signup_submit_button {
    width: 25%;
    padding: 6px;
    float: right;
}

/* ================================
   FAQ ACCORDION
================================ */

.faq-accordion {
    margin-top: 20px;
    padding: 1.4em 1.5em 1.5em;
    background-color: #f0f0f0;
    border: 2px solid #dddddd;
    border-radius: 8px;
}

.faq-accordion .faq-accordion-content {
    display: none;
    padding: 0.5em 0.9em;
    margin-bottom: 0.5em;
    background-color: #f9f9f9;
    border-left: 4px solid #dddddd;
    line-height: 1.4em;
}

.faq-accordion .faq-accordion-title {
    width: 100%;
    text-align: left;
    background: none;
    border: none;
    padding: 0.75em 0.15em;
    font-size: 1.1em;
    font-weight: bold;
    cursor: pointer;
    position: relative;
}

/* Mobile: stack input below label, full width */
@media (max-width: 767px) {
    .faq-accordion .faq-accordion-title {
    font-size: 1.05em; }
}

.faq-accordion .faq-accordion-title:after {
    content: "➕";
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    transition: transform 0.3s;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.faq-accordion .faq-accordion-title.active:after {
    content: "➖";
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}