@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap');
:root{--paper:#f7f6ee;--ink:#173c2e;--muted:#5b6b60;--line:#d7ddd1;--accent:#d5e6aa}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,select,textarea{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #af792c;outline-offset:5px}.skip{position:absolute;top:-70px;background:var(--ink);color:white;padding:15px;z-index:4}.skip:focus{top:0}header{max-width:1440px;margin:auto;padding:30px 6%;display:flex;align-items:center;gap:30px;border-bottom:1px solid var(--line)}.brand{font-family:Manrope,sans-serif;font-size:22px;font-weight:800;display:flex;align-items:center;letter-spacing:-1px;white-space:nowrap}.brand-dot{color:#7f9c52}.mark{width:26px;height:29px;margin-right:10px;display:flex;flex-direction:column;gap:4px}.mark i{display:block;width:23px;height:10px;border:2px solid var(--ink);transform:skewY(-20deg)}nav{display:flex;gap:30px;margin-left:auto;font-size:13px;font-weight:600}.nav-contact{border-bottom:1px solid var(--ink);padding-bottom:5px}.languages{display:flex;gap:6px;align-items:center;font-size:12px}.languages button{border:none;background:none;padding:5px;color:var(--muted)}.languages button[aria-pressed=true]{color:var(--ink);font-weight:bold}main{max-width:1440px;margin:auto}.hero{padding:65px 6% 60px;display:grid;grid-template-columns:1.05fr 1fr;align-items:center;min-height:670px;gap:25px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;margin:0 0 26px}h1,h2,h3{font-family:Manrope,sans-serif;letter-spacing:-2px;font-weight:500;margin:0}h1{font-size:clamp(46px,4.7vw,70px);line-height:1.1}em{font-family:Georgia,serif;font-weight:400}h1 em{letter-spacing:-2.5px}.lead{font-size:16px;line-height:1.8;max-width:465px;color:var(--muted);margin:28px 0 30px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;border:0;background:var(--ink);color:var(--paper);padding:17px 22px;font-size:13px;font-weight:600;transition:background .2s}.button:hover{background:#32614c}.button span{font-size:19px}.hero-note{font-size:11px;color:var(--muted);margin-top:25px}.architecture{background:#e9eddf;position:relative;border-radius:50% 50% 0 0;padding-top:15px}.architecture svg{display:block;width:100%}.art-caption{display:block;text-align:center;font-size:10px;letter-spacing:1px;padding:0 15px 23px}.intro-strip{margin:0 6%;padding:22px 0;display:flex;gap:6px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);align-items:center;font-size:13px}.intro-strip p{margin:0}.intro-strip p:nth-child(2){font-weight:bold}.intro-strip a{margin-left:auto;font-size:25px}.services,.examples{padding:95px 6%}.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:0 60px}.section-heading .eyebrow{grid-column:1/-1}.section-heading h2,h2{font-size:clamp(34px,3.3vw,48px);line-height:1.2}.section-heading>p:last-child{align-self:end;max-width:425px;color:var(--muted);font-size:15px;line-height:1.8;margin:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:55px}.service-grid article{padding:27px 30px 0;border-top:1px solid var(--line);border-right:1px solid var(--line)}.service-grid article:first-child{padding-left:0}.service-grid article:last-child{border-right:0;padding-right:0}.service-number{font-size:11px;color:var(--muted)}.service-icon{font-size:38px;margin:25px 0 20px}.service-grid h3{font-size:21px;letter-spacing:-.6px}.service-grid p{font-size:14px;line-height:1.8;color:var(--muted);min-height:100px}.service-grid ul{padding:20px 0 0;list-style:none;border-top:1px solid var(--line);font-size:12px;line-height:1.6}.service-grid li{margin:10px 0;display:flex;gap:9px}.service-grid li:before{content:'↗';color:#618146}.approach{background:var(--ink);color:var(--paper);padding:80px 6%;display:grid;grid-template-columns:1fr 1fr;gap:85px}.approach .eyebrow{color:#c0d393}.approach-intro>p:not(.eyebrow){font-size:15px;line-height:1.9;color:#c8d4ca;max-width:415px}.approach-intro>p.approach-end{font-size:12px;color:#d5e6aa;margin-top:30px}.levels article{display:flex;gap:25px;border-top:1px solid #4f6958;padding:24px 0}.levels article:last-child{border-bottom:1px solid #4f6958}.levels article>span{font-family:Georgia,serif;font-size:30px;color:#aac38a}.level-tag{font-size:9px;letter-spacing:2px;color:#c0d393;margin:0 0 12px}.levels h3{font-size:21px;letter-spacing:-.6px}.levels div>p:last-child{font-size:13px;line-height:1.7;color:#c8d4ca;margin-bottom:0}.questions{margin-top:40px;border-top:1px solid var(--line)}.questions button{width:100%;text-align:left;padding:23px 0;background:none;color:var(--ink);border:0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;font-size:21px;font-family:Manrope,sans-serif;letter-spacing:-.5px}.questions button:hover{color:#668341}.questions button>span:last-child{font-size:27px}.start{background:#e8edda;padding:65px 6%;display:grid;grid-template-columns:1fr 1fr;gap:85px}.start>div>p:last-child{max-width:410px;font-size:15px;line-height:1.8;color:var(--muted)}form label{display:block;font-size:12px;margin:0 0 10px;font-weight:600}select,textarea{border:1px solid #aebba7;background:#f7f8f0;color:var(--ink);border-radius:0;width:100%;padding:14px;margin-bottom:20px;font-size:13px}textarea{resize:vertical}form .button{width:100%}.form-note{font-size:10px;color:var(--muted);line-height:1.6}#form-status{font-size:12px}footer{max-width:1440px;margin:auto;padding:35px 6%;display:flex;align-items:center;justify-content:space-between;gap:25px}footer .brand{font-size:18px}footer p,footer>a:last-child{font-size:11px;color:var(--muted)}@media(min-width:1500px){body{border-left:1px solid var(--line);border-right:1px solid var(--line);max-width:1440px;margin:auto}}@media(max-width:950px){header{gap:15px}nav{gap:16px}nav a{font-size:11px}.brand{font-size:18px}.hero{min-height:auto;padding-top:50px;padding-bottom:50px}h1{font-size:45px}.lead{font-size:14px}.approach,.start{gap:40px}.service-grid article{padding-left:20px;padding-right:20px}.service-grid h3{font-size:18px}.service-grid p{min-height:150px}}@media(max-width:700px){header{padding:22px 6%;flex-wrap:wrap;justify-content:space-between}.languages{margin-left:auto}nav{order:3;width:100%;justify-content:space-between;margin:8px 0 0}.hero{grid-template-columns:1fr;gap:40px;padding-top:40px}h1{font-size:49px}.lead{font-size:15px;max-width:100%}.architecture{max-width:440px;width:100%;justify-self:center}.intro-strip{font-size:11px;flex-wrap:wrap;gap:7px}.intro-strip a{margin-top:-25px}.section-heading{grid-template-columns:1fr;gap:20px}.section-heading .eyebrow{margin-bottom:0}.section-heading>p:last-child{max-width:100%}.services,.examples{padding:60px 6%}.service-grid{grid-template-columns:1fr;margin-top:35px;gap:20px}.service-grid article,.service-grid article:first-child,.service-grid article:last-child{padding:22px 0;border-right:0}.service-grid p{min-height:auto}.service-icon{float:right;margin:0}.service-grid h3{font-size:24px;margin-top:25px}.service-grid ul{padding-top:10px}.approach,.start{grid-template-columns:1fr;padding:55px 6%;gap:30px}.questions button{font-size:17px;line-height:1.5}footer{flex-wrap:wrap}footer p{width:100%;order:3;margin:0}footer>a:last-child{margin-left:auto}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Organic contours and gold detailing, inspired by Art Nouveau. */
:root{--paper:#f7f4e9;--ink:#13271e;--muted:#586559;--line:#d6cfb6;--accent:#bc9650}
h1,h2{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;letter-spacing:-1.8px}h1{font-size:clamp(56px,5.8vw,84px);line-height:.99}h2,.section-heading h2{font-size:clamp(40px,4vw,58px);line-height:1.05}em{font-family:'Cormorant Garamond',Georgia,serif;color:#8d6c31}h1 em{letter-spacing:-2px}.brand-dot,.service-number,.service-icon{color:#97753b}.mark i{border-color:#97753b;border-radius:5px 0}.eyebrow{color:#88703e}.button{background:#161c18;border:1px solid #b99752;border-radius:28px 3px 28px 3px;padding:17px 25px}.button:hover{background:#28523b}.architecture{background:#e8ebdc;border:1px solid #b59c66;border-radius:50% 50% 3px 3px;overflow:hidden;box-shadow:inset 0 0 0 9px var(--paper),inset 0 0 0 10px #c6b17d}.architecture:before,.architecture:after{content:'';position:absolute;border:1px solid #ba9a59;border-radius:50%;width:140px;height:340px;bottom:-115px;pointer-events:none}.architecture:before{left:-70px;transform:rotate(-30deg)}.architecture:after{right:-70px;transform:rotate(30deg)}.architecture svg{position:relative;z-index:1}.art-caption{position:relative;z-index:1;color:#746039}.intro-strip{border-color:#b89d65}.approach{background:#142d22;position:relative}.approach:before{content:'';position:absolute;left:0;top:0;height:100%;width:12px;border-left:1px solid #bd9c59;border-right:1px solid #bd9c59;margin-left:16px;opacity:.45;pointer-events:none}.approach em{color:#cfad6a}.approach .eyebrow,.approach-intro>p.approach-end,.level-tag,.levels article>span{color:#cfad6a}.levels article{border-color:#6d7655}.start{background:#e7ead9;border-top:1px solid #b89d65;border-bottom:1px solid #b89d65}.start em{color:#8d6c31}.questions button>span:last-child{color:#97753b}select,textarea{border-color:#bbb18e;border-radius:12px 2px 12px 2px}.service-grid li:before{color:#97753b}.service-icon{font-family:Georgia,serif}.section-heading{position:relative}.section-heading:after{content:'';width:70px;height:12px;border-bottom:1px solid #b99752;border-radius:50%;position:absolute;top:-22px;right:0}footer{background:#171d19;color:#eee8d5}footer p,footer>a:last-child{color:#c0c5b7}@media(max-width:950px){h1{font-size:60px}}@media(max-width:700px){h1{font-size:62px}.approach:before{display:none}h2,.section-heading h2{font-size:44px}}@media(max-width:380px){h1{font-size:52px}}

/* A softer, organic illustration; labels occupy their own space. */
.architecture{background:transparent;border:0;border-radius:0;box-shadow:none;padding-top:0;overflow:visible}.architecture:before,.architecture:after{display:none}.architecture svg{width:100%;display:block}.art-legend{display:flex;justify-content:center;gap:22px;position:relative;font-size:11px;letter-spacing:1px;padding:5px 10px 16px;color:#496346}.art-legend span+span:before{content:'·';color:#b09050;position:relative;left:-11px}.art-caption{padding:0 15px 15px;letter-spacing:.5px;color:#69745e;font-size:10px}@media(max-width:700px){.art-legend{gap:20px;font-size:10px}}

/* Blog index and long-form reading. */
.blog-section{padding:80px 6% 95px;border-top:1px solid var(--line)}.blog-card{display:grid;grid-template-columns:190px 1fr;gap:40px;margin-top:42px;padding:36px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.blog-date{display:flex;flex-direction:column;gap:12px;font-size:12px;color:#8d6c31}.blog-date>span{font-size:10px;letter-spacing:1px;color:var(--muted)}.blog-card h3{font-family:'Cormorant Garamond',Georgia,serif;font-size:36px;line-height:1.15;letter-spacing:-.6px}.blog-card p{max-width:650px;line-height:1.8;font-size:14px;color:var(--muted)}.blog-read{font-size:12px;border-bottom:1px solid #b99752;padding-bottom:4px;display:inline-block;margin-top:8px}.blog-card:hover .blog-read{color:#8d6c31}.blog-article{padding:45px 6% 85px}.blog-back{font-size:12px;display:inline-block;border-bottom:1px solid var(--line);padding-bottom:5px}.article-heading{max-width:820px;margin:55px auto 40px}.article-heading h1{font-size:clamp(44px,5vw,67px);line-height:1.06}.article-lead{font-size:18px;line-height:1.8;color:var(--muted);margin-top:28px}.article-body{max-width:720px;margin:auto}.article-body h2{font-size:34px;margin:42px 0 20px;letter-spacing:-.7px}.article-body p{font-size:16px;line-height:1.95;color:var(--muted)}.article-takeaway{margin:38px 0;padding:22px 28px;border-left:2px solid #b99752;background:#e9eddf;font-family:'Cormorant Garamond',Georgia,serif;font-size:29px;line-height:1.35}.article-next{margin-top:45px;padding-top:20px;border-top:1px solid var(--line)}.blog-article~footer{margin-top:0}header:has(+main .blog-article) .languages{margin-left:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:950px){header nav{gap:12px}.blog-card{grid-template-columns:150px 1fr;gap:25px}}@media(max-width:700px){.blog-section{padding:55px 6%}.blog-card{grid-template-columns:1fr;gap:22px;padding:28px 0}.blog-date{flex-direction:row;justify-content:space-between}.blog-card h3{font-size:31px}.blog-article{padding-top:30px}.article-heading{margin-top:38px}.article-lead{font-size:16px}.article-body h2{font-size:30px}.article-takeaway{padding:20px;font-size:26px}}

.story-tools{margin:25px 0 18px}.story-tools>p{font-size:10px!important;letter-spacing:1px;margin:0 0 12px;line-height:1.5;color:var(--muted)}.story-tools ul{display:flex;flex-wrap:wrap;gap:9px;list-style:none;margin:0;padding:0}.story-tools li{display:inline-flex;align-items:center;gap:8px;background:#f0f0e4;border:1px solid #dbddcd;border-radius:18px;padding:7px 13px 7px 8px;font-size:11px;color:var(--ink)}.tool-monogram{display:grid;place-items:center;width:21px;height:21px;border-radius:6px;font-size:12px;font-weight:700}.note-tool{background:#e7ddec;color:#744483}.todo-tool{background:#f0dfd6;color:#a94e3a}.mail-tool{background:#e8e1cf;color:#886536}.calendar-tool{background:#dce6dc;color:#3e715d}.blog-card .story-tools{margin:20px 0}.blog-card .story-tools>p{font-size:9px!important}

form input:not([type=hidden]){width:100%;padding:14px;margin-bottom:20px;border:1px solid #bbb18e;border-radius:12px 2px 12px 2px;background:#f7f8f0;color:var(--ink);font-size:13px}input:focus-visible{outline:3px solid #af792c;outline-offset:5px}form .spam-trap{display:none!important}.form-note a{text-decoration:underline;text-underline-offset:3px}

.languages a{padding:5px;color:var(--muted)}.languages a[aria-current=page]{color:var(--ink);font-weight:bold}.button:disabled{opacity:.6;cursor:not-allowed}
