.contact-details-block .copy-contact,
.contact-details-block .contact-map-link { display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:44px;min-height:44px;padding:10px 14px;border:1px solid #d6c9b2;border-radius:4px;background:#f5f1e8;color:#654d27;font:inherit;font-size:13px;line-height:1.5;text-decoration:none;cursor:pointer; }
.contact-details-block .contact-item>a { min-height:44px;display:inline-flex;align-items:center;flex-wrap:wrap; }
.contact-details-block .contact-copy-value { user-select:text;-webkit-user-select:text;overflow-wrap:anywhere; }
.contact-details-block .contact-qr-section { display:block;min-width:0;padding-bottom:22px; }
.contact-details-block .contact-qr-help { margin:8px 0 16px;padding:0;font-size:12px;line-height:1.85;color:#617180; }
.contact-details-block .contact-qr-grid { display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:16px;width:100%; }
.contact-details-block .contact-qr-card { min-width:0;margin:0;padding:16px;background:#fff;border:1px solid #e2ddd3;text-align:center;color:#263d50; }
.contact-details-block .contact-qr-image-link { display:block;width:100%;min-height:44px;text-decoration:none; }
.contact-details-block .contact-qr-card .contact-qr { display:block;width:100%;max-width:240px;height:auto;margin:0 auto;object-fit:contain;background:#fff; }
.contact-details-block .contact-qr-card figcaption { margin-top:12px;font-size:12px;line-height:1.75;color:#536574; }
.contact-details-block .contact-qr-image-link:hover { outline:1px solid #bfa579;outline-offset:4px; }
.contact-inline .contact-details-block .contact-qr-help { color:#c0ccd7; }
.contact-details-block .contact-address-actions { display:flex;flex-wrap:wrap;gap:10px;width:100%; }
.contact-details-block .contact-map-link { background:transparent; }
.contact-details-block .copy-contact:hover,.contact-details-block .contact-map-link:hover { background:#eae0cc; }
.contact-details-block .contact-status { min-height:22px;font-size:12px;line-height:1.75;color:#665029; }
.contact-details-block .contact-status[data-state="error"] { color:#8d3a22; }
.contact-inline .contact-details-block .copy-contact,.contact-inline .contact-details-block .contact-map-link { background:transparent;border-color:#c9b17b;color:#f0dab0; }
.contact-inline .contact-details-block .copy-contact:hover,.contact-inline .contact-details-block .contact-map-link:hover { background:#ffffff12; }
.contact-inline .contact-details-block .contact-status { color:#f0dab0; }
.contact-inline .contact-details-block .contact-status[data-state="error"] { color:#ffcfb8; }
.contact-details-block .copy-contact[aria-busy="true"] { opacity:.65;cursor:wait; }
.contact-details-block :is(button,a,[data-copy-value]):focus-visible,.seiran-consultation :is(summary,button,input,select,textarea):focus-visible { outline:3px solid #b18b4c;outline-offset:3px; }
#contact-dialog .dialog-close { position:sticky;float:right;top:10px;right:auto;margin:-24px -14px 0 0;min-width:44px;min-height:44px;z-index:2;background:#fff;border:1px solid #e3e8ec;border-radius:50%;box-shadow:0 2px 8px #18314912; }
.mobile-contact>.mobile-consult-link { min-height:54px;background:var(--navy,#183149);color:#fff; }
.seiran-consultation { margin-top:25px;border:1px solid #d9dfe4;border-radius:6px;background:#fff;color:#183149; }
.seiran-consultation,.seiran-consultation * { box-sizing:border-box; }
.seiran-consultation>summary { display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:66px;padding:16px 18px;list-style:none;cursor:pointer; }
.seiran-consultation>summary::-webkit-details-marker { display:none; }
.seiran-consultation>summary::marker { content:''; }
.seiran-consultation>summary strong { display:block;font-size:15px;font-weight:600;line-height:1.6; }
.seiran-consultation>summary small { display:block;margin-top:3px;font-size:12px;font-weight:400;color:#687985;line-height:1.6; }
.seiran-consultation .seiran-consultation-toggle { flex:0 0 24px;color:#967138;font-size:23px;line-height:1;text-align:center;transition:transform .15s ease; }
.seiran-consultation[open] .seiran-consultation-toggle { transform:rotate(45deg); }
.seiran-consultation .seiran-consultation-body { padding:0 18px 20px; }
.seiran-consultation .seiran-consultation-intro { padding:16px 0 0;margin:0 0 18px;border-top:1px solid #e4e8eb;color:#617180;font-size:13px;line-height:1.8; }
.seiran-consultation .seiran-consultation-fields { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 14px;min-width:0;padding:0;margin:0 0 18px;border:0; }
.seiran-consultation label { display:block;min-width:0;color:#294158;font-size:13px;line-height:1.7; }
.seiran-consultation label small { margin-left:5px;color:#74828e;font-size:11px;font-weight:400; }
.seiran-consultation :is(input,select,textarea) { display:block;width:100%;min-width:0;min-height:46px;margin-top:7px;border:1px solid #cdd5dc;border-radius:4px;padding:10px 11px;background:#fff;color:#183149;font:inherit;font-size:16px;line-height:1.6; }
.seiran-consultation :is(input,textarea)::placeholder { color:#7c8790;opacity:1; }
.seiran-consultation :is(input,select,textarea):focus { border-color:#967138; }
.seiran-consultation :is(.seiran-consultation-generate,.seiran-consultation-copy) { min-width:44px;min-height:46px;border:1px solid #183149;border-radius:4px;padding:11px 18px;background:#183149;color:#fff;font:inherit;font-size:13px;line-height:1.6;cursor:pointer; }
.seiran-consultation .seiran-consultation-generate:hover { background:#284862; }
.seiran-consultation .seiran-consultation-copy { border-color:#c6b28d;background:#f5f1e8;color:#654d27; }
.seiran-consultation .seiran-consultation-copy:hover { background:#eae0cc; }
.seiran-consultation .seiran-consultation-copy:disabled { opacity:.5;cursor:default; }
.seiran-consultation .seiran-consultation-output-label { margin-top:23px; }
.seiran-consultation .seiran-consultation-text { min-height:172px;max-width:100%;resize:vertical; }
.seiran-consultation .seiran-consultation-actions { display:flex;flex-wrap:wrap;gap:12px;margin-top:12px; }
.seiran-consultation .seiran-consultation-status { padding:0;margin:12px 0 0;min-height:22px;color:#665029;font-size:12px;line-height:1.75;overflow-wrap:anywhere; }
.seiran-consultation .seiran-consultation-status[data-state="error"] { color:#8d3a22; }
.seiran-consultation .seiran-consultation-note { padding:0;margin:10px 0 0;color:#697986;font-size:11px;line-height:1.85; }
.seiran-consultation .seiran-consultation-visually-hidden { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0; }
@media(max-width:600px) {
 .seiran-consultation .seiran-consultation-fields { grid-template-columns:minmax(0,1fr); }
 .seiran-consultation>summary { padding:15px; }
 .seiran-consultation .seiran-consultation-body { padding:0 15px 17px; }
 .seiran-consultation :is(.seiran-consultation-generate,.seiran-consultation-copy) { width:100%; }
 .seiran-consultation .seiran-consultation-actions { display:block; }
}
@media(prefers-reduced-motion:reduce) { .seiran-consultation .seiran-consultation-toggle { transition:none; } }
