/* CoreStruct Contact */
.csw-contact .deco.tr i:nth-child(1){background:var(--forest)}
.csw-contact .deco.tr i:nth-child(2){background:var(--mint)}
.csw-contact .deco.tr i:nth-child(3){background:var(--sage)}
.csw-contact .kt-cards{display:grid;grid-template-columns:repeat(var(--kt-cols,4),1fr);gap:20px;margin-bottom:clamp(48px,7vw,88px)}
.csw-contact .kc{position:relative;overflow:hidden;background:var(--mint);border-radius:var(--radius);padding:28px;display:flex;flex-direction:column;gap:8px;min-width:0;box-shadow:0 20px 40px -30px rgba(40,58,43,.5);transition:transform .35s,box-shadow .35s}
.csw-contact .kc:hover{transform:translateY(-4px);box-shadow:0 28px 48px -28px rgba(40,58,43,.6)}
.csw-contact .kc-ic{width:56px;height:56px;border-radius:50%;background:var(--forest);color:var(--gold);display:grid;place-items:center;margin-bottom:12px;font-style:normal;transition:background .3s,color .3s}
.csw-contact .kc:hover .kc-ic{background:var(--gold);color:var(--ink)}
.csw-contact .kc-ic svg{width:24px;height:24px}
.csw-contact .kc-k{display:block;margin:0;font:700 13px/1 var(--f-accent);letter-spacing:.14em;text-transform:uppercase;color:var(--sage)}
.csw-contact .kc-v{display:block;margin:0;font:400 19px/1.4 var(--f-head);color:var(--text);overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.csw-contact .kc-copy{margin:auto 0 0;padding:14px 0 0;min-height:0;align-self:flex-start;display:inline-flex;align-items:center;gap:8px;background:none;border:0;border-bottom:1px solid transparent;border-radius:0;box-shadow:none;font:600 14px/1 var(--f-nav);letter-spacing:normal;text-transform:none;color:var(--forest);cursor:pointer;text-decoration:none;transition:color .25s,border-color .25s}
.csw-contact .kc-copy svg{width:16px;height:16px}
.csw-contact .kc-copy:hover,.csw-contact .kc-copy:focus{background:none;color:var(--sage);border-color:var(--gold)}
.csw-contact .kc-copy:focus:not(:hover){border-color:transparent;color:var(--forest)}
.csw-contact .kc-copy.ok{color:var(--sage)}
.csw-contact .kc-px,.csw-contact .kt-px{position:absolute;right:0;bottom:0;width:84px;height:56px}
.csw-contact .kc-px i,.csw-contact .kt-px i{position:absolute;width:28px;height:28px}
.csw-contact .kc-px i:nth-child(1),.csw-contact .kt-px i:nth-child(1){bottom:0;right:0;background:var(--white)}
.csw-contact .kc-px i:nth-child(2),.csw-contact .kt-px i:nth-child(2){bottom:0;right:56px;background:var(--white)}
.csw-contact .kc-px i:nth-child(3),.csw-contact .kt-px i:nth-child(3){bottom:28px;right:28px;background:var(--gold)}
.csw-contact .kt-main{display:grid;grid-template-columns:var(--kt-main-cols,1fr 1.5fr);border-radius:var(--radius);overflow:hidden;box-shadow:0 24px 48px -30px rgba(40,58,43,.55)}
.csw-contact .kt-side{position:relative;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='254' viewBox='0 0 220 254'%3E%3Cg fill='none' stroke='%23ffffff' stroke-opacity='.08' stroke-width='1.2'%3E%3Cpath d='M110 0 220 63.5v127L110 254 0 190.5v-127z'/%3E%3Cpath d='M110 0v127M110 127 220 190.5M110 127 0 190.5'/%3E%3C/g%3E%3C/svg%3E") center/220px 254px,var(--forest);color:var(--white);padding:clamp(32px,5vw,64px);display:flex;flex-direction:column;gap:18px}
.csw-contact .kt-h{display:block;margin:0;font:700 var(--fs-h2)/1.15 var(--f-head);color:var(--white)}
.csw-contact .kt-side .kt-text{display:block;margin:0;color:var(--mint);font:400 18px/1.65 var(--f-head);max-width:32ch}
.csw-contact .kt-form{background:var(--white);padding:clamp(32px,5vw,64px);display:flex;flex-direction:column;gap:20px;min-width:0;margin:0}
.csw-contact .kf-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.csw-contact .kf{display:flex;flex-direction:column;gap:8px;min-width:0}
.csw-contact .kf label{font:700 16px/1.2 var(--f-accent);color:var(--text);margin:0;letter-spacing:normal;text-transform:none}
.csw-contact .kf input,.csw-contact .kf textarea{font:400 16px/1.4 var(--f-head);padding:15px 18px;margin:0;height:auto;max-width:100%;border:1.5px solid var(--muted);border-radius:var(--radius-btn);background:var(--mint);color:var(--text);width:100%;box-shadow:none;outline:0;transition:border-color .25s,background .25s}
.csw-contact .kf textarea{resize:vertical;min-height:160px}
.csw-contact .kf input:focus,.csw-contact .kf textarea:focus{outline:none;border-color:var(--sage);background:var(--white);color:var(--text);box-shadow:none}
.csw-contact .kt-form.tried :invalid{border-color:#B3261E}
/* <button> reset so it renders exactly like the source <a class="pill"> */
.csw-contact .kf-send{align-self:flex-start;text-decoration:none;padding:0;margin:0;border:0;border-radius:0;background:none;box-shadow:none;min-height:0;font:inherit;color:inherit;line-height:normal;cursor:pointer}
.csw-contact .kf-send:hover,.csw-contact .kf-send:focus{background:none;color:inherit;border:0}
@media (max-width:1000px){.csw-contact .kt-cards{grid-template-columns:1fr 1fr}}
@media (max-width:860px){.csw-contact .kt-main{grid-template-columns:1fr}}
@media (max-width:560px){.csw-contact .kt-cards,.csw-contact .kf-row{grid-template-columns:1fr}}
.csw-contact .kt-social{margin-top:auto;padding-top:24px}
.csw-contact .kt-social .ft2-h{display:flex;align-items:center;gap:0;font:700 0/1 var(--f-accent);letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin:0 0 12px}
.csw-contact .kt-social .ft2-h::before{content:"";width:40px;height:2px;background:currentColor}
.csw-contact .kt-social .social{display:flex;gap:12px;margin:0}
.csw-contact .kt-social .social a{width:44px;height:44px;border-radius:50%;border:1.5px solid rgba(255,255,255,.3);display:grid;place-items:center;transition:background .2s}
.csw-contact .kt-social .social a:hover{background:var(--sage)}
.csw-contact .kt-social .social svg{width:20px;height:20px;fill:var(--white)}
.csw-contact button.kc-copy{padding-bottom:1px}

.csw-contact .kc-link{color:inherit;text-decoration:none;background-image:linear-gradient(var(--gold),var(--gold));background-size:0 2px;background-position:0 100%;background-repeat:no-repeat;transition:background-size .3s,color .2s}
.csw-contact .kc-link:hover,.csw-contact .kc-link:focus-visible{color:var(--forest);background-size:100% 2px}
