/*
Theme Name: Seafarer Child
Theme URI: https://seafarer.qodeinteractive.com
Description: A child theme of Seafarer
Author: Dev Tyagi
Author URI: https://codefancylab.com/
Version: 1.0
Text Domain: seafarer
Template: seafarer
*/

#qodef-page-header-inner .qodef-header-logo-link {
    margin-top: 30px;
}
.home header#qodef-page-header {
  margin-bottom: 0;
}
/* Default header spacing for all pages */
header#qodef-page-header {
  margin-bottom: 100px;
}

select {
    width: 100%;
}

/* Keep the hire-crew custom position field hidden until its option is selected. */
.wpcf7 form label:has(.wpcf7-form-control-wrap[data-name="position-other"]),
.wpcf7 form label:has(.wpcf7-form-control-wrap[data-name="positions-other"]) {
  display: none !important;
}

.wpcf7 form label.halcyon-other-position-visible:has(.wpcf7-form-control-wrap[data-name="position-other"]),
.wpcf7 form label.halcyon-other-position-visible:has(.wpcf7-form-control-wrap[data-name="positions-other"]) {
  display: block !important;
}

/* === CF7 File Input: Outlined, matching Qode buttons === */
.wpcf7 input[type="file"]{
  background: transparent; border: 0; padding: 0; margin: 0;
  color: #0f2235; font-family: Inconsolata, monospace; font-size: 14px;
  letter-spacing: .1em; line-height: 2em; white-space: nowrap;
  overflow: hidden; text-overflow: ellipsis; cursor: pointer; max-width: 100%;
}

/* Button piece (Chrome/Edge/Firefox + Safari fallback) */
.wpcf7 input[type="file"]::file-selector-button,
.wpcf7 input[type="file"]::-webkit-file-upload-button{
  display: inline-flex; align-items: center; justify-content: center;
  padding: 14px 40x;            /* matches submit height better */
  font-family: Inconsolata, monospace; font-size: 14px; font-weight: 500;
  text-transform: uppercase; letter-spacing: .25em; line-height: 2em;
  background: transparent; color: #021527; border: 1px solid #021527; border-radius: 0;
  cursor: pointer; transition: color .3s, background-color .3s, border-color .3s;
  margin-right: 14px;            /* visual gap before filename */
}
.wpcf7 input[type="file"]::file-selector-button:hover,
.wpcf7 input[type="file"]::-webkit-file-upload-button:hover{
  background: #021527; color: #fff; border-color: #021527;
}
.wpcf7 input[type="file"]:focus-visible::file-selector-button,
.wpcf7 input[type="file"]::-webkit-file-upload-button:focus-visible{
  outline: 2px solid #021527; outline-offset: 2px;
}

/* Compact tweak */
@media (max-width: 600px){
  .wpcf7 input[type="file"]::file-selector-button,
  .wpcf7 input[type="file"]::-webkit-file-upload-button{ padding: 12px 32px; }
  .wpcf7 input[type="file"]{ letter-spacing: .08em; }
}
.wpcf7 input[type="submit"],
.wpcf7 button[type="submit"] {
  margin-top: 30px !important;
}

.qodef-grid .qodef-grid-item:nth-child(2)>div
{display:flex;justify-content: center;}

div#qodef-top-area {
    background: transparent;
}
.qodef-cf7-submit button {
    margin: 0 !important;
}
.qodef-e-top-holder, .qodef-e-info {
    display: none;
}

@media only screen and (max-width: 680px) {
  #qodef-page-footer [data-area="qodef-footer-top-area-column-2"],
  #qodef-page-footer [data-area="qodef-footer-top-area-column-2"] .wp-block-group,
  #qodef-page-footer [data-area="qodef-footer-top-area-column-2"] .wp-block-group__inner-container,
  #qodef-page-footer [data-area="qodef-footer-top-area-column-2"] p {
    text-align: left !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
  }
}
/* Halcyon launch: reserve header logo dimensions to reduce homepage CLS. */
#qodef-page-mobile-header,
#qodef-page-mobile-header-inner {
  min-height: 70px;
}

#qodef-page-mobile-header .qodef-mobile-header-logo-link {
  display: inline-flex;
  align-items: center;
  width: 150px;
  height: 50px;
}

#qodef-page-mobile-header .qodef-mobile-header-logo-link img.qodef-header-logo-image {
  display: block;
  width: 150px;
  height: 50px;
  object-fit: contain;
}

.home .wp-block-themepunch-revslider,
.home rs-module-wrap,
.home rs-module {
  min-height: 100vh;
}

@media (min-width: 1025px) {
  .home #qodef-page-header .qodef-header-logo-link img.qodef-header-logo-image {
    display: block;
    width: 180px;
    height: 60px;
    object-fit: contain;
  }
}

/* Halcyon launch: keep Revolution Slider visible if optimization delays init. */
.home rs-module-wrap[id^="rev_slider_"] {
  visibility: visible !important;
}

/* Halcyon launch: visible 404 fallback. */
.error404 #qodef-page-wrapper,
.error404 #qodef-page-outer,
.error404 #qodef-page-inner,
.error404 #qodef-page-content {
  background: #fff !important;
}

.error404 header#qodef-page-header {
  margin-bottom: 0 !important;
  background: #fff !important;
}

.error404 #qodef-page-inner {
  padding: 0 !important;
}

.error404 #qodef-404-page {
  min-height: 560px;
  padding: 120px 24px 140px !important;
  text-align: center;
  color: #000;
}

.error404 #qodef-404-page .qodef-404-background-text {
  color: #000;
  opacity: 0.06;
  top: 42%;
  pointer-events: none;
}

.error404 #qodef-404-page .qodef-404-title,
.error404 #qodef-404-page .qodef-404-subtitle,
.error404 #qodef-404-page .qodef-404-text {
  color: #000 !important;
  position: relative;
  z-index: 2;
}

.error404 #qodef-404-page .qodef-404-title {
  margin: 0 0 18px !important;
}

.error404 #qodef-404-page .qodef-404-subtitle {
  margin: 0 0 18px !important;
}

.error404 #qodef-404-page .qodef-404-text {
  max-width: 640px;
}

.error404 #qodef-404-page .qodef-404-button .qodef-button.qodef-layout--outlined {
  border-color: #031c33 !important;
  color: #031c33 !important;
  background: transparent !important;
}

.error404 #qodef-404-page .qodef-404-button .qodef-button.qodef-layout--outlined:hover {
  border-color: #031c33 !important;
  color: #fff !important;
  background: #031c33 !important;
}

@media only screen and (max-width: 680px) {
  .error404 #qodef-404-page {
    min-height: 480px;
    padding: 90px 20px 110px !important;
  }

  .error404 #qodef-404-page .qodef-404-background-text {
    font-size: 150px;
  }

  .error404 #qodef-404-page .qodef-404-subtitle {
    font-size: 42px;
  }
}

/* Halcyon launch: prevent stuck 404 preloader. */
.error404 .qodef-page-spinner,
.error404 #qodef-page-spinner,
.error404 .qodef-m-spinner,
.error404 .qodef-spinner-holder {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

.error404.qodef--loading,
.error404.qodef-page-is-loading,
.error404.qodef-page-spinner--enabled {
  overflow: auto !important;
}

/* Halcyon launch: mobile footer column alignment. */
@media only screen and (max-width: 680px) {
  #qodef-page-footer #qodef-page-footer-top-area-inner,
  #qodef-page-footer #qodef-page-footer-top-area .qodef-grid,
  #qodef-page-footer #qodef-page-footer-top-area .qodef-grid-inner,
  #qodef-page-footer #qodef-page-footer-top-area .qodef-grid-item,
  #qodef-page-footer #qodef-page-footer-top-area .widget,
  #qodef-page-footer #qodef-page-footer-top-area .wp-block-group,
  #qodef-page-footer #qodef-page-footer-top-area .wp-block-group__inner-container,
  #qodef-page-footer #qodef-page-footer-top-area p,
  #qodef-page-footer #qodef-page-footer-top-area h1,
  #qodef-page-footer #qodef-page-footer-top-area h2,
  #qodef-page-footer #qodef-page-footer-top-area h3,
  #qodef-page-footer #qodef-page-footer-top-area h4,
  #qodef-page-footer #qodef-page-footer-top-area .qodef-widget-title,
  #qodef-page-footer #qodef-page-footer-top-area .menu,
  #qodef-page-footer #qodef-page-footer-top-area .menu li {
    text-align: left !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
  }

  #qodef-page-footer #qodef-page-footer-top-area .qodef-grid-item,
  #qodef-page-footer #qodef-page-footer-top-area .widget {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  #qodef-page-footer #qodef-page-footer-top-area .widget[data-area="qodef-footer-top-area-column-2"],
  #qodef-page-footer #qodef-page-footer-top-area .widget[data-area="qodef-footer-top-area-column-2"] * {
    text-align: left !important;
  }
}

/* Halcyon V2 form pages. */
.halcyon-v2-form-page {
  width: min(1120px, calc(100% - 48px));
  margin: 42px auto 96px;
}

.halcyon-v2-form-page .halcyon-v2-form-intro {
  margin: 0 0 28px;
}

.halcyon-v2-form-page .halcyon-v2-form-intro p {
  margin: 0;
  max-width: 920px;
}

@media only screen and (max-width: 680px) {
  .halcyon-v2-form-page {
    width: calc(100% - 40px);
    margin: 34px auto 72px;
  }
}

/* Halcyon V2 Elementor form pages polish. */
.page-id-5764 #qodef-page-inner,
.page-id-5765 #qodef-page-inner {
  padding-top: 0;
}

.page-id-5764 #qodef-page-content .elementor-section.elementor-top-section,
.page-id-5765 #qodef-page-content .elementor-section.elementor-top-section {
  width: min(1120px, calc(100% - 48px));
  margin-left: auto;
  margin-right: auto;
}

.page-id-5764 .qodef-page-title,
.page-id-5765 .qodef-page-title {
  margin-bottom: 0;
}

@media only screen and (max-width: 680px) {
  .page-id-5764 #qodef-page-content .elementor-section.elementor-top-section,
  .page-id-5765 #qodef-page-content .elementor-section.elementor-top-section {
    width: calc(100% - 40px);
  }
}


/* Halcyon launch: hide Hire/Register gallery on mobile so users reach the form faster. */
@media only screen and (max-width: 768px) {
  body.page-id-5424 .elementor-element-54b5bd6,
  body.page-id-5490 .elementor-element-54b5bd6 {
    padding-bottom: 20px !important;
  }

  body.page-id-5424 .elementor-element-fa0f252,
  body.page-id-5490 .elementor-element-fa0f252 {
    display: none !important;
  }

  body.page-id-5424 .elementor-element-c8468b3,
  body.page-id-5490 .elementor-element-c8468b3 {
    margin-top: 0 !important;
    padding-top: 30px !important;
  }
}
