:root{--color-primary:#006b6b;--color-primary-dark:#00494b;--color-primary-deep:#003638;--color-primary-light:#4f9694;--color-neutral-900:#172525;--color-neutral-700:#566363;--color-neutral-500:#8a9494;--color-neutral-200:#dce2e2;--color-neutral-100:#f3f6f6;--color-white:#fff;--navbar-height:88px;color:var(--color-white);background:var(--color-primary-deep);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*,:before,:after{box-sizing:border-box}html,body,#root{width:100%;min-width:0;min-height:100%}html{scrollbar-gutter:stable;scroll-behavior:smooth;overflow:hidden scroll}body{min-width:320px;margin:0;overflow-x:hidden}#root{width:100%;min-height:100%}button,a{font:inherit}section[id]{scroll-margin-top:calc(var(--navbar-height) + 16px)}@media (width<=768px){:root{--navbar-height:72px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}#root{min-height:100svh}.footer{background:var(--color-primary-deep);color:#ffffffc2;border-top:1px solid #ffffff1f;padding-top:clamp(56px,6vw,88px);padding-bottom:28px}.footer__container{width:100%;max-width:1600px;margin:0 auto;padding-inline:clamp(40px,4vw,72px)}.footer__grid{grid-template-columns:minmax(260px,1.5fr) minmax(150px,.75fr) minmax(190px,.9fr) minmax(170px,.75fr);align-items:start;gap:clamp(40px,5vw,80px);display:grid}.footer__brand{min-width:0}.footer__company-name{color:var(--color-white);letter-spacing:.035em;margin:0 0 18px;font-size:clamp(1.25rem,1.5vw,1.6rem);font-weight:600;line-height:1.25}.footer__description{color:#ffffffb8;max-width:36ch;margin:0;font-size:.98rem;line-height:1.7}.footer__heading{color:var(--color-white);letter-spacing:.16em;text-transform:uppercase;margin:0 0 20px;font-size:.82rem;font-weight:700;line-height:1.3}.footer__list{gap:13px;margin:0;padding:0;list-style:none;display:grid}.footer__list a,.footer__address a,.footer__top-link{color:#ffffffc7;text-decoration:none;transition:color .18s}.footer__list a:hover,.footer__address a:hover,.footer__top-link:hover{color:var(--color-white)}.footer__list a:focus-visible,.footer__address a:focus-visible,.footer__top-link:focus-visible{outline:3px solid var(--color-primary-light);outline-offset:4px}.footer__address{gap:13px;margin:0;font-style:normal;display:grid}.footer__address a,.footer__address span,.footer__list a{overflow-wrap:anywhere;font-size:.98rem;line-height:1.55}.footer__bottom{border-top:1px solid #ffffff1a;justify-content:space-between;align-items:center;gap:24px;margin-top:clamp(48px,6vw,72px);padding-top:24px;display:flex}.footer__bottom p{color:#ffffff9e;margin:0;font-size:.9rem;line-height:1.5}.footer__top-link{letter-spacing:.12em;flex:none;font-size:.78rem;font-weight:700;line-height:1.3}@media (width<=999px){.footer__container{padding-inline:32px}.footer__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=619px){.footer{padding-top:52px}.footer__container{padding-inline:20px}.footer__grid{grid-template-columns:1fr;gap:36px}.footer__list a,.footer__address a,.footer__address span{align-items:center;min-height:32px;display:inline-flex}.footer__bottom{flex-direction:column;align-items:flex-start;gap:16px}}.navbar,.navbar *,.navbar :before,.navbar :after{box-sizing:border-box}.navbar{z-index:1000;height:var(--navbar-height);-webkit-backdrop-filter:blur(14px);background:#ffffffd9;border-bottom:1px solid #00494b1f;position:fixed;top:0;left:0;right:0;box-shadow:0 1px 12px #1024240d}.navbar__container{justify-content:space-between;align-items:center;gap:32px;width:min(100%,1600px);height:100%;margin:0 auto;padding-inline:clamp(40px,4vw,72px);display:flex}.navbar__brand{flex:none;align-items:center;text-decoration:none;display:inline-flex}.navbar__logo{width:clamp(170px,15vw,220px);max-width:100%;height:auto;display:block}.navbar__links{justify-content:flex-end;align-items:center;gap:clamp(20px,2vw,36px);min-width:0;display:flex}.navbar__link{color:var(--color-neutral-900);letter-spacing:.08em;text-transform:uppercase;font-size:.8125rem;font-weight:600;line-height:1;text-decoration:none;transition:color .18s;position:relative}.navbar__link:after{content:"";background:var(--color-primary);transform-origin:50%;height:2px;transition:transform .18s;position:absolute;bottom:-8px;left:0;right:0;transform:scaleX(0)}.navbar__link:hover{color:var(--color-primary)}.navbar__link:hover:after,.navbar__link--active:after{transform:scaleX(1)}.navbar__link--active{color:var(--color-primary)}.navbar__link:focus-visible,.navbar__brand:focus-visible,.navbar__toggle:focus-visible{outline:3px solid var(--color-primary-light);outline-offset:4px}.navbar__link--primary{min-height:42px;color:var(--color-white);background:var(--color-primary);border:1px solid var(--color-primary);border-radius:2px;justify-content:center;align-items:center;padding:0 18px;display:inline-flex}.navbar__link--primary:after{display:none}.navbar__link--primary:hover{color:var(--color-white);background:var(--color-primary-dark);border-color:var(--color-primary-dark)}.navbar__toggle{width:44px;height:44px;color:var(--color-primary-dark);cursor:pointer;background:0 0;border:1px solid #00494b29;border-radius:2px;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:5px;padding:0;display:none}.navbar__toggle span{background:currentColor;width:20px;height:2px;display:block}@media (width<=900px){.navbar__container{padding-inline:32px}.navbar__links{gap:22px}}@media (width<=760px){.navbar__container{padding-inline:20px}.navbar__logo{width:clamp(150px,44vw,175px)}.navbar__toggle{display:inline-flex}.navbar__links{background:#fffffffa;border-bottom:1px solid #00494b1f;flex-direction:column;align-items:stretch;gap:0;width:auto;padding:12px 20px 20px;display:none;position:absolute;top:100%;left:0;right:0}.navbar__links--open{display:flex}.navbar__link{align-items:center;min-height:46px;padding-left:0;display:flex}.navbar__link:after{display:none}.navbar__link--active{border-left:3px solid var(--color-primary);padding-left:12px}.navbar__link--primary{border-left:1px solid var(--color-primary);justify-content:center;min-height:46px;margin-top:10px;padding-left:18px}}@media (width<=480px){.navbar__logo{width:150px}}.application-page{padding-top:var(--navbar-height);color:var(--color-neutral-900);background:var(--color-white)}.application-page__hero{background:var(--color-neutral-100);padding-block:clamp(76px,8vw,128px)}.application-page__section{padding-block:clamp(72px,8vw,120px)}.application-page__container{width:min(100% - 48px,1600px);margin:0 auto}.application-page__hero .application-page__container,.application-page__form-wrap{max-width:960px}.application-page__eyebrow{color:var(--color-primary);letter-spacing:.18em;margin:0 0 14px;font-size:.875rem;font-weight:700;line-height:1.3}.application-page__title{max-width:900px;color:var(--color-primary-dark);letter-spacing:0;margin:0;font-size:clamp(2.5rem,5vw,5rem);font-weight:400;line-height:1.04}.application-page__intro{max-width:760px;color:var(--color-neutral-700);margin:24px 0 0;font-size:clamp(1.05rem,1.5vw,1.25rem);line-height:1.7}.application-page__section-title{color:var(--color-primary-dark);letter-spacing:0;margin:0 0 clamp(32px,4vw,56px);font-size:clamp(2rem,3vw,3.25rem);font-weight:400;line-height:1.12}.application-page__status{color:var(--color-neutral-700);margin:0 0 28px;line-height:1.65}.application-form{gap:24px;display:grid;position:relative}.application-form__honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.application-form__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.application-form__field{gap:10px;display:grid}.application-form__field label{color:var(--color-neutral-900);font-size:.95rem;font-weight:600;line-height:1.35}.application-form__field input,.application-form__field select,.application-form__field textarea{width:100%;color:var(--color-neutral-900);background:var(--color-white);border:1px solid var(--color-neutral-200);font:inherit;border-radius:2px;padding:15px 16px}.application-form__field textarea{resize:vertical;min-height:180px}.application-form__field input:focus,.application-form__field select:focus,.application-form__field textarea:focus{border-color:var(--color-primary);outline:3px solid var(--color-primary-light);outline-offset:2px}.application-form__hint{color:var(--color-neutral-700);margin:0;font-size:.9rem;line-height:1.55}.application-form__error{color:#8b1f1f;margin:0;font-size:.9rem;line-height:1.5}.application-form__file-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.application-form__file-item{background:var(--color-neutral-100);border:1px solid var(--color-neutral-200);color:var(--color-neutral-700);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:16px;padding:14px 16px;line-height:1.45;display:grid}.application-form__file-item span:first-child{min-width:0;color:var(--color-neutral-900);overflow-wrap:anywhere}.application-form__file-item button{color:var(--color-primary-dark);cursor:pointer;letter-spacing:.08em;text-transform:uppercase;background:0 0;border:0;font-size:.86rem;font-weight:700}.application-form__file-item button:hover{color:var(--color-primary)}.application-form__file-item button:focus-visible,.application-form__privacy a:focus-visible,.application-form__submit:focus-visible{outline:3px solid var(--color-primary-light);outline-offset:4px}.application-form__privacy{max-width:72ch;color:var(--color-neutral-700);margin:0;font-size:.95rem;line-height:1.7}.application-form__privacy a{color:var(--color-primary-dark);text-underline-offset:4px;font-weight:700;text-decoration-color:#00494b59}.application-form__privacy a:hover{color:var(--color-primary)}.application-form__turnstile{min-height:65px;overflow:hidden}.application-form__turnstile iframe{max-width:100%}.application-form__status{border:1px solid var(--color-neutral-200);max-width:72ch;margin:0;padding:14px 16px;font-size:.95rem;line-height:1.6}.application-form__status--success{color:var(--color-primary-dark);background:#006b6b14}.application-form__status--error{color:var(--color-neutral-900);background:var(--color-neutral-100);border-color:#8b1f1f3d}.application-form__submit{min-height:56px;color:var(--color-white);background:var(--color-primary);border:1px solid var(--color-primary);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;border-radius:2px;justify-self:start;padding:17px 32px;font-size:.875rem;font-weight:700;line-height:1;transition:background-color .18s,border-color .18s,opacity .18s}.application-form__submit:hover:not(:disabled){background:var(--color-primary-dark);border-color:var(--color-primary-dark)}.application-form__submit:disabled{cursor:not-allowed;opacity:.62}@media (width<=700px){.application-page__hero,.application-page__section{padding-block:64px}.application-page__container{width:min(100% - 40px,1600px)}.application-form__grid,.application-form__file-item{grid-template-columns:1fr}.application-form__file-item{gap:8px}.application-form__submit{width:100%}}.career-page{padding-top:var(--navbar-height);color:var(--color-neutral-900);background:var(--color-white)}.career-page__hero{background:var(--color-neutral-100);padding-block:clamp(80px,9vw,140px)}.career-page__container{width:min(100% - 48px,1600px);margin:0 auto}.career-page__hero-inner,.career-page__text-section,.career-page__section-header{max-width:820px}.career-page__title{max-width:900px;color:var(--color-primary-dark);letter-spacing:0;margin:0;font-size:clamp(2.5rem,5vw,5rem);font-weight:400;line-height:1.04}.career-page__intro{max-width:760px;color:var(--color-neutral-700);margin:24px 0 0;font-size:clamp(1.05rem,1.5vw,1.25rem);line-height:1.7}.career-page__hero-text{max-width:700px;color:var(--color-neutral-700);margin:18px 0 0;font-size:1rem;line-height:1.75}.career-page__about,.career-page__benefits,.career-page__jobs,.career-page__application{padding-block:clamp(72px,8vw,120px)}.career-page__benefits,.career-page__application{background:var(--color-neutral-100)}.career-page__section-title{color:var(--color-primary-dark);letter-spacing:0;margin:0;font-size:clamp(2rem,3vw,3.25rem);font-weight:400;line-height:1.12}.career-page__copy{max-width:72ch;color:var(--color-neutral-700);margin-top:28px;font-size:clamp(1rem,1.2vw,1.12rem);line-height:1.75}.career-page__copy p{margin:0}.career-page__copy p+p{margin-top:18px}.career-page__section-intro{max-width:680px;color:var(--color-neutral-700);margin:20px 0 0;font-size:clamp(1rem,1.2vw,1.12rem);line-height:1.7}.career-benefits__grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(20px,2.5vw,32px);margin-top:clamp(40px,5vw,72px);display:grid}.career-benefit{border-top:3px solid var(--color-primary);min-width:0;padding-top:20px}.career-benefit__title{color:var(--color-primary-dark);letter-spacing:0;margin:0;font-size:clamp(1.2rem,1.45vw,1.5rem);font-weight:600;line-height:1.24}.career-benefit__text{color:var(--color-neutral-700);margin:14px 0 0;font-size:1rem;line-height:1.65}.career-jobs__list{gap:20px;margin-top:clamp(40px,5vw,72px);display:grid}.job-card{background:var(--color-white);border:1px solid var(--color-neutral-200);border-top:4px solid var(--color-primary);overflow:hidden}.job-card__header{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;padding:clamp(26px,3vw,42px);display:grid}.job-card__summary{min-width:0}.job-card__demo-label{width:fit-content;color:var(--color-primary-dark);letter-spacing:.1em;text-transform:uppercase;background:#006b6b1a;border:1px solid #006b6b3d;margin:0 0 16px;padding:6px 10px;font-size:.75rem;font-weight:700;display:inline-flex}.job-card__meta{color:var(--color-primary);letter-spacing:.12em;text-transform:uppercase;margin:0 0 14px;font-size:.8rem;font-weight:700;line-height:1.4}.job-card__title{color:var(--color-primary-dark);letter-spacing:0;margin:0;font-size:clamp(1.45rem,1.8vw,1.9rem);font-weight:500;line-height:1.18}.job-card__title-button{color:inherit;font:inherit;line-height:inherit;text-align:left;cursor:pointer;background:0 0;border:0;margin:0;padding:0;transition:color .18s;display:inline}.job-card__title-button:hover{color:var(--color-primary)}.job-card__title-button[aria-expanded=true]{cursor:default}.job-card__title-button[aria-expanded=true]:hover{color:inherit}.job-card__title-button:focus-visible{outline:3px solid var(--color-primary-light);outline-offset:4px}.job-card__description{max-width:76ch;color:var(--color-neutral-700);margin:18px 0 0;font-size:1rem;line-height:1.7}.job-card__indicator-button{width:44px;height:44px;color:var(--color-primary);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.job-card__indicator-button:hover{background:#006b6b09}.job-card__indicator-button:focus-visible{outline:3px solid var(--color-primary-light);outline-offset:3px}.job-card__indicator{width:42px;height:42px;color:var(--color-primary);justify-content:center;align-items:center;font-size:2rem;font-weight:300;line-height:1;transition:transform .28s;display:inline-flex}.job-card__indicator--open{transform:rotate(45deg)}.job-card__details-wrapper{opacity:0;visibility:hidden;grid-template-rows:0fr;transition:grid-template-rows .38s cubic-bezier(.22,1,.36,1),opacity .24s,visibility 0s linear .38s;display:grid}.job-card__details-wrapper--open{opacity:1;visibility:visible;grid-template-rows:1fr;transition:grid-template-rows .38s cubic-bezier(.22,1,.36,1),opacity .24s,visibility linear}.job-card__details-inner{min-height:0;overflow:hidden}.job-card__details{gap:24px;padding:8px clamp(26px,3vw,42px) clamp(28px,3vw,42px);display:grid}.job-card__detail-section h4{color:var(--color-neutral-900);margin:0 0 12px;font-size:1rem;font-weight:700;line-height:1.3}.job-card__detail-section ul{color:var(--color-neutral-700);gap:10px;margin:0;padding:0;line-height:1.6;list-style:none;display:grid}.job-card__detail-section li{padding-left:18px;position:relative}.job-card__detail-section li:before{content:"";background:var(--color-primary);width:6px;height:6px;position:absolute;top:.72em;left:0}.job-card__application-button,.job-card__application-link,.career-page__application-button,.career-page__empty-state a{min-height:52px;color:var(--color-white);background:var(--color-primary);border:1px solid var(--color-primary);letter-spacing:.1em;text-transform:uppercase;border-radius:2px;justify-content:center;align-items:center;padding:16px 26px;font-size:.875rem;font-weight:700;line-height:1;text-decoration:none;transition:color .18s,background-color .18s,border-color .18s;display:inline-flex}.job-card__application-button,.job-card__application-link{margin-top:32px}.job-card__application-button:not(:disabled):hover,.job-card__application-link:hover,.career-page__application-button:hover,.career-page__empty-state a:hover{color:var(--color-white);background:var(--color-primary-dark);border-color:var(--color-primary-dark)}.job-card__application-button:focus-visible,.job-card__application-link:focus-visible,.career-page__application-button:focus-visible,.career-page__empty-state a:focus-visible,.career-page__privacy-note a:focus-visible{outline:3px solid var(--color-primary-light);outline-offset:5px}.job-card__application-button:disabled{cursor:not-allowed;opacity:.58}.career-page__empty-state{background:var(--color-neutral-100);border:1px solid var(--color-neutral-200);border-top:4px solid var(--color-primary);max-width:760px;margin-top:clamp(40px,5vw,72px);padding:clamp(28px,4vw,48px)}.career-page__status{min-height:96px;color:var(--color-neutral-700);margin:0;font-size:1rem;line-height:1.6}.career-page__empty-state h3{color:var(--color-primary-dark);margin:0;font-size:clamp(1.45rem,2vw,2rem);font-weight:500;line-height:1.18}.career-page__empty-state p{max-width:60ch;color:var(--color-neutral-700);margin:18px 0 0;font-size:1rem;line-height:1.7}.career-page__empty-state a{margin-top:28px}.career-page__application-inner{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start;gap:clamp(48px,6vw,96px);display:grid}.career-page__application-content{max-width:760px;color:var(--color-neutral-700);font-size:clamp(1rem,1.2vw,1.12rem);line-height:1.75}.career-page__application-content p{margin:0}.career-page__application-button{margin-top:30px}.career-page__privacy-note{margin-top:24px;font-size:.95rem}.career-page__privacy-note a{color:var(--color-primary-dark);text-underline-offset:4px;margin-left:6px;font-weight:700;text-decoration-color:#00494b59}.career-page__privacy-note a:hover{color:var(--color-primary)}@media (width<=1000px){.career-benefits__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.career-page__application-inner{grid-template-columns:1fr}}@media (width<=620px){.career-page__hero,.career-page__about,.career-page__benefits,.career-page__jobs,.career-page__application{padding-block:64px}.career-page__container{width:min(100% - 40px,1600px)}.career-benefits__grid{grid-template-columns:1fr}.job-card__header{grid-template-columns:minmax(0,1fr) auto;gap:14px;padding:24px 20px}.job-card__title{font-size:clamp(1.45rem,7vw,2rem)}.job-card__details{padding-inline:20px}.job-card__application-button,.job-card__application-link,.career-page__application-button,.career-page__empty-state a{width:100%}}@media (prefers-reduced-motion:reduce){.job-card__details-wrapper,.job-card__details-wrapper--open,.job-card__indicator{transition:none}}.about{background:var(--color-neutral-100);color:var(--color-neutral-900);padding-block:clamp(80px,9vw,140px)}.about__container{width:100%;max-width:1600px;margin:0 auto;padding-inline:clamp(40px,4vw,72px)}.about__layout{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:center;gap:clamp(48px,6vw,96px);display:grid}.about__people{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:clamp(18px,2.5vw,32px);display:grid}.about__person{min-width:0;margin:0}.about__person-image-wrapper{aspect-ratio:4/5;background:var(--color-neutral-200);border-bottom:4px solid var(--color-primary);border-radius:2px;position:relative;overflow:hidden}.about__person-image{object-fit:cover;width:100%;height:100%;display:block}.about__person-image--chris,.about__person-image--fiona{object-position:50% 25%}.about__person-caption{padding-top:16px}.about__person-name,.about__person-role{margin:0}.about__person-name{color:var(--color-primary-dark);font-size:clamp(1.15rem,1.5vw,1.4rem);font-weight:600;line-height:1.3}.about__person-role{color:var(--color-neutral-700);margin-top:6px;font-size:.95rem;line-height:1.5}.about__content{min-width:0}.about__eyebrow{color:var(--color-primary);letter-spacing:.18em;margin:0 0 14px;font-size:.875rem;font-weight:700;line-height:1.3}.about__title{max-width:780px;color:var(--color-primary-dark);letter-spacing:0;margin:0;font-size:clamp(2.25rem,4vw,4rem);font-weight:400;line-height:1.08}.about__text{max-width:68ch;margin-top:28px}.about__text p{color:var(--color-neutral-700);margin:0;font-size:clamp(1rem,1.2vw,1.08rem);line-height:1.75}.about__text p+p{margin-top:18px}.about__facts{grid-template-columns:repeat(3,minmax(220px,1fr));gap:clamp(24px,3vw,56px);width:100%;margin:clamp(48px,6vw,88px) 0 0;display:grid}.about__fact{text-align:center;flex-direction:column;justify-content:flex-start;align-items:center;display:flex}.about__fact dt{color:var(--color-primary-dark);letter-spacing:-.02em;margin:0;font-size:clamp(2.1rem,2.8vw,3.4rem);font-weight:600;line-height:1.1}.about__fact dd{max-width:18ch;color:var(--color-neutral-700);margin:16px 0 0;font-size:clamp(1rem,1.1vw,1.15rem);line-height:1.55}@media (width<=1100px){.about__facts{grid-template-columns:repeat(2,minmax(220px,1fr))}}@media (width<=899px){.about__container{padding-inline:32px}.about__layout{grid-template-columns:1fr;gap:44px}}@media (width<=680px){.about__facts{grid-template-columns:1fr;gap:28px}.about__fact dd{max-width:24ch}}@media (width<=560px){.about{padding-block:72px}.about__container{padding-inline:20px}.about__people{grid-template-columns:1fr;gap:32px}}.contact{background:var(--color-primary-deep);color:var(--color-white);padding-block:clamp(88px,10vw,150px)}.contact__container{width:100%;max-width:1600px;margin:0 auto;padding-inline:clamp(40px,4vw,72px)}.contact__header{max-width:820px;margin-bottom:clamp(48px,6vw,84px)}.contact__eyebrow{color:var(--color-primary-light);letter-spacing:.18em;margin:0 0 14px;font-size:.875rem;font-weight:700;line-height:1.3}.contact__title{color:var(--color-white);letter-spacing:0;margin:0;font-size:clamp(2.1rem,4vw,4rem);font-weight:400;line-height:1.06}.contact__intro{color:#ffffffc7;max-width:680px;margin:22px 0 0;font-size:clamp(1rem,1.4vw,1.18rem);line-height:1.65}.contact__layout{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start;gap:clamp(56px,7vw,120px);display:grid}.contact__details{gap:34px;min-width:0;font-style:normal;display:grid}.contact__detail-group p{margin:0}.contact__company{color:var(--color-white);font-size:clamp(1.25rem,2vw,1.65rem);font-weight:600;line-height:1.25}.contact__company+p{margin-top:16px}.contact__detail-label{color:var(--color-primary-light);letter-spacing:.16em;text-transform:uppercase;margin-bottom:10px;font-size:.78rem;font-weight:700;line-height:1.3}.contact__details p,.contact__details a{color:#ffffffd1;font-size:clamp(1rem,1.2vw,1.12rem);line-height:1.7}.contact__details a{overflow-wrap:anywhere;text-decoration:none;transition:color .18s;display:inline-block}.contact__details a:hover{color:var(--color-white)}.contact__details a:focus-visible,.contact__privacy a:focus-visible{outline:3px solid var(--color-primary-light);outline-offset:4px}.contact__form{gap:24px;min-width:0;display:grid;position:relative}.contact-form__honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.contact__field{gap:10px;display:grid}.contact__field label{color:#ffffffdb;font-size:.95rem;font-weight:600;line-height:1.35}.contact__input,.contact__textarea{width:100%;color:var(--color-neutral-900);background:var(--color-white);font:inherit;border:1px solid #ffffff59;border-radius:2px;padding:15px 16px}.contact__textarea{resize:vertical;min-height:180px}.contact__input:focus,.contact__textarea:focus{border-color:var(--color-white);outline:3px solid var(--color-primary-light);outline-offset:2px}.contact__field-error{color:#ffd7d7;margin:0;font-size:.9rem;line-height:1.5}.contact__button{min-height:56px;color:var(--color-primary-dark);background:var(--color-white);border:1px solid var(--color-white);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;border-radius:2px;justify-self:start;padding:17px 32px;font-size:.875rem;font-weight:700;line-height:1;transition:color .18s,background-color .18s}.contact__button:hover{color:var(--color-white);background:0 0}.contact__button:disabled{cursor:not-allowed;opacity:.62}.contact__button:disabled:hover{color:var(--color-primary-dark);background:var(--color-white)}.contact__button:focus-visible{outline:3px solid var(--color-primary-light);outline-offset:5px}.contact__status{border:1px solid #ffffff38;max-width:64ch;margin:0;padding:14px 16px;font-size:.95rem;line-height:1.6}.contact__status--success{color:var(--color-white);background:#4f96942e}.contact__status--error{color:var(--color-white);background:#ffffff1a}.contact__privacy{color:#ffffffad;max-width:64ch;margin:2px 0 0;font-size:.92rem;line-height:1.65}.contact__privacy a{color:var(--color-white);text-underline-offset:4px;text-decoration:underline;text-decoration-thickness:1px}@media (width<=899px){.contact__container{padding-inline:32px}.contact__layout{grid-template-columns:1fr;gap:52px}}@media (width<=640px){.contact{padding-block:72px}.contact__container{padding-inline:20px}.contact__header{margin-bottom:40px}.contact__details{gap:28px}.contact__button{width:100%}}.hero-section{width:100%;min-height:100svh;padding:calc(var(--navbar-height) + 40px) 0 72px;background-image:var(--hero-background-image);isolation:isolate;background-position:50%;background-repeat:no-repeat;background-size:cover;align-items:center;display:flex;position:relative;overflow:hidden}.hero-section__overlay{z-index:1;background:linear-gradient(90deg,#1f3133c2 0%,#3a52549e 52%,#6b898b6b 100%);position:absolute;inset:0}.hero-section__container{z-index:2;width:100%;max-width:1400px;margin:0 auto;padding:0 64px;position:relative}.hero-section__content{max-width:1000px;transform:translateY(-4%)}.hero-section__eyebrow{color:#fff;letter-spacing:.18em;text-transform:uppercase;margin:0 0 28px;font-size:clamp(.875rem,1.1vw,1rem);font-weight:500;line-height:1.3}.hero-section__title{color:#fff;letter-spacing:0;text-transform:uppercase;max-width:980px;margin:0;font-size:clamp(2.8rem,6vw,5.5rem);font-weight:300;line-height:.98}.hero-section__button{min-height:54px;color:var(--color-primary-dark);background:var(--color-white);border:1px solid var(--color-white);letter-spacing:.14em;text-transform:uppercase;border-radius:2px;justify-content:center;align-items:center;margin-top:48px;padding:17px 30px;font-size:.875rem;font-weight:600;line-height:1;text-decoration:none;transition:background-color .18s,border-color .18s,color .18s;display:inline-flex}.hero-section__button:hover{color:var(--color-white);background:var(--color-primary);border-color:#fffc}.hero-section__button:focus-visible{outline:3px solid var(--color-white);outline-offset:5px}@media (width<=900px){.hero-section{padding-top:calc(var(--navbar-height) + 28px)}.hero-section__container{padding:0 40px}.hero-section__content{max-width:760px;transform:translateY(-2%)}.hero-section__eyebrow{margin-bottom:22px}.hero-section__button{margin-top:40px}}@media (width<=640px){.hero-section{padding:calc(var(--navbar-height) + 40px) 0 56px;background-position:55%}.hero-section__overlay{background:linear-gradient(90deg,#182a2cd1 0%,#364d4fa8 50%,#66848675 100%)}.hero-section__container{padding:0 24px}.hero-section__content{max-width:100%;transform:none}.hero-section__eyebrow{margin-bottom:18px;font-size:.8125rem}.hero-section__title{font-size:clamp(2.5rem,13vw,3.6rem);line-height:1.03}.hero-section__button{width:100%;max-width:320px;min-height:56px;margin-top:34px;padding:18px 22px}}.projects{background:var(--color-white);color:var(--color-neutral-900);padding:clamp(80px,9vw,140px) 0}.projects__container{width:100%;max-width:1600px;margin:0 auto;padding-inline:clamp(40px,4vw,72px)}.projects__header{max-width:760px;margin-bottom:clamp(44px,5vw,72px)}.projects__eyebrow{color:var(--color-primary);letter-spacing:.18em;margin:0 0 14px;font-size:.875rem;font-weight:700;line-height:1.3}.projects__title{color:var(--color-primary-dark);letter-spacing:0;margin:0;font-size:clamp(2.1rem,4vw,4rem);font-weight:400;line-height:1.04}.projects__intro{max-width:620px;color:var(--color-neutral-700);margin:20px 0 0;font-size:clamp(1rem,1.4vw,1.18rem);line-height:1.65}.projects__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2vw,28px);display:grid}.project-card{min-width:0}.project-card__link{color:inherit;text-decoration:none;display:block}.project-card__link:focus-visible{outline:3px solid var(--color-primary-light);outline-offset:5px}.project-card__media{aspect-ratio:4/3;background:var(--color-neutral-100);border:1px solid var(--color-neutral-200);position:relative;overflow:hidden}.project-card__image{object-fit:cover;width:100%;height:100%;transition:transform .5s cubic-bezier(.22,1,.36,1);display:block}.project-card__image-placeholder{background:var(--color-neutral-200);width:100%;height:100%}.projects__status{min-height:160px;color:var(--color-neutral-700);margin:0;font-size:1rem;line-height:1.6}.project-card__overlay{color:var(--color-white);opacity:0;visibility:hidden;background:#00494be0;align-items:flex-end;padding:clamp(24px,2.5vw,34px);transition:opacity .28s,visibility 0s linear .28s;display:flex;position:absolute;inset:0}.project-card__content{opacity:0;max-width:92%;transition:opacity .28s,transform .32s;transform:translateY(12px)}.project-card__link:hover .project-card__overlay,.project-card__link:focus-visible .project-card__overlay{opacity:1;visibility:visible;transition:opacity .28s,visibility linear}.project-card__link:hover .project-card__content,.project-card__link:focus-visible .project-card__content{opacity:1;transform:translateY(0)}.project-card__link:hover .project-card__image,.project-card__link:focus-visible .project-card__image{transform:scale(1.035)}.project-card__category{letter-spacing:.14em;text-transform:uppercase;margin:0 0 14px;font-size:.78rem;font-weight:700;line-height:1.3}.project-card__title{color:inherit;letter-spacing:0;margin:0;font-size:clamp(1.35rem,1.8vw,1.75rem);font-weight:500;line-height:1.16}.project-card__location{margin:14px 0 0;font-size:.98rem;line-height:1.5}.project-card__cta{letter-spacing:.08em;text-transform:uppercase;margin:28px 0 0;font-size:.86rem;font-weight:700;line-height:1.3}.project-card__mobile-content{display:none}.projects__actions{justify-content:center;margin-top:clamp(44px,5vw,72px);display:flex}.projects__button{min-height:54px;color:var(--color-white);background:var(--color-primary);border:1px solid var(--color-primary);letter-spacing:.12em;border-radius:2px;justify-content:center;align-items:center;padding:17px 30px;font-size:.875rem;font-weight:700;line-height:1;text-decoration:none;transition:background-color .18s,border-color .18s;display:inline-flex}.projects__button:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark)}.projects__button:focus-visible{outline:3px solid var(--color-primary-light);outline-offset:5px}@media (width<=1024px){.projects__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.projects__container{padding-inline:32px}}@media (width<=767px),(hover:none){.project-card__overlay{display:none}.project-card__mobile-content{background:var(--color-white);border:1px solid var(--color-neutral-200);border-top:0;padding:22px 24px 24px;display:block}.project-card__mobile-content .project-card__category{color:var(--color-primary)}.project-card__mobile-content .project-card__title{color:var(--color-primary-dark)}.project-card__mobile-content .project-card__location{color:var(--color-neutral-700)}}@media (width<=640px){.projects{padding:72px 0}.projects__container{padding-inline:20px}.projects__header{margin-bottom:36px}.projects__grid{grid-template-columns:1fr}.project-card__mobile-content{padding:20px}.projects__button{width:100%;max-width:320px}}@media (prefers-reduced-motion:reduce){.project-card__overlay,.project-card__content,.project-card__image{transition:none}.project-card__link:hover .project-card__image,.project-card__link:focus-visible .project-card__image{transform:none}}.services{background:var(--color-neutral-100);color:var(--color-neutral-900);padding:clamp(80px,9vw,140px) 0}.services__container{width:100%;max-width:1600px;margin:0 auto;padding-inline:clamp(40px,4vw,72px)}.services__header{max-width:760px;margin-bottom:clamp(44px,5vw,72px)}.services__eyebrow{color:var(--color-primary);letter-spacing:.18em;margin:0 0 14px;font-size:.875rem;font-weight:700;line-height:1.3}.services__title{color:var(--color-primary-dark);letter-spacing:0;margin:0;font-size:clamp(2.1rem,4vw,4rem);font-weight:400;line-height:1.04}.services__intro{max-width:620px;color:var(--color-neutral-700);margin:20px 0 0;font-size:clamp(1rem,1.4vw,1.18rem);line-height:1.65}.services__desktop{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:clamp(20px,2.5vw,32px);display:grid}.services__mobile{display:none}.service-card{background:var(--color-white);border:1px solid var(--color-neutral-200);border-top:4px solid var(--color-primary);flex-direction:column;align-self:start;height:auto;min-height:620px;padding:clamp(28px,3vw,40px);transition:transform .18s,box-shadow .18s;display:flex}.service-card--expanded{height:auto;min-height:620px}.service-card:hover{transform:translateY(-2px);box-shadow:0 12px 30px #0037370f}.service-card__heading{flex-direction:column;gap:22px;margin-bottom:28px;display:flex}.service-card__icon{width:56px;height:56px;color:var(--color-primary);flex:none}.service-card__title{min-height:3.2em;color:var(--color-primary-dark);letter-spacing:0;margin:0;font-size:clamp(1.35rem,1.8vw,1.7rem);font-weight:500;line-height:1.18}.service-card__content{flex:1;padding-bottom:32px}.service-card__list{gap:13px;margin:0;padding:0;list-style:none;display:grid}.service-card__extra{opacity:0;visibility:hidden;grid-template-rows:0fr;transition:grid-template-rows .38s cubic-bezier(.22,1,.36,1),opacity .24s,visibility 0s linear .38s;display:grid}.service-card__extra--open{opacity:1;visibility:visible;grid-template-rows:1fr;transition:grid-template-rows .38s cubic-bezier(.22,1,.36,1),opacity .24s,visibility linear}.service-card__extra-inner{min-height:0;overflow:hidden}.service-card__list--extra{margin-top:12px}.service-card__item{color:var(--color-neutral-700);padding-left:20px;font-size:.98rem;line-height:1.52;position:relative}.service-card__item:before{content:"";background:var(--color-primary);width:7px;height:7px;position:absolute;top:.72em;left:0;transform:translateY(-50%)}.service-card__toggle{color:var(--color-primary);letter-spacing:.05em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;justify-content:flex-start;align-items:center;gap:10px;margin-top:auto;padding:0;font-size:.92rem;font-weight:700;line-height:1.3;display:inline-flex}.service-card__toggle:hover{color:var(--color-primary-dark)}.service-card__toggle:focus-visible,.services-accordion__trigger:focus-visible{outline:3px solid var(--color-primary-light);outline-offset:5px}.service-card__toggle span{font-size:1.2rem;line-height:1}.services-accordion{background:var(--color-white);border:1px solid var(--color-neutral-200);border-top:3px solid var(--color-primary)}.services-accordion+.services-accordion{margin-top:16px}.services-accordion__trigger{width:100%;color:var(--color-primary-dark);text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:18px;padding:22px 24px;display:flex}.services-accordion__label{align-items:center;gap:16px;font-size:1.05rem;font-weight:600;line-height:1.25;display:flex}.services-accordion__label .service-card__icon{width:42px;height:42px}.services-accordion__indicator{color:var(--color-primary);font-size:1.6rem;line-height:1}.services-accordion__content{padding:0 24px 26px 82px;animation:.16s servicesFadeIn}@keyframes servicesFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media (width<=899px){.service-card{min-height:0}.services__container{padding-inline:32px}.services__desktop{display:none}.services__mobile{display:block}}@media (prefers-reduced-motion:reduce){.service-card__extra,.service-card__extra--open{transition:none}}@media (width<=640px){.services{padding:72px 0}.services__container{padding-inline:20px}.services__header{margin-bottom:36px}.services-accordion__trigger{padding:20px}.services-accordion__label{gap:14px;font-size:1rem}.services-accordion__label .service-card__icon{width:38px;height:38px}.services-accordion__content{padding:0 20px 24px 72px}.service-card__item{font-size:.95rem}}.legal-page{min-height:100svh;padding-top:var(--navbar-height);background:var(--color-neutral-100);color:var(--color-neutral-900)}.legal-page__container{width:min(100% - 48px,1000px);margin:0 auto;padding-block:clamp(72px,8vw,120px)}.legal-page__eyebrow{color:var(--color-primary);letter-spacing:.18em;text-transform:uppercase;margin:0 0 14px;font-size:.875rem;font-weight:700;line-height:1.3}.legal-page__title{max-width:100%;color:var(--color-primary-dark);letter-spacing:0;white-space:normal;word-break:normal;overflow-wrap:normal;margin:0;font-size:clamp(2.5rem,5vw,4.5rem);font-weight:400;line-height:1.05}.legal-page__intro{max-width:68ch;color:var(--color-neutral-700);margin:22px 0 0;font-size:clamp(1rem,1.4vw,1.18rem);line-height:1.65}.legal-page__notice{max-width:70ch;color:var(--color-neutral-700);border-left:4px solid var(--color-primary);background:#006b6b14;margin-top:clamp(34px,4vw,52px);padding:24px}.legal-page__notice h2{color:var(--color-primary-dark);margin:0 0 12px;font-size:clamp(1.15rem,1.8vw,1.4rem);font-weight:600;line-height:1.25}.legal-page__notice p{margin:0;line-height:1.7}.legal-page__content{gap:clamp(34px,4vw,52px);max-width:70ch;margin-top:clamp(44px,5vw,72px);display:grid}.legal-page__section h2{color:var(--color-primary-dark);letter-spacing:0;margin:0 0 14px;font-size:clamp(1.2rem,2vw,1.55rem);font-weight:600;line-height:1.25}.legal-page__section h3{color:var(--color-neutral-900);margin:28px 0 12px;font-size:1.1rem;font-weight:600;line-height:1.35}.legal-page__section p,.legal-page__section address,.legal-page__section li{color:var(--color-neutral-700);margin:0;font-size:clamp(1rem,1.2vw,1.08rem);line-height:1.7}.legal-page__section p+p,.legal-page__section address+p,.legal-page__section p+address,.legal-page__section ul+p{margin-top:16px}.legal-page__section ul{margin:16px 0 0;padding-left:1.4rem}.legal-page__section li+li{margin-top:8px}.legal-page__section address{font-style:normal}.legal-page__section a,.legal-page__back-link{color:var(--color-primary-dark);text-underline-offset:4px;overflow-wrap:anywhere;text-decoration:underline;text-decoration-thickness:1px}.legal-page__section a:hover,.legal-page__back-link:hover{color:var(--color-primary)}.legal-page__section a:focus-visible,.legal-page__back-link:focus-visible{outline:3px solid var(--color-primary-light);outline-offset:4px}.legal-page__placeholder{color:var(--color-primary-dark);background:var(--color-white);border-left:4px solid var(--color-primary);margin-top:12px;padding:12px 14px;font-weight:600;display:inline-block}.legal-page__back-link{letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:8px;margin-top:clamp(44px,5vw,64px);font-size:.95rem;font-weight:700;line-height:1.3;display:inline-flex}.legal-page__back-link--top{margin:0 0 clamp(34px,4vw,52px)}@media (width<=640px){.legal-page__container{width:min(100% - 40px,1000px);padding-block:64px}.legal-page__content{gap:32px;margin-top:40px}.legal-page__notice{padding:20px}}@media (width<=560px){.legal-page__container{width:min(100% - 32px,1000px)}.legal-page__title{letter-spacing:-.02em;white-space:normal;word-break:normal;overflow-wrap:normal;max-width:100%;font-size:clamp(1.65rem,7.4vw,2.7rem);line-height:1.1}}.project-modal{z-index:2000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0c1c1cb8;justify-content:center;align-items:center;padding:clamp(20px,4vw,56px);animation:.22s project-modal-fade;display:flex;position:fixed;inset:0;overflow:hidden}.project-modal__content{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;width:min(100%,1280px);max-height:calc(100dvh - 64px);color:var(--color-neutral-900);background:var(--color-white);animation:.26s cubic-bezier(.22,1,.36,1) project-modal-rise;position:relative;overflow-y:auto}.project-modal__content--locked{overflow:hidden}.project-modal__content:focus{outline:none}.project-modal__close{z-index:3;width:44px;height:44px;color:var(--color-primary-dark);cursor:pointer;background:#fffffff0;border:1px solid #00494b29;border-radius:2px;justify-content:center;align-items:center;font-size:2rem;line-height:1;transition:color .18s,background-color .18s,border-color .18s;display:inline-flex;position:absolute;top:18px;right:18px}.project-modal__close:hover{color:var(--color-white);background:var(--color-primary);border-color:var(--color-primary)}.project-modal__close:focus-visible,.project-modal__nav:focus-visible,.project-modal__gallery-button:focus-visible,.project-lightbox__close:focus-visible,.project-lightbox__nav:focus-visible,.project-modal__mobile-nav-button:focus-visible{outline:3px solid var(--color-primary-light);outline-offset:4px}.project-modal__media{aspect-ratio:16/8;background:var(--color-neutral-100);min-height:360px;position:relative;overflow:hidden}.project-modal__image,.project-modal__image-placeholder{width:100%;height:100%;display:block}.project-modal__image{object-fit:cover}.project-modal__image-placeholder{background:var(--color-neutral-200)}.project-modal__nav{z-index:2;width:52px;height:52px;color:var(--color-primary-dark);cursor:pointer;background:#ffffffeb;border:1px solid #00494b24;border-radius:2px;justify-content:center;align-items:center;font-size:1.6rem;line-height:1;transition:color .18s,background-color .18s,opacity .18s;display:inline-flex;position:absolute;top:50%;transform:translateY(-50%)}.project-modal__nav:hover:not(:disabled){color:var(--color-white);background:var(--color-primary)}.project-modal__nav:disabled,.project-modal__mobile-nav-button:disabled{cursor:not-allowed;opacity:.36}.project-modal__nav--previous{left:24px}.project-modal__nav--next{right:24px}.project-modal__body{padding:clamp(32px,5vw,72px)}.project-modal__category{color:var(--color-primary);letter-spacing:.14em;text-transform:uppercase;margin:0 0 14px;font-size:.78rem;font-weight:700;line-height:1.3}.project-modal__title{max-width:860px;color:var(--color-primary-dark);letter-spacing:0;margin:0;font-size:clamp(2rem,4vw,4.2rem);font-weight:400;line-height:1.05}.project-modal__location{color:var(--color-neutral-700);margin:18px 0 0;font-size:clamp(1rem,1.4vw,1.18rem);line-height:1.5}.project-modal__description{max-width:78ch;color:var(--color-neutral-700);white-space:pre-wrap;margin-top:clamp(28px,4vw,48px);font-size:clamp(1rem,1.2vw,1.12rem);line-height:1.75}.project-modal__description p{margin:0}.project-modal__description p+p{margin-top:18px}.project-modal__gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2vw,28px);margin-top:clamp(36px,5vw,64px);display:grid}.project-modal__gallery-button{aspect-ratio:4/3;cursor:zoom-in;background:0 0;border:0;width:100%;padding:0;display:block;overflow:hidden}.project-modal__gallery-image{object-fit:cover;background:var(--color-neutral-100);width:100%;height:100%;display:block}.project-lightbox{z-index:3000;background:#050f0feb;justify-content:center;align-items:center;padding:clamp(20px,4vw,56px);animation:.18s project-modal-fade;display:flex;position:fixed;inset:0;overflow:hidden}.project-lightbox__image{object-fit:contain;max-width:min(94vw,1600px);max-height:90dvh;display:block}.project-lightbox__close,.project-lightbox__nav{z-index:2;color:var(--color-primary-dark);cursor:pointer;background:#ffffffeb;border:1px solid #ffffff3d;border-radius:2px;justify-content:center;align-items:center;line-height:1;transition:color .18s,background-color .18s,opacity .18s;display:inline-flex;position:absolute}.project-lightbox__close:hover,.project-lightbox__nav:hover:not(:disabled){color:var(--color-white);background:var(--color-primary)}.project-lightbox__close{width:46px;height:46px;font-size:2rem;top:24px;right:24px}.project-lightbox__nav{width:52px;height:52px;font-size:1.6rem;top:50%;transform:translateY(-50%)}.project-lightbox__nav:disabled{cursor:not-allowed;opacity:.32}.project-lightbox__nav--previous{left:24px}.project-lightbox__nav--next{right:24px}.project-modal__mobile-navigation{display:none}@keyframes project-modal-fade{0%{opacity:0}to{opacity:1}}@keyframes project-modal-rise{0%{opacity:0;transform:translateY(16px)scale(.99)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=899px){.project-modal{padding:18px}.project-modal__content{max-height:calc(100dvh - 36px)}.project-modal__media{aspect-ratio:4/3;min-height:260px}.project-modal__nav{display:none}.project-modal__gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.project-modal__mobile-navigation{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:32px;display:grid}.project-modal__mobile-nav-button{min-height:48px;color:var(--color-primary-dark);background:var(--color-white);border:1px solid var(--color-neutral-200);cursor:pointer;font:inherit;border-radius:2px;font-size:.9rem;font-weight:700}.project-lightbox{padding:18px}.project-lightbox__close{top:18px;right:18px}.project-lightbox__nav{width:44px;height:44px;font-size:1.35rem}.project-lightbox__nav--previous{left:18px}.project-lightbox__nav--next{right:18px}}@media (width<=560px){.project-modal{padding:10px}.project-modal__content{max-height:calc(100dvh - 20px)}.project-modal__close{top:12px;right:12px}.project-modal__media{min-height:220px}.project-modal__body{padding:28px 20px 32px}.project-modal__gallery,.project-modal__mobile-navigation{grid-template-columns:1fr}.project-lightbox{padding:10px}.project-lightbox__image{max-width:96vw;max-height:84dvh}.project-lightbox__close{top:12px;right:12px}.project-lightbox__nav--previous{left:10px}.project-lightbox__nav--next{right:10px}}@media (hover:hover){.project-modal__gallery-button .project-modal__gallery-image{transition:opacity .22s,transform .22s}.project-modal__gallery-button:hover .project-modal__gallery-image{opacity:.94;transform:scale(1.015)}}@media (prefers-reduced-motion:reduce){.project-modal,.project-modal__content,.project-lightbox{animation:none}.project-modal__close,.project-modal__nav,.project-modal__gallery-button .project-modal__gallery-image,.project-lightbox__close,.project-lightbox__nav{transition:none}}.projects-page{padding-top:var(--navbar-height);color:var(--color-neutral-900);background:var(--color-white)}.projects-page__hero{background:var(--color-neutral-100);padding-block:clamp(72px,8vw,120px)}.projects-page__listing{padding-block:clamp(72px,8vw,120px)}.projects-page__container{width:min(100% - 48px,1600px);margin:0 auto}.projects-page__eyebrow{color:var(--color-primary);letter-spacing:.18em;margin:0 0 14px;font-size:.875rem;font-weight:700;line-height:1.3}.projects-page__title{max-width:840px;color:var(--color-primary-dark);letter-spacing:0;margin:0;font-size:clamp(2.5rem,5vw,5rem);font-weight:400;line-height:1.04}.projects-page__intro{max-width:760px;color:var(--color-neutral-700);margin:24px 0 0;font-size:clamp(1.05rem,1.5vw,1.25rem);line-height:1.7}.projects-page__back-link{color:var(--color-primary-dark);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:10px;margin-bottom:clamp(32px,4vw,56px);font-size:.875rem;font-weight:700;line-height:1.3;text-decoration:none;transition:color .18s;display:inline-flex}.projects-page__back-link:hover{color:var(--color-primary)}.projects-page__back-link:focus-visible{outline:3px solid var(--color-primary-light);outline-offset:5px}.projects-page__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,3vw,40px);display:grid}.project-list-card{background:var(--color-white);border:1px solid var(--color-neutral-200);cursor:pointer;min-width:0;transition:border-color .18s;position:relative;overflow:hidden}.project-list-card:hover{border-color:#006b6b52}.project-list-card__trigger{z-index:2;cursor:pointer;background:0 0;border:0;width:100%;height:100%;padding:0;position:absolute;inset:0}.project-list-card__trigger:focus-visible{outline:3px solid var(--color-primary-light);outline-offset:-6px}.project-list-card__media{aspect-ratio:4/3;background:var(--color-neutral-100);overflow:hidden}.project-list-card__image{object-fit:cover;width:100%;height:100%;transition:transform .4s cubic-bezier(.22,1,.36,1);display:block}.project-list-card__image-placeholder{background:var(--color-neutral-200);width:100%;height:100%}.projects-page__status{min-height:180px;color:var(--color-neutral-700);margin:0;font-size:1rem;line-height:1.6}.project-list-card:hover .project-list-card__image{transform:scale(1.025)}.project-list-card__content{padding:clamp(22px,2.5vw,30px)}.project-list-card__category{color:var(--color-primary);letter-spacing:.14em;text-transform:uppercase;margin:0 0 12px;font-size:.78rem;font-weight:700;line-height:1.3}.project-list-card__title{color:var(--color-primary-dark);letter-spacing:0;margin:0;font-size:clamp(1.35rem,1.8vw,1.75rem);font-weight:500;line-height:1.18}.project-list-card__location{color:var(--color-neutral-700);margin:14px 0 0;font-size:.98rem;line-height:1.5}.project-list-card__description{max-width:60ch;color:var(--color-neutral-700);margin:18px 0 0;font-size:1rem;line-height:1.7}@media (width<=999px){.projects-page__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=649px){.projects-page__hero,.projects-page__listing{padding-block:64px}.projects-page__container{width:min(100% - 40px,1600px)}.projects-page__grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.project-list-card__image{transition:none}.project-list-card:hover .project-list-card__image{transform:none}}
