:root{--green:#1c4938;--lime:#c4da55;--ink:#233b30;--muted:#66746a;--line:#dde3d9;--paper:#f7f9f3}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;color:var(--ink);background:#fff;font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit}a,button{ -webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #83a422;outline-offset:6px}.wrap{width:min(1160px,calc(100% - 96px));margin:auto}.topbar{background:var(--green);color:#e6eedb;font-size:12px;letter-spacing:.035em;padding:9px 0}.topbar .wrap{display:flex;justify-content:space-between}header{display:flex;align-items:center;justify-content:space-between;min-height:109px;gap:35px}.logo{width:174px;display:block}nav{display:flex;gap:28px;align-items:center;font-size:14px}nav>a:hover,.text-link:hover{color:#699330}.button{background:var(--green);color:white;display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:17px 24px;border-radius:4px;font-size:14px;font-weight:600;transition:background .2s,transform .2s}.button:hover{background:#32634b;transform:translateY(-2px)}.button span{font-size:19px;color:var(--lime)}.button.small{padding:12px 18px;gap:20px}.menu{display:none}.hero{background:var(--paper);border-top:1px solid #eef1e9;padding:48px 0 55px}.hero-grid{display:grid;grid-template-columns:1.06fr 1fr;gap:64px;align-items:center}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.17em;color:#62773f;margin:0 0 25px}.eyebrow>span{display:inline-block;width:21px;height:1px;background:#7c964d;vertical-align:middle;margin-right:10px}h1,h2,h3{font-weight:400;margin:0;font-family:Georgia,'Times New Roman',serif;letter-spacing:-.045em;line-height:1.12}h1{font-size:64px}h1 em{color:#67933c;font-weight:400}h2{font-size:43px}h3{font-size:30px;letter-spacing:-.035em}.intro{max-width:460px;color:var(--muted);margin:26px 0 28px;font-size:16px;line-height:1.85}.actions{display:flex;align-items:center;gap:26px}.text-link{font-size:14px;border-bottom:1px solid #b4c0ad;padding:5px 0}.text-link span{margin-left:15px}.hero-note{display:flex;gap:13px;align-items:center;margin-top:44px;font-size:12px;color:var(--muted);line-height:1.8}.hero-note strong{font-weight:500;color:#3c5546}.seal{border:1px solid #cad4be;border-radius:50%;width:38px;height:38px;display:grid;place-items:center;font-size:18px;color:#678c3c}.hero-photo{margin:0;height:486px;position:relative;border-radius:140px 5px 5px 5px;overflow:hidden;background:var(--green)}.hero-photo>img{width:100%;height:100%;object-fit:cover}.hero-photo:after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(8,36,25,.8))}figcaption{position:absolute;bottom:28px;left:32px;color:white;z-index:1}figcaption span{display:block;font-size:11px;letter-spacing:.18em;margin-bottom:8px;color:#d5e2c0}figcaption b{font-family:Georgia,serif;font-size:24px;font-weight:400}.assurances{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line);padding:26px 0}.assurances>div{display:flex;gap:17px;align-items:center;justify-content:center;border-right:1px solid var(--line)}.assurances>div:first-child{justify-content:start}.assurances>div:last-child{border:0}.assurances>div>span{font:italic 23px Georgia;color:#8da650}.assurances p{font-size:14px;margin:0}.assurances small{display:block;color:var(--muted);font-size:12px}.section{padding-top:85px;padding-bottom:85px}.section-title{display:flex;justify-content:space-between;align-items:end;margin-bottom:35px;gap:60px}.section-title .eyebrow{margin-bottom:16px}.section-title>p{max-width:330px;color:var(--muted);font-size:14px;margin:0}.journeys{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.journeys article{border:1px solid var(--line);border-radius:5px;padding:29px;display:flex;flex-direction:column;transition:border-color .2s,background .2s}.journeys article:hover{background:var(--paper);border-color:#98b570}.number{font-size:11px;letter-spacing:.12em;color:#6c8647;margin-bottom:29px}.journeys p{font-size:14px;color:var(--muted);margin:18px 0 28px}.journeys a{font-size:14px;font-weight:500;border-top:1px solid var(--line);padding-top:20px;margin-top:auto;display:flex;justify-content:space-between}.availability{font-size:12px;color:var(--muted);margin:23px 0 0}footer{background:var(--green);color:#dce7cf;padding:30px 0;font-size:12px}.skip{position:absolute;top:-70px;background:white;padding:10px;z-index:10}.skip:focus{top:0}@media(min-width:1450px){.hero{padding:68px 0}.hero-photo{height:520px}h1{font-size:72px}}@media(max-width:1000px){.wrap{width:calc(100% - 48px)}nav{gap:15px;font-size:12px}.logo{width:145px}.hero-grid{gap:30px}h1{font-size:50px}.hero-photo{height:470px}.actions{gap:17px;flex-wrap:wrap}.journeys article{padding:23px}h3{font-size:27px}}@media(max-width:760px){.wrap{width:calc(100% - 40px)}.topbar{font-size:11px}.topbar a{font-size:0}.topbar a:after{content:'08111749977';font-size:11px}header{min-height:88px;position:relative}.logo{width:148px}.menu{display:flex;gap:12px;align-items:center;background:transparent;border:1px solid var(--line);padding:8px 12px;border-radius:4px;font-size:14px}nav{display:none;position:absolute;top:88px;left:-20px;right:-20px;background:white;z-index:5;padding:25px;box-shadow:0 10px 15px #14332415;font-size:16px}nav.open{display:flex;align-items:stretch;flex-direction:column;gap:22px}.hero{padding:35px 0}.hero-grid{grid-template-columns:1fr;gap:30px}h1{font-size:clamp(42px,10vw,63px)}.eyebrow{font-size:10px}.intro{margin:22px 0}.hero-note{margin-top:28px}.hero-photo{height:370px;border-radius:95px 4px 4px 4px}.assurances{gap:18px;padding:23px 0;grid-template-columns:1fr}.assurances>div{justify-content:start;border:0}.assurances>div>span{width:24px}.assurances small{display:inline;margin-left:7px}.section{padding-top:55px;padding-bottom:55px}.section-title{display:block;margin-bottom:25px}.section-title>p{margin-top:22px;max-width:none}h2{font-size:36px}.journeys{grid-template-columns:1fr;gap:15px}.number{margin-bottom:20px}.journeys p{margin-bottom:20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.hero-photo>img{object-position:center 80%}.about{background:var(--green);padding:65px 0;color:#fff}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.about .eyebrow{color:var(--lime)}.about h2{font-size:40px}.about p:not(.eyebrow){margin:0 0 20px;color:#d3dfd1;font-size:15px}.about .text-link{color:#e1efba}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.gallery-grid figure{margin:0;overflow:hidden;border-radius:5px}.gallery-grid img{width:100%;height:265px;object-fit:cover;display:block;transition:transform .5s}.gallery-grid figure:hover img{transform:scale(1.04)}.articles{padding-bottom:75px}.article-row{display:flex;gap:28px;align-items:center;border-top:1px solid var(--line);padding:25px 0}.article-row:last-child{border-bottom:1px solid var(--line)}.article-row>span:first-child{color:#789245;font-size:12px}.article-row>span:last-child{margin-left:auto;font-size:23px}.article-row h3{font-size:25px;letter-spacing:-.015em}.article-row:hover h3{color:#68923c}form label{display:block;font-size:12px;color:var(--muted);margin-bottom:5px}.search-box{display:flex;border-bottom:1px solid #b4c0ad}.search-box input{border:0;font:inherit;width:220px;padding:9px 0;outline-offset:4px;background:transparent}.search-box button{border:0;background:transparent;cursor:pointer;color:var(--green);font-size:22px}.contact{background:#edf3df;padding:44px 48px;margin-bottom:80px;border-radius:6px;display:flex;align-items:center;justify-content:space-between;gap:30px}.contact h2{font-size:39px}.contact .eyebrow{margin-bottom:20px}.contact p:not(.eyebrow){font-size:14px;color:var(--muted);margin-bottom:0}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:40px;padding:20px 0 45px}.footer-logo{display:block;width:176px;height:auto;padding:0;background:transparent;border-radius:0;filter:none;opacity:1}.footer-grid>div:first-child{max-width:320px}.footer-grid>div:first-child p{margin:16px 0 0;font-size:14px;line-height:1.7;color:#d8e5df}.footer-grid h4{font-size:14px;color:white;font-weight:500;margin:0 0 16px}.footer-grid p,.footer-grid a{font-size:13px}.footer-grid p{color:#c6d5c7}.social{display:flex;gap:22px;margin-top:18px}.footer-bottom{border-top:1px solid #ffffff25;padding-top:22px;display:flex;justify-content:space-between;font-size:11px}@media(max-width:760px){.about{padding:45px 0}.about-grid{grid-template-columns:1fr;gap:25px}.about h2{font-size:34px}.gallery-grid{grid-template-columns:1fr 1fr;gap:12px}.gallery-grid figure:first-child{grid-column:1 / -1}.gallery-grid img{height:190px}.gallery-grid figure:first-child img{height:260px}.article-row{gap:17px}.article-row h3{font-size:22px}.articles .section-title form{margin-top:25px}.contact{display:block;padding:32px 25px;margin-bottom:50px}.contact h2{font-size:34px}.contact .button{margin-top:25px}.footer-grid{grid-template-columns:1fr;gap:27px;padding-bottom:28px}.footer-bottom{display:block}.footer-bottom a{display:block;margin-top:15px}} 
/* Compact layout and Ahsiap-style schedule table. */
header{min-height:80px;gap:24px}.logo{width:150px}.hero{padding:28px 0}.hero-grid{gap:42px;grid-template-columns:1.2fr .8fr}.hero h1{font-size:46px;line-height:1.1}.hero .eyebrow{font-size:12px;letter-spacing:.08em;margin-bottom:14px}.intro{margin:16px 0 20px;max-width:550px;line-height:1.65}.hero-photo{height:285px;border-radius:60px 5px 5px 5px}.hero-note{display:none}.hero-photo figcaption{bottom:20px;left:24px}.hero-photo figcaption b{font-size:20px}.button{padding:12px 20px}.assurances{padding:18px 0}.section{padding-top:45px;padding-bottom:45px}.section-title{margin-bottom:22px;gap:30px}.section-title h2{font-size:30px;letter-spacing:-.025em}.section-title .eyebrow{margin-bottom:9px}.section-title>p{font-size:14px;max-width:370px}.about{padding:40px 0}.about-grid{gap:48px;grid-template-columns:.9fr 1.1fr}.about h2{font-size:32px}.about p:not(.eyebrow){margin-bottom:14px}.gallery-grid{gap:16px}.gallery-grid img{height:190px}.articles{padding-bottom:45px}.article-row{padding:17px 0}.article-row h3{font-size:22px}.contact{padding:30px 36px;margin-bottom:45px}.contact h2{font-size:30px}.contact .eyebrow{margin-bottom:12px}.footer-grid{padding:8px 0 24px}.footer-bottom{padding-top:16px}
.month-strip{display:flex;gap:10px;overflow-x:auto;padding:2px 2px 12px;scrollbar-width:thin;scroll-snap-type:x proximity}.month-button{flex:0 0 auto;min-width:148px;text-align:left;border:1px solid var(--line);border-radius:7px;padding:10px 14px;background:#fff;color:var(--green);cursor:pointer;scroll-snap-align:start}.month-button span,.month-button strong{display:block;font-size:14px;line-height:1.5}.month-button span{color:var(--muted)}.month-button strong{font-weight:600}.month-button:hover{border-color:#8ba36b}.month-button[aria-pressed=true]{border-color:var(--green);background:#edf3df}.month-button[aria-pressed=true] span{color:var(--green)}
.catalog-toolbar{display:flex;gap:14px;align-items:end;padding:8px 0 18px}.catalog-toolbar label{display:grid;gap:5px;font-size:13px;font-weight:500;flex:1}.catalog-toolbar select{width:100%;min-height:40px;border:1px solid #bcc9b5;border-radius:4px;padding:8px 10px;background:white;color:var(--ink);font:inherit;font-size:14px}.catalog-toolbar>p{font-size:12px;color:var(--muted);margin:0 0 7px;text-align:right;flex:1.2}.catalog-toolbar select:disabled{opacity:.6}.catalog-table-wrap{border:1px solid var(--line);border-radius:8px;overflow:hidden}.catalog-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:14px;line-height:1.5}.catalog-table caption{caption-side:top;background:var(--green);color:white;text-align:left;padding:10px 14px;font-size:14px;font-weight:600}.catalog-table thead{background:var(--lime);color:#244330}.catalog-table thead th{font-size:12px;text-align:left;padding:11px 12px;font-weight:700}.catalog-table thead th:nth-child(1){width:16%}.catalog-table thead th:nth-child(2){width:12%}.catalog-table thead th:nth-child(3){width:9%}.catalog-table thead th:nth-child(4),.catalog-table thead th:nth-child(5){width:16%}.catalog-table thead th:nth-child(6){width:20%}.catalog-table thead th:nth-child(7){width:11%}.catalog-table td,.catalog-table tbody th{padding:14px 12px;border-bottom:1px solid var(--line);vertical-align:middle;text-align:left;overflow-wrap:anywhere}.catalog-table tbody tr:last-child>*{border-bottom:0}.catalog-table tbody tr:hover{background:#f7faf1}.package-name strong{display:block;font-size:15px;font-weight:600;line-height:1.35}.row-meta{display:block;font-size:12px;font-weight:400;color:var(--muted);margin-top:4px}.hotel-cell,.airline-cell{color:var(--muted)}.price-cell del{display:block;font-size:12px;color:var(--muted)}.price-value{display:inline-block;color:var(--green);background:#edf3df;padding:4px 7px;border-radius:4px;font-size:15px;white-space:nowrap}.price-cell small{display:block;font-size:12px;color:var(--muted);margin-top:4px}.closed-label{display:block;font-size:12px;color:var(--muted);margin-top:4px}.row-cta{display:inline-block;font-size:13px;font-weight:500;padding:8px 10px;background:var(--green);color:white;border-radius:4px;white-space:nowrap}.row-cta:hover{background:#32634b}.is-closed .row-cta{background:#6b776c}.is-closed .price-value{background:#eeefec;color:#657265}.price-note,.review-note{font-size:13px;color:var(--muted);line-height:1.7;margin:15px 0 0}.catalog-error{padding:14px;border:1px solid #b6c88d;background:#f6f9ef;margin:0 0 15px}.catalog-error[hidden],.catalog-empty[hidden]{display:none}.catalog-error p{margin-top:0;font-size:14px}.catalog-error .text-link{margin-left:20px}.catalog-error button{border:0;cursor:pointer}.catalog-stale{opacity:.65}.catalog-empty{font-size:14px;padding:15px 0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.reviews{background:var(--paper);margin-bottom:45px}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.review-grid figure{margin:0;background:white;border:1px solid var(--line);padding:18px;border-radius:5px}.review-source{font-size:12px;color:#62773f}.review-grid blockquote{font:18px/1.5 Georgia,serif;letter-spacing:0;margin:12px 0 0}.review-note a{text-decoration:underline}.google-map{width:100%;height:160px;border:1px solid var(--line);border-radius:5px;margin-top:20px}
@media(max-width:1100px) and (min-width:701px){.catalog-table td,.catalog-table tbody th{padding:12px 8px}.catalog-table thead th{padding:10px 8px}.row-cta{padding:8px 7px;font-size:12px}.price-value{font-size:14px;padding:4px}.package-name strong{font-size:14px}}
@media(max-width:700px){.catalog-toolbar{flex-wrap:wrap;gap:10px}.catalog-toolbar label{min-width:140px}.catalog-toolbar>p{flex-basis:100%;text-align:left;margin:0}.catalog-table,.catalog-table caption,.catalog-table tbody{display:block;width:100%}.catalog-table thead{display:none}.catalog-table tbody tr{display:grid;grid-template-columns:1fr 1fr;padding:15px 16px;border-bottom:1px solid var(--line);gap:5px 14px}.catalog-table tbody tr:last-child{border-bottom:0}.catalog-table td,.catalog-table tbody th{display:block;padding:0;border:0}.catalog-table .package-name{align-self:center}.catalog-table .departure-cell{text-align:right;font-size:14px;align-self:center}.catalog-table .airline-cell,.catalog-table .hotel-cell{grid-column:1/-1;display:grid;grid-template-columns:110px 1fr;font-size:13px;gap:10px}.catalog-table td.airline-cell{margin-top:7px}.catalog-table .airline-cell:before,.catalog-table .hotel-cell:before{content:attr(data-label);color:var(--ink);font-size:12px}.catalog-table .price-cell{margin-top:7px}.catalog-table .action-cell{align-self:end;text-align:right}.package-name strong{font-size:16px}.row-cta{font-size:14px}.price-value{font-size:16px}.price-cell small{font-size:12px}.catalog-table caption{padding:9px 16px}}
@media(max-width:760px){header{min-height:74px}.logo{width:140px}nav{top:74px}.hero{padding:25px 0}.hero-grid{grid-template-columns:1fr;gap:20px}.hero h1{font-size:38px}.hero .eyebrow{font-size:11px;margin-bottom:12px}.hero-photo{height:160px;border-radius:35px 4px 4px 4px}.hero-photo figcaption{bottom:15px;left:20px}.hero-photo figcaption span{font-size:10px;margin-bottom:3px}.hero-photo figcaption b{font-size:18px}.intro{font-size:15px;margin:14px 0 18px}.assurances{padding:15px 0;gap:9px}.assurances p{font-size:13px}.assurances small{font-size:12px}.assurances>div>span{font-size:19px}.section{padding-top:32px;padding-bottom:32px}.section-title{margin-bottom:18px}.section-title h2{font-size:27px}.section-title>p{margin-top:12px;max-width:none}.section-title .eyebrow{font-size:11px;margin-bottom:8px}.month-button{min-width:140px;padding:9px 12px}.catalog-toolbar label:first-child{flex-basis:100%}.catalog-toolbar label{min-width:0;flex-basis:calc(50% - 5px)}.about{padding:30px 0}.about-grid{grid-template-columns:1fr;gap:18px}.about h2{font-size:28px}.about .eyebrow{margin-bottom:12px}.gallery-grid{gap:10px}.gallery-grid img{height:145px}.gallery-grid figure:first-child img{height:185px}.availability{margin-top:14px}.review-grid{grid-template-columns:1fr;gap:10px}.review-grid figure{padding:15px 18px}.review-grid blockquote{margin-top:8px;font-size:17px}.reviews{margin-bottom:32px}.google-map{height:150px}.articles{padding-bottom:32px}.article-row{padding:15px 0}.article-row h3{font-size:20px}.articles .section-title form{margin-top:18px}.contact{padding:25px;margin-bottom:32px}.contact h2{font-size:28px}.contact .button{margin-top:20px}.footer-grid{gap:22px}.footer-logo{width:160px}}
/* Schedule reference supplied by the owner. */
#perjalanan{color:#173d28}.schedule-title{display:block;margin-bottom:24px}.schedule-title h2{font-family:'DM Sans',sans-serif;font-size:28px;font-weight:700;letter-spacing:-.025em;color:#14522d}.schedule-title p{font-size:16px;color:var(--muted);margin:7px 0 0}.month-carousel{display:flex;align-items:stretch;background:#e5ebe3;border-radius:4px;margin-bottom:14px;overflow:hidden}.month-strip{flex:1;min-width:0;padding:0;gap:14px;scrollbar-width:none}.month-strip::-webkit-scrollbar{display:none}.month-button{min-width:155px;border:1px solid #e5eddf;border-radius:16px;text-align:center;padding:13px 12px;background:white}.month-button span{font-size:15px;font-weight:700}.month-button strong{font-size:16px;font-weight:700;color:#216537}.month-button[aria-pressed=true]{border:2px solid #24813b;background:#eef6dc;padding:12px 11px}.month-arrow{flex:0 0 32px;border:1px solid #acb8c8;background:white;color:#46617b;font-size:28px;cursor:pointer;padding:0}.month-arrow:disabled{color:#a0adbd;cursor:default;background:#f4f6f8}.catalog-toolbar{gap:16px;padding:0 0 20px}.catalog-toolbar label{max-width:290px}.catalog-toolbar>p{margin-left:auto}.catalog-table-wrap{border-radius:16px;box-shadow:0 2px 12px #173d2808}.catalog-table thead{background:#aacf45}.catalog-table thead th{font-size:12px;text-transform:uppercase;letter-spacing:.06em;font-weight:700;padding:16px 14px;text-align:center}.catalog-table thead th:first-child{text-align:left;width:18%}.catalog-table thead th:nth-child(2){width:14%}.catalog-table thead th:nth-child(3){width:10%}.catalog-table thead th:nth-child(4),.catalog-table thead th:nth-child(5){width:17%}.catalog-table thead th:nth-child(6){width:15%}.catalog-table thead th:nth-child(7){width:9%}.catalog-table td,.catalog-table tbody th{padding:20px 14px;text-align:center}.catalog-table tbody .package-name{text-align:left}.catalog-table .month-row td{background:#20281f;color:white;font-size:16px;font-weight:700;letter-spacing:.05em;text-align:center;padding:10px 16px;border-bottom:0}.catalog-table caption.sr-only{display:table-caption;width:1px;height:1px;padding:0;margin:-1px}.package-name strong{display:inline;font-size:14px;font-weight:700;color:#18592f}.duration-pill{display:inline-block;vertical-align:middle;border-radius:99px;background:#edf6dc;color:#28623a;padding:2px 9px;font-size:12px;font-weight:700;white-space:nowrap;margin:4px 0 4px 8px}.departure-cell>span:first-child{font-weight:700;color:#26352b}.availability-label{display:block;font-size:13px;font-weight:600;margin-top:3px}.available{color:#2c8040}.unavailable{color:#c33e32}.price-value,.is-closed .price-value{font-size:16px;font-weight:700;background:#eaf5df;color:#216537;padding:6px 10px;border-radius:8px}.row-cta,.is-closed .row-cta{background:#1b6336;font-weight:600;font-size:14px;padding:10px 16px;border-radius:9px}.row-cta:hover{background:#174d2c}.catalog-table tbody tr:hover{background:#f5faee}
@media(max-width:1100px) and (min-width:701px){.catalog-table thead th{padding:12px 8px;font-size:11px;letter-spacing:0}.catalog-table td,.catalog-table tbody th{padding:17px 8px;font-size:13px}.duration-pill{margin-left:0}.row-cta{padding:8px 6px;font-size:12px}.price-value{font-size:14px;padding:5px 7px}}
@media(max-width:700px){.catalog-table tbody tr{padding:16px}.catalog-table td,.catalog-table tbody th{padding:0}.catalog-table .month-row{display:block;padding:0;border:0}.catalog-table .month-row td{display:block;width:100%;text-align:center;padding:9px 16px;font-size:15px}.catalog-table .departure-cell{text-align:right}.catalog-table .hotel-cell,.catalog-table .airline-cell{text-align:left}.catalog-table .price-cell{text-align:left}.package-name strong{font-size:15px}.duration-pill{font-size:11px;margin-left:5px}.price-value{font-size:16px}.catalog-toolbar label{max-width:none}.catalog-toolbar>p{flex-basis:100%;margin-left:0}}
@media(max-width:760px){.schedule-title h2{font-size:25px}.schedule-title p{font-size:14px}.month-button{min-width:140px;padding:11px 10px}.month-button[aria-pressed=true]{padding:10px 9px}.month-button span{font-size:14px}.month-button strong{font-size:15px}.month-arrow{flex-basis:28px}.catalog-toolbar label:first-child{flex-basis:calc(50% - 8px)}.catalog-toolbar label{flex-basis:calc(50% - 8px)}.catalog-table-wrap{border-radius:12px}}

/* Keep prices understandable and consultation within reach for mobile visitors. */
[hidden]{display:none!important}
.button-outline{background:transparent;color:var(--green);border:1px solid #789480}
.button-outline:hover{background:#eaf0e3;color:var(--green)}
nav>a.button:hover{color:#fff}
.hero .eyebrow{letter-spacing:.03em;font-size:14px}
.hero-trust{display:inline-flex;align-items:center;gap:12px;margin-top:12px;min-height:36px;font-size:13px;text-decoration:underline;text-underline-offset:4px;color:var(--green)}
.hero-trust:hover{color:#32634b}
.actions{gap:12px;flex-wrap:wrap}
.actions .button{justify-content:center;gap:14px;min-height:48px}
.schedule-title{margin-bottom:12px}
.price-basis{font-size:14px;line-height:1.65;color:#4d6255;margin:0 0 18px;max-width:880px}
.price-basis strong{color:var(--green)}
.catalog-toolbar select{font-size:16px;min-height:46px}
.month-arrow{flex-basis:44px}
.month-button{min-height:76px}
.month-arrow:focus-visible,.month-button:focus-visible{outline:3px solid #1c4938;outline-offset:-4px}
.row-cta{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
.catalog-loading{display:flex;align-items:center;gap:18px;border:1px solid var(--line);border-radius:12px;min-height:150px;padding:24px;background:var(--paper)}
.loading-mark{flex:0 0 24px;height:24px;border:3px solid #dce7cf;border-top-color:var(--green);border-radius:50%;animation:loading-turn 1.2s linear infinite}
.catalog-loading strong{font-size:15px}
.catalog-loading p{font-size:14px;line-height:1.65;margin:5px 0 0;color:var(--muted)}
.catalog-loading a,.catalog-empty a{text-decoration:underline;text-underline-offset:3px;color:var(--green)}
.no-months{font-size:14px;padding:10px 14px;margin:0}
.catalog-error .text-link{display:inline-flex;align-items:center;min-height:44px}
.catalog-error button:disabled{opacity:.7;cursor:wait}
.family-help{display:flex;align-items:center;justify-content:space-between;gap:26px;padding:20px 22px;margin-top:20px;background:#edf3df;border-radius:8px}
.family-help strong{font-size:17px;color:var(--green)}
.family-help p{font-size:14px;max-width:600px;line-height:1.65;color:#4d6255;margin:5px 0 0}
.family-help .button{flex-shrink:0;justify-content:center;min-height:46px}
.booking-help{margin-top:12px;font-size:14px;border-bottom:1px solid var(--line)}
.booking-help summary{cursor:pointer;font-weight:600;padding:12px 0;min-height:48px}
.booking-help p{margin:0 0 16px;max-width:760px;color:var(--muted)}
select:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #496f39;outline-offset:3px}
.mobile-consult{display:none}
@keyframes loading-turn{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.loading-mark{animation:none}.button:hover{transform:none}}
@media(max-width:760px){
  body{padding-bottom:calc(80px + env(safe-area-inset-bottom,0px))}
  html{scroll-padding-bottom:90px}
  .hero h1{font-size:38px}
  .hero .eyebrow{font-size:13px}
  .hero-grid{gap:16px}
  .hero-photo{height:140px}
  .actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
  .actions .button{padding:11px 8px;font-size:13px;gap:7px}
  .actions .button span{display:none}
  .hero-trust{margin-top:8px;min-height:40px}
  .assurances small{display:block;margin-left:0}
  .assurances{grid-template-columns:repeat(3,1fr);gap:12px;padding:16px 0}
  .assurances>div{align-items:start;justify-content:start}
  .assurances p{font-size:12px;font-weight:600;line-height:1.5}
  .assurances small{font-size:11px;font-weight:400;margin-top:4px}
  .price-basis{font-size:13px;margin-bottom:14px}
  .month-arrow{flex-basis:44px}
  .family-help{display:block;padding:18px}
  .family-help .button{margin-top:14px;width:100%}
  .catalog-loading{padding:20px 16px;gap:14px}
  .catalog-error .text-link{margin-left:12px}
  .mobile-consult{position:fixed;z-index:20;bottom:0;left:0;right:0;display:flex;align-items:center;gap:12px;padding:12px 20px calc(12px + env(safe-area-inset-bottom,0px));background:#fff;border-top:1px solid #cbd7c5;box-shadow:0 -3px 14px #173d2808}
  .mobile-consult>a:first-child{display:flex;align-items:center;justify-content:center;min-height:48px;flex:1;font-size:14px;font-weight:600;color:var(--green)}
  .mobile-consult .button{flex:1.6;justify-content:center;min-height:48px;padding:10px 12px;white-space:nowrap}
}

/* Family photographs supplied by Haqeem. */
.hero-photo>img{object-position:50% 58%}.hero-photo figcaption{bottom:12px}.hero-photo figcaption b{font-size:18px}.family-gallery{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.family-gallery figure:first-child{grid-column:auto}.family-gallery img,.family-gallery figure:first-child img{height:auto;aspect-ratio:3/4;object-position:center}.family-gallery figure:nth-child(2) img{object-position:center 65%}
@media(max-width:760px){.hero-photo{height:210px}.family-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.family-gallery img,.family-gallery figure:first-child img{height:auto;aspect-ratio:3/4}.hero-photo figcaption span{font-size:9px}.hero-photo figcaption b{font-size:16px}}

.social a{display:inline-flex;align-items:center;gap:8px;min-height:36px}.social-icon{display:block;width:18px;height:18px;flex:none}.social a:hover{color:var(--lime)}

/* The homepage has its own consultation links; keep the existing widget on other pages. */
.haqeem-family-home #ht-ctc-chat{display:none!important}

/* Scope inherited typography against late Themify combined CSS. */
body.haqeem-family-home{color:var(--ink);font-weight:400}
body.haqeem-family-home h1,body.haqeem-family-home h2,body.haqeem-family-home h3{color:inherit}
body.haqeem-family-home .schedule-title h2{color:#14522d}
body.haqeem-family-home button,body.haqeem-family-home select{font-family:inherit;text-transform:none;letter-spacing:normal}
body.haqeem-family-home .month-arrow{border-radius:0}
body.haqeem-family-home .review-grid blockquote{border:0;padding:0}

/* Immediate navigation, reliable controls, and a layout that fits small screens. */
html{scroll-behavior:auto}
img{max-width:100%}
.logo{height:auto}
.topbar a{font-size:12px}
.topbar a:after{content:none}
body .menu{color:var(--green);background:#fff;border:1px solid #9eb49b;box-shadow:none;min-height:44px;font-weight:600}
body .menu:hover,body .menu:focus{color:var(--green);background:#edf3df}
.hero-grid>*,.about-grid>*,.footer-grid>*{min-width:0}
.search-box input{min-width:0;font-size:16px}
.search-box button{min-width:44px;min-height:44px;color:var(--green)}
.social a{min-height:44px}
.footer-grid a{overflow-wrap:anywhere}
@media(max-width:1000px){
  header.wrap{position:relative;min-height:74px;gap:16px}
  header .menu{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:6px}
  header #nav{display:none;position:absolute;inset:74px -16px auto;background:white;padding:16px;z-index:25;box-shadow:0 12px 24px #14332420;border-bottom:1px solid var(--line);max-height:calc(100dvh - 170px);overflow-y:auto;font-size:16px}
  header #nav.open{display:flex;flex-direction:column;align-items:stretch;gap:4px}
  header #nav>a{min-height:44px;padding:10px 12px}
  header #nav>.button{margin-top:8px}
}
@media(max-width:900px){
  .catalog-table,.catalog-table caption,.catalog-table tbody{display:block;width:100%}
  .catalog-table thead{display:none}
  .catalog-table tbody tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:16px;border-bottom:1px solid var(--line);gap:8px 12px}
  .catalog-table td,.catalog-table tbody th{display:block;padding:0;border:0;min-width:0}
  .catalog-table .package-name{text-align:left;align-self:center}
  .catalog-table .departure-cell{text-align:right;align-self:center;font-size:14px}
  .catalog-table .airline-cell,.catalog-table .hotel-cell{grid-column:1/-1;display:grid;grid-template-columns:96px minmax(0,1fr);text-align:left;font-size:14px;gap:10px;line-height:1.5}
  .catalog-table td.airline-cell{margin-top:8px}
  .catalog-table .airline-cell:before,.catalog-table .hotel-cell:before{content:attr(data-label);color:var(--ink);font-size:12px}
  .catalog-table .price-cell{margin-top:8px;text-align:left}
  .catalog-table .action-cell{align-self:end;text-align:right}
  .catalog-table .month-row{display:block;padding:0;border:0}
  .catalog-table .month-row td{display:block;width:100%;text-align:center;padding:10px 16px}
  .package-name strong{font-size:16px}
  .duration-pill{margin:4px 0 0;font-size:12px}
  .row-cta{min-height:46px;min-width:90px;font-size:14px}
}
@media(max-width:760px){
  .wrap{width:calc(100% - 32px)}
  .topbar{padding:8px 0}
  .topbar .wrap{gap:10px;align-items:center}
  .topbar .contact-label{display:none}
  .topbar a{font-size:12px;white-space:nowrap}
  .hero h1{font-size:clamp(34px,9.5vw,42px)}
  .hero-photo{height:clamp(220px,65vw,330px)}
  .hero-photo>img{object-position:50% 58%}
  .actions{grid-template-columns:repeat(2,minmax(0,1fr))}
  .actions .button{font-size:14px;line-height:1.4}
  .schedule-title h2{font-size:25px;line-height:1.25}
  .catalog-toolbar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .catalog-toolbar>p{grid-column:1/-1;margin:0;text-align:left}
  .catalog-toolbar select{font-size:16px;min-height:48px;padding:10px 8px}
  .article-row h3{font-size:21px;line-height:1.25}
  .contact{padding:24px 20px}
  .contact .button{width:100%;justify-content:center;gap:10px}
  .mobile-consult{gap:8px;padding-right:16px;padding-left:16px}
  .mobile-consult .button{font-size:14px;min-width:0}
  .family-gallery{gap:10px}
}
@media(max-width:359px){
  .actions{grid-template-columns:1fr}
  .assurances{grid-template-columns:1fr;gap:10px}
  .assurances p{font-size:13px}
  .assurances small{display:inline;margin-left:5px;font-size:12px}
  .mobile-consult .button{font-size:12px;padding:10px 8px}
  .catalog-table .airline-cell,.catalog-table .hotel-cell{grid-template-columns:84px minmax(0,1fr)}
}

.catalog-toolbar select{appearance:auto!important;-webkit-appearance:auto!important}
