/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */
.programme-card {
  width: 100%;
    height: auto;
    position: relative;
    overflow: hidden;
    transition: transform 0.4s ease;
    padding-bottom: 50px;
}
.programm_bg
{
    background-color: #F0F0FF;
    border-radius: 20px;
    padding: 30px 20px 20px;
    position: relative;
    overflow: hidden;
    transition: transform 0.4s 
ease;
    border: 1px solid #001F1F14;
}
/* Title */
.programme-card h2 {
  font-family: "Inter", Sans-serif;
    font-size: 30px;
    font-weight: 500;
    color: #1E1E1E;
    padding: 0 0 6px;
}

/* Scrollable list */
.features {
  list-style: none;
  padding: 0;
  margin: 0;
  height: 240px;
  overflow-y: auto;
}
.learn-press-courses
{
  gap: 0px !important;
}
/* Custom scrollbar */
.features::-webkit-scrollbar {
  width: 0px;
}
.features::-webkit-scrollbar-thumb {
  background: #fff;
  border-radius: 10px;
}
.single .site-hero .lead
{
font-size: 17.4px;
}
.single .site-hero h1
{
  font-size: 32px;
}
.meta-item .icon img{
  margin-top: 5px;
}
.info-metas
{
  display: none;
}

.course-info {
    max-width: 450px;
    background: transparent;
    padding: 0;
}

.course-info .info-item {
    display: flex;
    align-items: center;
    margin-bottom: 7px;
}

.course-info .icon {
    width: 36px;
}
.lp-single-course .lp-single-course-main .course-img img
{
  border-radius: 12px;
}
.course-info .text {
    display: flex;
    gap: 10px;
    font-size: 22px;
}
.course-info .icon img{
  margin-top: 7px;
}
.course-info .label {
    font-weight: 600;
    color: #1E1E1E;
    font-size: 16px;
    font-family: "Instrument Sans", Sans-serif;
}
.lp-single-course .lp-single-course-main .course-img
{
  margin: -20px 0px 20px 0px !important;
}
.course-info .value {
   font-weight: 500;
    color: #1E1E1ECC;
    font-family: "Instrument Sans", Sans-serif;
    font-size: 16px;
}
.single-lp_course .badge {
    background: #FFE015;
    color: #1E1E1E;
    font-size: 12px;
    font-weight: 500;
    padding: 5px 10px;
    border-radius: 4px;
    border: none;
}
/* List animation */
.features li {
  position: relative;
  padding-left: 32px;
  margin-bottom: 14px;
  color: #b44cff;
  line-height: 1.6;
  transition: all 0.3s ease;
  font-family: "Instrument Sans", Sans-serif;
    font-size: 18px;
    font-weight: 500;
    padding-bottom: 8px;
    min-height: 35px;
}
.programme-card h2
{
    background-image: url(http://shine.stringlab.org/wp-content/uploads/2026/01/Background_.png);
    background-position: top right;
    background-repeat: no-repeat;
    background-size: 30px;
}
.elementor-17 .elementor-element.elementor-element-59e8d6f .programme-card h2
{
    background-image: url(http://shine.stringlab.org/wp-content/uploads/2026/01/Background-1.png);
    background-position: top right;
    background-repeat: no-repeat;
    background-size: 30px;
}
.learnpress-checkout .lp-content-area {
    max-width: 100% !important;
    margin: 0 auto;
    padding-right: 0;
    padding-left: 0;
}
.learnpress-checkout .container {
    width: 1240px;
    margin: auto;
    padding: 40px 20px;
}
.learnpress-checkout a {
    background-color: transparent;
    color: #B50AF1;
    text-decoration: none;
}
.learnpress-checkout  h1.lp-content-area
{
display: none;
}
.lp-checkout-form a {
    color: #F1DA42;
    padding-bottom: 20px;
    display: inline-block;
}
.lp-terms-and-conditions a {
    color: #F1DA42;
}
.post-type-archive-tribe_events .site-main
{
 max-width: 100% !important;
}
.elementor-17 .elementor-element.elementor-element-59e8d6f .programm_bg
{
    background-color: #FFFBE2;
}
.elementor-17 .elementor-element.elementor-element-59e8d6f .features li
{
color: #DBBF00;
}
.elementor-17 .elementor-element.elementor-element-59e8d6f .features li::before
{
color: #DBBF00;
background: #DBBF0038;
}
.elementor-17 .elementor-element.elementor-element-59e8d6f .programme-card .btn
{
    background: #DBBF0038;
    color: #DBBF00;
}
.elementor-17 .elementor-element.elementor-element-59e8d6f .tagline p {
    font-family: "Inter", Sans-serif;
    font-size: 19.1px;
    font-weight: 400;
    padding: 20px 5px 0px;
    color: #DBBF00;
}
.features li::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 3px;
  width: 22px;
  height: 22px;
  background: #e6dcff;
  color: #9b4dff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
}
.ekit-wid-con .image-box-img-center img
{
  max-height: 210px;
}
.story_content
{
  display: none;
}
.modal-body .mf-form-shortcode
{
  height: 400px;
    overflow: scroll;
}
/* CTA wrapper */
.programme-card .cta {
  position: absolute;
  bottom: 1px;
  left: 0;
  width: 100%;
  padding: 0px;
  opacity: 0;
  /*transition: all 0.45s ease;*/
  z-index: -999999999999;
}
/* Show on card hover */
.programme-card:hover .cta {
  bottom: 1px;
  opacity: 1;
}
/* Button default */
.programme-card .btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  height: 65px;
  background: #F2CDFF;
  color: #9b2cff;
  font-size: 20px;
  font-weight: 600;
  text-decoration: none;
  border-radius: 0px 0 12px 12px;
  transition: all 0.4s ease;
  font-family: "Instrument Sans", Sans-serif;
  font-size: 16px;
  font-weight: 500;
  
}
.lp-courses-bar .switch-layout
{
  display: none !important;
}
.course-wrap-meta, .learn-press-courses .course-instructor-category
{
  display: none !important;
}
.elementor-heading-title sub{
  font-size: 18px;
    font-weight: 400;
}
.classlist ul
{
 margin: 0px;
 padding: 0 0 0 20px;
}
.classlist ul li{
  padding-bottom: 5px;
}
ul.learn-press-breadcrumb
{
  display: none;
}
.post-type-archive-lp_course .container {
    width: 1240px;
    margin: auto;
    padding: 40px 20px;
}
.post-type-archive-tribe_events .container {
    width: 1240px;
    margin: auto;
    padding: 40px 20px;
}
.tax-course_category .container {
    width: 1240px;
    margin: auto;
    padding: 40px 20px;
}
.lp-courses-bar
{
  border-bottom: 1px solid #e2e0db;
    padding-bottom: 20px;
    display: none !important;
}
.filters form{
  display: flex;
    gap: 12px;
    flex-wrap: nowrap;
}
.submit_filter
{
  border: 1px solid #F1DA42;
    background: #F1DA42;
    padding: 0px 30px;
}
.learn-press-courses[data-layout=grid] .course-content .course-excerpt, .learn-press-courses[data-layout=grid] .course-content .course-short-description, .learn-press-courses.lp-courses-related .course-content .course-excerpt, .learn-press-courses.lp-courses-related .course-content .course-short-description
{
  display: block !important;
}
/* Arrow animation */
.programme-card 
.btn span {
  transition: transform 0.3s ease;
}

/* Hover state (matches image) */
.programme-card:hover .btn {
  background: #e6a4ff;
}
.learn-press-courses .course-content .course-readmore a {
    padding: 8px 24px;
    border-radius: 6px;
    color: #1E1E1E !important;
    border: 1px solid #F1DA42 !important;
    transition: all .3s;
    display: block;
    background: #F1DA42 !important;
    text-decoration: none;
    text-align: center;
    font-size: 15px;
    font-weight: 500;
    font-family: "Instrument Sans", Sans-serif;
}.learn-press-courses .course-content .course-readmore a:hover {
    background: transparent !important;
    color: #F1DA42 !important;
    border: 1px solid #F1DA42 !important;
}
/* Arrow slide */
.programme-card:hover .btn span {
  transform: translateX(6px);
}
.tagline p{
    font-family: "Inter", Sans-serif;
    font-size: 19.1px;
    font-weight: 400;
    padding: 20px 5px 0px;
    color: #B50AF1;
}

.list-mask {
  position: relative;
  height: 240px;
  overflow: hidden;
}
.course-img
{
position: relative;
}
.exam_tag
{
  background: #F1DA42;
    position: absolute;
    z-index: 9;
    top: 8px;
    right: 11px;
   width: auto;
    padding: 4px 10px;
    text-align: center;
    border-radius: 6px;
    color: #1E1E1E;
    font-weight: 600;
}
/* Scrollable list */
.list-mask .features {
  height: 100%;
  overflow-y: auto;
  padding-right: 8px;
}
 /* Select2 multiple look — tag area and dropdown with checkbox-like appearance */
#courseyear + .select2-container--default .select2-selection--multiple,
.select2-container--default .select2-selection--multiple {
  min-height: 44px;
  padding: 6px 8px;
  border-radius: 8px;
  border: 1px solid #E6E9EE;
  background: #fff;
  height: 44px;
  overflow: scroll;
}

.select2-selection__choice {
  background: #F2CDFF;
  color: #1E1E1E;
  border: none;
  border-radius: 999px;
  padding: 4px 10px;
  margin-right: 6px;
  font-weight: 600;
}
/* ...existing code... */

/* Ensure the filter container is the positioned parent for the Select2 dropdown */
.course-filter-bar .filters {
  position: relative;    /* parent for absolute dropdown */
  overflow: visible;     /* allow dropdown to overflow */
  z-index: 1;
}

/* Make select2 selection area fit */
.course-filter-bar .filters .select2-container--default .select2-selection--multiple,
.course-filter-bar .filters #courseyear + .select2-container--default .select2-selection--multiple {
  min-height: 44px;
  padding: 6px 8px;
  border-radius: 8px;
  border: 1px solid #E6E9EE;
  background: #fff;
}

/* Dropdown appended to the relative parent — absolute positioning */
.course-filter-bar .filters .select2-container--open .select2-dropdown {
  position: absolute;
  left: 0;
  top: calc(100% + 8px);
  width: 320px; /* adjust as needed (use 100% to match parent width) */
  border-radius: 8px;
  box-shadow: 0 6px 18px rgba(0,0,0,0.12);
  z-index: 99999;
  overflow: hidden;
}

/* keep dropdown results scrollable */
.course-filter-bar .filters .select2-dropdown .select2-results__options {
  max-height: 260px;
  overflow-y: auto;
 padding: 0px;
}
.tec-events-category-color-filter__dropdown, .tribe-events-c-subscribe-dropdown__container
{
  display: none !important;
}
.select2-container--default .select2-results__option[aria-selected=true]
{
  background-color: transparent !important;
}
.tribe-common--breakpoint-medium.tribe-events .tribe-events-l-container
{
  padding-bottom: 0px;
  padding-top: 0px;
}
.custom-event-view-switch {
    display: inline-flex;
    border: 2px dashed #2b7cff;
    padding: 10px;
    background: #f3f3f3;
}

.view-btn {
    padding: 10px 25px;
    text-decoration: none;
    font-weight: 600;
    border-radius: 6px;
    margin-right: 10px;
}

.month-btn {
    background: #f4d44d;
    color: #000;
}

.agenda-btn {
    background: #fff;
    border: 2px solid #2b7cff;
    color: #333;
}
/* dropdown list option with pseudo-checkbox space (checkbox markup added via JS) */
.select2-container--default .select2-results__option .select2-option-checkbox {
  display: inline-block;
  width: 18px;
  height: 18px;
  border-radius: 4px;
  border: 1px solid #d1d5db;
  margin-right: 8px;
  vertical-align: middle;
  background: #fff;
}
.select2-container--default .select2-results__option[aria-selected="true"] .select2-option-checkbox {
  background: #F1DA42;
  border-color: #F1DA42;
  box-shadow: inset 0 0 0 3px white;
}

/* better spacing inside dropdown */
.select2-container--default .select2-results__options li {
padding: 8px 6px;
    list-style: none;
}

/* keep dropdown open-friendly for multi-select */
.select2-container--open .select2-dropdown {
  border-radius: 8px;
  overflow: hidden;
}
/* Top fade */
.list-mask::before,
.list-mask::after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  height: 40px;
  pointer-events: none;
  z-index: 2;
}
.select2-container--default .select2-results__option--highlighted[aria-selected] {
    background-color: #F1DA42 !important;
    color: white;
}
/* Top gradient */
.list-mask::before {
  top: -20px;
  background: linear-gradient(
    to bottom,
    #f3f1ff 0%,
    rgba(243, 241, 255, 0) 100%
  );
}

/* Bottom gradient */
.list-mask::after {
  bottom: -12px;
  background: linear-gradient(
    to top,
    #f3f1ff 0%,
    rgba(243, 241, 255, 0) 100%
  );
}

/* Top gradient */
.elementor-17 .elementor-element.elementor-element-59e8d6f .list-mask::before {
  top: -20px;
  background: linear-gradient(
    to bottom,
    #FFFBE2 0%,
    rgba(243, 241, 255, 0) 100%
  );
}

/* Bottom gradient */
.elementor-17 .elementor-element.elementor-element-59e8d6f .list-mask::after {
  bottom: -15px;
  background: linear-gradient(
    to top,
    #FFFBE2 0%,
    rgba(243, 241, 255, 0) 100%
  );
}
.elementor-297 .elementor-element.elementor-element-0961fa3.elementor-element a{
  color: #fff;
}
.elementor-297 .elementor-element.elementor-element-0961fa3.elementor-element a:hover{
  color: #B50AF1;
}
.elementor-71 .elementor-element.elementor-element-1569337 .elementskit-info-image-box:hover.elementskit-box-body {
    position: relative;
    display: inline-block;
    text-decoration: none;
    overflow: hidden;
    z-index: 1;
    transition: color 0.3s 
ease;
}
.elementor-71 .elementor-element.elementor-element-1569337 .elementskit-info-image-box:hover .elementskit-box-body::before {
    transform: translateY(0);
}
.elementor-71 .elementor-element.elementor-element-1569337 .elementskit-info-image-box .elementskit-box-body::before {
    content: "";
    position: absolute;
    inset: 0;
    background: #F1DA42;
    transform: translateY(100%);
    transition: transform 0.35s 
ease;
    z-index: -1;
}

.timeline-wrapper {
    position: relative;
    max-width: 1240px;
    margin: 0 auto;
}

/* The vertical line in the middle */
.center-line {
    position: absolute;
    left: 50%;
    width: 2px;
    top: 0;
    bottom: 0;
    background: #333;
    transform: translateX(-50%);
}

.timeline-grid {
    display: grid;
    grid-template-columns: 1fr 1fr; /* Two equal columns */
    gap: 40px 100px; /* Vertical gap, Horizontal gap */
    align-items: center;
}

.media-box img {
    width: 100%;
    border-radius: 15px;
    display: block;
}

.text-box {
    padding: 20px 0;
}

.text-box.text-right {
    text-align: left;
}

.year {
   font-family: "Jost", Sans-serif;
    font-size: 16px;
    font-weight: 500;
    color: #FFFFFF;
    margin-bottom: 15px;
    display: block;
}

.timeline-wrapper h3 {
   font-family: "Instrument Sans", Sans-serif;
    font-size: 25px;
    font-weight: 700;
    color: #FFFFFF;
}

.timeline-wrapper p {
   font-family: "Instrument Sans", Sans-serif;
    font-size: 17px;
    font-weight: 400;
    color: #FFFFFF;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .center-line { left: 20px; }
    
    .timeline-grid {
        grid-template-columns: 1fr; /* Stack into one column */
        gap: 30px;
    }

    .text-box.text-right {
        text-align: left; /* Reset text alignment for mobile */
    }

    /* Force the order so Image always stays above Text on mobile */
    .timeline-grid div {
        order: initial !important;
    }
}

.page-wrapper-content{
    display: flex;
    max-width: 1240px;
    margin: 40px auto;
    gap: 40px;
}
.multiselect-container {
    position: absolute;
    list-style-type: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
/* TOC */
.toc {
   width: 340px;
    position: sticky;
    top: 40px;          /* distance from top when it sticks */
    align-self: flex-start;
    height: max-content;
    padding-left: 0px;
    background: #fff;
}

.toc h3 {
   margin-bottom: 15px;
    font-size: 24px;
    font-family: "Instrument Sans", Sans-serif;
    font-weight: 700;
}

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

.toc li {
    margin-bottom: 15px;
}

.toc a {
    text-decoration: none;
    color: #1E1E1E99;
    font-size: 15px;
    padding-left: 0px;
    display: block;
    border-left: 3px solid transparent;
    transition: 0.3s;
    font-family: "Instrument Sans", Sans-serif;
}
.toc a:hover{
  color: #000;
    font-weight: 500;
}
.toc a.active {
    color: #000;
    font-weight: 500;
}

/* Content */
.page-wrapper-content .content {
    flex: 1;
}

.page-wrapper-content section {
    padding: 0 0 15px 0;
}

.page-wrapper-content section h2 {
    font-size: 30px;
    margin-bottom: 15px;
    color: #1E1E1E;
    font-family: "Instrument Sans", Sans-serif;
    font-weight: 600;
}

.page-wrapper-content section p,
.page-wrapper-content section li {
   font-size: 18px;
    line-height: 1.6;
    font-weight: 400;
    font-family: "Instrument Sans", Sans-serif;
}
.page-wrapper-content section ul{
  padding-bottom: 15px;
}
.course-tabs {
  display: flex;
  gap: 20px;
  border-radius: 14px;
  width: fit-content;
}

.tab-btn {
padding: 12px 30px;
    font-size: 15px;
  font-weight: 500;
  background: transparent;
  border: 1px solid #1E1E1E;
  border-radius: 6px;
  cursor: pointer;
  transition: all 0.3s ease;
  width: 174px;
  font-family: "Instrument Sans", Sans-serif;
}
.tab-btn:hover{
  background: #ffe44d;
}
.tab-btn a{
color: #1E1E1E;
}
.tag{
  display: flex;
  gap: 20px;
  padding: 20px 0;
}
.tag a
{
  background-color: #7171711A;
    font-family: "Instrument Sans", Sans-serif;
    font-size: 13px;
    font-weight: 600;
    fill: #717171;
    color: #717171;
    border-style: solid;
    border-width: 1px 1px 1px 1px;
    border-color: #71717133;
    border-radius: 4px 4px 4px 4px;
    padding: 9px 12px 6px 12px;
}
.teamdata ul{
  margin:0px;
  padding: 0px 0 0 20px;
}
.teamdetails
{
  opacity: 0;
  visibility: hidden;
  position: absolute;
    bottom: 0;
    background: #fff;
     transition: opacity 0.4s ease-in-out, visibility 0.4s ease-in-out !important;

}
.teamdata:hover .teamdetails
{
opacity: 1;
visibility: visible;
}
.teamdetails h2 {
font-family: "Instrument Sans", Sans-serif;
    font-size: 20px;
    font-weight: 600;
    color: #1E1E1E;
   padding-left: 10px;
    padding-top: 5px;
    margin-bottom: 10px;
}
.teamdata img{
  filter: grayscale(100%);
  transition: filter 0.4s ease;
}
.teamdata:hover img{
  filter: grayscale(0%);
}
.page-id-2167 .header, .page-id-2167 .ekit-template-content-footer
{
  display: none;
}
.page-id-2240 .header, .page-id-2240 .ekit-template-content-footer
{
  display: none;
}
.learn-press-form ul
{
  margin: 0px;
  padding: 0px;
  width: 95%;
}
.learn-press-form ul li{
  list-style: none;
  margin-bottom: 15px;
}
.learn-press-form ul li label {
  display: block;
  margin-bottom: 5px;
  font-size: 16px;
    color: #1E1E1E;
    font-weight: 600;
    padding-bottom: 0px;
    font-family: "Instrument Sans", Sans-serif;
}
.learn-press-form ul li input[type="text"],
.learn-press-form ul li input[type="password"] {
  width: 100%;
  padding: 10px 15px !important;
  border: 1px solid #EDEDED;
  border-radius: 10px;
  font-size: 16px;
  font-family: "Instrument Sans", Sans-serif;
  color: #1E1E1E;
}
.learn-press-form ul li input[type="text"]:focus,
.learn-press-form ul li input[type="password"]:focus {
  border-color: #1E1E1E;
  outline: none;
}
.select2-container--default .select2-search--inline .select2-search__field
{
  width: 140px !important;
}
span.selection
{
  width: 140px !important;
  display: block;
}
.learn-press-form p button {
  width: 95%;
  padding: 15px;
  background: #1C2D4A !important;
  color: #fff;
  border: none;
    border-radius: 10px;
    font-size: 18.33px;
    font-family: "Instrument Sans", Sans-serif;
}
.learn-press-form p button:hover {
  background: #B50AF1 !important;
}
.learn-press-form p a{
  font-family: "Instrument Sans", Sans-serif;
    font-size: 16px;
    font-weight: 400;
    color: #1E1E1E;
}
.learn-press-form p a:hover{
  font-family: "Instrument Sans", Sans-serif;
    font-size: 16px;
    font-weight: 400;
    color: #B50AF1;
}

.learn-press-message.error
{
  color: #f00;
  font-family: "Instrument Sans", Sans-serif;
    font-size: 16px;
}
.elementor-2167 .elementor-element.elementor-element-a0fd9c0 a{
  color: #1E1E1E;
}
.jobs-wrapper {
  max-width: 1240px;
  margin: auto;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.job-card {
  background: #2a2a2a;
  border-radius: 14px;
  padding: 24px 28px;
  
  border: 1px solid #3a3a3a;
}
.job-card a{
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.company {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #cfcfcf;
  font-size: 14px;
}

.company .icon {
  font-size: 16px;
}

.title {
  font-size: 32px;
    margin: 12px 0 16px;
    font-weight: 700;
    color: #ffffff;
    font-family: "Instrument Sans", Sans-serif;
}

.tags {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.tags span {
  padding: 6px 14px;
    border-radius: 6px;
    border: 1px solid #4a4a4a;
    font-size: 13px;
    color: #1E1E1E;
    background: transparent;
    font-family: "Instrument Sans", Sans-serif;
    font-weight: 500;
}

.job-right {
  text-align: right;
  font-family: "Instrument Sans", Sans-serif;
}

.salary {
  font-size: 28px;
    font-weight: 700;
    color: #fff;
    font-family: "Instrument Sans", Sans-serif;
}

.salary small {
  font-size: 14px;
    font-weight: 400;
    color: #fff;
    font-family: "Instrument Sans", Sans-serif;
}

.location {
  margin-top: 6px;
  font-size: 14px;
  color: #bdbdbd;
}
.company .icon img {
  width: 24px;
  height: 24px;
}

.single .container {
  width: 1240px;
  margin: auto;
  padding: 40px 20px 0;
}

.job-header {
  margin-bottom: 40px;
}

.badge {
  display: inline-block;
  background: #eef2ff;
  color: #4338ca;
  padding: 6px 12px;
  border-radius: 20px;
  font-size: 13px;
  margin-bottom: 15px;
}

.job-header h1 {
  font-size: 42px;
    line-height: 1.2;
    font-family: "Instrument Sans", Sans-serif;
    font-weight: 700;
    color: #1E1E1E;
}

.job-header em {
  background: linear-gradient(to bottom, transparent 60%, #facc15 60%);
}

.subtitle {
  margin-top: 10px;
    max-width: 500px;
    color: #666;
    /* margin-left: 32px; */
    padding-left: 84px;
    padding-top: 23px;
}
.company img{
  width: 32px;
  height: 32px;
}
.job-layout {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: 30px;
}

.single .card,
.single .job-card {
  background: #fff;
  border-radius: 14px;
  padding: 10px 25px 20px;
  border: 1px solid #e5e7eb;
  margin-bottom: 30px;
}

.single .job-card-top {
  display: flex;
  justify-content: space-between;
  gap: 20px;
}

.single .company {
  font-size: 14.6px;
    color: #1E1E1E99;
    font-family: "Instrument Sans", Sans-serif;
    font-weight: 400;
}

.single .job-card h2 {
  margin: 10px 0;
  font-size: 34px;
    font-family: "Instrument Sans", Sans-serif;
    font-weight: 700;
    color: #1E1E1E;
}

.single .tags span {
  display: inline-block;
  padding: 6px 12px;
  border: 1px solid #00464333;
  border-radius: 20px;
  font-size: 13px;
  margin: 5px 5px 0 0;
  color: #1E1E1E99;
  font-size: 14px;
  font-family: "Instrument Sans", Sans-serif;
}

.salary {
  text-align: right;
}

.salary strong {
  font-size: 28px;
}

.job-card-bottom {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  margin-top: 25px;
  gap: 15px;
}

.btn-primary {
  background: #facc15;
  border: none;
  padding: 10px 20px;
  border-radius: 8px;
  font-weight: 600;
  cursor: pointer;
}

.job-content h3,
.job-content h4 {
  margin: 25px 0 10px;
    color: #1E1E1E;
    font-family: "Instrument Sans", Sans-serif;
    font-weight: 500;
}
.mf-form-wrapper .metform-form-content .metform-form-main-wrapper .mf-input-wrapper .mf-input
{
  background-image: url(/wp-content/uploads/2026/02/Component-1.png);
    background-repeat: no-repeat;
    background-position: 10px 15px;
    padding-left: 40px;
    border-radius: 12px;
    margin: 0px;
    background-color: #fff;
    font-size: 14.3px !important;
}

.job-content ul {
  padding-left: 20px;
  color: #555;
}
.job-content ul li{ 
  padding: 8px 0px;
    font-family: "Instrument Sans", Sans-serif;
    color: #1E1E1E99;
    font-size: 15.2px;
}
.job-content p{
  
    font-family: "Instrument Sans", Sans-serif;
    color: #1E1E1E99;
    font-size: 15.2px;
}
.job-sidebar .overview li {
  list-style: none;
    margin-bottom: 20px;
    font-size: 15px;
    display: flex;
}
.lp-course-description
{
   font-family: "Instrument Sans", Sans-serif;
   font-size: 16px;
}
 .learn-press-message.info, .lp-section-instructor, .lp-course-comment
 {
  display: none !important;
 }
 .single ul.learn-press-breadcrumb
 {
  display: block !important;
  margin: 0;
    padding: 20px 0 20px;
 }
 .lp-single-course .lp-single-course-main__right__inner
 {
  padding: 40px 20px !important;
  border-radius: 14.3px !important;
 }
 .lp-single-course__header
 {
  display: none !important;
 }
  .single ul.learn-press-breadcrumb li a{
    text-decoration: none;
  }
.card h3{
  font-family: "Instrument Sans", Sans-serif;
    font-weight: 700;
    font-size: 20px;
}
.job-form input,
.job-form textarea {
  width: 100%;
  padding: 12px;
  margin-bottom: 12px;
  border-radius: 8px;
  border: 1px solid #e5e7eb;
}

.job-form button {
  width: 100%;
  padding: 12px;
  background: #1e293b;
  color: #fff;
  border-radius: 8px;
  border: none;
}
.job-sidebar .overview li img{
width: 20px;
    height: 20px;
    margin-right: 25px;
    margin-top: 7px;
}
ul.overview
{
  margin: 0px;
  padding: 0px;
}
.course-header {
   
  color: #ffffff;
  padding: 10px;
  font-family: "Instrument Sans", Sans-serif;
}
.elementor-element.header{
  z-index: 999;
}
.top-row {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 12px;
}
.e-n-accordion a{
  color: #B50AF1 !important;
}
.badge {
  background: transparent;
    color: #525252;
    font-size: 12px;
    font-weight: 400;
    padding: 5px 10px;
    border-radius: 4px;
    border: 1px solid #C3C3C3;
}

.rating {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-left: 10px;
  font-size: 14px;
}

.rating-score {
  font-weight: 700;
}

.star {
  color: #facc15;
  font-size: 14px;
}

.rating-count {
  color: #cbd5e1;
  text-decoration: underline;
}

.rating-count:hover {
  color: #ffffff;
}

.students {
  margin-left: 6px;
  color: #cbd5e1;
}

.meta-row {
  display: flex;
  flex-wrap: wrap;
  gap: 18px;
  font-size: 14px;
  color: #cbd5e1;
  margin-bottom: 14px;
}

.meta-item {
  display: flex;
  align-items: center;
  gap: 6px;
}

.icon {
  font-size: 14px;
}

.creator {
  font-size: 16px;
}

.creator strong {
  font-weight: 700;
}

/* Responsive */
@media (max-width: 992px) {
  .job-layout {
    grid-template-columns: 1fr;
  }

  .job-card-top {
    flex-direction: column;
  }

  .salary {
    text-align: left;
  }

  .job-header h1 {
    font-size: 32px;
  }
}
/* Hero section styles */
.site-hero{
  position:relative;
  display:flex;
  align-items:center;
  min-height:500px;
  color:#fff;
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
}

.site-hero .hero-overlay{
  position:absolute;
  inset:0;
  /* soft dark gradient to left so text is readable on the left */
  background: linear-gradient(90deg, rgba(8,10,12,0.75) 0%, rgba(8,10,12,0.35) 50%, rgba(8,10,12,0.25) 100%);
  
}

.site-hero .hero-inner{
  position:relative;
 

}

.site-hero h1{
  margin:0;
  line-height:1.02;
  font-weight:700;
  /* responsive large headline */
  font-size:50px;
  font-family: "Instrument Sans", Sans-serif;
}

.site-hero .lead{
  margin-top:1.25rem;
  color:rgba(255,255,255,0.95);
  font-size:clamp(15px, 2.1vw, 20px);
  max-width:70ch;
  font-family: "Instrument Sans", Sans-serif;
}
.job-card-bottom span{
  color: #1E1E1E;
    font-weight: 500;
    font-size: 18px;
    font-family: "Instrument Sans", Sans-serif;
}
.job-card-bottom span .coll{
color: #1E1E1E99;
}
/* Responsive tweaks */
@media (max-width:768px){
  .site-hero{
    min-height:48vh;
  }
  .site-hero .hero-inner{
    padding:3.5rem 1rem;
  }
  .site-hero h1{
    font-size:clamp(28px, 9vw, 40px);
  }
  .site-hero .lead{
    font-size:15px;
  }
}
/* Open button */
.open-popup-btn {
  padding: 12px 20px;
  color: #fff;
  border: none;
  border-radius: 6px;
  cursor: pointer;
}

/* Overlay */
.modal-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.6);
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  transition: 0.3s ease;
  z-index: 999;
  display: none;
}
.tab-btn:hover a{
  color: #fff;
}
.avatarimg
{
  flex-shrink: 0;
}
.avatarimg img
{
width: 40px;
    height: 40px;
    display: block;
    border-radius: 100px;
    position: relative;
    top: 15px;
}
.modal-overlay.active {
  opacity: 1;
  visibility: visible;
  display: flex;
}

/* Modal */
.modal {
  background: #fff;
  width: 700px;
  max-width: 90%;
  border-radius: 12px;
  overflow: hidden;
  transform: scale(0.9);
  transition: 0.3s ease;
}

.modal-overlay.active .modal {
  transform: scale(1);
}

/* Header */
.modal-header {
  background: #f3e04f;
  padding: 16px 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.modal-header h2{
  color: #071437;
    font-size: 20px;
    font-weight: 600;
    margin: 0;
    padding: 0;
    font-family: "Instrument Sans", sans-serif;
}
.close-btn {
  background: #333;
    color: #fff;
    border: none;
    width: 35px;
    height: 35px;
    border-radius: 6px;
    font-size: 24px;
    cursor: pointer;
    padding: 0 !important;
}

/* Body */
.modal-body {
  padding: 20px;
}

.section-title {
  margin-bottom: 16px;
    font-size: 14px;
    font-weight: 400;
    font-family: arial;
}

/* Form */
.form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

.form-group {
  display: flex;
  flex-direction: column;
}

.form-group.full {
  grid-column: span 2;
}

.modal-body label {
  font-size: 14px;
    margin-bottom: 6px;
    font-family: arial;
    color: #071437;
}

.modal-body input {
  padding: 10px;
   border: 1px solid #E6E9EE;
    border-radius: 6px;
    font-size: 14px;
    font-family: arial;
    color: #071437;
}
.modal-body p{
  margin-block-end: 0;
}
/* Footer */
.form-footer {
  display: flex;
  justify-content: flex-end;
  margin-top: 20px;
}

.next-btn {
  background: #2f80ff;
  color: #fff;
  border: none;
  padding: 10px 24px;
  border-radius: 6px;
  cursor: pointer;
}
fieldset
{
  margin: 0px !important;
  padding: 0px !important;
}
input[type=date], input[type=email], input[type=number], input[type=password], input[type=search], input[type=tel], input[type=text], input[type=url], select, textarea {
    border: 1px solid #E6E9EE;
    border-radius: 6px;
    padding: .5rem 1rem;
    transition: all .3s;
    width: 100%;
    font-size: 14px;
    font-family: arial;
}
.modal button.close-btn
{
  background-image: url(http://shine.stringlab.org/wp-content/uploads/2026/01/Union.png) !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
}
.cf7mls_next.action-button, form.cf7mls input.wpcf7-form-control.wpcf7-submit {
    background-color: #1B84FF;
    border: 0 none;
    border-radius: 6px;
    color: #ffffff;
    cursor: pointer;
    font-weight: 400;
    margin: 25px 0px 26px;
    padding: 8px 5px !important;
    min-width: 100px;
    position: relative;
    font-size: 14px;
}
.cf7mls_back.action-button {
    background-color: transparent;
    border: 1px solid #DBDFE9;
    border-radius: 6px;
    color: #23282d;
    cursor: pointer;
    font-weight: 400;
    margin: 16px 0px 26px;
    padding: 8px 5px !important;
    min-width: 100px;
    position: relative;
    font-size: 14px;
}
.cf7mls-btns.cf7mls-btns-last-step .cf7mls_back.action-button {
    margin: -5px 0px 26px;
}
.required
{
  color: #f00000;
}
.lp-content-area.lp-profile-content-area, .cover-image
{
  display: none !important;
}
[type=button], [type=submit], button
{
  color: #1E1E1E;
}
[type=button]:focus, [type=button]:hover, [type=submit]:focus, [type=submit]:hover, button:focus, button:hover
{
  background-color: #ffb606;
}
.page-id-2240 .learn-press-form-register {
    max-width: 600px;
    margin-right: auto;
    margin-bottom: 0px;
    margin-left: auto;
    padding: 30px 0px 0px!important;
    border: none !important;
    border-radius: var(--lp-border-radius, 5px);
    box-shadow: none !important;
}
.learn-press-form .form-fields .form-field label
{
  font-size: 16px !important;
    color: #1E1E1E !important;
    font-weight: 600 !important;
    font-family: "Instrument Sans", Sans-serif !important;
    font-style: normal !important;
}
.learn-press-form-register.learn-press-form h3
{
  display: none !important;
}
 .elementor-2240 .elementor-element.elementor-element-5a908c6 a
 {
   color: #1E1E1E !important;
 }
 .apply-popup {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.6);
    display: none;
    z-index: 9999;
}

.apply-popup-inner {
    background: #fff;
    max-width: 900px;
    width: 90%;
    margin: 5% auto;
    padding: 30px;
    border-radius: 10px;
    position: relative;
}

.close-popup {
    position: absolute;
    right: 15px;
    top: 10px;
    font-size: 26px;
    cursor: pointer;
}
.apply-popup .awsm-job-entry-content
{
  display: none !important;
}
.awsm-job-form-inner {
    background: #fff;
    border: none;
    padding: 0px 0px;
    font-family: "Instrument Sans", sans-serif;
}
.awsm-job-form-inner h2
{
  font-weight: 700;
}
.awsm-job-form-group label {
    display: inline-block;
    margin-bottom: 10px;
    font-size: 15px;
    font-weight: 500;
}
.awsm-job-form-group input[type=date], .awsm-job-form-group input[type=email], .awsm-job-form-group input[type=number], .awsm-job-form-group input[type=password], .awsm-job-form-group input[type=search], .awsm-job-form-group input[type=tel], .awsm-job-form-group input[type=text], .awsm-job-form-group input[type=url], .awsm-job-form-group select, .awsm-job-form-group textarea
{
  border: 1px solid #E6E9EE;
    border-radius: 6px;
    padding: 10px 1rem;
    transition: all .3s;
    width: 100%;
    font-size: 16px;
    font-family: arial;
}
.awsm-job-form
{
overflow-y: scroll;
    height: 80vh;
}
.awsm-job-form-group [type=button], .awsm-job-form-group [type=submit], .awsm-job-form-group button {
    background-color: #1C2D4A;
    border: 1px solid #1C2D4A;
    border-radius: 5px;
    color: #c36;
    display: block;
    font-size: 20px;
    font-weight: 400;
    padding: 12px 1rem;
    text-align: center;
    transition: all .3s;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    white-space: nowrap;
    width: 100%;
    color: #fff !important;
    font-weight: 500;
}
.single .mf-form-wrapper .metform-form-content .metform-form-main-wrapper .mf-input-wrapper .mf-input[type=email]
{
  background-image: url(/wp-content/uploads/2026/02/Component-1.png);
    background-repeat: no-repeat;
    background-position: 10px 13px;
}
.single .mf-form-wrapper .metform-form-content .metform-form-main-wrapper .mf-input-wrapper .mf-input[type=tel]
{
  background-image: url(/wp-content/uploads/2026/02/Component-1-1.png);
    background-repeat: no-repeat;
    background-position: 10px 13px;
}
.single .mf-form-wrapper .metform-form-content .metform-form-main-wrapper .mf-input-wrapper .mf-input[type=text]
{
  background-image: url(/wp-content/uploads/2026/01/Vector-2.png);
    background-repeat: no-repeat;
    background-position: 10px 13px;
}
.single button.metform-btn, .single button.metform-btn:not(.toggle) {
    background-color: #1C2D4A;
    width: 100%;
    box-shadow: none;
    color: #fff;
    margin-top: 10px;
    border-radius: 8px;
}
.mf-form-wrapper .metform-form-content .metform-form-main-wrapper .mf-input-wrapper .mf-input
{
  margin-bottom: 0px;
}
.single .metform-form-content
{
  margin-top: 30px;
}
.skilled_section
{
  display: flex;
  gap: 30px;
}
.learn-press-courses .course
{
  width: 33.33% !important;
}
.learn-press-courses .course-item
{
  padding: 20px;
  border-radius: 12px !important;
}
.learn-press-courses .course-thumbnail img, .course-thumbnail
{
  border-radius: 10px !important;
}
.learn-press-courses[data-layout=grid] .course-content, .learn-press-courses.lp-courses-related .course-content
{
  padding: 20px 2px !important;
}
.learn-press-courses .course-content .course-permalink {
    display: block;
    border: 0;
    text-decoration: none;
    color: #071437 !important; 
    line-height: 1.3;
    font-weight: 600;
    font-family: "Instrument Sans", Sans-serif;
    font-size: 22px;
}
.lp-course-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
}

.lp-course-card {
  background: #fff;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 8px 30px rgba(0,0,0,.08);
  display: flex;
  flex-direction: column;
}

.lp-course-thumb {
  position: relative;
}

.lp-course-thumb img {
  width: 100%;
  height: 240px;
  object-fit: cover;
}

.lp-price {
  position: absolute;
  top: 15px;
  right: 15px;
  background: #f4de4d;
  padding: 6px 12px;
  border-radius: 8px;
  font-weight: 700;
}

.lp-course-content {
  padding: 20px;
}

.lp-course-content h3 {
  font-size: 20px;
  margin-bottom: 6px;
}

.lp-desc {
  color: #6b7280;
  font-size: 14px;
}

.lp-date {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 14px 0;
  font-weight: 600;
}

.lp-date .line {
  flex: 1;
  height: 4px;
  background: #eab308;
  border-radius: 2px;
}

.lp-time {
  font-size: 14px;
  margin-bottom: 12px;
}

.lp-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 16px;
}

.lp-tags span {
  border: 1px solid #e5e7eb;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 12px;
}

.lp-btn {
  display: block;
  text-align: center;
  background: #f4de4d;
  color: #000;
  padding: 12px;
  border-radius: 8px;
  font-weight: 700;
  text-decoration: none;
}
.page-id-1440 .mf-form-wrapper .metform-form-content .metform-form-main-wrapper .mf-input-wrapper .mf-input {
    background-image: none;
    background-repeat: no-repeat;
    background-position: 10px 15px;
    padding-left: 10px;
    border-radius: 12px;
    margin: 0px;
    background-color: #fff;
    font-size: 14.3px !important;
}
.course-filter-bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  padding: 12px;
  background: #fff;
  flex-wrap: wrap;
  border-bottom: 1px solid #e2e0db;
    padding-bottom: 20px;
}

/* Search */
.search-box input {
  width: 320px;
  max-width: 100%;
  padding: 12px 14px;
  border-radius: 8px;
  border: 1px solid #d1d5db;
  font-size: 14px;
  outline: none;
}
.um-field-block {
    font-family: "Instrument Sans", Sans-serif;
    font-size: 16px !important;
    font-weight: 500;
    line-height: 34px;
    color: #0D1427 !important;
}
.um-field-label label
{
  color: #152237;
    font-family: "Instrument Sans", Sans-serif;
    font-size: 14px;
    font-weight: 500;
    line-height: 21px;
    margin: 0px 0px 7px 0px;
}
.um span.um-req {
    color: #f00 !important;
    font-family: "Instrument Sans", Sans-serif;
    font-size: 14px;
    font-weight: 500;
}
.um-field-label
{
  margin: 0 !important;
}
.search-box input:focus {
  border-color: #2563eb;
}
/* Add red star after required labels */
.um-form .um-field-required .um-field-label label:after {
    content: " *";
    color: red;
    font-weight: bold;
}

/* Alternative selector (if above not working) */
.um-form label .um-required {
    color: red !important;
}
/* Filters */
.filters {
  display: flex;
  gap: 12px;
  flex-wrap: nowrap;
}

.filters select {
  padding: 10px 14px;
  border-radius: 8px;
  border: 1px solid #d1d5db;
  font-size: 14px;
  background: #fff;
  cursor: pointer;
  min-width: 160px;
}

/* Responsive */
@media (max-width: 768px) {
  .course-filter-bar {
    flex-direction: column;
    align-items: stretch;
  }

  .filters {
    justify-content: space-between;
  }

  .filters select {
    flex: 1;
    min-width: auto;
  }
}

.tags-box {
  font-family: Arial, sans-serif;
}

.tags-box h3 {
  margin-bottom: 12px;
    color: #78829D;
    font-weight: 500;
    font-size: 14px;
    font-family: "Instrument Sans", sans-serif;
}

/* Tag container */
.tags {
  display: flex;
  gap: 18px;
  flex-wrap: wrap;
  margin-bottom: 25px;
}
.learn-press-courses .course-content .course-short-description
{
  min-height: 80px;
    max-height: 80px;
    overflow: hidden;
}
 
/* FullCalendar month view — paste into Additional CSS */
/* ...existing code... */
.fc {
  border: 4px dashed #8cc7ff; /* outer dashed frame */
  border-radius: 8px;
  padding: 8px;
}
.fc .fc-daygrid-day-frame { min-height: 90px; }
.fc .fc-daygrid-day-number {
  text-align: center;
  font-weight: 600;
  color: #222;
}
.fc .fc-daygrid-event {
  border-radius: 8px;
  padding: 6px 10px;
  margin: 3px 6px;
  font-size: 12px;
  color: #fff !important;
  box-shadow: 0 2px 4px rgba(0,0,0,0.12);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: calc(100% - 12px);
  height: 22px; /* compact pill height */
  line-height: 22px;
}
/* color variants by event class (add these classes via event.extendedProps or WP category) */
.fc .event-color-yellow { background:#FFD400; color:#222 !important; }
.fc .event-color-orange { background:#FF5A00; }
.fc .event-color-purple { background:#A23DF8; }
.fc .event-color-teal   { background:#0D9488; }
/* header */
.fc .fc-toolbar-title { font-size: 20px; font-weight:700; text-align:center; }
/* small nav buttons style */
.fc .fc-button { border-radius:12px; padding:6px 10px; }
/* ...existing code... */
/* The Events Calendar month CSS — paste into Additional CSS */
/* ...existing code... */
.tribe-events-calendar-month {
  border: 4px dashed #8cc7ff;
  border-radius: 8px;
  padding: 8px;
}
.tribe-events-calendar-month .tribe-events-day__date {
  text-align:center;
  font-weight:600;
}
.tribe-events-calendar-month .tribe-events-event-link {
  display:inline-block;
  border-radius:8px;
  padding:6px 10px;
  margin:4px 6px;
  font-size:12px;
  color:#fff !important;
  background:#3b82f6; /* default */
  height:22px;
  line-height:22px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  box-shadow:0 2px 4px rgba(0,0,0,.12);
}
/* category-based colors (category slug on event row) */
.tribe-events-calendar-month .tribe-events-event--category-maths { background:#FFD400 !important; color:#222 !important; }
.tribe-events-calendar-month .tribe-events-event--category-challenge { background:#FF5A00 !important; }
/* toolbar */
.tribe-events-calendar-month .tribe-events-header { text-align:center; font-size:20px; font-weight:700; }
/* ...existing code... */
:root{
  --bg:#f8fafc;
  --card:#fff;
  --text:#0f1724;
  --muted:#6b7280;
  --border:#e6e7eb;
  --accent:#0ea5a4;
  --radius:12px;
  --gap:20px;
  --max-width:980px;
  --pad:28px;
  font-synthesis: none;
  -webkit-font-smoothing:antialiased;
}

 
.registration-form{
  background:var(--card);
  border-radius:16px;
  padding:var(--pad);
  box-shadow:0 6px 18px rgba(12,18,23,0.06);
  border:1px solid rgba(15,23,36,0.04);
}

.form-title{
  margin:0 0 14px 0;
  font-size:18px;
  color:var(--text);
  font-weight:600;
}

/* Grid layout: two columns on medium+, single column on small screens */
.grid{
  display:grid;
  grid-template-columns:1fr;
  gap:var(--gap);
  margin-bottom:18px;
}

/* make some fields span full width explicitly */
.field.full{grid-column:1/-1 !important; }

.field{
  display:flex;
  flex-direction:column;
}

.label-text{
  font-size:14px;
  font-weight:600;
  margin-bottom:8px;
  color:var(--text);
}

.required{color:#e11d48}

/* Input styles */
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="password"],
input[type="date"]{
  appearance:none;
  border:1px solid var(--border);
  background:transparent;
  padding:14px 16px;
  border-radius:var(--radius);
  font-size:15px;
  color:var(--text);
  outline:none;
  transition:box-shadow .12s, border-color .12s;
}

input::placeholder{color:var(--muted)}

input:focus{
  border-color:var(--accent);
  box-shadow:0 6px 18px rgba(14,165,164,0.08);
}

/* Button */
.actions{
  display:flex;
  justify-content:flex-end;
  margin-top:6px;
}

.btn{
  color:#fff;
  border:none;
  padding:12px 20px;
  font-size:15px;
  border-radius:10px;
  cursor:pointer;
  transition:transform .08s ease, box-shadow .08s ease;
}
.share-toggle-icon
{
  display: none !important;
}
.btn:hover{transform:translateY(-2px); box-shadow:0 8px 20px rgba(14,165,164,0.12)}
/* Batch toggle + dropdown (match example) */
.lp-course-batch-field{margin-bottom:16px;}
.lp-course-batch-heading{font-weight:700;margin-bottom:8px;font-size:13px;color:#111;}
.lp-batch-select{position:relative;}
.lp-batch-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:14px 16px;border-radius:12px;border:1px solid #e6e6e6;background:#fff;cursor:pointer;font-weight:700;font-size:16px;color:#111;text-align:left;}
.lp-batch-toggle::after{content:"▾";font-size:16px;color:#666;transition:transform .18s ease;}
.lp-batch-select.open .lp-batch-toggle::after{transform:rotate(180deg);}
.lp-course-batch-list{display:none;position:absolute;left:0;right:0;top:calc(100% + 10px);z-index:1500;background:#fff;border-radius:12px;border:1px solid rgba(0,0,0,0.06);box-shadow:0 10px 30px rgba(15,23,42,0.12);max-height:420px;overflow-y:auto;padding:12px;}
.lp-batch-select.open .lp-course-batch-list{display:block;}
.lp-batch-item{display:block;position:relative;margin:8px 0;cursor:pointer;outline:none;}
.lp-batch-card{display:flex;align-items:center;justify-content:space-between;padding:16px 18px 16px 64px;border-radius:10px;border:1px solid #ececec;background:#fff;transition:background .12s ease,border-color .12s ease;}
.lp-batch-item::before{content:"";position:absolute;left:18px;top:50%;transform:translateY(-50%);width:22px;height:22px;border-radius:50%;border:2px solid #cfcfcf;background:#fff;box-sizing:border-box;}
.lp-batch-item.selected::before{background:#111;border-color:#111;}
.lp-batch-item.selected::after{content:"✔";position:absolute;left:21px;top:50%;transform:translateY(-50%);color:#fff;font-size:12px;line-height:1;}
.lp-batch-item.selected .lp-batch-card{background:#fff8e6;border-color:#f0d6a8;}
.lp-batch-title{font-weight:700;font-size:15px;color:#111;line-height:1.2;}
.lp-batch-time{color:#666;font-size:13px;margin-top:6px;}
.lp-batch-type{background:#fff3c4;color:#b88b00;padding:6px 12px;border-radius:8px;font-weight:700;font-size:12px;white-space:nowrap;}
.lp-batch-radio{display:none!important;}
.lp-disabled{opacity:.55;pointer-events:none;}
.lp-course-batch-list::-webkit-scrollbar{width:8px;}
.lp-course-batch-list::-webkit-scrollbar-thumb{background:#f0f0f0;border-radius:8px;}
@media (max-width:480px){ .lp-course-batch-list{max-height:320px;top:calc(100% + 8px);} .lp-batch-card{padding:14px 14px 14px 64px;} .lp-batch-title{font-size:14px;} .lp-batch-time{font-size:12px;} }
/* Responsive breakpoints */
@media (min-width:640px){
  .grid{grid-template-columns:repeat(2, 1fr);
  gap: 20px;
  }
  .field.full{grid-column:auto}
}

@media (min-width:980px){
  .registration-form{padding:36px}
}