/**
 * clone.css
 *
 * Pixel-faithful recreation of the marinajohnspass.com look, based on the
 * original CyberChimps "Responsive 1.6.2" theme. Loaded last so it defines the
 * final visual layer over the base theme structure. Colours, grid maths, fonts
 * and spacing mirror the source site's stylesheet.
 *
 * Palette:
 *   marina blue widgets   #268dc6  (border #1c79a9)
 *   nav buttons           #353535  (hover grey gradient)
 *   active nav tab        #d23600
 *   links                 #0066cc
 *   body text             #404040
 *   content text          #00486b
 *   page background       #efefef
 */

/* ------------------------------------------------------------------ */
/* Base + container                                                   */
/* ------------------------------------------------------------------ */

body {
  background-color: #efefef;
  color: #404040;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.5em;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

/* Outer 960px container with the signature rounded bottom + blue glow. */
.jpm-site {
  max-width: 990px;
  margin: 0 auto;
  padding: 0 19px;
  background: rgb(246 248 250 / 64%);
  border-radius: 0 0 7px 7px;
  box-shadow: 0 2px 10px 3px rgba(66, 97, 138, 0.8);
}

/* ------------------------------------------------------------------ */
/* Top navigation (full-width dark buttons, orange active tab)        */
/* ------------------------------------------------------------------ */

.jpm-topbar {
  position: static;
  background: transparent;
  box-shadow: none;
}

.jpm-topbar__inner {
  max-width: 960px;
  min-height: 0;
  padding: 0;
  display: block;
}

/* The brand logo is NOT in the top bar on the original — hide it here. */
.jpm-topbar__brand {
  display: none;
}

.jpm-topbar__nav {
  display: block;
  float: none;
}

.jpm-menu {
  display: block;
  margin: 0;
  padding: 0;
  gap: 0;
}

.jpm-menu::after {
  content: "";
  display: block;
  clear: both;
}

.jpm-menu li {
  float: left;
  margin: 0 5px 0 0;
  position: relative;
}

.jpm-menu li:last-child {
  margin-right: 0;
}

.jpm-menu a {
  display: block;
  height: 35px;
  line-height: 35px;
  padding: 0 1.39em;
  margin: 0;
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  text-decoration: none;
  text-shadow: 0 1px 1px #242424;
  background: #353535;
  border-radius: 0 0 7px 7px;
}

.jpm-menu a:hover,
.jpm-menu a:focus {
  background: linear-gradient(to bottom, #808080, #363636);
  color: #fff;
}

.jpm-menu .current-menu-item > a,
.jpm-menu .current_page_item > a,
.jpm-menu [aria-current="page"] {
  background: #d23600;
  color: #fff;
  border-radius: 0 0 7px 7px;
}

/* Submenus: white dropdown */
.jpm-menu .sub-menu {
  background: #fff;
  border: 1px solid #b2b2b2;
  border-top: none;
  border-radius: 0;
  box-shadow: none;
  min-width: 15em;
  padding: 0;
}

.jpm-menu .sub-menu a {
  background: #fff;
  color: #444;
  height: auto;
  line-height: 20px;
  padding: 5px 10px;
  font-size: 12px;
  font-weight: 400;
  text-shadow: none;
  border-radius: 0;
}

.jpm-menu .sub-menu a:hover {
  background: #f5f5f5;
  color: #444;
}

/* Kill the modern search/social/toggle chrome from the base theme. */
.jpm-topbar__utils,
.jpm-search-toggle,
.jpm-search-panel,
.jpm-topbar .jpm-social-menu {
  display: none !important;
}

/* ------------------------------------------------------------------ */
/* Layout: 12-col fluid grid inside 960px                             */
/* ------------------------------------------------------------------ */

.jpm-layout {
  display: block;
  max-width: 960px;
  margin: 20px auto 0;
  padding: 0;
  gap: 0;
}

.jpm-layout::after {
  content: "";
  display: block;
  clear: both;
}

/* Left sidebar = col-220 (23.404%), right content = col-700 (74.468%). */
.jpm-sidebar {
  position: static;
  float: left;
  width: 23.404255319149%;
  margin-right: 2.127659574468%;
  display: block;
  gap: 0;
}

.jpm-content {
  float: left;
  width: 74.468085106383%;
  margin-right: 0;
}

.jpm-content__inner {
  background: transparent;
  border: none;
  border-radius: 0;
  box-shadow: none;
  padding: 0;
  margin-top: 0;
}

/* ------------------------------------------------------------------ */
/* Sidebar logo + marina-blue widget boxes                            */
/* ------------------------------------------------------------------ */

.jpm-sidebar__logo {
  background: transparent;
  border: none;
  border-radius: 0;
  box-shadow: none;
  padding: 0;
  margin-bottom: 20px;
  text-align: left;
}

.jpm-sidebar__logo .custom-logo,
.jpm-sidebar__logo img {
  max-width: 220px;
  height: auto;
  margin: 0;
}

/* All sidebar boxes share the marina-blue widget-wrapper styling. */
.jpm-sidebar__block,
.jpm-sidebar__widgets {
  background: #268dc6;
  border: 1px solid #1c79a9;
  border-radius: 6px;
  box-shadow: none;
  padding: 10px;
  margin: 0 0 20px;
  font-size: 13px;
  color: #fff;
}

.jpm-sidebar__block a,
.jpm-sidebar__widgets a {
  color: #fff;
}

/* Widget titles: white text, white underline, condensed face. */
.jpm-sidebar__heading,
.jpm-sidebar__block .widget__title,
.jpm-sidebar__widgets .widget__title {
  display: block;
  font-family: "Franklin Gothic Medium Cond", Arial, Helvetica, sans-serif;
  font-size: 20px;
  font-weight: normal;
  line-height: 20px;
  color: #fff;
  text-transform: none;
  letter-spacing: 0;
  margin: 0;
  padding: 0 0 5px 0;
  border-bottom: 1px solid #fff;
}

/* Arrow-bullet lists inside the blue boxes. */
.jpm-features__list,
.jpm-sidebar__block ul {
  margin: 10px 0 0;
  padding: 0;
  list-style: none;
  display: block;
}

.jpm-features__list li,
.jpm-sidebar__block ul li {
  background: none;
  padding: 0 0 7px 12px;
  margin: 0;
  line-height: 16px;
  list-style: none;
  position: relative;
  display: list-item;
}

/* Simple triangle bullet to mimic the original arrow.png. */
.jpm-features__list li::before,
.jpm-sidebar__block ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 5px;
  border-style: solid;
  border-width: 4px 0 4px 6px;
  border-color: transparent transparent transparent #ffffff;
}

/* Features: original has no icons, just text bullets. */
.jpm-features__item {
  display: block;
}

.jpm-features__icon {
  display: none;
}

.jpm-features__title {
  display: inline;
  font-weight: 400;
  font-size: 13px;
  color: #fff;
}

.jpm-features__desc {
  display: none;
}

/* Latest news list inside the blue box. */
.jpm-latest-news__list {
  margin: 10px 0 0;
  padding: 0;
  display: block;
}

.jpm-latest-news__link {
  display: block;
  color: #fff;
}

.jpm-latest-news__thumb {
  display: none;
}

.jpm-latest-news__title {
  display: block;
  font-weight: 600;
  font-size: 14px;
  color: #fff;
  padding-top: 0;
  line-height: 1.35;
}

.jpm-latest-news__date {
  display: none;
}

.jpm-latest-news__more {
  color: #003958;
  font-weight: 700;
}

/* Contact / phone block: on the original this is just an image widget,
   but we keep the structured version styled to fit the blue box. */
.jpm-contact__phones {
  display: block;
  margin: 10px 0 0;
}

.jpm-phone {
  background: rgba(255, 255, 255, 0.12);
  color: #fff;
  border-radius: 4px;
  padding: 6px 8px;
  margin-bottom: 6px;
}

.jpm-phone__icon {
  background: #fff;
  color: #268dc6;
}

.jpm-phone__label {
  color: rgba(255, 255, 255, 0.85);
}

.jpm-phone__number {
  color: #fff;
}

.jpm-contact__email,
.jpm-contact__address {
  color: #fff;
}

/* Weather box */
.jpm-weather__location,
.jpm-weather__wind,
.jpm-weather__updated {
  color: rgba(255, 255, 255, 0.9);
}

.jpm-weather__temp-value,
.jpm-weather__summary {
  color: #fff;
}

.jpm-weather__heading-icon {
  color: #fff;
}

/* ------------------------------------------------------------------ */
/* Content column                                                     */
/* ------------------------------------------------------------------ */

.jpm-content__inner h1,
.jpm-single__title,
.jpm-page__title {
  color: #00486b;
  font-size: 1.5em;
  font-weight: 700;
  margin: 1em 0 0.5em;
}

/* The original hides the page <h1> ("Home") on published pages. */
.jpm-content--home .jpm-page__title,
.jpm-content--home h1 {
  display: none;
}

.post-entry,
.jpm-entry__excerpt,
.jpm-single__content,
.jpm-page__content {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 14px;
  line-height: 20px;
  color: #00486b;
}

.jpm-content__inner h3,
.jpm-welcome__heading {
  color: #00486b;
  font-size: 1.5em;
  font-weight: 700;
  padding-bottom: 0;
}

.jpm-welcome__heading::after {
  display: none;
}

.jpm-content__inner h4 {
  color: #00486b;
  font-size: 1.3em;
  font-weight: 700;
}

.jpm-content__inner ul {
  list-style: disc;
  margin-left: 0;
  color: #00486b;
}

.jpm-content__inner ul li {
  margin-bottom: 0.2em;
}

a {
  color: #0066cc;
  font-weight: 400;
  text-decoration: none;
}

a:hover {
  color: #444;
}

/* Top feature/slider image in the content column (max 725px wide). */
.jpm-hero {
	max-width: 725px;
	border-radius: 0;
	box-shadow: none;
	aspect-ratio: 725 / 290;
	min-height: 200px;
	margin-bottom: 20px;
	background: #083f61;
}

/* Ensure the slide track and slides fill the hero so it never collapses. */
.jpm-hero__viewport {
	position: absolute;
	inset: 0;
}

.jpm-hero__slide {
	position: absolute;
	inset: 0;
	height: 100%;
}

.jpm-hero__slide.is-active,
.jpm-hero__slide:first-child {
	position: relative;
	opacity: 1;
	height: 100%;
}

.jpm-hero__media {
	position: absolute;
	inset: 0;
	height: 100%;
}

.jpm-hero__image {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.jpm-hero__image {
  border-radius: 0;
}

/* News grid → simple stacked list like the original archive. */
.jpm-news-grid__list {
  display: block;
}

.jpm-card {
  border: none;
  border-radius: 0;
  box-shadow: none;
  background: transparent;
  margin-bottom: 20px;
  border-bottom: 1px dotted #ccc;
  padding-bottom: 15px;
}

.jpm-card:hover {
  transform: none;
  box-shadow: none;
}

.jpm-card__title {
  color: #00486b;
  font-size: 1.3em;
}

.jpm-card__title a {
  color: #00486b;
}

/* ------------------------------------------------------------------ */
/* Hero slider fail-safe                                              */
/* If JavaScript is disabled or slow to load, make sure the first     */
/* slide is still visible instead of a blank (opacity:0) box.         */
/* ------------------------------------------------------------------ */

.jpm-hero__slide:first-child {
	opacity: 1;
	position: relative;
}

.jpm-hero__slide.is-active {
	opacity: 1;
	position: relative;
}

.no-js .jpm-hero__nav,
.no-js .jpm-hero__dots {
	display: none;
	opacity:0;
}
.jpm-hero__caption, .jpm-hero__nav, .jpm-hero__dots, .jpm-weather{
	display: none!important;
}

/* ------------------------------------------------------------------ */
/* Footer: textured, rounded, blue glow                               */
/* ------------------------------------------------------------------ */

.jpm-footer {
  background: rgba(246, 248, 250, 0.6);
  color: #333;
  max-width: 990px;
  margin: 15px auto;
  padding: 0 25px 0;
  border-radius: 7px;
  box-shadow: 0 2px 10px 3px rgba(66, 97, 138, 0.8);
}

.jpm-footer__inner {
  display: block;
  padding: 0;
  max-width: none;
}

.jpm-footer a {
  color: #333;
  font-weight: 400;
}

.jpm-footer__bottom {
  background: transparent;
}

.jpm-footer__bottom-inner {
  max-width: none;
  padding: 10px 0;
  font-size: 11px;
  color: #333;
}

.jpm-footer__copyright {
  color: #333;
  font-size: 11px;
}

/* Hide modern footer widget columns / about block for a faithful match. */
.jpm-footer__about,
.jpm-footer__widgets,
.jpm-footer .jpm-social-menu {
  display: none;
}

/* ------------------------------------------------------------------ */
/* Responsive: match the original breakpoints                         */
/* ------------------------------------------------------------------ */

@media screen and (max-width: 980px) {
  .jpm-sidebar,
  .jpm-content {
    float: none;
    width: 100%;
    margin-right: 0;
  }
}

@media screen and (max-width: 650px) {
  /* Original hides the whole nav header + sidebar widgets on phones. */
  .jpm-sidebar__block,
  .jpm-sidebar__widgets {
    display: none;
  }

  .jpm-sidebar__logo {
    text-align: center;
    padding-top: 25px;
  }

  .jpm-menu li {
    float: none;
    text-align: center;
  }

  .jpm-menu a {
    border-radius: 0;
  }

  .jpm-footer {
    text-align: center;
  }
}

/* ------------------------------------------------------------------ */
/* Custom sidebar image block                                         */
/* ------------------------------------------------------------------ */

.jpm-sidebar__custom {
  margin: 0 0 20px;
}

.jpm-sidebar__custom img,
.jpm-sidebar__custom-image {
  display: block;
  max-width: 100%;
  height: auto;
  border-radius: 4px;
}

fieldset {
  border: 1px solid;
  margin: 0 0 15px 0;
  padding: 1em 1em 0 1em;
  -webkit-border-radius: 7px;
  border-radius: 7px;
  -webkit-box-shadow: 0px 0px 5px 1px rgba(160, 160, 160, 0.5);
  box-shadow: 0px 0px 5px 1px rgba(160, 160, 160, 0.5);
}

.screen-reader-response {
  position: absolute;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  width: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  word-wrap: normal !important;
}

.formenq,
.formenq li {
  margin: 0;
  padding: 0;
  float: left;
  width: 100%;
  display: block;
  box-sizing: border-box;
}
.formenq li {
  width: 45%;
  float: left;
  margin: 0 2.5% 20px;
  position: relative;
}

.formenq li label {
  display: block;
  font-weight: 700;
  padding: 2px 0;
}

.wpcf7-form-control-wrap {
  position: relative;
}

.redform {
  color: #e10000;
  font-size: 14px;
}
.wpcf7-form-control-wrap {
  position: relative;
}
input.txt {
  width: 92%;
  padding: 6px 8px;
  border: 1px solid #268dc6;
  -webkit-border-radius: 7px;
  border-radius: 7px;
}

span.wpcf7-not-valid-tip {
  position: absolute;
  top: 22px !important;
  left: 4% !important;
  z-index: 100;
  background: none !important;
  border: 0px solid #ff0000 !important;
  font-size: 10pt;
  width: 280px;
  padding: 2px;
  color: #ff0000;
  font: 12px tahoma !important;
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
  border-color: #ffb900;
}

.wpcf7-spinner {
  visibility: hidden;
  display: inline-block;
  background-color: #23282d; /* Dark Gray 800 */
  opacity: 0.75;
  width: 24px;
  height: 24px;
  border: none;
  border-radius: 100%;
  padding: 0;
  margin: 0 24px;
  position: relative;
}
textarea.txtare {
  width: 100%;
  padding: 6px 8px;
  border: 1px solid #268dc6;
  -webkit-border-radius: 7px;
  border-radius: 7px;
  background: url(images/bg_main.png) repeat 0 0 !important;
  height: 70px !important;
}
.wpcf7-list-item {
  display: inline-block;
  margin: 0 0 0 1em;
}

.formenq li:nth-child(11), .formenq li:nth-child(13) {
    width: 94%;
    float: left;
    margin: 0 2.5% 20px;
}

.formenq li p {
    margin: 0 0 1.1em;
}

form div {
    clear: both;
}

button,
a.button,
input[type="button"],
input[type="submit"],
input[type="reset"],
.btn,
.read-more a,
button:hover,
a.button:hover,
input[type="button"]:hover,
input[type="submit"]:hover,
input[type="reset"]:hover,
.btn:hover {
  background-attachment: scroll;
  background-clip: border-box;
  background-color: rgb(0, 85, 204);
  background-image: -webkit-linear-gradient(
    top,
    rgb(0, 136, 204),
    rgb(0, 85, 204)
  );
  background-origin: padding-box;
  background-position: 0px -30px;
  background-repeat: repeat-x;
  border-bottom-color: rgba(0, 0, 0, 0.246094);
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  border-left-color: rgba(0, 0, 0, 0.0976563);
  border-left-style: solid;
  border-left-width: 1px;
  border-right-color: rgba(0, 0, 0, 0.0976563);
  border-right-style: solid;
  border-right-width: 1px;
  border-top-color: rgba(0, 0, 0, 0.0976563);
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
  border-top-style: solid;
  border-top-width: 1px;
  box-shadow:
    rgba(255, 255, 255, 0.199219) 0px 1px 0px 0px inset,
    rgba(0, 0, 0, 0.046875) 0px 1px 2px 0px;
  box-sizing: border-box;
  color: rgb(255, 255, 255);
  cursor: pointer;
  display: inline-block;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 13px;
  font-weight: normal;
  height: 28px;
  letter-spacing: normal;
  line-height: 18px;
  margin-bottom: 0px;
  margin-left: 0px;
  margin-right: 0px;
  margin-top: 0px;
  padding-bottom: 4px;
  padding-left: 10px;
  padding-right: 10px;
  padding-top: 4px;
  text-align: center;
  text-decoration: none;
  text-indent: 0px;
  text-shadow: rgba(0, 0, 0, 0.246094) 0px -1px 0px;
  text-transform: none;
  vertical-align: middle;
  min-width: 63px;
  word-spacing: 0px;
}

input.btn,
input[type="submit"].btn {
  *padding-top: 2px;
  *padding-bottom: 2px;
}

input.btn::-moz-focus-inner,
input[type="submit"].btn::-moz-focus-inner {
  padding: 0;
  border: 0;
}
span.wpcf7-not-valid-tip {
  position: absolute;
  top: 22px !important;
  left: 4% !important;
  z-index: 100;
  background: none !important;
  border: 0px solid #ff0000 !important;
  font-size: 10pt;
  width: 280px;
  padding: 2px;
  color: #ff0000;
  font: 12px tahoma !important;
}

a.title-contribution {
  font-weight: bold;
  padding-top: 10px !important;
  font-size: 14px;
}
.category-news {
  color: #fff !important;
}
#latest-news-widget-2 .status-publish p {
  margin-bottom: 1em;
  color: #ffffff;
}
#latest-news-widget-2 .status-publish p a {
  color: #003958 !important;
}

/* ============ HERO SLIDER FIX (slide gayab na ho) ============ */
.jpm-hero {
	max-width: 725px;
	border-radius: 0;
	box-shadow: none;
	aspect-ratio: 725 / 290;
	min-height: 200px;
	margin-bottom: 20px;
	background: #083f61;
}

.jpm-hero__viewport {
	position: absolute;
	inset: 0;
}

.jpm-hero__slide {
	position: absolute;
	inset: 0;
	height: 100%;
}

.jpm-hero__slide.is-active,
.jpm-hero__slide:first-child {
	position: relative;
	opacity: 1;
	height: 100%;
}

.jpm-hero__media {
	position: absolute;
	inset: 0;
	height: 100%;
}

.jpm-hero__image {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* ============ PHONE / CUSTOM IMAGE BOX ============ */
.jpm-sidebar__custom {
	margin: 0 0 20px;
}

.jpm-sidebar__custom img,
.jpm-sidebar__custom-image {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
	border-radius: 4px;
}

.jpm-sidebar__custom .jpm-sidebar__heading + a,
.jpm-sidebar__custom .jpm-sidebar__heading + img {
	display: block;
	margin-top: 10px;
}

/* ============ HERO FAIL-SAFE (JS na chale to bhi slide dikhe) ============ */
.jpm-hero__slide:first-child {
	opacity: 1;
	position: relative;
}

.jpm-hero__slide.is-active {
	opacity: 1;
	position: relative;
}

.no-js .jpm-hero__nav,
.no-js .jpm-hero__dots {
	display: none;
}
.jpm-page__header{
	display: none;
}
