
.canyon-page{background:#f5f2e9}
.canyon-header{position:absolute}
.canyon-hero{position:relative;min-height:94vh;color:#fff;display:flex;align-items:center;overflow:hidden}
.canyon-hero-image{
  position:absolute;
  inset:0;
  background-image:url('nevidio-canyoning-hero.webp');
  background-position:center 40%;
  background-size:cover;
  background-repeat:no-repeat;
  transform:scale(1.03)
}
.canyon-hero-shade{
  position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(4,26,28,.94),rgba(8,48,52,.53) 58%,rgba(7,34,38,.12)),
             linear-gradient(0deg,rgba(4,26,28,.78),transparent 54%)
}
.canyon-hero-content{position:relative;z-index:2;padding:140px 7vw 195px;max-width:1040px}
.canyon-hero-content h1{font-size:clamp(4rem,8vw,8.3rem)}
.canyon-hero-content>p:not(.eyebrow){max-width:660px;font-size:1.05rem;color:#e3eded;margin:30px 0 36px}
.canyon-hero-stats{
  position:absolute;z-index:3;left:7vw;right:7vw;bottom:40px;
  display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.34);padding-top:20px
}
.canyon-hero-stats div{display:flex;flex-direction:column}
.canyon-hero-stats strong{font-family:var(--serif);font-size:1.58rem}
.canyon-hero-stats span{font-size:.65rem;text-transform:uppercase;letter-spacing:.14em;color:#d1dfdf}
.canyon-intro{display:grid;grid-template-columns:1fr 1fr;gap:9vw}
.canyon-intro h2,.canyon-gallery h2,.experience-flow h2,.canyon-itinerary h2,.safety-section h2,.prepare-section h2,.booking-section h2{
  font-size:clamp(3.1rem,5.3vw,5.9rem);letter-spacing:-.04em
}
.canyon-intro-copy .lead{margin-top:0}
.canyon-intro-copy>p:last-child{color:#5c6864}
.canyon-gallery{background:#e9eeeb}
.gallery-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:45px}
.gallery-grid{display:grid;grid-template-columns:1.15fr .85fr .85fr;grid-template-rows:300px 300px;gap:16px}
.gallery-grid figure{margin:0;overflow:hidden;background:#ccd7d2}
.gallery-grid img{width:100%;height:100%;object-fit:cover;transition:transform .7s}
.gallery-grid figure:hover img{transform:scale(1.05)}
.gallery-tall{grid-row:span 2}
.gallery-quote{background:#163a38;color:#fff;padding:42px;display:flex;flex-direction:column;justify-content:center}
.gallery-quote>span{font-family:var(--serif);font-size:6rem;line-height:.5;color:#9fb4ae}
.gallery-quote blockquote{font-family:var(--serif);font-size:1.9rem;line-height:1.17;margin:20px 0 0}
.experience-flow{display:grid;grid-template-columns:1fr 1fr;min-height:760px}
.flow-image{background:url('nevidio-hero.webp') center/cover}
.flow-content{background:#103432;color:#fff;padding:8vw 7vw}
.flow-content>.eyebrow{color:#cfddda}
.flow-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px;margin-top:55px}
.flow-grid article{border-top:1px solid rgba(255,255,255,.24);padding-top:18px}
.flow-grid span{font-size:.62rem;letter-spacing:.14em;color:#9eb5b0}
.flow-grid h3{font-size:1.8rem;margin:10px 0}
.flow-grid p{font-size:.82rem;color:#c5d4d1}
.canyon-itinerary{background:#f8f5ee}
.canyon-timeline{list-style:none;margin:45px 0 0;padding:0;border-top:1px solid #cbd3ce}
.canyon-timeline li{display:grid;grid-template-columns:120px 1fr;gap:34px;padding:27px 0;border-bottom:1px solid #cbd3ce}
.canyon-timeline time{font-family:var(--serif);font-size:1.35rem;color:#17413d;font-weight:600}
.canyon-timeline h3{font-size:1.7rem;margin:0 0 6px}
.canyon-timeline p{margin:0;color:#5b6762}
.safety-section{display:grid;grid-template-columns:1.1fr .9fr;background:#172c25;color:#fff}
.safety-copy{padding:8vw 7vw}
.safety-copy>p:not(.eyebrow){color:#cbd6d1;max-width:680px}
.safety-list{margin-top:45px}
.safety-list article{display:grid;grid-template-columns:50px 1fr;gap:18px;padding:22px 0;border-top:1px solid rgba(255,255,255,.2)}
.safety-list article>span{font-family:var(--serif);font-size:1.7rem;color:#9db0a8}
.safety-list h3{font-size:1.55rem;margin:0 0 4px}
.safety-list p{font-size:.82rem;color:#c5d0cb;margin:0}
.safety-image{background:url('nevidio-group.webp') center/cover}
.prepare-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:9vw;align-items:center}
.prepare-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #cbd3ce}
.prepare-grid span{padding:20px 12px;border-bottom:1px solid #cbd3ce;font-size:.76rem;text-transform:uppercase;letter-spacing:.08em}
.booking-section{background:#092725;color:#fff;display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw}
.booking-copy>p:not(.eyebrow){color:#cbd8d5;max-width:580px}
.booking-price{display:flex;align-items:end;gap:18px;margin:25px 0}
.booking-price span{font-size:.65rem;text-transform:uppercase;letter-spacing:.13em;color:#a9bdb7}
.booking-price strong{font-family:var(--serif);font-size:3rem;color:#70b6d1}
.booking-contact{display:flex;flex-direction:column;gap:7px;margin:25px 0 35px}
.booking-contact a,.booking-contact span{font-family:var(--serif);font-size:1.3rem}
.canyon-form{background:#f5f2ea;color:var(--ink)}
@media(max-width:980px){
  .canyon-intro,.booking-section,.prepare-section{grid-template-columns:1fr}
  .gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:380px 300px}
  .gallery-tall{grid-row:auto;grid-column:span 2}
  .experience-flow,.safety-section{grid-template-columns:1fr}
  .flow-image,.safety-image{min-height:520px}
}
@media(max-width:650px){
  .canyon-hero-content{padding:125px 22px 210px}
  .canyon-hero-stats{left:22px;right:22px;grid-template-columns:1fr 1fr;gap:14px}
  .gallery-grid{grid-template-columns:1fr;grid-template-rows:repeat(4,310px)}
  .gallery-tall{grid-column:auto}
  .gallery-quote{padding:32px 24px}
  .flow-content,.safety-copy{padding:75px 22px}
  .flow-grid{grid-template-columns:1fr}
  .canyon-timeline li{grid-template-columns:1fr;gap:8px}
  .prepare-grid{grid-template-columns:1fr}
}


/* NEVIDIO HERO RESPONSIVE FOCAL POINT */
@media(max-width:980px){
  .canyon-hero-image{background-position:center 38%}
}
@media(max-width:650px){
  .canyon-hero-image{background-position:56% 35%}
}
