*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{--htl-ink:#1a1a1a;--htl-gray:#6b6b6b;--htl-warm:#f7f5f2;--htl-teal:#2a9d8f;--htl-border:#d4d0c8}
.htl-body{font-family:'Figtree',sans-serif;background:var(--htl-warm);color:var(--htl-ink);line-height:1.75;font-size:1.05rem}
.htl-skip{position:absolute;left:-9999px;z-index:999;background:var(--htl-teal);color:#fff;padding:.5rem 1rem}
.htl-skip:focus{left:0}
.htl-column{max-width:620px;margin:0 auto;padding:4rem 1.5rem 3rem}
.htl-header{margin-bottom:3rem}
.htl-eyebrow{font-size:.8rem;text-transform:uppercase;letter-spacing:.2em;color:var(--htl-gray);margin-bottom:1rem}
.htl-name{font-family:'EB Garamond',serif;font-size:clamp(2.75rem,8vw,4.5rem);font-weight:400;line-height:1.05;letter-spacing:-.02em;margin-bottom:1.5rem}
.htl-rule{border:none;border-top:1px solid var(--htl-border);margin:1.5rem 0}
.htl-tagline{font-family:'EB Garamond',serif;font-size:1.25rem;font-style:italic;color:var(--htl-gray);font-weight:400}
.htl-section{margin-bottom:2.5rem;padding-bottom:2.5rem;border-bottom:1px solid var(--htl-border)}
.htl-section h2{font-family:'EB Garamond',serif;font-size:1.5rem;font-weight:600;margin-bottom:1rem;color:var(--htl-ink)}
.htl-section p{margin-bottom:1rem;color:var(--htl-gray)}
.htl-section p:last-child{margin-bottom:0}
.htl-list{list-style:none;padding:0}
.htl-list li{padding:.5rem 0;border-bottom:1px solid var(--htl-border);color:var(--htl-gray)}
.htl-list li:last-child{border-bottom:none}
.htl-contact-block{border-bottom:none;padding-bottom:0}
.htl-address{font-style:normal;line-height:1.9;color:var(--htl-gray);margin-bottom:0}
.htl-address a{color:var(--htl-teal);text-decoration:none}
.htl-address a:hover{text-decoration:underline}
.htl-form{margin-top:2rem;display:flex;flex-direction:column;gap:.85rem}
.htl-form label{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--htl-ink)}
.htl-form input,.htl-form textarea{padding:.75rem 0;border:none;border-bottom:1px solid var(--htl-border);background:transparent;font-family:inherit;font-size:1rem;color:var(--htl-ink);transition:border-color .2s}
.htl-form input:focus,.htl-form textarea:focus{outline:none;border-bottom-color:var(--htl-teal)}
.htl-form textarea{resize:vertical;min-height:100px}
.htl-consent{display:flex;gap:.65rem;font-weight:400;text-transform:none;letter-spacing:0;font-size:.9rem;color:var(--htl-gray);align-items:flex-start;line-height:1.5}
.htl-consent input{margin-top:.35rem;accent-color:var(--htl-teal)}
.htl-consent a{color:var(--htl-teal)}
.htl-form button{align-self:flex-start;margin-top:.5rem;padding:.75rem 2rem;background:transparent;border:1px solid var(--htl-ink);color:var(--htl-ink);font-family:'Figtree',sans-serif;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;cursor:pointer;transition:background .2s,color .2s}
.htl-form button:hover{background:var(--htl-ink);color:var(--htl-warm)}
.htl-status{min-height:1.5rem;font-size:.9rem;color:var(--htl-gray)}
.htl-status.ok{color:var(--htl-teal)}
.htl-status.err{color:#c0392b}
.htl-legal{border-bottom:none;padding-bottom:0;margin-bottom:1.5rem}
.htl-legal p{font-size:.95rem}
.htl-legal a{color:var(--htl-teal)}
.htl-footer{text-align:center;padding-top:2rem;border-top:1px solid var(--htl-border)}
.htl-footer p{font-size:.85rem;color:var(--htl-gray);margin-bottom:.75rem}
.htl-footer nav{display:flex;justify-content:center;gap:1.5rem}
.htl-footer a{color:var(--htl-gray);text-decoration:none;font-size:.85rem}
.htl-footer a:hover{color:var(--htl-teal)}
