/* Reversible visual-polish layer. Remove this file + the two BASE tags to roll back. */

/* Cinematic hero movement: torn-paper edge stays fixed because only the image moves. */
.hero-photo .hero-main{transform:scale(1.025);transform-origin:52% 50%;animation:nomadsHeroDrift 18s ease-in-out infinite alternate}
@keyframes nomadsHeroDrift{0%{transform:scale(1.025) translate3d(0,0,0)}100%{transform:scale(1.075) translate3d(-1.2%,.7%,0)}}

/* Small, tactile interactions rather than bouncy app-style animation. */
.card,.tile,.event-poster{transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.card:hover,.tile:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(0,0,0,.12)}
.product-card .prodimg img{transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.product-card:hover .prodimg img{transform:scale(1.045)}
.btn{transition:transform .12s ease,background .15s ease,color .15s ease,border-color .15s ease}
.btn:active{transform:translateY(1px) scale(.985)}

/* History: works without photographs by making type and chronology the visual. */
.history-intro-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:20px;margin:26px 0 50px}
.history-intro{padding:30px;display:flex;align-items:center}
.history-intro .intro{margin:0}
.history-values{padding:30px;background:#111;color:#fff;overflow:hidden;position:relative}

.history-timeline{position:relative;max-width:980px;margin:0 auto;padding:10px 0 14px}
.history-timeline:before{content:'';position:absolute;left:186px;top:0;bottom:0;width:3px;background:linear-gradient(#111 0 5%,var(--red) 18% 82%,#111 95% 100%)}
.timeline-item{position:relative;display:grid;grid-template-columns:160px 54px 1fr;align-items:start;margin:0 0 54px;opacity:.35;transform:translateY(18px);transition:opacity .6s ease,transform .6s cubic-bezier(.2,.7,.2,1)}
.timeline-item.is-visible{opacity:1;transform:none}
.timeline-year{text-align:right;padding-top:17px;font-family:'Carnevalee',Impact,sans-serif;font-size:34px;line-height:.95;color:#111}
.timeline-node{width:18px;height:18px;margin:22px auto 0;border-radius:50%;background:var(--red);border:4px solid var(--paper);box-shadow:0 0 0 3px #111;z-index:2}
.timeline-card{position:relative;background:#fff;border:1px solid var(--line);border-top:5px solid #111;padding:26px 30px;box-shadow:0 12px 30px rgba(0,0,0,.07);overflow:hidden}

.timeline-card h2{margin:4px 0 10px;font-size:36px}
.timeline-card p:last-child{margin-bottom:0}
.history-signoff{margin-top:8px;text-align:center}

/* Events: poster-like rather than another generic white panel. */
.event-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:30px}
.event-poster{position:relative;min-height:290px;padding:0;background:#111;color:#fff;border:1px solid #292929;border-top:7px solid var(--red);box-shadow:0 16px 34px rgba(0,0,0,.13);overflow:hidden}
.event-poster:hover{transform:translateY(-3px);box-shadow:0 20px 42px rgba(0,0,0,.19)}
.event-poster.next-event{grid-column:1/-1;min-height:330px;background:linear-gradient(120deg,#111 0%,#1b1b1b 72%,#270006 100%);border-top-width:9px}
.event-poster-head{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 22px;border-bottom:1px solid rgba(255,255,255,.12)}
.event-kicker{font-weight:1000;letter-spacing:.12em;color:#fff;font-size:12px}
.next-event .event-kicker{color:#ff3148}
.event-date{font-family:'Carnevalee',Impact,sans-serif;font-size:23px;letter-spacing:.02em;color:#fff}
.event-poster-body{position:relative;z-index:2;padding:28px 26px 34px;max-width:780px}
.event-poster h2{font-size:clamp(36px,5vw,62px);line-height:.95;margin:0 0 14px;color:#fff}
.event-poster:not(.next-event) h2{font-size:42px}
.event-location{display:inline-block;margin:0 0 12px;padding:6px 9px;background:var(--red);font-weight:1000;text-transform:uppercase;letter-spacing:.04em}
.event-poster p{font-size:16px;max-width:680px;color:#e6e6e6}


/* Gallery intentionally uses the proven lightbox styling from site-effects.css. */

/* Memorial: dark-to-clear entrance without interfering with the music gate. */
.memorial-sky{animation:memorialSkyArrive 2.2s ease-out both}
.memorial-shade{animation:memorialShadeArrive 2.4s ease-out both}
.memorial-content{animation:memorialContentArrive 1.25s .35s ease-out both}
@keyframes memorialSkyArrive{from{filter:brightness(.38) saturate(.72);transform:scale(1.025)}to{filter:none;transform:none}}
@keyframes memorialShadeArrive{from{opacity:1;background:rgba(0,0,0,.78)}to{opacity:1}}
@keyframes memorialContentArrive{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}

/* Subtle page-to-page fade. JS only delays normal same-origin public links by 140ms. */
#main-content{animation:nomadsPageIn .24s ease-out both}
html.page-leaving #main-content{opacity:0;transform:translateY(4px);transition:opacity .14s ease,transform .14s ease}
@keyframes nomadsPageIn{from{opacity:.15;transform:translateY(4px)}to{opacity:1;transform:none}}

/* Custom 404. */
.wrong-turn{position:relative;min-height:480px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;overflow:hidden;padding:55px clamp(20px,6vw,76px);background:#111;color:#fff;border-top:8px solid var(--red)}
.wrong-turn .page-title{color:#fff;margin-bottom:8px;font-size:clamp(64px,10vw,130px)}
.wrong-turn .intro{color:#ddd}.wrong-turn .eyebrow{color:#ff3148}
.wrong-turn-road{position:absolute;right:7%;bottom:-130px;width:220px;height:600px;border-left:6px dashed rgba(255,255,255,.18);border-right:6px dashed rgba(255,255,255,.18);transform:perspective(440px) rotateX(57deg) rotateZ(-11deg);opacity:.7}


@media(max-width:760px){
  .history-intro-grid{grid-template-columns:1fr;margin-bottom:38px}
  .history-timeline:before{left:17px}
  .timeline-item{grid-template-columns:38px 1fr;gap:0;margin-bottom:36px}
  .timeline-year{grid-column:2;text-align:left;padding:0 0 8px 18px;font-size:30px}
  .timeline-node{grid-column:1;grid-row:1/3;width:15px;height:15px;margin:7px auto 0}
  .timeline-card{grid-column:2;padding:22px;margin-left:18px}
  .timeline-card h2{font-size:31px}
  .event-grid{grid-template-columns:1fr}
  .event-poster.next-event{grid-column:auto}
  .event-poster-head{align-items:flex-start;flex-direction:column;gap:5px}
  .event-date{font-size:21px}
  .event-poster:not(.next-event) h2{font-size:38px}
}

@media(prefers-reduced-motion:reduce){
  .hero-photo .hero-main,.memorial-sky,.memorial-shade,.memorial-content,#main-content{animation:none!important}
  .timeline-item{opacity:1;transform:none;transition:none}
  .card,.tile,.event-poster,.product-card .prodimg img,.btn{transition:none!important}
  html.page-leaving #main-content{opacity:1;transform:none;transition:none}
}


/* Support Wall */
.support-wall-layout{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.55fr);gap:28px;align-items:start;margin-top:32px}
.support-wall-form{padding:28px;position:sticky;top:96px;border-top:6px solid #111;box-shadow:0 16px 34px rgba(0,0,0,.08)}
.support-wall-form h2,.support-wall-head h2{margin:4px 0 18px;font-size:36px}
.support-wall-note{margin:14px 0 0;color:#666}
.support-wall-list{min-width:0}
.support-wall-head{display:flex;align-items:end;justify-content:space-between;gap:18px;margin:0 4px 18px}
.support-wall-count{font-family:'Carnevalee',Impact,sans-serif;font-size:22px;color:#666;white-space:nowrap}
.support-note-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:start;padding:8px 4px 16px}
.support-note{position:relative;min-height:220px;padding:46px 26px 24px;background:#fff;border:1px solid #d7d2c7;border-top:6px solid #111;box-shadow:0 12px 26px rgba(0,0,0,.11);overflow:hidden;transform:rotate(-.45deg);transition:transform .2s ease,box-shadow .2s ease}
.support-note:nth-child(2n){transform:rotate(.55deg);border-top-color:var(--red);background:#fbfaf6}
.support-note:nth-child(4n+3){transform:rotate(.28deg);background:#f4f1e9}
.support-note:nth-child(5n){border-top-color:var(--red)}
.support-note:hover{transform:translateY(-3px) rotate(0);box-shadow:0 18px 38px rgba(0,0,0,.15)}
.support-quote{position:absolute;left:18px;top:8px;font-family:Georgia,serif;font-size:76px;line-height:1;color:var(--red);opacity:.9}
.support-message{position:relative;z-index:2;margin:0 0 28px;font-size:18px;line-height:1.55;font-weight:650;color:#1a1a1a;white-space:pre-line}
.support-note-footer{position:relative;z-index:2;display:grid;grid-template-columns:1fr auto;gap:2px 12px;padding-top:14px;border-top:1px solid rgba(0,0,0,.13)}
.support-note-footer strong{font-family:'Carnevalee',Impact,sans-serif;font-size:27px;line-height:1;color:#111;font-weight:400}
.support-note-footer span{grid-column:1;color:#666;font-weight:800;font-size:13px;text-transform:uppercase;letter-spacing:.04em}
.support-note-footer time{grid-column:2;grid-row:1/3;align-self:end;color:#777;font-size:12px;font-weight:800;text-transform:uppercase}

.support-wall-pager{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:20px}
.support-wall-empty{padding:28px}
@media(max-width:900px){.support-wall-layout{grid-template-columns:1fr}.support-wall-form{position:static}.support-note-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.support-note-grid{grid-template-columns:1fr;gap:18px}.support-note,.support-note:nth-child(2n),.support-note:nth-child(4n+3){transform:none}.support-note{min-height:0;padding:44px 22px 22px}.support-wall-head{align-items:flex-start}.support-wall-count{font-size:19px}.support-note-footer{grid-template-columns:1fr}.support-note-footer time{grid-column:1;grid-row:auto;margin-top:5px}.support-wall-pager{flex-wrap:wrap}.support-wall-pager .small{order:3;width:100%;text-align:center}}

@media(max-width:720px){.hero-copy p .btn + .btn{margin-top:10px}}



.product-dash{display:inline-block;font-family:Arial,Helvetica,sans-serif;font-weight:900;font-size:.72em;line-height:1;vertical-align:.08em;margin:0 .025em}




/* Unified decorative Support 81 mark */
.support81-stamp{display:inline-grid;grid-template-columns:1fr;grid-template-rows:auto auto;justify-items:center;align-items:center;font-family:'Carnevalee',Impact,sans-serif;line-height:1;text-align:center;transform:rotate(-4deg);pointer-events:none}
.support81-word{grid-row:1;display:block;font-family:'Carnevalee',Impact,sans-serif;font-size:.17em;line-height:.78;letter-spacing:0;white-space:nowrap;margin:0 0 -.03em}
.support81-clean-t{font-family:Arial,Helvetica,sans-serif;font-weight:900;font-size:.82em;line-height:1;vertical-align:.03em}
.support81-num{grid-row:2;display:block;font:400 1em/.82 'Carnevalee',Impact,sans-serif;margin:0}
.prodimg .support81-stamp{font-size:62px;color:#777}
.product-main .support81-stamp{font-size:84px;color:#777}
.cart-thumb .support81-stamp{font-size:26px;color:#777}
.feature{position:relative;overflow:hidden}
.feature .support81-stamp{position:absolute;right:12px;bottom:-18px;font-size:112px;color:rgba(0,0,0,.035);transform:rotate(-6deg)}
.history-values .support81-stamp{position:absolute;right:-16px;bottom:-38px;font-size:170px;color:rgba(255,255,255,.035)}
.timeline-card .support81-stamp{position:absolute;right:-10px;bottom:-25px;font-size:125px;color:rgba(0,0,0,.025)}
.event-stamp{position:absolute;right:-16px;bottom:-52px;font-size:210px;color:rgba(255,255,255,.035)}
.note-stamp{position:absolute;right:-10px;bottom:-30px;font-size:132px;color:rgba(0,0,0,.035);transform:rotate(-6deg)}
.wrong-turn-stamp{position:absolute;right:7%;top:20px;font-size:190px;color:rgba(255,255,255,.035)}

/* NOMADS_COLOUR_PHOTO_CONTAIN */
.product-card .prodimg img,.card .prodimg img{object-fit:contain!important;padding:10px;background:#fff}

/* NOMADS_PRODUCT_COLOURS_UNDER_IMAGE */
.product-visual{min-width:0}
.product-photo-colour{margin:9px 0 0;background:#fff;border:1px solid var(--line);padding:12px 16px}
.product-photo-colour label{display:block;font-weight:900;margin-bottom:7px}
.product-photo-colour select{display:block;width:100%;max-width:100%;padding:12px;border:1px solid #bdb5a8;background:#fff;font:inherit}
@media(max-width:720px){.product-visual .product-main{height:315px!important}}
/* Keep homepage CTA buttons distinct on desktop and mobile. */
.hero-copy .hero-cta{display:flex;align-items:center;flex-wrap:wrap;gap:14px}
.hero-copy .hero-cta .btn{margin:0}

/* Rebuilt Nomads hero: actual distressed artwork, no generated dot patterns. */
.hero-photo .hero-main.approved-hero{
 object-fit:cover;object-position:50% 50%;
 filter:none;animation:none;
 transform:scale(1.11);transform-origin:center center;
}
@media(max-width:900px){
 .hero-photo{min-height:0;aspect-ratio:1.42}
 .hero-photo:before{height:clamp(30px,8vw,65px)}
 .hero-photo .hero-main.approved-hero{transform:scale(1.04)}
}
.hero-photo:after{
 content:'';position:absolute;z-index:2;inset:0;pointer-events:none;
 background:linear-gradient(90deg,rgba(0,0,0,.12),transparent 28%,rgba(0,0,0,.05));
}
