
:root{
  --black:#15110E;      /* saddle black */
  --leather:#231B15;
  --kraft:#C1925A;      /* logo gold */
  --kraft-dim:#9C7444;
  --parchment:#E8D5B0;
  --parchment-hi:#F1E4C8;
  --ink:#2B2118;
  --red:#A3261E;        /* brand red */
  --bg:var(--black);
  --paper:var(--parchment);
  --paper-text:var(--ink);
  --display:"Rye", "Rockwell Extra Bold", Georgia, serif;
  --body:"Source Serif 4", Georgia, "Times New Roman", serif;
  box-sizing:border-box;
  padding-top:env(safe-area-inset-top,0px);
  padding-bottom:env(safe-area-inset-bottom,0px);
  background:var(--bg);
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){ --paper:#D9C49C; --bg:#110D0B; }
}
:root[data-theme="dark"]{ --paper:#D9C49C; --bg:#110D0B; }
*,*::before,*::after{box-sizing:inherit}
html{scroll-padding-top:env(safe-area-inset-top,0px)}
body{margin:0;background:var(--bg);color:var(--parchment);font-family:var(--body);font-size:1.0625rem;line-height:1.65;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit}
a:focus-visible{outline:3px solid var(--kraft);outline-offset:3px}
.wrap{width:min(1120px,100% - 2.5rem);margin-inline:auto}
h2,
h1{font-family:var(--display);font-weight:400;font-size:clamp(1.9rem,4.2vw,2.8rem);line-height:1.1;margin:0 0 1rem}
.sub{font-family:var(--display);letter-spacing:.22em;text-transform:uppercase}

/* Top bar */
.top{background:var(--black);border-bottom:1px solid #3a2d22}
.top .wrap{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.55rem 0;font-size:.95rem;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none}
.brand img{width:46px;height:46px;border-radius:50%}
.brand span{font-family:var(--display);color:var(--kraft);font-size:1.15rem}
.status{display:flex;align-items:center;gap:.5rem;color:var(--parchment)}
.dot{width:.6rem;height:.6rem;border-radius:50%;background:#7d6f62;flex:none}
.dot.open{background:#86B96A}
.top .call{font-weight:600;color:var(--kraft);text-decoration:none}
.top .call:hover{text-decoration:underline}

/* Tabs */
.tabs{position:sticky;top:env(safe-area-inset-top,0px);z-index:10;background:var(--leather);border-bottom:3px solid var(--red)}
.tabs ul{list-style:none;margin:0 auto;padding:0;display:flex;gap:.25rem;overflow-x:auto;scrollbar-width:none}
.tabs ul::-webkit-scrollbar{display:none}
.tabs li:first-child{margin-left:auto}
.tabs li:last-child{margin-right:auto}
.tabs a{display:block;white-space:nowrap;padding:.95rem 1.1rem .8rem;font-family:var(--display);font-size:1rem;color:#d8c6a6;text-decoration:none;border-bottom:3px solid transparent;margin-bottom:-3px}
.tabs a:hover{color:var(--parchment-hi)}
.tabs a[aria-current="page"]{color:var(--kraft);border-bottom-color:var(--kraft);background:var(--black)}
.tabs a:focus-visible{outline-offset:-3px}
@media (max-width:560px){.tabs a{padding:.85rem .8rem .7rem;font-size:.92rem}}
.next{display:inline-block;margin-top:1.4rem;font-family:var(--display);color:var(--kraft);text-decoration:none;border-bottom:2px solid var(--kraft-dim);padding-bottom:.1rem}
.next:hover{color:var(--parchment-hi);border-color:var(--parchment-hi)}
.game .next,.about .next{color:var(--red);border-color:var(--red)}

/* Home strip */
.strip{background:var(--bg);padding:3.5rem 0}
.strip .wrap{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2.5rem}
.strip a{display:block;text-decoration:none;border-top:1px solid #4a3a2c;padding-top:1.2rem}
.strip strong{display:block;font-family:var(--display);font-weight:400;color:var(--kraft);font-size:1.35rem;margin-bottom:.35rem}
.strip span{color:#d8c6a6}
.strip a:hover strong{color:var(--parchment-hi)}
@media (max-width:760px){.strip .wrap{grid-template-columns:1fr;gap:1.5rem}}

/* Hero: western street */
.hero{background:var(--paper);color:var(--paper-text);border-bottom:6px solid var(--red)}
.hero-img{width:100%;aspect-ratio:1672/941;max-height:86vh;background:var(--black) url(/assets/hero-street.webp) center 25%/cover no-repeat}
.hero-band .wrap{display:flex;align-items:center;justify-content:space-between;gap:1.5rem 3rem;flex-wrap:wrap;padding:2rem 0 2.2rem}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.lede{font-size:clamp(1.1rem,1.9vw,1.3rem);line-height:1.55;margin:0;max-width:44ch}
.actions{display:flex;gap:.75rem;flex-wrap:wrap}
.btn{display:inline-block;padding:.85rem 1.4rem;font-weight:600;font-size:1.05rem;text-decoration:none;border:2px solid var(--ink);border-radius:2px}
.btn.solid{background:var(--ink);color:var(--parchment-hi)}
.btn.solid:hover{background:var(--red);border-color:var(--red)}
.btn.line{color:var(--ink)}
.btn.line:hover{background:rgba(43,33,24,.08)}

/* Offerings: sunset poster background */
.case{position:relative;isolation:isolate;background:var(--black);padding:calc(min(100vw,1086px) * .655) 0 5rem}
.case::before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:min(100%,1086px);aspect-ratio:1086/1448;background:url(/assets/meat-sunset.webp) center top/cover no-repeat;z-index:-1;
  -webkit-mask-image:linear-gradient(to bottom,#000 0,#000 70%,transparent 100%),linear-gradient(to right,transparent 0,#000 7%,#000 93%,transparent 100%);
  -webkit-mask-composite:source-in;
  mask-image:linear-gradient(to bottom,#000 0,#000 70%,transparent 100%),linear-gradient(to right,transparent 0,#000 7%,#000 93%,transparent 100%);
  mask-composite:intersect}
@media (max-width:1086px){.case::before{-webkit-mask-image:linear-gradient(to bottom,#000 0,#000 70%,transparent 100%);mask-image:linear-gradient(to bottom,#000 0,#000 70%,transparent 100%)}}
.case .wrap{display:block}
.case .panelcard{max-width:960px;margin:0 auto;background:rgba(21,17,14,.86);border:1px solid var(--kraft-dim);padding:2.6rem 2.6rem 2.2rem;box-shadow:0 0 0 6px rgba(21,17,14,.35)}
.case h2,
.case h1{color:var(--kraft);text-align:center}
.case .intro{max-width:58ch;margin:0 auto 2.2rem;text-align:center;color:#e2d2b4}
.offer{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 3rem}
.offer div{border-top:1px solid #5a4636;padding:1.3rem 0 1.7rem}
.offer h3{font-family:var(--display);font-weight:400;color:var(--parchment-hi);font-size:1.3rem;margin:0 0 .4rem;line-height:1.2}
.offer p{margin:0;color:#e2d2b4;max-width:42ch}
@media (max-width:620px){.offer{grid-template-columns:1fr}.case .panelcard{padding:1.8rem 1.3rem 1.4rem}}

/* Game processing */
.game{background:var(--paper);color:var(--paper-text);padding:5rem 0 0}
.game .wrap{display:grid;grid-template-columns:1fr 1fr;gap:3rem 4rem;align-items:start}
.game .wrap+.wrap{margin-top:4rem}
.game h2,
.game h1{color:var(--ink)}
.game .copy p{max-width:48ch}
.game .copy a{font-weight:600}
.tagline{font-family:var(--display);color:var(--red);font-size:clamp(1.2rem,2.3vw,1.5rem);line-height:1.3;margin:0 0 1.2rem}
.promise{list-style:none;padding:0;margin:1.4rem 0;display:flex;flex-wrap:wrap;gap:.4rem 0;font-family:var(--display);font-size:1.05rem}
.promise li{padding:0 1rem;border-left:2px solid var(--kraft-dim)}
.promise li:first-child{padding-left:0;border-left:0}
.deer{width:100%;max-width:395px;justify-self:end;border:2px solid var(--ink);box-shadow:6px 7px 0 var(--ink)}
.ticket{background:var(--parchment-hi);border:2px solid var(--ink);padding:2.2rem 1.8rem 1.6rem;position:relative;box-shadow:5px 6px 0 var(--ink);transform:rotate(-1.2deg);text-align:center;max-width:420px}
.ticket::before{content:"";position:absolute;top:.9rem;left:50%;width:1rem;height:1rem;margin-left:-.5rem;border:2px solid var(--ink);border-radius:50%;background:var(--paper)}
.ticket h3{font-family:var(--display);font-weight:400;font-size:1.3rem;margin:1rem 0 .4rem;color:var(--ink)}
.price{font-family:var(--display);font-size:clamp(3.4rem,8vw,4.6rem);line-height:1;margin:.3rem 0 0;color:var(--ink)}
.price span{font-size:.4em}
.per{margin:.3rem 0 .9rem;font-weight:600}
.min{margin:0 0 1.1rem;padding:.5rem 0;border-top:1px dashed #a88b66;border-bottom:1px dashed #a88b66;color:var(--red);font-weight:600}
.req{margin:0;font-size:.98rem}
.gh{font-family:var(--display);font-weight:400;font-size:1.4rem;color:var(--red);margin:0 0 1rem}
.check,.cuts{list-style:none;padding:0;margin:0}
.check li,.cuts li{padding:.45rem 0 .45rem 1.7rem;border-bottom:1px solid #c9ad84;position:relative}
.check li::before{content:"";position:absolute;left:.2rem;top:.85rem;width:.45rem;height:.8rem;border:solid var(--red);border-width:0 3px 3px 0;transform:rotate(45deg)}
.cuts li::before{content:"\2605";position:absolute;left:.1rem;color:var(--red)}
.prices{width:100%;border-collapse:collapse}
.prices td{padding:.5rem 0;border-bottom:1px solid #c9ad84}
.prices td:last-child{text-align:right;font-weight:600;white-space:nowrap;padding-left:1rem}
.small{font-size:.95rem;margin:.7rem 0 0;color:#5a4634}
.turn{font-family:var(--display);font-size:clamp(2rem,4.5vw,2.8rem);line-height:1;margin:0 0 .8rem;color:var(--ink)}
.sheet{background:var(--parchment-hi);border:2px solid var(--ink);padding:1.8rem;align-self:start}
.btn.dark{background:var(--ink);color:var(--parchment-hi);border-color:var(--ink)}
.btn.dark:hover{background:var(--red);border-color:var(--red)}
.nexts{display:flex;flex-wrap:wrap;gap:.5rem 2rem;margin:1.4rem 0 0}
.nexts .next{margin-top:0}
.how{margin:0;padding:1.6rem 1.6rem 1.2rem 3.2rem;background:var(--parchment-hi);border:2px solid var(--ink)}
.how li{margin-bottom:.8rem;padding-left:.3rem}
.how li::marker{font-family:var(--display);color:var(--red)}
.grades{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:.6rem 0 1rem}
.grade{display:block;font-weight:600;text-transform:uppercase;letter-spacing:.12em;font-size:.85rem}
.gp{display:block;font-family:var(--display);font-size:clamp(2rem,4.5vw,2.6rem);line-height:1.1;color:var(--ink)}
.gp small{font-size:.45em}
.ticket.t2{transform:rotate(1.2deg)}
.beef .ticket{max-width:none}
@media (max-width:820px){.ticket.t2{transform:none}}
.closer{background:var(--black);margin-top:4.5rem;padding:2.5rem 0}
.closer .wrap{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;flex-wrap:wrap}
.closer p{margin:0;font-family:var(--display);color:var(--kraft);font-size:clamp(1.2rem,2.4vw,1.6rem);line-height:1.3;max-width:34ch}
@media (max-width:820px){
  .game .wrap{grid-template-columns:1fr}
  .deer{justify-self:center;max-width:300px}
  .ticket{transform:none;justify-self:center;width:100%}
}

/* Visit */
.visit{padding:5rem 0;background:var(--bg)}
.visit .wrap{display:grid;grid-template-columns:1fr 1fr;gap:3.5rem}
.visit h2,
.visit h1{color:var(--kraft)}
address{font-style:normal;font-size:1.25rem;line-height:1.5;margin-bottom:1.4rem;color:var(--parchment-hi)}
.contact p{margin:.35rem 0}
.contact a{color:var(--kraft);font-weight:600}
.visit .btn{border-color:var(--kraft);color:var(--black);background:var(--kraft);margin-top:1.3rem}
.visit .btn:hover{background:var(--parchment-hi);border-color:var(--parchment-hi)}
.hours{width:100%;border-collapse:collapse;font-size:1.05rem}
.hours td{padding:.6rem 0;border-bottom:1px solid #3d3026}
.hours td:last-child{text-align:right}
.hours tr.today td{color:var(--kraft);font-weight:600}
.hours tr.today td:first-child::after{content:" (today)";font-weight:400;font-style:italic;color:#bfa98a}
@media (max-width:720px){.visit .wrap{grid-template-columns:1fr}}

/* About */
.about{background:var(--paper);color:var(--paper-text);padding:0 0 5rem;overflow:hidden}
.about-top{background:linear-gradient(to bottom,rgba(232,213,176,0) 0,rgba(232,213,176,0) calc(100% - 90px),var(--paper) 100%),url(/assets/about-rider.webp) 85% bottom/cover no-repeat;padding:4.5rem 0 5.5rem;min-height:min(52vw,760px);display:flex;align-items:center}
.about-top .wrap{width:min(1120px,100% - 2.5rem)}
.about-top .wrap{display:block}
.about .copy{max-width:min(560px,52%)}
.about .copy{background:rgba(244,233,210,.94);border:2px solid var(--ink);padding:2.2rem 2.2rem 2rem;box-shadow:5px 6px 0 var(--ink)}
.about .copy p{font-size:1.15rem;line-height:1.7;font-weight:500;color:#1E1610}
@media (max-width:560px){.about .copy{padding:1.6rem 1.3rem;box-shadow:none}.about .copy p{font-size:1.08rem}}
.about .media{display:grid;grid-template-columns:320px minmax(0,1fr);gap:2rem;align-items:start;margin-top:1rem}
.vid{width:100%;max-width:320px;aspect-ratio:9/16;object-fit:cover;background:var(--black);border:2px solid var(--ink);display:block}
.reviews .vid{border-color:var(--kraft-dim)}
.about .vidwrap figcaption{font-size:.92rem;color:#5a4634;margin-top:.45rem}
.about .copy{align-self:start}
.photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;margin:0}
.photos figure{margin:0}
.photos img{width:100%;height:auto;max-width:none;aspect-ratio:4/3;object-fit:cover;border:2px solid var(--ink);margin:0}
.photos figcaption{font-size:.92rem;color:#5a4634;margin-top:.45rem}
@media (max-width:620px){.photos{grid-template-columns:1fr}}
.about h2,
.about h1{color:var(--ink)}
.about .copy p{max-width:60ch}
.about .copy .motto{font-family:var(--display);font-weight:400;color:#8A1F18;font-size:clamp(1.35rem,2.6vw,1.75rem);line-height:1.35;margin:1.8rem 0 0;letter-spacing:.01em}
.about .rider-sm{width:100%;max-width:300px}
@media (max-width:980px){.about .media{grid-template-columns:1fr}.about .vidwrap{justify-self:center;width:100%;max-width:340px}}
@media (max-width:820px){.about-top{display:block;min-height:0;padding:calc(52vw + 1.5rem) 0 2rem;background:url(/assets/about-rider.webp) center top/100% auto no-repeat,var(--paper)}.about .copy{max-width:none}}

/* Reviews */
.reviews{padding:5rem 0;background:var(--bg)}
.reviews .wrap{display:grid;grid-template-columns:320px 1fr;gap:4rem;align-items:start}
.reviews h2,
.reviews h1{color:var(--kraft)}
.reviews .lead{color:#d8c6a6;max-width:52ch}
.rvid figcaption{font-size:.92rem;color:#bfa98a;margin-top:.45rem}
.vid-soon{width:100%;max-width:320px;aspect-ratio:9/16;border:2px dashed var(--kraft-dim);display:flex;align-items:center;justify-content:center;text-align:center;padding:1.5rem;color:#bfa98a}
.steps{margin:1.5rem 0 2rem;padding-left:1.3rem;color:#d8c6a6;max-width:52ch}
.steps li{margin-bottom:.4rem}
.btn.gold{background:var(--kraft);border-color:var(--kraft);color:var(--black)}
.btn.gold:hover{background:var(--parchment-hi);border-color:var(--parchment-hi)}
@media (max-width:820px){.reviews .wrap{grid-template-columns:1fr;gap:2.5rem}.rvid{justify-self:center;width:100%;max-width:340px}}

/* Contact form */
.message{grid-column:1/-1;border-top:1px solid #3d3026;padding-top:3.5rem;margin-top:.5rem}
.message .lead{color:#d8c6a6;max-width:56ch;margin:0 0 1.8rem}
.form{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem 1.5rem;max-width:760px}
.form .full{grid-column:1/-1}
.form label{display:block;font-weight:600;margin-bottom:.35rem;color:var(--parchment-hi)}
.form input,.form select,.form textarea{width:100%;font:inherit;font-size:1rem;color:var(--ink);background:var(--parchment-hi);border:2px solid var(--kraft-dim);border-radius:2px;padding:.7rem .8rem}
.form textarea{min-height:9rem;resize:vertical}
.form input:focus,.form select:focus,.form textarea:focus{outline:3px solid var(--kraft);outline-offset:1px}
.form button{font:inherit;font-weight:600;font-size:1.05rem;cursor:pointer;padding:.85rem 1.6rem;background:var(--kraft);color:var(--black);border:2px solid var(--kraft);border-radius:2px}
.form button:hover{background:var(--parchment-hi);border-color:var(--parchment-hi)}
.form button:focus-visible{outline:3px solid var(--parchment-hi);outline-offset:3px}
.form .note{font-size:.95rem;color:#bfa98a;margin:.6rem 0 0}
.form .sent{font-family:var(--display);color:var(--kraft);font-size:1.3rem;line-height:1.4;margin:0}
.form button:disabled{opacity:.6;cursor:wait}
.form .error{color:#F0A08A;font-weight:600;margin:.6rem 0 0}
@media (max-width:620px){.form{grid-template-columns:1fr}}

footer{border-top:6px solid var(--red);background:var(--black);padding:2rem 0;font-size:.95rem;color:#bfa98a}
footer .wrap{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}
footer strong{font-family:var(--display);font-weight:400;color:var(--kraft);font-size:1.1rem}

h1{font-family:var(--display);font-weight:400;font-size:clamp(1.9rem,4.2vw,2.8rem);line-height:1.1;margin:0 0 1rem}

.cutlist{list-style:none;padding:0;margin:.8rem 0 0;display:flex;flex-wrap:wrap;gap:.45rem}
.cutlist li{border:1px solid var(--kraft-dim);color:var(--parchment-hi);padding:.2rem .65rem;border-radius:2px;font-size:.95rem;line-height:1.5}

/* Google review scroller */
.rv-strip{background:var(--leather);border-bottom:1px solid #3a2d22;padding:3rem 0 3.2rem;overflow:hidden}
.rv-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.5rem 2rem;margin-bottom:1.6rem}
.rv-head h2,.rv-head .rv-title{font-family:var(--display);font-weight:400;color:var(--kraft);font-size:clamp(1.6rem,3.4vw,2.2rem);line-height:1.1;margin:0}
.rv-head p{margin:0;color:#d8c6a6}
.rv-head a{color:var(--kraft);font-weight:600}
.rv-viewport{overflow:hidden;-webkit-mask-image:linear-gradient(to right,transparent,#000 4%,#000 96%,transparent);mask-image:linear-gradient(to right,transparent,#000 4%,#000 96%,transparent)}
.rv-viewport:focus-visible{outline:3px solid var(--kraft);outline-offset:-3px}
.rv-track{list-style:none;margin:0;padding:0;display:flex;gap:1.2rem;width:max-content;animation:rv-scroll 110s linear infinite}
.rv-viewport:hover .rv-track,.rv-viewport:focus-within .rv-track{animation-play-state:paused}
@keyframes rv-scroll{from{transform:translateX(0)}to{transform:translateX(calc(-50% - .6rem))}}
.rv-card{width:min(330px,80vw);flex:none;background:var(--black);border:1px solid var(--kraft-dim);padding:1.4rem 1.4rem 1.2rem;display:flex;flex-direction:column;gap:.7rem}
.rv-stars{color:#E2B04A;letter-spacing:.15em;font-size:1.05rem}
.rv-card blockquote{margin:0;color:var(--parchment-hi);font-size:1rem;line-height:1.55;flex:1}
.rv-who{font-family:var(--display);color:var(--kraft);font-size:1rem}
.rv-who small{display:block;font-family:var(--body);color:#a99377;font-size:.82rem;margin-top:.1rem}
@media (prefers-reduced-motion: reduce){
  .rv-track{animation:none}
  .rv-viewport{overflow-x:auto;-webkit-mask-image:none;mask-image:none;padding:0 1.25rem}
  .rv-card[aria-hidden="true"]{display:none}
}

/* Visit page postcard banner */
.visit-card{background:var(--bg);padding:3rem 0 0}
.visit-card img{width:100%;height:auto;border:2px solid var(--kraft-dim);box-shadow:0 10px 30px rgba(0,0,0,.45)}
.visit-card+.visit{padding-top:3.5rem}

/* FAQ */
.faq{background:var(--paper);color:var(--paper-text);padding:4.5rem 0 5rem}
.faq h1{color:var(--ink)}
.faq-list{max-width:860px;margin-top:2rem}
.faq-group{font-family:var(--display);font-weight:400;color:var(--red);font-size:1.5rem;margin:2.4rem 0 .8rem}
.faq-group:first-child{margin-top:0}
.faq-item{background:var(--parchment-hi);border:2px solid var(--ink);margin-bottom:.7rem}
.faq-item summary{cursor:pointer;list-style:none;padding:1rem 3rem 1rem 1.2rem;font-weight:600;font-size:1.08rem;position:relative}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";position:absolute;right:1.1rem;top:50%;transform:translateY(-50%);font-family:var(--display);font-size:1.5rem;color:var(--red)}
.faq-item[open] summary::after{content:"\2013"}
.faq-item summary:focus-visible{outline:3px solid var(--kraft);outline-offset:2px}
.faq-a{padding:0 1.2rem 1.1rem;border-top:1px dashed #a88b66}
.faq-a p{margin:.9rem 0 0;max-width:68ch}
.faq-a a,.faq-more a{color:var(--red);font-weight:600}
.faq-more{max-width:860px;margin-top:2.2rem;font-size:1.05rem}

/* Home strip: 8 boxes */
.strip .wrap{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:1000px){.strip .wrap{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.strip .wrap{grid-template-columns:1fr}}

/* Freebies */
.freebies{background:var(--bg);padding:4.5rem 0 5rem}
.freebies h1{color:var(--kraft)}
.fb-lede{color:#d8c6a6;max-width:60ch;font-size:1.1rem;margin:0 0 1rem}
.fb-lede.small{font-size:1rem}
.fb-h{font-family:var(--display);font-weight:400;color:var(--parchment-hi);font-size:1.7rem;margin:3rem 0 1.2rem;padding-top:1.4rem;border-top:1px solid #3d3026}
.fb-grid{display:grid;gap:1.5rem;align-items:start}
.fb-wall{grid-template-columns:repeat(3,minmax(0,1fr))}
.fb-color{grid-template-columns:repeat(2,minmax(0,320px))}
.fb-card{margin:0;background:var(--leather);border:1px solid var(--kraft-dim);padding:.8rem}
.fb-card img{width:100%;height:auto;display:block;border:1px solid #3d3026;background:#fff}
.fb-card figcaption{padding:.8rem .2rem .2rem;display:flex;flex-direction:column;gap:.15rem}
.fb-card strong{font-family:var(--display);font-weight:400;color:var(--kraft);font-size:1.15rem}
.fb-card figcaption>span:not(.fb-btns){color:#bfa98a;font-size:.92rem}
.fb-btns{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.6rem}
.btn.dl{background:var(--kraft);border-color:var(--kraft);color:var(--black);padding:.55rem .9rem;font-size:.95rem}
.btn.dl:hover{background:var(--parchment-hi);border-color:var(--parchment-hi)}
.fb-tip{color:#a99377;font-size:.92rem;margin:.9rem 0 0}
.fb-radios{grid-template-columns:repeat(2,minmax(0,1fr))}
.fb-radio{background:var(--leather);border:1px solid var(--kraft-dim);padding:1rem}
.fb-radio>strong{display:block;font-family:var(--display);font-weight:400;color:var(--kraft);font-size:1.25rem}
.fb-radio>span{display:block;color:#bfa98a;font-size:.92rem;margin-bottom:.8rem}
.fb-radio iframe{border:0;border-radius:12px;display:block}
.fb-radio p{margin:1rem 0 0}
@media (max-width:900px){.fb-wall{grid-template-columns:1fr 1fr}.fb-card.tall{max-width:260px}}
@media (max-width:800px){.fb-radios{grid-template-columns:1fr}}
@media (max-width:600px){.fb-wall,.fb-color{grid-template-columns:1fr}}
.fb-card.tall img{aspect-ratio:16/9;object-fit:cover;object-position:center 41%}
@media (max-width:900px){.fb-card.tall{max-width:none}}

/* Text Us buttons only where texting works (phones and tablets) */
.touch-only{display:none}
@media (hover:none) and (pointer:coarse){.touch-only{display:inline-block}}
.contact-btns{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.3rem}
.contact-btns .btn{margin-top:0}

/* About: fixed background that the boxes scroll over */
.about{position:relative;clip-path:inset(0);background:var(--black)}
.about-bg{position:fixed;inset:0;background:url(/assets/about-rider.webp) 72% center/cover no-repeat;z-index:0}
.about-top,.about>.wrap{position:relative;z-index:1}
.about-top{background:none;min-height:0;display:block;padding:4.5rem 0 2.5rem}
.about-grid{display:grid !important;grid-template-columns:minmax(0,1fr) 300px;gap:3rem;align-items:start}
.about .copy{max-width:600px}
.tourwrap{margin:0;justify-self:end;width:100%;max-width:300px}
.tourwrap .vid,.about .vidwrap .vid{max-width:none;width:100%;border:2px solid var(--ink);box-shadow:5px 6px 0 var(--ink);background:#faf6ef}
.tourwrap figcaption,.about .vidwrap figcaption{display:inline-block;background:rgba(244,233,210,.94);color:var(--ink);font-size:.95rem;font-weight:600;padding:.3rem .7rem;margin-top:.7rem;border:1px solid var(--ink)}
.about .photos figure{background:rgba(244,233,210,.94);border:2px solid var(--ink);padding:.6rem .6rem .5rem;box-shadow:5px 6px 0 var(--ink)}
.about .photos img{border:1px solid var(--ink)}
.about .photos figcaption{color:var(--ink);font-weight:600;margin-top:.45rem}
@media (max-width:820px){
  .about-top{padding:3rem 0 2rem;background:none}
  .about-grid{grid-template-columns:1fr !important;gap:2rem}
  .about .copy{max-width:none}
  .tourwrap{justify-self:center;max-width:300px}
  .about-bg{background-position:70% center}
}

.landmark{margin:-.9rem 0 1.2rem;color:#d8c6a6;font-style:italic}

/* Consulting */
.consult{background:var(--paper);color:var(--paper-text);padding:4.5rem 0 4rem}
.consult h1{color:var(--ink)}
.cs-intro{font-size:1.15rem;line-height:1.7;max-width:68ch;font-weight:500}
.cs-cols{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin:2.8rem 0 0;align-items:start}
.cs-card{background:var(--parchment-hi);border:2px solid var(--ink);box-shadow:5px 6px 0 var(--ink);padding:1.8rem 1.8rem 1.4rem}
.cs-card h2,.cs-h{font-family:var(--display);font-weight:400;color:var(--red);font-size:1.5rem;margin:0 0 1rem}
.cs-h{margin:3.2rem 0 1.2rem}
.cs-ways{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.2rem}
.cs-way{border-top:3px solid var(--ink);padding-top:.9rem}
.cs-way h3{font-family:var(--display);font-weight:400;font-size:1.2rem;margin:0 0 .4rem;color:var(--ink)}
.cs-way p{margin:0}
.cs-why{max-width:820px}
.cs-form{padding-top:4rem}
.cs-form h2{color:var(--kraft)}
@media (max-width:900px){.cs-cols{grid-template-columns:1fr}.cs-ways{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.cs-ways{grid-template-columns:1fr}.cs-card{box-shadow:none}}
.tabs a.tab-shop{color:var(--kraft)}
.tabs a.tab-shop:hover{color:var(--parchment-hi)}
