/* Wójcik SPA 3.17.1 — homepage/header/footer/reviews polish */

/* Header — wymuszone CAPS + social media */
.site-header .main-nav > ul > li > a,
.site-header .main-nav > .primary-menu > li > a,
.site-header .nav-book { text-transform: uppercase !important; letter-spacing:.035em; }
.site-header .main-nav { gap: 14px !important; }
.site-header .main-nav > ul,
.site-header .main-nav > .primary-menu { gap: 15px !important; }
.wsp-socials { display:flex; align-items:center; gap:8px; }
.wsp-social-link { width:34px; height:34px; display:grid !important; place-items:center; flex:0 0 34px; border:1px solid rgba(255,255,255,.17); border-radius:50%; color:#fff !important; padding:0 !important; transition:background .18s ease,border-color .18s ease,transform .18s ease; }
.wsp-social-link svg { width:15px; height:15px; display:block; }
.wsp-social-link:hover,.wsp-social-link:focus-visible { background:rgba(255,255,255,.11); border-color:rgba(239,196,116,.72); transform:translateY(-1px); }
.wsp-socials--header { margin-left:2px; }
.site-header .rooms-mega-head > a,
.site-header .rooms-mega-room b,
.site-header .guide-menu > a > b { text-transform:uppercase !important; letter-spacing:.035em; }

/* Pasek ocen: Google + Booking.com + Hotres + rezerwacja */
.review-trust-ribbon .trust-ribbon-grid > div { padding:0 !important; }
.review-trust-ribbon .trust-ribbon-grid > div > a { display:flex; min-height:86px; height:100%; padding:18px 16px; flex-direction:column; align-items:center; justify-content:center; transition:background .18s ease; }
.review-trust-ribbon .trust-ribbon-grid > div > a:hover { background:rgba(255,255,255,.055); }
.review-trust-ribbon .trust-ribbon-grid strong { font-size:20px; }
.review-trust-ribbon .trust-ribbon-grid span { font-size:10px; letter-spacing:.02em; }

/* Footer social media */
.footer-brand-col .wsp-socials--footer { margin-top:18px; gap:10px; }
.footer-brand-col .wsp-socials--footer .wsp-social-link { width:38px; height:38px; flex-basis:38px; border-color:rgba(255,255,255,.18); color:#fff !important; }
.footer-brand-col .wsp-socials--footer .wsp-social-link:hover { background:rgba(239,196,116,.13); border-color:#d7aa5b; color:#efc474 !important; }
.footer-brand-col .wsp-socials--footer svg { width:17px; height:17px; }

/* Strefa relaksu — bez kółek wokół ikon */
.relax-list > div > span { width:50px !important; height:46px !important; border:0 !important; border-radius:0 !important; background:transparent !important; box-shadow:none !important; }
.relax-list .wojcik-icon,.relax-section .relax-feature-icon { width:38px !important; height:38px !important; }

/* Desktop homepage headings */
@media (min-width:1180px) {
  .amenities .section-head { max-width:none !important; width:100%; }
  .amenities .section-head h2 { white-space:nowrap; font-size:clamp(42px,3.7vw,60px); }

  .home-packages-section .section-head,
  .home-guide-section .section-head,
  .home-hotres-reviews-section .section-head { max-width:none !important; width:100%; margin-left:0; margin-right:0; }
  .home-packages-section .split-head,
  .home-guide-section .split-head,
  .home-hotres-reviews-section .split-head { display:grid !important; grid-template-columns:minmax(0,1fr) auto; align-items:end !important; gap:42px; }
  .home-packages-section .split-head > div:first-child,
  .home-guide-section .split-head > div:first-child,
  .home-hotres-reviews-section .split-head > div:first-child { min-width:0; max-width:none; }
  .home-packages-section .section-head h2,
  .home-guide-section .section-head h2,
  .home-hotres-reviews-section .section-head h2 { white-space:nowrap; font-size:clamp(40px,3.25vw,56px); letter-spacing:-.025em; }
  .home-packages-section .section-head p,
  .home-guide-section .section-head p,
  .home-hotres-reviews-section .section-head p { max-width:850px; }
}

/* Premium CTA na stronie głównej */
.home-section-cta { min-height:54px !important; padding:0 24px !important; border-color:rgba(165,116,42,.34) !important; border-radius:999px !important; background:linear-gradient(180deg,#fffdf9,#f5eddf) !important; color:#17352c !important; box-shadow:0 10px 28px rgba(21,42,34,.07); white-space:nowrap; font-size:13px !important; font-weight:800 !important; }
.home-section-cta:after { content:"→"; margin-left:10px; font-size:16px; transition:transform .18s ease; }
.home-section-cta:hover { border-color:#c18d3d !important; box-shadow:0 14px 32px rgba(108,75,28,.14); }
.home-section-cta:hover:after { transform:translateX(3px); }

/* Home — opinie Hotres w układzie jak zaakceptowane karty */
.home-hotres-reviews-section { background:#f8f3ea !important; border-top:1px solid rgba(20,39,31,.06); }
.home-hotres-reviews-section .home-review-head { margin-bottom:44px; }
.home-hotres-review-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.home-hotres-review-card { min-width:0; min-height:350px; display:flex; flex-direction:column; padding:30px; background:#fff; border:1px solid rgba(20,39,31,.12); border-radius:20px; box-shadow:0 14px 42px rgba(21,32,27,.045); }
.home-review-card-top { display:flex; align-items:center; justify-content:space-between; gap:18px; }
.home-review-card-top > b { white-space:nowrap; font-size:18px; color:#18372d; }
.home-review-card-top > b small { font-size:10px; color:var(--muted); font-weight:700; margin-left:2px; }
.home-review-stars { position:relative; display:inline-block; color:#ded9cf; letter-spacing:3px; line-height:1; font-size:18px; width:max-content; overflow:hidden; }
.home-review-stars > span { display:block; white-space:nowrap; }
.home-review-stars > i { position:absolute; left:0; top:0; overflow:hidden; white-space:nowrap; color:#b98632; font-style:normal; }
.home-review-source { margin:12px 0 22px; color:#9b702d; font-size:10px; font-weight:850; letter-spacing:.14em; text-transform:uppercase; }
.home-hotres-review-card blockquote { flex:1; margin:0; font:23px/1.55 Georgia,"Times New Roman",serif; color:#1f2925; }
.home-hotres-review-card footer { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-top:28px; padding-top:18px; border-top:1px solid var(--line); }
.home-hotres-review-card footer strong { font-size:13px; }
.home-hotres-review-card footer time { color:var(--muted); font-size:11px; white-space:nowrap; }
.home-reviews-loading { display:flex; gap:10px; flex-direction:column; align-items:flex-start; padding:26px 30px; background:#fff; border:1px solid var(--line); border-radius:18px; color:var(--muted); }
.home-reviews-loading strong { color:var(--ink); }

@media (max-width:1360px) and (min-width:1001px) {
  .site-header .main-nav > ul,
  .site-header .main-nav > .primary-menu { gap:11px !important; }
  .site-header .main-nav > ul > li > a,
  .site-header .main-nav > .primary-menu > li > a { font-size:11px !important; }
  .wsp-social-link { width:30px; height:30px; flex-basis:30px; }
  .wsp-social-link svg { width:13px; height:13px; }
}

@media (max-width:1179px) {
  .home-packages-section .section-head h2,
  .home-guide-section .section-head h2,
  .home-hotres-reviews-section .section-head h2,
  .amenities .section-head h2 { white-space:normal; }
}

@media (max-width:1000px) {
  .wsp-socials--header { margin:20px 0 8px; padding-top:18px; border-top:1px solid rgba(255,255,255,.12); }
  .wsp-socials--header .wsp-social-link { display:grid !important; width:42px; height:42px; flex-basis:42px; padding:0 !important; }
  .site-header .nav-book { margin-top:12px !important; }
  .home-hotres-review-grid { grid-template-columns:1fr 1fr; }
}

@media (max-width:680px) {
  .home-section-cta { width:auto !important; min-height:48px !important; padding:0 19px !important; }
  .home-hotres-review-grid { grid-template-columns:1fr; }
  .home-hotres-review-card { min-height:0; padding:24px; }
  .home-hotres-review-card blockquote { font-size:19px; }
  .footer-brand-col .wsp-socials--footer { justify-content:flex-start; }
}
