/* Contact/cancellation preview only. No transaction or state logic. */
body.site-quiet:is(.quiet-contact,.quiet-cancel) {
  --form-width:1120px;
  --form-gutter:32px;
  --form-rule:#d7d5ca;
  --form-green:#344c3f;
}
/* These forms stay visible and stationary, including newly shown result states. */
body.site-quiet:is(.quiet-contact,.quiet-cancel) main .reveal {
  opacity:1; transform:none; transition:none; animation:none;
}
body.site-quiet:is(.quiet-contact,.quiet-cancel) .site-head .lang {
  color:var(--sumi); border-color:var(--form-rule);
}
body.site-quiet:is(.quiet-contact,.quiet-cancel) .site-head .lang a.active {
  background:#e9e6dd; color:var(--sumi)!important;
}
body.site-quiet:is(.quiet-contact,.quiet-cancel) main > .breadcrumb {
  max-width:var(--form-width); margin:0 auto; padding:24px var(--form-gutter) 0;
  font-size:.8125rem; line-height:1.8;
}
body.site-quiet:is(.quiet-contact,.quiet-cancel) main > .form-section { padding-block:36px 80px; }
body.site-quiet:is(.quiet-contact,.quiet-cancel) .form-page {
  width:100%; max-width:var(--form-width); padding-inline:var(--form-gutter); margin-inline:auto;
}
body.site-quiet:is(.quiet-contact,.quiet-cancel) .form-page-head { margin-bottom:44px; }
body.site-quiet:is(.quiet-contact,.quiet-cancel) h1.s-title {
  margin:0 0 12px!important; font-size:2rem!important; font-weight:400; letter-spacing:0; line-height:1.6;
}
body.site-quiet:is(.quiet-contact,.quiet-cancel) .cf-intro {
  max-width:none; margin:0; font-size:.875rem; line-height:1.9;
}
body.site-quiet:is(.quiet-contact,.quiet-cancel) .form-layout {
  display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:48px; align-items:start;
}
body.site-quiet:is(.quiet-contact,.quiet-cancel) :is(.form-guide,.form-workflow) {
  min-width:0; border-top:1px solid var(--form-rule); padding-top:24px;
}
body.site-quiet:is(.quiet-contact,.quiet-cancel) .form-icon {
  display:inline-block; width:28px; height:28px; flex:0 0 auto;
  color:var(--form-green); vertical-align:middle; pointer-events:none;
}
body.site-quiet:is(.quiet-contact,.quiet-cancel) .form-route {
  display:grid; grid-template-columns:28px minmax(0,1fr); align-items:start; column-gap:16px;
  padding:24px 0; border-bottom:1px solid var(--form-rule);
  font-family:var(--sans); font-size:1rem; font-weight:500; color:var(--sumi); line-height:1.8;
  text-decoration:none;
}
body.site-quiet:is(.quiet-contact,.quiet-cancel) .form-route:first-child { padding-top:0; }
body.site-quiet:is(.quiet-contact,.quiet-cancel) .form-route small {
  display:block; margin-top:8px; color:var(--sumi-light); font-size:.8125rem; font-weight:400; line-height:1.9;
}
body.site-quiet:is(.quiet-contact,.quiet-cancel) .form-route:hover > span { text-decoration:underline; text-underline-offset:4px; }
body.site-quiet:is(.quiet-contact,.quiet-cancel) .form-route:focus-visible {
  outline:2px solid var(--form-green); outline-offset:5px;
}
body.site-quiet:is(.quiet-contact,.quiet-cancel) .cf { width:100%; max-width:none; gap:24px; }
body.site-quiet:is(.quiet-contact,.quiet-cancel) .cf-row { gap:8px; }
body.site-quiet:is(.quiet-contact,.quiet-cancel) .cf-label { font-size:.875rem; font-weight:500; }
body.site-quiet:is(.quiet-contact,.quiet-cancel) .cf-input { min-height:48px; padding:12px; border-radius:0; }
body.site-quiet:is(.quiet-contact,.quiet-cancel) .cf-textarea { min-height:200px; }
body.site-quiet:is(.quiet-contact,.quiet-cancel) .form-panel-head {
  display:flex; align-items:flex-start; gap:12px; color:var(--sumi-light); font-family:var(--sans);
  font-size:.875rem; line-height:1.9; margin-bottom:4px;
}
body.site-quiet:is(.quiet-contact,.quiet-cancel) .form-panel-head p { margin:0; }
body.site-quiet:is(.quiet-contact,.quiet-cancel) .form-panel-title {
  display:flex; align-items:center; gap:12px; font-family:var(--sans); font-size:1rem!important;
  font-weight:500; line-height:1.7; letter-spacing:0; margin:0 0 4px!important;
}
/* Keep live regions available to assistive technology, including before an error. */
body.site-quiet:is(.quiet-contact,.quiet-cancel) .cf-msg:empty { min-height:0; }
body.site-quiet:is(.quiet-contact,.quiet-cancel) .cf > .cf-msg:empty { margin-block:-12px; }
body.site-quiet:is(.quiet-contact,.quiet-cancel) .cf-msg { font-size:.875rem; overflow-wrap:anywhere; }
body.site-quiet:is(.quiet-contact,.quiet-cancel) .cf-submit {
  min-height:50px; min-width:200px; padding:13px 24px; border-radius:2px;
  background:var(--form-green); border-color:var(--form-green); color:#fff;
}
body.site-quiet:is(.quiet-contact,.quiet-cancel) .cf-submit:disabled { opacity:.45; cursor:not-allowed; }
body.site-quiet:is(.quiet-contact,.quiet-cancel) .cf-success { padding:0; border:0; }
body.site-quiet:is(.quiet-contact,.quiet-cancel) .form-result-icon {
  display:flex; align-items:center; justify-content:center;
  width:56px; height:56px; margin-bottom:24px; border:1px solid var(--form-green); border-radius:50%;
}
body.site-quiet:is(.quiet-contact,.quiet-cancel) .form-result-icon .form-icon { width:32px; height:32px; }
body.site-quiet:is(.quiet-contact,.quiet-cancel) .cf-success__t { font-size:1.25rem; line-height:1.8; }
body.site-quiet:is(.quiet-contact,.quiet-cancel) .cf-success p { font-size:.875rem; }
/* Native hidden state must win over the form's existing display:flex. */
body.site-quiet:is(.quiet-contact,.quiet-cancel) main [hidden] { display:none!important; }
body.site-quiet.quiet-cancel .cx-policy { margin:0 0 32px; padding:0; }
body.site-quiet.quiet-cancel .cx-policy__t { display:flex; align-items:center; gap:12px; margin:0 0 20px; }
body.site-quiet.quiet-cancel .cx-policy :is(th,td) { font-size:.875rem; padding:14px 0; }
body.site-quiet.quiet-cancel .cx-policy th { padding-right:16px; }
body.site-quiet.quiet-cancel .cx-policy__note { margin-top:18px; line-height:1.9; }
body.site-quiet.quiet-cancel .form-guide-block {
  display:grid; grid-template-columns:28px minmax(0,1fr); column-gap:16px;
  padding:24px 0; margin:0; border:0; border-top:1px solid var(--form-rule);
  background:transparent; color:var(--sumi-light); font-family:var(--sans); font-size:.8125rem; line-height:1.9;
}
body.site-quiet.quiet-cancel .form-guide-block p { margin:0; }
body.site-quiet.quiet-cancel .form-guide-block a { color:var(--form-green); text-underline-offset:3px; }
body.site-quiet.quiet-cancel .cx-detail { padding:24px 0; border-top:0; border-bottom:1px solid var(--form-rule); }
body.site-quiet.quiet-cancel .cx-detail dl { grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:16px 24px; font-size:.875rem; }
body.site-quiet.quiet-cancel .cx-detail dt { white-space:normal; }
body.site-quiet.quiet-cancel .cx-fee { padding:20px; margin-top:28px; }
body.site-quiet.quiet-cancel .cx-fee__t { display:flex; align-items:center; gap:10px; margin-bottom:12px; font-weight:500; }
body.site-quiet.quiet-cancel .cx-fee__amount { font-size:1.5rem; }
body.site-quiet.quiet-cancel .cx-fee--charged .form-icon { color:var(--akane); }
body.site-quiet.quiet-cancel .cx-agree { margin:28px 0 20px; font-size:.875rem; }
body.site-quiet.quiet-cancel .cx-actions { margin-top:24px; gap:16px; }
body.site-quiet.quiet-cancel .cx-actions .btn { min-height:50px; padding:13px 24px; border-radius:2px; }
@media(max-width:1000px) {
  body.site-quiet:is(.quiet-contact,.quiet-cancel) { --form-width:760px; --form-gutter:28px; }
  body.site-quiet:is(.quiet-contact,.quiet-cancel) .form-layout { grid-template-columns:minmax(0,1fr); gap:40px; }
}
@media(max-width:600px) {
  body.site-quiet:is(.quiet-contact,.quiet-cancel) { --form-gutter:20px; }
  body.site-quiet:is(.quiet-contact,.quiet-cancel) main > .breadcrumb { padding-top:20px; font-size:.75rem; }
  body.site-quiet:is(.quiet-contact,.quiet-cancel) main > .form-section { padding-block:28px 56px; }
  body.site-quiet:is(.quiet-contact,.quiet-cancel) h1.s-title { font-size:1.75rem!important; }
  body.site-quiet:is(.quiet-contact,.quiet-cancel) .form-page-head { margin-bottom:32px; }
  body.site-quiet:is(.quiet-contact,.quiet-cancel) .form-route { padding-block:20px; gap:12px; }
  body.site-quiet.quiet-cancel .cx-policy :is(th,td) { font-size:.8125rem; }
  body.site-quiet.quiet-cancel .cx-detail dl { gap:14px 16px; }
  body.site-quiet.quiet-cancel .cx-actions { display:grid; grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr); gap:12px; }
  body.site-quiet.quiet-cancel .cx-actions .btn { padding-inline:12px; font-size:.875rem; }
}

/* Match the Japanese navigation without importing unrelated page styles. */
body.site-quiet:is(.quiet-contact,.quiet-cancel) .site-head { backdrop-filter:none; }
body.site-quiet:is(.quiet-contact,.quiet-cancel) .site-head .brand { font-weight:500; line-height:1.22; }
body.site-quiet:is(.quiet-contact,.quiet-cancel) .site-head .brand small { margin-top:3px; opacity:1; }
body.site-quiet:is(.quiet-contact,.quiet-cancel) .site-head .nav { gap:22px; }
body.site-quiet:is(.quiet-contact,.quiet-cancel) .site-head .nav a { font-size:.875rem; opacity:1; }
body.site-quiet:is(.quiet-contact,.quiet-cancel) .site-head .nav :is(.sns,.divider,.globe) { display:none; }
body.site-quiet:is(.quiet-contact,.quiet-cancel) .site-head .lang {
  border:0; border-left:1px solid var(--line); border-radius:0; padding:0 0 0 12px;
}
body.site-quiet:is(.quiet-contact,.quiet-cancel) .site-head .lang a {
  display:flex; align-items:center; min-height:40px; padding:9px 8px; border-radius:6px;
}
body.site-quiet:is(.quiet-contact,.quiet-cancel) .site-head .lang a.active { background:#e9e5dc; }
body.site-quiet:is(.quiet-contact,.quiet-cancel) .site-head .nav a.btn-book {
  min-height:50px; padding:12px 20px; color:#fff!important; line-height:1.6;
}
body.site-quiet:is(.quiet-contact,.quiet-cancel) .nav-toggle { min-width:44px; min-height:44px; }
body.site-quiet:is(.quiet-contact,.quiet-cancel) .btn {
  font-weight:500; box-shadow:none; transition:background .18s,color .18s;
}
body.site-quiet:is(.quiet-contact,.quiet-cancel) .btn:is(:hover,:active) { transform:none; box-shadow:none; }
body.site-quiet:is(.quiet-contact,.quiet-cancel) .bookmark-cta {
  top:auto; right:24px; bottom:24px; writing-mode:horizontal-tb; clip-path:none;
  padding:14px 24px; font-family:var(--sans); letter-spacing:.02em;
}
@media(max-width:1200px) {
  body.site-quiet:is(.quiet-contact,.quiet-cancel) .site-head .nav { gap:14px; }
}
@media(max-width:1100px) {
  body.site-quiet:is(.quiet-contact,.quiet-cancel) .nav-toggle { display:block; z-index:101; }
  body.site-quiet:is(.quiet-contact,.quiet-cancel) .site-head .nav {
    position:fixed; top:0; right:0; height:100dvh; width:min(88%,380px); max-width:380px;
    background:var(--kinari); flex-direction:column; align-items:stretch; justify-content:flex-start;
    gap:8px; padding:calc(96px + var(--preview-notice-height,0px)) 28px 110px;
    transform:translateX(100%); transition:transform .2s; box-shadow:none; overflow-y:auto; visibility:hidden;
  }
  body.site-quiet:is(.quiet-contact,.quiet-cancel) .site-head .nav.open {
    transform:translateX(0); visibility:visible; border-left:1px solid var(--line);
  }
  body.site-quiet:is(.quiet-contact,.quiet-cancel) .site-head .nav a {
    font-size:1rem; min-height:44px; display:flex; align-items:center;
  }
  body.site-quiet:is(.quiet-contact,.quiet-cancel) .site-head .nav .lang {
    padding:12px 0; border-left:0; border-top:1px solid var(--line);
  }
  body.site-quiet:is(.quiet-contact,.quiet-cancel) .site-head .nav .lang a { font-size:.9375rem; display:inline-flex; }
  body.site-quiet:is(.quiet-contact,.quiet-cancel) .site-head .nav .btn-book { margin-top:12px; justify-content:center; }
  body.site-quiet:is(.quiet-contact,.quiet-cancel) .book-bar { display:flex; }
  body.site-quiet:is(.quiet-contact,.quiet-cancel) .bookmark-cta { display:none; }
}
