/*
Theme Name: AgencyGrove Dark
Theme URI: https://themegrove.com/products/agencygrove/
Author: Themegrove
Author URI: https://themegrove.com/
Description: Welcome to AgencyGrove Dark — the ultimate WordPress Full Site Editing theme crafted for businesses, consulting firms, and SEO agencies that demand a powerful online presence. Built with cutting-edge SEO optimization and full compatibility with Gutenberg and WooCommerce, AgencyGrove Dark empowers you to create a high-performing, visually striking website with ease. Its intuitive block-based design and seamless integration with Contact Form 7 offer unmatched flexibility, enabling you to highlight your services, connect with clients, and expand your reach effortlessly. With AgencyGrove Dark, experience the perfect blend of style, functionality, and growth-focused performance — your gateway to digital success. Demo: https://demos.themegrove.com/agencygrove-dark/
Template: agencygrove
Requires at least: 6.0
Tested up to: 6.9
Requires PHP: 7.0
Version: 1.3
License: GNU General Public License v3 or later
License URI: http://www.gnu.org/licenses/gpl-3.0.html
Text Domain: agencygrove-dark
Tags: one-column, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, block-patterns, rtl-language-support, sticky-post, threaded-comments, translation-ready, wide-blocks, block-styles, blog, portfolio, news
*/

html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
}

main {
  display: block;
}

.wp-site-blocks {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

.wp-site-blocks main {
  flex: 1;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

.page-template-full-width .entry-content {
  margin-top: 0;
}

pre {
  font-family: monospace, monospace;
  font-size: 1em;
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted;
}

b,
strong {
  font-weight: bolder;
}

code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

img {
  border-style: none;
}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

.wp-element-button,
.wp-block-button__link,
a.wp-block-post-excerpt__more-link {
  transition: all 0.3s;
}

.wp-element-button:hover,
.wp-block-button__link:hover,
p.agencygrove-dark-scrool-top:hover:before {
  background-color: var(--wp--preset--color--button-hover-color) !important;
  border-color: var(--wp--preset--color--button-hover-color) !important;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

textarea {
  overflow: auto;
}

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  padding: 0;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

details {
  display: block;
}

summary {
  display: list-item;
}

template {
  display: none;
}

[hidden] {
  display: none;
}

footer.wp-block-template-part {
  margin: 0;
}

.orderby {
  padding: 15px;
}

div#sticky-header {
  z-index: 9 !important;
  box-shadow: rgba(0, 0, 0, 0.05) 0px 0px 0px 1px;
}

/* -------------- pagination start----------------*/

.page-numbers {
  background: var(--wp--preset--color--primary);
  margin: 0 5px 5px 0;
  padding: 6px 13px;
  border-radius: 6px;
  font-size: 12px;
  display: inline-block;
  color: var(--wp--preset--color--white);
}

.page-numbers:hover {
  color: var(--wp--preset--color--white);
}

.page-numbers.dots {
  background-color: transparent;
}

.wp-block-query-pagination {
  gap: 10px;
}

/* -------------- pagination End----------------*/

/* -------------- woocommerce-breadcrumb ----------------*/

.woocommerce .woocommerce-breadcrumb,
.woocommerce .woocommerce-breadcrumb a {
  color: var(--wp--preset--color--link-color);
}

/* -------------- woocommerce-breadcrumb end----------------*/

/* -------------- header navigation ----------------*/
.wp-block-navigation-item__content {
  padding-bottom: 3px;
  text-decoration: none;
  position: relative;
  overflow: hidden;
}

.wp-block-navigation-item__content::before {
  margin-top: 0px;
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 100%;
  height: 2px;
  background: var(--wp--preset--color--contrast-2);
  transition: right 0.3s;
  text-decoration: none;
}

.wp-block-navigation-item__content:hover::before {
  right: 0;
}

.wp-block-navigation-submenu li a:hover::before {
  right: 50%;
}

/* -------------- header navigation  ----------------*/

/* scrool to top */
.agencygrove-dark-scrool-top {
  display: none;
  z-index: 99999;
}

.agencygrove-dark-scrool-top::before {
  font-size: 17px;
  padding: 8px 13px;
  cursor: pointer;
  background: var(--wp--preset--color--button-hover-color);
  color: var(--wp--preset--color--link-color);
  content: "\f062";
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  position: fixed;
  bottom: 50px;
  right: 30px;
  border-radius: 6px;
}

@media screen and (max-width: 600px) {
  .agencygrove-dark-scrool-top::before {
    font-size: 26px;
    padding: 8px 13px;
    cursor: pointer;
    background: transparent;
    color: var(--wp--preset--color--primary);
    content: "\f062";
    font-family: "Font Awesome 5 Free";
    font-weight: 600;
    position: fixed;
    bottom: 8px;
    right: 15px;
  }
}

/* scrool to top */

/* dashicon before categories, tag and date start */

.wp-block-archives-list.wp-block-archives li::before,
.wp-block-categories-list.wp-block-categories li::before,
.taxonomy-category a::before {
  font-family: "Font Awesome 5 Free";
  content: "\f054";
  margin-right: 8px;
  font-weight: 600;
  font-size: 14px;
}

.wp-block-archives-list.wp-block-archives li,
.wp-block-categories-list.wp-block-categories li {
  list-style-type: none;
}

.wp-block-archives-list.wp-block-archives,
.wp-block-categories-list.wp-block-categories,
.taxonomy-category a {
  padding-left: 10px;
}

.wp-block-tag-cloud a.tag-cloud-link {
  font-size: 16px !important;
}

.wp-block-tag-cloud a.tag-cloud-link:hover {
  color: var(--wp--preset--color--white);
}

.tag-cloud-link::before,
.taxonomy-post_tag a:before {
  font-family: "Font Awesome 5 Free";
  content: "\f02b";
  font-weight: 600;
  margin-right: 8px;
}

.tag-cloud-link,
.taxonomy-post_tag a {
  text-decoration: none;
  background: var(--wp--preset--color--primary);
  margin: 0 5px 5px 0;
  padding: 0 10px;
  border-radius: 6px;
  font-size: 12px;
  display: inline-block;
  color: var(--wp--preset--color--white);
  text-decoration: none;
}

.products-block-post-template li {
  box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
}

p.agencygrove-dark-scrool-top {
  position: absolute;
}

.column-has-radius {
  border-radius: 8px;
}

.has-bg-image {
  background: #fff;
  border-radius: 100px;
  height: 100px;
  width: 100px;
  padding: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
}

footer .has-arrow ul {
  padding: 0;
}

footer .has-arrow ul li:before {
  content: "\f345";
  font-family: "dashicons";
  position: absolute;
  left: 0;
  top: 2px;
  font-size: 12px;
}

footer .has-arrow ul li {
  list-style: none;
  padding-left: 15px;
  position: relative;
}

.wp-block-post-excerpt a.wp-block-post-excerpt__more-link {
  background-color: transparent;
  color: var(--wp--preset--color--primary);
  text-decoration: none;
  font-size: 18px;
  padding: 0;
  position: relative;
}

.wp-block-post-excerpt a.wp-block-post-excerpt__more-link:hover {
  color: var(--wp--preset--color--primary);
  background-color: unset !important;
}

.wc-block-components-product-sale-badge.wc-block-components-product-sale-badge--align-right.wc-block-grid__product-onsale {
  background: #cf0000;
  border: none;
  color: #fff;
  font-size: 12px;
}

@media (max-width: 720px) {
  .no-border-mobile,
  .no-border-mobile .wp-block-column {
    border: none !important;
  }
}

/* blog page style */
.wp-block-post-author__name::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f007";
  padding-right: 8px;
}

.wp-block-post-date time::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f073";
  padding-right: 8px;
}

.wp-block-read-more-is-layout-flow::after {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f061";
  padding-left: 8px;
}

.wp-block-read-more-is-layout-flow:hover::after {
  padding-left: 10px;
  transition: color 0.1s ease;
}

a.wp-block-post-author-name__link:before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f007";
  padding-right: 8px;
}

/* footer css */
.wp-block-post-excerpt a.wp-block-post-excerpt__more-link:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f061";
  padding-left: 8px;
}

.wp-block-button.is-style-outline a:hover {
  color: var(--wp--preset--color--link-color);
}

footer a {
  text-decoration: none !important;
}

.wp-block-post-excerpt a.wp-block-post-excerpt__more-link {
  font-size: 16px;
}

.wp-block-post-comments-form input[type="submit"] {
  border: none;
}

@media (max-width: 1200px) {
  .wp-block-template-part .wp-block-group.alignfull {
    padding: 20px !important;
  }
}

@media (max-width: 768px) {
  .wp-block-template-part .wp-block-group.alignfull {
    padding: 20px !important;
  }
}

.contact-mobile-only {
  display: none !important;
}

/* Mobile Responsive Header & Menu */
@media (max-width: 768px) {
  /* Header Layout */
  #sticky-header > .wp-block-group.is-layout-flex {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
  }

  /* Logo */
  #sticky-header .wp-block-site-title {
    order: 1 !important;
    margin: 0 !important;
    flex-shrink: 0 !important;
  }

  /* Hamburger */
  #sticky-header .wp-block-navigation {
    order: 2 !important;
    margin-left: auto !important;
  }

  /* Contact Button Hidden */
  #sticky-header .wp-block-buttons {
    display: none !important;
  }

  /* Menu Overlay */
  #sticky-header .wp-block-navigation__responsive-container {
    background: #120f0f !important;
    width: 100% !important;
    max-width: 100% !important;
    right: 0 !important;
    left: auto !important;
    padding: 20px !important;
    box-sizing: border-box !important;
  }

  /* Menu Content */
  #sticky-header .wp-block-navigation__responsive-container-content {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    height: 80vh !important;
    width: 100% !important;
    text-align: center !important;
  }

  /* Menu Links Container */
  #sticky-header .wp-block-navigation__container {
    margin: 0 auto !important;
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
  }

  /* Contact Mobile Fix */
  .contact-mobile-only {
    width: auto !important;
    text-align: center;
    display: inline-block !important;
  }

  .contact-mobile-only a {
    display: inline-block !important;
    width: auto !important;
  }

  /* Menu Links Layout */
  #sticky-header .wp-block-navigation__container {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    gap: 20px;
  }

  /* Menu Link Text */
  #sticky-header .wp-block-navigation-item__content,
  #sticky-header .wp-block-navigation-item__label {
    color: #ffffff !important;
    font-size: 1.2rem;
    text-align: center;
  }

  /* Close Icon Color */
  #sticky-header
    .wp-block-navigation__responsive-container-close
    button
    svg
    path {
    fill: #a4783a !important;
  }

  /* Close Button Position */
  #sticky-header .wp-block-navigation__responsive-container-close {
    color: #ffffff !important;
    position: absolute;
    justify-content: first baseline;
    top: 16px;
    left: 16px;
    z-index: 9999;
  }

  /* Contact Button In Menu */
  #sticky-header .wp-block-navigation__responsive-container .wp-block-buttons {
    display: flex !important;
    justify-content: center;
    margin-top: 20px;
    width: 100%;
  }
}

/* Fluent Forms */
.artist-contact-form {
  max-width: 100%;
}

/* Labels */
.artist-contact-form label {
  display: block;
  color: #ffffff;
  font-size: 19px;
  font-weight: 500;
  margin-bottom: 5px;
}

/* Inputs & Textarea */
.artist-contact-form input,
.artist-contact-form textarea,
.artist-contact-form select {
  padding: 10px;
  border: 1px solid #cccccc71;
  background: #2a2a2a;
  color: #ffffff;
  border-radius: 8px;
  transition: all 0.3s;
  width: 100%;
  box-sizing: border-box;
  margin-bottom: 15px;
}

/* Textarea height */
.artist-contact-form textarea {
  height: 100px;
  resize: vertical;
}

/* Submit Button */
.artist-contact-form .ff-btn-submit {
  width: 100%;
  display: block;
  margin-left: auto;
  background: #a4783a;
  color: #ffffff;
  border: none;
  cursor: pointer;
  transition: 0.3s;
  border-radius: 8px;
  font-size: 19px;
  font-weight: 600;
  padding: 10px;
}

.artist-contact-form .ff-btn-submit:hover {
  background: #835a20;
}

/* Error Messages */
.artist-contact-form .ff-el-is-error .text-danger,
.fluentform .ff-el-is-error .text-danger {
  font-size: 19px !important;
  font-weight: 300;
  color: #ff6b6b !important;
}

/* Success Message */
.artist-contact-form .ff-message-success {
  margin-top: 15px;
  padding: 12px;
  border-radius: 8px;
  font-size: 19px;
  background: #3c763d;
  color: #ffffff;
}

/* Error Message */
.artist-contact-form .ff-message-error {
  background: #d9534f;
  color: #ffffff;
  padding: 12px;
  border-radius: 8px;
  font-size: 19px;
}

/* Force dark background on all Fluent Forms inputs */
.fluentform .ff-el-form-control,
.fluentform .ff-el-form-control:focus,
.fluentform .ff-el-form-control:hover,
.fluentform input.ff-el-form-control,
.fluentform textarea.ff-el-form-control,
.fluentform select.ff-el-form-control {
  background-color: #2a2a2a !important;
  color: #ffffff !important;
  border-color: #cccccc71 !important;
  outline: none !important;
  box-shadow: none !important;
}

.fluentform .ff-el-form-control {
  background-color: #2a2a2a;
}

/* newsletter */
.newsletter-form p {
  display: none !important;
}

.tnp {
  max-width: 100% !important;
  width: 100% !important;
  box-sizing: border-box;
}

/* name + surname */
.tnp .tnp-field-firstname,
.tnp .tnp-field-surname {
  flex: 0 0 calc(50% - 5px);
  max-width: calc(50% - 5px);
  box-sizing: border-box !important;
}

.tnp form {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.tnp .tnp-field label {
  font-size: 1.3rem;
  font-weight: 500;
  display: block;
}

/* inputs */
.tnp .tnp-field input {
  padding: 10px !important;
  border: 1px solid #cccccc71 !important;
  background: #2a2a2a !important;
  color: #ffffff !important;
  border-radius: 8px !important;
  transition: all 0.3s !important;
  width: 100% !important;
  box-sizing: border-box !important;
  margin-bottom: 15px !important;
}

/* email */
.tnp .tnp-field-email label::after {
  content: " *";
  color: #f56c6c;
}

.tnp .tnp-field-email,
.tnp .tnp-field-button {
  width: 100% !important;
}

/* submit button */
.tnp input[type="submit"] {
  width: 100% !important;
  display: block !important;
  background: #a4783a !important;
  color: #ffffff !important;
  border: none !important;
  cursor: pointer !important;
  transition: 0.3s !important;
  border-radius: 8px !important;
  font-size: 19px !important;
  font-weight: 600 !important;
  padding: 10px !important;
}

.tnp input[type="submit"]:hover {
  background: #835a20 !important;
}

/* mobile */
@media (max-width: 600px) {
  .tnp .tnp-field-firstname,
  .tnp .tnp-field-surname {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
  }
}

/* banner */
.banner-cover {
  position: relative;
  width: 100%;
  height: 100vh;
  overflow: hidden;
}

@media (max-width: 768px) {
  .banner-cover {
    height: 60vh !important;
  }

  .banner-cover img.wp-block-cover__image-background {
    object-fit: cover !important;
    object-position: center center !important;
    width: 100% !important;
    height: 100% !important;
  }

  .banner-cover .has-x-large-font-size {
    font-size: 5vw !important;
  }

  .banner-cover .has-large-font-size {
    font-size: 3.5vw !important;
  }

  .banner-cover .wp-block-button__link {
    padding: 10px 24px !important;
    font-size: 4vw !important;
  }

  .wp-block-cover__image-background {
    object-fit: cover !important;
    object-position: center center !important;
    width: 100% !important;
    height: 100% !important;
  }
}

@media (max-width: 768px) {
  .has-text-align-left.has-primary-color.has-text-color.has-abhaya-libre-font-family {
    font-size: 28px !important;
    line-height: 1.1 !important;
  }
}

/* biography */
@media (max-width: 768px) {
  .has-text-align-left.has-primary-color.has-text-color {
    font-size: clamp(20px, 5vw, 28px) !important;
    line-height: 1.2 !important;
    padding-top: 0.5rem !important;
  }
}
