/* MINEVI GROUP — existing V4 visual identity; technical stabilization V0.2. */
:root{--navy:#080e1b;--navy2:#101c31;--gold:#d9b779;--ivory:#f6f3ed;--ink:#121c2c;--muted:#a8b1c0;--line:#ffffff20;--gutter:clamp(22px,6vw,110px)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:94px}body{margin:0;background:var(--navy);color:var(--ivory);font-family:Arial,Helvetica,sans-serif;line-height:1.7}button,input,select,textarea{font:inherit}button,a,summary{touch-action:manipulation;-webkit-tap-highlight-color:transparent}button,summary{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}img{max-width:100%}a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--gold);outline-offset:6px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #947039;outline-offset:3px}h1,h2,h3,p{margin-top:0}header{height:95px;padding:10px var(--gutter);display:flex;align-items:center;gap:28px;position:sticky;top:0;z-index:40;border-bottom:1px solid var(--line);background:#080e1bf2;backdrop-filter:blur(18px)}.brand{display:flex;align-items:center;margin-right:auto;background:var(--ivory);padding:3px 9px;border:1px solid #d9b77950}.brand img{display:block;width:62px;height:63px;object-fit:contain}nav{display:flex;align-items:center;gap:clamp(18px,2.2vw,36px);font-size:12px}nav>a{position:relative;padding:13px 0;color:#d2d7df;transition:color .25s}nav>a:not(.nav-cta):after{content:'';position:absolute;height:2px;bottom:3px;left:0;width:100%;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .25s}nav>a:hover,nav>a.is-current{color:var(--gold)}nav>a:hover:after,nav>a.is-current:after{transform:scaleX(1)}.nav-cta{border:1px solid #d9b77970;padding:11px 17px;display:flex;gap:22px;color:var(--gold);transition:background .25s,color .25s}.nav-cta:hover{background:var(--gold);color:var(--navy)}.header-tools{display:flex;align-items:center;gap:15px}.lang-toggle{border:0;border-left:1px solid var(--line);background:none;padding:8px 0 8px 24px;font-size:11px;font-weight:bold;min-width:44px;color:var(--gold)}.menu{display:none}.reading-progress{height:2px;width:0;background:var(--gold);position:fixed;top:94px;left:0;z-index:50}.hero{position:relative;min-height:min(790px,calc(100svh - 95px));padding:65px var(--gutter) 85px;display:grid;grid-template-columns:1.1fr 1fr;gap:5%;align-items:center;background:radial-gradient(ellipse at 65% 55%,#1d293b44,transparent 60%),var(--navy);overflow:hidden}.hero:before{content:'';position:absolute;left:48%;top:0;height:100%;border-left:1px solid #d9b7790c;transform:rotate(25deg);pointer-events:none}.eyebrow{font-size:10px;letter-spacing:.24em;font-weight:600;color:var(--gold);line-height:1.7;text-transform:uppercase}.hero .eyebrow{margin:0 0 32px}.hero h1{font-size:clamp(64px,7.5vw,116px);font-weight:500;letter-spacing:-.065em;line-height:1.02;margin:0 0 30px}.hero h1 em{color:var(--gold);font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.055em}h2{font-weight:500;font-size:clamp(35px,4.2vw,63px);line-height:1.12;letter-spacing:-.045em;margin:18px 0 26px}.hero-intro{font-size:16px;line-height:1.9;color:#b2bbca;max-width:475px;margin-bottom:30px}.hero-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.btn{display:inline-flex;justify-content:space-between;align-items:center;gap:28px;padding:16px 23px;background:var(--gold);color:var(--navy);font-size:11px;font-weight:bold;letter-spacing:.04em;border:1px solid var(--gold);transition:background .25s,transform .25s,box-shadow .25s;min-height:51px}.btn:hover{background:#efd2a0;transform:translateY(-3px);box-shadow:0 10px 30px #d9b77915}.hero-link{font-size:11px;color:var(--ivory);display:inline-flex;gap:20px;padding:10px 0;border-bottom:1px solid #d9b77960;transition:color .25s,border-color .25s}.hero-link:hover{color:var(--gold);border-color:var(--gold)}.hero-motto{font-size:9px;letter-spacing:.22em;margin:40px 0 0;color:#94a0b2}.hero-motto b{color:var(--gold);margin:0 10px}.hero-brand{position:relative;width:100%;max-width:565px;justify-self:end;padding:0 0 15px}.logo-frame{position:relative;border:1px solid #c6a36a60;box-shadow:0 28px 80px #0005}.logo-frame:before,.logo-frame:after{content:'';position:absolute;width:28px;height:28px;pointer-events:none;z-index:1}.logo-frame:before{left:-6px;top:-6px;border-top:2px solid var(--gold);border-left:2px solid var(--gold)}.logo-frame:after{right:-6px;bottom:-6px;border-bottom:2px solid var(--gold);border-right:2px solid var(--gold)}.logo-frame img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain}.brand-caption{display:flex;justify-content:space-between;gap:12px;font-size:8px;letter-spacing:.15em;color:#9ca7b8;margin-top:20px}.brand-caption span:last-child{color:var(--gold);letter-spacing:.05em}.hero-bottom{position:absolute;bottom:22px;left:var(--gutter);right:var(--gutter);display:flex;justify-content:space-between;font-size:8px;letter-spacing:.2em;color:#8a96a8}.hero-bottom a{display:flex;align-items:center;gap:25px}.hero-bottom a span{font-size:18px;color:var(--gold)}.section{padding:95px var(--gutter)}.light{background:var(--ivory);color:var(--ink)}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:11%;align-items:center}.intro-grid .eyebrow,.light .eyebrow{color:#8b642d}.rule{height:1px;background:#15213b20;margin:28px 0}.lead{color:var(--muted);font-size:16px;line-height:1.85;max-width:620px}.light .lead{color:#626d7b}.statement{font-size:clamp(24px,2.65vw,40px);line-height:1.5;letter-spacing:-.04em;margin-bottom:20px}.statement em{color:#95703b;font-style:normal}.mini{font-size:10px;letter-spacing:.12em;color:#6f7781;line-height:1.8}.group-context{font-size:12px;line-height:1.9;color:#67717d;max-width:420px;margin:24px 0 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:40px}.section-head h2{margin-bottom:0}.compact{max-width:300px;font-size:13px;margin-bottom:4px}.section-head .lead{max-width:310px;font-size:13px}.services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.service{padding:30px;background:linear-gradient(145deg,#142035,#0d1728);border:1px solid #ffffff16;position:relative;transition:transform .3s,border-color .3s,box-shadow .3s}.service:hover,.service:focus-within{border-color:#d9b77990;transform:translateY(-7px);box-shadow:0 20px 35px #0003}.service .num{font-size:9px;letter-spacing:.22em;color:var(--gold);display:flex;justify-content:space-between}.service .num:after{content:'↗';font-size:18px}.logo-panel,.division-heading{height:108px;margin-top:25px;display:flex;align-items:center;justify-content:center;background:var(--ivory);padding:18px}.division-logo{width:100%;max-width:185px;height:70px;object-fit:contain}.creativ-heading{background:none;border:1px solid #d9b77955;flex-direction:column;color:var(--ivory);line-height:1.35}.creativ-heading>span{font-size:12px;letter-spacing:.4em}.creativ-heading strong{font-size:32px;font-weight:500;letter-spacing:-.04em}.service h3{font-size:22px;line-height:1.3;font-weight:500;margin:25px 0 13px;letter-spacing:-.035em}.service p{font-size:12px;line-height:1.9;color:#aeb8c9;margin:0}.service details{margin-top:24px;padding-top:17px;border-top:1px solid var(--line);font-size:11px}.service summary{display:flex;justify-content:space-between;list-style:none;min-height:30px;align-items:center}.service summary::-webkit-details-marker{display:none}.service summary>span:last-child{font-size:18px;color:var(--gold)}.service details[open] summary>span:last-child{transform:rotate(45deg)}.service ul{padding-left:15px;line-height:2;color:#aeb8c9}.service-link{display:inline-block;color:var(--gold);padding:10px 0}.status{display:inline-block;font-size:8px;letter-spacing:.14em;color:var(--gold);border:1px solid #d9b77950;padding:4px 7px;margin-bottom:12px}.internal-head{margin-top:38px;padding-top:25px;border-top:1px solid var(--line)}.internal-services{display:grid;grid-template-columns:1fr 1fr;gap:30px}.internal-services .service{padding:0;background:none;border:0;box-shadow:none;transform:none}.internal-services .service h3{font-size:15px;margin:5px 0 8px;color:#d4dbe5}.internal-services .service p{font-size:11px;max-width:440px}.showcase{background:#0e192b;border-top:1px solid var(--line)}.discipline-tabs{display:flex;border-bottom:1px solid #ffffff25;gap:40px}.discipline-tabs button{background:none;border:0;padding:17px 0;color:#8c99ac;font-size:13px;position:relative;text-align:left}.discipline-tabs button[aria-selected=true]{color:var(--gold)}.discipline-tabs button:after{content:'';height:2px;background:var(--gold);position:absolute;bottom:-1px;left:0;right:0;transform:scaleX(0);transition:transform .25s}.discipline-tabs button[aria-selected=true]:after{transform:scaleX(1)}.discipline-panel{display:grid;grid-template-columns:1.2fr 1fr;gap:50px;align-items:center;padding:32px 0 42px}.discipline-panel h3{font-size:31px;line-height:1.22;font-weight:500;letter-spacing:-.035em;margin:18px 0}.discipline-panel p{font-size:13px;color:#aeb8c9;max-width:380px;line-height:1.85}.discipline-panel .tag{font-size:8px;color:var(--gold);letter-spacing:.22em}.discipline-art{height:245px;position:relative;overflow:hidden;background:#131f32;border:1px solid #ffffff16}.art-architecture{background:linear-gradient(130deg,#192a3c,#0d1828)}.architecture-lines{position:absolute;inset:32px 20% 0;transform:skewY(-9deg);border:1px solid #d9b77990;border-bottom:none;background:linear-gradient(90deg,transparent 49.8%,#d9b77970 50%,transparent 50.2%)}.architecture-lines:before{content:'';position:absolute;inset:32px -35px -10px 45px;border:1px solid #d9b77970;background:repeating-linear-gradient(0deg,transparent 0px,transparent 35px,#d9b77930 36px,transparent 37px)}.architecture-lines:after{content:'';position:absolute;top:60px;left:-80px;width:140%;height:80px;border-top:1px solid #d9b77940;border-bottom:1px solid #d9b77940;transform:skewY(20deg)}.art-design{display:flex;align-items:center;justify-content:center;background:#e7dfd1}.design-shapes{width:140px;height:150px;position:relative;border:1px solid #a77f42;transform:rotate(-12deg);background:#0e192b;box-shadow:30px 12px 0 #d9b779}.design-shapes:before{content:'';position:absolute;inset:24px;border:1px solid #d9b779;border-radius:50%}.design-shapes:after{content:'';position:absolute;width:110px;top:65px;left:15px;border-top:1px solid #d9b779;transform:rotate(-45deg)}.art-film{background:radial-gradient(ellipse at 50% 70%,#8f713e55,transparent 65%),#080e1b}.film-frames{position:absolute;inset:35px 16%;border:1px solid #d9b77980;box-shadow:0 0 80px #d9b77910}.film-frames:before,.film-frames:after{content:'';position:absolute;left:-15px;right:-15px;height:18px;background:repeating-linear-gradient(90deg,transparent,transparent 13px,#d9b77960 14px,#d9b77960 24px,transparent 25px);border-top:1px solid #d9b77950;border-bottom:1px solid #d9b77950}.film-frames:before{top:-23px}.film-frames:after{bottom:-23px}.film-frames span{position:absolute;inset:0;display:grid;place-items:center;font-family:Georgia,serif;font-size:54px;color:var(--gold);opacity:.9}.art-label{position:absolute;bottom:10px;left:12px;z-index:1;font-size:7px;letter-spacing:.15em;color:#aab5c4}.art-design .art-label{color:#5b5141}.portfolio-heading{border-top:1px solid var(--line);padding-top:30px;display:flex;align-items:center;justify-content:space-between;gap:20px}.portfolio-heading h3{font-size:18px;font-weight:400;margin:0}.filters{display:flex;flex-wrap:wrap;gap:7px}.filters button{border:1px solid #ffffff20;color:#98a5b7;background:none;padding:7px 13px;font-size:9px;border-radius:20px}.filters button[aria-pressed=true]{background:var(--gold);border-color:var(--gold);color:var(--navy)}.portfolio-empty{margin-top:25px;border-left:2px solid var(--gold);background:#142035;display:grid;grid-template-columns:1fr 1fr;gap:50px;padding:32px}.portfolio-empty .eyebrow{font-size:8px}.portfolio-empty>div>p:not(.empty-note){font-size:25px;line-height:1.3;font-weight:400;letter-spacing:-.025em;margin:14px 0 0}.empty-note{font-size:12px;line-height:1.9;color:#aeb8c9;max-width:340px}.portfolio-empty .hero-link{color:var(--gold)}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:25px}.gallery:empty{display:none}.work-card{border:1px solid #ffffff20;background:#142035;padding:0;text-align:left;transition:transform .25s,border-color .25s}.work-card:hover{transform:translateY(-5px);border-color:var(--gold)}.work-card img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.work-card>div{padding:22px}.work-card h3{font-size:20px}.work-card p{font-size:12px;color:var(--muted)}.offers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin-top:45px}.offer{padding:0 25px 0 0;border-right:1px solid #121c2c25}.offer:last-child{border-right:0}.offer .icon{color:#94703c;font-size:28px}.offer h3{font-size:19px;font-weight:500;margin:18px 0}.offer p{color:#626d7b;font-size:12px;line-height:1.9;margin:0}.contact{display:grid;grid-template-columns:1fr 1fr;gap:8%;background:radial-gradient(ellipse at 10% 70%,#1f30454a,transparent 65%),var(--navy)}.contact h2{font-size:clamp(40px,4.8vw,72px);margin:24px 0}.contact h2 em{font-family:Georgia,serif;font-weight:400;color:var(--gold)}.contact .lead{font-size:13px;max-width:380px}.contact .btn{margin:12px 0 25px}.contact-details{display:flex;flex-direction:column;gap:9px;font-size:12px;color:#aeb8c9}.contact-details a{width:fit-content}.contact-details a:hover{color:var(--gold)}form{align-self:start;background:var(--ivory);color:var(--ink);padding:35px}form .eyebrow{color:#8b642d}.form-head{display:flex;align-items:center;justify-content:space-between}.form-head>span:last-child{font-size:23px;color:#95703b}form h3{font-size:27px;font-weight:500;letter-spacing:-.035em;margin:20px 0}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{font-size:10px;display:block;margin:14px 0 7px}input,select,textarea{width:100%;background:transparent;color:var(--ink);border:0;border-bottom:1px solid #16233a40;padding:8px 0 10px;font-size:13px;border-radius:0}select{padding-right:18px}textarea{resize:vertical}select option{background:var(--ivory)}.form-note{font-size:9px;line-height:1.8;color:#6a717c;margin:20px 0 6px}form .btn{width:100%;margin-bottom:0!important;background:var(--navy);color:var(--ivory);border-color:var(--navy)}form .btn:hover{background:#20324c}#form-status{font-size:10px;margin:12px 0 0;line-height:1.7}footer{padding:32px var(--gutter);display:flex;align-items:center;gap:30px;border-top:1px solid var(--line);font-size:10px;color:#9ba6b7}footer .footer-brand{background:var(--ivory);padding:5px 9px;display:flex}footer img{width:65px;height:60px;object-fit:contain}footer strong{color:var(--gold);font-size:12px;font-weight:400}footer>div>span{display:block;font-size:9px;margin-top:4px}footer p{margin:0 0 0 auto}footer>a:last-child{margin-left:30px}.floating{position:fixed;bottom:22px;right:24px;z-index:30;background:var(--gold);color:var(--navy);display:flex;align-items:center;gap:9px;border-radius:40px;font-size:11px;font-weight:bold;padding:13px 18px;box-shadow:0 8px 35px #0004;transition:transform .2s}.floating:hover{transform:translateY(-3px)}.skip{position:fixed;top:-100px;background:var(--ivory);color:var(--ink);z-index:100;padding:12px}.skip:focus{top:0}dialog{width:min(1000px,94vw);max-height:90svh;background:var(--navy2);color:var(--ivory);border:1px solid #d9b77970;padding:40px 25px 25px}dialog::backdrop{background:#02060de8;backdrop-filter:blur(6px)}dialog img,dialog video,dialog iframe{width:100%;max-height:70svh;object-fit:contain;display:block}dialog iframe{aspect-ratio:16/9;border:0}dialog h3{font-weight:500;margin:0 35px 20px 0;font-size:23px}#close-viewer{position:absolute;right:12px;top:4px;border:0;background:none;color:var(--gold);font-size:30px;width:40px;height:40px}.reveal{opacity:1;transform:none}body.motion-ready .reveal{transition:opacity .6s,transform .6s}body.motion-ready .reveal:not(.visible){opacity:0;transform:translateY(20px)}
@media(min-width:1650px){:root{--gutter:max(6vw,calc((100vw - 1450px)/2))}.hero{min-height:800px}}@media(max-width:1100px){nav{gap:18px}.nav-cta{font-size:10px;padding:11px}.hero{gap:4%;padding-top:50px;padding-bottom:80px;min-height:650px}.hero h1{font-size:83px}.hero-intro{font-size:14px}.hero-actions{gap:15px}.hero-motto{font-size:8px;letter-spacing:.13em}.service{padding:23px}.service h3{font-size:20px}.logo-panel,.division-heading{height:95px}.contact{gap:5%}form{padding:27px}.discipline-panel{gap:35px}}
@media(max-width:850px){header{height:82px}.brand img{width:53px;height:54px}.reading-progress{top:81px}html{scroll-padding-top:81px}nav{display:none;position:absolute;top:81px;left:0;right:0;padding:20px var(--gutter) 30px;background:#0b1524fa;border-bottom:1px solid #d9b77950;box-shadow:0 25px 50px #0004;flex-direction:column;align-items:stretch;gap:5px}nav.open{display:flex}nav>a{font-size:14px;padding:13px 0}.nav-cta{justify-content:space-between;margin-top:12px;padding:14px 18px}nav>a:not(.nav-cta):after{width:50px}.header-tools{margin-left:0}.menu{display:flex;flex-direction:column;justify-content:center;gap:6px;background:none;border:0;width:44px;height:44px;padding:10px}.menu>span{display:block;background:var(--ivory);width:24px;height:1px;transition:transform .25s}.menu[aria-expanded=true]>span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu[aria-expanded=true]>span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.lang-toggle{border:1px solid #d9b77950;min-width:43px;padding:10px}.hero{min-height:580px}.hero h1{font-size:70px}.hero .eyebrow{font-size:8px;letter-spacing:.18em}.hero-intro{font-size:13px}.hero .btn{font-size:10px;padding:14px 17px;gap:18px}.hero-link{font-size:10px}.hero-motto b{margin:0 5px}.hero-motto{font-size:7px}.section{padding-top:75px;padding-bottom:75px}.services{gap:12px}.service{padding:18px}.service p{font-size:11px}.service h3{font-size:18px}.service summary{font-size:10px}.creativ-heading strong{font-size:26px}.division-heading>span{font-size:9px}.intro-grid{gap:7%}.offers{gap:20px}.offer{padding-right:15px}.offer h3{font-size:17px}.contact{grid-template-columns:1fr 1fr;gap:30px}.form-row{grid-template-columns:1fr;gap:0}footer{gap:20px}footer>a:last-child{margin-left:0}.floating{right:18px;bottom:18px}}
@media(max-width:650px){:root{--gutter:24px}.hero{grid-template-columns:1fr;gap:37px;padding-top:42px;padding-bottom:65px;min-height:0}.hero .eyebrow{font-size:8px;letter-spacing:.18em;margin-bottom:23px}.hero h1{font-size:clamp(63px,17vw,92px);line-height:1.02;margin-bottom:24px}.hero-intro{font-size:14px;line-height:1.85;max-width:440px;margin-bottom:25px}.hero-actions{gap:19px}.hero .btn{padding:15px 19px;font-size:10px;min-height:49px}.hero-link{font-size:10px}.hero-motto{font-size:8px;letter-spacing:.13em;margin:27px 0 0}.hero-motto b{margin:0 8px}.hero-brand{width:86%;max-width:390px;justify-self:center;padding:0 0 10px}.brand-caption{margin-top:15px;font-size:7px;letter-spacing:.12em}.hero-bottom{bottom:15px;font-size:7px}.hero-bottom a{gap:15px}.hero-bottom>span{display:none}.section{padding-top:62px;padding-bottom:62px}h2{font-size:38px;line-height:1.15;margin:15px 0 22px}.intro-grid{grid-template-columns:1fr;gap:25px}.identity .lead{font-size:14px}.identity .statement{font-size:29px;margin:0 0 18px}.group-context{font-size:11px;margin-top:20px}.intro-grid .rule{margin:24px 0}.section-head{display:block;margin-bottom:30px}.section-head .lead{max-width:100%;margin-top:22px;font-size:12px}.services{grid-template-columns:1fr;gap:18px}.service{padding:26px}.service .num{font-size:9px}.logo-panel,.division-heading{height:100px;margin-top:20px}.division-logo{max-width:210px;height:70px}.service h3{font-size:24px;margin-top:22px}.service p{font-size:12px}.service summary{font-size:11px}.service details{margin-top:20px}.creativ-heading>span{font-size:11px}.creativ-heading strong{font-size:31px}.internal-services{grid-template-columns:1fr;gap:24px}.internal-services .service h3{font-size:16px}.internal-head{margin-top:32px}.discipline-tabs{gap:22px;justify-content:space-between}.discipline-tabs button{font-size:10px;min-height:48px;padding:15px 0}.discipline-panel{grid-template-columns:1fr;gap:25px;padding:25px 0 30px}.discipline-art{height:210px}.discipline-panel h3{font-size:29px;margin:14px 0}.discipline-panel p{font-size:12px;margin-bottom:10px}.portfolio-heading{display:block;padding-top:25px}.portfolio-heading h3{font-size:19px}.filters{margin-top:18px;gap:7px}.filters button{font-size:9px;padding:8px 12px}.portfolio-empty{grid-template-columns:1fr;gap:23px;padding:25px}.portfolio-empty>div>p:not(.empty-note){font-size:24px}.empty-note{font-size:11px;margin-bottom:8px}.offers{grid-template-columns:1fr;gap:27px;margin-top:32px}.offer{border-right:0;border-bottom:1px solid #121c2c22;padding:0 0 25px;display:grid;grid-template-columns:38px 1fr;gap:0 18px}.offer:last-child{border-bottom:0;padding-bottom:0}.offer h3{font-size:19px;margin:5px 0 10px}.offer p{grid-column:2;font-size:12px}.offer .icon{font-size:26px}.contact{grid-template-columns:1fr;gap:35px}.contact h2{font-size:48px;margin:20px 0 24px}.contact .lead{font-size:13px}.contact .btn{font-size:11px}.contact-details{font-size:12px}form{padding:26px}.form-row{grid-template-columns:1fr}form h3{font-size:27px;margin:16px 0}label{font-size:10px;margin-top:17px}input,select,textarea{font-size:16px}form .btn{font-size:10px!important}footer{padding-top:26px;padding-bottom:90px;gap:23px;flex-wrap:wrap}footer p{margin:0;font-size:9px;width:55%}footer>a:last-child{margin-left:auto;font-size:9px}footer .footer-brand img{width:57px;height:54px}.floating{padding:12px 15px;font-size:10px;gap:7px}.floating svg{width:18px;height:18px}.gallery{grid-template-columns:1fr}.work-card>div{padding:20px}dialog{padding:48px 18px 20px;max-width:94vw}dialog h3{font-size:20px}}
@media(max-width:360px){:root{--gutter:19px}.hero h1{font-size:60px}.hero-actions{gap:12px}.hero .btn{padding:14px;font-size:9px}.hero-link{font-size:9px}.hero-brand{width:92%}.hero-motto{font-size:7px}.hero-motto b{margin:0 5px}.discipline-tabs{gap:10px}}
@media(hover:none){.service:hover{transform:none;box-shadow:none}.btn:hover{transform:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}body.motion-ready .reveal:not(.visible){opacity:1;transform:none}}
[hidden]{display:none!important}
.hero-bottom a>span{font-size:inherit;color:inherit}.hero-bottom a>span[aria-hidden]{font-size:18px;color:var(--gold)}
/* Image 1 approved: a complete scene with its integrated gold logo. */
.hero{isolation:isolate;grid-template-columns:1fr;min-height:740px;background:#080e1b}.hero:before{display:none}.hero-copy{position:relative;z-index:2;max-width:48%}.hero-brand{position:absolute;inset:0;z-index:-1;max-width:none;width:100%;height:100%;padding:0;pointer-events:none}.hero-scene{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.hero-bottom{z-index:2}.hero-intro{max-width:440px}.hero .hero-link{background:#080e1b20}.hero h1{font-size:clamp(64px,7.1vw,108px)}
@media(min-width:1650px){.hero{min-height:850px}}@media(min-width:651px) and (max-width:1100px){.hero{min-height:650px}.hero-copy{max-width:49%}.hero h1{font-size:clamp(60px,7.5vw,80px)}.hero-intro{font-size:13px}.hero-actions{gap:13px}}@media(max-width:650px){.hero{display:flex;flex-direction:column;align-items:stretch;gap:25px;padding-bottom:48px;min-height:0;overflow:hidden}.hero-copy{max-width:none}.hero h1{font-size:clamp(63px,17vw,92px)}.hero-brand{position:relative;inset:auto;z-index:0;width:calc(100% + 48px);height:390px;margin:0 -24px;max-width:none;justify-self:auto}.hero-scene{object-fit:cover;object-position:83% center}.hero .hero-link{background:none}.hero-bottom{bottom:12px}.hero-motto{margin-bottom:0}}@media(max-width:360px){.hero h1{font-size:60px}.hero-brand{height:355px;width:calc(100% + 38px);margin:0 -19px}}
/* Harmonisation : typographie, grille et rythme communs. */
:root{--font-text:Arial,Helvetica,sans-serif;--font-accent:Georgia,'Times New Roman',serif;--size-body:14px;--size-small:12px;--section-space:88px;--column-gap:32px}
body{font-family:var(--font-text);font-size:var(--size-body);line-height:1.8;-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--font-text);font-weight:500;text-wrap:balance}h2{font-size:clamp(36px,3.7vw,54px);line-height:1.16;letter-spacing:-.045em;margin:18px 0 26px}h3{line-height:1.35;letter-spacing:-.025em}.hero h1 em,.contact h2 em{font-family:var(--font-accent)}.eyebrow{font-size:10px;line-height:1.6;letter-spacing:.2em}.section{padding-top:var(--section-space);padding-bottom:var(--section-space)}.section-head{margin-bottom:36px;gap:var(--column-gap);align-items:flex-end}.section-head .lead{font-size:var(--size-body);line-height:1.8;margin-bottom:4px}.lead,.identity .lead{font-size:15px;line-height:1.85}.group-context,.service p,.offer p,.discipline-panel p,.contact .lead{font-size:var(--size-body);line-height:1.8}.intro-grid{gap:8%;align-items:start}.statement{font-size:clamp(25px,2.4vw,35px);line-height:1.5;letter-spacing:-.035em;margin:26px 0 20px}.mini{font-size:10px;line-height:1.7}.services{gap:24px;align-items:stretch}.services>.service{padding:28px;display:flex;flex-direction:column}.services .logo-panel{height:116px;margin:22px 0 0;background:#fff}.services .division-logo{width:100%;max-width:210px;height:78px;object-fit:contain}.services .service h3{font-size:23px;margin:24px 0 14px}.services .service>p{min-height:5.4em;margin-bottom:22px}.services .service details{margin-top:auto;padding-top:18px;font-size:12px}.services .service summary{font-size:12px;min-height:34px}.services .service ul{font-size:12px;line-height:1.9}.services .status{position:absolute;top:29px;right:28px;margin:0;font-size:7px;padding:3px 5px}.services .service:has(.status) .num:after{visibility:hidden}.internal-services{gap:32px}.internal-services .service h3{font-size:17px;line-height:1.4;margin:0 0 10px}.internal-services .service p{font-size:13px;line-height:1.8}.internal-head{margin-top:34px;padding-top:24px}.offers{gap:32px;margin-top:36px}.offer{padding-right:28px}.offer h3{font-size:21px;margin:18px 0 14px}.offer .icon{height:44px;display:flex;align-items:center;font-size:28px}.contact{gap:8%;align-items:start}.contact h2{font-size:clamp(38px,4vw,58px);line-height:1.16}.contact-details{font-size:13px;gap:9px}form{padding:32px}form h3{font-size:27px;line-height:1.3;margin:18px 0 24px}label{font-size:12px;line-height:1.5;margin:16px 0 8px}.form-note{font-size:11px;line-height:1.75;margin-top:22px}input,select,textarea{font-size:14px;line-height:1.6;min-height:42px}.btn,.hero-link,.nav-cta{font-size:12px;line-height:1.5}.btn{min-height:50px;padding:15px 22px}.hero-actions{gap:24px}.hero .btn,.hero .hero-link{font-size:12px}nav{font-size:13px}nav a{white-space:nowrap}.hero-intro{font-size:15px;line-height:1.85}.hero-motto{font-size:9px;line-height:1.7}.portfolio-heading{border-top:none;padding-top:0;gap:24px;align-items:center;margin:6px 0 26px}.portfolio-heading h3{font-size:21px;line-height:1.4}.filters{gap:8px}.filters button{font-size:11px;line-height:1.5;padding:8px 15px;min-height:36px}.gallery{gap:24px;margin-top:0}.media-placeholder{border:1px solid #d9b77935;background:#101c2f;min-width:0}.media-slot{aspect-ratio:4/3;position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;color:#8d9aae;background:linear-gradient(145deg,#142138,#0e192b);font-size:11px;letter-spacing:.08em;border-bottom:1px solid #ffffff16}.media-placeholder:last-child .media-slot{aspect-ratio:4/3}.slot-symbol{font-size:32px;line-height:1;font-weight:300;color:#bd9a60}.frame-corners{position:absolute;inset:20px;border:1px dashed #d9b77930;pointer-events:none}.slot-caption{padding:20px 22px}.slot-caption h3{font-size:18px;font-weight:500;margin:0 0 7px}.slot-caption>span{font-size:11px;color:#8d9aae}.gallery-notice{font-size:11px;line-height:1.8;color:#8d9aae;margin:20px 0 0}.work-card h3{font-size:21px}.work-card p{font-size:14px;line-height:1.8}footer{font-size:11px}footer>div>span{font-size:10px}.gallery .media-placeholder:only-child{max-width:500px;width:100%;grid-column:1/-1}
@media(min-width:851px) and (max-width:1100px){nav{gap:16px;font-size:12px}.nav-cta{font-size:11px}.services{gap:16px}.services>.service{padding:22px}.services .status{right:22px;top:25px;font-size:6px}.services .service h3{font-size:21px}.services .service>p{min-height:7.2em}.services .service summary{font-size:11px}.hero-actions{gap:18px}.hero .btn,.hero .hero-link{font-size:11px}.contact{gap:32px}}
@media(min-width:651px) and (max-width:850px){.services{gap:14px}.services>.service{padding:18px}.services .status{position:static;align-self:start;margin:-6px 0 10px}.services .service h3{font-size:19px;min-height:2.7em}.services .service p{font-size:13px;min-height:9em}.services .logo-panel{height:100px}.services .service details,.services .service summary{font-size:11px}.offers{gap:24px}.offer h3{font-size:18px;min-height:2.7em}.offer p{font-size:13px}.contact{grid-template-columns:1fr;gap:36px}.contact-copy{max-width:580px}.form-row{grid-template-columns:1fr 1fr}.hero .hero-link{font-size:11px}}
@media(max-width:650px){:root{--section-space:60px}.section-head{margin-bottom:30px}.section-head .lead{font-size:14px;max-width:none;margin-top:20px}h2{font-size:36px;line-height:1.18;margin:16px 0 22px}.identity .lead,.hero-intro,.contact .lead{font-size:14px;line-height:1.85}.intro-grid{gap:22px}.statement{font-size:28px;margin:0 0 18px;line-height:1.5}.group-context{font-size:13px;line-height:1.85}.services{gap:20px}.services>.service{padding:26px}.services .logo-panel{height:112px;margin-top:22px}.services .division-logo{max-width:220px;height:80px}.services .service h3{font-size:23px;min-height:0;margin:22px 0 14px}.services .service>p{font-size:14px;min-height:0;margin-bottom:22px}.services .service details,.services .service summary{font-size:12px}.services .status{top:28px;right:26px;font-size:7px}.internal-services{gap:26px}.internal-services .service p{font-size:13px}.offer h3{font-size:21px;min-height:0;margin:5px 0 12px}.offer p{font-size:14px}.offer .icon{height:36px}.offers{gap:26px}.offer{padding:0 0 26px}.contact{gap:32px}.contact h2{font-size:40px}.btn,.hero .btn,.hero-link,.hero .hero-link{font-size:11px}.hero-actions{gap:20px}.hero .btn{padding:15px 18px}.hero h1{line-height:1.04}.hero-motto{font-size:8px}form{padding:26px}form h3{font-size:26px}.form-row{grid-template-columns:1fr}input,select,textarea{font-size:16px}label{font-size:12px}.form-note{font-size:11px}form .btn{font-size:11px!important}.portfolio-heading{display:block;margin-bottom:24px}.portfolio-heading h3{font-size:21px}.filters{margin-top:18px}.filters button{font-size:10px;padding:8px 13px;min-height:36px}.gallery{grid-template-columns:1fr;gap:22px}.slot-caption h3{font-size:20px}.slot-caption{padding:20px 22px}.media-slot{aspect-ratio:4/3}.gallery-notice{font-size:11px;margin-top:20px}.gallery .media-placeholder:only-child{max-width:none}nav>a{font-size:14px}footer{font-size:10px}.contact-details{font-size:13px}}
@media(max-width:360px){.hero-actions{gap:13px}.hero .btn{padding:14px;font-size:10px}.hero .hero-link{font-size:10px}.services>.service{padding:22px}.services .status{right:22px;top:26px}.filters{gap:6px}.filters button{padding:8px 10px;font-size:9px}h2{font-size:33px}}
/* V0.2 — interaction, reflow and accessibility; existing palette preserved. */
:root{--header-height:95px}
html{scroll-padding-top:calc(var(--header-height) + 16px)}
section[id]{scroll-margin-top:16px}
section[tabindex="-1"]:focus,main[tabindex="-1"]:focus{outline:none}
.skip{z-index:100}
header,main,footer{min-width:0}
.intro-grid>*,.services>*,.contact>*,.discipline-panel>*,.form-row>*{min-width:0}
p,h2,h3,.contact-details a,.slot-caption{overflow-wrap:break-word}
input,select,textarea{max-width:100%}
textarea{resize:vertical}
.menu,.lang-toggle,.filters button,.service summary,.discipline-tabs button,.contact-copy-button,.contact-email{min-height:44px}
.field-error{color:#9d302b;font-size:12px;line-height:1.6;margin:6px 0 0}
[aria-invalid="true"]{border-bottom:2px solid #9d302b}
#form-status,#copy-status{font-size:13px;line-height:1.7;overflow-wrap:anywhere}
.contact-result{border-top:1px solid #16233a35;margin-top:24px;padding-top:10px}
#prepared-message{background:#fff8;border:1px solid #16233a35;padding:12px;min-height:180px;font-size:14px;white-space:pre-wrap}
.contact-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:18px}
.contact-actions .btn{margin:0}
.contact-copy-button{color:var(--ink);background:transparent;border:1px solid #16233a55;padding:10px 14px;font-size:12px}
.contact-email{display:inline-flex;align-items:center;border-bottom:1px solid #16233a55;font-size:12px}
.viewer-open{overflow:hidden}
dialog::backdrop{background:#000b}
dialog{overscroll-behavior:contain;overflow:auto}
dialog img,dialog video,dialog iframe{display:block;max-width:100%;margin:auto}
dialog iframe{width:100%;aspect-ratio:16/9;border:0}
#close-viewer{min-width:44px;min-height:44px}
.media-error{color:var(--gold);padding-top:16px}
.noscript-note{padding:24px var(--gutter);border-bottom:1px solid var(--gold)}
.noscript-note a{text-decoration:underline}
@media(max-width:1050px){
 :root{--header-height:82px}
 header{height:82px}
 .brand img{width:53px;height:54px}
 .reading-progress{top:81px}
 #nav{display:none;position:absolute;top:81px;left:0;right:0;max-height:calc(100dvh - 82px);overflow-y:auto;overscroll-behavior:contain;padding:20px var(--gutter) 30px;background:#0b1524fa;border-bottom:1px solid #d9b77950;box-shadow:0 25px 50px #0004;flex-direction:column;align-items:stretch;gap:5px}
 #nav.open{display:flex}
 #nav>a{font-size:14px;padding:13px 0;white-space:normal}
 #nav>.nav-cta{justify-content:space-between;margin-top:12px;padding:14px 18px}
 .header-tools{margin-left:0}
 .menu{display:flex;flex-direction:column;justify-content:center;gap:6px;background:none;border:0;width:44px;height:44px;padding:10px}
 .menu>span{display:block;background:var(--ivory);width:24px;height:1px;transition:transform .25s}
 .lang-toggle{border:1px solid #d9b77950;min-width:44px;padding:10px}
 .services{grid-template-columns:repeat(2,minmax(0,1fr))}
 .services>.service:last-child{grid-column:1/-1}
 .services .service>p{min-height:0}
 .services .service h3{min-height:0}
 .services .status{position:static;align-self:start;margin:10px 0 0}
 .contact{grid-template-columns:1fr;gap:36px}
 .form-row{grid-template-columns:1fr 1fr}
 .gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
 .hero-actions{gap:14px}
}
@media(min-width:651px) and (max-width:900px){
 .hero-copy{max-width:64%}
 .hero h1{font-size:clamp(56px,8vw,72px)}
 .hero-intro{font-size:14px}
 .hero-scene{object-position:65% center;opacity:.6}
 .hero-brand:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#080e1be0,transparent)}
 .section-head{align-items:start;gap:24px}
 .section-head .lead{max-width:42%}
 .portfolio-heading{align-items:start;flex-direction:column}
 .filters{margin-top:8px}
}
@media(max-width:650px){
 .services,.gallery,.form-row{grid-template-columns:1fr}
 .services>.service:last-child{grid-column:auto}
 .section-head .lead{max-width:none}
 .hero h1{font-size:clamp(48px,15.7vw,86px)}
 .hero-actions>*{max-width:100%}
 .hero-brand{width:calc(100% + var(--gutter)*2);margin-inline:calc(var(--gutter)*-1)}
 .contact-actions{align-items:stretch;flex-direction:column}
 .contact-actions>*{justify-content:center;text-align:center}
 input,select,textarea,#prepared-message{font-size:16px}
 .floating{max-width:calc(100vw - 36px)}
 .contact-details a{overflow-wrap:anywhere}
 footer{padding-bottom:100px}
}
@media(max-width:360px){
 :root{--gutter:18px}
 .hero h1{font-size:48px}
 form{padding:20px}
 .filters{gap:6px}
 .filters button{padding-inline:10px;font-size:10px}
 .section-head h2{font-size:32px}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto!important}
 *,*:before,*:after{animation:none!important;transition:none!important}
 body.motion-ready .reveal:not(.visible){opacity:1;transform:none}
}
