:root{--bg:#ffffff;--bg-2:#f2f1ee;--ink:#0a0a0a;--muted:#6c6a67;--line:rgba(10,10,10,.13);--surface:#fff;--accent:#0a0a0a;--dark:#0a0a0a;--dark-ink:#f5f3ef;--max:1440px;--pad:clamp(1.25rem,4vw,4.5rem);--radius:1rem;--ease:cubic-bezier(.16,1,.3,1);--font-persian:"Peyda","Estedad","Vazirmatn",sans-serif;--font-latin:"Satoshi","Inter",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}html,body{font-family:var(--font-persian)}body{margin:0;background:var(--bg);color:var(--ink);font-size:16px;font-weight:400;line-height:1.9;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}body.menu-open,body.modal-open{overflow:hidden}.font-latin,[lang="en"]{font-family:var(--font-latin);direction:ltr}a{color:inherit;text-decoration:none}button,input,textarea,select{font-family:var(--font-persian);font-weight:400}button,.button,.nav-link,label{font-weight:500}button,a{touch-action:manipulation}img{max-width:100%;display:block}::placeholder{color:#85827e;opacity:1}::selection{background:var(--accent);color:white}.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}.skip-link{position:fixed;z-index:200;top:1rem;right:1rem;transform:translateY(-150%);background:var(--dark);color:white;padding:.6rem 1rem}.skip-link:focus{transform:none}.grain{position:fixed;inset:0;z-index:90;pointer-events:none;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' 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")}.section-shell{width:min(var(--max),100%);margin-inline:auto;padding-inline:var(--pad)}.section{padding-block:clamp(6rem,11vw,11rem)}.eyebrow{display:block;font-family:var(--font-persian);font-size:.75rem;font-weight:600;line-height:1.5;letter-spacing:0;text-transform:none;color:var(--muted)}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{font-family:var(--font-persian);font-weight:700;letter-spacing:-.02em;line-height:1.25}h1 em,h2 em{font-style:normal;color:var(--accent)}p{color:var(--muted)}:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:3px}

.site-header{position:fixed;inset:0 0 auto;z-index:100;transition:background .35s,border .35s,backdrop-filter .35s;border-bottom:1px solid transparent}.site-header.scrolled{background:rgba(245,243,239,.86);backdrop-filter:blur(16px);border-color:var(--line)}.nav-shell{height:76px;max-width:var(--max);margin:auto;padding-inline:var(--pad);display:grid;grid-template-columns:1fr auto 1fr;align-items:center}.brand{display:inline-flex;align-items:center;justify-self:start;gap:.55rem;line-height:1}.brand-en{font:700 1.08rem/1 "Inter",sans-serif;letter-spacing:.17em}.brand-fa{font-size:.83rem;color:var(--muted);border-right:1px solid var(--line);padding-right:.55rem}.desktop-nav{display:flex;gap:clamp(1.25rem,2.4vw,2.6rem);font-size:.9rem}.nav-link{position:relative;padding-block:.5rem}.nav-link:after{content:"";position:absolute;right:0;bottom:.2rem;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}.nav-link:hover:after,.nav-link.is-active:after{transform:scaleX(1);transform-origin:right}.nav-cta{justify-self:end}.menu-button{display:none;border:0;background:none;padding:.75rem}.menu-button span:not(.sr-only){display:block;width:24px;height:1px;background:currentColor;margin:6px}.mobile-menu{position:fixed;inset:76px 0 0;background:var(--dark);color:var(--dark-ink);padding:var(--pad);flex-direction:column;justify-content:space-between}.mobile-menu:not([hidden]){display:flex}.mobile-links{display:flex;flex-direction:column}.mobile-links a{font-size:clamp(2rem,10vw,4rem);line-height:1.5;border-bottom:1px solid rgba(255,255,255,.15)}

.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.65rem 1.45rem;border:1px solid transparent;cursor:pointer;transition:transform .35s var(--ease),background .25s,color .25s;border-color .25s}.button:hover{transform:translateY(-2px)}.button-dark{background:var(--dark);color:var(--dark-ink)}.button-light{background:var(--dark-ink);color:var(--dark)}.button-outline{border-color:var(--line);background:transparent}.text-link{display:inline-flex;align-items:center;border-bottom:1px solid currentColor;padding-bottom:.1rem;font-size:.92rem}.section-link{margin-top:3rem}

.hero{min-height:100svh;display:flex;flex-direction:column;justify-content:center;position:relative;padding-top:110px;padding-bottom:2.5rem;overflow:hidden}.hero-copy{position:relative;z-index:2;max-width:1100px}.hero h1{font-size:clamp(3rem,7vw,7rem);margin:1.4rem 0 2rem}.hero-copy>p{font-size:clamp(1rem,1.45vw,1.3rem);max-width:700px;line-height:2}.hero-actions{display:flex;align-items:center;gap:2rem;margin-top:2.5rem}.hero-orbit{position:absolute;width:min(54vw,760px);aspect-ratio:1;left:-10%;top:12%;border:1px solid var(--line);border-radius:50%;opacity:.8}.hero-orbit:before,.hero-orbit:after{content:"";position:absolute;border:1px solid var(--line);border-radius:50%;inset:16%}.hero-orbit:after{inset:34%;background:radial-gradient(circle,var(--accent) 0 2px,transparent 3px),linear-gradient(135deg,transparent 49.9%,var(--line) 50%,transparent 50.2%)}.hero-orbit i{position:absolute;width:8px;height:8px;background:var(--ink);border-radius:50%}.hero-orbit i:nth-child(1){top:14%;right:22%}.hero-orbit i:nth-child(2){bottom:23%;left:8%;background:var(--accent)}.hero-orbit i:nth-child(3){top:52%;right:-4%}.hero-bottom{margin-top:auto;display:grid;grid-template-columns:1fr 1fr auto;align-items:end;padding-top:4rem;border-bottom:1px solid var(--line);padding-bottom:1.2rem;font-size:.8rem}.hero-bottom>span{color:var(--muted)}.hero-bottom div{font-size:1rem}.hero-bottom div span{display:inline-block;transition:opacity .35s,transform .35s}.hero-bottom div span.out{opacity:0;transform:translateY(-8px)}.hero-bottom>a{font-size:1.5rem}

.section-heading{display:grid;grid-template-columns:1fr 2fr;align-items:start;margin-bottom:clamp(3rem,7vw,7rem)}.section-heading h2{font-size:clamp(2.25rem,4vw,4.7rem);margin:0}.section-heading.compact h2{font-size:clamp(2rem,3.5vw,3.75rem)}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.service-item{padding:2rem clamp(1rem,2vw,2.2rem) 1rem;border-left:1px solid var(--line)}.service-item:last-child{border-left:0}.service-item>span{font-size:.75rem}.service-mark{font-size:1.4rem;margin:3rem 0 5rem}.service-item h3{font-size:1.65rem}.service-item p{font-size:.95rem}.section-dark{background:var(--dark);color:var(--dark-ink)}.section-dark .eyebrow,.section-dark p{color:#aaa}.featured-projects{display:flex;flex-direction:column;gap:clamp(5rem,10vw,10rem);margin-bottom:5rem}.project-card{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:clamp(2rem,5vw,6rem);align-items:end}.project-card:nth-child(even){direction:ltr}.project-card:nth-child(even)>*{direction:rtl}.project-media{display:block;overflow:hidden;background:#171717;aspect-ratio:16/10}.project-image{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}.project-media:hover .project-image{transform:scale(1.035)}.project-placeholder{width:100%;height:100%;min-height:330px;display:flex;flex-direction:column;justify-content:space-between;padding:clamp(1.5rem,4vw,4rem);background:radial-gradient(circle at 22% 25%,rgba(139,47,36,.55),transparent 1.2%),linear-gradient(135deg,transparent 49.9%,rgba(255,255,255,.1) 50%,transparent 50.2%),repeating-linear-gradient(90deg,transparent 0 12%,rgba(255,255,255,.04) 12.1% 12.25%),#151515;color:white}.project-placeholder span{font:500 clamp(2.5rem,6vw,6.5rem)/1 "Inter",sans-serif;letter-spacing:-.06em}.project-placeholder small{color:#aaa}.project-meta h3{font-size:clamp(2rem,3vw,3.5rem);margin:.8rem 0}.project-meta p{font-size:.95rem}.project-services{font-size:.75rem;color:#aaa;border-top:1px solid rgba(255,255,255,.16);padding-top:1rem;display:flex;flex-direction:column;gap:1rem}.project-services a{color:white;font-size:.9rem}.principles{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.principles article{padding:2rem 1.5rem;border-left:1px solid var(--line)}.principles article:last-child{border:0}.principles span{color:var(--muted);font-size:.75rem}.principles h3{font-size:1.5rem;margin:5rem 0 1rem}.principles p{font-size:.94rem}.process-section{background:var(--bg-2)}.process{display:grid;grid-template-columns:repeat(4,1fr);list-style:none;margin:0;padding:0;position:relative}.process:before{content:"";position:absolute;top:8px;right:0;left:0;height:1px;background:var(--ink)}.process li{position:relative;padding-top:3rem}.process li:before{content:"";position:absolute;top:3px;right:0;width:11px;height:11px;background:var(--bg-2);border:2px solid var(--ink);border-radius:50%}.process li:last-child:before{background:var(--accent);border-color:var(--accent)}.process span{display:block;color:var(--muted);font-size:.75rem}.process strong{font-size:1.15rem;font-weight:500}.article-list{border-top:1px solid var(--line)}.article-list article{display:grid;grid-template-columns:1fr 4fr 1.4fr auto;gap:2rem;align-items:start;padding:2rem 0;border-bottom:1px solid var(--line)}.article-list article>span,.article-list small{font-size:.72rem;color:var(--muted)}.article-list h3{font-size:clamp(1.25rem,2vw,2rem);margin:0 0 .5rem}.article-list p{font-size:.9rem;margin:0;max-width:680px}.article-list article>a:last-child{font-size:1.5rem}.contact-cta{background:var(--dark);color:var(--dark-ink);padding-block:clamp(6rem,12vw,12rem)}.contact-cta h2{font-size:clamp(2.5rem,5vw,6rem);margin:2rem 0}.contact-cta p{font-size:1.1rem;max-width:650px;color:#aaa;margin-bottom:2.5rem}

.page-hero{padding-top:clamp(10rem,18vw,15rem);padding-bottom:clamp(5rem,9vw,9rem);border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(2.7rem,5.3vw,5.8rem);margin:1.5rem 0 2rem;max-width:1200px}.page-hero p{font-size:1.15rem;max-width:730px}.service-details{padding-bottom:8rem}.service-detail{padding-block:clamp(5rem,9vw,9rem);border-bottom:1px solid var(--line)}.service-title{display:grid;grid-template-columns:1fr 3fr;margin-bottom:5rem}.service-title h2{font-size:clamp(2.3rem,4vw,4.3rem);margin:0}.service-columns{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:clamp(2rem,5vw,6rem);margin-right:25%}.service-columns .eyebrow{margin-bottom:1rem}.service-columns p{margin-bottom:3rem}.service-columns ul{list-style:none;padding:0;margin:0}.service-columns li{padding:.55rem 0;border-bottom:1px solid var(--line);font-size:.93rem}.tech-note{background:var(--accent);color:white;padding:6rem 0}.tech-note p{font-size:clamp(1.8rem,3vw,3.2rem);color:white;max-width:1100px;line-height:1.5;margin:2rem 0 0}.about-intro{display:grid;grid-template-columns:1fr 2fr;padding-block:8rem}.about-intro>p{font-size:clamp(1.5rem,2.7vw,2.8rem);line-height:1.7;color:var(--ink)}.mission{padding-block:9rem}.mission h2{font-size:clamp(2.2rem,4vw,4.5rem);max-width:1100px;margin:2rem 0 7rem}.about-facts{display:flex;gap:7rem}.about-facts strong{display:block;font-size:2rem}.about-facts span{color:#aaa;font-size:.8rem}.values{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}.values div{padding:1.5rem;border-left:1px solid var(--line);min-height:220px}.values h3{margin-top:6rem}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.team-grid img,.portrait-placeholder{aspect-ratio:4/5;object-fit:cover;background:var(--bg-2);margin-bottom:1.5rem}.portrait-placeholder{display:grid;place-items:center;font-size:5rem;color:var(--muted)}.team-grid h3{font-size:1.4rem;margin:0}.team-grid p{margin:.2rem 0}.team-grid small{display:block;color:var(--muted);margin-bottom:1rem}.legal{max-width:850px;padding-top:12rem;padding-bottom:10rem}.legal h1{font-size:clamp(2.7rem,5vw,5rem)}.legal h2{font-size:1.8rem;margin-top:3rem}.legal p{font-size:1.05rem}

.projects-list{display:flex;flex-direction:column;gap:9rem}.projects-list .project-card:nth-child(even){direction:ltr}.projects-list .project-card:nth-child(even)>*{direction:rtl}.modal-backdrop{position:fixed;inset:0;z-index:150;background:rgba(0,0,0,.55);display:flex;justify-content:flex-start;animation:fade .25s}.project-drawer{width:min(1050px,92vw);height:100%;overflow:auto;background:var(--bg);box-shadow:20px 0 70px rgba(0,0,0,.3);animation:drawer .55s var(--ease)}.drawer-bar{height:70px;position:sticky;top:0;z-index:2;background:rgba(245,243,239,.92);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:space-between;padding:0 2rem;border-bottom:1px solid var(--line);font-size:.8rem}.drawer-bar button{border:0;background:none;font-size:2rem;cursor:pointer}.case-study header{padding:5rem clamp(1.5rem,6vw,6rem)}.case-study h1{font-size:clamp(3rem,7vw,7rem);margin:1rem 0}.case-study header>p{font-size:1.2rem;max-width:750px}.case-facts{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);margin-top:3rem;padding-top:1.5rem;gap:2rem}.case-facts span{display:block;font-size:.7rem;color:var(--muted)}.case-facts strong{font-weight:400}.case-cover{aspect-ratio:16/10}.case-cover>*{height:100%}.case-study .rich-content{max-width:760px;margin:6rem auto;padding:0 1.5rem}.case-gallery{display:grid;gap:1rem;padding:2rem}.related-project{display:flex;justify-content:space-between;padding:4rem 2rem;border-top:1px solid var(--line)}.related-project a{font-size:2rem}@keyframes fade{from{opacity:0}}@keyframes drawer{from{transform:translateX(-100%)}}

.blog-tools{padding-block:2rem}.blog-tools form{display:flex;justify-content:space-between;align-items:center;gap:2rem}.blog-tools input{background:transparent;border:0;border-bottom:1px solid var(--line);padding:.7rem;width:min(320px,100%)}.category-filters{display:flex;flex-wrap:wrap;gap:.5rem}.category-filters a,.admin-filters a{font-size:.8rem;border:1px solid var(--line);padding:.35rem .8rem}.category-filters a.active,.admin-filters a.active{background:var(--dark);color:white}.blog-list{padding-block:3rem 9rem}.featured-article{display:grid;grid-template-columns:1.4fr 1fr;gap:5rem;align-items:center;margin-bottom:8rem}.article-art{aspect-ratio:16/10;background:repeating-linear-gradient(90deg,transparent 0 9.9%,rgba(255,255,255,.08) 10%),radial-gradient(circle at 75% 30%,var(--accent) 0 4px,transparent 5px),#111;color:white;padding:2rem;display:flex;align-items:flex-end;font:600 .75rem/1 Inter;letter-spacing:.15em}.featured-article h2{font-size:clamp(2rem,3.7vw,4rem);margin:1rem 0}.article-header{text-align:center;padding-top:13rem;padding-bottom:5rem;max-width:1120px}.article-header h1{font-size:clamp(2.7rem,5.5vw,6rem);margin:1.5rem 0}.article-header>p{font-size:1.2rem;max-width:730px;margin:0 auto 2rem}.article-header>div{display:flex;justify-content:center;gap:2rem;font-size:.78rem;color:var(--muted)}.article-cover img{width:100%;aspect-ratio:16/9;object-fit:cover}.article-body{display:grid;grid-template-columns:260px minmax(0,740px);gap:6rem;justify-content:center;padding-block:7rem}.article-body aside{font-size:.8rem;border-top:1px solid var(--line);padding-top:1rem}.article-body aside span{display:block;color:var(--muted)}.rich-content{font-size:1.08rem;line-height:2.15}.rich-content h2{font-size:2rem;margin-top:3.5rem}.rich-content h3{font-size:1.45rem;margin-top:2.5rem}.rich-content a{color:var(--accent);text-decoration:underline}.rich-content img{height:auto}.rich-content blockquote{border-right:3px solid var(--accent);margin:2rem 0;padding:1rem 2rem;background:var(--bg-2)}

.inquiry-hero{padding-bottom:5rem}.inquiry-layout{display:grid;grid-template-columns:1fr 2fr;gap:6rem;padding-block:5rem 10rem}.inquiry-layout aside{display:flex;flex-direction:column;align-items:flex-start}.inquiry-layout aside a{font-size:1.15rem;border-bottom:1px solid var(--line)}.inquiry-form{max-width:850px}.form-grid,.admin-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.form-grid label,.admin-form label,.login-card label{display:flex;flex-direction:column;font-size:.8rem;color:var(--muted)}.form-grid .wide,.admin-form-grid .wide{grid-column:1/-1}input,textarea,select{width:100%;background:rgba(255,255,255,.45);border:1px solid var(--line);padding:.75rem 1rem;color:var(--ink);border-radius:0;transition:border-color .2s,background .2s}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--ink);background:white}.consent{display:flex;align-items:flex-start;gap:.8rem;font-size:.8rem;margin:2rem 0}.consent input{width:auto;margin-top:.45rem}.consent a{text-decoration:underline}.hp{position:absolute;left:-10000px}.form-errors{border-right:3px solid #a1261d;background:#fff0ed;padding:1rem 1.5rem;margin-bottom:2rem;color:#7d1b14}.form-errors ul{margin:.5rem 0}.success-state{padding:4rem;background:var(--bg-2)}.success-state>span{display:grid;place-items:center;width:50px;height:50px;border-radius:50%;background:var(--dark);color:white}.success-state h2{font-size:2.5rem;margin:2rem 0 1rem}

.site-footer{padding:6rem var(--pad) 2rem;background:var(--bg-2)}.footer-main{max-width:var(--max);margin:auto;display:grid;grid-template-columns:2fr 1fr 1fr;gap:5rem}.footer-main>div p{max-width:390px;margin-top:1.5rem}.footer-main nav,.footer-main address{display:flex;flex-direction:column;font-style:normal}.footer-main nav a,.footer-main address>*{padding:.3rem 0}.footer-bottom{max-width:var(--max);margin:5rem auto 0;padding-top:1.5rem;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:.75rem;color:var(--muted)}

.admin-body{background:#f2f1ed;min-height:100vh}.admin-sidebar{position:fixed;right:0;top:0;bottom:0;width:240px;background:#111;color:white;padding:2rem;display:flex;flex-direction:column}.admin-sidebar .brand{margin-bottom:4rem}.admin-sidebar nav{display:flex;flex-direction:column;gap:.35rem}.admin-sidebar nav a{padding:.45rem 0;color:#bbb}.admin-sidebar nav a:hover{color:white}.admin-sidebar form{margin-top:auto}.admin-main{margin-right:240px;padding:clamp(1.5rem,4vw,4rem);max-width:1500px}.admin-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:3rem}.admin-heading h1{font-size:2.7rem;margin:0}.admin-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:3rem}.admin-stats>div{background:white;padding:2rem;border:1px solid var(--line)}.admin-stats strong{display:block;font-size:2.4rem}.admin-stats span{font-size:.8rem;color:var(--muted)}.admin-panel,.admin-form,.inquiry-detail{background:white;padding:clamp(1.5rem,3vw,3rem);border:1px solid var(--line)}.admin-table{overflow:auto;background:white;border:1px solid var(--line)}.admin-table table{width:100%;border-collapse:collapse;min-width:700px}.admin-table th,.admin-table td{text-align:right;padding:1rem;border-bottom:1px solid var(--line);font-size:.85rem}.admin-table th{color:var(--muted);font-weight:500}.admin-table td small{display:block;color:var(--muted)}.inline-button{background:none;border:0;text-decoration:underline;cursor:pointer;padding:0}.admin-form-grid{margin-bottom:2rem}.admin-form .check{flex-direction:row;align-items:center;gap:.5rem}.admin-form .check input{width:auto}.rich-field{margin-block:2rem}.rich-field trix-editor{min-height:350px}.form-actions{display:flex;gap:2rem;align-items:center;margin-top:2rem}.admin-filters{display:flex;gap:.5rem;margin-bottom:1.5rem}.status{font:600 .7rem/1 Inter;background:var(--bg-2);padding:.25rem .5rem}.status-new{background:#ffe3ad}.inquiry-detail{display:grid;grid-template-columns:1.4fr 1fr;gap:4rem}.inquiry-detail dl{display:grid;grid-template-columns:120px 1fr}.inquiry-detail dt,.inquiry-detail dd{margin:0;padding:.6rem;border-bottom:1px solid var(--line)}.login-card{width:min(440px,calc(100% - 2rem));margin:10vh auto;background:white;padding:3rem}.login-card h1{margin:3rem 0 2rem}.login-card form{display:grid;gap:1rem}.flash{padding:1rem;background:#e4f1dd;margin-bottom:1rem}.flash.alert{background:#ffe1dc}

.reveal{opacity:0;transform:translateY(24px);transition:opacity .75s var(--ease),transform .75s var(--ease)}.reveal.is-visible{opacity:1;transform:none}
@media(max-width:900px){.nav-shell{grid-template-columns:1fr auto}.desktop-nav,.nav-cta{display:none}.menu-button{display:block}.section-heading,.service-title,.about-intro{grid-template-columns:1fr;gap:2rem}.services-grid,.principles,.values{grid-template-columns:1fr}.service-item,.principles article,.values div{border-left:0;border-bottom:1px solid var(--line)}.service-mark,.principles h3,.values h3{margin:2.5rem 0 1rem}.project-card,.project-card:nth-child(even){grid-template-columns:1fr;direction:rtl}.service-columns{margin-right:0;grid-template-columns:1fr 1fr}.process{grid-template-columns:1fr;gap:0;padding-right:1rem}.process:before{top:0;bottom:0;right:5px;left:auto;width:1px;height:auto}.process li{padding:0 2rem 2.5rem 0}.process li:before{top:.55rem;right:-1rem}.article-list article{grid-template-columns:1fr auto}.article-list article>span,.article-list article>div{grid-column:1}.article-list small{grid-column:1}.featured-article,.article-body,.inquiry-layout{grid-template-columns:1fr;gap:3rem}.article-body aside{display:none}.footer-main{grid-template-columns:1fr 1fr}.footer-main>div{grid-column:1/-1}.admin-sidebar{position:static;width:100%;padding:1rem;flex-direction:row;overflow:auto;align-items:center}.admin-sidebar .brand{margin:0 0 0 2rem}.admin-sidebar nav{flex-direction:row;white-space:nowrap}.admin-sidebar form{margin:0 2rem 0 0}.admin-main{margin:0}.admin-stats{grid-template-columns:1fr 1fr}}
@media(max-width:600px){body{font-size:16px}.grain{display:none}.nav-shell{height:68px}.mobile-menu{inset:68px 0 0}.hero h1 br,.page-hero h1 br{display:none}.hero-actions{align-items:flex-start;flex-direction:column;gap:1.2rem}.hero-orbit{width:90vw;left:-40%;top:20%}.hero-bottom{grid-template-columns:1fr auto}.hero-bottom>span{display:none}.services-grid,.principles,.values,.service-columns,.form-grid,.admin-form-grid,.team-grid,.footer-main,.inquiry-detail{grid-template-columns:1fr}.section-heading{margin-bottom:3rem}.project-placeholder{min-height:250px}.project-meta h3{font-size:2rem}.article-list article{gap:1rem}.about-facts{gap:3rem}.team-grid{gap:4rem}.category-filters{margin-top:1rem}.blog-tools form{align-items:stretch;flex-direction:column}.featured-article{margin-bottom:4rem}.article-header>div{flex-wrap:wrap;gap:.7rem 1.5rem}.inquiry-layout{padding-top:3rem}.form-grid .wide,.admin-form-grid .wide{grid-column:auto}.footer-main{gap:2.5rem}.footer-bottom{align-items:flex-start;flex-direction:column;gap:.5rem}.modal-backdrop{background:var(--bg)}.project-drawer{width:100vw}.admin-stats{grid-template-columns:1fr}.admin-sidebar .brand,.admin-sidebar form{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}
.brand-symbol{width:24px;height:42px;object-fit:contain;flex:0 0 auto}
@media(max-width:600px){.hero h1 br,.page-hero h1 br{display:block}}

/* Hero collaboration visual: independent layers let both hands move without layout work. */
.hero-stage{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr);align-items:center;gap:clamp(1rem,2vw,2.5rem);width:100%}.hero-stage .hero-copy{max-width:820px}.hero-stage .hero-copy h1{font-size:clamp(3rem,5.25vw,6.2rem)}.hero-hands{position:relative;direction:ltr;width:clamp(430px,48vw,780px);aspect-ratio:3/2;margin-inline:-18% -4%;isolation:isolate;filter:drop-shadow(0 30px 38px rgba(10,10,10,.08))}.hero-hand-layer{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;will-change:transform}.human-hand{clip-path:inset(0 48.5% 0 0)}.robot-hand{clip-path:inset(0 0 0 48.5%)}.contact-signal{position:absolute;z-index:3;left:51.4%;top:46.5%;width:7px;height:7px;border-radius:50%;background:var(--ink);transform:translate(-50%,-50%);opacity:.75}.contact-signal:after{content:"";position:absolute;inset:-6px;border:1px solid var(--ink);border-radius:50%;opacity:.25}.hero-hands.motion-ready .human-hand{animation:human-reach 5.8s var(--ease) infinite alternate}.hero-hands.motion-ready .robot-hand{animation:robot-reach 5.8s var(--ease) infinite alternate}.hero-hands.motion-ready .contact-signal:after{animation:contact-pulse 2.9s ease-out infinite}@keyframes human-reach{from{transform:translate(-5px,5px) rotate(-.25deg)}to{transform:translate(5px,-2px) rotate(.2deg)}}@keyframes robot-reach{from{transform:translate(6px,-4px) rotate(.2deg)}to{transform:translate(-4px,2px) rotate(-.15deg)}}@keyframes contact-pulse{0%,45%{transform:scale(.5);opacity:0}70%{opacity:.3}100%{transform:scale(2.4);opacity:0}}
@media(max-width:900px){.hero-stage{grid-template-columns:1fr}.hero-stage .hero-copy{max-width:100%}.hero-hands{width:min(760px,100%);margin:-1rem auto 0}.hero-orbit{opacity:.45}}
@media(max-width:600px){.hero-stage{gap:1.5rem}.hero-stage .hero-copy h1{font-size:clamp(2.8rem,13vw,4.2rem)}.hero-hands{width:115%;margin:-1.5rem -7.5% -1rem;filter:drop-shadow(0 18px 24px rgba(10,10,10,.06))}.contact-signal{display:none}}
.human-hand{clip-path:inset(0 45.5% 0 0)}.robot-hand{clip-path:inset(0 0 0 49.5%)}.contact-signal{width:9px;height:9px;border:1px solid var(--ink);background:transparent;opacity:.24}
.site-header.scrolled{background:rgba(255,255,255,.9)}
.hands-composite{clip-path:none}.hero-hands.motion-ready .hands-composite{animation:hands-breathe 5.8s var(--ease) infinite alternate}@keyframes hands-breathe{from{transform:translate3d(-3px,3px,0) scale(.992)}to{transform:translate3d(3px,-2px,0) scale(1.008)}}

/* Homepage visual rhythm */
.systems-visual{margin:0 0 clamp(4rem,7vw,7rem);display:grid;grid-template-columns:minmax(0,4fr) minmax(220px,1fr);gap:0;align-items:stretch;overflow:hidden;background:var(--dark);color:white;clip-path:inset(0 0 12% 0);transition:opacity .85s var(--ease),transform .85s var(--ease),clip-path 1s var(--ease)}.systems-visual.is-visible{clip-path:inset(0)}.systems-visual-media{position:relative;overflow:hidden;aspect-ratio:16/8}.systems-visual-media:after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 43%,rgba(255,255,255,.16) 50%,transparent 57%);transform:translateX(-120%)}.systems-visual.is-visible .systems-visual-media:after{animation:visual-scan 1.4s .35s var(--ease) both}.systems-visual img{width:100%;height:100%;object-fit:cover;transform:scale(1.055);will-change:transform}.systems-visual figcaption{padding:clamp(1.5rem,3vw,3rem);display:flex;flex-direction:column;justify-content:space-between;border-right:1px solid rgba(255,255,255,.15)}.systems-visual figcaption span{font:600 .68rem/1.5 Inter,sans-serif;letter-spacing:.1em;color:#aaa}.systems-visual figcaption p{margin:0;color:white;font-size:clamp(1.15rem,1.8vw,1.7rem);line-height:1.6}@keyframes visual-scan{to{transform:translateX(120%)}}
.principle-glyph{position:relative;width:74px;height:74px;margin:2.5rem 0 1.5rem;border:1px solid var(--line);border-radius:50%;transition:transform .7s var(--ease),border-color .4s}.principle-glyph:before,.principle-glyph:after,.principle-glyph i{content:"";position:absolute}.principle-glyph:before{inset:18px;border:1px solid var(--line);border-radius:50%}.principle-glyph:after{width:7px;height:7px;top:50%;left:50%;border-radius:50%;background:var(--ink);transform:translate(-50%,-50%)}.principle-glyph i:first-child{right:-1px;top:50%;width:100%;height:1px;background:var(--line)}.principle-glyph i:last-child{top:-1px;right:50%;width:1px;height:100%;background:var(--line)}.principles article:nth-child(2) .principle-glyph{border-radius:2px;transform:rotate(45deg)}.principles article:nth-child(2) .principle-glyph>*{transform:rotate(-45deg)}.principles article:nth-child(3) .principle-glyph:before{inset:9px 26px;border-radius:0}.principles article:hover .principle-glyph{transform:rotate(16deg) scale(1.06);border-color:var(--ink)}.principles article:nth-child(2):hover .principle-glyph{transform:rotate(61deg) scale(1.06)}
.principles article:nth-child(2),.process li:nth-child(2),.insights .article-list article:nth-child(2){transition-delay:.1s}.principles article:nth-child(3),.process li:nth-child(3),.insights .article-list article:nth-child(3){transition-delay:.2s}.process li:nth-child(4){transition-delay:.3s}
.insights .article-list article{grid-template-columns:86px .75fr 3.5fr 1.35fr auto;align-items:center}.article-visual{position:relative!important;width:76px;height:76px;display:block;overflow:hidden;background:var(--dark);grid-column:auto!important}.article-visual:before,.article-visual:after,.article-visual i{content:"";position:absolute;transition:transform .6s var(--ease)}.article-visual:before{inset:16px;border:1px solid rgba(255,255,255,.55);border-radius:50%}.article-visual:after{width:6px;height:6px;background:white;border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%)}.article-visual i{height:1px;width:100%;top:50%;left:0;background:rgba(255,255,255,.35)}.visual-ai:before{border-radius:3px;transform:rotate(45deg)}.visual-product:before{inset:22px 12px;border-radius:0}.insights article:hover .article-visual:before{transform:rotate(35deg) scale(.86)}.insights article:hover .visual-ai:before{transform:rotate(80deg) scale(.86)}.insights article:hover .article-visual i{transform:rotate(-18deg)}
@media(max-width:900px){.systems-visual{grid-template-columns:1fr}.systems-visual figcaption{min-height:150px;border-right:0;border-top:1px solid rgba(255,255,255,.15);gap:2rem}.insights .article-list article{grid-template-columns:72px 1fr auto}.insights .article-list .article-visual{grid-column:1!important;grid-row:1/4;width:62px;height:62px}.insights .article-list article>span:nth-child(2),.insights .article-list article>div,.insights .article-list article>small{grid-column:2}.insights .article-list article>a:last-child{grid-column:3;grid-row:1/4}}
@media(max-width:600px){.systems-visual{margin-inline:calc(var(--pad) * -1)}.systems-visual-media{aspect-ratio:4/3}.principle-glyph{margin-top:1.5rem}.insights .article-list article{padding-block:1.4rem}}

/* Softer geometry and section-specific software imagery */
.button{border-radius:12px}
.systems-visual,.section-visual{border-radius:24px}
.services-grid{border:1px solid var(--line);border-radius:20px;overflow:hidden;background:var(--surface)}
.service-item{padding-bottom:2rem}
.section-visual{position:relative;overflow:hidden;margin:0;background:var(--bg-2);isolation:isolate}
.section-visual img{width:100%;height:100%;object-fit:cover;transform:scale(1.055);will-change:transform}
.section-visual:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,transparent 58%,rgba(10,10,10,.16))}
.section-visual figcaption{position:absolute;z-index:2;right:18px;bottom:18px;max-width:min(460px,calc(100% - 36px));padding:.75rem 1rem;background:rgba(255,255,255,.9);color:var(--ink);border:1px solid rgba(255,255,255,.7);border-radius:14px;backdrop-filter:blur(12px);font-size:.86rem;line-height:1.8}
.why-layout{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);gap:clamp(2rem,4vw,5rem);align-items:stretch}
.why-visual{min-height:660px}
.why-visual img{object-position:center}
.why-layout .principles{grid-template-columns:1fr;border:1px solid var(--line);border-radius:20px;overflow:hidden;background:var(--surface)}
.why-layout .principles article{display:grid;grid-template-columns:90px 1fr;column-gap:1rem;align-content:center;padding:clamp(1.25rem,2.2vw,2rem);border-left:0;border-bottom:1px solid var(--line)}
.why-layout .principles article:last-child{border-bottom:0}
.why-layout .principles article>span{grid-column:1/-1}
.why-layout .principle-glyph{grid-column:1;grid-row:2/4;margin:1.3rem 0 0}
.why-layout .principles h3{grid-column:2;margin:1.3rem 0 .55rem;font-size:clamp(1.2rem,1.6vw,1.55rem)}
.why-layout .principles p{grid-column:2;margin:0}
.process-visual,.insights-visual{aspect-ratio:16/7;margin-bottom:clamp(3rem,6vw,5rem)}
.process-visual{background:#fff}
.process-visual img{object-position:center 58%}
.insights-visual img{object-position:center 54%}
.project-media,.article-art,.article-cover img,.team-grid img,.portrait-placeholder{border-radius:20px}
.article-visual{border-radius:14px}
input,textarea,select{border-radius:10px}
.success-state,.admin-panel,.admin-form,.inquiry-detail,.login-card,.admin-stats>div,.admin-table{border-radius:18px}
.category-filters a,.admin-filters a,.status{border-radius:8px}
@media(max-width:900px){.why-layout{grid-template-columns:1fr}.why-visual{min-height:0;aspect-ratio:4/3}.process-visual,.insights-visual{aspect-ratio:4/3}.why-layout .principles article{min-height:220px}}
@media(max-width:600px){.systems-visual,.section-visual{border-radius:18px}.services-grid,.why-layout .principles{border-radius:16px}.services-grid{margin-inline:0}.why-layout .principles article{grid-template-columns:68px 1fr;min-height:0}.principle-glyph{width:56px;height:56px}.principle-glyph:before{inset:13px}.section-visual figcaption{right:12px;bottom:12px;max-width:calc(100% - 24px);border-radius:11px}.process-visual,.insights-visual,.why-visual{aspect-ratio:4/3}.process-visual img{object-position:center}.button{border-radius:11px}}

/* Homepage editorial journey */
.home-section{padding-block:clamp(7rem,11vw,11rem)}
.home-heading{display:grid;grid-template-columns:minmax(160px,.55fr) minmax(0,1.45fr);gap:clamp(2rem,6vw,8rem);align-items:start;margin-bottom:clamp(3rem,6vw,6rem)}
.home-heading h2,.capabilities-intro h2,.approach-content h2,.insights-intro h2{font-size:clamp(2.25rem,4vw,4.5rem);margin:0 0 1.5rem;max-width:920px}
.home-heading p,.capabilities-intro>p,.approach-content header>p,.insights-intro>p{font-size:clamp(1rem,1.2vw,1.15rem);max-width:690px;line-height:2}
.editorial-visual{margin:0;overflow:hidden;background:#f4f0e9;border-radius:18px}
.editorial-visual img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}
.editorial-visual:hover img{transform:scale(1.018)}
.capabilities-section{background:var(--bg-2)}
.capabilities-layout{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(470px,1.25fr) minmax(300px,.85fr);gap:clamp(2rem,4vw,5rem);align-items:start}
.capabilities-intro{position:sticky;top:120px}
.capabilities-intro h2{font-size:clamp(2rem,3vw,3.5rem);margin-top:1.4rem}
.capabilities-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-right:1px solid var(--line)}
.capability-item{position:relative;min-height:245px;padding:1.5rem;border-left:1px solid var(--line);border-bottom:1px solid var(--line)}
.capability-item>span{font:.7rem/1 Inter,sans-serif;color:var(--muted)}
.capability-item>i{position:absolute;top:1.35rem;left:1.4rem;width:22px;height:22px;border:1px solid var(--ink);border-radius:50%}
.capability-item>i:before,.capability-item>i:after{content:"";position:absolute;background:var(--ink)}
.capability-item>i:before{width:5px;height:5px;border-radius:50%;inset:8px}
.capability-item>i:after{height:1px;width:32px;top:10px;left:-6px;opacity:.35}
.capability-item h3{font-size:1.25rem;margin:4rem 0 .75rem}
.capability-item p{font-size:.83rem;margin:0}
.capabilities-visual{aspect-ratio:1;position:sticky;top:120px}
.capabilities-visual img{transform:scale(1.03)}
.capabilities-visual.is-visible img{animation:core-arrive 1.1s var(--ease) both}
@keyframes core-arrive{from{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1.03)}}

.approach-layout{display:grid;grid-template-columns:minmax(0,1.28fr) minmax(360px,.72fr);gap:clamp(3rem,6vw,8rem);align-items:start}
.approach-visual{position:sticky;top:110px;aspect-ratio:3/2}
.approach-visual img{transform:scale(1.01);transition:transform 1.05s var(--ease),filter 1s var(--ease)}
.approach-visual.reveal:not(.is-visible) img{transform:scale(.97) translateX(-1.5%);filter:contrast(.82)}
.approach-content header{padding-bottom:clamp(3rem,5vw,5rem)}
.approach-content h2{font-size:clamp(2.1rem,3.4vw,3.8rem);margin-top:1.4rem}
.approach-principles{border-top:1px solid var(--line)}
.approach-principles article{padding:2rem 0;border-bottom:1px solid var(--line)}
.approach-principles article>span{font:.72rem/1 Inter,sans-serif;color:var(--muted)}
.approach-principles h3{font-size:1.35rem;margin:1.25rem 0 .6rem}
.approach-principles p{font-size:.9rem;margin:0}

.process-dark{background:#0a0a0a;color:var(--dark-ink)}
.process-dark .eyebrow,.process-dark p{color:#aaa}
.process-dark .home-heading{margin-bottom:3rem}
.process-art{margin:0 0 clamp(4rem,7vw,7rem);overflow:hidden;border-radius:16px;aspect-ratio:21/9;background:#111}
.process-art img{width:100%;height:100%;object-fit:cover;transition:opacity .9s var(--ease),transform 1.1s var(--ease)}
.process-art.reveal:not(.is-visible) img{opacity:.25;transform:scale(.985)}
.process-stages{display:grid;grid-template-columns:repeat(4,1fr);list-style:none;margin:0;padding:0;border-top:1px solid rgba(255,255,255,.28)}
.process-stages>li{position:relative;padding:2rem clamp(1rem,2vw,2rem) 0;border-left:1px solid rgba(255,255,255,.14);opacity:.68;transition:opacity .35s var(--ease),transform .35s var(--ease)}
.process-stages>li:last-child{border-left:0}
.process-stages>li:before{content:"";position:absolute;right:-1px;top:-6px;width:10px;height:10px;border-radius:50%;background:#0a0a0a;border:1px solid #f5f3ef;transition:background .3s,transform .3s}
.process-stages>li:hover,.process-stages>li:focus-within{opacity:1;transform:translateY(-3px)}
.process-stages>li:hover:before,.process-stages>li:focus-within:before{background:#d4a867;transform:scale(1.25)}
.stage-number{display:block;font:500 clamp(3.5rem,5vw,6rem)/1 Inter,sans-serif;color:rgba(255,255,255,.14);margin-bottom:2rem}
.process-stages h3{font-size:1.35rem;color:white}
.process-stages p{font-size:.85rem;min-height:7.5rem}
.process-stages>li>div{border-top:1px solid rgba(255,255,255,.14);padding-top:1rem}
.process-stages>li>div>span{font-size:.7rem;color:#888}
.process-stages ul{display:grid;grid-template-columns:1fr 1fr;gap:.35rem;list-style:none;padding:1rem 0 0;margin:0;color:#bbb;font-size:.75rem}

.insights-editorial{overflow:clip}.insights-layout{display:grid;grid-template-columns:minmax(330px,.72fr) minmax(0,1.28fr);gap:clamp(4rem,8vw,10rem);align-items:start}
.insights-intro{position:sticky;top:120px}
.insights-intro h2{font-size:clamp(2.1rem,3.4vw,3.8rem);margin-top:1.4rem}
.insights-intro .text-link{margin-top:2rem}
.insight-rows{border-top:1px solid var(--line)}
.insight-row{position:relative;padding:clamp(2rem,3.5vw,3.5rem) 0;border-bottom:1px solid var(--line)}
.insight-category{font-size:.72rem;color:var(--muted)}
.insight-row h3{font-size:clamp(1.45rem,2.35vw,2.45rem);margin:1rem 0 .8rem;transition:transform .45s var(--ease)}
.insight-row p{font-size:.9rem;max-width:680px;margin-bottom:1.5rem}
.insight-row>div{display:flex;justify-content:space-between;align-items:center}
.insight-row small{font-size:.72rem;color:var(--muted)}
.insight-arrow{font-size:1.6rem;transition:transform .45s var(--ease)}
.insight-preview{position:absolute;z-index:3;left:calc(100% + clamp(3rem,6vw,7rem));top:50%;width:320px;height:240px;object-fit:cover;border-radius:14px;opacity:0;pointer-events:none;transform:translateY(-44%) scale(.96);transition:opacity .35s var(--ease),transform .5s var(--ease);box-shadow:0 22px 60px rgba(10,10,10,.12)}
.insight-row:hover h3,.insight-row:focus-within h3{transform:translateX(-7px)}
.insight-row:hover .insight-arrow,.insight-row:focus-within .insight-arrow{transform:translateX(-7px)}
.insight-row:hover .insight-preview,.insight-row:focus-within .insight-preview{opacity:1;transform:translateY(-50%) scale(1)}

.final-cta{position:relative;isolation:isolate;overflow:hidden;min-height:clamp(620px,72vh,820px);display:flex;align-items:center;background:#090909;color:white}
.final-cta:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(9,9,9,.08),rgba(9,9,9,.42) 48%,rgba(9,9,9,.94) 77%)}
.final-cta-art{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;animation:cta-drift 18s ease-in-out infinite alternate}
.final-cta-content{width:100%}
.final-cta .eyebrow,.final-cta p{color:#aaa}
.final-cta h2{font-size:clamp(2.7rem,5vw,6rem);margin:2rem 0;max-width:1050px}
.final-cta p{font-size:1.05rem;max-width:690px;margin-bottom:2.5rem}
.final-cta-content>div{display:flex;align-items:center;gap:2rem}
.cta-secondary{font-size:.85rem;border-bottom:1px solid rgba(255,255,255,.45)}
@keyframes cta-drift{from{transform:scale(1.01) translate3d(-.4%,0,0)}to{transform:scale(1.035) translate3d(.5%,-.4%,0)}}

.site-footer{background:#111;color:#eee;border-top:1px solid rgba(255,255,255,.12)}
.site-footer p,.site-footer .brand-fa,.site-footer .footer-bottom{color:#888}
.footer-main nav a,.footer-main address>*{color:#bbb}
.footer-main nav a:hover,.footer-main address a:hover{color:white}
.footer-bottom{border-color:rgba(255,255,255,.12);display:grid;grid-template-columns:1fr 1fr auto}

@media(max-width:1180px){.capabilities-layout{grid-template-columns:minmax(250px,.75fr) minmax(0,1.25fr)}.capabilities-visual{grid-column:1;grid-row:2;position:static}.capabilities-grid{grid-column:2;grid-row:1/3}.capabilities-intro{position:static}.insight-preview{width:260px;height:195px;left:calc(100% + 3rem)}}
@media(max-width:900px){.home-heading,.approach-layout,.insights-layout{grid-template-columns:1fr}.home-heading{gap:1.5rem}.capabilities-layout{grid-template-columns:1fr}.capabilities-intro,.capabilities-grid,.capabilities-visual{grid-column:auto;grid-row:auto}.capabilities-visual{width:min(560px,100%);margin-inline:auto}.approach-visual,.insights-intro{position:static}.approach-visual{grid-row:2}.process-stages{grid-template-columns:1fr;border-top:0;border-right:1px solid rgba(255,255,255,.25);margin-right:.4rem}.process-stages>li{border-left:0;border-bottom:1px solid rgba(255,255,255,.14);padding:1.5rem 2rem 2.5rem}.process-stages>li:before{right:-6px;top:2rem}.process-stages p{min-height:0}.insight-preview{display:none}.insights-intro .text-link{margin-bottom:2rem}}
@media(max-width:600px){.home-section{padding-block:6.5rem}.capabilities-grid{grid-template-columns:1fr}.capability-item{min-height:210px;border-left:0}.capabilities-visual{border-radius:14px}.approach-visual{aspect-ratio:4/3;border-radius:14px}.approach-visual img{object-position:center}.process-art{aspect-ratio:16/9;border-radius:12px}.process-art img{object-fit:cover}.process-stages ul{grid-template-columns:1fr}.insight-row h3{font-size:1.55rem}.final-cta{min-height:650px}.final-cta:after{background:rgba(9,9,9,.72)}.final-cta-art{object-position:38% center;animation:none}.final-cta-content>div{align-items:flex-start;flex-direction:column}.footer-bottom{grid-template-columns:1fr;gap:.4rem}}
@media(prefers-reduced-motion:reduce){.capabilities-visual.is-visible img,.final-cta-art{animation:none}.editorial-visual img,.process-art img{transform:none!important}}

/* Insights: reserve a real preview column so hover media never covers copy. */
.insights-layout{grid-template-columns:minmax(280px,.7fr) minmax(480px,1.3fr) 320px;gap:clamp(2.5rem,4vw,5rem)}
.insights-intro h2{font-size:clamp(2rem,3vw,3.25rem);line-height:1.38}
.insight-row h3{font-size:clamp(1.35rem,1.85vw,2rem);line-height:1.55}
.insight-preview-rail{position:sticky;top:140px;aspect-ratio:4/3;align-self:start;overflow:hidden;border-radius:14px;background:transparent}
.insight-preview-rail .insight-preview{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:14px;opacity:0;transform:translateY(10px) scale(.97);box-shadow:none;transition:opacity .3s var(--ease),transform .45s var(--ease)}
.insight-preview-rail .insight-preview.is-active{opacity:1;transform:none}
@media(max-width:1180px){.insights-layout{grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr)}.insight-preview-rail{display:none}}
@media(max-width:900px){.insights-layout{grid-template-columns:1fr}.insights-intro h2{font-size:clamp(2rem,8vw,3rem)}}

/* Interactive homepage services */
.home-services-v2{position:relative;padding-block:clamp(7rem,9.7vw,8.75rem);background:#f5f3ef;border-top:1px solid var(--line);overflow:clip}
.services-v2-layout{display:grid;grid-template-columns:minmax(0,1.22fr) minmax(420px,1fr);gap:clamp(3.5rem,6vw,8rem);align-items:start}
.services-v2-header{max-width:760px;margin-bottom:clamp(3.5rem,6vw,6rem)}
.services-v2-header h2{font-size:clamp(2.4rem,4.8vw,5.2rem);line-height:1.22;margin:1.4rem 0 1.75rem;max-width:760px}
.services-v2-header p{font-size:clamp(1rem,1.2vw,1.12rem);line-height:2;max-width:650px;margin:0}
.service-switcher-list{border-top:1px solid var(--line)}
.service-switcher-item{position:relative;padding:0;opacity:1;transform:none}
.service-switcher-item:after{content:"";position:absolute;right:0;bottom:0;width:100%;height:1px;background:var(--line);transform:scaleX(0);transform-origin:right;transition:transform .7s var(--ease)}
.service-switcher-item.is-visible:after{transform:scaleX(1)}
.service-switcher-item:before{content:"";position:absolute;right:0;top:1.65rem;width:2px;height:0;background:var(--accent);transition:height .45s var(--ease)}
.service-switcher-item.is-active:before{height:34px}
.service-switcher-trigger{width:100%;display:grid;grid-template-columns:52px minmax(0,1fr) 30px;gap:1rem;align-items:center;text-align:right;border:0;background:transparent;color:var(--ink);padding:1.55rem 1rem 1rem 0;cursor:pointer}
.service-switcher-number{font:600 .78rem/1 Inter,sans-serif;color:rgba(10,10,10,.24);transition:color .3s var(--ease)}
.service-switcher-title{font-size:clamp(1.5rem,2.4vw,2.7rem);font-weight:500;line-height:1.35;letter-spacing:-.04em}
.service-switcher-arrow{font-size:1.1rem;color:rgba(10,10,10,.25);transform:translate3d(0,0,0);transition:color .3s var(--ease),transform .4s var(--ease)}
.service-switcher-summary{font-size:clamp(.96rem,1.1vw,1.05rem);line-height:1.95;margin:0 68px 1.25rem 3rem;max-width:650px;opacity:.55;transition:opacity .35s var(--ease)}
.service-switcher-expand{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .5s var(--ease),opacity .35s var(--ease)}
.service-switcher-expand-inner{min-height:0;overflow:hidden;padding-inline:68px 2rem}
.service-switcher-detail{font-size:.9rem;line-height:1.95;max-width:650px;margin:0 0 1.5rem;color:var(--muted)}
.service-switcher-expand ul{display:flex;flex-wrap:wrap;gap:.25rem 1.2rem;list-style:none;margin:0 0 1.6rem;padding:0}
.service-switcher-expand li{position:relative;font-size:.78rem;color:var(--muted)}
.service-switcher-expand li:not(:last-child):after{content:"•";position:absolute;left:-.75rem;color:rgba(10,10,10,.25)}
.service-switcher-link{display:inline-block;font-size:.82rem;border-bottom:1px solid currentColor;padding-bottom:.12rem;margin-bottom:1.8rem}
.service-switcher-item.is-active .service-switcher-number,.service-switcher-item.is-active .service-switcher-arrow{color:var(--accent)}
.service-switcher-item.is-active .service-switcher-arrow{transform:translate3d(-4px,-4px,0)}
.service-switcher-item.is-active .service-switcher-summary{opacity:.9}
.service-switcher-item.is-active .service-switcher-expand{grid-template-rows:1fr;opacity:1}
.services-all-link{margin-top:2.5rem}
.service-visual-stage{position:sticky;top:120px;aspect-ratio:4/3;overflow:hidden;border-radius:12px;background:#eee8de}
.service-stage-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:translate3d(0,8px,0) scale(.985);transition:opacity .5s var(--ease),transform .5s var(--ease);pointer-events:none}
.service-stage-image.is-active{z-index:1;opacity:1;transform:none}
.service-mobile-visual{display:none;margin:0;overflow:hidden;border-radius:12px;aspect-ratio:4/3;background:#eee8de}
.service-mobile-visual img{width:100%;height:100%;object-fit:cover}
.service-switcher-item:nth-child(2){transition-delay:.08s}.service-switcher-item:nth-child(3){transition-delay:.16s}
@media(max-width:900px){.home-services-v2{padding-block:5rem}.services-v2-layout{grid-template-columns:1fr;gap:0}.services-v2-header{margin-bottom:3rem}.services-v2-header h2{font-size:clamp(2.35rem,10vw,3.75rem)}.service-visual-stage{display:none}.service-switcher-trigger{grid-template-columns:42px minmax(0,1fr) 24px;padding-block:1.35rem .85rem}.service-switcher-title{font-size:clamp(1.35rem,6vw,1.9rem)}.service-switcher-summary{margin:0 58px 1rem 1rem;font-size:.95rem}.service-switcher-expand-inner{padding-inline:58px 0}.service-mobile-visual{display:block;margin:1rem 0 1.5rem}.service-switcher-detail{font-size:.88rem}.service-switcher-expand ul{display:grid;grid-template-columns:1fr;gap:0;border-top:1px solid var(--line)}.service-switcher-expand li{padding:.55rem 0;border-bottom:1px solid var(--line)}.service-switcher-expand li:after{display:none}.service-switcher-item:before{top:1.35rem}.service-switcher-item.is-active:before{height:28px}.services-all-link{margin-top:2rem}}
@media(prefers-reduced-motion:reduce){.service-stage-image,.service-switcher-expand,.service-switcher-item:after,.service-switcher-item:before{transition:none}.service-stage-image{transform:none}}

/* Dedicated services page */
.services-page-hero{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);grid-template-areas:"visual copy";align-items:center;gap:clamp(3rem,6vw,8rem);padding-top:clamp(9rem,12vw,11rem);padding-bottom:clamp(5rem,8vw,8rem)}
.services-hero-copy{grid-area:copy}.services-hero-visual{grid-area:visual;aspect-ratio:4/3;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:var(--bg-2)}.services-hero-visual img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}.services-hero-visual:hover img{transform:scale(1.015)}
.services-page-hero h1{font-size:clamp(2.8rem,5.4vw,6rem);line-height:1.2;margin:0 0 2rem;max-width:1150px}
.services-page-hero p{font-size:clamp(1rem,1.35vw,1.2rem);line-height:2;max-width:760px;margin:0}
.services-page-list{border-top:1px solid var(--line)}
.services-page-item{scroll-margin-top:90px;padding-block:clamp(6rem,9vw,9rem);border-bottom:1px solid var(--line)}
.services-page-item-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,1fr);gap:clamp(3rem,6vw,8rem);align-items:start}
.services-page-copy{grid-column:1}
.services-page-visual{grid-column:2;grid-row:1;margin:0;overflow:hidden;border-radius:12px;aspect-ratio:4/3;background:#eee8de}
.services-page-item.is-reversed .services-page-copy{grid-column:2}
.services-page-item.is-reversed .services-page-visual{grid-column:1}
.services-page-visual img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}
.services-page-visual:hover img{transform:scale(1.018)}
.services-page-number{display:block;font:500 clamp(4.5rem,8vw,8rem)/1 Inter,sans-serif;color:rgba(10,10,10,.12);letter-spacing:-.08em;margin-bottom:clamp(3rem,5vw,5rem)}
.services-page-copy h2{font-size:clamp(2.2rem,4vw,4.5rem);margin:0 0 1.5rem}
.services-page-lead{font-size:clamp(1.05rem,1.35vw,1.2rem);line-height:2;max-width:680px;color:var(--ink)}
.services-page-context{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin:3rem 0;border-top:1px solid var(--line);padding-top:1.5rem}
.ai-assistant-highlight{margin:2.5rem 0 0;padding:1.5rem 0;border-block:1px solid var(--ink)}.ai-assistant-highlight>span{display:block;margin-bottom:.65rem;color:var(--accent);font-size:.68rem;font-weight:600}.ai-assistant-highlight strong{display:block;font-size:clamp(1.35rem,2vw,2rem);line-height:1.5}.ai-assistant-highlight p{margin:.75rem 0 0;max-width:650px;color:var(--muted);font-size:.86rem;line-height:2}
.services-page-context p{font-size:.9rem;margin:.8rem 0 0}
.services-page-specs{grid-column:1/-1;display:grid;grid-template-columns:1.5fr 1fr;border-block:1px solid var(--line);margin-top:clamp(1rem,3vw,3rem)}
.services-page-specs>div{padding:2rem;border-left:1px solid var(--line)}
.services-page-specs>div:last-child{border-left:0}
.services-page-specs ul{display:grid;grid-template-columns:1fr 1fr;list-style:none;margin:1.25rem 0 0;padding:0}
.services-page-specs li{font-size:.84rem;color:var(--muted);padding:.6rem 0;border-bottom:1px solid var(--line)}
.services-page-note{background:var(--dark);color:white;padding-block:clamp(6rem,10vw,10rem)}
.services-page-note .eyebrow{color:#888}
.services-page-note p{font-size:clamp(2rem,3.5vw,4rem);line-height:1.55;color:white;max-width:1100px;margin:2rem 0 3rem}
@media(max-width:900px){.services-page-hero{grid-template-columns:1fr;grid-template-areas:"visual" "copy";padding-top:7.5rem;gap:2.5rem}.services-page-item-layout{grid-template-columns:1fr}.services-page-copy,.services-page-visual,.services-page-item.is-reversed .services-page-copy,.services-page-item.is-reversed .services-page-visual{grid-column:1}.services-page-copy{grid-row:1}.services-page-visual,.services-page-item.is-reversed .services-page-visual{grid-row:2}.services-page-specs{grid-row:3}.services-page-context{grid-template-columns:1fr}.services-page-number{margin-bottom:2.5rem}.services-page-specs{grid-template-columns:1fr}.services-page-specs>div{border-left:0;border-bottom:1px solid var(--line)}.services-page-specs>div:last-child{border-bottom:0}}
@media(max-width:600px){.services-page-hero{padding-top:9rem}.services-page-item{padding-block:5rem}.services-page-item-layout{gap:2.5rem}.services-page-visual{border-radius:10px}.services-page-specs{margin-top:0}.services-page-specs>div{padding:1.5rem 0}.services-page-specs ul{grid-template-columns:1fr}.services-page-context{margin-block:2rem}}

/* About page — New Insight */
.about-page-hero{background:#f5f3ef;border-bottom:1px solid var(--line)}
.about-page-hero-layout{min-height:76svh;padding-top:clamp(9rem,12vw,12rem);padding-bottom:clamp(4rem,6vw,6rem);display:grid;grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);gap:clamp(3rem,6vw,8rem);align-items:center}
.about-page-hero-copy h1{font-size:clamp(2.8rem,5.2vw,5.8rem);line-height:1.22;max-width:850px;margin:1.5rem 0 2rem}
.about-page-hero-copy>p{max-width:700px;line-height:2;margin-bottom:1.25rem}
.about-page-hero-copy .about-page-lead{font-size:clamp(1.05rem,1.35vw,1.22rem);color:var(--ink)}
.about-hero-art{margin:0;aspect-ratio:4/3;overflow:hidden;border-radius:12px;background:#f3ece2}
.about-hero-art img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}
.about-hero-art:hover img{transform:scale(1.018)}

.about-philosophy{background:#f5f3ef;padding-block:clamp(7rem,11vw,11rem);overflow:hidden}
.about-philosophy-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,.9fr);gap:clamp(4rem,9vw,12rem);align-items:start}
.about-philosophy-copy h2,.about-section-heading h2,.about-method-intro h2{font-size:clamp(2.35rem,4vw,4.5rem);margin:1.4rem 0 2rem}
.about-philosophy-copy p{max-width:700px;line-height:2.05}
.about-belief{position:relative;margin:0;padding:clamp(2.5rem,5vw,5rem) 0 0;border-top:1px solid var(--line)}
.about-belief:before{content:"";position:absolute;inset:2.2rem auto auto 0;width:72%;height:72%;border:1px solid rgba(10,10,10,.06);transform:skewY(-8deg);pointer-events:none}
.about-belief>span{position:relative;font:600 .7rem/1 Inter,sans-serif;color:var(--muted);letter-spacing:.14em}
.about-belief p{position:relative;font-size:clamp(2.25rem,4.25vw,4.85rem);line-height:1.52;color:var(--ink);letter-spacing:-.055em;margin:clamp(3rem,7vw,7rem) 0 0}

.about-direction{position:relative;background:#eae7e1;padding-block:clamp(7rem,11vw,11rem);overflow:hidden}
.about-direction:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(10,10,10,.028) 1px,transparent 1px),linear-gradient(90deg,rgba(10,10,10,.028) 1px,transparent 1px);background-size:80px 80px;pointer-events:none}
.about-direction>.section-shell{position:relative}
.about-section-heading{display:grid;grid-template-columns:minmax(140px,.45fr) minmax(0,1.55fr);gap:clamp(2rem,6vw,8rem);align-items:start;margin-bottom:clamp(4rem,7vw,7rem)}
.about-section-heading h2{margin:0 0 1.5rem;max-width:900px}
.about-section-heading p{max-width:720px;font-size:clamp(1rem,1.25vw,1.15rem);line-height:2}
.about-direction-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}
.about-direction-grid article{min-height:330px;padding:2rem clamp(1.5rem,2.5vw,2.75rem);border-left:1px solid var(--line)}
.about-direction-grid article:last-child{border-left:0}
.about-direction-grid article>span,.about-values-grid article>span{font:500 .75rem/1 Inter,sans-serif;color:var(--muted)}
.about-direction-grid h3{font-size:clamp(1.4rem,2vw,2rem);margin:clamp(5rem,8vw,8rem) 0 1.25rem}
.about-direction-grid p{font-size:.94rem;line-height:2;margin:0}

.about-method{background:#f5f3ef;padding-block:clamp(7rem,11vw,11rem)}
.about-method-layout{display:grid;grid-template-columns:minmax(310px,.72fr) minmax(0,1.28fr);gap:clamp(4rem,8vw,10rem);align-items:start}
.about-method-intro{position:sticky;top:120px}
.about-method-intro h2{font-size:clamp(2.2rem,3.5vw,4rem)}
.about-method-intro p{font-size:1rem;line-height:2;max-width:570px}
.about-principle-list{border-top:1px solid var(--line)}
.about-principle-list article{position:relative;display:grid;grid-template-columns:52px minmax(0,1fr) 28px;gap:1rem;padding:clamp(2rem,3.5vw,3.25rem) 0;border-bottom:1px solid var(--line);transition:border-color .35s var(--ease)}
.about-principle-list article>span{font:600 .75rem/1.4 Inter,sans-serif;color:rgba(10,10,10,.3);transition:color .35s var(--ease)}
.about-principle-list h3{font-size:clamp(1.35rem,2vw,2rem);margin:0 0 .75rem;transition:transform .4s var(--ease)}
.about-principle-list p{font-size:.92rem;line-height:1.95;max-width:670px;margin:0}
.about-principle-list i{font-style:normal;color:rgba(10,10,10,.22);transition:color .35s var(--ease),transform .4s var(--ease)}
.about-principle-list article:hover,.about-principle-list article:focus-visible{border-bottom-color:rgba(10,10,10,.45);outline:0}
.about-principle-list article:hover>span,.about-principle-list article:focus-visible>span,.about-principle-list article:hover>i,.about-principle-list article:focus-visible>i{color:var(--accent)}
.about-principle-list article:hover h3,.about-principle-list article:focus-visible h3{transform:translateX(-6px)}
.about-principle-list article:hover i,.about-principle-list article:focus-visible i{transform:translate(-4px,-4px)}
.about-method-art{margin:clamp(3rem,5vw,5rem) 0 0;aspect-ratio:3/2;overflow:hidden;border-radius:12px;background:#f3ece2}
.about-method-art img{width:100%;height:100%;object-fit:cover;transition:transform .75s var(--ease)}
.about-method-art:hover img{transform:scale(1.018)}

.about-values{background:#f5f3ef;padding-block:clamp(7rem,10vw,10rem);border-top:1px solid var(--line)}
.about-values-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}
.about-values-grid article{min-height:300px;padding:2rem clamp(1.25rem,2vw,2rem);border-left:1px solid var(--line)}
.about-values-grid article:last-child{border-left:0}
.about-values-grid h3{font-size:clamp(1.4rem,1.8vw,1.85rem);margin:clamp(4rem,7vw,7rem) 0 1rem}
.about-values-grid p{font-size:.9rem;line-height:2;margin:0}

.about-team{background:#f5f3ef;padding-block:clamp(7rem,10vw,10rem);border-top:1px solid var(--line)}
.about-team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(2rem,4vw,4rem)}
.about-team-grid img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:10px;margin-bottom:1.5rem;background:#eae7e1}
.about-team-grid h3{font-size:1.4rem;margin:0}
.about-team-grid p{margin:.15rem 0;color:var(--muted)}
.about-team-grid small{display:block;color:var(--muted);margin:.7rem 0}
.about-team-grid a{font-size:.8rem;border-bottom:1px solid currentColor}

.about-final-cta{position:relative;isolation:isolate;overflow:hidden;min-height:clamp(570px,67vh,760px);display:flex;align-items:center;background:#0a0a0a;color:#f5f3ef}
.about-final-cta:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(10,10,10,.15),rgba(10,10,10,.42) 50%,rgba(10,10,10,.96) 83%)}
.about-final-cta-art{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover}
.about-final-cta-content{width:100%}
.about-final-cta .eyebrow,.about-final-cta p{color:rgba(245,243,239,.65)}
.about-final-cta h2{font-size:clamp(2.65rem,5vw,5.8rem);max-width:980px;margin:2rem 0}
.about-final-cta p{font-size:clamp(1rem,1.25vw,1.15rem);line-height:2;max-width:700px;margin-bottom:2.5rem}
.about-final-cta-content>div{display:flex;align-items:center;gap:2rem}
.about-cta-secondary{font-size:.85rem;border-bottom:1px solid rgba(245,243,239,.45)}

@media(max-width:900px){
  .about-page-hero-layout,.about-philosophy-layout,.about-section-heading,.about-method-layout{grid-template-columns:1fr}
  .about-page-hero-layout{min-height:auto;padding-top:9rem;gap:3rem}
  .about-page-hero-copy{grid-row:1}.about-hero-art{grid-row:2}
  .about-philosophy-layout,.about-method-layout{gap:4rem}
  .about-method-intro{position:static}
  .about-direction-grid{grid-template-columns:1fr}
  .about-direction-grid article{min-height:0;border-left:0;border-bottom:1px solid var(--line);padding:2rem 0}
  .about-direction-grid article:last-child{border-bottom:0}
  .about-direction-grid h3{margin:2.5rem 0 1rem}
  .about-values-grid{grid-template-columns:1fr 1fr}
  .about-values-grid article:nth-child(2){border-left:0}
  .about-values-grid article:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .about-team-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
  .about-page-hero-layout{padding-top:8.5rem;padding-bottom:4.5rem}
  .about-page-hero-copy h1{font-size:clamp(2.55rem,12vw,3.6rem)}
  .about-hero-art,.about-method-art{border-radius:10px}
  .about-philosophy,.about-direction,.about-method,.about-values,.about-team{padding-block:6rem}
  .about-belief p{font-size:clamp(2rem,9.5vw,3.1rem)}
  .about-values-grid,.about-team-grid{grid-template-columns:1fr}
  .about-values-grid article{min-height:0;border-left:0;border-bottom:1px solid var(--line);padding:2rem 0}
  .about-values-grid article:last-child{border-bottom:0}
  .about-values-grid h3{margin:2.75rem 0 1rem}
  .about-principle-list article{grid-template-columns:42px minmax(0,1fr) 20px}
  .about-final-cta{min-height:620px}
  .about-final-cta:after{background:rgba(10,10,10,.72)}
  .about-final-cta-art{object-position:42% center}
  .about-final-cta-content>div{align-items:flex-start;flex-direction:column}
}

.admin-stats{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}
.admin-intro{max-width:760px;margin:-1.5rem 0 3rem;color:var(--muted);line-height:2}
.admin-content-group{margin-bottom:1.5rem;scroll-margin-top:2rem}.admin-content-group h2{margin:0 0 1.5rem;font-size:1.45rem}.admin-content-list article{display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:center;padding:1.25rem 0;border-bottom:1px solid var(--line)}.admin-content-list article:last-child{border-bottom:0}.admin-content-list strong{font-size:.9rem}.admin-content-list p{margin:.35rem 0 0;color:var(--muted);font-size:.8rem;line-height:1.8}
@media(prefers-reduced-motion:reduce){
  .about-hero-art img,.about-method-art img,.about-principle-list h3,.about-principle-list i{transition:none;transform:none!important}
}

/* Calibrated typography: one stable scale for Persian across browsers. */
:root{
  --type-hero:clamp(2.9rem,4.8vw,5.35rem);
  --type-page:clamp(2.65rem,4.2vw,4.7rem);
  --type-section:clamp(2rem,3vw,3.35rem);
  --type-feature:clamp(1.55rem,2.1vw,2.25rem)
}
html,body{font-family:var(--font-persian);font-synthesis:none}
body{line-height:1.85}
h1,h2,h3,h4{letter-spacing:0;text-wrap:balance}
p{max-width:68ch;text-wrap:pretty}
.hero-stage .hero-copy h1{font-size:var(--type-hero);line-height:1.2}
.hero-copy>p{font-size:clamp(1rem,1.15vw,1.12rem);line-height:1.95}
.services-page-hero h1,.about-page-hero-copy h1,.projects-page-hero h1,.journal-hero h1,.page-hero h1{font-size:var(--type-page);line-height:1.25}
.services-v2-header h2,.home-heading h2,.capabilities-intro h2,.approach-content h2,.insights-intro h2,
.about-philosophy-copy h2,.about-section-heading h2,.about-method-intro h2,.projects-approach-heading h2,
.journal-results-head h2,.section-heading h2{font-size:var(--type-section);line-height:1.35}
.service-switcher-title,.about-principle-list h3,.about-direction-grid h3,.about-values-grid h3,
.leadership-grid h3,.projects-approach-grid h3,.journal-row-copy h3{font-size:var(--type-feature);line-height:1.45}
.about-belief p{font-size:clamp(1.9rem,3.3vw,3.55rem);line-height:1.55;letter-spacing:0}
.final-cta h2,.about-final-cta h2,.projects-final-cta h2,.contact-cta h2{font-size:clamp(2.35rem,4vw,4.65rem);line-height:1.35}
.project-showcase h2{font-size:clamp(2.35rem,3.7vw,4.35rem);line-height:1.12}
.case-hero h1{font-size:clamp(3.2rem,6vw,6.4rem)}
.case-next-project strong{font-size:clamp(2.7rem,5vw,5.5rem)}
.journal-feature h2{font-size:clamp(2rem,3.25vw,3.65rem)}
.journal-article-header h1{font-size:clamp(2.4rem,4.2vw,4.55rem);line-height:1.3}
.journal-prose{font-size:18px;line-height:2}
.mobile-menu-link strong{font-size:clamp(2rem,7vw,3.9rem)}

@media(max-width:700px){
  :root{--type-hero:clamp(2.55rem,10.5vw,3.35rem);--type-page:clamp(2.35rem,9.5vw,3.1rem);--type-section:clamp(1.85rem,7.5vw,2.55rem);--type-feature:clamp(1.35rem,5.5vw,1.75rem)}
  .hero-stage .hero-copy h1,.services-page-hero h1,.about-page-hero-copy h1,.projects-page-hero h1,.journal-hero h1,.page-hero h1{line-height:1.3}
  .final-cta h2,.about-final-cta h2,.projects-final-cta h2,.contact-cta h2{font-size:clamp(2rem,8.5vw,2.8rem)}
  .case-hero h1{font-size:clamp(2.75rem,14vw,4rem)}
  .journal-article-header h1{font-size:clamp(2.15rem,9vw,3rem)}
  .journal-prose{font-size:17px;line-height:1.95}
}

/* Projects — real work as the primary visual language */
.projects-page-hero,.projects-showcase,.case-study-page{background:#f5f3ef}
.projects-page-hero{overflow:hidden;border-bottom:1px solid var(--line)}
.projects-page-hero-layout{min-height:72svh;padding-top:clamp(9rem,12vw,11rem);padding-bottom:clamp(4rem,6vw,6rem);display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);grid-template-areas:"visual copy";gap:clamp(3rem,6vw,7rem);align-items:center}
.projects-page-hero-content{grid-area:copy}
.projects-page-hero-content>.eyebrow{display:block;margin-bottom:1.5rem}
.projects-page-hero h1{font-size:clamp(3rem,5.6vw,6.4rem);line-height:1.2;margin:0;max-width:980px}
.projects-page-intro{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--line)}
.projects-page-intro p{font-size:clamp(.97rem,1.2vw,1.1rem);line-height:2;margin:0 0 1rem;max-width:600px}
.projects-page-intro p:last-child{font-size:.88rem;color:#777}
.projects-hero-collage{grid-area:visual;direction:ltr;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(120px,.65fr);grid-template-rows:1fr 1fr;gap:.7rem;aspect-ratio:4/3;padding:.7rem;background:#f0efec;border:1px solid var(--line);border-radius:12px}
.projects-hero-shot{display:block;min-width:0;min-height:0;overflow:hidden;background:#fff;border:1px solid rgba(10,10,10,.09);border-radius:7px}
.projects-hero-shot-main{grid-row:1/3}
.projects-hero-shot img{display:block;width:100%;height:100%;object-fit:cover;object-position:top center;transition:transform .7s var(--ease)}
.projects-hero-shot:hover img{transform:scale(1.015)}

.projects-showcase{padding-bottom:clamp(7rem,11vw,12rem)}
.project-showcase{display:grid;grid-template-columns:minmax(330px,5fr) minmax(0,7fr);grid-template-areas:"header media" "body media";gap:0 clamp(3rem,6vw,8rem);align-items:start;min-height:95svh;padding-block:clamp(6rem,10vw,10rem);border-bottom:1px solid var(--line)}
.project-showcase:nth-child(even){grid-template-columns:minmax(0,7fr) minmax(330px,5fr);grid-template-areas:"media header" "media body"}
.project-showcase-header{grid-area:header;padding-top:.25rem}
.project-index{display:block;font:500 clamp(3.75rem,6vw,7rem)/1 Inter,sans-serif;letter-spacing:-.08em;color:rgba(10,10,10,.11);margin-bottom:clamp(3rem,6vw,6rem)}
.project-category{font-size:.74rem;color:var(--muted);margin:0 0 .75rem}
.project-showcase h2{font-size:clamp(2.5rem,4.5vw,5.4rem);line-height:1.08;margin:0}
.project-detail-link{display:inline-block;transition:transform .45s var(--ease)}
.project-latin-name,.case-latin-name{display:block;font:500 .8rem/1.2 Inter,sans-serif;letter-spacing:.12em;color:var(--muted);margin-top:.9rem}
.project-short-title{font-size:clamp(1.05rem,1.45vw,1.32rem);line-height:1.75;color:var(--ink);margin:2rem 0 0;max-width:520px}
.project-showcase-body{grid-area:body;align-self:end;padding-top:clamp(3rem,6vw,6rem)}
.project-domain{font:500 .73rem/1.2 Inter,sans-serif;color:var(--muted);margin-bottom:1.5rem}
.project-summary p{font-size:.94rem;line-height:2;margin-bottom:.75rem;max-width:570px}
.project-services-inline{display:flex;flex-wrap:wrap;gap:.3rem 1rem;list-style:none;padding:1.4rem 0 0;margin:1.5rem 0 0;border-top:1px solid var(--line)}
.project-services-inline li{font-size:.74rem;color:var(--muted)}
.project-services-inline li:not(:last-child):after{content:"·";margin-right:1rem;color:rgba(10,10,10,.3)}
.project-actions{display:flex;flex-wrap:wrap;gap:1rem 2rem;align-items:center;margin-top:2.25rem}
.project-actions a{position:relative;z-index:2;font-size:.82rem}
.external-project-link{display:inline-flex;gap:.45rem;color:var(--muted);border-bottom:1px solid transparent;transition:color .25s,border-color .25s}
.external-project-link:hover{color:var(--ink);border-color:currentColor}
.project-actions span{display:inline-block;transition:transform .35s var(--ease)}
.project-actions a:hover span{transform:translateX(-5px)}

.project-showcase-media{grid-area:media;position:sticky;top:112px;align-self:start;direction:rtl;min-width:0;padding:clamp(1rem,2vw,2rem);aspect-ratio:16/10;overflow:hidden;border:1px solid rgba(10,10,10,.1);border-radius:12px;background:#eae7e1;background-image:linear-gradient(rgba(10,10,10,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(10,10,10,.035) 1px,transparent 1px);background-size:72px 72px;transition:border-color .35s var(--ease)}
.project-cover-link{display:block;width:100%;height:100%;overflow:hidden;border-radius:8px;background:white}
.project-picture{display:block;width:100%;height:100%}
.project-screenshot,.case-cover-image{width:100%;height:100%;object-fit:contain;background:white;transition:transform .7s var(--ease)}
.project-detail-peek{position:absolute;z-index:2;left:clamp(1.5rem,3vw,3rem);bottom:clamp(1.5rem,3vw,3rem);width:34%;aspect-ratio:4/3;padding:.45rem;overflow:hidden;border:1px solid rgba(10,10,10,.14);border-radius:9px;background:#f5f3ef;box-shadow:0 14px 35px rgba(10,10,10,.08);transition:transform .55s var(--ease)}
.project-detail-peek .project-detail-screenshot{width:100%;height:100%;object-fit:contain;background:#eae7e1}
.project-showcase:hover .project-screenshot,.project-showcase:focus-within .project-screenshot{transform:scale(1.022)}
.project-showcase:hover .project-detail-peek,.project-showcase:focus-within .project-detail-peek{transform:translateY(-5px)}
.project-showcase:hover .project-detail-link,.project-showcase:focus-within .project-detail-link{transform:translateX(-6px)}
.project-showcase:hover .project-showcase-media,.project-showcase:focus-within .project-showcase-media{border-color:rgba(10,10,10,.3)}

.projects-approach{padding-block:clamp(7rem,10vw,10rem);background:#eae7e1}
.projects-approach-heading{display:grid;grid-template-columns:minmax(160px,.45fr) minmax(0,1.55fr);gap:clamp(2rem,6vw,8rem);margin-bottom:clamp(4rem,7vw,7rem)}
.projects-approach-heading h2{font-size:clamp(2.3rem,4.2vw,4.8rem);max-width:900px;margin:0 0 1.5rem}
.projects-approach-heading p{max-width:720px;line-height:2}
.projects-approach-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}
.projects-approach-grid article{min-height:300px;padding:2rem clamp(1.3rem,2.4vw,2.5rem);border-left:1px solid var(--line)}
.projects-approach-grid article:last-child{border-left:0}
.projects-approach-grid span{font:500 .75rem/1 Inter,sans-serif;color:var(--muted)}
.projects-approach-grid h3{font-size:clamp(1.4rem,1.9vw,1.9rem);margin:clamp(5rem,8vw,8rem) 0 1rem}
.projects-approach-grid p{font-size:.9rem;line-height:2;margin:0}

.projects-final-cta{position:relative;isolation:isolate;overflow:hidden;min-height:clamp(570px,68vh,760px);display:flex;align-items:center;background:#090909;color:#f5f3ef}
.projects-final-cta:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(9,9,9,.08),rgba(9,9,9,.48) 51%,rgba(9,9,9,.96) 84%)}
.projects-final-cta>picture{position:absolute;z-index:-2;inset:0}
.projects-final-cta-art{width:100%;height:100%;object-fit:cover;animation:projects-cta-drift 18s ease-in-out infinite alternate}
.projects-final-cta-content{width:100%}
.projects-final-cta .eyebrow,.projects-final-cta p{color:rgba(245,243,239,.65)}
.projects-final-cta h2{font-size:clamp(2.7rem,5vw,5.9rem);line-height:1.28;max-width:1000px;margin:2rem 0}
.projects-final-cta p{font-size:clamp(1rem,1.25vw,1.12rem);line-height:2;max-width:700px;margin-bottom:2.5rem}
.projects-final-cta-content>div{display:flex;align-items:center;gap:2rem}
.projects-cta-secondary{font-size:.85rem;border-bottom:1px solid rgba(245,243,239,.45)}
@keyframes projects-cta-drift{from{transform:scale(1.01) translateX(-.3%)}to{transform:scale(1.035) translateX(.4%)}}

/* Project case studies */
.case-hero{padding-top:clamp(10rem,14vw,13rem);padding-bottom:clamp(4rem,7vw,7rem)}
.case-hero-heading{display:grid;grid-template-columns:minmax(200px,.38fr) minmax(0,1.62fr);gap:clamp(2rem,6vw,8rem);align-items:start}
.case-back-link{display:block;width:max-content;font-size:.78rem;color:var(--muted);margin-bottom:clamp(4rem,8vw,8rem)}
.case-back-link span{display:inline-block;margin-left:.45rem;transition:transform .35s var(--ease)}
.case-back-link:hover span{transform:translateX(5px)}
.case-hero h1{font-size:clamp(3.6rem,8vw,9rem);line-height:1;margin:0}
.case-short-title{font-size:clamp(1.25rem,2vw,2rem);line-height:1.7;color:var(--ink);max-width:800px;margin:2.5rem 0 0}
.case-hero-facts{display:grid;grid-template-columns:1.45fr .55fr;gap:3rem;margin-top:clamp(4rem,7vw,7rem);padding-top:1.5rem;border-top:1px solid var(--line)}
.case-hero-facts div{font-size:.9rem}
.case-hero-facts span{display:block;font-size:.68rem;color:var(--muted);margin-bottom:.5rem}
.case-hero-facts strong{font-weight:400}
.case-hero-facts a{border-bottom:1px solid currentColor}
.case-cover-full{width:100%;aspect-ratio:16/9;max-height:900px;overflow:hidden;background:#eae7e1}
.case-cover-full .project-picture{height:100%}
.case-cover-image{object-fit:contain}
.case-overview{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:clamp(4rem,9vw,12rem);padding-block:clamp(7rem,11vw,11rem)}
.case-summary{font-size:clamp(1.18rem,1.7vw,1.55rem);line-height:2;max-width:780px;margin-top:2rem}
.case-summary p{color:var(--ink);margin-bottom:1rem}
.case-overview .rich-content{margin-top:3rem}
.case-overview dl{margin:0;border-top:1px solid var(--line)}
.case-overview dl div{display:grid;grid-template-columns:110px 1fr;gap:1rem;padding:1.2rem 0;border-bottom:1px solid var(--line)}
.case-overview dt{font-size:.7rem;color:var(--muted)}
.case-overview dd{font-size:.9rem;margin:0}
.case-narrative{display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,7vw,8rem);padding-bottom:clamp(7rem,10vw,10rem)}
.case-narrative article{padding-top:1.5rem;border-top:1px solid var(--line)}
.case-narrative article p{font-size:1rem;line-height:2.1;margin:2rem 0 0}
.case-gallery{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.5fr);gap:clamp(1rem,2.5vw,2.5rem);padding-bottom:clamp(7rem,11vw,11rem)}
.case-gallery figure{margin:0;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:#eae7e1}
.case-gallery-wide{aspect-ratio:4/3}
.case-gallery-mobile{aspect-ratio:3/4}
.case-gallery-half{aspect-ratio:4/3}
.case-gallery img{width:100%;height:100%;object-fit:contain;background:#eae7e1;transition:transform .7s var(--ease)}
.case-gallery figure:hover img{transform:scale(1.018)}
.case-capabilities{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);gap:clamp(3rem,8vw,10rem);padding-block:clamp(7rem,10vw,10rem);border-top:1px solid var(--line)}
.case-capabilities h2{font-size:clamp(2.1rem,3.5vw,4rem);margin:1.5rem 0 0;max-width:520px}
.case-capabilities ol{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}
.case-capabilities li{display:grid;grid-template-columns:48px 1fr;gap:1rem;padding:1.4rem 0;border-bottom:1px solid var(--line);font-size:1rem}
.case-capabilities li span{font:.7rem/1.8 Inter,sans-serif;color:var(--muted)}
.case-results{padding-bottom:clamp(7rem,10vw,10rem)}
.case-results p{font-size:clamp(1.25rem,2vw,2rem);line-height:1.9;color:var(--ink);max-width:900px;margin:2rem 0 0}
.case-next-project{background:#eae7e1;padding-block:clamp(6rem,9vw,9rem)}
.case-next-project a{display:grid;grid-template-columns:1fr auto;align-items:end;margin-top:2rem;border-top:1px solid var(--line);padding-top:2rem}
.case-next-project a>span{grid-column:1/-1;font-size:.75rem;color:var(--muted);margin-bottom:2rem}
.case-next-project strong{font-size:clamp(3rem,6vw,7rem);font-weight:500;line-height:1}
.case-next-project i{font-style:normal;font-size:2.5rem;transition:transform .35s var(--ease)}
.case-next-project a:hover i{transform:translateX(-8px)}

@media(max-width:980px){
  .project-showcase,.project-showcase:nth-child(even){grid-template-columns:1fr;grid-template-areas:"header" "media" "body";gap:2.5rem;min-height:0}
  .project-showcase-media{position:relative;top:auto}
  .project-index{margin-bottom:2rem}.project-showcase-body{padding-top:0}.project-short-title{margin-top:1.5rem}
  .projects-page-hero-layout{grid-template-columns:1fr;grid-template-areas:"visual" "copy";min-height:auto;padding-top:7.5rem;gap:2.5rem}
  .projects-hero-collage{width:min(760px,100%)}
  .projects-approach-heading,.case-hero-heading,.case-overview,.case-capabilities{grid-template-columns:1fr}
  .case-back-link{margin-bottom:2.5rem}.case-hero-heading{gap:2rem}.case-gallery{grid-template-columns:minmax(0,1.5fr) minmax(240px,.5fr)}
}
@media(max-width:700px){
  .projects-page-hero-layout{padding-top:6.6rem;padding-bottom:4.5rem;gap:2rem}
  .projects-hero-collage{gap:.4rem;padding:.4rem;border-radius:9px}
  .projects-page-hero h1{font-size:clamp(2.65rem,12vw,4rem)}
  .project-showcase{padding-block:5.5rem;gap:2rem}.project-showcase h2{font-size:clamp(2.4rem,13vw,4rem)}
  .project-showcase-media{padding:.75rem;border-radius:10px}.project-detail-peek{display:none}
  .project-index{font-size:3.5rem}.project-actions{align-items:flex-start;flex-direction:column}
  .project-services-inline{display:grid;grid-template-columns:1fr}.project-services-inline li{padding:.45rem 0;border-bottom:1px solid var(--line)}.project-services-inline li:after{display:none}
  .projects-approach-grid{grid-template-columns:1fr}.projects-approach-grid article{min-height:0;padding:2rem 0;border-left:0;border-bottom:1px solid var(--line)}.projects-approach-grid article:last-child{border-bottom:0}.projects-approach-grid h3{margin:2.75rem 0 1rem}
  .projects-final-cta{min-height:620px}.projects-final-cta:after{background:rgba(9,9,9,.76)}.projects-final-cta-art{object-position:36% center;animation:none}.projects-final-cta-content>div{flex-direction:column;align-items:flex-start}
  .case-hero{padding-top:8.5rem}.case-hero h1{font-size:clamp(3.2rem,18vw,5rem)}.case-hero-facts{grid-template-columns:1fr;gap:1.5rem}
  .case-cover-full{aspect-ratio:4/3}.case-overview{padding-block:6rem;gap:3rem}.case-overview dl div{grid-template-columns:90px 1fr}
  .case-narrative,.case-gallery{grid-template-columns:1fr}.case-gallery-mobile{width:min(76%,420px);margin-inline:auto!important}.case-capabilities{padding-block:6rem;gap:3rem}
  .case-next-project strong{font-size:clamp(2.8rem,15vw,4.5rem)}
}
@media(prefers-reduced-motion:reduce){
  .project-screenshot,.project-detail-peek,.project-detail-link,.project-actions span,.projects-final-cta-art,.case-gallery img,.case-next-project i{transition:none!important;transform:none!important;animation:none!important}
}

/* NOBIN Journal — editorial index and long-form reading */
.journal-hero{position:relative;overflow:hidden;padding-top:clamp(10rem,16vw,14rem);border-bottom:1px solid var(--line)}
.journal-hero-inner{position:relative;min-height:clamp(460px,58vh,680px);display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.55fr);gap:clamp(3rem,8vw,10rem);align-items:start;padding-bottom:clamp(4rem,8vw,7rem)}
.journal-hero-copy,.journal-hero-intro{position:relative;z-index:2}.journal-hero h1{font-size:clamp(3rem,6vw,6.6rem);line-height:1.14;max-width:980px;margin:1.7rem 0 0}.journal-hero-intro{align-self:end;max-width:520px}.journal-hero-intro>p{font-size:clamp(1.02rem,1.3vw,1.18rem);line-height:2}.journal-hero-intro .muted{font-size:.9rem;border-top:1px solid var(--line);padding-top:1.5rem;margin-top:1.8rem}.journal-hero-art{position:absolute;inset:auto 35% 8% 0;height:47%;opacity:.34;background:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:68px 68px;mask-image:linear-gradient(90deg,transparent,#000 22%,#000 80%,transparent)}.journal-hero-art:before,.journal-hero-art:after,.journal-hero-art i{content:"";position:absolute;border:1px solid var(--line);background:rgba(255,255,255,.78)}.journal-hero-art:before{width:28%;height:42%;left:12%;top:18%}.journal-hero-art:after{width:34%;height:52%;left:42%;top:35%}.journal-hero-art i{width:8px;height:8px;border-radius:50%;background:var(--ink)}.journal-hero-art i:nth-child(1){left:40%;top:58%}.journal-hero-art i:nth-child(2){left:76%;top:35%}.journal-hero-art i:nth-child(3){left:12%;top:18%}
.journal-feature{display:grid;grid-template-columns:minmax(330px,.78fr) minmax(0,1.22fr);gap:clamp(3rem,7vw,8rem);align-items:center;padding-block:clamp(7rem,11vw,11rem);border-bottom:1px solid var(--line)}.journal-feature-copy{padding-block:1rem}.journal-feature-label{display:flex;gap:1rem;font-size:.7rem;color:var(--muted)}.journal-feature-label span:first-child{color:var(--ink);padding-left:1rem;border-left:1px solid var(--line)}.journal-feature h2{font-size:clamp(2.3rem,4vw,4.8rem);line-height:1.3;margin:2rem 0 1.5rem}.journal-feature-copy>p{font-size:1rem;line-height:2;max-width:620px}.journal-meta{display:flex;flex-wrap:wrap;gap:.7rem 1.5rem;color:var(--muted);font-size:.72rem;margin:2rem 0}.journal-arrow-link{display:inline-flex;gap:.7rem;align-items:center;border-bottom:1px solid var(--ink);padding-bottom:.25rem}.journal-arrow-link span,.journal-row-arrow span{transition:transform .35s var(--ease)}.journal-arrow-link:hover span{transform:translateX(-6px)}.journal-feature-visual{display:block;overflow:hidden;border:1px solid var(--line);border-radius:12px;aspect-ratio:16/10}.journal-picture{display:block;width:100%;height:100%}.journal-cover{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}.journal-feature-visual:hover .journal-cover{transform:scale(1.02)}.journal-cover-placeholder{width:100%;height:100%;min-height:280px;display:flex;align-items:flex-end;padding:1.5rem;color:rgba(255,255,255,.7);font:600 .65rem/1 Inter,sans-serif;letter-spacing:.15em;background:radial-gradient(circle at 67% 38%,rgba(255,255,255,.7) 0 3px,transparent 4px),repeating-linear-gradient(90deg,transparent 0 12.4%,rgba(255,255,255,.09) 12.5%),linear-gradient(145deg,#111,#2b2b29)}.journal-cover-placeholder.artificial-intelligence{background:radial-gradient(circle at 50% 50%,rgba(255,255,255,.8) 0 3px,transparent 4px),repeating-radial-gradient(circle at 50% 50%,transparent 0 35px,rgba(255,255,255,.09) 36px),#171717}.journal-cover-placeholder.product-and-business{background:linear-gradient(140deg,transparent 48%,rgba(255,255,255,.12) 49%,transparent 50%),repeating-linear-gradient(0deg,transparent 0 46px,rgba(255,255,255,.08) 47px),#171717}
.journal-tools{display:flex;justify-content:space-between;align-items:center;gap:3rem;padding-block:1.5rem;border-bottom:1px solid var(--line)}.journal-tabs{display:flex;flex-wrap:wrap;gap:clamp(1rem,2.5vw,2.5rem)}.journal-tabs a{position:relative;padding:.5rem 0;font-size:.82rem;color:var(--muted)}.journal-tabs a:after{content:"";position:absolute;right:0;bottom:0;width:100%;height:1px;background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}.journal-tabs a.is-active{color:var(--ink);font-weight:600}.journal-tabs a.is-active:after,.journal-tabs a:hover:after{transform:scaleX(1);transform-origin:right}.journal-search{display:flex;align-items:center;width:min(350px,100%);border-bottom:1px solid var(--line)}.journal-search input{border:0;background:transparent;padding:.55rem 0}.journal-search button{border:0;background:none;padding:.5rem;cursor:pointer;font-size:1.2rem}
.journal-results{padding-block:clamp(5rem,9vw,9rem)}.journal-results-head{display:flex;align-items:end;justify-content:space-between;padding-bottom:2rem;border-bottom:1px solid var(--ink)}.journal-results-head h2{font-size:clamp(2.1rem,3.5vw,3.8rem);margin:1rem 0 0}.journal-results-head>span{font-size:.75rem;color:var(--muted)}.journal-results-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:clamp(3rem,6vw,7rem);align-items:start}.journal-rows{min-width:0}.journal-row{display:grid;grid-template-columns:minmax(100px,.7fr) minmax(0,3.5fr) minmax(130px,.8fr) 44px;gap:clamp(1rem,2.4vw,2.5rem);align-items:center;padding:2.3rem 0;border-bottom:1px solid var(--line);transition:border-color .3s}.journal-row:focus{outline-offset:0}.journal-row-index,.journal-row-meta{display:flex;flex-direction:column;gap:.4rem;font-size:.7rem;color:var(--muted)}.journal-row-index span:first-child{font:500 .68rem/1 Inter,sans-serif}.journal-row-copy h3{font-size:clamp(1.3rem,2vw,2.2rem);margin:0 0 .55rem;transition:transform .35s var(--ease)}.journal-row-copy p{font-size:.86rem;line-height:1.9;margin:0;max-width:680px}.journal-row-arrow{font-size:1.6rem;text-align:left}.journal-row:hover .journal-row-copy h3,.journal-row:focus-within .journal-row-copy h3{transform:translateX(-4px)}.journal-row:hover .journal-row-arrow span,.journal-row:focus-within .journal-row-arrow span{display:inline-block;transform:translateX(-6px)}.journal-row:hover{border-color:var(--ink)}.journal-row-mobile-image{display:none}.journal-preview{position:sticky;top:120px;margin-top:2.3rem;aspect-ratio:4/3;overflow:hidden;background:var(--bg-2);border:1px solid var(--line);border-radius:10px}.journal-preview img{width:100%;height:100%;object-fit:cover;opacity:1;transform:scale(1);transition:opacity .2s,transform .35s var(--ease)}.journal-preview img.is-changing{opacity:0;transform:scale(.985)}.journal-preview>div{width:100%;height:100%;background:repeating-linear-gradient(90deg,transparent 0 19.8%,var(--line) 20%),var(--bg-2)}.journal-empty{padding:clamp(4rem,8vw,8rem) 0;border-bottom:1px solid var(--line)}.journal-empty h3{font-size:clamp(1.8rem,3vw,3rem)}.journal-empty .button{margin:1rem 0 1rem 1rem}.journal-pagination{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;margin-top:3rem;font-size:.82rem}.journal-pagination>a:last-child{text-align:left}.journal-pagination>span:last-child{text-align:left}.journal-pagination>div{display:flex;gap:.45rem}.journal-pagination>div a{display:grid;place-items:center;width:38px;height:38px;border:1px solid transparent}.journal-pagination>div a.is-active{border-color:var(--ink)}.journal-pagination [aria-disabled=true]{color:var(--muted)}
.journal-paths{padding-block:clamp(7rem,10vw,10rem);background:var(--bg-2)}.journal-paths .section-heading{grid-template-columns:.55fr 1.45fr}.journal-paths .section-heading p{max-width:600px}.journal-path-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.journal-path-grid>div{display:flex;flex-direction:column;min-height:360px;padding:1.8rem;border-left:1px solid var(--line)}.journal-path-grid>div:last-child{border-left:0}.journal-path-grid span{font:.7rem/1 Inter,sans-serif;color:var(--muted)}.journal-path-grid h3{font-size:1.45rem;margin:5rem 0 1.5rem}.journal-path-grid a{font-size:.83rem;padding:.55rem 0;border-bottom:1px solid var(--line)}
.contact-cta-actions{display:flex;align-items:center;gap:2rem}.contact-cta .text-link{color:var(--dark-ink)}
.preview-notice{position:relative;z-index:2;background:#fff3c9;border-bottom:1px solid #d2be73;padding:1rem var(--pad);text-align:center;font-size:.82rem}.article-breadcrumb{padding-top:9rem;display:flex;flex-wrap:wrap;gap:.45rem;color:var(--muted);font-size:.72rem}.article-breadcrumb span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:min(420px,45vw)}.journal-article-header{max-width:1120px;text-align:center;padding-top:clamp(4rem,8vw,7rem);padding-bottom:clamp(4rem,7vw,6rem)}.journal-article-header .eyebrow{display:inline-block}.journal-article-header h1{font-size:clamp(2.6rem,5vw,5.5rem);line-height:1.22;margin:1.8rem auto;max-width:1050px}.journal-article-header>p{font-size:clamp(1.05rem,1.45vw,1.25rem);line-height:2;max-width:760px;margin:0 auto 2rem}.journal-article-meta{display:flex;justify-content:center;flex-wrap:wrap;gap:.7rem 2rem;font-size:.74rem;color:var(--muted)}.journal-article-cover{margin:0 auto}.journal-article-cover>.journal-picture,.journal-article-cover>.journal-cover-placeholder{display:block;aspect-ratio:16/10;overflow:hidden;border-radius:12px;background:var(--bg-2)}.journal-article-cover figcaption{font-size:.72rem;color:var(--muted);padding-top:.7rem}.journal-reading{display:grid;grid-template-columns:minmax(170px,230px) minmax(0,760px) minmax(110px,180px);gap:clamp(2rem,5vw,6rem);justify-content:center;padding-block:clamp(6rem,10vw,10rem)}.article-toc,.article-share{position:sticky;top:120px;align-self:start;font-size:.73rem}.article-toc strong,.article-share>span:first-child{display:block;color:var(--muted);font-weight:500;border-top:1px solid var(--line);padding-top:1rem;margin-bottom:1rem}.article-toc ol{list-style:none;padding:0;margin:0}.article-toc li{line-height:1.6;margin:.6rem 0;color:var(--muted)}.article-toc li.h3{padding-right:.8rem}.article-toc a{display:block;border-right:1px solid transparent;padding-right:.7rem;transition:color .2s,border-color .2s}.article-toc a.is-active,.article-toc a:hover{color:var(--ink);border-color:var(--accent)}.article-share{display:flex;flex-direction:column;align-items:flex-start;gap:.55rem}.article-share button,.article-share a{border:0;background:none;padding:.2rem 0;color:var(--muted);cursor:pointer}.article-share button:hover,.article-share a:hover{color:var(--ink)}.share-status{font-size:.65rem;color:var(--muted);margin-top:.5rem}.article-toc-mobile{display:none}.journal-prose{font-size:clamp(1.05rem,1.25vw,1.18rem);line-height:2.05;min-width:0}.journal-prose>p{margin-bottom:1.55rem;color:#343434}.journal-prose h2{scroll-margin-top:120px;font-size:clamp(1.8rem,2.7vw,2.65rem);line-height:1.45;margin:4.5rem 0 1.4rem}.journal-prose h3{scroll-margin-top:120px;font-size:clamp(1.35rem,2vw,1.8rem);line-height:1.5;margin:3rem 0 1rem}.journal-prose ul,.journal-prose ol{padding-right:1.4rem;margin:1.5rem 0}.journal-prose li{padding:.25rem .35rem}.journal-prose blockquote{border-right:2px solid var(--ink);background:transparent;padding:0 1.7rem;margin:3rem 0;font-size:1.18em}.journal-prose pre{direction:ltr;text-align:left;overflow:auto;background:#111;color:#eee;padding:1.25rem;border-radius:8px;font-size:.85rem;line-height:1.7}.journal-prose table{width:100%;border-collapse:collapse;font-size:.9rem}.journal-prose th,.journal-prose td{padding:.8rem;border:1px solid var(--line);text-align:right}.journal-prose figure{margin:3rem 0}.journal-prose figcaption{font-size:.72rem;color:var(--muted);margin-top:.7rem}.article-author{padding-bottom:clamp(6rem,9vw,9rem);max-width:980px}.article-author>.eyebrow{border-top:1px solid var(--line);padding-top:1.2rem}.article-author>div{display:flex;gap:1.2rem;align-items:start;margin-top:1.5rem}.article-author img{width:72px;height:72px;border-radius:50%;object-fit:cover}.article-author strong{font-size:1.15rem}.article-author p{max-width:600px;font-size:.83rem;margin:.35rem 0}.article-author a{font-size:.75rem;border-bottom:1px solid var(--line)}.related-journal{padding-block:clamp(6rem,9vw,9rem);border-top:1px solid var(--line)}.related-journal>.section-heading{margin-bottom:2rem}.related-journal .journal-row{grid-template-columns:minmax(80px,.5fr) minmax(0,3fr) minmax(130px,.8fr) 44px}.related-journal .journal-row-mobile-image{display:none}
@media(max-width:1050px){.journal-results-layout{grid-template-columns:1fr}.journal-preview{display:none}.journal-row-mobile-image{display:block;grid-column:1/-1;grid-row:1;aspect-ratio:16/9;overflow:hidden;border-radius:9px}.journal-row{grid-template-columns:minmax(95px,.6fr) minmax(0,3fr) minmax(120px,.8fr) 40px}.journal-row-index,.journal-row-copy,.journal-row-meta,.journal-row-arrow{grid-row:2}.journal-reading{grid-template-columns:minmax(170px,220px) minmax(0,760px)}.article-share{position:static;grid-column:2;flex-direction:row;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:1.2rem}.article-share>span:first-child{border:0;padding:0;margin:0 1rem 0 0}.related-journal .journal-row{grid-template-columns:minmax(80px,.5fr) minmax(0,3fr) minmax(120px,.8fr) 40px}}
@media(max-width:760px){.journal-hero-inner,.journal-feature{grid-template-columns:1fr}.journal-hero-inner{min-height:auto;padding-bottom:4.5rem}.journal-hero-intro{margin-top:2rem}.journal-hero-art{inset:auto 0 0;height:36%;opacity:.2}.journal-feature{gap:2.5rem}.journal-feature-copy{order:1}.journal-feature-visual{order:2}.journal-tools{align-items:stretch;flex-direction:column;gap:1.3rem}.journal-tabs{gap:.65rem 1.25rem}.journal-search{width:100%}.journal-row,.related-journal .journal-row{grid-template-columns:1fr auto;gap:1rem;padding:2.2rem 0}.journal-row-mobile-image{grid-column:1/-1;grid-row:1}.journal-row-index{grid-column:1;grid-row:2;flex-direction:row;gap:1rem}.journal-row-copy{grid-column:1/-1;grid-row:3}.journal-row-meta{grid-column:1;grid-row:4;flex-direction:row;flex-wrap:wrap}.journal-row-arrow{grid-column:2;grid-row:2/5;align-self:end}.journal-pagination{grid-template-columns:1fr 1fr}.journal-pagination>div{display:none}.journal-path-grid{grid-template-columns:1fr}.journal-path-grid>div{min-height:0;padding:2rem 0;border-left:0;border-bottom:1px solid var(--line)}.journal-path-grid h3{margin:2.5rem 0 1rem}.journal-paths .section-heading{grid-template-columns:1fr}.contact-cta-actions{align-items:flex-start;flex-direction:column}.article-breadcrumb{padding-top:7.5rem;flex-wrap:nowrap;overflow:hidden}.article-breadcrumb a:nth-of-type(3),.article-breadcrumb span:nth-of-type(3){display:none}.journal-article-header{text-align:right}.journal-article-header>p{margin-right:0}.journal-article-meta{justify-content:flex-start}.journal-article-cover{padding-inline:0}.journal-article-cover>.journal-picture,.journal-article-cover>.journal-cover-placeholder{border-radius:0;aspect-ratio:4/3}.journal-article-cover figcaption{padding-inline:var(--pad)}.journal-reading{display:block;padding-top:4rem}.article-toc{display:none}.article-toc-mobile{display:block;margin-top:3rem;border-block:1px solid var(--line);padding-block:1rem}.article-toc-mobile summary{cursor:pointer;font-size:.85rem}.article-toc-mobile ol{list-style:none;padding:1rem 0 0;margin:0;font-size:.78rem}.article-toc-mobile li{padding:.35rem 0}.article-toc-mobile li.h3{padding-right:1rem;color:var(--muted)}.article-share{margin-top:4rem}.journal-prose h2{margin-top:3.6rem}.article-author>div{align-items:flex-start}.related-journal .journal-row-mobile-image{display:block}}
@media(prefers-reduced-motion:reduce){.journal-cover,.journal-row-copy h3,.journal-row-arrow span,.journal-arrow-link span,.journal-preview img,.journal-tabs a:after{transition:none!important;transform:none!important}}
.admin-editor-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:.6rem}.admin-editor-heading span,.admin-form label small{font-size:.72rem;color:var(--muted)}

/* Unified licensed-font-ready typography. Font files are activated only when supplied by the owner. */
.brand-en,.font-latin,[lang="en"],.project-latin-name,.case-latin-name,.project-domain{font-family:var(--font-latin)}
.journal-prose{font-family:var(--font-persian);font-size:19px;font-weight:400;line-height:2}
.journal-prose h2{font-weight:700;line-height:1.35}.journal-prose h3{font-weight:600;line-height:1.45}
@media(max-width:760px){.journal-prose{font-size:17px;line-height:1.95}}
.journal-hero-art{inset:auto 22% 0 0;width:78%;height:58%;opacity:.48;background:none;mask-image:linear-gradient(90deg,#000 0,#000 58%,transparent 95%);pointer-events:none}.journal-hero-art:before,.journal-hero-art:after,.journal-hero-art i{display:none}.journal-hero-art img{width:100%;height:100%;object-fit:cover;object-position:left bottom}
.contact-cta--journal{position:relative;isolation:isolate;overflow:hidden}.contact-cta--journal>picture{position:absolute;z-index:-2;inset:0}.contact-cta--journal>picture img{width:100%;height:100%;object-fit:cover}.contact-cta--journal:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(10,10,10,.22),rgba(10,10,10,.92) 72%)}

/* One continuous white canvas across all editorial public pages. */
.about-page-hero,.about-philosophy,.about-direction,.about-method,.about-values,.about-team,
.projects-page-hero,.projects-showcase,.projects-approach,.case-study-page,.case-next-project,
.journal-hero,.journal-paths{background:#fff}
.projects-page-hero:after{background:linear-gradient(90deg,rgba(255,255,255,.22),rgba(255,255,255,.84) 62%,#fff 88%)}
.about-direction:before{opacity:.55}
.journal-hero-art{opacity:.24}
@media(max-width:700px){.projects-page-hero:after{background:rgba(255,255,255,.84)}}

/* About leadership — founders remain readable without synthetic portraits. */
.about-leadership{padding-block:clamp(7rem,10vw,10rem);background:#fff;border-top:1px solid var(--line)}
.leadership-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}
.leadership-grid article{display:flex;flex-direction:column;min-height:390px;padding:2rem clamp(1.4rem,2.5vw,2.7rem);border-left:1px solid var(--line)}
.leadership-grid article:last-child{border-left:0}.leadership-number{font-family:var(--font-latin);font-size:.72rem;color:var(--muted)}
.leadership-grid h3{font-size:clamp(1.65rem,2.5vw,2.6rem);margin:clamp(5rem,8vw,8rem) 0 1.25rem}
.leadership-role{font-size:1rem;font-weight:600;color:var(--ink);margin:0}.leadership-founder{font-size:.82rem;color:var(--muted);margin:.25rem 0 0}
.leadership-bio{font-size:.86rem;line-height:1.95;margin:1.5rem 0 0}.leadership-grid a{width:max-content;margin-top:auto;font-size:.78rem;border-bottom:1px solid currentColor}
.leadership-grid.has-portraits{gap:clamp(1.5rem,3vw,3rem);border-top:0}.leadership-grid.has-portraits article{padding:0;border:0;min-height:0}.leadership-grid.has-portraits img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:10px;margin-bottom:1.5rem}.leadership-grid.has-portraits h3{margin:2.5rem 0 1rem}
@media(max-width:700px){.leadership-grid{grid-template-columns:1fr}.leadership-grid article{min-height:0;padding:2.2rem 0;border-left:0;border-bottom:1px solid var(--line)}.leadership-grid article:last-child{border-bottom:0}.leadership-grid h3{margin:3rem 0 1rem}.leadership-grid a{margin-top:2rem}}

/* Global navigation, footer and motion language */
.site-header{transition:background-color .3s var(--ease),border-color .3s var(--ease),backdrop-filter .3s var(--ease)}
.site-header.scrolled{background:rgba(255,255,255,.86);backdrop-filter:blur(14px);border-color:rgba(10,10,10,.1)}
.nav-link:after{transform-origin:right}.nav-link:hover:after,.nav-link.is-active:after{transform-origin:right}

.menu-button{position:relative;z-index:103;width:48px;height:48px;margin-left:-.7rem;color:var(--ink);cursor:pointer}
.menu-button .menu-line{position:absolute;right:12px;display:block;width:24px;height:1.5px;margin:0;background:currentColor;transform-origin:center;transition:transform .35s var(--ease),top .35s var(--ease),color .25s}
.menu-line-one{top:18px}.menu-line-two{top:28px}
.menu-button.is-open{color:var(--dark-ink)}
.menu-button.is-open .menu-line-one{top:23px;transform:rotate(45deg)}
.menu-button.is-open .menu-line-two{top:23px;transform:rotate(-45deg)}
.site-header.menu-active{background:transparent;border-color:transparent;backdrop-filter:none}
.site-header.menu-active .nav-shell{position:relative;z-index:102}
.site-header.menu-active .brand-light{color:var(--dark-ink)}
.site-header.menu-active .brand-light .brand-fa{color:rgba(245,243,239,.62);border-color:rgba(245,243,239,.2)}
.site-header.menu-active .brand-light img{filter:brightness(0) invert(1)}

.mobile-menu{display:flex;inset:0;z-index:101;padding:clamp(6.5rem,16vh,9rem) var(--pad) clamp(1.5rem,4vh,3rem);background:#0a0a0a;color:#f5f3ef;opacity:0;clip-path:inset(0 0 100% 0);pointer-events:none;visibility:hidden;transition:clip-path .6s var(--ease),opacity .38s ease,visibility 0s linear .6s;will-change:clip-path,opacity}
.mobile-menu[hidden]{display:none}
.mobile-menu.is-open{opacity:1;clip-path:inset(0);pointer-events:auto;visibility:visible;transition:clip-path .6s var(--ease),opacity .38s ease,visibility 0s}
.mobile-menu-inner{width:min(100%,var(--max));height:100%;margin-inline:auto;display:flex;flex-direction:column;justify-content:space-between;overflow-y:auto;overscroll-behavior:contain}
.mobile-links{border-top:1px solid rgba(245,243,239,.16)}
.mobile-menu-link{display:grid;grid-template-columns:42px 1fr 28px;gap:1rem;align-items:center;min-height:clamp(4.25rem,10vh,6.25rem);border-bottom:1px solid rgba(245,243,239,.16);opacity:0;transform:translateY(24px);transition:opacity .5s var(--ease),transform .5s var(--ease),border-color .25s}
.mobile-menu.is-open .mobile-menu-link{opacity:1;transform:none}
.mobile-menu.is-open .mobile-menu-link:nth-child(1){transition-delay:.12s}.mobile-menu.is-open .mobile-menu-link:nth-child(2){transition-delay:.19s}.mobile-menu.is-open .mobile-menu-link:nth-child(3){transition-delay:.26s}.mobile-menu.is-open .mobile-menu-link:nth-child(4){transition-delay:.33s}.mobile-menu.is-open .mobile-menu-link:nth-child(5){transition-delay:.4s}
.mobile-menu-link>span{font-size:.66rem;color:rgba(245,243,239,.38)}
.mobile-menu-link strong{font-size:clamp(2rem,8vw,4.8rem);font-weight:600;line-height:1.15}
.mobile-menu-link i{font-style:normal;font-size:1rem;color:rgba(245,243,239,.4);transition:transform .3s var(--ease),color .3s}
.mobile-menu-link:hover i,.mobile-menu-link:focus-visible i{color:#f5f3ef;transform:translateX(-5px)}
.mobile-menu-link.is-active{border-right:2px solid var(--dark-ink);padding-right:1rem}
.mobile-menu-link.is-active>span,.mobile-menu-link.is-active i{color:#f5f3ef}
.mobile-menu-bottom{display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:end;padding-top:clamp(1.5rem,4vh,3rem);opacity:0;transform:translateY(12px);transition:opacity .4s ease .5s,transform .5s var(--ease) .5s}
.mobile-menu.is-open .mobile-menu-bottom{opacity:1;transform:none}
.mobile-menu-cta{width:max-content;font-size:clamp(1rem,3vw,1.3rem);border-bottom:1px solid currentColor;padding-bottom:.25rem}
.mobile-menu-contact{display:flex;gap:1.5rem;font-size:.72rem;color:rgba(245,243,239,.6)}
.mobile-noscript{display:none}

.site-footer{padding:clamp(5rem,7vw,6.25rem) var(--pad) clamp(1.75rem,3vw,2.5rem);background:#0a0a0a;color:#f5f3ef;border-top:1px solid rgba(245,243,239,.14)}
.footer-main{width:min(var(--max),100%);margin-inline:auto;display:grid;grid-template-columns:minmax(300px,5fr) minmax(130px,2fr) minmax(200px,3fr) minmax(150px,2fr);gap:clamp(2rem,4vw,5rem)}
.footer-brand-block p{max-width:430px;margin:1.75rem 0 .75rem;color:rgba(245,243,239,.65);font-size:.95rem;line-height:2}
.footer-signature{font-size:.68rem;color:rgba(245,243,239,.38);letter-spacing:.03em}.footer-signature b{font-weight:400}
.footer-column{display:flex;flex-direction:column;align-items:flex-start;font-style:normal}
.footer-label{display:block;margin-bottom:1.25rem;color:rgba(245,243,239,.38);font-size:.68rem}
.footer-column>a{position:relative;display:inline-flex;align-items:center;min-height:34px;color:rgba(245,243,239,.72);font-size:.82rem;transition:color .25s var(--ease),transform .25s var(--ease)}
.footer-column>a:after,.footer-bottom a:after{content:"";position:absolute;right:0;bottom:3px;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .28s var(--ease)}
.footer-column>a:hover,.footer-column>a:focus-visible{color:#fff;transform:translateX(-2px)}
.footer-column>a:hover:after,.footer-column>a:focus-visible:after,.footer-bottom a:hover:after{transform:scaleX(1)}
.footer-column>span:not(.footer-label){color:rgba(245,243,239,.58);font-size:.8rem;line-height:2}
.footer-start-link{margin-top:.7rem;color:#fff!important}
.footer-social a{display:grid;grid-template-columns:1fr auto;column-gap:.55rem;width:100%}.footer-social a small{grid-column:1;font-size:.62rem;color:rgba(245,243,239,.38)}.footer-social a i{grid-column:2;grid-row:1/3;font-style:normal;transition:transform .25s var(--ease)}.footer-social a:hover i{transform:translate(4px,-4px)}
.footer-bottom{width:min(var(--max),100%);margin:clamp(4rem,6vw,5rem) auto 0;padding-top:1.5rem;border-top:1px solid rgba(245,243,239,.14);display:grid;grid-template-columns:1fr auto 1fr;gap:2rem;color:rgba(245,243,239,.42);font-size:.7rem}
.footer-bottom a{position:relative}.footer-bottom>span:last-child{text-align:left}

/* Progressive enhancement: content remains visible when JavaScript is unavailable. */
.reveal{opacity:1;transform:none}
.reveal.motion-ready{opacity:0;transform:translateY(24px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.reveal.motion-ready.is-visible{opacity:1;transform:none}
.reveal.motion-ready[data-reveal-type="image"]{transform:translateY(16px) scale(.985);transition-duration:.9s}
.reveal.motion-ready[data-reveal-type="line"]{opacity:1;transform:scaleX(0);transform-origin:right}
.reveal.motion-ready[data-reveal-type="stagger"]>*{opacity:0;transform:translateY(16px);transition:opacity .65s var(--ease),transform .65s var(--ease)}
.reveal.motion-ready[data-reveal-type="stagger"].is-visible>*{opacity:1;transform:none}
.reveal.motion-ready[data-reveal-type="stagger"].is-visible>*:nth-child(2){transition-delay:.07s}.reveal.motion-ready[data-reveal-type="stagger"].is-visible>*:nth-child(3){transition-delay:.14s}.reveal.motion-ready[data-reveal-type="stagger"].is-visible>*:nth-child(4){transition-delay:.21s}.reveal.motion-ready[data-reveal-type="stagger"].is-visible>*:nth-child(5){transition-delay:.28s}.reveal.motion-ready[data-reveal-type="stagger"].is-visible>*:nth-child(6){transition-delay:.35s}


@media(max-width:900px){
  .footer-main{grid-template-columns:1.2fr 1fr}.footer-brand-block{grid-column:1/-1}
}
@media(max-width:600px){
  .nav-shell{height:68px}.mobile-menu{padding-top:5.8rem;padding-bottom:1.5rem}.mobile-menu-link{min-height:4.35rem}.mobile-menu-link strong{font-size:clamp(2rem,10vw,3.2rem)}
  .mobile-menu-bottom{grid-template-columns:1fr;gap:1.25rem}.mobile-menu-contact{flex-wrap:wrap;gap:.75rem 1.25rem}
  .site-footer{padding-top:4.5rem}.footer-main{display:block}.footer-main>section,.footer-main>nav,.footer-main>address{padding-block:2rem;border-bottom:1px solid rgba(245,243,239,.14)}.footer-main>section{padding-top:0}.footer-column>a{min-height:44px}.footer-label{margin-bottom:.75rem}
  .footer-bottom{grid-template-columns:1fr;gap:.65rem;margin-top:2.25rem}.footer-bottom>span:last-child{text-align:right}
}

@media(prefers-reduced-motion:reduce){
  .mobile-menu,.mobile-menu-link,.mobile-menu-bottom,.menu-button .menu-line,.reveal.motion-ready,.reveal.motion-ready[data-reveal-type="stagger"]>*{animation:none!important;transition-duration:.01ms!important;transform:none!important}
  .mobile-menu{clip-path:none}.mobile-menu:not(.is-open){opacity:0}.mobile-menu.is-open{opacity:1}
}

/* Final cross-page rhythm: consistent type and image-first mobile heroes. */
.projects-page-hero:after{display:none}
.hero-stage .hero-copy h1{font-size:clamp(2.85rem,5vw,5.35rem);line-height:1.2}
.services-page-hero h1,.about-page-hero-copy h1,.projects-page-hero h1,.journal-hero h1,.page-hero h1{font-size:clamp(2.55rem,4.5vw,4.7rem);line-height:1.27}
.home-section h2,.services-v2-header h2,.about-section-heading h2,.projects-approach h2,.journal-results-head h2{font-size:clamp(2rem,3.2vw,3.35rem);line-height:1.35}
.hero-copy p,.about-page-hero-copy>p,.services-hero-copy>p,.projects-page-intro p,.journal-hero-intro>p{font-size:clamp(1rem,1.12vw,1.1rem)}
.home-section,.project-showcase,.services-page-item,.about-philosophy,.about-direction,.about-method,.about-values,.about-team,.journal-feature,.journal-results{content-visibility:auto;contain-intrinsic-size:auto 900px}

@media(max-width:900px){
  .hero-stage{display:flex;flex-direction:column}.hero-hands{order:-1}.hero-copy{order:2}
  .about-page-hero-layout{grid-template-areas:none}.about-hero-art{grid-column:1;grid-row:1}.about-page-hero-copy{grid-column:1;grid-row:2}
}
@media(max-width:760px){
  .journal-hero{padding-top:6.6rem}
  .journal-hero-inner{display:flex;flex-direction:column;gap:2rem}
  .journal-hero-art{position:relative;order:-1;inset:auto;width:100%;height:auto;aspect-ratio:16/9;opacity:.62;mask-image:none;border:1px solid var(--line);border-radius:9px;overflow:hidden}
  .journal-hero-copy{order:2}.journal-hero-intro{order:3;margin-top:0}
  .journal-hero-art img{object-position:center}
}
@media(max-width:600px){
  .hero-stage .hero-copy h1,.services-page-hero h1,.about-page-hero-copy h1,.projects-page-hero h1,.journal-hero h1,.page-hero h1{font-size:clamp(2.25rem,10.5vw,3.35rem);line-height:1.32}
  .home-section h2,.services-v2-header h2,.about-section-heading h2,.projects-approach h2,.journal-results-head h2{font-size:clamp(1.85rem,8.5vw,2.7rem)}
  .hero-hands{width:108%;margin:-.5rem -4% 0;filter:none}
  .about-page-hero-layout{padding-top:6.6rem}
  .services-page-hero{padding-top:6.6rem}
}
