:root{
  --teal:#1D5257; --teal-dark:#123D41; --teal-soft:#6E8C89;
  --gold:#9C7C46; --cream:#FCFBF8; --line:#E7E2D9;
  --ink:#101A19; --muted:#4E5A57; --faint:#8A8F87;
  --dark:#101A19; --dark-line:#2A3937; --dark-muted:#A8BEBC; --dark-soft:#C3D3D1;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
html,body{margin:0;padding:0;background:var(--cream);color:var(--ink);max-width:100%;overflow-x:hidden}
body{font-family:Archivo,"Helvetica Neue",Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}
h1,h2,h3{font-family:Fraunces,Georgia,"Times New Roman",serif;margin:0}
p{margin:0}
a{color:var(--teal);text-decoration:none}
a:hover{color:var(--teal-dark);text-decoration:underline}
img,svg{max-width:100%}
.wrap{max-width:1080px;margin:0 auto;padding:clamp(32px,9vw,56px) clamp(20px,6vw,40px) clamp(56px,12vw,96px)}
.wrap-narrow{max-width:760px;margin:0 auto;padding:clamp(32px,9vw,56px) clamp(20px,6vw,40px) clamp(56px,12vw,96px)}
.btn{display:inline-block;padding:15px 26px;font-size:15px;font-weight:500;border-radius:0;cursor:pointer;border:0;font-family:inherit}
.btn-primary{background:var(--teal);color:#fff;transition:background .2s ease}
.btn-primary:hover{background:var(--teal-dark);color:#fff;text-decoration:none}
.btn-outline{background:#fff;color:var(--ink);border:1px solid #CFC8BB;transition:border-color .2s ease,color .2s ease}
.btn-outline:hover{border-color:var(--teal);color:var(--teal);text-decoration:none}
.eyebrow{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--teal)}
@keyframes omRise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes omPanel{from{opacity:0;transform:scale(1.04)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
@media (max-width:600px){
  .btn{padding:14px 22px;font-size:14px}
}