/*
Theme Name: Wanzeisla Tours
Theme URI: https://circlelook.com/
Author: Circlelook
Author URI: https://circlelook.com/
Description: Tour operator theme with a Tours post type, tour categories, itineraries, enquiries and a brand palette taken from the site logo. Built with free tools only (no Pro plugins needed).
Version: 1.3.0
Requires at least: 6.4
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: wanzeisla
*/

/* ------------------------------------------------------------------
   1. Brand tokens
   --brand-* are printed in <head> from the logo palette (inc/logo-colors.php)
   or the Customizer overrides. The values below are only fallbacks.
------------------------------------------------------------------ */
:root{
  --brand-primary:#8F6526;      /* deep logo gold: eyebrows, badges, stars, active nav text */
  --brand-secondary:#0B0B0C;    /* logo black: footer, dark surfaces, currency pill */
  --brand-accent:#D8AB59;       /* bright logo gold: main call-to-action buttons */
  --brand-primary-fg:#ffffff;   /* text on primary */
  --brand-accent-fg:#16120A;    /* text on accent */
  --brand-secondary-fg:#ffffff;
  --brand-primary-soft:rgba(143,101,38,.12);

  --bg:#FBF8F2;
  --card:#ffffff;
  --ink:#16120A;
  --text:#111111;
  --muted:#6B5E48;
  --border:#E9DFCC;
  --footer-text:#CFC3A8;

  --font-display:"Cormorant Garamond",ui-serif,Georgia,serif;
  --font-sans:"Inter",ui-sans-serif,system-ui,sans-serif;

  --radius-xl:.75rem;   /* 12px  small cards */
  --radius-2xl:1rem;    /* 16px  tour cards, accordions */
  --radius-3xl:1.5rem;  /* 24px  feature, destination, review cards */
  --shadow-sm:0 1px 3px rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);
  --shadow-md:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);
  --shadow-lg:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);
  --container:80rem;    /* max-w-7xl */
  --container-narrow:72rem; /* max-w-6xl */
  --ease:cubic-bezier(.4,0,.2,1);
}

/* ------------------------------------------------------------------
   2. Base
------------------------------------------------------------------ */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4{margin:0;font-weight:500}
p{margin:0}
ul,ol{margin:0;padding:0;list-style:none}
button,input,select,textarea{font:inherit;color:inherit}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.wz-container{width:100%;max-width:var(--container);margin:0 auto;padding:0 1.5rem}
.wz-container--narrow{max-width:var(--container-narrow);padding:0 1rem}
.wz-icon{width:1rem;height:1rem;flex-shrink:0}
.font-display{font-family:var(--font-display)}

/* Section rhythm (py-16 md:py-20 and py-10 md:py-12 on the reference) */
.wz-section{padding:4rem 0}
.wz-section--tight{padding:2.5rem 0}
.wz-section--bordered{border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:2rem 0}
.wz-section--photo{position:relative;background-size:cover;background-position:center;background-attachment:fixed;background-color:var(--brand-secondary)}
.wz-section--photo::before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.35)}
.wz-section--photo>.wz-container{position:relative}
@media(min-width:768px){
  .wz-container{padding:0 2.5rem}
  .wz-container--narrow{padding:0 1rem}
  .wz-section{padding:5rem 0}
  .wz-section--tight{padding:3rem 0}
}
@media(hover:none){.wz-section--photo{background-attachment:scroll}}

/* Eyebrow + section headings */
.wz-eyebrow{font-size:.75rem;text-transform:uppercase;letter-spacing:.25em;color:var(--brand-primary)}
.wz-eyebrow--light{color:#fff}
.wz-h2{margin-top:1rem;font-family:var(--font-display);font-size:1.875rem;line-height:1.25}
.wz-h2--primary{color:var(--brand-primary)}
.wz-h2--white{color:#fff}
@media(min-width:768px){.wz-h2{font-size:2.25rem}}
@media(min-width:1024px){.wz-h2{font-size:3rem;line-height:1.1}}
.wz-section-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1.5rem}
.wz-section-head>div{max-width:42rem}
.wz-link-arrow{display:inline-flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:500;transition:color .15s}
.wz-link-arrow:hover{color:var(--brand-primary)}
.wz-link-arrow--light{color:#fff}
.wz-grid-gap{margin-top:3.5rem}

/* ------------------------------------------------------------------
   3. Buttons (pill with round icon, as on the reference)
------------------------------------------------------------------ */
.wz-btn{display:inline-flex;align-items:center;gap:.75rem;border:0;border-radius:999px;background:var(--brand-accent);color:var(--brand-accent-fg);padding:.75rem .75rem .75rem 1.75rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .2s var(--ease),color .2s var(--ease)}
.wz-btn__icon{display:flex;width:2.5rem;height:2.5rem;align-items:center;justify-content:center;border-radius:999px;background:var(--brand-accent-fg);color:var(--brand-accent);transition:background .2s,color .2s,transform .2s}
.wz-btn:hover{background:var(--brand-secondary);color:var(--brand-secondary-fg)}
.wz-btn:hover .wz-btn__icon{background:var(--brand-secondary-fg);color:var(--brand-secondary);transform:translateX(2px)}
.wz-btn--plain{padding:.75rem 1.5rem;justify-content:center}
.wz-btn--block{width:100%;justify-content:center;padding:.75rem 1.25rem}
.wz-btn--outline{background:transparent;color:var(--brand-primary);border:1px solid color-mix(in srgb,var(--brand-primary) 40%,transparent)}
.wz-btn--outline:hover{background:var(--brand-primary);color:var(--brand-primary-fg)}

/* ------------------------------------------------------------------
   4. Header (floating glass pill)
------------------------------------------------------------------ */
.wz-header{position:fixed;top:0;left:0;right:0;z-index:30}
.admin-bar .wz-header{top:32px}
@media(max-width:782px){.admin-bar .wz-header{top:46px}}
.wz-header__wrap{max-width:var(--container);margin:0 auto;padding:1rem 1rem 0}
.wz-header__bar{display:flex;height:60px;align-items:center;justify-content:space-between;gap:.5rem;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:rgba(14,11,7,.62);-webkit-backdrop-filter:blur(64px);backdrop-filter:blur(64px);box-shadow:var(--shadow-lg);padding:.25rem 1rem;transition:background-color .3s,border-color .3s}
.wz-header.is-scrolled .wz-header__bar{background:rgba(14,11,7,.9)}
.wz-header.is-light .wz-header__bar{background:rgba(255,255,255,.95);border-color:var(--border)}
@media(min-width:768px){.wz-header__wrap{padding:1rem 1.5rem 0}.wz-header__bar{padding:.25rem 1.5rem}}
.wz-logo{display:flex;flex-shrink:0;align-items:center}
.wz-logo img,.wz-logo .custom-logo{height:calc(var(--wz-logo-h,50px) - 4px);max-height:none;width:auto}
@media(min-width:768px){.wz-logo img,.wz-logo .custom-logo{height:var(--wz-logo-h,50px)}}
.wz-logo__text{font-family:var(--font-display);font-size:1.5rem;font-weight:600;color:#fff}
.wz-header.is-light .wz-logo__text{color:var(--ink)}
.wz-nav{display:none;flex:1;justify-content:center}
.wz-nav ul{display:flex;align-items:center;gap:.25rem}
.wz-nav li{position:relative}
.wz-nav a{display:inline-flex;align-items:center;gap:.25rem;border-radius:999px;padding:.5rem 1rem;font-size:.875rem;font-weight:500;color:rgba(255,255,255,.9);transition:background .15s,color .15s}
.wz-nav a:hover{background:rgba(255,255,255,.1)}
.wz-nav .current-menu-item>a,.wz-nav .current-menu-ancestor>a,.wz-nav .current-menu-parent>a{background:#fff;color:var(--brand-primary)}
.wz-header.is-light .wz-nav a{color:var(--ink)}
.wz-header.is-light .wz-nav a:hover{background:var(--brand-primary-soft)}
.wz-header.is-light .wz-nav .current-menu-item>a,.wz-header.is-light .wz-nav .current-menu-parent>a{background:var(--brand-primary);color:var(--brand-primary-fg)}
/* dropdowns */
.wz-nav .sub-menu{position:absolute;top:100%;left:0;min-width:14rem;display:block;padding:.5rem;margin-top:.5rem;border-radius:var(--radius-2xl);background:#fff;box-shadow:var(--shadow-lg);opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .15s,transform .15s}
.wz-nav .sub-menu a{display:flex;color:var(--ink);border-radius:var(--radius-xl)}
.wz-nav .sub-menu a:hover{background:var(--brand-primary-soft);color:var(--brand-primary)}
.wz-nav li:hover>.sub-menu,.wz-nav li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none}
.wz-header__actions{display:flex;flex-shrink:0;align-items:center;gap:.5rem}
.wz-currency{display:inline-flex;height:2.5rem;align-items:center;gap:.25rem;border-radius:999px;background:var(--brand-secondary);color:var(--brand-secondary-fg);padding:0 .35rem;box-shadow:var(--shadow-md)}
.wz-currency select{appearance:none;-webkit-appearance:none;border:0;background:transparent;color:inherit;font-size:.8rem;font-weight:600;letter-spacing:.03em;padding:0 .6rem;height:100%;cursor:pointer}
.wz-currency select option{color:var(--ink)}
.wz-call{display:none;width:3rem;height:3rem;align-items:center;justify-content:center;border-radius:999px;background:#fff;color:var(--ink);box-shadow:var(--shadow-lg);transition:transform .15s,background .15s,color .15s}
.wz-call:hover{transform:scale(1.05);background:var(--brand-primary-soft);color:var(--brand-primary)}
.wz-burger{display:flex;width:2.5rem;height:2.5rem;align-items:center;justify-content:center;border:0;border-radius:999px;background:rgba(255,255,255,.15);color:#fff;cursor:pointer}
.wz-header.is-light .wz-burger{background:var(--brand-primary-soft);color:var(--ink)}
@media(min-width:1024px){.wz-nav{display:flex}.wz-call{display:flex}.wz-burger{display:none}}
/* mobile drawer */
.wz-drawer{position:fixed;inset:0;z-index:40;display:none}
.wz-drawer.is-open{display:block}
.wz-drawer__scrim{position:absolute;inset:0;background:rgba(0,0,0,.5)}
.wz-drawer__panel{position:absolute;top:0;right:0;bottom:0;width:min(86vw,22rem);background:#fff;padding:1.5rem;overflow-y:auto;box-shadow:var(--shadow-lg)}
.wz-drawer__close{display:flex;margin-left:auto;width:2.5rem;height:2.5rem;align-items:center;justify-content:center;border:0;border-radius:999px;background:var(--brand-primary-soft);color:var(--ink);cursor:pointer}
.wz-drawer nav{margin-top:1rem}
.wz-drawer nav a{display:block;padding:.85rem 1rem;border-radius:var(--radius-xl);font-weight:500}
.wz-drawer nav .current-menu-item>a,.wz-drawer nav .current-menu-parent>a{background:var(--brand-primary);color:var(--brand-primary-fg)}
.wz-drawer nav .sub-menu a{padding-left:2rem;font-size:.9rem;color:var(--muted)}
.wz-drawer__call{margin-top:1.5rem}

/* ------------------------------------------------------------------
   5. Hero
------------------------------------------------------------------ */
.wz-hero{position:relative;height:100vh;min-height:720px;width:100%;overflow:hidden;background:#000}
.wz-hero__media{position:absolute;inset:0}
.wz-hero__media img,.wz-hero__media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.wz-hero__fallback{position:absolute;inset:0;background:radial-gradient(circle at 70% 30%,color-mix(in srgb,var(--brand-primary) 55%,#000) 0,var(--brand-secondary) 60%,#000 100%)}
.wz-hero__shade{position:absolute;inset:0;background:linear-gradient(to right,rgba(0,0,0,.5),rgba(0,0,0,.15) 55%,rgba(0,0,0,0)),linear-gradient(to bottom,rgba(0,0,0,.3),rgba(0,0,0,0) 28%,rgba(0,0,0,0) 65%,rgba(0,0,0,.35))}
.wz-hero__inner{position:relative;z-index:10;display:flex;height:100%;flex-direction:column;justify-content:center}
@media(max-width:767px){.wz-hero{height:auto;min-height:100vh;min-height:100svh}.wz-hero__inner{min-height:100vh;min-height:100svh;padding-top:7.5rem;padding-bottom:3.5rem}.wz-hero .wz-pill-tag{margin-top:0}}
.wz-pill-tag{display:inline-flex;width:fit-content;align-items:center;margin:6rem 0 1.5rem;border-radius:999px;border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.1);padding:.5rem 1.25rem;font-size:.875rem;color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.wz-hero__title{max-width:56rem;margin:0;font-family:var(--font-display);font-size:3rem;line-height:1.05;color:#fff}
.wz-hero__lead{margin-top:1.5rem;max-width:36rem;font-size:1.125rem;color:rgba(255,255,255,.85)}
.wz-hero__cta{margin-top:2.5rem;display:flex;flex-wrap:wrap;align-items:center;gap:1rem}
@media(min-width:768px){.wz-pill-tag{margin-top:0}.wz-hero__title{font-size:4.5rem}}
@media(min-width:1024px){.wz-pill-tag{margin-top:7rem}.wz-hero__title{font-size:5.5rem}}
@media(min-width:1280px){.wz-pill-tag{margin-top:0}}
/* hero slides: photos crossfade with a slow zoom, copy rises in, dots show progress */
.wz-hero__slide{position:absolute;inset:0;opacity:0;transition:opacity 1.4s ease}
.wz-hero__slide.is-active{opacity:1}
/* Stock photos come in slightly flat; lift colour and contrast a touch. */
.wz-hero img,.wz-page-hero img,.wz-why-card>img,.wz-tour-card__media img,.wz-dest img,.wz-gallery img,.wz-cta img{filter:saturate(1.12) contrast(1.05)}
.wz-hero--slides .wz-hero__slide img{transform:scale(1.05);transition:transform calc(var(--wz-interval,6000ms) + 1.4s) linear}
.wz-hero--slides .wz-hero__slide.is-active img{transform:scale(1)}
.wz-hero__copies{display:grid}
.wz-hero__copy{grid-area:1/1;align-self:end;visibility:hidden;transition:visibility 0s .9s}
.wz-hero__copy.is-active{visibility:visible;transition:none}
.wz-hero__copy>*{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .9s cubic-bezier(.2,.7,.2,1)}
.wz-hero__copy.is-active>*{opacity:1;transform:none}
.wz-hero__copy.is-active>:nth-child(2){transition-delay:.12s}
.wz-hero__copy.is-active>:nth-child(3){transition-delay:.24s}
.wz-hero__copy.is-active>:nth-child(4){transition-delay:.36s}
.wz-hero__copy:not(.is-active)>*{transform:translateY(-16px)}
.wz-hero__controls{display:flex;align-items:center;gap:.75rem;margin-top:2rem}
.wz-hero__arrow{display:flex;width:2.75rem;height:2.75rem;align-items:center;justify-content:center;border-radius:999px;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.1);color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:background .15s,color .15s}
.wz-hero__arrow:hover,.wz-hero__arrow:focus-visible{background:#fff;color:var(--brand-secondary)}
.wz-hero__arrow svg{width:1.1rem;height:1.1rem}
.wz-hero__dots{display:flex;gap:.5rem}
.wz-hero__dot{position:relative;width:2.25rem;height:.25rem;padding:0;border:0;border-radius:999px;background:rgba(255,255,255,.3);cursor:pointer;overflow:hidden}
.wz-hero__dot::before{content:"";position:absolute;inset:-10px 0}
.wz-hero__dot span{position:absolute;inset:0;width:0;background:var(--brand-accent,#fff);border-radius:inherit}
.wz-hero__dot.is-active span{width:100%;transition:width var(--wz-interval,6000ms) linear}
.wz-hero.is-paused .wz-hero__dot.is-active span{width:100%;transition:none}
@media(max-width:767px){.wz-hero__arrow{display:none}.wz-hero__controls{margin-top:1.5rem}}
@media(prefers-reduced-motion:reduce){.wz-hero__slide,.wz-hero--slides .wz-hero__slide img,.wz-hero__copy>*{transition:none!important;transform:none!important}.wz-hero__dot.is-active span{transition:none}}
/* social rail on the right of the hero */
.wz-hero__social{position:absolute;right:1.5rem;top:50%;z-index:10;display:none;flex-direction:column;gap:.75rem;transform:translateY(-50%)}
.wz-hero__social a{display:flex;width:2.25rem;height:2.25rem;align-items:center;justify-content:center;border-radius:999px;border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.1);color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:background .15s,color .15s}
.wz-hero__social a:hover{background:#fff;color:var(--brand-primary)}
@media(min-width:768px){.wz-hero__social{display:flex}}

/* Tour search bar */
.wz-search{margin-top:2.5rem;display:grid;gap:.5rem;max-width:56rem;border-radius:1.5rem;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.12);padding:.5rem;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}
.wz-search__field{display:flex;flex-direction:column;justify-content:center;border-radius:1rem;background:#fff;padding:.55rem 1.1rem}
.wz-search__field label{font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.18em;color:var(--brand-primary)}
.wz-search__field input,.wz-search__field select{border:0;outline:0;background:transparent;padding:.2rem 0;font-size:.9rem;color:var(--ink);width:100%}
.wz-search .wz-btn{justify-content:center}
@media(min-width:768px){.wz-search{grid-template-columns:1.4fr 1fr 1fr auto;border-radius:999px}.wz-search__field{border-radius:999px}}

/* Inner-page hero (archives, single tour, pages) */
.wz-page-hero{position:relative;height:60vh;min-height:420px;width:100%;overflow:hidden;background:var(--brand-secondary)}
.wz-page-hero--short{height:38vh;min-height:300px;max-height:420px}
.wz-page-hero--short .wz-page-hero__inner{padding-bottom:2.25rem}
.wz-page-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.wz-page-hero__shade{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.72),rgba(0,0,0,.2) 50%,rgba(0,0,0,.25))}
.wz-page-hero__inner{position:relative;z-index:10;display:flex;height:100%;flex-direction:column;justify-content:flex-end;padding-bottom:3rem;color:#fff}
.wz-back{display:inline-flex;align-items:center;gap:.5rem;font-size:.875rem;color:rgba(255,255,255,.8)}
.wz-back:hover{color:#fff}
.wz-chip{display:inline-flex;width:fit-content;align-items:center;gap:.5rem;border-radius:999px;background:rgba(255,255,255,.15);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:.25rem .75rem;font-size:.75rem}
.wz-page-hero h1{margin-top:.75rem;font-size:1.875rem;font-weight:600;line-height:1.25}
.wz-page-hero__lead{margin-top:.75rem;max-width:40rem;color:rgba(255,255,255,.85)}
.wz-page-hero__meta{margin-top:1rem;display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1.5rem;font-size:.875rem;color:rgba(255,255,255,.9)}
.wz-page-hero__meta span{display:inline-flex;align-items:center;gap:.5rem}
@media(min-width:640px){.wz-page-hero h1{font-size:2.25rem}}
@media(min-width:768px){.wz-page-hero h1{font-size:3rem}}

/* ------------------------------------------------------------------
   6. Recognised-by marquee
------------------------------------------------------------------ */
.wz-marquee__label{text-align:center}
.wz-marquee{margin-top:2rem;overflow:hidden;-webkit-mask-image:linear-gradient(to right,transparent,#000 10%,#000 90%,transparent);mask-image:linear-gradient(to right,transparent,#000 10%,#000 90%,transparent)}
.wz-marquee__track{display:flex;width:max-content;align-items:center;gap:4rem;animation:wz-marquee 32s linear infinite}
.wz-marquee__track img{height:6rem;width:auto;flex-shrink:0;object-fit:contain}
.wz-marquee:hover .wz-marquee__track{animation-play-state:paused}
@media(min-width:768px){.wz-marquee__track{gap:6rem}.wz-marquee__track img{height:8rem}}
@keyframes wz-marquee{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.wz-marquee__track{animation:none;flex-wrap:wrap;width:auto;justify-content:center}}

/* ------------------------------------------------------------------
   7. About / Why choose us
------------------------------------------------------------------ */
.wz-about{display:grid;gap:3rem}
@media(min-width:1024px){.wz-about{grid-template-columns:1fr 1.4fr;gap:5rem}}
.wz-about__copy{margin-top:1.5rem;max-width:32rem;color:var(--text)}
.wz-about__copy p+p{margin-top:1rem}
.wz-about__actions{margin-top:2rem;display:flex;flex-wrap:wrap;align-items:center;gap:1rem}
.wz-about__phone{display:inline-flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:500;color:var(--brand-primary)}
.wz-why{display:grid;gap:1rem}
@media(min-width:640px){.wz-why{grid-template-columns:repeat(2,1fr)}}
.wz-why--four{margin-top:0}
.wz-why-card{position:relative;display:flex;min-height:280px;flex-direction:column;justify-content:flex-end;overflow:hidden;border-radius:var(--radius-3xl);border:1px solid var(--border);padding:1.5rem;background:var(--brand-secondary);transition:border-color .2s,box-shadow .2s}
.wz-why-card:hover{border-color:color-mix(in srgb,var(--brand-primary) 40%,transparent);box-shadow:var(--shadow-sm)}
.wz-why-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s}
.wz-why-card:hover>img{transform:scale(1.05)}
.wz-why-card::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.78),rgba(0,0,0,.2) 55%,rgba(0,0,0,0))}
.wz-why-card__body{position:relative;z-index:1;display:flex;flex-direction:column;gap:.5rem}
.wz-why-card__icon{display:flex;width:3rem;height:3rem;align-items:center;justify-content:center;border-radius:1rem;background:var(--brand-primary);color:var(--brand-primary-fg);margin-bottom:.5rem}
.wz-why-card__icon svg{width:1.4rem;height:1.4rem}
.wz-why-card h3{font-size:1.5rem;font-weight:700;color:#fff}
.wz-why-card p{font-size:.875rem;color:rgba(255,255,255,.9)}

/* ------------------------------------------------------------------
   8. Video
------------------------------------------------------------------ */
.wz-video{margin-top:3.5rem;position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:var(--radius-3xl);border:1px solid var(--border);background:var(--brand-secondary);box-shadow:var(--shadow-lg)}
.wz-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

/* ------------------------------------------------------------------
   9. Tour cards
------------------------------------------------------------------ */
.wz-tour-grid{display:grid;gap:1.5rem}
@media(min-width:640px){.wz-tour-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.wz-tour-grid{grid-template-columns:repeat(3,1fr)}}
.wz-tour-card{overflow:hidden;border-radius:var(--radius-2xl);border:1px solid var(--border);background:var(--card);box-shadow:var(--shadow-sm);transition:transform .2s var(--ease),box-shadow .2s var(--ease)}
.wz-tour-card:hover{transform:translateY(-.25rem);box-shadow:var(--shadow-md)}
.wz-tour-card>a{display:block}
.wz-tour-card__media{position:relative;height:14rem;overflow:hidden;background:var(--brand-primary-soft)}
.wz-tour-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .7s}
.wz-tour-card:hover .wz-tour-card__media img{transform:scale(1.05)}
@media(min-width:640px){.wz-tour-card__media{height:16rem}}
@media(min-width:768px){.wz-tour-card__media{height:18rem}}
@media(min-width:1024px){.wz-tour-card__media{height:20rem}}
.wz-days{position:absolute;left:1rem;top:1rem;display:flex;align-items:center;gap:.5rem;border-radius:999px;background:color-mix(in srgb,var(--brand-primary) 50%,transparent);padding:.375rem 1rem .375rem .375rem;color:var(--bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.wz-days b{display:flex;min-width:1.5rem;height:1rem;align-items:center;justify-content:center;font-size:.875rem;font-weight:600}
.wz-days small{font-size:10px;text-transform:uppercase;letter-spacing:.2em;opacity:.8}
.wz-cat-badge{position:absolute;right:1rem;top:1rem;border-radius:999px;background:rgba(255,255,255,.9);padding:.25rem .65rem;font-size:.7rem;font-weight:600;color:var(--brand-primary)}
.wz-tour-card__body{padding:1.25rem}
.wz-tour-card h3{font-family:var(--font-display);font-size:1.125rem;text-transform:uppercase;letter-spacing:.025em;color:var(--brand-primary)}
.wz-tour-card__where{margin-top:.375rem;font-size:11px;text-transform:uppercase;letter-spacing:.025em;color:rgba(0,0,0,.8)}
.wz-tour-card__excerpt{margin-top:.75rem;font-size:.875rem;line-height:1.625;color:rgba(0,0,0,.9)}
.wz-tour-card__foot{margin-top:1.25rem;display:flex;align-items:flex-end;justify-content:space-between;border-top:1px solid var(--border);padding-top:1rem}
.wz-from{font-size:10px;text-transform:uppercase;letter-spacing:.2em;color:rgba(0,0,0,.8)}
.wz-price{font-family:var(--font-display);font-size:1.25rem;color:var(--ink)}
.wz-view{display:inline-flex;align-items:center;gap:.25rem;border-radius:999px;border:1px solid color-mix(in srgb,var(--brand-primary) 40%,transparent);padding:.375rem 1rem;font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.15em;color:var(--brand-primary);transition:background .15s,color .15s}
.wz-tour-card:hover .wz-view{background:var(--brand-primary);color:var(--brand-primary-fg)}
.wz-empty{padding:3rem;text-align:center;border:1px dashed var(--border);border-radius:var(--radius-2xl);color:var(--muted)}

/* ------------------------------------------------------------------
   10. Destinations (tour categories)
------------------------------------------------------------------ */
.wz-dest-grid{display:grid;gap:1rem}
@media(min-width:640px){.wz-dest-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.wz-dest-grid{grid-template-columns:repeat(var(--wz-dest-cols,4),1fr)}}
.wz-dest{position:relative;display:block;aspect-ratio:3/4;overflow:hidden;border-radius:var(--radius-3xl);background:linear-gradient(160deg,var(--brand-primary),var(--brand-secondary))}
.wz-dest img{width:100%;height:100%;object-fit:cover;transition:transform .7s}
.wz-dest:hover img{transform:scale(1.1)}
.wz-dest::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.65),rgba(0,0,0,0) 50%)}
.wz-dest__body{position:absolute;left:0;right:0;bottom:0;z-index:1;padding:1.5rem}
.wz-dest h3{font-family:var(--font-display);font-size:1.875rem;color:#fff}
.wz-dest__meta{margin-top:.25rem;display:flex;align-items:center;justify-content:space-between;font-size:.875rem;color:rgba(255,255,255,.8)}
.wz-dest__meta svg{transition:transform .2s}
.wz-dest:hover .wz-dest__meta svg{transform:translateX(4px)}

/* ------------------------------------------------------------------
   11. CTA banner
------------------------------------------------------------------ */
.wz-cta{position:relative;overflow:hidden;background:var(--brand-secondary)}
.wz-cta>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.wz-cta::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(to right,rgba(0,0,0,.7),rgba(0,0,0,.35),transparent)}
.wz-cta__inner{position:relative;z-index:2;display:flex;flex-direction:column;align-items:flex-start;gap:1.5rem;padding-top:7rem;padding-bottom:7rem}
.wz-cta .wz-pill-tag{margin:0}
.wz-cta h2{max-width:48rem;font-family:var(--font-display);font-size:2.25rem;line-height:1.25;color:#fff}
.wz-cta p{max-width:36rem;color:rgba(255,255,255,.85)}
@media(min-width:768px){.wz-cta h2{font-size:3.75rem;line-height:1.1}}

/* ------------------------------------------------------------------
   12. Reviews
------------------------------------------------------------------ */
.wz-review-grid{display:grid;gap:1.5rem}
@media(min-width:768px){.wz-review-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.wz-review-grid{grid-template-columns:repeat(4,1fr)}}
.wz-review{display:flex;flex-direction:column;margin:0;border-radius:var(--radius-3xl);border:1px solid var(--border);background:var(--card);padding:2rem;box-shadow:var(--shadow-sm)}
.wz-review__top{display:flex;align-items:center;justify-content:space-between}
.wz-stars{display:flex;gap:.25rem;color:var(--brand-primary)}
.wz-stars svg{width:1rem;height:1rem}
.wz-review__date{font-size:.75rem;color:rgba(0,0,0,.5)}
.wz-review blockquote{flex:1;margin:1rem 0 0;font-size:.875rem;line-height:1.625;color:var(--text)}
.wz-review figcaption{margin-top:1.5rem;border-top:1px solid var(--border);padding-top:1rem}
.wz-review__name{font-weight:500;color:var(--text)}
.wz-review__country{font-size:.75rem;color:rgba(0,0,0,.6)}
.wz-review__trip{margin-top:.25rem;font-size:.75rem;color:var(--brand-primary)}
/* slider */
.wz-slider{margin-top:3.5rem;border-radius:var(--radius-3xl);background:rgba(255,255,255,.96);padding:2rem 1.5rem;box-shadow:var(--shadow-lg)}
@media(min-width:768px){.wz-slider{padding:3rem}}
.wz-slider__head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1rem}
.wz-slider__head h3{font-family:var(--font-display);font-size:1.875rem;color:var(--brand-primary)}
.wz-slider__head p{margin-top:.5rem;color:var(--muted);font-size:.9rem}
@media(min-width:768px){.wz-slider__head h3{font-size:2.25rem}}
.wz-slider__nav{display:flex;gap:.5rem}
.wz-slider__nav button{display:flex;width:2.75rem;height:2.75rem;align-items:center;justify-content:center;border-radius:999px;border:1px solid var(--border);background:#fff;color:var(--brand-primary);cursor:pointer;transition:background .15s,color .15s}
.wz-slider__nav button:hover{background:var(--brand-primary);color:var(--brand-primary-fg)}
.wz-slider__track{margin-top:2rem;display:grid;grid-auto-flow:column;grid-auto-columns:100%;gap:1.5rem;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;scroll-behavior:smooth}
.wz-slider__track::-webkit-scrollbar{display:none}
@media(min-width:768px){.wz-slider__track{grid-auto-columns:calc((100% - 1.5rem)/2)}}
@media(min-width:1024px){.wz-slider__track{grid-auto-columns:calc((100% - 3rem)/3)}}
.wz-slide{scroll-snap-align:start;display:flex;flex-direction:column;border-radius:var(--radius-2xl);border:1px solid var(--border);padding:1.5rem;background:var(--bg)}
.wz-slide p{flex:1;font-size:.875rem;line-height:1.7;color:var(--text)}
.wz-slide__who{margin-top:1.25rem;display:flex;align-items:center;gap:.75rem}
.wz-avatar{display:flex;width:2.5rem;height:2.5rem;flex-shrink:0;align-items:center;justify-content:center;border-radius:999px;background:var(--brand-primary);color:var(--brand-primary-fg);font-weight:600}
.wz-slide__who b{display:block;font-weight:500;font-size:.9rem}
.wz-slide__who small{font-size:.75rem;color:var(--brand-primary)}
.wz-slider__more{margin-top:2rem;text-align:center}

/* ------------------------------------------------------------------
   13. FAQ accordion
------------------------------------------------------------------ */
.wz-faq{display:grid;gap:3rem}
@media(min-width:1024px){.wz-faq{grid-template-columns:1fr 1fr;gap:5rem}}
.wz-faq__intro p{margin-top:1.5rem;max-width:28rem;color:#fff}
.wz-faq__intro .wz-btn{margin-top:2rem}
.wz-accordion{display:flex;flex-direction:column;gap:.75rem}
.wz-acc{border-radius:var(--radius-2xl);border:1px solid var(--border);background:var(--card);transition:border-color .2s,box-shadow .2s}
.wz-acc.is-open{border-color:color-mix(in srgb,var(--brand-primary) 40%,transparent);box-shadow:var(--shadow-sm)}
.wz-acc__btn{display:flex;width:100%;align-items:center;justify-content:space-between;gap:1rem;border:0;background:none;padding:1.25rem 1.5rem;text-align:left;cursor:pointer}
.wz-acc__btn span:first-child{font-family:var(--font-display);font-size:1.125rem}
@media(min-width:768px){.wz-acc__btn span:first-child{font-size:1.25rem}}
.wz-acc__sign{display:flex;width:2.25rem;height:2.25rem;flex-shrink:0;align-items:center;justify-content:center;border-radius:999px;background:var(--brand-primary-soft);color:var(--brand-primary);transition:transform .2s,background .2s,color .2s}
.wz-acc.is-open .wz-acc__sign{transform:rotate(45deg);background:var(--brand-primary);color:var(--brand-primary-fg)}
.wz-acc__panel{display:none;padding:0 1.5rem 1.5rem;font-size:.875rem;line-height:1.625;color:var(--text)}
.wz-acc.is-open .wz-acc__panel{display:block}

/* ------------------------------------------------------------------
   14. Blog cards
------------------------------------------------------------------ */
.wz-post-grid{display:grid;gap:1.5rem}
@media(min-width:768px){.wz-post-grid{grid-template-columns:repeat(3,1fr)}}
.wz-post-card{overflow:hidden;border-radius:var(--radius-3xl);background:var(--card);transition:transform .2s,box-shadow .2s}
.wz-post-card:hover{transform:translateY(-.25rem);box-shadow:var(--shadow-md)}
.wz-post-card__media{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--brand-primary-soft)}
.wz-post-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .7s}
.wz-post-card:hover .wz-post-card__media img{transform:scale(1.05)}
.wz-post-card__body{padding:1.5rem}
.wz-post-card__meta{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;font-size:.75rem;color:var(--muted)}
.wz-post-card__meta span{display:inline-flex;align-items:center;gap:.375rem}
.wz-post-card h3{margin-top:.75rem;font-family:var(--font-display);font-size:1.25rem;line-height:1.375}
.wz-post-card:hover h3{color:var(--brand-primary)}
.wz-post-card__body>p{margin-top:.75rem;font-size:.875rem;color:var(--text)}
.wz-post-card__more{margin-top:1.25rem;display:inline-flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:500;color:var(--brand-primary)}

/* ------------------------------------------------------------------
   15. Single tour
------------------------------------------------------------------ */
.wz-tour-layout{display:grid;gap:2.5rem;padding:3rem 0}
@media(min-width:1024px){.wz-tour-layout{grid-template-columns:2fr 1fr}}
.wz-tour-main{display:flex;flex-direction:column;gap:3rem;min-width:0}
.wz-kicker{font-size:.875rem;text-transform:uppercase;letter-spacing:.1em;color:var(--brand-primary)}
.wz-tour-h2{margin-top:.5rem;font-size:1.875rem;font-weight:600}
.wz-tour-h2--sm{font-size:1.5rem}
.wz-tour-h2--display{margin-top:.75rem;font-family:var(--font-display);font-weight:500}
@media(min-width:768px){.wz-tour-h2--display{font-size:2.25rem}}
.wz-facts{margin-top:1.5rem;display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}
@media(min-width:640px){.wz-facts{grid-template-columns:repeat(3,1fr)}}
.wz-fact{display:flex;align-items:flex-start;gap:.75rem;border-radius:var(--radius-xl);border:1px solid var(--border);background:var(--card);padding:1rem}
.wz-fact svg{width:1.25rem;height:1.25rem;color:var(--brand-primary);margin-top:.1rem}
.wz-fact small{display:block;font-size:.75rem;color:var(--text)}
.wz-fact b{display:block;font-size:.875rem;font-weight:500}
.wz-prose{margin-top:1.5rem;line-height:1.625;color:var(--text)}
.wz-prose>*+*{margin-top:1rem}
.wz-prose h2,.wz-prose h3{font-family:var(--font-display);color:var(--ink)}
.wz-prose h2{font-size:2rem;margin-top:2rem}
.wz-prose h3{font-size:1.5rem;margin-top:1.5rem}
.wz-prose ul{list-style:disc;padding-left:1.25rem}
.wz-prose ol{list-style:decimal;padding-left:1.25rem}
.wz-prose a{color:var(--brand-primary);text-decoration:underline}
.wz-highlights{margin-top:1.5rem;display:grid;gap:.75rem}
@media(min-width:640px){.wz-highlights{grid-template-columns:repeat(2,1fr)}}
.wz-highlights li{display:flex;align-items:flex-start;gap:.75rem;border-radius:var(--radius-2xl);border:1px solid var(--border);background:var(--card);padding:1rem;font-size:.875rem;color:var(--text)}
.wz-highlights svg{width:1.1rem;height:1.1rem;color:var(--brand-primary);flex:none;margin-top:.15rem}
.wz-highlights b{display:block;font-weight:600;color:var(--ink)}
.wz-highlights span{display:block;margin-top:.2rem;line-height:1.5}
/* itinerary timeline + accordion */
.wz-itin-tools{margin-top:1rem;display:flex;gap:.5rem}
.wz-itin-tools button{border:1px solid var(--border);background:#fff;border-radius:999px;padding:.35rem .9rem;font-size:.75rem;cursor:pointer;color:var(--brand-primary)}
.wz-itin-tools button:hover{background:var(--brand-primary-soft)}
.wz-itinerary{position:relative;margin-top:2rem;display:flex;flex-direction:column;gap:1.5rem;border-left:1px solid var(--border);padding-left:1.5rem}
@media(min-width:768px){.wz-itinerary{padding-left:2rem}}
.wz-day{position:relative}
.wz-day__num{position:absolute;left:-34px;top:1.25rem;display:flex;width:1.75rem;height:1.75rem;align-items:center;justify-content:center;border-radius:999px;background:var(--brand-primary);color:var(--brand-primary-fg);font-size:10px;font-weight:600}
@media(min-width:768px){.wz-day__num{left:-42px}}
.wz-day__card{border-radius:var(--radius-2xl);border:1px solid var(--border);background:var(--card)}
.wz-day__head{display:block;width:100%;border:0;background:none;padding:1.25rem;text-align:left;cursor:pointer}
@media(min-width:768px){.wz-day__head{padding:1.5rem}}
.wz-day__tags{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}
.wz-day__tag{display:inline-flex;align-items:center;gap:.375rem;border-radius:999px;background:var(--brand-primary-soft);padding:.25rem .75rem;font-size:.75rem;font-weight:500}
.wz-day__loc{display:inline-flex;align-items:center;gap:.375rem;font-size:.75rem;color:rgba(0,0,0,.7)}
.wz-day__title{margin-top:.75rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;font-family:var(--font-display);font-size:1.25rem}
.wz-day__title svg{width:1.1rem;height:1.1rem;color:var(--brand-primary);transition:transform .2s}
.wz-day.is-open .wz-day__title svg{transform:rotate(180deg)}
.wz-day__body{display:none;padding:0 1.25rem 1.25rem}
@media(min-width:768px){.wz-day__body{padding:0 1.5rem 1.5rem}}
.wz-day.is-open .wz-day__body{display:block}
.wz-day__body ul{display:flex;flex-direction:column;gap:.5rem;font-size:.875rem;line-height:1.625;color:var(--text)}
.wz-day__body li{display:flex;align-items:flex-start;gap:.5rem}
.wz-day__body li::before{content:"";margin-top:.5rem;width:.375rem;height:.375rem;flex-shrink:0;border-radius:999px;background:var(--brand-primary)}
.wz-day__stay{margin-top:.75rem;font-size:.8rem;color:var(--muted)}
/* inclusions grid */
.wz-incl{display:grid;gap:2rem}
@media(min-width:768px){.wz-incl{grid-template-columns:repeat(2,1fr)}}
.wz-incl ul{margin-top:1rem;display:flex;flex-direction:column;gap:.5rem;font-size:.875rem}
.wz-incl li{display:flex;align-items:flex-start;gap:.5rem}
.wz-incl li svg{width:1rem;height:1rem;margin-top:.15rem}
.wz-yes svg{color:#00a544}
.wz-no svg{color:#fb2c36}
/* gallery */
.wz-gallery{margin-top:1.5rem;display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}
@media(min-width:768px){.wz-gallery{grid-template-columns:repeat(3,1fr)}}
.wz-gallery a{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;border-radius:var(--radius-2xl)}
.wz-gallery a:first-child{grid-column:span 2;grid-row:span 2;aspect-ratio:auto}
.wz-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.wz-gallery a:hover img{transform:scale(1.05)}
.wz-lightbox{position:fixed;inset:0;z-index:60;display:none;align-items:center;justify-content:center;background:rgba(0,0,0,.9);padding:2rem}
.wz-lightbox.is-open{display:flex}
.wz-lightbox img{max-height:86vh;width:auto;border-radius:var(--radius-xl)}
.wz-lightbox button{position:absolute;display:flex;width:3rem;height:3rem;align-items:center;justify-content:center;border:0;border-radius:999px;background:rgba(255,255,255,.15);color:#fff;cursor:pointer}
.wz-lightbox [data-lb-close]{top:1rem;right:1rem}
.wz-lightbox [data-lb-prev]{left:1rem;top:50%}
.wz-lightbox [data-lb-next]{right:1rem;top:50%}
.wz-map{margin-top:2rem;overflow:hidden;border-radius:var(--radius-2xl);border:1px solid var(--border)}
.wz-map iframe{display:block;width:100%;height:320px;border:0}
/* sticky enquiry sidebar */
.wz-aside{height:fit-content}
@media(min-width:1024px){.wz-aside{position:sticky;top:6rem}}
.wz-book{overflow:hidden;border-radius:var(--radius-2xl);border:1px solid var(--border);background:var(--card);box-shadow:var(--shadow-sm)}
.wz-book__price{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border)}
.wz-book__price .wz-price{font-size:1.75rem}
.wz-book__title{margin:0 0 .35rem;font-family:var(--font-display);font-size:1.6rem;line-height:1.1;color:var(--ink)}
.wz-book__price--request small{display:block;color:var(--muted);font-size:.8rem;line-height:1.5}
.wz-price--request{font-size:1.05rem;color:var(--brand-primary)}
.wz-book__tabs{display:grid;grid-template-columns:repeat(2,1fr);border-bottom:1px solid var(--border)}
.wz-book__tabs button{border:0;background:none;padding:.75rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .15s}
.wz-book__tabs button:hover{background:color-mix(in srgb,var(--brand-accent) 30%,transparent)}
.wz-book__tabs button.is-active{background:var(--brand-accent);color:var(--brand-accent-fg)}
.wz-book__panel{display:none;padding:1.5rem}
.wz-book__panel.is-active{display:block}
.wz-form{display:flex;flex-direction:column;gap:1rem}
.wz-form label{display:block;font-size:.75rem;color:var(--muted)}
.wz-form input,.wz-form select,.wz-form textarea{margin-top:.25rem;width:100%;border-radius:.5rem;border:1px solid var(--border);background:#fff;padding:.5rem .75rem;font-size:.875rem}
.wz-form input:focus,.wz-form select:focus,.wz-form textarea:focus{outline:2px solid color-mix(in srgb,var(--brand-primary) 40%,transparent);border-color:var(--brand-primary)}
.wz-form textarea{min-height:6rem;resize:vertical}
.wz-form__row{display:grid;gap:1rem}
@media(min-width:640px){.wz-form__row{grid-template-columns:1fr 1fr}}
.wz-hp{position:absolute!important;left:-9999px!important}
.wz-counters{display:flex;flex-direction:column}
.wz-counter{display:flex;align-items:center;justify-content:space-between;padding:.75rem 0;border-top:1px solid var(--border)}
.wz-counter:first-child{border-top:0}
.wz-counter b{display:block;font-size:.875rem;font-weight:500}
.wz-counter small{font-size:.75rem;color:var(--muted)}
.wz-counter__ctl{display:flex;align-items:center;gap:.75rem}
.wz-counter__ctl button{display:flex;width:2rem;height:2rem;align-items:center;justify-content:center;border-radius:999px;border:1px solid var(--border);background:#fff;cursor:pointer}
.wz-counter__ctl button:hover{background:color-mix(in srgb,var(--brand-accent) 10%,transparent)}
.wz-counter__ctl input{width:1.75rem;margin:0;border:0;padding:0;text-align:center;font-weight:500;background:none}
.wz-book__call{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:0 1.5rem 1.5rem;font-size:.875rem;color:var(--brand-primary)}
.wz-notice{border-radius:var(--radius-xl);padding:.85rem 1rem;font-size:.875rem;margin-bottom:1rem}
.wz-notice--ok{background:#e7f8ee;color:#05622f}
.wz-notice--err{background:#fde8e8;color:#8f1d1d}
/* related */
.wz-related{padding-bottom:4rem}
.wz-related h2{font-size:1.5rem;font-weight:600}

/* ------------------------------------------------------------------
   16. Archive filters, pages, pagination
------------------------------------------------------------------ */
.wz-filters{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:2rem}
.wz-filters a{border-radius:999px;border:1px solid var(--border);background:#fff;padding:.5rem 1.1rem;font-size:.85rem;font-weight:500;transition:background .15s,color .15s}
.wz-filters a:hover{border-color:var(--brand-primary);color:var(--brand-primary)}
.wz-filters a.is-active{background:var(--brand-primary);border-color:var(--brand-primary);color:var(--brand-primary-fg)}
.wz-filters--sub{margin-top:-1rem;padding-top:1rem;border-top:1px solid var(--border)}
.wz-filters--sub a{background:transparent;padding:.4rem .95rem;font-size:.8rem}
.wz-filters--sub a.is-active{background:var(--brand-secondary);border-color:var(--brand-secondary);color:#fff}
.wz-archive-search{margin:-2.25rem auto 2.5rem;position:relative;z-index:12}
.wz-archive-search .wz-search{margin:0 auto;background:#fff;border-color:var(--border);box-shadow:var(--shadow-lg)}
.wz-archive-search .wz-search__field{background:var(--bg)}
.wz-pagination{margin-top:3rem;display:flex;justify-content:center;gap:.5rem}
.wz-pagination .page-numbers{display:flex;min-width:2.5rem;height:2.5rem;align-items:center;justify-content:center;border-radius:999px;border:1px solid var(--border);background:#fff;padding:0 .75rem;font-size:.875rem}
.wz-pagination .current{background:var(--brand-primary);border-color:var(--brand-primary);color:var(--brand-primary-fg)}
.wz-page{padding-top:4rem;padding-bottom:4rem}
.wz-page .wz-prose{margin-top:0;max-width:48rem}
.wz-contact-grid{display:grid;gap:2.5rem}
@media(min-width:1024px){.wz-contact-grid{grid-template-columns:1fr 1.2fr}}
.wz-contact-list{margin-top:1.5rem;display:flex;flex-direction:column;gap:1rem}
.wz-contact-list a,.wz-contact-list div{display:flex;align-items:flex-start;gap:.75rem}
.wz-contact-list svg{width:1.25rem;height:1.25rem;color:var(--brand-primary);margin-top:.15rem}
.wz-card-pad{border-radius:var(--radius-2xl);border:1px solid var(--border);background:var(--card);padding:2rem;box-shadow:var(--shadow-sm)}

/* ------------------------------------------------------------------
   17. Footer
------------------------------------------------------------------ */
.wz-footer{background:var(--brand-secondary);color:var(--footer-text)}
.wz-footer__top{display:grid;gap:3rem;padding:4rem 0}
@media(min-width:768px){.wz-footer__top{grid-template-columns:repeat(4,1fr)}}
@media(min-width:1024px){.wz-footer__top{grid-template-columns:repeat(5,1fr)}}
.wz-footer__brand{grid-column:auto}
@media(min-width:768px){.wz-footer__brand{grid-column:span 2}}
.wz-footer__logo img{max-height:150px;width:auto}
.wz-footer__logo .wz-logo__text{color:#fff}
.wz-footer__brand>p{margin-top:1.25rem;max-width:24rem;font-size:.875rem}
.wz-footer__contact{margin-top:1.5rem;display:flex;flex-direction:column;gap:.5rem;font-size:.875rem}
.wz-footer__contact a,.wz-footer__contact div{display:flex;align-items:flex-start;gap:.5rem}
.wz-footer__contact a:hover{color:#fff}
.wz-footer h4{font-family:var(--font-display);font-size:1.25rem;font-weight:700}
.wz-footer ul{margin-top:1rem;display:flex;flex-direction:column;gap:.5rem;font-size:.875rem}
.wz-footer ul a{display:inline-flex;align-items:center;gap:.5rem;transition:color .15s}
.wz-footer ul a:hover{color:#fff}
.wz-footer__social{gap:.75rem!important}
.wz-news p{margin-top:1rem;font-size:.875rem}
.wz-news form{margin-top:1rem;display:flex;overflow:hidden;border-radius:999px;border:1px solid var(--brand-primary)}
.wz-news input[type=email]{width:100%;min-width:0;border:0;background:transparent;padding:.75rem 1rem;font-size:.875rem;color:#fff;outline:0}
.wz-news input::placeholder{color:var(--footer-text)}
.wz-news button{border:0;background:var(--brand-primary);padding:0 1.25rem;font-size:.875rem;font-weight:500;color:var(--brand-primary-fg);cursor:pointer}
.wz-news button:hover{opacity:.9}
.wz-footer__bottom{display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:1rem;border-top:1px solid rgba(255,255,255,.1);padding:2rem 0;font-size:.75rem}
.wz-footer__bottom a{text-decoration:underline}
.wz-footer__bottom a:hover{color:#fff}
@media(min-width:768px){.wz-footer__bottom{flex-direction:row;align-items:center}}

/* Contact Form 7 inside theme cards: inherit the theme form look */
.wz-form .wpcf7 p{margin:0 0 1rem}
.wz-form .wpcf7 input[type=submit]{width:100%;border:0;border-radius:999px;background:var(--brand-accent);color:var(--brand-accent-fg);padding:.75rem 1.25rem;font-weight:500;cursor:pointer}
.wz-form .wpcf7 input[type=submit]:hover{opacity:.9}

/* WordPress core alignment helpers */
.alignwide{max-width:var(--container);margin-left:auto;margin-right:auto}
.alignfull{width:100vw;margin-left:calc(50% - 50vw)}
.wp-caption-text{font-size:.8rem;color:var(--muted)}
