/*
Theme Name: Qi Child – OFCA
Template: qi
Description: Motyw potomny Qi dla OFCA Travel. Wyjazdy jako wpisy, lata wyjazdów, listy wyjazdów [ofca_wyjazdy].
Version: 1.0.2
Text Domain: qi-child
*/

/* ===== Listy wyjazdów [ofca_wyjazdy] ===== */
.ofca-trips{--ofca-green:#334E41;--ofca-green-d:#2A4135;--ofca-cream:#F7EEE3;--ofca-beige:#ECE4D9;--ofca-card:#F5EDE3;--ofca-clay:#B67D58;--ofca-clay-l:#C99A76;--ofca-text:#4A4436;font-family:Mulish,sans-serif;color:var(--ofca-text)}
.ofca-trips *{box-sizing:border-box}
.ofca-trips__filters{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:0 0 48px}
.ofca-trips__chip{display:inline-flex;align-items:center;min-height:40px;padding:0 18px;border:1px solid #D9CBB8;border-radius:999px;font-size:13px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--ofca-green)!important;text-decoration:none!important;background:transparent;transition:all .2s}
.ofca-trips__chip:hover{border-color:var(--ofca-clay);color:var(--ofca-clay)!important}
.ofca-trips__chip.is-active{background:var(--ofca-green);border-color:var(--ofca-green);color:var(--ofca-cream)!important}
.ofca-trips__year{display:flex;align-items:center;gap:20px;margin:56px 0 28px}
.ofca-trips__year:first-of-type{margin-top:0}
.ofca-trips__year h2{margin:0;font-family:"DM Serif Display",serif;font-weight:400;font-size:40px;line-height:1;color:var(--ofca-green)}
.ofca-trips__year span{flex:1;height:1px;background:#D9CBB8}
.ofca-trips__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.ofca-trips__card{display:flex;flex-direction:column;background:var(--ofca-card);border-radius:10px;overflow:hidden;text-decoration:none!important;color:inherit!important;transition:transform .25s,box-shadow .25s}
.ofca-trips__card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(42,65,53,.14)}
.ofca-trips__img{position:relative;aspect-ratio:4/3;background:var(--ofca-beige);overflow:hidden}
.ofca-trips__img img{width:100%!important;height:100%!important;object-fit:cover;display:block;transition:transform .6s}
.ofca-trips__card:hover .ofca-trips__img img{transform:scale(1.04)}
.ofca-trips__badge{position:absolute;top:14px;left:14px;background:var(--ofca-green);color:var(--ofca-cream);font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;padding:7px 12px;border-radius:4px}
.ofca-trips__badge--soon{background:var(--ofca-clay)}
.ofca-trips__body{display:flex;flex-direction:column;gap:10px;padding:24px 24px 26px;flex:1}
.ofca-trips__tags{font-size:11px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:var(--ofca-clay)}
.ofca-trips__title{margin:0;font-family:"DM Serif Display",serif;font-weight:400;font-size:26px;line-height:1.15;color:var(--ofca-green)}
.ofca-trips__date{font-size:14px;letter-spacing:1.5px;color:#7A7262}
.ofca-trips__more{margin-top:auto;padding-top:12px;font-size:12px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--ofca-green)}
.ofca-trips__more::after{content:" →"}
.ofca-trips__empty{text-align:center;font-size:17px;padding:40px 0}
@media (max-width:1024px){.ofca-trips__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}}
@media (max-width:640px){.ofca-trips__grid{grid-template-columns:1fr}.ofca-trips__year h2{font-size:32px}.ofca-trips__title{font-size:23px}.ofca-trips__filters{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;margin-left:-16px;margin-right:-16px;padding:0 16px 6px}.ofca-trips__chip{flex:0 0 auto}}

/* Wpisy-wyjazdy zbudowane w Elementorze: bez paska tytułu motywu */
.single-post.post-template-elementor_header_footer .qodef-page-title,.single-post.post-template-elementor_canvas .qodef-page-title{display:none!important}
/* Strony zbiorcze wyjazdów mają własny nagłówek */
.page-id-8809 .qodef-page-title,.page-id-4690 .qodef-page-title{display:none!important}
/* Karty wyjazdów: wyróżnione od razu, a po najechaniu nowa animacja */
.ofca-trips a.ofca-trips__card{position:relative;box-shadow:0 18px 40px rgba(42,65,53,.14);transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s}
.ofca-trips__card::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--ofca-clay);transform:scaleX(0);transform-origin:left;transition:transform .45s cubic-bezier(.2,.7,.2,1)}
.ofca-trips__card:hover{transform:translateY(-8px);box-shadow:0 28px 60px rgba(42,65,53,.22)}
.ofca-trips__card:hover::after{transform:scaleX(1)}
.ofca-trips__img::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(42,65,53,0) 40%,rgba(42,65,53,.45));opacity:0;transition:opacity .45s}
.ofca-trips__card:hover .ofca-trips__img::after{opacity:1}
.ofca-trips__img img{transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.ofca-trips__card:hover .ofca-trips__img img{transform:scale(1.08)}
.ofca-trips__title{transition:color .3s}
.ofca-trips__card:hover .ofca-trips__title{color:var(--ofca-clay)}
.ofca-trips__more::after{content:"→";display:inline-block;margin-left:8px;transition:transform .35s}
.ofca-trips__card:hover .ofca-trips__more::after{transform:translateX(6px)}
.ofca-trips__card:focus-visible{outline:2px solid var(--ofca-clay);outline-offset:4px}
@media (prefers-reduced-motion:reduce){.ofca-trips__card,.ofca-trips__card *,.ofca-trips__card::after,.ofca-trips__img::after{transition:none!important}.ofca-trips__card:hover{transform:none}}
/* ===== Strona Kontakt ===== */
.page-id-724 .qodef-page-title,.page-id-12 .qodef-page-title{display:none!important}
.ofca-form .wpcf7 form{display:flex;flex-direction:column;gap:6px;font-family:Mulish,sans-serif}
.ofca-form .wpcf7 p{margin:0 0 14px}
.ofca-form .wpcf7 br{display:none}
.ofca-form .wpcf7 label{font-size:12px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:#B67D58}
.ofca-form .wpcf7 input[type=text],.ofca-form .wpcf7 input[type=email],.ofca-form .wpcf7 input[type=tel],.ofca-form .wpcf7 textarea{width:100%!important;margin:0!important;padding:14px 0!important;border:0!important;border-bottom:1px solid #CDBDA7!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;font-family:Mulish,sans-serif!important;font-size:16px!important;line-height:1.5!important;color:#334E41!important;transition:border-color .25s}
.ofca-form .wpcf7 textarea{height:130px!important;resize:vertical}
.ofca-form .wpcf7 input::placeholder,.ofca-form .wpcf7 textarea::placeholder{color:#8C8372!important;opacity:1}
.ofca-form .wpcf7 input:focus,.ofca-form .wpcf7 textarea:focus{outline:none!important;border-bottom-color:#334E41!important}
.ofca-form .wpcf7 .wpcf7-list-item{margin:0}
.ofca-form .wpcf7 .wpcf7-acceptance label,.ofca-form .wpcf7 .wpcf7-checkbox label{display:flex;gap:10px;align-items:flex-start;font-size:14px;font-weight:400;letter-spacing:0;text-transform:none;color:#4A4436;cursor:pointer}
.ofca-form .wpcf7 input[type=checkbox]{width:18px;height:18px;margin:2px 0 0;accent-color:#334E41;flex:0 0 18px}
.ofca-form .wpcf7 input[type=submit]{align-self:flex-start;min-height:52px;padding:0 40px!important;border:0!important;border-radius:0!important;background:#B67D58!important;color:#FFFFFF!important;font-family:Mulish,sans-serif!important;font-size:13px!important;font-weight:700!important;letter-spacing:2px!important;text-transform:uppercase!important;cursor:pointer;transition:background .25s}
.ofca-form .wpcf7 input[type=submit]:hover{background:#334E41!important}
.ofca-form .wpcf7-not-valid-tip{font-size:13px;color:#B0442E;margin-top:6px}
.ofca-form .wpcf7 form .wpcf7-response-output{margin:8px 0 0!important;padding:14px 18px!important;border:1px solid #CDBDA7!important;font-size:14px}
.ofca-form .wpcf7-spinner{margin:0 0 0 12px}
@media (max-width:640px){.ofca-form .wpcf7 input[type=submit]{width:100%}}
/* ===== Poznaj Ofcę: karty "Dlaczego warto" ===== */
.ofca-why .elementor-inner-section .elementor-column>.elementor-widget-wrap{box-shadow:0 18px 40px rgba(42,65,53,.10);transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s}
.ofca-why .elementor-inner-section .elementor-column:hover>.elementor-widget-wrap{transform:translateY(-6px);box-shadow:0 28px 60px rgba(42,65,53,.18)}
.ofca-why .elementor-widget-image .elementor-widget-container{overflow:hidden;border-radius:8px}
.ofca-why .elementor-widget-image img{transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.ofca-why .elementor-inner-section .elementor-column:hover .elementor-widget-image img{transform:scale(1.06)}
@media (prefers-reduced-motion:reduce){.ofca-why *{transition:none!important;transform:none!important}}
/* ===== Menu pełnoekranowe / mobilne ===== */
#qodef-fullscreen-area-inner.ofca-has-extra{flex-direction:column;align-items:flex-start;justify-content:center;gap:44px;padding:110px 0 60px;box-sizing:border-box;min-height:100%;height:auto!important}
.ofca-menu-extra{display:grid;box-sizing:border-box;grid-template-columns:auto auto;align-items:center;gap:22px 48px;width:100%;max-width:760px;padding-top:34px;border-top:1px solid rgba(215,193,170,.28);font-family:Mulish,sans-serif;opacity:0;transform:translateY(12px);transition:opacity .5s .25s,transform .5s .25s}
.qodef-fullscreen-menu--opened .ofca-menu-extra{opacity:1;transform:none}
.ofca-menu-extra a{text-decoration:none!important}
.ofca-menu-extra__next{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px;color:#F7EEE3!important}
.ofca-menu-extra__label{width:100%;font-size:11px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:#E3B48F}
.ofca-menu-extra__trip{font-family:"Gilda Display","DM Serif Display",serif;font-size:28px;line-height:1.2;color:#F7EEE3}
.ofca-menu-extra__date{font-size:14px;letter-spacing:1.5px;color:#C7CFC2}
.ofca-menu-extra__next:hover .ofca-menu-extra__trip{color:#E3B48F}
.ofca-menu-extra__cta{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 34px;background:#B67D58;color:#FFFFFF!important;font-size:13px;font-weight:700;letter-spacing:2px;text-transform:uppercase;transition:background .25s}
.ofca-menu-extra__cta:hover{background:#C99A76}
.ofca-menu-extra__contact{display:flex;flex-direction:column;gap:6px;font-size:15px}
.ofca-menu-extra__contact a{color:#E4D8C4!important}
.ofca-menu-extra__contact a:hover{color:#E3B48F!important}
.ofca-menu-extra__soc{grid-column:1/-1;display:flex;gap:12px}
.ofca-menu-extra__soc a{width:44px;height:44px;border:1px solid rgba(215,193,170,.4);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#E4D8C4!important;transition:border-color .2s,color .2s}
.ofca-menu-extra__soc a:hover{border-color:#E3B48F;color:#E3B48F!important}
@media (max-width:680px){#qodef-fullscreen-area-inner.ofca-has-extra{padding:96px 4px 40px;gap:32px}.ofca-menu-extra{grid-template-columns:1fr;gap:20px}.ofca-menu-extra__cta{width:100%}.ofca-menu-extra__trip{font-size:23px}}
@media (prefers-reduced-motion:reduce){.ofca-menu-extra{transition:none;opacity:1;transform:none}}
/* Hamburger i X w kolorze logo */
.qodef-fullscreen-menu-opener svg line,.qodef-fullscreen-menu-opener svg path,.qodef-fullscreen-menu-opener svg polyline{stroke:#D7C1AA!important}
.qodef-fullscreen-menu-opener{color:#D7C1AA!important}
.qodef-fullscreen-menu-opener:hover svg line,.qodef-fullscreen-menu-opener:hover svg path{stroke:#E3B48F!important}
/* Menu mobilne: wszystko na jednym ekranie */
@media (max-width:680px){
#qodef-fullscreen-area-inner.ofca-has-extra{justify-content:flex-start;padding:124px 4px 28px!important;gap:20px}
.admin-bar #qodef-fullscreen-area-inner.ofca-has-extra{padding-top:170px!important}
#qodef-fullscreen-area .qodef-fullscreen-menu{padding-top:0!important;padding-bottom:0!important;margin:0!important}
.qodef-fullscreen-menu>ul>li>a{font-size:25px!important;line-height:1.25!important}
.qodef-fullscreen-menu>ul>li{margin:0 0 4px!important}
.qodef-fullscreen-menu .sub-menu a{font-size:17px!important;line-height:1.4!important}
.ofca-menu-extra{grid-template-columns:1fr auto;gap:14px 16px;padding-top:18px}
.ofca-menu-extra__next{gap:2px 10px}
.ofca-menu-extra__trip{font-size:20px}
.ofca-menu-extra__date{font-size:13px}
.ofca-menu-extra__cta{grid-column:1/-1;min-height:46px}
.ofca-menu-extra__contact{font-size:14px;gap:4px}
.ofca-menu-extra__soc{grid-column:auto;align-self:center}
}
/* X zamykający menu w kolorze logo */
.qodef-fullscreen-menu-close svg line,.qodef-fullscreen-menu-close svg path,.qodef-fullscreen-menu-close svg polyline{stroke:#D7C1AA!important}
.qodef-fullscreen-menu-close{color:#D7C1AA!important}
.qodef-fullscreen-menu-close:hover svg line,.qodef-fullscreen-menu-close:hover svg path{stroke:#E3B48F!important}
/* Mobile: blok pod kreską przyklejony do dołu ekranu */
@media (max-width:680px){
#qodef-fullscreen-area-inner.ofca-has-extra{min-height:100vh;min-height:100dvh}
.ofca-menu-extra{margin-top:auto}
}

/* Karty: prowadzący i miejsca (1.2.0) */
.ofca-trips__badge{z-index:2;box-shadow:0 6px 18px rgba(42,65,53,.18)}
.ofca-trips__badge--full{background:#7A7262}
.ofca-trips__lead{font-size:14px;color:var(--ofca-text)}
.ofca-trips__lead strong{font-weight:700;color:var(--ofca-green)}
.ofca-trips__date + .ofca-trips__lead{margin-top:-4px}
.ofca-trips--compact .ofca-trips__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:640px){.ofca-trips--compact .ofca-trips__grid{grid-template-columns:1fr}}


/* Kafelek z cytatem w siatce wyjazdów (1.2.1) */
.ofca-trips__quote{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;padding:40px 32px;border-radius:10px;background:var(--ofca-green);text-align:center;box-shadow:0 18px 40px rgba(42,65,53,.14);min-height:100%}
.ofca-trips__quote blockquote{margin:0;padding:0;border:0;font-family:"DM Serif Display",serif;font-style:normal;font-weight:400;font-size:28px;line-height:1.25;color:var(--ofca-cream)}
.ofca-trips__quote blockquote::before,.ofca-trips__quote blockquote::after{content:none}
.ofca-trips__quote-line{width:40px;height:1px;background:var(--ofca-clay-l)}
.ofca-trips__quote cite{font-style:normal;font-size:15px;letter-spacing:1px;color:#D7C1AA}
@media (max-width:640px){.ofca-trips__quote{padding:44px 28px}.ofca-trips__quote blockquote{font-size:24px}}

.ofca-trips__quote::before{content:"";width:58px;height:58px;background:url(https://ofca.clickarts.pl/wp-content/uploads/2022/05/palma.webp) center/contain no-repeat;opacity:.9}


/* Galerie (slajdy) na stronach wyjazdów: proporcje zamiast stałej wysokości (1.2.3) */
.elementor-widget-slides .elementor-slides .swiper-slide{height:auto!important;aspect-ratio:3/2;overflow:hidden}
.elementor-widget-slides .elementor-slides .swiper-slide-bg{height:100%!important;background-position:center center!important}
.elementor-widget-slides .elementor-slides .swiper-slide-inner{height:100%!important}
@media (max-width:1024px){.elementor-widget-slides .elementor-slides .swiper-slide{aspect-ratio:4/3}}
@media (max-width:767px){
.elementor-widget-slides .elementor-slides .swiper-slide{aspect-ratio:auto;display:flex!important;flex-direction:column;background:#334E41}
.elementor-widget-slides .elementor-slides .swiper-slide-bg{position:relative!important;height:auto!important;min-height:0!important;aspect-ratio:4/3;flex:0 0 auto}
.elementor-widget-slides .elementor-slides .elementor-background-overlay{display:none}
.elementor-widget-slides .elementor-slides .swiper-slide-inner{position:relative!important;height:auto!important;flex:1 1 auto;padding:18px 20px 20px!important;display:flex;align-items:center;justify-content:center}
.elementor-widget-slides .elementor-slides .swiper-slide-inner:not(:has(.elementor-slide-description:not(:empty))){display:none!important}
.elementor-widget-slides .elementor-slides .elementor-slide-description{font-size:15px!important;line-height:1.5!important;margin:0!important;color:#F7EEE3!important}
.elementor-widget-slides .elementor-slides .swiper-slide-contents{animation:none!important}
}

/* Galerie zdjęć w relacjach (Qi) */
.qodef-qi-image-gallery .qodef-e-image img{border-radius:6px}
@media (max-width:767px){.qodef-qi-image-gallery .qodef-grid-inner{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}.qodef-qi-image-gallery .qodef-grid-item{margin:0!important;padding:0!important}}

/* Sygnet z logo jako dyskretna dekoracja (1.2.7) */
.ofca-deco-right,.ofca-deco-left{overflow:hidden}
.ofca-deco-right::before,.ofca-deco-left::before{content:"";position:absolute;width:221px;height:440px;background:url(https://ofca.clickarts.pl/wp-content/uploads/2022/06/palma-2.png) right center/contain no-repeat;pointer-events:none;z-index:0}
.ofca-deco-right::before{right:0;top:50%;transform:translateY(-50%);opacity:.5}
.ofca-deco-left::before{left:0;top:90px;transform:scaleX(-1);opacity:.2}
.ofca-deco-right > .elementor-container,.ofca-deco-left > .elementor-container{position:relative;z-index:1}
.ofca-deco-card{overflow:hidden}
.ofca-deco-card::after{content:"";position:absolute;right:-34px;top:-34px;width:150px;height:150px;background:url(https://ofca.clickarts.pl/wp-content/uploads/2022/05/palma.webp) center/contain no-repeat;opacity:.35;pointer-events:none;z-index:0}
.ofca-deco-card > .elementor-container{position:relative;z-index:1}
@media (max-width:1024px){.ofca-deco-right::before,.ofca-deco-left::before{width:120px;height:240px;opacity:.15}.ofca-deco-right::before{top:auto;bottom:32px;transform:none;opacity:.35}.ofca-deco-left::before{top:40px}.ofca-deco-card::after{width:110px;height:110px;right:-26px;top:-26px}}

/* Opisy na slajdach: odstęp od krawędzi (1.2.9) */
@media (min-width:768px){.elementor-widget-slides .elementor-slides .swiper-slide-inner{padding:48px 10%!important;box-sizing:border-box}.elementor-widget-slides .elementor-slides .swiper-slide-contents{max-width:760px!important;margin:0 auto}.elementor-widget-slides .elementor-slides .elementor-slide-description{text-shadow:0 2px 14px rgba(0,0,0,.35)}}
@media (min-width:768px) and (max-width:1024px){.elementor-widget-slides .elementor-slides .swiper-slide-inner{padding:32px 8%!important}.elementor-widget-slides .elementor-slides .elementor-slide-description{font-size:19px!important}}
