@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url('assets/poppins-400.ttf') format('truetype')}
@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url('assets/poppins-500.ttf') format('truetype')}
@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url('assets/poppins-600.ttf') format('truetype')}
@font-face{font-family:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url('assets/poppins-700.ttf') format('truetype')}
@font-face{font-family:Poppins;font-style:normal;font-weight:800;font-display:swap;src:url('assets/poppins-800.ttf') format('truetype')}
:root{--ink:#57504b;--brown:#3c302a;--coral:#f17e70;--pink:#fbded9;--beige:#e5dac8;--white:#fff;--line:#e6e1db;--font:'Poppins',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.75;background:white}body.locked{overflow:hidden}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #ae4439;outline-offset:6px}button{color:inherit}::selection{background:var(--pink);color:var(--brown)}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.16}h1,h2{font-weight:800;letter-spacing:-.045em}h3{letter-spacing:-.025em}p{margin-bottom:1.4em}img,svg{display:block;max-width:100%}.coral{color:var(--coral)}.sr-only,.skip:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip:focus{position:fixed;z-index:100;background:var(--brown);color:#fff;padding:16px}.header{height:108px;padding:0 4.1%;display:flex;align-items:center;justify-content:space-between;position:fixed;inset:0 0 auto;z-index:30;background:#fff;box-shadow:0 1px 5px #00000010;transition:background .35s,color .35s,box-shadow .35s}.header.over-hero{background:transparent;box-shadow:none;color:#fff}.brand{display:flex;align-items:center;gap:0;width:214px;line-height:1.04}.brand-circle{width:66px;flex-shrink:0}.brand>span{font-family:Georgia,serif;font-size:22px;letter-spacing:-.8px}.brand strong{font-weight:700}.header-right{display:flex;align-items:center;gap:44px}.header-contact{font-size:12px;font-weight:600;letter-spacing:.03em}.header-contact span{font-size:21px;margin-left:9px}.menu-toggle{background:none;border:0;width:45px;height:45px;position:relative;display:flex;flex-direction:column;gap:6px;align-items:center;justify-content:center}.menu-toggle span{height:2px;width:29px;background:currentColor;transition:transform .25s,opacity .25s}.menu-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(8px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.navigation{position:fixed;inset:0;margin:0;width:100%;max-width:none;height:100dvh;max-height:none;border:0;padding:145px 9% 45px;background:#fff;color:var(--ink);z-index:29}.navigation::backdrop{background:#fff}.menu-inner{max-width:950px;margin:auto}.navigation nav{display:grid}.navigation nav a{display:flex;align-items:center;font-size:clamp(34px,6vw,74px);font-weight:700;line-height:1.45;letter-spacing:-.04em;border-bottom:1px solid var(--line)}.navigation nav a:hover{color:var(--coral)}.navigation small{font-size:12px;font-weight:400;letter-spacing:.1em;width:55px}.navigation nav a>span{margin-left:auto;font-weight:400;font-size:.6em}.menu-mail{display:inline-block;margin-top:30px}.eyebrow{text-transform:uppercase;letter-spacing:.19em;font-size:11px;font-weight:600}.hero{height:100svh;min-height:640px;position:relative;overflow:hidden;background:#aab8bc;color:white;display:flex;align-items:flex-end;justify-content:center;text-align:center}.hero-image{position:absolute;inset:0;background:url('assets/berge.webp') center 48%/cover;transform:scale(1.04);transition:transform 1.1s cubic-bezier(.2,.65,.25,1);animation:hero-in 2.5s ease-out both}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#344b5270 0%,#8aa6ab30 65%,#344b5240)}.hero.zooming .hero-image{transform:scale(1.34);animation:none}.hero-content{z-index:1;position:relative;padding:160px 24px 74px;width:100%;transition:opacity .4s,transform .5s}.hero.zooming .hero-content{opacity:.35;transform:translateY(-15px)}.hero-kicker{font-size:12px;font-weight:500;letter-spacing:.04em;margin:0 auto 21px;padding:0 0 11px;border-bottom:2px solid var(--beige);display:table}.hero h1{font-size:clamp(48px,6vw,84px);line-height:.9;color:var(--beige);margin:0 0 5px;letter-spacing:-.04em}.hero-phrase{font-size:clamp(31px,4vw,53px);font-weight:700;line-height:1.2;letter-spacing:-.04em;margin-bottom:26px}.typing-caret{display:inline-block;height:.85em;vertical-align:-.02em;border-right:2px solid #fff;margin-left:4px;animation:blink 1s steps(1) infinite}.hero-more{display:inline-flex;gap:35px;align-items:center;background:none;color:#fff;border:1px solid #ffffffd0;padding:12px 27px;font-size:13px;transition:background .2s}.hero-more:hover{background:#ffffff26}.hero-side{position:absolute;left:4.5%;bottom:52px;z-index:1;font-size:10px;letter-spacing:.15em;writing-mode:vertical-rl;transform:rotate(180deg)}.hero-count{position:absolute;right:4.5%;bottom:52px;z-index:1;display:flex;align-items:center;gap:12px;font-size:11px}.hero-count:after{content:'';width:45px;height:1px;background:#fff}.section-heading{text-align:center;padding:104px 5% 80px}.section-heading h1,.section-heading h2{font-size:clamp(32px,4.7vw,64px);text-transform:uppercase;margin:0 auto 31px;max-width:1150px}.rule{width:112px;height:4px;background:var(--coral);display:block;margin:0 auto 49px}.section-heading p{max-width:1030px;margin:0 auto;font-size:16px;line-height:1.9}.section-heading .eyebrow{margin-bottom:24px;font-size:11px}.services{background:var(--pink);position:relative;padding:62px 3.7% 72px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:3.5%}.service{text-align:center;display:flex;flex-direction:column;align-items:center}.service-icon{width:106px;height:106px;border-radius:50%;background:#c9b2ad;display:grid;place-items:center;margin-bottom:37px}.service-icon svg{width:58px;height:58px;stroke:var(--brown);fill:none;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round}.service h3{font-size:18px;line-height:1.6;color:#c75a4f;min-height:85px;display:flex;align-items:flex-start;justify-content:center;margin-bottom:20px;font-weight:600}.service p{font-size:14px;line-height:2.05;max-width:245px;margin-bottom:29px}.text-link{font-size:12px;display:inline-flex;align-items:center;gap:16px;margin-top:auto;padding:9px 0}.round-arrow{border-radius:50%;background:var(--coral);color:var(--white);font-size:12px;line-height:19px;text-align:center;width:19px;height:19px;transition:transform .2s}.text-link:hover .round-arrow{transform:translateX(5px)}.about{display:grid;grid-template-columns:7fr 5fr;min-height:660px}.about-copy{background:var(--beige);padding:100px 15%;text-align:center;display:flex;flex-direction:column;justify-content:center}.about h2{font-size:clamp(28px,3vw,44px);line-height:1.3;color:var(--brown);margin-bottom:27px}.about .rule{background:white;margin-bottom:28px;width:100px}.about p{font-size:16px;line-height:1.9}.about-art{background:var(--brown);color:var(--beige);overflow:hidden;padding:65px 10%;display:flex;flex-direction:column;justify-content:center;position:relative}.about-art:after{content:'';position:absolute;right:-70px;top:60px;width:250px;height:250px;border:1px solid #e5dac830;border-radius:50%}.about-art p{font-size:clamp(36px,4.5vw,66px);line-height:1.08;letter-spacing:-.05em;font-weight:800;z-index:1}.about-art .small{font-size:11px;font-weight:400;letter-spacing:.15em;line-height:2;margin:30px 0 0}.project-cta{background:var(--brown);text-align:center;padding:42px 20px;color:var(--beige);font-size:17px;font-weight:600}.project-cta a{border-block:2px solid var(--coral);display:inline-block;padding:7px 0}.portfolio-section .section-heading{padding-bottom:49px}.filters{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 27px;padding:0 20px 40px}.filter{background:transparent;border:0;border-bottom:2px solid transparent;padding:7px 0;color:var(--ink);font-size:10px;letter-spacing:.07em;font-weight:600;text-transform:uppercase}.filter:hover,.filter.active{color:#bd5146;border-bottom-color:var(--coral)}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:21px;padding:0 20px 75px}.project-card{display:block;position:relative;overflow:hidden;background:#f0ece7;aspect-ratio:1/1}.project-media{position:absolute;inset:0;width:100%;height:100%;max-width:none;transition:transform .6s cubic-bezier(.2,.65,.25,1)}.project-card:hover .project-media{transform:scale(1.045)}.project-caption{position:absolute;inset:auto 0 0;padding:55px 26px 23px;color:#fff;background:linear-gradient(transparent,#241d17d9);opacity:0;transform:translateY(7px);transition:opacity .25s,transform .25s}.project-caption .eyebrow{font-size:9px;margin:0 0 7px}.project-caption h3{font-size:22px;margin:0;font-weight:600}.project-caption>span{position:absolute;right:25px;bottom:24px;font-size:24px}.project-card:hover .project-caption,.project-card:focus-visible .project-caption{opacity:1;transform:none}.empty-results{padding:50px 24px 100px;text-align:center;grid-column:1/-1}.empty-results h3{font-size:23px}.empty-results p{max-width:480px;margin:auto}.footer{background:var(--brown);color:var(--beige);padding:95px 5% 25px}.footer-top{display:grid;grid-template-columns:1.8fr 1fr 1fr;gap:6%;padding-bottom:90px}.footer h2{font-size:clamp(30px,3.6vw,49px);line-height:1.2;max-width:400px;margin-bottom:26px}.footer .rule{margin:0 0 24px;width:110px}.footer p{font-size:13px;color:#ded1c5;line-height:1.8}.footer h3{font-size:16px;line-height:1.4;margin:16px 0 5px;font-weight:600}.footer a{font-size:13px}.footer a:hover{text-decoration:underline}.footer .telephone{display:inline-block;margin:8px 0 19px;font-size:20px;color:#a8c0b9}.footer-bottom{display:flex;justify-content:space-between;gap:20px;align-items:center;padding-top:22px;border-top:1px solid #e5dac82b}.footer-bottom p,.footer-bottom a{font-size:10px;margin:0}.footer-bottom nav{display:flex;gap:24px}.touch{position:fixed;z-index:20;bottom:25px;left:32px;width:72px;height:72px;background:var(--coral);border-radius:50%;box-shadow:0 3px 9px #0002;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--brown);font-size:15px;font-weight:700;letter-spacing:-.5px;line-height:.95;transition:transform .3s}.touch:hover{transform:rotate(-9deg)}.touch>span{position:absolute;right:7px;top:10px;font-size:12px}.to-top{position:fixed;z-index:15;bottom:29px;right:25px;width:40px;height:40px;border:1px solid #c7bcb0;background:#fffc;border-radius:50%;opacity:0;pointer-events:none;transition:opacity .3s}.to-top.visible{opacity:1;pointer-events:auto}.page{padding-top:108px;min-height:75vh}.back-link{display:inline-flex;gap:12px;align-items:center;font-size:12px;margin:35px 5% 0}.page>.section-heading{padding-top:68px}.detail-intro{max-width:940px;padding:70px 30px 65px;margin:auto;text-align:center}.detail-intro .service-icon{margin:0 auto 30px}.detail-intro h1{font-size:clamp(36px,5vw,68px);margin-bottom:30px}.detail-intro>p{max-width:730px;margin:0 auto 30px}.button{display:inline-flex;justify-content:center;align-items:center;gap:35px;border:1px solid var(--brown);background:var(--brown);color:var(--beige);padding:15px 25px;font-size:12px;font-weight:500;transition:background .2s}.button:hover{background:#665047}.button.light{background:transparent;color:var(--brown)}.detail-band{background:var(--pink);padding:60px 8%;display:grid;grid-template-columns:1fr 2fr;gap:8%}.detail-band h2{font-size:32px}.detail-band ul{margin:0;list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:15px 25px}.detail-band li{padding:13px 0;border-bottom:1px solid #c9b2ad;font-size:14px}.detail-portfolio{padding-top:65px}.detail-portfolio h2{text-align:center;font-size:32px;margin-bottom:37px}.contact-layout{display:grid;grid-template-columns:1fr 1.3fr;gap:10%;padding:25px 8% 110px;max-width:1400px;margin:auto}.contact-info h2{font-size:25px;margin:0 0 10px}.contact-info section{margin-bottom:35px}.contact-info p{font-size:14px}.contact-info a{border-bottom:1px solid var(--coral)}.contact-info address{font-style:normal;font-size:14px}.contact-form{display:grid;gap:24px}.contact-form label{font-size:12px;font-weight:600;display:block}.contact-form input,.contact-form select,.contact-form textarea{display:block;width:100%;border:0;border-bottom:1px solid #b6aaa0;border-radius:0;background:#faf8f5;padding:14px 12px;color:var(--ink);font-size:15px;margin-top:8px}.contact-form textarea{min-height:145px;resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:25px}.contact-form .form-note{font-size:11px;line-height:1.8;font-weight:400;margin:0}.contact-form .check-label{display:flex;align-items:flex-start;gap:12px;font-weight:400;font-size:11px;line-height:1.8}.contact-form input[type=checkbox]{width:17px;height:17px;flex-shrink:0;margin:3px 0}.contact-form .button{justify-self:start}.contact-form .form-status{font-size:12px;color:#784a36;padding:12px 15px;background:var(--pink);margin:0}.contact-form .form-status:empty{display:none}.project-page-media{max-width:900px;aspect-ratio:1/1;position:relative;margin:0 auto 55px;overflow:hidden}.project-detail{padding:55px 6% 90px;text-align:center;max-width:980px;margin:auto}.project-detail h1{font-size:clamp(36px,5vw,62px)}.project-detail .eyebrow{margin-bottom:20px}.project-detail p{max-width:600px;margin:0 auto 30px}.project-next{display:flex;justify-content:space-between;gap:20px;margin-top:65px;border-top:1px solid var(--line);padding-top:25px;font-size:13px}.legal{max-width:800px;margin:auto;padding:80px 30px 100px}.legal h1{font-size:clamp(38px,5vw,58px)}.legal h2{font-size:24px;letter-spacing:-.02em;margin-top:40px}.legal p{font-size:14px}.draft-note{border-left:3px solid var(--coral);padding:15px 20px;background:#faf4ef;font-size:13px}.intro-page .about{margin-top:30px}.contact-success{font-size:13px}.subtle-label{color:#9e8275;font-size:11px;letter-spacing:.04em}#main:focus{outline:none}@keyframes hero-in{from{transform:scale(1.15)}to{transform:scale(1.04)}}@keyframes blink{50%{opacity:0}}@media(min-width:1600px){.services{padding-inline:max(4%,calc((100vw - 1500px)/2));gap:50px}.project-grid{max-width:1600px;margin:auto}.hero-content{padding-bottom:100px}}@media(max-width:1000px){.header{height:90px}.page{padding-top:90px}.services{grid-template-columns:repeat(3,minmax(0,1fr));gap:50px 35px;padding:55px 6%}.service h3{min-height:58px;font-size:18px}.service p{font-size:14px}.service-icon{margin-bottom:24px}.service:nth-child(4),.service:nth-child(5){grid-column:auto}.section-heading{padding-block:75px 65px}.about-copy{padding:70px 10%}.about-art{padding-inline:11%}.about{min-height:580px}.footer-top{gap:5%;grid-template-columns:1.4fr 1fr 1fr}.footer h3{font-size:14px}.footer a{font-size:12px}.contact-layout{gap:6%;padding-inline:6%}.hero-kicker{font-size:10px}.navigation{padding-top:120px}}@media(max-width:650px){body{font-size:15px}.header{height:82px;padding-inline:20px}.header-contact{display:none}.brand{width:185px}.brand-circle{width:56px}.brand>span{font-size:20px}.header-right{gap:0}.menu-toggle{width:38px}.hero{min-height:650px}.hero-image{background-position:43% center}.hero-content{padding:120px 26px 88px}.hero-kicker{max-width:300px;line-height:1.9;margin-bottom:24px;font-size:9px;letter-spacing:.06em}.hero h1{font-size:64px}.hero-phrase{font-size:38px}.hero-more{padding:12px 25px}.hero-side{display:none}.hero-count{right:24px;bottom:30px;font-size:9px}.section-heading{padding:66px 24px 54px}.section-heading h1,.section-heading h2{font-size:34px;line-height:1.17;margin-bottom:26px}.section-heading p{font-size:14px;line-height:1.9}.rule{width:85px;height:3px;margin-bottom:31px}.services{grid-template-columns:1fr;padding:45px 28px 30px;gap:0}.service{display:grid;grid-template-columns:73px 1fr;gap:0 23px;text-align:left;align-items:start;padding:25px 0 35px;border-bottom:1px solid #c9b2ad88}.service:last-child{border-bottom:0}.service-icon{width:72px;height:72px;grid-row:1/4;margin:0}.service-icon svg{width:41px;height:41px}.service h3{min-height:0;display:block;font-size:19px;line-height:1.4;margin-bottom:15px}.service p{max-width:none;font-size:13px;line-height:1.9;margin-bottom:12px}.service .text-link{grid-column:2;justify-self:start;font-size:12px}.about{grid-template-columns:1fr;min-height:0}.about-copy{padding:67px 30px}.about h2{font-size:33px}.about p{font-size:14px}.about-art{padding:60px 35px;min-height:330px}.about-art p{font-size:48px;max-width:340px;margin-bottom:0}.about-art .small{font-size:10px}.project-cta{font-size:14px;padding:35px 27px}.project-cta a{line-height:1.7}.portfolio-section .section-heading{padding-bottom:32px}.filters{gap:8px 18px;padding:0 18px 30px}.filter{font-size:9px}.project-grid{grid-template-columns:1fr;gap:15px;padding:0 15px 55px}.project-caption{opacity:1;transform:none;padding:45px 20px 20px}.project-caption h3{font-size:21px}.footer{padding:60px 28px 100px}.footer-top{grid-template-columns:1fr;gap:20px;padding-bottom:40px}.footer h2{font-size:37px;max-width:300px}.footer h3{font-size:17px}.footer a{font-size:14px}.footer-bottom{align-items:flex-start;flex-direction:column;gap:14px}.footer-bottom p,.footer-bottom a{font-size:10px}.touch{width:61px;height:61px;bottom:18px;left:18px;font-size:13px}.to-top{bottom:24px;right:18px;width:35px;height:35px}.navigation{padding:115px 28px 35px}.navigation nav a{font-size:43px;line-height:1.7}.navigation small{width:37px;font-size:10px}.menu-mail{font-size:14px;margin-top:30px}.page{padding-top:82px}.page>.section-heading{padding-top:50px}.back-link{margin:26px 24px 0;font-size:11px}.detail-intro{padding:45px 24px 50px}.detail-intro .service-icon{width:90px;height:90px}.detail-intro h1{font-size:38px}.detail-intro>p{font-size:14px}.detail-band{grid-template-columns:1fr;padding:45px 27px;gap:15px}.detail-band h2{font-size:28px}.detail-band ul{grid-template-columns:1fr}.detail-band li{font-size:13px}.contact-layout{grid-template-columns:1fr;gap:30px;padding:0 25px 70px}.form-row{grid-template-columns:1fr;gap:24px}.contact-info{padding-bottom:20px;border-bottom:1px solid var(--line)}.contact-info section{margin-bottom:25px}.contact-form{gap:22px}.contact-form .button{width:100%}.project-detail{padding-top:40px;padding-bottom:65px}.project-detail h1{font-size:38px}.project-next{font-size:11px}.project-page-media{margin-bottom:35px}.legal{padding:55px 25px 65px}.legal h1{font-size:36px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.hero-image{transform:none}}

.modal-close{position:absolute;right:4.1%;top:29px;width:45px;height:45px;border:0;background:transparent;font-family:Arial,sans-serif;font-size:42px;font-weight:300;line-height:1}.modal-brand{position:absolute;left:4.8%;top:32px;font-family:Georgia,serif;line-height:1.05;font-size:22px;letter-spacing:-.7px}@media(max-width:650px){.modal-close{right:20px;top:18px;width:38px}.modal-brand{left:27px;top:23px;font-size:19px}}

/* Vector arrows avoid platform-specific emoji rendering. */
.icon-arrow{display:inline-block;width:1em;height:1em;max-width:none;flex-shrink:0;vertical-align:-.12em;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}.round-arrow{display:inline-flex;align-items:center;justify-content:center}.round-arrow .icon-arrow{width:12px;height:12px}.header-contact>span{display:inline-flex;vertical-align:middle}.navigation nav a>span{display:inline-flex;align-items:center}.navigation nav .icon-arrow{width:30px;height:30px}.touch>span{display:inline-flex}.to-top{display:grid;place-items:center}.to-top .icon-arrow{width:18px;height:18px}@media(max-width:650px){.navigation nav .icon-arrow{width:25px;height:25px}}
