.tour-detail{background:var(--parchment);padding-block:64px 60px}.tour-detail__inner{max-width:760px}.tour-detail__title{font-family:var(--font-display);font-weight:600;font-size:clamp(2rem,3.6vw,2.9rem);color:var(--ink);margin:10px 0 18px}.tour-detail__desc{font-size:1rem;line-height:1.7;color:#3c4a3d;margin:0 0 22px}.tour-detail__meta{display:flex;gap:18px;flex-wrap:wrap;font-size:.85rem;color:#5a6b5c;margin:0 0 28px}.tour-detail__map-wrap{margin-top:44px}.tour-detail__map-title{font-family:var(--font-display);font-weight:600;font-size:1.3rem;color:var(--ink);margin:0 0 8px}.tour-detail__map-address{font-size:.9rem;color:#5a6b5c;margin:0 0 14px}.tour-detail__map{width:100%;height:320px;border-radius:var(--radius);overflow:hidden;border:1px solid rgba(24,34,25,.12)}.tour-detail__map-attribution{font-size:.72rem;color:#9a9284;margin:8px 0 0}.tour-detail__map-attribution a{color:inherit;text-decoration:underline}.tour-detail__gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px;margin-top:40px}.tour-highlights{display:grid;margin-bottom:45px;grid-template-columns:minmax(240px,340px) 1fr;gap:40px;align-items:start;margin-top:56px}.tour-highlights__title{font-family:var(--font-display);font-weight:600;font-size:clamp(1.5rem,2.6vw,1.9rem);color:var(--ink);margin:0 0 16px}.tour-highlights__text p{font-size:.95rem;line-height:1.7;color:#3c4a3d;margin:0 0 16px}.tour-highlights__carousel-wrap{min-width:0}.tour-highlights__carousel{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:4px}.tour-highlights__carousel::-webkit-scrollbar{display:none}.carousel-slide{position:relative;flex:0 0 auto;width:min(230px,70vw);height:280px;border-radius:var(--radius);overflow:hidden;scroll-snap-align:start;border:1px solid rgba(24,34,25,.1)}.carousel-slide img{width:100%;height:100%;object-fit:cover;display:block}.carousel-caption{position:absolute;inset:auto 0 0;background:linear-gradient(to top,#1b2921e6,#1b292100);padding:40px 16px 14px;opacity:0;transform:translateY(8px);transition:opacity .2s ease,transform .2s ease;pointer-events:none}.carousel-slide:hover .carousel-caption,.carousel-slide:focus-within .carousel-caption,.carousel-slide:focus .carousel-caption{opacity:1;transform:translateY(0)}.carousel-caption__title{font-family:var(--font-display);font-weight:600;font-size:1.05rem;color:var(--cream);margin:0 0 6px}.carousel-caption__body{font-size:.8rem;line-height:1.55;color:var(--parchment-alt);margin:0}.tour-highlights__dots{display:flex;justify-content:center;gap:8px;margin-top:16px}.carousel-dot{width:8px;height:8px;border-radius:50%;border:none;background:#18221933;padding:0;cursor:pointer}.carousel-dot.is-active{background:var(--ink)}@media (max-width: 780px){.tour-highlights{grid-template-columns:1fr}}.tour-reviews{background:var(--parchment);padding-block:20px 100px}.tour-reviews__title{font-family:var(--font-display);font-weight:600;font-size:clamp(1.7rem,3vw,2.2rem);margin:10px 0 30px;color:var(--ink)}.tour-reviews__notice{font-size:.95rem;color:#5a6b5c;background:var(--cream);border:1px solid rgba(24,34,25,.12);border-radius:var(--radius);padding:16px 20px;margin:0 0 22px}.tour-reviews__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.review-form-wrap{margin-bottom:30px}.review-cta{background:var(--cream);border:1px dashed rgba(24,34,25,.18);border-radius:var(--radius);padding:16px 20px;font-size:.92rem;color:#4a5b4c}.review-cta a{color:var(--russet);text-decoration:underline}.review-cta--done{background:#487a4a1a;border-color:#487a4a4d;color:#2e5c30}.review-form-card{background:var(--cream);border:1px solid rgba(24,34,25,.1);border-top:3px solid var(--gold);border-radius:var(--radius);padding:26px 26px 28px}.review-form-card__title{font-family:var(--font-display);font-weight:600;font-size:1.1rem;color:var(--ink);margin:0 0 18px}.review-form-card .field{margin-bottom:16px}.review-form-card label{display:block;font-size:.82rem;font-weight:600;color:#4a5b4c;margin-bottom:8px}.review-form-card label em{font-style:normal;color:var(--russet);margin-left:2px}.field__optional{font-weight:400;color:#8a8272}.star-picker{display:flex;gap:6px}.star-picker__star{background:none;border:none;font-size:1.6rem;line-height:1;color:#18221938;cursor:pointer;padding:2px;transition:color .15s ease,transform .15s ease}.star-picker__star:hover{transform:translateY(-1px)}.star-picker__star.is-filled{color:var(--gold)}.review-form-card textarea{width:100%;font-family:var(--font-body);font-size:.95rem;color:var(--ink);background:var(--cream);border:1px solid rgba(24,34,25,.22);border-radius:var(--radius);padding:12px 14px;resize:vertical}.review-form-card textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px #e9970a29}.review-form-error{font-size:.85rem;color:#7a2e1f;background:#9e49361a;border-left:3px solid var(--russet);padding:10px 14px;border-radius:var(--radius);margin:0 0 16px}.review-form-error.is-hidden{display:none}@media (max-width: 940px){.tour-reviews__grid{grid-template-columns:1fr 1fr}}@media (max-width: 640px){.tour-reviews__grid{grid-template-columns:1fr}.tour-detail__map{height:240px}}.site-footer{background:var(--forest-deep);color:var(--parchment-alt);padding-block:40px;border-top:1px solid var(--line)}.site-footer__row{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}.site-footer__logo{font-family:var(--font-display);font-style:italic;font-size:1.05rem;color:var(--cream);margin:0 0 8px}.site-footer__logo em{color:var(--gold)}.site-footer__text{max-width:46ch;font-size:.85rem;line-height:1.6;color:var(--parchment-alt);margin:0}.site-footer__copy{font-size:.78rem;color:#f2ead799;margin:0}
