@import url(https://fonts.googleapis.com/css2?family=Dancing+Script:wght@600;700&family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;1,300;1,400&family=Jost:wght@300;400;500&display=swap);:root{--theme-color-primary:#c4968a;--theme-color-primary-hover:#b8837a;--theme-color-primary-light:#e8d5d0;--theme-color-primary-pale:#f7f0ee;--theme-color-secondary:#4a7c6f;--theme-color-secondary-hover:#3a6359;--theme-color-secondary-light:#7daf9c;--theme-color-secondary-pale:#eaf2ef;--theme-bg-main:#fdfaf8;--theme-bg-alt:#faf7f4;--theme-bg-dark:#2c2420;--theme-text-primary:#2c2420;--theme-text-secondary:#6b5750;--theme-text-muted:#a08880;--theme-border-color:#e8d5d0;--theme-shadow-color:rgba(196,150,138,.15);--theme-shadow-sm:0 2px 12px rgba(196,150,138,.12);--theme-shadow-md:0 8px 32px rgba(196,150,138,.18);--theme-shadow-lg:0 20px 48px rgba(196,150,138,.25);--theme-radius-card:4px 32px 4px 32px;--theme-radius-card-sm:4px 24px 4px 24px;--theme-radius-card-lg:4px 48px 4px 48px;--theme-radius-pill:50px;--theme-radius-input:8px;--theme-radius-image:8px 60px 8px 60px;--theme-transition:all 0.3s ease;--theme-transition-transform:transform 0.3s ease,box-shadow 0.3s ease}body,input,label,li,p,select,textarea{color:var(--theme-text-primary);font-family:Jost,sans-serif;font-size:15px;font-weight:300;line-height:1.9}.hero__title,.section__title,h1,h2{color:var(--theme-text-primary);font-family:Cormorant Garamond,serif;font-weight:300;line-height:1.2}.hero__title,h1{font-size:clamp(40px,6vw,72px);line-height:1.15}.section__title,h2{font-size:clamp(32px,4vw,52px)}h2.section__title{color:var(--theme-color-primary);font-family:Dancing Script,cursive;font-weight:700}.project-card__title,.service-card__title,h3{font-family:Cormorant Garamond,serif;font-size:clamp(20px,2.5vw,26px);font-weight:400;line-height:1.3}h1 em,h2 em,h3 em{color:var(--theme-color-primary);font-style:italic}.navbar__brand,.site-logo{color:var(--theme-color-primary);font-family:Dancing Script,cursive;font-weight:700}.navbar__brand-text{font-size:2rem}.btn,.navbar__nav a,button{letter-spacing:2px}.btn,.eyebrow,.navbar__nav a,.section-label,button{font-family:Jost,sans-serif;font-weight:400;text-transform:uppercase}.eyebrow,.section-label{color:var(--theme-color-primary);display:block;font-size:10px;letter-spacing:4px;margin-bottom:12px}body{background-color:var(--theme-bg-main)}.navbar{backdrop-filter:blur(12px);background-color:rgba(253,250,248,.92);border-bottom:1px solid var(--theme-border-color);box-shadow:none}.navbar__nav a{color:var(--theme-text-secondary);font-size:12px;letter-spacing:2.5px;position:relative;text-decoration:none;text-transform:uppercase;transition:color .3s ease}.navbar__nav a:after{background:var(--theme-color-primary);bottom:-3px;content:"";height:1px;left:0;position:absolute;right:100%;transition:right .3s ease}.navbar__nav a.active,.navbar__nav a:hover{color:var(--theme-color-primary)}.navbar__nav a.active:after,.navbar__nav a:hover:after{right:0}.navbar__nav a.active{text-decoration:none;text-shadow:none}.navbar__cta{border:1px solid var(--theme-color-secondary);border-radius:var(--theme-radius-pill);color:var(--theme-color-secondary);font-family:Jost,sans-serif;font-size:11px;font-weight:400;letter-spacing:2px;padding:8px 20px;text-decoration:none;text-transform:uppercase;transition:var(--theme-transition)}.navbar__cta:hover{background-color:var(--theme-color-secondary);color:#fff}.section:nth-child(2n){background-color:var(--theme-color-primary-pale)}div.hero__slide-container{margin-top:-20vh}div.hero__bg{background-color:#fff;border:1px solid #b8837a;border-radius:50%;height:430px;margin-bottom:20px;padding-top:65px;width:430px}.hero{background-color:var(--theme-bg-main)}.hero__cta{background-color:var(--theme-color-primary);border:none;border-radius:var(--theme-radius-pill);box-shadow:0 4px 20px rgba(196,150,138,.35);color:#fff;cursor:pointer;display:inline-block;font-family:Jost,sans-serif;font-size:12px;font-weight:400;letter-spacing:2px;padding:14px 36px;text-decoration:none;text-transform:uppercase;transition:var(--theme-transition-transform)}.hero__cta:hover{background-color:var(--theme-color-primary-hover);box-shadow:0 8px 28px rgba(196,150,138,.45);color:#fff;transform:translateY(-2px)}#realisations{background-color:var(--theme-color-secondary);color:#fff}#realisations .section__title,#realisations h2,#realisations h3,#realisations p{color:#fff}#realisations .section__title em,#realisations h2 em{color:var(--theme-color-primary-light)}#contact{background-color:var(--theme-color-primary-pale)}.footer,.footer__inner{background-color:var(--theme-bg-dark);color:var(--theme-color-primary-light)}.footer a,.footer__link,.footer__social-link{color:var(--theme-color-primary-light);transition:color .3s ease}.footer a:hover,.footer__link:hover,.footer__social-link:hover{color:#fff}.btn--primary,button[type=submit],input[type=submit]{background-color:var(--theme-color-primary);border:none;border-radius:var(--theme-radius-pill);box-shadow:0 4px 20px rgba(196,150,138,.35);color:#fff;cursor:pointer;font-family:Jost,sans-serif;font-size:12px;font-weight:400;letter-spacing:2px;padding:14px 36px;text-transform:uppercase;transition:var(--theme-transition-transform)}.btn--primary:hover,button[type=submit]:hover{background-color:var(--theme-color-primary-hover);box-shadow:0 8px 28px rgba(196,150,138,.45);color:#fff;transform:translateY(-2px)}.btn--secondary{background-color:transparent;border:1px solid var(--theme-color-secondary);border-radius:var(--theme-radius-pill);color:var(--theme-color-secondary);cursor:pointer;font-family:Jost,sans-serif;font-size:12px;font-weight:400;letter-spacing:2px;padding:14px 36px;text-transform:uppercase;transition:var(--theme-transition)}.btn--secondary:hover{background-color:var(--theme-color-secondary);color:#fff;transform:translateY(-2px)}.service-card{background-color:#fff;border:1px solid rgba(196,150,138,.15);border-radius:var(--theme-radius-card);overflow:hidden;position:relative;transition:var(--theme-transition-transform)}.service-card:hover{border-color:rgba(196,150,138,.15);box-shadow:var(--theme-shadow-lg);transform:translateY(-6px)}.service-card:before{background:linear-gradient(to right,var(--theme-color-primary-light),var(--theme-color-secondary-light));content:"";height:3px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transform-origin:left;transition:transform .4s ease}.service-card:hover:before{transform:scaleX(1)}.service-card__icon{color:var(--theme-color-secondary);text-shadow:none}.service-card__title{text-shadow:none}.services-grid{display:flex;flex-wrap:wrap;justify-content:center}.service-card{flex:1 1 300px;max-width:340px}.project-card{background-color:#fff;border:1px solid rgba(196,150,138,.15);border-radius:var(--theme-radius-card);overflow:hidden;position:relative;transition:var(--theme-transition-transform)}.project-card:hover{box-shadow:var(--theme-shadow-lg);transform:translateY(-6px)}.project-card:before{background:linear-gradient(to right,var(--theme-color-primary-light),var(--theme-color-secondary-light));content:"";height:3px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transform-origin:left;transition:transform .4s ease}.project-card:hover:before{transform:scaleX(1)}#realisations .project-card{background-color:hsla(0,0%,100%,.08);border:1px solid hsla(0,0%,100%,.15);color:#fff}#realisations .project-card:hover{background-color:hsla(0,0%,100%,.14)}#realisations .project-card__description,#realisations .project-card__link,#realisations .project-card__title{color:#fff}.tech-badge{background-color:var(--theme-color-secondary-pale);border-radius:var(--theme-radius-pill);color:var(--theme-color-secondary);font-family:Jost,sans-serif;font-size:11px;letter-spacing:1px;padding:4px 12px}#realisations .tech-badge{background-color:hsla(0,0%,100%,.12);color:hsla(0,0%,100%,.8)}.project-card__image{border-radius:var(--theme-radius-image);display:block;height:auto;width:100%}.contact-form{background-color:#fff;border-radius:var(--theme-radius-card-lg);box-shadow:var(--theme-shadow-md);padding:48px}.contact-form label,.form-group label{color:var(--theme-text-secondary);display:block;font-family:Jost,sans-serif;font-size:11px;font-weight:400;letter-spacing:2px;margin-bottom:8px;text-transform:uppercase}.form-control,input[type=email],input[type=tel],input[type=text],select,textarea{-webkit-appearance:none;background-color:var(--theme-bg-alt);border:1px solid var(--theme-border-color);border-radius:var(--theme-radius-input);color:var(--theme-text-primary);font-family:Jost,sans-serif;font-size:14px;font-weight:300;outline:none;padding:12px 16px;transition:border-color .3s ease,box-shadow .3s ease;width:100%}.form-control:focus,input:focus,select:focus,textarea:focus{border-color:var(--theme-color-secondary);box-shadow:0 0 0 3px rgba(74,124,111,.1)}.about-photo{border-radius:var(--theme-radius-image);display:block;height:auto;width:100%}.about-layout>div:has(>.about-photo){position:relative}.experience-badge{align-items:center;background:var(--theme-color-primary);border:3px solid var(--theme-bg-main);border-radius:50%;bottom:-16px;box-shadow:var(--theme-shadow-md);display:flex;flex-direction:column;height:112px;justify-content:center;position:absolute;right:-16px;text-align:center;width:112px;z-index:2}.experience-badge__number{color:#fff;font-family:Cormorant Garamond,serif;font-size:1.85rem;font-weight:600;line-height:1.1;text-shadow:none}.experience-badge__label{color:#fff;font-family:Jost,sans-serif;font-size:.6rem;font-weight:400;letter-spacing:1.5px;margin-top:4px;text-transform:uppercase}@media (max-width:640px){.experience-badge{bottom:-10px;height:88px;right:-10px;width:88px}.experience-badge__number{font-size:1.4rem}.experience-badge__label{font-size:.52rem}}