@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&family=Playfair+Display:ital,wght@0,500;0,600;1,500&display=swap');
:root{--bg:#f8f7f4;--surface:#fff;--surface2:#efede8;--text:#252520;--muted:#77766e;--line:#ddd9d0;--accent:#ae8558;--accenttext:#fff;--header:rgba(248,247,244,.92);--shadow:0 20px 70px rgba(30,26,20,.08);--radius:6px;--container:min(1320px,calc(100% - 96px))}
html[data-theme=dark]{--bg:#111210;--surface:#1a1c19;--surface2:#252722;--text:#f4f0e7;--muted:#aaa99f;--line:#343730;--accent:#c7a477;--accenttext:#171714;--header:rgba(17,18,16,.92);--shadow:0 20px 70px rgba(0,0,0,.25)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:86px}body{margin:0;font-family:'DM Sans',sans-serif;background:var(--bg);color:var(--text);transition:background .45s,color .45s;overflow-x:hidden}body.menu-open,body.modal-open{overflow:hidden}::selection{background:var(--accent);color:white}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}p{line-height:1.8;color:var(--muted)}h1,h2,h3,h4{font-family:Manrope,sans-serif;letter-spacing:-.055em;line-height:1.1;margin:0}h2{font-size:clamp(2.3rem,4.7vw,5.2rem)}h3{font-size:1.35rem;letter-spacing:-.035em}h4{font-size:1rem}section{position:relative}.container{width:var(--container);margin:auto}.section{padding:125px 0}.eyebrow{display:inline-flex;align-items:center;gap:13px;font-family:Manrope,sans-serif;text-transform:uppercase;letter-spacing:.19em;font-size:.66rem;font-weight:800;color:var(--accent)}.eyebrow:before{content:'';height:1px;width:26px;background:currentColor}.section-lead{max-width:780px;margin-bottom:48px}.section-lead p{font-size:1.08rem;max-width:540px;margin-top:21px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:22px;padding:17px 24px;background:var(--accent);color:var(--accenttext);border:1px solid var(--accent);font-size:.78rem;font-weight:800;letter-spacing:.045em;transition:background .3s,color .3s,transform .25s;white-space:nowrap}.btn:hover{transform:translateY(-3px);filter:brightness(1.08)}.btn-outline{background:transparent;border-color:currentColor;color:inherit}.btn-outline:hover{background:var(--text);color:var(--bg)}.btn svg,.arrow svg{width:17px;height:17px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.site-header{position:fixed;top:0;left:0;right:0;z-index:100;padding:17px 0;transition:background .3s,padding .3s,box-shadow .3s}.site-header.scrolled{background:var(--header);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);padding:11px 0;box-shadow:0 2px 16px rgba(0,0,0,.04)}.header-inner{width:var(--container);margin:auto;display:flex;justify-content:space-between;align-items:center;gap:24px}.brand{display:inline-flex;align-items:center;gap:12px;flex-shrink:0}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--accent);font-family:'Playfair Display',serif;font-size:25px;font-weight:600;color:var(--accent)}.brand-name{font-family:Manrope,sans-serif;font-size:14px;line-height:1.2;font-weight:800;letter-spacing:-.025em}.brand-name small{font-family:'DM Sans',sans-serif;display:block;color:var(--muted);font-size:9px;font-weight:700;letter-spacing:.15em;margin-top:5px}.nav{display:flex;gap:clamp(14px,2vw,31px);align-items:center}.nav a{font-size:.75rem;font-weight:700;position:relative}.nav a:not(.btn):after{content:'';position:absolute;height:1px;left:0;right:100%;bottom:-7px;background:var(--accent);transition:right .3s}.nav a:hover:after{right:0}.header-actions{display:flex;gap:10px;align-items:center}.theme-toggle,.menu-toggle{width:41px;height:41px;border:1px solid var(--line);background:var(--surface);color:var(--text);display:grid;place-items:center;transition:background .3s}.theme-toggle svg,.menu-toggle svg{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round}.menu-toggle{display:none}.header-cta{padding:14px 17px}.hero{min-height:780px;height:100svh;max-height:1050px;padding-top:95px;position:relative;isolation:isolate;display:flex;align-items:center;overflow:hidden;background:#25231f;color:#fff}.hero-bg{position:absolute;inset:0;z-index:-2;background-position:center;background-size:cover;transform:scale(1.09);filter:brightness(.73)}.hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(12,14,12,.80) 0%,rgba(12,14,12,.42) 52%,rgba(12,14,12,.12) 100%)}.hero-content{width:var(--container);margin:auto;padding:45px 0 80px}.hero h1{font-size:clamp(3.25rem,6.8vw,7.8rem);max-width:1050px;font-weight:700;letter-spacing:-.075em;line-height:1.06;margin:24px 0}.hero h1 em{font-family:'Playfair Display',serif;font-weight:500;letter-spacing:-.045em;color:#d2b795}.hero p{font-size:1.07rem;max-width:470px;color:#eee9e0;line-height:1.7}.hero-actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:35px}.hero .eyebrow{color:#dfc4a3}.hero .btn-outline{border-color:rgba(255,255,255,.65)}.hero-bottom{position:absolute;bottom:36px;left:0;right:0;display:flex;align-items:end;justify-content:space-between;width:var(--container);margin:auto;font-size:.68rem;text-transform:uppercase;letter-spacing:.14em}.hero-bottom i{width:1px;height:52px;display:block;background:linear-gradient(transparent,#fff);margin-bottom:12px}.hero-index{display:flex;gap:12px;align-items:center}.hero-index:before{content:'';width:35px;height:1px;background:#fff}.marquee{background:var(--accent);color:#fff;overflow:hidden;white-space:nowrap;padding:15px 0;font-family:Manrope,sans-serif;font-size:.69rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase}.marquee-inner{display:flex;width:max-content;animation:marquee 35s linear infinite}.marquee span{padding:0 27px}.marquee b{font-size:17px;font-weight:400}@keyframes marquee{to{transform:translateX(-50%)}}.intro-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(45px,8vw,140px)}.intro-photo{height:630px;position:relative}.intro-photo>img{width:86%;height:92%;object-fit:cover}.intro-small{position:absolute;right:0;bottom:0;width:46%;height:49%;object-fit:cover;border:9px solid var(--bg)}.intro-note{padding:11px 0 0;font-size:.68rem;text-transform:uppercase;letter-spacing:.14em;color:var(--muted)}.intro-copy h2{margin:22px 0 24px}.intro-copy h2 em,.section-lead h2 em,.quote em{font-family:'Playfair Display',serif;font-weight:500;color:var(--accent)}.intro-copy p{font-size:1.04rem}.intro-copy .btn{margin-top:24px}.tiny-values{display:grid;grid-template-columns:1fr 1fr;gap:16px;border-top:1px solid var(--line);margin-top:36px;padding-top:24px;font-size:.77rem;font-weight:800}.tiny-values span{display:flex;align-items:center;gap:9px}.tiny-values span:before{content:'✦';color:var(--accent)}.tone{background:var(--surface2)}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{position:relative;min-height:390px;overflow:hidden;background:#292824;color:#fff;isolation:isolate;display:flex;flex-direction:column;justify-content:end;padding:29px}.service-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .8s cubic-bezier(.18,.68,.27,1)}.service-card:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(0,0,0,.82),rgba(0,0,0,.12) 72%)}.service-card:hover img{transform:scale(1.09)}.service-card .service-num{position:absolute;top:22px;left:26px;font-size:.7rem;letter-spacing:.14em}.service-card .arrow{display:grid;place-items:center;position:absolute;right:24px;bottom:25px;border:1px solid rgba(255,255,255,.6);height:35px;width:35px;border-radius:50%}.service-card h3{font-size:1.53rem;max-width:235px}.service-card p{color:#ddd;font-size:.82rem;margin:10px 50px 0 0;line-height:1.6}.service-card:first-child{grid-column:span 2}.service-card:first-child h3{font-size:2.3rem}.services-bottom{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:27px}.services-bottom p{font-size:.85rem;margin:0}.projects-toolbar{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:38px}.filters{display:flex;gap:7px;flex-wrap:wrap}.filter{border:1px solid var(--line);background:transparent;color:var(--muted);padding:10px 14px;font-size:.72rem;font-weight:700;transition:.3s}.filter.active,.filter:hover{background:var(--text);color:var(--bg);border-color:var(--text)}.projects-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.project{cursor:pointer;min-width:0}.project-image{height:350px;overflow:hidden;background:var(--surface2);position:relative}.project:nth-child(2) .project-image{height:450px}.project:nth-child(3) .project-image{height:390px}.project img{width:100%;height:100%;object-fit:cover;transition:transform .75s}.project:hover img{transform:scale(1.065)}.project-image .plus{position:absolute;top:18px;right:18px;width:37px;height:37px;background:var(--surface);color:var(--text);display:grid;place-items:center;font-size:1.5rem;font-weight:300}.project-meta{display:flex;justify-content:space-between;gap:12px;padding:18px 0 5px}.project-meta h3{font-size:1.12rem}.project-meta span{font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.projects-note{margin-top:26px;color:var(--muted);font-size:.78rem}.craft-banner{min-height:640px;background-position:center;background-size:cover;display:flex;align-items:center;color:#fff;isolation:isolate}.craft-banner:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.84),rgba(0,0,0,.15));z-index:-1}.craft-banner h2{max-width:740px}.craft-banner h2 em{font-family:'Playfair Display',serif;color:#d2b795;font-weight:400}.craft-banner p{max-width:520px;color:#eee}.craft-banner .btn{margin-top:20px}.team-layout{display:grid;grid-template-columns:1fr 1.3fr;gap:55px;align-items:center}.team-collage{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:250px 250px;gap:14px}.team-collage img{width:100%;height:100%;object-fit:cover}.team-collage img:first-child{grid-row:span 2}.team-copy p{font-size:1.03rem;max-width:510px}.team-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:25px}.team-tags span{font-size:.72rem;padding:11px 14px;border:1px solid var(--line)}.founder{background:var(--surface2)}.founder-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(55px,8vw,135px);align-items:center}.founder-photo{height:500px;overflow:hidden}.founder-photo img{width:100%;height:100%;object-fit:cover}.quote{font-family:'Playfair Display',serif;font-size:clamp(1.75rem,3.4vw,3.25rem);line-height:1.4;letter-spacing:-.035em;margin:30px 0}.founder-sign{border-top:1px solid var(--line);padding-top:24px;font-size:.9rem;font-weight:800}.founder-sign small{display:block;color:var(--muted);margin-top:7px;font-size:.76rem;font-weight:400}.placeholder-note{font-size:.72rem;color:var(--muted)}.videos-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:18px}.video-card{position:relative;background:#252520;color:#fff;height:370px;overflow:hidden;border:0;padding:0;text-align:left}.video-card:first-child{height:440px}.video-card img{width:100%;height:100%;object-fit:cover;transition:transform .65s}.video-card:hover img{transform:scale(1.07)}.video-card:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.75),transparent 70%)}.play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:68px;height:68px;border:1px solid rgba(255,255,255,.7);border-radius:50%;display:grid;place-items:center;color:#fff;z-index:1;background:rgba(255,255,255,.13);backdrop-filter:blur(8px)}.play:after{content:'▶';font-size:16px;margin-left:4px}.video-title{position:absolute;z-index:2;bottom:23px;left:24px;font-size:1rem;font-weight:800;max-width:calc(100% - 48px)}.video-title small{display:block;font-weight:400;font-size:.7rem;margin-top:8px;color:#ddd}.compare-grid{display:grid;grid-template-columns:1fr .7fr;gap:70px;align-items:center}.compare{aspect-ratio:1.42;position:relative;overflow:hidden;user-select:none;touch-action:pan-y;background:#ddd}.compare img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}.compare .after-wrap{position:absolute;inset:0;clip-path:inset(0 0 0 50%)}.compare-handle{position:absolute;z-index:5;left:50%;top:0;bottom:0;width:2px;background:white;transform:translateX(-50%);pointer-events:none}.compare-handle:after{content:'↔';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:white;color:#242424;font-size:22px;box-shadow:0 3px 16px #0004}.compare-label{position:absolute;bottom:18px;z-index:2;padding:8px 13px;background:#111b;color:#fff;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase}.compare-label.before{left:18px}.compare-label.after{right:18px}.compare-slider{width:100%;accent-color:var(--accent);margin-top:13px}.process-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:15px}.process-step{padding-top:25px;border-top:1px solid var(--accent)}.process-step strong{color:var(--accent);font-size:.73rem;letter-spacing:.13em}.process-step h3{font-size:1.11rem;margin:25px 0 14px}.process-step p{font-size:.8rem;line-height:1.7;margin:0}.contact{background:var(--surface2)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(50px,8vw,130px)}.contact h2{margin:20px 0 18px}.contact-copy p{max-width:440px}.contact-detail{margin-top:40px;border-top:1px solid var(--line);padding-top:25px;display:flex;gap:15px;align-items:center}.contact-detail .symbol{border:1px solid var(--line);width:49px;height:49px;display:grid;place-items:center;color:var(--accent)}.contact-detail small{display:block;color:var(--muted);margin-bottom:5px}.contact-detail strong{font-size:.87rem}.contact-form{padding:40px;background:var(--surface);box-shadow:var(--shadow)}.form-title{font-size:1.5rem;margin-bottom:26px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{display:flex;flex-direction:column;gap:8px;margin-bottom:17px}.field label{font-size:.73rem;font-weight:800}.field input,.field textarea,.field select{min-width:0;width:100%;border:1px solid var(--line);background:var(--bg);color:var(--text);padding:14px;outline:none;border-radius:0;font-size:.82rem}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent)}.field textarea{min-height:125px;resize:vertical}.form-helper{font-size:.72rem;margin-top:13px}.form-status{font-size:.8rem;margin-top:12px}.footer{background:#151613;color:#fff;padding:80px 0 24px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.3fr;gap:45px}.footer .brand-name small{color:#a8a99f}.footer p{font-size:.83rem;color:#aaaba2;max-width:330px}.footer h4{margin-bottom:21px}.footer-links{display:flex;flex-direction:column;gap:14px}.footer-links a{font-size:.79rem;color:#bbbcb2}.footer-links a:hover{color:#d5b68d}.footer-bottom{border-top:1px solid #393b34;margin-top:60px;padding-top:25px;display:flex;justify-content:space-between;gap:20px;font-size:.72rem;color:#98998f}.social{display:flex;gap:13px}.social a{color:#d4c3a4}.floating-whatsapp{position:fixed;z-index:60;right:25px;bottom:25px;background:#1e9d64;color:white;box-shadow:0 8px 30px #0003;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;font-size:21px;font-weight:800}.modal{position:fixed;inset:0;z-index:300;background:rgba(0,0,0,.86);display:none;align-items:center;justify-content:center;padding:30px}.modal.open{display:flex}.modal-panel{background:var(--surface);color:var(--text);width:min(900px,100%);max-height:90vh;overflow:auto;position:relative}.modal img{width:100%;max-height:62vh;object-fit:cover}.modal-body{padding:26px 30px}.modal-body h3{font-size:1.7rem}.modal-body p{font-size:.86rem}.modal-close{position:absolute;z-index:2;right:12px;top:12px;background:white;color:#111;border:0;font-size:26px;width:43px;height:43px}.video-demo{height:350px;display:grid;place-items:center;text-align:center;background:linear-gradient(145deg,#20231f,#38352b);padding:30px;color:#fff}.video-demo p{color:#d2c6b4}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.hidden{display:none!important}
/* alternate concept personalities */
body[data-concept=dark]{--radius:0}body[data-concept=dark] .hero{height:100svh;min-height:750px}body[data-concept=dark] .hero:after{background:linear-gradient(90deg,#090a09e8,#0a0b0a66 70%)}body[data-concept=dark] .hero h1{font-size:clamp(3.6rem,7.4vw,8.7rem)}body[data-concept=dark] .section{padding:145px 0}body[data-concept=dark] .service-card{min-height:480px}body[data-concept=dark] .hero-content{padding-top:90px}
body[data-concept=showcase] .hero{min-height:780px}body[data-concept=showcase] .hero:after{background:linear-gradient(90deg,#1b1714dc,#1c17145c)}body[data-concept=showcase] .hero h1{font-weight:800;max-width:1200px}body[data-concept=showcase] .service-card{border-radius:0}body[data-concept=showcase] .service-card:first-child{grid-column:span 1}body[data-concept=showcase] .service-card:nth-child(2){grid-column:span 2}body[data-concept=showcase] .service-card:nth-child(2) h3{font-size:2.3rem}body[data-concept=showcase] .project:nth-child(odd){transform:translateY(28px)}
@media(max-width:1150px){:root{--container:min(100% - 56px,1320px)}.nav{gap:12px}.nav a{font-size:.69rem}.header-cta{display:none}.intro-photo{height:520px}.team-layout{gap:35px}.videos-grid{grid-template-columns:1fr 1fr}.video-card:first-child{grid-column:span 2}.footer-grid{grid-template-columns:2fr 1fr 1fr}}
@media(max-width:850px){:root{--container:calc(100% - 42px)}.section,body[data-concept=dark] .section{padding:84px 0}.site-header{background:var(--header)}.nav{position:fixed;top:73px;left:0;right:0;background:var(--bg);padding:28px 22px 36px;display:flex;flex-direction:column;align-items:stretch;gap:0;border-bottom:1px solid var(--line);box-shadow:var(--shadow);opacity:0;visibility:hidden;transform:translateY(-12px);transition:.3s}.nav.open{opacity:1;visibility:visible;transform:translateY(0)}.nav a{padding:14px 0;font-size:.97rem;border-bottom:1px solid var(--line)}.menu-toggle{display:grid}.hero,.body[data-concept=dark] .hero{min-height:680px;max-height:none}.hero h1{font-size:clamp(3.2rem,8vw,6rem)}.intro-grid,.team-layout,.founder-grid,.compare-grid,.contact-grid{grid-template-columns:1fr;gap:40px}.intro-photo{height:490px}.intro-copy{max-width:650px}.services-grid,.projects-grid{grid-template-columns:repeat(2,1fr)}.service-card:first-child{grid-column:span 1}.service-card:first-child h3{font-size:1.53rem}.service-card{min-height:350px}.projects-toolbar{align-items:start;flex-direction:column}.project:nth-child(2) .project-image,.project:nth-child(3) .project-image,.project-image{height:310px}.team-collage{order:2}.team-copy{order:1}.founder-photo{max-width:470px}.process-grid{grid-template-columns:repeat(3,1fr);row-gap:35px}.footer-grid{grid-template-columns:1.5fr 1fr;gap:45px}body[data-concept=showcase] .service-card:nth-child(2){grid-column:span 1}body[data-concept=showcase] .service-card:nth-child(2) h3{font-size:1.53rem}}
@media(max-width:560px){:root{--container:calc(100% - 36px)}.section,body[data-concept=dark] .section{padding:67px 0}.site-header{padding:11px 0}.header-inner{gap:10px}.brand-mark{width:37px;height:37px}.brand-name{font-size:11px}.brand-name small{font-size:7px}.nav{top:61px}.theme-toggle,.menu-toggle{width:38px;height:38px}.hero{min-height:710px;height:96svh;padding-top:72px}.hero-content{padding:10px 0 70px}.hero h1,body[data-concept=dark] .hero h1{font-size:clamp(2.65rem,11vw,4rem);letter-spacing:-.065em}.hero p{font-size:.92rem}.hero .eyebrow{font-size:.55rem}.hero-bottom{bottom:24px}.hero-bottom .hero-index{display:none}.hero-actions{gap:9px}.hero-actions .btn{padding:15px 17px;font-size:.7rem}.section-lead{margin-bottom:30px}h2{font-size:clamp(2.1rem,9.3vw,3.1rem)}.section-lead p{font-size:.92rem}.intro-photo{height:370px}.intro-photo>img{width:88%}.intro-small{width:51%;height:51%}.intro-copy h2{margin:15px 0}.tiny-values{grid-template-columns:1fr}.services-grid,.projects-grid{grid-template-columns:1fr;gap:15px}.service-card,.service-card:first-child,body[data-concept=dark] .service-card{min-height:345px}.service-card h3,.service-card:first-child h3{font-size:1.45rem}.services-bottom{align-items:start;flex-direction:column}.project-image,.project:nth-child(2) .project-image,.project:nth-child(3) .project-image{height:360px}.filters{gap:6px}.filter{font-size:.65rem;padding:9px 11px}.craft-banner{min-height:550px}.team-collage{grid-template-rows:200px 200px;gap:8px}.founder-photo{height:400px}.quote{font-size:1.95rem}.videos-grid{grid-template-columns:1fr}.video-card,.video-card:first-child{height:300px;grid-column:span 1}.process-grid{grid-template-columns:1fr 1fr}.compare-grid{gap:25px}.contact-form{padding:24px 18px}.form-row{grid-template-columns:1fr;gap:0}.footer{padding-top:60px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px}.footer-grid>div:first-child{grid-column:span 2}.footer-bottom{flex-direction:column;margin-top:40px}.floating-whatsapp{width:49px;height:49px;right:15px;bottom:15px}.modal{padding:14px}body[data-concept=showcase] .project:nth-child(odd){transform:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
