/* ATTRACTIONS */
.attractions{position:relative;padding:62px 0!important;background:#f1f4f2;overflow:hidden}
.attractions .container{position:relative;z-index:3}
.attractions .text-center{position:relative;max-width:780px;margin-left:auto;margin-right:auto}

/* NATURE TEXTURE */
.attractions:before{content:"";position:absolute;top:-170px;right:-120px;width:420px;height:420px;border:1px solid rgba(14,118,88,.07);transform:rotate(18deg);pointer-events:none}
.attractions:after{content:"";position:absolute;bottom:-190px;left:-130px;width:460px;height:460px;border:1px solid rgba(217,134,28,.06);transform:rotate(-18deg);pointer-events:none}
.attractions .container:before{content:"";position:absolute;top:-30px;right:-40px;width:180px;height:180px;background-image:radial-gradient(rgba(14,118,88,.10) 1px,transparent 1.5px);background-size:18px 18px;opacity:.45;pointer-events:none;z-index:-1}

/* HEADING */
.attractions .section-subtitle{display:inline-flex;align-items:center;gap:7px;margin-bottom:10px;color:#d87913;font-size:10px;font-weight:800;letter-spacing:2.8px;text-transform:uppercase}
.attractions .section-subtitle i{color:#0e7658;font-size:12px}
.attractions .section-title{margin:0 0 12px;color:#173e30;font-family:Georgia,"Times New Roman",serif;font-size:clamp(40px,4.2vw,56px);font-weight:700;line-height:1.06;letter-spacing:-1.1px}
.attractions .section-description{max-width:650px;margin:0 auto;color:#68766f;font-size:12px;line-height:1.8}

/* GRID */
.attractions .row{position:relative;z-index:2}

/* CARD */
.attraction-card{position:relative;height:100%;background:#fff;border:1px solid #d9e2de;border-radius:0!important;overflow:hidden;box-shadow:0 7px 20px rgba(23,63,53,.05);transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease}
.attraction-card:hover{transform:translateY(-6px);border-color:#bcd3c8;box-shadow:0 15px 30px rgba(23,63,53,.11)}

/* IMAGE */
.attraction-image{position:relative;height:225px;overflow:hidden;background:#edf3ef}
.attraction-image img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .8s ease}
.attraction-card:hover .attraction-image img{transform:scale(1.07)}
.attraction-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.02) 35%,rgba(10,38,27,.48) 100%);pointer-events:none}

/* IMAGE ACCENT */
.attraction-image:before{content:"";position:absolute;left:0;bottom:0;z-index:2;width:45px;height:3px;background:var(--attraction-color,#0e7658);transition:width .35s ease}
.attraction-card:hover .attraction-image:before{width:90px}

/* DISTANCE */
.distance{position:absolute;top:12px;right:12px;z-index:4;display:inline-flex;align-items:center;gap:5px;padding:6px 9px;color:#173e30;background:rgba(255,255,255,.95);border:1px solid rgba(255,255,255,.8);font-size:8px;font-weight:800;letter-spacing:.4px;box-shadow:0 4px 12px rgba(0,0,0,.08)}
.distance i{color:#d98218;font-size:10px}

/* BODY */
.attraction-body{position:relative;padding:18px 17px 16px;background:#fff;border-top:3px solid var(--attraction-color,#0e7658)}
.attraction-body h4{margin:0 0 7px;color:#294b3a;font-size:16px;font-weight:800;line-height:1.3}
.attraction-body p{min-height:38px;margin:0 0 15px;color:#78837e;font-size:9.5px;line-height:1.7}

/* FOOTER */
.attraction-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:11px;border-top:1px solid #e8eeeb}
.attraction-footer>span{display:inline-flex;align-items:center;gap:5px;color:#7b8781;font-size:8px;font-weight:700}
.attraction-footer>span i{color:var(--attraction-color,#0e7658);font-size:10px}

/* MAP BUTTON */
.attraction-footer .btn{display:inline-flex;align-items:center;gap:5px;min-height:30px;padding:5px 11px;color:#fff!important;background:var(--attraction-color,#0e7658);border:1px solid var(--attraction-color,#0e7658);border-radius:0!important;font-size:8px;font-weight:750;transition:.3s ease}
.attraction-footer .btn:hover{color:#fff!important;filter:brightness(.88);transform:translateY(-2px)}
.attraction-footer .btn i{font-size:9px}

/* COLORS */
.attraction-card:nth-child(1){--attraction-color:#0e7658}
.attraction-card:nth-child(2){--attraction-color:#317da3}
.attraction-card:nth-child(3){--attraction-color:#d98218}
.attraction-card:nth-child(4){--attraction-color:#7557a3}
.attraction-card:nth-child(5){--attraction-color:#df6255}
.attraction-card:nth-child(6){--attraction-color:#238b45}

/* CTA */
.attractions .text-center.mt-5{margin-top:30px!important}
.attractions .btn-warning{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:8px 17px;color:#fff!important;background:#0e7658;border:1px solid #0e7658;border-radius:0!important;font-size:10px;font-weight:750;box-shadow:0 7px 17px rgba(14,118,88,.16);transition:.3s ease}
.attractions .btn-warning:hover{color:#fff!important;background:#095b44;border-color:#095b44;transform:translateY(-2px);box-shadow:0 10px 22px rgba(14,118,88,.24)}
.attractions .btn-warning i{font-size:11px}

/* TABLET */
@media(max-width:991px){
.attractions{padding:55px 0!important}
.attractions .section-title{font-size:45px}
.attraction-image{height:210px}
.attraction-body{padding:17px 15px}
.attraction-body h4{font-size:15px}
}

/* MOBILE */
@media(max-width:576px){
.attractions{padding:48px 0!important}
.attractions .section-subtitle{font-size:9px;letter-spacing:2px}
.attractions .section-title{font-size:35px;line-height:1.08;letter-spacing:-.7px}
.attractions .section-description{font-size:11px;line-height:1.75}
.attractions .container:before{width:110px;height:110px;right:-25px;background-size:14px 14px}
.attraction-image{height:190px}
.attraction-body{padding:15px 13px 14px}
.attraction-body h4{font-size:14px}
.attraction-body p{min-height:34px;font-size:8.5px;line-height:1.65}
.distance{top:9px;right:9px;padding:5px 7px;font-size:7px}
.attraction-footer{padding-top:9px}
.attraction-footer>span{font-size:7px}
.attraction-footer .btn{min-height:27px;padding:5px 8px;font-size:7px}
.attractions .text-center.mt-5{margin-top:24px!important}
.attractions .btn-warning{min-height:35px;padding:7px 13px;font-size:9px}
}

/* REDUCED MOTION */
@media(prefers-reduced-motion:reduce){
.attraction-card,.attraction-image img,.attraction-image:before,.attraction-footer .btn,.attractions .btn-warning{transition:none!important}
}