*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:90px}body{font-family:"Inter",Arial,sans-serif;background:#f7f2e8;color:#102326;line-height:1.6}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}.site-header{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 28px;color:#fff;background:linear-gradient(rgba(4,16,18,.44),rgba(4,16,18,.06));backdrop-filter:blur(10px)}.brand{display:inline-flex;align-items:center;gap:10px;font-weight:900;letter-spacing:.02em;text-shadow:0 2px 20px rgba(0,0,0,.45)}.brand-icon{display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(255,255,255,.58);border-radius:50%;font-size:.74rem;font-weight:900;background:rgba(255,255,255,.12)}.main-nav{display:flex;align-items:center;gap:4px}.main-nav a{padding:8px 12px;border-radius:999px;font-size:.92rem;font-weight:800;text-shadow:0 2px 18px rgba(0,0,0,.35)}.main-nav a:hover{background:rgba(255,255,255,.14)}.hero{position:relative;min-height:100svh;overflow:hidden;display:grid;place-items:center;color:#fff}.hero-slide{position:absolute;inset:0;background-position:center;background-size:cover;opacity:0;animation:heroFade 32s infinite;transform:scale(1.04)}.slide-1{background-image:url("images/hero.jpg");opacity:1}.slide-2{background-image:url("images/hero_02.jpg");animation-delay:8s}.slide-3{background-image:url("images/hero_03.jpg");animation-delay:16s}.slide-4{background-image:url("images/hero_04.jpg");animation-delay:24s}.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,16,18,.25),rgba(4,16,18,.42) 45%,rgba(4,16,18,.68)),radial-gradient(circle at center,rgba(4,16,18,.08),rgba(4,16,18,.34))}@keyframes heroFade{0%,100%{opacity:0;transform:scale(1.04)}6%,28%{opacity:1;transform:scale(1.08)}34%{opacity:0;transform:scale(1.1)}}.hero-center{position:relative;z-index:2;width:min(980px,calc(100% - 36px));text-align:center;padding-top:70px}.hero-mark{display:inline-flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-bottom:26px}.hero-mark span{padding:9px 13px;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.1);backdrop-filter:blur(12px);border-radius:999px;font-size:.76rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}h1{font-family:"Cinzel",serif;font-size:clamp(3.6rem,8vw,7.4rem);line-height:.9;letter-spacing:-.04em;text-shadow:0 8px 50px rgba(0,0,0,.5)}.hero-tagline{width:min(760px,100%);margin:24px auto 30px;font-size:clamp(1.08rem,2vw,1.36rem);font-weight:600;color:rgba(255,255,255,.88)}.hero-actions,.inline-actions{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:13px 23px;border:0;border-radius:999px;font:inherit;font-weight:900;cursor:pointer;transition:transform .2s ease,background .2s ease}.btn:hover{transform:translateY(-2px)}.btn-primary{background:#d69b43;color:#071416}.btn-ghost{border:1px solid rgba(255,255,255,.42);background:rgba(255,255,255,.1);color:#fff;backdrop-filter:blur(12px)}.btn-light{background:#fff;color:#102326}.scroll-cue{position:absolute;left:50%;bottom:28px;z-index:3;transform:translateX(-50%);font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.78)}.kicker{color:#a86e28;font-size:.83rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.intro-section,.tours-section,.photo-section,.contact-section,.feedback-section{padding:92px 22px}.intro-inner,.section-head,.pricing-inner,.photo-inner,.form-layout{width:min(1120px,100%);margin:0 auto}.intro-section{background:#fffdf8;text-align:center}.intro-inner h2,.section-head h2,.pricing-inner h2,.photo-copy h2,.form-copy h2{margin:10px 0 16px;font-size:clamp(2.2rem,4.8vw,4.4rem);line-height:.96;letter-spacing:-.06em}.intro-inner p:last-child{width:min(760px,100%);margin:0 auto;color:rgba(16,35,38,.7);font-size:1.08rem}.tours-section{background:#f7f2e8}.section-head{text-align:center;margin-bottom:36px}.tour-grid{width:min(1120px,100%);margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.tour-card{overflow:hidden;border-radius:30px;background:#fff;box-shadow:0 22px 70px rgba(16,35,38,.12)}.tour-card img{height:230px;width:100%;object-fit:cover}.tour-card div{padding:22px}.tour-type{margin-bottom:8px;color:#a86e28;font-size:.76rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.tour-card h3{margin-bottom:10px;font-size:1.18rem;line-height:1.14;letter-spacing:-.035em}.tour-card p:last-child{color:rgba(16,35,38,.68);font-size:.96rem}.pricing-section{background:#102326;color:#fff}.pricing-inner{display:grid;grid-template-columns:.9fr 1.1fr;gap:38px;align-items:center}.pricing-inner p{color:rgba(255,255,255,.72)}.price-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.price-cards article{padding:28px;border:1px solid rgba(255,255,255,.14);border-radius:30px;background:rgba(255,255,255,.06)}.price-cards span{display:block;margin-bottom:8px;color:#e3c488;font-weight:900;text-transform:uppercase;letter-spacing:.12em;font-size:.78rem}.price-cards strong{display:block;margin-bottom:8px;font-size:clamp(2rem,4vw,3.4rem);line-height:1;letter-spacing:-.055em}.photo-section{background:#fffdf8}.photo-inner{display:grid;grid-template-columns:.95fr 1.05fr;gap:40px;align-items:center}.photo-image{min-height:470px;border-radius:34px;background:linear-gradient(transparent,rgba(4,16,18,.2)),url("images/hero_05.jpg") center/cover no-repeat;box-shadow:0 28px 90px rgba(16,35,38,.16)}.photo-copy p{margin-bottom:18px;color:rgba(16,35,38,.72)}.photo-copy .inline-actions{justify-content:flex-start;margin-top:22px}.contact-section{background:#e9f0ec}.feedback-section{background:#fffdf8}.form-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:42px;align-items:start}.form-copy p{color:rgba(16,35,38,.72)}.direct-email{margin-top:20px;font-weight:800}.direct-email a{color:#946224}.form-card{display:grid;gap:16px;padding:26px;border-radius:32px;background:#fff;box-shadow:0 22px 70px rgba(16,35,38,.12)}.dark-form{background:#102326;color:#fff}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.form-card label{display:grid;gap:8px}.form-card span{font-size:.9rem;font-weight:900;color:rgba(16,35,38,.78)}.dark-form span{color:rgba(255,255,255,.82)}.form-card input,.form-card textarea,.form-card select{width:100%;padding:14px 15px;border:1px solid rgba(16,35,38,.12);border-radius:16px;background:#f8f5ed;color:#102326;font:inherit;outline:0}.dark-form input,.dark-form textarea,.dark-form select{border-color:rgba(255,255,255,.16);background:rgba(255,255,255,.08);color:#fff}.form-card textarea{resize:vertical}.form-card input:focus,.form-card textarea:focus,.form-card select:focus{border-color:#d69b43;box-shadow:0 0 0 4px rgba(214,155,67,.14)}.form-submit{width:fit-content}.checkbox-label{display:grid!important;grid-template-columns:auto 1fr;gap:10px!important;align-items:start}.checkbox-label input{width:18px;height:18px;margin-top:3px}.hp-field{position:absolute;left:-9999px;opacity:0;pointer-events:none}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:34px 24px;background:#071416;color:rgba(255,255,255,.72)}.site-footer strong{display:block;color:#fff}.footer-links{display:flex;flex-wrap:wrap;gap:12px 20px;justify-content:flex-end}.footer-links a{color:#e3c488;font-weight:900}.response-page{min-height:100vh;display:grid;place-items:center;padding:28px;background:linear-gradient(rgba(7,20,22,.82),rgba(7,20,22,.9)),url("images/hero.jpg") center/cover no-repeat}.response-card{width:min(680px,100%);padding:36px;border-radius:32px;background:rgba(255,255,255,.94);color:#102326;text-align:center;box-shadow:0 28px 90px rgba(0,0,0,.32)}.response-card h1{font-size:clamp(2rem,6vw,4rem);letter-spacing:-.05em}.response-card p{margin:14px 0 24px;color:rgba(16,35,38,.72)}@media(max-width:1040px){.site-header{flex-direction:column;align-items:center;padding:14px 18px}.main-nav{flex-wrap:wrap;justify-content:center}html{scroll-padding-top:135px}.tour-grid{grid-template-columns:repeat(2,1fr)}.photo-inner,.form-layout{grid-template-columns:1fr}}@media(max-width:680px){.site-header{position:absolute;background:linear-gradient(rgba(4,16,18,.62),rgba(4,16,18,0))}.main-nav a{font-size:.78rem;padding:7px 8px}.brand{font-size:.94rem}.hero-center{padding-top:140px}h1{font-size:clamp(3rem,16vw,5rem)}.hero-actions,.inline-actions{flex-direction:column}.btn,.form-submit{width:100%}.intro-section,.tours-section,.photo-section,.contact-section,.feedback-section{padding:70px 18px}.tour-grid,.form-grid{grid-template-columns:1fr}.photo-image{min-height:320px}.form-card{padding:20px}.site-footer{flex-direction:column;align-items:flex-start}.footer-links{justify-content:flex-start}}


@media (max-width: 1040px) {
  .pricing-inner,
  .details-inner {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 680px) {
  .pricing-section,
  .details-section {
    padding: 70px 18px;
  }

  .price-cards,
  .details-grid {
    grid-template-columns: 1fr;
  }

  .detail-main {
    grid-column: auto;
  }
}


@media (max-width: 1040px) {
  .details-inner {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 680px) {
  .details-section {
    padding: 70px 18px;
  }

  .details-grid {
    grid-template-columns: 1fr;
  }

  .detail-main {
    grid-column: auto;
  }
}


/* ---- Details: pricing + included / not included ---- */
.site-header,
.main-nav,
.main-nav a,
.brand {
  pointer-events: auto;
}

.hero-slide,
.hero-overlay {
  pointer-events: none;
}

.details-section {
  position: relative;
  z-index: 2;
  padding: 92px 22px;
  background: #102326;
  color: #fff;
}

.details-inner {
  width: min(1120px, 100%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 0.82fr 1.18fr;
  gap: 42px;
  align-items: start;
}

.details-copy h2 {
  margin: 10px 0 16px;
  font-size: clamp(2.2rem, 4.8vw, 4.4rem);
  line-height: 0.96;
  letter-spacing: -0.06em;
}

.details-copy p {
  color: rgba(255, 255, 255, 0.72);
  font-size: 1.06rem;
}

.details-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 18px;
}

.detail-card {
  padding: 24px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 28px;
  background: rgba(255, 255, 255, 0.065);
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.16);
}

.detail-main {
  grid-column: 1 / -1;
  background: #fffdf8;
  color: #102326;
}

.detail-card span {
  display: block;
  margin-bottom: 10px;
  color: #e3c488;
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.detail-main span {
  color: #a86e28;
}

.detail-card strong {
  display: block;
  margin-bottom: 10px;
  font-size: clamp(1.9rem, 4vw, 3rem);
  line-height: 1;
  letter-spacing: -0.05em;
}

.detail-card p {
  color: rgba(255, 255, 255, 0.72);
}

.detail-main p {
  color: rgba(16, 35, 38, 0.72);
}

.price-detail strong {
  color: #fff;
}

.detail-card ul {
  padding-left: 20px;
  color: rgba(255, 255, 255, 0.74);
}

.detail-card li {
  margin-bottom: 8px;
}

.optional-detail {
  grid-column: 1 / -1;
}

@media (max-width: 1040px) {
  .details-inner {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 680px) {
  .details-section {
    padding: 70px 18px;
  }

  .details-grid {
    grid-template-columns: 1fr;
  }

  .detail-main,
  .optional-detail {
    grid-column: auto;
  }
}


/* ---- v1.7.3 Details override: pricing renamed to details ---- */
.site-header,
.main-nav,
.main-nav a,
.brand {
  pointer-events: auto;
}

.hero-slide,
.hero-overlay {
  pointer-events: none;
}

.pricing-section.details-section {
  position: relative;
  z-index: 2;
  padding: 92px 22px;
  background: #102326;
  color: #fff;
}

.details-section .details-inner {
  width: min(1120px, 100%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 0.82fr 1.18fr;
  gap: 42px;
  align-items: start;
}

.details-section .details-copy h2 {
  margin: 10px 0 16px;
  font-size: clamp(2.2rem, 4.8vw, 4.4rem);
  line-height: 0.96;
  letter-spacing: -0.06em;
}

.details-section .details-copy p {
  color: rgba(255, 255, 255, 0.72);
  font-size: 1.06rem;
}

.details-section .details-cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.details-section .detail-card {
  padding: 26px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 30px;
  background: rgba(255, 255, 255, 0.065);
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.16);
}

.details-section .detail-card:first-child,
.details-section .optional-card {
  grid-column: 1 / -1;
}

.details-section .detail-card:first-child {
  background: #fffdf8;
  color: #102326;
}

.details-section .detail-card span {
  display: block;
  margin-bottom: 10px;
  color: #e3c488;
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.details-section .detail-card:first-child span {
  color: #a86e28;
}

.details-section .detail-card strong {
  display: block;
  margin-bottom: 10px;
  color: #fff;
  font-size: clamp(1.8rem, 4vw, 3.2rem);
  line-height: 1;
  letter-spacing: -0.055em;
}

.details-section .detail-card:first-child strong {
  color: #102326;
}

.details-section .detail-card p {
  color: rgba(255, 255, 255, 0.72);
  font-size: 0.98rem;
}

.details-section .detail-card:first-child p {
  color: rgba(16, 35, 38, 0.72);
}

.details-section .detail-card ul {
  padding-left: 20px;
  color: rgba(255, 255, 255, 0.74);
}

.details-section .detail-card li {
  margin-bottom: 8px;
}

@media (max-width: 1040px) {
  .details-section .details-inner {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 680px) {
  .pricing-section.details-section {
    padding: 70px 18px;
  }

  .details-section .details-cards {
    grid-template-columns: 1fr;
  }

  .details-section .detail-card:first-child,
  .details-section .optional-card {
    grid-column: auto;
  }
}


/* ---- v1.7.4 final fix: pricing block replaced by Details ---- */
.site-header,
.main-nav,
.main-nav a,
.brand {
  pointer-events: auto;
}

.hero-slide,
.hero-overlay {
  pointer-events: none;
}

.pricing-section.details-section {
  position: relative;
  z-index: 2;
  padding: 92px 22px;
  background: #102326;
  color: #fff;
}

.pricing-section.details-section .details-inner {
  width: min(1120px, 100%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 0.82fr 1.18fr;
  gap: 42px;
  align-items: start;
}

.pricing-section.details-section .details-copy h2 {
  margin: 10px 0 16px;
  font-size: clamp(2.2rem, 4.8vw, 4.4rem);
  line-height: 0.96;
  letter-spacing: -0.06em;
}

.pricing-section.details-section .details-copy p {
  color: rgba(255, 255, 255, 0.72);
  font-size: 1.06rem;
}

.pricing-section.details-section .details-cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.pricing-section.details-section .detail-card {
  padding: 26px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 30px;
  background: rgba(255, 255, 255, 0.065);
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.16);
}

.pricing-section.details-section .detail-card:first-child,
.pricing-section.details-section .optional-card {
  grid-column: 1 / -1;
}

.pricing-section.details-section .detail-card:first-child {
  background: #fffdf8;
  color: #102326;
}

.pricing-section.details-section .detail-card span {
  display: block;
  margin-bottom: 10px;
  color: #e3c488;
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.pricing-section.details-section .detail-card:first-child span {
  color: #a86e28;
}

.pricing-section.details-section .detail-card strong {
  display: block;
  margin-bottom: 10px;
  color: #fff;
  font-size: clamp(1.8rem, 4vw, 3.2rem);
  line-height: 1;
  letter-spacing: -0.055em;
}

.pricing-section.details-section .detail-card:first-child strong {
  color: #102326;
}

.pricing-section.details-section .detail-card p {
  color: rgba(255, 255, 255, 0.72);
  font-size: 0.98rem;
}

.pricing-section.details-section .detail-card:first-child p {
  color: rgba(16, 35, 38, 0.72);
}

.pricing-section.details-section .detail-card ul {
  padding-left: 20px;
  color: rgba(255, 255, 255, 0.74);
}

.pricing-section.details-section .detail-card li {
  margin-bottom: 8px;
}

@media (max-width: 1040px) {
  .pricing-section.details-section .details-inner {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 680px) {
  .pricing-section.details-section {
    padding: 70px 18px;
  }

  .pricing-section.details-section .details-cards {
    grid-template-columns: 1fr;
  }

  .pricing-section.details-section .detail-card:first-child,
  .pricing-section.details-section .optional-card {
    grid-column: auto;
  }
}


/* ---- v1.7.5 calmer Details section ---- */
.pricing-section.details-section {
  padding: 72px 22px;
}

.pricing-section.details-section .details-inner {
  grid-template-columns: 0.9fr 1.1fr;
  gap: 30px;
}

.pricing-section.details-section .details-copy h2 {
  font-size: clamp(1.9rem, 3.8vw, 3.4rem);
  line-height: 1.02;
  letter-spacing: -0.045em;
  max-width: 420px;
}

.pricing-section.details-section .details-copy p,
.pricing-section.details-section .detail-card p,
.pricing-section.details-section .detail-card li {
  font-size: 0.95rem;
}

.pricing-section.details-section .details-cards {
  gap: 14px;
}

.pricing-section.details-section .detail-card {
  padding: 20px;
  border-radius: 24px;
}

.pricing-section.details-section .detail-card strong {
  font-size: clamp(1.45rem, 2.8vw, 2.35rem);
  line-height: 1.02;
  margin-bottom: 8px;
}

.pricing-section.details-section .detail-card span {
  font-size: 0.72rem;
  margin-bottom: 8px;
  letter-spacing: 0.12em;
}

.pricing-section.details-section .detail-card ul {
  padding-left: 18px;
}

.pricing-section.details-section .detail-card li {
  margin-bottom: 6px;
}

@media (max-width: 1040px) {
  .pricing-section.details-section {
    padding: 64px 20px;
  }

  .pricing-section.details-section .details-copy h2 {
    max-width: none;
  }
}

@media (max-width: 680px) {
  .pricing-section.details-section {
    padding: 54px 16px;
  }

  .pricing-section.details-section .details-copy h2 {
    font-size: clamp(1.8rem, 9vw, 2.5rem);
  }

  .pricing-section.details-section .detail-card {
    padding: 18px;
  }

  .pricing-section.details-section .detail-card strong {
    font-size: clamp(1.35rem, 8vw, 2rem);
  }
}


/* ---- v1.7.6 balance pass: stronger tours, calmer details ---- */

/* Tours section gets more presence */
.section-head {
  margin-bottom: 30px;
}

.section-head h2 {
  font-size: clamp(2rem, 4.1vw, 3.5rem);
  line-height: 1.02;
}

.tour-grid {
  width: min(1040px, 100%);
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
}

.tour-card {
  border-radius: 28px;
  box-shadow: 0 20px 60px rgba(16, 35, 38, 0.10);
}

.tour-card img {
  height: 290px;
}

.tour-card div {
  padding: 24px;
}

.tour-card h3 {
  font-size: 1.34rem;
  line-height: 1.12;
  margin-bottom: 10px;
}

.tour-card p:last-child {
  font-size: 1rem;
  color: rgba(16, 35, 38, 0.72);
}

/* Details section becomes calmer and less attention-grabbing */
.pricing-section.details-section {
  padding: 58px 22px;
  background: #edf2ef;
  color: #102326;
}

.pricing-section.details-section .details-inner {
  width: min(1000px, 100%);
  grid-template-columns: 0.95fr 1.05fr;
  gap: 24px;
}

.pricing-section.details-section .details-copy h2 {
  font-size: clamp(1.7rem, 3.2vw, 2.7rem);
  line-height: 1.04;
  letter-spacing: -0.04em;
  max-width: 360px;
}

.pricing-section.details-section .details-copy p {
  color: rgba(16, 35, 38, 0.68);
  font-size: 0.94rem;
}

.pricing-section.details-section .details-cards {
  gap: 12px;
}

.pricing-section.details-section .detail-card {
  padding: 18px;
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.86);
  border: 1px solid rgba(16, 35, 38, 0.09);
  box-shadow: 0 10px 28px rgba(16, 35, 38, 0.06);
}

.pricing-section.details-section .detail-card:first-child {
  background: #fffdf8;
}

.pricing-section.details-section .detail-card span {
  color: #a86e28;
  font-size: 0.68rem;
  margin-bottom: 6px;
  letter-spacing: 0.11em;
}

.pricing-section.details-section .detail-card strong {
  color: #16343a;
  font-size: clamp(1.25rem, 2.1vw, 1.9rem);
  line-height: 1.06;
  margin-bottom: 6px;
}

.pricing-section.details-section .detail-card p,
.pricing-section.details-section .detail-card li {
  color: rgba(16, 35, 38, 0.70);
  font-size: 0.9rem;
}

.pricing-section.details-section .detail-card ul {
  padding-left: 18px;
}

.pricing-section.details-section .detail-card li {
  margin-bottom: 5px;
}

.pricing-section.details-section .optional-card {
  grid-column: 1 / -1;
}

@media (max-width: 1040px) {
  .tour-grid {
    width: min(920px, 100%);
  }

  .pricing-section.details-section .details-inner {
    width: min(920px, 100%);
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .pricing-section.details-section .details-copy h2 {
    max-width: none;
  }
}

@media (max-width: 680px) {
  .tour-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .tour-card img {
    height: 230px;
  }

  .tour-card div {
    padding: 20px;
  }

  .tour-card h3 {
    font-size: 1.2rem;
  }

  .pricing-section.details-section {
    padding: 48px 16px;
  }

  .pricing-section.details-section .details-cards {
    grid-template-columns: 1fr;
  }

  .pricing-section.details-section .detail-card:first-child,
  .pricing-section.details-section .optional-card {
    grid-column: auto;
  }

  .pricing-section.details-section .detail-card {
    padding: 16px;
  }

  .pricing-section.details-section .details-copy h2 {
    font-size: clamp(1.6rem, 7vw, 2.2rem);
  }

  .pricing-section.details-section .detail-card strong {
    font-size: clamp(1.2rem, 6vw, 1.7rem);
  }
}


/* ---- v1.7.7 final polish: premium tours + compact details ---- */

/* Reduce overly empty white gaps around intro/tours */
.intro-section {
  padding: 78px 22px 62px;
}

.tours-section {
  padding: 72px 22px 86px;
}

.section-head {
  margin-bottom: 34px;
}

.section-head h2 {
  max-width: 820px;
  margin-left: auto;
  margin-right: auto;
  font-size: clamp(2rem, 3.7vw, 3.25rem);
  line-height: 1.03;
}

/* Tour cards: more premium, visually stronger, less tiny */
.tour-grid {
  width: min(1080px, 100%);
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 26px;
}

.tour-card {
  display: grid;
  grid-template-columns: 0.96fr 1.04fr;
  min-height: 260px;
  border-radius: 30px;
  background: #fffdf8;
  box-shadow: 0 18px 58px rgba(16, 35, 38, 0.11);
}

.tour-card img {
  width: 100%;
  height: 100%;
  min-height: 260px;
  object-fit: cover;
}

.tour-card div {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 26px;
}

.tour-type {
  font-size: 0.72rem;
  margin-bottom: 9px;
}

.tour-card h3 {
  font-size: clamp(1.18rem, 1.9vw, 1.48rem);
  line-height: 1.08;
  margin-bottom: 10px;
}

.tour-card p:last-child {
  font-size: 0.98rem;
  line-height: 1.58;
}

/* Details: compact, informative, less dominant */
.pricing-section.details-section {
  padding: 52px 22px;
  background: #eef3ef;
}

.pricing-section.details-section .details-inner {
  width: min(1040px, 100%);
  grid-template-columns: 0.86fr 1.14fr;
  gap: 26px;
}

.pricing-section.details-section .details-copy h2 {
  max-width: 330px;
  font-size: clamp(1.55rem, 2.65vw, 2.35rem);
  line-height: 1.06;
}

.pricing-section.details-section .details-copy p {
  max-width: 390px;
  font-size: 0.9rem;
  line-height: 1.6;
}

.pricing-section.details-section .details-cards {
  gap: 10px;
}

.pricing-section.details-section .detail-card {
  padding: 16px 17px;
  border-radius: 20px;
}

.pricing-section.details-section .detail-card:first-child,
.pricing-section.details-section .optional-card {
  grid-column: auto;
}

.pricing-section.details-section .details-cards {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.pricing-section.details-section .detail-card:first-child {
  grid-column: 1 / 2;
}

.pricing-section.details-section .optional-card {
  grid-column: 1 / -1;
}

.pricing-section.details-section .detail-card span {
  font-size: 0.64rem;
  margin-bottom: 5px;
}

.pricing-section.details-section .detail-card strong {
  font-size: clamp(1.08rem, 1.65vw, 1.42rem);
  line-height: 1.08;
  margin-bottom: 5px;
}

.pricing-section.details-section .detail-card p,
.pricing-section.details-section .detail-card li {
  font-size: 0.84rem;
  line-height: 1.45;
}

.pricing-section.details-section .detail-card ul {
  padding-left: 16px;
}

.pricing-section.details-section .detail-card li {
  margin-bottom: 4px;
}

/* Make photo section follow details more elegantly */
.photo-section {
  padding-top: 82px;
}

@media (max-width: 1180px) {
  .tour-card {
    grid-template-columns: 1fr;
  }

  .tour-card img {
    height: 250px;
    min-height: 250px;
  }

  .pricing-section.details-section .details-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .pricing-section.details-section .detail-card:first-child,
  .pricing-section.details-section .optional-card {
    grid-column: 1 / -1;
  }
}

@media (max-width: 1040px) {
  .pricing-section.details-section .details-inner {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .pricing-section.details-section .details-copy h2,
  .pricing-section.details-section .details-copy p {
    max-width: none;
  }
}

@media (max-width: 680px) {
  .intro-section {
    padding: 62px 18px 48px;
  }

  .tours-section {
    padding: 58px 18px 66px;
  }

  .section-head h2 {
    font-size: clamp(1.75rem, 8vw, 2.55rem);
  }

  .tour-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .tour-card {
    min-height: 0;
    border-radius: 24px;
  }

  .tour-card img {
    height: 220px;
    min-height: 220px;
  }

  .tour-card div {
    padding: 20px;
  }

  .pricing-section.details-section {
    padding: 44px 16px;
  }

  .pricing-section.details-section .details-cards {
    grid-template-columns: 1fr;
  }

  .pricing-section.details-section .detail-card:first-child,
  .pricing-section.details-section .optional-card {
    grid-column: auto;
  }

  .pricing-section.details-section .details-copy h2 {
    font-size: clamp(1.55rem, 7vw, 2.15rem);
  }
}


/* ---- v1.7.8 tour card update: North Mull route + Iona Abbey image ---- */
.tour-grid {
  width: min(1080px, 100%);
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}

.tour-card-wide {
  grid-column: 1 / -1;
}

.tour-card-wide img {
  object-position: center;
}

@media (min-width: 1181px) {
  .tour-card-wide {
    display: grid;
    grid-template-columns: 0.46fr 0.54fr;
  }

  .tour-card-wide img {
    height: 260px;
    min-height: 260px;
  }
}

@media (max-width: 680px) {
  .tour-card-wide {
    grid-column: auto;
  }
}
