/* Contact layout translated from Lovable, scoped to this template. */
.swm-contact-page{background:var(--paper);color:var(--foreground)}
.swm-contact-page *, .swm-contact-page *:before, .swm-contact-page *:after{box-sizing:border-box}
.swm-contact-container{max-width:80rem;margin-inline:auto}
.swm-contact-hero,.swm-contact-body{padding:4rem 1.5rem}
.swm-contact-hero{background:var(--sand);text-align:center}
.swm-contact-eyebrow,.swm-contact-label{margin:0;font-family: iki-mono-variable, monospace;text-transform:uppercase;color:color-mix(in oklab,var(--ink) 60%,transparent)}
.swm-contact-eyebrow{font-size:.75rem}
.swm-contact-title{margin:1rem 0 0;font-family:brushberry-sans-one,sans-serif;font-size:3rem;line-height:1;text-transform:uppercase;color:var(--terracotta)}
.swm-contact-intro{max-width:42rem;margin:1.5rem auto 0;font-family: iki-mono-variable, monospace;font-size:.875rem;line-height:1.625}
.swm-contact-grid{display:grid;gap:3rem}
.swm-contact-left,.swm-contact-form-box{min-width:0}
.swm-contact-subtitle{margin:0;font-family:brushberry-sans-one,sans-serif;font-size:1.875rem;line-height:1.2;text-transform:uppercase;color:var(--green)}
.swm-contact-copy{margin-top:1.25rem;font-family: iki-mono-variable, monospace;font-size:.875rem;line-height:1.625}
.swm-contact-copy p{margin:0}.swm-contact-copy p+p{margin-top:1.25rem}
.swm-contact-email{margin-top:2rem;padding-top:1.5rem;border-top:1px solid color-mix(in oklab,var(--foreground) 30%,transparent)}
.swm-contact-label{font-size:10px}
.swm-contact-email a{display:inline-flex;align-items:center;gap:.25rem;margin-top:.25rem;font-family: iki-mono-variable, monospace;font-size:1.25rem;text-transform:uppercase;overflow-wrap:anywhere;word-break:break-word}
.swm-contact-email a:hover{opacity:.6}
.swm-contact-form-box{background:var(--sand);padding:1.5rem}
.swm-contact-form-box .swm-contact-subtitle{color:var(--ink)}
.swm-contact-form{margin-top:2rem}
.swm-contact-form .wpcf7 form{margin:0}
.swm-contact-form .swm-cf7-row{display:grid;gap:1.5rem}
.swm-contact-form .swm-cf7-field,.swm-contact-form .swm-cf7-submit{margin-top:1.5rem}
.swm-contact-form .swm-cf7-row .swm-cf7-field{margin-top:0}
.swm-contact-form label{display:block;font-family: iki-mono-variable, monospace;font-size:10px;text-transform:uppercase;color:color-mix(in oklab,var(--ink) 60%,transparent)}
.swm-contact-form label>br{display:none}
.swm-contact-form .wpcf7-form-control-wrap{display:block}
.swm-contact-form input[type=text],.swm-contact-form input[type=email],.swm-contact-form input[type=tel],.swm-contact-form textarea{display:block;width:100%;max-width:100%;margin-top:.5rem;padding:.5rem 0;border:0;border-bottom:1px solid color-mix(in oklab,var(--ink) 40%,transparent);border-radius:0;background:transparent;box-shadow:none;color:var(--ink);font-family: iki-mono-variable, monospace;font-size:.875rem;line-height:1.5;text-transform:none}
.swm-contact-form textarea{resize:vertical;min-height:7.5rem}
.swm-contact-form input::placeholder,.swm-contact-form textarea::placeholder{color:color-mix(in oklab,var(--ink) 40%,transparent);opacity:1}
.swm-contact-form input:focus,.swm-contact-form textarea:focus{border-bottom-color:var(--terracotta);outline:2px solid var(--terracotta);outline-offset:3px}
.swm-contact-form input[type=submit]{width:100%;padding:.5rem 0;border:0;border-bottom:1px solid currentColor;border-radius:0;background:transparent;color:var(--ink);font-family: iki-mono-variable, monospace;font-size:.75rem;line-height:1.5;text-transform:uppercase;cursor:pointer;min-height:2.5rem}
.swm-contact-form input[type=submit]:hover{opacity:.6}.swm-contact-form input[type=submit]:disabled{opacity:.5;cursor:wait}
.swm-contact-form p{margin:0}
.swm-contact-form .wpcf7-not-valid-tip{margin-top:.5rem;font-family: iki-mono-variable, monospace;font-size:.75rem;text-transform:none}
.swm-contact-form .wpcf7-response-output{margin:1.5rem 0 0;padding:.75rem;font-family: iki-mono-variable, monospace;font-size:.875rem}
.swm-contact-form .wpcf7-spinner{vertical-align:middle}
@media(min-width:640px){.swm-contact-form .swm-cf7-row{grid-template-columns:repeat(2,minmax(0,1fr))}.swm-contact-form input[type=submit]{width:auto}}
@media(min-width:768px){.swm-contact-hero,.swm-contact-body{padding:6rem 3rem}.swm-contact-title{font-size:4.5rem}.swm-contact-intro,.swm-contact-copy{font-size:1rem}.swm-contact-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:4rem}.swm-contact-one-column{grid-template-columns:1fr}.swm-contact-left{position:sticky;top:2rem;align-self:start}.swm-contact-subtitle{font-size:2.25rem}.swm-contact-form-box{padding:2.5rem}}
