
@font-face{font-family:Campaign;src:url('assets/campaign-sans.ttf');font-display:swap}
@font-face{font-family:Campaign;src:url('assets/campaign-sans-extra-bold.ttf');font-weight:800;font-display:swap}
:root{--navy:#151515;--blue:#00a8ee;--orange:#fc9606;--ink:#151515;--cream:#f6f6ff}
html{scroll-padding-top:90px}body{font-family:Campaign,Arial,sans-serif}h1,h2,h3{font-weight:800}h2{font-size:34px}a:focus-visible,button:focus-visible{outline:3px solid #0b4770;outline-offset:4px}
.skip{position:absolute;top:-70px;background:white;padding:15px;z-index:10}.skip:focus{top:0}
.top{background:white;color:#151515;border-bottom:2px solid #efefef;padding:0;display:block}
.nav-wrap{max-width:1240px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:8px 4%;gap:25px}
.top .logo{width:140px;height:78px;object-fit:contain;display:block}.top nav{display:flex;gap:25px;align-items:center;flex-wrap:wrap}.top nav a{font-size:14px;font-weight:800;color:#151515;text-decoration:none}
.top nav .nav-book{color:#fff;background:var(--orange);border-radius:30px;padding:10px 22px}
.hero{min-height:530px;position:relative;justify-content:center;text-align:center;padding:65px 7%;background-image:linear-gradient(rgba(0,36,59,.35),rgba(0,36,59,.4)),url('assets/ghana-1.jpg');background-position:center 58%}
.hero>div{max-width:1050px}.hero .tag{color:white;font-size:14px;letter-spacing:.16em}.hero h1{font-size:clamp(38px,5vw,62px);text-wrap:balance;margin:16px 0 20px;color:white;text-shadow:0 2px 8px #073d55}.hero p{max-width:760px;margin:0 auto 25px;font-size:19px;text-shadow:0 1px 4px #17384c}
.btn{background:var(--orange);color:#151515;border-radius:35px;font-family:inherit;font-weight:800;padding:16px 32px;line-height:1.4}.btn:hover{background:#ffad35}
.section{max-width:1300px;padding:60px 5%}.eyebrow{color:#007caf;font-weight:800}.intro{font-size:18px}.sand{background:#f6f6ff}
.departure-countdown{background:white;color:#151515;padding:40px 5%}.departure-countdown h2{font-size:52px;color:#151515;line-height:1.18;max-width:1050px;margin:0 auto 14px}.departure-countdown p{color:#151515}.departure-countdown .trip-date{font-size:28px;margin:0 0 6px}.departure-countdown .trip-duration{font-size:23px;font-weight:800;margin-bottom:18px}.land-only{max-width:1170px;margin:0 auto!important;background:#fff3df;border-left:5px solid #fc9606;padding:12px 15px;font-size:16px}
.countdown{margin:28px auto 0;gap:25px}.countdown>div{width:auto;min-width:70px;background:transparent;border:0;border-radius:0;padding:0}.countdown strong{color:#151515;font-size:36px}.countdown span{font-size:12px;font-weight:800;letter-spacing:0}
.tile{border:1px solid #d9deed;border-radius:8px;box-shadow:none}.tile-body{padding:25px}.tile h3{font-size:23px}.tile img{height:235px}
#itinerary .eyebrow{margin-bottom:8px}#itinerary h2,#stay>h2{background:var(--blue);color:white;padding:21px;text-align:center;margin-bottom:30px;font-size:32px}
.day{padding:30px 20px;grid-template-columns:145px 1fr;gap:35px}.daydate{color:#007caf}.daydate b{font-size:23px;font-weight:800}.daydate span{color:#686d78;font-size:14px}.day h3{font-size:27px}.day p{color:#444b58}
#pricing{max-width:none;background:#188bf6;text-align:center;color:white;padding:45px max(5%,calc((100% - 1170px)/2))}#pricing h2,#pricing .eyebrow,#pricing>.subtle{color:white}#pricing .eyebrow{margin-bottom:8px}.pricing{gap:32px}.pricecard{color:#151515;border:0;border-radius:10px;padding:36px 25px}.price{font-size:54px;line-height:1.2;margin:22px 0 12px}.price small{font-size:14px}.pricecard strong{font-size:23px}.pricecard p b{font-size:19px}
.terms h2{text-align:center}.terms dl{display:grid;grid-template-columns:210px 1fr;gap:20px 28px}.terms dt{margin:0}.terms dd{margin:0}.terms a{color:#007caf}
.formbox{max-width:810px;border:1px solid #d6dce7;border-radius:12px;padding:32px 35px;box-shadow:0 8px 25px #15243d12}.form-logo{display:block;width:200px;height:125px;object-fit:contain;margin:0 auto 15px}.formbox h2,.formbox>.eyebrow,.formbox>p{text-align:center}.formbox .btn{border-radius:8px}.formbox input,.formbox select{font-family:inherit}.field{gap:5px}.field label{font-size:14px}.field small{font-size:13px}
footer{background:#188bf6;color:white;padding:40px 5% 22px;font-size:16px}.footer-grid,.legal{max-width:1170px;margin:auto}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr 1fr;gap:45px}.footer-grid h2{font-size:28px;color:white}.footer-grid h3{font-size:20px;color:white}.footer-grid a{color:white;overflow-wrap:anywhere}.footer-grid>div:nth-child(2)>a{display:block;font-size:14px}.legal{border-top:1px solid #ffffff77;margin-top:25px;padding-top:25px;font-size:14px}.legal p{margin-bottom:9px}
@media(max-width:900px){.top nav{gap:14px}.departure-countdown h2{font-size:40px}.terms dl{grid-template-columns:160px 1fr;gap:18px}}
@media(max-width:750px){.grid,.pricing,.two,.rowphoto,.formgrid{grid-template-columns:1fr}.hero{min-height:410px}.hero h1{font-size:38px}.hero p{font-size:17px}.section{padding:45px 5%}.day{grid-template-columns:1fr;gap:12px;padding:28px 20px}.day h3{font-size:25px}.terms dl{display:block}.terms dt{margin-top:22px;margin-bottom:6px}}
@media(max-width:650px){.nav-wrap{flex-direction:column;gap:6px;padding-bottom:15px}.top .logo{width:125px;height:75px}.top nav{justify-content:center;gap:10px 18px}.top nav a{font-size:12px}.top nav .nav-book{padding:7px 18px}.hero{padding:40px 6%}.hero h1{font-size:34px}.hero .tag{font-size:12px}.departure-countdown h2{font-size:34px}.departure-countdown .trip-date{font-size:24px}.departure-countdown .trip-duration{font-size:20px}.countdown{gap:15px}.countdown>div{min-width:55px}.countdown strong{font-size:30px}.countdown span{font-size:11px}h2{font-size:29px}#itinerary h2,#stay>h2{font-size:25px}.formbox{padding:25px 22px}.footer-grid{grid-template-columns:1fr;gap:25px}.price{font-size:48px}.land-only{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
