/*
Theme Name: JEM: Janilaw
Theme URI: 
Author: Mockingbird Marketing
Author URI: 
Description: A custom FSE theme developed for Jani Law.
Requires at least: 6.9
Tested up to: 6.9
Requires PHP: 5.7
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: jem-janilaw
Tags: 
*/

.entry-content * + h2, 
.entry-content * + h3, 
.entry-content * + h4, 
.entry-content * + h5, 
.entry-content * + h6 {
    margin-block-start: calc(0.375em + var(--wp--style--block-gap));
}

:where(.wp-site-blocks) > * {
    margin-block-start: 0;
}

select {
  appearance: base-select;
  align-items: center;
}

select::picker-icon {
  width: 1.25em;
  height: 1.25em;

  background-color: currentColor;

  -webkit-mask-image: var(--jem-theme-path--icon-angle-down);
  mask-image: var(--jem-theme-path--icon-angle-down);

  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;

  -webkit-mask-size: contain;
  mask-size: contain;
}

select,
input[type="search"] {
    width: 100%;
    height: 3.25rem;
    padding: 0.5rem;
    background-color: color-mix(in srgb, currentColor 5%, transparent);
    border: 1px solid color-mix(in srgb, currentColor 20%, transparent);
    border-radius: var(--wp--custom--radius--s);
    color: currentColor;
}

form input[type="text"],
form input[type="email"],
form input[type="url"],
form input[type="tel"],
form input[type="password"],
form textarea,
form select {
    width: 100%;
    min-height: 40px;
    padding: 0.5rem;
    background-color: color-mix(in srgb, currentColor 5%, transparent);
    border: 1px solid color-mix(in srgb, currentColor 20%, transparent);
    border-radius: var(--wp--custom--radius--xs);
    color: currentColor;
    font-family: var(--wp--preset--font-family--work-sans);
}

form input[type="submit"] {
    padding: 0.75rem 1.5rem;
    background-color: var(--wp--preset--color--brand-primary);
    border: none;
    border-radius: var(--wp--custom--radius--s);
    color: #fff;
    font-family: var(--wp--preset--font-family--work-sans);
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.gform_wrapper.gravity-theme .gform_fields {
    grid-row-gap: var(--wp--preset--spacing--m) !important;
}

.gform_wrapper.gravity-theme .gfield_label {
    font-weight: 500 !important;
    line-height: 1.3;
    margin-bottom: 4px;
}

.wp-block-button,
.wp-block-button__link {
    transition: all .25s ease;
}

.wp-block-categories-dropdown {
    position: relative;
}

.wp-block-search__inside-wrapper {
    width: 100%;
    height: 3.25rem;
    background-color: color-mix(in srgb, currentColor 5%, transparent);
    border: 1px solid color-mix(in srgb, currentColor 20%, transparent);
    border-radius: var(--wp--custom--radius--s);
}

.wp-block-search__inside-wrapper .wp-block-search__button.has-icon {
    line-height: 0;
    padding: 0 0.625rem;
    border-radius: var(--wp--custom--radius--xs);
}

.wp-block-search__inside-wrapper input[type="search"] {
    width: 100%;
    height: 100%;
    padding: 0.5rem;
    background: transparent;
    border: none;
    border-radius: none;
}

.wp-block-media-text.has-media-on-the-right .wp-block-media-text__content {
    padding-left: 0;
}

.wp-block-media-text.has-media-on-the-left .wp-block-media-text__content {
    padding-right: 0;
}

@media (max-width: 600px) {
    .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content {
        padding-right: 0;
    }
    .wp-block-media-text.has-media-on-the-left .wp-block-media-text__content {
        padding-left: 0;
    }
}

/* .jem-post-meta > *:not(:first-of-type)::before {
    content: '|';
    padding-right: 1rem;
    display: inline-block;
} */

.entry-content * + h2, 
.entry-content * + h3, 
.entry-content * + h4, 
.entry-content * + h5, 
.entry-content * + h6 {
    margin-block-start: calc(0.375em + var(--wp--style--block-gap));
}

:where(.wp-site-blocks) > * {
    margin-block-start: 0;
}

select {
  appearance: base-select;
  align-items: center;
}

select::picker-icon {
  width: 1.25em;
  height: 1.25em;

  background-color: currentColor;

  -webkit-mask-image: var(--jem-theme-path--icon-angle-down);
  mask-image: var(--jem-theme-path--icon-angle-down);

  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;

  -webkit-mask-size: contain;
  mask-size: contain;
}

select,
input[type="search"] {
    width: 100%;
    height: 3.25rem;
    padding: 0.5rem;
    background-color: color-mix(in srgb, currentColor 5%, transparent);
    border: 1px solid color-mix(in srgb, currentColor 20%, transparent);
    border-radius: var(--wp--custom--radius--s);
    color: currentColor;
}

form input[type="text"],
form input[type="email"],
form input[type="url"],
form input[type="tel"],
form input[type="password"],
form textarea {
    width: 100%;
    min-height: 40px;
    padding: 0.5rem;
    background-color: color-mix(in srgb, currentColor 5%, transparent);
    border: 1px solid color-mix(in srgb, currentColor 20%, transparent);
    border-radius: var(--wp--custom--radius--xs);
    color: currentColor;
    font-family: var(--wp--preset--font-family--work-sans);
}

form input[type="submit"] {
    padding: 0.75rem 1.5rem;
    background-color: var(--wp--preset--color--brand-primary);
    border: none;
    border-radius: var(--wp--custom--radius--s);
    color: #fff;
    font-family: var(--wp--preset--font-family--work-sans);
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.gform_wrapper.gravity-theme .gform_fields {
    grid-row-gap: var(--wp--preset--spacing--m) !important;
}

.gform_wrapper.gravity-theme .gfield_label {
    font-weight: 500 !important;
    line-height: 1.3;
    margin-bottom: 4px;
}

.wp-block-button,
.wp-block-button__link {
    transition: all .25s ease;
}

.wp-block-categories-dropdown {
    position: relative;
}

.wp-block-search__inside-wrapper {
    width: 100%;
    height: 3.25rem;
    background-color: color-mix(in srgb, currentColor 5%, transparent);
    border: 1px solid color-mix(in srgb, currentColor 20%, transparent);
    border-radius: var(--wp--custom--radius--s);
}

.wp-block-search__inside-wrapper .wp-block-search__button.has-icon {
    line-height: 0;
    padding: 0 0.625rem;
    border-radius: var(--wp--custom--radius--xs);
}

.wp-block-search__inside-wrapper input[type="search"] {
    width: 100%;
    height: 100%;
    padding: 0.5rem;
    background: transparent;
    border: none;
    border-radius: none;
}

.wp-block-media-text.has-media-on-the-right .wp-block-media-text__content {
    padding-left: 0;
}

.wp-block-media-text.has-media-on-the-left .wp-block-media-text__content {
    padding-right: 0;
}

@media (max-width: 600px) {
    .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content {
        padding-right: 0;
    }
    .wp-block-media-text.has-media-on-the-left .wp-block-media-text__content {
        padding-left: 0;
    }
}

/* .jem-post-meta > *:not(:first-of-type)::before {
    content: '|';
    padding-right: 1rem;
    display: inline-block;
} */

a {
    text-underline-offset: 0.25em;
    text-decoration-thickness: 0.1em;
}

/* ul {
    list-style-type: none;
    padding-left: 1em;
}

ul li::marker {
  content: "• ";
  color: var(--wp--preset--color--brand-primary);    
} */

ul.jem-list-unstyled {
    list-style-type: none;
    padding-left: 0;
}

ul.jem-list-unstyled li::marker {
    content: "";
}

ul.jem-list-arrow li::marker{
    content: "▸ ";
}

ul.jem-list-checkbox li::marker{
    content: "☑ ";
}

ul.jem-list-chevron li::marker{
    content: "» ";
}

.jem-list-has-icon {
    list-style-type: none;
    padding-left: 0;
}

.jem-list-has-icon--checkmark {
    list-style-type: none;
    padding-left: 0;
}

.jem-list-has-icon--chevron {
    list-style-type: none;
    padding-left: 0;
}

/* .jem-button-has-icon {

}

.jem-icon__arrow-right {

}

.jem-icon__chevron-right {

}

.jem-icon__checkmark {

} */

.jem-testimonial {
    position: relative
}

.jem-card {
    position: relative;
}

.jem-card:has(.jem-testimonial) {
    overflow: hidden;
}

.jem-card:has(.jem-testimonial) .jem-testimonial::before {
    content: "“";
    position: absolute;
    top: -308px;
    left: -36px;
    font-size: 600px;
    color: color-mix(in srgb, currentColor 7%, transparent);
}

.jem-card:has(.jem-testimonial) .jem-card__content.jem-testimonial {
    padding-top: 3rem !important
}

html {
  scroll-behavior: smooth;
}

.jem-toc-list {
    list-style: none;
    padding-left: 0;
}

.jem-toc-list li {
    line-height: 1.3;
    margin-block-start: 1rem;
}

.jem-toc-list li::marker {
    content: none;
    display: none;
}

.jem-toc-h2 {
    font-size: var(--wp--preset--font-size--body-s);
}

.jem-toc-h3 {
    margin-left: 1rem;
    font-size: var(--wp--preset--font-size--body-s);
}

.jem-toc-h4 {
    margin-left: 1.5rem;
    font-size: var(--wp--preset--font-size--body-s);
}

.jem-toc-list a {
    color: var(--wp--preset--color--base-500);
    text-decoration: none;
}

.jem-toc-list a.active {
    color: var(--wp--preset--color--brand-primary);
    font-weight: 500;
}

.jem-post-meta .wp-block-post-date,
.jem-post-meta .wp-block-post-author-name,
.jem-post-meta .wp-block-post-time-to-read {
    display: flex;
    align-items: center;
    gap: 0.35em;
}

.jem-post-meta .wp-block-post-date::before,
.jem-post-meta .wp-block-post-author-name::before,
.jem-post-meta .wp-block-post-time-to-read::before {
    content: "";
    display: inline-block;
    width: 1em;
    height: 1em;
    background-color: currentColor;
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
}

/* :root {
    --jem-theme-path--icon-calendar: url("/wp-content/themes/jem-janilaw/assets/icons/calendar.svg");
    --jem-theme-path--icon-profile: url("/wp-content/themes/jem-janilaw/assets/icons/profile.svg");
    --jem-theme-path--icon-clock: url("/wp-content/themes/jem-janilaw/assets/icons/clock.svg");
} */

.jem-post-meta .wp-block-post-date::before {
    -webkit-mask-image: var(--jem-theme-path--icon-calendar);
    mask-image: var(--jem-theme-path--icon-calendar);
}

.jem-post-meta .wp-block-post-author-name::before {
    -webkit-mask-image: var(--jem-theme-path--icon-profile);
    mask-image: var(--jem-theme-path--icon-profile);
}

.jem-post-meta .wp-block-post-time-to-read::before {
    -webkit-mask-image: var(--jem-theme-path--icon-clock);
    mask-image: var(--jem-theme-path--icon-clock);
}

.jem-post-share {
    display: flex;
    align-items: center;
    gap: 0.35em;
}

.jem-post-share::before {
    -webkit-mask-image: var(--jem-theme-path--icon-upload);
    mask-image: var(--jem-theme-path--icon-upload);
}

.jem-link-has-icon {
    display: inline-flex;
    align-items: center;
    position: relative;
    padding-right: 1.75em;
}

.jem-link-has-icon a {
    text-decoration: none;
}

.jem-link-has-icon::after {
    content: "";
    position: absolute;
    display: inline-block;
    width: 1.5em;
    height: 1em;
    right: 0;
    background-color: currentColor;
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-image: var(--jem-theme-path--icon-arrow-right);
    mask-image: var(--jem-theme-path--icon-arrow-right);
    transform: translateX(0);
    transition: transform 0.3s ease;
}

.jem-link-has-icon:hover::after {
    transform: translateX(0.25em);
}

/* Jem Toolkit Blocks */
.wp-block-jem-toolkit-team-member-email a,
.wp-block-jem-toolkit-team-member-phone a {
    display: inline-flex;
    align-items: center;
    gap: 0.5em;
    text-decoration: none;
}

.wp-block-jem-toolkit-team-member-email a::before,
.wp-block-jem-toolkit-team-member-phone a::before {
    content: "";
    display: inline-block;
    width: 1em;
    height: 1em;
    background-color: currentColor;
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    
}

.wp-block-jem-toolkit-team-member-email a::before {
    -webkit-mask-image: var(--jem-theme-path--icon-envelope);
    mask-image: var(--jem-theme-path--icon-envelope);
}

.wp-block-jem-toolkit-team-member-phone a::before {
    -webkit-mask-image: var(--jem-theme-path--icon-phone);
    mask-image: var(--jem-theme-path--icon-phone);
}

@media (min-width: 782px) {
    .jem-team-member-offset-margin-bottom {
        margin-block-end: -200px !important;
    }
    .jem-team-member-offset-margin-top {
        margin-block-start: 200px !important;
    }
    .single-jem_team_member .wp-block-post-title {
        margin-block-start: var(--wp--preset--spacing--m) !important;
    }
}
