/* ===== TourGuideBali design system ===== */
:root{--tgb-g:#0f3b34;--tgb-g2:#0b2e28;--tgb-o:#e0873a;--tgb-o2:#c9722a;--tgb-sand:#f7f1e8;--tgb-sand2:#efe6d8;--tgb-ink:#16201d;--tgb-muted:#5e6b66;--tgb-line:#e4d9c8;--tgb-wa:#25d366;--tgb-r:14px;--tgb-font:var(--wp--preset--font-family--manrope),system-ui,sans-serif}
body{background:#fff;color:var(--tgb-ink);font-family:var(--tgb-font);-webkit-font-smoothing:antialiased}
.wp-site-blocks{position:relative;padding:0}
.wp-site-blocks>*{margin-block-start:0}
.tgb-main-wrap .entry-content>*,.tgb-main-wrap .wp-block-post-content>*{margin-block-start:0;margin-block-end:0}
.wp-block-post-content a:where(:not(.wp-element-button)){text-decoration:none}
.tgb-section h1,.tgb-section h2,.tgb-section h3,.tgb-section h4,.tgb-hero h1{font-family:var(--tgb-font)}

/* full-bleed: neutralise theme root padding inside main */
.tgb-main-wrap.tgb-main-wrap,.tgb-main-wrap>.wp-block-post-content{padding-left:0!important;padding-right:0!important}
.tgb-main-wrap .wp-block-post-content>.alignfull{margin-left:0!important;margin-right:0!important;max-width:none!important;width:100%}
.tgb-site-header .tgb-header{margin:0!important;max-width:none!important}


.tgb-main-wrap>.wp-block-post-content.wp-block-post-content{margin-left:0!important;margin-right:0!important;max-width:none!important;width:auto!important}
html,body{overflow-x:clip}
/* ---- header ---- */
.tgb-site-header{position:absolute;top:0;left:0;right:0;z-index:50}
.tgb-header.tgb-header{padding:22px 32px;background:linear-gradient(to bottom,rgba(8,30,26,.55),rgba(8,30,26,0));margin:0}
.tgb-header-inner.tgb-header-inner{max-width:1240px;margin:0 auto;gap:24px;align-items:center}
.tgb-logo{font-weight:800;font-size:22px;letter-spacing:-.02em;color:#fff!important;text-decoration:none!important;white-space:nowrap}
.tgb-logo span{color:var(--tgb-o)}
.tgb-nav.tgb-nav{color:#fff;font-size:14px;font-weight:600;flex:1}
.tgb-nav .wp-block-navigation-item__content{color:#fff;text-decoration:none;opacity:.92}
.tgb-nav .wp-block-navigation-item__content:hover{opacity:1;color:var(--tgb-o)}
.tgb-nav .wp-block-navigation__container{gap:28px}
.tgb-nav .wp-block-navigation__responsive-container-open{color:#fff}
.tgb-nav .wp-block-navigation__responsive-container.is-menu-open{background:var(--tgb-g)!important;color:#fff!important;padding:28px}
.tgb-nav .is-menu-open .wp-block-navigation__container{gap:22px;font-size:24px;font-weight:700}
.tgb-nav .is-menu-open .wp-block-navigation-item__content{color:#fff}
.tgb-head-cta.tgb-head-cta{margin:0;flex:0 0 auto}

/* ---- buttons ---- */
.wp-block-button .wp-block-button__link{font-family:var(--tgb-font);font-weight:700;font-size:15px;border-radius:999px;padding:14px 26px;transition:background .2s,color .2s,transform .2s;text-decoration:none}
.wp-block-button .wp-block-button__link:hover{transform:translateY(-1px)}
.tgb-btn-orange .wp-block-button__link{background:var(--tgb-o);color:#fff}
.tgb-btn-orange .wp-block-button__link:hover{background:var(--tgb-o2);color:#fff}
.tgb-btn-green .wp-block-button__link{background:var(--tgb-g);color:#fff}
.tgb-btn-green .wp-block-button__link:hover{background:var(--tgb-g2);color:#fff}
.tgb-btn-white .wp-block-button__link{background:#fff;color:var(--tgb-g)}
.tgb-btn-line .wp-block-button__link{background:transparent;color:var(--tgb-g);box-shadow:inset 0 0 0 1.5px var(--tgb-g)}
.tgb-btn-line .wp-block-button__link:hover{background:var(--tgb-g);color:#fff}
.tgb-btn-sm .wp-block-button__link{padding:11px 20px;font-size:14px}
.tgb-btn-block{width:100%}
.tgb-btn-block .wp-block-button__link{width:100%;text-align:center}
.wp-block-buttons.tgb-center{justify-content:center;margin-top:44px}

/* ---- type ---- */
.tgb-eyebrow.tgb-eyebrow{font-size:12px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--tgb-o);margin:0 0 14px}
.tgb-eyebrow--light.tgb-eyebrow--light{color:#f2b277}
.tgb-h1.tgb-h1{font-size:clamp(38px,6vw,72px);line-height:1.02;letter-spacing:-.035em;font-weight:800;color:#fff;margin:0 0 20px;max-width:14ch}
.tgb-h2.tgb-h2{font-size:clamp(30px,3.6vw,46px);line-height:1.08;letter-spacing:-.03em;font-weight:800;margin:0;color:inherit}
.tgb-h3.tgb-h3{font-size:24px;letter-spacing:-.02em;font-weight:800;margin:40px 0 14px}
.tgb-h4.tgb-h4{font-size:18px;font-weight:800;margin:0 0 12px}
.tgb-lead.tgb-lead{font-size:clamp(16px,1.4vw,19px);line-height:1.6;color:rgba(255,255,255,.88);max-width:560px;margin:0}
.tgb-muted.tgb-muted{color:var(--tgb-muted)}
.tgb-small.tgb-small{font-size:14px}

/* ---- sections ---- */
.tgb-section.tgb-section{padding:110px 24px;margin:0}
.tgb-wrap.tgb-wrap{max-width:1200px;margin:0 auto}
.tgb-wrap>*{margin-block-start:0}
.tgb-section--sand{background:var(--tgb-sand)}
.tgb-section--green{background:var(--tgb-g);color:#fff}
.tgb-section--green .tgb-eyebrow{color:#f2b277}
.tgb-head.tgb-head{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin:0 0 52px}
.tgb-head-l>*{margin:0}
.tgb-head-intro.tgb-head-intro{max-width:420px;color:var(--tgb-muted);font-size:16px;line-height:1.6;margin:0}
.tgb-head--row .tgb-more{margin:0}

/* ---- hero ---- */
.tgb-hero.tgb-hero{padding:150px 32px 70px;margin:0;align-items:flex-end}
.tgb-hero .wp-block-cover__inner-container{max-width:1240px;margin:0 auto;width:100%;color:#fff}
.tgb-hero--home.tgb-hero--home{padding-bottom:56px}
.tgb-hero--home .wp-block-cover__background{background:linear-gradient(180deg,rgba(11,46,40,.45) 0%,rgba(11,46,40,.25) 45%,rgba(11,46,40,.75) 100%)!important;opacity:1!important}
.tgb-hero--page .wp-block-cover__background{background:linear-gradient(180deg,rgba(11,46,40,.5),rgba(11,46,40,.72))!important;opacity:1!important}
.tgb-hero--plain.tgb-hero--plain{background:var(--tgb-g);padding:170px 32px 80px;color:#fff}
.tgb-hero--plain>.tgb-hero-copy{max-width:1240px;margin:0 auto}
.tgb-hero-copy>*{margin-block-start:0}
.tgb-hero-copy.tgb-hero-copy{max-width:1240px;margin:0 auto}

/* booking box */
.tgb-book-wrap.tgb-book-wrap{max-width:1240px;margin:48px auto 0}
.tgb-book{display:grid;grid-template-columns:1.3fr 1fr 1.3fr 1fr auto;background:#fff;border-radius:18px;padding:10px;gap:0;box-shadow:0 20px 50px rgba(0,0,0,.25);align-items:stretch}
.tgb-book-f{display:flex;flex-direction:column;padding:8px 18px;border-right:1px solid var(--tgb-line);min-width:0}
.tgb-book-f span{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--tgb-muted);margin-bottom:4px}
.tgb-book-f select,.tgb-book-f input{border:0;background:transparent;font:600 15px/1.3 var(--tgb-font);color:var(--tgb-ink);padding:2px 0;outline:none;width:100%;min-width:0}
.tgb-book-f:nth-child(4){border-right:0}
.tgb-book-btn{background:var(--tgb-g);color:#fff;border:0;border-radius:12px;padding:0 28px;font:700 15px var(--tgb-font);cursor:pointer;transition:background .2s}
.tgb-book-btn:hover{background:var(--tgb-o)}

/* feature bar */
.tgb-featbar.tgb-featbar{background:var(--tgb-g);color:#fff;padding:0 24px;margin:0}
.tgb-feats.tgb-feats{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr)}
.tgb-feat.tgb-feat{padding:30px 26px;border-right:1px solid rgba(255,255,255,.12);margin:0}
.tgb-feat:last-child{border-right:0}
.tgb-feat>*{margin:0}
.tgb-feat-t.tgb-feat-t{font-weight:800;font-size:16px}
.tgb-feat-d.tgb-feat-d{color:rgba(255,255,255,.65);font-size:14px;margin-top:4px}

/* ---- cards ---- */
.tgb-grid.tgb-grid{display:grid;gap:24px}
.tgb-grid>*{margin:0!important}
.tgb-grid--4{grid-template-columns:repeat(4,1fr)}
.tgb-grid--3{grid-template-columns:repeat(3,1fr)}
.tgb-grid--2{grid-template-columns:repeat(2,1fr);gap:28px}
.tgb-card.tgb-card{background:#fff;border:1px solid var(--tgb-line);border-radius:var(--tgb-r);overflow:hidden;display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}
.tgb-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(15,59,52,.12)}
.tgb-card>*{margin:0}
.tgb-card-img.tgb-card-img{margin:0;aspect-ratio:4/3;overflow:hidden}
.tgb-card--big .tgb-card-img{aspect-ratio:16/9}
.tgb-card-img a{display:block;width:100%;height:100%}
.tgb-card-img img{width:100%!important;height:100%!important;object-fit:cover;display:block;transition:transform .6s}
.tgb-card:hover .tgb-card-img img{transform:scale(1.05)}
.tgb-card-body.tgb-card-body{padding:22px 22px 20px;display:flex;flex-direction:column;flex:1}
.tgb-card-body>*{margin:0}
.tgb-card-meta.tgb-card-meta{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--tgb-o);margin-bottom:8px}
.tgb-card-title.tgb-card-title{font-size:20px;font-weight:800;letter-spacing:-.02em;margin:0 0 12px}
.tgb-card--big .tgb-card-title{font-size:26px}
.tgb-card-title a{color:var(--tgb-ink);text-decoration:none}
.tgb-card-text.tgb-card-text{color:var(--tgb-muted);font-size:15px;line-height:1.6;margin-bottom:18px}
.tgb-card-foot.tgb-card-foot{display:flex;justify-content:space-between;align-items:flex-end;margin-top:auto;padding-top:16px;border-top:1px solid var(--tgb-line)}
.tgb-card-foot>*{margin:0}
.tgb-price.tgb-price{font-size:13px;color:var(--tgb-muted);line-height:1.25}
.tgb-price span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.08em}
.tgb-price strong{font-size:19px;color:var(--tgb-ink);font-weight:800}
.tgb-more.tgb-more{font-size:14px;font-weight:700}
.tgb-more a{color:var(--tgb-g);text-decoration:none}
.tgb-more a:hover{color:var(--tgb-o)}
.tgb-card--dark.tgb-card--dark{background:var(--tgb-g);color:#fff;border:0;padding:36px}
.tgb-card--dark .tgb-card-title{color:#fff;font-size:26px}
.tgb-card--dark .tgb-card-text{color:rgba(255,255,255,.75)}
.tgb-card--plain.tgb-card--plain{padding:36px;background:var(--tgb-sand)}
.tgb-card--plain .tgb-card-title{font-size:26px}
.tgb-card--dark .wp-block-buttons{margin-top:auto}

/* lists */
.tgb-ticks.tgb-ticks,.tgb-cross.tgb-cross,.tgb-dots.tgb-dots{list-style:none;padding:0;margin:0 0 16px}
.tgb-ticks li,.tgb-cross li,.tgb-dots li{position:relative;padding:6px 0 6px 26px;font-size:15px;line-height:1.5}
.tgb-ticks li:before{content:"";position:absolute;left:2px;top:12px;width:12px;height:7px;border-left:2px solid var(--tgb-o);border-bottom:2px solid var(--tgb-o);transform:rotate(-45deg)}
.tgb-cross li:before,.tgb-cross li:after{content:"";position:absolute;left:3px;top:14px;width:13px;height:2px;background:#b9b0a3;transform:rotate(45deg)}
.tgb-cross li:after{transform:rotate(-45deg)}
.tgb-dots li:before{content:"";position:absolute;left:4px;top:13px;width:8px;height:8px;background:var(--tgb-o);transform:rotate(45deg)}
.tgb-card .tgb-ticks li{font-size:14px;padding:4px 0 4px 24px;color:var(--tgb-muted)}
.tgb-card .tgb-ticks li:before{top:10px}
.tgb-ticks--lg li{font-size:17px;padding:10px 0 10px 30px;border-bottom:1px solid var(--tgb-line)}
.tgb-ticks--lg li:before{top:17px}

/* split + car */
.tgb-split.tgb-split{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:start}
.tgb-split>*{margin:0!important}
.tgb-round.tgb-round{margin:0}
.tgb-round img{border-radius:var(--tgb-r);width:100%;display:block}
.tgb-carnote.tgb-carnote{margin-top:22px}
.tgb-carnote>*{margin:0 0 6px}
.tgb-fleetbox.tgb-fleetbox{background:var(--tgb-g);color:#fff;border-radius:var(--tgb-r);padding:36px}
.tgb-fleetbox>*{margin:0}
.tgb-fleet-title.tgb-fleet-title{font-size:24px;font-weight:800;margin:0}
.tgb-fleet-note.tgb-fleet-note{color:rgba(255,255,255,.65);font-size:14px;margin:4px 0 18px}
.tgb-fleet.tgb-fleet{margin:0 0 24px}
.tgb-fleet table{border-collapse:collapse;width:100%;font-size:15px}
.tgb-fleet td,.tgb-fleet th{border:0;border-bottom:1px solid rgba(255,255,255,.14);padding:14px 4px;text-align:left}
.tgb-fleet td:last-child,.tgb-fleet th:last-child{text-align:right}
.tgb-fleetbox .tgb-fleet td:nth-child(2){color:rgba(255,255,255,.65)}
.tgb-fleet--full table{font-size:16px}
.tgb-fleet--full th{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--tgb-muted);border-bottom:2px solid var(--tgb-ink)}
.tgb-fleet--full td,.tgb-fleet--light td{border-bottom:1px solid var(--tgb-line);padding:18px 4px}
.tgb-fleet--full td span{color:var(--tgb-muted);font-size:14px}
.tgb-fleet--full td:nth-child(2),.tgb-fleet--full td:nth-child(3),.tgb-fleet--full th:nth-child(2),.tgb-fleet--full th:nth-child(3){text-align:center}
.tgb-fleet--light td{padding:14px 4px}
.tgb-whitebox.tgb-whitebox{background:#fff;border-radius:var(--tgb-r);padding:36px;border:1px solid var(--tgb-line)}
.tgb-whitebox>*{margin-block-start:0}
.tgb-whitebox .tgb-h3{margin-top:0}
.tgb-split-l .tgb-h2{margin-bottom:24px}

/* destination tiles */
.tgb-tiles.tgb-tiles{display:grid;grid-template-columns:1.2fr 1fr 1fr;grid-template-rows:260px 260px;gap:16px}
.tgb-tiles>*{margin:0!important}
.tgb-tile.tgb-tile{position:relative;border-radius:var(--tgb-r);overflow:hidden}
.tgb-tile--tall{grid-row:span 2}
.tgb-tile figure{margin:0;height:100%}
.tgb-tile img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.tgb-tile:hover img{transform:scale(1.05)}
.tgb-tile-cap.tgb-tile-cap{position:absolute;left:0;right:0;bottom:0;padding:60px 20px 18px;background:linear-gradient(to top,rgba(8,30,26,.85),transparent);color:#fff;margin:0}
.tgb-tile-cap>*{margin:0}
.tgb-tile-t.tgb-tile-t{font-weight:800;font-size:18px}
.tgb-tile-d.tgb-tile-d{font-size:13px;opacity:.8}

/* mosaic */
.tgb-mosaic.tgb-mosaic{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:220px 220px;gap:14px}
.tgb-mosaic>*{margin:0!important}
.tgb-mosaic figure:first-child{grid-row:span 2}
.tgb-mosaic figure{height:100%;border-radius:12px;overflow:hidden}
.tgb-mosaic img{width:100%;height:100%;object-fit:cover}

/* reviews */
.tgb-revbox.tgb-revbox{background:var(--tgb-sand);border-radius:var(--tgb-r);padding:44px;text-align:center;max-width:760px;margin:0 auto}
.tgb-revbox>*{margin-block-start:0}
.tgb-revbox .wp-block-buttons{justify-content:center;margin-top:24px}
.tgb-rev-t.tgb-rev-t{font-size:22px;font-weight:800;margin-bottom:8px}
.tgb-revbox--lg.tgb-revbox--lg{padding:64px 48px}
.tgb-revbox--lg .tgb-h2{margin-bottom:16px}

/* CTA band */
.tgb-section--cta.tgb-section--cta{padding:0 24px 110px}
.tgb-cta.tgb-cta{background:var(--tgb-g);color:#fff;border-radius:20px;padding:52px 56px;display:flex;justify-content:space-between;align-items:center;gap:32px;background-image:radial-gradient(circle at 100% 0,rgba(224,135,58,.25),transparent 45%)}
.tgb-cta>*{margin:0}
.tgb-cta-l>*{margin:0}
.tgb-cta-title.tgb-cta-title{font-size:clamp(26px,3vw,36px);font-weight:800;letter-spacing:-.025em;color:#fff}
.tgb-cta-text.tgb-cta-text{color:rgba(255,255,255,.72);margin-top:8px;max-width:480px}
.tgb-cta-btns.tgb-cta-btns{flex:0 0 auto}

/* steps */
.tgb-steps.tgb-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}
.tgb-steps>*{margin:0!important}
.tgb-step.tgb-step{border-top:1px solid rgba(255,255,255,.2);padding-top:22px}
.tgb-step--light.tgb-step--light{border-top-color:var(--tgb-line)}
.tgb-step>*{margin:0}
.tgb-step-n.tgb-step-n{font-size:28px;font-weight:800;color:var(--tgb-o);margin-bottom:10px}
.tgb-step-t.tgb-step-t{font-size:18px;font-weight:800;margin-bottom:6px}
.tgb-step-d.tgb-step-d{font-size:15px;line-height:1.55;opacity:.75}
.tgb-section--green .tgb-h2{color:#fff}

/* tour detail */
.tgb-detail.tgb-detail{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:56px;align-items:start}
.tgb-detail>*{margin:0!important}
.tgb-main>*{margin-block-start:0}
.tgb-main>.tgb-h3:first-child{margin-top:0}
.tgb-main p{font-size:17px;line-height:1.7}
.tgb-main .tgb-round{margin:28px 0 0}
.tgb-itin.tgb-itin{list-style:none;padding:0;margin:0 0 12px;border-left:2px solid var(--tgb-line)}
.tgb-itin li{position:relative;padding:12px 0 12px 28px;font-size:16px}
.tgb-itin li:before{content:"";position:absolute;left:-7px;top:19px;width:12px;height:12px;border-radius:50%;background:#fff;border:2px solid var(--tgb-o)}
.tgb-itin strong{display:inline-block;min-width:64px;color:var(--tgb-g)}
.tgb-incl.tgb-incl{margin:36px 0;gap:32px}
.tgb-side.tgb-side{position:sticky;top:32px;background:#fff;border:1px solid var(--tgb-line);border-radius:18px;padding:30px;box-shadow:0 18px 40px rgba(15,59,52,.08)}
.tgb-side>*{margin-block-start:0}
.tgb-side-from.tgb-side-from{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--tgb-muted);margin:0}
.tgb-side-price.tgb-side-price{font-size:15px;color:var(--tgb-muted);margin:0 0 18px}
.tgb-side-price strong{font-size:34px;color:var(--tgb-ink);letter-spacing:-.03em;font-weight:800}
.tgb-side-btns.tgb-side-btns{flex-direction:column;gap:10px;margin:18px 0 12px}
.tgb-side-note.tgb-side-note{font-size:13px;color:var(--tgb-muted);text-align:center;margin:0}
.tgb-side--contact .tgb-h3{margin-top:0}
.tgb-contact-line.tgb-contact-line{font-size:15px;line-height:1.55;border-top:1px solid var(--tgb-line);padding-top:16px;margin:16px 0 0}

/* destinations page */
.tgb-dest.tgb-dest{display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:center;margin:0 0 96px!important}
.tgb-dest:last-child{margin-bottom:0!important}
.tgb-dest>*{margin:0!important}
.tgb-dest--rev>:first-child{order:2}
.tgb-dest .tgb-round img{aspect-ratio:4/3;object-fit:cover}
.tgb-dest-copy>*{margin-block-start:0}
.tgb-dest-copy .tgb-h2{margin-bottom:18px}
.tgb-dest-copy p{font-size:17px;line-height:1.7}
.tgb-best.tgb-best{font-size:14px!important;font-weight:700;color:var(--tgb-g);background:var(--tgb-sand);display:inline-block;padding:8px 14px;border-radius:8px;margin:4px 0 22px}
.tgb-ph.tgb-ph{aspect-ratio:4/3;border-radius:var(--tgb-r);background:var(--tgb-g);color:#fff;display:flex;flex-direction:column;justify-content:flex-end;padding:40px;background-image:radial-gradient(circle at 80% 20%,rgba(224,135,58,.35),transparent 50%)}
.tgb-ph>*{margin:0}
.tgb-ph-t.tgb-ph-t{font-size:56px;font-weight:800;letter-spacing:-.04em}
.tgb-ph-d.tgb-ph-d{opacity:.7}

/* gallery */
.tgb-gallery.tgb-gallery{gap:14px!important}
.tgb-gallery img{border-radius:10px}

/* contact form (CF7) */
.tgb-formbox.tgb-formbox{background:var(--tgb-sand);border-radius:18px;padding:40px}
.tgb-form label{display:block;font-size:13px;font-weight:700;color:var(--tgb-ink);margin:0 0 16px}
.tgb-form .wpcf7-form-control-wrap{display:block;margin-top:6px}
.tgb-form input[type=text],.tgb-form input[type=email],.tgb-form input[type=tel],.tgb-form input[type=date],.tgb-form select,.tgb-form textarea{width:100%;box-sizing:border-box;border:1px solid var(--tgb-line);background:#fff;border-radius:10px;padding:13px 14px;font:500 15px var(--tgb-font);color:var(--tgb-ink)}
.tgb-form input:focus,.tgb-form select:focus,.tgb-form textarea:focus{outline:2px solid var(--tgb-o);outline-offset:0;border-color:transparent}
.tgb-form textarea{height:110px}
.tgb-f-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.tgb-form .wpcf7-radio{display:flex;gap:8px;flex-wrap:wrap}
.tgb-form .wpcf7-radio .wpcf7-list-item{margin:0}
.tgb-form .wpcf7-radio label{margin:0;cursor:pointer}
.tgb-form .wpcf7-radio input{position:absolute;opacity:0}
.tgb-form .wpcf7-radio .wpcf7-list-item-label{display:inline-block;padding:10px 18px;border-radius:999px;border:1px solid var(--tgb-line);background:#fff;font-weight:700;font-size:14px}
.tgb-form .wpcf7-radio input:checked+.wpcf7-list-item-label{background:var(--tgb-g);color:#fff;border-color:var(--tgb-g)}
.tgb-form .wpcf7-submit{width:100%;background:var(--tgb-g);color:#fff;border:0;border-radius:999px;padding:16px;font:700 16px var(--tgb-font);cursor:pointer;margin-top:6px}
.tgb-form .wpcf7-submit:hover{background:var(--tgb-o)}
.tgb-f-note{font-size:13px;color:var(--tgb-muted);text-align:center;margin:12px 0 0}
.tgb-formbox .wpcf7-spinner{display:block;margin:10px auto 0}

/* ---- footer ---- */
.tgb-footer.tgb-footer{background:var(--tgb-g2);color:rgba(255,255,255,.72);padding:80px 24px 32px;margin:0;font-size:15px}
.tgb-footer-inner.tgb-footer-inner{max-width:1200px;margin:0 auto}
.tgb-footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:40px;padding-bottom:48px;border-bottom:1px solid rgba(255,255,255,.12)}
.tgb-fbrand p{max-width:300px;line-height:1.6;margin:16px 0 0}
.tgb-fcol-t{color:#fff;font-weight:800;margin:0 0 14px}
.tgb-fcol ul{list-style:none;margin:0;padding:0}
.tgb-fcol li{margin:0 0 10px}
.tgb-footer a{color:rgba(255,255,255,.72);text-decoration:none}
.tgb-footer a:hover{color:var(--tgb-o)}
.tgb-footer-bottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:24px;font-size:13px;color:rgba(255,255,255,.5)}
.tgb-wa-float{position:fixed;right:22px;bottom:22px;z-index:99;width:58px;height:58px;border-radius:50%;background:var(--tgb-wa);color:#fff!important;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 26px rgba(0,0,0,.25);transition:transform .2s}
.tgb-wa-float:hover{transform:scale(1.07)}


/* ---- car rental: guide + fleet cards ---- */
.tgb-section--tight.tgb-section--tight{padding-top:80px;padding-bottom:80px}
.tgb-guide.tgb-guide{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.tgb-guide>*{margin:0!important}
.tgb-guide-i.tgb-guide-i{background:var(--tgb-sand);border-radius:var(--tgb-r);padding:24px 22px;border:1px solid var(--tgb-line)}
.tgb-guide-i>*{margin:0}
.tgb-guide-n.tgb-guide-n{font-size:40px;font-weight:800;letter-spacing:-.03em;color:var(--tgb-g);line-height:1}
.tgb-guide-u.tgb-guide-u{font-size:13px;color:var(--tgb-muted);text-transform:uppercase;letter-spacing:.08em;margin:6px 0 14px}
.tgb-guide-c.tgb-guide-c{font-weight:800;font-size:17px;color:var(--tgb-o)}
.tgb-grid--cars{grid-template-columns:repeat(3,1fr)}
.tgb-car-stage.tgb-car-stage{background:linear-gradient(180deg,#fff 0%,#fff 62%,var(--tgb-sand2) 62%);padding:22px 16px 6px;margin:0}
.tgb-car-img.tgb-car-img{margin:0}
.tgb-car-img img{width:100%;height:auto;display:block}
.tgb-car-sim.tgb-car-sim{font-size:13px;color:var(--tgb-muted);margin:-8px 0 16px!important}
.tgb-specs.tgb-specs{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 16px!important}
.tgb-specs>*{margin:0!important}
.tgb-spec.tgb-spec{position:relative;background:var(--tgb-sand);border-radius:10px;padding:10px 10px 10px 42px;font-size:13px;line-height:1.3;color:var(--tgb-muted)}
.tgb-spec strong{display:block;color:var(--tgb-ink);font-size:15px}
.tgb-spec:before{content:"";position:absolute;left:11px;top:50%;width:22px;height:22px;margin-top:-11px;background:var(--tgb-g);-webkit-mask:var(--tgb-ic) center/contain no-repeat;mask:var(--tgb-ic) center/contain no-repeat}
.tgb-spec--seat{--tgb-ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M8%203h4a2%202%200%200%201%202%202v7h4a2%202%200%200%201%202%202v3H10a3%203%200%200%201-3-3V4a1%201%200%200%201%201-1z%22/%3E%3Cpath%20d%3D%22M10%2017v4M18%2017v4%22/%3E%3C/svg%3E")}
.tgb-spec--people{--tgb-ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%229%22%20cy%3D%228%22%20r%3D%223.2%22/%3E%3Cpath%20d%3D%22M3%2020c0-3.3%202.7-6%206-6s6%202.7%206%206%22/%3E%3Ccircle%20cx%3D%2217%22%20cy%3D%229%22%20r%3D%222.5%22/%3E%3Cpath%20d%3D%22M16%2014.1c2.9.4%205%202.8%205%205.9%22/%3E%3C/svg%3E")}
.tgb-spec--bag{--tgb-ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%224%22%20y%3D%227%22%20width%3D%2216%22%20height%3D%2213%22%20rx%3D%222%22/%3E%3Cpath%20d%3D%22M9%207V5a1%201%200%200%201%201-1h4a1%201%200%200%201%201%201v2M9%2011v6M15%2011v6%22/%3E%3C/svg%3E")}
.tgb-spec--ac{--tgb-ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%202v20M3.3%207l17.4%2010M20.7%207L3.3%2017%22/%3E%3Cpath%20d%3D%22M9.5%203.5L12%206l2.5-2.5M9.5%2020.5L12%2018l2.5%202.5%22/%3E%3C/svg%3E")}
.tgb-car-best.tgb-car-best{font-size:14px;line-height:1.5;margin:0 0 18px!important}
.tgb-car-best span{display:block;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--tgb-o);margin-bottom:2px}
.tgb-car .tgb-card-foot{align-items:center}
.tgb-car .wp-block-buttons{margin:0}
.tgb-center-text.tgb-center-text{text-align:center;margin-top:28px!important}


/* car photos */
.tgb-car-stage.tgb-car-stage{background:none!important;padding:0!important}
.tgb-car-img.tgb-car-img img{aspect-ratio:16/10;object-fit:cover;width:100%;height:auto}

/* destination facts */
.tgb-facts.tgb-facts{list-style:none;padding:0;margin:0 0 22px!important;border-top:1px solid var(--tgb-line)}
.tgb-facts li{padding:10px 0;border-bottom:1px solid var(--tgb-line);font-size:15px;line-height:1.5;color:var(--tgb-muted)}
.tgb-facts strong{color:var(--tgb-ink);margin-right:6px}
/* ---- responsive ---- */
@media (max-width:1080px){
 .tgb-nav .wp-block-navigation__container{gap:18px!important}
 .tgb-grid--4{grid-template-columns:repeat(2,1fr)!important}
 .tgb-grid--cars{grid-template-columns:repeat(2,1fr)!important}
 .tgb-guide{grid-template-columns:repeat(2,1fr)!important}
 .tgb-book{grid-template-columns:1fr 1fr!important;row-gap:4px!important}
 .tgb-book-f{border-right:0!important;border-bottom:1px solid var(--tgb-line)!important;padding:10px 14px!important}
 .tgb-book-btn{grid-column:1/-1!important;padding:16px!important;margin-top:6px!important}
 .tgb-steps{grid-template-columns:repeat(2,1fr)!important}
 .tgb-detail{grid-template-columns:1fr!important}
 .tgb-side{position:static!important}
}
@media (max-width:900px){
 .tgb-head-cta{display:none!important}
 .tgb-split,.tgb-dest{grid-template-columns:1fr!important;gap:28px!important}
 .tgb-dest--rev>:first-child{order:0!important}
 .tgb-head{flex-direction:column!important;align-items:flex-start!important;gap:16px!important}
 .tgb-feats{grid-template-columns:repeat(2,1fr)!important}
 .tgb-feat:nth-child(2){border-right:0!important}
 .tgb-feat{border-bottom:1px solid rgba(255,255,255,.12)!important}
 .tgb-tiles{grid-template-columns:1fr 1fr!important;grid-template-rows:none!important;grid-auto-rows:200px!important}
 .tgb-tile--tall{grid-row:span 2!important}
 .tgb-cta{flex-direction:column!important;align-items:flex-start!important;padding:40px 28px!important}
 .tgb-footer-grid{grid-template-columns:1fr 1fr!important}
 .tgb-fbrand{grid-column:1/-1!important}
 .tgb-grid--3{grid-template-columns:1fr 1fr!important}
}
@media (max-width:640px){
 .tgb-header.tgb-header{padding:16px 18px!important}
 .tgb-section.tgb-section{padding:72px 18px!important}
 .tgb-section--cta.tgb-section--cta{padding:0 18px 72px!important}
 .tgb-hero.tgb-hero{padding:120px 18px 40px!important}
 .tgb-hero--plain.tgb-hero--plain{padding:130px 18px 56px!important}
 .tgb-grid--4,.tgb-grid--3,.tgb-grid--2,.tgb-grid--cars{grid-template-columns:1fr!important}
 .tgb-guide-n{font-size:30px!important}
 .tgb-book{grid-template-columns:1fr!important}
 .tgb-feat{padding:20px 16px!important}
 .tgb-mosaic{grid-template-columns:1fr 1fr!important;grid-template-rows:none!important;grid-auto-rows:150px!important}
 .tgb-mosaic figure:first-child{grid-column:span 2!important;grid-row:span 1!important}
 .tgb-steps{grid-template-columns:1fr!important}
 .tgb-f-2{grid-template-columns:1fr!important;gap:0!important}
 .tgb-formbox,.tgb-fleetbox,.tgb-whitebox,.tgb-side{padding:24px!important}
 .tgb-revbox{padding:32px 22px!important}
 .tgb-fleet--full table{font-size:14px!important}
 .tgb-fleet--full td span{display:none!important}
 .tgb-ph-t{font-size:40px!important}
 .tgb-incl{flex-direction:column!important}
}

/* Extras on top of tools/theme-base.css. gen_theme.py writes theme/arkhea-tgb/assets/css/site.css = theme-base.css + this file. */

/* ---- footer navigation and text lines (core blocks) ---- */
.tgb-fnav.tgb-fnav{font-size:15px}
.tgb-fnav .wp-block-navigation__container{flex-direction:column;align-items:flex-start;gap:10px}
.tgb-fnav .wp-block-navigation-item__content{color:rgba(255,255,255,.72);padding:0}
.tgb-fnav .wp-block-navigation-item__content:hover{color:var(--tgb-o)}
.tgb-fline.tgb-fline{margin:0 0 10px}
.tgb-fline:empty{display:none}
.tgb-footer-bottom p{margin:0}
.tgb-fbrand .wp-block-site-logo{margin:0}

/* ---- FAQ (core Details block) ---- */
.tgb-faq{max-width:820px}
.tgb-faq .wp-block-details{background:#fff;border:1px solid var(--tgb-line);border-radius:var(--tgb-r);padding:18px 22px;margin:0 0 12px}
.tgb-faq .wp-block-details summary{font-weight:700;font-size:17px;cursor:pointer;color:var(--tgb-ink)}
.tgb-faq .wp-block-details[open] summary{margin-bottom:10px}
.tgb-faq .wp-block-details p{margin:0;color:var(--tgb-muted)}

/* ---- TGB overrides (destination guide pages; moved here from Global Styles custom CSS) ---- */
.tgb-intro.tgb-intro{font-size:20px!important;line-height:1.6;color:var(--tgb-ink);margin-bottom:8px}
.tgb-side .tgb-facts li{font-size:14px}
.tgb-side .tgb-facts strong{display:block;margin:0 0 2px}
.tgb-main.tgb-main>p{margin:0 0 18px!important}
.tgb-main.tgb-main>.tgb-h3{margin-top:36px!important}
.tgb-main.tgb-main>.tgb-round{margin:28px 0 8px!important}
.tgb-head.tgb-head:not(:has(.tgb-head-l)){flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:0}

/* ---- all destinations grid (moved here from Global Styles custom CSS) ---- */
.tgb-region.tgb-region{font-size:22px;font-weight:800;margin:44px 0 18px!important;padding-bottom:10px;border-bottom:1px solid var(--tgb-line)}
.tgb-card--mini .tgb-card-title{font-size:18px!important}
.tgb-card--mini .tgb-card-body{padding:16px 18px 18px!important}
