@import url("https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700&family=Poppins:wght@500;600;700&display=swap");
/* JAFA public website v0.4. Scoped to public pages; dashboard styles retained. */
.jafa-public{--green:#107e7d;--dark:#0c6463;--lime:#fdf6e0;--ink:#0b132b;--muted:#667085;--line:#e4e7ec;--bg:#fff;background:#fff;color:var(--ink);font-family:Outfit,system-ui,sans-serif;font-size:15px}
.jafa-public h1,.jafa-public h2,.jafa-public h3,.jafa-public .brand{font-family:Poppins,system-ui,sans-serif;letter-spacing:-.5px}.jafa-public .btn,.jafa-public button[type=submit]{border-radius:6px;font-size:13px;padding:12px 18px}.jafa-public .btn.secondary{background:#e6f3f3;color:#0c6463}.jafa-public .btn.light{background:#fdf6e0;color:#0b132b}.jafa-public a:focus-visible,.jafa-public button:focus-visible{outline:3px solid #e3b505;outline-offset:4px}.jafa-public input:focus,.jafa-public select:focus{border-color:#107e7d;box-shadow:0 0 0 3px #107e7d18}
.jafa-public .public-header{height:94px}.jafa-public .public-header nav{font-size:14px}.jafa-public .website-contact-strip{background:#f7f8fa;border-color:#e4e7ec;color:#667085}.jafa-public .website-top-contacts a,.jafa-public .website-brand>small{color:#667085}.jafa-public .website-brand>small{letter-spacing:.2px;font-size:10px}.jafa-public .brand{color:#107e7d}.jafa-public .public-main{max-width:1250px;padding:0 30px 55px}
.jafa-intro{max-width:1250px;margin:12px auto 48px;padding:28px 30px 36px;display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.intro-label{font-weight:600;color:#107e7d;font-size:14px;margin:0 0 20px}.intro-copy h1{font-size:clamp(30px,3.2vw,44px);line-height:1.3;letter-spacing:-1.3px;font-weight:600;margin:0 0 20px}.intro-copy>p:not(.intro-label){max-width:440px;font-size:16px;line-height:1.8;color:#667085}.intro-actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin:27px 0}.intro-consult{font-size:13px;text-decoration:underline;text-underline-offset:5px}.intro-values{display:flex;gap:20px;color:#667085;font-size:12px;margin-top:32px}.intro-values span:before{content:'✓';color:#107e7d;margin-right:7px}.intro-photo{position:relative;display:block;height:390px;border-radius:8px;overflow:hidden;background:#f0edee}.intro-photo>img{width:100%;height:100%;object-fit:cover}.intro-caption{position:absolute;inset:auto 0 0;padding:52px 24px 22px;background:linear-gradient(transparent,#0b132bea);color:white;display:grid;gap:7px}.intro-caption>span{font-size:12px;color:#fff}.intro-caption strong{font-size:17px;line-height:1.45;font-weight:600}.jafa-intro:not(:has(.intro-photo)){grid-template-columns:1fr;max-width:1250px;padding-top:45px;padding-bottom:45px;background:#f8fafb}.jafa-intro:not(:has(.intro-photo)) .intro-copy>p{max-width:600px}
.package-section{scroll-margin-top:25px}.jafa-public .page-heading{margin-bottom:20px}.jafa-public .page-heading h2{font-size:26px;margin:0 0 8px}.jafa-public .page-heading p{font-size:14px}.package-search{padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:12px}.package-search input{max-width:400px!important}.package-search select{max-width:210px!important}.package-search>a{font-size:12px}.jafa-public .package-grid{gap:24px;margin-top:25px}.jafa-public .package-card{border-radius:8px;box-shadow:none;display:flex;flex-direction:column;transition:border-color .2s}.jafa-public .package-card:hover{border-color:#107e7d}.jafa-public .package-image{height:215px;background:#f0edee}.package-no-photo{font-size:25px;font-weight:600;color:#107e7d;text-align:center}.package-no-photo small{display:block;font-size:12px;color:#667085;font-weight:400}.jafa-public .package-body{padding:20px;display:flex;flex-direction:column;flex:1}.package-date{font-size:12px;color:#107e7d;font-weight:600}.jafa-public .package-body h3{font-size:17px;line-height:1.5;margin:9px 0 12px}.jafa-public .package-body h3 a{color:#0b132b}.package-facts{color:#475467;font-size:13px;margin:0 0 10px}.package-facts span{margin:0 6px;color:#98a2b3}.package-hotel-names{font-size:12px;color:#667085;line-height:1.65;margin:0 0 12px}.package-availability{font-size:12px;color:#0c6463;margin:auto 0 0;padding-top:8px}.jafa-public .package-body .price{gap:10px;margin-top:16px;padding-top:16px}.jafa-public .package-body .price strong{font-family:Outfit,system-ui;font-size:23px;letter-spacing:-.5px;color:#107e7d}.jafa-public .package-image .pill{background:#fdf6e0;color:#725b03;border-radius:4px}.jafa-public .panel{border-radius:8px}.jafa-public .public-section{padding:55px 0}.jafa-about{display:grid;grid-template-columns:1fr 1fr;gap:65px;border-top:1px solid var(--line);margin-top:35px}.jafa-public .jafa-about h2{font-size:27px;line-height:1.5;margin:0 0 16px}.jafa-about p{color:#667085;font-size:14px;line-height:1.8}.about-points{display:grid;gap:22px}.about-points article{border-left:3px solid #e3b505;padding-left:19px}.about-points h3{font-size:15px;margin:0 0 5px}.about-points p{margin:0}.jafa-consult{padding:27px 30px;background:#f6f9f9;border:1px solid #dfebeb;border-radius:8px;display:flex;align-items:center;justify-content:space-between;gap:25px}.jafa-consult h2{font-size:21px;margin:0 0 8px}.jafa-consult p{font-size:14px;color:#667085;margin:0}.jafa-consult svg{width:19px;height:19px;flex-shrink:0}.jafa-consult .btn{white-space:nowrap}
.jafa-public .website-footer{background:#f8fafb;border-top:1px solid #e4e7ec;color:#475467}.jafa-public .website-footer-main{gap:55px}.jafa-public .website-footer-tagline,.jafa-public .website-footer-main h3{color:#0b132b}.jafa-public .website-footer-description,.jafa-public .website-footer-item>strong,.jafa-public .website-footer-bottom,.jafa-public .website-footer-bottom a{color:#667085}.jafa-public .website-footer-item>a{color:#475467}.jafa-public .website-map-link{color:#107e7d}.jafa-public .website-social-links>a{color:#107e7d;border-color:#d4e3e3;background:#fff}.jafa-public .website-social-links>a:hover{background:#107e7d;border-color:#107e7d;color:#fff}.jafa-public .website-wa-link{background:#107e7d;color:white;border-color:#107e7d}.jafa-public .website-footer-bottom{border-color:#e4e7ec;font-size:11px}
/* Package details and account pages share the same brand palette. */
.jafa-public .detail-cover,.jafa-public .booking-price-card,.jafa-public .public-hotel,.jafa-public .flight-ticket,.jafa-public .journey-day{border-radius:8px;border-color:#e4e7ec}.jafa-public .detail-heading h1{font-size:34px;letter-spacing:-.7px}.jafa-public .package-subnav{background:#ffffffed;border-color:#e4e7ec}.jafa-public .package-subnav a,.jafa-public .detail-tags,.jafa-public .detail-description,.jafa-public .hotel-location,.jafa-public .hotel-excerpt,.jafa-public .journey-day-body,.jafa-public .facilities-column li,.jafa-public .requirements-list,.jafa-public .booking-reassurance,.jafa-public .detail-breadcrumb{color:#667085}.jafa-public .section-kicker,.jafa-public .hotel-city-label{color:#107e7d;letter-spacing:.5px}.jafa-public .booking-main-price,.jafa-public .flight-ticket-route strong{font-family:Outfit,system-ui}.jafa-public .booking-price-card{box-shadow:none}.jafa-public .flight-ticket-top,.jafa-public .flight-ticket-foot,.jafa-public .equipment-chips>span{background:#f8fafb;border-color:#e4e7ec;color:#475467}.jafa-public .availability-banner,.jafa-public .journey-day-number,.jafa-public .detail-payment-note,.jafa-public .room-choice:has(input:checked){background:#e6f3f3;color:#0c6463}.jafa-public .room-choice:has(input:checked){border-color:#107e7d}.jafa-public .cover-empty{background:#107e7d;color:#fff}.jafa-public .cover-empty strong,.jafa-public .hotel-photo-empty{font-family:Poppins,system-ui}.jafa-public .hotel-photo-empty{background:#f0edee;color:#667085}.jafa-public .eyebrow{color:#107e7d;letter-spacing:.5px}.jafa-public .detail-section h2{font-size:23px}.jafa-public .hotel-stars{color:#b18d04}.jafa-public .journey-facts span{color:#667085}.jafa-public .travel-dialog::backdrop{background:#0b132bb3}
@media(max-width:1000px){.jafa-intro{gap:28px}.intro-photo{height:360px}.intro-copy h1{font-size:34px}.intro-actions{gap:15px}.jafa-about{gap:35px}.jafa-consult{align-items:flex-start;flex-direction:column}.jafa-public .website-footer-main{gap:30px}}
@media(max-width:720px){.jafa-public .public-header{height:82px}.jafa-public .public-header nav{font-size:12px;gap:13px}.jafa-public .public-main{padding:0 20px 35px}.jafa-intro{grid-template-columns:1fr;margin:0 auto 32px;padding:22px 20px 0;gap:25px}.intro-copy h1{font-size:32px;letter-spacing:-.8px}.intro-copy>p:not(.intro-label){font-size:15px}.intro-label{font-size:12px;margin-bottom:14px}.intro-values{gap:17px;font-size:11px;margin-top:22px}.intro-photo{height:300px}.intro-caption{padding:45px 20px 20px}.intro-caption strong{font-size:15px}.jafa-public .page-heading h2{font-size:23px}.package-search{display:grid;grid-template-columns:1fr 1fr}.package-search input{grid-column:1/-1;max-width:none!important}.package-search select{max-width:none!important;min-width:0}.jafa-public .package-image{height:230px}.jafa-about{grid-template-columns:1fr;gap:22px;margin-top:25px}.jafa-public .jafa-about h2{font-size:23px}.jafa-public .public-section{padding:35px 0}.jafa-consult{padding:23px}.jafa-consult h2{font-size:20px}.jafa-public .detail-heading h1{font-size:26px}.jafa-public .website-footer-main{gap:27px}.jafa-public .detail-cover{border-radius:8px}.jafa-public .travel-detail{padding-bottom:100px}}
@media(prefers-reduced-motion:reduce){.jafa-public *{scroll-behavior:auto!important;transition:none!important}}
.jafa-public .package-airline{display:flex;align-items:center;gap:9px;font-size:12px;color:#475467;margin:0 0 10px}.package-airline img{width:65px;height:28px;object-fit:contain}
.campaign-section{max-width:1250px;margin:0 auto 48px;padding:0 30px}.campaign-section h2{font-size:26px;margin:0 0 8px}.campaign-section p{color:#667085;font-size:14px}.campaign-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.campaign-grid:has(>.campaign-banner:only-child){grid-template-columns:1fr}.campaign-banner{display:block;border:1px solid #e4e7ec;border-radius:8px;overflow:hidden;background:white}.campaign-banner picture,.campaign-banner img{display:block;width:100%;height:auto}.campaign-banner>span{display:flex;justify-content:space-between;gap:18px;padding:15px 18px;font-weight:500}.campaign-banner:hover{border-color:#107e7d}.all-packages{text-align:center;margin-top:30px}.jafa-public .intro-photo{display:block}.jafa-public .jafa-intro:has(.intro-photo){grid-template-columns:1fr 1fr}.jafa-public .jafa-intro h1{white-space:pre-line}.jafa-public .intro-photo img{display:block;width:100%;height:100%;object-fit:cover}@media(max-width:720px){.campaign-section{padding:0 20px;margin-bottom:35px}.campaign-grid{grid-template-columns:1fr;gap:18px}.campaign-section h2{font-size:23px}.jafa-public .jafa-intro:has(.intro-photo){grid-template-columns:1fr}.jafa-public .intro-photo{height:330px}}
