:root{--bg: #f5f0ec;--teal: #0c5c63;--teal-deep: #0a4a50;--text: #4b5563;--ink: #000000;--ink-strong: #111827;--on-dark: #ffffff;--on-dark-muted: #d9d9d9;--on-teal-muted: rgba(245, 240, 236, .82);--rule: #e6e6e6;--header-edge: rgba(12, 92, 99, .08);--font: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--fs-hero: clamp(25.5px, calc(17.119px + 2.569vw) , 62.9px);--fs-title: clamp(20.4px, calc(17.654px + 1.127vw) , 37.74px);--fs-h3: clamp(15.3px, calc(13.252px + .668vw) , 25.16px);--fs-lg: clamp(15.5px, calc(13.4px + .45vw) , 20.655px);--fs-md: clamp(14px, calc(10.88px + .439vw) , 18.7px);--fs-sm: clamp(14px, calc(11.585px + .275vw) , 16.49px);--fs-link: clamp(14px, calc(11.84px + .275vw) , 16.745px);--fs-post: clamp(14px, calc(12.537px + .131vw) , 14.875px);--fs-cta-link: clamp(14.03px, calc(13.149px + .321vw) , 18.87px);--fs-legal: clamp(13px, calc(10.013px + .249vw) , 14.45px);--fs-nav: clamp(14px, calc(7.353px + .527vw) , 16.745px);--gutter: clamp(16px, calc(6.4vw - 15px) , 99px);--inset: 0px;--section-gap: clamp(96px, calc(111.5px + 2.775vw) , 161px);--sp-sm: clamp(12px, 1.35vw, 24px);--header-h: clamp(68px, 5.6vw, 100px);--logo-h: clamp(22px, calc(21.1px + .486vw) , 30px);--col-gap: clamp(32px, calc(4.64vw - 3.6px) , 79px);--grid-gap: 40px}@media(min-width:768px){:root{--inset: clamp(24px, calc(11.9px + 1.578vw) , 40px)}}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 16px);-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:var(--fs-sm);line-height:1.65;-webkit-font-smoothing:antialiased}img,svg{display:block;max-width:100%}h1,h2,h3,p,ul,figure{margin:0}ul{padding:0;list-style:none}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--teal);outline-offset:3px}.on-dark :focus-visible,.site-footer :focus-visible{outline-color:#fff}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.wrap{padding-left:max(var(--gutter),env(safe-area-inset-left,0px));padding-right:max(var(--gutter),env(safe-area-inset-right,0px))}.inset{padding-inline:var(--inset)}h2{font-size:var(--fs-title);line-height:1.2;font-weight:600;color:var(--teal);letter-spacing:-.005em}h3{font-size:var(--fs-h3);line-height:1.4;font-weight:600;color:var(--teal)}.body-lg{font-size:var(--fs-lg);line-height:1.52}.body-lg p+p,.body-sm p+p{margin-top:1.55em}.body-sm{font-size:var(--fs-sm);line-height:1.53}h2+.body-lg{margin-top:var(--sp-sm)}.link-arrow{display:inline-flex;align-items:center;gap:.5em;font-weight:600;font-size:var(--fs-link);line-height:1.4;color:var(--teal)}.link-arrow svg{width:1.15em;height:1.15em;flex:none;transition:transform .2s ease}.link-arrow:hover svg{transform:translate(3px)}.link-arrow--up:hover svg{transform:translate(2px,-2px)}.link-arrow:hover span{opacity:.7}body:before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:30;background:var(--bg)}.site-header{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:var(--bg);box-shadow:0 1px 0 var(--header-edge)}.site-header .wrap{height:var(--header-h);display:flex;align-items:center;justify-content:space-between;position:relative}.logo{display:block;height:var(--logo-h);width:calc(var(--logo-h) * 9.68);color:var(--ink);flex:none}.logo svg{width:100%;height:100%}.menu-toggle{width:44px;height:44px;margin-right:-10px;display:grid;place-items:center;background:none;border:0;padding:0;cursor:pointer;color:#52525b;border-radius:4px}.menu-toggle svg{width:30px;height:30px}.menu-toggle .icon-close,.menu-open .menu-toggle .icon-open{display:none}.menu-open .menu-toggle .icon-close{display:block}.primary-nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--bg);box-shadow:0 12px 24px -12px #0c5c6340;padding:8px max(var(--gutter),env(safe-area-inset-left,0px)) 24px}.menu-open .primary-nav{display:block}.primary-nav ul{display:flex;flex-direction:column}.primary-nav a{display:block;padding:14px 0;font-size:20px;line-height:1.3;font-weight:600;color:var(--teal);border-bottom:1px solid var(--header-edge)}.primary-nav a:hover{opacity:.7}.hero-wrap{margin-top:clamp(64px,calc(58.8px + 1.08vw),78px)}.hero{position:relative;display:flex;flex-direction:column;justify-content:center;aspect-ratio:455 / 485;overflow:clip;color:#fff;isolation:isolate}.hero__media{position:absolute;inset:0;z-index:-1;background:#2e6c68 url(/img/hero-poster.jpg) center / cover no-repeat}.hero__media video,.hero__media iframe{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border:0}.hero__media:after{content:"";position:absolute;inset:0;background:#0c5c6357;pointer-events:none}.hero__content{padding:44px 32px 26px;display:flex;flex-direction:column;gap:33px;align-items:flex-start}.hero h1{font-size:var(--fs-hero);line-height:1.2;font-weight:400;color:#fff;max-width:16.5em;text-wrap:pretty}.hero .link-arrow{color:#fff;font-size:var(--fs-cta-link)}.lead{margin-top:clamp(60px,calc(47.8px + 1.75vw),80px);font-size:var(--fs-title);line-height:1.41;font-weight:600;color:var(--teal);max-width:1280px;text-wrap:pretty}.section{margin-top:var(--section-gap)}.grid-2{display:grid;grid-template-columns:minmax(0,1fr);row-gap:48px}.offer .grid-2{row-gap:32px}.expertise__text .body-lg{margin-top:var(--sp-sm)}.expertise__text p+p{margin-top:1.55em}.expertise__img img{width:100%;height:auto;aspect-ratio:1152 / 1308;object-fit:cover;background:#cfd8dc}.offer{padding-bottom:clamp(62px,calc(62.3px + 1.39vw),87px)}.offer__items{display:grid;gap:72px}.offer__items h3+p{margin-top:8px}.team{padding-bottom:clamp(30px,calc(28px + .617vw),39px)}.team h2{margin-bottom:clamp(80px,5.6vw,100px)}.team__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:76px}.person img{width:100%;height:auto;aspect-ratio:3 / 2;object-fit:cover;background:#cfd8dc}.person h3{margin-top:var(--sp-sm);line-height:1.2}.person__role{margin-top:6px;font-size:var(--fs-md);line-height:1.25;font-weight:600;color:var(--text)}.person .body-sm{margin-top:var(--sp-sm)}.ph{position:relative;display:block;overflow:hidden;background:linear-gradient(135deg,#6f8f93,#4d6b70)}.ph__label{position:absolute;left:8px;bottom:8px;font-size:11px;line-height:1.2;letter-spacing:.04em;padding:4px 7px;background:#00000073;color:#fff;border-radius:2px;max-width:calc(100% - 16px)}.ph--a{background:linear-gradient(160deg,#5f7a52,#8a7a62 45%,#5d6f7a)}.ph--b{background:linear-gradient(160deg,#6b8a6a,#7d8a73 40%,#8a6f5e)}.ph--c{background:linear-gradient(160deg,#7b8f9c,#6a7d63 55%,#826a58)}.ph--d{background:linear-gradient(160deg,#50607a,#3b4560 55%,#2a3042)}.ph--e{background:linear-gradient(160deg,#6f8a5a,#8b8f6a,#6a7a86)}.ph--teal{background:var(--teal)}.verse__grid{margin-top:clamp(60px,calc(50px + 1.7vw),80px);display:grid;grid-template-columns:minmax(0,1fr);gap:46px}.featured__box{aspect-ratio:1 / 1;background:var(--bg)}.featured__img{display:block;width:100%;height:100%}.featured h3{margin-top:30px}.featured .link-arrow{margin-top:20px}.featured a.featured__title:hover{opacity:.7}.post-list{display:grid;gap:24px}.post{display:grid;grid-template-columns:48% minmax(0,1fr);gap:15px;align-items:center}.post .ph,.post .thumb{aspect-ratio:2 / 1;width:100%;height:auto;display:block;object-fit:cover}.post h3{font-size:var(--fs-post);line-height:1.5}.post:hover h3{opacity:.7}.verse__side .link-arrow{margin-top:60px}.projects__intro{max-width:950px}.projects__intro .body-lg{margin-top:var(--sp-sm)}.proj{container-type:inline-size;margin-top:clamp(48px,calc(36px + 2.47vw),80px)}.carousel{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;margin-right:calc(-1*max(var(--gutter),env(safe-area-inset-right,0px)));padding-right:max(var(--gutter),env(safe-area-inset-right,0px));scrollbar-width:none;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}.carousel::-webkit-scrollbar{display:none}.card{flex:none;width:max(240px,75cqw);scroll-snap-align:start}.card .ph,.card__img{aspect-ratio:3 / 2;width:100%;height:auto;display:block;object-fit:cover}.card h3{margin-top:clamp(24px,2.2vw,39px);font-size:clamp(16px,calc(13.8px + .43vw),20.4px);font-weight:700}.card p{margin-top:8px}.card .body-sm{font-size:clamp(13px,calc(10.54px + .23vw),14.45px)}.card__todo{font-style:italic}.carousel-controls{display:flex;justify-content:flex-end;gap:8px;margin-top:clamp(98px,calc(75.6px + 4.63vw),158px)}.circle-btn{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;cursor:pointer;background:transparent;color:var(--teal);border:1.5px solid var(--teal);transition:background-color .2s ease,color .2s ease,opacity .2s ease}.circle-btn svg{width:20px;height:20px}.circle-btn:hover{background:var(--teal);color:#fff}.cta{margin-top:clamp(62px,calc(56.4px + 1.157vw),77px);background:var(--teal);color:#fff;text-align:center}.cta__inner{padding-block:clamp(64px,calc(34px + 5.9vw),144px);display:flex;flex-direction:column;align-items:center}.cta h2{color:#fff;font-size:var(--fs-title);line-height:1.36;font-weight:600;max-width:20em}.cta p{margin-top:clamp(14px,1.2vw,21px);font-size:var(--fs-md);line-height:1.5;color:var(--on-teal-muted);max-width:40em}.cta .link-arrow{margin-top:clamp(44px,3.4vw,60px);color:#fff;font-size:var(--fs-cta-link)}.site-footer{background:var(--ink);color:var(--on-dark)}.site-footer .wrap>.inset{padding-top:clamp(40px,calc(26px + 3vw),79px);padding-bottom:56px}.site-footer .logo{color:#fff}.footer__tag{margin-top:clamp(36px,calc(30px + 1vw),50px);font-size:var(--fs-md);line-height:1.5;color:var(--on-dark-muted);max-width:700px}.footer__links{margin-top:clamp(26px,calc(20px + 1.1vw),40px);display:grid;grid-template-columns:1fr 1fr;column-gap:30px;row-gap:15px;max-width:480px}.footer__links a{font-size:var(--fs-link);font-weight:600;line-height:1.25;color:#fff}.footer__links a:hover,.legal a:hover{opacity:.7}.rics{display:block;margin-top:clamp(29px,calc(22px + 1vw),42px);width:clamp(100px,7.3vw,130px);height:auto;aspect-ratio:105 / 39;color:#fff}.footer__bottom{margin-top:clamp(48px,calc(32px + 2.5vw),80px);padding-top:clamp(27px,calc(21.8px + 1.08vw),41px);border-top:1px solid var(--on-dark-muted);display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center}.legal{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 16px;font-size:var(--fs-legal);line-height:1.4;color:var(--on-dark-muted)}.copy{font-size:var(--fs-legal);line-height:1.4;color:var(--on-dark-muted)}.footer__bottom .copy{order:3}@media(min-width:768px){.hero{aspect-ratio:3 / 2;justify-content:flex-end}.hero__content{padding-top:var(--inset);padding-left:var(--inset);padding-right:var(--inset);padding-bottom:clamp(32px,calc(24px + 1.5vw),56px);gap:clamp(33px,calc(10px + 3.4vw),65px)}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--col-gap);row-gap:32px;align-items:start}.offer__items{gap:clamp(72px,calc(65.3px + 1.39vw),90px)}.cta h2{line-height:1.3}.team__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--grid-gap)}.person img{aspect-ratio:33 / 20}.post{grid-template-columns:clamp(220px,30vw,280px) minmax(0,1fr);gap:20px}.post .ph,.post .thumb{aspect-ratio:5 / 3}.post-list{gap:20px}.carousel{gap:40px}.card{width:45cqw}.circle-btn{width:clamp(46px,4.2vw,60px);height:clamp(46px,4.2vw,60px);border-width:2px}.carousel-controls{gap:20px}.footer__links{display:flex;flex-wrap:wrap;column-gap:40px;max-width:none}.footer__bottom{flex-direction:row;justify-content:space-between;align-items:center;flex-wrap:wrap;text-align:left;gap:14px 24px}.footer__bottom .copy{order:0}.legal{order:1;justify-content:flex-end}}@media(min-width:1024px){.hero{aspect-ratio:2.56 / 1}.lead{line-height:1.31}.menu-toggle{display:none}.primary-nav{display:block;position:static;padding:0;box-shadow:none;background:none;margin-right:-20px;margin-right:calc(-1*clamp(10px,1.12vw,20px))}.primary-nav ul{flex-direction:row}.primary-nav a{border:0;padding:8px clamp(10px,.952vw,17px);font-size:var(--fs-nav);line-height:1.3}.verse__grid{grid-template-columns:minmax(0,2fr) minmax(0,1fr);column-gap:40px;align-items:start}.post{grid-template-columns:48% minmax(0,1fr);gap:20px}.post-list{gap:20px}.post h3{margin-block:-8px}.card{width:calc((100cqw - 120px) / 3)}}.primary-nav a[aria-current=page]{color:var(--ink)}.contact__top{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(40px,5vw,80px);margin-top:clamp(20px,2vw,32px)}.contact h1{font-size:var(--fs-title);line-height:1.2;font-weight:600;color:var(--ink-strong)}.contact__lead{margin-top:clamp(16px,1.6vw,26px);font-size:var(--fs-lg);line-height:1.5;color:var(--text)}.contact__lead a{color:var(--teal);font-weight:600}.contact__lead a:hover{opacity:.7}.cform{margin-top:clamp(32px,3.2vw,52px);display:grid;gap:clamp(18px,1.6vw,26px)}.cform label.lbl{display:block;font-size:var(--fs-sm);line-height:1.3;font-weight:600;color:var(--ink-strong);margin-bottom:8px}.cform input[type=text],.cform input[type=email],.cform textarea{width:100%;font:inherit;font-size:var(--fs-md);line-height:1.4;color:var(--ink-strong);background:#fff;border:1px solid #d9d9d9;border-radius:6px;padding:11px 14px}.cform textarea{min-height:clamp(130px,12vw,190px);resize:vertical}.cform ::placeholder{color:#6b7280;opacity:1}.cform input:focus-visible,.cform textarea:focus-visible{outline:2px solid var(--teal);outline-offset:1px;border-color:var(--teal)}.cform__agree{display:flex;align-items:center;gap:12px;font-size:var(--fs-sm);color:var(--text)}.cform__agree input{appearance:none;flex:none;width:20px;height:20px;margin:0;border:1px solid #cfcfcf;border-radius:5px;background:#fff;display:grid;place-content:center}.cform__agree input:checked{background:var(--teal);border-color:var(--teal)}.cform__agree input:checked:after{content:"";width:5px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg) translate(-1px,-1px)}.cform__agree a{text-decoration:underline;text-underline-offset:3px}.cform__btn{width:100%;font-size:var(--fs-md);font-weight:600;color:var(--teal);background:transparent;border:1px solid var(--teal);border-radius:6px;padding:11px 16px;cursor:pointer;transition:background .2s ease,color .2s ease}.cform__btn:hover{background:var(--teal);color:#fff}.cform__note{font-size:var(--fs-sm);line-height:1.5;color:var(--teal);border:1px dashed var(--teal);padding:10px 14px}.tally-slot iframe{display:block;width:100%;border:0;min-height:420px;overflow:hidden}.contact__img{display:block;width:100%;height:auto;aspect-ratio:4 / 3;object-fit:cover}.contact__img .ph__label{font-size:13px}.contact__info{margin-top:clamp(64px,8vw,128px);display:grid;grid-template-columns:minmax(0,1fr);gap:40px;align-items:start}.eyebrow{font-size:var(--fs-sm);line-height:1.3;font-weight:600;color:var(--teal)}.contact__info h2{color:var(--ink-strong);margin-top:clamp(12px,1.2vw,20px)}.contact__info .body-lg{margin-top:clamp(14px,1.4vw,22px)}.cinfo{display:grid;gap:clamp(24px,2.4vw,40px)}.cinfo li{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:16px;align-items:start}.cinfo__icon{grid-row:1 / span 2;width:clamp(40px,3.7vw,56px);height:clamp(40px,3.7vw,56px);border-radius:50%;background:#e6e2de;display:grid;place-items:center;color:var(--teal)}.cinfo__icon svg{width:46%;height:46%}.cinfo h3{color:var(--ink-strong);font-size:var(--fs-lg);line-height:1.3;font-weight:600}.cinfo p,.cinfo a{margin-top:6px;font-size:var(--fs-sm);line-height:1.55;font-weight:600;color:var(--teal)}.cinfo a:hover{opacity:.7}.contact .cta{margin-top:0}@media(min-width:768px){.contact__img{aspect-ratio:541 / 594}.contact__top{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(32px,4.7vw,80px);align-items:start}.contact__info{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(32px,4.7vw,80px)}.cinfo{padding-left:clamp(0px,6.4vw,100px)}}.page{margin-top:clamp(56px,calc(46px + 2.4vw),96px);padding-bottom:clamp(80px,calc(56px + 5vw),140px)}.page-title{font-size:var(--fs-title);line-height:1.2;font-weight:600;color:var(--teal);margin-top:clamp(20px,2vw,32px)}.page-meta{font-size:var(--fs-sm);color:var(--text);margin-top:clamp(20px,2vw,32px)}.page-meta+.page-title{margin-top:12px}.page-title+.body-lg{margin-top:var(--sp-sm)}.link-arrow--back svg{order:-1}.link-arrow--back:hover svg{transform:translate(-3px)}.news-page .page-title{font-size:clamp(25.5px,calc(17.85px + 1.87vw),59.5px)}.news-list{display:grid;gap:clamp(48px,5vw,100px);margin-top:clamp(48px,calc(36px + 2.47vw),96px)}.news-card a{display:grid;gap:20px;align-items:center;grid-template-columns:minmax(0,1fr)}.news-card__img{display:block;width:100%;height:auto;object-fit:cover}.news-card h2{font-size:clamp(17.85px,calc(12.75px + 1.147vw),32.3px);line-height:1.4;font-weight:600;color:var(--ink-strong)}.news-card__ex{margin-top:14px;font-size:clamp(14px,calc(10.2px + .595vw),17.85px);line-height:1.65;color:var(--text)}.news-card__by{margin-top:20px;font-size:clamp(13px,calc(9.35px + .425vw),17px);line-height:1.5;color:var(--text)}.news-card__by b{display:block;font-weight:600;color:var(--ink-strong)}.news-card a:hover h2{opacity:.7}@media(min-width:768px){.news-card a{grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);gap:clamp(20px,3.7vw,72px)}}.article__photo{display:block;width:100%;max-width:960px;height:auto;margin-top:clamp(32px,3.4vw,56px)}.article__by{display:block;font-weight:600;color:var(--ink-strong)}.article__body p+p{margin-top:1em}.article__rest{margin-top:1.4em;font-size:var(--fs-sm);line-height:1.65;color:var(--text)}.article__rest:empty{display:none}.article__body:empty{display:none}.article__body:empty+.article__rest{margin-top:clamp(32px,3.4vw,56px)}.article__rest p+p,.article__rest ul+p,.article__rest p+ul{margin-top:1em}.article__rest .article__sub{font-weight:600;color:var(--ink-strong);margin-top:1.8em}.article__rest .article__sub:first-child{margin-top:0}.article__rest ul{padding-left:1.3em;list-style:disc}.article__rest li+li{margin-top:.3em}.legal-body{gap:clamp(28px,3vw,44px)}.legal-body h2{font-size:var(--fs-lg);line-height:1.3;margin-bottom:12px}.clause{display:grid;grid-template-columns:3.4em minmax(0,1fr);column-gap:.4em;margin-top:.9em;overflow-wrap:anywhere}.clause .num{color:var(--teal);font-weight:600;font-variant-numeric:tabular-nums}.clause--sub{margin-left:3.8em;grid-template-columns:2.4em minmax(0,1fr);margin-top:.55em}.clause--cont{margin-left:3.8em;grid-template-columns:0 minmax(0,1fr)}.legal-body a{color:var(--teal);text-decoration:underline;text-underline-offset:3px}@media(max-width:479px){.clause{grid-template-columns:2.8em minmax(0,1fr)}.clause--sub,.clause--cont{margin-left:1.4em}}.legal-page .inset{max-width:calc(760px + 2 * var(--inset));margin-inline:0}.draft-note{margin-top:24px;padding:12px 16px;border:1px dashed var(--teal);color:var(--teal);font-size:var(--fs-sm);line-height:1.5}.legal-body{margin-top:clamp(32px,3vw,48px);display:grid;gap:28px;font-size:var(--fs-sm);line-height:1.65}.legal-body h2{font-size:var(--fs-h3);line-height:1.3;margin-bottom:6px}.cookie-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm);min-width:480px}.cookie-table th,.cookie-table td{text-align:left;padding:10px 12px;border-bottom:1px solid rgba(12,92,99,.2)}.cookie-table th{color:var(--teal);font-weight:600}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}.article__photo+.article__body{margin-top:clamp(24px,2.4vw,40px)}.article__rest+.article__nav,.article__body+.article__nav{margin-top:clamp(40px,4vw,64px)}.article__rest a{color:var(--teal);font-weight:600;text-decoration:underline;text-underline-offset:3px}
