*,*::before,*::after{box-sizing:border-box}html{font-size:62.5%;scroll-behavior:smooth}@media(max-width: 768px){html{font-size:50%}}body{margin:0;padding:0;font-family:"Montserrat",sans-serif;font-size:1.6rem;background:#f8f9fa;color:#212529;line-height:1.6}.section__container{max-width:120rem;margin:0 auto;padding:2.4rem 1.6rem}.mt-1{margin-top:.8rem}.mt-2{margin-top:1.6rem}.mt-3{margin-top:2.4rem}.mt-4{margin-top:3.2rem}.mb-1{margin-bottom:.8rem}.mb-2{margin-bottom:1.6rem}.mb-3{margin-bottom:2.4rem}.mb-4{margin-bottom:3.2rem}.p-1{padding:.8rem}.p-2{padding:1.6rem}.p-3{padding:2.4rem}.p-4{padding:3.2rem}.btn-primary{background-color:#4a6c9b !important;border-color:#4a6c9b !important}.btn-primary:hover,.btn-primary:focus{background-color:rgb(57.519650655,83.9475982533,120.480349345) !important;border-color:rgb(57.519650655,83.9475982533,120.480349345) !important}.btn-secondary{background-color:#fdb813 !important;border-color:#fdb813 !important;color:#212529 !important}.btn-secondary:hover,.btn-secondary:focus{background-color:rgb(219.1428571429,155.0714285714,1.8571428571) !important;border-color:rgb(219.1428571429,155.0714285714,1.8571428571) !important;color:#212529 !important}.text-primary{color:#4a6c9b !important}html{font-size:62.5%}body{font-family:"Montserrat",sans-serif;font-size:1.6rem;line-height:1.6;color:#212529}h1,.h1{font-family:"Playfair Display",serif;font-size:4.8rem;font-weight:700;line-height:1.2;margin-bottom:2.4rem;color:#212529}@media(max-width: 962px){h1,.h1{font-size:3.6rem}}h2,.h2{font-family:"Playfair Display",serif;font-size:3.6rem;font-weight:700;line-height:1.3;margin-bottom:1.6rem;color:#212529}@media(max-width: 962px){h2,.h2{font-size:3rem}}h3,.h3{font-family:"Playfair Display",serif;font-size:3rem;font-weight:700;line-height:1.3;margin-bottom:1.6rem;color:#212529}@media(max-width: 962px){h3,.h3{font-size:2.4rem}}h4,.h4{font-family:"Montserrat",sans-serif;font-size:2.4rem;font-weight:500;line-height:1.4;margin-bottom:.8rem;color:#212529}h5,.h5{font-family:"Montserrat",sans-serif;font-size:2rem;font-weight:500;line-height:1.4;margin-bottom:.8rem;color:#212529}h6,.h6{font-family:"Montserrat",sans-serif;font-size:1.8rem;font-weight:500;line-height:1.4;margin-bottom:.8rem;color:#212529}p{font-size:1.6rem;line-height:1.6;margin-bottom:1.6rem;color:#212529}.lead{font-size:1.8rem;font-weight:400;line-height:1.6;color:#212529}small,.small{font-size:1.4rem;line-height:1.5}.text-xs{font-size:1.2rem;line-height:1.4}.display-1{font-family:"Playfair Display",serif;font-size:6rem;font-weight:700;line-height:1.1}@media(max-width: 962px){.display-1{font-size:4.8rem}}a{color:#4a6c9b;text-decoration:none;transition:color .3s ease}a:hover{color:#fdb813}.header{position:fixed;top:0;left:0;right:0;background:#fff;box-shadow:0 .125rem .5rem rgba(74,108,155,.1);z-index:1000}.header__container{max-width:1200px;margin:0 auto;padding:0 1rem;display:flex;align-items:center;justify-content:space-between;padding:0 1.6rem;position:relative}.header__logo{z-index:1001}.header__logo img{margin-top:1.5rem;height:6.5rem;width:auto}.header__toggle{display:none;flex-direction:column;justify-content:center;width:2.5rem;height:2.5rem;background:rgba(0,0,0,0);border:none;cursor:pointer;z-index:1001}.header__toggle:focus{outline:.125rem solid #4a6c9b;outline-offset:.125rem}.header__toggle{align-items:center;margin-left:0}.header__toggle-bar{width:1.5625rem;height:.25rem;background:#212529;margin:.125rem 0;transition:all .3s ease;transform-origin:center}.header__nav{display:block;padding:0 1.6rem;transition:transform .5s cubic-bezier(0.4, 0, 0.2, 1),opacity .5s cubic-bezier(0.4, 0, 0.2, 1),visibility .5s}.header__nav-list{display:flex;align-items:center;gap:3.2rem;list-style:none;margin:0;padding:0;flex-direction:row;transition:max-height .5s cubic-bezier(0.4, 0, 0.2, 1);overflow:hidden}@media(max-width: 962px){.header__nav{max-height:0;opacity:0;overflow:hidden;transition:max-height 5s cubic-bezier(0.4, 0, 0.2, 1),opacity .3s cubic-bezier(0.4, 0, 0.2, 1)}.header--menu-open .header__nav{max-height:40rem;opacity:1;transition:max-height .5s cubic-bezier(0.4, 0, 0.2, 1),opacity .3s cubic-bezier(0.4, 0, 0.2, 1)}}.header__nav-link{color:#212529;text-decoration:none;font-weight:500;font-family:"Montserrat",sans-serif;font-size:1.6rem;transition:color .3s ease}.header__nav-link:hover,.header__nav-link:focus{color:#4a6c9b}.header__cta{margin-left:3.2rem}.header--menu-open .header__toggle-bar:nth-child(1){transform:rotate(45deg) translate(0.35rem, 0.35rem)}.header--menu-open .header__toggle-bar:nth-child(2){opacity:0}.header--menu-open .header__toggle-bar:nth-child(3){transform:rotate(-45deg) translate(0.35rem, -0.35rem)}.header--menu-open .header__nav{transform:translateY(0);opacity:1;visibility:visible}@media(max-width: 962px){.header__container{display:flex;justify-content:space-between;align-items:center}.header__toggle{order:3;margin-left:auto;margin-right:0}.header__cta{order:2;margin-left:.8rem;margin-right:.8rem}.header__logo{order:1}}@media(max-width: 468px){.header__logo img{max-height:4rem;margin-top:.5rem}}@media(max-width: 962px){.header__toggle{display:flex !important;margin-left:0}.header__nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;box-shadow:0 .25rem .75rem rgba(74,108,155,.15);transform:translateY(-0.625rem);opacity:0;visibility:hidden;transition:all .3s ease}.header--menu-open .header__nav{display:block !important;transform:translateY(0);opacity:1;visibility:visible}.header__nav-list{flex-direction:column;gap:0;padding:1.6rem 0}.header__nav-item{width:100%}.header__nav-link{display:block;padding:1.6rem 3.2rem;border-bottom:.0625rem solid rgba(74,108,155,.1)}.header__nav-link:hover{background:rgba(74,108,155,.05)}.header__cta{display:inline-flex;margin-left:1.6rem}}main{margin-top:6rem}@media(max-width: 468px){main{margin-top:5rem}}html{scroll-padding-top:6rem}.footer{background:linear-gradient(135deg, #6B8BBF 0%, #4A6C9B 50%, #3A5A8A 100%);color:#fff;padding:6.4rem 0 0;position:relative}.footer::before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(180deg, rgba(0, 0, 0, 0.15) 0%, rgba(0, 0, 0, 0.25) 50%, rgba(0, 0, 0, 0.35) 100%);z-index:1}.footer>*{position:relative;z-index:2}.footer__container{max-width:120rem;margin:0 auto;padding:0 1.6rem}.footer__grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(25rem, 1fr));gap:4.8rem;margin-bottom:6.4rem}@media(max-width: 962px){.footer__grid{grid-template-columns:1fr;gap:3.2rem;margin-bottom:4.8rem}}@media(max-width: 768px){.footer__grid{gap:2.4rem;margin-bottom:3.2rem}}@media(max-width: 962px){.footer__brand{text-align:center}}.footer__logo{height:10rem;width:auto;margin-bottom:1.6rem}.footer__tagline{font-size:1.4rem;color:hsl(0,0%,85%);line-height:1.6;margin:0;max-width:28rem}@media(max-width: 962px){.footer__tagline{margin:0 auto}}.footer__title{color:#fff;font-size:1.8rem;font-family:"Playfair Display",serif;font-weight:700;margin-bottom:2.4rem}@media(max-width: 962px){.footer__title{text-align:center}}@media(max-width: 768px){.footer__title{font-size:2rem;margin-bottom:1.6rem}}@media(max-width: 962px){.footer__nav{text-align:center}}.footer__nav-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.8rem}@media(max-width: 962px){.footer__nav-list{align-items:center}}.footer__nav-link{color:hsl(0,0%,90%);text-decoration:none;font-size:1.4rem;transition:color .3s ease,transform .2s ease;display:inline-block}.footer__nav-link:hover{color:#fdb813;transform:translateX(0.5rem)}.footer__nav-link:focus{outline:.2rem solid #fdb813;outline-offset:.2rem}@media(max-width: 962px){.footer__social-section{text-align:center}}.footer__social{display:flex;gap:1.6rem;flex-wrap:wrap}@media(max-width: 962px){.footer__social{justify-content:center}}.footer__social-link{display:inline-flex;width:4.5rem;height:4.5rem;align-items:center;justify-content:center;border-radius:50%;background:linear-gradient(135deg, rgba(255, 255, 255, 0.1) 0%, rgba(255, 255, 255, 0.06) 100%);color:hsl(0,0%,90%);text-decoration:none;font-size:1.8rem;transition:all .3s ease;border:.2rem solid rgba(0,0,0,0)}.footer__social-link:hover{background:linear-gradient(135deg, #FDB813 0%, #E6A511 100%);color:#212529;transform:translateY(-0.3rem);box-shadow:0 .5rem 1.5rem rgba(253,184,19,.25)}.footer__social-link:focus{outline:none;border-color:#fdb813;transform:translateY(-0.1rem)}.footer__social-link:active{transform:translateY(0)}@media(max-width: 768px){.footer__social-link{width:4rem;height:4rem;font-size:2rem}}.footer__bottom{border-top:.1rem solid hsla(0,0%,100%,.1);padding:3.2rem 0;text-align:center}@media(max-width: 768px){.footer__bottom{padding:2.4rem 0}}.footer__copyright{color:#ccc;font-size:1.2rem;line-height:1.5}@media(max-width: 768px){.footer__copyright{font-size:1rem}}section{padding:2.4rem 0}section:nth-of-type(even){background:#fff}.about .section__container,.services .section__container,.portfolio .section__container,.contact .section__container,.clients .section__container{max-width:120rem;margin:0 auto;padding:0 1.6rem}.section__title{text-align:center;margin-bottom:4.8rem;font-size:3.6rem;font-family:"Playfair Display",serif;font-weight:700;color:#4a6c9b}@media(max-width: 962px){.section__title{font-size:3rem;margin-bottom:3.2rem}}@media(max-width: 768px){.section__title{font-size:2.4rem}}section h2{text-align:center;margin-bottom:4.8rem;font-size:3.6rem;font-family:"Playfair Display",serif;font-weight:700;color:#4a6c9b}@media(max-width: 962px){section h2{font-size:3rem;margin-bottom:3.2rem}}@media(max-width: 768px){section h2{font-size:2.4rem}}.about__grid{display:grid;grid-template-columns:1fr 1fr;gap:4.8rem;align-items:start}@media(max-width: 1200px){.about__grid{gap:3.2rem}}@media(max-width: 962px){.about__grid{grid-template-columns:1fr;gap:2.4rem}}.about__media img{width:100%;border-radius:1.2rem;box-shadow:0 1rem 3rem rgba(74,108,155,.15)}.about__content .section__title,.about__content h2{text-align:left;margin-bottom:2.4rem}@media(max-width: 962px){.about__content .section__title,.about__content h2{text-align:center}}.about__content p{font-size:1.4rem;line-height:1.7;margin-bottom:1.6rem;color:#212529}.about__content p:last-of-type{margin-bottom:2.4rem}.about__process{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100%}.about__process h3{font-size:1.8rem;color:#4a6c9b;margin-bottom:2.4rem;font-family:"Playfair Display",serif;text-align:center}@media(max-width: 962px){.about__process h3{text-align:center;margin-bottom:1.6rem}}.services{background:#f8f9fa}.services__grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(28rem, 1fr));gap:3.2rem}@media(max-width: 962px){.services__grid{grid-template-columns:1fr;gap:2.4rem}}.portfolio__grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(32rem, 1fr));gap:3.2rem}@media(max-width: 1200px){.portfolio__grid{grid-template-columns:repeat(auto-fit, minmax(28rem, 1fr))}}@media(max-width: 962px){.portfolio__grid{grid-template-columns:1fr;gap:2.4rem}}.btn{display:flex;justify-content:center;align-items:center;display:inline-flex;padding:.8rem 2.4rem;border:.125rem solid rgba(0,0,0,0);border-radius:.8rem;font-family:"Montserrat",sans-serif;font-weight:500;font-size:1.6rem;text-decoration:none;cursor:pointer;transition:all .3s ease;white-space:nowrap;line-height:1.5}.btn--primary{background:linear-gradient(135deg, #6B8BBF 0%, #4A6C9B 50%, #3A5A8A 100%);color:#fff;border-color:#4a6c9b;box-shadow:0 .25rem .75rem rgba(74,108,155,.3)}.btn--primary:hover,.btn--primary:focus{background:linear-gradient(135deg, #5A7BCF 0%, #2A4A7A 100%);border-color:rgb(57.519650655,83.9475982533,120.480349345);color:#fff;text-decoration:none;transform:translateY(-0.1rem);box-shadow:0 .5rem 1.5rem rgba(74,108,155,.4)}.btn--primary:active{transform:translateY(0);box-shadow:0 .25rem .75rem rgba(74,108,155,.3)}.btn--secondary{background:linear-gradient(135deg, rgba(255, 255, 255, 0.9) 0%, rgba(248, 249, 250, 0.8) 100%);color:#4a6c9b;border-color:#4a6c9b}.btn--secondary:hover,.btn--secondary:focus{background:linear-gradient(135deg, #6B8BBF 0%, #4A6C9B 50%, #3A5A8A 100%);color:#fff;text-decoration:none;transform:translateY(-0.1rem);box-shadow:0 .5rem 1.5rem rgba(74,108,155,.25)}.btn--secondary:active{transform:translateY(0)}.btn--accent{background:linear-gradient(135deg, #FDB813 0%, #E6A511 100%);color:#212529;border-color:#fdb813;box-shadow:0 .25rem .75rem rgba(253,184,19,.3)}.btn--accent:hover,.btn--accent:focus{background:linear-gradient(135deg, #FFC030 0%, #D69510 100%);border-color:rgb(219.1428571429,155.0714285714,1.8571428571);color:#212529;text-decoration:none;transform:translateY(-0.1rem);box-shadow:0 .5rem 1.5rem rgba(253,184,19,.4)}.btn--accent:active{transform:translateY(0);box-shadow:0 .25rem .75rem rgba(253,184,19,.3)}.btn--large{padding:1.6rem 4.8rem;font-size:1.8rem}.btn--small{padding:.4rem 1.6rem;font-size:1.4rem}@media(max-width: 468px){.btn{font-size:1.2rem;padding:.8rem}}.card{background:linear-gradient(135deg, #FFFFFF 0%, rgba(248, 249, 250, 0.8) 100%);border-radius:.8rem;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}@media(hover: hover)and (pointer: fine){.card:hover:not(.card--service){transform:translateY(-0.125rem);box-shadow:0 .25rem 1.25rem rgba(74,108,155,.15)}}.card__link{display:block;text-decoration:none;color:inherit;height:100%}.card__image{position:relative;overflow:hidden}.card__image img{width:100%;height:25rem;object-fit:cover;transition:transform .3s ease}.card__overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(74,108,155,.9);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease}.card__cta{color:#fff;font-weight:500;font-size:1.8rem;padding:.8rem 1.6rem;border:.2rem solid #fff;border-radius:.8rem;background:rgba(0,0,0,0);transition:all .3s ease}.card__content{padding:2.4rem}.card__title{font-size:1.8rem;margin:0 0 .8rem;color:#4a6c9b;font-family:"Playfair Display",serif;font-weight:700;line-height:1.3}.card__description{color:#212529;line-height:1.6;margin:0;font-size:1.4rem}.card__icon{font-size:3rem;color:#fdb813;margin-bottom:1.6rem;display:flex;justify-content:center}.card__icon i{width:4rem;height:4rem;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg, rgba(253, 184, 19, 0.15) 0%, rgba(253, 184, 19, 0.08) 100%);border-radius:50%;box-shadow:0 .2rem .8rem rgba(253,184,19,.15)}.card--service{padding:3.2rem 2.4rem;text-align:center;border:.1rem solid rgba(74,108,155,.15);height:100%;display:flex;flex-direction:column}.card--service .card__title{font-size:2rem;margin:1.6rem 0 .8rem}.card--service .card__description{flex-grow:1}.card--service .card__icon i{background:linear-gradient(135deg, rgba(253, 184, 19, 0.18) 0%, rgba(253, 184, 19, 0.1) 100%);transform:scale(1);box-shadow:0 .2rem .8rem rgba(253,184,19,.12)}.card--service:hover{transition:all .3s ease}.card--project{border:.1rem solid rgba(74,108,155,.1);box-shadow:0 .4rem 1.2rem rgba(74,108,155,.12),0 .2rem .4rem rgba(74,108,155,.08)}@media(hover: hover)and (pointer: fine){.card--project:hover{box-shadow:0 .8rem 2.4rem rgba(74,108,155,.18),0 .4rem .8rem rgba(74,108,155,.12);transform:translateY(-0.2rem)}.card--project:hover .card__overlay{opacity:1}.card--project:hover .card__image img{transform:scale(1.05)}.card--project:hover .card__cta{background:#fff;color:#4a6c9b;transform:translateY(-0.25rem)}}.card--project .card__content{padding:2.4rem 1.6rem 1.6rem}.card--project .card__title{font-size:2rem;margin-bottom:.4rem}.clients{background:#fff;padding:3.2rem 0}.clients h2{text-align:center;margin-bottom:3.2rem}.clients__grid{display:grid;grid-template-columns:repeat(5, 1fr);gap:2.4rem;align-items:center;justify-items:center}@media(max-width: 1200px){.clients__grid{gap:1.6rem}}@media(max-width: 961px){.clients__grid{display:none}}@media(max-width: 961px){.clients__grid--desktop{display:none}}.clients__grid--desktop .clients__item img{height:6.5rem;width:auto;max-width:13rem;object-fit:contain}@media(max-width: 1200px){.clients__grid--desktop .clients__item img{height:5.6rem;max-width:11.5rem}}.clients__column{display:flex;flex-direction:column;gap:1.6rem;align-items:center}.clients__column--double .clients__item{margin-bottom:.8rem}.clients__column--double .clients__item:last-child{margin-bottom:0}.clients__column--single{justify-content:center}.clients__column--center .clients__item{transform:scale(1.1)}.clients__carousel{display:none}@media(max-width: 962px){.clients__carousel{display:block}}@media(min-width: 963px){.clients__carousel--mobile{display:none}}.clients__track{position:relative;overflow:hidden;border-radius:.8rem}.clients__item{display:flex;flex-direction:column;align-items:center;opacity:1}@media(max-width: 962px){.clients__item{display:none;text-align:center}.clients__item--active{display:flex !important}}.clients__item img{height:6.5rem;width:auto;max-width:13rem;object-fit:contain}@media(max-width: 962px){.clients__item img{height:8rem !important;max-width:16rem !important;min-height:5rem}}.clients__item img[src*=""],.clients__item img:not([src]),.clients__item img[alt]{min-height:6.5rem;background:rgb(220.1419213974,227.788209607,238.3580786026);display:flex;align-items:center;justify-content:center;color:#4a6c9b;font-size:1.2rem;text-align:center;border-radius:.4rem}.clients__name{font-size:1.4rem;text-align:center;color:#212529;max-width:14rem;line-height:1.3;margin-top:.4rem}@media(max-width: 962px){.clients__name{font-size:1.2rem;max-width:18rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}.clients__name strong{font-weight:500}.clients__nav{display:flex;justify-content:space-between;align-items:center;margin-top:1.6rem}@media(min-width: 963px){.clients__nav{display:none}}.clients__nav-btn{background:#4a6c9b;color:#fff;border:none;border-radius:50%;width:3rem;height:3rem;font-size:1.4rem;cursor:pointer;transition:background-color .3s ease}.clients__nav-btn:hover{background:rgb(57.519650655,83.9475982533,120.480349345)}.clients__nav-btn:disabled{background:rgb(133.8427947598,160.4192139738,197.1572052402);cursor:not-allowed}.clients__indicators{display:flex;gap:.5rem}.clients__indicator{width:.8rem;height:.8rem;border-radius:50%;border:none;background:rgb(168.3624454148,187.3668122271,213.6375545852);cursor:pointer;transition:background-color .3s ease}.clients__indicator--active{background:#4a6c9b}.clients__indicator:hover{background:#4a6c9b}.process-tabs__nav{display:grid;grid-template-columns:repeat(3, 1fr);gap:.4rem;margin-bottom:2.4rem}@media(max-width: 768px){.process-tabs__nav{grid-template-columns:repeat(2, 1fr);gap:.8rem}}.process-tabs__tab{width:15rem;display:flex;flex-direction:column;align-items:center;gap:.4rem;padding:.8rem .4rem;background:#fff;border:.2rem solid rgb(202.8820960699,214.3144104803,230.1179039301);border-radius:.8rem;cursor:pointer;transition:all .3s ease;font-family:"Montserrat",sans-serif}.process-tabs__tab:hover{border-color:#4a6c9b;transform:translateY(-0.2rem)}.process-tabs__tab--active{background:#4a6c9b;border-color:#4a6c9b;color:#fff}.process-tabs__tab--active .process-tabs__number{background:#fff;color:#4a6c9b}.process-tabs__tab--active .process-tabs__label{color:#fff}@media(max-width: 768px){.process-tabs__tab{padding:.4rem;gap:.4rem}}@media(max-width: 468px){.process-tabs__tab{width:10rem}}.process-tabs__number{display:flex;align-items:center;justify-content:center;width:2.4rem;height:2.4rem;background:rgb(202.8820960699,214.3144104803,230.1179039301);color:#4a6c9b;border-radius:50%;font-size:1.2rem;font-weight:500;transition:all .3s ease}@media(max-width: 768px){.process-tabs__number{width:2rem;height:2rem;font-size:1rem}}.process-tabs__label{font-size:1.4rem;font-weight:500;color:#212529;transition:color .3s ease;text-align:center}@media(max-width: 768px){.process-tabs__label{font-size:1.2rem}}.process-tabs__content{position:relative;min-height:20rem}@media(max-width: 962px){.process-tabs__content{min-height:auto}}.process-tabs__panel{position:absolute;top:0;left:0;right:0;opacity:0;visibility:hidden;transform:translateY(1rem);transition:all .4s ease}.process-tabs__panel--active{opacity:1;visibility:visible;transform:translateY(0);position:relative}.process-tabs__panel h4{font-size:1.8rem;color:#4a6c9b;margin-bottom:.8rem;font-family:"Playfair Display",serif}@media(max-width: 768px){.process-tabs__panel h4{font-size:2rem}}.process-tabs__panel p{font-size:1.4rem;color:#212529;line-height:1.6;margin:0}@media(max-width: 768px){.process-tabs__panel p{font-size:1.2rem}}.contact__form{display:flex;flex-direction:column;gap:2.4rem;width:100%;max-width:100%}.contact__form__row{display:grid;gap:1.6rem;grid-template-columns:repeat(auto-fit, minmax(22rem, 1fr))}.contact__form__row--full{grid-template-columns:1fr}.contact__form__group{display:flex;flex-direction:column;gap:.4rem}.contact__form__label{font-size:1.4rem;font-weight:500;font-family:"Montserrat",sans-serif;color:#212529}.contact__form__label--legend{padding:0 .8rem;font-size:1.4rem;font-weight:600}.contact__form__hint{font-size:1.2rem;font-weight:400;color:hsl(210,10.8108108108%,39.5098039216%);margin-left:.4rem}.contact__form__input,.contact__form__textarea{width:100%;padding:.8rem 1.6rem;border:.2rem solid rgb(168.3624454148,187.3668122271,213.6375545852);border-radius:.8rem;font-size:1.4rem;font-family:"Montserrat",sans-serif;background:#fff;color:#212529;transition:border-color .25s ease,box-shadow .25s ease}.contact__form__input:focus,.contact__form__textarea:focus{outline:none;border-color:#4a6c9b;box-shadow:0 0 0 .3rem rgba(74,108,155,.15)}.contact__form__input::placeholder,.contact__form__textarea::placeholder{color:rgb(78.4864864865,88,97.5135135135);opacity:.7}.contact__form__input:invalid:not(:placeholder-shown):not(:focus),.contact__form__textarea:invalid:not(:placeholder-shown):not(:focus){border-color:#dc3545;box-shadow:0 0 0 .3rem rgba(220,53,69,.15)}.contact__form__input.touched:invalid,.contact__form__textarea.touched:invalid{border-color:#dc3545;box-shadow:0 0 0 .3rem rgba(220,53,69,.15)}.contact__form__input--error,.contact__form__textarea--error{border-color:#dc3545;box-shadow:0 0 0 .3rem rgba(220,53,69,.15)}.contact__form__textarea{min-height:14rem;resize:vertical;line-height:1.6}.contact__form__services--boxed{border:.2rem solid rgb(168.3624454148,187.3668122271,213.6375545852);padding:1.6rem 1.6rem .8rem;border-radius:.8rem;background:#f8f9fa}.contact__form__checkboxes{display:grid;grid-template-columns:repeat(3, 1fr);gap:1.6rem;width:100%;align-items:start}@media(max-width: 768px){.contact__form .contact__form__checkboxes{grid-template-columns:repeat(2, 1fr)}}@media(max-width: 468px){.contact__form .contact__form__checkboxes{grid-template-columns:1fr}}.contact__form__checkbox{display:flex;flex-direction:column;align-items:center;gap:.4rem;text-align:center;font-size:1.4rem;font-family:"Montserrat",sans-serif;cursor:pointer;padding:.8rem}.contact__form__checkbox input[type=checkbox]{inline-size:1.6rem;block-size:1.6rem;cursor:pointer;margin-bottom:.4rem}@media(max-width: 768px){.contact__form__checkbox{flex:1 1 48%;max-width:48%;white-space:normal}}@media(max-width: 468px){.contact__form__checkbox{flex:1 1 100%;max-width:100%}}.contact__form__error{min-height:1.4em;font-size:1.2rem;color:#dc3545}.contact__form__meta{margin-top:-1.6rem}.contact__form__required-note{font-size:1.2rem;color:hsl(210,10.8108108108%,39.5098039216%)}.contact__form__actions{display:flex;align-items:center;gap:1.6rem;flex-wrap:wrap}.contact__form__status{font-size:1.4rem;font-family:"Montserrat",sans-serif;min-height:1.6em}.contact__form__status--info{color:#4a6c9b}.contact__form__status--error{color:#dc3545}.contact__form__status--success{color:#2d7a2d}.contact__form__submit{align-self:flex-start;padding:1.6rem 3.2rem;background:#4a6c9b;color:#fff;border:none;border-radius:.8rem;font-size:1.4rem;font-weight:500;font-family:"Montserrat",sans-serif;cursor:pointer;transition:background-color .3s ease,transform .2s ease;text-decoration:none;display:inline-block}.contact__form__submit:hover{background:rgb(57.519650655,83.9475982533,120.480349345);transform:translateY(-0.1rem)}.contact__form__submit:active{transform:translateY(0)}.contact__form__submit:focus{outline:none;box-shadow:0 0 0 .3rem rgba(74,108,155,.25)}.contact__container{display:flex;flex-direction:column;gap:3.2rem;max-width:90rem;margin:0 auto}.contact__heading-row{margin-bottom:.8rem}.contact__intro{max-width:70rem}.contact__intro .contact__lead{font-size:1.6rem;line-height:1.55;color:#212529;margin-top:0}.contact__layout{display:grid;grid-template-columns:1fr 1fr;gap:3.2rem;align-items:start}@media(max-width: 962px){.contact__layout{grid-template-columns:1fr;gap:2.4rem}}.contact__content{display:flex;flex-direction:column;gap:1.6rem;font-family:"Montserrat",sans-serif;font-size:1.4rem;line-height:1.6;color:#212529}.contact__bullets{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.8rem}.contact__bullets .contact__bullet{position:relative;padding-left:1.8rem}.contact__bullets .contact__bullet:before{content:"";position:absolute;left:0;top:.6rem;width:.8rem;height:.8rem;border-radius:50%;background:#4a6c9b}.contact__assurance{font-size:1.2rem;color:hsl(210,10.8108108108%,39.5098039216%);margin-top:.8rem}.contact__action{display:flex;flex-direction:column;gap:2.4rem;max-width:50rem;align-items:center;text-align:center}.contact__action .contact__description{font-size:1.4rem;color:#212529;line-height:1.6;margin:0}.contact__action .contact__mailto-btn{align-self:center}.contact__action .contact__note{font-size:1.1rem;color:hsl(210,10.8108108108%,44.5098039216%);margin:0;opacity:.7;font-style:italic;margin-top:-0.8rem;font-weight:400}label{display:flex;flex-direction:column;gap:.4rem;font-size:1.4rem;font-weight:500;color:#212529;font-family:"Montserrat",sans-serif}label input,label textarea{padding:.8rem 1.6rem;border:.2rem solid rgb(168.3624454148,187.3668122271,213.6375545852);border-radius:.8rem;font-size:1.4rem;font-family:"Montserrat",sans-serif;color:#212529;background:#fff;transition:border-color .3s ease,box-shadow .3s ease}label input:focus,label textarea:focus{outline:none;border-color:#4a6c9b;box-shadow:0 0 0 .3rem rgba(74,108,155,.15)}label input::placeholder,label textarea::placeholder{color:rgb(78.4864864865,88,97.5135135135);opacity:.7}label input:invalid:not(:placeholder-shown):not(:focus),label textarea:invalid:not(:placeholder-shown):not(:focus){border-color:#dc3545;box-shadow:0 0 0 .3rem rgba(220,53,69,.15)}label input.touched:invalid,label textarea.touched:invalid{border-color:#dc3545;box-shadow:0 0 0 .3rem rgba(220,53,69,.15)}label textarea{resize:vertical;min-height:12rem;line-height:1.6}.contact__action{display:flex;flex-direction:column;gap:2.4rem;max-width:50rem;align-items:center;text-align:center}.contact__action .contact__description{font-size:1.4rem;color:#212529;line-height:1.6;margin:0}.contact__action .contact__mailto-btn{align-self:center}.contact__action .contact__note{font-size:1.1rem;color:hsl(210,10.8108108108%,44.5098039216%);margin:0;opacity:.7;font-style:italic;margin-top:-0.8rem;font-weight:400}label{display:flex;flex-direction:column;gap:.4rem;font-size:1.4rem;font-weight:500;color:#212529;font-family:"Montserrat",sans-serif}label input,label textarea{padding:.8rem 1.6rem;border:.2rem solid rgb(168.3624454148,187.3668122271,213.6375545852);border-radius:.8rem;font-size:1.4rem;font-family:"Montserrat",sans-serif;color:#212529;background:#fff;transition:border-color .3s ease,box-shadow .3s ease}label input:focus,label textarea:focus{outline:none;border-color:#4a6c9b;box-shadow:0 0 0 .3rem rgba(74,108,155,.15)}label input::placeholder,label textarea::placeholder{color:rgb(78.4864864865,88,97.5135135135);opacity:.7}label input:invalid:not(:placeholder-shown):not(:focus),label textarea:invalid:not(:placeholder-shown):not(:focus){border-color:#dc3545;box-shadow:0 0 0 .3rem rgba(220,53,69,.15)}label input.touched:invalid,label textarea.touched:invalid{border-color:#dc3545;box-shadow:0 0 0 .3rem rgba(220,53,69,.15)}label textarea{resize:vertical;min-height:12rem;line-height:1.6}.hero{height:60rem;background:url("../images/web-banner-80.jpg") bottom right/cover no-repeat;display:flex;align-items:center;position:relative}.hero::before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg, rgba(75, 108, 155, 0.08) 0%, rgba(58, 90, 138, 0.12) 100%);z-index:1}.hero::after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(45deg, rgba(248, 249, 250, 0.1) 0%, transparent 50%, rgba(75, 108, 155, 0.05) 100%);z-index:1}.hero .section__container{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;align-items:center}@media(max-width: 962px){.hero .section__container{grid-template-columns:1fr;text-align:center}}.hero__content{width:85%;padding:.8rem;background:linear-gradient(135deg, rgba(248, 249, 250, 0.9) 0%, rgba(255, 255, 255, 0.8) 100%);border-radius:.8rem;box-shadow:0 .75rem 3rem rgba(74,108,155,.25),0 .5rem 1.5rem rgba(74,108,155,.15),0 .25rem .75rem rgba(74,108,155,.1);backdrop-filter:blur(0.625rem);border:.0625rem solid hsla(0,0%,100%,.2);position:relative}.hero__content::before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg, rgba(75, 108, 155, 0.15) 0%, rgba(58, 90, 138, 0.25) 100%);border-radius:.8rem;z-index:-1;opacity:.3}@media(max-width: 962px){.hero__content{Width:70%;max-width:100%;padding:3.2rem}}@media(max-width: 768px){.hero__content{width:100%;padding:.8rem}}.hero__title{font-size:3rem;color:#4a6c9b;margin:0 1rem;margin-bottom:1.6rem;line-height:1.2}@media(max-width: 962px){.hero__title{font-size:1.8rem}}.hero__subtitle{font-size:1.8rem;color:#212529;margin:0 2.5rem;margin-bottom:3.2rem;line-height:1.6}.hero__actions{display:flex;justify-content:space-between;gap:1.6rem}@media(max-width: 962px){.hero__actions{justify-content:center}}@media(max-width: 480px){.hero__actions{flex-direction:column;align-items:center}}.hero__image{display:none}@media(max-width: 768px){.hero__image{display:flex;justify-content:center;align-items:center;margin-bottom:2rem}.hero__image img{width:20rem;height:20rem;object-fit:cover;border-radius:50%;box-shadow:0 .5rem 2rem rgba(74,108,155,.6)}}@media(max-width: 768px){.hero{background:url("../images/mobile-web-banner-80.jpg") center center/cover no-repeat}}#dean-portrait{width:20rem !important;height:20rem !important;object-fit:cover !important;border-radius:50% !important;box-shadow:0 .5rem 2rem rgba(74,108,155,.6) !important;display:block !important;max-width:none !important;max-height:none !important}.project-container{min-height:80vh;padding:4.8rem 0}.project-container .section__container{max-width:120rem;margin:0 auto;padding:0 1.6rem}.project__navigation{margin-bottom:3.2rem}.project__back-link{display:inline-flex;align-items:center;gap:.4rem;color:#4a6c9b;text-decoration:none;font-weight:500;transition:all .3s ease}.project__back-link:hover{color:rgb(57.519650655,83.9475982533,120.480349345);transform:translateX(-0.25rem)}.project__back-link i{font-size:1.4rem}.project__content{max-width:90rem;margin:0 auto}.project__title{font-size:3.6rem;font-family:"Playfair Display",serif;font-weight:700;color:#4a6c9b;text-align:center;margin-bottom:3.2rem;line-height:1.2}@media(max-width: 962px){.project__title{font-size:3rem}}@media(max-width: 768px){.project__title{font-size:2.4rem}}.project__embed{background:#fff;border-radius:1.2rem;box-shadow:0 1rem 3rem rgba(74,108,155,.15);padding:2.4rem;margin-bottom:3.2rem;display:none;opacity:0;transform:translateY(2rem);transition:all .6s ease}.project__embed--loaded{opacity:1;transform:translateY(0)}.project__embed iframe{width:100%;min-height:40rem;border:none;border-radius:.8rem}@media(max-width: 962px){.project__embed iframe{min-height:30rem}}@media(max-width: 768px){.project__embed iframe{min-height:25rem}}.project__loading{text-align:center;padding:4.8rem;color:#212529}.project__loading p{margin-top:1.6rem;font-size:1.4rem}.project__spinner{width:4rem;height:4rem;border:.4rem solid rgba(74,108,155,.1);border-left:.4rem solid #4a6c9b;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto}.project__error{text-align:center;padding:4.8rem;background:rgba(220,53,69,.05);border:.1rem solid rgba(220,53,69,.2);border-radius:1.2rem}.project__error h2{font-size:2.4rem;color:#dc3545;margin-bottom:1.6rem;font-family:"Playfair Display",serif}.project__error p{color:#212529;margin-bottom:2.4rem;font-size:1.4rem}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@media(max-width: 768px){.project-container{padding:3.2rem 0}.project__back-link{font-size:1.2rem}}/*# sourceMappingURL=style.css.map */
