/* Fancy Oceans Uganda Edition: presentation layer only.
   This file intentionally styles existing Booking Engine / Marketplace Manager markup
   and does not replace booking, payment, permissions or data logic. */

/* ---------- Shared plugin shell ---------- */
.fancy-oceans-v4 .fo-app,
.fancy-oceans-v4 .fomm-app,
.fancy-oceans-v4 .fo-page,
.fancy-oceans-v4 .fomm-page{font-family:inherit;color:var(--fo-text)}
.fancy-oceans-v4 .fo-shell{width:min(1240px,calc(100% - 36px));margin-inline:auto}
.fancy-oceans-v4 .fo-section,
.fancy-oceans-v4 .fomm-section{padding:72px 0}
.fancy-oceans-v4 .fo-soft{background:linear-gradient(180deg,#f7fbff,#eef8ff)}
.fancy-oceans-v4 .fo-eyebrow,
.fancy-oceans-v4 .fomm-kicker,
.fancy-oceans-v4 .fo-kicker{display:inline-flex;align-items:center;gap:8px;color:var(--fo-blue-deep);font-size:11px;font-weight:900;letter-spacing:.15em;text-transform:uppercase}
.fancy-oceans-v4 .fo-eyebrow:after,
.fancy-oceans-v4 .fomm-kicker:after,
.fancy-oceans-v4 .fo-kicker:after{content:"";width:34px;height:2px;border-radius:3px;background:var(--fo-gold)}
.fancy-oceans-v4 h1,.fancy-oceans-v4 h2,.fancy-oceans-v4 h3{color:var(--fo-ink);letter-spacing:-.035em}
.fancy-oceans-v4 h1{font-weight:900}
.fancy-oceans-v4 h2{font-weight:880}
.fancy-oceans-v4 p{line-height:1.65}

.fancy-oceans-v4 .fo-btn,
.fancy-oceans-v4 .fomm-btn{appearance:none;border:0;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:12px 20px;border-radius:13px;background:linear-gradient(135deg,var(--fo-blue),#0c72ce);color:#fff!important;text-decoration:none!important;font-weight:850;font-size:13px;cursor:pointer;box-shadow:0 10px 24px rgba(33,143,234,.19);transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}
.fancy-oceans-v4 .fo-btn:hover,
.fancy-oceans-v4 .fomm-btn:hover{transform:translateY(-1px);box-shadow:0 14px 29px rgba(33,143,234,.25);filter:saturate(1.08)}
.fancy-oceans-v4 .fo-btn-light,
.fancy-oceans-v4 .fomm-btn-light{background:#eff8ff;color:var(--fo-blue-deep)!important;box-shadow:none;border:1px solid #d2e9fa}
.fancy-oceans-v4 .fo-wide,
.fancy-oceans-v4 .fomm-btn-wide{width:100%}
.fancy-oceans-v4 .fomm-btn-small{min-height:36px;padding:8px 13px;font-size:12px}

.fancy-oceans-v4 .fo-panel,
.fancy-oceans-v4 .fo-summary,
.fancy-oceans-v4 .fo-search-card,
.fancy-oceans-v4 .fomm-card{background:rgba(255,255,255,.97);border:1px solid var(--fo-line);border-radius:var(--fo-radius);box-shadow:var(--fo-shadow)}
.fancy-oceans-v4 .fo-panel,
.fancy-oceans-v4 .fomm-card{padding:26px}
.fancy-oceans-v4 .fomm-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:18px}
.fancy-oceans-v4 .fomm-card-head h2,.fancy-oceans-v4 .fomm-card-head h3{margin:0}

.fancy-oceans-v4 input,
.fancy-oceans-v4 select,
.fancy-oceans-v4 textarea{width:100%;min-height:46px;border:1px solid #ccdeec!important;border-radius:12px!important;background:#fff!important;color:var(--fo-ink)!important;padding:10px 13px!important;box-shadow:0 1px 0 rgba(4,60,101,.02);font:inherit;outline:none;transition:border-color .18s,box-shadow .18s}
.fancy-oceans-v4 textarea{min-height:110px;resize:vertical}
.fancy-oceans-v4 input:focus,
.fancy-oceans-v4 select:focus,
.fancy-oceans-v4 textarea:focus{border-color:var(--fo-blue)!important;box-shadow:0 0 0 4px rgba(33,143,234,.10)!important}
.fancy-oceans-v4 label{display:block;color:#36566f;font-size:12px;font-weight:800}
.fancy-oceans-v4 label>input,.fancy-oceans-v4 label>select,.fancy-oceans-v4 label>textarea{margin-top:7px}

/* ---------- Homepage ---------- */
.fancy-oceans-v4 .fo-hero{position:relative;min-height:465px;display:flex;align-items:center;background-image:linear-gradient(90deg,rgba(2,34,58,.83) 0%,rgba(4,54,89,.58) 48%,rgba(3,41,70,.15) 75%),url('../images/uganda-sunset.jpeg')!important;background-position:center 52%;background-size:cover;overflow:hidden}
.fancy-oceans-v4 .fo-hero:after{content:"";position:absolute;inset:auto 0 0;height:150px;background:linear-gradient(to top,rgba(4,44,75,.32),transparent);pointer-events:none}
.fancy-oceans-v4 .fo-hero-inner{position:relative;z-index:2;padding:78px 0 118px;max-width:780px;margin-left:max(calc((100vw - 1240px)/2),18px)!important;margin-right:auto!important;width:min(760px,calc(100% - 36px))!important}
.fancy-oceans-v4 .fo-hero-inner .fo-kicker{color:#d8effc}
.fancy-oceans-v4 .fo-hero-inner h1{margin:11px 0 13px;color:#fff;font-size:clamp(42px,5.6vw,76px);line-height:.98;max-width:750px;text-shadow:0 2px 18px rgba(0,0,0,.15)}
.fancy-oceans-v4 .fo-hero-inner p{max-width:680px;color:#eff8fd;font-size:17px;margin:0 0 22px}
.fancy-oceans-v4 .fo-trust{display:flex;flex-wrap:wrap;gap:9px 13px}
.fancy-oceans-v4 .fo-trust span{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(8px);border-radius:999px;padding:7px 11px;color:#fff;font-size:11px;font-weight:800}
.fancy-oceans-v4 .fo-search-wrap{position:relative;z-index:10;margin-top:-70px}
.fancy-oceans-v4 .fo-home-search{padding:22px;border-radius:24px}
.fancy-oceans-v4 .fo-search-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:2px 3px 16px;border-bottom:1px solid #e4eef6;margin-bottom:17px}
.fancy-oceans-v4 .fo-search-heading span{color:var(--fo-blue);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.13em}
.fancy-oceans-v4 .fo-search-heading h2{margin:3px 0 0;font-size:24px}
.fancy-oceans-v4 .fo-search-heading small{color:var(--fo-muted);font-weight:700}
.fancy-oceans-v4 .fo-search-fields{display:grid;grid-template-columns:1.2fr 44px 1.2fr 1fr .82fr 1fr;gap:11px;align-items:end}
.fancy-oceans-v4 .fo-search-fields .fo-swap{width:42px;height:42px;border-radius:50%;border:1px solid #d7e6f1;background:#f5fbff;color:var(--fo-blue);font-weight:900;font-size:18px;margin-bottom:2px;cursor:pointer}
.fancy-oceans-v4 .fo-search-btn{min-height:48px}
.fancy-oceans-v4 .fo-quick-dates{display:flex;gap:7px;margin-top:13px}
.fancy-oceans-v4 .fo-quick-dates button{border:0;border-radius:999px;background:#eff8ff;color:#32607e;padding:7px 11px;font-size:11px;font-weight:800;cursor:pointer}
.fancy-oceans-v4 .fo-trust-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin:19px -22px -22px;border-top:1px solid #e4eef6;background:#e6f0f6;border-radius:0 0 24px 24px;overflow:hidden}
.fancy-oceans-v4 .fo-trust-strip>div{background:#f7fbff;padding:14px 17px}
.fancy-oceans-v4 .fo-trust-strip b{display:block;color:var(--fo-ink);font-size:12px;margin-bottom:3px}
.fancy-oceans-v4 .fo-trust-strip span{font-size:10px;color:var(--fo-muted)}

.fancy-oceans-v4 .fo-section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px}
.fancy-oceans-v4 .fo-section-head span{color:var(--fo-blue);font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.fancy-oceans-v4 .fo-section-head h2{margin:5px 0 6px;font-size:clamp(28px,3vw,43px)}
.fancy-oceans-v4 .fo-section-head p{margin:0;color:var(--fo-muted)}
.fancy-oceans-v4 .fo-section-head>a{color:var(--fo-blue-deep)!important;font-weight:850;text-decoration:none!important;white-space:nowrap}
.fancy-oceans-v4 .fo-grid{display:grid;gap:19px}
.fancy-oceans-v4 .fo-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.fancy-oceans-v4 .fo-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.fancy-oceans-v4 .fo-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.fancy-oceans-v4 .fo-grid-5{grid-template-columns:repeat(5,minmax(0,1fr))}
.fancy-oceans-v4 .fo-offer{min-height:190px;padding:27px;border-radius:22px;position:relative;overflow:hidden;border:1px solid rgba(0,0,0,.04)}
.fancy-oceans-v4 .fo-offer:after{content:"";position:absolute;width:120px;height:120px;border-radius:50%;right:-40px;bottom:-40px;background:rgba(255,255,255,.22)}
.fancy-oceans-v4 .fo-offer small{font-weight:900;letter-spacing:.12em}
.fancy-oceans-v4 .fo-offer h3{font-size:23px;margin:12px 0 24px;max-width:360px}
.fancy-oceans-v4 .fo-offer b{display:inline-flex;padding:8px 12px;background:rgba(255,255,255,.78);border-radius:999px;color:var(--fo-ink)}
.fancy-oceans-v4 .fo-offer-blue{background:linear-gradient(135deg,#dff2ff,#c7e8ff)}
.fancy-oceans-v4 .fo-offer-yellow{background:linear-gradient(135deg,#fff5cd,#ffe59a)}
.fancy-oceans-v4 .fo-offer-aqua{background:linear-gradient(135deg,#dffafa,#c6edf0)}

.fancy-oceans-v4 .fo-image-card,
.fancy-oceans-v4 .fo-destination-card{position:relative;display:block;min-height:255px;border-radius:21px;overflow:hidden;text-decoration:none!important;background:#0d3d5f;box-shadow:0 12px 27px rgba(8,60,98,.10);transform:translateZ(0)}
.fancy-oceans-v4 .fo-image-card img,
.fancy-oceans-v4 .fo-destination-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .45s ease,filter .4s ease}
.fancy-oceans-v4 .fo-image-card:after,
.fancy-oceans-v4 .fo-destination-card:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(2,27,47,.88),rgba(2,31,54,.03) 66%)}
.fancy-oceans-v4 .fo-image-card>div,
.fancy-oceans-v4 .fo-destination-card>div{position:absolute;left:18px;right:18px;bottom:17px;z-index:2;color:#fff}
.fancy-oceans-v4 .fo-image-card h3,
.fancy-oceans-v4 .fo-destination-card h3{color:#fff;margin:2px 0 5px;font-size:23px}
.fancy-oceans-v4 .fo-image-card small,
.fancy-oceans-v4 .fo-destination-card small{color:#d8edf8;font-weight:750}
.fancy-oceans-v4 .fo-image-card span{color:#fff;font-size:12px;font-weight:850}
.fancy-oceans-v4 .fo-image-card:hover img,
.fancy-oceans-v4 .fo-destination-card:hover img{transform:scale(1.045)}
.fancy-oceans-v4 .fo-split{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.fancy-oceans-v4 .fo-split-photo-wrap{position:relative;border-radius:28px;overflow:hidden;min-height:440px;box-shadow:var(--fo-shadow)}
.fancy-oceans-v4 .fo-split-photo-wrap img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.fancy-oceans-v4 .fo-photo-chip{position:absolute;left:20px;bottom:20px;background:#fff;border-radius:999px;padding:9px 13px;font-size:11px;font-weight:850;color:var(--fo-blue-deep);box-shadow:0 8px 22px rgba(0,0,0,.12)}
.fancy-oceans-v4 .fo-split h2{font-size:clamp(31px,3.5vw,48px);margin:8px 0 15px}
.fancy-oceans-v4 .fo-ticks{display:grid;gap:13px;margin:20px 0 27px}
.fancy-oceans-v4 .fo-ticks>div{display:flex;gap:11px;align-items:flex-start}
.fancy-oceans-v4 .fo-ticks i{font-style:normal;width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:#e3f8ee;color:#0d8b57;font-weight:900;flex:none}
.fancy-oceans-v4 .fo-ticks b,.fancy-oceans-v4 .fo-ticks small{display:block}
.fancy-oceans-v4 .fo-ticks small{margin-top:3px;color:var(--fo-muted);line-height:1.5}
.fancy-oceans-v4 .fo-operator-card{background:#fff;border:1px solid var(--fo-line);border-radius:19px;overflow:hidden;box-shadow:0 11px 25px rgba(9,63,101,.08)}
.fancy-oceans-v4 .fo-operator-card>img{width:100%;height:145px;object-fit:cover;background:#eaf6ff}
.fancy-oceans-v4 .fo-operator-body{padding:17px}
.fancy-oceans-v4 .fo-operator-body h3{margin:8px 0 12px;font-size:18px}
.fancy-oceans-v4 .fo-verified{display:inline-flex;padding:5px 8px;border-radius:999px;background:#e7f8ef;color:#16834f;font-size:10px;font-weight:850}
.fancy-oceans-v4 .fo-operator-meta{display:flex;justify-content:space-between;color:var(--fo-muted);font-size:10px;font-weight:750}
.fancy-oceans-v4 .fo-step{background:#fff;border:1px solid var(--fo-line);border-radius:20px;padding:24px;box-shadow:0 8px 22px rgba(10,65,103,.05)}
.fancy-oceans-v4 .fo-step>b{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#eaf6ff;color:var(--fo-blue);font-size:12px}
.fancy-oceans-v4 .fo-step h3{font-size:20px;margin:17px 0 6px}.fancy-oceans-v4 .fo-step p{margin:0;color:var(--fo-muted);font-size:13px}

/* ---------- Generic page heroes ---------- */
.fancy-oceans-v4 .fo-page-hero,
.fancy-oceans-v4 .fo-manage-hero,
.fancy-oceans-v4 .fo-track-hero,
.fancy-oceans-v4 .fo-help-hero,
.fancy-oceans-v4 .fo-offers-hero,
.fancy-oceans-v4 .fo-destination-hero,
.fancy-oceans-v4 .fo-partner-hero,
.fancy-oceans-v4 .fo-account-head,
.fancy-oceans-v4 .fomm-photo-hero{position:relative;overflow:hidden;background-image:linear-gradient(90deg,rgba(3,42,71,.88),rgba(4,78,119,.42)),url('../images/uganda-highlands.jpeg')!important;background-size:cover!important;background-position:center!important;color:#fff;padding:78px 0}
.fancy-oceans-v4 .fo-page-hero:after,
.fancy-oceans-v4 .fo-manage-hero:after,
.fancy-oceans-v4 .fo-track-hero:after,
.fancy-oceans-v4 .fo-help-hero:after,
.fancy-oceans-v4 .fo-offers-hero:after,
.fancy-oceans-v4 .fo-destination-hero:after,
.fancy-oceans-v4 .fo-partner-hero:after,
.fancy-oceans-v4 .fo-account-head:after,
.fancy-oceans-v4 .fomm-photo-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(5,50,83,.16),transparent 60%);pointer-events:none}
.fancy-oceans-v4 .fo-page-hero>.fo-shell,
.fancy-oceans-v4 .fo-manage-hero>.fo-shell,
.fancy-oceans-v4 .fo-track-hero>.fo-shell,
.fancy-oceans-v4 .fo-help-hero>.fo-shell,
.fancy-oceans-v4 .fo-offers-hero>.fo-shell,
.fancy-oceans-v4 .fo-destination-hero>.fo-shell,
.fancy-oceans-v4 .fomm-photo-hero>.fo-shell{position:relative;z-index:2}
.fancy-oceans-v4 .fo-page-hero span,
.fancy-oceans-v4 .fomm-photo-hero span{font-size:11px;font-weight:900;letter-spacing:.15em;text-transform:uppercase;color:#d5effb}
.fancy-oceans-v4 .fo-page-hero h1,
.fancy-oceans-v4 .fo-manage-hero h1,
.fancy-oceans-v4 .fo-track-hero h1,
.fancy-oceans-v4 .fo-help-hero h1,
.fancy-oceans-v4 .fo-offers-hero h1,
.fancy-oceans-v4 .fo-destination-hero h1,
.fancy-oceans-v4 .fo-partner-hero h1,
.fancy-oceans-v4 .fo-account-head h1,
.fancy-oceans-v4 .fomm-photo-hero h1{color:#fff;font-size:clamp(36px,4.7vw,62px);margin:8px 0 10px;max-width:820px}
.fancy-oceans-v4 .fo-page-hero p,
.fancy-oceans-v4 .fo-manage-hero p,
.fancy-oceans-v4 .fo-track-hero p,
.fancy-oceans-v4 .fo-help-hero p,
.fancy-oceans-v4 .fo-offers-hero p,
.fancy-oceans-v4 .fo-destination-hero p,
.fancy-oceans-v4 .fo-partner-hero p,
.fancy-oceans-v4 .fo-account-head p,
.fancy-oceans-v4 .fomm-photo-hero p{color:#eaf6fc;font-size:16px;max-width:720px;margin:0}
.fancy-oceans-v4 .fomm-photo-hero.small{padding:58px 0}

/* ---------- Search results / booking ---------- */
.fancy-oceans-v4 .fo-search-page{padding:34px 0 70px}
.fancy-oceans-v4 .fo-search-card.fo-compact{padding:18px;display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:12px;align-items:end;margin-top:-54px;position:relative;z-index:3}
.fancy-oceans-v4 .fo-results-tools{display:flex;justify-content:space-between;gap:18px;align-items:center;margin:28px 0 18px}
.fancy-oceans-v4 .fo-results-tools small{display:block;color:var(--fo-muted);margin-top:4px}
.fancy-oceans-v4 .fo-sort-pills{display:flex;flex-wrap:wrap;gap:7px}.fancy-oceans-v4 .fo-sort-pills span{padding:7px 10px;border-radius:999px;background:#eff8ff;color:#35627e;font-size:10px;font-weight:850}
.fancy-oceans-v4 .fo-results{display:grid;gap:14px}

.fancy-oceans-v4 .fo-progress{display:flex;align-items:center;justify-content:center;gap:9px;flex-wrap:wrap;padding:27px 0}
.fancy-oceans-v4 .fo-progress span{padding:7px 10px;border-radius:999px;background:#f0f5f8;color:#7990a0;font-size:10px;font-weight:850}.fancy-oceans-v4 .fo-progress .done{background:#e9f8f1;color:#128052}.fancy-oceans-v4 .fo-progress .current{background:#e4f3ff;color:var(--fo-blue-deep)}.fancy-oceans-v4 .fo-progress i{font-style:normal;color:#aac0cf}
.fancy-oceans-v4 .fo-seat-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:22px;align-items:start;padding-bottom:70px}
.fancy-oceans-v4 .fo-seat-panel{padding:27px}
.fancy-oceans-v4 .fo-seat-note{background:#f0f8ff;border-left:4px solid var(--fo-blue);padding:12px 14px;border-radius:10px;color:#4e6b80;font-size:12px;margin-bottom:20px}
.fancy-oceans-v4 .fo-bus{max-width:560px;margin:0 auto;border:2px solid #c8dae7;border-radius:45px;background:#f9fcfe;padding:20px 16px 28px;box-shadow:inset 0 0 0 7px #fff}
.fancy-oceans-v4 .fo-bus-front{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:0 13px 18px;font-size:11px;color:#617d91}.fancy-oceans-v4 .fo-driver{padding:8px 10px;border-radius:10px;background:#dce8f0;color:#26465f;font-weight:850}
.fancy-oceans-v4 .fo-seat-legend{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;margin-top:18px;font-size:10px;color:var(--fo-muted);font-weight:750}.fancy-oceans-v4 .fo-seat-legend i{display:inline-block;width:12px;height:12px;border-radius:4px;background:#cfeaff;margin-right:5px;vertical-align:-2px}.fancy-oceans-v4 .fo-seat-legend i.selected{background:var(--fo-blue)}.fancy-oceans-v4 .fo-seat-legend i.booked{background:#f2a1a8}.fancy-oceans-v4 .fo-seat-legend i.reserved{background:#dce1e5}
.fancy-oceans-v4 .fo-summary{padding:24px;position:sticky;top:112px}.fancy-oceans-v4 .fo-summary h3{font-size:23px;margin:8px 0}.fancy-oceans-v4 .fo-total{display:flex;justify-content:space-between;align-items:end;border-top:1px solid var(--fo-line);margin:20px 0;padding-top:18px}.fancy-oceans-v4 .fo-total b{font-size:25px;color:var(--fo-blue-deep)}

/* ---------- Marketplace Manager public booking UI ---------- */
.fancy-oceans-v4 .fomm-seat-page,
.fancy-oceans-v4 .fomm-checkout-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:22px;align-items:start}
.fancy-oceans-v4 .fomm-seat-reference{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:24px;align-items:start}
.fancy-oceans-v4 .fomm-seat-reference>aside{background:#f6fbff;border:1px solid var(--fo-line);border-radius:16px;padding:13px;text-align:center}
.fancy-oceans-v4 .fomm-seat-reference>aside img{width:100%;max-height:520px;object-fit:contain;border-radius:12px}.fancy-oceans-v4 .fomm-seat-reference>aside small{display:block;color:var(--fo-muted);margin-top:8px}
.fancy-oceans-v4 .fomm-seat-legend{display:flex;gap:11px;flex-wrap:wrap;font-size:10px;color:var(--fo-muted);font-weight:800}.fancy-oceans-v4 .fomm-seat-legend i{display:inline-block;width:11px;height:11px;border-radius:3px;margin-right:4px;background:#cfeaff}.fancy-oceans-v4 .fomm-seat-legend i.selected{background:#21a66d}.fancy-oceans-v4 .fomm-seat-legend i.held{background:#d7dce1}.fancy-oceans-v4 .fomm-seat-legend i.booked{background:#ee8c95}
.fancy-oceans-v4 .fomm-bus-map{max-width:520px;margin:10px auto 0;background:#fbfdff;border:2px solid #c3d7e5;border-radius:42px;padding:14px 14px 20px;box-shadow:inset 0 0 0 6px #fff}
.fancy-oceans-v4 .fomm-bus-front{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;padding:2px 7px 15px;font-size:11px;color:#607b8e}.fancy-oceans-v4 .fomm-bus-front>b{text-align:center}.fancy-oceans-v4 .fomm-driver{justify-self:start;padding:8px 10px;border-radius:10px;background:#dce7ef;color:#294960;font-weight:850}.fancy-oceans-v4 .fomm-door{justify-self:end;color:#9b7500;background:#fff0b8;border-radius:8px;padding:7px 9px;font-weight:900}
.fancy-oceans-v4 .fomm-seat-row,.fancy-oceans-v4 .fomm-special-front{display:grid;grid-template-columns:1fr 44px 1fr;gap:9px;align-items:center;margin:5px 0}.fancy-oceans-v4 .fomm-side{display:flex;gap:7px}.fancy-oceans-v4 .fomm-side.left{justify-content:flex-end}.fancy-oceans-v4 .fomm-side.right{justify-content:flex-start}.fancy-oceans-v4 .fomm-aisle{min-height:38px}.fancy-oceans-v4 .fomm-front-seat{display:flex;justify-content:flex-start}
.fancy-oceans-v4 .fomm-seat{min-width:44px;height:36px;padding:0!important;border-radius:9px!important;border:1px solid #9fc7e2!important;background:#d9efff!important;color:#173d58!important;font-weight:900!important;box-shadow:none!important;cursor:pointer}.fancy-oceans-v4 .fomm-seat:hover:not(:disabled){transform:translateY(-1px);border-color:var(--fo-blue)!important}.fancy-oceans-v4 .fomm-seat.selected{background:#21a66d!important;color:#fff!important;border-color:#138151!important}.fancy-oceans-v4 .fomm-seat.booked{background:#f4a5ab!important;color:#8d2d35!important;border-color:#ef858d!important;cursor:not-allowed}.fancy-oceans-v4 .fomm-seat.held{background:#dfe4e8!important;color:#677985!important;border-color:#ccd4d9!important;cursor:not-allowed}
.fancy-oceans-v4 .fomm-rear-row{display:flex;justify-content:center;gap:7px;border-top:1px dashed #cddde8;margin-top:9px;padding-top:11px}.fancy-oceans-v4 .fomm-rear-label{text-align:center;color:#7890a2;font-size:10px;font-weight:850;margin-top:6px}
.fancy-oceans-v4 .fomm-sticky-summary{position:sticky;top:112px}.fancy-oceans-v4 .fomm-summary-line,.fancy-oceans-v4 .fomm-summary-total{display:flex;justify-content:space-between;gap:14px;padding:10px 0;border-bottom:1px solid #e5eef5}.fancy-oceans-v4 .fomm-summary-total{margin-top:5px;border-bottom:0;font-size:17px}.fancy-oceans-v4 .fomm-summary-total b{color:var(--fo-blue-deep);font-size:23px}
.fancy-oceans-v4 .fomm-mtn-box{display:flex;gap:13px;align-items:flex-start;background:linear-gradient(135deg,#fff9db,#ffe79a);border:1px solid #f2d55e;border-radius:16px;padding:15px;margin:19px 0}.fancy-oceans-v4 .fomm-mtn-badge{display:grid;place-items:center;background:#ffdc00;color:#111;border:3px solid #111;border-radius:50%;width:54px;height:39px;font-weight:950;font-size:12px;flex:none}.fancy-oceans-v4 .fomm-mtn-box p{margin:4px 0 0;font-size:11px;color:#64581f}
.fancy-oceans-v4 .fomm-payment-status{margin-top:18px;padding:17px;border-radius:15px;background:#eef8ff;border:1px solid #d5eafd}.fancy-oceans-v4 .fomm-spinner{display:inline-block;width:15px;height:15px;border:2px solid #cce6f8;border-top-color:var(--fo-blue);border-radius:50%;animation:fo-spin .8s linear infinite;margin-right:7px;vertical-align:-3px}@keyframes fo-spin{to{transform:rotate(360deg)}}

/* ---------- Partner page ---------- */
.fancy-oceans-v4 .fo-partner-hero{background-image:linear-gradient(90deg,rgba(3,42,71,.90),rgba(4,78,119,.28)),url('../images/uganda-garden-road.jpeg')!important}
.fancy-oceans-v4 .fo-partner-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:34px;align-items:start}
.fancy-oceans-v4 .fo-partner-form{padding:29px}
.fancy-oceans-v4 .fo-form-grid,.fancy-oceans-v4 .fomm-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.fancy-oceans-v4 .fo-span-2{grid-column:1/3}.fancy-oceans-v4 .fo-check,.fancy-oceans-v4 .fomm-check{display:flex;align-items:flex-start;gap:9px;margin:15px 0}.fancy-oceans-v4 .fo-check input,.fancy-oceans-v4 .fomm-check input{width:auto!important;min-height:0!important;margin-top:2px!important}
.fancy-oceans-v4 .fo-success,.fancy-oceans-v4 .fomm-success{background:#e9f8f0;border:1px solid #bce6cf;color:#176943;padding:14px 15px;border-radius:13px;margin:10px 0 18px}.fancy-oceans-v4 .fo-warning,.fancy-oceans-v4 .fomm-alert{background:#fff0f1;border:1px solid #f4c9cd;color:#8c3b43;padding:14px 15px;border-radius:13px;margin:10px 0 18px}

/* ---------- Traveller account ---------- */
.fancy-oceans-v4 .fo-account-head{background-image:linear-gradient(90deg,rgba(4,48,80,.88),rgba(18,104,144,.20)),url('../images/uganda-giraffe.jpeg')!important;background-position:center 46%!important}
.fancy-oceans-v4 .fo-account-head>.fo-shell{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:end;gap:20px}
.fancy-oceans-v4 .fo-account-dashboard .fo-section{padding-top:38px}
.fancy-oceans-v4 .fo-portal-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:25px}.fancy-oceans-v4 .fo-portal-stats>div{background:#fff;border:1px solid var(--fo-line);border-radius:17px;padding:18px;box-shadow:0 9px 24px rgba(10,66,103,.06)}.fancy-oceans-v4 .fo-portal-stats small{display:block;color:var(--fo-muted);font-weight:800}.fancy-oceans-v4 .fo-portal-stats b{display:block;color:var(--fo-ink);font-size:29px;margin-top:5px}
.fancy-oceans-v4 .fo-account-card{display:block;background:#fff;border:1px solid var(--fo-line);border-radius:18px;padding:23px;text-decoration:none!important;box-shadow:0 8px 22px rgba(8,61,98,.06);transition:.18s}.fancy-oceans-v4 .fo-account-card:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(8,61,98,.10)}.fancy-oceans-v4 .fo-account-card>span{font-size:26px}.fancy-oceans-v4 .fo-account-card h3{margin:10px 0 5px}.fancy-oceans-v4 .fo-account-card p{margin:0;color:var(--fo-muted);font-size:12px}

/* ---------- Tables ---------- */
.fancy-oceans-v4 .fo-portal-table-wrap,
.fancy-oceans-v4 .fomm-table-scroll{overflow:auto;background:#fff;border:1px solid var(--fo-line);border-radius:19px;padding:20px;margin-top:25px;box-shadow:0 10px 25px rgba(7,62,99,.05)}
.fancy-oceans-v4 .fo-portal-table,
.fancy-oceans-v4 .fomm-table,
.fancy-oceans-v4 .fomm-plain-table{width:100%;border-collapse:collapse;min-width:680px}.fancy-oceans-v4 .fo-portal-table th,.fancy-oceans-v4 .fo-portal-table td,.fancy-oceans-v4 .fomm-table th,.fancy-oceans-v4 .fomm-table td,.fancy-oceans-v4 .fomm-plain-table th,.fancy-oceans-v4 .fomm-plain-table td{padding:12px 11px;border-bottom:1px solid #e7eff5;text-align:left;font-size:12px}.fancy-oceans-v4 .fo-portal-table th,.fancy-oceans-v4 .fomm-table th,.fancy-oceans-v4 .fomm-plain-table th{color:#628096;background:#f7fbfe;font-size:10px;text-transform:uppercase;letter-spacing:.05em}.fancy-oceans-v4 .fo-portal-table tr:last-child td,.fancy-oceans-v4 .fomm-table tr:last-child td,.fancy-oceans-v4 .fomm-plain-table tr:last-child td{border-bottom:0}

/* ---------- Marketplace Operator Portal ---------- */
.fancy-oceans-v4 .fomm-portal-shell{min-height:calc(100vh - 112px);display:grid;grid-template-columns:245px minmax(0,1fr);background:#f3f8fc}
.fancy-oceans-v4 .fomm-portal-nav{position:sticky;top:112px;align-self:start;height:calc(100vh - 112px);overflow:auto;background:linear-gradient(180deg,#063f6b,#064c78 64%,#06355a);padding:24px 14px;color:#fff;box-shadow:inset -1px 0 rgba(255,255,255,.08)}
.fancy-oceans-v4 .fomm-portal-brand{padding:7px 10px 18px;border-bottom:1px solid rgba(255,255,255,.14);margin-bottom:12px}.fancy-oceans-v4 .fomm-portal-brand b,.fancy-oceans-v4 .fomm-portal-brand small{display:block}.fancy-oceans-v4 .fomm-portal-brand b{font-size:19px}.fancy-oceans-v4 .fomm-portal-brand small{font-size:10px;color:#b8d7e8;margin-top:3px}
.fancy-oceans-v4 .fomm-portal-nav>a{display:block;color:#d9eaf4!important;text-decoration:none!important;border-radius:11px;padding:10px 11px;margin:3px 0;font-size:12px;font-weight:750;transition:.17s}.fancy-oceans-v4 .fomm-portal-nav>a:hover,.fancy-oceans-v4 .fomm-portal-nav>a.active{background:linear-gradient(90deg,#178ce2,#1ca2e9);color:#fff!important;box-shadow:0 7px 17px rgba(0,0,0,.12)}
.fancy-oceans-v4 .fomm-portal-help{margin:22px 7px 0;border-top:1px solid rgba(255,255,255,.13);padding-top:17px;color:#b7d6e7;font-size:11px;line-height:1.5}.fancy-oceans-v4 .fomm-portal-help a{color:#fff!important;font-weight:850}
.fancy-oceans-v4 .fomm-portal-main{min-width:0;padding:24px}
.fancy-oceans-v4 .fomm-portal-head{position:relative;overflow:hidden;min-height:200px;border-radius:24px;padding:34px;display:flex;align-items:center;justify-content:space-between;gap:25px;background-image:linear-gradient(90deg,rgba(255,255,255,.97),rgba(255,255,255,.68)),url('../images/uganda-highlands.jpeg')!important;background-size:cover!important;background-position:center!important;border:1px solid #d9e8f2;box-shadow:0 12px 30px rgba(10,65,103,.08);margin-bottom:19px}.fancy-oceans-v4 .fomm-portal-head span{font-size:10px;font-weight:900;letter-spacing:.13em;color:var(--fo-blue-deep)}.fancy-oceans-v4 .fomm-portal-head h1{font-size:clamp(30px,4vw,48px);margin:5px 0 8px}.fancy-oceans-v4 .fomm-portal-head p{margin:0;color:#4b6c83}.fancy-oceans-v4 .fomm-portal-head>a{align-self:flex-start;background:#fff;border:1px solid #d6e5f0;border-radius:999px;padding:9px 13px;color:var(--fo-blue-deep)!important;text-decoration:none!important;font-size:11px;font-weight:850}
.fancy-oceans-v4 .fomm-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:13px;margin-bottom:18px}.fancy-oceans-v4 .fomm-kpis>div{background:#fff;border:1px solid var(--fo-line);border-radius:17px;padding:17px;box-shadow:0 8px 22px rgba(7,61,97,.05)}.fancy-oceans-v4 .fomm-kpis small{display:block;color:#6e8798;font-size:10px;font-weight:800}.fancy-oceans-v4 .fomm-kpis b{display:block;color:var(--fo-ink);font-size:22px;margin-top:6px;line-height:1.2;word-break:break-word}
.fancy-oceans-v4 .fomm-operator-dashboard-grid{display:grid;grid-template-columns:1.5fr .8fr;gap:18px}.fancy-oceans-v4 .fomm-portal-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:18px}.fancy-oceans-v4 .fomm-big-number{font-size:32px;font-weight:900;color:var(--fo-blue-deep);letter-spacing:-.04em;margin:11px 0}.fancy-oceans-v4 .fomm-quick-actions{display:grid;gap:8px}.fancy-oceans-v4 .fomm-quick-actions a{display:block;text-decoration:none!important;background:#eef8ff;border:1px solid #d8ebf8;border-radius:12px;padding:11px 12px;font-size:12px;font-weight:850;color:var(--fo-blue-deep)!important}.fancy-oceans-v4 .fomm-list{display:grid;gap:8px}.fancy-oceans-v4 .fomm-list article{padding:13px 14px;border:1px solid #e0ebf3;border-radius:13px;background:#fbfdff}.fancy-oceans-v4 .fomm-list b,.fancy-oceans-v4 .fomm-list small{display:block}.fancy-oceans-v4 .fomm-list small{margin-top:4px;color:var(--fo-muted)}
.fancy-oceans-v4 .fomm-layout-gallery{display:grid;grid-template-columns:1fr 1fr;gap:19px}.fancy-oceans-v4 .fomm-layout-reference{width:100%;max-height:570px;object-fit:contain;margin-top:16px;border-radius:15px;background:#f8fbfd;border:1px solid var(--fo-line)}

/* ---------- Manager admin/front helper classes ---------- */
.fancy-oceans-v4 .fomm-auth-grid,.fancy-oceans-v4 .fomm-partner-grid,.fancy-oceans-v4 .fomm-account-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:38px 0 70px}.fancy-oceans-v4 .fomm-check-list{padding:0;list-style:none}.fancy-oceans-v4 .fomm-check-list li{padding:8px 0 8px 28px;position:relative}.fancy-oceans-v4 .fomm-check-list li:before{content:"✓";position:absolute;left:0;top:8px;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:#e4f8ee;color:#128454;font-size:11px;font-weight:900}
.fancy-oceans-v4 .fomm-status,.fancy-oceans-v4 .fomm-inline-status{display:inline-flex;border-radius:999px;padding:6px 9px;background:#eef8ff;color:#2d6488;font-size:10px;font-weight:850}.fancy-oceans-v4 .fomm-success{color:#176943}.fancy-oceans-v4 .fomm-action-buttons,.fancy-oceans-v4 .fomm-actions{display:flex;gap:7px;flex-wrap:wrap}

/* ---------- Ticket ---------- */
.fancy-oceans-v4 .fomm-ticket-page{background:#f1f7fb}.fancy-oceans-v4 .fomm-ticket{max-width:870px;margin:0 auto;background:#fff;border:1px solid #d8e7f2;border-radius:24px;overflow:hidden;box-shadow:0 25px 65px rgba(6,57,93,.13)}.fancy-oceans-v4 .fomm-ticket>header{background:linear-gradient(135deg,#07456f,#1287cc);color:#fff;padding:25px 28px;display:flex;justify-content:space-between;gap:20px;align-items:center}.fancy-oceans-v4 .fomm-ticket>header h1{color:#fff;margin:2px 0 0}.fancy-oceans-v4 .fomm-ticket-status{background:#e9fff5;color:#0a8150;border-radius:999px;padding:8px 11px;font-size:10px;font-weight:900}.fancy-oceans-v4 .fomm-ticket-route{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;padding:28px;background:#f6fbff;border-bottom:1px dashed #cbdce8}.fancy-oceans-v4 .fomm-ticket-route>div:last-child{text-align:right}.fancy-oceans-v4 .fomm-ticket-route small{display:block;color:var(--fo-muted);font-size:9px;font-weight:900}.fancy-oceans-v4 .fomm-ticket-route b{font-size:25px;color:var(--fo-ink)}.fancy-oceans-v4 .fomm-ticket-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#e3edf4}.fancy-oceans-v4 .fomm-ticket-grid>div{background:#fff;padding:18px}.fancy-oceans-v4 .fomm-ticket-grid small{display:block;color:var(--fo-muted);font-size:9px;text-transform:uppercase;letter-spacing:.05em}.fancy-oceans-v4 .fomm-ticket-grid b{display:block;margin-top:5px;color:var(--fo-ink)}.fancy-oceans-v4 .fomm-ticket-actions{display:flex;justify-content:center;gap:10px;margin-top:19px}

/* ---------- Reveal / polish ---------- */
.fancy-oceans-v4 .fo-reveal-ready{opacity:0;transform:translateY(18px);transition:opacity .65s ease,transform .65s ease}.fancy-oceans-v4 .fo-reveal-ready.fo-visible{opacity:1;transform:none}

/* ---------- Responsive ---------- */
@media(max-width:1100px){
  .fancy-oceans-v4 .fo-grid-5{grid-template-columns:repeat(3,1fr)}.fancy-oceans-v4 .fo-grid-4{grid-template-columns:repeat(2,1fr)}.fancy-oceans-v4 .fo-search-fields{grid-template-columns:1fr 40px 1fr 1fr}.fancy-oceans-v4 .fo-search-fields label:nth-of-type(4){grid-column:1/2}.fancy-oceans-v4 .fo-search-btn{grid-column:2/5}.fancy-oceans-v4 .fo-trust-strip{grid-template-columns:repeat(2,1fr)}
  .fancy-oceans-v4 .fomm-kpis{grid-template-columns:repeat(3,1fr)}.fancy-oceans-v4 .fomm-operator-dashboard-grid,.fancy-oceans-v4 .fomm-portal-grid{grid-template-columns:1fr}.fancy-oceans-v4 .fomm-seat-reference{grid-template-columns:1fr}.fancy-oceans-v4 .fomm-seat-reference>aside{display:none}
}
@media(max-width:900px){
  .fancy-oceans-v4 .fo-split{grid-template-columns:1fr}.fancy-oceans-v4 .fo-split-photo-wrap{min-height:350px}.fancy-oceans-v4 .fo-seat-layout,.fancy-oceans-v4 .fomm-seat-page,.fancy-oceans-v4 .fomm-checkout-grid{grid-template-columns:1fr}.fancy-oceans-v4 .fo-summary,.fancy-oceans-v4 .fomm-sticky-summary{position:static}.fancy-oceans-v4 .fo-partner-grid{grid-template-columns:1fr}
  .fancy-oceans-v4 .fomm-portal-shell{grid-template-columns:1fr}.fancy-oceans-v4 .fomm-portal-nav{position:relative;top:auto;height:auto;display:flex;overflow-x:auto;gap:4px;padding:12px}.fancy-oceans-v4 .fomm-portal-brand,.fancy-oceans-v4 .fomm-portal-help{display:none}.fancy-oceans-v4 .fomm-portal-nav>a{white-space:nowrap}.fancy-oceans-v4 .fomm-portal-main{padding:16px}.fancy-oceans-v4 .fomm-layout-gallery{grid-template-columns:1fr}
}
@media(max-width:740px){
  .fancy-oceans-v4 .fo-section,.fancy-oceans-v4 .fomm-section{padding:52px 0}.fancy-oceans-v4 .fo-hero{min-height:520px;background-position:62% center}.fancy-oceans-v4 .fo-hero-inner{padding:70px 0 150px}.fancy-oceans-v4 .fo-hero-inner h1{font-size:43px}.fancy-oceans-v4 .fo-search-wrap{margin-top:-105px}.fancy-oceans-v4 .fo-search-heading{align-items:flex-start}.fancy-oceans-v4 .fo-search-heading small{display:none}.fancy-oceans-v4 .fo-search-fields{grid-template-columns:1fr}.fancy-oceans-v4 .fo-search-fields .fo-swap{display:none}.fancy-oceans-v4 .fo-search-btn{grid-column:auto}.fancy-oceans-v4 .fo-trust-strip{grid-template-columns:1fr;margin-top:16px}.fancy-oceans-v4 .fo-grid-5,.fancy-oceans-v4 .fo-grid-4,.fancy-oceans-v4 .fo-grid-3,.fancy-oceans-v4 .fo-grid-2{grid-template-columns:1fr}.fancy-oceans-v4 .fo-section-head{align-items:flex-start;display:grid}.fancy-oceans-v4 .fo-image-card,.fancy-oceans-v4 .fo-destination-card{min-height:230px}.fancy-oceans-v4 .fo-search-card.fo-compact{grid-template-columns:1fr;margin-top:-28px}.fancy-oceans-v4 .fo-account-head>.fo-shell{display:grid}.fancy-oceans-v4 .fo-portal-stats{grid-template-columns:repeat(2,1fr)}.fancy-oceans-v4 .fo-form-grid,.fancy-oceans-v4 .fomm-form-grid{grid-template-columns:1fr}.fancy-oceans-v4 .fo-span-2{grid-column:auto}.fancy-oceans-v4 .fomm-kpis{grid-template-columns:repeat(2,1fr)}.fancy-oceans-v4 .fomm-portal-head{min-height:180px;padding:25px}.fancy-oceans-v4 .fomm-ticket-grid{grid-template-columns:1fr 1fr}.fancy-oceans-v4 .fomm-auth-grid,.fancy-oceans-v4 .fomm-partner-grid,.fancy-oceans-v4 .fomm-account-grid{grid-template-columns:1fr}.fancy-oceans-v4 .fomm-seat{min-width:36px;height:33px;font-size:10px!important}.fancy-oceans-v4 .fomm-seat-row,.fancy-oceans-v4 .fomm-special-front{grid-template-columns:1fr 28px 1fr;gap:5px}.fancy-oceans-v4 .fomm-side{gap:4px}
}
@media(max-width:480px){
  .fancy-oceans-v4 .fo-hero-inner h1{font-size:37px}.fancy-oceans-v4 .fo-portal-stats,.fancy-oceans-v4 .fomm-kpis{grid-template-columns:1fr 1fr}.fancy-oceans-v4 .fomm-ticket-grid{grid-template-columns:1fr}.fancy-oceans-v4 .fomm-seat{min-width:31px;height:31px;font-size:9px!important}.fancy-oceans-v4 .fomm-bus-map{padding:11px 8px 17px}.fancy-oceans-v4 .fomm-seat-row,.fancy-oceans-v4 .fomm-special-front{grid-template-columns:1fr 20px 1fr}
}

@media print{
  .fo-site-topbar,.fo-site-header,.fo-site-footer,.fomm-ticket-actions{display:none!important}.fancy-oceans-v4 .fomm-ticket{box-shadow:none;border:1px solid #aaa}.fancy-oceans-v4 .fomm-section{padding:0}.fancy-oceans-v4 .fomm-ticket-page{background:#fff}
}

/* ======================================================================
   Fancy Oceans Uganda Edition Final 4.1
   Visual-only refinements based on the approved homepage mockup.
   Booking, payment, account, permissions and marketplace logic stay in plugins.
   ====================================================================== */

/* Header / account button */
.fancy-oceans-v4 .fo-site-login{
  background:linear-gradient(135deg,#f7cf52,#f2b93c)!important;
  color:#102f4e!important;
  box-shadow:0 9px 22px rgba(203,149,26,.22)!important;
  border:1px solid rgba(197,141,17,.15)!important;
}
.fancy-oceans-v4 .fo-site-login:hover{filter:brightness(1.02);transform:translateY(-1px)}
.fancy-oceans-v4 .fo-site-header.fo-scrolled{box-shadow:0 12px 32px rgba(7,61,105,.10)}

/* Home hero: authentic Uganda sunset from user's photo library */
.fancy-oceans-v4 .fo-hero{
  min-height:500px;
  background-image:
    linear-gradient(90deg,rgba(5,31,50,.88) 0%,rgba(7,49,76,.64) 44%,rgba(7,49,76,.10) 79%),
    url('../images/local/local-sunset.jpg')!important;
  background-position:center 52%!important;
}
.fancy-oceans-v4 .fo-hero-inner{padding-top:82px;padding-bottom:135px}
.fancy-oceans-v4 .fo-hero-inner h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(46px,5.5vw,74px);font-weight:800;letter-spacing:-.045em;line-height:.98}
.fancy-oceans-v4 .fo-hero-inner h1 span{color:var(--fo-gold)}
.fancy-oceans-v4 .fo-hero-inner p{font-size:17px;max-width:620px}
.fancy-oceans-v4 .fo-hero-signature{position:absolute;z-index:2;right:max(calc((100vw - 1240px)/2),28px);top:112px;color:#fff7dc;font-family:"Segoe Script","Bradley Hand",cursive;font-size:27px;line-height:1.05;transform:rotate(-5deg);text-align:center;text-shadow:0 3px 16px rgba(0,0,0,.20);opacity:.96}
.fancy-oceans-v4 .fo-hero-signature:after{content:"";display:block;width:72px;height:4px;margin:9px auto 0;border-radius:99px;background:var(--fo-gold);transform:rotate(-4deg)}

/* Search card: stronger mockup-like overlap and cleaner controls */
.fancy-oceans-v4 .fo-search-wrap{margin-top:-84px}
.fancy-oceans-v4 .fo-home-search{border-radius:22px;padding:20px 22px 22px;box-shadow:0 22px 56px rgba(8,61,99,.18)}
.fancy-oceans-v4 .fo-search-heading{margin:-20px -22px 16px;padding:0 22px;background:#fff;border-radius:22px 22px 0 0;min-height:58px;align-items:center}
.fancy-oceans-v4 .fo-search-heading>div{display:flex;align-items:center;gap:9px}
.fancy-oceans-v4 .fo-search-heading span{display:inline-flex;align-items:center;min-height:58px;padding:0 5px;border-bottom:3px solid var(--fo-blue);color:var(--fo-ink)}
.fancy-oceans-v4 .fo-search-heading h2{font-size:16px;margin:0;color:#45657c;font-weight:750}
.fancy-oceans-v4 .fo-search-heading small{font-size:11px}
.fancy-oceans-v4 .fo-search-fields label{font-size:11px;color:#38586f}
.fancy-oceans-v4 .fo-search-fields input,.fancy-oceans-v4 .fo-search-fields select{min-height:48px!important;background:#fbfdff!important}
.fancy-oceans-v4 .fo-search-btn{min-height:50px!important;border-radius:12px!important}

/* Homepage sections closer to approved mockup */
.fancy-oceans-v4 .fo-section{padding:62px 0}
.fancy-oceans-v4 .fo-section-head{margin-bottom:22px}
.fancy-oceans-v4 .fo-section-head h2{font-family:Georgia,"Times New Roman",serif;font-weight:800;font-size:clamp(29px,2.6vw,39px)}
.fancy-oceans-v4 .fo-section-head span{color:#0b609d}
.fancy-oceans-v4 .fo-section-head span:after{content:"";display:inline-block;width:34px;height:2px;margin-left:9px;vertical-align:middle;border-radius:99px;background:var(--fo-gold)}
.fancy-oceans-v4 .fo-image-card,.fancy-oceans-v4 .fo-destination-card{min-height:230px;border-radius:16px;box-shadow:0 10px 24px rgba(11,62,96,.11)}
.fancy-oceans-v4 .fo-image-card h3,.fancy-oceans-v4 .fo-destination-card h3{font-size:21px}
.fancy-oceans-v4 .fo-offer{border-radius:18px;min-height:166px}
.fancy-oceans-v4 .fo-operator-card{border-radius:16px;box-shadow:0 10px 24px rgba(9,63,101,.07)}
.fancy-oceans-v4 .fo-operator-card>img{height:132px}

/* Make the authentic imagery feel consistent */
.fancy-oceans-v4 .fo-image-card img,
.fancy-oceans-v4 .fo-destination-card img,
.fancy-oceans-v4 .fo-operator-card>img,
.fancy-oceans-v4 .fo-split-photo-wrap img{filter:saturate(.96) contrast(1.02)}
.fancy-oceans-v4 .fo-image-card:after,
.fancy-oceans-v4 .fo-destination-card:after{background:linear-gradient(to top,rgba(1,25,44,.86),rgba(2,31,54,.02) 68%)}

/* Internal page heroes use local Uganda imagery instead of generic stock imagery */
.fancy-oceans-v4 .fo-page-hero{background-image:linear-gradient(90deg,rgba(3,43,72,.88),rgba(4,83,123,.32)),url('../images/local/local-golden-hour.jpg')!important;background-position:center 56%!important}
.fancy-oceans-v4 .fo-destination-hero{background-image:linear-gradient(90deg,rgba(3,42,71,.88),rgba(4,78,119,.18)),url('../images/local/local-giraffe-standing.jpg')!important;background-position:center 45%!important}
.fancy-oceans-v4 .fo-manage-hero{background-image:linear-gradient(90deg,rgba(3,42,71,.90),rgba(4,78,119,.30)),url('../images/local/local-garden.jpg')!important;background-position:center 48%!important}
.fancy-oceans-v4 .fo-track-hero{background-image:linear-gradient(90deg,rgba(3,42,71,.90),rgba(4,78,119,.30)),url('../images/local/local-road-palms.jpg')!important;background-position:center 58%!important}
.fancy-oceans-v4 .fo-help-hero{background-image:linear-gradient(90deg,rgba(3,42,71,.90),rgba(4,78,119,.30)),url('../images/local/local-rural-sky.jpg')!important;background-position:center 48%!important}
.fancy-oceans-v4 .fo-offers-hero{background-image:linear-gradient(90deg,rgba(3,42,71,.90),rgba(4,78,119,.22)),url('../images/local/local-sunset.jpg')!important;background-position:center 50%!important}
.fancy-oceans-v4 .fo-partner-hero{background-image:linear-gradient(90deg,rgba(3,42,71,.90),rgba(4,78,119,.22)),url('../images/local/local-road-palms.jpg')!important}
.fancy-oceans-v4 .fo-account-head{background-image:linear-gradient(90deg,rgba(3,42,71,.88),rgba(4,78,119,.14)),url('../images/local/local-giraffe-resting.jpg')!important;background-size:cover!important;background-position:center 48%!important}
.fancy-oceans-v4 .fomm-photo-hero{background-image:linear-gradient(90deg,rgba(3,42,71,.90),rgba(4,78,119,.22)),url('../images/local/local-garden.jpg')!important;background-size:cover!important;background-position:center!important}

/* Seat / checkout experience */
.fancy-oceans-v4 .fo-seat-panel,.fancy-oceans-v4 .fo-summary,.fancy-oceans-v4 .fomm-card{border-radius:18px}
.fancy-oceans-v4 .fo-bus,.fancy-oceans-v4 .fomm-bus-map{background:linear-gradient(180deg,#fbfdff,#f3f9fd)}
.fancy-oceans-v4 .fomm-seat.selected{background:#19a76a!important;border-color:#118753!important}
.fancy-oceans-v4 .fomm-mtn-box{box-shadow:0 8px 20px rgba(196,155,28,.10)}

/* Marketplace/operator portal polish */
.fancy-oceans-v4 .fomm-portal-nav{background:linear-gradient(180deg,#063d69,#07598c)!important}
.fancy-oceans-v4 .fomm-portal-main{background:#f6faff}
.fancy-oceans-v4 .fomm-kpis>div{border-radius:17px!important}
.fancy-oceans-v4 .fomm-plain-table{border-collapse:separate;border-spacing:0}
.fancy-oceans-v4 .fomm-plain-table th{background:#f4f9fd;color:#436077;font-size:10px;text-transform:uppercase;letter-spacing:.05em}

/* Footer */
.fancy-oceans-v4 .fo-site-footer{background:linear-gradient(180deg,#06395f,#042f52 72%,#052943);position:relative;overflow:hidden}
.fancy-oceans-v4 .fo-site-footer:before{content:"";position:absolute;inset:auto 0 0;height:100px;background:linear-gradient(175deg,transparent 10%,rgba(72,190,209,.08) 11%,rgba(33,143,234,.09) 55%,rgba(246,200,68,.04));pointer-events:none}
.fancy-oceans-v4 .fo-site-footer .fo-site-shell{position:relative;z-index:2}

@media(max-width:900px){
  .fancy-oceans-v4 .fo-hero-signature{display:none}
}
@media(max-width:740px){
  .fancy-oceans-v4 .fo-hero{min-height:560px;background-position:56% center!important}
  .fancy-oceans-v4 .fo-hero-inner{padding:72px 0 170px}
  .fancy-oceans-v4 .fo-hero-inner h1{font-size:43px}
  .fancy-oceans-v4 .fo-search-wrap{margin-top:-120px}
  .fancy-oceans-v4 .fo-search-heading{margin:-20px -22px 14px}
}
