
/* Product detail system — 2026 content upgrade */
.product-story{padding:72px 0;background:#faf8f2;color:#102431}
.product-story.muted{background:linear-gradient(135deg,#102431 0%,#1d3b55 100%);color:#fff}
.eyebrow{font-size:.75rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#b8864b;margin-bottom:14px}
.story-lead{display:grid;grid-template-columns:1.35fr .85fr;gap:38px;align-items:start}
.story-lead h2,.detail-block h2,.section-heading h2,.split-lists h2,.know-faq h2,.booking-panel h2{font-size:clamp(1.7rem,3vw,2.55rem);line-height:1.1;margin:0 0 16px}
.story-lead p,.section-heading p{font-size:1.08rem;line-height:1.75;margin:0}
.story-lead aside{background:#fff;border:1px solid #e7dfd2;border-radius:22px;padding:28px;box-shadow:0 18px 45px rgba(16,36,49,.08)}
.story-lead aside h3{margin-top:0}
.detail-block{margin-top:52px}
.highlight-list{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;list-style:none;padding:0;margin:22px 0 0;counter-reset:item}
.highlight-list li{position:relative;min-height:126px;padding:46px 18px 18px;background:#fff;border:1px solid #e7dfd2;border-radius:18px;line-height:1.45;font-weight:700}
.highlight-list li:before{counter-increment:item;content:counter(item,decimal-leading-zero);position:absolute;left:18px;top:16px;color:#b8864b;font-size:.78rem;letter-spacing:.12em}
.section-heading{max-width:760px}
.muted .eyebrow{color:#e9bd7d}
.route-list{margin-top:34px;display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.route-stop{display:flex;gap:18px;padding:22px;border:1px solid rgba(255,255,255,.16);border-radius:18px;background:rgba(255,255,255,.07)}
.route-stop span{color:#e9bd7d;font-weight:800;letter-spacing:.1em}
.route-stop h3{margin:0 0 7px;color:#fff}
.route-stop p{margin:0;color:rgba(255,255,255,.82);line-height:1.6}
.split-lists{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.detail-card{background:#fff;border:1px solid #e5ded3;border-radius:22px;padding:30px}
.detail-card h2{font-size:1.45rem}
.detail-card ul,.plain-list{margin:0;padding-left:1.2rem;display:grid;gap:10px;line-height:1.55}
.include{border-top:4px solid #20835a}
.exclude{border-top:4px solid #b85a50}
.practical-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin:18px 0}
.practical-grid article{padding:26px;border-radius:20px;background:#f1ede4}
.practical-grid h3{margin:0 0 10px}
.practical-grid p,.terms p,.assurance p{margin:0;line-height:1.65}
.terms{margin-top:18px}
.assurance{margin-top:18px;background:#fff8e9;border-color:#e7c991}
.know-faq{display:grid;grid-template-columns:.85fr 1.15fr;gap:28px;margin-top:52px}
.faq-v2{display:grid;gap:10px}
.faq-v2 details{background:#fff;border:1px solid #e5ded3;border-radius:14px;padding:0 18px}
.faq-v2 summary{cursor:pointer;font-weight:750;padding:17px 26px 17px 0;position:relative}
.faq-v2 summary:after{content:'+';position:absolute;right:0;color:#b8864b;font-size:1.25rem}
.faq-v2 details[open] summary:after{content:'−'}
.faq-v2 p{margin:0;padding:0 0 18px;line-height:1.6}
.booking-panel{margin-top:54px;padding:34px;background:#102431;color:#fff;border-radius:24px;display:flex;justify-content:space-between;gap:28px;align-items:center}
.booking-panel h2{color:#fff;margin:8px 0}
.booking-panel p{margin:0;color:rgba(255,255,255,.76);max-width:700px;line-height:1.55}
.booking-panel>div:last-child{display:grid;gap:12px;min-width:190px}
.booking-panel .text-link{color:#fff;text-decoration:none;text-align:center;font-weight:700}
.booking-panel span{color:#e9bd7d;font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;font-weight:800}
.booking-confidence{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:16px;color:rgba(255,255,255,.82);font-size:.79rem;line-height:1.4}
.booking-confidence span{white-space:nowrap}
@media(max-width:900px){.story-lead,.split-lists,.know-faq{grid-template-columns:1fr}
.highlight-list{grid-template-columns:repeat(2,1fr)}
.route-list,.practical-grid{grid-template-columns:1fr}
.booking-panel{align-items:stretch;flex-direction:column}
}
@media(max-width:560px){.product-story{padding:48px 0}
.highlight-list{grid-template-columns:1fr}
.highlight-list li{min-height:auto}
.story-lead aside,.detail-card{padding:22px}
.booking-panel{padding:24px}
.route-stop{padding:18px}
.booking-confidence{display:grid;gap:7px;margin-top:17px}
.booking-confidence span{white-space:normal}
}

@media(max-width:860px){
  .product-mobile-actions .stickybook{gap:8px}
  .product-mobile-actions .stickybook .btn{flex:1;width:auto;padding:12px 10px;text-align:center;font-size:.86rem}
  .product-mobile-actions .stickybook .sticky-whatsapp{background:#198754;color:#fff;border-color:#198754}
  .product-mobile-actions>.whatsapp{display:none}
}

/* Contextual related services */
.related-experiences{padding:66px 0;background:#efeae0;color:#102431}
.related-experiences h2{margin:0 0 24px;font-size:clamp(1.8rem,3vw,2.55rem)}
.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.related-grid a{display:flex;flex-direction:column;min-height:176px;padding:24px;border:1px solid #ddd4c6;border-radius:18px;background:#fff;box-shadow:0 12px 30px rgba(16,36,49,.07);transition:transform .2s ease,box-shadow .2s ease}
.related-grid a:hover{transform:translateY(-4px);box-shadow:0 18px 38px rgba(16,36,49,.13)}
.related-grid span{color:#7c6a50;font-size:.72rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.related-grid strong{margin:18px 0;font-size:1.25rem;line-height:1.25}
.related-grid b{margin-top:auto;color:#94672f;font-size:.85rem}
@media(max-width:760px){.related-experiences{padding:48px 0}.related-grid{grid-template-columns:1fr}.related-grid a{min-height:145px}}

/* Destination photo gallery */
.product-gallery{padding:72px 0;background:#f1ede4;color:#102431}
.product-gallery .section-heading{margin-bottom:28px}
.destination-gallery{display:grid;grid-template-columns:1.15fr .85fr .85fr;gap:14px}
.destination-gallery img{width:100%;height:420px;object-fit:cover;border-radius:20px;box-shadow:0 16px 38px rgba(16,36,49,.12)}
@media(max-width:900px){.destination-gallery{grid-template-columns:1fr 1fr}.destination-gallery img:first-child{grid-column:1/-1;height:420px}.destination-gallery img{height:330px}}
@media(max-width:560px){.product-gallery{padding:48px 0}.destination-gallery{grid-template-columns:1fr}.destination-gallery img:first-child{grid-column:auto}.destination-gallery img,.destination-gallery img:first-child{height:360px}}

/* Flagship journey: premium positioning without a misleading package price */
.flagship-investment{padding:64px 0;background:#b8864b;color:#102431}
.flagship-investment>.wrap{display:grid;grid-template-columns:1.25fr .75fr;gap:34px;align-items:center}
.flagship-investment h2{font-size:clamp(2rem,4vw,3.2rem);line-height:1.06;margin:0 0 18px;max-width:760px}
.flagship-investment p{font-size:1.08rem;line-height:1.7;margin:0;max-width:780px}
.flagship-investment .eyebrow{color:#102431}
.investment-card{display:grid;gap:8px;padding:28px;border:1px solid rgba(16,36,49,.24);border-radius:22px;background:rgba(255,255,255,.7);box-shadow:0 18px 45px rgba(16,36,49,.12)}
.investment-card strong{font-size:1.05rem}
.investment-card span{margin-bottom:12px;line-height:1.5;color:#40505a}
@media(max-width:760px){.flagship-investment>.wrap{grid-template-columns:1fr}.flagship-investment{padding:48px 0}.investment-card{padding:22px}}

/* Real private-yacht gallery */
.yacht-photo-gallery{background:#081c28;color:#fff}
.yacht-photo-gallery h2{color:#fff}
.yacht-photo-gallery .section-heading p{max-width:760px;color:rgba(255,255,255,.76);line-height:1.65}
.yacht-gallery{display:grid;grid-template-columns:1.15fr .85fr .85fr;gap:14px}
.yacht-gallery img{width:100%;height:390px;object-fit:cover;border-radius:18px;box-shadow:0 18px 42px rgba(0,0,0,.28)}
.yacht-gallery img:first-child{grid-row:span 2;height:794px}
.gallery-note{margin:18px 0 0;color:rgba(255,255,255,.66);font-size:.86rem}
@media(max-width:900px){.yacht-gallery{grid-template-columns:1fr 1fr}.yacht-gallery img:first-child{grid-column:1/-1;grid-row:auto;height:480px}.yacht-gallery img{height:340px}}
@media(max-width:560px){.yacht-gallery{grid-template-columns:1fr}.yacht-gallery img,.yacht-gallery img:first-child{grid-column:auto;height:390px}.yacht-gallery img:first-child{object-position:center 58%}}


/* Product-specific Tripadvisor proof — 2026-10-09 */
.product-review-proof {
  padding: 68px 0;
  color: #fff;
  background:
    radial-gradient(circle at 88% 12%, rgba(199,165,104,.16), transparent 30%),
    linear-gradient(135deg, #0b2130 0%, #17384c 100%);
}
.product-review-proof .eyebrow { color: #e3c17f; }
.product-review-proof h2 { max-width: 760px; margin-bottom: 14px; color: #fff; }
.product-review-proof .review-proof-intro { max-width: 740px; color: #cbd7dd; }
.product-review-card {
  max-width: 900px;
  margin-top: 26px;
  padding: 28px 30px;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 20px;
  background: rgba(255,255,255,.08);
  box-shadow: 0 20px 48px rgba(0,0,0,.18);
}
.product-review-card .review-stars { color: #f0c36d; letter-spacing: .12em; }
.product-review-card blockquote {
  margin: 14px 0 18px;
  color: #fff;
  font-size: clamp(1.08rem,2vw,1.32rem);
  line-height: 1.6;
}
.product-review-card footer { color: #b9c8d0; font-size: .86rem; }
.product-review-card a {
  display: inline-block;
  margin-top: 18px;
  color: #efd49f;
  font-weight: 850;
  border-bottom: 1px solid rgba(239,212,159,.55);
}
.product-review-disclosure { margin-top: 14px; color: #9fb0ba; font-size: .73rem; }
@media (max-width: 640px) {
  .product-review-proof { padding: 48px 0; }
  .product-review-card { padding: 23px 21px; }
}

/* Old City decision routes and connected authority content */
.route-options{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:30px}
.route-options article{padding:26px;border:1px solid #e3d9c9;border-radius:20px;background:#fff;box-shadow:0 14px 34px rgba(16,36,49,.07)}
.route-options span{display:block;margin-bottom:13px;color:#9a6b31;font-size:.72rem;font-weight:850;letter-spacing:.12em}
.route-options h3{margin:0 0 10px;font-size:1.25rem}
.route-options p{margin:0;line-height:1.62;color:#41535e}
.decision-note{margin-top:18px;padding:22px 24px;border-left:4px solid #b8864b;border-radius:0 16px 16px 0;background:#eee8dc;line-height:1.65}
.related-reading{padding-top:8px}
.related-reading-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:22px}
.related-reading-grid a{display:flex;flex-direction:column;gap:8px;padding:22px;border:1px solid #e1d8ca;border-radius:17px;background:#fff;transition:transform .2s ease,box-shadow .2s ease}
.related-reading-grid a:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(16,36,49,.1)}
.related-reading-grid strong{font-size:1.08rem;color:#102431}
.related-reading-grid span{color:#79613f;font-size:.9rem;line-height:1.45}
@media(max-width:760px){.route-options,.related-reading-grid{grid-template-columns:1fr}.route-options article{padding:22px}}

/* Flight-safe layover planning */
.layover-windows{background:#f6f2ea}
.layover-equation{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:20px;padding:20px 22px;border-radius:18px;background:#102431;color:#dce5e9;line-height:1.45}
.layover-equation strong{color:#fff}.layover-equation span:before{content:'→';margin-right:10px;color:#d2aa68}.layover-equation b{color:#efc986}
.airport-compare{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:20px}
.airport-compare article{padding:25px;border:1px solid #ded4c5;border-radius:19px;background:#fff}
.airport-compare span{color:#97682f;font-size:.72rem;font-weight:850;letter-spacing:.11em}
.airport-compare h3{margin:12px 0 9px}.airport-compare p{margin:0;color:#41535e;line-height:1.6}
@media(max-width:760px){.airport-compare{grid-template-columns:1fr}.layover-equation{display:grid}.layover-equation span:before{content:'−'}}
