/* ===========================================================
   Central Vortex Outfitters — dark "Harmony" component layer
   (loads after style.css; page-specific + MB widget defenses)
   =========================================================== */

/* ---- text wordmark fallback (used only if logo missing) ---- */
.brand--text{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;
  line-height:1;text-align:left}
.brand--text .bn{font-family:var(--display);font-weight:700;text-transform:uppercase;
  font-size:clamp(1.35rem,2.2vw,1.9rem);letter-spacing:.03em;color:var(--cream);white-space:nowrap;transition:font-size .4s}
.brand--text .bs{font-family:var(--sans);font-weight:700;font-size:.56rem;letter-spacing:.4em;
  text-transform:uppercase;color:var(--accent);margin-top:.4em;transition:font-size .4s}
.header.scrolled .brand--text .bn{font-size:clamp(1.15rem,1.8vw,1.55rem)}

/* ---- animated hamburger -> X ---- */
.navtoggle{position:relative;width:46px;height:40px}
.navtoggle span{position:absolute;left:10px;width:26px;height:2px;background:var(--cream);margin:0;
  transition:transform .4s cubic-bezier(.7,0,.2,1),opacity .3s,top .3s}
.navtoggle span:nth-child(1){top:13px}
.navtoggle span:nth-child(2){top:19px}
.navtoggle span:nth-child(3){top:25px}
.navtoggle.open span:nth-child(1){top:19px;transform:rotate(45deg)}
.navtoggle.open span:nth-child(2){opacity:0;transform:scaleX(0)}
.navtoggle.open span:nth-child(3){top:19px;transform:rotate(-45deg)}

/* ---- mobile menu staggered reveal ---- */
.mobile a{opacity:0;transform:translateY(18px);transition:opacity .5s ease,transform .5s cubic-bezier(.2,.7,.2,1)}
.mobile.open a{opacity:1;transform:none}
.mobile.open a:nth-child(1){transition-delay:.14s}
.mobile.open a:nth-child(2){transition-delay:.19s}
.mobile.open a:nth-child(3){transition-delay:.24s}
.mobile.open a:nth-child(4){transition-delay:.29s}
.mobile.open a:nth-child(5){transition-delay:.34s}
.mobile.open a:nth-child(6){transition-delay:.39s}
.mobile.open a:nth-child(7){transition-delay:.44s}
.mobile.open a:nth-child(8){transition-delay:.49s}
.mobile.open a:nth-child(9){transition-delay:.54s}
.mobile.open a:nth-child(10){transition-delay:.59s}
.mobile.open a:nth-child(11){transition-delay:.64s}

/* ---- pricing tables ---- */
.priceblock{margin-top:8px}
.priceblock + .priceblock{margin-top:30px}
.priceblock h3{font-size:1.35rem;margin-bottom:.3rem;color:var(--cream)}
.priceblock .note{font-size:.92rem;color:var(--cream-soft);margin:.2rem 0 1rem}
.pricelist{padding:0;margin:0}
.pricelist li{list-style:none;display:flex;justify-content:space-between;gap:18px;align-items:baseline;
  padding:13px 0;border-bottom:1px solid var(--line)}
.pricelist .pl-name{font-family:var(--sans);font-weight:500;font-size:1rem;color:var(--cream)}
.pricelist .pl-name small{display:block;font-size:.82rem;color:var(--cream-soft);margin-top:.2rem;letter-spacing:0;text-transform:none;font-weight:400}
.pricelist .pl-price{font-family:var(--display);font-weight:600;font-size:1.4rem;color:var(--accent);white-space:nowrap;line-height:1}

/* species / quick-facts chips */
.chips{display:flex;flex-wrap:wrap;gap:10px;margin:6px 0 0;padding:0}
.chips li{list-style:none;font-family:var(--sans);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;
  color:var(--cream-soft);border:1px solid var(--line);border-radius:30px;padding:.5em 1.1em}

/* team grid (about — "Our Experts") */
.team{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:8px}
.team__card{background:var(--bg-dark-2);border:1px solid var(--line);padding:30px 28px;border-radius:6px}
.team__card .eyebrow{margin-bottom:.5rem}
.team__card h3{font-size:1.4rem;margin-bottom:.5rem;color:var(--cream)}
.team__card p{font-size:.96rem;color:var(--cream-soft);margin:0}
@media(max-width:900px){.team{grid-template-columns:1fr}}

/* includes list on dark box */
.includes{list-style:none;padding:0;margin:0}
.includes li{position:relative;padding:11px 0 11px 30px;border-bottom:1px solid var(--line);font-size:1rem;color:var(--cream-soft)}
.includes li:last-child{border-bottom:0}
.includes li::before{content:"\2713";position:absolute;left:0;color:var(--accent);font-size:1rem}
.incbox{background:var(--bg-dark-2);color:var(--cream);padding:clamp(30px,4vw,48px);border-radius:6px;border:1px solid var(--line)}
.incbox .eyebrow--light{color:var(--accent)}

/* ---- Mallard Bay booking BUTTON defenses (rust-orange, squared) ---- */
.mb-full-width{display:inline-block !important;width:auto !important;max-width:none !important}
.mb-full-width > *, .mb-full-width > * > *, .mb-full-width > * > * > *{width:auto !important}
.mb-full-width a.btn{display:inline-flex !important}
button.mb_widget.btn.btn--primary, .mb-full-width button.btn.btn--primary,
a.mb_widget.btn.btn--primary{
  background:var(--accent) !important;color:#1a1206 !important;display:inline-flex !important;align-items:center;gap:.6em;
  font-family:var(--sans) !important;font-weight:700 !important;font-size:.80rem !important;letter-spacing:.14em !important;
  text-transform:uppercase !important;padding:1.12em 2.3em !important;border:0 !important;border-radius:2px !important;
  cursor:pointer;width:auto !important;line-height:1 !important;box-shadow:0 12px 26px -14px rgba(0,0,0,.7)}
button.mb_widget.btn.btn--primary:hover, .mb-full-width button.btn.btn--primary:hover{background:var(--accent-deep) !important;transform:translateY(-2px)}
.nav button.mb_widget.btn.btn--primary.btn--nav{padding:.85em 1.5em !important;font-size:.74rem !important}

/* ---- Mallard Bay form embed shell (kept light for form legibility) ---- */
.mb-form-shell{background:#fff;border-radius:8px;padding:clamp(18px,3vw,38px);
  box-shadow:0 30px 70px -34px rgba(0,0,0,.6);border:1px solid var(--line);min-height:120px}

/* map */
.mapwrap{border-radius:8px;overflow:hidden;box-shadow:var(--shadow);border:1px solid var(--line)}
.mapwrap iframe{width:100%;height:420px;border:0;display:block}

/* contact social row */
.social-ico{display:flex;gap:12px}
.social-ico a{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line);color:var(--cream);transition:.3s}
.social-ico a:hover{background:var(--accent);border-color:var(--accent);color:#1a1206}
.social-ico svg{width:20px;height:20px;fill:currentColor}

/* interior hero copy width */
.hero__inner{max-width:1080px}
.hero .lead{max-width:none}

/* contact info cards (dark) */
.info-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.info-card{background:var(--bg-dark-2);border:1px solid var(--line);border-radius:6px;padding:30px 26px;text-align:center;transition:transform .35s,box-shadow .35s,border-color .35s;display:block}
.info-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--accent)}
.info-card .ico{width:52px;height:52px;margin:0 auto 16px;border-radius:50%;background:var(--accent);display:grid;place-items:center}
.info-card .ico svg{width:24px;height:24px;fill:#1a1206}
.info-card .k{font-family:var(--sans);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin-bottom:.5rem;font-weight:700}
.info-card p,.info-card a{margin:0;font-size:1rem;color:var(--cream);word-break:break-word}
.info-card a:hover{color:var(--accent)}
@media(max-width:960px){.info-cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.info-cards{grid-template-columns:1fr}}

/* gallery masonry (dark) */
.gallery{columns:3;column-gap:14px}
.gallery img{width:100%;margin:0 0 14px;border-radius:6px;break-inside:avoid;box-shadow:0 12px 30px -20px rgba(0,0,0,.7)}
@media(max-width:900px){.gallery{columns:2}}
@media(max-width:560px){.gallery{columns:1}}

/* two-up cards */
.cards--2{grid-template-columns:repeat(2,1fr)}
@media(max-width:900px){.cards--2{grid-template-columns:1fr}}

/* ---- footer logo image (client crest) ---- */
.footer__brand .brand--logo{display:block;padding:0;margin-bottom:16px}
.footer__brand .brand--logo img{height:96px;width:auto;filter:none;box-shadow:none;border:0}

/* ---- rate card (dark) ---- */
.rate-card{max-width:520px;margin:0 auto;background:var(--bg-dark-2);border:1px solid var(--line);
  border-radius:8px;overflow:hidden;box-shadow:var(--shadow)}
.rate-card__head{background:var(--bg-dark);color:var(--cream);padding:clamp(28px,3.5vw,38px) 32px;text-align:center;border-bottom:1px solid var(--line)}
.rate-card__head .eyebrow{color:var(--accent);margin-bottom:.7rem}
.rate-card__price{font-family:var(--display);font-weight:700;font-size:clamp(2.8rem,5vw,3.6rem);line-height:1;color:var(--cream)}
.rate-card__price span{font-family:var(--sans);font-weight:600;font-size:.82rem;letter-spacing:.14em;
  text-transform:uppercase;color:var(--accent);margin-left:.5em;vertical-align:middle}
.rate-card__sub{margin:.9rem 0 0;font-size:.9rem;color:var(--cream-soft)}
.rate-card__list{list-style:none;margin:0;padding:26px 34px}
.rate-card__list li{position:relative;padding:11px 0 11px 30px;border-bottom:1px solid var(--line);
  font-size:.98rem;color:var(--cream-soft)}
.rate-card__list li:last-child{border-bottom:0}
.rate-card__list li::before{content:"\2713";position:absolute;left:0;color:var(--accent);font-weight:600}
.rate-card__foot{padding:6px 34px 32px;text-align:center}
.rate-card__note{display:block;margin-top:16px;font-size:.72rem;letter-spacing:.14em;
  text-transform:uppercase;color:var(--cream-soft)}

/* ---- coming-2027 badge (lodging) ---- */
.badge{display:inline-block;font-family:var(--sans);font-weight:700;font-size:.74rem;letter-spacing:.2em;
  text-transform:uppercase;color:#1a1206;background:var(--accent);padding:.5em 1.1em;border-radius:2px;margin-bottom:1.2rem}

/* ===========================================================
   Wix-match content sections (added 2026-07-31)
   =========================================================== */

/* ---- HOME: Our Tours captions ---- */
.tourgrid{align-items:start}
.touritem{display:flex;flex-direction:column}
.tourcaption{padding:24px 2px 0}
.tourcaption .eyebrow{margin-bottom:.5rem}
.tourcaption h3{font-size:1.55rem;color:var(--cream);margin-bottom:.6rem;line-height:1.1}
.tourcaption p{font-size:.98rem;color:var(--cream-soft);margin:0;line-height:1.65}
@media(max-width:760px){.tourcaption{padding-top:16px}}

/* ---- HOME: Our Advantage (full-width photo + overlay) ---- */
.advantage{position:relative;overflow:hidden;isolation:isolate;color:var(--cream)}
.advantage__bg{position:absolute;inset:0;z-index:-2}
.advantage__bg img{width:100%;height:100%;object-fit:cover;object-position:center 40%}
.advantage::after{content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(90deg,rgba(15,26,15,.95) 0%,rgba(15,26,15,.88) 48%,rgba(15,26,15,.62) 100%),
             linear-gradient(0deg,rgba(15,26,15,.5),rgba(15,26,15,0) 55%)}
.advantage__inner{max-width:660px}
.advantage h2{margin-bottom:1.2rem}
.advantage__list{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:1.7rem 0 2rem}
.advantage__list li{font-family:var(--sans);font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--cream);border:1px solid var(--line);border-radius:30px;padding:.55em 1.15em;background:rgba(234,228,211,.05)}

/* ---- HUNTS: 150+ stat band ---- */
.statband .split{align-items:center}
.stat__num{font-family:var(--display);font-weight:700;line-height:.88;color:var(--accent);
  font-size:clamp(4.5rem,11vw,8rem);margin-bottom:.5rem}
.stat__num span{font-size:.5em;vertical-align:top;margin-left:.03em}

/* ---- GUEST INFO: license / info columns ---- */
.gcols{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:start}
.gcol{background:var(--bg-dark-2);border:1px solid var(--line);border-radius:6px;padding:30px 28px}
.gcol h3{font-size:1.3rem;color:var(--cream);margin-bottom:.9rem;line-height:1.15}
.gcol p{font-size:.97rem;color:var(--cream-soft);margin:0}
.gcol p + p{margin-top:.9rem}
.gcol .includes li{font-size:.96rem}
.gcol .btn{margin-top:1.2rem}
@media(max-width:900px){.gcols{grid-template-columns:1fr}}

/* ---- GUEST INFO: what to bring checklist ---- */
.checklist{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:start;margin-top:8px}
.checkcol{background:var(--bg-dark-2);border:1px solid var(--line);border-radius:6px;padding:30px 28px}
.checkcol__ico{width:52px;height:52px;border-radius:50%;background:var(--accent);display:grid;place-items:center;margin-bottom:16px}
.checkcol__ico svg{width:26px;height:26px;fill:#1a1206}
.checkcol h3{font-size:1.22rem;color:var(--cream);margin-bottom:.7rem;line-height:1.15}
.checkcol .includes li{font-size:.95rem}
@media(max-width:900px){.checklist{grid-template-columns:1fr}}
.orangenote{color:var(--accent);font-style:italic;font-size:1.04rem;margin-top:1.7rem;max-width:70ch}

/* ---- LODGING: coming-soon placeholder card ---- */
.comingsoon{max-width:600px;margin:0 auto;background:var(--bg-dark-2);border:1px solid var(--line);
  border-radius:10px;overflow:hidden;box-shadow:var(--shadow)}
.comingsoon__ph{position:relative;aspect-ratio:16/10;display:grid;place-items:center;text-align:center;padding:24px;
  background:repeating-linear-gradient(45deg,#12200f,#12200f 22px,#16210F 22px,#16210F 44px);
  border-bottom:2px solid var(--accent)}
.comingsoon__ph .badge{position:static;margin:0 0 6px}
.comingsoon__ph .ph-note{display:block;color:var(--cream-dim);font-size:.7rem;letter-spacing:.2em;
  text-transform:uppercase;margin-top:14px}
.comingsoon__cap{padding:24px 28px}
.comingsoon__cap p{margin:0;color:var(--cream-soft);font-size:.98rem}
