/* ============================================================
   FijiDude V3 design tokens — change --v3-purple (or the
   style_main_color admin setting, which overrides it inline in
   Layout/app.blade.php) and every tint, gradient and hover state
   re-derives automatically. See THEME.md for the rebrand guide.
   ============================================================ */
:root{
--v3-font:Manrope,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
--v3-ink:#18141f;--v3-muted:#6f6978;--v3-line:#e9e6ec;

/* Surfaces. Every panel, card and sheet reads from these, so night mode is
   a token swap rather than a second stylesheet chasing the first. */
--v3-surface:#fff;          /* cards, panels, sheets            */
--v3-surface-2:#faf8fc;     /* recessed strips, chat bubbles    */
--v3-surface-3:#efeaf4;     /* image wells and empty thumbnails */
--v3-surface-veil:rgba(255,255,255,.96); /* sticky bars over content */
--v3-page:#fff;             /* the page behind everything       */

/* What the accent mixes toward. Flipping this is what stops the purple
   tints turning into pale lilac smears on a dark page. */
--v3-mix:#fff;

--v3-purple:#6c2cff;
--v3-purple-dark:color-mix(in srgb,var(--v3-purple) 76%,#12043a);
--v3-purple-bright:color-mix(in srgb,var(--v3-purple) 74%,#fff);
--v3-purple-border:color-mix(in srgb,var(--v3-purple) 42%,var(--v3-mix));
--v3-purple-soft:color-mix(in srgb,var(--v3-purple) 14%,var(--v3-mix));
--v3-purple-tint:color-mix(in srgb,var(--v3-purple) 8%,var(--v3-mix));
--v3-lagoon:#14b8c4;--v3-coral:#ff5a66;--v3-sand:#faf8f4;--v3-white:#fff;
--v3-grad:linear-gradient(135deg,var(--v3-purple),var(--v3-purple-bright) 55%,var(--v3-lagoon));
--v3-shadow:0 20px 60px rgba(32,18,53,.12);
color-scheme:light
}

/* ============================================================
   Night mode.
   Three states: an explicit choice stamps data-theme on <html>;
   with no choice we follow the device. The :not() guard is what
   lets someone on a dark phone force the light theme back on.
   ============================================================ */
@media (prefers-color-scheme:dark){
  :root:not([data-theme=light]){
  --v3-ink:#f2eef8;--v3-muted:#a49dae;--v3-line:#2b2536;
  --v3-surface:#191426;--v3-surface-2:#211a31;--v3-surface-3:#2a2239;
  --v3-surface-veil:rgba(19,15,29,.94);
  --v3-page:#120f1c;
  --v3-mix:#191426;
  /* Full-strength purple vibrates against a dark ground; ease it back
     and lift it so it still reads as the same brand colour. */
  --v3-purple:#9a72ff;
  --v3-purple-dark:color-mix(in srgb,var(--v3-purple) 72%,#000);
  --v3-purple-bright:color-mix(in srgb,var(--v3-purple) 76%,#fff);
  --v3-shadow:0 20px 60px rgba(0,0,0,.5);
  color-scheme:dark
  }
}
:root[data-theme=dark]{
--v3-ink:#f2eef8;--v3-muted:#a49dae;--v3-line:#2b2536;
--v3-surface:#191426;--v3-surface-2:#211a31;--v3-surface-3:#2a2239;
--v3-surface-veil:rgba(19,15,29,.94);
--v3-page:#120f1c;
--v3-mix:#191426;
--v3-purple:#9a72ff;
--v3-purple-dark:color-mix(in srgb,var(--v3-purple) 72%,#000);
--v3-purple-bright:color-mix(in srgb,var(--v3-purple) 76%,#fff);
--v3-shadow:0 20px 60px rgba(0,0,0,.5);
color-scheme:dark
}
html{scroll-behavior:smooth}.fijidude-v3{font-family:var(--v3-font);color:var(--v3-ink);background:var(--v3-page)}.fijidude-v3 h1,.fijidude-v3 h2,.fijidude-v3 h3,.fijidude-v3 h4{font-family:var(--v3-font);color:var(--v3-ink);letter-spacing:-.035em}.fijidude-v3 a{color:inherit}.fijidude-v3 .container{max-width:1240px}.fijidude-v3 .btn-primary,.v3-primary-button{background:var(--v3-purple)!important;border-color:var(--v3-purple)!important;border-radius:14px!important;font-weight:800!important}.fijidude-v3 .btn-primary:hover,.v3-primary-button:hover{background:var(--v3-purple-dark)!important;border-color:var(--v3-purple-dark)!important}.v3-eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--v3-purple);font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}

/* Header */
.v3-header{position:relative;z-index:100;background:var(--v3-surface-veil);border-bottom:1px solid rgba(233,230,236,.9);backdrop-filter:blur(16px)}.v3-header.has_sticky{position:sticky;top:0}.v3-header-inner{height:94px;max-width:1440px;margin:auto;padding:0 36px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:30px}.v3-brand{display:inline-flex;align-items:center;gap:10px;width:max-content;text-decoration:none!important}.v3-brand-mark{width:43px;height:43px;border-radius:15px;display:grid;place-items:center;background:var(--v3-grad);box-shadow:0 9px 22px rgba(108,44,255,.25)}.v3-brand-mark svg{width:34px;height:34px;fill:#fff}.v3-brand-name{font-size:25px;font-weight:800;letter-spacing:-.055em}.v3-brand-name span{color:var(--v3-purple)}.v3-brand-spark{align-self:flex-start;margin:19px 0 0 -7px;border-radius:999px;padding:3px 6px;background:var(--v3-purple-soft);color:var(--v3-purple-dark);font-size:8px;font-weight:800;letter-spacing:.08em}.v3-primary-nav{height:100%;display:flex;align-items:center;gap:7px}.v3-primary-nav a{height:100%;min-width:92px;padding:18px 13px 14px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:#675f6f;font-size:13px;font-weight:700;text-decoration:none!important;border-bottom:3px solid transparent;transition:.2s}.v3-primary-nav a i{font-size:22px;color:#938b9c}.v3-primary-nav a:hover,.v3-primary-nav a.active{color:var(--v3-ink);border-color:var(--v3-purple)}.v3-primary-nav a.active i{color:var(--v3-purple)}.v3-header-actions{display:flex;justify-content:flex-end;align-items:center;gap:10px}.v3-supplier-link{font-size:13px;font-weight:800;margin-right:4px}.v3-icon-btn,.v3-account-btn,.v3-mobile-toggle{height:46px;border:1px solid var(--v3-line);background:var(--v3-surface);display:inline-flex;align-items:center;justify-content:center;color:var(--v3-ink)}.v3-icon-btn{width:46px;border-radius:50%}.v3-account-btn{border-radius:999px;gap:10px;padding:4px 5px 4px 14px}.v3-account-avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--v3-ink);color:#fff}.v3-mobile-toggle{display:none;width:46px;border-radius:50%}.v3-mobile-nav{padding:12px 24px 22px;border-top:1px solid var(--v3-line)}.v3-mobile-nav a{display:block;padding:12px 0;font-weight:700}

/* Homepage hero */
.page-template-content>.bc-form-search-all{min-height:0!important;background:none!important}.v3-hero{position:relative;min-height:760px;padding:78px 0 66px;overflow:hidden;background:var(--v3-ink)}.v3-hero:before{content:"";position:absolute;inset:0;background-image:var(--v3-hero-image);background-size:cover;background-position:center;opacity:1;transform:scale(1.02);filter:saturate(1.25) brightness(1.3)}.v3-hero-backdrop{position:absolute;inset:0;background:linear-gradient(90deg,rgba(17,10,27,.78) 0%,rgba(31,16,53,.5) 44%,rgba(18,15,29,.06) 100%),linear-gradient(0deg,rgba(20,15,30,.42),transparent 55%)}.v3-hero-content{position:relative;z-index:2}.v3-hero-copy{max-width:780px;color:#fff;margin:0 auto 34px;text-align:center}.v3-hero-copy .v3-eyebrow{color:#d9c8ff}.v3-hero-copy h1{color:#fff;font-size:56px;line-height:1.02;font-weight:800;margin:13px auto 17px;max-width:700px}.v3-hero-copy p{font-size:18px;line-height:1.7;color:rgba(255,255,255,.82);max-width:650px;margin-left:auto;margin-right:auto}.v3-hero-centered{min-height:0;padding:88px 0 74px}.v3-hero-centered .v3-hero-backdrop{background:linear-gradient(0deg,rgba(17,10,27,.68) 0%,rgba(24,14,40,.42) 45%,rgba(18,15,29,.3) 100%)}.v3-search-shell{max-width:1010px}.v3-search-shell .g-form-control{background:var(--v3-surface);border-radius:24px;padding:0;box-shadow:var(--v3-shadow);overflow:visible}.v3-search-shell .nav-tabs{display:flex;border:0!important;padding:8px 12px 0;gap:4px}.v3-search-shell .nav-tabs li a{border:0!important;border-radius:12px!important;padding:10px 17px!important;font-weight:700;color:#706878;background:transparent}.v3-search-shell .nav-tabs li a.active{color:var(--v3-purple);background:var(--v3-purple-tint)}.v3-search-shell .tab-content{padding:0 10px 10px}.v3-search-shell .bc_form{border:0!important;box-shadow:none!important;margin:0!important;background:var(--v3-surface)!important;border-radius:18px!important}.v3-search-shell .bc_form .g-field-search{padding-left:10px}.v3-search-shell .bc_form .g-button-submit .btn{width:72px!important;min-width:72px!important;height:62px!important;border-radius:18px!important;font-size:0}.v3-search-shell .bc_form .g-button-submit .btn:after{content:"\f002";font-family:FontAwesome;font-size:20px}.v3-ai-search{width:min(920px,calc(100% - 70px));margin:24px 0 0 42px;padding:20px;border:1px solid rgba(255,255,255,.2);border-radius:24px;background:var(--v3-surface-veil);box-shadow:0 26px 80px rgba(7,3,14,.3);backdrop-filter:blur(18px)}.v3-ai-heading{display:flex;align-items:center;gap:12px;margin-bottom:14px}.v3-ai-heading>div{display:flex;flex-direction:column}.v3-ai-heading strong{font-size:17px}.v3-ai-heading span:not(.v3-ai-orb){font-size:12px;color:var(--v3-muted)}.v3-ai-orb{flex:0 0 auto;width:42px;height:42px;border-radius:15px;display:grid;place-items:center;color:#fff;background:var(--v3-grad);box-shadow:0 9px 20px rgba(108,44,255,.24)}.v3-ai-orb i{font-size:20px}.v3-ai-search form{height:62px;display:flex;border:1px solid #dcd6e2;border-radius:18px;background:var(--v3-surface);overflow:hidden;box-shadow:0 8px 24px rgba(38,25,55,.07)}.v3-ai-search input{flex:1;min-width:0;padding:0 20px;border:0;outline:0;font-size:15px;color:var(--v3-ink)}.v3-ai-search form button{margin:6px;padding:0 19px;border:0;border-radius:13px;background:var(--v3-purple);color:#fff;font-size:13px;font-weight:800;display:flex;align-items:center;gap:9px}.v3-ai-prompts{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.v3-ai-prompts button{border:1px solid var(--v3-line);border-radius:999px;background:var(--v3-surface-2);color:#5e5766;padding:7px 12px;font-size:11px;font-weight:700}.v3-ai-prompts button:hover{border-color:var(--v3-purple-border);color:var(--v3-purple);background:var(--v3-purple-tint)}.v3-ai-status{display:none;padding:16px 2px 8px;font-size:13px;color:var(--v3-muted)}.v3-ai-status.active{display:block}.v3-ai-results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-top:12px}.v3-ai-result{display:flex;gap:12px;min-width:0;padding:10px;border:1px solid var(--v3-line);border-radius:16px;background:var(--v3-surface);text-decoration:none!important;transition:.2s}.v3-ai-result:hover{transform:translateY(-2px);box-shadow:0 12px 25px rgba(30,18,45,.1)}.v3-ai-result img{width:78px;height:82px;object-fit:cover;border-radius:12px}.v3-ai-result-body{min-width:0;display:flex;flex-direction:column}.v3-ai-result small{color:var(--v3-purple);font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v3-ai-result strong{font-size:12px;line-height:1.35;margin:3px 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.v3-ai-result-meta{font-size:10px;color:var(--v3-muted)}.v3-ai-result-price{display:flex;align-items:baseline;gap:8px;font-size:12px;font-weight:800;margin-top:auto}.v3-ai-result-book{margin-left:auto;color:var(--v3-purple);font-size:11px;font-weight:800;white-space:nowrap}.v3-ai-result-book i{font-size:10px;margin-left:3px}.v3-ai-loading{display:inline-flex;gap:4px}.v3-ai-loading i{width:5px;height:5px;border-radius:50%;background:var(--v3-purple);animation:v3Pulse .9s infinite alternate}.v3-ai-loading i:nth-child(2){animation-delay:.2s}.v3-ai-loading i:nth-child(3){animation-delay:.4s}@keyframes v3Pulse{to{opacity:.25;transform:translateY(-3px)}}

/* Unified hero capsule */
.v3-capsule{max-width:780px;margin:0 auto;background:var(--v3-surface);border-radius:28px;box-shadow:0 26px 80px rgba(7,3,14,.32);padding:10px;text-align:left}
.v3-capsule-bar{display:flex;align-items:center;gap:10px}
.v3-capsule-orb{width:44px;height:44px;border-radius:15px;flex:0 0 auto;margin-left:4px}
.v3-capsule-bar #v3-ai-form{flex:1;min-width:0;display:flex;align-items:center;gap:8px;margin:0}
#v3-ai-input{flex:1;min-width:0;height:50px;padding:0 8px;border:0;outline:0;background:transparent;font-size:15px;color:var(--v3-ink)}
#v3-ai-input::placeholder{color:#948d9c}
.v3-ai-submit{flex:0 0 auto;width:50px;height:50px;border:0;border-radius:50%;background:var(--v3-purple);color:#fff;font-size:17px;display:grid;place-items:center;transition:.2s}
.v3-ai-submit:hover{background:var(--v3-purple-dark)}
.v3-capsule .v3-ai-prompts{margin:6px 8px 8px;justify-content:center}
.v3-capsule .v3-ai-status{padding:10px 12px 2px}
.v3-capsule .v3-ai-results{margin:8px 4px 6px}
.v3-hero-browse{margin:24px auto 0;text-align:center;font-size:13px;color:rgba(255,255,255,.72)}
.v3-hero-browse a{color:#fff;font-weight:700;text-decoration:none;margin:0 3px}
.v3-hero-browse a:hover{text-decoration:underline}

/* Offer cards */
.v3-offer{padding:64px 0 0}.v3-offer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.v3-offer-card,.fijidude-v3 a.v3-offer-card,.fijidude-v3 a.v3-offer-card:hover{position:relative;display:flex;align-items:flex-end;min-height:320px;border-radius:24px;overflow:hidden;text-decoration:none!important;color:#fff;isolation:isolate}.v3-offer-media{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform .5s;z-index:-2}.v3-offer-card:hover .v3-offer-media{transform:scale(1.04)}.v3-offer-overlay{position:absolute;inset:0;background:linear-gradient(15deg,rgba(13,8,22,.78) 0%,rgba(13,8,22,.30) 48%,rgba(13,8,22,.02) 75%);z-index:-1}.v3-offer-body{display:flex;flex-direction:column;align-items:flex-start;gap:7px;padding:26px 28px}.v3-offer-chip{padding:7px 12px;border-radius:999px;background:rgba(255,255,255,.92);color:var(--v3-purple-dark);font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;margin-bottom:4px}.v3-offer-body strong{font-size:27px;font-weight:800;line-height:1.15;letter-spacing:-.03em;text-shadow:0 2px 18px rgba(0,0,0,.35)}.v3-offer-desc{font-size:14px;color:rgba(255,255,255,.85)}.v3-offer-cta{display:inline-flex;align-items:center;gap:9px;margin-top:9px;padding:11px 17px;border-radius:999px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.45);backdrop-filter:blur(6px);font-size:13px;font-weight:800;transition:.2s}.v3-offer-card:hover .v3-offer-cta{background:#fff;color:var(--v3-ink)}

/* Experience cards and home blocks */
.bc-list-tour{padding:72px 0}.bc-list-tour>.container>.title{font-size:30px!important;font-weight:800!important;line-height:1.2!important;margin-bottom:30px!important}.bc-list-tour>.container>.title .sub-title{font-size:15px!important;font-weight:500!important;color:var(--v3-muted)!important;margin-top:8px!important}.v3-experience-card{height:100%;background:transparent;min-width:0}.v3-card-media{position:relative;overflow:hidden;border-radius:20px;background:var(--v3-surface-3);aspect-ratio:4/3}.v3-card-media>a{display:block;width:100%;height:100%}.v3-card-image{width:100%!important;height:100%!important;object-fit:cover;transition:transform .45s}.v3-experience-card:hover .v3-card-image{transform:scale(1.035)}.v3-card-badge{position:absolute;top:13px;left:13px;padding:7px 11px;border-radius:999px;background:rgba(255,255,255,.94);font-size:10px;font-weight:800;box-shadow:0 4px 14px rgba(0,0,0,.08)}.v3-card-heart{position:absolute!important;right:12px!important;top:12px!important;left:auto!important;width:38px!important;height:38px!important;display:grid!important;place-items:center!important;border:0!important;border-radius:50%!important;background:rgba(24,20,31,.3)!important;color:#fff!important;font-size:18px!important;backdrop-filter:blur(5px)}.v3-card-heart i{margin:0!important}.v3-card-body{padding:10px 2px 2px}.v3-card-kicker{color:var(--v3-purple);font-size:10px;line-height:1.4;font-weight:800;text-transform:uppercase;letter-spacing:.055em}.v3-card-kicker span{color:#b2abb7;margin:0 3px}.v3-card-body h3{font-size:15px;line-height:1.35;font-weight:800;margin:4px 0 5px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.v3-card-body h3 a{text-decoration:none}.v3-card-meta{display:flex;justify-content:space-between;gap:10px;color:var(--v3-muted);font-size:11px}.v3-card-meta i{color:var(--v3-purple);margin-right:4px}.v3-card-price{display:flex;align-items:baseline;gap:4px;margin-top:6px;font-size:11px;color:var(--v3-muted)}.v3-card-price strong{font-size:14px;color:var(--v3-ink)}.v3-was-price{text-decoration:line-through}.bc-list-tour .row-eq-height{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 18px}.bc-list-tour .row-eq-height:before,.bc-list-tour .row-eq-height:after{display:none}.bc-list-tour .row-eq-height>.col-item{width:auto!important;max-width:none!important;padding:0!important;float:none!important}.bc-list-tour .owl-carousel .v3-experience-card{padding:0 8px}.bc-list-tour .list-item>.row:not(.row-eq-height) .v3-experience-card{margin-bottom:30px}

/* Stock service cards (car/boat/event) → v3 card language */
.fijidude-v3 .item-loop{position:relative;background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;padding:0!important;margin-bottom:6px}
.fijidude-v3 .item-loop .thumb-image{position:relative;overflow:hidden;border-radius:20px;background:var(--v3-surface-3);aspect-ratio:4/3}
.fijidude-v3 .item-loop .thumb-image>a{display:block;width:100%;height:100%}
.fijidude-v3 .item-loop .thumb-image img{width:100%!important;height:100%!important;object-fit:cover;transition:transform .45s}
.fijidude-v3 .item-loop:hover .thumb-image img{transform:scale(1.035)}
.fijidude-v3 .item-loop .featured{position:absolute;z-index:3;top:13px;left:13px;right:auto;bottom:auto;padding:7px 11px;border-radius:999px;background:rgba(255,255,255,.94)!important;color:var(--v3-ink)!important;font-size:10px;font-weight:800;line-height:1;box-shadow:0 4px 14px rgba(0,0,0,.08);text-transform:none}
.fijidude-v3 .item-loop .service-wishlist{position:absolute;z-index:3;right:12px;top:12px;left:auto;width:38px;height:38px;display:grid;place-items:center;border:0;border-radius:50%;background:rgba(24,20,31,.3)!important;color:#fff!important;font-size:18px;backdrop-filter:blur(5px);cursor:pointer}
.fijidude-v3 .item-loop .item-title{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin:4px 2px 0;font-size:15px;line-height:1.35;font-weight:800}
.fijidude-v3 .item-loop .item-title a{color:var(--v3-ink);text-decoration:none;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.fijidude-v3 .item-loop .sale_info{flex:0 0 auto;position:static!important;padding:4px 9px;border-radius:999px;background:var(--v3-purple-tint)!important;color:var(--v3-purple)!important;font-size:10px;font-weight:800;line-height:1.4;transform:none!important;width:auto!important;height:auto!important}
.fijidude-v3 .item-loop .thumb-image .sale_info{position:absolute!important;z-index:3;left:13px;bottom:12px;top:auto;right:auto;background:rgba(255,255,255,.94)!important;box-shadow:0 4px 14px rgba(0,0,0,.08)}
.fijidude-v3 .item-loop .location{margin:10px 2px 0;color:var(--v3-purple);font-size:10px;line-height:1.4;font-weight:800;text-transform:uppercase;letter-spacing:.055em}
.fijidude-v3 .item-loop .service-review{margin:4px 2px 0;font-size:11px;color:var(--v3-muted)}
.fijidude-v3 .item-loop .start-time{margin:6px 2px 0;padding:0!important;border:0!important;color:var(--v3-muted);font-size:11px}
.fijidude-v3 .item-loop .service-review .rate-text{color:var(--v3-purple);font-weight:800}
.fijidude-v3 .item-loop .service-review.v3-new-flag{color:var(--v3-purple);font-weight:800}
.fijidude-v3 .item-loop .service-review.v3-new-flag i{margin-right:4px}
.fijidude-v3 .item-loop .amenities{display:flex;gap:14px;margin:6px 2px 0;padding:0;border:0}
.fijidude-v3 .item-loop .amenities .amenity{display:inline-flex;align-items:center;gap:5px;color:var(--v3-muted);font-size:11px;margin:0;padding:0;border:0}
.fijidude-v3 .item-loop .amenities .amenity i{color:var(--v3-purple);font-size:13px}
.fijidude-v3 .item-loop .info{display:flex;justify-content:flex-start;align-items:baseline;gap:10px;margin:6px 2px 0;padding:0;border:0}
.fijidude-v3 .item-loop .info .duration{color:var(--v3-muted);font-size:11px}
.fijidude-v3 .item-loop .g-price{display:flex;align-items:baseline;gap:5px;font-size:11px;color:var(--v3-muted)}
.fijidude-v3 .item-loop .g-price .prefix{color:var(--v3-muted)}
.fijidude-v3 .item-loop .g-price .onsale{text-decoration:line-through;margin-right:3px}
.fijidude-v3 .item-loop .g-price .text-price{font-size:15px;font-weight:800;color:var(--v3-ink)}
.fijidude-v3 .item-loop.b-bg-white{background:transparent!important}

/* Stock listing pages (car/boat/event): banner + search + filters */
.fijidude-v3 .item-loop .featured:before,.fijidude-v3 .item-loop .featured:after{display:none!important}
.fijidude-v3 .bc_search_car .bc_banner,.fijidude-v3 .bc_search_boat .bc_banner,.fijidude-v3 .bc_search_event .bc_banner{position:relative;min-height:0!important;height:auto!important;padding:64px 0 18px!important;background:var(--v3-surface)!important}
.fijidude-v3 .bc_search_car .bc_banner:before,.fijidude-v3 .bc_search_boat .bc_banner:before,.fijidude-v3 .bc_search_event .bc_banner:before,.fijidude-v3 .bc_search_car .bc_banner:after,.fijidude-v3 .bc_search_boat .bc_banner:after,.fijidude-v3 .bc_search_event .bc_banner:after{display:none!important}
.fijidude-v3 .bc_search_car .bc_banner h1,.fijidude-v3 .bc_search_boat .bc_banner h1,.fijidude-v3 .bc_search_event .bc_banner h1{color:var(--v3-ink)!important;font-size:42px!important;font-weight:800!important;line-height:1.08!important;letter-spacing:-.035em;margin:0!important;text-shadow:none!important}
.fijidude-v3 .bc_form_search{margin-top:0!important;padding:14px 0 26px;background:var(--v3-surface)}
.fijidude-v3 .bc_filter .irs--flat .irs-line{background:var(--v3-surface-3)}
.fijidude-v3 .bc_filter .irs--flat .irs-bar,.fijidude-v3 .bc_filter .irs--flat .irs-from,.fijidude-v3 .bc_filter .irs--flat .irs-to,.fijidude-v3 .bc_filter .irs--flat .irs-single{background:var(--v3-purple)!important}
.fijidude-v3 .bc_filter .irs--flat .irs-handle>i:first-child{background:var(--v3-purple)!important}
.fijidude-v3 .bc_filter .btn-apply-price-range,.fijidude-v3 .bc_filter a{color:var(--v3-purple)}
.fijidude-v3 .bc_form_search .bc_form{border:1px solid var(--v3-line)!important;border-radius:22px!important;box-shadow:0 14px 40px rgba(30,20,42,.09)!important;background:var(--v3-surface)!important}
.fijidude-v3 .bc_form_search .g-button-submit .btn{border-radius:16px!important;font-weight:800!important}
.fijidude-v3 .bc_filter,.fijidude-v3 .bc_search_car .g-filter,.fijidude-v3 .bc_search_boat .g-filter,.fijidude-v3 .bc_search_event .g-filter{border:1px solid var(--v3-line)!important;border-radius:20px!important;box-shadow:none!important;overflow:hidden}
.fijidude-v3 .bc_filter .filter-title{font-weight:800!important}

/* Stock detail pages (car/boat/event) */
.fijidude-v3 .tour-sale-box{position:absolute;top:14px;right:14px;left:auto;width:auto;height:auto;overflow:visible}
.fijidude-v3 .tour-sale-box .sale_class{position:static!important;display:inline-block;width:auto!important;height:auto!important;padding:6px 11px;border-radius:999px;background:var(--v3-purple-tint)!important;color:var(--v3-purple)!important;font-size:11px;font-weight:800;line-height:1.4;transform:none!important;text-indent:0!important}
.fijidude-v3 .tour-sale-box .sale_class:before,.fijidude-v3 .tour-sale-box .sale_class:after{display:none!important}
.fijidude-v3 .bc_single_book_wrap{position:relative;border:1px solid var(--v3-line)!important;border-radius:22px!important;box-shadow:0 18px 50px rgba(30,19,45,.11)!important;overflow:hidden}
.fijidude-v3 .bc_single_book_wrap .bc_single_book{border:0!important;border-radius:0!important}
.fijidude-v3 .v3-new-review-flag{display:inline-flex;align-items:center;gap:8px;padding:10px 15px;border-radius:999px;background:var(--v3-purple-tint);color:var(--v3-purple);font-size:13px;font-weight:800}
.fijidude-v3 .vendor-info-box,.fijidude-v3 .bc-vendor-info{border:1px solid var(--v3-line)!important;border-radius:18px!important;box-shadow:none!important}

/* Listing */
.v3-listing-page{padding-bottom:80px;background:var(--v3-surface)}.v3-listing-hero{padding:64px 0 30px;display:grid;grid-template-columns:.95fr 1.4fr;gap:58px;align-items:end}.v3-listing-hero h1{font-size:42px;font-weight:800;line-height:1.08;margin:10px 0 12px}.v3-listing-hero p{color:var(--v3-muted);font-size:15px;line-height:1.7}.v3-listing-search .bc_form{border:1px solid var(--v3-line)!important;border-radius:22px!important;box-shadow:0 14px 40px rgba(30,20,42,.09)!important}.v3-listing-search .btn-search{border-radius:16px!important}.v3-quick-filters{display:flex;gap:9px;overflow:auto;padding:10px 0 28px;border-bottom:1px solid var(--v3-line)}.v3-quick-filters a{white-space:nowrap;border:1px solid var(--v3-line);border-radius:999px;padding:10px 15px;font-size:12px;font-weight:700;text-decoration:none}.v3-quick-filters a:first-child,.v3-quick-filters a:hover{border-color:var(--v3-ink);background:var(--v3-ink);color:#fff}.v3-results-toolbar{padding:35px 0 25px;display:flex;justify-content:space-between;align-items:end}.v3-results-label{color:var(--v3-purple);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.v3-results-toolbar h2{font-size:25px;font-weight:800;margin:5px 0 0}.v3-toolbar-actions{display:flex;gap:9px;align-items:center}.v3-filter-button,.v3-toolbar-actions .dropdown-toggle{height:44px;border:1px solid var(--v3-line)!important;border-radius:13px!important;background:var(--v3-surface)!important;color:var(--v3-ink)!important;padding:0 15px!important;font-size:12px!important;font-weight:800!important}.v3-filter-button i{margin-right:7px}.v3-filter-panel{padding:22px;margin-bottom:25px;border:1px solid var(--v3-line);border-radius:20px;background:var(--v3-sand)}.v3-filter-panel .filter-title:after{display:none}.v3-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:34px 18px}.v3-pagination{margin-top:50px!important}.v3-pagination .pagination{justify-content:center}.v3-empty-state{grid-column:1/-1;text-align:center;padding:70px 20px;border:1px dashed #d9d2df;border-radius:24px;background:var(--v3-sand)}.v3-empty-state .v3-ai-orb{margin:0 auto 18px}.v3-empty-state h3{font-size:22px;font-weight:800}.v3-empty-state p{color:var(--v3-muted);margin-bottom:24px}.v3-primary-button{display:inline-flex;padding:12px 20px;color:#fff!important;text-decoration:none!important}

/* Detail */
.v3-detail-page{padding:30px 0 95px}.v3-breadcrumb{display:flex;align-items:center;gap:10px;font-size:11px;color:var(--v3-muted);margin-bottom:25px}.v3-breadcrumb a{font-weight:700}.v3-detail-header{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:24px}.v3-detail-header h1{max-width:900px;font-size:38px;line-height:1.13;font-weight:800;margin:7px 0 11px}.v3-detail-subline{display:flex;gap:20px;color:var(--v3-muted);font-size:12px}.v3-detail-subline i{color:var(--v3-purple);margin-right:5px}.v3-detail-actions{display:flex;gap:8px}.v3-detail-actions button{height:42px;border:1px solid var(--v3-line);border-radius:13px;background:var(--v3-surface);padding:0 14px;font-weight:700;font-size:12px}.v3-detail-gallery{overflow:hidden;border-radius:24px;margin-bottom:42px}.v3-detail-gallery .gallery-row{margin:0!important}.v3-detail-gallery img{border-radius:0!important}.v3-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:68px;align-items:start}.v3-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:0 0 31px;border-bottom:1px solid var(--v3-line)}.v3-facts>div{display:flex;gap:11px;align-items:center}.v3-facts i{font-size:24px;color:var(--v3-purple)}.v3-facts span{display:flex;flex-direction:column;color:var(--v3-muted);font-size:10px}.v3-facts strong{color:var(--v3-ink);font-size:12px;margin-bottom:2px}.v3-content-section,.v3-detail-main .g-overview,.v3-detail-main .g-include-exclude,.v3-detail-main .g-itinerary,.v3-detail-main .g-attributes,.v3-detail-main .g-faq,.v3-detail-main .g-location,.v3-detail-main .g-review{padding:34px 0!important;margin:0!important;border-bottom:1px solid var(--v3-line)!important}.v3-detail-main h2,.v3-detail-main h3{font-size:24px!important;font-weight:800!important;margin:0 0 18px!important}.v3-detail-main .description{font-size:14px;line-height:1.85;color:#514b58}.v3-detail-main .location-map #map_content{height:340px!important;border-radius:20px;overflow:hidden}.v3-booking-aside{position:sticky;top:115px}.v3-booking-aside .bc_single_book_wrap{border:1px solid var(--v3-line)!important;border-radius:22px!important;box-shadow:0 18px 50px rgba(30,19,45,.11)!important;overflow:hidden}.v3-booking-aside .bc_single_book{border:0!important}.v3-booking-aside .form-head{padding:22px!important}.v3-booking-aside .form-content{border-top:1px solid var(--v3-line)!important}.v3-booking-aside .submit-group .btn{border-radius:14px!important;background:var(--v3-purple)!important}.v3-ask-detail{display:flex;align-items:center;gap:11px;margin-top:14px;padding:14px;border:1px solid #ded3fa;border-radius:18px;background:var(--v3-surface-2);text-decoration:none!important}.v3-ask-detail .v3-ai-orb{width:38px;height:38px;border-radius:13px}.v3-ask-detail>span:nth-child(2){display:flex;min-width:0;flex:1;flex-direction:column;color:var(--v3-muted);font-size:10px}.v3-ask-detail strong{color:var(--v3-ink);font-size:12px}.v3-ask-detail>.fa{color:var(--v3-purple)}.v3-related{padding-top:55px}.v3-related .bc-list-tour{padding:0}.v3-detail-page .bc-more-book-mobile{border-top:1px solid var(--v3-line);box-shadow:0 -9px 30px rgba(30,20,42,.08)}.v3-detail-page .bc-more-book-mobile .left{display:flex;flex-direction:column}.v3-detail-page .bc-more-book-mobile strong{font-size:17px}

/* Itinerary cards */
.fijidude-v3 .g-itinerary .list-item .item{position:relative;height:350px;border-radius:20px;overflow:hidden;background-size:cover;background-position:center;isolation:isolate}
.fijidude-v3 .g-itinerary .list-item:not(.owl-loaded){display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.fijidude-v3 .g-itinerary .item:before{content:"";position:absolute;inset:0;background:linear-gradient(10deg,rgba(13,8,22,.82) 0%,rgba(13,8,22,.25) 45%,rgba(13,8,22,0) 70%);z-index:1}
.fijidude-v3 .g-itinerary .item .header{position:absolute;left:0;right:0;bottom:0;padding:16px 18px;z-index:2}
.fijidude-v3 .g-itinerary .item .header .item-title{color:#d9c8ff;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.fijidude-v3 .g-itinerary .item .header .item-desc{color:#fff;font-size:16px;font-weight:800;line-height:1.3}
.fijidude-v3 .g-itinerary .item .body{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;justify-content:flex-end;gap:5px;padding:18px;background:rgba(15,9,25,.86);color:#fff;opacity:0;transition:opacity .25s;overflow:auto}
.fijidude-v3 .g-itinerary .item:hover .body,.fijidude-v3 .g-itinerary .item:focus-within .body{opacity:1}
.fijidude-v3 .g-itinerary .item .body .item-title{color:#d9c8ff;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.fijidude-v3 .g-itinerary .item .body .item-desc{color:#fff;font-size:16px;font-weight:800}
.fijidude-v3 .g-itinerary .item .body .item-context{font-size:13px;line-height:1.65;color:rgba(255,255,255,.92)}

/* Final inherited-layout resets */
.page-template-content>.bc-form-search-all{padding:0!important}
.v3-toolbar-actions .bc-form-order{display:flex;align-items:center;gap:9px}
.v3-toolbar-actions .bc-form-order>.item{height:44px;display:flex!important;align-items:center;gap:7px;margin:0!important;padding:0 14px!important;border:1px solid var(--v3-line);border-radius:13px;background:var(--v3-surface);font-size:11px;white-space:nowrap}
.v3-toolbar-actions .bc-form-order>.item a{text-decoration:none;font-weight:800}
.v3-toolbar-actions .bc-form-order .item-title{font-size:11px;color:var(--v3-muted)}
.v3-toolbar-actions .bc-form-order .dropdown-toggle{height:auto!important;border:0!important;padding:0!important;font-size:11px!important}
.v3-ai-result-price .v3-was-price{margin-right:4px}

/* User dashboard */
.user-page{background:var(--v3-sand)}
.user-page .bc_user_profile{background:var(--v3-sand);min-height:70vh}
.user-page .bc_user_profile>.container-fluid{max-width:1280px;margin:0 auto;padding:36px 24px 80px}
body.user-page .bc_wrap .bc_user_profile>.container-fluid{max-width:1280px!important;margin:0 auto!important;padding:36px 24px 80px!important;float:none!important}
body.user-page .bc_wrap .bc_user_profile .container-fluid,body.user-page .bc_wrap .bc_user_profile .row-eq-height,body.user-page .bc_wrap .bc_user_profile .col-md-3,body.user-page .bc_wrap .bc_user_profile .col-md-9{background:transparent!important;min-height:0!important}
body.user-page .bc_wrap .bc_user_profile .col-md-3:before,body.user-page .bc_wrap .bc_user_profile .col-md-3:after{display:none!important;content:none!important}
body.user-page .bc_wrap .sidebar-user .user-profile-avatar,body.user-page .bc_wrap .sidebar-user .user-profile-avatar .info-new,body.user-page .bc_wrap .sidebar-user .user-profile-plan{background:transparent!important;border:0!important}
body.user-page .bc_wrap .sidebar-user .user-profile-avatar h5{color:var(--v3-ink)!important}
body.user-page .bc_wrap .sidebar-user .user-profile-avatar p{color:var(--v3-muted)!important}
.user-page .sidebar-user{position:sticky;top:24px;background:var(--v3-surface)!important;border:1px solid var(--v3-line);border-radius:24px;padding:26px 18px 14px;box-shadow:0 10px 34px rgba(32,18,53,.06)}
.user-page .sidebar-user .bc-close-menu-user{display:none;position:absolute;top:14px;right:14px;width:36px;height:36px;border:1px solid var(--v3-line);border-radius:50%;background:var(--v3-surface);place-items:center;color:var(--v3-ink);font-size:15px;cursor:pointer;z-index:5}
.user-page .sidebar-user .logo{width:86px;height:86px;margin:0 auto 14px;padding:3px;border-radius:50%;background:var(--v3-grad)}
.user-page .sidebar-user .logo .avatar,.user-page .sidebar-user .logo .avatar-text{width:80px;height:80px;border-radius:50%;border:3px solid #fff}
.user-page .sidebar-user .logo .avatar-text{display:grid;place-items:center;background:var(--v3-ink);color:#fff;font-size:30px;font-weight:800}
.user-page .user-profile-avatar .info-new{text-align:center}
.user-page .user-profile-avatar .role-name{display:inline-block;padding:5px 12px;border-radius:999px;background:var(--v3-purple-tint)!important;color:var(--v3-purple)!important;font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.user-page .user-profile-avatar h5{margin:9px 0 3px;font-size:19px;font-weight:800;color:var(--v3-ink);letter-spacing:-.02em}
.user-page .user-profile-avatar p{color:var(--v3-muted);font-size:12px;margin:0 0 8px}
.user-page .user-profile-plan{text-align:center;margin-bottom:10px}
.user-page .user-profile-plan a{display:inline-block;padding:9px 16px;border:1px solid #ded3fa;border-radius:999px;background:var(--v3-surface-2);color:var(--v3-purple);font-size:12px;font-weight:800;text-decoration:none}
.user-page .sidebar-menu{border-top:1px solid var(--v3-line);margin-top:8px;padding-top:12px}
.user-page .sidebar-menu .main-menu{margin:0;padding:0;list-style:none}
.user-page .sidebar-menu .main-menu>li{margin:2px 0;border:0!important}
.user-page .sidebar-menu .main-menu>li>a{display:flex!important;align-items:center!important;gap:11px;padding:10px 12px!important;border-radius:13px;color:#554e5e!important;font-size:13.5px!important;font-weight:700;text-decoration:none!important;transition:.15s;background:transparent!important;border:0!important;line-height:1.3!important}
.user-page .sidebar-menu .main-menu>li>a .icon{width:32px!important;height:32px!important;flex:0 0 auto;display:grid!important;place-items:center;border-radius:10px;background:var(--v3-sand);color:#8d8496;font-size:14px;transition:.15s;margin:0!important;line-height:1!important}
.user-page .sidebar-menu .main-menu>li>a .icon i{margin:0!important;font-size:14px!important;line-height:1!important;color:inherit!important}
.user-page .sidebar-menu .main-menu>li>a:hover .icon{background:var(--v3-purple-soft);color:var(--v3-purple)}
.user-page .sidebar-menu .main-menu>li>a:hover{background:var(--v3-sand)!important;color:var(--v3-ink)!important}
.user-page .sidebar-menu .main-menu>li.active>a{background:var(--v3-purple-tint)!important;color:var(--v3-purple)!important}
.user-page .sidebar-menu .main-menu>li.active>a .icon{background:var(--v3-purple);color:#fff}
.user-page .sidebar-menu .main-menu li .children{margin:2px 0 6px 43px;padding:0;list-style:none;border:0!important;position:static!important;display:block!important;background:transparent!important;box-shadow:none!important;width:auto!important}
.user-page .sidebar-menu .main-menu li .children li a{display:block;padding:7px 10px;border-radius:9px;color:#6f6978!important;font-size:12.5px;font-weight:600;text-decoration:none!important}
.user-page .sidebar-menu .main-menu li .children li.active a,.user-page .sidebar-menu .main-menu li .children li a:hover{color:var(--v3-purple)!important;background:var(--v3-surface-2)!important}
.user-page .sidebar-menu .main-menu li .caret{display:none}
.user-page .sidebar-user .logout{border-top:1px solid var(--v3-line);margin-top:10px;padding:10px 4px 2px}
.user-page .sidebar-user .logout a{display:flex;align-items:center;gap:9px;padding:7px 9px;color:#8d8496!important;font-size:13px;font-weight:700;text-decoration:none!important;border-radius:10px}
.user-page .sidebar-user .logout a:hover{background:var(--v3-sand);color:var(--v3-ink)!important}
.user-page .sidebar-user .logout+.logout{border-top:0;margin-top:0;padding-top:0}
.user-page .user-form-settings{padding-left:16px}
.user-page .title-bar{border:0!important;padding:4px 0 18px!important;margin:0 0 6px!important;font-size:30px!important;font-weight:800!important;letter-spacing:-.035em;color:var(--v3-ink)!important}
.user-page .panel{background:var(--v3-surface);border:1px solid var(--v3-line)!important;border-radius:20px!important;box-shadow:0 10px 34px rgba(32,18,53,.05)!important;margin-bottom:26px;overflow:hidden}
.user-page .panel .panel-title{padding:18px 24px 0;font-size:16px;font-weight:800;color:var(--v3-ink);border:0}
.user-page .panel .panel-body{padding:20px 24px 24px}
.user-page .table{margin:0}
.user-page .table thead th{border:0!important;border-bottom:1px solid var(--v3-line)!important;padding:10px 12px!important;color:var(--v3-muted)!important;font-size:11px!important;font-weight:800!important;letter-spacing:.07em;text-transform:uppercase}
.user-page .table tbody td{border:0!important;border-bottom:1px solid #f2eff5!important;padding:15px 12px!important;vertical-align:middle!important;font-size:13.5px;color:#3f3947}
.user-page .table-hover tbody tr:hover{background:var(--v3-sand)!important}
.user-page .btn-primary,.user-page .btn-info{border-radius:12px!important;font-weight:800!important;font-size:13px!important;padding:9px 16px!important}
.user-page .btn-info,.user-page a.btn-info{background:var(--v3-surface)!important;border:1px solid var(--v3-line)!important;color:var(--v3-ink)!important}
.user-page .btn-info:hover,.user-page a.btn-info:hover{border-color:var(--v3-ink)!important;background:var(--v3-surface)!important;color:var(--v3-ink)!important}
.user-page .btn-change-password{display:inline-flex;align-items:center;padding:9px 16px!important;border:1px solid var(--v3-line)!important;border-radius:999px!important;background:var(--v3-surface)!important;color:var(--v3-ink)!important;font-size:12.5px!important;font-weight:800!important;text-decoration:none!important;transition:.15s}
.user-page .btn-change-password:hover{border-color:var(--v3-purple)!important;color:var(--v3-purple)!important}
.user-page .btn-default{border:1px solid var(--v3-line)!important;border-radius:12px!important;background:var(--v3-surface)!important;color:var(--v3-ink)!important;font-weight:700!important;font-size:13px!important}
.user-page .btn-default:hover{border-color:var(--v3-ink)!important}
.user-page .form-control{border:1px solid var(--v3-line)!important;border-radius:13px!important;min-height:44px;box-shadow:none!important;font-size:14px}
.user-page .form-control:focus{border-color:var(--v3-purple-border)!important;box-shadow:0 0 0 3px rgba(108,44,255,.09)!important}
.user-page label{font-weight:700;color:#4a4452;font-size:13px}
.user-page .pagination>li>a,.user-page .pagination>li>span{border:1px solid var(--v3-line);color:var(--v3-ink);margin:0 3px;border-radius:10px!important;font-weight:700}
.user-page .pagination>.active>a,.user-page .pagination>.active>span{background:var(--v3-purple)!important;border-color:var(--v3-purple)!important}
.user-page .alert-success{border:1px solid #bfe8d2;background:#eafaf1;color:#136c3f;border-radius:14px}
.user-page .breadcrumb-area,.user-page .bc-breadcrumb{background:transparent!important}
@media(max-width:991px){.user-page .sidebar-user{position:relative;margin-bottom:22px;border-radius:0 24px 24px 0;height:100%;overflow-y:auto}.user-page .sidebar-user .bc-close-menu-user{display:grid}.user-page .bc_user_profile .col-md-3{width:290px!important}.user-page .user-form-settings{padding-left:0}.user-page .bc_user_profile>.container-fluid{padding:20px 14px 60px!important}.user-page .title-bar{font-size:25px!important}}

/* Mobile bottom tab bar */
.v3-tabbar{display:none}
@media(max-width:767px){
.v3-tabbar{position:fixed;left:0;right:0;bottom:0;z-index:99980;display:flex;align-items:flex-end;justify-content:space-around;padding:7px 4px calc(9px + env(safe-area-inset-bottom));background:var(--v3-surface-veil);backdrop-filter:blur(14px);border-top:1px solid var(--v3-line)}
.v3-tabbar a,.v3-tabbar button{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;border:0;background:transparent;color:#8d8496;font-size:10px;font-weight:700;text-decoration:none!important;padding:0}
.v3-tabbar a i{font-size:21px}
.v3-tabbar a.active{color:var(--v3-purple)}
.v3-tabbar-ai{color:var(--v3-purple)!important;margin-top:-24px}
.v3-tabbar-orb{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:23px;background:var(--v3-grad);border:4px solid #fff;box-shadow:0 10px 24px rgba(76,19,201,.35)}
body.fijidude-v3{padding-bottom:74px}
.v3-chat{bottom:88px}
.v3-chat-bubble{display:none!important}
.v3-chat-panel{bottom:0;height:86vh}
.v3-detail-page .bc-more-book-mobile{bottom:70px!important}
}

/* Mobile category chips + swipe rails */
.v3-mobile-cats{display:none}
@media(max-width:767px){
.v3-mobile-cats{display:flex;gap:8px;margin:16px -2px 0;padding:2px;overflow-x:auto;scrollbar-width:none}
.v3-mobile-cats::-webkit-scrollbar{display:none}
.v3-mobile-cats a{flex:0 0 auto;display:inline-flex;align-items:center;gap:7px;padding:9px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.4);color:#fff;font-size:12.5px;font-weight:800;text-decoration:none!important;background:rgba(15,9,25,.25);backdrop-filter:blur(8px)}
.v3-mobile-cats a.active{background:var(--v3-surface);color:var(--v3-ink);border-color:#fff}
.v3-hero-browse{display:none}
.fijidude-v3 .bc-list-tour .row-eq-height{display:grid!important;grid-auto-flow:column;grid-auto-columns:46%;grid-template-columns:none!important;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px;scrollbar-width:none}
.fijidude-v3 .bc-list-tour .row-eq-height::-webkit-scrollbar{display:none}
.fijidude-v3 .bc-list-tour .row-eq-height>.col-item{scroll-snap-align:start}
.fijidude-v3 .bc-list-car .list-item>.row,.fijidude-v3 .bc-list-boat .list-item>.row,.fijidude-v3 .bc-list-event .list-item>.row,.fijidude-v3 .bc-list-locations .list-item>.row,.fijidude-v3 .bc-list-news .list-item>.row{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px;scrollbar-width:none}
.fijidude-v3 .bc-list-car .list-item>.row::-webkit-scrollbar,.fijidude-v3 .bc-list-boat .list-item>.row::-webkit-scrollbar,.fijidude-v3 .bc-list-event .list-item>.row::-webkit-scrollbar,.fijidude-v3 .bc-list-locations .list-item>.row::-webkit-scrollbar,.fijidude-v3 .bc-list-news .list-item>.row::-webkit-scrollbar{display:none}
.fijidude-v3 .bc-list-car .list-item>.row>[class*=col-],.fijidude-v3 .bc-list-boat .list-item>.row>[class*=col-],.fijidude-v3 .bc-list-event .list-item>.row>[class*=col-]{flex:0 0 46%!important;max-width:46%!important;scroll-snap-align:start}
.fijidude-v3 .bc-list-news .list-item>.row>[class*=col-]{flex:0 0 72%!important;max-width:72%!important;scroll-snap-align:start}
.fijidude-v3 .bc-list-locations .list-item>.row>[class*=col-]{flex:0 0 46%!important;max-width:46%!important;scroll-snap-align:start}
}

/* Compact mobile listing mode */
.v3-listing-controls{display:none}
@media(max-width:767px){
body.v3-compact-listing .v3-listing-controls{display:flex;gap:8px;margin:2px 0 14px}
.v3-listing-controls button{display:inline-flex;align-items:center;gap:8px;padding:10px 15px;border:1px solid var(--v3-line);border-radius:999px;background:var(--v3-surface);color:var(--v3-ink);font-size:12.5px;font-weight:800}
.v3-listing-controls button.active{border-color:var(--v3-purple);background:var(--v3-purple-tint);color:var(--v3-purple)}
body.v3-compact-listing .v3-listing-search,body.v3-compact-listing .bc_form_search .bc_form{display:none!important}
body.v3-compact-listing.v3-open-search .v3-listing-search,body.v3-compact-listing.v3-open-search .bc_form_search .bc_form{display:block!important}
body.v3-compact-listing .v3-filter-panel,body.v3-compact-listing .bc_filter,body.v3-compact-listing .g-filter{display:none!important}
body.v3-compact-listing.v3-open-filters .v3-filter-panel,body.v3-compact-listing.v3-open-filters .bc_filter,body.v3-compact-listing.v3-open-filters .g-filter{display:block!important}
body.v3-compact-listing .bc_form_search{margin:0!important;padding:0!important}
body.v3-compact-listing .bc_search_car .bc_banner,body.v3-compact-listing .bc_search_boat .bc_banner,body.v3-compact-listing .bc_search_event .bc_banner,body.v3-compact-listing .bc-news .bc_banner{padding:20px 0 10px!important}
body.v3-compact-listing .bc_search_car .bc_banner h1,body.v3-compact-listing .bc_search_boat .bc_banner h1,body.v3-compact-listing .bc_search_event .bc_banner h1,body.v3-compact-listing .bc-news .bc_banner h1{font-size:26px!important}
body.v3-compact-listing .v3-listing-hero{padding:18px 0 2px;gap:8px;grid-template-columns:1fr}
body.v3-compact-listing .v3-listing-hero .v3-eyebrow,body.v3-compact-listing .v3-listing-hero p{display:none}
body.v3-compact-listing .v3-listing-hero h1{font-size:26px;margin:0 0 10px}
body.v3-compact-listing .v3-quick-filters{padding:0 0 14px;border-bottom:0}
body.v3-compact-listing .v3-quick-filters a{padding:8px 13px;font-size:11.5px}
body.v3-compact-listing .v3-results-toolbar{padding:2px 0 14px;gap:10px}
body.v3-compact-listing .v3-results-toolbar h2{font-size:17px;margin:0}
body.v3-compact-listing .v3-results-label{font-size:10px}
body.v3-compact-listing .v3-toolbar-actions{flex-direction:row;flex-wrap:wrap}
body.v3-compact-listing .v3-results-toolbar .v3-filter-button{display:none}
body.v3-compact-listing .v3-results-toolbar{flex-direction:column;align-items:stretch}
body.v3-compact-listing .v3-results-toolbar>div:first-child{display:flex;align-items:baseline;gap:8px}
body.v3-compact-listing .v3-toolbar-actions{justify-content:flex-start}
.v3-listing-page .list-item>.row{display:flex;flex-wrap:wrap;margin:0 -6px}
.v3-listing-page .list-item>.row>[class*=col-]{flex:0 0 50%!important;max-width:50%!important;padding:0 6px!important}
.v3-listing-page .item-loop .item-title{font-size:13px;line-height:1.35;margin-top:10px}
.v3-listing-page .item-loop .thumb-image{aspect-ratio:1/1;border-radius:16px}
.v3-listing-page .item-loop .location,.v3-listing-page .item-loop .service-review{font-size:11px}
}

/* Unified grid density: 4-across on desktop everywhere */
@media(min-width:1200px){
.v3-listing-page .list-item>.row>[class*=col-]{flex:0 0 25%!important;max-width:25%!important}
.fijidude-v3 .bc-list-car .list-item>.row>[class*=col-],.fijidude-v3 .bc-list-boat .list-item>.row>[class*=col-],.fijidude-v3 .bc-list-event .list-item>.row>[class*=col-]{flex:0 0 25%!important;max-width:25%!important}
.fijidude-v3 .bc-list-locations .list-item>.row>[class*=col-]{flex:0 0 25%!important;max-width:25%!important}
}

/* Blog / news page grid */
.v3-news-page .v3-listing-hero{grid-template-columns:1fr;padding-bottom:24px}
.v3-news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 18px}
.v3-news-grid .item-news{margin:0}
.v3-news-page .v3-results-toolbar{padding-top:28px}
@media(max-width:991px){.v3-news-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.v3-news-grid{gap:22px 12px}}

/* ===== Unified listing detail (Tour / Boat / Car / Event) ===== */
.v3-listing{padding-bottom:120px;background:var(--v3-surface)}
@media(min-width:992px){.v3-listing{padding-bottom:80px}}
.v3-listing-topbar{position:sticky;top:0;z-index:60;display:flex;align-items:center;gap:9px;
  padding:10px 14px;background:var(--v3-surface-veil);backdrop-filter:blur(14px);border-bottom:1px solid var(--v3-line)}
.v3-tb-ic{width:34px;height:34px;flex:0 0 auto;border:1px solid var(--v3-line);border-radius:50%;background:var(--v3-surface);
  display:grid;place-items:center;color:var(--v3-ink);font-size:14px;text-decoration:none!important;cursor:pointer}
.v3-tb-crumb{flex:1;min-width:0;text-align:center;font-size:12px;font-weight:700;color:var(--v3-muted);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(min-width:992px){.v3-listing-topbar{display:none}}
.v3-listing .v3-breadcrumb{display:none}
@media(min-width:992px){.v3-listing .v3-breadcrumb{display:flex;padding-top:26px}}

/* gallery mosaic */
.v3-gallery{display:grid;gap:6px;grid-template-columns:1fr 1fr;grid-auto-rows:112px;
  margin:12px 0 4px;border-radius:20px;overflow:hidden}
.v3-shot{padding:0;border:0;background:var(--v3-surface-3);overflow:hidden;position:relative;display:block;cursor:pointer}
.v3-shot img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}
.v3-shot:hover img{transform:scale(1.04)}
.v3-shot-more{position:absolute;right:9px;bottom:9px;background:rgba(255,255,255,.95);border-radius:999px;
  padding:6px 11px;font-size:10.5px;font-weight:800;color:var(--v3-ink)}
.v3-gallery>.v3-shot:first-child{grid-column:1/-1;grid-row:span 2}
.v3-gallery-1>.v3-shot:first-child{grid-row:span 2}
/* Below the desktop breakpoint only the first shot was placed, so a two- or
   three-image set left the rest to auto-flow into half-width orphan tiles
   under a full-bleed hero. Place them explicitly instead: on a narrow screen
   a stacked pair reads far better than one big frame and a stray thumbnail. */
.v3-gallery-2>.v3-shot:nth-child(2){grid-column:1/-1;grid-row:span 2}
.v3-gallery-3>.v3-shot:nth-child(2),
.v3-gallery-3>.v3-shot:nth-child(3){grid-row:span 1}
@media(min-width:992px){
  .v3-gallery{grid-template-columns:2fr 1fr 1fr;grid-auto-rows:168px;gap:8px;margin:8px 0 34px}
  .v3-gallery>.v3-shot:first-child{grid-column:1;grid-row:span 2}
  .v3-gallery-1>.v3-shot:first-child,.v3-gallery-2>.v3-shot:first-child{grid-column:1/3}
  .v3-gallery-2>.v3-shot:nth-child(2),.v3-gallery-3>.v3-shot:nth-child(2){grid-row:span 2}
}

/* layout */
.v3-listing-layout{display:grid;grid-template-columns:1fr;gap:0}
@media(min-width:992px){.v3-listing-layout{grid-template-columns:minmax(0,1fr) 370px;gap:64px;align-items:start}}
.v3-listing-main{min-width:0}

/* title block */
.v3-listing-title{padding:20px 0 2px;text-align:center}
.v3-listing-title h1{font-size:26px;line-height:1.16;font-weight:800;margin:9px 0 9px;letter-spacing:-.03em}
.v3-listing-tagline{color:var(--v3-muted);font-size:14.5px;line-height:1.6;margin:0 auto;max-width:56ch}
.v3-listing-rating{margin-top:12px;font-size:13px;font-weight:700}
.v3-listing-rating i{color:var(--v3-purple);margin-right:5px}
.v3-listing-rating .is-new{color:var(--v3-purple)}
.v3-listing-actions{display:none}
@media(min-width:992px){
  .v3-listing-title{text-align:left;padding:4px 0 2px;position:relative}
  .v3-listing-title h1{font-size:36px;margin:8px 0 10px;max-width:22ch}
  .v3-listing-tagline{margin:0}
  .v3-listing-actions{display:flex;gap:8px;position:absolute;top:0;right:0}
  .v3-listing-actions button{height:40px;border:1px solid var(--v3-line);border-radius:12px;background:var(--v3-surface);
    padding:0 14px;font-weight:700;font-size:12px;color:var(--v3-ink);cursor:pointer}
  .v3-listing-actions button:hover{border-color:var(--v3-ink)}
}

/* highlights — the universal adapter */
.v3-highlights{display:grid;gap:0;margin-top:20px;padding:6px 0 18px;border-top:1px solid var(--v3-line);
  border-bottom:1px solid var(--v3-line)}
@media(min-width:992px){.v3-highlights{grid-template-columns:1fr 1fr;gap:0 26px;padding:14px 0}}
.v3-highlights>div{display:grid;grid-template-columns:40px 1fr;gap:13px;align-items:center;padding:11px 0}
.v3-hl-ico{width:40px;height:40px;border-radius:13px;background:var(--v3-purple-tint);display:grid;
  place-items:center;color:var(--v3-purple);font-size:18px}
.v3-hl-txt{display:flex;flex-direction:column;min-width:0}
.v3-hl-txt b{font-size:14.5px;font-weight:700;line-height:1.3}
.v3-hl-txt span{font-size:12.5px;color:var(--v3-muted)}

.v3-listing-address{color:var(--v3-muted);font-size:14px;margin:-6px 0 16px}
.v3-plan .g-itinerary>h3{display:none}

/* faqs */
.v3-faqs details{border-bottom:1px solid var(--v3-line);padding:13px 0}
.v3-faqs summary{font-weight:700;font-size:14.5px;cursor:pointer;list-style:none;display:flex;
  justify-content:space-between;gap:12px}
.v3-faqs summary::-webkit-details-marker{display:none}
.v3-faqs summary:after{content:"+";color:var(--v3-purple);font-weight:800}
.v3-faqs details[open] summary:after{content:"\2013"}
.v3-faqs details>div{padding-top:9px;color:var(--v3-muted);font-size:14px;line-height:1.7}

/* floating booking pill (mobile) */
.v3-book-pill{display:none}
@media(max-width:991px){
  .v3-book-pill{position:fixed;left:10px;right:10px;bottom:calc(68px + env(safe-area-inset-bottom));z-index:99970;
    display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 10px 9px 17px;
    background:var(--v3-surface);border:1px solid var(--v3-line);border-radius:999px;box-shadow:0 14px 36px rgba(20,10,40,.22)}
  .v3-book-pill-price{line-height:1.25;min-width:0}
  .v3-book-pill-price div{display:flex;align-items:baseline;gap:6px}
  .v3-book-pill-price s{font-size:12px;color:var(--v3-muted)}
  .v3-book-pill-price b{font-size:17px;font-weight:800}
  .v3-book-pill-price span{font-size:11px;color:var(--v3-muted)}
  .v3-book-pill button{flex:0 0 auto;border:0;background:var(--v3-purple);color:#fff;font-weight:800;
    font-size:13px;padding:12px 20px;border-radius:999px;cursor:pointer}
  body.v3-book-open .v3-book-pill{display:none}
}

/* Date picker inside the mobile booking sheet.
   daterangepicker appends itself to <body> at z-index 3001 and positions
   absolutely against the document — behind the sheet (99995) and adrift once
   the sheet scrolls. Present it as its own bottom sheet instead. */
@media(max-width:991px){
  body.v3-book-open .daterangepicker{
    position:fixed!important;top:auto!important;left:0!important;right:0!important;bottom:0!important;
    width:100%!important;max-width:100%!important;margin:0!important;z-index:100050!important;
    max-height:78vh;overflow:auto;border:0!important;border-radius:22px 22px 0 0!important;
    box-shadow:0 -18px 60px rgba(10,5,20,.42);
    padding-bottom:calc(12px + env(safe-area-inset-bottom))}
  body.v3-book-open .daterangepicker:before,body.v3-book-open .daterangepicker:after{display:none!important}
  body.v3-book-open .daterangepicker .drp-calendar{max-width:none!important;width:100%!important;float:none!important}
  body.v3-book-open .daterangepicker .calendar-table{width:100%}
  body.v3-book-open .daterangepicker .calendar-table td,
  body.v3-book-open .daterangepicker .calendar-table th{padding:10px 0;font-size:14px}
  body.v3-book-open .daterangepicker .drp-buttons{padding:12px 14px}
  body.v3-book-open .daterangepicker .drp-buttons .btn{padding:10px 18px;border-radius:12px;font-weight:800}
  /* dim the sheet behind the open calendar */
  body.v3-book-open.v3-date-open:after{content:"";position:fixed;inset:0;
    background:rgba(12,7,20,.45);z-index:100040}
}

/* ===== Checkout ===== */
.v3-checkout{padding:26px 0 130px;background:var(--v3-surface)}
@media(min-width:992px){.v3-checkout{padding:36px 0 90px}}
.v3-checkout-head{margin-bottom:26px}
.v3-checkout-head h1{font-size:28px;font-weight:800;letter-spacing:-.03em;margin:8px 0 0}
@media(min-width:992px){.v3-checkout-head h1{font-size:36px}}
.v3-checkout-layout{display:grid;grid-template-columns:1fr;gap:28px}
@media(min-width:992px){.v3-checkout-layout{grid-template-columns:minmax(0,1fr) 380px;gap:56px;align-items:start}}
.v3-checkout-main{min-width:0}

.v3-form-section{padding:0 0 26px;margin-bottom:24px;border-bottom:1px solid var(--v3-line)}
.v3-form-section:last-of-type{border-bottom:0}
.v3-form-section h2{font-size:19px;font-weight:800;letter-spacing:-.02em;margin:0 0 16px}
.v3-field{margin-bottom:16px}
.v3-field-row{display:grid;grid-template-columns:1fr;gap:0}
@media(min-width:600px){.v3-field-row{grid-template-columns:1fr 1fr;gap:16px}}
.v3-field label{display:block;font-size:12.5px;font-weight:700;color:var(--v3-ink);margin-bottom:7px}
.v3-form .form-control,.v3-form select.form-control{width:100%;height:52px;padding:0 15px;
  border:1px solid var(--v3-line)!important;border-radius:14px!important;background:var(--v3-surface);
  font-size:15px;color:var(--v3-ink);box-shadow:none!important;transition:border-color .15s,box-shadow .15s}
.v3-form select.form-control{appearance:none;-webkit-appearance:none;padding-right:38px;
  background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236f6978' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 13px center;background-size:17px}
.v3-form .form-control:focus{border-color:var(--v3-purple)!important;
  box-shadow:0 0 0 3px var(--v3-purple-tint)!important;outline:0}
.v3-form .form-control::placeholder{color:#a7a1af}
.v3-field small{display:block;margin-top:6px;font-size:11.5px;color:var(--v3-muted)}

/* payment cards */
.v3-gateways{display:grid;gap:10px}
.v3-gateway{border:1px solid var(--v3-line)!important;border-radius:16px!important;overflow:hidden;
  background:var(--v3-surface)!important;box-shadow:none!important;margin:0!important}
.v3-gateway-head{display:flex;align-items:center;gap:12px;margin:0;padding:15px 16px!important;
  background:var(--v3-surface)!important;border:0!important;cursor:pointer;font-weight:700;font-size:14.5px}
.v3-gateway-head input[type=radio]{position:absolute;opacity:0;pointer-events:none}
.v3-gateway-radio{flex:0 0 auto;width:21px;height:21px;border-radius:50%;border:2px solid #cfc8d8;
  display:grid;place-items:center;transition:.15s}
.v3-gateway-radio:after{content:"";width:10px;height:10px;border-radius:50%;background:var(--v3-purple);
  transform:scale(0);transition:transform .15s}
.v3-gateway-head input:checked~.v3-gateway-radio{border-color:var(--v3-purple)}
.v3-gateway-head input:checked~.v3-gateway-radio:after{transform:scale(1)}
.v3-gateway:has(input:checked){border-color:var(--v3-purple)!important;background:var(--v3-purple-tint)!important}
.v3-gateway:has(input:checked) .v3-gateway-head{background:transparent!important}
.v3-gateway-name{flex:1;min-width:0}
.v3-gateway-logo{max-height:26px;width:auto}
.v3-gateway-body{padding:0 16px}
.v3-gateway-body.show{padding:0 16px 15px}
.v3-gateway-body:empty{display:none}

/* terms + pay */
.v3-terms{display:flex;align-items:flex-start;gap:11px;margin:4px 0 20px;font-size:13.5px;
  color:var(--v3-muted);line-height:1.55;cursor:pointer;font-weight:400}
.v3-terms input{flex:0 0 auto;width:19px;height:19px;margin-top:1px;accent-color:var(--v3-purple)}
.v3-terms a{color:var(--v3-purple);font-weight:700}
.v3-pay-btn{width:100%;height:56px;border:0;border-radius:16px;background:var(--v3-purple)!important;
  color:#fff!important;font-size:16px;font-weight:800;cursor:pointer;transition:background .15s;
  display:inline-flex;align-items:center;justify-content:center;gap:10px}
.v3-pay-btn:hover{background:var(--v3-purple-dark)!important}
.v3-pay-trust{display:flex;flex-wrap:wrap;justify-content:center;gap:18px;margin-top:14px;
  font-size:12px;color:var(--v3-muted)}
.v3-pay-trust i{color:var(--v3-lagoon);margin-right:5px}
.v3-checkout-msg{margin:14px 0 0;font-size:13.5px}
.v3-checkout-msg.danger{color:var(--v3-coral)}

/* order summary */
.v3-checkout-aside .v3-summary{border:1px solid var(--v3-line);border-radius:20px;padding:20px;
  background:var(--v3-surface);box-shadow:0 14px 40px rgba(30,19,45,.07)}
@media(min-width:992px){.v3-checkout-aside{position:sticky;top:96px}}
.v3-summary .booking-item-title,.v3-summary h3,.v3-summary h4{font-size:16px!important;font-weight:800!important;
  margin:0 0 14px!important;line-height:1.35!important}
.v3-summary .item,.v3-summary li{font-size:13.5px}
.v3-summary .form-control{height:46px}
@media(max-width:991px){
  .v3-checkout-layout{display:flex;flex-direction:column}
  .v3-checkout-aside{order:-1}
  .v3-checkout-aside .v3-summary{padding:16px;border-radius:16px}
}

/* Booking confirmation actions */
.v3-booking-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:26px 0 8px}
.v3-receipt-btn{display:inline-flex;align-items:center;gap:9px;padding:13px 22px;border-radius:14px;
  background:var(--v3-purple);color:#fff!important;font-size:14px;font-weight:800;text-decoration:none!important;
  border:1px solid var(--v3-purple);transition:.15s}
.v3-receipt-btn:hover{background:var(--v3-purple-dark);border-color:var(--v3-purple-dark)}
.v3-receipt-btn.is-ghost{background:var(--v3-surface);color:var(--v3-ink)!important;border-color:var(--v3-line)}
.v3-receipt-btn.is-ghost:hover{border-color:var(--v3-ink);background:var(--v3-surface)}

/* ===== Supplier profile: hero, gallery, content ===== */
.v3-supplier.has-hero{padding-top:0}
.v3-supplier-hero{position:relative;isolation:isolate;height:clamp(280px,52vw,520px);overflow:hidden;background:#1b1226}
.v3-supplier-hero img{width:100%;height:100%;object-fit:cover;display:block}
.v3-supplier-hero-veil{position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(18,10,28,.10) 0%,rgba(18,10,28,.30) 45%,rgba(18,10,28,.86) 100%)}
.v3-supplier-hero-body{position:absolute;left:0;right:0;bottom:0;padding-bottom:clamp(20px,4vw,38px);color:#fff}
.v3-supplier-hero-body h1{font-size:clamp(28px,5.4vw,52px);font-weight:800;letter-spacing:-.035em;
  margin:6px 0 0;color:#fff;text-shadow:0 2px 26px rgba(0,0,0,.42);max-width:18ch;line-height:1.06}
.v3-card-kicker.is-light{color:rgba(255,255,255,.94);text-shadow:0 1px 14px rgba(0,0,0,.5)}
.v3-card-kicker.is-light span{opacity:.6;margin:0 7px}
.v3-supplier-tagline{font-size:clamp(15px,2.1vw,19px);line-height:1.5;margin:12px 0 0;
  color:rgba(255,255,255,.94);max-width:46ch;text-shadow:0 1px 16px rgba(0,0,0,.5);font-weight:500}
.v3-supplier-tagline.is-dark{color:var(--v3-muted);text-shadow:none;margin:10px 0 14px}
.v3-credit{font-size:11.5px;color:var(--v3-muted);margin:9px 0 0;letter-spacing:.01em}
.v3-supplier-hero-wrap{position:relative}
.v3-credit.is-on-image{display:block;padding:8px 20px 0;color:var(--v3-muted)}
@media(min-width:768px){
  .v3-credit.is-on-image{position:absolute;right:16px;bottom:10px;z-index:2;padding:0;
    color:rgba(255,255,255,.74);text-shadow:0 1px 8px rgba(0,0,0,.75);max-width:50%;text-align:right;line-height:1.4}
}

.v3-supplier.has-hero .v3-supplier-head{padding-top:0;margin-top:2px}
.v3-supplier.has-hero .v3-breadcrumb{margin-top:14px}
.v3-supplier-head-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.v3-ghost-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 17px;border-radius:14px;
  border:1px solid var(--v3-line);background:var(--v3-surface);color:var(--v3-ink);font-size:13.5px;font-weight:700;
  cursor:pointer;transition:.15s}
.v3-ghost-btn:hover{border-color:var(--v3-purple);color:var(--v3-purple)}

.v3-supplier-gallery{display:grid;gap:8px;margin:6px 0 0;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
@media(min-width:768px){.v3-supplier-gallery{grid-template-columns:repeat(4,1fr)}}
.v3-shot{padding:0;border:0;background:var(--v3-surface-3);border-radius:14px;overflow:hidden;cursor:pointer;
  aspect-ratio:4/3;display:block}
.v3-shot img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}
.v3-shot:hover img{transform:scale(1.05)}

.v3-supplier-lede{font-size:clamp(15.5px,1.9vw,17.5px);line-height:1.72;color:#38313f;max-width:68ch}
.v3-pill{display:inline-flex;align-items:center;padding:8px 15px;border-radius:999px;font-size:13px;
  font-weight:650;background:var(--v3-purple-tint);color:var(--v3-purple);border:1px solid var(--v3-purple-border)}
.v3-pill.is-strong{background:var(--v3-purple);color:#fff;border-color:var(--v3-purple)}
.v3-tick-grid{list-style:none;padding:0;margin:4px 0 0;display:grid;gap:10px 22px;
  grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}
.v3-tick-grid.is-tight{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:9px 18px}
.v3-tick-grid li{display:flex;gap:10px;align-items:flex-start;font-size:14.5px;line-height:1.5;color:#413a4a}
.v3-tick-grid i{color:var(--v3-purple);font-size:12px;margin-top:4px;flex:0 0 auto}
.v3-content-section{padding:26px 0;border-bottom:1px solid var(--v3-line)}
.v3-content-section:last-child{border-bottom:0}
.v3-content-section h2{font-size:clamp(19px,2.6vw,25px);font-weight:800;letter-spacing:-.025em;margin:0 0 14px}

/* ===== Supplier directory ===== */
.v3-supplier{padding:26px 0 90px;background:var(--v3-surface)}
.v3-supplier-head{display:flex;flex-wrap:wrap;gap:18px;justify-content:space-between;align-items:flex-start;margin-bottom:18px}
.v3-supplier-head h1{font-size:clamp(26px,4vw,38px);font-weight:800;letter-spacing:-.03em;margin:8px 0 12px;max-width:20ch}
.v3-supplier-badges{display:flex;flex-wrap:wrap;gap:8px}
.v3-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;
  border:1px solid var(--v3-line);background:var(--v3-surface);font-size:11.5px;font-weight:800;color:var(--v3-muted)}
.v3-badge i{font-size:12px}
.v3-badge.is-claimed{border-color:var(--v3-purple-border);color:var(--v3-purple);background:var(--v3-purple-tint)}
.v3-badge.is-verified{border-color:#2e7d32;color:#2e7d32;background:#eef7ef}
.v3-badge.is-quiet{font-weight:600}
.v3-claim-btn{display:inline-flex;align-items:center;gap:9px;padding:13px 20px;border-radius:14px;
  background:var(--v3-purple);color:#fff!important;font-size:13.5px;font-weight:800;text-decoration:none!important;
  border:1px solid var(--v3-purple);transition:.15s;white-space:nowrap}
.v3-claim-btn:hover{background:var(--v3-purple-dark)}
.v3-claim-btn.is-block{display:flex;justify-content:center;width:100%;margin:14px 0 10px}
.v3-supplier-notice{border:1px solid #e6dcc0;background:#fdf8ec;border-radius:14px;padding:15px 18px;
  font-size:13.5px;line-height:1.65;color:#6a5a33;margin-bottom:28px}
.v3-supplier-notice strong{color:#4a3f22;display:block;margin-bottom:3px}
.v3-supplier-layout{display:grid;grid-template-columns:1fr;gap:30px}
@media(min-width:992px){.v3-supplier-layout{grid-template-columns:minmax(0,1fr) 340px;gap:56px;align-items:start}}
.v3-supplier-main{min-width:0}
.v3-fact-list{list-style:none;padding:0;margin:0;display:grid;gap:1px}
.v3-fact-list li{display:grid;grid-template-columns:170px 1fr;gap:14px;padding:11px 0;border-bottom:1px solid var(--v3-line);font-size:14.5px}
.v3-fact-list li:last-child{border-bottom:0}
.v3-fact-list b{font-weight:700;color:var(--v3-ink)}
.v3-fact-list span{color:#4c4655}
@media(max-width:600px){.v3-fact-list li{grid-template-columns:1fr;gap:2px}}
.v3-price-line{font-size:20px;margin-bottom:6px}
.v3-dated{font-size:12.5px;color:var(--v3-muted);line-height:1.6}
.v3-sources ol{padding-left:20px;font-size:13.5px;color:var(--v3-muted);display:grid;gap:7px}
.v3-sources a{color:var(--v3-purple);font-weight:600}
.v3-guide-links{list-style:none;padding:0;margin:0;display:grid;gap:9px}
.v3-guide-links a{font-size:15px;font-weight:700;color:var(--v3-purple);text-decoration:none}
.v3-guide-links a:hover{text-decoration:underline}
.v3-supplier-product{display:flex;gap:12px;align-items:center;padding:11px;border:1px solid var(--v3-line);
  border-radius:16px;text-decoration:none!important;color:var(--v3-ink)!important;transition:.15s}
.v3-supplier-product:hover{border-color:var(--v3-purple);box-shadow:0 10px 24px rgba(30,18,45,.09)}
.v3-supplier-product img{width:74px;height:60px;object-fit:cover;border-radius:11px;flex:0 0 auto}
.v3-supplier-product span{display:flex;flex-direction:column;min-width:0}
.v3-supplier-product strong{font-size:13.5px;line-height:1.35}
.v3-supplier-product small{color:var(--v3-muted);font-size:12px;margin-top:3px}
.v3-supplier-card{border:1px solid var(--v3-line);border-radius:20px;padding:20px;background:var(--v3-surface);
  box-shadow:0 14px 40px rgba(30,19,45,.07)}
@media(min-width:992px){.v3-supplier-aside{position:sticky;top:96px}}
.v3-supplier-card h3{font-size:16px;font-weight:800;margin:0 0 12px}
.v3-supplier-grid{display:grid;gap:18px;grid-template-columns:repeat(auto-fill,minmax(min(250px,100%),1fr))}
@media(max-width:520px){.v3-supplier-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}}
.v3-supplier-card-link{display:flex;flex-direction:column;gap:11px;min-width:0;text-decoration:none!important;
  color:var(--v3-ink)!important;border-radius:18px;transition:transform .18s ease}
.v3-supplier-card-link:hover{transform:translateY(-3px)}
.v3-supplier-card-shot{position:relative;display:block;aspect-ratio:4/3;border-radius:16px;overflow:hidden;
  background:var(--v3-surface-3);box-shadow:0 8px 22px rgba(30,19,45,.10)}
.v3-supplier-card-shot img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}
.v3-supplier-card-link:hover .v3-supplier-card-shot img{transform:scale(1.06)}
.v3-supplier-card-blank{display:flex;align-items:center;justify-content:center;width:100%;height:100%;
  color:var(--v3-purple);opacity:.35;font-size:34px}
.v3-supplier-card-flag{position:absolute;top:10px;left:10px;padding:5px 10px;border-radius:999px;
  background:rgba(24,14,36,.82);color:#fff;font-size:10.5px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.v3-supplier-card-body{display:flex;flex-direction:column;gap:4px;padding:0 2px}
/* Keep the kicker to one line so cards in a row stay aligned. */
.v3-supplier-card-body .v3-card-kicker{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.v3-supplier-card-body strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;
  overflow:hidden;min-height:2.64em}
.v3-supplier-card-body strong{font-size:15.5px;font-weight:800;line-height:1.32;letter-spacing:-.015em}
@media(max-width:520px){.v3-supplier-card-body strong{font-size:14px}}
.v3-supplier-card-meta{font-size:12.5px;color:var(--v3-muted)}
.v3-supplier-card-body .v3-badge{align-self:flex-start;margin-top:4px}
.v3-quick-filters a.is-active{background:var(--v3-purple);color:#fff;border-color:var(--v3-purple)}

/* photo lightbox */
.v3-lightbox{position:fixed;inset:0;z-index:99999;background:rgba(10,6,18,.95);display:grid;place-items:center;
  padding:20px}
.v3-lightbox img{max-width:94vw;max-height:84vh;border-radius:12px;display:block}
.v3-lightbox button{position:absolute;border:0;background:rgba(255,255,255,.14);color:#fff;width:46px;height:46px;
  border-radius:50%;font-size:20px;cursor:pointer;display:grid;place-items:center}
.v3-lightbox button:hover{background:rgba(255,255,255,.26)}
.v3-lb-close{top:18px;right:18px}
.v3-lb-prev{left:14px;top:50%;transform:translateY(-50%)}
.v3-lb-next{right:14px;top:50%;transform:translateY(-50%)}
.v3-lb-count{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);color:rgba(255,255,255,.75);
  font-size:12px;font-weight:700}

/* Blog article page */
.v3-article{padding:30px 0 90px;background:var(--v3-surface)}
.v3-article-header{max-width:760px;margin:6px auto 26px;text-align:center}
.v3-article-header h1{font-size:40px;line-height:1.12;font-weight:800;margin:12px 0 16px}
.v3-article-header .v3-eyebrow{text-decoration:none}
.v3-article-meta{display:flex;justify-content:center;align-items:center;gap:18px;color:var(--v3-muted);font-size:12.5px}
.v3-article-meta i{color:var(--v3-purple);margin-right:5px}
.v3-article-share{border:1px solid var(--v3-line);border-radius:999px;background:var(--v3-surface);padding:7px 14px;font-size:12px;font-weight:800;color:var(--v3-ink)}
.v3-article-hero{max-width:1010px;margin:0 auto 40px;border-radius:24px;overflow:hidden}
.v3-article-hero img{width:100%;max-height:520px;object-fit:cover;display:block}
.v3-article-body{max-width:760px;margin:0 auto;font-size:16.5px;line-height:1.85;color:#3d3745}
.v3-article-body p{margin:0 0 22px}
.v3-article-body h2{font-size:26px;font-weight:800;letter-spacing:-.03em;margin:38px 0 14px}
.v3-article-body h3{font-size:20px;font-weight:800;margin:30px 0 12px}
.v3-article-body img{width:100%;height:auto;border-radius:18px;margin:8px 0 22px}
.v3-article-body a{color:var(--v3-purple);font-weight:700;text-decoration:none;border-bottom:2px solid var(--v3-purple-soft)}
.v3-article-body a:hover{border-color:var(--v3-purple)}
.v3-article-body ul{margin:0 0 22px;padding-left:22px}
.v3-article-body li{margin-bottom:9px}
.v3-article-body small{color:var(--v3-muted);font-size:12.5px;line-height:1.6;display:block;margin-top:26px}
.v3-article-tags{max-width:760px;margin:30px auto 0;display:flex;flex-wrap:wrap;gap:8px}
.v3-article-tags a{border:1px solid var(--v3-line);border-radius:999px;padding:8px 14px;font-size:12px;font-weight:700;text-decoration:none;color:var(--v3-muted)}
.v3-article-tags a:hover{border-color:var(--v3-purple);color:var(--v3-purple)}
.v3-article-ask{max-width:760px;margin:34px auto 0}
.v3-article-related{max-width:1240px;margin:50px auto 0;border-top:1px solid var(--v3-line)}
.v3-article-related .v3-results-toolbar{padding:36px 0 22px}
@media(max-width:767px){
.v3-article{padding-top:16px}
.v3-article-header h1{font-size:27px}
.v3-article-hero{border-radius:16px}
.v3-article-body{font-size:15.5px}
.v3-article-body h2{font-size:22px}
.v3-article-related .v3-news-grid{grid-template-columns:1fr 1fr}
}

/* Blog / news tiles */
.fijidude-v3 .bc-list-news .item-news{background:transparent;margin-bottom:26px}
.fijidude-v3 .bc-list-news .item-news .thumb-image{overflow:hidden;border-radius:20px;aspect-ratio:16/10;background:var(--v3-surface-3)}
.fijidude-v3 .bc-list-news .item-news .thumb-image img{width:100%;height:100%;object-fit:cover;transition:transform .45s}
.fijidude-v3 .bc-list-news .item-news:hover .thumb-image img{transform:scale(1.035)}
.fijidude-v3 .bc-list-news .item-news .caption{padding:13px 2px 0}
.fijidude-v3 .bc-list-news .item-date ul{display:flex;gap:6px;margin:0;padding:0;list-style:none;font-size:10.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.fijidude-v3 .bc-list-news .item-date a{color:var(--v3-purple);text-decoration:none}
.fijidude-v3 .bc-list-news .item-date .dot{color:#b2abb7}
.fijidude-v3 .bc-list-news .item-title{font-size:16px;line-height:1.4;font-weight:800;margin:7px 0 6px}
.fijidude-v3 .bc-list-news .item-title a{color:var(--v3-ink);text-decoration:none}
.fijidude-v3 .bc-list-news .item-desc{color:var(--v3-muted);font-size:13px;line-height:1.65}
.fijidude-v3 .bc-list-news .item-more{margin-top:8px}
.fijidude-v3 .bc-list-news .btn-readmore{color:var(--v3-purple)!important;font-size:12px;font-weight:800;text-decoration:none!important;border:0!important;padding:0!important;background:transparent!important}
.fijidude-v3 .bc-news .bc_banner{position:relative;min-height:0!important;height:auto!important;padding:64px 0 26px!important;background:var(--v3-surface)!important}
.fijidude-v3 .bc-news .bc_banner:before,.fijidude-v3 .bc-news .bc_banner:after{display:none!important}
.fijidude-v3 .bc-news .bc_banner h1,.fijidude-v3 .bc-news .bc_banner .banner-title{color:var(--v3-ink)!important;font-size:42px!important;font-weight:800!important;letter-spacing:-.035em;margin:0!important;text-shadow:none!important}
.fijidude-v3 .bc-news .list-news .post_item{margin-bottom:34px;background:var(--v3-surface);border:1px solid var(--v3-line);border-radius:22px;overflow:hidden;transition:.2s}
.fijidude-v3 .bc-news .list-news .post_item:hover{box-shadow:0 16px 44px rgba(30,19,45,.1);transform:translateY(-2px)}
.fijidude-v3 .bc-news .post-header{overflow:hidden;aspect-ratio:16/8;background:var(--v3-surface-3)}
.fijidude-v3 .bc-news .post-header img{width:100%;height:100%;object-fit:cover}
.fijidude-v3 .bc-news .header{position:relative}
.fijidude-v3 .bc-news .header .cate{position:absolute;top:14px;left:14px}
.fijidude-v3 .bc-news .header .cate ul{margin:0;padding:0;list-style:none}
.fijidude-v3 .bc-news .header .cate a{display:inline-block;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.94)!important;color:var(--v3-purple)!important;font-size:10.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;text-decoration:none}
.fijidude-v3 .bc-news .post-inner{padding:20px 24px 24px}
.fijidude-v3 .bc-news .post-title{margin:0 0 8px;font-size:22px;line-height:1.3;font-weight:800}
.fijidude-v3 .bc-news .post-title a{color:var(--v3-ink)!important;text-decoration:none}
.fijidude-v3 .bc-news .post-info ul{display:flex;align-items:center;gap:14px;margin:0 0 10px;padding:0;list-style:none;color:var(--v3-muted);font-size:11.5px;font-weight:700}
.fijidude-v3 .bc-news .post-info .avatar{width:24px;height:24px;border-radius:50%;margin-right:5px}
.fijidude-v3 .bc-news .post-desciption{color:#514b58;font-size:14px;line-height:1.75}
.fijidude-v3 .bc-news .post-desciption .btn-readmore,.fijidude-v3 .bc-news .item-more .btn-readmore{color:var(--v3-purple)!important;font-weight:800;text-decoration:none!important}
.fijidude-v3 .bc-news .widget{background:var(--v3-surface);border:1px solid var(--v3-line);border-radius:20px;padding:20px;margin-bottom:22px}
.fijidude-v3 .bc-news .widget .widget-title,.fijidude-v3 .bc-news .widget h3{font-size:16px;font-weight:800;margin:0 0 14px;background:transparent!important;border:0!important;padding:0!important}
.fijidude-v3 .bc-news .widget .widget-title:after,.fijidude-v3 .bc-news .widget h3:after{display:none!important}
.fijidude-v3 .bc-news .bc_content{background:var(--v3-sand);padding:34px 0 70px}

/* Member greeting strip */
.v3-member-hello{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px;padding:18px 22px;border-radius:20px;background:linear-gradient(110deg,#5a20d8,#7a3cff 55%,#148f9b);color:#fff}
.v3-member-hello strong{display:block;font-size:19px;font-weight:800;letter-spacing:-.02em}
.v3-member-hello span{font-size:12.5px;color:rgba(255,255,255,.85)}
.v3-member-ask{flex:0 0 auto;display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(255,255,255,.5);border-radius:999px;background:rgba(255,255,255,.14);color:#fff;padding:10px 16px;font-size:12.5px;font-weight:800;cursor:pointer;backdrop-filter:blur(6px)}
.v3-member-ask:hover{background:#fff;color:var(--v3-purple-dark)}
body.user-page .bc_wrap .sidebar-user .user-profile-plan a{display:inline-block;padding:9px 16px;border:1px solid #ded3fa!important;border-radius:999px!important;background:var(--v3-surface-2)!important;color:var(--v3-purple)!important;font-size:12px;font-weight:800;text-decoration:none!important}

/* FijiDude chat widget */
.v3-chat{position:fixed;right:22px;bottom:22px;z-index:99990;font-family:var(--v3-font)}
.v3-chat-bubble{width:58px;height:58px;border:0;border-radius:50%;cursor:pointer;color:#fff;font-size:26px;display:grid;place-items:center;background:var(--v3-grad);box-shadow:0 14px 34px rgba(76,19,201,.38);transition:transform .2s}
.v3-chat-bubble:hover{transform:scale(1.07)}
.v3-chat.open .v3-chat-bubble{display:none}
.v3-chat-panel{position:fixed;right:22px;bottom:22px;width:392px;max-width:calc(100vw - 44px);height:min(600px,calc(100vh - 110px));display:flex;flex-direction:column;background:var(--v3-surface);border:1px solid var(--v3-line);border-radius:24px;box-shadow:0 30px 90px rgba(12,5,26,.35);overflow:hidden}
.v3-chat-head{display:flex;align-items:center;gap:11px;padding:14px 16px;border-bottom:1px solid var(--v3-line);background:var(--v3-surface-2)}
.v3-chat-head .v3-ai-orb{width:40px;height:40px;border-radius:14px}
.v3-chat-title{display:flex;flex-direction:column;min-width:0;flex:1}
.v3-chat-title strong{font-size:16px;letter-spacing:-.02em}
.v3-chat-title span{font-size:11px;color:var(--v3-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v3-chat-close{width:36px;height:36px;flex:0 0 auto;border:1px solid var(--v3-line);border-radius:50%;background:var(--v3-surface);color:var(--v3-ink);font-size:14px;cursor:pointer}
.v3-chat-body{flex:1;overflow-y:auto;padding:16px 14px;display:flex;flex-direction:column;gap:12px;background:var(--v3-surface)}
.v3-chat-msg{display:flex;max-width:88%}
.v3-chat-msg.is-bot{align-self:flex-start}
.v3-chat-msg.is-user{align-self:flex-end}
.v3-chat-text{padding:10px 14px;border-radius:16px;font-size:13.5px;line-height:1.55;white-space:pre-line}
.v3-chat-msg.is-bot .v3-chat-text{background:var(--v3-surface-2);color:var(--v3-ink);border-bottom-left-radius:6px}
.v3-chat-msg.is-user .v3-chat-text{background:var(--v3-purple);color:#fff;border-bottom-right-radius:6px}
.v3-chat-cards{display:flex;flex-direction:column;gap:8px;align-self:stretch}
.v3-chat-cards .v3-ai-result{background:var(--v3-surface)}
.v3-chat-chips{display:flex;flex-wrap:wrap;gap:7px}
.v3-chat-chips button{border:1px solid var(--v3-line);border-radius:999px;background:var(--v3-surface-2);color:#5e5766;padding:7px 12px;font-size:11px;font-weight:700;cursor:pointer}
.v3-chat-chips button:hover{border-color:var(--v3-purple-border);color:var(--v3-purple);background:var(--v3-purple-tint)}
.v3-chat-followups{display:flex;flex-wrap:wrap;gap:7px;align-self:flex-start;margin-top:-2px}
.v3-chat-followups button{border:1px solid var(--v3-purple-border);border-radius:999px;background:var(--v3-surface);color:var(--v3-purple);padding:7px 12px;font-size:11px;font-weight:700;cursor:pointer;transition:.15s}
.v3-chat-followups button:hover{background:var(--v3-purple-tint)}

/* Mobile booking bottom sheet */
.v3-sheet-overlay,.v3-sheet-close{display:none}
@media(max-width:991px){
body.v3-book-open{overflow:hidden}
body.v3-book-open .v3-sheet-overlay{display:block;position:fixed;inset:0;z-index:99990;background:rgba(15,10,25,.52);backdrop-filter:blur(2px)}
body.v3-book-open .v3-booking-aside{display:block!important;position:fixed!important;left:8px;right:8px;bottom:8px;top:auto;z-index:99995;max-height:84vh;overflow:auto;background:var(--v3-surface);border-radius:22px;padding:10px;box-shadow:0 -18px 60px rgba(10,5,20,.35);-webkit-overflow-scrolling:touch}
body.v3-book-open .v3-booking-aside .bc_single_book_wrap{display:block!important;height:auto!important;position:static!important;padding:0!important}
body.v3-book-open .v3-tabbar{display:none!important}
body.v3-book-open .v3-sheet-close{position:sticky;top:0;z-index:5;display:grid;place-items:center;width:38px;height:38px;margin:0 0 4px auto;border:1px solid var(--v3-line);border-radius:50%;background:var(--v3-surface);color:var(--v3-ink);font-size:15px}
body.v3-book-open .v3-booking-aside .v3-ask-detail{display:none}
body.v3-book-open .bc-more-book-mobile{display:none!important}
body.v3-book-open .v3-booking-aside .bc_single_book_wrap{box-shadow:none!important}
}
.v3-chat-typing{display:inline-flex;gap:4px;padding:12px 14px;background:var(--v3-surface-2);border-radius:16px;border-bottom-left-radius:6px;align-self:flex-start}
.v3-chat-typing i{width:6px;height:6px;border-radius:50%;background:var(--v3-purple);animation:v3Pulse .9s infinite alternate}
.v3-chat-typing i:nth-child(2){animation-delay:.2s}
.v3-chat-typing i:nth-child(3){animation-delay:.4s}
.v3-chat-input{display:flex;gap:8px;padding:10px;border-top:1px solid var(--v3-line);background:var(--v3-surface)}
.v3-chat-input input{flex:1;min-width:0;height:46px;border:1px solid var(--v3-line);border-radius:14px;padding:0 14px;font-size:14px;outline:0;color:var(--v3-ink)}
.v3-chat-input input:focus{border-color:var(--v3-purple-border)}
.v3-chat-input button{width:46px;height:46px;flex:0 0 auto;border:0;border-radius:13px;background:var(--v3-purple);color:#fff;font-size:16px;cursor:pointer}
.v3-chat-input button:hover{background:var(--v3-purple-dark)}
.v3-chat-panel .v3-ai-result img{width:64px;height:64px}
@media(max-width:600px){.v3-chat{right:14px;bottom:14px}.v3-chat-panel{right:0;bottom:0;left:0;width:100%;max-width:none;height:88vh;border-radius:22px 22px 0 0;border-left:0;border-right:0;border-bottom:0}}

/* Footer */
.fijidude-v3 .bc_footer{background:#17121d;color:#d9d4df}.fijidude-v3 .bc_footer .mailchimp{background:linear-gradient(110deg,#5a20d8,#7a3cff 55%,#148f9b)!important;border:0!important}.fijidude-v3 .mailchimp h4,.fijidude-v3 .mailchimp .media-heading{color:#fff!important}.fijidude-v3 .mailchimp p,.fijidude-v3 .bc_wrap .bc_footer .mailchimp .media-body p,body.fijidude-v3 .bc_footer .mailchimp .media-body p{color:rgba(255,255,255,.88)!important}.fijidude-v3 .mailchimp .btn{background:var(--v3-ink)!important;border-color:var(--v3-ink)!important;color:#fff!important;font-weight:800!important}.fijidude-v3 .bc_footer .main-footer{border:0!important}.fijidude-v3 .bc_footer .title{color:#fff!important}.fijidude-v3 .bc_footer a{color:#c8c1cf!important}.fijidude-v3 .bc_footer .copy-right{border-color:#302a36!important}

@media(max-width:1199px){.v3-header-inner{padding:0 22px;grid-template-columns:auto 1fr}.v3-primary-nav{display:none}.v3-header-actions{justify-self:end}.v3-mobile-toggle{display:inline-flex}.bc-list-tour .row-eq-height,.v3-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.v3-detail-layout{gap:38px;grid-template-columns:minmax(0,1fr) 340px}.v3-facts{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:22px}}
@media(max-width:991px){.v3-supplier-link,.v3-icon-btn{display:none}.v3-hero{padding:58px 0}.v3-hero-copy h1{font-size:45px}.v3-ai-search{width:100%;margin-left:0}.v3-ai-results{grid-template-columns:repeat(2,minmax(0,1fr))}.v3-listing-hero{grid-template-columns:1fr;gap:25px}.bc-list-tour .row-eq-height,.v3-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v3-detail-layout{grid-template-columns:1fr}.v3-booking-aside{display:none!important;position:static}.v3-detail-actions{display:none}}
@media(max-width:991px){.v3-offer-grid{grid-template-columns:1fr}.v3-offer-card{min-height:250px}.v3-offer-body strong{font-size:23px}}
@media(max-width:767px){.v3-hero-centered{padding:38px 0 34px}.v3-hero-copy{margin-bottom:22px}.v3-hero-copy p{display:none}.v3-capsule{border-radius:22px}
.v3-offer{padding:34px 0 0}.v3-offer-grid{display:grid;grid-auto-flow:column;grid-auto-columns:82%;grid-template-columns:none;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:4px}.v3-offer-grid::-webkit-scrollbar{display:none}.v3-offer-card{min-height:200px;scroll-snap-align:start}.v3-offer-body{padding:16px 18px;gap:5px}.v3-offer-body strong{font-size:19px}.v3-offer-cta{margin-top:5px;padding:8px 13px;font-size:12px}
.bc-list-tour{padding:34px 0}.v3-capsule-bar{gap:6px}.v3-capsule-orb{width:38px;height:38px;border-radius:12px;margin-left:2px}
#v3-ai-input{height:46px;padding:0 4px;font-size:14px}.v3-ai-submit{width:42px;height:42px}
.v3-capsule .v3-ai-prompts{justify-content:flex-start;overflow:auto;flex-wrap:nowrap}.v3-capsule .v3-ai-prompts button{flex:0 0 auto}
.v3-hero-browse{margin-top:18px}}
@media(max-width:767px){.v3-header-inner{height:72px;padding:0 16px}.v3-brand-mark{width:37px;height:37px;border-radius:13px}.v3-brand-mark svg{width:29px}.v3-brand-name{font-size:21px}.v3-account-btn{display:none}.v3-hero{min-height:0;padding:42px 0}.v3-hero-copy h1{font-size:37px}.v3-hero-copy p{font-size:15px}.v3-search-shell .g-form-control{border-radius:20px}.v3-search-shell .nav-tabs{overflow:auto;flex-wrap:nowrap}.v3-search-shell .nav-tabs li{flex:0 0 auto}.v3-search-shell .bc_form .g-field-search{padding:8px 14px}.v3-search-shell .bc_form .g-button-submit{position:static!important;padding:0 12px 12px!important}.v3-search-shell .bc_form .g-button-submit .btn{width:100%!important}.v3-ai-search{padding:15px;border-radius:20px}.v3-ai-search form{height:auto;display:block;border:0;box-shadow:none;background:transparent}.v3-ai-search input{width:100%;height:54px;border:1px solid var(--v3-line);border-radius:14px}.v3-ai-search form button{width:100%;height:48px;margin:8px 0 0;justify-content:center}.v3-ai-prompts{overflow:auto;flex-wrap:nowrap}.v3-ai-prompts button{flex:0 0 auto}.v3-ai-results{grid-template-columns:1fr}.bc-list-tour{padding:48px 0}.v3-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 10px}.v3-card-media{aspect-ratio:1/1;border-radius:16px}
.v3-experience-card .v3-card-body{padding:9px 1px 2px}
.v3-card-kicker{font-size:9px;min-height:13px;letter-spacing:.04em}
.v3-card-body h3{font-size:13px;line-height:1.35;min-height:0;margin:4px 0 5px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.v3-card-meta{font-size:10px}
.v3-card-price{margin-top:6px;font-size:10px;flex-wrap:wrap}.v3-card-price strong{font-size:13px}
.v3-card-heart{width:32px!important;height:32px!important;font-size:15px!important}
.v3-card-badge{padding:5px 9px;font-size:9px}
.fijidude-v3 .item-loop .thumb-image{aspect-ratio:1/1;border-radius:16px}
.fijidude-v3 .item-loop .item-title{font-size:13px;line-height:1.35;margin:9px 2px 2px}
.fijidude-v3 .item-loop .item-title a{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.fijidude-v3 .item-loop .amenities{display:none}
.fijidude-v3 .item-loop .location,.fijidude-v3 .item-loop .service-review{font-size:10px}
.fijidude-v3 .item-loop .info{margin-top:5px}
.fijidude-v3 .item-loop .g-price .text-price{font-size:13px}
.fijidude-v3 .item-loop .service-wishlist{width:32px;height:32px;font-size:15px}.v3-listing-hero{padding-top:40px}.v3-listing-hero h1{font-size:34px}.v3-results-toolbar{align-items:flex-start;gap:20px}.v3-toolbar-actions{flex-direction:column;align-items:stretch}.v3-detail-page{padding-top:20px}.v3-detail-header h1{font-size:29px}.v3-detail-header{display:block}.v3-detail-subline{flex-wrap:wrap;gap:10px}.v3-detail-gallery{border-radius:16px;margin-bottom:28px}.v3-facts{grid-template-columns:1fr 1fr}.v3-detail-main h2,.v3-detail-main h3{font-size:21px!important}}
.v3-chip-row{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}
.v3-lightbox .v3-lb-credit{position:absolute;left:0;right:0;bottom:14px;text-align:center;
  font-size:11.5px;color:rgba(255,255,255,.66);padding:0 60px;line-height:1.45}

/* ===== Supplier claim ===== */
.v3-claim-page{padding:28px 0 90px}
.v3-claim-grid{display:grid;gap:30px;grid-template-columns:1fr}
@media(min-width:992px){.v3-claim-grid{grid-template-columns:minmax(0,1fr) 320px;gap:48px;align-items:start}}
.v3-claim-narrow{max-width:520px}
.v3-claim-page h1{font-size:clamp(26px,4vw,38px);font-weight:800;letter-spacing:-.03em;margin:8px 0 12px}
.v3-claim-lede{font-size:16px;line-height:1.65;color:#4c4655;max-width:56ch;margin-bottom:22px}
.v3-claim-form{display:grid;gap:16px;max-width:600px}
.v3-field-row{display:grid;gap:16px;grid-template-columns:1fr}
@media(min-width:640px){.v3-field-row{grid-template-columns:1fr 1fr}}
.v3-claim-form label>span{display:block;font-size:12.5px;font-weight:700;margin-bottom:6px;color:var(--v3-ink)}
.v3-claim-form label>span em{font-weight:500;color:var(--v3-muted);font-style:normal}
.v3-claim-form input[type=text],.v3-claim-form input[type=email]{width:100%;padding:13px 15px;
  border:1px solid var(--v3-line);border-radius:13px;font-size:15px;background:var(--v3-surface);color:var(--v3-ink)}
.v3-claim-form input:focus{outline:none;border-color:var(--v3-purple);box-shadow:0 0 0 3px var(--v3-purple-tint)}
.v3-verify-choice{border:1px solid var(--v3-line);border-radius:16px;padding:17px 19px;margin:0}
.v3-verify-choice legend{font-size:13.5px;font-weight:800;padding:0 6px}
.v3-field-help{font-size:12.5px;color:var(--v3-muted);line-height:1.6;margin:6px 0 12px}
.v3-radio,.v3-check{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.55;cursor:pointer}
.v3-radio{padding:7px 0}
.v3-radio input,.v3-check input{margin-top:3px;flex:0 0 auto}
.v3-check span em{color:var(--v3-muted);font-style:normal}
.v3-code-field input{letter-spacing:.5em;font-size:24px!important;text-align:center;font-weight:700}
.v3-alert{padding:13px 16px;border-radius:13px;font-size:14px;margin-bottom:18px;line-height:1.55}
.v3-alert.is-error{background:#fdeeee;color:#8c2b22;border:1px solid #f3cfcb}
.v3-alert.is-ok{background:#eef7ef;color:#1f6f34;border:1px solid #cfe6d4}
.v3-linkish{background:none;border:0;padding:10px 0;color:var(--v3-purple);font-size:13.5px;
  font-weight:700;cursor:pointer;text-decoration:underline}
.v3-tick-list{list-style:none;padding:0;margin:0 0 14px;display:grid;gap:10px}
.v3-tick-list li{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.5}
.v3-tick-list i{color:var(--v3-purple);font-size:12px;margin-top:4px}
/* ===== Homepage: browse by intent ===== */
.v3-intent{padding:52px 0 8px}
.v3-intent-title{font-size:clamp(24px,3.4vw,34px);font-weight:800;letter-spacing:-.03em;margin:0 0 8px}
.v3-intent-desc{color:var(--v3-muted);font-size:15.5px;margin:0 0 26px;max-width:60ch}
/* Six intents: auto-fit gave 5 + 1 orphan on a wide screen, so the
   column count is pinned to divisors of six. */
.v3-intent-grid{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}
@media(min-width:720px){.v3-intent-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1100px){.v3-intent-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}}
@media(min-width:1100px){.v3-intent-card{padding:20px 16px}
  .v3-intent-card strong{font-size:15px}
  .v3-intent-blurb{font-size:12.5px}}
@media(max-width:560px){.v3-intent-grid{grid-template-columns:1fr 1fr;gap:10px}}
.v3-intent-card{display:flex;flex-direction:column;gap:7px;padding:22px 20px;border-radius:18px;
  border:1px solid var(--v3-line);background:var(--v3-surface);text-decoration:none!important;color:var(--v3-ink)!important;
  transition:.18s}
.v3-intent-card:hover{border-color:var(--v3-purple);transform:translateY(-3px);
  box-shadow:0 14px 32px rgba(30,18,45,.10)}
.v3-intent-icon{width:44px;height:44px;border-radius:13px;display:flex;align-items:center;justify-content:center;
  background:var(--v3-purple-tint);color:var(--v3-purple);font-size:21px;margin-bottom:4px}
.v3-intent-card strong{font-size:16px;font-weight:800;letter-spacing:-.015em}
.v3-intent-blurb{font-size:13px;color:var(--v3-muted);line-height:1.5}

/* ===== Homepage: the transparency proposition ===== */
.v3-promise{padding:56px 0;background:linear-gradient(180deg,#fbfaff 0%,#fff 100%);
  border-top:1px solid var(--v3-line);border-bottom:1px solid var(--v3-line);margin-top:44px}
.v3-promise-inner{display:grid;gap:34px;grid-template-columns:1fr}
@media(min-width:900px){.v3-promise-inner{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:56px;align-items:center}}
.v3-promise-copy h2{font-size:clamp(25px,3.6vw,36px);font-weight:800;letter-spacing:-.03em;margin:8px 0 14px;max-width:18ch}
.v3-promise-copy>p{font-size:16px;line-height:1.7;color:#4c4655;max-width:56ch;margin-bottom:22px}
.v3-promise-points{list-style:none;padding:0;margin:0 0 26px;display:grid;gap:13px}
.v3-promise-points li{display:flex;gap:11px;align-items:flex-start;font-size:14.5px;line-height:1.6;color:#4c4655}
.v3-promise-points i{color:var(--v3-purple);font-size:12px;margin-top:5px;flex:0 0 auto}
.v3-promise-points strong{color:var(--v3-ink)}
.v3-promise-stats{display:grid;gap:12px;grid-template-columns:1fr 1fr}
.v3-stat{padding:20px 18px;border-radius:16px;background:var(--v3-surface);border:1px solid var(--v3-line)}
.v3-stat strong{display:block;font-size:27px;font-weight:800;letter-spacing:-.03em;line-height:1.1;color:var(--v3-purple)}
.v3-stat span{display:block;font-size:12.5px;color:var(--v3-muted);margin-top:5px;line-height:1.45}
.v3-stat.is-quiet strong{color:var(--v3-ink);font-size:20px}
/* ===== Homepage promotion ribbon ===== */
.v3-promo-ribbon{background:linear-gradient(90deg,var(--v3-purple) 0%,#7b45e8 100%);color:#fff;
  padding:11px 0;font-size:14px}
.v3-promo-ribbon .container{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;
  text-align:center}
.v3-promo-badge{display:inline-flex;align-items:center;padding:4px 11px;border-radius:999px;
  background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.34);
  font-size:11px;font-weight:800;letter-spacing:.06em;white-space:nowrap}
.v3-promo-msg{font-weight:500;line-height:1.5}
.v3-promo-link{color:#fff!important;font-weight:800;text-decoration:none!important;white-space:nowrap;
  border-bottom:1px solid rgba(255,255,255,.5);padding-bottom:1px}
.v3-promo-link:hover{border-bottom-color:#fff}
@media(max-width:700px){
  .v3-promo-ribbon{padding:10px 0;font-size:13px}
  .v3-promo-ribbon .container{gap:8px}
  .v3-promo-msg{flex:1 1 100%;order:3}
}
/* ===== Supplier community ===== */
.v3-forum{padding:26px 0 90px}
.v3-forum-count{display:inline-block;margin-left:5px;opacity:.65;font-size:11.5px}
.v3-forum-layout{display:grid;gap:30px;grid-template-columns:1fr}
@media(min-width:992px){.v3-forum-layout{grid-template-columns:minmax(0,1fr) 330px;gap:48px;align-items:start}}
@media(min-width:992px){.v3-forum-aside{position:sticky;top:96px}}
.v3-thread-row{display:flex;gap:18px;align-items:flex-start;padding:20px 0;border-bottom:1px solid var(--v3-line)}
.v3-thread-row.is-pinned{background:linear-gradient(90deg,var(--v3-purple-tint) 0%,transparent 60%);
  padding-left:16px;border-radius:14px;margin-bottom:4px;border-bottom-color:transparent}
.v3-thread-main{flex:1 1 auto;min-width:0}
.v3-thread-meta{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:8px}
.v3-thread-row h2{font-size:18px;font-weight:800;letter-spacing:-.02em;margin:0 0 6px;line-height:1.35}
.v3-thread-row h2 a{color:var(--v3-ink);text-decoration:none}
.v3-thread-row h2 a:hover{color:var(--v3-purple)}
.v3-thread-excerpt{font-size:14px;color:#4c4655;line-height:1.6;margin:0 0 7px}
.v3-thread-byline{font-size:12.5px;color:var(--v3-muted);margin:0}
.v3-thread-replies{flex:0 0 64px;text-align:center;padding-top:4px}
.v3-thread-replies strong{display:block;font-size:19px;font-weight:800;color:var(--v3-purple);line-height:1.1}
.v3-thread-replies span{font-size:11.5px;color:var(--v3-muted)}
.v3-thread-page{max-width:780px}
.v3-thread-page h1{font-size:clamp(24px,3.4vw,33px);font-weight:800;letter-spacing:-.03em;margin:10px 0 6px}
.v3-thread-body{font-size:15.5px;line-height:1.75;color:#38313f;margin:20px 0 34px}
.v3-replies-heading{font-size:17px;font-weight:800;margin:0 0 16px;padding-top:20px;border-top:1px solid var(--v3-line)}
.v3-reply{padding:16px 0;border-bottom:1px solid var(--v3-line);font-size:14.5px;line-height:1.65;color:#413a4a}
.v3-reply:last-of-type{border-bottom:0}
.v3-reply.is-staff{background:var(--v3-purple-tint);border-radius:14px;padding:16px 18px;border-bottom:0;margin-bottom:10px}
.v3-reply-form{margin-top:24px;max-width:100%}
.v3-claim-form textarea,.v3-claim-form select{width:100%;padding:13px 15px;border:1px solid var(--v3-line);
  border-radius:13px;font-size:15px;background:var(--v3-surface);color:var(--v3-ink);font-family:inherit}
.v3-claim-form textarea:focus,.v3-claim-form select:focus{outline:none;border-color:var(--v3-purple);
  box-shadow:0 0 0 3px var(--v3-purple-tint)}
/* ===== Who operates this listing ===== */
.v3-operator-card{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;
  padding:15px 18px;border:1px solid var(--v3-line);border-radius:16px;background:var(--v3-surface);margin:20px 0 4px}
.v3-operator-id{display:flex;align-items:center;gap:13px;min-width:0}
.v3-operator-logo{width:52px;height:52px;border-radius:12px;object-fit:contain;background:var(--v3-surface);
  border:1px solid var(--v3-line);padding:5px;flex:0 0 auto}
.v3-operator-logo.is-photo{object-fit:cover;padding:0}
.v3-operator-initials{width:52px;height:52px;border-radius:12px;display:flex;align-items:center;
  justify-content:center;background:var(--v3-purple-tint);color:var(--v3-purple);font-weight:800;
  font-size:17px;flex:0 0 auto}
.v3-operator-label{display:block;font-size:10.5px;text-transform:uppercase;letter-spacing:.07em;
  color:var(--v3-muted);font-weight:700}
.v3-operator-id strong{display:block;font-size:16px;font-weight:800;letter-spacing:-.015em;line-height:1.3}
.v3-operator-region{display:block;font-size:12.5px;color:var(--v3-muted)}
.v3-operator-links{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.v3-operator-links a{font-size:13.5px;font-weight:700;color:var(--v3-purple);text-decoration:none;white-space:nowrap}
.v3-operator-links a:hover{text-decoration:underline}
@media(max-width:600px){.v3-operator-card{padding:14px}.v3-operator-links{width:100%}}
/* ============================================================
   Night mode corrections.
   Booking Core's own stylesheets paint white directly, below our
   token layer. These are the surfaces the tokens cannot reach.
   ============================================================ */
:root[data-theme=dark] .fijidude-v3,
:root[data-theme=dark] body.fijidude-v3{background:var(--v3-page);color:var(--v3-ink)}

:root[data-theme=dark] .fijidude-v3 .bc_wrap,
:root[data-theme=dark] .fijidude-v3 .page-template-content,
:root[data-theme=dark] .fijidude-v3 .panel,
:root[data-theme=dark] .fijidude-v3 .card,
:root[data-theme=dark] .fijidude-v3 .modal-content,
:root[data-theme=dark] .fijidude-v3 .dropdown-menu{background:var(--v3-surface);color:var(--v3-ink);border-color:var(--v3-line)}

:root[data-theme=dark] .fijidude-v3 .form-control,
:root[data-theme=dark] .fijidude-v3 select,
:root[data-theme=dark] .fijidude-v3 textarea,
:root[data-theme=dark] .fijidude-v3 input[type=text],
:root[data-theme=dark] .fijidude-v3 input[type=email],
:root[data-theme=dark] .fijidude-v3 input[type=number],
:root[data-theme=dark] .fijidude-v3 input[type=password],
:root[data-theme=dark] .fijidude-v3 input[type=search]{background:var(--v3-surface-2);border-color:var(--v3-line);color:var(--v3-ink)}
:root[data-theme=dark] .fijidude-v3 ::placeholder{color:var(--v3-muted);opacity:1}

:root[data-theme=dark] .fijidude-v3 .dropdown-item{color:var(--v3-ink)}
:root[data-theme=dark] .fijidude-v3 .dropdown-item:hover,
:root[data-theme=dark] .fijidude-v3 .dropdown-item:focus{background:var(--v3-surface-2);color:var(--v3-ink)}

:root[data-theme=dark] .fijidude-v3 table,
:root[data-theme=dark] .fijidude-v3 .table{color:var(--v3-ink)}
:root[data-theme=dark] .fijidude-v3 .table td,
:root[data-theme=dark] .fijidude-v3 .table th{border-color:var(--v3-line)}

:root[data-theme=dark] .fijidude-v3 hr{border-color:var(--v3-line)}

/* Photographs carry their own light. Knocking them back a little stops
   a gallery glaring out of a dark page without washing the colour out. */
:root[data-theme=dark] .fijidude-v3 .v3-card-media img,
:root[data-theme=dark] .fijidude-v3 .item-loop .thumb-image img{filter:brightness(.92)}

/* The hero is already dark in both themes; only its scrim needs easing. */
:root[data-theme=dark] .v3-hero-backdrop{background:linear-gradient(90deg,rgba(9,6,16,.86) 0%,rgba(16,9,28,.62) 44%,rgba(10,8,17,.22) 100%),linear-gradient(0deg,rgba(10,8,16,.55),transparent 55%)}

/* Select2 and the date picker ship their own white. */
:root[data-theme=dark] .select2-container--default .select2-selection--single,
:root[data-theme=dark] .select2-dropdown,
:root[data-theme=dark] .daterangepicker{background:var(--v3-surface);border-color:var(--v3-line);color:var(--v3-ink)}
:root[data-theme=dark] .daterangepicker td.available:hover,
:root[data-theme=dark] .select2-results__option--highlighted{background:var(--v3-surface-2)!important;color:var(--v3-ink)!important}
:root[data-theme=dark] .daterangepicker td.off{background:transparent;color:var(--v3-muted)}

/* ---- Theme toggle ---- */
/* The header hides its icon buttons below 991px. The day/night control is the
   exception: a phone at night is the main reason anyone wants this at all. */
@media (max-width:991px){.fijidude-v3 .v3-icon-btn.v3-theme-btn{display:inline-flex!important}}

.v3-theme-btn{position:relative}
.v3-theme-btn i{transition:opacity .18s,transform .18s}
.v3-theme-btn .v3-moon{position:absolute;opacity:0;transform:rotate(-45deg) scale(.7)}
:root[data-theme=dark] .v3-theme-btn .v3-sun{opacity:0;transform:rotate(45deg) scale(.7)}
:root[data-theme=dark] .v3-theme-btn .v3-moon{opacity:1;transform:none}
@media (prefers-color-scheme:dark){
  :root:not([data-theme=light]) .v3-theme-btn .v3-sun{opacity:0;transform:rotate(45deg) scale(.7)}
  :root:not([data-theme=light]) .v3-theme-btn .v3-moon{opacity:1;transform:none}
}

/* ============================================================
   Page window — the featured image every page carries.
   Landscape, curved, and deliberately restrained: it is a view
   through a window, not a hero banner competing with the page.
   ============================================================ */
.v3-window-wrap{padding:20px 0 4px}
.v3-window{position:relative;margin:0;border-radius:22px;overflow:hidden;background:var(--v3-surface-3);
  box-shadow:0 10px 34px rgba(20,12,38,.10);border:1px solid var(--v3-line)}
.v3-window img{display:block;width:100%;height:clamp(150px,22vw,260px);object-fit:cover}
.v3-window figcaption{position:absolute;left:0;right:0;bottom:0;display:flex;flex-wrap:wrap;
  justify-content:space-between;align-items:baseline;gap:8px;padding:26px 20px 12px;
  background:linear-gradient(0deg,rgba(8,5,14,.62),rgba(8,5,14,0));color:#fff;font-size:13px}
.v3-window figcaption span{font-weight:700;text-shadow:0 1px 6px rgba(0,0,0,.4)}
.v3-window figcaption small{font-size:11px;opacity:.8}
.v3-window figcaption a{color:#fff;text-decoration:underline}
@media (max-width:640px){
  .v3-window{border-radius:18px}
  .v3-window img{height:clamp(130px,38vw,190px)}
}

/* ---------------------------------------------------------------------------
   Media gallery — land listings, imports, anything a buyer is judging from
   the other side of an ocean. Big first frame, honest captions, credit on
   every image, and title documents flagged so they read as evidence rather
   than decoration.
--------------------------------------------------------------------------- */
.v3-gal{margin:0 0 22px}
.v3-gal-hero{margin:0;position:relative}
.v3-gal-hero .v3-gal-open{display:block;width:100%;padding:0;border:0;background:var(--v3-surface-3);
  border-radius:20px;overflow:hidden;cursor:zoom-in;position:relative;line-height:0}
.v3-gal-hero img{width:100%;height:clamp(230px,46vw,470px);object-fit:cover;display:block;
  transition:transform .5s cubic-bezier(.2,.7,.3,1)}
.v3-gal-hero .v3-gal-open:hover img{transform:scale(1.02)}
.v3-gal-hero .v3-gal-open:focus-visible{outline:2px solid var(--v3-purple);outline-offset:3px}
.v3-gal-count{position:absolute;right:12px;top:12px;background:rgba(12,8,20,.72);color:#fff;
  font-size:12px;font-weight:600;letter-spacing:.02em;padding:5px 11px;border-radius:999px;
  backdrop-filter:blur(6px);line-height:1.4}
.v3-gal-hero figcaption{color:var(--v3-muted);font-size:13px;line-height:1.6;margin:9px 3px 0}

.v3-gal-strip{display:flex;gap:8px;overflow-x:auto;padding:11px 2px 4px;scrollbar-width:thin;
  scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}
.v3-gal-strip::-webkit-scrollbar{height:6px}
.v3-gal-strip::-webkit-scrollbar-thumb{background:var(--v3-line);border-radius:99px}
.v3-gal-strip .v3-gal-open{flex:0 0 auto;width:112px;height:78px;padding:0;border:0;cursor:zoom-in;
  border-radius:11px;overflow:hidden;background:var(--v3-surface-3);position:relative;scroll-snap-align:start}
.v3-gal-strip img{width:100%;height:100%;object-fit:cover;display:block;opacity:.86;transition:opacity .2s}
.v3-gal-strip .v3-gal-open:hover img{opacity:1}
.v3-gal-strip .v3-gal-open:focus-visible{outline:2px solid var(--v3-purple);outline-offset:2px}
/* Title copies and survey plans are documents — tint them so they never read
   as a photograph of the land itself. */
.v3-gal-strip .is-doc img{object-fit:contain;background:#fff;padding:3px;opacity:.95}
.v3-gal-tag{position:absolute;left:4px;bottom:4px;background:var(--v3-purple);color:#fff;font-size:9.5px;
  font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:2px 6px;border-radius:5px}
.v3-gal-held{margin:10px 3px 0;max-width:74ch}

.v3-lb{position:fixed;inset:0;z-index:9000;background:#08050e;
  display:flex;align-items:center;justify-content:center;padding:clamp(12px,3vw,40px)}
/* Progressive enhancement: where backdrop-filter is supported the page behind
   softens instead of vanishing, which keeps some sense of place. Browsers
   without it keep the solid ground above and lose nothing that matters. */
@supports (backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px)){
  .v3-lb{background:rgba(8,5,14,.86);-webkit-backdrop-filter:blur(18px) saturate(.5);
    backdrop-filter:blur(18px) saturate(.5)}
}
.v3-lb[hidden]{display:none}
.v3-lb-inner{position:relative;max-width:1500px;width:100%;height:100%;
  display:flex;align-items:center;justify-content:center}
.v3-lb img{max-width:100%;max-height:calc(100% - 78px);object-fit:contain;border-radius:8px;
  background:#fff;box-shadow:0 30px 90px rgba(0,0,0,.55)}
.v3-lb-x{position:absolute;top:0;right:0;width:44px;height:44px;font-size:30px;line-height:1;
  background:rgba(255,255,255,.1);color:#fff;border:0;border-radius:50%;cursor:pointer}
.v3-lb-x:hover{background:rgba(255,255,255,.2)}
.v3-lb-nav{position:absolute;top:50%;transform:translateY(-50%);width:52px;height:52px;font-size:34px;
  line-height:1;background:rgba(255,255,255,.1);color:#fff;border:0;border-radius:50%;cursor:pointer}
.v3-lb-nav:hover{background:rgba(255,255,255,.22)}
.v3-lb-prev{left:0}
.v3-lb-next{right:0}
.v3-lb-cap{position:absolute;left:0;right:0;bottom:0;text-align:center;padding:0 60px;color:#fff}
.v3-lb-cap p{margin:0 0 4px;font-size:14.5px;line-height:1.55}
.v3-lb-cap span{font-size:11.5px;color:rgba(255,255,255,.58);letter-spacing:.02em}
@media (max-width:640px){
  .v3-gal-hero .v3-gal-open{border-radius:16px}
  .v3-lb-nav{width:42px;height:42px;font-size:27px}
  .v3-lb-cap{padding:0 12px}
  .v3-lb-cap p{font-size:13px}
}

/* The FijiDude mark — the chat is him talking, so he wears his own face.
   The mark is black ink where the face reads out of the negative space, so it
   cannot be knocked out white on the purple: invert it and the profile stops
   being a profile. It keeps its own light ground and the brand becomes a ring
   around it instead. */
.v3-chat-mark{width:66%;height:66%;object-fit:contain;display:block;margin:auto}
.v3-chat-bubble,
.v3-ai-orb,
.v3-tabbar-orb{overflow:hidden}
.v3-chat-bubble:has(.v3-chat-mark),
.v3-ai-orb:has(.v3-chat-mark),
.v3-tabbar-orb:has(.v3-chat-mark){
  background:#fff;border:2.5px solid var(--v3-purple);
  display:flex;align-items:center;justify-content:center}
.v3-chat-bubble:has(.v3-chat-mark){box-shadow:0 10px 28px rgba(108,44,255,.34)}
.v3-member-ask .v3-chat-mark{width:17px;height:17px;display:inline-block;margin:0 5px 0 0;
  vertical-align:-3px}

/* The chat launcher floats over the bottom-right corner of every page. While
   the lightbox is open it is covering the image, so it stands down. */
body.v3-lb-open .v3-chat-bubble,
body.v3-lb-open .v3-tabbar{opacity:0;pointer-events:none;transition:opacity .15s}
