/* Standalone styling for the Visits Inquiry (Contact Form 7) form so it looks the
   same when embedded OUTSIDE the KUROGANE Visits pages (e.g. inside a themed article).
   Everything is scoped to .wpcf7-form.form so it never touches the host theme. */
.wpcf7-form.form{
  --ink:#111;--muted:#3d4a51;--line:rgba(17,17,17,.1);--paper:#fff;--warm:#efe7df;
  --accent:#165e83;--xs:.75rem;--sm:.9rem;--ease:cubic-bezier(.22,1,.36,1);
  display:grid;gap:1.6rem;color:var(--ink);text-align:left;
  max-width:640px;margin:8px 0 0;
}
.wpcf7-form.form .frow{display:grid;gap:.6rem}
.wpcf7-form.form .f2{display:grid;grid-template-columns:1fr;gap:1.6rem}
@media(min-width:560px){.wpcf7-form.form .f2{grid-template-columns:1fr 1fr}}
.wpcf7-form.form .f2>span{display:grid;gap:.6rem}
.wpcf7-form.form label,.wpcf7-form.form legend{font-size:var(--xs);font-weight:500;text-transform:uppercase;letter-spacing:.16em}
.wpcf7-form.form legend{margin-bottom:.9rem}
.wpcf7-form.form input,.wpcf7-form.form select,.wpcf7-form.form textarea{width:100%;font:inherit;font-size:var(--sm);padding:.85em .95em;border:1px solid var(--line);border-radius:2px;background:#fff;color:var(--ink)}
.wpcf7-form.form input:focus,.wpcf7-form.form select:focus,.wpcf7-form.form textarea:focus{outline:1px solid var(--accent);border-color:var(--accent)}
@media(max-width:640px){.wpcf7-form.form select{font-size:16px}}
.wpcf7-form.form select option{font-size:1rem;color:#111;background:#fff}
.wpcf7-form.form input:not([type="checkbox"]),.wpcf7-form.form select{height:2.85rem;padding-top:0;padding-bottom:0;line-height:normal}
.wpcf7-form.form fieldset{border:0;padding:0;margin:.9rem 0;display:grid;gap:.6rem}
.wpcf7-form.form .hint{font-size:var(--xs);color:var(--muted);font-weight:400;text-transform:none;letter-spacing:.02em}
.wpcf7-form.form .req{color:#b32d2e}
.wpcf7-form.form .consent label{display:flex;gap:.7rem;align-items:center;font-weight:400;font-size:var(--sm);text-transform:none;letter-spacing:0}
.wpcf7-form.form .consent input{flex:0 0 auto;width:1.05rem;height:1.05rem;margin:0}
.wpcf7-form.form .consent .pp-link{color:inherit;text-decoration:underline;text-underline-offset:3px}
.wpcf7-form.form .consent .pp-link:hover{color:var(--accent)}
/* custom dropdown (enhanced by form.js) */
.wpcf7-form.form .dd{position:relative}
.wpcf7-form.form .dd>select{display:none!important}
.wpcf7-form.form .dd-btn{width:100%;height:2.85rem;padding:0 .95em;border:1px solid var(--line);border-radius:2px;background:#fff;color:var(--ink);font:inherit;font-size:var(--sm);text-align:left;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:.6rem}
.wpcf7-form.form .dd-btn:focus-visible{outline:1px solid var(--accent);border-color:var(--accent)}
.wpcf7-form.form .dd-btn::after{content:"";width:.5em;height:.5em;border-right:1.5px solid var(--muted);border-bottom:1.5px solid var(--muted);transform:rotate(45deg) translateY(-15%);flex:0 0 auto}
.wpcf7-form.form .dd.open .dd-btn{border-color:var(--accent)}
.wpcf7-form.form .dd-list{position:absolute;z-index:60;left:0;right:0;top:calc(100% + 4px);margin:0;padding:.35rem;list-style:none;background:#fff;border:1px solid var(--line);border-radius:3px;box-shadow:0 14px 40px rgba(17,17,17,.16);max-height:15rem;overflow:auto;display:none}
.wpcf7-form.form .dd.open .dd-list{display:block}
.wpcf7-form.form .dd-list li{padding:.7em .85em;font-size:1rem;color:var(--ink);border-radius:2px;cursor:pointer;line-height:1.5}
.wpcf7-form.form .dd-list li:hover{background:#f2f2f2}
.wpcf7-form.form .dd-list li[aria-selected="true"]{background:var(--warm)}
@media(max-width:640px){.wpcf7-form.form .dd-list li{font-size:16px;padding:.85em .9em}}
/* submit button */
.wpcf7-form.form .btn{display:inline-block;font-size:var(--sm);font-weight:400;letter-spacing:.18em;text-transform:uppercase;text-decoration:none;padding:1.1em 2.6em;border-radius:9px;border:1px solid transparent;cursor:pointer;width:auto;transition:background .4s var(--ease),transform .4s var(--ease)}
.wpcf7-form.form .btn--solid{color:#fff;border-color:#1c2620;background:linear-gradient(165deg,#4a5950 0%,#37453d 52%,#273129 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.22),inset 0 -2px 0 rgba(0,0,0,.25),0 4px 10px rgba(20,30,24,.28)}
.wpcf7-form.form .btn--solid:hover{transform:translateY(-2px);background:linear-gradient(165deg,#556459 0%,#414f47 52%,#2f3a33 100%)}
/* CF7 response + validation messages */
.wpcf7-form.form .wpcf7-not-valid-tip{color:#b32d2e;font-size:var(--xs);margin-top:.3em}
.wpcf7 .wpcf7-response-output{margin:1.2em 0 0;padding:.7em 1em;border-radius:2px;font-size:var(--sm)}
