 :root{--green:#a8cf98;--green-dark:#52773e;--blue:#b9dce8;--blue-dark:#2e6680;--ink:#17333f;--cream:#f7f8f3}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,sans-serif}a{text-decoration:none;color:inherit}
header{min-height:82px;display:flex;align-items:center;padding:0 5vw;gap:28px;position:sticky;top:0;background:rgba(247,248,243,.97);z-index:10;border-bottom:1px solid #e1e7e3}.logo{display:flex;align-items:center;width:72px;height:72px;flex:0 0 72px}.logo img{display:block;width:72px;height:72px;object-fit:contain}nav{margin-left:auto;display:flex;gap:20px;align-items:center;font-size:12px;font-weight:700}nav a:hover{color:var(--blue-dark)}nav .group{position:relative}.group>a{padding:30px 0;display:block}.dropdown{display:none;position:absolute;right:0;top:68px;background:#fff;border:1px solid #dfe7e3;min-width:220px;box-shadow:0 10px 30px #17333f18}.group:hover .dropdown{display:block}.dropdown a{display:block;padding:13px 16px;font-weight:600}.dropdown a:hover{background:#f2f7f3}
.btn{background:var(--green-dark);color:#fff;border:0;border-radius:30px;padding:13px 20px;font-size:12px;font-weight:700;letter-spacing:.05em;display:inline-block}
.hero{height:500px;position:relative;overflow:hidden}.hero img{width:100%;height:100%;object-fit:cover}.shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(247,248,243,.94),rgba(247,248,243,.25) 65%,transparent)}.hero-copy{position:absolute;left:7vw;top:50%;transform:translateY(-50%);max-width:620px}.eyebrow{font-size:11px;letter-spacing:.18em;font-weight:800;color:var(--blue-dark)}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.05}h1{font-size:clamp(50px,7vw,84px);margin:15px 0}h2{font-size:clamp(42px,5vw,68px);margin:10px 0}em{color:var(--green-dark)}
.intro{text-align:center;max-width:820px;padding:90px 25px 70px;margin:auto}.intro p:last-child,.page-copy p{color:#607378;line-height:1.7;font-size:18px}.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:#fff}.tile{height:330px;position:relative;overflow:hidden}.tile img{width:100%;height:100%;object-fit:cover;transition:.4s}.tile:hover img{transform:scale(1.04)}.tile:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(10,30,35,.82))}.tile div{position:absolute;z-index:2;bottom:22px;left:25px;color:#fff}.tile small{font-size:11px;font-weight:800;letter-spacing:.14em}.tile h3{font-size:26px;margin:8px 0}
.feature{background:var(--blue);padding:75px 10vw;display:flex;justify-content:space-between;gap:40px;align-items:center}.page-hero{display:grid;grid-template-columns:1.05fr .95fr;min-height:540px}.page-hero .copy{padding:90px 9vw;align-self:center}.page-hero .photo{min-height:540px}.page-hero .photo img{width:100%;height:100%;object-fit:cover}.page-copy{max-width:900px;margin:0 auto;padding:85px 25px}.page-copy h2{margin-top:45px}.cta{background:var(--blue);padding:70px 10vw;text-align:center}.contact{padding:95px 10vw;text-align:center}.contact p{max-width:600px;margin:20px auto 30px;color:#607378;line-height:1.7}
.review-banner{background:var(--ink);color:#fff;padding:58px 6vw 62px;text-align:center}.review-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;max-width:1180px;margin:30px auto}.review-card{background:#ffffff14;border:1px solid #ffffff24;padding:22px 20px;min-height:145px;text-align:left}.stars{color:#f4d36b;letter-spacing:2px}.review-card p{font-size:14px;line-height:1.55;color:#eef5f4}.review-card small{font-size:10px;letter-spacing:.13em;color:#a9c7cc;font-weight:700}.review-rating{display:inline-flex;gap:10px;background:#fff;color:var(--ink);border-radius:999px;padding:9px 16px;font-size:12px;font-weight:700}.review-rating strong{font-size:17px}
footer{background:var(--ink);color:#fff;padding:38px 5vw;display:flex;justify-content:space-between;align-items:center}footer span{color:var(--blue)}
@media(max-width:900px){nav{display:none}.tiles,.page-hero{grid-template-columns:1fr}.page-hero .photo{min-height:360px}.review-grid{grid-template-columns:1fr 1fr}}@media(max-width:520px){.review-grid{grid-template-columns:1fr}.hero{height:520px}.feature{display:block}.contact{padding:70px 8vw}}

/* Consistent illustrated tour icon system */
.tour-icon-img{width:58px;height:58px;object-fit:contain;display:block}.tour-icon-img.large{width:62px;height:62px}.tour-icon-wrap{height:64px;display:flex;align-items:flex-start}
