/* Shared Instagram spacing stays identical on the homepage and voucher page. */
:root main .home-insta{padding-top:52px;padding-bottom:52px}
:root main .home-insta .pg-section-head{margin-bottom:24px}

/* Voucher destination photographs use a shorter, consistent landscape crop. */
:root #main>.destinations .destination-grid{gap:18px}
:root #main>.destinations .destination-card{height:280px;min-height:0;border-radius:16px}
:root #main>.destinations .destination-info{left:22px;right:22px;bottom:22px}
:root #main>.destinations .destination-info strong{font-size:27px;line-height:1.15;margin-bottom:6px}

/* The camera is the existing vector symbol; only its background uses brand color. */
:root .site-footer .footer-card[data-instagram] .footer-card-icon{background:radial-gradient(circle at 28% 104%,#ffd776 0%,#f7a144 23%,#ee5c4a 43%,#d82d7e 65%,#8b40c5 87%,#5c50d4 100%);color:#fff;box-shadow:inset 0 0 0 1px #ffffff26}
:root .site-footer .footer-card[data-instagram] .footer-card-icon .icon{width:24px;height:24px;stroke:currentColor;stroke-width:1.8;fill:none;filter:none}

/* Agency summaries share the compact MICE icon, copy and detail-action layout. */
:root main[data-page=agency] .feature-grid{gap:16px;margin:24px 0 36px}
:root main[data-page=agency] .feature-card{display:grid;grid-template-columns:40px minmax(0,1fr);grid-template-rows:auto 1fr auto;column-gap:14px;row-gap:10px;min-height:190px;padding:20px;border-radius:18px}
:root main[data-page=agency] .feature-card-top{grid-column:1;grid-row:1 / 3;flex-direction:column;justify-content:flex-start;align-items:center;gap:10px;margin:0}
:root main[data-page=agency] .feature-symbol{width:40px;height:40px;border-radius:12px}
:root main[data-page=agency] .feature-symbol svg{width:21px;height:21px}
:root main[data-page=agency] .feature-number{font-size:10px;letter-spacing:.08em}
:root main[data-page=agency] .feature-title{grid-column:2;align-self:center;margin:0;font-size:1.06rem;line-height:1.35}
:root main[data-page=agency] .feature-description{grid-column:2;margin:0;max-width:none;font-size:.84rem;line-height:1.6}
:root main[data-page=agency] .feature-card-bottom{grid-column:1 / -1;align-self:end;padding-top:12px;margin-top:4px;font-size:.76rem}

/* Interactive cards lift gently; photographs zoom inside their existing crop. */
:root :is(main,.site-footer) :is(.tour-card,.offer,.feature-card,.svc-item,.svc-tile,.destination-card,.insta-tile,.post-card,.contact-card,.footer-card,.region-activity,.info-links>a,.bento>a,.quick-links>a){transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease;transform-origin:center center}
:root :is(main,.site-footer) :is(.tour-card,.offer,.feature-card,.svc-item,.svc-tile,.destination-card,.insta-tile,.post-card,.contact-card,.footer-card,.region-activity,.info-links>a,.bento>a,.quick-links>a):is(:focus-visible,:has(:focus-visible)){transform:translateY(-3px) scale(1.015);box-shadow:0 12px 28px #00000012}
:root :is(main,.site-footer) :is(.tour-card,.offer,.svc-item,.svc-tile,.destination-card,.insta-tile,.post-card,.bento>a):is(:focus-visible,:has(:focus-visible)) img{transform:scale(1.02)}
@media(hover:hover) and (pointer:fine){
  :root :is(main,.site-footer) :is(.tour-card,.offer,.feature-card,.svc-item,.svc-tile,.destination-card,.insta-tile,.post-card,.contact-card,.footer-card,.region-activity,.info-links>a,.bento>a,.quick-links>a):hover{transform:translateY(-3px) scale(1.015);box-shadow:0 12px 28px #00000012}
  :root :is(main,.site-footer) :is(.tour-card,.offer,.svc-item,.svc-tile,.destination-card,.insta-tile,.post-card,.bento>a):hover img{transform:scale(1.02)}
  :root .site-footer .footer-card[data-instagram]:hover{border-color:#e3549299}
}
/* Scroll containers clip intentionally: preserve each card's bounds and animate
   its cropped image, so first/last cards and focus outlines remain fully usable. */
:root :is(main,.site-footer) :is(.tour-track,.reviews-track,.insta-grid,.quick-links)>:is(.tour-card,.review-card,.insta-tile,a):is(:hover,:focus-visible,:has(:focus-visible)){transform:none;box-shadow:inset 0 0 0 1px var(--line)}
:root :is(.tour-track,.reviews-track,.insta-grid,.quick-links)>:is(.tour-card,.review-card,.insta-tile,a):focus-visible{outline-offset:-3px}

@media(max-width:650px){
  :root main .home-insta{padding-top:32px;padding-bottom:32px}
  :root main .home-insta .pg-section-head{margin-bottom:20px}
  :root #main>.destinations .destination-card{height:220px;min-height:0}
  :root #main>.destinations .destination-info{left:20px;right:20px;bottom:20px}
  :root #main>.destinations .destination-info strong{font-size:25px}
}
@media(max-width:600px){
  :root main[data-page=agency] .feature-grid{gap:12px;margin:20px 0 28px}
  :root main[data-page=agency] .feature-card{min-height:0;padding:18px;column-gap:12px;row-gap:8px;border-radius:16px}
}
/* Do not leave a mouse-only zoom active after a tap on touch devices. */
@media(hover:none),(pointer:coarse){
  :root :is(main,.site-footer) :is(.tour-card,.offer,.feature-card,.svc-item,.svc-tile,.destination-card,.insta-tile,.post-card,.contact-card,.footer-card,.region-activity,.info-links>a,.bento>a,.quick-links>a):hover:not(:focus-visible):not(:has(:focus-visible)){transform:none;box-shadow:none}
  :root :is(main,.site-footer) :is(.tour-card,.offer,.svc-item,.svc-tile,.destination-card,.insta-tile,.post-card,.bento>a):hover:not(:focus-visible):not(:has(:focus-visible)) img{transform:none}
  #main .home-finder .quick-links>a:hover:not(:focus-visible):not(:has(:focus-visible)){transform:none;box-shadow:none}
}
@media(prefers-reduced-motion:reduce){
  :root :is(main,.site-footer) :is(.tour-card,.offer,.feature-card,.svc-item,.svc-tile,.destination-card,.insta-tile,.post-card,.contact-card,.footer-card,.region-activity,.info-links>a,.bento>a,.quick-links>a){transition:none!important}
  :root :is(main,.site-footer) :is(.tour-card,.offer,.feature-card,.svc-item,.svc-tile,.destination-card,.insta-tile,.post-card,.contact-card,.footer-card,.region-activity,.info-links>a,.bento>a,.quick-links>a):is(:hover,:focus-visible,:has(:focus-visible)){transform:none!important}
  :root :is(main,.site-footer) :is(.tour-card,.offer,.svc-item,.svc-tile,.destination-card,.insta-tile,.post-card,.bento>a) img{transition:none!important;transform:none!important}
}
