/* Weekendstav – styles moved from the WordPress theme's inline <style> blocks + Laravel additions. */

/* ---------- Header ---------- */
@media (max-width: 991.98px) {
  header .header__logo { display: none !important; }
  .header__main { gap: 10px; }
  .header__mobile-call { display: flex; align-items: center; }
  .header__mobile-call-box {
    display: flex; align-items: center; gap: 10px; padding: 10px 12px; background: #fff;
    border-radius: 10px; box-shadow: 0 10px 25px rgba(0,0,0,.10); text-decoration: none; color: #15181B;
  }
  .header__mobile-call-ic {
    width: 38px; height: 38px; border-radius: 10px; background: #f3f4f6; display: flex;
    align-items: center; justify-content: center; color: #15181B; flex: 0 0 38px;
  }
  .header__mobile-call-txt { display: flex; flex-direction: column; line-height: 1.1; }
  .header__mobile-call-small { font-size: 11px; letter-spacing: .04em; color: #6b7280; text-transform: uppercase; }
  .header__mobile-call-big { font-size: 16px; font-weight: 800; color: #15181B; }
}
#header-sticky.wk-header { position: sticky; top: 0; z-index: 999; will-change: transform; transition: transform .22s ease; }
#header-sticky.wk-header.wk-header--hidden { transform: translateY(-110%); }

/* ---------- Offcanvas ---------- */
.offcanvas__overlay, .offcanvas__overlay-white { position: fixed; inset: 0; opacity: 0; visibility: hidden; transition: .25s; z-index: 90; }
.offcanvas__overlay.is-show, .offcanvas__overlay-white.is-show { opacity: 1; visibility: visible; }
.offcanvas__area { position: fixed; top: 0; right: -100%; width: min(380px, 92vw); height: 100%; background: #111; color: #fff; transition: right .3s ease; z-index: 99; overflow: auto; }
.offcanvas__area.is-open { right: 0; }
body.offcanvas-open { overflow: hidden; }

/* ---------- Magic cursor ---------- */
body.rr-has-magic-cursor { cursor: none; }
.cursor-wrapper { position: fixed; inset: 0; pointer-events: none; z-index: 9998; }
.cursor, .cursor-follower { position: fixed; top: 0; left: 0; pointer-events: none; will-change: transform, opacity; transform: translate3d(-9999px,-9999px,0); }
.cursor { width: 8px; height: 8px; border-radius: 50%; background: rgba(244,78,25,1); z-index: 9999; }
.cursor-follower { width: 28px; height: 28px; border-radius: 50%; border: 2px solid rgba(244,78,25,.65); z-index: 9998; }

/* ---------- Form alerts ---------- */
.contact-alert { padding: 12px 16px; border-radius: 10px; margin-bottom: 18px; font-size: 15px; }
.contact-alert--success { background: #ecfdf3; color: #067647; border: 1px solid #abefc6; }
.contact-alert--error { background: #fef3f2; color: #b42318; border: 1px solid #fecdca; }
.contact-alert ul { margin: 0; padding-left: 18px; }
.wk-hp { position: absolute !important; left: -10000px !important; width: 1px; height: 1px; overflow: hidden; }

/* ---------- Generic content pages ---------- */
.wordpress-content-area h2 { margin: 28px 0 12px; }
.wordpress-content-area h3 { margin: 22px 0 10px; }
.wordpress-content-area p, .wordpress-content-area li { color: #4b5563; }
.wordpress-content-area table { width: 100%; border-collapse: collapse; margin: 16px 0; font-size: 14px; }
.wordpress-content-area th, .wordpress-content-area td { border: 1px solid #e5e7eb; padding: 8px 10px; text-align: left; vertical-align: top; }
.wordpress-content-area img { max-width: 100%; height: auto; border-radius: 12px; }
.blog__pagination li span[aria-disabled] { opacity: .4; }

/* ---------- Google reviews ---------- */
.wk-reviews__summary { display: flex; align-items: center; justify-content: center; gap: 12px; margin-bottom: 26px; flex-wrap: wrap; color: #0B1220; }
.wk-reviews__summary strong { font-size: 22px; }
.wk-reviews__stars { color: #fbbc04; letter-spacing: 2px; }
.wk-reviews .swiper-slide { height: auto; }
.wk-review { height: 100%; background: #fff; border: 1px solid rgba(16,24,40,.10); border-radius: 18px; padding: 22px; display: flex; flex-direction: column; gap: 12px; text-align: left; }
.wk-review__head { display: flex; align-items: center; gap: 12px; }
.wk-review__photo { width: 44px; height: 44px; border-radius: 50%; object-fit: cover; background: #f3f4f6; flex: 0 0 44px; display: flex; align-items: center; justify-content: center; font-weight: 700; color: #F44E19; }
.wk-review__name { font-weight: 700; color: #0B1220; line-height: 1.2; }
.wk-review__date { font-size: 13px; color: #667085; }
.wk-review__text { color: #475569; font-size: 15px; margin: 0; }
.wk-review__google { margin-left: auto; width: 20px; height: 20px; }
.wk-reviews__nav { display: flex; justify-content: center; gap: 10px; margin-top: 20px; }
.wk-reviews__nav button { width: 42px; height: 42px; border-radius: 50%; border: 1px solid rgba(16,24,40,.15); background: #fff; color: #0B1220; }

/* ---------- Cookie banner ---------- */
.wk-cookie { position: fixed; left: 16px; right: 16px; bottom: 16px; z-index: 10000; display: flex; justify-content: center; }
.wk-cookie[hidden] { display: none; }
.wk-cookie__inner { max-width: 880px; width: 100%; background: #0B1220; color: #fff; border-radius: 16px; padding: 18px 20px; box-shadow: 0 18px 45px rgba(15,23,42,.35); display: flex; gap: 18px; align-items: center; flex-wrap: wrap; }
.wk-cookie__text { flex: 1 1 380px; font-size: 14px; }
.wk-cookie__text p { margin: 4px 0 0; color: rgba(255,255,255,.8); font-size: 14px; }
.wk-cookie__text a { color: #F44E19; text-decoration: underline; }
.wk-cookie__actions { display: flex; gap: 10px; flex-wrap: wrap; }
.wk-cookie__btn { border: 0; border-radius: 12px; padding: 11px 16px; font-weight: 700; background: #F44E19; color: #fff; cursor: pointer; }
.wk-cookie__btn--ghost { background: transparent; border: 1px solid rgba(255,255,255,.35); }
