:root { --ink:#151413; --paper:#f3f0ea; --card:#fbfaf7; --line:#d8d1c7; --pink:#ef5b79; --pink-dark:#c74060; --muted:#68635e; --sage:#586f64; --radius:22px; }
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:var(--paper);color:var(--ink);font-family:"Manrope",sans-serif;-webkit-font-smoothing:antialiased} button,input,select,textarea{font:inherit} button{cursor:pointer} a{color:inherit}.shell{width:min(1180px,calc(100% - 48px));margin-inline:auto}.grain{position:fixed;inset:0;pointer-events:none;opacity:.026;z-index:100;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 140 140' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E")}.scroll-progress{position:fixed;left:0;top:0;width:0;height:3px;background:var(--pink);z-index:101}.nav{height:90px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:20}.brand{display:flex;align-items:center;height:100%;text-decoration:none}.brand img{display:block;width:92px;height:74px;object-fit:contain}.nav nav{display:flex;align-items:center;gap:31px}.nav nav a{font-size:11px;text-decoration:none;color:var(--muted);transition:.2s}.nav nav a:hover{color:var(--ink)}.nav-cta{border:0;background:var(--ink);color:#fff;border-radius:999px;padding:12px 17px;font-size:11px;font-weight:700}.nav-cta span{color:var(--pink);margin-left:8px}.menu-button{display:none;border:0;background:transparent;width:40px;height:40px;padding:8px}.menu-button span{display:block;width:22px;height:1px;background:var(--ink);margin:6px auto}

.hero{padding:34px 0 96px}.hero-topline{display:flex;justify-content:space-between;font-family:"DM Mono",monospace;font-size:10px;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);padding:10px 0 28px}.hero h1{font-size:clamp(58px,9.2vw,132px);line-height:.78;letter-spacing:-.077em;margin:0;font-weight:700;position:relative;z-index:2}.hero h1 span{font-size:.4em;letter-spacing:-.035em;display:inline-block;margin-bottom:15px}.hero h1 i{font-family:Georgia,serif;color:var(--pink);font-weight:400}.hero-bottom{display:grid;grid-template-columns:minmax(240px,.48fr) minmax(0,1.52fr);align-items:end;gap:54px;margin-top:-12px}.hero-intro{padding-bottom:37px}.hero-intro p{font-size:15px;line-height:1.7;color:var(--muted);margin:0 0 25px}.text-link{background:none;border:0;border-bottom:1px solid var(--ink);padding:0 0 6px;font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.06em}.text-link span{color:var(--pink);margin-left:16px}.hero-art{border-radius:var(--radius);overflow:hidden;background:#d4cec4;position:relative;box-shadow:0 25px 70px rgba(24,20,17,.1)}.hero-art>svg{display:block;width:100%;height:auto;aspect-ratio:1.42;object-fit:cover}.art-caption{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-between;align-items:end;gap:30px;padding:18px 21px;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.55))}.art-caption span{font-family:"DM Mono",monospace;font-size:9px;letter-spacing:.08em}.art-caption p{max-width:330px;margin:0;font-size:10px;line-height:1.5}.hero-stats{display:grid;grid-template-columns:repeat(3,.55fr) 1.35fr;border-top:1px solid var(--line);margin-top:23px}.hero-stats>div,.hero-stats>p{padding:25px 20px;border-right:1px solid var(--line);margin:0}.hero-stats>div:first-child{padding-left:0}.hero-stats>p{border-right:0;color:var(--muted);font-size:11px;line-height:1.6;display:flex;align-items:center}.hero-stats strong{font-size:25px;letter-spacing:-.05em;margin-right:10px}.hero-stats span{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;line-height:1.4;display:inline-block}

.capabilities{background:var(--ink);color:#fff;padding:108px 0}.section-heading{display:grid;grid-template-columns:70px 1fr;gap:13px;margin-bottom:55px}.section-number{font-family:"DM Mono",monospace;font-size:10px;color:var(--pink);padding-top:7px}.section-heading p,.approach-title p{margin:0 0 9px;font-family:"DM Mono",monospace;color:var(--pink);font-size:10px;text-transform:uppercase;letter-spacing:.08em}.section-heading h2,.approach-title h2{font-size:clamp(38px,6vw,75px);letter-spacing:-.06em;line-height:.94;margin:0}.capability-list{border-top:1px solid rgba(255,255,255,.18)}.capability{display:grid;grid-template-columns:70px minmax(210px,.8fr) minmax(250px,1fr) 90px;gap:14px;align-items:center;padding:29px 0;border-bottom:1px solid rgba(255,255,255,.18);position:relative;overflow:hidden;outline:none}.capability::before{content:"";position:absolute;inset:0;background:var(--pink);transform:translateX(-101%);transition:transform .45s cubic-bezier(.76,0,.24,1);z-index:0}.capability:hover::before,.capability:focus::before{transform:translateX(0)}.capability>*{position:relative;z-index:1}.capability-index{font-family:"DM Mono",monospace;font-size:9px;color:#85817d}.capability h3{font-size:20px;letter-spacing:-.03em;margin:0}.capability p{font-size:11px;line-height:1.65;color:#aaa5a0;margin:0;max-width:470px}.capability:hover p,.capability:focus p,.capability:hover .capability-index,.capability:focus .capability-index{color:#fff}.capability-mark{justify-self:end;font-family:Georgia,serif;font-style:italic;font-size:46px;color:rgba(255,255,255,.28)}

.experience{padding:110px 0 90px}.experience .section-heading{margin-bottom:24px}.experience-note{margin-left:auto;max-width:510px;border-top:1px solid var(--line);display:grid;grid-template-columns:130px 1fr;gap:20px;padding-top:14px;margin-bottom:55px}.experience-note span{font-family:"DM Mono",monospace;font-size:9px;color:var(--pink-dark);text-transform:uppercase;letter-spacing:.07em}.experience-note p{font-size:10px;line-height:1.6;color:var(--muted);margin:0}.project-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:16px}.project{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;outline:none;transition:transform .25s,box-shadow .25s}.project:hover,.project:focus{transform:translateY(-5px);box-shadow:0 24px 60px rgba(30,25,21,.1)}.project-large{grid-row:span 2}.project-wide{grid-column:1/-1}.project-visual{aspect-ratio:1.28;overflow:hidden;background:#ccc}.project-large .project-visual{aspect-ratio:.96}.project-wide .project-visual{aspect-ratio:2.35}.project-visual svg{display:block;width:100%;height:100%;transition:transform .7s cubic-bezier(.22,1,.36,1)}.project:hover svg,.project:focus svg{transform:scale(1.035)}.project-info{padding:20px 21px 22px}.project-info>span{font-family:"DM Mono",monospace;font-size:9px;letter-spacing:.07em;text-transform:uppercase;color:var(--pink-dark)}.project-info h3{font-size:24px;letter-spacing:-.04em;margin:8px 0}.project-info p{font-size:11px;color:var(--muted);line-height:1.55;margin:0;max-width:520px}.project-info button{border:0;background:transparent;padding:17px 0 0;font-size:10px;text-transform:uppercase;letter-spacing:.06em;font-weight:800}.project-info button b{color:var(--pink);margin-left:10px}.approach{margin-top:112px;padding-top:70px;border-top:1px solid var(--line);display:grid;grid-template-columns:.8fr 1.2fr;gap:60px}.approach-title{display:grid;grid-template-columns:60px 1fr;gap:10px}.approach-title h2{font-size:43px}.approach ol{margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}.approach li{display:grid;grid-template-columns:35px 110px 1fr;gap:10px;padding:21px 0;border-bottom:1px solid var(--line);align-items:start}.approach li>span{font-family:"DM Mono",monospace;font-size:9px;color:var(--pink-dark)}.approach li strong{font-size:15px}.approach li p{margin:0;font-size:11px;color:var(--muted);line-height:1.55}.contact-panel{margin-top:110px;border-radius:30px;background:var(--pink);padding:55px;display:flex;justify-content:space-between;align-items:end;gap:50px;overflow:hidden;position:relative}.contact-panel::after{content:"KHA";position:absolute;right:-18px;top:-48px;font-size:210px;font-weight:800;letter-spacing:-.1em;color:rgba(255,255,255,.08);pointer-events:none}.contact-copy{position:relative;z-index:1}.contact-copy>span{font-family:"DM Mono",monospace;font-size:9px;letter-spacing:.08em;color:#6f2436}.contact-copy h2{font-size:clamp(45px,7vw,78px);letter-spacing:-.065em;line-height:.89;margin:20px 0}.contact-copy p{max-width:490px;font-size:12px;line-height:1.6;color:#6f2436;margin:0}.contact-button{position:relative;z-index:1;border:0;background:var(--ink);color:#fff;width:185px;height:185px;border-radius:50%;display:grid;place-content:center;text-align:center;gap:8px;transition:.25s}.contact-button:hover{transform:rotate(-5deg) scale(1.04)}.contact-button span{max-width:110px;font-size:13px;font-weight:700}.contact-button b{color:var(--pink);font-size:19px}.footer{min-height:180px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:30px;color:var(--muted)}.footer-brand{display:flex;gap:15px;align-items:center}.footer-brand strong{font-size:28px;color:var(--ink)}.footer-brand span,.footer p,.footer a,.footer button{font-family:"DM Mono",monospace;font-size:9px;text-transform:uppercase;line-height:1.55;letter-spacing:.05em}.footer p{margin:0}.footer>div:last-child{justify-self:end;display:flex;flex-direction:column;gap:10px;align-items:flex-end}.footer button{border:0;background:transparent;color:var(--pink-dark);padding:0}.footer a{text-decoration:none}

.project-visual img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.22,1,.36,1)}.project:hover .project-visual>img,.project:focus .project-visual>img{transform:scale(1.035)}.project-collage{display:grid;grid-template-columns:1fr 1fr;gap:2px}.project-collage img{min-width:0}.culture-gallery{grid-column:1/-1;margin-top:62px;background:var(--ink);color:#fff;border-radius:30px;padding:34px}.culture-heading{display:grid;grid-template-columns:1fr minmax(280px,.72fr);gap:50px;align-items:end;padding:8px 2px 30px}.culture-heading span,.artwork-card figcaption>span{font-family:"DM Mono",monospace;font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:#ff91a8}.culture-heading h3{font-size:clamp(38px,5.8vw,68px);line-height:.95;letter-spacing:-.06em;margin:13px 0 0}.culture-heading>p{font-size:11px;line-height:1.65;color:#aaa5a0;margin:0;max-width:460px}.artwork-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.artwork-card{position:relative;aspect-ratio:3/4;margin:0;border-radius:16px;overflow:hidden;background:#2a2826;outline:none}.artwork-card img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.22,1,.36,1),filter .35s ease}.artwork-card figcaption{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:24px;background:linear-gradient(180deg,rgba(12,11,10,.03) 25%,rgba(12,11,10,.9) 100%);opacity:0;transform:translateY(10px);transition:opacity .32s ease,transform .32s ease}.artwork-card:hover figcaption,.artwork-card:focus-visible figcaption{opacity:1;transform:none}.artwork-card:hover img,.artwork-card:focus-visible img{transform:scale(1.035);filter:saturate(.82)}.artwork-card:focus-visible{box-shadow:0 0 0 3px var(--pink)}.artwork-card h4{font-size:23px;letter-spacing:-.035em;margin:8px 0 7px}.artwork-card p{font-size:10px;line-height:1.55;color:#d8d2cc;margin:0;max-width:390px}
.project-carousel{position:relative;isolation:isolate;background:#242321}.project-wide .project-carousel{aspect-ratio:16/9}.project-carousel::before{content:"";position:absolute;inset:-22px;background-image:var(--slide-image);background-position:center;background-size:cover;filter:blur(22px) brightness(.65) saturate(.75);opacity:.72;z-index:-1;transition:background-image .25s ease}.carousel-slides{position:absolute;inset:0}.project-carousel .carousel-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;transform:scale(1.012);transition:opacity .42s ease,transform .65s cubic-bezier(.22,1,.36,1)}.project-carousel .carousel-slide.active{opacity:1;transform:scale(1)}.carousel-topline{position:absolute;left:18px;right:18px;top:17px;display:flex;justify-content:space-between;color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.55);font-family:"DM Mono",monospace;font-size:9px;letter-spacing:.08em;text-transform:uppercase}.carousel-counter b{font-weight:500;color:#ff91a8}.carousel-controls{position:absolute;left:18px;right:18px;bottom:17px;display:flex;align-items:center;justify-content:center;gap:14px}.carousel-controls>button{width:36px;height:36px;border:1px solid rgba(255,255,255,.45);border-radius:50%;background:rgba(18,17,16,.42);backdrop-filter:blur(8px);color:#fff;transition:.2s}.carousel-controls>button:hover{background:var(--pink);border-color:var(--pink)}.carousel-dots{display:flex;gap:6px;padding:8px 10px;border-radius:999px;background:rgba(18,17,16,.42);backdrop-filter:blur(8px)}.carousel-dots button{width:20px;height:3px;border:0;border-radius:99px;background:rgba(255,255,255,.38);padding:0;transition:.2s}.carousel-dots button.active{background:var(--pink);width:30px}

.contact-details{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}.contact-details a{min-width:200px;border-top:1px solid rgba(111,36,54,.38);padding-top:11px;text-decoration:none;display:grid;gap:4px}.contact-details small{font-family:"DM Mono",monospace;font-size:8px;text-transform:uppercase;letter-spacing:.08em;color:#7b2b3d}.contact-details strong{font-size:11px;color:var(--ink)}.contact-details a:hover strong{text-decoration:underline}.footer{grid-template-columns:1.05fr .9fr 1.25fr auto}.footer-brand img{display:block;width:112px;height:auto}.footer-person{display:grid;gap:5px}.footer-person strong{font-size:11px;text-transform:uppercase;letter-spacing:.045em;color:var(--ink)}.footer-person span,.footer address a,.footer-actions span{font-family:"DM Mono",monospace;font-size:9px;text-transform:uppercase;line-height:1.55;letter-spacing:.05em}.footer address{display:grid;gap:6px;font-style:normal}.footer address a{text-decoration:none}.footer address a:hover{color:var(--pink-dark)}.footer .footer-actions{justify-self:end;display:flex;flex-direction:column;gap:9px;align-items:flex-end}.footer-actions span{color:var(--muted)}.direct-whatsapp{display:inline-block;margin-top:12px;font-family:"DM Mono",monospace;font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--pink-dark);text-underline-offset:4px}

dialog{border:0;padding:0;color:var(--ink);background:var(--card);box-shadow:0 35px 100px rgba(0,0,0,.3)}dialog::backdrop{background:rgba(18,17,16,.72);backdrop-filter:blur(6px)}.dialog-close{position:absolute;right:22px;top:20px;width:36px;height:36px;border-radius:50%;border:1px solid var(--line);background:transparent;font-size:22px;line-height:1;z-index:3}.enquiry-dialog{width:min(990px,calc(100% - 28px));border-radius:25px;padding:42px;display:none;grid-template-columns:.68fr 1.32fr;gap:52px}.enquiry-dialog[open]{display:grid}.dialog-intro>span,.enquiry-result>span{font-family:"DM Mono",monospace;font-size:9px;color:var(--pink-dark);letter-spacing:.08em}.dialog-intro h2,.enquiry-result h2{font-size:42px;letter-spacing:-.055em;line-height:.98;margin:18px 0}.dialog-intro p{font-size:11px;line-height:1.6;color:var(--muted)}.enquiry-dialog form{display:grid;gap:15px;padding-top:32px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.enquiry-dialog label{font-size:9px;text-transform:uppercase;letter-spacing:.07em;font-weight:800;color:var(--muted)}.enquiry-dialog input,.enquiry-dialog select,.enquiry-dialog textarea{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;padding:10px 2px 9px;outline:none;color:var(--ink);font-size:12px;text-transform:none;letter-spacing:0}.enquiry-dialog input:focus,.enquiry-dialog select:focus,.enquiry-dialog textarea:focus{border-color:var(--pink)}.enquiry-dialog textarea{min-height:78px;resize:vertical}.submit-button{margin-top:8px;border:0;border-radius:999px;background:var(--pink);color:#fff;padding:14px 20px;font-size:11px;font-weight:800;justify-self:start}.submit-button span{margin-left:12px}.enquiry-result{grid-column:2;padding-top:25px}.enquiry-result pre{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:17px;white-space:pre-wrap;font:11px/1.55 "DM Mono",monospace;max-height:270px;overflow:auto}.enquiry-result>div{display:flex;gap:9px}.enquiry-result button,.enquiry-result a{border:0;border-radius:999px;padding:12px 16px;background:var(--ink);color:#fff;text-decoration:none;font-size:10px;font-weight:800}.enquiry-result a{background:var(--pink)}.placeholder-note{font-size:9px;color:var(--pink-dark);margin-top:15px}.project-dialog{width:min(620px,calc(100% - 28px));border-radius:24px;padding:38px}.project-dialog span{font-family:"DM Mono",monospace;font-size:9px;color:var(--pink-dark);text-transform:uppercase;letter-spacing:.08em}.project-dialog h2{font-size:38px;letter-spacing:-.05em;margin:15px 40px 13px 0}.project-dialog p{font-size:12px;line-height:1.65;color:var(--muted)}.project-dialog dl{border-top:1px solid var(--line);margin:23px 0 0}.project-dialog dl div{display:grid;grid-template-columns:130px 1fr;gap:15px;padding:13px 0;border-bottom:1px solid var(--line)}.project-dialog dt{font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.project-dialog dd{font-size:11px;margin:0}.toast{position:fixed;right:22px;bottom:22px;background:var(--ink);color:#fff;border-radius:11px;padding:12px 16px;font-size:11px;opacity:0;transform:translateY(20px);pointer-events:none;transition:.25s;z-index:120}.toast.show{opacity:1;transform:none}.reveal{opacity:0;transform:translateY(18px);transition:opacity .75s ease,transform .75s ease}.reveal.visible{opacity:1;transform:none}

@media(max-width:850px){.hero-bottom{grid-template-columns:1fr;margin-top:28px}.hero-intro{max-width:560px;padding:0}.hero-stats{grid-template-columns:repeat(3,1fr)}.hero-stats>p{grid-column:1/-1;border-top:1px solid var(--line);padding-left:0}.capability{grid-template-columns:45px 1fr 60px}.capability p{grid-column:2/3}.project-grid{grid-template-columns:1fr 1fr}.project-large{grid-row:auto;grid-column:1/-1}.project-large .project-visual{aspect-ratio:1.5}.approach{grid-template-columns:1fr}.contact-panel{padding:40px}.enquiry-dialog[open]{grid-template-columns:1fr;gap:15px}.enquiry-result{grid-column:1}.dialog-intro{padding-right:35px}}
@media(max-width:650px){.shell{width:min(100% - 28px,1180px)}.nav{height:76px}.nav nav{position:absolute;left:0;right:0;top:76px;background:var(--paper);border-bottom:1px solid var(--line);padding:20px 0;display:none;flex-direction:column;gap:17px}.nav nav.open{display:flex}.menu-button{display:block}.hero{padding-top:20px}.hero h1{font-size:clamp(58px,19vw,88px);line-height:.83}.hero h1 span{font-size:.37em}.hero-bottom{gap:28px}.hero-art{border-radius:16px}.hero-stats{grid-template-columns:1fr 1fr;margin-top:16px}.hero-stats>div{border-bottom:1px solid var(--line)}.hero-stats>div:nth-child(2){border-right:0}.hero-stats>div:nth-child(3){grid-column:1/-1;padding-left:0}.capabilities{padding:75px 0}.section-heading{grid-template-columns:42px 1fr}.capability{grid-template-columns:35px 1fr 38px;padding:23px 0}.capability p{font-size:10px}.capability-mark{font-size:33px}.experience{padding:75px 0}.experience-note{margin-top:35px;grid-template-columns:1fr;gap:7px}.project-grid{grid-template-columns:1fr}.project-large,.project-wide{grid-column:auto}.project-large .project-visual,.project-wide .project-visual{aspect-ratio:1.28}.approach{margin-top:75px;padding-top:50px;gap:38px}.approach-title{grid-template-columns:42px 1fr}.approach li{grid-template-columns:30px 85px 1fr}.contact-panel{margin-top:75px;padding:32px 25px;align-items:flex-start;flex-direction:column}.contact-panel::after{font-size:130px}.contact-button{width:145px;height:145px;align-self:flex-end}.footer{grid-template-columns:1fr 1fr;padding:42px 0}.footer p{display:none}.enquiry-dialog{padding:28px 21px}.field-row{grid-template-columns:1fr}.dialog-intro h2,.enquiry-result h2{font-size:35px}.project-dialog{padding:30px 22px}.reveal{opacity:1;transform:none}}
@media(max-width:850px){.culture-heading{grid-template-columns:1fr;gap:17px}.artwork-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.culture-gallery{grid-column:auto;margin-top:42px;padding:20px;border-radius:22px}.artwork-grid{grid-template-columns:1fr}.artwork-card{aspect-ratio:3/4}.artwork-card figcaption{opacity:1;transform:none;padding:22px;background:linear-gradient(180deg,rgba(12,11,10,0) 38%,rgba(12,11,10,.92) 100%)}.culture-heading{padding:5px 2px 24px}}
@media(max-width:850px){.footer{grid-template-columns:1fr 1fr;gap:28px;padding:45px 0}.footer .footer-actions{justify-self:start;align-items:flex-start}.contact-details{display:grid}}
@media(max-width:650px){.brand img{width:72px;height:58px}.contact-details a{min-width:0}.footer{grid-template-columns:1fr;gap:21px;padding:42px 0}.footer-brand img{width:102px}.footer .footer-actions{justify-self:start;align-items:flex-start}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}.reveal{opacity:1;transform:none}}
