@font-face{font-family:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url('fonts/manrope-600.woff2') format('woff2')}
@font-face{font-family:Manrope;font-style:normal;font-weight:700;font-display:swap;src:url('fonts/manrope-700.woff2') format('woff2')}
@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url('fonts/inter-400.woff2') format('woff2')}
@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url('fonts/inter-500.woff2') format('woff2')}
@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url('fonts/inter-600.woff2') format('woff2')}
:root{--plum:#362443;--lilac:#C2B2EF;--coral:#FF906F;--paper:#FAF6F3;--white:#FFFFFF;--ink:#27212D;--muted:#6D616F;--dark-muted:#C6BBC9;--line:rgba(54,36,67,.17)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--plum);outline-offset:5px}.dark :focus-visible{outline-color:var(--coral)}.wrap{max-width:1440px;margin:auto;padding-left:6%;padding-right:6%}.header{height:112px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font-size:31px;font-weight:750;letter-spacing:-1.6px;line-height:1}.brand span{display:block;font-size:8px;letter-spacing:4.2px;margin-top:10px;font-weight:500}.header nav{display:flex;gap:35px;align-items:center;font-size:12px}.header nav>a{padding:10px 0}.header nav>a:hover{color:var(--muted)}.nav-contact{margin-left:24px;display:flex;gap:35px;border-bottom:1px solid var(--plum)}.menu-toggle{display:none}.eyebrow,.section-label,.art-caption,.hero-bottom,.tags,.principle-strip,.contact-note,.perspective-bottom{font-size:10px;letter-spacing:1.5px;font-weight:500}.eyebrow{display:flex;align-items:center;gap:10px}.accent-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--coral);flex-shrink:0;box-shadow:0 0 0 1px rgba(54,36,67,.15)}.hero{position:relative;padding-top:64px;display:grid;grid-template-columns:1.1fr 1fr;gap:0}.hero-content{position:relative;z-index:1}.hero h1{font-size:clamp(49px,5.5vw,82px);letter-spacing:-4px;line-height:1.04;font-weight:500;margin:32px 0 26px}.hero h1>span{color:var(--muted)}.hero-intro{font-size:15px;line-height:1.75;max-width:395px;color:var(--muted);margin-bottom:30px}.button{display:inline-flex;justify-content:space-between;gap:45px;align-items:center;padding:18px 23px;font-size:12px;border:1px solid var(--plum);transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button.primary{background:var(--coral);color:var(--ink)}.button.primary:hover{background:var(--plum);color:var(--paper)}.button span{font-size:19px;line-height:1}.hero-art{align-self:center;margin:5px -28px 0 -20px}.hero-art svg{width:100%;display:block}.art-caption{display:flex;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding:17px 0;font-size:8px;letter-spacing:1px;margin:0 40px}.hero-bottom{grid-column:1/-1;margin-top:58px;border-top:1px solid var(--line);padding:24px 0;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1px}.hero-bottom a{display:flex;gap:25px}.section{padding-top:105px;padding-bottom:105px}.section-label{display:flex;gap:30px;align-items:center;font-size:9px;margin-bottom:45px}.mini-line{height:1px;width:45px;background:currentColor;opacity:.35}h2{font-size:clamp(36px,4.2vw,58px);line-height:1.12;font-weight:400;letter-spacing:-2px;margin:0}h3{font-weight:400}.company{display:grid;grid-template-columns:1fr 2fr;gap:35px}.company>.section-label{align-self:start;margin-top:8px}.two-copy{display:grid;grid-template-columns:1fr 1fr;gap:42px;margin-top:35px}.two-copy p,.approach p,.contact p{font-size:14px;line-height:1.8;color:var(--muted);margin:0}.principle-strip{display:flex;gap:26px;border-top:1px solid var(--line);padding-top:22px;margin-top:32px;letter-spacing:0;font-size:11px}.principle-strip span:before{content:'+';color:var(--muted);margin-right:12px}.dark{background:var(--plum);color:var(--paper)}.dark .section-label{color:var(--dark-muted)}.section-heading{display:flex;justify-content:space-between;align-items:end}.section-heading p{font-size:13px;color:var(--dark-muted);line-height:1.7;margin:0 0 5px}.focus-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:60px}.focus-card{padding:0 35px;border-right:1px solid rgba(250,246,243,.2)}.focus-card:first-child{padding-left:0}.focus-card:last-child{border:0;padding-right:0}.card-top{display:flex;align-items:start;justify-content:space-between}.number{font-size:11px;color:var(--dark-muted)}.card-top svg{width:60px;height:60px;stroke:var(--lilac);stroke-width:1.2;fill:none}.focus-card h3{font-size:30px;line-height:1.14;letter-spacing:-.8px;margin:35px 0 23px}.focus-card p{font-size:13px;line-height:1.8;color:var(--dark-muted);min-height:112px;max-width:300px}.tags{font-size:8px;letter-spacing:1px;border-top:1px solid rgba(250,246,243,.16);margin-top:30px;padding-top:22px;color:var(--dark-muted)}.focus-note{display:flex;gap:12px;align-items:center;margin-top:55px}.focus-note p{font-size:11px;color:var(--dark-muted)}.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}.approach-intro>p{max-width:380px;margin-top:28px}.text-link{display:inline-flex;gap:35px;font-size:12px;margin-top:25px;border-bottom:1px solid var(--plum);padding-bottom:10px}.approach-art{height:190px;position:relative;margin-top:45px;overflow:hidden}.approach-art>div{position:absolute;width:140px;height:110px;border:1px solid var(--plum);transform:skewY(-25deg);top:15px;left:20px}.approach-art>div:nth-child(2){left:90px;top:40px;background:var(--paper)}.approach-art>div:nth-child(3){left:160px;top:65px;background:var(--coral)}.approach-art>span{position:absolute;font-size:8px;letter-spacing:1px;bottom:0;left:0;color:var(--muted)}.steps{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line);padding:25px 0}summary{list-style:none;display:grid;grid-template-columns:35px 1fr 20px;gap:10px;align-items:center;cursor:pointer;font-size:16px;line-height:1.4}summary::-webkit-details-marker{display:none}.step-number{font-size:10px;color:var(--muted)}.plus{font-size:19px;transition:transform .2s}details[open] .plus{transform:rotate(45deg)}.steps details>p{padding-left:45px;font-size:13px;margin-top:20px;max-width:390px}.perspective{background:var(--ink);color:var(--paper);padding:80px 0 30px}.perspective .eyebrow{color:var(--dark-muted);font-size:9px}.statement{font-size:clamp(36px,5.6vw,77px);letter-spacing:-2.5px;line-height:1.12;margin:48px 0}.statement span{color:var(--lilac)}.perspective-bottom{display:flex;justify-content:space-between;align-items:center;color:var(--dark-muted);font-size:9px}.perspective-mark{font-size:85px;line-height:1;color:var(--coral)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.contact h2{font-size:45px}.contact-grid>div>p{margin-top:25px;max-width:370px}.contact-note{font-size:8px;line-height:1.8;display:block;margin-top:40px;color:var(--muted)}.contact .form-heading{font-size:19px;color:var(--ink);margin:0 0 12px}.contact .form-note{font-size:11px;line-height:1.7;margin-bottom:25px;max-width:360px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}label{font-size:10px;display:block;margin-bottom:22px}input,select,textarea{display:block;width:100%;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;padding:11px 0;color:var(--ink);font-size:12px;resize:vertical}input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}select{min-height:40px}.contact .form-status{font-size:11px;margin-top:15px;line-height:1.6}.footer{padding:55px 0 25px}.footer-main{display:flex;align-items:start;justify-content:space-between;padding-bottom:55px}.footer-main p{font-size:12px;line-height:1.8;color:var(--dark-muted);margin:0 auto 0 20%}.back-top{font-size:11px}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid rgba(250,246,243,.18);padding-top:22px;color:var(--dark-muted);font-size:9px}.privacy-link{color:inherit;border:0;background:transparent;padding:0;text-decoration:underline;font-size:9px}.skip{position:absolute;top:-100px;left:20px;background:var(--coral);padding:15px;z-index:20}.skip:focus{top:10px}dialog{border:0;background:var(--paper);color:var(--ink);max-width:600px;width:calc(100% - 40px);padding:45px}dialog::backdrop{background:rgba(39,33,45,.65)}dialog h2{font-size:35px;margin:25px 0}dialog p:not(.eyebrow){font-size:13px;line-height:1.8;color:var(--muted)}.dialog-close{position:absolute;right:15px;top:10px;border:0;background:none;font-size:30px;color:var(--ink)}
@media(min-width:1600px){.hero h1{font-size:82px}}
@media(max-width:1000px){.wrap{padding-left:5%;padding-right:5%}.header nav{gap:23px}.nav-contact{margin-left:0;gap:15px}.hero h1{letter-spacing:-2.5px}.hero-intro{max-width:340px;font-size:13px}.art-caption{font-size:6px}.company{grid-template-columns:1fr 2.6fr}.approach-grid,.contact-grid{gap:45px}.focus-card{padding:0 22px}.focus-card h3{font-size:25px}.focus-card p{min-height:150px}.contact h2{font-size:36px}.principle-strip{gap:15px}.footer-main p{margin-left:15%}}
@media(max-width:700px){.header{height:90px}.brand{font-size:28px}.brand span{font-size:7px}.menu-toggle{display:flex;gap:18px;align-items:center;border:0;background:none;color:var(--ink);font-size:12px;padding:12px 0}.menu-toggle span{font-size:22px}.header nav{display:none;position:absolute;top:89px;left:0;right:0;background:var(--paper);padding:25px 5%;z-index:10;border-bottom:1px solid var(--line);box-shadow:0 10px 20px rgba(39,33,45,.05)}.header nav.open{display:flex;align-items:stretch;flex-direction:column;gap:15px}.nav-contact{justify-content:space-between;max-width:250px}.hero{padding-top:40px;grid-template-columns:1fr}.eyebrow{font-size:8px;letter-spacing:1.1px}.hero h1{font-size:54px;letter-spacing:-2.8px;line-height:1.04;margin-top:28px}.hero-intro{font-size:14px;max-width:360px}.hero-art{margin:20px auto 0;max-width:440px;width:100%}.hero-art svg{max-height:380px}.art-caption{font-size:7px;margin:0 20px}.hero-bottom{margin-top:25px;gap:20px;align-items:center;font-size:7px;line-height:1.8}.hero-bottom>span{max-width:180px}.hero-bottom a{gap:10px;text-align:right}.section{padding-top:65px;padding-bottom:65px}.section-label{margin-bottom:30px;font-size:8px}.company{display:block}.two-copy{grid-template-columns:1fr;gap:18px;margin-top:25px}.principle-strip{flex-wrap:wrap;gap:17px;font-size:10px}.section-heading{display:block}.section-heading p{margin-top:25px;font-size:12px}.focus-grid{grid-template-columns:1fr;margin-top:35px}.focus-card,.focus-card:first-child,.focus-card:last-child{padding:28px 0;border:0;border-top:1px solid rgba(250,246,243,.2)}.card-top svg{width:45px;height:45px}.focus-card h3{font-size:31px;margin-top:0}.focus-card h3 br{display:none}.focus-card p{min-height:0;max-width:100%;font-size:14px}.tags{margin-top:25px}.focus-note{margin-top:5px}.approach-grid,.contact-grid{grid-template-columns:1fr;gap:40px}.approach-art{height:170px;margin-top:30px}.perspective{padding-top:55px}.statement{font-size:40px;letter-spacing:-1.7px;margin:35px 0}.perspective-bottom{font-size:7px;letter-spacing:1px;gap:20px}.perspective-mark{font-size:65px}.contact h2{font-size:38px}.contact-note{margin-top:25px}.contact-grid>div>p{max-width:100%}.contact .form-note{max-width:100%}.footer-main{flex-wrap:wrap;gap:35px}.footer-main p{margin:0;font-size:11px}.back-top{width:100%}.footer-bottom{flex-wrap:wrap;gap:20px;font-size:8px}.footer-bottom>span:nth-child(2){display:none}dialog{padding:35px 25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Creative & Modern: brand typography hierarchy. */
.brand{font-family:Manrope,Arial,sans-serif;font-weight:700;min-width:180px;letter-spacing:normal}
.brand span{font-family:Inter,Arial,sans-serif;font-weight:500}
h1,h2,h3,.statement,dialog h2{font-family:Manrope,Arial,sans-serif;letter-spacing:normal}
.hero h1{font-size:56px;line-height:62px;font-weight:700;letter-spacing:normal}
h2,.contact h2{font-size:36px;line-height:44px;font-weight:600;letter-spacing:normal}
h3{font-weight:600}.hero-intro,.two-copy p,.approach p,.contact p,.focus-card p{font-size:18px;line-height:28px}
.header nav,.button,.text-link{font-size:15px;line-height:22px;font-weight:600}
.header nav{gap:25px}.nav-contact{gap:22px;margin-left:10px}
.eyebrow,.section-label,.art-caption,.hero-bottom,.tags,.principle-strip,.contact-note,.perspective-bottom{font-size:13px;line-height:18px;font-weight:500;letter-spacing:normal}
.hero-bottom{gap:20px}.hero-bottom>span{max-width:55%}.art-caption{gap:18px}.art-caption span{max-width:48%}
.focus-card p{min-height:224px}.tags{font-size:11px}.principle-strip{flex-wrap:wrap}
.focus-note p,.form-row label,label{font-size:13px;line-height:18px}
input,select,textarea{font-size:16px;line-height:25px}.contact .form-note,.contact .form-status{font-size:13px;line-height:20px}
.steps details>p{font-size:16px;line-height:25px}.contact-note{font-size:11px}.contact-grid{gap:65px}
@media(max-width:1000px) and (min-width:701px){.header nav{gap:15px;font-size:13px}.nav-contact{gap:12px;margin-left:0}.hero h1{font-size:46px;line-height:53px}.hero-intro{font-size:16px;line-height:25px}.focus-card p{min-height:300px}.art-caption{font-size:10px}.contact-grid{gap:35px}.eyebrow{font-size:11px}}
@media(max-width:700px){.hero h1{font-size:36px;line-height:42px;letter-spacing:normal}h2,.contact h2{font-size:28px;line-height:36px;letter-spacing:normal}.hero-intro,.two-copy p,.approach p,.contact p,.focus-card p{font-size:16px;line-height:25px}.header nav,.button,.text-link{font-size:15px;line-height:22px}.focus-card p{min-height:0}.section-label,.eyebrow{font-size:11px;line-height:18px}.art-caption,.hero-bottom{font-size:10px;line-height:16px}.principle-strip{font-size:12px}.contact-grid{gap:40px}.contact-note{font-size:11px}.statement{font-size:36px;line-height:44px;letter-spacing:normal}.hero-bottom>span{max-width:55%}.form-row{gap:18px}.focus-card h3{font-size:28px;line-height:36px;letter-spacing:normal}}
