/*
 * Common look for every other page (contact, about, blog, forms, account, 404, footer).
 * Presentation only.
 */
/* ---- page title band (pages that are not tour lists) ---- */
body:not(.single-togo_trip):not(.home) .page-title{min-height:0 !important;padding:46px 0 !important;position:relative;background-color:var(--ibv-navy)}
body:not(.single-togo_trip):not(.home):not(.tax-togo_trip_destinations):not(.post-type-archive-togo_trip) .page-title:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(15,26,43,.88),rgba(15,26,43,.62))}
body:not(.single-togo_trip):not(.home) .page-title .page-title_inner{position:relative;z-index:1}
body:not(.single-togo_trip):not(.home) .page-title .page-title_heading{font-size:clamp(28px,4vw,42px);font-weight:800;letter-spacing:-.02em;color:#fff}

/* ---- readable content ---- */
body.page:not(.home) .site-content,body.single-post .site-content{max-width:1180px;margin-left:auto;margin-right:auto;padding-left:24px;padding-right:24px;box-sizing:border-box}
.entry-content p,.elementor-widget-text-editor p{line-height:1.75}
.entry-content a:not(.togo-button):not(.elementor-button){color:var(--ibv-brand)}

/* ---- forms: Contact Form 7, WooCommerce, login ---- */
.wpcf7 input[type=text],.wpcf7 input[type=email],.wpcf7 input[type=tel],.wpcf7 input[type=number],.wpcf7 input[type=date],.wpcf7 select,.wpcf7 textarea,
.woocommerce form .input-text,.woocommerce form select,.woocommerce-account input.input-text{border:1px solid var(--ibv-line) !important;border-radius:10px !important;background:#fff !important;padding:12px 14px !important;min-height:46px;font:inherit;transition:border-color .15s,box-shadow .15s}
.wpcf7 input:focus,.wpcf7 select:focus,.wpcf7 textarea:focus,.woocommerce form .input-text:focus{outline:0 !important;border-color:var(--ibv-brand) !important;box-shadow:0 0 0 3px rgba(253,70,33,.15) !important}
.wpcf7 label{font-weight:700;font-size:14px;color:var(--ibv-ink)}
.wpcf7 input[type=submit],.wpcf7-submit,.woocommerce button.button.alt,.woocommerce a.button.alt{background:var(--ibv-brand) !important;border:0 !important;color:#fff !important;border-radius:10px !important;font-weight:800;padding:14px 28px !important;cursor:pointer;transition:background .15s}
.wpcf7 input[type=submit]:hover,.woocommerce button.button.alt:hover{background:var(--ibv-brand-dark) !important}
.wpcf7-not-valid-tip{color:#c0392b;font-size:13px}
.wpcf7 form .wpcf7-response-output{border-radius:10px;border-width:1px}

/* ---- blog: cards ---- */
.blog .type-post,.archive .type-post,.togo-posts .type-post,.elementor-widget-togo-posts article{background:#fff;border:1px solid var(--ibv-line);border-radius:var(--ibv-radius);overflow:hidden;box-shadow:var(--ibv-shadow);transition:box-shadow .2s,transform .2s}
.blog .type-post:hover,.archive .type-post:hover,.togo-posts .type-post:hover{box-shadow:var(--ibv-shadow-lg);transform:translateY(-3px)}
.post-thumbnail img,.type-post .post-thumbnail img{width:100%;object-fit:cover}
.single-post .entry-title,.single-post h1{font-weight:800;letter-spacing:-.02em}

/* ---- footer: clearer top edge and spacing ---- */
#footer.site-footer{border-top:4px solid var(--ibv-brand)}
#footer .elementor-icon-list-item,#footer .togo-icon-list-item{padding-top:5px;padding-bottom:5px}
#footer a{transition:color .15s,padding-left .15s}
#footer a:hover{padding-left:3px}

/* ---- 404 ---- */
.error404 h1,.error404 .page-title_heading{font-weight:800}

/* ---- "Plan my trip" multi-step form: brand colours instead of beige / dark green / serif ---- */
.travel-form-wrap{background:#fff !important;border:1px solid var(--ibv-line) !important;border-radius:var(--ibv-radius) !important;box-shadow:var(--ibv-shadow-lg);font-family:inherit !important}
.travel-form-wrap *{font-family:inherit}
.travel-step-head{background:var(--ibv-bg) !important;border-bottom:1px solid var(--ibv-line) !important}
.travel-step{color:var(--ibv-muted) !important;font-weight:600}
.travel-step.active{color:var(--ibv-brand) !important;font-weight:800}
.travel-step.active:after{background:var(--ibv-brand) !important}
.travel-form-wrap input,.travel-form-wrap select,.travel-form-wrap textarea,.travel-form-wrap .wpcf7-form-control:not([type=submit]):not(button){border:1px solid var(--ibv-line) !important;border-radius:10px !important;background:#fff !important}
.travel-form-wrap input:focus,.travel-form-wrap select:focus,.travel-form-wrap textarea:focus{border-color:var(--ibv-brand) !important;box-shadow:0 0 0 3px rgba(253,70,33,.15) !important;outline:0}
.travel-form-wrap label{color:var(--ibv-ink) !important;font-weight:700}
.travel-form-wrap button,.travel-form-wrap input[type=submit],.travel-form-wrap .wpcf7-submit,.travel-form-wrap [class*="btn"],.travel-form-wrap [class*="next"],.travel-form-wrap [class*="submit"]{background:var(--ibv-brand) !important;border-color:var(--ibv-brand) !important;color:#fff !important;border-radius:10px !important;font-weight:800 !important;box-shadow:0 8px 22px rgba(253,70,33,.25)}
.travel-form-wrap button:hover,.travel-form-wrap input[type=submit]:hover{background:var(--ibv-brand-dark) !important}
.travel-form-wrap [class*="back"],.travel-form-wrap [class*="prev"]{background:#fff !important;color:var(--ibv-ink) !important;border:1px solid var(--ibv-line) !important;box-shadow:none !important}
.travel-form-wrap hr,.travel-form-wrap [class*="divider"]{border-color:var(--ibv-line) !important;background:var(--ibv-line)}
.travel-submit,input.travel-submit,.travel-form-wrap .travel-submit{background:var(--ibv-brand) !important;border:0 !important;color:#fff !important;border-radius:10px !important;font-family:inherit !important;font-weight:800 !important;padding:14px 28px !important;box-shadow:0 8px 22px rgba(253,70,33,.25) !important}
.travel-submit:hover{background:var(--ibv-brand-dark) !important}
.travel-nav,.travel-next,.travel-prev,.travel-btn{border-radius:10px !important}

/* Tripadvisor reviews block on tour / trips pages */
.ibv-ta-reviews{margin:40px 0 10px;overflow:hidden}
.ibv-ta-reviews__in{background:#fff;border:1px solid var(--ibv-line);border-radius:var(--ibv-radius);box-shadow:var(--ibv-shadow);padding:28px 24px;max-width:100%;overflow:hidden}
.ibv-ta-reviews h2{text-align:center;font-size:clamp(24px,3vw,32px);font-weight:800;letter-spacing:-.02em;margin:0 0 18px}
.ibv-ta-reviews .ti-widget{max-width:100% !important}
.post-type-archive-togo_trip .ibv-ta-reviews{max-width:1320px;margin-left:auto;margin-right:auto;padding:0 24px}
