:root{--bg-cream:#f9f7f4;--bg-cream-darker:#f2f0ed;--text-primary:#1a1a1a;--text-secondary:#555;--accent-color:#000;--transition-speed:.3s;--accent-black:#000;--white:#fff;--bg-lightblue:#efede8;--bg-lightblue-darker:#e5e0d8}.contact-page{background-color:var(--bg-cream)}.contact-hero-section{-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;width:100%;height:max(28rem,min(58vw,42rem));min-height:420px;display:-ms-flexbox;display:flex;position:relative;overflow:hidden}.hero-image{-o-object-fit:cover;object-fit:cover;-o-object-position:center 42%;object-position:center 42%;z-index:1;filter:grayscale()}.hero-overlay{z-index:2;background:linear-gradient(90deg,rgba(0,0,0,.58),rgba(0,0,0,.18) 54%,rgba(0,0,0,.36)),linear-gradient(rgba(0,0,0,.1),rgba(0,0,0,.34));width:100%;height:100%;position:absolute;top:0;left:0}.contact-title-container{z-index:3;text-align:left;width:min(100% - 2rem,54rem);position:relative}.contact-title{font-family:var(--font-serif), Georgia, serif;color:var(--white);text-shadow:0 2px 10px rgba(0,0,0,.3);text-transform:uppercase;font-size:max(3rem,min(9vw,7rem));font-weight:300;line-height:.95}.contact-hero-copy{color:rgba(255,255,255,.82);max-width:36rem;margin-top:1.5rem;font-size:max(1rem,min(1.8vw,1.25rem));font-weight:300;line-height:1.65}.content-section{background-color:var(--bg-cream);z-index:4;border-radius:0;margin-top:0;padding:max(4rem,min(8vw,8rem)) max(1rem,min(4vw,4rem));position:relative}.contact-content-section{background-color:var(--bg-cream);padding:max(4rem,min(8vw,8rem)) max(1rem,min(4vw,4rem))}.contact-content-grid{grid-template-columns:minmax(18rem,.78fr) minmax(0,1.22fr);-ms-flex-align:start;align-items:start;gap:max(2.5rem,min(6vw,6rem));width:min(100%,78rem);margin-left:auto;margin-right:auto;display:grid}.contact-copy-panel{position:-webkit-sticky;position:sticky;top:7rem}.contact-copy-panel h2{max-width:12ch;color:var(--text-primary);font-family:var(--font-serif), Georgia, serif;letter-spacing:0;text-transform:uppercase;margin:0;font-size:max(2.2rem,min(4.8vw,4.25rem));font-weight:300;line-height:.98}.contact-copy-panel>p:not(.mm-kicker){max-width:32rem;color:var(--text-secondary);margin:1.7rem 0 0;font-size:max(1rem,min(1.55vw,1.18rem));font-weight:300;line-height:1.75}.contact-channel-list{border-top:1px solid rgba(0,0,0,.16);margin-top:max(2rem,min(4vw,3.5rem))}.contact-channel{color:var(--text-primary);border-bottom:1px solid rgba(0,0,0,.16);gap:.45rem;padding:1.25rem 0;text-decoration:none;display:grid}.contact-channel-label{color:var(--text-secondary);letter-spacing:.1em;text-transform:uppercase;font-size:.72rem;font-weight:800}.contact-channel-email{letter-spacing:0;white-space:nowrap;word-break:normal;overflow-wrap:normal;text-transform:none;font-size:max(1rem,min(1.45vw,1.18rem));font-weight:700;line-height:1.25;transition:color .25s}.contact-channel-note{color:var(--text-secondary);font-size:.88rem;line-height:1.5}.contact-channel:hover .contact-channel-email{color:#000;text-underline-offset:.25rem;text-decoration:underline}.contact-channel:focus-visible .contact-channel-email{color:#000;text-underline-offset:.25rem;text-decoration:underline}.contact-apply-link{color:var(--text-primary);letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid;margin-top:1.6rem;padding-bottom:.35rem;font-size:.78rem;font-weight:800;text-decoration:none;transition:opacity .25s,transform .25s;display:-ms-inline-flexbox;display:inline-flex}.contact-apply-link:hover{opacity:.7;transform:translateY(-1px)}.contact-apply-link:focus-visible{opacity:.7;transform:translateY(-1px)}.intro-text{color:var(--text-primary);text-align:center;max-width:800px;margin-bottom:3rem;margin-left:auto;margin-right:auto;font-size:1.5rem;font-weight:300;line-height:1.4}.contact-container{grid-template-columns:1fr 1fr;gap:3rem;margin-top:3rem;display:grid}.contact-info{background-color:var(--bg-cream-darker);-webkit-transition:-webkit-transform var(--transition-speed);transition:-webkit-transform var(--transition-speed);transition:transform var(--transition-speed);transition:transform var(--transition-speed), -webkit-transform var(--transition-speed);border-radius:5px;padding:3rem;position:relative}.contact-info:hover{transform:translateY(-5px);box-shadow:0 10px 20px rgba(0,0,0,.05)}.contact-info-title{letter-spacing:.1em;margin-bottom:2rem;font-size:1.5rem;font-weight:400;display:inline-block;position:relative}.contact-info-title:after{content:"";background-color:var(--accent-color);width:50px;height:2px;position:absolute;bottom:-10px;left:0}.contact-details{margin-top:2rem}.contact-detail-item{margin-bottom:1.5rem}.contact-detail-label{color:var(--text-primary);margin-bottom:.5rem;font-weight:500;display:block}.contact-detail-value{color:var(--text-secondary);font-size:1.1rem}.form-container{max-width:800px;margin:0 auto}.contact-form-container{background-color:var(--bg-lightblue);-webkit-box-shadow:none;box-shadow:none;border:1px solid rgba(0,0,0,.1);border-radius:0;padding:max(1.5rem,min(4.5vw,3.6rem))}.form-title{letter-spacing:.1em;margin-bottom:2rem;font-size:1.5rem;font-weight:400;display:inline-block;position:relative}.form-title:after{content:"";background-color:var(--accent-color);width:50px;height:2px;position:absolute;bottom:-10px;left:0}.form-group{margin-bottom:1.5rem}.form-label{color:var(--text-primary);margin-bottom:.5rem;font-weight:500;display:block}.form-input,.form-textarea{background-color:var(--white);width:100%;-webkit-transition:all var(--transition-speed);transition:all var(--transition-speed);border:1px solid rgba(0,0,0,.14);border-radius:0;padding:.9rem 1rem;font-size:1rem}.form-input:focus,.form-textarea:focus{border-color:var(--accent-color);outline:none;box-shadow:0 0 0 3px rgba(0,0,0,.05)}.form-textarea{resize:vertical;min-height:150px}.honeypot-field{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.submit-button{background-color:var(--text-primary);color:var(--bg-cream);border:1px solid var(--text-primary);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;min-height:3.25rem;-webkit-transition:all var(--transition-speed);transition:all var(--transition-speed);width:100%;padding:.85rem 2rem;font-size:1rem;font-weight:500}.submit-button:hover{color:var(--text-primary);background-color:transparent;transform:translateY(-2px)}.submit-button:disabled{opacity:.7;cursor:not-allowed}.privacy-checkbox{-ms-flex-align:start;align-items:flex-start;margin-bottom:2rem;display:-ms-flexbox;display:flex}.form-checkbox{background-color:var(--white);-webkit-appearance:none;-ms-appearance:none;appearance:none;cursor:pointer;min-width:1.25rem;height:1.25rem;-webkit-transition:all var(--transition-speed);transition:all var(--transition-speed);border:1px solid rgba(0,0,0,.3);border-radius:3px;margin-top:.25rem;margin-right:.75rem;position:relative}.form-checkbox:checked{background-color:var(--text-primary);border-color:var(--text-primary)}.form-checkbox:checked:after{content:"✓";color:#fff;font-size:.8rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.form-checkbox:focus{outline:none;box-shadow:0 0 0 3px rgba(0,0,0,.1)}.checkbox-label{color:var(--text-secondary);font-size:.9rem;line-height:1.5}.privacy-link{color:var(--accent-color);-webkit-transition:color var(--transition-speed);transition:color var(--transition-speed);text-decoration:underline}.privacy-link:hover{color:var(--text-primary)}.success-message{color:#2c662d;background-color:#e6f7e6;border-radius:3px;margin-bottom:1.5rem;padding:1rem}.error-message{color:#c62828;background-color:#ffebee;border-radius:3px;margin-bottom:1.5rem;padding:1rem}@media (max-width:992px){.contact-title{font-size:3rem}.intro-text{font-size:1.3rem}}@media (max-width:768px){.contact-container,.contact-content-grid{grid-template-columns:1fr}.contact-copy-panel{position:static}.contact-title{font-size:2.5rem}.content-section,.contact-content-section{padding:4rem 1.5rem}.contact-info,.contact-form-container{padding:2rem}}@media (max-width:480px){.contact-hero-section{height:45vh;min-height:300px}.contact-title{font-size:2rem}.intro-text{font-size:1.1rem}.content-section,.contact-content-section{padding:3rem 1rem}.contact-copy-panel h2{max-width:12ch;font-size:max(2rem,min(10vw,2.9rem))}.contact-info-title,.form-title{font-size:1.3rem}}
