.k2-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.k2-card{background:#F7F2EE;padding:28px 26px;display:flex;flex-direction:column;gap:12px;font-size:15px;line-height:1.6}
.k2-card b{font-size:20px;font-weight:800;line-height:1.25}
.k2-card a{font-weight:700}
.k2-card .km-ico{width:40px;height:40px}
.k2-card ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}
.k2-card li a{display:inline-flex;align-items:center;gap:10px;padding:8px 0;min-height:44px;box-sizing:border-box}
.k2-card li .km-ico{width:28px;height:28px}
.k2-post{background:#F7F2EE;padding:16px}
.k2-pc{background:#FFFFFF;display:grid;grid-template-columns:minmax(0,7fr) 1px minmax(0,5fr);gap:0 40px;padding:40px}
.k2-rule{background:#E2D5CC}
.k2-col{display:flex;flex-direction:column;gap:18px;min-width:0}
.k2-f{display:flex;flex-direction:column;gap:6px}
.k2-f label{font-size:15px;font-weight:700}
.k2-f input,.k2-f select,.k2-f textarea{font:17px Montserrat,Arial,sans-serif;color:#684C41;background:transparent;border:0;border-bottom:2px solid #684C41;border-radius:0;padding:12px 0}
.k2-f textarea{min-height:236px;resize:vertical;line-height:32px;padding-top:0;background-image:repeating-linear-gradient(180deg,transparent 0 31px,#E2D5CC 31px 32px);background-attachment:local;border-bottom-color:#E2D5CC}
.k2-f select{-webkit-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,#684C41 50%),linear-gradient(135deg,#684C41 50%,transparent 50%);background-position:calc(100% - 14px) 50%,calc(100% - 9px) 50%;background-size:5px 5px;background-repeat:no-repeat;padding-right:28px;cursor:pointer}
.k2-f [aria-invalid="true"]{border-bottom-color:var(--ink-strong) !important;border-bottom-width:3px !important}
.k2-err{font-size:15px;font-weight:600;line-height:1.45;color:var(--ink-strong)}
.k2-ok{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.k2-ok:focus{outline:none}
.k2-ok b{font-size:24px;line-height:1.25}
.k2-check{display:flex;align-items:flex-start;gap:12px;font-size:15px;line-height:1.5;cursor:pointer}
.k2-check input{width:22px;height:22px;margin:0;flex:0 0 auto;accent-color:#684C41}
.k2-send{align-self:flex-start;background:#684C41;color:#FFFFFF;border:0;padding:16px 28px;font:700 15px Montserrat,Arial,sans-serif;cursor:pointer}
.k2-post .km-post{align-self:flex-end}
.k2-faq{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:40px 80px;align-items:start}
.k2-groups{display:flex;flex-direction:column;gap:40px}
.k2-groups h3{margin:0 0 8px;font-size:var(--fs-h3);font-weight:700;line-height:1.25;color:var(--ink-strong)}
.k2-q{background:var(--table);margin:0 0 4px}
.k2-q summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px;box-sizing:border-box;padding:16px clamp(16px,2vw,24px);font-size:17px;font-weight:700;line-height:1.4;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:color 150ms ease,background-color 150ms ease}
.k2-q summary::-webkit-details-marker{display:none}
.k2-q summary::after{content:"";flex:0 0 auto;width:16px;height:16px;background:linear-gradient(currentColor,currentColor) center/16px 2.5px no-repeat,linear-gradient(currentColor,currentColor) center/2.5px 16px no-repeat;transition:transform 220ms var(--km-ease-out)}
.k2-q[open] summary::after{transform:rotate(45deg)}
.k2-q p{margin:0;padding:0 clamp(16px,2vw,24px) 24px;font-size:17px;line-height:1.65;max-width:66ch}
@media (prefers-reduced-motion: no-preference){.k2-q[open] p{animation:kmFadeUp 320ms var(--km-ease-out) both}}
@media (max-width: 1100px){.k2-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width: 1000px){.k2-pc{grid-template-columns:minmax(0,1fr);gap:28px 0}.k2-rule{display:none}.k2-faq{grid-template-columns:minmax(0,1fr)}}
@media (max-width: 600px){.k2-cards{grid-template-columns:minmax(0,1fr)}.k2-pc{padding:24px 20px}.k2-post{padding:10px}.k2-q summary{font-size:17px}}
@media (prefers-reduced-motion: reduce){.k2-q summary::after{transition:none}}
@media (max-width: 1000px){.k2-faq>div:first-child{position:static !important}}
.k2-card [data-km-live]:empty{display:none}
.k2-rend{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width: 600px){.k2-rend{grid-template-columns:minmax(0,1fr)}}
.k2-tema{margin:0;padding:0;border:0;min-width:0}
.k2-tema legend{padding:0;font-size:15px;font-weight:700}
.k2-tema .km-chips{margin-top:10px}
.k2-tema-o{position:relative;display:inline-flex}
.k2-tema-o input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;pointer-events:none}
.k2-tema-o input:checked+.km-chip{background:#684C41;border-color:#684C41;color:#FFFFFF}
.k2-tema-o input:focus-visible+.km-chip{outline:2px solid #684C41;outline-offset:4px}
@media (forced-colors: active){.k2-tema-o input:checked+.km-chip{forced-color-adjust:none;background:Highlight;border-color:Highlight;color:HighlightText}}
@media (forced-colors: active){.k2-tema-o input:focus-visible+.km-chip{outline-color:Highlight}}
.k2-f select{background-color:#FFFFFF}
.k2-f select option{color:#684C41;background-color:#FFFFFF}
.k2-f textarea{border-bottom-color:#684C41}
@media (forced-colors: active){.k2-q summary::after{forced-color-adjust:none;background:linear-gradient(CanvasText,CanvasText) center/14px 2px no-repeat,linear-gradient(CanvasText,CanvasText) center/2px 14px no-repeat} .k2-f select{appearance:auto;background-image:none} .k2-send{border:2px solid ButtonText}}
.k2-card{font-size:.9375rem}
.k2-q p{font-size:1.0625rem}
.k2-f label{font-size:.9375rem}
.k2-check{font-size:.9375rem}
@layer page {
  .kc-addr__in { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 22rem); gap: var(--s-6) var(--gutter); align-items: end; }
  .kc-addr__l { display: flex; flex-direction: column; gap: var(--s-4); min-width: 0; }
  .kc-tel { margin: 0; padding-bottom: var(--s-3); border-bottom: var(--bw-hair) solid var(--line); }
  .kc-tel__a { display: inline-block; font-size: min(var(--fs-hour), 6vw); font-weight: var(--fw-thin); line-height: var(--lh-hour); letter-spacing: var(--tr-hour); color: var(--ink-strong);
    text-decoration: none; white-space: nowrap; }
  @media (hover: hover) and (pointer: fine) { .kc-tel__a:hover { text-decoration: underline; text-decoration-thickness: .04em; text-underline-offset: .12em; } }
  .kc-say { margin: 0; font-size: var(--fs-lead); font-weight: var(--fw-bold); line-height: var(--lh-snug); }
  .kc-say .km-link { font-size: inherit; }
  .kc-mail { margin: 0; }
  .kc-mail .km-link { display: inline-flex; align-items: center; gap: var(--ic-gap); font-size: var(--fs-body); overflow-wrap: anywhere; min-width: 0; max-width: 100%; }
  .kc-addr__r { display: flex; flex-direction: column; align-items: flex-start; gap: var(--s-2); }
  .kc-addr__p { margin: 0; font-size: var(--fs-h3); font-weight: var(--fw-bold); line-height: var(--lh-snug); color: var(--ink-strong); }
  @media (max-width: 900px) { .kc-addr__in { grid-template-columns: minmax(0, 1fr); } }
  @media (max-width: 600px) { .kc-tel__a { font-size: clamp(1.75rem, 10.4vw, 3.5rem); font-weight: var(--fw-light); white-space: normal; } }
  .kc-here { display: grid; grid-template-columns: minmax(0, 8fr) minmax(0, 4fr); gap: var(--s-7) var(--gutter); align-items: start; }
  .kc-here__pair { position: relative; padding-bottom: var(--s-9); }
  .kc-here__ph { margin: 0 0 0 calc(-1 * var(--margin)); aspect-ratio: 3 / 2; width: calc(80% + var(--margin)); }
  .kc-here__ph img { width: 100%; height: 100%; object-fit: cover; display: block; }
  .kc-map { position: absolute; right: 0; bottom: 0; width: min(380px, 52%); padding: var(--s-5); background: var(--paper); }
  .kc-map p { font-size: var(--fs-h3) !important; text-transform: none !important; }
  .kc-here__txt { display: flex; flex-direction: column; align-items: flex-start; gap: var(--s-3); }
  .kc-here__txt a { overflow-wrap: anywhere; }
  .kc-h3 { margin: 0; font-size: var(--fs-h3); font-weight: var(--fw-bold); line-height: var(--lh-snug); color: var(--ink-strong); }
  .kc-here__txt p { margin: 0; }
  .kc-contact { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--s-6) var(--gutter); padding-top: var(--s-6); border-top: var(--bw-hair) solid var(--line); }
  .kc-contact__col { display: flex; flex-direction: column; align-items: flex-start; gap: var(--s-3); }
  .kc-contact__col p { margin: 0; }
  .kc-note { margin-top: calc(-1 * var(--s-2)); font-size: var(--fs-label); line-height: 1.5; color: var(--ink-muted); }
  .kc-social { display: inline-flex; align-items: center; gap: var(--ic-gap); }
  @media (max-width: 900px) {
    .kc-here { grid-template-columns: minmax(0, 1fr); }
    .kc-contact { grid-template-columns: minmax(0, 1fr); }
  }
  @media (max-width: 600px) {
    .kc-here__pair { padding-bottom: 0; }
    .kc-here__ph { width: calc(100% + 2 * var(--margin)); margin-right: calc(-1 * var(--margin)); }
    .kc-map { position: relative; width: auto; margin: calc(-1 * var(--s-7)) 0 0 var(--s-5); }
  }
}
