/*
Theme Name: Jadro
Theme URI: https://wpshout.com/jadro/
Author: Jadro WP
Description: Jadro is a minimal and lightweight Full Site Editing theme. This speed optimized theme utilizes the WordPress blocks editor to create unique and eye-catching layouts. Jadro is perfect for blogs, small businesses, startups, law firms and other creative agencies who prefer simple and speed optimized websites.
Requires at least: 5.9
Tested up to: 6.2
Requires PHP: 5.6
Version: 1.0.2
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: jadro
Tags: one-column, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, rtl-language-support, theme-options, threaded-comments, translation-ready, blog, e-commerce, wide-blocks
*/
/* Box sizing
--------------------------------------------- */
/* Inherit box-sizing to more easily change it's value on a component level.
@link http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
*,
*::before,
*::after {
  box-sizing: inherit;
}

html {
  box-sizing: border-box;
}

body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Forms
--------------------------------------------- */
.button,
.button:visited,
button,
.wp-block-search__button,
input[type=button],
input[type=reset],
input[type=submit] {
  font-family: inherit;
  font-size: var(--wp--preset--font-size--base);
  border: none;
  border-radius: 5px;
  background: var(--wp--preset--color--primary);
  color: var(--wp--preset--color--background);
  line-height: 1;
  padding: calc(0.667em + 2px) calc(1.333em + 2px);
  -webkit-text-decoration: none;
  text-decoration: none;
  cursor: pointer;
  transition: 0.4s ease-in-out;
}

.button:active,
.button:focus,
button:active,
button:focus,
.wp-block-search__button:active,
.wp-block-search__button:focus,
input[type=button]:active,
input[type=button]:focus,
input[type=reset]:active,
input[type=reset]:focus,
input[type=submit]:active,
input[type=submit]:focus {
  background: var(--wp--preset--color--primary);
  color: var(--wp--preset--color--background);
}

input[type=text],
input[type=email],
input[type=url],
input[type=password],
input[type=search],
input[type=number],
input[type=tel],
input[type=range],
input[type=date],
input[type=month],
input[type=week],
input[type=time],
input[type=datetime],
input[type=datetime-local],
input[type=color],
select,
textarea {
  font-family: inherit;
  font-size: var(--wp--preset--font-size--base);
  color: var(--wp--preset--color--base);
  border: none;
  border: 1px solid var(--wp--preset--color--quinary);
  border-radius: 5px;
  padding: 0.5em;
  width: 100%;
}

input[type=text]:focus,
input[type=email]:focus,
input[type=url]:focus,
input[type=password]:focus,
input[type=search]:focus,
input[type=number]:focus,
input[type=tel]:focus,
input[type=range]:focus,
input[type=date]:focus,
input[type=month]:focus,
input[type=week]:focus,
input[type=time]:focus,
input[type=datetime]:focus,
input[type=datetime-local]:focus,
input[type=color]:focus,
select:focus,
textarea:focus {
  outline: 1px solid var(--wp--preset--color--secondary);
}

select {
  box-sizing: border-box;
  -webkit-appearance: none;
          appearance: none;
  background: transparent;
  background-image: url(assets/images/icon-downarrow.png);
  background-repeat: no-repeat;
  background-position: top 50% right 1em;
  background-size: 16px;
}

.select2-container--default .select2-selection--single {
  border: 1px solid var(--wp--preset--color--quinary);
  border-radius: 5px;
}

/* List
--------------------------------------------- */
ul li a,
ol li a,
.wp-block-site-title a,
.wp-block-post-title a,
.wp-block-query-pagination-numbers a,
.wp-block-post-excerpt a,
.wp-block-navigation ul,
.wp-block-navigation ul li,
.wp-block-navigation ul li a,
.wp-block-comment-author-name a,
.wp-block-comment-date a,
.wp-block-post-date a,
.wp-block-post-terms a,
.wp-block-post-author-name a,
footer ul li a {
  color: inherit;
  text-decoration: inherit;
}

.wp-block-navigation ul.wp-block-navigation-submenu {
  padding: 0;
}

/* Responsive menu styles
--------------------------------------------- */
.wp-block-navigation__responsive-container.is-menu-open.has-modal-open {
  padding-top: 30px;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item,
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container,
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-page-list {
  align-items: flex-start;
  width: 100%;
  gap: 30px;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-icon {
  display: flex;
  position: absolute;
  top: 10px;
  right: 0;
  width: auto;
  height: auto;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .has-child .wp-block-navigation__submenu-container {
  opacity: 0;
  visibility: hidden;
  position: absolute;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .has-child .wp-block-navigation-submenu__toggle:where([aria-expanded=true]) + .wp-block-navigation__submenu-container {
  opacity: 1;
  visibility: visible;
  position: static;
  padding-top: 0;
}

.page .wp-block-template-part,
.single .wp-block-template-part,
.archive .wp-block-template-part {
  margin-top: 0;
}

footer.wp-block-template-part {
  margin-top: 0;
}

nav.wp-block-query-pagination {
  margin-top: 6rem;
}

/* List styles
--------------------------------------------- */
ul,
ul.is-style-default,
ul.is-style-square {
  padding-left: 22px;
}

ol,
ol.is-style-default,
ol.is-style-square {
  padding-left: 22px;
}

ul.is-style-square {
  list-style-type: square;
}

.wp-block-navigation__submenu-icon svg {
  transition: stroke 0.2s;
  stroke: #222;
  stroke-width: 1.5 !important;
  fill: none;
}
.wp-block-navigation-item.has-child:hover .wp-block-navigation__submenu-icon svg,
.wp-block-navigation-item.has-child:focus .wp-block-navigation__submenu-icon svg,
.wp-block-navigation-item.has-child:active .wp-block-navigation__submenu-icon svg {
  stroke: #E49A2A !important;
  stroke-width: 1.5 !important;
  fill: none !important;
}


  .wp-block-navigation-item__content,
  .wp-block-navigation-item__label,
  .wp-block-navigation-link .wp-block-navigation-item__content {
    transition: color 0.2s, background 0.2s;
    background: transparent !important;
  }


  .wp-block-navigation-item__content:hover,
  .wp-block-navigation-item__content:focus,
  .wp-block-navigation-item__content:active,
  .wp-block-navigation-item__label:hover,
  .wp-block-navigation-item__label:focus,
  .wp-block-navigation-item__label:active,
  .wp-block-navigation-link .wp-block-navigation-item__content:hover,
  .wp-block-navigation-link .wp-block-navigation-item__content:focus,
  .wp-block-navigation-link .wp-block-navigation-item__content:active {
    color: #E49A2A !important;
    background: transparent !important;
  }


  .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover,
  .wp-block-navigation__submenu-container .wp-block-navigation-item__content:focus,
  .wp-block-navigation__submenu-container .wp-block-navigation-item__content:active {
    color: #E49A2A!important;
    background: transparent !important;
  }

  .wp-block-navigation__submenu-container {
    background: #fff;
  }

.is-style-checklist,
.is-style-checklist-circle,
.is-style-none {
  list-style: none;
  padding-left: 0;
}

.is-style-checklist li {
  display: flex;
  align-items: flex-start;
}

.is-style-checklist li::before {
  content: "";
  mask: url(assets/images/checklist.svg);
  -webkit-mask: url(assets/images/checklist.svg);
  height: 1.5em;
  width: 1.5em;
  min-height: 1.5em;
  min-width: 1.5em;
  background: currentcolor;
  align-self: center;
}

.is-style-checklist-circle li {
  display: flex;
  align-items: flex-start;
  column-gap: 8px;
}

.is-style-checklist-circle li::before {
  content: "";
  mask: url(assets/images/checklist-circle.svg);
  -webkit-mask: url(assets/images/checklist-circle.svg);
  height: 1em;
  width: 1em;
  min-height: 1em;
  min-width: 1em;
  background: currentcolor;
  align-self: center;
}

/* Button Block
--------------------------------------------- */
.button {
  line-height: 1;
  border-radius: 5px;
}

.wp-block-button[style*=text-decoration] .wp-block-button__link {
  text-underline-offset: 5px;
}

/* Separator Block
--------------------------------------------- */
hr.wp-block-separator.has-background {
  height: 2px !important;
}
hr.wp-block-separator.is-style-dots {
  height: auto !important;
}
hr.wp-block-separator.is-style-dotted {
  width: 100% !important;
  border-bottom: none !important;
  height: 1px !important;
  background: repeating-linear-gradient(90deg, currentcolor, currentcolor 2px, transparent 2px, transparent 6px) !important;
}
hr.wp-block-separator.is-style-wide-thin-line {
  height: 1px !important;
  border-width: 1px !important;
  width: 100% !important;
}
hr.wp-block-separator.is-style-left-aligned {
  margin-left: 0 !important;
}
hr.wp-block-separator.is-style-right-aligned {
  margin-right: 0 !important;
}

/* Comment styles
--------------------------------------------- */
.wp-block-comment-template li.comment > .wp-block-columns {
  column-gap: 12px !important;
}
.wp-block-comment-template .wp-block-comment-content {
  border-radius: 10px;
  margin-top: 20px !important;
  margin-bottom: 10px !important;
}

/* Single page and post styles
--------------------------------------------- */
.page .wp-block-post-content a,
.single-post .wp-block-post-content a {
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
}
.page .wp-block-post-content h1,
.page .wp-block-post-content h2,
.page .wp-block-post-content h3,
.page .wp-block-post-content h4,
.page .wp-block-post-content h5,
.page .wp-block-post-content h6,
.single-post .wp-block-post-content h1,
.single-post .wp-block-post-content h2,
.single-post .wp-block-post-content h3,
.single-post .wp-block-post-content h4,
.single-post .wp-block-post-content h5,
.single-post .wp-block-post-content h6 {
  text-underline-offset: 5px;
  text-decoration-thickness: 2px !important;
}
.page .wp-block-post-content h1 a,
.page .wp-block-post-content h2 a,
.page .wp-block-post-content h3 a,
.page .wp-block-post-content h4 a,
.page .wp-block-post-content h5 a,
.page .wp-block-post-content h6 a,
.single-post .wp-block-post-content h1 a,
.single-post .wp-block-post-content h2 a,
.single-post .wp-block-post-content h3 a,
.single-post .wp-block-post-content h4 a,
.single-post .wp-block-post-content h5 a,
.single-post .wp-block-post-content h6 a {
  color: inherit;
  text-underline-offset: 5px;
  text-decoration-thickness: 2px;
}

.single .wp-block-post-navigation-link a {
  color: inherit;
  text-decoration: inherit;
}

.berkas-legalitas {
  text-align: center;
}

.berkas-legalitas a.wp-block-button__link {
  border-radius: 10px;
  display: inline-block;
}

.ultp-block-items-wrap.ultp-pg1a-style1 {
  background: transparent !important;
}

.ultp-pg1a-style1 .ultp-block-item {
  background-color: #ffffff;
  border: 1px solid #d1d1d1;
  border-radius: 12px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
  overflow: hidden;
  padding: 0;
  display: flex;
  flex-direction: column;
}

.ultp-pg1a-style1 .ultp-block-item img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 12px 12px 0 0;
  margin: 0;
}

.ultp-pg1a-style1 .ultp-block-content {
  padding: 15px;
  text-align: center;
  background: #ffffff;
  border: 0 !important;
  box-shadow: none !important;
  margin: 0 !important;
}

.ultp-pg1a-style1 .ultp-block-title a {
  color: #000000;
  text-decoration: none;
  font-weight: 600;
}

.ultp-pg1a-style1 .ultp-block-item:hover {
  background-color: #ffffff;
  border-color: #d1d1d1;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
  transform: none;
}

.ultp-pg1a-style1 .ultp-block-content-wrap,
.ultp-pg1a-style1 .ultp-block-image {
  background: #ffffff !important;
  border: 0 !important;
  box-shadow: none !important;
  margin: 0 !important;
}

.ultp-pg1a-style1 .ultp-block-content-wrap {
  flex: 1 1 auto;
}

.ultp-pg1a-style1 .ultp-block-item::before,
.ultp-pg1a-style1 .ultp-block-item::after,
.ultp-pg1a-style1 .ultp-block-content::before,
.ultp-pg1a-style1 .ultp-block-content::after,
.ultp-pg1a-style1 .ultp-block-image::before,
.ultp-pg1a-style1 .ultp-block-image::after {
  content: none !important;
  border: 0 !important;
  box-shadow: none !important;
}

.srimas-carousel {
  position: relative;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0;
  overflow: visible;
}

.srimas-carousel .swiper {
  padding-bottom: 10px;
  overflow: hidden;
}

.srimas-card {
  border-radius: 16px;
  overflow: hidden;
  position: relative;
}

.srimas-card__media {
  position: relative;
  aspect-ratio: 16 / 12;
  overflow: hidden;
  border-radius: 16px;
}

.srimas-card__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.srimas-carousel {
  position: relative;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0;
  overflow: visible;
}

.srimas-carousel .swiper {
  padding-bottom: 10px;
  overflow: hidden;
}

.srimas-card {
  border-radius: 16px;
  overflow: hidden;
  position: relative;
}

.srimas-card__media {
  position: relative;
  aspect-ratio: 16 / 12;
  overflow: hidden;
  border-radius: 16px;
}

.srimas-card__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.srimas-card__overlay {
  position: absolute;
  left: 40px;
  right: 40px;
  top: 56px;
  bottom: 48px;
  background: rgba(255,255,255,0.75);
  border-radius: 12px;
  padding: 18px 20px 28px;
  color: #1b1b1b;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
}

.srimas-card__badge {
  position: absolute;
  top: 8px;
  left: 20px;
  background: #E49A2A;
  color: #fff;
  font-weight: 700;
  border-radius: 8px;
  padding: 6px 12px;
  font-size: 18px;
  line-height: 1;
  box-shadow: 0 2px 6px rgba(198,40,40,0.25);
}

.srimas-card__title {
  margin: 0 0 8px;
  font-size: 16px;
  font-weight: 700;
  color: #E49A2A;
}

.srimas-card__desc {
  margin: 0 0 8px;    
  font-size: 12px;
  line-height: 1.5;
  color: #333;
  white-space: normal;
  overflow: visible;
  text-overflow: unset;
  -webkit-line-clamp: unset;
  -webkit-box-orient: initial;
}

.srimas-card__overlay > p:last-child {
  margin-top: -10px;
}

.srimas-card__btn {
  display: inline-block;
  color: #E49A2A;
  font-weight: 700;
  text-decoration: none;
  text-transform: uppercase;
  font-size: 12px;
}

.srimas-carousel .swiper-button-prev,
.srimas-carousel .swiper-button-next {
  color: #fff;
  background: #E49A2A;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  box-shadow: 0 2px 8px rgba(0,0,0,0.15);
  top: 50%;
  margin-top: 0;
  transform: translateY(-50%);
  z-index: 10;
}

.srimas-carousel .swiper-button-prev { left: 10px; }
.srimas-carousel .swiper-button-next { right: 10px; }

.srimas-carousel .swiper-button-prev:after,
.srimas-carousel .swiper-button-next:after {
  font-size: 18px;
  font-weight: 700;
}

.srimas-carousel .swiper-pagination {
  display: none;
}

.srimas-carousel:not(.prestasi-carousel) .swiper-button-prev,
.srimas-carousel:not(.prestasi-carousel) .swiper-button-next {
  top: 50%;
  transform: translateY(-50%);
}

.srimas-carousel:not(.prestasi-carousel) .swiper-button-prev {
  left: -24px;
}

.srimas-carousel:not(.prestasi-carousel) .swiper-button-next {
  right: -24px;
}

@media (max-width: 767px) {
  .srimas-carousel { padding: 0 50px; }
  .srimas-card__media { aspect-ratio: 16 / 13; }
  .srimas-card__overlay { padding: 44px 16px 16px; min-height: 0; top: 16px; }
}

.srimas-carousel.prestasi-carousel {
  padding: 0;
}

.srimas-carousel.prestasi-carousel .srimas-card {
  border-radius: 24px;
  background: #ffffff;
  box-shadow: 0 4px 12px rgba(0,0,0,0.08);
  overflow: visible;
  transition: box-shadow .25s ease, transform .25s ease;
  display: flex;
  flex-direction: column;
  height: auto;
}

.srimas-carousel.prestasi-carousel .srimas-card__media {
  border-radius: 24px 24px 0 0;
  overflow: visible;
  aspect-ratio: auto;
  flex-shrink: 0;
}

.srimas-carousel.prestasi-carousel .srimas-card__img {
  width: 100%;
  height: auto;
  object-fit: cover;
  display: block;
  transition: transform .3s ease;
}

.srimas-carousel.prestasi-carousel .srimas-card__overlay {
  position: static;
  background: #ffffff;
  border-radius: 0 0 24px 24px;
  padding: 8px 12px;
  box-shadow: none;
  display: block;
  text-align: center;
  height: auto !important;
  min-height: 120px;
  flex-grow: 1;
}

.srimas-carousel.prestasi-carousel .srimas-card__badge,
.srimas-carousel.prestasi-carousel .srimas-card__desc {
  display: none;
}

.srimas-carousel.prestasi-carousel .srimas-card__title {
  margin: 4px 0 6px;
  font-size: 16px;
  font-weight: 600;
  color: #000000;
  display: block;
  white-space: normal;
  overflow: visible;
  text-overflow: unset;
  text-align: start;
}

.srimas-carousel.prestasi-carousel .srimas-card__btn {
  position: absolute;
  inset: 0;
  text-indent: -9999px;
  opacity: 0;
  pointer-events: none;
}

.srimas-carousel.prestasi-carousel .srimas-card:hover .srimas-card__img {
  transform: scale(1.05);
}

.srimas-carousel.prestasi-carousel .srimas-card:hover .srimas-card__overlay {
  background: #ffffff;
}

.srimas-carousel.prestasi-carousel .srimas-card:hover .srimas-card__title {
  color: #E49A2A;
}

.srimas-carousel.prestasi-carousel .srimas-card,
.srimas-carousel.prestasi-carousel .srimas-card__overlay,
.srimas-carousel.prestasi-carousel .srimas-card__title {
  cursor: pointer;
}

.srimas-carousel.prestasi-carousel .swiper-button-prev,
.srimas-carousel.prestasi-carousel .swiper-button-next {
  background: #E49A2A;
  color: #ffffff;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  box-shadow: 0 2px 8px rgba(0,0,0,0.15);
  top: 50%;
  transform: translateY(-50%);
}

.srimas-carousel.prestasi-carousel .swiper-button-prev { left: -24px; }
.srimas-carousel.prestasi-carousel .swiper-button-next { right: -24px; }

.srimas-carousel.prestasi-carousel .swiper-button-prev:after,
.srimas-carousel.prestasi-carousel .swiper-button-next:after {
  font-size: 16px;
  font-weight: 700;
}

.srimas-carousel.prestasi-carousel .swiper-slide {
  display: flex;
  height: auto !important;
}

@media (max-width: 767px) {
  .srimas-carousel.prestasi-carousel { padding: 0 16px; }
  .srimas-carousel.prestasi-carousel .swiper-button-prev { left: -8px; }
  .srimas-carousel.prestasi-carousel .swiper-button-next { right: -8px; }

  .srimas-carousel:not(.prestasi-carousel) { padding: 0 16px; }
  .srimas-carousel:not(.prestasi-carousel) .swiper-button-prev { left: -0px; }
  .srimas-carousel:not(.prestasi-carousel) .swiper-button-next { right: -0px; }
}

.form-kontak .wpforms-submit.btn-full,
.wpforms-form .btn-full {
  display: block;
  width: 100% !important;
  box-sizing: border-box;
}

.lang-dropdown {
  position: relative;
  font-family: inherit;
  margin: 0 16px 0 0;
  padding: 0;
}

.wp-block-navigation__container {
  display: flex;
  align-items: center;
}

.lang-current {
  display: flex;
  align-items: center;
  gap: 6px;
  cursor: pointer;
}

.lang-current img {
  width: 22px;
  height: 15px;
  object-fit: cover;
  border: 1px solid #ccc;
}

.lang-current .lang-code {
  font-size: 16px;
  font-weight: 500;
  color: #222;
}

.lang-arrow {
  margin-left: 4px;
  stroke: #222;
}

.lang-list {
  display: none;
  position: absolute;
  top: 120%;
  left: 0;
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 4px;
  box-shadow: 0 2px 6px rgba(0,0,0,0.1);
  list-style: none;
  padding: 6px 0;
  z-index: 10;
}

.lang-list li {
  padding: 4px 10px;
  display: flex;
  align-items: center;
  gap: 6px;
}

.lang-list li img {
  width: 22px;
  height: 15px;
  border: 1px solid #ccc;
}

.lang-list li a {
  color: #333;
  text-decoration: none;
  font-weight: 500;
  display: flex;
  align-items: center;
  gap: 6px;
}

.lang-list li:hover {
  background: #f5f5f5;
}