/* WASSIMVISUALS — GREYSCALE GLASS / EDITORIAL SYSTEM v3
   All layout styles scoped to body.wv3; old administration and case-study CSS untouched. */
:root{--wv3-bg:#ebebea;--wv3-ink:#181919;--wv3-muted:#737574;--wv3-line:rgba(31,33,34,.15);--wv3-soft:#f5f5f3;--wv3-radius:30px;--wv3-font:Inter,"Helvetica Neue",Arial,sans-serif;--wv3-serif:Georgia,"Times New Roman",serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}html[dir="rtl"]{font-synthesis:none}
body.wv3{margin:0;background:var(--wv3-bg);color:var(--wv3-ink);font:400 16px/1.5 var(--wv3-font);-webkit-font-smoothing:antialiased;overflow-x:clip;min-width:320px}
body.wv3 :is(h1,h2,h3,p){margin-block:0}body.wv3 a{color:inherit;text-decoration:none}body.wv3 button,body.wv3 input,body.wv3 textarea{font:inherit}
body.wv3 button{cursor:pointer}body.wv3 img{display:block;max-width:100%}body.wv3 [hidden]{display:none!important}
body.wv3 :is(a,button,input,textarea):focus-visible{outline:2px solid #1a1a1a;outline-offset:4px}body.wv3 .fa-svg{width:1em;height:1em;display:inline-block;vertical-align:-.12em}
.wv3-shell{width:min(100% - clamp(36px,7.6vw,140px),1560px);margin-inline:auto}.wv3-overline,.wv3-kicker{font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}
.wv3-led{display:inline-block;width:7px;height:7px;border-radius:50%;background:#444;vertical-align:middle;margin-inline-end:10px;box-shadow:0 0 0 5px #bdbdbc7a}
/* Glass nav / functional trilingual switch. */
.wv3-nav{position:relative;z-index:35;display:flex;align-items:center;justify-content:space-between;gap:clamp(14px,3vw,36px);min-height:94px;border-bottom:1px solid var(--wv3-line);direction:ltr}
.wv3-brand{display:inline-flex;align-items:center;min-width:0;flex:0 0 auto}.wv3-brand-text{white-space:nowrap;display:flex;align-items:baseline;gap:0;font-size:clamp(14px,1.3vw,20px);line-height:1;letter-spacing:-.075em}
.wv3-brand-text strong{font-weight:850}.wv3-brand-text span{font-weight:300}.wv3-brand-text sup{font-size:.45em;vertical-align:super;margin-left:3px;letter-spacing:0}.wv3-logo-img{width:auto;height:auto;max-height:45px;max-width:min(34vw,220px);object-fit:contain}
.wv3-nav-links{display:flex;align-items:center;gap:clamp(17px,3vw,47px)}.wv3-nav-links a{font-size:12px;font-weight:750;white-space:nowrap;transition:opacity .2s}.wv3-nav-links a:hover{opacity:.55}.wv3-nav-links .fa-svg{margin-inline-start:6px;width:12px}
.wv3-nav-actions{display:flex;align-items:center;gap:13px}.wv3-langs{display:inline-flex;align-items:center;gap:2px;background:#ffffff75;border:1px solid #ffffffc0;border-radius:999px;padding:4px;box-shadow:0 2px 15px #00000008;backdrop-filter:blur(12px)}
.wv3-langs a{display:flex;align-items:center;justify-content:center;min-width:34px;padding:7px 8px;border-radius:999px;font:750 10px/1 var(--wv3-font);letter-spacing:.015em;color:#5c5e5d;white-space:nowrap;transition:background .2s,color .2s}
.wv3-langs a.is-current{color:#fff;background:#1f2120}.wv3-menu-toggle{display:none;width:40px;height:40px;background:#fff9;border:1px solid #fff;border-radius:50%;align-items:center;justify-content:center}.wv3-menu-toggle .fa-svg{width:16px;height:16px}
.wv3-mobile-nav{position:absolute;z-index:38;top:80px;inset-inline:18px;background:#f6f6f4ee;padding:22px;border-radius:18px;box-shadow:0 20px 60px #0002;backdrop-filter:blur(35px)}.wv3-mobile-nav a{display:block;padding:11px;font-size:20px;font-weight:700;border-bottom:1px solid #ddd}
/* Hero */
.wv3-hero{padding-top:20px}.wv3-hero-top{display:flex;align-items:center;justify-content:space-between;gap:20px;color:#555;min-height:51px;border-bottom:1px solid var(--wv3-line)}
.wv3-hero-main{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);min-height:clamp(600px,54vw,800px);gap:clamp(32px,4vw,76px);padding-block:55px 60px}
.wv3-hero-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0;padding-block:25px}.wv3-kicker{display:flex;align-items:center;gap:12px;line-height:1.5;color:#656766}
.wv3-rule{display:inline-block;width:24px;height:1px;background:#666}.wv3-hero-title{font-weight:850;letter-spacing:-.102em;line-height:.91;text-transform:uppercase;max-width:850px;overflow-wrap:anywhere;font-size:clamp(66px,8.6vw,170px);margin-block:clamp(26px,3.2vw,53px) 30px!important}
.wv3-hero-desc{max-width:480px;font-size:clamp(17px,1.5vw,23px);color:#626462;line-height:1.53;letter-spacing:-.025em}
.wv3-hero-links{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:42px}.wv3-pill{border:0;display:inline-flex;align-items:center;justify-content:center;gap:25px;min-height:54px;padding:16px 25px;border-radius:999px;text-decoration:none;font-weight:700;font-size:13px;white-space:normal;line-height:1.3;transition:transform .23s ease,background .23s ease;color:#fff}
.wv3-pill.primary{background:#1d1f1e;color:#fff}.wv3-pill.primary:hover{background:#414342;transform:translateY(-2px)}.wv3-pill .fa-svg{width:12px;height:12px}.wv3-text-link{background:none;border:0;padding:14px 0;color:var(--wv3-ink);font-weight:750;font-size:13px;display:inline-flex;align-items:center;gap:12px}
.wv3-text-link span{font-size:17px}.wv3-hero-media{position:relative;display:flex;align-items:stretch;min-width:0;min-height:460px;padding-inline:28px}.wv3-hero-image-stage{position:relative;width:100%;min-height:530px;overflow:hidden;border-radius:clamp(80px,11vw,165px) clamp(80px,11vw,165px) 36px 36px;background:#777e7b}
.wv3-hero-image-stage>img{width:100%;height:100%;object-fit:cover;object-position:center;filter:grayscale(1);transform:scale(1.02)}.wv3-hero-image-overlay{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#0000 52%,#10131370)}
.wv3-hero-image-empty{height:100%;min-height:520px;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 25% 20%,#dedfdb,#6b706d 72%);color:#e7e7e4;font-size:clamp(100px,12vw,230px);font-weight:850;letter-spacing:-.16em}
.wv3-hero-hero-caption{position:absolute;bottom:20px;inset-inline:27px;display:flex;justify-content:space-between;gap:12px;font-size:10px;letter-spacing:.17em;color:white;font-weight:750}
.wv3-float-glass{position:absolute;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid #ffffffd9;background:rgba(236,238,235,.44);box-shadow:inset 0 1px 1px #fff,0 18px 50px #3332;backdrop-filter:blur(19px) saturate(.85);-webkit-backdrop-filter:blur(19px) saturate(.85);border-radius:25px;color:#212322;padding:16px 20px;overflow:hidden}
.wv3-float-top{top:11%;inset-inline-start:-9px;width:168px;min-height:116px;transform:rotate(-7deg);animation:wv3-float 8s ease-in-out infinite alternate}.wv3-float-top>span{font-size:56px;font-weight:850;letter-spacing:-.12em;line-height:1}.wv3-letter-outline{-webkit-text-stroke:1px #222;color:transparent}.wv3-float-glass small{font-size:9px;font-weight:750;letter-spacing:.15em;line-height:1.6}
.wv3-float-bottom{inset-inline-end:-7px;bottom:14%;min-width:172px;min-height:100px;transform:rotate(7deg);animation:wv3-float-alt 8s ease-in-out infinite alternate}
.wv3-orbit{position:relative;display:block;width:55px;height:55px;border:1px solid #565;border-radius:50%}.wv3-orbit i{position:absolute;width:9px;height:9px;border-radius:50%;background:#222}.wv3-orbit i:nth-child(1){top:4px;left:25px}.wv3-orbit i:nth-child(2){bottom:5px;left:7px}.wv3-orbit i:nth-child(3){bottom:7px;right:5px}
@keyframes wv3-float{to{transform:rotate(-4deg) translateY(-10px)}}@keyframes wv3-float-alt{to{transform:rotate(5deg) translateY(9px)}}
.wv3-hero-bottom{border-top:1px solid var(--wv3-line);min-height:75px;display:flex;align-items:center;justify-content:space-between;gap:20px}.wv3-scroll-cue{font-size:12px;font-weight:700;display:flex;align-items:center;gap:18px}.wv3-scroll-cue span{width:30px;height:30px;border:1px solid #bbbbba;border-radius:50%;display:grid;place-items:center;transition:transform .3s}.wv3-scroll-cue:hover span{transform:translateY(5px)}
/* Conicorn-influenced monochrome translucent bento language: an original composition. */
.wv3-glass-interlude{position:relative;overflow:hidden;isolation:isolate;min-height:600px;background:radial-gradient(ellipse at 65% 40%,#dddeda 0%,#aaaead 48%,#797c7c 100%);padding:125px clamp(20px,8vw,150px);display:grid;place-items:center}
.wv3-glass-interlude::after{content:"";position:absolute;inset:0;opacity:.19;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 140 140' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.72' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E");background-size:180px}
.wv3-glass-atmosphere{position:absolute;inset:0;pointer-events:none}.wv3-glass-atmosphere .orb{position:absolute;border-radius:50%;border:1px solid #ffffff50;background:linear-gradient(160deg,#ffffff70,#ffffff10);box-shadow:inset -18px -16px 45px #43494954,inset 20px 15px 40px #ffffffa6,0 20px 100px #2223;backdrop-filter:blur(5px)}
.wv3-glass-atmosphere .orb-one{width:350px;height:350px;inset-inline-start:-70px;top:-80px}.wv3-glass-atmosphere .orb-two{width:210px;height:210px;inset-inline-end:14%;bottom:-70px}
.wv3-glass-story{position:relative;z-index:1;text-align:center;max-width:680px;color:#202322;text-shadow:0 1px 30px #ffffff45}.wv3-glass-story h2{font-size:clamp(45px,6.2vw,112px);font-weight:800;letter-spacing:-.084em;line-height:1.01;margin:18px 0 22px!important}.wv3-glass-story p{max-width:430px;margin-inline:auto;font-size:16px;color:#343937;line-height:1.7}
.wv3-story-sigil{display:block;font-size:36px;font-weight:850;letter-spacing:-.15em;margin-top:50px}
.wv3-glass-plate{position:absolute;z-index:2;display:flex;flex-direction:column;justify-content:space-between;gap:65px;padding:24px;background:#ffffff36;border:1px solid #ffffffa3;border-radius:26px;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:inset 0 1px 2px #fff8,0 25px 40px #0002;min-width:175px;color:#222725;font-size:10px;font-weight:750;letter-spacing:.15em;line-height:1.5}
.wv3-glass-plate b{font-size:35px;line-height:1;color:#232523}.plate-one{inset-inline-start:5%;bottom:13%;transform:rotate(-9deg)}.plate-two{inset-inline-end:6%;top:14%;transform:rotate(10deg)}
/* Portfolio — existing layout logic, card popup, and wipe retained. */
.wv3-work{padding-block:clamp(110px,11vw,185px) 145px}.wv3-section-heading{display:flex;align-items:end;justify-content:space-between;gap:26px;margin-bottom:65px}.wv3-section-heading h2{max-width:1000px;font-size:clamp(52px,7.7vw,132px);letter-spacing:-.086em;line-height:.96;font-weight:850;margin:18px 0 20px}.wv3-section-heading p{color:#6e706e;max-width:570px;font-size:17px;line-height:1.65}
.wv3-outline-link{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;border:1px solid #797c7a;border-radius:999px;padding:15px 22px;font-size:12px;font-weight:700;white-space:nowrap;transition:background .25s,color .25s}.wv3-outline-link:hover{background:#1d1f1e;color:#fff}.wv3-outline-link .fa-svg{width:13px;height:13px}
.wv3-work-note{display:flex;align-items:center;gap:8px;border-block:1px solid var(--wv3-line);padding:13px 0;margin-bottom:25px;font-size:10px;font-weight:750;letter-spacing:.12em;color:#7a7b78}.wv3-work-index{margin-inline-start:auto}
#project-grid.wv3-project-grid{display:grid;grid-template-columns:repeat(var(--cols,2),minmax(0,1fr));gap:clamp(36px,6vw,88px) clamp(16px,2vw,33px);width:100%;min-width:0;align-items:start}
#project-grid>.wv3-project{min-width:0;position:relative;display:block;isolation:isolate;color:#171817!important;opacity:1!important;transform:none!important;filter:none!important;max-width:none}
#project-grid .wv3-project .portfolio-media{display:block;position:relative;aspect-ratio:4/4.45;width:100%;overflow:hidden;isolation:isolate;contain:layout paint;border-radius:16px;background:#cdcfce;filter:none;transition:filter .3s}
#project-grid .wv3-project .portfolio-media>img{width:100%;height:100%;display:block;object-fit:cover;filter:none!important;transform:none!important;image-rendering:auto}
#project-grid .wv3-project .portfolio-placeholder{display:grid;place-items:center;width:100%;height:100%;color:#fff;font-size:64px;letter-spacing:-.13em;font-weight:850}
body.wv3-glass-armed #project-grid .portfolio-media:not(.glass-ready) img{filter:blur(11px) grayscale(.5)!important}
#project-grid .portfolio-media.glass-ready img{filter:none!important}
#project-grid .portfolio-media>.glass-wipe-canvas{position:absolute;inset:0;display:block;width:100%;height:100%;pointer-events:none;z-index:2}
#project-grid .wv3-project-media-label{z-index:3;position:absolute;bottom:18px;inset-inline-end:18px;background:#f4f4f4dd;color:#161616;font-size:10px;font-weight:750;padding:12px 15px;border:1px solid #fff;border-radius:99px;opacity:0;transform:translateY(8px);transition:opacity .3s,transform .3s;pointer-events:none;backdrop-filter:blur(15px)}
#project-grid .wv3-project:hover .wv3-project-media-label,#project-grid .wv3-project:focus-visible .wv3-project-media-label{opacity:1;transform:translateY(0)}
#project-grid .wv3-project-meta{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;padding-top:17px}.wv3-project-overline{font-size:10px;font-weight:750;letter-spacing:.12em;text-transform:uppercase;color:#7c7e7b}
#project-grid .wv3-project h3{font-size:clamp(23px,2.8vw,42px);font-weight:800;letter-spacing:-.07em;line-height:1.06;margin-top:7px;margin-bottom:0;word-break:normal;overflow-wrap:anywhere}
#project-grid .wv3-project-year{font-size:12px;letter-spacing:.03em;font-weight:700;color:#7e807d;white-space:nowrap;padding-bottom:3px}
.wv3-empty{padding:50px 0;color:#777}
/* Philosophy */
.wv3-philosophy{background:#222525;color:#f4f4f2;padding-block:clamp(120px,12vw,200px)}.wv3-philosophy-grid{display:grid;grid-template-columns:minmax(150px,.26fr) minmax(0,1fr);gap:25px}.wv3-philosophy .wv3-overline{color:#acaeac}
.wv3-philosophy-symbol{display:block;margin-top:55px;font-size:75px;color:#d8d8d5;animation:wv3-rotate 30s linear infinite}@keyframes wv3-rotate{to{transform:rotate(360deg)}}
.wv3-philosophy-main h2{max-width:1300px;font-weight:760;font-size:clamp(48px,6.4vw,112px);line-height:1.03;letter-spacing:-.07em}.wv3-philosophy-main p{max-width:440px;color:#acb0ac;font-size:17px;line-height:1.7;margin-top:44px;margin-inline-start:auto}
.word-reveal .reveal-token{opacity:.23;transition:opacity .1s}.word-reveal .reveal-token.is-on{opacity:1}
/* Expertise */
.wv3-expertise{padding-block:clamp(100px,11vw,160px)}.wv3-asterisk{font-size:clamp(80px,11vw,190px);font-weight:300;line-height:.8;color:#9a9b98}
.wv3-services{border-top:1px solid #b9bab7}.wv3-service{display:grid;grid-template-columns:60px minmax(0,1fr) minmax(180px,.5fr) 52px;align-items:center;gap:20px;padding:clamp(22px,3vw,42px) 10px;border-bottom:1px solid #b9bab7;transition:padding-inline .3s,background .3s}.wv3-service:hover{background:#f4f4f2;padding-inline:26px}
.wv3-service-index{color:#878987;font-size:12px;font-weight:800}.wv3-service h3{font-size:clamp(26px,3.2vw,50px);letter-spacing:-.065em;font-weight:770;line-height:1.12}.wv3-service p{max-width:270px;color:#777;font-size:14px}.wv3-service-icon{display:grid;place-items:center;border:1px solid #aaa;width:40px;height:40px;border-radius:50%;font-size:22px}
/* Intent */
.wv3-process{background:#d6d8d5;padding-block:clamp(105px,11vw,165px)}.wv3-process .wv3-section-heading h2{max-width:1200px}.wv3-process .wv3-section-heading em{font-family:var(--wv3-serif);font-weight:400;font-size:.87em;letter-spacing:-.058em}
.wv3-process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}.wv3-process-card{min-height:385px;display:flex;flex-direction:column;justify-content:space-between;border-radius:25px;padding:32px;background:#eeeeea78;border:1px solid #ffffffba;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:inset 0 1px 1px #fff9,0 10px 40px #00000006;transition:transform .35s ease,background .35s}.wv3-process-card:hover{transform:translateY(-8px);background:#f8f9f5b0}
.wv3-process-no{font-size:10px;font-weight:780;letter-spacing:.12em}.wv3-process-glyph{align-self:end;font-size:80px;font-weight:200;line-height:1;color:#656a67}.wv3-process-card h3{font-size:clamp(27px,2.7vw,41px);line-height:1.1;letter-spacing:-.064em}.wv3-process-card p{color:#777;font-size:14px;line-height:1.6;margin-top:13px;max-width:280px}
/* Contact */
.wv3-contact{background:#181a19;color:#f5f5f3;padding-top:clamp(100px,11vw,165px)}.wv3-contact-upper{display:flex;align-items:center;justify-content:space-between;gap:20px}.wv3-contact-mark{font-size:50px;font-weight:850;letter-spacing:-.12em}.wv3-contact-mark span{font-weight:200}
.wv3-contact h2{font-weight:820;font-size:clamp(57px,9vw,150px);max-width:1250px;line-height:.96;letter-spacing:-.085em;margin:80px 0 30px}.wv3-contact p{max-width:620px;font-size:20px;color:#a6a9a6;line-height:1.55}
.wv3-contact-actions{display:flex;align-items:center;gap:30px;margin:36px 0 105px;flex-wrap:wrap}.wv3-pill.light{background:#f0f0ec;color:#181919}.wv3-pill.light:hover{background:#ccc;transform:translateY(-2px)}.wv3-text-link.light-link{color:#fff}.wv3-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:105px;border-top:1px solid #4b4e4b;font-size:11px;font-weight:700;letter-spacing:.07em;color:#c1c3c1}
/* Booking / light glass modal */
.booking-overlay{position:fixed;inset:0;z-index:1300;display:none;align-items:center;justify-content:center;padding:18px;background:#111a;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.booking-overlay.open{display:flex}.booking-dialog{width:min(780px,100%);max-height:92dvh;overflow:auto;background:#edeeeb;border-radius:27px;padding:clamp(24px,4.6vw,54px);box-shadow:0 40px 130px #0005;color:#191919}
.booking-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.booking-head h2{font-weight:800;letter-spacing:-.07em;font-size:clamp(34px,4vw,63px);line-height:1.04;margin:14px 0 24px}
.close-booking{width:42px;height:42px;border-radius:50%;background:#fff;border:1px solid #ccc;color:#111;font-size:28px;line-height:1;flex:none}
.booking-types{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:25px}.booking-choice{background:#fff7;border:1px solid #ccc;padding:13px 17px;border-radius:99px;font-size:13px;font-weight:700}.booking-choice.active{background:#191a19;color:#fff;border-color:#191a19}
.booking-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.booking-dialog label{display:block;font-size:11px;letter-spacing:.06em;text-transform:uppercase;font-weight:750;margin:17px 0 8px}.booking-dialog :is(input,textarea){width:100%;background:#fff;border:1px solid #cecfcd;border-radius:10px;padding:13px;font-size:14px;min-height:47px;color:#222}
.booking-dialog textarea{resize:vertical;min-height:125px}.booking-note{font-size:12px;line-height:1.65;color:#666;margin:17px 0 23px!important}.booking-dialog .wv3-pill{width:100%}.wv3-honeypot{position:absolute;left:-99999px;opacity:0}
/* Existing project popup, translated metadata, glass styling */
.project-modal-backdrop{backdrop-filter:blur(20px)!important;background:#0b0d0dd4!important;z-index:1250}.project-modal{border-radius:22px!important;background:#f0f0ed!important;box-shadow:0 50px 150px #0007!important;overflow-x:hidden}.project-modal-image-wrap{position:relative}.project-modal-info h2{font-family:var(--wv3-font)!important;letter-spacing:-.075em!important}.project-modal-info p{font-family:var(--wv3-font)!important}
/* Trilingual RTL details; photo and Latin logo retain a stable direction. */
html[dir="rtl"] body.wv3{font-family:"Noto Sans Arabic",Tahoma,"Segoe UI",Arial,sans-serif;letter-spacing:0}
html[dir="rtl"] body.wv3 :is(.wv3-hero-title,.wv3-section-heading h2,.wv3-glass-story h2,.wv3-philosophy-main h2,.wv3-contact h2){letter-spacing:-.047em;line-height:1.2;text-transform:none}
html[dir="rtl"] .wv3-nav{direction:rtl}html[dir="rtl"] .wv3-brand-text{direction:ltr}html[dir="rtl"] .wv3-nav-links{direction:rtl}html[dir="rtl"] .wv3-langs{direction:ltr}
html[dir="rtl"] .wv3-hero-hero-caption{direction:rtl}html[dir="rtl"] .wv3-glass-plate{font-family:var(--wv3-font);direction:ltr}html[dir="rtl"] .wv3-contact-mark{direction:ltr}
html[dir="rtl"] .wv3-project-overline,html[dir="rtl"] .wv3-overline{letter-spacing:0}html[dir="rtl"] .wv3-hero-title{font-size:clamp(53px,6.7vw,115px)}
html[dir="rtl"] .wv3-project h3{line-height:1.4}html[dir="rtl"] .wv3-process-grid p{line-height:1.9}html[dir="rtl"] .wv3-footer{direction:rtl}
html[dir="rtl"] .booking-dialog :is(input[type="date"],input[type="time"]){direction:ltr;text-align:start}html[dir="rtl"] .project-modal-info{direction:rtl;text-align:right}html[dir="rtl"] .project-modal-close{right:auto;left:18px}
/* Scroll reveals: keep content visible until JS opts in. */
html.wv3-enhanced body.wv3 [data-wv-reveal]{opacity:0;transform:translateY(35px);transition:opacity 950ms cubic-bezier(.2,1,.32,1),transform 950ms cubic-bezier(.2,1,.32,1)}
html.wv3-enhanced body.wv3 [data-wv-reveal].wv3-visible{opacity:1;transform:none}
/* Responsive */
@media(max-width:1150px){.wv3-nav-links{gap:15px}.wv3-nav-links a{font-size:11px}.wv3-hero-main{grid-template-columns:1.04fr .96fr;gap:25px;min-height:630px}.wv3-hero-title{font-size:clamp(65px,8.2vw,115px)}.wv3-hero-media{padding-inline:10px}.wv3-hero-image-stage{min-height:500px}.wv3-float-top{inset-inline-start:-9px}.wv3-glass-plate{min-width:132px;padding:15px;gap:50px}}
@media(max-width:850px){.wv3-nav{min-height:76px}.wv3-nav-links{display:none}.wv3-menu-toggle{display:flex}.wv3-hero-main{grid-template-columns:1fr;min-height:0;gap:35px;padding-block:45px}.wv3-hero-title{font-size:clamp(65px,13.5vw,126px)}.wv3-hero-copy{padding-block:10px}.wv3-hero-media{width:min(620px,100%);margin-inline:auto;min-height:380px;padding-inline:24px}.wv3-hero-image-stage{min-height:500px}.wv3-glass-plate{display:none}.wv3-glass-interlude{min-height:500px}.wv3-philosophy-grid{grid-template-columns:1fr}.wv3-philosophy-symbol{display:none}.wv3-process-grid{grid-template-columns:1fr 1fr}.wv3-service{grid-template-columns:36px minmax(0,1fr) 44px}.wv3-service p{grid-column:2;grid-row:2}.wv3-service-icon{grid-column:3;grid-row:1 / 3}.wv3-section-heading h2{font-size:clamp(52px,10vw,100px)}}
@media(max-width:600px){.wv3-shell{width:calc(100% - 36px)}.wv3-nav{gap:10px;min-height:72px}.wv3-logo-img{max-width:38vw;max-height:34px}.wv3-brand-text{font-size:clamp(13px,3.4vw,19px)}.wv3-langs{gap:0;padding:3px}.wv3-langs a{min-width:29px;padding:7px 5px;font-size:10px}.wv3-nav-actions{gap:6px}.wv3-menu-toggle{width:34px;height:34px}.wv3-hero-top{min-height:48px}.wv3-hero-location{display:none}.wv3-hero-main{padding-top:38px;padding-bottom:38px;gap:35px}.wv3-hero-title{font-size:clamp(54px,13.3vw,86px);margin-block:30px 23px!important}.wv3-hero-desc{font-size:16px}.wv3-hero-links{gap:16px;margin-top:25px}.wv3-pill{min-height:48px;font-size:12px;padding:13px 18px}.wv3-hero-media{padding-inline:16px;min-height:0}.wv3-hero-image-stage{min-height:390px;border-radius:96px 96px 22px 22px}.wv3-hero-image-empty{min-height:390px}.wv3-hero-hero-caption{font-size:8px;inset-inline:15px}.wv3-float-top{width:107px;min-height:73px;padding:10px 12px;border-radius:16px}.wv3-float-top>span{font-size:33px}.wv3-float-glass small{font-size:7px}.wv3-float-bottom{width:112px;min-width:0;min-height:66px;padding:10px 12px;border-radius:16px}.wv3-orbit{width:32px;height:32px}.wv3-orbit i{width:6px;height:6px}.wv3-hero-bottom{min-height:62px}.wv3-glass-interlude{padding:85px 23px;min-height:425px}.wv3-glass-story h2{font-size:clamp(42px,11vw,68px)}.wv3-glass-story p{font-size:14px}.wv3-glass-atmosphere .orb-one{width:210px;height:210px}.wv3-glass-atmosphere .orb-two{width:130px;height:130px}.wv3-work{padding-block:95px}.wv3-section-heading{align-items:flex-start;gap:25px;flex-direction:column;margin-bottom:30px}.wv3-section-heading h2{font-size:clamp(50px,11vw,70px)}.wv3-section-heading p{font-size:15px}.wv3-outline-link{padding:11px 17px;font-size:11px}.wv3-work-note{font-size:9px}.wv3-project-grid#project-grid{grid-template-columns:repeat(var(--mobile-cols,1),minmax(0,1fr))!important;gap:29px 12px}.wv3-project-grid#project-grid .wv3-project .portfolio-media{aspect-ratio:4/4.6;border-radius:10px}.wv3-project-grid#project-grid .wv3-project h3{font-size:clamp(17px,4vw,24px);margin-top:5px}.wv3-project-grid#project-grid .wv3-project-overline{font-size:9px;line-height:1.5}.wv3-project-grid#project-grid .wv3-project-meta{padding-top:11px;flex-wrap:wrap;gap:5px}.wv3-project-grid#project-grid .wv3-project-year{font-size:10px}.wv3-project-grid#project-grid .wv3-project-media-label{display:none}.wv3-project-grid#project-grid .portfolio-media:not(.glass-ready) img{filter:none!important}.wv3-project-grid#project-grid .glass-wipe-canvas{display:none!important}.wv3-philosophy{padding-block:95px}.wv3-philosophy-main h2{font-size:clamp(39px,9vw,64px);line-height:1.28}.wv3-philosophy-main p{margin-top:27px;font-size:15px}.wv3-expertise{padding-block:95px}.wv3-asterisk{display:none}.wv3-service h3{font-size:clamp(24px,6.3vw,36px)}.wv3-service p{font-size:12px}.wv3-process{padding-block:95px}.wv3-process-grid{grid-template-columns:1fr}.wv3-process-card{min-height:280px}.wv3-contact{padding-top:90px}.wv3-contact h2{margin-block:50px 20px;font-size:clamp(48px,10vw,75px)}.wv3-contact p{font-size:17px}.wv3-contact-actions{margin-bottom:80px}.wv3-footer{flex-wrap:wrap;gap:12px;min-height:105px;padding-block:20px;font-size:10px}.booking-grid{grid-template-columns:1fr}.booking-dialog{max-height:96dvh;padding:25px}.project-modal-backdrop{padding:12px}.project-modal{max-height:90dvh}}
@media(max-width:390px){.wv3-shell{width:calc(100% - 28px)}.wv3-brand-text{font-size:13px}.wv3-langs a{min-width:27px;font-size:8px}.wv3-menu-toggle{width:31px;height:31px}.wv3-nav-actions{gap:3px}.wv3-hero-title{font-size:clamp(47px,12.4vw,60px)}.wv3-hero-image-stage{min-height:340px}.wv3-glass-interlude{min-height:400px}}
/* On touch / reduced motion, NEVER blur real project imagery. */
@media(hover:none),(pointer:coarse){#project-grid .portfolio-media:not(.glass-ready) img{filter:none!important}#project-grid .glass-wipe-canvas{display:none!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.wv3-float-glass,.wv3-philosophy-symbol{animation:none!important}.wv3-process-card:hover,.wv3-pill:hover{transform:none}html.wv3-enhanced body.wv3 [data-wv-reveal]{opacity:1!important;transform:none!important;transition:none!important}#project-grid .portfolio-media:not(.glass-ready) img{filter:none!important}#project-grid .glass-wipe-canvas{display:none!important}}
/* Full portfolio page */
.wv3-portfolio-intro{position:relative;overflow:hidden;background:radial-gradient(circle at 85% 20%,#ececea,#c2c5c3 55%,#a2a5a3);padding-block:clamp(90px,9vw,148px) 34px}
.wv3-portfolio-intro::before{content:"";position:absolute;inset-inline-end:-11vw;top:-16vw;width:47vw;height:47vw;border-radius:50%;border:1px solid #ffffff9c;background:#ffffff32;box-shadow:inset 20px 30px 60px #fff7,inset -20px -22px 45px #49524d3a;pointer-events:none}
.wv3-portfolio-intro>.wv3-shell{position:relative}.wv3-portfolio-intro-grid{display:grid;grid-template-columns:1.5fr .5fr;align-items:end;gap:30px;padding-block:50px 75px}.wv3-portfolio-intro h1{font-weight:850;letter-spacing:-.095em;line-height:.95;font-size:clamp(75px,11vw,190px);overflow-wrap:anywhere}
.wv3-portfolio-stat{display:block;font-size:clamp(55px,7vw,110px);font-weight:850;letter-spacing:-.1em;line-height:1}.wv3-portfolio-intro-grid p{max-width:300px;font-size:18px;color:#616462;margin-top:20px}
.wv3-portfolio-intro-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #2023204a;padding-top:20px;font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}
.wv3-portfolio-list{padding-top:85px}.wv3-portfolio-cta{padding-top:95px}.wv3-portfolio-cta h2{max-width:1100px}.wv3-portfolio-cta .wv3-pill{margin-top:30px}
html[dir="rtl"] .wv3-portfolio-intro h1{letter-spacing:-.04em;line-height:1.18}
@media(max-width:720px){.wv3-portfolio-intro-grid{grid-template-columns:1fr;gap:22px;padding-block:45px}.wv3-portfolio-intro h1{font-size:clamp(65px,13vw,100px)}.wv3-portfolio-stat{font-size:60px}.wv3-portfolio-intro{padding-top:70px}.wv3-portfolio-cta{padding-top:90px}}

/* V3.0.7 — editorial labels without numeric indexing. Preserve hierarchy and
   responsive service grid after removing the decorative leading number. */
.wv3-services .wv3-service{grid-template-columns:minmax(0,1fr) minmax(180px,.5fr) 52px}
.wv3-services .wv3-service>h3{grid-column:1;grid-row:1}
.wv3-services .wv3-service>p{grid-column:2;grid-row:1}
.wv3-services .wv3-service>.wv3-service-icon{grid-column:3;grid-row:1}
.wv3-process-grid .wv3-process-card{justify-content:space-between}
@media(max-width:850px){
  .wv3-services .wv3-service{grid-template-columns:minmax(0,1fr) 44px}
  .wv3-services .wv3-service>h3{grid-column:1;grid-row:1}
  .wv3-services .wv3-service>p{grid-column:1;grid-row:2;width:auto}
  .wv3-services .wv3-service>.wv3-service-icon{grid-column:2;grid-row:1 / 3}
}

/* V3.0.8 — Headline safe-area & philosophy alignment.
   The word masks are allowed breathing room, preventing clipped letter edges. */
body.wv3 .wv3-hero-title{
  box-sizing:border-box;max-width:100%;min-width:0;
  padding-inline:.075em; margin-inline:-.075em;
  padding-block:.075em;margin-block:clamp(26px,3.2vw,53px) 30px!important;
  letter-spacing:-.075em;line-height:1.12;
  overflow:visible;overflow-wrap:normal;word-break:normal;
  text-wrap:balance;
}
body.wv3 .wv3-hero-title .wv-word-shell{
  overflow:clip;overflow-clip-margin:.17em;
  /* Extra glyph side-bearing space without changing line width */
  padding-inline:.045em;margin-inline:-.045em;
  padding-block:.06em;margin-block:-.06em;
}
body.wv3 .wv3-hero-title .wv-word{line-height:inherit}
body.wv3 .wv3-philosophy-grid{min-width:0}
body.wv3 .wv3-philosophy-main{min-width:0;display:flex;flex-direction:column;align-items:stretch}
body.wv3 .wv3-philosophy-main h2{min-width:0;max-width:100%;text-align:start}
body.wv3 .wv3-philosophy-main p{
  align-self:flex-start;text-align:start;
  width:min(100%,660px);max-width:100%;
  margin-inline:0!important;margin-block-start:clamp(24px,3vw,44px);
  margin-block-end:0;line-height:1.75;
}
@media(max-width:850px){
 body.wv3 .wv3-hero-title{font-size:clamp(55px,12vw,102px)}
}
@media(max-width:600px){
 body.wv3 .wv3-hero-title{font-size:clamp(43px,11.6vw,73px);line-height:1.19;
    letter-spacing:-.065em;margin-block:25px 20px!important}
 body.wv3 .wv3-philosophy-main p{width:100%;margin-block-start:22px}
}
@media(max-width:390px){body.wv3 .wv3-hero-title{font-size:clamp(39px,10.9vw,52px)}}
html[dir="rtl"] body.wv3 .wv3-hero-title{
  letter-spacing:0;line-height:1.36;
  overflow-wrap:anywhere;
  padding-block:.14em;
}
html[dir="rtl"] body.wv3 .wv3-hero-title .wv-word-shell{overflow:visible;padding-inline:0;margin-inline:0}
html[dir="rtl"] body.wv3 .wv3-philosophy-main p{align-self:flex-start;text-align:start;margin-inline:0!important}
@media(max-width:600px){html[dir="rtl"] body.wv3 .wv3-hero-title{font-size:clamp(38px,9.7vw,65px);line-height:1.45}}
