/*
   Moje Pireneje — modern layout override
   Load this stylesheet after the theme and plugin stylesheets.
   Existing colours, navigation, content, images and links are preserved.
*/

:root {
  --mountain-black: #000000;
  --mountain-blue: #0693e3;
  --mountain-red: #dd3333;
  --mountain-line: #1e73be;
  --mountain-white: #ffffff;
  --mountain-muted: #b1adad;
}

html { scroll-behavior: smooth; }

body.home {
  background: #101416 !important;
  color: var(--mountain-white) !important;
  font-family: Bitter, Georgia, serif !important;
  line-height: 1.75;
}

#outer-wrap,
#wrap {
  background: transparent !important;
}

.boxed-layout #wrap {
  width: min(1300px, calc(100% - 32px)) !important;
  margin: 18px auto !important;
  overflow: hidden;
  border: 1px solid rgba(30, 115, 190, .72);
  border-radius: 18px;
  box-shadow: 0 24px 72px rgba(0, 0, 0, .48);
}

.container,
#content-wrap.container {
  width: min(1140px, calc(100% - 48px)) !important;
  max-width: none !important;
}

/* Header and existing desktop menu */
#site-header,
#site-header.has-header-media .overlay-header-media {
  background: rgba(0, 0, 0, .96) !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(30, 115, 190, .75) !important;
}

#site-header-inner {
  min-height: 76px;
  padding: 12px 0 !important;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
}

#site-logo,
#site-navigation-wrap { float: none !important; }

#site-logo-inner,
#site-logo #site-logo-inner {
  height: auto !important;
  display: flex;
  align-items: center;
}

#site-logo .custom-logo {
  width: min(265px, 38vw) !important;
  height: auto !important;
  max-height: 58px;
  object-fit: contain;
}

#site-navigation-wrap .dropdown-menu > li > a {
  height: 44px;
  line-height: 44px !important;
  padding: 0 13px !important;
  color: var(--mountain-white) !important;
  background: transparent !important;
  font-family: "Trebuchet MS", sans-serif !important;
  font-size: 14px !important;
  letter-spacing: .025em;
}

#site-navigation-wrap .dropdown-menu > li > a > span {
  position: relative;
  display: block;
}

#site-navigation-wrap .dropdown-menu > li > a > span::after {
  position: absolute;
  right: 0;
  bottom: 5px;
  left: 0;
  height: 2px;
  background: var(--mountain-blue);
  content: "";
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .22s ease;
}

#site-navigation-wrap .dropdown-menu > li:hover > a,
#site-navigation-wrap .dropdown-menu > li.sfHover > a,
#site-navigation-wrap .dropdown-menu > li > a:hover { color: var(--mountain-red) !important; }

#site-navigation-wrap .dropdown-menu > li:hover > a > span::after,
#site-navigation-wrap .dropdown-menu > li.sfHover > a > span::after { transform: scaleX(1); }

.dropdown-menu .sub-menu {
  top: calc(100% - 2px) !important;
  min-width: 220px;
  padding: 8px !important;
  border: 1px solid var(--mountain-line) !important;
  border-radius: 10px;
  background: #000 !important;
  box-shadow: 0 18px 32px rgba(0,0,0,.45);
}

.dropdown-menu ul li a.menu-link {
  border-radius: 6px;
  color: var(--mountain-white) !important;
  line-height: 1.35 !important;
  padding: 10px 12px !important;
}
.dropdown-menu ul li a.menu-link:hover { background: rgba(6,147,227,.14) !important; color: var(--mountain-red) !important; }
.search-toggle-li a { padding-left: 18px !important; }

/* Main composition */
#main { background: transparent !important; padding: 0 0 72px; }
#content-wrap { padding-top: 0 !important; }
#primary.content-area { width: 100% !important; }
.single-page-article .entry { padding: 0 !important; }

.entry > .wp-block-image:first-child,
.entry > .wp-block-image:first-child figure {
  margin: 0 !important;
  max-width: none !important;
}

.entry > .wp-block-image:first-child img {
  display: block;
  width: 100%;
  height: clamp(210px, 27vw, 340px);
  object-fit: cover;
  filter: saturate(1.06) contrast(1.04);
}

/* Intro */
.section-g035401 { margin: 0 auto 28px; text-align: center; }
.section-g035401.gutentor-element-advanced-text .gutentor-text {
  display: inline-block;
  margin: 0;
  color: var(--mountain-blue) !important;
  font-family: Bitter, Georgia, serif !important;
  font-size: clamp(31px, 5vw, 52px) !important;
  font-style: italic;
  font-weight: 400;
  letter-spacing: .13em !important;
  line-height: 1.12;
  text-shadow: 0 8px 28px rgba(6,147,227,.18);
}
.section-g035401:hover .gutentor-text { color: var(--mountain-red) !important; }

.uagb-block-44a47a64 { max-width: 900px; margin: 0 auto !important; }
.uagb-block-44a47a64 .uagb-blockquote__wrap { margin: 0 !important; }
.uagb-block-44a47a64 .uagb-blockquote__skin-border blockquote.uagb-blockquote {
  position: relative;
  margin: 0 !important;
  padding: clamp(26px, 4vw, 44px) !important;
  border: 1px solid rgba(30,115,190,.78) !important;
  border-left: 5px solid var(--mountain-blue) !important;
  border-radius: 0 14px 14px 0;
  background: linear-gradient(135deg, rgba(6,147,227,.12), rgba(0,0,0,.88) 45%);
  box-shadow: 0 18px 44px rgba(0,0,0,.24);
}
.uagb-blockquote__content { color: var(--mountain-white); font-size: clamp(16px, 1.8vw, 18px); }
.uagb-blockquote__content a { color: var(--mountain-blue) !important; font-weight: 700; letter-spacing: .04em; text-decoration: none; }
.uagb-blockquote__content a:hover { color: var(--mountain-red) !important; }
.uagb-blockquote__author-wrap { margin-top: 26px !important; align-items: center; }
.uagb-blockquote__author-image img { border: 2px solid var(--mountain-blue) !important; box-shadow: 0 7px 20px rgba(0,0,0,.35); }
.uagb-block-44a47a64 cite.uagb-blockquote__author { color: var(--mountain-blue) !important; font-style: normal; }

/* Mountain category cards */
#section-fbd3a338-9b69-4384-ac28-e2b8598e881b { margin: 0 auto; }
#section-fbd3a338-9b69-4384-ac28-e2b8598e881b .gutentor-title,
.section-g3de775.gutentor-element-advanced-text .gutentor-text {
  color: var(--mountain-blue) !important;
  font-family: Bitter, Georgia, serif !important;
  font-style: italic;
  font-weight: 400;
}
#section-fbd3a338-9b69-4384-ac28-e2b8598e881b .gutentor-title { font-size: clamp(27px, 4vw, 40px); margin-bottom: 32px; }
#section-fbd3a338-9b69-4384-ac28-e2b8598e881b .gutentor-grid-item-wrap { margin: 0 -12px; }
#section-fbd3a338-9b69-4384-ac28-e2b8598e881b .gutentor-grid-column { padding: 12px; }
#section-fbd3a338-9b69-4384-ac28-e2b8598e881b .gutentor-single-item .gutentor-template-wrapper {
  overflow: hidden;
  height: 100%;
  border: 1px solid rgba(30,115,190,.75);
  border-radius: 14px;
  background: #000;
  box-shadow: 0 14px 30px rgba(0,0,0,.23);
  transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}
#section-fbd3a338-9b69-4384-ac28-e2b8598e881b .gutentor-single-item:hover .gutentor-template-wrapper {
  border-color: var(--mountain-blue);
  box-shadow: 0 20px 42px rgba(0,0,0,.42);
  transform: translateY(-7px);
}
#section-fbd3a338-9b69-4384-ac28-e2b8598e881b .gutentor-single-item .gutentor-image-thumb { overflow: hidden; background: #000; }
#section-fbd3a338-9b69-4384-ac28-e2b8598e881b .gutentor-single-item .normal-image { display: block; width: 100%; height: 220px; object-fit: cover; transition: transform .55s ease, opacity .35s ease; }
#section-fbd3a338-9b69-4384-ac28-e2b8598e881b .gutentor-single-item:hover .normal-image { opacity: .82; transform: scale(1.07); }
#section-fbd3a338-9b69-4384-ac28-e2b8598e881b .gutentor-single-item-content { padding: 18px 20px 20px !important; background: #000; }
#section-fbd3a338-9b69-4384-ac28-e2b8598e881b .gutentor-single-item-title { margin: 0 !important; color: var(--mountain-white) !important; font-family: "Trebuchet MS", sans-serif !important; font-size: 20px !important; }
#section-fbd3a338-9b69-4384-ac28-e2b8598e881b .gutentor-single-item-title-link:hover .gutentor-single-item-title { color: var(--mountain-red) !important; }

/* Latest post */
.section-g3de775 { max-width: 900px; margin: 0 auto 22px; }
.section-g3de775.gutentor-element-advanced-text .gutentor-text {
  display: inline-block;
  margin: 0;
  border-bottom: 1px solid var(--mountain-blue) !important;
  font-size: clamp(23px, 3vw, 31px);
  letter-spacing: .07em !important;
  padding-bottom: 8px;
}
.section-37d11795-8000-4b88-967c-6bbe4ceb8f56 { max-width: 900px; margin: 0 auto; }
.section-37d11795-8000-4b88-967c-6bbe4ceb8f56 .gutentor-post-item {
  display: grid;
  grid-template-columns: minmax(220px, .8fr) minmax(0, 1.2fr);
  overflow: hidden;
  margin: 0 !important;
  border: 1px solid rgba(30,115,190,.75);
  border-radius: 14px;
  background: #000;
  box-shadow: 0 14px 30px rgba(0,0,0,.25);
}
.gutentor-post-image-box .gutentor-image-thumb { height: 100%; min-height: 260px; overflow: hidden; }
.gutentor-post-image-box img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .55s ease; }
.gutentor-post-item:hover .gutentor-post-image-box img { transform: scale(1.05); }
.gutentor-post-content { align-self: center; padding: clamp(25px,4vw,42px) !important; }
.section-37d11795-8000-4b88-967c-6bbe4ceb8f56 .gutentor-post-title,
.section-37d11795-8000-4b88-967c-6bbe4ceb8f56 .gutentor-post-title a { color: var(--mountain-blue) !important; font-size: clamp(25px,3vw,34px); line-height: 1.2; }
.section-37d11795-8000-4b88-967c-6bbe4ceb8f56 .gutentor-post-title a:hover { color: var(--mountain-red) !important; }
.gutentor-entry-meta-primary { margin: 16px 0 !important; }
.section-37d11795-8000-4b88-967c-6bbe4ceb8f56 .gutentor-post .gutentor-entry-meta-primary div,
.section-37d11795-8000-4b88-967c-6bbe4ceb8f56 .gutentor-entry-meta-primary a { color: var(--mountain-muted) !important; }
.gutentor-post-desc { color: var(--mountain-white); }

/* Footer and utilities */
#footer-bottom { margin-top: 0; padding: 23px 0 !important; border-top: 1px solid rgba(30,115,190,.65); background: #000 !important; }
#copyright { color: var(--mountain-muted); font-size: 14px; text-align: center; }
#scroll-top { border-radius: 50%; background: var(--mountain-blue) !important; box-shadow: 0 10px 24px rgba(0,0,0,.35); }
#scroll-top:hover { background: var(--mountain-red) !important; }
a:focus-visible { outline: 2px solid var(--mountain-blue); outline-offset: 4px; }

@media (max-width: 959px) {
  #site-header-inner { min-height: 70px; }
  #site-navigation-wrap { display: none !important; }
  .oceanwp-mobile-menu-icon { display: block !important; margin-left: auto; }
  .oceanwp-mobile-menu-icon a { color: var(--mountain-white) !important; line-height: 42px !important; }
  #mobile-fullscreen { background: #000 !important; }
  #mobile-fullscreen ul li a { color: var(--mountain-white) !important; font-family: "Trebuchet MS", sans-serif; }
  #mobile-fullscreen ul li a:hover { color: var(--mountain-red) !important; }
}

@media (max-width: 680px) {
  .boxed-layout #wrap { width: 100% !important; margin: 0 !important; border: 0; border-radius: 0; }
  .container, #content-wrap.container { width: min(100% - 32px, 1140px) !important; }
  #site-header-inner { gap: 12px; }
  #site-logo .custom-logo { width: min(230px, 66vw) !important; }
  .entry > .wp-block-image:first-child img { height: 200px; }
  .wp-block-spacer { height: 34px !important; }
  .uagb-block-44a47a64 .uagb-blockquote__skin-border blockquote.uagb-blockquote { border-radius: 0 10px 10px 0; }
  .gutentor-single-item .normal-image { height: 205px; }
  .section-37d11795-8000-4b88-967c-6bbe4ceb8f56 .gutentor-post-item { grid-template-columns: 1fr; }
  .gutentor-post-image-box .gutentor-image-thumb { min-height: 210px; height: 210px; }
  .gutentor-post-content { padding: 26px !important; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}


/* Navigation recovery — retain OceanWP's original menu positioning and mobile behaviour. */
#site-header-inner {
  display: block;
  min-height: 0;
  padding: 0 !important;
}
#site-logo,
#site-navigation-wrap {
  float: inherit;
}
#site-logo { float: left; }
#site-navigation-wrap { float: right; }
#site-logo-inner,
#site-logo #site-logo-inner { display: block; }
#site-logo .custom-logo { max-height: none; }

/* Do not override the theme breakpoint or hide its menu controls. */
@media (max-width: 959px) {
  #site-navigation-wrap { display: block !important; }
  .oceanwp-mobile-menu-icon { display: none !important; }
}

@media (max-width: 767px) {
  #site-navigation-wrap { display: none !important; }
  .oceanwp-mobile-menu-icon { display: block !important; }
  #site-header-inner { min-height: 74px; display: flex; align-items: center; }
  #site-logo { float: none; }
}