/* Gravity Forms: shared Syndal styling, limited to the three published forms. */
:is(#gform_wrapper_2,#gform_wrapper_3,#gform_wrapper_4){
 --gf-color-primary:var(--syn-blue-dk);--gf-color-primary-contrast:#fff;
 --gf-color-in-ctrl:#fff;--gf-color-in-ctrl-contrast:var(--syn-ink);
 --gf-color-in-ctrl-border:#81869a;--gf-radius:12px;--gf-font-family:var(--syn-body);
 font-family:var(--syn-body);color:var(--syn-ink);max-width:840px;margin:0 auto;
 background:#fff;border:1px solid #e4e8f0;border-radius:var(--syn-r);padding:clamp(20px,3vw,36px);
 box-shadow:0 12px 36px rgba(36,38,58,.06);box-sizing:border-box;
}
:is(#gform_wrapper_2,#gform_wrapper_3,#gform_wrapper_4) .gform_title{font-family:var(--syn-head);font-size:30px;line-height:1.2;color:var(--syn-ink)}
:is(#gform_wrapper_2,#gform_wrapper_3,#gform_wrapper_4) .gform_fields{row-gap:24px;column-gap:20px}
:is(#gform_wrapper_2,#gform_wrapper_3,#gform_wrapper_4) :is(.gfield_label,.gform-field-label){font-family:var(--syn-body);font-size:16px;font-weight:700;line-height:1.5;color:var(--syn-ink)}
:is(#gform_wrapper_2,#gform_wrapper_3,#gform_wrapper_4) :is(.gfield_required,.gfield_description,.gform_description,.gfield_html){font-family:var(--syn-body);font-size:14px;line-height:1.6;color:var(--syn-muted)}
:is(#gform_wrapper_2,#gform_wrapper_3,#gform_wrapper_4) :is(input[type=text],input[type=email],input[type=tel],input[type=url],input[type=number],select,textarea){
 font-family:var(--syn-body);font-size:16px;line-height:1.5;min-height:48px;border:1px solid #81869a;border-radius:12px;background:#fff;color:var(--syn-ink);padding:11px 14px;box-shadow:none;max-width:100%;box-sizing:border-box;
}
:is(#gform_wrapper_2,#gform_wrapper_3,#gform_wrapper_4) textarea{min-height:140px;height:140px;resize:vertical}
:is(#gform_wrapper_2,#gform_wrapper_3,#gform_wrapper_4) .ginput_container_date input{width:100%}
:is(#gform_wrapper_2,#gform_wrapper_3,#gform_wrapper_4) :is(.gfield_checkbox,.gfield_radio) label{min-height:44px;display:inline-flex;align-items:center;font-weight:400}
:is(#gform_wrapper_2,#gform_wrapper_3,#gform_wrapper_4) :is(input,select,textarea,button,a):focus-visible{outline:3px solid var(--syn-blue-dk);outline-offset:3px}
:is(#gform_wrapper_2,#gform_wrapper_3,#gform_wrapper_4) :is(.gform_button,.gform_next_button,.gform_previous_button,button.gform_button_select_files){
 min-height:48px;padding:13px 26px;border-radius:999px;border:2px solid var(--syn-blue-dk);background:var(--syn-blue-dk);color:#fff;font:800 16px/1.4 var(--syn-body);cursor:pointer;box-shadow:none;
}
:is(#gform_wrapper_2,#gform_wrapper_3,#gform_wrapper_4) :is(.gform_button,.gform_next_button,.gform_previous_button,button.gform_button_select_files):hover{background:#154da9;border-color:#154da9}
:is(#gform_wrapper_2,#gform_wrapper_3,#gform_wrapper_4) .gform_footer{margin-top:28px;padding:0}
:is(#gform_wrapper_2,#gform_wrapper_3,#gform_wrapper_4) :is(.gfield_validation_message,.gform_validation_errors){color:#922b21;background:#fff2ef;border-color:#922b21;font-size:15px}
:is(#gform_wrapper_2,#gform_wrapper_3,#gform_wrapper_4) [aria-invalid=true]{border-color:#922b21}
:is(#gform_confirmation_wrapper_2,#gform_confirmation_wrapper_3,#gform_confirmation_wrapper_4){padding:28px;border:1px solid #417b5c;border-radius:var(--syn-r);background:var(--syn-mint);color:var(--syn-ink);font:400 17px/1.65 var(--syn-body);max-width:840px;margin:0 auto}
.syn-tour-shell{max-width:1160px;margin:0 auto;padding:32px 0 56px;font-family:var(--syn-body);color:var(--syn-ink)}
.syn-tour-layout{gap:clamp(28px,5vw,64px)!important;align-items:flex-start!important}
.syn-tour-intro{flex-basis:38%!important;flex-grow:0!important}
.syn-tour-shell h2{font-family:var(--syn-head);font-size:clamp(28px,3vw,40px);font-weight:600;line-height:1.15;color:var(--syn-ink);margin:0 0 20px}
.syn-tour-shell h3{font-family:var(--syn-head);font-size:23px;font-weight:600;color:var(--syn-ink);margin:0 0 12px}
.syn-tour-shell p,.syn-tour-shell li{font-size:16px;line-height:1.7;color:var(--syn-muted)}
.syn-tour-shell p{margin:0 0 20px}
.syn-tour-shell .syn-tour-eyebrow{color:var(--syn-blue-dk);font-size:13px;letter-spacing:.12em;font-weight:800;text-transform:uppercase;margin-bottom:14px}
.syn-tour-note{background:var(--syn-cream);border:1px solid #e8ded0;border-radius:var(--syn-r);padding:26px;margin:28px 0}
.syn-tour-note ul{margin:0;padding-left:20px}.syn-tour-note li+li{margin-top:10px}
.syn-tour-shell a{color:var(--syn-blue-dk);text-decoration:underline;text-underline-offset:3px}
.syn-tour-shell a:focus-visible{outline:3px solid var(--syn-blue-dk);outline-offset:3px}
.syn-tour-shell a[href^=tel]{display:inline-flex;min-height:44px;align-items:center;font-weight:800}
.syn-tour-shell .gfield_html p{font-size:14px;margin:0}
.syn-tour-form>h2{font-size:28px}
@media(max-width:781px){
 .syn-tour-shell{padding-top:16px}.syn-tour-layout{flex-direction:column}.syn-tour-layout>.wp-block-column{width:100%;flex-basis:auto!important}
 :is(#gform_wrapper_2,#gform_wrapper_3,#gform_wrapper_4) .gfield:not(.gform_validation_container){grid-column:1 / -1}
 :is(#gform_wrapper_2,#gform_wrapper_3,#gform_wrapper_4) .gform_button{width:100%}
}

/* Kubio applies link colours with high specificity; keep form links readable. */
body .syn-tour-shell a,
body :is(#gform_confirmation_wrapper_2,#gform_confirmation_wrapper_3,#gform_confirmation_wrapper_4) a{color:var(--syn-blue-dk)!important;text-decoration:underline!important;text-underline-offset:3px}
body :is(#gform_wrapper_2,#gform_wrapper_3,#gform_wrapper_4) :is(input,select,textarea,button,a):focus-visible{outline:3px solid var(--syn-blue-dk)!important;outline-offset:3px!important}

/* Minimal tour form. */
#gform_wrapper_2{padding:0;border:0;border-radius:0;box-shadow:none;background:transparent;--gf-radius:6px}
#gform_wrapper_2 .gform_fields{row-gap:20px;column-gap:16px}
#gform_wrapper_2 :is(input[type=text],input[type=email],input[type=tel],select,textarea){border-radius:6px;background:#fff;border-color:#9296a0;font-size:16px;min-height:48px;padding:10px 12px}
#gform_wrapper_2 :is(.gfield_label,.gform-field-label){font-size:14px;font-weight:600;line-height:1.5}
#gform_wrapper_2 .gfield_required{font-size:13px;color:#5c6075}
#gform_wrapper_2 :is(.gfield_description,.gfield_html){font-size:13px;line-height:1.6}
#gform_wrapper_2 .gfield_html p{font-size:13px;margin:0}
#gform_wrapper_2 textarea{min-height:96px;height:96px}
#gform_wrapper_2 .gform_button{width:100%;border-radius:6px;font-weight:700;margin:0}
#gform_wrapper_2 .gform_footer{margin-top:22px}
#gform_wrapper_2 button.ui-datepicker-trigger{width:44px;height:44px;min-width:44px;position:absolute;right:2px;top:2px;border:0;background:transparent;cursor:pointer;padding:14px;border-radius:4px}
#gform_wrapper_2 button.ui-datepicker-trigger img{width:16px;height:16px;display:block}
#gform_wrapper_2 .ginput_container_date{position:relative}
#gform_wrapper_2 .ginput_container_date input{padding-right:46px}
.syn-tour-shell{max-width:1000px;padding:16px 0 40px}
.syn-tour-intro{flex-basis:34%!important}
.syn-tour-shell h2{font-size:32px;font-weight:500;line-height:1.2}
.syn-tour-form>h2{font-size:27px}
.syn-tour-note{background:transparent;border:0;border-top:1px solid #e6e4df;border-radius:0;padding:22px 0;margin:24px 0 8px}
.syn-tour-note ul{list-style:none;padding:0;font-size:14px}
.syn-tour-note li+li{margin-top:8px}
#gform_confirmation_wrapper_2{box-shadow:none}

#gform_wrapper_2 .gform_required_legend{display:none}
#gform_wrapper_2 .gform_heading{margin:0}
#gform_wrapper_2 #gform_submit_button_2{border-radius:6px}

/* Tour page: form card + visit steps (Oct 2026). */
.syn-tour-form{background:#fff;border:1px solid #E6E8F0;border-radius:var(--syn-r);box-shadow:0 10px 30px rgba(36,38,58,.07);padding:clamp(22px,3vw,36px)!important}
.syn-tour-steps{list-style:none;counter-reset:syns;padding:0!important;margin:0 0 8px}
.syn-tour-steps li{counter-increment:syns;position:relative;padding-left:44px;margin:0 0 14px;color:var(--syn-muted)}
.syn-tour-steps li::before{content:counter(syns);position:absolute;left:0;top:1px;width:30px;height:30px;border-radius:50%;background:var(--syn-blue);color:#fff;font:600 15px/30px var(--syn-head);text-align:center}
.syn-tour-intro h3{margin-top:28px}
