/* Kraft Studio — original branding, real work, a new visual direction. */
:root{--ink:#12282e;--muted:#637276;--paper:#f6f7f3;--white:#fff;--teal:#0b8c84;--mint:#9eead8;--line:#dce2dd;--dark:#10262c;--max:1280px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;width:100%;height:auto}button{color:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:600;letter-spacing:-.05em}h1{font-size:clamp(48px,6.3vw,90px);line-height:1.02}h2{font-size:clamp(34px,3.7vw,54px);line-height:1.08}h3{font-size:24px;letter-spacing:-.035em}p{line-height:1.7}em{font-style:normal;color:var(--teal)}:focus-visible{outline:3px solid #0b9189;outline-offset:5px}.container{width:calc(100% - 96px);max-width:var(--max);margin-inline:auto}.section{padding:105px 0}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:700;line-height:1.5;margin-bottom:22px}.header{height:100px;padding:0 48px;display:flex;align-items:center;justify-content:space-between;gap:34px;background:var(--paper);border-bottom:1px solid var(--line);position:relative;z-index:20}.brand img{width:167px;height:auto}.header nav{display:flex;gap:30px;align-items:center;font-size:13px;font-weight:600}.header nav a{padding-block:14px}.header nav a:hover,.header nav a[aria-current]{color:#0a867e}.header-contact{display:flex;align-items:center;gap:28px;border:1px solid var(--ink);padding:14px 19px;font-size:13px;font-weight:600}.header-contact span{font-size:23px}.menu-toggle{display:none}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:36px;background:var(--mint);border:1px solid var(--mint);padding:18px 24px;font-size:13px;font-weight:700;line-height:1.2;color:var(--ink);transition:background .2s,transform .2s}.button span{font-size:23px;font-weight:400}.button:hover{background:#c2f5e5;transform:translateY(-2px)}.button-outline{background:transparent;border-color:var(--ink)}.button-outline:hover{background:var(--mint)}.text-link{display:inline-flex;align-items:center;gap:18px;font-size:13px;font-weight:600;line-height:1.5;border-bottom:1px solid currentColor;padding-bottom:5px}.text-link:hover{color:#0a9287}.hero{display:grid;grid-template-columns:46% 54%;background:var(--dark);color:white;min-height:640px}.hero-copy{padding:65px 42px 48px max(48px,calc((100vw - 1280px)/2));display:flex;flex-direction:column;align-items:flex-start}.hero .eyebrow{color:#a3c0c0;margin-bottom:29px;display:flex;gap:10px;align-items:center}.status-dot{width:6px;height:6px;background:var(--mint);border-radius:50%;box-shadow:0 0 9px #9eead866}.hero h1{font-size:clamp(54px,6.1vw,90px);letter-spacing:-.065em;line-height:1.025}.hero h1 em{color:var(--mint)}.hero-intro{font-size:15px;line-height:1.65;color:#b9c8c8;max-width:350px;margin-top:27px}.hero-actions{display:flex;align-items:center;gap:26px;margin-top:32px;flex-wrap:wrap}.hero-actions .text-link{font-size:12px;border:0}.hero-note{font-size:10px;color:#9cb2b4;display:flex;align-items:center;gap:12px;margin-top:auto;padding-top:42px;letter-spacing:.02em}.tiny-line{width:24px;height:1px;background:var(--mint);flex-shrink:0}.hero-visual{position:relative;min-width:0;overflow:hidden}.hero-visual>img{height:100%;position:absolute;inset:0;object-fit:cover;object-position:50% 53%}.hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#081b23b3,transparent 32%)}.photo-caption{position:absolute;z-index:1;bottom:29px;left:32px;right:32px;display:flex;align-items:end;justify-content:space-between;font-size:12px}.photo-caption small{display:block;font-size:9px;letter-spacing:.15em;color:#bccbc9;margin-bottom:8px}.photo-caption a{border:1px solid #ffffff60;width:42px;height:42px;display:grid;place-items:center;font-size:25px}.expertise-strip{background:var(--mint);padding:24px 0;font-size:11px;font-weight:600}.expertise-strip>.container{display:flex;align-items:center;justify-content:space-between;gap:20px}.expertise-strip span:nth-child(2){font-size:17px;letter-spacing:-.015em;display:flex;gap:24px;align-items:center}.expertise-strip i{font-style:normal;font-size:20px;font-weight:400}.expertise-strip a{border-bottom:1px solid currentColor;padding-bottom:4px}.section-head{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:46px}.section-head>p,.section-head>div:nth-child(2){max-width:350px;color:var(--muted);font-size:14px}.section-head .text-link{margin-top:19px;color:var(--ink)}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.service-card{min-width:0;display:block}.service-card>img{aspect-ratio:4/5;object-fit:cover;transition:filter .25s}.service-card:hover>img{filter:brightness(1.13)}.service-caption{display:flex;align-items:center;gap:12px;padding:23px 0;border-bottom:1px solid #bac6c2}.service-caption>span:first-child{font-size:10px;color:var(--muted);align-self:center}.service-caption h3{font-size:21px}.service-caption>span:last-child{margin-left:auto;font-size:24px}.foil-feature{display:grid;grid-template-columns:1fr 1fr;background:#e8eeea}.foil-photo{position:relative;overflow:hidden;min-height:640px}.foil-photo>img{height:100%;width:100%;object-fit:cover;position:absolute}.photo-label{position:absolute;bottom:30px;left:32px;background:var(--paper);font-size:9px;font-weight:600;letter-spacing:.13em;padding:12px 15px}.foil-copy{padding:85px clamp(40px,6vw,100px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.foil-copy h2{font-size:clamp(40px,4.4vw,65px)}.foil-copy>p:not(.eyebrow){font-size:14px;color:var(--muted);max-width:340px;margin-top:25px}.feature-list{list-style:none;padding:0;margin:27px 0 35px;width:100%;font-size:13px}.feature-list li{padding:11px 0;border-bottom:1px solid #cbd6d0;display:flex;justify-content:space-between}.feature-list li:after{content:"↗"}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.project-image{display:block;position:relative;width:100%;border:0;padding:0;overflow:hidden;background:#d9e1dd;text-align:left}.project-image>img{aspect-ratio:4/3;object-fit:cover;transition:transform .35s}.project-image:hover>img{transform:scale(1.025)}.image-arrow{position:absolute;bottom:18px;right:18px;background:var(--paper);width:36px;height:36px;display:grid;place-items:center;font-size:24px}.project-caption{display:flex;gap:10px;align-items:center;justify-content:space-between;padding:21px 0 15px;border-bottom:1px solid var(--line)}.project-caption h3{font-size:19px}.project-caption>span{color:var(--muted);font-size:11px}.project>.eyebrow{margin-top:25px;margin-bottom:12px}.project>h2{font-size:26px;line-height:1.2}.project>p:not(.eyebrow){margin-top:16px;font-size:13px;color:var(--muted)}.process{background:#e9eeea}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:65px;margin-top:65px}.steps>div{border-top:1px solid #bac8c0;padding-top:24px}.steps span{font-size:12px;color:#0b8d84}.steps h3{margin-top:29px;margin-bottom:16px;font-size:26px}.steps p{font-size:13px;color:var(--muted);max-width:310px}.about-strip{padding:85px 0}.about-strip>.container{display:grid;grid-template-columns:1fr 1.8fr 1.8fr;gap:35px;align-items:start}.about-strip .eyebrow{padding-top:10px}.about-strip p:not(.eyebrow){font-size:14px;color:var(--muted);margin-bottom:24px}.cta{background:var(--dark);color:white;padding:80px 0}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:35px}.cta h2{font-size:clamp(38px,4.5vw,65px)}.cta em{color:var(--mint)}.cta .eyebrow{color:#a5bebd}.footer{background:var(--dark);color:#b1c3c1;padding:75px 0 0;border-top:1px solid #ffffff22}.footer-grid{display:grid;grid-template-columns:2fr 1.4fr 1fr 1.6fr;gap:45px}.footer-logo img{width:164px}.footer-grid h2{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:white;margin-bottom:24px}.footer-grid a:not(.footer-logo){display:block;font-size:12px;line-height:2.2}.footer-grid a:hover{color:var(--mint)}.footer-grid p{font-size:12px;margin-top:22px;line-height:1.8}.social{display:flex;gap:22px;margin-top:23px}.footer-bottom{margin-top:65px;padding:23px 0;border-top:1px solid #ffffff20;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.03em}.page-intro{padding-top:45px;padding-bottom:65px}.breadcrumbs{display:flex;gap:12px;color:var(--muted);font-size:10px;margin-bottom:52px}.breadcrumbs a:hover{color:var(--teal)}.page-intro h1{max-width:1000px;font-size:clamp(44px,6vw,80px)}.lead{font-size:17px;color:var(--muted);max-width:600px;line-height:1.65;margin-top:28px}.compact{padding-top:0}.filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:35px}.filters button{border:1px solid var(--line);background:transparent;padding:13px 19px;font-size:12px}.filters button.active{background:var(--ink);color:white;border-color:var(--ink)}.project[hidden]{display:none}.filters+.sr-only+.project-grid{row-gap:40px}.detail-hero{display:grid;grid-template-columns:1fr 1.05fr;gap:75px;padding-block:45px 75px;align-items:center}.detail-hero h1{font-size:clamp(45px,5.5vw,76px)}.detail-hero .lead{font-size:16px;max-width:430px}.detail-hero .button{margin-top:32px}.detail-photo>img{height:510px;object-fit:cover}.detail-content{display:grid;grid-template-columns:1fr 1.25fr;gap:90px;padding-block:65px;border-top:1px solid var(--line)}.prose{font-size:15px;color:#4b6064;line-height:1.8}.prose p{margin-bottom:23px}.prose h2,.prose h3{color:var(--ink);margin:35px 0 20px}.prose ul{padding-left:20px}.prose iframe{width:100%;aspect-ratio:16/9;border:0;margin-block:30px}.detail-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.gallery-image{border:0;padding:0;overflow:hidden;background:#e9eeea}.gallery-image img{height:330px;object-fit:cover;transition:transform .25s}.gallery-image:hover img{transform:scale(1.02)}.about-image img{max-height:620px;object-fit:cover}.contact-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:100px;padding-bottom:110px}.contact-details> a,.contact-details>div{display:block;border-top:1px solid var(--line);padding:29px 0}.contact-details span{display:block;font-size:10px;letter-spacing:.14em;margin-bottom:13px;color:var(--muted)}.contact-details strong{font-size:25px;font-weight:500;letter-spacing:-.04em}.contact-details p{font-size:14px;margin:12px 0}.contact-details .text-link{margin-top:15px}.inquiry-form{background:#e9eeea;padding:38px}.inquiry-form h2{font-size:30px;margin-bottom:15px}.inquiry-form>p{font-size:12px;color:var(--muted);margin-bottom:28px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.inquiry-form label{display:block;font-size:11px;font-weight:600;margin-bottom:22px}.inquiry-form input,.inquiry-form select,.inquiry-form textarea{display:block;width:100%;border:0;border-bottom:1px solid #aebeb6;background:transparent;padding:13px 0;color:var(--ink);font-size:13px;border-radius:0;margin-top:5px}.inquiry-form textarea{resize:vertical}.inquiry-form .button{width:100%}.inquiry-form .form-status{margin-top:20px;margin-bottom:0;color:var(--ink)}.article-cover img{max-height:540px;object-fit:cover}.article-body{max-width:800px;padding-block:60px}.article-back{padding-bottom:70px}.archive-content{padding-bottom:65px}.archive-content+.project-grid{max-width:1280px;width:calc(100% - 96px);margin:0 auto 85px}.lightbox{border:0;background:#0b1c22;color:white;max-width:95vw;width:1100px;padding:50px 25px 20px;max-height:95dvh;overflow:auto}.lightbox::backdrop{background:#071318e8}.lightbox img{width:auto;max-width:100%;max-height:75dvh;margin:auto;object-fit:contain}.lightbox p{font-size:12px;text-align:center;margin-top:15px}.lightbox-close{position:absolute;right:15px;top:8px;font-size:32px;color:white;background:none;border:0;width:40px;height:40px}.skip{position:fixed;top:-100px;left:15px;z-index:100;background:white;color:var(--ink);padding:15px}.skip:focus{top:15px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
@media(min-width:1600px){.hero-copy{padding-right:60px}.hero{min-height:720px}}@media(max-width:1100px){.header{padding-inline:30px;gap:20px}.header nav{gap:18px;font-size:12px}.brand img{width:145px}.header-contact{gap:15px}.container{width:calc(100% - 60px)}.hero-copy{padding:55px 28px 35px 30px}.hero h1{font-size:68px}.hero-actions{gap:18px}.hero-actions .button{padding:16px 18px;gap:20px}.hero{min-height:620px}.expertise-strip span:nth-child(2){gap:15px;font-size:14px}.service-caption h3{font-size:18px}.service-grid{gap:15px}.foil-copy{padding:65px 45px}.section-head{gap:35px}.detail-hero{gap:40px}.contact-grid{gap:45px}.footer-grid{gap:25px}}
@media(max-width:850px){.header{height:82px}.header nav{gap:15px}.header nav a{font-size:11px}.header-contact{display:none}.hero h1{font-size:60px}.hero-intro{font-size:14px}.hero-copy{padding-top:50px}.hero-note{line-height:1.7}.hero{min-height:620px}.expertise-strip span:first-child{display:none}.section{padding-block:75px}.service-grid{grid-template-columns:repeat(2,1fr);gap:25px}.service-card img{aspect-ratio:5/4}.service-caption h3{font-size:22px}.foil-photo{min-height:580px}.foil-copy{padding:55px 30px}.project-grid{grid-template-columns:repeat(2,1fr)}.works .project:last-child{display:none}.section-head>div:nth-child(2),.section-head>p{max-width:290px}.steps{gap:30px}.about-strip>.container{grid-template-columns:1fr 1fr}.about-strip .eyebrow{grid-column:1/-1;margin-bottom:0}.footer-grid{grid-template-columns:2fr 1fr 1fr}.footer-grid>div:last-child{grid-column:1/-1;display:flex;gap:35px;align-items:center}.footer-grid>div:last-child h2,.footer-grid>div:last-child p{margin:0}.detail-hero{grid-template-columns:1fr 1fr;gap:30px}.detail-photo>img{height:460px}.detail-content{gap:45px}.detail-gallery{grid-template-columns:repeat(2,1fr)}.contact-grid{gap:30px}.inquiry-form{padding:25px}.form-row{grid-template-columns:1fr;gap:0}.contact-details strong{font-size:21px}.compact{padding-top:0}}
@media(max-width:640px){.container{width:calc(100% - 40px)}.header{padding:0 20px;height:78px}.brand img{width:145px}.menu-toggle{display:flex;flex-direction:column;gap:6px;justify-content:center;align-items:center;border:1px solid var(--line);background:transparent;width:44px;height:42px}.menu-toggle span{width:20px;height:1px;background:var(--ink);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.header nav{display:none;position:absolute;top:78px;left:0;right:0;padding:20px;background:var(--paper);box-shadow:0 10px 15px #10262c11;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0}.header nav.open{display:flex}.header nav a{font-size:16px;padding:16px 0;border-bottom:1px solid var(--line)}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:45px 20px 35px}.hero .eyebrow{margin-bottom:27px;font-size:10px}.hero h1{font-size:clamp(64px,17vw,90px);line-height:1}.hero-intro{margin-top:24px;max-width:340px;font-size:14px}.hero-actions{margin-top:28px;gap:24px}.hero-actions .button{padding:17px 20px}.hero-note{padding-top:30px;font-size:10px}.hero-visual{height:360px}.hero-visual>img{object-position:50% 56%}.photo-caption{left:20px;right:20px;bottom:23px}.expertise-strip{padding:20px 0}.expertise-strip>.container{display:block}.expertise-strip span:nth-child(2){font-size:13px;gap:12px;justify-content:space-between}.expertise-strip i{font-size:13px}.expertise-strip a{display:none}.section{padding-block:62px}.section-head{display:block;margin-bottom:30px}.section-head>div:nth-child(2),.section-head>p{margin-top:22px;max-width:340px;font-size:13px}.section-head>.text-link{margin-top:23px}.eyebrow{font-size:10px;margin-bottom:17px}h2{font-size:37px}.service-grid{gap:24px 15px}.service-card img{aspect-ratio:4/5}.service-caption{padding:16px 0;gap:6px}.service-caption>span:first-child{display:none}.service-caption h3{font-size:19px;letter-spacing:-.04em}.service-caption>span:last-child{font-size:20px}.foil-feature{grid-template-columns:1fr}.foil-photo{min-height:390px}.foil-copy{padding:48px 20px 52px}.foil-copy h2{font-size:49px}.foil-copy>p:not(.eyebrow){max-width:370px}.photo-label{left:20px;bottom:20px}.project-grid{grid-template-columns:1fr;gap:30px}.works .project:last-child{display:block}.project-caption h3{font-size:22px}.project-caption>span{font-size:11px}.steps{grid-template-columns:1fr;gap:28px;margin-top:38px}.steps>div{position:relative;padding:24px 0 0 48px}.steps span{position:absolute;left:0;top:30px}.steps h3{margin-top:0;font-size:25px;margin-bottom:12px}.steps p{max-width:370px}.about-strip{padding:60px 0}.about-strip>.container{grid-template-columns:1fr;gap:25px}.about-strip .eyebrow{padding:0}.cta{padding:55px 0}.cta-inner{display:block}.cta h2{font-size:45px}.cta .button{margin-top:32px}.footer{padding-top:48px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px 25px}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid>div:last-child{display:block}.footer-grid>div:last-child h2{margin-bottom:20px}.footer-grid>div:last-child p{margin-top:16px}.footer-bottom{margin-top:40px;gap:15px;font-size:9px}.footer-bottom span:nth-child(2){display:none}.page-intro{padding-top:30px;padding-bottom:45px}.breadcrumbs{margin-bottom:37px}.page-intro h1{font-size:49px}.lead{font-size:15px;margin-top:22px}.compact{padding-top:0}.filters{gap:8px;margin-bottom:27px}.filters button{padding:11px 14px;font-size:11px}.detail-hero{grid-template-columns:1fr;padding:28px 0 40px;gap:35px}.detail-hero h1{font-size:51px}.detail-hero .lead{font-size:15px}.detail-photo>img{height:390px}.detail-content{grid-template-columns:1fr;gap:30px;padding-block:45px}.prose{font-size:14px}.detail-gallery{gap:12px}.gallery-image img{height:220px}.contact-grid{grid-template-columns:1fr;padding-bottom:55px}.contact-details strong{font-size:25px}.inquiry-form{padding:27px 20px}.article-body{padding-block:40px}.article-body iframe{margin-inline:0}.archive-content+.project-grid{width:calc(100% - 40px);margin-bottom:55px}.lightbox{padding:50px 10px 20px}.lightbox img{max-height:70dvh}.article-cover img{max-height:350px}.about-image img{height:340px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
