/* Currents Within: shared styles (header, base type, forms) */
:root{
  --mist:#EEF0EB; --ink:#1E2B28; --moss:#4F6650; --moss-dark:#3A4D3C;
  --panel:#DDE3DB; --card:#F5F6F2; --rule:#C6CEC6; --soft:#46524F; --seal:#8A1C15; --seal-light:#D2584C;
  color-scheme:light;
}
*{box-sizing:border-box}
html{background:var(--mist);scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--mist);color:var(--ink)}
img{max-width:100%}
[hidden]{display:none!important}
a{color:var(--moss)}a:hover{color:var(--moss-dark)}
h1,h2,h3,blockquote{font-family:'EB Garamond',Georgia,serif}
summary{cursor:pointer}
section[id]{scroll-margin-top:96px}

/* Header: transparent over the hero photo, solid once you scroll */
.site-header{position:fixed;top:0;left:0;right:0;z-index:50;padding-top:env(safe-area-inset-top,0px);background:transparent;transition:background-color .35s ease,box-shadow .35s ease}
.site-header nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;padding:18px clamp(20px,6vw,96px);transition:padding .35s ease}
.site-header .brand{font-family:'Libre Baskerville',Georgia,serif;font-weight:700;font-size:1.6rem;letter-spacing:-.02em;line-height:1;text-decoration:none;color:#F6F4EE}
.site-header .brand .w{font-weight:400;color:#C9CFC7}
.site-header .brand .dot{color:var(--seal-light)}
.site-header .links{display:flex;flex-wrap:wrap;align-items:center;gap:6px 28px;font-family:'Figtree',system-ui,sans-serif;font-size:1rem;font-weight:500;letter-spacing:.02em}
.site-header .links a{color:#F6F4EE;text-decoration:none;padding:10px 0}
.site-header .links a:hover{text-decoration:underline;text-underline-offset:5px}
.site-header .links a.cta{color:var(--ink);background:#F6F4EE;padding:12px 20px;border-radius:6px}
.site-header .links a.cta:hover{text-decoration:none;background:#fff}
.site-header.is-solid{background:rgba(238,240,235,.95);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 1px 0 var(--rule)}
.site-header.is-solid nav{padding-top:12px;padding-bottom:12px}
.site-header.is-solid .brand{color:var(--ink)}
.site-header.is-solid .brand .w{color:#77716A}
.site-header.is-solid .brand .dot{color:var(--seal)}
.site-header.is-solid .links a{color:var(--ink)}
.site-header.is-solid .links a.cta{color:#F6F4EE;background:var(--ink)}
.site-header.is-solid .links a.cta:hover{background:#2C3D39}
.site-header .links a[aria-current="page"]{text-decoration:underline;text-underline-offset:5px}

/* Phones and tablets: logo + button on one row, links underneath */
@media (max-width:860px){
  .site-header nav{position:relative;gap:4px;padding-top:14px;padding-bottom:6px}
  .site-header .brand{font-size:1.4rem}
  .site-header .links{width:100%;gap:0 16px;font-size:.9rem}
  .site-header .links a{padding:8px 0}
  .site-header .links a.cta{position:absolute;top:9px;right:clamp(20px,6vw,96px);padding:9px 14px}
  .site-header.is-solid nav{padding-top:10px;padding-bottom:4px}
  .site-header.is-solid .links a.cta{top:6px}
  section[id]{scroll-margin-top:110px}
}

/* Forms */
.field{display:flex;flex-direction:column;gap:6px;font-family:'Figtree',system-ui,sans-serif;font-size:.95rem;font-weight:500}
.field .hint{font-weight:400;color:#5A6662}
input[type=text],input[type=email],input[type=tel],textarea{width:100%;font:inherit;font-weight:400;font-size:1rem;color:var(--ink);background:#fff;border:1px solid #B9C5B8;border-radius:8px;padding:13px 14px}
input:focus,textarea:focus{outline:2px solid var(--moss);outline-offset:1px;border-color:var(--moss)}
input[type=radio]{accent-color:var(--moss);width:18px;height:18px;margin:0}
button{font:inherit}

/* Phones: keep the hero copy clear of the person in the photo */
@media (max-width:640px){
  [data-hero="home"]{min-height:1020px!important}
  [data-hero="home"] > div:last-child{justify-content:flex-start!important;padding-top:130px!important;padding-bottom:40px!important}
}
@media (max-width:640px){.br-wide{display:none}}

/* The seal red from the logo dot: one accent per section, on the italic phrase */
main h2 em{color:var(--seal)}
[data-tone="dark"] h2 em{color:#F2A99E}
