h1, h2, h3, h4, a, ul, li, span, div {
  margin: 0;
  padding: 0;
  font-family: Manrope, sans-serif;
  color: #fff;
  list-style: none; }

p {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  color: #b8bdc7; }

a {
  text-decoration: none;
  transition: all 0.3s ease-in-out; }

h1 {
  font-size: 50px; }

h2 {
  font-size: 45px;
  font-weight: 500; }

h3 {
  font-size: 35px;
  font-weight: 500; }

h4 {
  font-size: 30px;
  font-weight: 500; }

h5 {
  font-size: 18px; }

p {
  font-size: 16px; }

@media only screen and (max-width: 992px) {
  h1 {
    font-size: 40px; }

  h2 {
    font-size: 35px; }

  h3 {
    font-size: 32px; }

  h4 {
    font-size: 20px; }

  h5 {
    font-size: 18px; }

  p {
    font-size: 15px; } }
@media only screen and (max-width: 768px) {
  h1 {
    font-size: 30px; }

  h2 {
    font-size: 25px; }

  h3 {
    font-size: 22px; }

  h4 {
    font-size: 17px; }

  h5 {
    font-size: 16px; }

  p {
    font-size: 14px; } }
@media only screen and (max-width: 480px) {
  h1 {
    font-size: 25px; }

  h2 {
    font-size: 22px; }

  h3 {
    font-size: 20px; }

  h4 {
    font-size: 16px; }

  p {
    font-size: 13px; } }
body {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
  background: #0e0e10; }

.section {
  padding: 50px 0; }
  @media only screen and (max-width: 768px) {
    .section {
      padding: 30px 0; } }

.inner {
  max-width: 1200px;
  margin: 0 auto; }
  @media only screen and (max-width: 1024px) {
    .inner {
      padding: 0 20px; } }
  @media only screen and (max-width: 768px) {
    .inner {
      padding: 0 4%; } }

.section-head {
  text-align: center;
  margin: 25px; }

.hero {
  position: relative;
  height: 85vh;
  display: flex;
  align-items: center;
  justify-content: start;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: fixed; }
  .hero.small {
    height: 40vh; }
  .hero .overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.6); }
  .hero .hero-content {
    position: relative;
    z-index: 1;
    width: 100%; }
    .hero .hero-content .wrapper {
      max-width: 600px; }
      .hero .hero-content .wrapper h1 > span {
        color: #ff3c41; }
      .hero .hero-content .wrapper p {
        margin: 1rem 0; }
      .hero .hero-content .wrapper a {
        color: #fff; }
  @media only screen and (max-width: 992px) {
    .hero {
      text-align: center; }
      .hero .hero-content {
        display: flex;
        justify-content: center; }
        .hero .hero-content .wrapper {
          margin-top: -135px; } }
  .hero .visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0; }

.card-grid {
  display: grid;
  gap: 24px;
  grid-template-columns: repeat(3, 1fr); }
  .card-grid .card {
    background: #242427;
    border: 1px solid #24242a;
    border-radius: 16px;
    padding: 28px;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.18);
    transition: .2s ease;
    position: relative;
    overflow: hidden; }
    .card-grid .card img {
      width: 25px;
      height: 25px;
      object-fit: cover; }
    .card-grid .card .link {
      color: #ff8c42; }
  @media only screen and (max-width: 992px) {
    .card-grid {
      grid-template-columns: repeat(2, 1fr); } }
  @media only screen and (max-width: 480px) {
    .card-grid {
      grid-template-columns: 1fr; } }

.btn {
  display: inline-flex;
  align-items: center;
  gap: .6rem;
  padding: .9rem 1.25rem;
  border-radius: 4px;
  font-weight: 500;
  border: 1px solid transparent;
  text-transform: capitalize;
  transition: all 0.3s;
  width: fit-content; }

.btn-primary {
  background: #ff3c41; }
  .btn-primary:hover {
    background: #ffffff !important;
    color: #ff3c41 !important; }

.btn:hover {
  background: #ffffff !important;
  color: #ff3c41 !important; }

.underline {
  display: block;
  width: 84px;
  height: 3px;
  border-radius: 3px;
  background: #ff3c41;
  margin: 0; }
  @media only screen and (max-width: 992px) {
    .underline {
      margin: 0 auto; } }

.underline-a {
  display: block;
  width: 84px;
  height: 3px;
  border-radius: 3px;
  background: #ff3c41;
  margin: 0 auto; }

.fcol .underline {
  display: block;
  width: 74px;
  height: 2px;
  border-radius: 3px;
  background: #ff3c41;
  margin: 0; }

.section-title {
  margin: 0 0 26px;
  position: relative; }
  .section-title--center {
    text-align: center; }
  .section-title--bar {
    padding-left: 14px; }
    .section-title--bar::before {
      content: "";
      position: absolute;
      left: 0;
      width: 6px;
      height: 1.4em;
      border-radius: 3px;
      background: linear-gradient(180deg, #ff8a2a, #e63946); }

.translated-rtl .section-title--bar {
  padding-right: 14px; }
  .translated-rtl .section-title--bar::before {
    display: none; }
  .translated-rtl .section-title--bar::after {
    content: "";
    position: absolute;
    right: 0;
    width: 6px;
    height: 1.4em;
    border-radius: 3px;
    background: linear-gradient(180deg, #ff8a2a, #e63946); }

@media only screen and (max-width: 768px) {
  .btn {
    padding: 10px 20px; } }
/* Sidebar container */
.sidebar {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  border: #24242a 1px solid;
  background: #242427;
  border-radius: 16px;
  padding: 20px; }
  .sidebar .widget {
    border-radius: 12px;
    box-shadow: 0 3px 12px rgba(0, 0, 0, 0.25);
    margin: 0; }
  .sidebar .widgettitle,
  .sidebar .wp-block-search__label,
  .sidebar .widget_block h2, .sidebar .widget_block h4 {
    margin-bottom: 20px;
    border-bottom: 2px solid #ff3c41;
    padding-bottom: 15px; }

/* Search block */
.wp-block-search {
  display: flex;
  flex-direction: column; }
  .wp-block-search__inside-wrapper {
    display: flex;
    width: 100%; }
  .wp-block-search__input {
    flex: 1;
    padding: .6rem .8rem;
    border-radius: 6px 0 0 6px;
    border: 1px solid #535353;
    background: #0e0e10;
    color: #fff; }
    .wp-block-search__input:focus {
      outline: none;
      border-color: #ff3c41 !important;
      color: #fff !important; }
  .wp-block-search .wp-block-search__button {
    background: #ff3c41;
    color: #fff;
    padding: 0 1rem;
    border: none;
    border-radius: 0 6px 6px 0;
    font-weight: bold;
    cursor: pointer;
    transition: background .2s;
    margin-left: 0; }
    .wp-block-search .wp-block-search__button:hover {
      background: #ff3c41; }

/* Categories widget */
.widget_categories ul,
.wp-block-categories-list {
  margin: 0;
  padding: 0; }
  .widget_categories ul li,
  .wp-block-categories-list li {
    margin-bottom: .5rem; }
    .widget_categories ul li a,
    .wp-block-categories-list li a {
      color: #fff;
      text-decoration: none; }
      .widget_categories ul li a:hover,
      .wp-block-categories-list li a:hover {
        color: #ff3c41; }

/* Recent posts widget */
.widget_recent_entries ul,
.wp-block-latest-posts__list {
  list-style: none;
  margin: 0;
  padding: 0; }
  .widget_recent_entries ul li,
  .wp-block-latest-posts__list li {
    margin-bottom: .6rem; }

.translated-rtl .site-header,
.translated-rtl .hero,
.translated-rtl .services,
.translated-rtl .site-footer,
.translated-rtl .instructor,
.translated-rtl .philosophy,
.translated-rtl .certifications,
.translated-rtl .contact-hero,
.translated-rtl .contact-grid,
.translated-rtl .blog-posts {
  direction: rtl; }

h2 {
  color: #ff8c42; }

.contact-hero {
  background: #1b0a0a;
  padding: 50px 0; }
  .contact-hero .container p {
    max-width: 600px; }
  .contact-hero .container .underline {
    margin: 1rem 0; }

.contact-grid {
  padding: 50px 0 100px;
  border-bottom: #24242a 1px solid;
  background: #0f0f0f; }
  .contact-grid .wrapper {
    display: flex;
    gap: 20px;
    /* Hide CF7 hidden meta row */
    /* ========== Card ========== */
    /* ========== Form layout ========== */
    /* ========== Validation + response ========== */ }
    .contact-grid .wrapper .contact-form-wrapper .hidden-fields-container {
      display: none !important; }
    .contact-grid .wrapper .contact-form-wrapper {
      background: #242427;
      border: 1px solid #24242a;
      border-radius: 16px;
      padding: 22px 22px 20px; }
      .contact-grid .wrapper .contact-form-wrapper .contact-form br {
        display: none; }
    .contact-grid .wrapper .contact-form-wrapper .wpcf7 .wpcf7-form {
      /* keep form tight like the mock */
      /* span wrapper from CF7 should not break width */
      /* Inputs / Textarea */
      /* Focus state (red outline like the design language) */
      /* ========== Submit button ========== */ }
      .contact-grid .wrapper .contact-form-wrapper .wpcf7 .wpcf7-form > p {
        margin: 0 0 14px !important; }
      .contact-grid .wrapper .contact-form-wrapper .wpcf7 .wpcf7-form label {
        display: flex;
        flex-direction: column;
        gap: 6px;
        font-size: .86rem;
        color: #b8bdc7;
        font-weight: 600; }
      .contact-grid .wrapper .contact-form-wrapper .wpcf7 .wpcf7-form .wpcf7-form-control-wrap {
        display: block;
        width: 100%; }
      .contact-grid .wrapper .contact-form-wrapper .wpcf7 .wpcf7-form .contact-form .wpcf7-form-control[type="text"],
      .contact-grid .wrapper .contact-form-wrapper .wpcf7 .wpcf7-form .contact-form .wpcf7-form-control[type="email"],
      .contact-grid .wrapper .contact-form-wrapper .wpcf7 .wpcf7-form .contact-form .wpcf7-form-control[type="tel"],
      .contact-grid .wrapper .contact-form-wrapper .wpcf7 .wpcf7-form .contact-form .wpcf7-textarea,
      .contact-grid .wrapper .contact-form-wrapper .wpcf7 .wpcf7-form .contact-form textarea.wpcf7-form-control {
        width: 100%;
        background: #0e0e10;
        border: 1px solid #535353;
        border-radius: 8px;
        color: #fff;
        outline: none;
        box-shadow: none;
        transition: border-color .2s ease, background .2s ease, box-shadow .2s ease; }
        .contact-grid .wrapper .contact-form-wrapper .wpcf7 .wpcf7-form .contact-form .wpcf7-form-control[type="text"]::placeholder,
        .contact-grid .wrapper .contact-form-wrapper .wpcf7 .wpcf7-form .contact-form .wpcf7-form-control[type="email"]::placeholder,
        .contact-grid .wrapper .contact-form-wrapper .wpcf7 .wpcf7-form .contact-form .wpcf7-form-control[type="tel"]::placeholder,
        .contact-grid .wrapper .contact-form-wrapper .wpcf7 .wpcf7-form .contact-form .wpcf7-textarea::placeholder,
        .contact-grid .wrapper .contact-form-wrapper .wpcf7 .wpcf7-form .contact-form textarea.wpcf7-form-control::placeholder {
          color: #b8bdc7; }
      .contact-grid .wrapper .contact-form-wrapper .wpcf7 .wpcf7-form .contact-form .wpcf7-form-control[type="text"],
      .contact-grid .wrapper .contact-form-wrapper .wpcf7 .wpcf7-form .contact-form .wpcf7-form-control[type="email"],
      .contact-grid .wrapper .contact-form-wrapper .wpcf7 .wpcf7-form .contact-form .wpcf7-form-control[type="tel"] {
        height: 44px;
        padding: 10px 12px;
        font-size: .92rem; }
      .contact-grid .wrapper .contact-form-wrapper .wpcf7 .wpcf7-form .contact-form .wpcf7-textarea,
      .contact-grid .wrapper .contact-form-wrapper .wpcf7 .wpcf7-form .contact-form textarea.wpcf7-form-control {
        min-height: 140px;
        padding: 12px;
        line-height: 1.5;
        resize: vertical; }
      .contact-grid .wrapper .contact-form-wrapper .wpcf7 .wpcf7-form .contact-form .wpcf7-form-control:focus {
        background: #0f0f0f;
        border-color: #ff3c41;
        box-shadow: 0 0 0 2px rgba(255, 60, 65, 0.28);
        color: #fff; }
      .contact-grid .wrapper .contact-form-wrapper .wpcf7 .wpcf7-form .contact-form input.wpcf7-submit {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 10px 16px;
        height: 42px;
        border: 0;
        border-radius: 8px;
        background: #ff3c41;
        color: #fff;
        font-weight: 700;
        font-size: .95rem;
        cursor: pointer;
        box-shadow: 0 6px 14px rgba(232, 75, 83, 0.26);
        transition: transform .12s ease, filter .3s ease, background .3s ease; }
        .contact-grid .wrapper .contact-form-wrapper .wpcf7 .wpcf7-form .contact-form input.wpcf7-submit:hover {
          background: rgba(232, 75, 83, 0.26); }
        .contact-grid .wrapper .contact-form-wrapper .wpcf7 .wpcf7-form .contact-form input.wpcf7-submit:active {
          transform: translateY(1px); }
      .contact-grid .wrapper .contact-form-wrapper .wpcf7 .wpcf7-form .contact-form .wpcf7-spinner {
        margin-left: 10px;
        vertical-align: middle; }
    .contact-grid .wrapper .contact-form-wrapper .contact-form .wpcf7-not-valid-tip {
      color: #ff3c41;
      font-size: .8rem;
      margin-top: 4px; }
    .contact-grid .wrapper .contact-form-wrapper .wpcf7-form .wpcf7-not-valid {
      border-color: #ff3c41 !important;
      box-shadow: 0 0 0 2px rgba(255, 60, 65, 0.2) !important; }
    .contact-grid .wrapper .contact-form-wrapper .wpcf7-response-output {
      margin-top: 14px;
      padding: 10px 12px;
      border-radius: 8px;
      font-size: .9rem; }
      .contact-grid .wrapper .contact-form-wrapper .wpcf7-response-output.wpcf7-mail-sent-ok {
        background: rgba(46, 204, 113, 0.1);
        border: 1px solid #2ecc71;
        color: #2ecc71; }
      .contact-grid .wrapper .contact-form-wrapper .wpcf7-response-output.wpcf7-validation-errors, .contact-grid .wrapper .contact-form-wrapper .wpcf7-response-output.wpcf7-mail-sent-ng {
        background: rgba(230, 57, 70, 0.1);
        border: 1px solid #ff3c41;
        color: #ff3c41; }
    .contact-grid .wrapper .contact-card {
      flex: 1;
      display: flex;
      flex-direction: column;
      gap: 20px; }
      .contact-grid .wrapper .contact-card .contact-hours, .contact-grid .wrapper .contact-card .contact-info, .contact-grid .wrapper .contact-card .contact-map {
        background: #242427;
        border: 1px solid #24242a;
        border-radius: 16px;
        padding: 24px; }
  @media only screen and (max-width: 992px) {
    .contact-grid .wrapper {
      flex-direction: column; } }
  @media only screen and (max-width: 768px) {
    .contact-grid .wrapper .contact-form-wrapper {
      padding: 10px; }
    .contact-grid .wrapper .contact-card .contact-map, .contact-grid .wrapper .contact-card .contact-card, .contact-grid .wrapper .contact-card .contact-hours, .contact-grid .wrapper .contact-card .contact-info {
      padding: 10px; } }

/*# sourceMappingURL=contact.css.map */
