body{-webkit-font-smoothing:antialiased}
.wrap{max-width:1080px;margin:0 auto;padding:0 28px}
.lab{font:var(--type-label);font-size:11px;letter-spacing:var(--track-label);text-transform:uppercase;color:var(--text-label)}
.lab-d{color:var(--text-inverse-label)}
.ser{font-family:var(--font-serif);font-weight:400;letter-spacing:var(--track-tighter);color:var(--text-heading);text-wrap:pretty}
.ital{font-style:italic;color:var(--brass-500)}
.ital-d{font-style:italic;color:var(--brass-150)}
p{margin:0}
.bar{border-bottom:1px solid var(--line-300);background:var(--cream-050);position:sticky;top:0;z-index:5}
.bar .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:74px;flex-wrap:wrap}
.mark{display:flex;flex-direction:column;gap:4px;text-decoration:none}
.mark:hover b{color:var(--brass-600)}
.mark:hover span{color:var(--brass-500)}
.mark b,.mark span{transition:color .16s ease-out}
.mark b{font-family:var(--font-serif);font-weight:400;font-size:21px;letter-spacing:.06em;color:var(--green-800)}
.mark span{font:var(--type-meta);font-size:8.5px;letter-spacing:var(--track-logo);text-transform:uppercase;color:var(--green-100)}
.nav{display:flex;align-items:center;gap:26px;flex-wrap:wrap}
.nav>a:not(.btn){font-family:var(--font-sans);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--green-300)}
.nav>a:not(.btn):hover{color:var(--brass-600)}
.nav>a.on{color:var(--green-800);border-bottom:2px solid var(--brass-400);padding-bottom:3px}
.drop{position:relative}
.droptrig{display:flex;align-items:center;gap:5px;background:none;border:0;padding:0;cursor:pointer;font-family:var(--font-sans);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--green-300)}
.droptrig .rw-icon{font-family:var(--font-icon);font-size:16px;color:var(--brass-500);transition:transform .16s ease-out}
.drop:hover .droptrig,.drop:focus-within .droptrig{color:var(--brass-600)}
.drop:hover .droptrig .rw-icon,.drop:focus-within .droptrig .rw-icon{transform:rotate(180deg)}
.dropmenu{position:absolute;top:calc(100% + 14px);left:-16px;min-width:272px;background:var(--cream-050);border:1px solid var(--line-500);border-radius:var(--radius-card-lg);padding:8px;display:grid;gap:2px;opacity:0;visibility:hidden;transform:translateY(-2px);transition:opacity .16s ease-out,transform .16s ease-out,visibility .16s;z-index:10}
.drop:hover .dropmenu,.drop:focus-within .dropmenu{opacity:1;visibility:visible;transform:translateY(0)}
.dropmenu a{display:flex;align-items:flex-start;gap:11px;padding:11px 12px;border-radius:var(--radius-row);text-transform:none;letter-spacing:0;font-size:14.5px;font-weight:400;font-family:var(--font-serif);color:var(--text-item);transition:background .16s ease-out}
.dropmenu a:hover{background:var(--cream-150);color:var(--text-item)}
.dropmenu a.on{color:var(--text-item);background:var(--cream-150)}
.dropmenu a .rw-icon{font-family:var(--font-icon);font-size:18px;color:var(--accent);margin-top:1px}
.dropmenu a i{font-style:normal;display:block;font-family:var(--font-sans);font-size:11.5px;line-height:1.45;color:var(--text-secondary);margin-top:2px}
.btn{display:inline-flex;align-items:center;gap:9px;padding:13px 22px;border:1px solid var(--line-800);border-radius:var(--radius-card);background:var(--brass-400);color:var(--cream-050);font-family:var(--font-sans);font-size:11.5px;font-weight:600;letter-spacing:var(--track-badge);text-transform:uppercase;transition:background .16s ease-out,border-color .16s ease-out}
.btn:hover{background:var(--brass-600);color:var(--cream-050)}
.btn-ghost{background:transparent;color:var(--brass-300);border-color:var(--line-onDark)}
.btn-ghost:hover{background:rgba(201,169,110,.1);color:var(--brass-150)}
.hero{position:relative;overflow:hidden;background:var(--green-900);padding:112px 0 104px}
.hero.short{padding:84px 0 78px}
.rings{position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 78% 46%,var(--ring-glow),transparent 58%)}
.rings i{position:absolute;top:46%;left:78%;transform:translate(-50%,-50%);border-radius:50%;border:1px solid var(--ring-1);display:block}
.hero .wrap{position:relative}
.hero h1{margin:20px 0 0;font-size:clamp(42px,6vw,68px);line-height:1.03;color:var(--oncream-100);max-width:15ch}
.hero.short h1{font-size:clamp(36px,5vw,56px)}
.hero p{margin-top:24px;max-width:52ch;font-family:var(--font-sans);font-size:17px;line-height:1.65;color:var(--oncream-500)}
.hero .tagline{margin-top:14px;font-family:var(--font-serif);font-style:italic;font-size:20px;color:var(--brass-150)}
.acts{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.hero .acts{margin-top:36px}
section.cream{background:var(--cream-050);padding:96px 0}
section.card-bg{background:var(--cream-100)}
section.tight{padding:72px 0}
.eyerow{display:flex;align-items:center;gap:10px}
.rwm{height:26px;width:auto;display:block;flex:0 0 auto}
.eyerow img.rwm{height:26px;width:auto}
.btn-quiet{background:transparent;color:var(--brass-700);border-color:var(--line-500)}
.btn-quiet:hover{background:var(--cream-150);color:var(--brass-600);border-color:var(--line-800)}
.eyerow .rwm{margin-right:1px}
.eyerow .rw-icon{font-size:17px;color:var(--accent)}
h2.ser{font-size:clamp(30px,3.6vw,42px);line-height:1.06;margin:18px 0 0;max-width:20ch}
h2.ser.wide{max-width:26ch}
.lead{font-family:var(--font-sans);font-size:16.5px;line-height:1.7;color:var(--text-body);max-width:60ch}
.two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:56px;align-items:start}
@media(max-width:860px){.two{grid-template-columns:1fr;gap:28px}}
.hr{height:1px;background:var(--line-300);border:0;margin:0}
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:44px}
@media(max-width:1000px){.cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.cards{grid-template-columns:1fr}}
.cards.two-up{grid-template-columns:repeat(2,1fr)}
@media(max-width:820px){.cards.two-up{grid-template-columns:1fr}}
.card{background:var(--cream-150);border:1px solid var(--border-card);border-radius:var(--radius-card-lg);padding:26px 24px 22px;display:flex;flex-direction:column;gap:12px;transition:background .16s ease-out,border-color .16s ease-out}
.card:hover{background:var(--cream-050);border-color:var(--line-500)}
.badge{width:34px;height:34px;border-radius:50%;background:rgba(176,142,79,.1);border:1px solid var(--line-500);display:grid;place-items:center}
.badge .rw-icon{font-size:18px;color:var(--accent)}
.card h3{margin:0;font-family:var(--font-serif);font-weight:600;font-size:20px;letter-spacing:var(--track-tight);color:var(--text-item)}
.card p{font-family:var(--font-sans);font-size:14px;line-height:1.55;color:var(--text-secondary)}
.card .fine{font-family:var(--font-sans);font-size:12px;line-height:1.5;color:var(--green-200);padding-top:12px;border-top:1px solid var(--line-200)}
.more{margin-top:auto;padding-top:14px;border-top:1px solid var(--line-200);font-family:var(--font-sans);font-size:10.5px;font-weight:600;letter-spacing:var(--track-label);text-transform:uppercase;color:var(--brass-500);display:inline-flex;gap:7px;align-items:center}
.more:hover{color:var(--brass-600)}
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:0;margin-top:48px;border-top:1px solid var(--line-300)}
.step{padding:26px 24px 30px 0;border-right:1px solid var(--line-300)}
.step:last-child{border-right:0}
@media(max-width:760px){.step{border-right:0;border-bottom:1px solid var(--line-300)}.step:last-child{border-bottom:0}}
.step .n{font-family:var(--font-sans);font-size:10px;font-weight:600;letter-spacing:var(--track-label);color:var(--brass-500)}
.step h4{margin:12px 0 8px;font-family:var(--font-serif);font-weight:600;font-size:19px;color:var(--text-item)}
.step p{font-family:var(--font-sans);font-size:14px;line-height:1.6;color:var(--text-secondary)}
.bio{display:grid;grid-template-columns:minmax(0,420px) minmax(0,1fr);gap:60px;align-items:center}
@media(max-width:860px){.bio{grid-template-columns:1fr;gap:32px}}
.bio figure{margin:0;border:1px solid var(--border-card);border-radius:var(--radius-card-lg);overflow:hidden;background:var(--cream-150)}
.bio figure img{display:block;width:100%;height:auto}
.bio blockquote{margin:26px 0 0;font:var(--type-quote);font-size:20px;line-height:1.4;color:var(--green-600)}
.sig{margin-top:18px;font-family:var(--font-sans);font-size:10px;font-weight:600;letter-spacing:var(--track-label);text-transform:uppercase;color:var(--green-200)}
h2.ser.oneline{max-width:none;white-space:nowrap;font-size:clamp(22px,3.4vw,38px)}
.svcs{display:grid;grid-template-columns:repeat(4,1fr);gap:14px 40px;margin-top:40px}
.svcs.three{grid-template-columns:repeat(3,1fr)}
@media(max-width:820px){.svcs.three{grid-template-columns:1fr}}
@media(max-width:1000px){.svcs{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.svcs{grid-template-columns:1fr}}
.svc{display:flex;gap:12px;align-items:flex-start;padding:14px 0;border-bottom:1px solid var(--line-300)}
.svc .rw-icon{font-size:18px;color:var(--accent);margin-top:2px}
.svc b{display:block;font-family:var(--font-serif);font-weight:600;font-size:17px;color:var(--text-item);margin-bottom:3px}
.svc span:not(.rw-icon){font-family:var(--font-sans);font-size:13.5px;line-height:1.5;color:var(--text-secondary)}
.svc .rw-icon{font-family:var(--font-icon)}
.svc b a{color:var(--text-item)}
.svc b a:hover{color:var(--brass-600)}
.lead a,.body-copy a{color:var(--text-heading);text-decoration:underline;text-decoration-color:var(--brass-400);text-underline-offset:2px}
.lead a:hover,.body-copy a:hover{color:var(--brass-600);text-decoration-color:var(--brass-600)}
section.green .lead a,.formsec .lead a{color:var(--oncream-100);text-decoration-color:var(--brass-300)}
section.green .lead a:hover,.formsec .lead a:hover{color:var(--brass-150);text-decoration-color:var(--brass-150)}
footer{background:var(--cream-050);border-top:1px solid var(--line-400);padding:44px 0 56px}
.foot{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;font-family:var(--font-sans);font-size:11px;font-weight:600;letter-spacing:var(--track-meta);text-transform:uppercase;color:var(--green-200)}
.note{max-width:1080px;margin:0 auto;padding:22px 28px;font-family:var(--font-sans);font-size:12px;line-height:1.6;color:var(--green-200);background:var(--cream-250);border-bottom:1px solid var(--line-500)}
/* blog */
.ph{background:var(--cream-250);border:1px solid var(--line-300);display:grid;place-items:center;position:relative;overflow:hidden}
.ph::after{content:attr(data-ph);position:absolute;bottom:10px;left:12px;right:12px;font-family:var(--font-sans);font-size:9.5px;font-weight:600;letter-spacing:var(--track-label);text-transform:uppercase;color:var(--green-100);text-align:center}
.ph .rw-icon{font-family:var(--font-icon);font-size:26px;color:var(--brass-300)}
.feature{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:48px;align-items:center;margin-top:44px}
@media(max-width:860px){.feature{grid-template-columns:1fr;gap:28px}}
.feature .ph{aspect-ratio:4/3;border-radius:var(--radius-card-lg)}
.kicker{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.tag{font-family:var(--font-sans);font-size:9.5px;font-weight:600;letter-spacing:var(--track-label);text-transform:uppercase;color:var(--brass-600);border:1px solid var(--line-500);border-radius:var(--radius-chip);padding:5px 9px}
.meta{font-family:var(--font-sans);font-size:11px;letter-spacing:var(--track-meta);text-transform:uppercase;color:var(--green-200)}
.feature h3{margin:18px 0 0;font-family:var(--font-serif);font-weight:400;font-size:clamp(26px,3.2vw,36px);line-height:1.1;letter-spacing:var(--track-tighter);color:var(--text-heading)}
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:40px}
@media(max-width:900px){.posts{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.posts{grid-template-columns:1fr}}
.post{display:flex;flex-direction:column;gap:14px;border:1px solid var(--border-card);border-radius:var(--radius-card-lg);background:var(--cream-050);padding:16px 16px 20px;transition:border-color .16s ease-out,background .16s ease-out}
.post:hover{border-color:var(--line-500);background:var(--cream-150)}
.post .ph{aspect-ratio:3/2;border-radius:var(--radius-card)}
.post h4{margin:0;font-family:var(--font-serif);font-weight:600;font-size:19px;line-height:1.2;letter-spacing:var(--track-tight);color:var(--text-item)}
.post p{font-family:var(--font-sans);font-size:13.5px;line-height:1.55;color:var(--text-secondary)}
.post .meta{margin-top:auto;padding-top:12px;border-top:1px solid var(--line-200)}
.filters{display:flex;gap:9px;flex-wrap:wrap;margin-top:34px}
.filters a{font-family:var(--font-sans);font-size:11px;font-weight:600;letter-spacing:var(--track-badge);text-transform:uppercase;color:var(--brass-700);border:1px solid var(--line-500);border-radius:var(--radius-chip);padding:9px 14px;background:var(--cream-250);transition:background .16s ease-out,color .16s ease-out}
.filters a:hover{background:var(--cream-050)}
.filters a.on{background:var(--brass-400);border-color:var(--line-800);color:var(--cream-050)}
/* IV menu */
.menu{display:grid;grid-template-columns:1fr 1fr;gap:0 56px;margin-top:40px}
@media(max-width:820px){.menu{grid-template-columns:1fr;gap:0}}
.mitem{display:grid;gap:5px;padding:18px 0;border-bottom:1px solid var(--divider)}
.mhead{display:flex;align-items:baseline;gap:10px}
.mhead b{font-family:var(--font-serif);font-weight:600;font-size:19px;letter-spacing:var(--track-tight);color:var(--text-item);white-space:nowrap}
.leader{flex:1;border-bottom:1px dotted var(--line-400);transform:translateY(-4px)}
.mhead .chip{font-family:var(--font-sans);font-size:9.5px;font-weight:600;letter-spacing:var(--track-badge);text-transform:uppercase;color:var(--green-200);border:1px solid var(--line-500);border-radius:var(--radius-chip);padding:3px 7px}
.mitem p{font-family:var(--font-sans);font-size:13.5px;line-height:1.55;color:var(--text-secondary)}
.mitem .ing{font-family:var(--font-sans);font-size:11.5px;line-height:1.5;color:var(--green-100)}
section.green .mitem{border-color:var(--line-onDark-soft)}
section.green .mhead b{color:var(--oncream-100)}
section.green .mitem p{color:var(--oncream-500)}
section.green .mitem .ing{color:var(--oncream-600)}
section.green .leader{border-color:var(--line-onDark)}
section.green .mhead .chip{color:var(--brass-300);border-color:var(--line-onDark)}
/* article body */
.artgrid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:56px;align-items:start}
@media(max-width:880px){.artgrid{grid-template-columns:1fr;gap:24px}}
.artgrid .sticky{position:sticky;top:100px}
.body-copy{display:grid;gap:16px}
.body-copy p{font-family:var(--font-sans);font-size:16px;line-height:1.7;color:var(--text-body);max-width:66ch}
.twocol{display:grid;grid-template-columns:1fr 1fr;gap:0 40px;margin-top:8px}
@media(max-width:640px){.twocol{grid-template-columns:1fr}}
.approach{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:40px}
/* cascade diagram */
.casc{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:44px;border-top:1px solid var(--line-500)}
@media(max-width:900px){.casc{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.casc{grid-template-columns:1fr}}
.cnode{position:relative;padding:26px 28px 30px;border-right:1px solid var(--line-300)}
.cnode:first-child{padding-left:0}
.cnode:last-child{border-right:0;padding-right:0}
@media(max-width:900px){.cnode{border-right:0;border-bottom:1px solid var(--line-300)}}
.cnode .disc{width:34px;height:34px;border-radius:50%;background:rgba(176,142,79,.1);border:1px solid var(--line-500);display:grid;place-items:center;margin-bottom:14px}
.cnode .disc .rw-icon{font-size:18px;color:var(--accent)}
.cnode .n{font-family:var(--font-sans);font-size:10px;font-weight:600;letter-spacing:var(--track-label);text-transform:uppercase;color:var(--brass-500)}
.cnode h4{margin:8px 0 6px;font-family:var(--font-serif);font-weight:600;font-size:18px;letter-spacing:var(--track-tight);color:var(--text-item)}
.cnode p{font-family:var(--font-sans);font-size:13.5px;line-height:1.55;color:var(--text-secondary)}
.cnode.stall .disc{border-color:var(--line-800);background:rgba(176,142,79,.16)}
/* blood sugar chart */
.chart{background:var(--cream-150);border:1px solid var(--border-card);border-radius:var(--radius-card-lg);padding:22px 24px 20px}
.chart svg{display:block;width:100%;height:auto}
.chart .axis{display:grid;grid-template-columns:repeat(3,1fr);margin-top:10px}
.chart .axis.four{grid-template-columns:repeat(4,1fr)}
.chart .axis span{font-family:var(--font-sans);font-size:10px;font-weight:600;letter-spacing:var(--track-meta);text-transform:uppercase;color:var(--green-300);text-align:center}
.chart .key{display:flex;gap:20px;flex-wrap:wrap;margin-top:18px;padding-top:16px;border-top:1px solid var(--line-300)}
.chart .key div{display:flex;align-items:center;gap:8px;font-family:var(--font-sans);font-size:12.5px;line-height:1.4;color:var(--text-secondary)}
.chart .key i{width:18px;height:0;border-top:2px solid;flex:0 0 auto}
.chart figcaption{margin-top:14px;font-family:var(--font-sans);font-size:12.5px;line-height:1.55;color:var(--green-300)}
.barrier{display:grid;gap:18px}
.barrier.h{grid-template-columns:1fr 1fr;gap:32px}
@media(max-width:700px){.barrier.h{grid-template-columns:1fr;gap:20px}}
.bcell{display:grid;gap:9px}
.bcell svg{display:block;width:100%;height:auto;background:var(--cream-050);border:1px solid var(--line-300);border-radius:var(--radius-card)}
.bcell b{font-family:var(--font-serif);font-weight:600;font-size:15px;letter-spacing:var(--track-tight);color:var(--text-item)}
.bcell span{font-family:var(--font-sans);font-size:12.5px;line-height:1.5;color:var(--green-300);display:block;margin-top:2px}
/* hormone cascade */
.cascade{margin-top:44px}
.cband{display:flex;gap:13px;align-items:flex-start;padding:17px 20px;background:var(--cream-150);border:1px solid var(--border-card);border-radius:var(--radius-card)}
.cband .rw-icon{font-size:19px;color:var(--accent);margin-top:2px}
.cband b{font-family:var(--font-serif);font-weight:600;font-size:17px;letter-spacing:var(--track-tight);color:var(--text-item);display:block;margin-bottom:3px}
.cband p{font-family:var(--font-sans);font-size:13.5px;line-height:1.55;color:var(--text-secondary);max-width:72ch}
.clink{display:grid;grid-template-columns:repeat(3,1fr)}
.clink i{display:block;height:24px;border-left:1px solid var(--line-500);justify-self:center}
.csys{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
/* honest fit */
.fit{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:40px;border-top:1px solid var(--line-300)}
@media(max-width:820px){.fit{grid-template-columns:1fr}}
.fit div{padding:26px 28px 28px;border-right:1px solid var(--line-300)}
.fit div:first-child{padding-left:0}
.fit div:last-child{border-right:0;padding-right:0}
@media(max-width:820px){.fit div{border-right:0;border-bottom:1px solid var(--line-300);padding:22px 0 24px}.fit div:last-child{border-bottom:0}}
.fit b{display:block;font-family:var(--font-serif);font-weight:600;font-size:19px;letter-spacing:var(--track-tight);color:var(--text-item);margin-bottom:7px}
.fit p{font-family:var(--font-sans);font-size:14px;line-height:1.6;color:var(--text-secondary)}
@media(max-width:760px){.csys{grid-template-columns:1fr}.clink{display:none}.cascade .cband{margin-top:18px}}
.cstall{display:flex;gap:14px;align-items:flex-start;margin-top:32px;padding:20px 24px;background:var(--cream-150);border:1px solid var(--border-card);border-left:3px solid var(--brass-400);border-radius:var(--radius-card)}
.cstall .rw-icon{font-size:20px;color:var(--accent);margin-top:2px}
.cstall b{display:block;font-family:var(--font-serif);font-weight:600;font-size:18px;color:var(--text-item);margin-bottom:5px}
.cstall div span{font-family:var(--font-sans);font-size:14.5px;line-height:1.6;color:var(--text-secondary);max-width:70ch;display:block}
@media(max-width:1000px){.approach{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.approach{grid-template-columns:1fr}}
/* interest form */
.formsec{background:var(--green-900);padding:96px 0;position:relative;overflow:hidden}
.formgrid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:60px;align-items:start;position:relative}
@media(max-width:900px){.formgrid{grid-template-columns:1fr;gap:36px}}
.formgrid h2{color:var(--oncream-100);font-size:clamp(30px,3.8vw,44px);max-width:16ch;margin:18px 0 0}
.formgrid .intro{margin-top:22px;font-family:var(--font-sans);font-size:16px;line-height:1.7;color:var(--oncream-500)}
.applist{margin:26px 0 0;padding:0;list-style:none;display:grid;gap:11px}
.applist li{display:flex;gap:11px;font-family:var(--font-sans);font-size:14px;line-height:1.5;color:var(--oncream-300);padding-bottom:11px;border-bottom:1px solid var(--line-onDark-soft)}
.applist li:last-child{border-bottom:0}
.applist b{font-family:var(--font-sans);font-weight:600;font-size:10px;letter-spacing:var(--track-label);color:var(--brass-300);flex:0 0 26px;padding-top:3px}
.panelform{background:var(--cream-050);border:1px solid var(--line-800);border-radius:var(--radius-card-lg);padding:34px 34px 30px}
@media(max-width:520px){.panelform{padding:26px 22px}}
.fgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:600px){.fgrid{grid-template-columns:1fr}}
.f{display:flex;flex-direction:column;gap:7px}
.f.full{grid-column:1/-1}
.f > label{font-family:var(--font-sans);font-size:9.5px;font-weight:600;letter-spacing:var(--track-label);text-transform:uppercase;color:var(--green-200)}
.req{color:#a8332a;margin-left:3px;letter-spacing:0}
.f input,.f select,.f textarea{font-family:var(--font-sans);font-size:14.5px;color:var(--text-body);background:var(--cream-150);border:1px solid var(--line-300);border-radius:var(--radius-row);padding:11px 12px;width:100%;transition:border-color .16s ease-out,background .16s ease-out}
.f textarea{min-height:96px;resize:vertical;line-height:1.55}
.f input:focus,.f select:focus,.f textarea:focus{outline:0;border-color:var(--line-800);background:var(--cream-050)}
.f input::placeholder,.f textarea::placeholder{color:var(--green-100)}
.checks{display:grid;grid-template-columns:1fr 1fr;gap:8px}
@media(max-width:600px){.checks{grid-template-columns:1fr}}
.chk{display:flex;align-items:center;gap:9px;padding:10px 12px;border:1px solid var(--line-300);border-radius:var(--radius-row);background:var(--cream-150);font-family:var(--font-sans);font-size:13.5px;color:var(--text-secondary);cursor:pointer;transition:border-color .16s ease-out,background .16s ease-out}
.chk:hover{background:var(--cream-050);border-color:var(--line-500)}
.chk input{accent-color:var(--brass-400);width:15px;height:15px;margin:0}
.panelform .intro{color:var(--text-secondary)}
.fine a{color:var(--green-800);text-decoration:underline;text-decoration-color:var(--brass-400);text-underline-offset:2px}
.fine a:hover{color:var(--brass-600)}
.gform{width:100%;height:620px;border:1px solid var(--line-300);border-radius:var(--radius-card);background:var(--cream-050);display:block}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.navtoggle{display:none;align-items:center;justify-content:center;background:none;border:0;padding:8px 2px;cursor:pointer;color:var(--brass-500)}
.navtoggle .bars{display:grid;gap:5px;width:26px}
.navtoggle .bars i{display:block;height:2px;background:currentColor;border-radius:1px}
.navscrim{display:none;position:fixed;inset:0;background:rgba(29,38,26,.5);z-index:40;opacity:0;pointer-events:none;transition:opacity .22s ease-out}
.navscrim.show{opacity:1;pointer-events:auto}
.navclose{position:absolute;top:16px;right:18px;background:none;border:0;padding:8px;cursor:pointer;line-height:0;color:var(--green-800)}
.navclose svg{width:22px;height:22px;display:block}
.navclose:hover{color:var(--brass-600)}
@media(max-width:860px){
.bar{z-index:45}
.bar .wrap{min-height:64px;flex-wrap:nowrap}
.navtoggle{display:inline-flex}
.navscrim{display:block}
.nav{position:fixed;top:0;right:0;bottom:0;width:86%;max-width:400px;z-index:41;background:var(--cream-050);border-left:1px solid var(--line-500);display:flex;flex-direction:column;align-items:stretch;gap:0;padding:66px 26px 40px;margin:0;overflow-y:auto;transform:translateX(100%);transition:transform .26s ease-out;-webkit-overflow-scrolling:touch}
.nav.open{transform:translateX(0)}
.nav>a:not(.btn){padding:15px 0;font-size:17px;letter-spacing:.1em;color:var(--green-700)}
.nav>a:not(.btn).on{color:var(--brass-500);border-bottom:0;padding-bottom:15px}
.nav .drop{width:100%}
.droptrig{width:100%;justify-content:flex-start;gap:10px;padding:15px 0;font-size:17px;letter-spacing:.1em;color:var(--green-700)}
.droptrig .rw-icon{font-size:20px;transition:transform .18s ease-out}
.drop.open .droptrig{color:var(--brass-500)}
.drop.open .droptrig .rw-icon{transform:rotate(180deg)}
.drop:hover .droptrig .rw-icon,.drop:focus-within .droptrig .rw-icon{transform:none}
.drop.open .droptrig .rw-icon{transform:rotate(180deg)}
.dropmenu{position:static !important;opacity:1 !important;visibility:visible !important;transform:none !important;display:none;border:0;border-radius:0;padding:0 0 8px 16px;min-width:0 !important;background:transparent;gap:0;top:auto !important;left:auto !important}
.drop.open .dropmenu{display:grid}
.dropmenu a{display:block;padding:13px 0;background:none;border:0;border-radius:0;font-size:16.5px;font-family:var(--font-sans);font-weight:400;letter-spacing:0;color:var(--green-600)}
.dropmenu a .rw-icon,.dropmenu a i{display:none}
.nav a.btn{margin-top:26px;justify-content:center;padding:16px 22px;font-size:12px;letter-spacing:var(--track-badge)}
.nav>a.navtel:not(.btn){margin-top:auto;padding-top:26px;border-top:1px solid var(--line-300);display:flex;align-items:center;gap:10px;font-family:var(--font-serif);font-size:19px;letter-spacing:0;text-transform:none;color:var(--green-800)}
.nav>a.navtel .rw-icon{font-size:19px;color:var(--brass-500)}
body.nav-locked{overflow:hidden}
}
.other{margin-top:10px}
.gf-sink{display:none;width:0;height:0;border:0}
.thanks{background:var(--cream-050);border:1px solid var(--border-card);border-radius:var(--radius-card-lg);padding:var(--pad-panel-dense)}
.thanks h3{margin:16px 0 10px;font-family:var(--font-serif);font-weight:400;font-size:28px;letter-spacing:var(--track-tighter);color:var(--text-heading)}
.thanks p{font-family:var(--font-sans);font-size:15px;line-height:1.65;color:var(--text-secondary);max-width:46ch}
.teamphoto{margin:0;border:1px solid var(--border-card);border-radius:var(--radius-card-lg);overflow:hidden;background:var(--cream-150)}
.teamphoto img{display:block;width:100%;height:auto}
.facts{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:40px}
@media(max-width:780px){.facts{grid-template-columns:1fr}}
.fact{display:flex;gap:14px;align-items:flex-start;padding:20px 22px;background:rgba(201,169,110,.07);border:1px solid var(--line-onDark);border-radius:var(--radius-card-lg)}
.fact .rw-icon{font-size:22px;color:var(--brass-300);margin-top:1px;flex:0 0 auto}
.fact .rw-glyph{width:22px;height:22px;color:var(--brass-300);margin-top:1px;flex:0 0 auto;display:block}
.fact .rw-icon.glyph{font-family:var(--font-serif);font-size:27px;line-height:.85;-webkit-text-stroke:1.15px var(--brass-300);color:transparent}
.fact b{display:block;font-family:var(--font-serif);font-weight:600;font-size:17px;letter-spacing:var(--track-tight);color:var(--oncream-100);margin-bottom:5px}
.fact p{font-family:var(--font-sans);font-size:13.5px;line-height:1.55;color:var(--oncream-500)}
.facts .fact:nth-child(5){grid-column:1/-1}
@media(max-width:780px){.facts .fact:nth-child(5){grid-column:auto}}
.formfoot{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:24px;padding-top:20px;border-top:1px solid var(--line-300)}
.formfoot .fine{font-family:var(--font-sans);font-size:11.5px;line-height:1.5;color:var(--green-200);max-width:34ch}
button.btn{cursor:pointer}
.tel-alt{margin-top:26px;font-family:var(--font-sans);font-size:13.5px;color:var(--oncream-600)}
.tel-alt a{font-family:var(--font-serif);font-size:19px;color:var(--brass-150)}
/* program page pieces */
.phase{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:54px;align-items:start}
@media(max-width:860px){.phase{grid-template-columns:1fr;gap:28px}}
.incl{list-style:none;margin:0;padding:0;display:grid;gap:0}
.incl li{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid var(--line-300);font-family:var(--font-sans);font-size:14.5px;line-height:1.5;color:var(--text-body)}
.incl li .rw-icon{font-size:16px;color:var(--accent);margin-top:1px}
.excl li .rw-icon{color:var(--green-100)}
.excl li{color:var(--text-secondary)}
.tiers{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;margin-top:44px}
.tier{border:1px solid var(--border-card);border-radius:var(--radius-card-lg);background:var(--cream-050);padding:28px 26px;display:flex;flex-direction:column;gap:14px}
.tier.dark{background:var(--green-850);border-color:var(--line-onDark);border-left:3px solid var(--brass-400)}
.tier .lvl{font-family:var(--font-sans);font-size:9.5px;font-weight:600;letter-spacing:var(--track-label);text-transform:uppercase;color:var(--brass-500)}
.tier.dark .lvl{color:var(--brass-300)}
.tier h3{margin:0;font-family:var(--font-serif);font-weight:400;font-size:26px;letter-spacing:var(--track-tight);color:var(--text-heading)}
.tier.dark h3{color:var(--oncream-100)}
.tier .best{font-family:var(--font-sans);font-size:13.5px;line-height:1.55;color:var(--text-secondary);padding-bottom:14px;border-bottom:1px solid var(--line-300)}
.tier.dark .best{color:var(--oncream-500);border-color:var(--line-onDark-soft)}
.tier ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.tier li{display:flex;gap:10px;font-family:var(--font-sans);font-size:13.5px;line-height:1.5;color:var(--text-body)}
.tier.dark li{color:var(--oncream-300)}
.tier li .rw-icon{font-size:15px;color:var(--accent);margin-top:1px}
.tier .focus{margin-top:auto;padding-top:14px;border-top:1px solid var(--line-300);font-family:var(--font-sans);font-size:12.5px;line-height:1.5;color:var(--green-200)}
.tier.dark .focus{color:var(--oncream-600);border-color:var(--line-onDark-soft)}
.timeline{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:20px;margin-top:44px}
.tl{border-top:2px solid var(--brass-400);padding-top:18px}
.tl .wk{font-family:var(--font-sans);font-size:10px;font-weight:600;letter-spacing:var(--track-label);text-transform:uppercase;color:var(--brass-500)}
.tl h4{margin:10px 0 8px;font-family:var(--font-serif);font-weight:600;font-size:19px;color:var(--text-item)}
.tl p{font-family:var(--font-sans);font-size:14px;line-height:1.6;color:var(--text-secondary)}
.pillars{display:flex;flex-wrap:wrap;gap:10px;margin-top:36px}
.pillar{border:1px solid var(--line-500);background:var(--cream-250);border-radius:var(--radius-chip);padding:9px 14px;font-family:var(--font-sans);font-size:11px;font-weight:600;letter-spacing:var(--track-badge);text-transform:uppercase;color:var(--brass-700)}
.faq{display:grid;gap:0;margin-top:40px;border-top:1px solid var(--line-300)}
.faq details{border-bottom:1px solid var(--line-300)}
.faq summary{cursor:pointer;list-style:none;padding:20px 0;font-family:var(--font-serif);font-weight:600;font-size:18px;color:var(--text-item);display:flex;justify-content:space-between;gap:20px;align-items:center}
.faq summary::-webkit-details-marker{display:none}
.faq summary .rw-icon{font-size:18px;color:var(--accent);transition:transform .16s ease-out}
.faq details[open] summary .rw-icon{transform:rotate(45deg)}
.faq p{padding:0 0 22px;font-family:var(--font-sans);font-size:14.5px;line-height:1.65;color:var(--text-secondary);max-width:64ch}
.notfor{list-style:none;margin:24px 0 0;padding:0;display:grid;gap:0;max-width:64ch}
.notfor li{padding:12px 0;border-bottom:1px solid var(--line-onDark-soft);font-family:var(--font-sans);font-size:14.5px;line-height:1.5;color:var(--oncream-300)}
/* green sections */
section.green{background:var(--green-900);padding:96px 0;position:relative;overflow:hidden}
section.green .wrap{position:relative}
section.green .ser,section.green h2.ser,section.green h3.ser{color:var(--oncream-100)}
section.green .ital{font-style:italic;color:var(--brass-150)}
section.green .lab{color:var(--brass-300)}
section.green .lead{color:var(--oncream-500)}
section.green .hr{background:var(--line-onDark-soft)}
section.green .eyerow .rw-icon{color:var(--brass-250)}
section.green .card{background:var(--green-850);border-color:var(--line-onDark)}
section.green .card:hover{background:var(--green-800);border-color:var(--brass-600)}
section.green .card h3{color:var(--oncream-100)}
section.green .card p{color:var(--oncream-500)}
section.green .card .fine{color:var(--oncream-600);border-color:var(--line-onDark-soft)}
section.green .badge{background:rgba(201,169,110,.12);border-color:var(--line-onDark)}
section.green .badge .rw-icon{color:var(--brass-250)}
section.green .incl li{color:var(--oncream-300);border-color:var(--line-onDark-soft)}
section.green .incl li .rw-icon{color:var(--brass-250)}
section.green .incl.excl li{color:var(--oncream-600)}
section.green .incl.excl li .rw-icon{color:var(--green-100)}
section.green .steps,section.green .step{border-color:var(--line-onDark-soft)}
section.green .step .n{color:var(--brass-300)}
section.green .step h4{color:var(--oncream-100)}
section.green .step p{color:var(--oncream-500)}
section.green .tl{border-top-color:var(--brass-400)}
section.green .tl .wk{color:var(--brass-300)}
section.green .tl h4{color:var(--oncream-100)}
section.green .tl p{color:var(--oncream-500)}
section.green .pillar{background:rgba(201,169,110,.1);border-color:var(--line-onDark);color:var(--brass-150)}
section.green .more{color:var(--brass-300);border-color:var(--line-onDark-soft)}
section.green .more:hover{color:var(--brass-150)}
section.green .svc{border-color:var(--line-onDark-soft)}
section.green .svc b{color:var(--oncream-100)}
section.green .svc span:not(.rw-icon){color:var(--oncream-500)}
section.green .svc .rw-icon{color:var(--brass-250)}
section.green .faq details{border-color:var(--line-onDark-soft)}
section.green .faq{border-top-color:var(--line-onDark-soft)}
section.green .faq summary{color:var(--oncream-100)}
section.green .faq summary .rw-icon{color:var(--brass-250)}
section.green .faq p{color:var(--oncream-500)}
section.green .syslist li{color:var(--oncream-300);border-color:var(--line-onDark-soft)}
section.green .syslist .rw-icon{color:var(--brass-250)}
section.green .ringstack .rw-icon{color:var(--brass-250)}
section.green .signal{background:var(--green-850);border-color:var(--line-onDark)}
section.green .sig-step{border-color:var(--line-onDark-soft)}
section.green .sig-step b{color:var(--oncream-100)}
section.green .sig-step span:not(.rw-icon){color:var(--oncream-500)}
section.green .sig-step .rw-icon{color:var(--brass-250)}
/* phase map diagram */
.pmap{display:grid;grid-template-columns:1fr;gap:28px;margin-top:56px}
.pmap.three{grid-template-columns:repeat(3,1fr)}
.pmap.four{grid-template-columns:repeat(4,1fr)}
@media(max-width:1000px){.pmap.four{grid-template-columns:repeat(2,1fr);gap:40px 28px}}
@media(max-width:760px){.pmap.three,.pmap.four{grid-template-columns:1fr;gap:36px}}
.pnode{display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px;position:relative;padding:0 10px}
.pnode:not(:last-child)::after{content:'';position:absolute;top:52px;left:calc(50% + 62px);right:calc(-50% + 62px);height:1px;background:var(--line-onDark)}
@media(max-width:1000px){.pmap.four .pnode:nth-child(2n)::after{display:none}}
@media(max-width:760px){.pnode::after{display:none}}
.disc{width:104px;height:104px;border-radius:50%;border:1px solid var(--line-onDark);display:grid;place-items:center;position:relative;flex:0 0 auto}
.disc::before{content:'';position:absolute;inset:13px;border-radius:50%;border:1px solid var(--line-onDark-soft)}
.disc::after{content:'';position:absolute;inset:26px;border-radius:50%;background:rgba(176,142,79,.1);border:1px solid var(--line-onDark)}
.disc .rw-icon{font-size:28px;color:var(--brass-250);position:relative;z-index:1}
.pnode .n{font-family:var(--font-sans);font-size:9.5px;font-weight:600;letter-spacing:var(--track-label);text-transform:uppercase;color:var(--brass-300)}
.applist li span:not(.rw-icon){font-family:var(--font-sans)}
.disc .rw-icon,.badge .rw-icon,.eyerow .rw-icon,.incl .rw-icon,.syslist .rw-icon,.tier .rw-icon,.faq summary .rw-icon,.ringstack .rw-icon,.more .rw-icon{font-family:var(--font-icon)}
.pnode h4{margin:6px 0 0;font-family:var(--font-serif);font-weight:400;font-size:24px;letter-spacing:var(--track-tight);color:var(--oncream-100)}
.pnode p{margin-top:8px;font-family:var(--font-sans);font-size:13.5px;line-height:1.6;color:var(--oncream-500);max-width:30ch}
/* concentric systems diagram */
.sysdiag{display:grid;grid-template-columns:minmax(0,260px) minmax(0,1fr);gap:44px;align-items:center;margin-top:40px}
@media(max-width:700px){.sysdiag{grid-template-columns:1fr;gap:28px}}
.ringstack{position:relative;width:100%;max-width:260px;aspect-ratio:1;display:grid;place-items:center;justify-self:center}
.ringstack i{position:absolute;border-radius:50%;border:1px solid var(--brass-400);display:block}
.ringstack .rw-icon{font-size:22px;color:var(--accent);position:relative}
.syslist{list-style:none;margin:0;padding:0;display:grid;gap:0}
.syslist li{display:flex;align-items:center;gap:13px;padding:12px 0;border-bottom:1px solid var(--divider);font-family:var(--font-sans);font-size:15px;color:var(--text-body)}
.syslist li:last-child{border-bottom:0}
.syslist .dot{width:11px;height:11px;border-radius:50%;border:1px solid var(--brass-400);flex:0 0 auto}
.syslist .rw-icon{font-size:18px;color:var(--accent)}
/* signal strip */
.signal{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:0;margin-top:44px;border:1px solid var(--divider);border-radius:var(--radius-card-lg);overflow:hidden;background:var(--cream-050)}
.sig-step{padding:24px 22px;border-right:1px solid var(--divider);display:flex;flex-direction:column;gap:10px}
.sig-step:last-child{border-right:0}
@media(max-width:760px){.sig-step{border-right:0;border-bottom:1px solid var(--divider)}.sig-step:last-child{border-bottom:0}}
.sig-step .rw-icon{font-size:22px;color:var(--accent)}
.sig-step b{font-family:var(--font-serif);font-weight:600;font-size:17px;color:var(--text-item)}
.sig-step span:not(.rw-icon){font-family:var(--font-sans);font-size:13.5px;line-height:1.55;color:var(--text-secondary)}
.sig-step .rw-icon{font-family:var(--font-icon);font-size:22px;color:var(--accent)}
