/* =========================================================
   JUSTIN TRANS RENTAL
   PAGE: PAKET WISATA KELUARGA LOMBOK — SUPPORTING COMMERCIAL PAGE
   Namespace: .jtr-family-page
   Mobile-first
========================================================= */

.jtr-family-page{
  --jtrf-primary:#079eae;
  --jtrf-primary-dark:#087f91;
  --jtrf-primary-soft:#eaf8fa;
  --jtrf-navy:#16232d;
  --jtrf-text:#34424b;
  --jtrf-muted:#687780;
  --jtrf-white:#ffffff;
  --jtrf-border:#e3ecef;
  --jtrf-soft:#f7fafb;
  --jtrf-soft-2:#f1f7f8;
  --jtrf-green:#168a67;
  --jtrf-green-dark:#107354;
  --jtrf-orange:#f08b32;
  --jtrf-shadow:0 12px 35px rgba(16,45,56,.08);
  --jtrf-shadow-lg:0 22px 60px rgba(16,45,56,.12);
  --jtrf-radius:18px;
  --jtrf-radius-lg:26px;
  --jtrf-max:1180px;
  color:var(--jtrf-text);
  font-size:16px;
  line-height:1.68;
}
.jtr-family-page *,
.jtr-family-page *::before,
.jtr-family-page *::after{box-sizing:border-box}
.jtr-family-page a{text-decoration:none}
.jtr-family-page img{max-width:100%;height:auto;display:block}
.jtr-family-page .jtrf-container{width:min(calc(100% - 30px),var(--jtrf-max));margin-inline:auto}
.jtr-family-page .jtrf-section{padding:58px 0}
.jtr-family-page .jtrf-soft{background:var(--jtrf-soft)}
.jtr-family-page .jtrf-soft-2{background:var(--jtrf-soft-2)}
.jtr-family-page .jtrf-teal{background:var(--jtrf-primary-soft)}
.jtr-family-page .jtrf-center{text-align:center}
.jtr-family-page .jtrf-eyebrow{display:inline-flex;align-items:center;gap:8px;margin:0 0 10px;color:var(--jtrf-primary-dark);font-size:12px;line-height:1.3;font-weight:850;letter-spacing:.075em;text-transform:uppercase}
.jtr-family-page .jtrf-eyebrow::before{content:"";width:24px;height:3px;border-radius:999px;background:var(--jtrf-primary)}
.jtr-family-page .jtrf-center .jtrf-eyebrow::before{display:none}
.jtr-family-page .jtrf-title{margin:0;color:var(--jtrf-navy);font-size:clamp(28px,8vw,42px);line-height:1.13;letter-spacing:-.035em}
.jtr-family-page .jtrf-lead{max-width:820px;margin:14px 0 0;color:var(--jtrf-muted);font-size:17px}
.jtr-family-page .jtrf-center .jtrf-lead{margin-left:auto;margin-right:auto}
.jtr-family-page .jtrf-link{color:var(--jtrf-primary-dark);font-weight:800}
.jtr-family-page .jtrf-note{margin:14px 0 0;color:var(--jtrf-muted);font-size:13px;line-height:1.55}

/* Buttons */
.jtr-family-page .jtrf-btn{
  min-height:54px;
  padding:0 20px;
  border:0;
  border-radius:13px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  color:var(--jtrf-navy);
  background:#fff;
  font-size:16px;
  line-height:1.15;
  font-weight:850;
  box-shadow:none;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease;
}
.jtr-family-page .jtrf-btn:hover{transform:translateY(-2px)}
.jtr-family-page .jtrf-btn-wa{color:#fff;background:var(--jtrf-green);box-shadow:0 10px 25px rgba(22,138,103,.20)}
.jtr-family-page .jtrf-btn-wa:hover{background:var(--jtrf-green-dark)}
.jtr-family-page .jtrf-btn-light{border:1px solid var(--jtrf-border);background:#fff}
.jtr-family-page .jtrf-btn-primary{color:#fff;background:var(--jtrf-primary);box-shadow:0 10px 25px rgba(7,158,174,.20)}
.jtr-family-page .jtrf-btn-outline{border:1px solid rgba(7,158,174,.38);color:var(--jtrf-primary-dark);background:transparent}
.jtr-family-page .jtrf-btn-label,
.jtr-family-page .jtrf-btn-wa-label{position:relative;top:0;display:inline-flex;align-items:center;justify-content:center}


.jtr-family-page .jtrf-actions-center{justify-content:center}
.jtr-family-page .jtrf-actions-gap-lg{margin-top:24px}
.jtr-family-page .jtrf-actions-gap-md{margin-top:22px}

/* Hero */
.jtr-family-page .jtrf-hero{position:relative;overflow:hidden;padding:58px 0 50px;background:radial-gradient(circle at 90% 15%,rgba(7,158,174,.18),transparent 30%),linear-gradient(135deg,#f9fcfd 0%,#edf9fa 58%,#fff 100%)}
.jtr-family-page .jtrf-hero::after{content:"";position:absolute;width:320px;height:320px;border-radius:50%;right:-190px;bottom:-175px;background:rgba(7,158,174,.07)}
.jtr-family-page .jtrf-hero-grid{position:relative;z-index:1;display:grid;gap:30px;align-items:center}
.jtr-family-page .jtrf-badge{display:inline-flex;align-items:center;margin:0 0 15px;padding:7px 12px;border:1px solid rgba(7,158,174,.18);border-radius:999px;background:rgba(255,255,255,.86);color:var(--jtrf-primary-dark);font-size:12px;font-weight:850}
.jtr-family-page .jtrf-hero h1{max-width:760px;margin:0;color:var(--jtrf-navy);font-size:clamp(40px,12vw,64px);line-height:1.02;letter-spacing:-.052em}
.jtr-family-page .jtrf-hero h1 span{display:block;color:var(--jtrf-primary);font-size:.63em;line-height:1.1;margin-top:7px;letter-spacing:-.035em}
.jtr-family-page .jtrf-hero-copy{max-width:760px;margin:19px 0 0;color:var(--jtrf-text);font-size:17px}
.jtr-family-page .jtrf-actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:24px}
.jtr-family-page .jtrf-hero-points{display:flex;flex-wrap:wrap;gap:9px 14px;margin-top:18px}
.jtr-family-page .jtrf-point{display:inline-flex;align-items:center;gap:7px;color:var(--jtrf-text);font-size:13px;font-weight:750}
.jtr-family-page .jtrf-point i{width:20px;height:20px;display:inline-grid;place-items:center;border-radius:50%;background:var(--jtrf-primary-soft);color:var(--jtrf-primary-dark);font-style:normal;font-size:12px;line-height:1}
.jtr-family-page .jtrf-hero-card{padding:22px;border:1px solid rgba(7,158,174,.17);border-radius:var(--jtrf-radius-lg);background:rgba(255,255,255,.96);box-shadow:var(--jtrf-shadow-lg)}
.jtr-family-page .jtrf-hero-card-label{margin:0;color:var(--jtrf-muted);font-size:11px;font-weight:850;letter-spacing:.075em;text-transform:uppercase}
.jtr-family-page .jtrf-hero-card h2{margin:7px 0 0;color:var(--jtrf-navy);font-size:24px;line-height:1.17}
.jtr-family-page .jtrf-use-list{display:grid;gap:9px;margin-top:17px}
.jtr-family-page .jtrf-use{display:flex;gap:10px;align-items:flex-start;padding:11px 12px;border-radius:12px;background:var(--jtrf-soft)}
.jtr-family-page .jtrf-use-num{width:28px;height:28px;flex:0 0 28px;display:grid;place-items:center;border-radius:9px;background:var(--jtrf-primary-soft);color:var(--jtrf-primary-dark);font-size:10px;font-weight:900}
.jtr-family-page .jtrf-use b{display:block;color:var(--jtrf-navy);font-size:13px}
.jtr-family-page .jtrf-use span{display:block;margin-top:2px;color:var(--jtrf-muted);font-size:12px;line-height:1.45}

/* Direct answer */
.jtr-family-page .jtrf-answer{padding:28px 0;border-top:1px solid var(--jtrf-border);border-bottom:1px solid var(--jtrf-border);background:#fff}
.jtr-family-page .jtrf-answer-inner{display:grid;gap:12px}
.jtr-family-page .jtrf-answer h2{margin:0;color:var(--jtrf-navy);font-size:21px;line-height:1.3}
.jtr-family-page .jtrf-answer p{margin:0}

/* Quick duration finder */
.jtr-family-page .jtrf-finder-grid{display:grid;grid-template-columns:1fr;gap:12px;margin-top:30px}
.jtr-family-page .jtrf-finder-card{display:flex;flex-direction:column;min-height:100%;padding:19px;border:1px solid var(--jtrf-border);border-radius:var(--jtrf-radius);background:#fff;box-shadow:0 7px 22px rgba(16,45,56,.045)}
.jtr-family-page .jtrf-finder-card.is-featured{border-color:rgba(7,158,174,.38);box-shadow:0 12px 30px rgba(7,158,174,.10)}
.jtr-family-page .jtrf-finder-duration{display:inline-flex;align-self:flex-start;padding:5px 8px;border-radius:8px;background:var(--jtrf-primary-soft);color:var(--jtrf-primary-dark);font-size:11px;font-weight:900;letter-spacing:.045em;text-transform:uppercase}
.jtr-family-page .jtrf-finder-card h3{margin:11px 0 0;color:var(--jtrf-navy);font-size:19px;line-height:1.2}
.jtr-family-page .jtrf-finder-card p{margin:9px 0 0;color:var(--jtrf-muted);font-size:14px;line-height:1.55}
.jtr-family-page .jtrf-finder-route{margin:12px 0 0;padding-top:11px;border-top:1px solid var(--jtrf-border);color:var(--jtrf-text);font-size:13px}
.jtr-family-page .jtrf-finder-card .jtrf-mini-link{margin-top:auto;padding-top:14px;color:var(--jtrf-primary-dark);font-size:13px;font-weight:850}

/* Decision support */
.jtr-family-page .jtrf-decision-grid{display:grid;grid-template-columns:1fr;gap:13px;margin-top:28px}
.jtr-family-page .jtrf-decision{padding:20px;border:1px solid rgba(7,158,174,.17);border-radius:var(--jtrf-radius);background:#fff}
.jtr-family-page .jtrf-decision-num{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--jtrf-primary);color:#fff;font-size:12px;font-weight:900}
.jtr-family-page .jtrf-decision h3{margin:12px 0 0;color:var(--jtrf-navy);font-size:19px;line-height:1.25}
.jtr-family-page .jtrf-decision p{margin:8px 0 0;color:var(--jtrf-muted);font-size:14px}

/* Main packages */
.jtr-family-page .jtrf-main-packages{display:grid;grid-template-columns:1fr;gap:16px;margin-top:32px}
.jtr-family-page .jtrf-main-package{position:relative;display:flex;flex-direction:column;padding:22px;border:1px solid var(--jtrf-border);border-radius:22px;background:#fff;box-shadow:var(--jtrf-shadow)}
.jtr-family-page .jtrf-main-package.is-popular{border-color:rgba(7,158,174,.42)}
.jtr-family-page .jtrf-popular-label{position:absolute;top:14px;right:14px;padding:5px 8px;border-radius:999px;background:var(--jtrf-primary);color:#fff;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.045em}
.jtr-family-page .jtrf-pack-kicker{color:var(--jtrf-primary-dark);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.jtr-family-page .jtrf-main-package h3{margin:7px 0 0;padding-right:70px;color:var(--jtrf-navy);font-size:24px;line-height:1.17}
.jtr-family-page .jtrf-pack-for{margin:9px 0 0;color:var(--jtrf-muted);font-size:14px}
.jtr-family-page .jtrf-day-list{display:grid;gap:8px;margin-top:16px}
.jtr-family-page .jtrf-day{display:grid;grid-template-columns:52px 1fr;gap:9px;padding:10px;border-radius:11px;background:var(--jtrf-soft)}
.jtr-family-page .jtrf-day b{color:var(--jtrf-primary-dark);font-size:12px}
.jtr-family-page .jtrf-day span{color:var(--jtrf-text);font-size:13px;line-height:1.45}
.jtr-family-page .jtrf-package-status{margin:15px 0 0;padding-top:13px;border-top:1px solid var(--jtrf-border)}
.jtr-family-page .jtrf-package-status strong{display:block;color:var(--jtrf-navy);font-size:13px}
.jtr-family-page .jtrf-package-status span{display:block;margin-top:3px;color:var(--jtrf-muted);font-size:12px;line-height:1.45}
.jtr-family-page .jtrf-package-actions{display:grid;grid-template-columns:1fr;gap:9px;margin-top:auto;padding-top:17px}

/* Route clusters */
.jtr-family-page .jtrf-route-grid{display:grid;grid-template-columns:1fr;gap:13px;margin-top:30px}
.jtr-family-page .jtrf-route-card{padding:19px;border:1px solid var(--jtrf-border);border-radius:var(--jtrf-radius);background:#fff}
.jtr-family-page .jtrf-route-card h3{margin:0;color:var(--jtrf-navy);font-size:20px;line-height:1.23}
.jtr-family-page .jtrf-route-card p{margin:9px 0 0;color:var(--jtrf-muted);font-size:14px}
.jtr-family-page .jtrf-route-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:13px}
.jtr-family-page .jtrf-route-tags span{padding:5px 8px;border-radius:999px;background:var(--jtrf-primary-soft);color:var(--jtrf-primary-dark);font-size:11px;font-weight:750}
.jtr-family-page .jtrf-route-fit{margin-top:13px;padding-top:12px;border-top:1px solid var(--jtrf-border);color:var(--jtrf-text);font-size:12px;line-height:1.5}
.jtr-family-page .jtrf-route-fit strong{color:var(--jtrf-navy)}

/* Travel style */
.jtr-family-page .jtrf-style-grid{display:grid;grid-template-columns:1fr;gap:12px;margin-top:28px}
.jtr-family-page .jtrf-style-card{padding:18px;border:1px solid var(--jtrf-border);border-radius:var(--jtrf-radius);background:#fff}
.jtr-family-page .jtrf-style-card h3{margin:0;color:var(--jtrf-navy);font-size:18px}
.jtr-family-page .jtrf-style-card p{margin:7px 0 0;color:var(--jtrf-muted);font-size:13px}

/* Transport */
.jtr-family-page .jtrf-transport-wrap{display:grid;gap:22px;margin-top:30px}
.jtr-family-page .jtrf-transport-copy{padding:22px;border-radius:var(--jtrf-radius-lg);background:var(--jtrf-navy);color:#fff}
.jtr-family-page .jtrf-transport-copy h3{margin:0;color:#fff;font-size:24px}
.jtr-family-page .jtrf-transport-copy p{margin:10px 0 0;color:rgba(255,255,255,.79);font-size:14px}
.jtr-family-page .jtrf-vehicle-chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:16px}
.jtr-family-page .jtrf-vehicle-chips span{padding:7px 9px;border:1px solid rgba(255,255,255,.17);border-radius:999px;background:rgba(255,255,255,.08);font-size:11px;font-weight:750}
.jtr-family-page .jtrf-capacity-note{padding:20px;border:1px solid var(--jtrf-border);border-radius:var(--jtrf-radius);background:#fff}
.jtr-family-page .jtrf-capacity-note h3{margin:0;color:var(--jtrf-navy);font-size:20px}
.jtr-family-page .jtrf-capacity-note p{margin:9px 0 0;color:var(--jtrf-muted);font-size:14px}
.jtr-family-page .jtrf-guide-alert{margin-top:14px;padding:12px 13px;border-left:4px solid var(--jtrf-orange);border-radius:9px;background:#fff8f1;color:var(--jtrf-text);font-size:13px}

/* Airport */
.jtr-family-page .jtrf-airport-grid{display:grid;gap:16px;margin-top:27px}
.jtr-family-page .jtrf-airport-card{padding:19px;border:1px solid var(--jtrf-border);border-radius:var(--jtrf-radius);background:#fff}
.jtr-family-page .jtrf-airport-card strong{display:block;color:var(--jtrf-navy);font-size:16px}
.jtr-family-page .jtrf-airport-card p{margin:6px 0 0;color:var(--jtrf-muted);font-size:13px}

/* Included */
.jtr-family-page .jtrf-include-grid{display:grid;grid-template-columns:1fr;gap:15px;margin-top:28px}
.jtr-family-page .jtrf-include-box{padding:22px;border:1px solid var(--jtrf-border);border-radius:22px;background:#fff}
.jtr-family-page .jtrf-include-box.is-include{border-top:4px solid var(--jtrf-green)}
.jtr-family-page .jtrf-include-box.is-adjust{border-top:4px solid var(--jtrf-orange)}
.jtr-family-page .jtrf-include-box h3{margin:0;color:var(--jtrf-navy);font-size:21px}
.jtr-family-page .jtrf-check-list{list-style:none;padding:0;margin:15px 0 0;display:grid;gap:9px}
.jtr-family-page .jtrf-check-list li{position:relative;padding-left:27px;color:var(--jtrf-text);font-size:14px}
.jtr-family-page .jtrf-check-list li::before{position:absolute;left:0;top:1px;width:19px;height:19px;display:grid;place-items:center;border-radius:50%;font-size:11px;font-weight:900}
.jtr-family-page .is-include .jtrf-check-list li::before{content:"✓";background:#e8f7f1;color:var(--jtrf-green-dark)}
.jtr-family-page .is-adjust .jtrf-check-list li::before{content:"i";background:#fff2e7;color:#b9651e}

/* Price + custom */
.jtr-family-page .jtrf-price-grid{display:grid;gap:18px;margin-top:28px}
.jtr-family-page .jtrf-price-box{padding:22px;border-radius:22px;background:linear-gradient(135deg,var(--jtrf-navy),#203846);color:#fff}
.jtr-family-page .jtrf-price-box h3{margin:0;color:#fff;font-size:24px}
.jtr-family-page .jtrf-price-box p{margin:10px 0 0;color:rgba(255,255,255,.80);font-size:14px}
.jtr-family-page .jtrf-price-factors{display:flex;flex-wrap:wrap;gap:7px;margin-top:15px}
.jtr-family-page .jtrf-price-factors span{padding:6px 9px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:rgba(255,255,255,.08);font-size:11px}
.jtr-family-page .jtrf-custom-box{padding:22px;border:1px solid var(--jtrf-border);border-radius:22px;background:#fff}
.jtr-family-page .jtrf-custom-box h3{margin:0;color:var(--jtrf-navy);font-size:23px}
.jtr-family-page .jtrf-custom-box p{margin:9px 0 0;color:var(--jtrf-muted);font-size:14px}
.jtr-family-page .jtrf-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:15px}
.jtr-family-page .jtrf-info-item{padding:10px;border-radius:10px;background:var(--jtrf-soft);font-size:12px;line-height:1.4;color:var(--jtrf-text)}
.jtr-family-page .jtrf-custom-actions{display:grid;grid-template-columns:1fr;gap:9px;margin-top:17px}

/* Trust */
.jtr-family-page .jtrf-trust-grid{display:grid;gap:18px;margin-top:30px}
.jtr-family-page .jtrf-profile-card{padding:22px;border:1px solid var(--jtrf-border);border-radius:22px;background:#fff}
.jtr-family-page .jtrf-profile-card h3{margin:0;color:var(--jtrf-navy);font-size:23px}
.jtr-family-page .jtrf-profile-card p{margin:9px 0 0;color:var(--jtrf-muted);font-size:14px}
.jtr-family-page .jtrf-google-card{padding:22px;border-radius:22px;background:var(--jtrf-navy);color:#fff}
.jtr-family-page .jtrf-rating{display:flex;align-items:flex-end;gap:10px}
.jtr-family-page .jtrf-rating strong{font-size:44px;line-height:1;color:#fff;letter-spacing:-.04em}
.jtr-family-page .jtrf-rating span{padding-bottom:4px;color:rgba(255,255,255,.72);font-size:12px}
.jtr-family-page .jtrf-stars{margin-top:6px;color:#ffd36a;font-size:19px;letter-spacing:2px}
.jtr-family-page .jtrf-google-card p{margin:8px 0 0;color:rgba(255,255,255,.78);font-size:13px}
.jtr-family-page .jtrf-review-grid{display:grid;grid-template-columns:1fr;gap:10px;margin-top:16px}
.jtr-family-page .jtrf-review{padding:13px;border-radius:12px;background:rgba(255,255,255,.09)}
.jtr-family-page .jtrf-review blockquote{margin:0;color:#fff;font-size:13px;line-height:1.5}
.jtr-family-page .jtrf-review cite{display:block;margin-top:7px;color:rgba(255,255,255,.65);font-size:11px;font-style:normal}
.jtr-family-page .jtrf-trust-media{display:grid;grid-template-columns:1fr;gap:10px;margin-top:18px}
.jtr-family-page .jtrf-trust-photo{overflow:hidden;border:1px solid var(--jtrf-border);border-radius:15px;background:#fff}
.jtr-family-page .jtrf-trust-photo img{width:100%;aspect-ratio:16/9;object-fit:contain;background:#fff;padding:18px}
.jtr-family-page .jtrf-trust-photo span{display:block;padding:10px 12px;border-top:1px solid var(--jtrf-border);color:var(--jtrf-muted);font-size:11px}

/* Why */
.jtr-family-page .jtrf-why-grid{display:grid;grid-template-columns:1fr;gap:11px;margin-top:28px}
.jtr-family-page .jtrf-why{padding:17px;border:1px solid var(--jtrf-border);border-radius:15px;background:#fff}
.jtr-family-page .jtrf-why strong{display:block;color:var(--jtrf-navy);font-size:15px}
.jtr-family-page .jtrf-why span{display:block;margin-top:4px;color:var(--jtrf-muted);font-size:12px;line-height:1.5}

/* Booking */
.jtr-family-page .jtrf-book-grid{display:grid;grid-template-columns:1fr;gap:11px;margin-top:28px}
.jtr-family-page .jtrf-book{padding:18px;border:1px solid var(--jtrf-border);border-radius:15px;background:#fff}
.jtr-family-page .jtrf-book b{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:var(--jtrf-primary-soft);color:var(--jtrf-primary-dark);font-size:11px}
.jtr-family-page .jtrf-book strong{display:block;margin-top:10px;color:var(--jtrf-navy);font-size:16px}
.jtr-family-page .jtrf-book p{margin:5px 0 0;color:var(--jtrf-muted);font-size:12px}

/* FAQ */
.jtr-family-page .jtrf-faq{display:grid;gap:9px;max-width:900px;margin:28px auto 0}
.jtr-family-page .jtrf-faq details{border:1px solid var(--jtrf-border);border-radius:14px;background:#fff;overflow:hidden}
.jtr-family-page .jtrf-faq summary{cursor:pointer;list-style:none;padding:16px 48px 16px 16px;position:relative;color:var(--jtrf-navy);font-size:14px;font-weight:800;line-height:1.4}
.jtr-family-page .jtrf-faq summary::-webkit-details-marker{display:none}
.jtr-family-page .jtrf-faq summary::after{content:"+";position:absolute;right:16px;top:50%;transform:translateY(-50%);width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:var(--jtrf-primary-soft);color:var(--jtrf-primary-dark);font-size:17px}
.jtr-family-page .jtrf-faq details[open] summary::after{content:"−"}
.jtr-family-page .jtrf-faq-answer{padding:0 16px 16px;color:var(--jtrf-muted);font-size:13px;line-height:1.6}
.jtr-family-page .jtrf-faq-answer p{margin:0}

/* Final CTA */
.jtr-family-page .jtrf-final{padding:0 0 64px}
.jtr-family-page .jtrf-final-box{position:relative;overflow:hidden;padding:28px 22px;border-radius:26px;background:linear-gradient(135deg,var(--jtrf-navy),#234453);color:#fff;box-shadow:var(--jtrf-shadow-lg)}
.jtr-family-page .jtrf-final-box::after{content:"";position:absolute;width:220px;height:220px;border-radius:50%;right:-120px;bottom:-120px;background:rgba(7,158,174,.22)}
.jtr-family-page .jtrf-final-content{position:relative;z-index:1}
.jtr-family-page .jtrf-final h2{margin:0;color:#fff;font-size:30px;line-height:1.13;letter-spacing:-.03em}
.jtr-family-page .jtrf-final p{max-width:760px;margin:11px 0 0;color:rgba(255,255,255,.78);font-size:14px}
.jtr-family-page .jtrf-final .jtrf-btn{width:100%;margin-top:19px}

/* Accessibility */
.jtr-family-page a:focus-visible,
.jtr-family-page summary:focus-visible{outline:3px solid rgba(7,158,174,.35);outline-offset:3px}

/* Tablet */
@media (min-width:680px){
  .jtr-family-page{font-size:17px}
  .jtr-family-page .jtrf-container{width:min(calc(100% - 44px),var(--jtrf-max))}
  .jtr-family-page .jtrf-section{padding:68px 0}
  .jtr-family-page .jtrf-actions{display:flex;flex-wrap:wrap}
  .jtr-family-page .jtrf-actions .jtrf-btn{min-width:190px}
  .jtr-family-page .jtrf-finder-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .jtr-family-page .jtrf-decision-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .jtr-family-page .jtrf-main-packages{grid-template-columns:repeat(2,minmax(0,1fr))}
  .jtr-family-page .jtrf-route-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .jtr-family-page .jtrf-style-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .jtr-family-page .jtrf-airport-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .jtr-family-page .jtrf-include-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .jtr-family-page .jtrf-trust-media{grid-template-columns:repeat(3,minmax(0,1fr))}
  .jtr-family-page .jtrf-why-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .jtr-family-page .jtrf-book-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .jtr-family-page .jtrf-package-actions{grid-template-columns:1fr 1fr}
  .jtr-family-page .jtrf-custom-actions{display:flex;flex-wrap:wrap}
}

/* Desktop */
@media (min-width:960px){
  .jtr-family-page .jtrf-section{padding:82px 0}
  .jtr-family-page .jtrf-hero{padding:76px 0 68px}
  .jtr-family-page .jtrf-hero-grid{grid-template-columns:minmax(0,1.12fr) minmax(340px,.88fr);gap:52px}
  .jtr-family-page .jtrf-answer-inner{grid-template-columns:260px 1fr;gap:32px;align-items:start}
  .jtr-family-page .jtrf-finder-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .jtr-family-page .jtrf-main-packages{grid-template-columns:repeat(3,minmax(0,1fr))}
  .jtr-family-page .jtrf-route-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .jtr-family-page .jtrf-style-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .jtr-family-page .jtrf-transport-wrap{grid-template-columns:1.2fr .8fr;align-items:stretch}
  .jtr-family-page .jtrf-airport-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .jtr-family-page .jtrf-price-grid{grid-template-columns:.92fr 1.08fr;align-items:stretch}
  .jtr-family-page .jtrf-trust-grid{grid-template-columns:.82fr 1.18fr;align-items:stretch}
  .jtr-family-page .jtrf-why-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .jtr-family-page .jtrf-book-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .jtr-family-page .jtrf-final-box{padding:36px 38px}
  .jtr-family-page .jtrf-final-content{display:grid;grid-template-columns:1fr auto;gap:32px;align-items:center}
  .jtr-family-page .jtrf-final .jtrf-btn{width:auto;min-width:250px;margin-top:0}
}

/* Wide desktop */
@media (min-width:1180px){
  .jtr-family-page .jtrf-finder-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
}

/* Small mobile */
@media (max-width:420px){
  .jtr-family-page .jtrf-container{width:min(calc(100% - 24px),var(--jtrf-max))}
  .jtr-family-page .jtrf-hero h1{font-size:39px}
  .jtr-family-page .jtrf-btn{min-height:52px;padding:0 15px;font-size:15px}
  .jtr-family-page .jtrf-info-grid{grid-template-columns:1fr}
}


/* =========================================================
   Child-page refinements: Paket Wisata Lombok 1 Hari
========================================================= */
.jtr-family-page .jtrf-route-card.is-recommended{
  border-color:rgba(7,158,174,.42);
  box-shadow:0 12px 30px rgba(7,158,174,.10);
}
.jtr-family-page .jtrf-route-card .jtrf-route-badge{
  display:inline-flex;
  margin-bottom:10px;
  padding:5px 8px;
  border-radius:999px;
  background:var(--jtrf-primary-soft);
  color:var(--jtrf-primary-dark);
  font-size:10px;
  line-height:1.2;
  font-weight:900;
  letter-spacing:.045em;
  text-transform:uppercase;
}
.jtr-family-page .jtrf-route-card .jtrf-route-badge.is-sea{
  background:#eef7fb;
  color:#176c8f;
}
.jtr-family-page .jtrf-package-summary{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  margin-top:28px;
}
.jtr-family-page .jtrf-summary-card{
  padding:18px;
  border:1px solid var(--jtrf-border);
  border-radius:16px;
  background:#fff;
}
.jtr-family-page .jtrf-summary-card strong{
  display:block;
  color:var(--jtrf-navy);
  font-size:15px;
}
.jtr-family-page .jtrf-summary-card span{
  display:block;
  margin-top:5px;
  color:var(--jtrf-muted);
  font-size:12px;
  line-height:1.5;
}
.jtr-family-page .jtrf-route-warning{
  margin-top:18px;
  padding:14px 15px;
  border-left:4px solid var(--jtrf-orange);
  border-radius:10px;
  background:#fff8f1;
  color:var(--jtrf-text);
  font-size:13px;
  line-height:1.55;
}
.jtr-family-page .jtrf-related-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  margin-top:28px;
}
.jtr-family-page .jtrf-related-card{
  padding:18px;
  border:1px solid var(--jtrf-border);
  border-radius:16px;
  background:#fff;
}
.jtr-family-page .jtrf-related-card h3{
  margin:0;
  color:var(--jtrf-navy);
  font-size:18px;
}
.jtr-family-page .jtrf-related-card p{
  margin:7px 0 0;
  color:var(--jtrf-muted);
  font-size:13px;
}
.jtr-family-page .jtrf-related-card a{
  display:inline-flex;
  margin-top:10px;
  color:var(--jtrf-primary-dark);
  font-size:13px;
  font-weight:850;
}
@media (min-width:680px){
  .jtr-family-page .jtrf-package-summary{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .jtr-family-page .jtrf-related-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (min-width:960px){
  .jtr-family-page .jtrf-related-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
}


/* =========================================================
   Child-page refinements: Paket Wisata Lombok 2 Hari 1 Malam
========================================================= */
.jtr-family-page .jtrf-day-plan{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  margin-top:28px;
}
.jtr-family-page .jtrf-day-card{
  padding:19px;
  border:1px solid var(--jtrf-border);
  border-radius:17px;
  background:#fff;
}
.jtr-family-page .jtrf-day-label{
  display:inline-flex;
  padding:5px 8px;
  border-radius:999px;
  background:var(--jtrf-primary-soft);
  color:var(--jtrf-primary-dark);
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.045em;
}
.jtr-family-page .jtrf-day-card h3{
  margin:10px 0 0;
  color:var(--jtrf-navy);
  font-size:20px;
  line-height:1.22;
}
.jtr-family-page .jtrf-day-card p{
  margin:8px 0 0;
  color:var(--jtrf-muted);
  font-size:13px;
}
.jtr-family-page .jtrf-combo-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:13px;
  margin-top:28px;
}
.jtr-family-page .jtrf-combo{
  padding:20px;
  border:1px solid var(--jtrf-border);
  border-radius:18px;
  background:#fff;
}
.jtr-family-page .jtrf-combo.is-recommended{
  border-color:rgba(7,158,174,.42);
  box-shadow:0 12px 30px rgba(7,158,174,.10);
}
.jtr-family-page .jtrf-combo-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
}
.jtr-family-page .jtrf-combo h3{
  margin:0;
  color:var(--jtrf-navy);
  font-size:21px;
  line-height:1.2;
}
.jtr-family-page .jtrf-combo-badge{
  flex:0 0 auto;
  padding:5px 8px;
  border-radius:999px;
  background:var(--jtrf-primary-soft);
  color:var(--jtrf-primary-dark);
  font-size:10px;
  line-height:1.2;
  font-weight:900;
  text-transform:uppercase;
}
.jtr-family-page .jtrf-combo p{
  margin:9px 0 0;
  color:var(--jtrf-muted);
  font-size:13px;
}
.jtr-family-page .jtrf-combo-list{
  display:grid;
  gap:7px;
  margin-top:13px;
}
.jtr-family-page .jtrf-combo-list div{
  padding:9px 10px;
  border-radius:10px;
  background:var(--jtrf-soft);
  color:var(--jtrf-text);
  font-size:12px;
}
.jtr-family-page .jtrf-combo-list strong{
  color:var(--jtrf-primary-dark);
}
.jtr-family-page .jtrf-hotel-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  margin-top:28px;
}
.jtr-family-page .jtrf-hotel-card{
  padding:18px;
  border:1px solid var(--jtrf-border);
  border-radius:16px;
  background:#fff;
}
.jtr-family-page .jtrf-hotel-card strong{
  display:block;
  color:var(--jtrf-navy);
  font-size:16px;
}
.jtr-family-page .jtrf-hotel-card p{
  margin:6px 0 0;
  color:var(--jtrf-muted);
  font-size:12px;
}
@media (min-width:680px){
  .jtr-family-page .jtrf-day-plan{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .jtr-family-page .jtrf-combo-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .jtr-family-page .jtrf-hotel-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}


/* =========================================================
   Child-page refinements: Paket Wisata Lombok 3 Hari 2 Malam
========================================================= */
.jtr-family-page .jtrf-trip-flow{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  margin-top:28px;
}
.jtr-family-page .jtrf-trip-day{
  position:relative;
  padding:19px;
  border:1px solid var(--jtrf-border);
  border-radius:17px;
  background:#fff;
}
.jtr-family-page .jtrf-trip-day.is-main{
  border-color:rgba(7,158,174,.42);
  box-shadow:0 12px 30px rgba(7,158,174,.10);
}
.jtr-family-page .jtrf-trip-num{
  display:inline-grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:10px;
  background:var(--jtrf-primary);
  color:#fff;
  font-size:11px;
  font-weight:900;
}
.jtr-family-page .jtrf-trip-day h3{
  margin:11px 0 0;
  color:var(--jtrf-navy);
  font-size:20px;
  line-height:1.22;
}
.jtr-family-page .jtrf-trip-day p{
  margin:8px 0 0;
  color:var(--jtrf-muted);
  font-size:13px;
}
.jtr-family-page .jtrf-trip-focus{
  margin-top:12px;
  padding-top:11px;
  border-top:1px solid var(--jtrf-border);
  color:var(--jtrf-text);
  font-size:12px;
}
.jtr-family-page .jtrf-itinerary-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:13px;
  margin-top:28px;
}
.jtr-family-page .jtrf-itinerary{
  padding:20px;
  border:1px solid var(--jtrf-border);
  border-radius:18px;
  background:#fff;
}
.jtr-family-page .jtrf-itinerary.is-recommended{
  border-color:rgba(7,158,174,.42);
  box-shadow:0 12px 30px rgba(7,158,174,.10);
}
.jtr-family-page .jtrf-itinerary h3{
  margin:0;
  color:var(--jtrf-navy);
  font-size:21px;
  line-height:1.2;
}
.jtr-family-page .jtrf-itinerary-sub{
  margin:7px 0 0;
  color:var(--jtrf-muted);
  font-size:12px;
}
.jtr-family-page .jtrf-itinerary-days{
  display:grid;
  gap:7px;
  margin-top:13px;
}
.jtr-family-page .jtrf-itinerary-days div{
  padding:9px 10px;
  border-radius:10px;
  background:var(--jtrf-soft);
  color:var(--jtrf-text);
  font-size:12px;
  line-height:1.45;
}
.jtr-family-page .jtrf-itinerary-days strong{
  color:var(--jtrf-primary-dark);
}
.jtr-family-page .jtrf-itinerary-note{
  margin-top:12px;
  padding-top:11px;
  border-top:1px solid var(--jtrf-border);
  color:var(--jtrf-muted);
  font-size:11px;
  line-height:1.5;
}
.jtr-family-page .jtrf-hotel-flow{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  margin-top:28px;
}
.jtr-family-page .jtrf-hotel-step{
  padding:18px;
  border:1px solid var(--jtrf-border);
  border-radius:16px;
  background:#fff;
}
.jtr-family-page .jtrf-hotel-step strong{
  display:block;
  color:var(--jtrf-navy);
  font-size:16px;
}
.jtr-family-page .jtrf-hotel-step p{
  margin:6px 0 0;
  color:var(--jtrf-muted);
  font-size:12px;
}
@media (min-width:680px){
  .jtr-family-page .jtrf-trip-flow{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .jtr-family-page .jtrf-itinerary-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .jtr-family-page .jtrf-hotel-flow{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}


/* =========================================================
   Child-page refinements: Paket Wisata Lombok 4 Hari 3 Malam
========================================================= */
.jtr-family-page .jtrf-trip-flow{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  margin-top:28px;
}
.jtr-family-page .jtrf-trip-day{
  position:relative;
  padding:19px;
  border:1px solid var(--jtrf-border);
  border-radius:17px;
  background:#fff;
}
.jtr-family-page .jtrf-trip-day.is-main{
  border-color:rgba(7,158,174,.42);
  box-shadow:0 12px 30px rgba(7,158,174,.10);
}
.jtr-family-page .jtrf-trip-num{
  display:inline-grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:10px;
  background:var(--jtrf-primary);
  color:#fff;
  font-size:11px;
  font-weight:900;
}
.jtr-family-page .jtrf-trip-day h3{
  margin:11px 0 0;
  color:var(--jtrf-navy);
  font-size:20px;
  line-height:1.22;
}
.jtr-family-page .jtrf-trip-day p{
  margin:8px 0 0;
  color:var(--jtrf-muted);
  font-size:13px;
}
.jtr-family-page .jtrf-trip-focus{
  margin-top:12px;
  padding-top:11px;
  border-top:1px solid var(--jtrf-border);
  color:var(--jtrf-text);
  font-size:12px;
}
.jtr-family-page .jtrf-itinerary-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:13px;
  margin-top:28px;
}
.jtr-family-page .jtrf-itinerary{
  padding:20px;
  border:1px solid var(--jtrf-border);
  border-radius:18px;
  background:#fff;
}
.jtr-family-page .jtrf-itinerary.is-recommended{
  border-color:rgba(7,158,174,.42);
  box-shadow:0 12px 30px rgba(7,158,174,.10);
}
.jtr-family-page .jtrf-itinerary h3{
  margin:0;
  color:var(--jtrf-navy);
  font-size:21px;
  line-height:1.2;
}
.jtr-family-page .jtrf-itinerary-sub{
  margin:7px 0 0;
  color:var(--jtrf-muted);
  font-size:12px;
}
.jtr-family-page .jtrf-itinerary-days{
  display:grid;
  gap:7px;
  margin-top:13px;
}
.jtr-family-page .jtrf-itinerary-days div{
  padding:9px 10px;
  border-radius:10px;
  background:var(--jtrf-soft);
  color:var(--jtrf-text);
  font-size:12px;
  line-height:1.45;
}
.jtr-family-page .jtrf-itinerary-days strong{
  color:var(--jtrf-primary-dark);
}
.jtr-family-page .jtrf-itinerary-note{
  margin-top:12px;
  padding-top:11px;
  border-top:1px solid var(--jtrf-border);
  color:var(--jtrf-muted);
  font-size:11px;
  line-height:1.5;
}
.jtr-family-page .jtrf-hotel-flow{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  margin-top:28px;
}
.jtr-family-page .jtrf-hotel-step{
  padding:18px;
  border:1px solid var(--jtrf-border);
  border-radius:16px;
  background:#fff;
}
.jtr-family-page .jtrf-hotel-step strong{
  display:block;
  color:var(--jtrf-navy);
  font-size:16px;
}
.jtr-family-page .jtrf-hotel-step p{
  margin:6px 0 0;
  color:var(--jtrf-muted);
  font-size:12px;
}
@media (min-width:680px){
  .jtr-family-page .jtrf-trip-flow{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .jtr-family-page .jtrf-itinerary-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .jtr-family-page .jtrf-hotel-flow{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
@media (min-width:960px){
  .jtr-family-page .jtrf-trip-flow{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
}


/* =========================================================
   Child-page refinements: Paket Wisata Lombok 5 Hari 4 Malam
========================================================= */
.jtr-family-page .jtrf-trip-flow{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  margin-top:28px;
}
.jtr-family-page .jtrf-trip-day{
  position:relative;
  padding:19px;
  border:1px solid var(--jtrf-border);
  border-radius:17px;
  background:#fff;
}
.jtr-family-page .jtrf-trip-day.is-main{
  border-color:rgba(7,158,174,.42);
  box-shadow:0 12px 30px rgba(7,158,174,.10);
}
.jtr-family-page .jtrf-trip-num{
  display:inline-grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:10px;
  background:var(--jtrf-primary);
  color:#fff;
  font-size:11px;
  font-weight:900;
}
.jtr-family-page .jtrf-trip-day h3{
  margin:11px 0 0;
  color:var(--jtrf-navy);
  font-size:20px;
  line-height:1.22;
}
.jtr-family-page .jtrf-trip-day p{
  margin:8px 0 0;
  color:var(--jtrf-muted);
  font-size:13px;
}
.jtr-family-page .jtrf-trip-focus{
  margin-top:12px;
  padding-top:11px;
  border-top:1px solid var(--jtrf-border);
  color:var(--jtrf-text);
  font-size:12px;
}
.jtr-family-page .jtrf-itinerary-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:13px;
  margin-top:28px;
}
.jtr-family-page .jtrf-itinerary{
  padding:20px;
  border:1px solid var(--jtrf-border);
  border-radius:18px;
  background:#fff;
}
.jtr-family-page .jtrf-itinerary.is-recommended{
  border-color:rgba(7,158,174,.42);
  box-shadow:0 12px 30px rgba(7,158,174,.10);
}
.jtr-family-page .jtrf-itinerary h3{
  margin:0;
  color:var(--jtrf-navy);
  font-size:21px;
  line-height:1.2;
}
.jtr-family-page .jtrf-itinerary-sub{
  margin:7px 0 0;
  color:var(--jtrf-muted);
  font-size:12px;
}
.jtr-family-page .jtrf-itinerary-days{
  display:grid;
  gap:7px;
  margin-top:13px;
}
.jtr-family-page .jtrf-itinerary-days div{
  padding:9px 10px;
  border-radius:10px;
  background:var(--jtrf-soft);
  color:var(--jtrf-text);
  font-size:12px;
  line-height:1.45;
}
.jtr-family-page .jtrf-itinerary-days strong{
  color:var(--jtrf-primary-dark);
}
.jtr-family-page .jtrf-itinerary-note{
  margin-top:12px;
  padding-top:11px;
  border-top:1px solid var(--jtrf-border);
  color:var(--jtrf-muted);
  font-size:11px;
  line-height:1.5;
}
.jtr-family-page .jtrf-hotel-flow{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  margin-top:28px;
}
.jtr-family-page .jtrf-hotel-step{
  padding:18px;
  border:1px solid var(--jtrf-border);
  border-radius:16px;
  background:#fff;
}
.jtr-family-page .jtrf-hotel-step strong{
  display:block;
  color:var(--jtrf-navy);
  font-size:16px;
}
.jtr-family-page .jtrf-hotel-step p{
  margin:6px 0 0;
  color:var(--jtrf-muted);
  font-size:12px;
}
@media (min-width:680px){
  .jtr-family-page .jtrf-trip-flow{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .jtr-family-page .jtrf-itinerary-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .jtr-family-page .jtrf-hotel-flow{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
@media (min-width:960px){
  .jtr-family-page .jtrf-trip-flow{
    grid-template-columns:repeat(5,minmax(0,1fr));
  }
}


/* =========================================================
   Child-page refinements: Paket Honeymoon Lombok
========================================================= */
.jtr-family-page .jtrf-couple-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  margin-top:28px;
}
.jtr-family-page .jtrf-couple-card{
  padding:19px;
  border:1px solid var(--jtrf-border);
  border-radius:17px;
  background:#fff;
}
.jtr-family-page .jtrf-couple-card.is-featured{
  border-color:rgba(7,158,174,.42);
  box-shadow:0 12px 30px rgba(7,158,174,.10);
}
.jtr-family-page .jtrf-couple-card h3{
  margin:0;
  color:var(--jtrf-navy);
  font-size:20px;
  line-height:1.22;
}
.jtr-family-page .jtrf-couple-card p{
  margin:8px 0 0;
  color:var(--jtrf-muted);
  font-size:13px;
}
.jtr-family-page .jtrf-pace-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  margin-top:28px;
}
.jtr-family-page .jtrf-pace{
  padding:18px;
  border:1px solid var(--jtrf-border);
  border-radius:16px;
  background:#fff;
}
.jtr-family-page .jtrf-pace strong{
  display:block;
  color:var(--jtrf-navy);
  font-size:16px;
}
.jtr-family-page .jtrf-pace span{
  display:block;
  margin-top:6px;
  color:var(--jtrf-muted);
  font-size:12px;
  line-height:1.5;
}
.jtr-family-page .jtrf-itinerary-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:13px;
  margin-top:28px;
}
.jtr-family-page .jtrf-itinerary{
  padding:20px;
  border:1px solid var(--jtrf-border);
  border-radius:18px;
  background:#fff;
}
.jtr-family-page .jtrf-itinerary.is-recommended{
  border-color:rgba(7,158,174,.42);
  box-shadow:0 12px 30px rgba(7,158,174,.10);
}
.jtr-family-page .jtrf-itinerary h3{
  margin:0;
  color:var(--jtrf-navy);
  font-size:21px;
  line-height:1.2;
}
.jtr-family-page .jtrf-itinerary p{
  margin:7px 0 0;
  color:var(--jtrf-muted);
  font-size:12px;
}
.jtr-family-page .jtrf-itinerary-days{
  display:grid;
  gap:7px;
  margin-top:13px;
}
.jtr-family-page .jtrf-itinerary-days div{
  padding:9px 10px;
  border-radius:10px;
  background:var(--jtrf-soft);
  color:var(--jtrf-text);
  font-size:12px;
  line-height:1.45;
}
.jtr-family-page .jtrf-itinerary-days strong{
  color:var(--jtrf-primary-dark);
}
.jtr-family-page .jtrf-hotel-note{
  margin-top:18px;
  padding:14px 15px;
  border-left:4px solid var(--jtrf-primary);
  border-radius:10px;
  background:var(--jtrf-primary-soft);
  color:var(--jtrf-text);
  font-size:13px;
  line-height:1.55;
}
@media (min-width:680px){
  .jtr-family-page .jtrf-couple-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .jtr-family-page .jtrf-pace-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .jtr-family-page .jtrf-itinerary-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}


/* =========================================================
   PHOTO GALLERY — Paket Honeymoon Lombok
   Fixed for WordPress Classic Editor
========================================================= */
.jtr-family-page .jtrf-gallery-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  grid-auto-flow:row !important;
  gap:12px !important;
  align-items:stretch !important;
  width:100% !important;
  margin:28px 0 0 !important;
  padding:0 !important;
}

/* Classic Editor / wpautop may insert empty paragraphs or BR tags.
   Hide them so they do not become grid items. */
.jtr-family-page .jtrf-gallery-grid > p,
.jtr-family-page .jtrf-gallery-grid > br{
  display:none !important;
  margin:0 !important;
  padding:0 !important;
}

.jtr-family-page .jtrf-gallery-grid > .jtrf-gallery-item{
  grid-column:auto !important;
  grid-row:auto !important;
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  height:100% !important;
  margin:0 !important;
  padding:0 !important;
  align-self:stretch !important;
  justify-self:stretch !important;
}

.jtr-family-page .jtrf-gallery-item{
  overflow:hidden;
  border:1px solid var(--jtrf-border);
  border-radius:15px;
  background:#fff;
  box-shadow:0 8px 24px rgba(16,45,56,.06);
}

.jtr-family-page .jtrf-gallery-media{
  overflow:hidden;
  width:100%;
  background:var(--jtrf-soft);
}

.jtr-family-page .jtrf-gallery-item img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  aspect-ratio:4/3;
  object-fit:cover;
  margin:0 !important;
  padding:0 !important;
  transition:transform .28s ease;
}

.jtr-family-page .jtrf-gallery-item:hover img{
  transform:scale(1.025);
}

.jtr-family-page .jtrf-gallery-item figcaption{
  min-height:44px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:9px 10px 10px;
  color:var(--jtrf-muted);
  font-size:11px;
  line-height:1.35;
  text-align:center;
}

@media (min-width:680px){
  .jtr-family-page .jtrf-gallery-grid{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:14px !important;
  }
  .jtr-family-page .jtrf-gallery-item figcaption{
    min-height:46px;
    font-size:12px;
  }
}


/* =========================================================
   Child-page refinements: Paket Wisata Keluarga Lombok
========================================================= */
.jtr-family-page .jtrf-family-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  margin-top:28px;
}
.jtr-family-page .jtrf-family-card{
  padding:19px;
  border:1px solid var(--jtrf-border);
  border-radius:17px;
  background:#fff;
}
.jtr-family-page .jtrf-family-card.is-featured{
  border-color:rgba(7,158,174,.42);
  box-shadow:0 12px 30px rgba(7,158,174,.10);
}
.jtr-family-page .jtrf-family-card h3{
  margin:0;
  color:var(--jtrf-navy);
  font-size:20px;
  line-height:1.22;
}
.jtr-family-page .jtrf-family-card p{
  margin:8px 0 0;
  color:var(--jtrf-muted);
  font-size:13px;
}
.jtr-family-page .jtrf-family-points{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
  margin-top:26px;
}
.jtr-family-page .jtrf-family-point{
  padding:16px;
  border:1px solid var(--jtrf-border);
  border-radius:15px;
  background:#fff;
}
.jtr-family-page .jtrf-family-point strong{
  display:block;
  color:var(--jtrf-navy);
  font-size:15px;
}
.jtr-family-page .jtrf-family-point span{
  display:block;
  margin-top:5px;
  color:var(--jtrf-muted);
  font-size:12px;
  line-height:1.5;
}
.jtr-family-page .jtrf-itinerary-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:13px;
  margin-top:28px;
}
.jtr-family-page .jtrf-itinerary{
  padding:20px;
  border:1px solid var(--jtrf-border);
  border-radius:18px;
  background:#fff;
}
.jtr-family-page .jtrf-itinerary.is-recommended{
  border-color:rgba(7,158,174,.42);
  box-shadow:0 12px 30px rgba(7,158,174,.10);
}
.jtr-family-page .jtrf-itinerary h3{
  margin:0;
  color:var(--jtrf-navy);
  font-size:21px;
  line-height:1.2;
}
.jtr-family-page .jtrf-itinerary p{
  margin:7px 0 0;
  color:var(--jtrf-muted);
  font-size:12px;
}
.jtr-family-page .jtrf-itinerary-days{
  display:grid;
  gap:7px;
  margin-top:13px;
}
.jtr-family-page .jtrf-itinerary-days div{
  padding:9px 10px;
  border-radius:10px;
  background:var(--jtrf-soft);
  color:var(--jtrf-text);
  font-size:12px;
  line-height:1.45;
}
.jtr-family-page .jtrf-itinerary-days strong{
  color:var(--jtrf-primary-dark);
}
.jtr-family-page .jtrf-family-alert{
  margin-top:18px;
  padding:14px 15px;
  border-left:4px solid var(--jtrf-orange);
  border-radius:10px;
  background:#fff8f1;
  color:var(--jtrf-text);
  font-size:13px;
  line-height:1.55;
}
@media (min-width:680px){
  .jtr-family-page .jtrf-family-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .jtr-family-page .jtrf-family-points{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .jtr-family-page .jtrf-itinerary-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
