/* South African Tourism destination content in the existing site palette. */
.sa-intro{display:flex;justify-content:space-between;align-items:center;gap:24px;margin:0 0 28px}.sa-intro>div{max-width:680px;min-width:0}.sa-intro h2,.sa-resource h2,.sa-resources h2{font:700 clamp(28px,3vw,40px)/1.1 var(--disp);margin-bottom:12px}.sa-intro p,.sa-resource p,.sa-resources>p{color:var(--mut);line-height:1.65}.sa-home{background:#f3f5f8}.sa-hosts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.sa-host{padding:0;background:white;border:0;text-align:left;color:var(--ink);cursor:pointer;overflow:hidden;border-radius:8px}.sa-host img{width:100%;height:180px;object-fit:cover;display:block}.sa-host span{display:block;padding:18px}.sa-host strong{font:700 27px/1.15 var(--disp);display:block}.sa-host small{display:block;margin-top:7px;color:var(--mut);font-size:13px}.sa-host:hover strong{text-decoration:underline}.sa-note{font-size:12px;line-height:1.65;color:var(--mut);margin:20px 0}.sa-experiences,.sa-safari,.sa-resources{padding-top:36px;padding-bottom:36px}.sa-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;background:#f3f5f8;padding:20px;border-radius:8px;margin-bottom:28px}.sa-filters label{display:grid;gap:8px;font-weight:600;min-width:0}.sa-filters select{width:100%;min-width:0;height:46px;border:1px solid #b8c5d5;border-radius:6px;background:white;padding:8px;color:var(--ink);font:inherit}.sa-destination{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;margin:0 0 36px;align-items:center}.sa-destination figure{margin:0;min-width:0}.sa-destination img{width:100%;height:auto;aspect-ratio:2/1;object-fit:cover;display:block;border-radius:8px}.sa-destination figcaption{font-size:11px;color:var(--mut);margin-top:6px}.sa-destination h2,.sa-destination h3{font:700 34px/1.1 var(--disp);margin:10px 0 14px}.sa-destination p{line-height:1.65;margin-bottom:14px;color:var(--mut)}.sa-activity{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:32px;padding:24px 0;border-top:1px solid var(--lined)}.sa-activity h3{font:700 28px/1.15 var(--disp);margin:9px 0 12px}.sa-activity p{line-height:1.65;max-width:65ch}.sa-meta,.sa-tip{font-size:13px;color:var(--mut)}.sa-duration{font-weight:700;margin:0 0 8px}.sa-tip{margin-bottom:12px}.sa-experiences a,.sa-safari a,.sa-resource a,.sa-resources a{color:#175a83;text-decoration:underline;text-underline-offset:3px;font-weight:600}.sa-experiences button,.sa-intro>button{background:#101f3c;color:white;border:1px solid #101f3c;padding:12px 18px;border-radius:6px;min-height:44px;font:600 14px/1.4 inherit;cursor:pointer}.sa-resource{padding:22px 0;margin-bottom:24px;border-bottom:1px solid var(--lined)}.sa-resource h2{font-size:28px}.sa-resource p{margin-bottom:10px}.sa-resource-links{display:flex;flex-wrap:wrap;gap:24px;margin-top:20px}.sa-other{margin:0 0 30px}.sa-other>summary{max-width:1132px;margin:0 auto;padding:18px 24px;cursor:pointer;font-weight:600}.sa-other .pagehead{display:none}#saResults{margin:20px 0;font-size:14px;color:var(--mut)}
@media(max-width:900px){.sa-hosts{grid-template-columns:repeat(2,minmax(0,1fr))}.sa-intro{align-items:flex-start;flex-direction:column}.sa-filters{gap:14px}.sa-destination{gap:22px}.sa-activity{gap:22px}}
@media(max-width:560px){.sa-hosts,.sa-filters,.sa-destination,.sa-activity{grid-template-columns:minmax(0,1fr)}.sa-host{display:grid;grid-template-columns:112px minmax(0,1fr);align-items:center}.sa-host img{width:112px;height:116px}.sa-host strong{font-size:23px}.sa-host span{padding:14px}.sa-destination h2,.sa-destination h3{font-size:30px}.sa-activity{gap:16px}.sa-filters{padding:16px}.sa-destination{gap:14px}.sa-resource-links{flex-direction:column;gap:16px}}
.sa-host:not(:has(img)){grid-template-columns:1fr;background:#e7edf4}.sa-destination:not(:has(figure)){grid-template-columns:1fr}.trip-content{padding-top:32px;padding-bottom:48px}.trip-content h2,.sa-providers h2{font:700 32px/1.15 var(--disp);margin:32px 0 16px}.trip-content h3{font:700 25px/1.2 var(--disp);margin-bottom:8px}.trip-content p,.sa-providers p{line-height:1.6;color:var(--mut)}.trip-content button,.sa-plan-actions button{min-height:44px;padding:10px 16px;border:1px solid #a9b7ca;border-radius:6px;background:white;color:var(--ink);cursor:pointer;font-size:14px;font-weight:600}.trip-content button[type=submit]{background:var(--ink);color:white}.sa-plan-actions{margin-top:16px}.sa-plan-actions button[aria-pressed=true]{background:#e6f3ed;color:#17553d}.trip-content input,.trip-content select{font:inherit;width:100%;min-width:0;max-width:100%;padding:10px;height:46px;border:1px solid #b8c5d5;border-radius:6px;background:white;color:var(--ink);appearance:auto;box-sizing:border-box}.trip-content input[type=date]{appearance:none;-webkit-appearance:none}.trip-day{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:30px;border-top:1px solid var(--lined);padding:24px 0}.trip-day label{display:grid;gap:8px;margin-bottom:16px;font-weight:600;min-width:0}.trip-tools{display:flex;gap:12px;flex-wrap:wrap;margin:22px 0}.trip-saved{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--lined);padding:20px 0}.trip-saved h3{font:700 26px var(--disp)}.trip-saved a{display:inline-block;margin-top:8px}.sa-providers{margin-top:40px;border-top:1px solid var(--lined)}#tripMessage{font-weight:600;color:#17553d;min-height:24px}
@media(max-width:560px){.trip-content .sa-filters,.trip-day{grid-template-columns:minmax(0,1fr)}.trip-saved{align-items:flex-start;flex-direction:column}.trip-day{gap:16px}}
@media print{body *{visibility:hidden}#tripPlanner,#tripPlanner *{visibility:visible}#tripPlanner{display:block!important;position:absolute;inset:0}#tripPlanner .pagehead{background:white;color:black}#tripPlanner h1{color:black}#tripStay,.trip-tools,#tripBrowse,#tripPlanner button{display:none!important}.trip-day,.trip-saved{break-inside:avoid}#siteNav{display:none}}

/* Custom travel identity; colours classify experiences and do not indicate grades. */
.sa-travel-brand{display:flex;align-items:center;gap:16px;margin:0 0 28px;padding:0 0 22px;border-bottom:1px solid #d7dedb}
.sa-travel-brand img{width:64px;height:64px;flex-shrink:0}
.sa-travel-brand span{display:block;font-size:10px;font-weight:700;letter-spacing:1.8px;text-transform:uppercase;color:#4a6058;margin-bottom:6px}
.sa-travel-brand strong{display:block;font:700 clamp(23px,2.4vw,30px)/1.1 var(--disp);color:#102f29}
.sa-home{background:#f1f5ef}
.sa-home .sa-intro>button{background:#006c49;border-color:#006c49}
.sa-interest-nav{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 24px}
.sa-interest-nav button{background:white;color:#172b32;border:1px solid #cbd5d0;border-bottom:4px solid var(--experience);border-radius:4px;padding:11px 17px;min-height:48px;font-size:14px;font-weight:600}
.sa-interest-nav button[aria-pressed=true]{background:var(--experience);border-color:var(--experience);color:white}
[data-sa-interest=scenery],[data-sa-category=scenery]{--experience:#006c49}
[data-sa-interest=culture],[data-sa-category=culture]{--experience:#b9332e}
[data-sa-interest=food],[data-sa-category=food]{--experience:#896100}
[data-sa-interest=coast],[data-sa-category=coast]{--experience:#1769ad}
[data-sa-interest=wildlife],[data-sa-category=wildlife]{--experience:#172b32}
[data-sa-interest=adventure],[data-sa-category=adventure]{--experience:#a7481e}
.sa-activity .sa-meta{color:var(--experience);font-weight:650}
.sa-activity .sa-meta:before{content:"";display:inline-block;width:18px;height:3px;background:var(--experience);margin-right:8px;vertical-align:middle}
.sa-interest-nav button:hover{box-shadow:0 0 0 1px var(--experience)}
.sa-interest-nav button:focus-visible,.sa-home button:focus-visible{outline:3px solid #1769ad;outline-offset:4px}
@media(max-width:560px){.sa-travel-brand{gap:12px}.sa-travel-brand img{width:52px;height:52px}.sa-travel-brand span{font-size:9px;letter-spacing:1.3px}.sa-interest-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.sa-interest-nav button{text-align:left;padding:10px 12px}}
/* One safari planning flow, shared filters and selection. */
#tabSafari .cfilt{padding:24px 0;background:#f2f5f4}#tabSafari .cfrow{display:flex;flex-wrap:wrap;gap:22px}#tabSafari .cfg-sel select{width:100%;min-height:44px;font:inherit;padding:9px;background:white;border:1px solid #b8c5d5;border-radius:5px}#tabSafari .cfg-sel{flex:1 1 240px;min-width:0}#tabSafari .cfg{min-width:0}
.safari-guide{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:30px;padding-top:32px;padding-bottom:32px;align-items:center}.safari-guide img{width:100%;height:auto;border-radius:6px}.safari-guide h2,.safari-options h2{font:700 32px/1.1 var(--disp);margin:8px 0 14px}.safari-guide p{line-height:1.6;margin-bottom:14px;color:var(--mut)}.safari-guide small{display:block;margin-top:14px;color:var(--mut);font-size:11px}.safari-guide-overview{grid-column:1/-1}.safari-results{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,1fr);gap:36px}.safari-options,.safari-summary{min-width:0}#tabSafari .cgridband{padding-top:0;background:#fff}#tabSafari #cGrid{display:grid;grid-template-columns:1fr;gap:0}.safari-stay{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:20px 16px;border:0;border-top:1px solid #d9e1e8;background:white;text-align:left;color:var(--ink);cursor:pointer}.safari-stay strong{font:700 24px var(--disp)}.safari-stay small{display:block;font-size:12px;color:var(--mut);margin-top:6px}.safari-stay.selected{background:#edf4f1;box-shadow:inset 0 0 0 2px #27715a}.safari-price{font-weight:700;white-space:nowrap;text-align:right}.safari-summary .cpanel{background:#f2f5f4;border:1px solid #d9e1e8;margin-bottom:24px}.safari-stay:focus-visible{outline:3px solid #1769ad;outline-offset:-3px}#sfBook:disabled{opacity:.5;cursor:default}
@media(max-width:700px){.safari-guide,.safari-results{grid-template-columns:1fr;gap:24px}.safari-guide{padding-top:24px;padding-bottom:24px}.safari-stay{padding:18px 10px;gap:12px}.safari-stay strong{font-size:22px}.safari-price{font-size:14px}#tabSafari .cfrow{gap:18px}}
