@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#1A2022;--olive:#586C3C;--mid:#45494A;--soft:#636767;--stone:#8F9289;--paper:#f7f8f5;--line:#d8dcd4;--header:78px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header) + 20px)}body{margin:0;color:var(--ink);background:var(--paper);font:400 1rem/1.6 'DM Sans',Arial,sans-serif;-webkit-font-smoothing:antialiased}body,button,input,select,textarea{font-family:'DM Sans',Arial,sans-serif}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Manrope,Arial,sans-serif;line-height:1.15;letter-spacing:-.045em}h1{font-size:clamp(3rem,6.1vw,6.3rem);font-weight:600}h2{font-size:clamp(2.3rem,4vw,4.4rem);font-weight:600}h3{font-size:clamp(1.3rem,1.7vw,1.7rem);font-weight:600}p{color:var(--mid)}a{color:inherit;text-decoration:none}a,button{transition:color .25s,background .25s,border-color .25s,transform .25s}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #9dbe70;outline-offset:3px}img{display:block;max-width:100%}.container{width:min(100% - 72px,1440px);margin:auto}.section{padding:clamp(85px,10vw,145px) 0}.skip-link{position:fixed;top:-80px;left:14px;background:#fff;padding:10px;z-index:1000}.skip-link:focus{top:90px}.site-header{position:fixed;top:0;left:0;right:0;height:var(--header);z-index:100;background:rgba(26,32,34,.96);border-bottom:1px solid rgba(255,255,255,.14);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.header-inner{height:100%;display:flex;align-items:center;gap:34px}.brand{display:flex;align-items:center;flex:none}.brand img{width:166px;height:auto;max-height:48px;object-fit:contain}.desktop-nav{display:flex;align-items:center;gap:clamp(16px,1.9vw,34px);margin-left:auto}.desktop-nav a{font-size:.85rem;font-weight:600;white-space:nowrap;color:#dee3dc;letter-spacing:.005em}.desktop-nav a:hover,.desktop-nav a[aria-current=page]{color:#a9c786}.header-cta{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;padding:13px 18px;background:var(--olive);color:#fff;font-size:.85rem;font-weight:700;white-space:nowrap}.header-cta:hover,.button.primary:hover{background:#6f854a;transform:translateY(-2px)}.menu-toggle{display:none;border:0;background:transparent;width:42px;height:42px;padding:8px;cursor:pointer}.menu-toggle span{display:block;height:2px;background:#fff;margin:7px 0}.mobile-nav{display:none}.eyebrow{display:inline-flex;align-items:center;gap:13px;color:var(--olive);font-size:.76rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.eyebrow-line{width:25px;height:1px;background:currentColor}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:32px;padding:16px 20px;min-height:54px;font-size:.9rem;font-weight:700;line-height:1.2}.button.primary{background:var(--olive);color:white}.button.outline{border:1px solid rgba(255,255,255,.7);color:#fff}.button.outline:hover{background:#fff;color:var(--ink)}.button.light-button{background:var(--paper);color:var(--ink)}.button.light-button:hover{background:#e5eadb;transform:translateY(-2px)}
.hero{min-height:max(710px,100svh);position:relative;isolation:isolate;color:#fff;overflow:hidden;background:var(--ink)}.hero-image,.hero-overlay{position:absolute;inset:0;z-index:-1}.hero-image{background:url('/forest-house.webp') center center /cover no-repeat}.hero-overlay{background:linear-gradient(90deg,rgba(10,16,16,.83) 0%,rgba(10,16,16,.62) 35%,rgba(10,16,16,.06) 80%),linear-gradient(0deg,rgba(8,15,14,.45),transparent 35%)}.hero-inner{min-height:inherit;display:flex;flex-direction:column;justify-content:center;padding-top:calc(var(--header) + 48px);padding-bottom:36px}.hero-copy{width:min(780px,68%);margin-top:auto;margin-bottom:auto}.hero .eyebrow{color:#cce0b7}.hero h1{margin:28px 0 28px;color:#fff;max-width:820px}.hero h1 em{font-style:normal;color:#d9e6c7}.hero p{max-width:640px;color:#e9ece8;font-size:clamp(1.1rem,1.45vw,1.36rem);line-height:1.6}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:38px}.hero-foot{display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.4);padding-top:20px;color:#e0e5dc;font-size:.72rem;letter-spacing:.15em;font-weight:700}
.section-head{margin-bottom:42px}.head-row{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);align-items:end;gap:70px;margin-top:26px}.head-row h2{max-width:780px;margin:0}.head-row p{max-width:410px;margin:0;font-size:1.08rem;line-height:1.7}.service-grid{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.link-card{min-height:310px;padding:27px 24px 30px;background:#fff;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column}.link-card:hover{background:#eef2e8;transform:translateY(-4px)}.card-top{display:flex;justify-content:space-between;align-items:flex-start;color:var(--olive);font-weight:700;font-size:.78rem;letter-spacing:.08em}.card-top .arrow{font-size:1.4rem;line-height:1}.link-card h3{margin:auto 0 10px}.link-card p{font-size:.92rem;line-height:1.6;margin:0}.under-link{display:inline-flex;gap:22px;align-items:center;border-bottom:1px solid var(--olive);padding:7px 0;color:var(--olive);font-size:.93rem;font-weight:700}.under-link:hover{gap:29px;color:var(--ink)}.services-overview .under-link{margin-top:30px}
.audience-section{background:#ecefe8}.audience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:45px}.audience-card{min-height:360px;background:#fff;padding:32px;display:flex;flex-direction:column}.audience-card>span{font-size:.72rem;letter-spacing:.14em;color:var(--olive);font-weight:700}.audience-card h3{font-size:clamp(1.7rem,2.1vw,2.5rem);margin:auto 0 14px}.audience-card p{max-width:300px;margin:0 0 24px}.audience-card b{font-size:.9rem;color:var(--olive)}.audience-card:hover{transform:translateY(-4px)}.audience-card.dark-card{background:var(--olive);color:#fff;position:relative;overflow:hidden}.dark-card:after{content:'';position:absolute;width:300px;height:300px;border:1px solid rgba(255,255,255,.18);border-radius:50%;right:-120px;bottom:-150px;box-shadow:0 0 0 45px rgba(255,255,255,.025),0 0 0 95px rgba(255,255,255,.025)}.audience-card.dark-card>span,.audience-card.dark-card b,.audience-card.dark-card p{color:#e9f0e3}
.why-section{background:#fff;padding:clamp(85px,10vw,145px) 0}.why-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(50px,9vw,160px)}.why-grid h2{margin:26px 0}.why-grid p{max-width:580px;font-size:1.08rem;line-height:1.75}.why-grid .under-link{margin-top:18px}.values-list{align-self:center;border-top:1px solid var(--line)}.values-list>div{display:grid;grid-template-columns:50px 1fr auto;align-items:center;gap:12px;min-height:76px;border-bottom:1px solid var(--line)}.values-list span{font-size:.8rem;color:var(--olive);font-weight:700}.values-list strong{font-size:1.08rem;font-weight:600}.process-section{background:#f1f3ee}.process-grid{list-style:none;padding:0;margin:55px 0 0;display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.process-grid li{border-top:2px solid var(--olive);padding:20px 12px 0 0;min-height:230px}.process-grid li>span{color:var(--olive);font-weight:700;font-size:.8rem}.process-grid h3{font-size:1.18rem;margin:32px 0 10px}.process-grid p{font-size:.9rem}
.closing-cta{background:var(--olive);color:#fff;padding:80px 0}.closing-inner{display:flex;align-items:end;justify-content:space-between;gap:50px}.closing-cta .eyebrow{color:#d4e4bd}.closing-cta h2{margin:22px 0}.closing-cta p{color:#ebf0e8;max-width:690px;font-size:1.08rem;margin:0}.closing-cta .button{flex:none}.footer{background:var(--ink);color:#eff2ec;padding-top:75px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.4fr;gap:45px;padding-bottom:70px}.footer-grid>div{display:flex;flex-direction:column;align-items:start;gap:11px}.footer-grid strong{margin-bottom:10px;font-size:.85rem;color:#bac9aa}.footer-grid a,.footer-grid span{font-size:.91rem;color:#d9dfd8}.footer-grid a:hover{color:#bad397}.footer-brand img{width:170px;height:auto;max-height:55px;object-fit:contain;margin-bottom:10px}.footer-brand p{color:#d9dfd8;line-height:1.7;margin:0}.footer-bottom{border-top:1px solid rgba(255,255,255,.16);display:flex;justify-content:space-between;gap:30px;padding:20px 0 26px;color:#adb4ad;font-size:.77rem}
.sub-hero{padding:calc(var(--header) + 100px) 0 105px;background:#e9ede4;position:relative;overflow:hidden}.sub-hero:before{content:'';position:absolute;width:680px;height:680px;right:-100px;top:-250px;border-radius:50%;background:radial-gradient(circle,rgba(88,108,60,.12),transparent 65%);filter:blur(24px)}.sub-hero-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(230px,.5fr);align-items:center;gap:50px;position:relative}.sub-hero h1{font-size:clamp(3.1rem,5.6vw,6rem);max-width:950px;margin:32px 0 25px}.sub-hero p{font-size:clamp(1.12rem,1.4vw,1.34rem);max-width:770px;line-height:1.7;margin:0}.sub-hero-art{aspect-ratio:1;position:relative;border:1px solid rgba(88,108,60,.26);border-radius:50%;max-width:350px;justify-self:end;box-shadow:0 0 0 33px rgba(88,108,60,.04),0 0 0 68px rgba(88,108,60,.035)}.airline{position:absolute;border:1px solid rgba(88,108,60,.45);border-radius:50%;transform:rotate(-28deg)}.airline.a{inset:35% -15%}.airline.b{inset:25% -5%}.airline.c{inset:15% 5%}.art-cross{position:absolute;inset:0;display:grid;place-items:center;font:600 2rem Manrope;color:rgba(88,108,60,.4);letter-spacing:-.08em}.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(60px,10vw,170px)}.split h2{margin:25px 0 0}.split p{font-size:1.15rem;line-height:1.8;margin-bottom:25px}.detail-intro{background:#fff}.detail-steps{background:#f0f2ed}.detail-steps .head-row{margin-bottom:50px}.detail-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.detail-grid.five{grid-template-columns:repeat(5,1fr)}.detail-grid article{padding:30px 25px;min-height:250px;background:#fff;border-top:2px solid var(--olive)}.detail-grid article>span{font-size:.78rem;color:var(--olive);font-weight:700}.detail-grid h3{margin:55px 0 13px;font-size:1.15rem}.detail-grid p{margin:0;font-size:.92rem}.related,.consultation{background:#fff}.related h2,.consultation h2{margin:26px 0 0}
.contact-section{background:#fff}.contact-grid{display:grid;grid-template-columns:minmax(270px,.8fr) minmax(0,1.2fr);gap:clamp(55px,9vw,145px)}.contact-info h2{margin:25px 0}.contact-info>p{font-size:1.12rem;line-height:1.75;margin-bottom:58px}.contact-detail{border-top:1px solid var(--line);padding:20px 0;display:flex;flex-direction:column;gap:8px}.contact-detail>span{font-size:.75rem;letter-spacing:.13em;color:var(--olive);font-weight:700}.contact-detail a,.contact-detail strong{font-size:1.03rem;font-weight:600}.contact-detail a:hover{color:var(--olive)}.contact-form{background:#f4f6f2;padding:clamp(28px,4vw,60px)}.contact-form h2{font-size:2rem;margin-bottom:8px}.contact-form>p{margin-bottom:30px}.contact-form label{display:block;font-size:.83rem;font-weight:700;color:var(--ink)}.contact-form label b{color:var(--olive)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.contact-form input:not([type=checkbox]):not([type=hidden]),.contact-form select,.contact-form textarea{width:100%;border:1px solid #c8cec3;border-radius:0;background:#fff;color:var(--ink);font-size:1rem;min-height:52px;padding:13px 14px;margin:7px 0 17px;appearance:none}.contact-form select{background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='m3 6 5 5 5-5' fill='none' stroke='%23586C3C' stroke-width='2'/%3E%3C/svg%3E") right 14px center no-repeat}.contact-form textarea{resize:vertical;min-height:135px}.contact-form input[type=file]{padding:11px!important}.form-hint{font-size:.8rem;margin:-12px 0 19px!important;color:var(--soft)}.consent{display:flex!important;align-items:flex-start;gap:10px;font-weight:400!important;margin:8px 0 25px}.consent input{width:17px;height:17px;flex:none;margin-top:3px;accent-color:var(--olive)}.contact-form .submit{border:0;cursor:pointer;min-width:205px}.contact-form small{display:block;margin-top:24px;color:var(--soft);font-size:.75rem;line-height:1.5}.honeypot{position:absolute;left:-9999px;opacity:0}.thankyou-page{min-height:100svh;display:grid;place-items:center;background:var(--ink);padding:30px}.thankyou-card{width:min(100%,650px);padding:60px;background:#f4f6f2}.thankyou-card img{background:var(--ink);padding:12px;margin-bottom:50px;width:190px;height:auto}.thankyou-card h1{font-size:clamp(2.4rem,4vw,4rem);margin:22px 0}.thankyou-card p{font-size:1.08rem;line-height:1.7}.thankyou-card p a{color:var(--olive);text-decoration:underline}.thankyou-card .button{margin-top:20px}
@media(max-width:1200px){.desktop-nav{gap:16px}.desktop-nav a{font-size:.78rem}.brand img{width:140px}.header-inner{gap:20px}.service-grid{grid-template-columns:repeat(3,1fr)}.detail-grid.five{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){:root{--header:70px}.container{width:min(100% - 40px,1440px)}.desktop-nav,.header-cta{display:none}.header-inner{justify-content:space-between}.brand img{width:150px}.menu-toggle{display:block}.mobile-nav:not([hidden]){display:flex;flex-direction:column;position:absolute;top:var(--header);left:0;right:0;padding:18px 20px 24px;background:var(--ink);border-top:1px solid rgba(255,255,255,.15);box-shadow:0 20px 35px rgba(0,0,0,.25)}.mobile-nav a{color:#f1f4ef;padding:10px 4px;font-size:1.02rem;font-weight:600}.mobile-nav a.mobile-cta{background:var(--olive);padding:12px 16px;margin-top:10px}.hero{min-height:770px}.hero-copy{width:min(720px,100%)}.hero-overlay{background:linear-gradient(90deg,rgba(10,16,16,.84),rgba(10,16,16,.48)),linear-gradient(0deg,rgba(8,15,14,.4),transparent 40%)}.head-row,.split,.why-grid,.contact-grid{grid-template-columns:1fr;gap:24px}.head-row p{max-width:690px}.audience-grid{grid-template-columns:repeat(2,1fr)}.audience-card.dark-card{grid-column:span 2;min-height:250px}.process-grid{grid-template-columns:repeat(3,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}.sub-hero-grid{grid-template-columns:1fr}.sub-hero-art{display:none}.detail-grid{grid-template-columns:repeat(2,1fr)}.detail-grid.five{grid-template-columns:repeat(2,1fr)}.closing-inner{align-items:start;flex-direction:column}.contact-grid{gap:55px}}
@media(max-width:600px){.container{width:min(100% - 34px,1440px)}.section{padding:75px 0}.hero{min-height:100svh}.hero-image{background-position:62% center}.hero-inner{padding-top:120px}.hero h1{font-size:clamp(2.75rem,11vw,4rem);margin:24px 0}.hero p{font-size:1.03rem}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .button{width:100%}.hero-foot{font-size:.62rem;gap:15px}.head-row{margin-top:20px}.service-grid,.audience-grid,.detail-grid,.detail-grid.five{grid-template-columns:1fr}.link-card{min-height:215px}.link-card h3{margin:35px 0 10px}.audience-card,.audience-card.dark-card{grid-column:auto;min-height:270px}.process-grid{grid-template-columns:1fr 1fr;gap:20px}.process-grid li{min-height:180px}.process-grid h3{margin-top:24px}.why-section{padding:75px 0}.footer-grid{grid-template-columns:1fr 1fr;gap:35px}.footer-brand{grid-column:span 2}.footer-bottom{flex-direction:column;gap:5px}.sub-hero{padding:calc(var(--header) + 65px) 0 70px}.sub-hero h1{font-size:clamp(2.65rem,11vw,4.1rem)}.sub-hero p{font-size:1.05rem}.detail-grid article{min-height:205px}.detail-grid h3{margin-top:30px}.form-row{grid-template-columns:1fr;gap:0}.contact-form{padding:28px 19px}.contact-section{padding-top:70px}.thankyou-card{padding:35px 24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
.brand img{width:100px;max-height:68px}.footer-brand img{width:115px;max-height:82px}
@media(max-width:900px){.brand img{width:90px;max-height:62px}}

/* Quiet motion and technical graphics */
.scroll-progress{position:fixed;top:var(--header);left:0;right:0;height:3px;background:#a4bd82;z-index:101;transform:scaleX(0);transform-origin:left center;pointer-events:none;box-shadow:0 0 14px rgba(164,189,130,.55)}
.hero-inner{position:relative;z-index:1}.hero-image{transform:scale(1.04) translate3d(0,var(--hero-shift,0px),0);transition:transform .12s linear}.hero-flow{position:absolute;z-index:0;top:14%;right:-2%;width:min(48vw,690px);height:66%;pointer-events:none;opacity:.55;filter:drop-shadow(0 0 10px rgba(211,231,185,.3))}.hero-flow svg{width:100%;height:100%;overflow:visible}.flow-line{fill:none;stroke:#d4e8bb;stroke-width:1.3;stroke-dasharray:9 15;animation:air-current 22s linear infinite}.flow-line.line-two{opacity:.55;animation-duration:27s;animation-direction:reverse}.flow-line.line-three{opacity:.35;animation-duration:32s}.flow-dot{fill:#e8f3d7;filter:drop-shadow(0 0 8px #d4e8bb);animation:breathe 4s ease-in-out infinite}.flow-dot.dot-two{animation-delay:1.7s}
.services-overview{position:relative;overflow:hidden}.services-overview:before{content:'';position:absolute;width:700px;height:700px;right:-290px;top:-210px;pointer-events:none;background:repeating-radial-gradient(circle at center,transparent 0 37px,rgba(88,108,60,.055) 38px 39px,transparent 40px 76px);filter:blur(3px)}.services-overview>.container{position:relative}
.link-card{position:relative;isolation:isolate;overflow:hidden}.link-card:before{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at 50% 10%,rgba(190,214,157,.24),transparent 60%);opacity:0;transition:opacity .4s ease}.link-card:hover:before,.link-card:focus-visible:before{opacity:1}.service-icon{display:grid;place-items:center;flex:none;width:66px;height:66px;margin:24px 0 0;border:1px solid #d5e0c8;border-radius:50%;background:#f0f5e9;color:var(--olive);transition:background .35s,border-color .35s,transform .45s cubic-bezier(.2,.8,.2,1)}.service-icon svg{width:38px;height:38px;transition:transform .6s cubic-bezier(.2,.8,.2,1)}.link-card:hover .service-icon,.link-card:focus-visible .service-icon{background:#e0ebd2;border-color:#9cb581;transform:translateY(-4px)}.link-card:hover .service-icon svg,.link-card:focus-visible .service-icon svg{transform:rotate(-8deg) scale(1.07)}.link-card:hover .icon-ventilatsioon svg{transform:rotate(45deg)}.link-card:hover .icon-jahutus svg{transform:rotate(30deg)}.link-card .card-top .arrow{transition:transform .35s}.link-card:hover .card-top .arrow{transform:translate(4px,-4px)}.link-card h3{margin:25px 0 10px}
.audience-card{position:relative;overflow:hidden}.audience-card:before{content:'';position:absolute;inset:auto -30% -100% -30%;height:100%;border-radius:50%;background:rgba(88,108,60,.07);filter:blur(32px);transition:transform .55s}.audience-card:hover:before{transform:translateY(-34%)}.audience-card>*{position:relative;z-index:1}.audience-card b{transition:letter-spacing .3s}.audience-card:hover b{letter-spacing:.035em}.audience-card.dark-card:before{background:rgba(255,255,255,.08)}
.why-section{position:relative;overflow:hidden}.why-section:before{content:'';position:absolute;right:-180px;top:-250px;width:780px;height:780px;opacity:.4;pointer-events:none;background:repeating-linear-gradient(0deg,transparent 0 59px,rgba(88,108,60,.08) 60px 61px),repeating-linear-gradient(90deg,transparent 0 59px,rgba(88,108,60,.08) 60px 61px);mask-image:radial-gradient(circle,black,transparent 70%);filter:blur(1px)}.why-section>.container{position:relative}.values-list>div{position:relative;transition:padding-left .3s,background .3s}.values-list>div:before{content:'';position:absolute;left:0;top:0;bottom:0;width:0;background:var(--olive);transition:width .3s}.values-list>div:hover{padding-left:12px;background:#f5f8f1}.values-list>div:hover:before{width:3px}
.process-grid li{position:relative}.process-grid li:before{content:'';position:absolute;width:10px;height:10px;border-radius:50%;background:var(--olive);top:-6px;left:0;box-shadow:0 0 0 5px #f1f3ee;transition:box-shadow .4s,transform .4s}.process-grid li.in-view:before{box-shadow:0 0 0 6px #dce7cf;transform:scale(1.08)}
.sub-hero-art{animation:orbit-breathe 10s ease-in-out infinite}.airline.a{animation:air-orbit 18s ease-in-out infinite}.airline.b{animation:air-orbit 23s ease-in-out reverse infinite}.airline.c{animation:air-orbit 28s ease-in-out infinite}.sub-hero:after{content:'';position:absolute;inset:0 0 0 auto;width:45%;pointer-events:none;opacity:.38;background:repeating-linear-gradient(90deg,transparent 0 75px,rgba(88,108,60,.05) 76px 77px);mask-image:linear-gradient(90deg,transparent,black)}
.closing-cta{position:relative;overflow:hidden}.closing-cta:before{content:'';position:absolute;width:650px;height:650px;right:-160px;top:-290px;border:1px solid rgba(255,255,255,.2);border-radius:50%;box-shadow:0 0 0 70px rgba(255,255,255,.035),0 0 0 140px rgba(255,255,255,.025);animation:orbit-breathe 12s ease-in-out infinite}.closing-inner{position:relative}.button span:last-child,.header-cta span:last-child{transition:transform .3s}.button:hover span:last-child,.header-cta:hover span:last-child{transform:translate(4px,-3px)}.contact-form input:not([type=checkbox]):not([type=hidden]):focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--olive);box-shadow:0 0 0 3px rgba(88,108,60,.12)}
.js-motion .scroll-reveal{opacity:0;transform:translate3d(0,24px,0);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.8,.2,1);transition-delay:var(--reveal-delay,0ms)}.js-motion .scroll-reveal.in-view{opacity:1;transform:none}
@keyframes air-current{to{stroke-dashoffset:-240}}@keyframes breathe{50%{opacity:.3;transform:scale(.75)}}@keyframes orbit-breathe{50%{transform:scale(1.035)}}@keyframes air-orbit{50%{transform:rotate(-22deg) translateX(8px)}}
@media(max-width:900px){.hero-flow{width:68vw;right:-25%;opacity:.36}.service-icon{margin-top:20px}.link-card h3{margin-top:24px}}
@media(max-width:600px){.hero-flow{display:none}.service-icon{width:58px;height:58px}.service-icon svg{width:34px;height:34px}.link-card{min-height:250px}.link-card h3{margin-top:22px}.sub-hero:after{display:none}}
@media(prefers-reduced-motion:reduce){.hero-image{transform:none!important}.flow-line,.flow-dot,.sub-hero-art,.airline,.closing-cta:before{animation:none!important}.js-motion .scroll-reveal{opacity:1!important;transform:none!important;transition:none!important}*{scroll-behavior:auto!important}}

/* 2026 visual refinement: lighter Nordic rhythm and stronger architecture */
.site-header{background:rgba(255,255,255,.96);border-bottom:1px solid rgba(26,32,34,.1);box-shadow:0 6px 28px rgba(26,32,34,.06)}.desktop-nav a{color:var(--ink)}.desktop-nav a:hover,.desktop-nav a[aria-current=page]{color:var(--olive)}.desktop-nav a[aria-current=page]{position:relative}.desktop-nav a[aria-current=page]:after{content:'';position:absolute;left:0;right:0;bottom:-13px;height:2px;background:var(--olive)}.menu-toggle span{background:var(--ink)}.scroll-progress{top:calc(var(--header) - 2px);height:2px}.brand img{width:76px;max-height:67px}.header-cta{border-radius:3px;text-transform:uppercase;letter-spacing:.055em}
.hero{min-height:clamp(610px,73vh,740px)}.hero-overlay{background:linear-gradient(90deg,rgba(10,16,16,.9) 0%,rgba(10,16,16,.7) 29%,rgba(10,16,16,.2) 55%,rgba(10,16,16,0) 78%),linear-gradient(0deg,rgba(8,15,14,.32),transparent 42%)}.hero-copy{width:min(590px,50%)}.hero h1{font-size:clamp(3rem,4.45vw,4.8rem);line-height:1.05;margin:23px 0 22px}.hero p{font-size:clamp(1rem,1.2vw,1.2rem);max-width:570px}.hero-actions{margin-top:29px}.hero-flow{opacity:.32}.hero-foot{padding-top:16px}.hero-image{background-position:center 54%}
.services-overview{padding-top:72px;padding-bottom:94px;background:#fbfcfa}.services-overview .section-head{margin-bottom:32px}.services-overview .head-row{grid-template-columns:1fr minmax(280px,.48fr);gap:50px}.services-overview .head-row h2{font-size:clamp(2.2rem,3.25vw,3.55rem)}.services-overview .link-card{min-height:285px;padding:24px 22px 27px}.services-overview .service-icon{width:60px;height:60px}.services-overview .service-icon svg{width:34px;height:34px}
.audience-section{background:#f4f5f2}.photo-audience-grid{grid-template-columns:repeat(3,1fr);gap:14px}.photo-audience-card{min-height:430px;color:#fff;background-image:linear-gradient(0deg,rgba(11,18,18,.88) 0%,rgba(11,18,18,.34) 48%,rgba(11,18,18,.1) 100%),var(--card-image);background-size:cover;background-position:center;border:0}.photo-audience-card:after{content:'';position:absolute;inset:0;border:1px solid rgba(255,255,255,.18);pointer-events:none}.photo-audience-card:before{height:58%;bottom:-32%;background:rgba(88,108,60,.38);filter:blur(38px)}.photo-audience-card>span{color:#eef3e8}.photo-card-copy{margin-top:auto;position:relative;z-index:1}.photo-audience-card h3{margin:0 0 10px;font-size:clamp(1.7rem,2vw,2.25rem)}.photo-audience-card p{color:#fff;margin-bottom:18px}.photo-audience-card b{color:#dce8cb}.photo-audience-card:hover{transform:translateY(-5px);background-size:cover}.photo-audience-card{transition:transform .35s,background-size .65s ease;background-size:cover;background-repeat:no-repeat}
.audience-feature{width:min(100% - 72px,1440px);height:clamp(380px,53vw,650px);margin:42px auto 0;position:relative;overflow:hidden;background:#dfe4da}.audience-feature img{width:100%;height:100%;object-fit:cover}.audience-feature:after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(0deg,rgba(12,20,20,.72),transparent)}.audience-feature figcaption{position:absolute;z-index:1;left:clamp(24px,4vw,65px);right:clamp(24px,4vw,65px);bottom:clamp(24px,4vw,55px);display:flex;align-items:end;justify-content:space-between;gap:30px;color:#fff}.audience-feature figcaption span{font-size:.75rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#cfe0b9}.audience-feature figcaption strong{max-width:590px;font:600 clamp(1.55rem,2.5vw,2.65rem)/1.25 Manrope;text-align:right}.commercial-feature img{object-position:center 58%}
.sub-hero{padding-top:calc(var(--header) + 74px);padding-bottom:78px;background:#f1f3ee}.sub-hero h1{font-size:clamp(2.9rem,4.65vw,5.15rem);margin:25px 0 21px}.sub-hero p{font-size:clamp(1.05rem,1.25vw,1.2rem)}.sub-hero-art{max-width:290px}
.closing-cta{background:var(--ink)}.closing-cta:before{border-color:rgba(164,189,130,.2);box-shadow:0 0 0 70px rgba(164,189,130,.025),0 0 0 140px rgba(164,189,130,.018)}.closing-cta .button.light-button{background:var(--olive);color:#fff}.closing-cta .button.light-button:hover{background:#6c8249}.footer{border-top:1px solid rgba(255,255,255,.08)}
@media(max-width:900px){.brand img{width:68px;max-height:59px}.mobile-nav:not([hidden]){background:#fff;border-top-color:rgba(26,32,34,.1);box-shadow:0 20px 35px rgba(0,0,0,.13)}.mobile-nav a{color:var(--ink)}.mobile-nav a.mobile-cta{color:#fff}.hero{min-height:680px}.hero-copy{width:min(610px,75%)}.hero-overlay{background:linear-gradient(90deg,rgba(10,16,16,.86),rgba(10,16,16,.3) 72%,rgba(10,16,16,.06)),linear-gradient(0deg,rgba(8,15,14,.32),transparent 42%)}.photo-audience-grid{grid-template-columns:1fr 1fr}.photo-audience-card:last-child{grid-column:span 2;min-height:330px}.audience-feature{width:min(100% - 40px,1440px)}}
@media(max-width:600px){.brand img{width:62px;max-height:55px}.hero{min-height:700px}.hero-copy{width:100%}.hero-overlay{background:linear-gradient(90deg,rgba(10,16,16,.83),rgba(10,16,16,.3)),linear-gradient(0deg,rgba(8,15,14,.36),transparent 43%)}.hero h1{font-size:clamp(2.55rem,10.3vw,3.55rem)}.photo-audience-grid{grid-template-columns:1fr}.photo-audience-card,.photo-audience-card:last-child{grid-column:auto;min-height:365px}.audience-feature{width:calc(100% - 34px);height:440px;margin-top:25px}.audience-feature figcaption{align-items:start;flex-direction:column;gap:8px}.audience-feature figcaption strong{text-align:left;font-size:1.45rem}.sub-hero h1{font-size:clamp(2.45rem,10vw,3.75rem)}}

/* Full-width photo heroes for internal pages */
.brand img{width:92px;max-height:72px}
.photo-sub-hero{min-height:clamp(560px,68vh,690px);padding:0;display:flex;align-items:stretch;color:#fff;background:var(--ink);position:relative;isolation:isolate;overflow:hidden}
.photo-sub-hero:before,.photo-sub-hero:after{display:none}
.sub-hero-image,.sub-hero-overlay{position:absolute;inset:0;pointer-events:none}
.sub-hero-image{z-index:-2;background-image:var(--sub-hero-image);background-size:cover;background-position:var(--sub-hero-position,center);transform:scale(1.025);animation:hero-photo-breathe 18s ease-in-out infinite alternate}
.sub-hero-overlay{z-index:-1;background:linear-gradient(90deg,rgba(10,16,16,.94) 0%,rgba(10,16,16,.78) 31%,rgba(10,16,16,.34) 58%,rgba(10,16,16,.1) 82%),linear-gradient(0deg,rgba(8,15,14,.5),transparent 48%)}
.photo-sub-hero .sub-hero-grid{width:min(100% - 72px,1440px);min-height:inherit;display:flex;align-items:flex-end;position:relative;z-index:2;padding:calc(var(--header) + 80px) 0 72px}
.photo-sub-hero .sub-hero-grid>div{width:min(780px,63%)}
.photo-sub-hero .eyebrow{color:#cfe3b8}
.photo-sub-hero h1{max-width:900px;margin:25px 0 20px;color:#fff;font-size:clamp(2.85rem,4.25vw,4.85rem);line-height:1.06;text-wrap:balance}
.photo-sub-hero p{max-width:700px;margin:0;color:#eef1eb;font-size:clamp(1.02rem,1.2vw,1.18rem);line-height:1.68}
.photo-sub-hero .hero-flow{z-index:0;top:8%;right:-2%;width:min(52vw,760px);height:78%;opacity:.42}
.air-particles{position:absolute;z-index:1;inset:12% 0 8% 42%;overflow:hidden;pointer-events:none;mask-image:linear-gradient(90deg,transparent,black 18%,black 80%,transparent)}
.air-particles span{position:absolute;width:4px;height:4px;border-radius:50%;background:#e5f0d8;box-shadow:0 0 11px rgba(221,239,199,.8);opacity:0;animation:particle-drift 10s ease-in-out infinite;animation-delay:calc(var(--i) * -.62s)}
.air-particles span:nth-child(4n+1){left:4%;top:22%}.air-particles span:nth-child(4n+2){left:18%;top:49%;width:3px;height:3px}.air-particles span:nth-child(4n+3){left:34%;top:70%;width:5px;height:5px}.air-particles span:nth-child(4n){left:48%;top:35%;width:2px;height:2px}
@keyframes particle-drift{0%{opacity:0;transform:translate3d(-35px,45px,0) scale(.65)}18%{opacity:.72}70%{opacity:.38}100%{opacity:0;transform:translate3d(260px,-55px,0) scale(1.2)}}
@keyframes hero-photo-breathe{to{transform:scale(1.055)}}
@media(max-width:900px){.brand img{width:82px;max-height:64px}.photo-sub-hero{min-height:620px}.photo-sub-hero .sub-hero-grid{width:min(100% - 40px,1440px);padding-top:calc(var(--header) + 65px);padding-bottom:58px}.photo-sub-hero .sub-hero-grid>div{width:min(690px,82%)}.photo-sub-hero .hero-flow{width:74vw;right:-24%;opacity:.34}.air-particles{left:30%}}
@media(max-width:600px){.brand img{width:76px;max-height:59px}.photo-sub-hero{min-height:650px}.photo-sub-hero .sub-hero-grid{width:calc(100% - 34px);padding-top:calc(var(--header) + 56px);padding-bottom:46px}.photo-sub-hero .sub-hero-grid>div{width:100%}.photo-sub-hero h1{font-size:clamp(2.45rem,10vw,3.55rem);margin:20px 0 18px}.photo-sub-hero p{font-size:1rem}.photo-sub-hero .sub-hero-overlay{background:linear-gradient(90deg,rgba(10,16,16,.91),rgba(10,16,16,.48)),linear-gradient(0deg,rgba(8,15,14,.58),transparent 55%)}.photo-sub-hero .hero-flow{display:block;width:115vw;right:-57%;top:11%;opacity:.2}.air-particles{inset:13% 0 9% 28%;opacity:.75}}
@media(prefers-reduced-motion:reduce){.sub-hero-image,.air-particles span{animation:none!important}.air-particles{display:none}}

/* Balanced scale and lighter architectural imagery */
:root{--header:86px}
h1{font-size:clamp(2.7rem,4.2vw,4.75rem)}
h2{font-size:clamp(2rem,3.05vw,3.4rem)}
h3{font-size:clamp(1.2rem,1.45vw,1.52rem)}
.section{padding:clamp(72px,7vw,106px) 0}
.brand img{width:124px;max-height:79px}
.hero{min-height:clamp(540px,64vh,670px)}
.hero-image{background-image:url('/hero-house-daylight.webp');background-position:center 52%}
.hero-overlay{background:linear-gradient(90deg,rgba(15,25,26,.9) 0%,rgba(15,25,26,.76) 22%,rgba(15,25,26,.34) 47%,rgba(15,25,26,.02) 73%),linear-gradient(0deg,rgba(12,21,22,.2),transparent 38%)}
.hero-copy{width:min(520px,43%)}
.hero h1{font-size:clamp(2.8rem,3.75vw,4rem);line-height:1.1;margin:20px 0}
.hero p{font-size:clamp(1rem,1.1vw,1.12rem);line-height:1.55}
.hero-actions{margin-top:24px}
.photo-sub-hero{min-height:clamp(520px,61vh,630px)}
.photo-sub-hero .sub-hero-grid{padding-top:calc(var(--header) + 62px);padding-bottom:54px}
.photo-sub-hero h1{font-size:clamp(2.65rem,3.7vw,4.15rem);line-height:1.1}
.photo-sub-hero p{font-size:clamp(1rem,1.1vw,1.1rem);line-height:1.58}
.services-overview{padding-top:58px;padding-bottom:74px}
.services-overview .section-head{margin-bottom:28px}
.services-overview .service-grid{border:0;grid-template-columns:repeat(5,minmax(0,1fr))}
.services-overview .link-card{min-height:208px;padding:18px 19px 22px;align-items:center;text-align:center;background:transparent;border:0;border-right:1px solid var(--line)}
.services-overview .link-card:last-child{border-right:0}
.services-overview .link-card h3{margin:12px 0 8px;font-size:1.08rem;text-transform:uppercase;letter-spacing:.015em}
.services-overview .link-card p{max-width:190px;font-size:.9rem;line-height:1.45}
.services-overview .card-more{display:none}
.service-icon,.services-overview .service-icon{width:58px;height:58px;margin:0;border:0;border-radius:0;background:transparent;color:var(--olive)}
.service-icon svg,.services-overview .service-icon svg{width:44px;height:44px}
.link-card:hover .service-icon,.link-card:focus-visible .service-icon{background:transparent;border-color:transparent;transform:translateY(-3px)}
.link-card:hover .service-icon svg,.link-card:focus-visible .service-icon svg{transform:none}
.link-card .card-more{display:block;margin-top:auto;padding-top:18px;font-size:1.35rem;color:var(--olive)}
.services-overview .link-card .card-more{display:none}
.services-overview .link-card:hover{background:#f3f6ef;transform:translateY(-3px)}
.photo-audience-card{min-height:315px}
.photo-audience-card h3{font-size:clamp(1.45rem,1.85vw,2rem)}
.photo-audience-card>span{font-size:.68rem;letter-spacing:.15em}
.why-section{padding:clamp(72px,7vw,106px) 0}
.why-grid{align-items:center;gap:clamp(34px,5vw,90px)}
.why-grid h2{max-width:580px;margin:21px 0}
.why-grid p{font-size:1rem;line-height:1.65}
.why-media{min-width:0}
.why-media img{width:100%;height:clamp(280px,27vw,390px);object-fit:cover;object-position:center}
.why-media .values-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;border:0;margin-top:18px}
.why-media .values-list>div{display:block;min-height:auto;padding:9px 0;border-top:1px solid var(--line);border-bottom:0}
.why-media .values-list>div:before{display:none}
.why-media .values-list strong{font-size:.88rem;color:var(--mid)}
.why-media .values-list>div:hover{padding-left:0;background:none}
.process-section{padding:clamp(66px,6vw,90px) 0}
.process-grid{margin-top:36px}
.process-grid li{min-height:152px;padding:17px 18px 0 0}
.process-grid h3{margin:18px 0 8px;font-size:1.04rem}
.process-grid p{font-size:.88rem;line-height:1.5}
.process-grid li:after{content:'→';position:absolute;right:11px;top:15px;color:var(--stone);font-size:1rem}
.process-grid li:last-child:after{display:none}
.detail-grid article{min-height:190px}
.detail-grid h3{margin:22px 0 10px;font-size:1.08rem}
.content-photo{position:relative;width:min(100% - 72px,1440px);height:clamp(300px,36vw,500px);margin:0 auto 58px;overflow:hidden}
.content-photo img{width:100%;height:100%;object-fit:cover}
.content-photo:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(0deg,rgba(26,32,34,.75),transparent)}
.content-photo figcaption{position:absolute;z-index:1;left:clamp(22px,4vw,56px);bottom:clamp(18px,3vw,40px);max-width:560px;color:#fff;font:600 clamp(1.35rem,2.15vw,2.2rem)/1.25 Manrope}
.closing-cta,.footer{background:#1A2022}
.closing-cta{padding:65px 0}
.consultation{background:linear-gradient(90deg,#fff 52%,rgba(88,108,60,.05)),url('/technical-plans.webp') right center/44% auto no-repeat}
@media(max-width:1200px){.brand img{width:112px;max-height:75px}.services-overview .service-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.services-overview .link-card{padding-inline:12px}}
@media(max-width:900px){:root{--header:76px}.brand img{width:105px;max-height:70px}.hero{min-height:640px}.hero-copy{width:min(580px,70%)}.hero-overlay{background:linear-gradient(90deg,rgba(15,25,26,.88),rgba(15,25,26,.35) 75%,rgba(15,25,26,.04))}.services-overview .service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.services-overview .link-card{border-bottom:1px solid var(--line)}.services-overview .link-card:nth-child(3){border-right:0}.photo-sub-hero{min-height:580px}.photo-sub-hero .sub-hero-grid{padding-top:calc(var(--header) + 50px)}.photo-sub-hero .sub-hero-grid>div{width:min(660px,75%)}.process-grid li:after{display:none}.content-photo{width:calc(100% - 40px)}}
@media(max-width:600px){:root{--header:72px}.brand img{width:98px;max-height:67px}.hero{min-height:660px}.hero-copy{width:100%}.hero h1{font-size:clamp(2.45rem,9.4vw,3.3rem)}.hero-overlay{background:linear-gradient(90deg,rgba(15,25,26,.88),rgba(15,25,26,.53)),linear-gradient(0deg,rgba(15,25,26,.35),transparent 48%)}.hero-image{background-position:62% center}.services-overview .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.services-overview .link-card{min-height:190px;border-right:1px solid var(--line)}.services-overview .link-card:nth-child(2n){border-right:0}.services-overview .link-card h3{font-size:.94rem}.services-overview .link-card p{font-size:.82rem}.photo-audience-card,.photo-audience-card:last-child{min-height:320px}.why-media .values-list{grid-template-columns:1fr 1fr}.process-grid{grid-template-columns:1fr;gap:8px}.process-grid li{min-height:auto;padding:17px 0 18px 24px;border-top:0;border-left:2px solid var(--olive)}.process-grid li:before{left:-6px;top:20px}.process-grid h3{margin:0 0 5px}.photo-sub-hero{min-height:590px}.photo-sub-hero h1{font-size:clamp(2.3rem,8.5vw,3.25rem)}.photo-sub-hero .sub-hero-grid>div{width:100%}.content-photo{width:calc(100% - 34px);height:320px;margin-bottom:35px}.content-photo figcaption{font-size:1.35rem}.consultation{background:#fff}}
@media(max-width:600px){.services-overview .head-row{grid-template-columns:1fr;gap:14px}.services-overview .head-row h2{font-size:clamp(2rem,8vw,2.5rem)}.services-overview .link-card:last-child{grid-column:1/-1;border-right:0}}


