:root{--navy:#1b2a4a;--navy-dark:#0e1624;--ink:#121820;--gold:#c4a574;--paper:#f4f1ea;--white:#fff;--slate:#5c6b7a;--line:#dcd6ca;--teal:#146868;--logo-navy:#072549;--logo-gold:#a8854a;--logo-rule:#af986e;--serif:Georgia, "Times New Roman", serif;--sans:Inter, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;color:var(--ink);background:var(--paper);font-family:var(--sans);font-synthesis:none;text-rendering:optimizelegibility}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);min-width:320px;color:var(--ink);margin:0;font-size:18px;line-height:1.65}button,input,select,textarea{font:inherit}a{color:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--teal);outline-offset:4px}.section--navy a:focus-visible,.site-footer a:focus-visible{outline-color:var(--gold)}p,h1,h2,h3,ol,ul{margin-top:0}p:last-child{margin-bottom:0}.shell{width:min(1120px,100% - 80px);margin-inline:auto}.narrow{width:min(720px,100% - 48px);margin-inline:auto}.skip-link{z-index:100;background:var(--white);color:var(--navy);border:2px solid var(--navy);padding:10px 16px;position:fixed;top:-80px;left:12px}.skip-link:focus{top:12px}h1,h2,h3{color:var(--navy);font-family:var(--serif);letter-spacing:-.022em;font-weight:500;line-height:1.14}h1{font-size:clamp(2.55rem,6vw,4.6rem)}h2{margin-bottom:22px;font-size:clamp(2rem,4vw,3rem)}h3{margin-bottom:12px;font-size:1.35rem}.lede{color:#2e3a45;font-family:var(--serif);font-size:clamp(1.2rem,2.2vw,1.5rem);line-height:1.5}.eyebrow{color:var(--teal);letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:12px;margin-bottom:18px;font-size:.76rem;font-weight:700;line-height:1.4;display:flex}.eyebrow:before{background:var(--gold);content:"";width:32px;height:1px}.eyebrow--light{color:#e5ddcf}.site-header{z-index:50;background:#fffffff7;border-bottom:1px solid #e6e0d6;position:sticky;top:0}.nav-bar{justify-content:space-between;align-items:center;gap:32px;min-height:84px;display:flex}.brand{width:max-content;color:var(--logo-navy);text-align:center;flex-direction:column;align-items:stretch;line-height:1;text-decoration:none;display:inline-flex}.brand__rideau{font-family:var(--serif);letter-spacing:.06em;text-transform:uppercase;padding-left:.06em;font-size:1.85rem;font-weight:400}.brand__labs{border-top:1px solid var(--logo-rule);color:var(--logo-gold);letter-spacing:.42em;text-transform:uppercase;margin-top:6px;padding-top:6px;padding-left:.42em;font-size:.72rem;font-weight:600}.nav-list{gap:12px;margin:0;padding:0;list-style:none;display:flex}.nav-list a{min-width:62px;min-height:44px;color:var(--navy);letter-spacing:.06em;text-transform:uppercase;place-items:center;font-size:.83rem;font-weight:650;text-decoration:none;display:grid;position:relative}.nav-list a:after{background:var(--gold);content:"";width:0;height:1px;transition:width .16s;position:absolute;bottom:6px;left:16px}.nav-list a:hover:after,.nav-list a.active:after{width:calc(100% - 32px)}.hero{min-height:min(70vh,760px);color:var(--ink);background:linear-gradient(#fefbf5,#fbf6ef 50%,#f5efe7);align-items:center;display:grid;position:relative;overflow:hidden}.hero__image{width:auto;max-width:none;height:100%;position:absolute;top:0;left:calc(50% + min(1120px,100% - 80px)/-2 + 640px);transform:translate(-35%);-webkit-mask-image:linear-gradient(90deg,#0000,#000 12% 90%,#0000);mask-image:linear-gradient(90deg,#0000,#000 12% 90%,#0000)}.hero__content{z-index:1;padding-block:92px 78px;position:relative}.hero__content>*{max-width:560px}.hero .eyebrow{color:var(--navy)}.hero h1{max-width:10em;color:var(--navy);margin-bottom:24px;font-size:clamp(2.5rem,4.4vw,3.5rem)}.hero__copy{color:var(--ink);margin-bottom:0;font-size:1.12rem}.hero__credit{z-index:1;color:var(--slate);margin:0;font-size:.68rem;position:absolute;bottom:16px;left:calc(50% + min(1120px,100% - 80px)/-2)}.button-row{flex-wrap:wrap;gap:14px;margin-top:34px;display:flex}.button{border:1px solid var(--navy);background:var(--navy);width:fit-content;min-height:48px;color:var(--white);letter-spacing:.035em;text-transform:uppercase;border-radius:4px;justify-content:center;align-items:center;gap:22px;padding:11px 18px;font-size:.84rem;font-weight:700;text-decoration:none;transition:background .15s,border-color .15s;display:inline-flex}.button:hover{background:#111c32;border-color:#111c32}.button--outline{color:var(--navy);background:0 0}.button--outline:hover{background:var(--navy);color:var(--white)}.text-link{color:var(--navy);letter-spacing:.04em;-webkit-text-decoration-color:var(--gold);text-decoration-color:var(--gold);text-underline-offset:5px;text-transform:uppercase;flex:none;align-items:center;gap:20px;font-size:.84rem;font-weight:700;display:inline-flex}.section{padding-block:108px}.section--white{background:var(--white)}.section--navy{background:var(--navy-dark);color:#e4e1da}.section--navy h2,.section--navy h3{color:var(--white)}.section--flush{padding-top:0}.section--intro{padding-block:96px}.intro-grid{grid-template-columns:165px 1fr;align-items:start;gap:50px;display:grid}.section-heading{justify-content:space-between;align-items:end;gap:40px;margin-bottom:54px;display:flex}.section-heading>div{max-width:690px}.section-heading h2{margin-bottom:0}.section-heading p:not(.eyebrow){max-width:620px;color:var(--slate);margin-top:20px}.service-grid{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid}.service-card{border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--white);min-height:290px;padding:34px 30px}.service-card__number{color:#725d3d;font-family:var(--serif);margin-bottom:46px;font-size:.9rem;display:block}.service-card p{color:var(--slate);font-size:.95rem}.split{grid-template-columns:minmax(280px,.9fr) minmax(420px,1.25fr);align-items:start;gap:clamp(60px,10vw,140px);display:grid}.split__heading{position:sticky;top:130px}.split__heading>p:not(.eyebrow){color:var(--slate)}.principle-list,.method-list{margin:0;padding:0;list-style:none}.principle-list li,.method-list li{border-top:1px solid var(--line);grid-template-columns:54px 1fr;gap:18px;padding-block:28px;display:grid}.principle-list li:last-child,.method-list li:last-child{border-bottom:1px solid var(--line)}.principle-list>li>span,.method-list>li>span{color:#725d3d;font-family:var(--serif);font-size:.92rem}.principle-list h3,.method-list h3{margin-bottom:6px}.principle-list p,.method-list p{color:var(--slate);margin:0;font-size:.94rem}.page-intro{background:var(--paper);padding-block:112px 122px}.page-intro h1{max-width:680px;margin-bottom:28px}.page-intro .lede{max-width:700px;margin-bottom:0}.offer-grid{border:1px solid var(--line);background:var(--line);grid-template-columns:1fr 1fr;gap:1px;display:grid;transform:translateY(-18px)}.offer-card{background:var(--white);padding:44px}.offer-card--lead{grid-column:1/-1}.offer-card--lead>p:not(.eyebrow),.offer-card--lead .plain-list{max-width:640px}.offer-card>p:not(.eyebrow){color:var(--slate)}.plain-list{margin:28px 0 0;padding:0;list-style:none}.plain-list li{border-top:1px solid #ebe6dc;padding:10px 0 10px 24px;font-size:.92rem;position:relative}.plain-list li:before{color:var(--teal);content:"—";position:absolute;left:0}.steps{border-top:1px solid #ffffff38;margin:42px 0 0;padding:0;list-style:none}.steps li{border-bottom:1px solid #ffffff38;grid-template-columns:72px 1fr;gap:24px;padding-block:28px;display:grid}.steps>li>span{color:var(--gold);font-family:var(--serif)}.steps h3{margin-bottom:5px}.steps p{color:#bbc2ca;margin:0}.audience{text-align:center}.audience .eyebrow{justify-content:center}.audience p:not(.eyebrow){color:var(--slate)}.audience .button{margin-top:28px}.prose-grid{grid-template-columns:165px 1fr;align-items:start;gap:50px;padding-block:80px 100px;display:grid}.prose-grid p:not(.eyebrow){color:var(--slate)}.values-band{padding-block:72px}.value-grid{border-top:1px solid #fff3;border-left:1px solid #fff3;grid-template-columns:repeat(4,1fr);margin-top:32px;display:grid}.value-grid p{min-height:118px;color:var(--white);font-family:var(--serif);border-bottom:1px solid #fff3;border-right:1px solid #fff3;align-items:end;margin:0;padding:24px;font-size:1.25rem;display:flex}.contact-grid{grid-template-columns:minmax(280px,.75fr) minmax(0,1.25fr);gap:clamp(60px,10vw,140px);padding-block:82px 110px;display:grid}.contact-details>a{width:fit-content;color:var(--navy);-webkit-text-decoration-color:var(--gold);text-decoration-color:var(--gold);text-underline-offset:4px;margin-block:8px 12px;font-weight:700;display:block}.contact-details>p:not(.eyebrow){color:var(--slate)}.privacy-note{border-top:1px solid var(--line);margin-top:56px;padding-top:26px}.privacy-note strong{color:var(--navy)}.privacy-note p{color:var(--slate);margin-top:8px;font-size:.86rem}.contact-card{border:1px solid var(--line);background:var(--paper);align-self:start;padding:clamp(30px,5vw,52px)}.contact-card h2{max-width:16ch;margin-block:12px 18px}.contact-card>p:not(.eyebrow){max-width:58ch;color:var(--slate)}.contact-card .button{margin-top:30px}.contact-card .contact-note{margin-top:16px;font-size:.78rem}.callout{border-top:1px solid var(--line)}.callout__inner{text-align:center}.callout__inner .eyebrow{justify-content:center}.callout__inner>p:not(.eyebrow){color:var(--slate)}.callout .button{margin-top:28px}.not-found{align-items:center;min-height:62vh;display:grid}.site-footer{background:var(--navy-dark);color:#c9cfd5;padding-top:64px;font-size:.82rem}.site-footer .brand__rideau{color:var(--white)}.site-footer .brand__labs{color:var(--logo-gold)}.footer-grid{grid-template-columns:.75fr 1fr 1fr;gap:60px;padding-bottom:54px;display:grid}.footer-location{margin-top:22px}.footer-mission{max-width:330px;color:var(--white);font-family:var(--serif);font-size:1.05rem;line-height:1.5}.footer-contact{text-align:right}.footer-contact a{width:fit-content;color:var(--white);-webkit-text-decoration-color:var(--gold);text-decoration-color:var(--gold);text-underline-offset:4px;margin-left:auto;display:block}.footer-contact a+a{margin-top:8px}.footer-contact p{margin-top:16px}.footer-base{color:#8f99a5;border-top:1px solid #ffffff24;justify-content:space-between;gap:24px;padding-block:22px;font-size:.72rem;display:flex}@media (width<=1023px){.hero{flex-direction:column;align-items:stretch;min-height:0;display:flex}.hero picture{order:2;display:block}.hero__image{object-fit:cover;object-position:50% 50%;width:100%;height:clamp(190px,36vw,340px);position:relative;left:auto;transform:none;-webkit-mask-image:linear-gradient(#0000,#000 22%);mask-image:linear-gradient(#0000,#000 22%)}.hero__content{padding-block:72px 8px}.hero__content>*{max-width:620px}}@media (width<=900px){.hero__credit{left:calc(50% + min(100% - 48px,720px)/-2)}.shell{width:min(100% - 48px,720px)}.service-grid{grid-template-columns:1fr}.service-card{min-height:0}.split{grid-template-columns:1fr;gap:52px}.split__heading{position:static}.value-grid{grid-template-columns:repeat(2,1fr)}.contact-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}}@media (width<=640px){body{font-size:17px}.shell,.narrow{width:calc(100% - 40px)}.nav-bar{gap:10px;min-height:76px}.brand__rideau{font-size:1.3rem}.brand__labs{letter-spacing:.3em;margin-top:4px;padding-top:4px;padding-left:.3em;font-size:.58rem}.nav-list{gap:0}.nav-list a{min-width:54px;padding-inline:5px;font-size:.71rem}.hero__content{padding-block:44px 4px}.hero__image{height:150px}.hero__credit{font-size:.62rem;bottom:10px;left:20px}.hero h1{font-size:2rem}.hero__copy{font-size:1rem}.button-row{flex-direction:column;align-items:stretch}.button-row .button{width:100%}.section{padding-block:76px}.section--intro{padding-block:68px}.intro-grid,.prose-grid{grid-template-columns:1fr;gap:16px}.section-heading{flex-direction:column;align-items:flex-start;margin-bottom:38px}.offer-grid,.value-grid,.footer-grid{grid-template-columns:1fr}.service-card__number{margin-bottom:28px}.offer-grid{transform:translateY(-8px)}.offer-card{padding:32px 26px}.page-intro{padding-block:82px 94px}.contact-grid{padding-block:64px 82px}.footer-grid>div:first-child{grid-column:auto}.footer-contact{text-align:left}.footer-contact a{margin-left:0}.footer-base{flex-direction:column}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
