/* Shady Tours — Tour inquiry form (Contact Form 7) */
.st-inquiry{
  --st-navy:#10263b;
  --st-gold:#e7a63a;
  --st-gold-dark:#d9962c;
  --st-gold-soft:#f5d9a6;
  --st-border:#d9dde3;
  --st-text:#2b3b55;
  --st-muted:#6b7a90;
  --st-h:52px;
  --st-fs:15px;
  width:100%;color:var(--st-text);font-family:inherit;
}
/* standalone use (outside the tour card) */
.st-inquiry--card{max-width:540px;margin:0 auto;background:#fff;border-radius:22px;box-shadow:0 8px 30px rgba(18,40,75,.10);overflow:hidden;}
.st-inquiry__head{background:var(--st-navy);color:#fff;text-align:center;font-size:26px;font-weight:700;padding:20px;}
.st-inquiry--card .st-inquiry__body{padding:28px 24px 24px;}

.st-inquiry .wpcf7-form-control-wrap{display:block;width:100%;}
.st-field{margin-bottom:14px;}
.st-inquiry input[type=text],
.st-inquiry input[type=email],
.st-inquiry input[type=tel],
.st-inquiry input[type=date],
.st-inquiry select,
.st-inquiry textarea{
  width:100%;height:var(--st-h);padding:0 20px;border:1.5px solid var(--st-border);border-radius:30px;
  background:#fff;font:inherit;font-size:var(--st-fs);color:var(--st-text);outline:none;box-shadow:none;
  -webkit-appearance:none;appearance:none;transition:border-color .2s;margin:0;line-height:normal;
}
.st-inquiry input:focus,.st-inquiry select:focus,.st-inquiry textarea:focus{border-color:var(--st-gold);}
.st-inquiry ::placeholder{color:var(--st-muted);opacity:1;}
.st-inquiry select{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 18 11'%3E%3Cpath d='M1 1l8 8 8-8' fill='none' stroke='%2310263b' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 18px center;padding-right:44px;cursor:pointer;
}
.st-inquiry select:has(option:checked[value=""]){color:var(--st-muted);}
.st-inquiry textarea{height:110px;padding:14px 20px;border-radius:20px;resize:vertical;line-height:1.5;}

/* phone: code + number in one pill */
.st-field--phone{display:flex;border:1.5px solid var(--st-border);border-radius:30px;overflow:hidden;background:#fff;}
.st-field--phone .wpcf7-form-control-wrap{width:auto;}
.st-field--phone .wpcf7-form-control-wrap:first-child{flex:0 0 44%;border-right:1.5px solid var(--st-border);}
.st-field--phone .wpcf7-form-control-wrap:last-child{flex:1;min-width:0;}
.st-inquiry .st-field--phone select,.st-inquiry .st-field--phone input[type=tel]{border:0;border-radius:0;height:calc(var(--st-h) - 3px);}
.st-inquiry .st-field--phone select{padding-right:34px;background-position:right 12px center;text-overflow:ellipsis;}
.st-inquiry .st-field--phone input[type=tel]{padding-left:16px;}
.st-field--phone:focus-within{border-color:var(--st-gold);}

/* dates side by side */
.st-field--dates{display:flex;gap:12px;}
.st-field--dates .wpcf7-form-control-wrap{flex:1;min-width:0;}
.st-inquiry input[type=date]{padding-right:14px;position:relative;}
.st-inquiry input[type=date]::-webkit-calendar-picker-indicator{
  width:18px;height:18px;cursor:pointer;opacity:.8;margin-left:4px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24'%3E%3Crect x='3' y='5' width='18' height='16' rx='2' fill='none' stroke='%2310263b' stroke-width='2'/%3E%3Cpath d='M3 10h18M8 3v4M16 3v4' stroke='%2310263b' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") center/contain no-repeat;
}
.st-inquiry input[type=date]:not(:focus):not(.has-value)::before{content:attr(placeholder);color:var(--st-muted);position:absolute;left:20px;top:50%;transform:translateY(-50%);pointer-events:none;}
.st-inquiry input[type=date]:not(:focus):not(.has-value)::-webkit-datetime-edit{color:transparent;}

/* counters */
.st-counter{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;}
.st-counter__label strong{display:block;font-size:17px;font-weight:700;color:var(--st-navy);line-height:1.15;}
.st-counter__label span{display:block;font-size:13px;color:var(--st-muted);margin-top:2px;}
.st-counter__ctrl{display:flex;align-items:center;gap:8px;border:1.5px solid var(--st-border);border-radius:30px;padding:6px 8px;flex:0 0 auto;}
.st-counter__ctrl .wpcf7-form-control-wrap{width:auto;}
.st-inquiry .st-counter__ctrl input[type=number]{
  width:34px;height:auto;padding:0;border:0;border-radius:0;text-align:center;font-size:17px;font-weight:600;
  -moz-appearance:textfield;appearance:textfield;pointer-events:none;background:transparent;
}
.st-counter__ctrl input[type=number]::-webkit-outer-spin-button,
.st-counter__ctrl input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}
.st-inquiry .st-counter__btn{
  width:30px;height:30px;padding:0;border:0;border-radius:9px;background:var(--st-gold);color:#fff;
  font-size:20px;line-height:1;cursor:pointer;display:grid;place-items:center;transition:background .2s;box-shadow:none;
}
.st-inquiry .st-counter__btn:hover{background:var(--st-gold-dark);}
.st-inquiry .st-counter__btn[disabled]{background:var(--st-gold-soft);cursor:default;}

/* submit */
.st-field--submit{margin:18px 0 0;}
.st-inquiry .st-submit{
  width:100%;height:60px;padding:0;border:0;border-radius:40px;background:var(--st-gold);color:#fff;
  font:inherit;font-size:20px;font-weight:700;cursor:pointer;transition:background .2s;box-shadow:none;letter-spacing:0;
}
.st-inquiry .st-submit:hover{background:var(--st-gold-dark);color:#fff;}
.st-inquiry .wpcf7-spinner{display:block;margin:10px auto 0;}

/* CF7 validation + response */
.st-inquiry .wpcf7-not-valid{border-color:#e05252 !important;}
.st-inquiry .wpcf7-not-valid-tip{font-size:13px;color:#e05252;padding:4px 20px 0;}
.st-inquiry + .wpcf7-response-output,
.st-inquiry .wpcf7-response-output{margin:16px 0 0;border-radius:14px;padding:12px 16px;font-size:14px;}

/* larger sidebars / standalone */
@media (min-width:1300px){
  .st-inquiry{--st-h:56px;--st-fs:16px;}
}
@media (max-width:480px){
  .st-inquiry--card .st-inquiry__body{padding:22px 16px;}
  .st-inquiry__head{font-size:22px;}
}
