@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:500 600;font-display:swap;src:url(/fonts/cormorant-garamond.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:'Inter';font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonts/inter.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--forest:#172E2D;--sage:#547A70;--ivory:#F7F5EF;--brass:#D6B980;--char:#242827;--white:#fff;--line:#E3DFD3;--sage-d:#40605A;--serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;--sans:Inter,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
body{margin:0;font:16px/1.65 var(--sans);color:var(--char);background:var(--white);-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}a{color:var(--sage-d)}a:hover{color:var(--forest)}
:focus-visible{outline:3px solid var(--brass);outline-offset:3px;border-radius:2px}
.skip{position:absolute;left:-999px;top:0;background:var(--brass);color:var(--forest);padding:.6rem 1rem;z-index:100}.skip:focus{left:1rem;top:1rem}
.wrap{max-width:1160px;margin:0 auto;padding:0 1.5rem}.narrow{max-width:760px}.center{text-align:center}
h1,h2,h3,.h3{font-family:var(--serif);font-weight:600;color:var(--forest);line-height:1.12;letter-spacing:-.01em;margin:0 0 .6em}
h1{font-size:clamp(2.4rem,5vw,3.9rem)}h2{font-size:clamp(1.9rem,3.4vw,2.6rem)}h3,.h3{font-size:1.45rem}
p{margin:0 0 1em}.lede{font-size:1.15rem;max-width:40em}
.eyebrow{font:600 .75rem/1.2 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--sage-d);margin-bottom:1rem;display:flex;align-items:center;gap:.6rem}
.eyebrow::before{content:"";width:28px;height:1px;background:var(--brass)}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.8rem 1.5rem;font:600 .95rem/1 var(--sans);letter-spacing:.02em;text-decoration:none;border-radius:2px;border:1px solid transparent;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.btn-brass{background:var(--brass);color:var(--forest)}.btn-brass:hover{background:#e4cc9b;color:var(--forest)}
.btn-primary{background:var(--forest);color:#fff}.btn-primary:hover{background:var(--sage-d);color:#fff}
.btn-ghost{border-color:var(--forest);color:var(--forest)}.btn-ghost:hover{background:var(--forest);color:#fff}
.btn-ghost-light{border-color:rgba(247,245,239,.6);color:var(--ivory)}.btn-ghost-light:hover{background:var(--ivory);color:var(--forest)}
.actions{display:flex;flex-wrap:wrap;gap:.9rem;margin-top:2rem}
/* header */
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line)}
.hdr{display:flex;align-items:center;justify-content:space-between;height:76px;gap:1rem}
.brand{display:flex;align-items:center;gap:.65rem;text-decoration:none;color:var(--forest)}
.brand svg{width:30px;height:30px;flex:none}.brand span{font:600 1.5rem/1 var(--serif);letter-spacing:.01em;white-space:nowrap}
.nav ul{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:.25rem}
.nav a,.nav .dd-btn{display:block;padding:.6rem .8rem;color:var(--char);text-decoration:none;font:500 .92rem/1.2 var(--sans);background:none;border:0;cursor:pointer}
.nav a:hover,.nav .dd-btn:hover,.nav a[aria-current=page]{color:var(--sage-d)}.nav a[aria-current=page]{box-shadow:inset 0 -2px 0 var(--brass)}
.dd{position:relative}.dd-btn::after{content:"";display:inline-block;margin-left:.4rem;width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-3px) rotate(45deg)}
.dd-menu{position:absolute;left:0;top:100%;min-width:300px;background:#fff;border:1px solid var(--line);box-shadow:0 14px 40px rgba(23,46,45,.12);padding:.5rem 0;display:none!important}
.dd.open .dd-menu,.dd:focus-within .dd-menu{display:block!important}.dd-menu a{padding:.7rem 1.2rem}
@media (hover:hover){.dd:hover .dd-menu{display:block!important}}
.nav a.hdr-cta:hover{background:#e4cc9b;color:var(--forest)}.nav a.hdr-cta{background:var(--brass);color:var(--forest);box-shadow:none;margin-left:.75rem;display:inline-flex;font-weight:600;min-height:42px;padding:.65rem 1.1rem;font-size:.88rem}
.menu-btn{display:none;background:none;border:1px solid var(--line);width:46px;height:46px;border-radius:2px;cursor:pointer;color:var(--forest)}
@media (max-width:1060px){.menu-btn{display:inline-flex;align-items:center;justify-content:center}.nav{display:none;position:absolute;left:0;right:0;top:76px;background:#fff;border-bottom:1px solid var(--line);padding:.5rem 1.5rem 1.5rem;max-height:calc(100vh - 76px);overflow:auto}.nav.open{display:block}.nav ul{flex-direction:column;align-items:stretch}.nav a,.nav .dd-btn{padding:.9rem 0;border-bottom:1px solid var(--line);width:100%;text-align:left;font-size:1rem}.dd-menu{position:static;display:block!important;border:0;box-shadow:none;padding:0 0 0 1rem;min-width:0}.dd-btn::after{display:none}.nav a.hdr-cta{margin:1rem 0 0;width:100%;justify-content:center;border-bottom:0;padding:.9rem}.nav a[aria-current=page]{box-shadow:none}}
/* hero */
.hero{background:var(--forest);color:var(--ivory);padding:5.5rem 0 6rem;position:relative;overflow:hidden}
.hero::after{content:"";position:absolute;right:-60px;bottom:-60px;width:320px;height:320px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='%23D6B980'%3E%3Cellipse cx='32' cy='42' rx='13' ry='11'/%3E%3Cellipse cx='14' cy='26' rx='5' ry='6.5'/%3E%3Cellipse cx='25' cy='17' rx='5' ry='6.5'/%3E%3Cellipse cx='39' cy='17' rx='5' ry='6.5'/%3E%3Cellipse cx='50' cy='26' rx='5' ry='6.5'/%3E%3C/svg%3E") no-repeat center/contain;opacity:.05;pointer-events:none}
.hero h1{color:#fff}.hero .eyebrow{color:var(--brass)}.hero .lede{color:#E6E3D9}
.hero-grid{display:grid;grid-template-columns:1.25fr .85fr;gap:4rem;align-items:center}
.portrait{margin:0;position:relative}.portrait img{width:100%;aspect-ratio:4/4.4;object-fit:cover;object-position:center 25%;border-radius:2px}
.portrait::before{content:"";position:absolute;inset:18px -18px -18px 18px;border:1px solid var(--brass);opacity:.55;z-index:0}.portrait img{position:relative;z-index:1}
.portrait figcaption{position:relative;z-index:2;margin:-2.2rem 1.5rem 0;background:var(--ivory);color:var(--forest);padding:1rem 1.25rem;display:flex;flex-direction:column}
.portrait figcaption strong{font:600 1.3rem/1.2 var(--serif)}.portrait figcaption span{font-size:.85rem;letter-spacing:.08em;color:var(--sage-d)}
.page-hero{background:var(--ivory);padding:4.5rem 0 4rem;border-bottom:1px solid var(--line)}
.page-hero h1{max-width:18em}
/* sections */
.section{padding:5.5rem 0}.section.alt{background:var(--ivory)}.section.dark{background:var(--forest);color:#E6E3D9}.section.dark h2{color:#fff}.section.dark .eyebrow{color:var(--brass)}
.split{display:grid;grid-template-columns:1fr 1.15fr;gap:4rem;align-items:start}
.prose p{font-size:1.05rem}.prose h2{margin-top:1.6em;font-size:1.9rem}
.creds{display:grid;grid-template-columns:repeat(4,1fr);margin:3.5rem 0 0;border-top:1px solid var(--line)}
.creds div{padding:2rem 1.5rem 0 0;border-right:1px solid var(--line);margin-right:1.5rem}.creds div:last-child{border:0;margin:0}
.creds dt{font:600 2.4rem/1 var(--serif);color:var(--forest);margin-bottom:.7rem}.creds dt::after{content:"";display:block;width:24px;height:2px;background:var(--brass);margin-top:.8rem}
.creds dd{margin:0;font-size:.95rem;color:#4a504e}
.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-top:2.5rem}
.card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);padding:2.2rem;text-decoration:none;color:var(--char);transition:border-color .2s,transform .2s,box-shadow .2s}
.card:hover{border-color:var(--sage);transform:translateY(-2px);box-shadow:0 10px 30px rgba(23,46,45,.08);color:var(--char)}
.num{font:600 .8rem/1 var(--sans);letter-spacing:.14em;color:var(--sage-d);margin-bottom:1.2rem}.card-prob{font-style:italic;color:#4a504e}
.more{margin-top:auto;font-weight:600;color:var(--forest);font-size:.92rem;padding-top:.6rem}
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:3rem;margin-top:2.5rem}.pillars div{border-top:2px solid var(--brass);padding-top:1.5rem}
.pillars-note{margin-top:2.5rem;font-size:1.05rem;color:var(--sage-d)}
.items{display:grid;grid-template-columns:repeat(2,1fr);gap:0 3rem;margin-top:2rem}.item{border-top:1px solid var(--line);padding:1.6rem 0}.item h3{font-size:1.35rem;margin-bottom:.4rem}.item p{margin:0;color:#4a504e}
.problems{list-style:none;margin:0;padding:0}.problems li{padding:1rem 0 1rem 2rem;border-bottom:1px solid var(--line);position:relative}.problems li::before{content:"";position:absolute;left:0;top:1.55rem;width:12px;height:1px;background:var(--sage)}
.compare{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:2rem}.compare div{border:1px solid var(--line);padding:2rem;background:#fff}
.cta-band{background:var(--forest);color:#E6E3D9;padding:5rem 0}.cta-band h2{color:#fff}.cta-band p{font-size:1.1rem;margin-bottom:2rem}
.disclosure{padding-top:2rem;padding-bottom:2rem;font-size:.88rem;color:#555b59}.disclosure p{border-left:2px solid var(--brass);padding-left:1rem;margin:0}
.about-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:4rem;align-items:start}.about-photo{margin:0;position:sticky;top:100px}
/* forms */
.contact-grid{display:grid;grid-template-columns:1.4fr .8fr;gap:4rem;align-items:start}
.contact-form{display:grid;gap:1.2rem}.row{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
.field label,.pathway legend{display:block;font-weight:600;font-size:.92rem;margin-bottom:.4rem;color:var(--forest)}.opt{font-weight:400;color:#5e6462}
input,select,textarea{width:100%;font:inherit;padding:.8rem .9rem;border:1px solid #B9B5A8;border-radius:2px;background:#fff;color:var(--char)}
input:focus,select:focus,textarea:focus{outline:3px solid var(--brass);outline-offset:1px;border-color:var(--forest)}
.pathway{border:0;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:1rem}.pathway legend{grid-column:1/-1}
.pw{display:flex;gap:.8rem;border:1px solid #B9B5A8;padding:1rem;cursor:pointer;background:#fff}.pw input{width:auto;margin-top:.3rem;accent-color:var(--forest)}.pw small{display:block;color:#5e6462;font-size:.85rem}
.pw:has(input:checked){border-color:var(--forest);box-shadow:inset 0 0 0 1px var(--forest);background:var(--ivory)}
.warn{background:#FBF6EA;border-left:3px solid var(--brass);padding:1rem 1.2rem;font-size:.92rem}
.hint{font-size:.82rem;color:#5e6462;margin:.35rem 0 0}.hp{position:absolute;left:-9999px}
.ack{display:flex;gap:.7rem;font-size:.9rem;align-items:flex-start}.ack input{width:auto;margin-top:.3rem;accent-color:var(--forest)}
.status{min-height:1.4em;margin:0;font-weight:600}.status.ok{color:#2c6b4f}.status.err{color:#a3352b}
.side{background:var(--ivory);padding:2rem;border-top:2px solid var(--brass)}.steps{padding-left:1.2rem}.steps li{margin-bottom:.8rem}.small{font-size:.85rem;color:#5e6462}
/* resources */
.art-list{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-top:2rem}
.tag{font:600 .72rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--sage-d)}
.draft{background:#FFF4D6;border:1px dashed #B08A2E;color:#5a4410;padding:1rem 1.2rem;font-size:.9rem;margin-bottom:2rem}.draft ul{margin:.5rem 0 0}
.article .prose{font-size:1.07rem}.article ol{padding-left:1.2rem}.sources{font-size:.9rem;border-top:1px solid var(--line);margin-top:2.5rem;padding-top:1.5rem}
.legal h2{font-size:1.6rem}
/* footer */
.site-footer{background:var(--char);color:#C9C6BC;padding:4rem 0 2rem;font-size:.92rem}.site-footer a{color:#E6E3D9}.site-footer a:hover{color:var(--brass)}
.ft{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:3rem}.ft h2{font:600 .78rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--brass);margin-bottom:1rem}
.ft ul{list-style:none;margin:0;padding:0}.ft li{margin-bottom:.5rem}.ft .brand{color:#fff;margin-bottom:1rem}
.fine{border-top:1px solid #3a3f3d;margin-top:3rem;padding-top:1.5rem;font-size:.82rem;color:#A9A699}.fine p{margin:0 0 .6rem}
@media (max-width:900px){.hero{padding:3.5rem 0 4rem}.hero-grid,.split,.about-grid,.contact-grid{grid-template-columns:1fr;gap:2.5rem}.portrait{max-width:420px}.about-photo{position:static;max-width:420px}
.creds{grid-template-columns:1fr 1fr}.creds div{border-right:0;margin-right:0;padding-bottom:1.5rem}.cards,.items,.pillars,.compare,.art-list{grid-template-columns:1fr}.pillars{gap:2rem}.ft{grid-template-columns:1fr;gap:2rem}.section{padding:4rem 0}}
@media (max-width:560px){.row,.pathway{grid-template-columns:1fr}.creds{grid-template-columns:1fr}.card{padding:1.6rem}.actions .btn{width:100%}.brand span{font-size:1.3rem}}
