@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--navy:#081d3b;--navy2:#102c52;--blue:#1c6896;--cyan:#43bbca;--magenta:#a51a51;--text:#182b43;--muted:#647286;--white:#fff;--cream:#f7f9fc;--line:#e4eaf1;--radius:14px;--shadow:0 20px 80px rgba(8,29,59,.12)}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;color:var(--text);font-family:'DM Sans',Arial,sans-serif;-webkit-font-smoothing:antialiased;background:#fff;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}h1,h2,h3,h4,p{margin-top:0}p{line-height:1.75}h1,h2,h3{font-family:'Manrope',Arial,sans-serif;letter-spacing:-.055em}::selection{background:#abdce6;color:#06182f}.shell{width:min(1170px,calc(100% - 64px));margin:0 auto}.skip{position:absolute;left:-10000px;top:8px;z-index:999;background:#fff;color:#000;padding:14px}.skip:focus{left:12px}.reveal{opacity:0;transform:translateY(28px);transition:opacity .75s ease,transform .75s cubic-bezier(.22,1,.36,1)}.reveal.visible{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}.reveal{opacity:1;transform:none}}
.site-header{position:fixed;inset:0 0 auto;z-index:100;height:94px;background:rgba(255,255,255,.95);backdrop-filter:blur(24px);border-bottom:1px solid rgba(8,29,59,.07);transition:height .25s,box-shadow .25s}.site-header.scrolled{height:76px;box-shadow:0 12px 35px rgba(8,29,59,.075)}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{flex-shrink:0;display:flex;align-items:center}.brand img{width:122px;height:auto}.desktop-nav{display:flex;align-items:center;gap:23px;margin-left:auto}.nav-link{font-size:12.7px;font-weight:800;color:#263952;transition:color .25s;white-space:nowrap;position:relative;padding:8px 0}.nav-link:hover,.nav-link.is-active{color:var(--magenta)}.nav-link::after{content:'';height:2px;background:var(--magenta);bottom:1px;left:0;right:100%;position:absolute;transition:right .25s}.nav-link:hover::after,.nav-link.is-active::after{right:0}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;background:var(--magenta);color:#fff;border:2px solid var(--magenta);border-radius:6px;min-height:55px;padding:0 24px;font-size:13px;font-weight:800;letter-spacing:.01em;white-space:nowrap;box-shadow:0 12px 25px rgba(165,26,81,.15);transition:background .23s,transform .23s,box-shadow .23s}.button:hover{transform:translateY(-3px);background:#83103f;box-shadow:0 17px 27px rgba(165,26,81,.22)}.button span{font-size:19px;font-weight:500}.button-small{padding:0 18px;gap:13px;min-height:42px;font-size:11.5px}.button-small span{font-size:16px}.menu-toggle{display:none;align-items:center;justify-content:center;flex-direction:column;gap:5px;background:transparent;border:0;width:42px;height:42px}.menu-toggle span{width:23px;height:2px;background:var(--navy);border-radius:10px}.mobile-nav{position:absolute;top:100%;left:0;right:0;background:#fff;padding:15px 32px 24px;border-bottom:1px solid var(--line);box-shadow:0 15px 25px rgba(8,29,59,.1)}.mobile-nav a{display:block;padding:12px 0;font-weight:800;font-size:14px;border-bottom:1px solid #eee}.mobile-nav[hidden]{display:none!important}
.overline,.eyebrow{font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--blue);display:inline-flex;align-items:center;gap:12px}.overline i,.eyebrow-line{display:inline-block;width:24px;height:2px;background:var(--magenta);font-style:normal}.overline.light{color:#a9d5ef}.overline.light i{background:var(--cyan)}.section{padding:120px 0}.section h2,.contact-banner h2{font-size:clamp(37px,4.1vw,59px);line-height:1.14;font-weight:800;color:var(--navy);margin:21px 0 25px}.section h2 span,.section-heading h2 span,.portfolio-left h2 span{color:var(--blue)}.section-heading.horizontal{display:flex;align-items:end;justify-content:space-between;gap:60px;margin-bottom:56px}.section-heading p{max-width:365px;color:#607184;font-size:15px;margin-bottom:5px;line-height:1.8}.section-heading h2{margin-bottom:0}.text-arrow{font-size:13px;font-weight:800;display:inline-flex;align-items:center;gap:30px;padding:12px 0;border-bottom:1px solid currentColor;transition:gap .25s,color .25s}.text-arrow:hover{gap:38px;color:var(--magenta)}.dark-arrow{color:var(--navy)}.text-arrow span{font-size:18px}
/* Hero */
.hero{min-height:800px;background:#fff;position:relative;overflow:hidden;padding-top:94px}.hero-layout{display:grid;grid-template-columns:53% 47%;height:650px;align-items:center;position:relative;z-index:3}.hero-copy{align-self:center;position:relative;z-index:5;padding:30px 0 15px}.hero-copy .eyebrow{font-size:10px;color:#52728e;gap:9px;letter-spacing:.11em}.eyebrow b{color:var(--magenta);font-size:15px}.hero h1{font-weight:800;font-size:clamp(65px,6vw,96px);color:var(--navy);line-height:1.02;margin:25px 0 27px;letter-spacing:-.073em}.hero h1 em{font-style:normal;color:var(--blue)}.hero .accent-word{position:relative}.hero .dot{color:var(--magenta)}.hero-copy>p{max-width:490px;color:#637284;font-size:17px;line-height:1.85;margin-bottom:32px}.hero-actions{display:flex;align-items:center;gap:29px;flex-wrap:wrap}.hero-actions .text-arrow{color:var(--navy)}.hero-index{display:flex;align-items:center;gap:10px;font-size:10px;letter-spacing:.17em;font-weight:800;color:#8c9aab;margin-top:42px}.index-dot{width:7px;height:7px;border-radius:100%;background:var(--magenta)}.hero-image-wrap{height:650px;position:relative;align-self:stretch;display:flex;align-items:center;justify-content:center;margin-right:-90px}.eye-backdrop{position:absolute;width:640px;height:570px;border-radius:56% 0 0 55%;background:linear-gradient(155deg,#f0f3f8,#fff 50%);right:0;top:35px}.eye-image{position:relative;z-index:1;width:100%;max-width:none;height:99%;object-fit:cover;object-position:30% center;filter:contrast(1.07);mix-blend-mode:multiply;mask-image:linear-gradient(90deg,transparent 0%,#000 15%,#000 76%,transparent 100%)}.hero-image-caption{position:absolute;bottom:106px;right:58px;z-index:4;background:rgba(255,255,255,.94);padding:16px 22px;border-left:3px solid var(--magenta);display:flex;align-items:center;gap:18px;box-shadow:0 15px 40px rgba(8,29,59,.07)}.hero-image-caption span{color:var(--magenta);font-size:11px;font-weight:800}.hero-image-caption strong{line-height:1.5;font-size:13px}.floating-sticker{position:absolute;z-index:4;right:36px;top:85px;width:115px;height:115px;background:var(--navy);color:white;border-radius:50%;display:flex;align-items:center;justify-content:center;transform:rotate(13deg);box-shadow:0 15px 30px rgba(8,29,59,.15)}.floating-sticker span{font-size:12px;font-weight:800;line-height:1.4;text-align:center;letter-spacing:.035em}.floating-sticker b{position:absolute;bottom:18px;right:29px;color:var(--cyan);font-size:15px}.hero-wave{position:absolute;z-index:4;bottom:-1px;width:100%;height:125px;left:0;pointer-events:none}.hero-lines{position:absolute;inset:0;pointer-events:none}.hero-lines span{position:absolute;border:1px solid #edf2f7;border-radius:50%;width:900px;height:900px;left:-740px;top:120px}.hero-lines span:nth-child(2){left:-715px;top:95px}.hero-lines span:nth-child(3){left:-680px;top:62px}
/* Statement */
.statement-section{background:var(--navy);color:#fff;overflow:hidden;padding:70px 0 88px}.statement-row{display:flex;align-items:end;gap:45px;justify-content:space-between}.statement-row h2{font-family:Manrope,Arial,sans-serif;font-size:clamp(32px,3.5vw,50px);line-height:1.23;letter-spacing:-.06em;margin:18px 0 0}.statement-row h2 span{color:#66cbd2}.statement-row p{max-width:300px;font-size:14px;color:#b9cbe0;margin:0 0 6px}.statement-rule{height:80px;width:1px;background:#597087;flex-shrink:0;margin:0 0 10px}.statement-ticker{margin-top:75px;overflow:hidden;border-top:1px solid rgba(255,255,255,.16);border-bottom:1px solid rgba(255,255,255,.15);padding:17px 0;white-space:nowrap}.statement-ticker div{font-weight:800;font-family:Manrope,sans-serif;font-size:13px;letter-spacing:.28em;color:#99b8d5;word-spacing:20px;text-align:center;min-width:1300px}.statement-ticker span{color:#da4b7d}
/* approach */
.approach-section{background:#fff}.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.section-intro h2{margin-bottom:22px}.section-intro p{font-size:15px;color:#647486;max-width:480px;line-height:1.9}.section-intro .lead{color:var(--navy);font-weight:800;font-size:18px;line-height:1.6}.section-intro .text-arrow{margin-top:15px}.approach-art{position:relative;height:445px;display:grid;place-items:center;background:radial-gradient(ellipse at center,#eef6fb,#f8fafc 60%,#fff 80%);border-radius:35px;overflow:hidden}.art-number{font:800 162px/1 Manrope,Arial,sans-serif;color:#dae8f1;letter-spacing:-.12em;position:absolute;top:27px;left:15px}.art-orbit{position:absolute;border:1px dashed rgba(24,109,151,.45);border-radius:50%;width:300px;height:300px;top:80px;left:calc(50% - 150px)}.orbit-b{width:390px;height:390px;top:35px;left:calc(50% - 195px);opacity:.4}.art-center{position:relative;z-index:2;background:#fff;border-radius:24px;box-shadow:var(--shadow);padding:34px 38px;display:flex;flex-direction:column;align-items:center;gap:23px;text-align:center}.art-center img{width:170px}.art-center small{font-size:11px;color:#59738a;font-weight:700}.orbit-label{position:absolute;z-index:3;background:var(--navy);color:#fff;padding:10px 14px;font-size:11px;font-weight:800;letter-spacing:.04em;border-radius:6px}.label-a{top:90px;right:40px;background:var(--magenta)}.label-b{bottom:68px;right:55px;background:#147daf}.label-c{left:45px;bottom:99px;background:#258d96}.expertise-strip{margin-top:110px;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #e0e8ef;border-bottom:1px solid #e0e8ef}.expertise-item{display:flex;gap:19px;padding:40px 24px 40px 8px}.expertise-item+.expertise-item{border-left:1px solid #e0e8ef;padding-left:30px}.expertise-symbol{width:72px;height:72px;border-radius:21px;flex:0 0 72px;display:grid;place-items:center;color:#fff}.expertise-symbol svg{width:53px;height:53px;fill:none;stroke:currentColor;stroke-width:2.7;stroke-linecap:round;stroke-linejoin:round}.expertise-symbol.blue{background:linear-gradient(130deg,#18558b,#38abd0)}.expertise-symbol.magenta{background:linear-gradient(130deg,#a51a51,#cf6f89)}.expertise-symbol.turquoise{background:linear-gradient(130deg,#1297a4,#78be90)}.expertise-item b{color:var(--magenta);letter-spacing:.09em;font-size:10px}.expertise-item h3{font-size:20px;margin:7px 0 7px;letter-spacing:-.04em}.expertise-item p{color:#7a8895;font-size:12.5px;line-height:1.7;margin:0}
/* Method */
.method-section{background:var(--navy);position:relative;overflow:hidden}.method-glow{position:absolute;right:-260px;top:-280px;height:710px;width:710px;border-radius:50%;border:1px solid rgba(54,131,179,.35);box-shadow:0 0 0 100px rgba(36,104,144,.035),0 0 0 200px rgba(36,104,144,.026)}.light-head h2{color:#fff}.light-head h2 span{color:#62bfca}.light-head p{color:#afc4d8}.method-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.method-card{padding:32px 24px 24px;min-height:325px;border:1px solid rgba(255,255,255,.15);background:linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,.015));border-radius:11px;color:#fff;position:relative;transition:background .3s,transform .3s}.method-card:hover{transform:translateY(-7px);background:rgba(45,114,157,.2)}.method-n{color:#a1b6ca;font-size:11px;font-weight:800;letter-spacing:.08em}.method-icon{font-size:48px;font-weight:500;color:#6ac5cf;height:104px;display:flex;align-items:center;line-height:1}.method-card:nth-child(2) .method-icon{color:#d4527e}.method-card:nth-child(3) .method-icon{color:#77bdb9}.method-card h3{font-size:22px;letter-spacing:-.03em;margin:0 0 12px}.method-card p{font-size:12.4px;line-height:1.75;color:#b9cbd9;margin:0}.method-arrow{position:absolute;top:24px;right:20px;color:#637e9a;font-size:19px}
/* Services */
.service-section{background:#f8fafc}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:23px}.service-card{background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 12px 30px rgba(16,42,80,.04);border:1px solid #eef0f5;transition:transform .3s,box-shadow .3s}.service-card:hover{transform:translateY(-6px);box-shadow:0 24px 45px rgba(8,29,59,.1)}.service-art{height:272px;overflow:hidden;position:relative;display:grid;place-items:center}.card-print{background:linear-gradient(140deg,#cbdfea,#eaf3f7 58%,#d4e1e9)}.card-sign{background:linear-gradient(160deg,#d4e1eb,#ecf2f7)}.card-vehicle{background:linear-gradient(140deg,#a9d2de,#e7f0f4)}.art-burst{position:absolute;width:36px;height:36px;display:grid;place-items:center;right:15px;top:15px;border-radius:100%;background:#fff;color:var(--magenta);font-size:20px;box-shadow:0 5px 18px #0001}.mock-business-card{position:absolute;width:210px;height:125px;background:white;border-radius:5px;box-shadow:0 17px 35px rgba(7,26,52,.18);padding:18px 20px}.mock-business-card.back{transform:rotate(-18deg) translate(-17px,-12px);background:var(--navy);top:77px;left:calc(50% - 140px);display:grid;place-items:center}.mock-mini-logo{font-size:27px;letter-spacing:-.09em;color:white;font-family:Manrope,sans-serif}.mock-mini-logo i{display:block;font-style:normal;color:#e58caa;margin-left:18px}.mock-business-card.front{transform:rotate(11deg);top:85px;left:calc(50% - 79px)}.mock-business-card.front small{display:block;color:#587d91;font-size:8px;letter-spacing:.12em;font-weight:800}.mock-business-card.front strong{display:block;color:var(--navy);font:bold 33px Manrope,sans-serif;letter-spacing:-.08em;margin:8px 0 0}.mock-business-card.front strong span{color:var(--magenta)}.mock-business-card.front>i{font-style:normal;font-size:10px;color:#8ea0ae}.mock-shop{position:absolute;bottom:6px;width:230px;height:188px;background:#eff3f5;box-shadow:0 5px 45px #11314e31;border:8px solid #dce5e9;border-bottom:0}.shop-top{height:48px;background:#113455;color:#fff;display:grid;place-items:center;font:bold 17px Manrope,sans-serif;text-align:center}.shop-top small{display:block;font:700 6px DM Sans,sans-serif;letter-spacing:.2em;margin-top:3px;color:#8ac7d2}.shop-awning{height:18px;background:repeating-linear-gradient(90deg,var(--magenta) 0 20px,#fff 20px 40px);position:relative;z-index:2;box-shadow:0 5px 5px #0001}.shop-windows{display:grid;grid-template-columns:1fr 1fr;height:120px;gap:6px;padding:8px;background:#96b5c6}.shop-windows span{background:linear-gradient(150deg,#406c84,#9fc5d6);display:grid;place-items:center;border:4px solid #dbe4eb}.shop-windows i{font-style:normal;color:white;font-size:11px;letter-spacing:.1em;font-weight:800}.shop-windows span+span i{font-size:50px;color:#e4eced}.shop-base{background:#758aa2;height:11px}.mock-van{position:relative;width:270px;height:145px;margin-top:50px;filter:drop-shadow(0 22px 17px #09233d2c)}.van-body{position:absolute;left:15px;top:8px;width:174px;height:97px;background:linear-gradient(110deg,#fbfdfe,#d8e0e4);border:3px solid #d5e0e7;border-radius:10px 4px 1px 1px;z-index:2}.van-cabin{position:absolute;right:2px;top:34px;width:102px;height:71px;border-radius:8px 24px 5px 0;background:#f8fbfd;border:3px solid #dbe4eb;transform:skewX(-8deg);z-index:1}.van-window{display:block;position:absolute;right:10px;top:9px;width:49px;height:27px;background:#376b89;border-radius:3px 11px 2px 2px}.van-front{position:absolute;right:0;top:100px;width:260px;height:14px;background:#53637a;z-index:3;border-radius:3px}.van-mark{padding:20px 19px;font:bold 32px Manrope,sans-serif;letter-spacing:-.1em;color:var(--blue)}.van-mark span{color:var(--magenta)}.van-mark small{display:block;font:800 7px DM Sans,sans-serif;letter-spacing:.13em;color:#607283}.wheel{position:absolute;bottom:16px;height:40px;width:40px;background:#20364d;border:8px solid #516b82;border-radius:50%;z-index:4;box-shadow:inset 0 0 0 4px #d3dde0}.wheel.one{left:45px}.wheel.two{right:38px}.service-detail{padding:28px 25px 31px}.service-index{color:var(--magenta);font-size:10px;letter-spacing:.13em;font-weight:800}.service-detail h3{font-size:22px;line-height:1.35;margin:12px 0 10px;display:flex;align-items:start;justify-content:space-between;gap:14px}.service-detail h3 span{font:400 21px DM Sans,sans-serif;color:var(--blue)}.service-detail p{font-size:13px;color:#6b7987;line-height:1.75;min-height:45px}.service-tags{border-top:1px solid #e8eef3;margin-top:20px;padding-top:20px;display:flex;gap:7px;flex-wrap:wrap}.service-tags span{background:#eef4f8;color:#4f657a;font-size:10px;font-weight:700;padding:7px 10px;border-radius:4px}.service-note{font-size:11px;color:#8491a0;margin:23px 0 0;text-align:center}
/* Portfolio */
.portfolio-section{padding:125px 0 120px;background:white}.portfolio-grid{display:grid;grid-template-columns:39% 61%;gap:42px;align-items:center}.portfolio-left h2{margin:22px 0}.portfolio-left p{color:#66798b;font-size:15px;line-height:1.9;max-width:365px;margin:0 0 32px}.portfolio-gallery{height:390px;display:grid;grid-template-columns:1.25fr 1fr;grid-template-rows:1fr 1fr;gap:13px}.portfolio-tile{border-radius:9px;overflow:hidden;position:relative;padding:21px;color:#fff;display:flex;flex-direction:column;justify-content:space-between;isolation:isolate}.portfolio-tile>span{font-size:9px;letter-spacing:.22em;font-weight:800;position:relative;z-index:2}.portfolio-tile .tile-content{font-size:17px;line-height:1.45;position:relative;z-index:2}.tile-one{grid-row:1/3;background:linear-gradient(140deg,#0e416f,#071c38)}.tile-two{background:linear-gradient(120deg,#8a174a,#cf6c87)}.tile-three{background:linear-gradient(120deg,#24889c,#65bcc1)}.tile-one .tile-content{font-size:24px}.tile-decoration{position:absolute;z-index:1;width:250px;height:250px;border:36px solid rgba(255,255,255,.15);border-radius:50%;bottom:-102px;right:-95px;transform:rotate(34deg)}.tile-one .tile-decoration{width:360px;height:360px;right:-130px;bottom:60px;border-color:#32699e}.tile-two .tile-decoration{width:220px;height:220px;right:-90px;bottom:-102px}.tile-three .tile-decoration{width:235px;height:235px;right:-115px;bottom:-120px}.portfolio-footnote{text-align:right;font-size:10px;color:#9da8b3;margin-top:20px}
/* Contact */
.contact-intro{padding:65px 0;background:var(--navy);color:#fff;position:relative;overflow:hidden}.contact-intro::before{content:'';position:absolute;width:680px;height:400px;right:-150px;top:-280px;background:#226896;border-radius:50%;filter:blur(10px);opacity:.4}.contact-banner{position:relative;display:flex;align-items:center;justify-content:space-between;gap:35px}.contact-banner h2{color:#fff;font-size:clamp(48px,5.4vw,73px);margin:13px 0 6px}.contact-banner h2 span{color:#e15788}.contact-banner p{color:#b9cbdc;font-size:14px;margin:0}.contact-phone{border:1px solid #53748d;border-radius:9px;padding:22px 28px;min-width:280px;transition:background .25s}.contact-phone:hover{background:#174467}.contact-phone>span{display:block;font-size:10px;letter-spacing:.18em;font-weight:800;color:#8db6cf;margin-bottom:9px}.contact-phone strong{font:800 21px Manrope,sans-serif}.contact-phone b{font-weight:400;margin-left:20px;color:#dc7392}.form-section{background:#f6f9fb}.form-grid{display:grid;grid-template-columns:39% 61%;gap:52px;align-items:start}.contact-details h2{font-size:clamp(36px,3.8vw,54px)}.contact-details p{max-width:352px;color:#68798c}.contact-methods{margin-top:42px}.contact-methods a{display:flex;gap:15px;align-items:center;padding:20px 0;border-top:1px solid #dbe5ec}.contact-methods a:last-child{border-bottom:1px solid #dbe5ec}.contact-icon{height:41px;width:41px;flex:0 0 41px;background:white;border-radius:50%;display:grid;place-items:center;color:var(--magenta);font-size:19px}.contact-methods small{font-weight:800;letter-spacing:.15em;font-size:9px;color:#8696a4;display:block;margin-bottom:5px}.contact-methods strong{font-size:15px;color:var(--navy)}.contact-sign{margin-top:29px;font-size:12px;color:#8491a0;display:flex;align-items:center;gap:10px}.sign-dot{display:inline-block;height:7px;width:7px;border-radius:50%;background:#4dbbb5}.quote-form{background:#fff;border:1px solid #e3e9ee;border-radius:14px;padding:41px 42px;box-shadow:0 18px 55px rgba(8,29,59,.055)}.form-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px;color:#7b8996;font-size:10px;letter-spacing:.13em;font-weight:800}.form-progress{display:flex;gap:5px}.form-progress i{width:25px;height:3px;background:#dae4eb;border-radius:10px}.form-progress i:first-child{background:var(--magenta)}.form-two{display:grid;grid-template-columns:1fr 1fr;gap:17px}.quote-form label:not(.consent-label){display:flex;flex-direction:column;color:var(--navy);font-size:12px;font-weight:800;margin:0 0 20px;gap:9px}.quote-form label>span:not(.consent-label span){color:var(--magenta)}.quote-form input:not([type=checkbox]),.quote-form select,.quote-form textarea{width:100%;border:1px solid #dce5ec;background:#f9fbfc;color:#172c46;border-radius:5px;padding:14px 13px;min-height:46px;outline:0;transition:border-color .25s,box-shadow .25s;font-size:13px;font-weight:500}.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{border-color:#3c9ac1;box-shadow:0 0 0 3px rgba(55,143,186,.13)}.quote-form input::placeholder,.quote-form textarea::placeholder{color:#9eacb8}.quote-form textarea{resize:vertical;min-height:110px}.quote-form select{appearance:none;background-image:url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="%2364788d" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"%3E%3Cpath d="m6 9 6 6 6-6"/%3E%3C/svg%3E');background-repeat:no-repeat;background-position:right 14px center}.consent-label{display:flex;align-items:flex-start;gap:10px;font-size:11px;line-height:1.6;color:#768597;margin:1px 0 23px}.consent-label input{margin-top:3px;accent-color:var(--magenta)}.consent-label span{color:#768597!important}.consent-label a{text-decoration:underline;color:#315779}.form-submit{width:100%;display:flex;justify-content:space-between}.form-disclaimer{font-size:10px!important;line-height:1.7;color:#8f9caa!important;margin:13px 0 0}
/* Footer */
.footer{background:#05152b;color:#fff}.footer-main{display:grid;grid-template-columns:2fr 1fr 1.2fr;gap:40px;padding-top:65px;padding-bottom:60px}.footer-logo{display:inline-flex;align-items:center;background:#fff;padding:12px 18px;border-radius:8px}.footer-logo img{width:143px;height:auto}.footer-brand p{font-size:13px;line-height:1.9;color:#91a8bf;margin:19px 0 0}.footer-column{display:flex;flex-direction:column;gap:15px}.footer-column h3{font:800 10px DM Sans,sans-serif;letter-spacing:.17em;color:#92c7dc;margin:5px 0 7px}.footer-column a{font-size:12px;color:#c2d1e0}.footer-column a:hover,.footer-bottom a:hover{color:#76c5d0}.footer-bottom{border-top:1px solid rgba(255,255,255,.13);padding:23px 0;display:flex;justify-content:space-between;gap:20px;color:#8b9fb5;font-size:11px}.footer-bottom>div{display:flex;gap:27px}.legal-page .legal-main{padding-top:180px;padding-bottom:110px;min-height:75vh;max-width:900px}.legal-main h1{font-size:clamp(52px,6vw,80px);color:var(--navy);margin:22px 0 25px}.legal-main h1 span{color:var(--magenta)}.legal-main .lead{font-size:18px;font-weight:700}.legal-main p{color:#63768a}.legal-main h2{color:var(--navy);font-size:23px;margin-top:38px}.legal-main a:not(.text-arrow){text-decoration:underline;color:var(--blue)}.legal-main .text-arrow{margin-top:25px}
@media(max-width:1150px){.desktop-nav{gap:13px}.nav-link{font-size:11.5px}.header-cta{padding:0 12px;font-size:10px;gap:6px}.hero-image-wrap{margin-right:-50px}.hero h1{font-size:73px}.service-detail h3{font-size:19px}}
@media(max-width:950px){.desktop-nav,.header-cta{display:none}.menu-toggle{display:flex}.site-header{height:79px}.site-header.scrolled{height:70px}.hero{padding-top:79px}.hero-layout{grid-template-columns:55% 45%;height:625px}.hero h1{font-size:clamp(56px,7.5vw,78px)}.hero-copy>p{font-size:15px}.hero-image-wrap{margin-right:-38px;height:590px}.hero-actions{gap:16px}.hero-actions .text-arrow{font-size:11.5px}.statement-row{gap:30px}.approach-grid{gap:30px}.expertise-item{gap:10px;padding-right:12px}.expertise-item+.expertise-item{padding-left:18px}.expertise-symbol{width:58px;height:58px;flex-basis:58px}.expertise-item h3{font-size:17px}.method-card{padding:25px 18px}.service-grid{gap:12px}.service-detail{padding:23px 16px}.service-detail h3{font-size:18px}.service-art{height:225px}.mock-business-card.front{left:calc(50% - 72px)}.portfolio-grid,.form-grid{gap:28px}.quote-form{padding:30px 28px}.footer-main{grid-template-columns:1.6fr 1fr 1.2fr}}
@media(max-width:720px){.shell{width:min(100% - 38px,600px)}.section{padding:80px 0}.site-header{height:72px}.site-header.scrolled{height:66px}.brand img{width:109px}.hero{padding-top:72px;min-height:0}.hero-layout{height:auto;display:flex;flex-direction:column;align-items:stretch;padding-top:45px}.hero-copy{padding:0;order:1}.hero-copy .eyebrow{font-size:9px;letter-spacing:.06em}.hero h1{font-size:clamp(60px,12vw,86px);margin:17px 0 20px}.hero-copy>p{font-size:15px;max-width:500px;margin-bottom:22px}.hero-actions{gap:18px}.hero-actions .text-arrow{font-size:12px}.hero-index{margin-top:20px}.hero-image-wrap{order:2;height:365px;margin:3px -19px -1px 0;justify-content:flex-end}.eye-backdrop{height:340px;width:100%;top:0}.eye-image{height:100%;width:100%;object-fit:cover;object-position:18% 39%;mask-image:linear-gradient(90deg,transparent 0%,#000 13%,#000 88%,transparent 100%)}.floating-sticker{height:77px;width:77px;top:23px;right:10px}.floating-sticker span{font-size:8px}.floating-sticker b{bottom:8px;right:17px;font-size:13px}.hero-image-caption{bottom:80px;right:2px;padding:11px 13px;gap:7px}.hero-image-caption span{font-size:9px}.hero-image-caption strong{font-size:10px}.hero-wave{height:72px}.statement-section{padding-top:56px}.statement-row{display:block}.statement-row h2{font-size:clamp(29px,6.2vw,44px)}.statement-row p{margin-top:19px;max-width:500px}.statement-rule{display:none}.statement-ticker{margin-top:45px}.statement-ticker div{text-align:left;padding-left:20px}.section h2,.contact-details h2{font-size:clamp(35px,7.4vw,54px)}.section-heading.horizontal{display:block;margin-bottom:32px}.section-heading p{margin-top:16px}.approach-grid{display:flex;flex-direction:column;gap:35px}.section-intro{width:100%}.approach-art{height:380px;width:100%}.art-number{font-size:125px}.art-orbit{width:255px;height:255px;left:calc(50% - 127px);top:63px}.orbit-b{width:330px;height:330px;left:calc(50% - 165px);top:25px}.art-center{padding:25px}.art-center img{width:150px}.label-a{right:18px;top:60px}.label-b{right:18px;bottom:45px}.label-c{left:18px;bottom:80px}.expertise-strip{display:block;margin-top:70px}.expertise-item,.expertise-item+.expertise-item{border:0;border-bottom:1px solid var(--line);padding:25px 4px}.expertise-item:first-child{border-top:0}.expertise-item h3{font-size:21px}.expertise-item p{font-size:13px}.method-grid{grid-template-columns:1fr 1fr;gap:12px}.method-card{min-height:265px}.method-icon{height:75px;font-size:35px}.method-card h3{font-size:20px}.service-grid{grid-template-columns:1fr}.service-art{height:250px}.service-detail{padding:25px}.service-detail h3{font-size:22px}.service-detail p{min-height:auto}.portfolio-section{padding:85px 0}.portfolio-grid{display:flex;flex-direction:column;align-items:stretch;gap:40px}.portfolio-gallery{height:430px}.portfolio-left p{max-width:530px}.portfolio-footnote{text-align:left}.contact-banner{display:block}.contact-banner h2{font-size:55px}.contact-phone{display:block;margin-top:28px;max-width:330px}.form-grid{grid-template-columns:1fr;gap:35px}.contact-details p{max-width:520px}.contact-methods{margin-top:20px}.quote-form{padding:26px}.footer-main{grid-template-columns:1fr 1fr;gap:35px;padding-top:50px}.footer-brand{grid-column:1/3}.footer-bottom{font-size:10px}}
@media(max-width:420px){.hero h1{font-size:57px}.eyebrow{gap:6px}.hero-copy .eyebrow{font-size:8px}.hero-actions{align-items:flex-start;flex-direction:column;gap:10px}.hero-actions .button{min-height:49px}.hero-image-wrap{height:290px}.hero-image-caption{bottom:50px}.hero-wave{height:55px}.section h2{font-size:34px}.method-grid{grid-template-columns:1fr}.method-card{min-height:220px}.method-icon{height:68px}.portfolio-gallery{height:420px;grid-template-columns:1fr 1fr}.portfolio-tile{padding:13px}.tile-one .tile-content{font-size:19px}.portfolio-tile .tile-content{font-size:13px}.form-two{grid-template-columns:1fr;gap:0}.quote-form{padding:19px}.quote-form label:not(.consent-label){margin-bottom:15px}.footer-main{grid-template-columns:1fr}.footer-brand{grid-column:1}.footer-bottom{display:block}.footer-bottom>div{margin-top:12px}.contact-phone strong{font-size:18px}}
/* Champs issus du formulaire Wix (au lieu de noms figés dans le site) */
.native-fields{display:grid;grid-template-columns:1fr 1fr;column-gap:17px}.native-fields>label{min-width:0}.native-fields>label:nth-child(n+5){grid-column:1/-1}.native-fields>label.consent-label{grid-column:1/-1}.form-error{padding:13px 15px;background:#fff0f3;border:1px solid #f1b1c1;border-radius:6px;color:#8e1945;font-size:12px;line-height:1.6;margin:15px 0 0}.form-success{padding:35px 10px 45px;text-align:center}.form-success .success-icon{margin:0 auto 21px;width:65px;height:65px;display:grid;place-items:center;color:#fff;background:#158276;border-radius:50%;font-size:33px}.form-success h3{font-size:27px;color:var(--navy);margin-bottom:13px}.form-success p{font-size:14px;color:#667b8c}.form-success .text-arrow{margin-top:12px}.form-submit:disabled{cursor:wait;opacity:.7}
@media(max-width:420px){.native-fields{grid-template-columns:1fr}.native-fields>label{grid-column:1/-1}}


/* Nouvelle architecture : Création, Impression, Pose */
.category-nav{gap:0;margin-left:auto;align-items:center}.category-nav .nav-link{font-size:13px;text-transform:uppercase;letter-spacing:.12em;padding:11px 22px}.category-nav .nav-link+.nav-link{border-left:1px solid #dce4ee}.category-nav .nav-link::after{left:22px;right:calc(100% - 22px);transform:scaleX(0);transform-origin:left;transition:transform .25s}.category-nav .nav-link:hover::after,.category-nav .nav-link.is-active::after{transform:scaleX(1);right:22px}.category-nav .nav-link:first-child{padding-left:10px}.category-nav .nav-link:first-child::after{left:10px}.category-nav .nav-link:last-child{padding-right:10px}.category-nav .nav-link:last-child::after{right:10px}.hero-image-caption{gap:0}.hero-image-caption strong{font-size:13px}
.pillar-section{padding:122px 0 118px;scroll-margin-top:60px;position:relative;overflow:hidden}.pillar-section .shell{position:relative;z-index:2}.pillar-heading{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);align-items:end;gap:75px;margin-bottom:45px}.pillar-heading h2{font-size:clamp(46px,5vw,77px);line-height:1.11;color:var(--navy);letter-spacing:-.07em;font-weight:800;margin:22px 0 0}.pillar-heading h2 span{color:var(--blue)}.pillar-heading-aside{padding-bottom:6px}.pillar-heading-aside p{font-size:15px;line-height:1.95;color:#61748a;margin:16px 0 0}.tiny-pill{display:inline-flex;align-items:center;gap:9px;border-radius:30px;padding:9px 13px;background:#eaf4f8;color:#2b6586;letter-spacing:.065em;font-weight:800;font-size:9px}.small-dot{width:6px;height:6px;background:var(--magenta);border-radius:50%}
.creation-section{background:#f9fbfc}.creation-offers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:81px}.creation-offers article{padding:27px 28px 32px;background:#fff;border:1px solid #e5eaf0;border-radius:10px;min-height:260px;box-shadow:0 6px 28px rgba(10,36,67,.035);transition:transform .3s,box-shadow .3s}.creation-offers article:hover{transform:translateY(-5px);box-shadow:0 14px 32px rgba(10,36,67,.09)}.offer-symbol{display:flex;align-items:center;justify-content:center;font-size:30px;color:var(--magenta);width:57px;height:57px;background:#f9eaf0;border-radius:50%;margin-bottom:27px}.creation-offers article:nth-child(2) .offer-symbol{color:#0c80aa;background:#e5f4f8}.creation-offers article:nth-child(3) .offer-symbol{color:#186875;background:#e0f3f0}.creation-offers h3,.pose-services h3{font-size:19px;line-height:1.35;margin-bottom:10px;color:var(--navy);letter-spacing:-.04em}.creation-offers p,.pose-services p{color:#647488;font-size:13px;line-height:1.85;margin:0}
.gallery-topline{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:24px}.gallery-kicker{font-size:10px;color:var(--magenta);font-weight:800;letter-spacing:.17em}.gallery-topline h3{color:var(--navy);font-size:clamp(23px,2.4vw,34px);letter-spacing:-.055em;margin:9px 0 0}.gallery-topline>p{max-width:300px;color:#708092;font-size:13px;margin:0 0 2px}.photo-gallery{display:grid;grid-template-columns:1.65fr 1fr 1fr;gap:14px}.photo-tile{display:block;width:100%;height:283px;border:0;padding:0;position:relative;isolation:isolate;overflow:hidden;border-radius:10px;background:#1b3857;cursor:zoom-in;text-align:left;box-shadow:0 11px 28px rgba(8,29,59,.065)}.photo-tile img{width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.22,1,.36,1),filter .35s}.photo-tile:hover img,.photo-tile:focus-visible img{transform:scale(1.065);filter:saturate(1.12)}.photo-tile:after{content:"";position:absolute;inset:20% 0 0;pointer-events:none;background:linear-gradient(to top,rgba(2,14,31,.81),transparent 85%)}.photo-caption{position:absolute;z-index:1;left:18px;right:17px;bottom:19px;display:flex;justify-content:space-between;align-items:center;color:#fff;font-weight:800;font-size:13px;line-height:1.35}.photo-caption b{font-size:21px;color:#7bd7e1;font-weight:400}.pillar-end{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #d8e2eb;margin-top:42px;padding-top:27px;gap:25px}.pillar-end p{margin:0;color:#5c7086;font-size:14px}.pillar-end .text-arrow{color:#0b345a}
.impression-section{background:#081d3b;color:#fff}.impression-halo{position:absolute;right:-190px;top:-310px;width:820px;height:820px;border-radius:50%;background:radial-gradient(circle,rgba(28,104,150,.36),transparent 68%);pointer-events:none}.impression-section:before{content:"";position:absolute;left:-5%;right:-5%;top:0;height:12px;background:linear-gradient(100deg,#9f174b,#145c90 54%,#58c2cb);clip-path:polygon(0 0,100% 0,100% 28%,72% 90%,42% 40%,14% 100%,0 35%)}.impression-section .pillar-heading h2{color:#fff}.impression-section .pillar-heading h2 span{color:#71c8de}.impression-section .pillar-heading-aside p{color:#c4d3e3}.light-pill{background:#163b61;color:#93d5e5}.print-intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:38px}.print-panel{border:1px solid rgba(222,237,250,.19);background:rgba(255,255,255,.045);border-radius:12px;padding:29px 31px 32px;min-height:238px}.print-panel-icon{font-size:29px;color:#82d2de;margin-bottom:12px}.print-panel h3{font-size:23px;margin:0 0 9px;color:#fff}.print-panel p{color:#bdcbdc;font-size:14px;line-height:1.82;margin:0}.materials{margin-bottom:84px;background:rgba(255,255,255,.075);border-radius:13px;padding:30px 32px;border:1px solid rgba(255,255,255,.11)}.materials-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:22px}.materials-heading h3{margin:0;color:#fff;font-size:21px}.materials-heading p{color:#b6c8da;margin:0;font-size:13px}.material-tags{display:flex;gap:10px;flex-wrap:wrap}.material-tags span{padding:10px 16px;border:1px solid rgba(164,208,231,.38);border-radius:5px;font-weight:700;color:#f6fbff;background:#0f3155;font-size:12px;white-space:nowrap}.availability-note{margin:17px 0 0;font-size:11px!important;color:#aac4d5;line-height:1.6}.gallery-topline-light h3{color:#fff}.gallery-topline-light p{color:#bdcbdc}.gallery-topline-light .gallery-kicker{color:#8edce5}.impression-section .photo-tile{box-shadow:0 12px 35px rgba(0,0,0,.21)}.pillar-end-light{border-top-color:rgba(255,255,255,.21)}.pillar-end-light p{color:#b4c6da}.pillar-end-light .text-arrow{color:#fff}
.pose-section{background:#fff}.pose-services{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 37px}.pose-services article{border:1px solid #e1e8ef;border-radius:10px;background:#f7fafd;padding:24px 21px 26px;min-height:262px}.pose-lineicon{width:53px;height:53px;display:grid;place-items:center;background:#e6f1f7;border-radius:12px;font-size:28px;color:#1a709b;margin-bottom:21px}.pose-services article:nth-child(even) .pose-lineicon{background:#f7e9ef;color:#a51a51}.pose-services h3{font-size:17px}.pose-services p{font-size:12.5px}.pose-signature{display:flex;align-items:center;gap:21px;padding:24px 27px;background:#eef7f9;border-radius:11px;margin-bottom:82px}.signature-mark{width:57px;height:57px;flex:0 0 57px;border-radius:50%;background:#11759c;color:white;display:grid;place-items:center;font-size:26px}.pose-signature>div:nth-child(2){flex:1}.pose-signature strong{color:#0c3056;font-size:17px}.pose-signature p{font-size:13px;color:#667c91;line-height:1.65;margin:6px 0 0}.pose-signature .text-arrow{margin-left:12px;flex-shrink:0}.gallery-honesty{margin:19px 0 0;font-size:11px;line-height:1.65;color:#8593a2;text-align:right}
.gallery-dialog{border:0;padding:0;width:min(940px,calc(100% - 28px));max-height:calc(100vh - 48px);border-radius:10px;overflow:hidden;background:#071b32;color:#fff;box-shadow:0 30px 110px rgba(0,0,0,.4)}.gallery-dialog::backdrop{background:rgba(1,15,31,.83);backdrop-filter:blur(8px)}.dialog-inside{position:relative}.dialog-inside>img{width:100%;max-height:calc(100vh - 155px);object-fit:contain;background:#061326}.dialog-close{position:absolute;right:15px;top:14px;width:41px;height:41px;z-index:2;border:1px solid rgba(255,255,255,.3);border-radius:50%;background:rgba(8,29,59,.8);color:#fff;font-size:20px}.dialog-controls{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px 22px}.dialog-controls p{margin:0;color:#dbeaf2;font-weight:700;font-size:13px;text-align:center;line-height:1.4}.dialog-controls button{background:transparent;color:#fff;border:1px solid #49647e;border-radius:50%;width:40px;height:40px;flex:0 0 40px;font-size:19px}.dialog-controls button:hover,.dialog-close:hover{background:#a51a51;border-color:#a51a51}
/* Responsive des nouvelles rubriques */
@media(max-width:950px){.category-nav .nav-link{padding:9px 15px}.pillar-section{padding:94px 0}.pillar-heading{gap:35px;grid-template-columns:1.25fr 1fr}.pillar-heading h2{font-size:clamp(44px,5vw,66px)}.photo-gallery{grid-template-columns:1.35fr 1fr 1fr;gap:10px}.photo-tile{height:240px}.creation-offers article{padding:21px}.pose-services{grid-template-columns:repeat(2,1fr)}.pose-services article{min-height:218px}.pose-signature{flex-wrap:wrap}.pose-signature .text-arrow{margin-left:78px}}
@media(max-width:720px){.pillar-section{padding:74px 0}.pillar-heading{display:block;margin-bottom:34px}.pillar-heading h2{font-size:clamp(41px,8vw,61px)}.pillar-heading-aside{margin-top:28px}.pillar-heading-aside p{font-size:14px;line-height:1.78}.creation-offers{grid-template-columns:1fr;margin-bottom:57px;gap:10px}.creation-offers article{min-height:auto;padding:23px;display:grid;grid-template-columns:50px 1fr;column-gap:18px;align-items:start}.creation-offers .offer-symbol{grid-row:1/3;width:48px;height:48px;margin:0;font-size:25px}.creation-offers h3{margin-top:2px}.creation-offers p{grid-column:2}.gallery-topline{display:block}.gallery-topline h3{font-size:25px}.gallery-topline p{margin:8px 0 0}.photo-gallery{grid-template-columns:1fr 1fr;gap:10px}.photo-gallery .photo-feature{grid-column:1/-1;height:265px}.photo-gallery .photo-tile:not(.photo-feature){height:190px}.pillar-end{align-items:flex-start;flex-direction:column;gap:8px}.print-intro-grid{grid-template-columns:1fr}.print-panel{min-height:auto}.materials{margin-bottom:53px;padding:23px}.materials-heading{display:block}.materials-heading p{margin-top:9px}.material-tags{gap:8px}.material-tags span{font-size:11px;padding:9px 11px}.pose-services{grid-template-columns:1fr 1fr}.pose-services article{padding:20px 17px}.pose-signature{margin-bottom:56px;padding:20px}.pose-signature .text-arrow{margin-left:0}.gallery-honesty{text-align:left}}
@media(max-width:480px){.photo-gallery .photo-feature{height:220px}.photo-gallery .photo-tile:not(.photo-feature){height:150px}.photo-caption{font-size:11px;bottom:12px;left:11px;right:10px}.photo-caption b{font-size:17px}.pose-services{grid-template-columns:1fr}.pose-services article{min-height:auto}.pillar-heading h2{font-size:41px}.pose-signature{gap:15px}.signature-mark{width:42px;height:42px;flex-basis:42px;font-size:22px}.pose-signature strong{font-size:14px}.dialog-controls{padding:13px 10px;gap:9px}.dialog-controls p{font-size:11px}}


/* Ajustements de placement uniquement, sur la direction artistique originale. */
@media (min-width: 951px) {
  .hero-layout { grid-template-columns: 49% 51%; }
  .hero-image-wrap { margin-left: -75px; margin-right: 0; }
  .eye-backdrop { left: 0; right: auto; border-radius: 0 56% 55% 0; }
  .hero-copy { padding-left: 33px; }
  .hero h1 { font-size: clamp(65px, 5.7vw, 88px); }
  .floating-sticker { right: 15px; }
}
@media (min-width: 721px) and (max-width: 950px) {
  .hero-layout { grid-template-columns: 48% 52%; }
  .hero-image-wrap { margin: 0 0 0 -38px; }
  .eye-backdrop { left: 0; right: auto; border-radius: 0 56% 55% 0; }
  .hero-copy { padding-left: 15px; }
  .hero h1 { font-size: clamp(56px, 7vw, 75px); }
}
@media (max-width: 720px) {
  .hero-image-wrap { margin: 4px -19px -1px 0; }
  .hero-copy { padding-left: 0; }
  .hero-image-caption { display: none; }
}
.pillar-heading {
  display: block;
  max-width: 900px;
  margin-bottom: 47px;
}
.pillar-heading h2 { margin: 0; line-height: 1.02; }
.pillar-heading h2 .pillar-subtitle {
  display: block;
  max-width: 850px;
  color: var(--blue);
  font-size: clamp(26px, 3.2vw, 39px);
  line-height: 1.23;
  letter-spacing: -.045em;
  margin-top: 15px;
}
.pillar-heading .pillar-intro {
  color: #61748a;
  font-size: 16px;
  line-height: 1.8;
  max-width: 670px;
  margin: 22px 0 0;
}
.impression-section .pillar-heading h2 .pillar-subtitle { color: #71c8de; }
.impression-section .pillar-heading .pillar-intro { color: #c4d3e3; }
.gallery-topline h3 { margin: 0; }
.statement-row { display: block; }
.statement-row h2 { margin: 0; }
.statement-row p { max-width: 620px; margin: 20px 0 0; }
@media (max-width: 720px) {
  .pillar-heading { margin-bottom: 34px; }
  .pillar-heading h2 .pillar-subtitle { font-size: clamp(23px, 5vw, 31px); }
  .pillar-heading .pillar-intro { font-size: 14px; margin-top: 18px; }
}


/* Enrichissement visuel des cartes métiers, tout en conservant la DA d'origine */
.creation-offers { align-items:stretch; gap:16px; margin-bottom:74px; }
.creation-offers article,
.pose-services article {
  padding:0;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  min-height:0;
}
.service-card-visual,
.pose-card-visual,
.print-card-visual {
  width:100%;
  flex:0 0 auto;
  overflow:hidden;
  position:relative;
  background:#e8f1f6;
}
.service-card-visual { height:192px; }
.pose-card-visual { height:145px; }
.print-card-visual { height:180px; }
.service-card-visual img,
.pose-card-visual img,
.print-card-visual img {
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .5s cubic-bezier(.22,1,.36,1);
}
.creation-offers article:hover img,
.pose-services article:hover img,
.print-panel:hover img { transform:scale(1.045); }
.service-card-copy { padding:25px 27px 29px; flex:1; }
.creation-offers .service-card-copy h3,
.pose-services .service-card-copy h3 { margin:0 0 10px; }
.creation-offers .service-card-copy p,
.pose-services .service-card-copy p { max-width:45ch; }

.print-intro-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:15px; margin-bottom:40px; }
.print-intro-grid .print-panel,
.print-intro-grid article {
  background:rgba(255,255,255,.055);
  border:1px solid rgba(222,237,250,.19);
  border-radius:12px;
  padding:0;
  min-height:0;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  transition:transform .25s, border-color .25s;
}
.print-intro-grid article:hover { transform:translateY(-4px); border-color:rgba(130,210,222,.45); }
.print-intro-grid .service-card-copy {padding:23px 24px 29px;}
.print-intro-grid .service-card-copy h3 { font-size:20px; line-height:1.25; color:#fff; margin:0 0 10px; letter-spacing:-.04em; }
.print-intro-grid .service-card-copy p { color:#bdcbdc; line-height:1.7; font-size:13px; margin:0; }

.materials { padding:31px 30px; }
.materials-heading { margin-bottom:25px; }
.materials-heading h3 { font-size:24px; letter-spacing:-.04em; }
.material-tags {display:grid;grid-template-columns:repeat(3,minmax(0,1fr)); gap:13px;}
.material-tags .material-card {
  padding:0;
  margin:0;
  display:block;
  overflow:hidden;
  white-space:normal;
  background:#12365b;
  border:1px solid rgba(164,208,231,.28);
  border-radius:9px;
  transition:transform .25s,box-shadow .25s;
}
.material-tags .material-card:hover { transform:translateY(-3px);box-shadow:0 12px 28px rgba(0,0,0,.18); }
.material-image { height:144px; overflow:hidden; background:#e9eef3; }
.material-image img { width:100%;height:100%;object-fit:cover; transition:transform .5s; }
.material-card:hover .material-image img {transform:scale(1.05);}
.material-copy {padding:16px 18px 19px;}
.material-copy h4 {font-family:Manrope,Arial,sans-serif; font-size:15px; letter-spacing:-.035em; line-height:1.3; color:#fff; margin:0 0 6px;}
.material-copy p {font-size:12px; color:#c9dbe9; line-height:1.6; font-weight:500; margin:0;}
.materials .availability-note { margin-top:19px; font-size:11px!important; }

.pose-services {grid-template-columns:repeat(4,minmax(0,1fr)); gap:15px;}
.pose-services .service-card-copy {padding:22px 19px 25px;}
.pose-services h3 { font-size:17px; }
.pose-services p { font-size:12.5px; line-height:1.7; }
.signature-mark {background:transparent;overflow:hidden;border-radius:9px;}
.signature-mark img {width:100%; height:100%; object-fit:cover;}

@media(max-width:950px) {
  .print-intro-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .material-tags {grid-template-columns:repeat(3,minmax(0,1fr));}
  .pose-services {grid-template-columns:repeat(2,minmax(0,1fr));}
  .pose-card-visual {height:185px;}
}
@media(max-width:720px) {
  .creation-offers article {display:flex;grid-template-columns:none; padding:0;}
  .creation-offers .service-card-copy {padding:22px 24px 26px;}
  .creation-offers .service-card-copy h3 {margin-top:0;}
  .creation-offers .service-card-copy p {grid-column:auto;}
  .service-card-visual {height:210px;}
  .print-intro-grid {grid-template-columns:1fr; gap:13px;}
  .print-card-visual {height:210px;}
  .materials-heading {display:block;}
  .material-tags {grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px;}
  .material-image {height:130px;}
  .material-copy {padding:13px 13px 16px;}
  .pose-services {grid-template-columns:repeat(2,minmax(0,1fr));}
  .pose-card-visual {height:150px;}
}
@media(max-width:480px) {
  .material-tags {grid-template-columns:repeat(2,minmax(0,1fr));}
  .material-image {height:107px;}
  .material-copy h4 {font-size:13px;}
  .material-copy p {font-size:11px;}
  .pose-services {grid-template-columns:1fr;}
  .pose-card-visual {height:200px;}
}


/* Galerie Réalisations : aperçu léger puis exemples dépliables.
   Les cartes illustrées de prestations et la DA Emocom restent intactes. */
.portfolio-block { margin-top: 68px; }
.portfolio-head { margin-bottom: 24px; }
.portfolio-heading h3 {
  font-family: 'Manrope', Arial, sans-serif;
  font-size: clamp(31px, 3.2vw, 45px);
  line-height: 1.18;
  letter-spacing: -.055em;
  margin: 0 0 8px;
  color: var(--navy);
}
.portfolio-heading p {
  max-width: 680px;
  color: #667789;
  font-size: 15px;
  line-height: 1.7;
  margin: 0;
}
.portfolio-showcase {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(0, .8fr);
  gap: 16px;
  align-items: stretch;
}
.portfolio-showcase .photo-tile { height: 312px; }
.portfolio-panel {
  padding: 32px;
  background: #eef5fa;
  border: 1px solid #e0eaf3;
  border-radius: 11px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}
.portfolio-panel > p {
  color: var(--navy);
  font-family: Manrope, Arial, sans-serif;
  font-size: clamp(19px, 1.6vw, 24px);
  line-height: 1.38;
  letter-spacing: -.04em;
  font-weight: 800;
  margin: 0 0 23px;
}
.gallery-expand {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 22px;
  padding: 12px 18px;
  min-height: 48px;
  background: var(--magenta);
  border: 1px solid var(--magenta);
  border-radius: 6px;
  color: #fff;
  font-size: 13px;
  font-weight: 800;
  transition: background .2s, transform .2s;
}
.gallery-expand:hover, .gallery-expand:focus-visible {
  background: #861041;
  transform: translateY(-2px);
}
.gallery-expand-icon { font-size: 19px; font-weight: 500; }
.portfolio-panel small {
  font-size: 11px;
  line-height: 1.65;
  color: #677d90;
  display: block;
  margin-top: 22px;
  max-width: 36ch;
}
.portfolio-more {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin-top: 16px;
}
.portfolio-more[hidden] { display: none !important; }
.portfolio-more .photo-tile { height: 270px; }
.impression-section .portfolio-heading h3 { color: #fff; }
.impression-section .portfolio-heading p { color: #bbccde; }
.impression-section .portfolio-panel {
  background: #12365a;
  border-color: rgba(255,255,255,.13);
}
.impression-section .portfolio-panel > p { color: #fff; }
.impression-section .portfolio-panel small { color: #aecaDE; }
@media (max-width: 850px) {
  .portfolio-showcase { grid-template-columns: 1.12fr .88fr; }
  .portfolio-panel { padding: 23px; }
}
@media (max-width: 720px) {
  .portfolio-block { margin-top: 48px; }
  .portfolio-showcase { grid-template-columns: 1fr; }
  .portfolio-showcase .photo-tile { height: 270px; }
  .portfolio-panel { padding: 25px; }
  .portfolio-more { gap: 10px; }
  .portfolio-more .photo-tile { height: 190px; }
}
@media (max-width: 480px) {
  .portfolio-more { grid-template-columns: 1fr; }
  .portfolio-more .photo-tile { height: 210px; }
}

/* Retouches ciblées d'octobre : conserver la DA Emocom existante. */
@media (min-width: 951px) {
  .header-inner { justify-content: flex-start; gap: 0; }
  .header-inner .brand { margin-right: 57px; }
  .category-nav { margin: 0 auto 0 0; }
  .category-nav .nav-link { padding-left: 20px; padding-right: 20px; }
  .category-nav .nav-link:first-child { padding-left: 0; }
  .category-nav .nav-link:last-child { padding-right: 20px; }
  .hero-layout { grid-template-columns: 48% 52%; }
  .hero-image-wrap {
    margin-left: calc((min(1170px, calc(100vw - 64px)) - 100vw) / 2);
    margin-right: 0;
  }
  .hero-copy { padding-left: 24px; }
  .hero h1 { font-size: clamp(49px, 4.65vw, 74px); line-height: 1.09; margin-top: 0; }
}
.category-nav .nav-link.nav-creation { color: #2179a5; }
.category-nav .nav-link.nav-impression { color: #081d3b; }
.category-nav .nav-link.nav-pose { color: #ae1e60; }
.category-nav .nav-link.nav-creation::after { background: #2179a5; }
.category-nav .nav-link.nav-impression::after { background: #26757b; }
.category-nav .nav-link.nav-pose::after { background: #ae1e60; }
.category-nav .nav-link:hover, .category-nav .nav-link.is-active { filter: brightness(.78); }
.hero-second-line { display: block; white-space: nowrap; }
.hero .accent-word { color: var(--navy); }
.hero .dot { color: var(--magenta); }
.hero-image-wrap { overflow: visible; }
.eye-image { mask-image: linear-gradient(90deg, #000 0%, #000 79%, transparent 100%); }
.statement-ticker div {
  white-space: normal;
  min-width: 0;
  width: min(1100px, calc(100% - 64px));
  margin: 0 auto;
  text-align: center;
  word-spacing: .8em;
  letter-spacing: .17em;
  line-height: 1.9;
}
/* Galerie photos : pas de superposition de texte ou de dégradé. */
.portfolio-block .photo-tile::after { display: none; }
.portfolio-block .photo-tile img { filter: none; }
.portfolio-block .portfolio-panel { justify-content: center; }
/* Alignement du libellé et de son astérisque sur la même ligne. */
.quote-form .native-fields .native-label-title {
  display: inline-flex;
  align-items: baseline;
  justify-content: flex-start;
  flex-wrap: nowrap;
  gap: 4px;
  color: var(--navy);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.4;
  letter-spacing: 0;
}
.quote-form .native-fields .native-label-title .required-mark,
.quote-form label .required-mark {
  display: inline;
  font-weight: 800;
  color: var(--magenta);
}
.quote-form .native-fields label:not(.consent-label) { gap: 9px; }
.quote-form .native-fields label:not(.consent-label) input,
.quote-form .native-fields label:not(.consent-label) select,
.quote-form .native-fields label:not(.consent-label) textarea { margin-top: 0; }
/* Assure une ancre claire pour le lien Retour en haut. */
#accueil { scroll-margin-top: 0; }
@media (min-width: 721px) and (max-width: 950px) {
  .hero-image-wrap { margin-left: -19px; }
  .hero h1 { font-size: clamp(43px, 5.3vw, 59px); }
  .hero-copy { padding-left: 8px; }
}
@media (max-width: 720px) {
  .hero-second-line { white-space: normal; }
  .hero-image-wrap { margin-left: -19px; }
  .hero h1 { font-size: clamp(48px, 10vw, 68px); }
  .statement-ticker div { width: calc(100% - 32px); font-size: 11px; word-spacing: .2em; }
}

.quote-form .field-label-title { display: inline-flex; align-items: baseline; gap: 4px; color: var(--navy); font-weight: 800; }

/* Retouches d’octobre : navigation Impression et lisibilité de la signature. */
.statement-row h2 { font-size: clamp(34px, 3.8vw, 54px); }
.statement-row p { font-size: 16.5px; line-height: 1.75; max-width: 680px; }
@media (max-width: 720px) {
  .statement-row h2 { font-size: clamp(32px, 6.7vw, 47px); }
  .statement-row p { font-size: 16px; }
}


/* Retouches demandées : header sans ombre, phrase Pose sur une ligne sur grand écran. */
.site-header,
.site-header.scrolled { box-shadow: none; }
.pose-section .pillar-heading .pillar-intro { max-width: none; }
@media (min-width: 1000px) {
  .pose-section .pillar-heading .pillar-intro { white-space: nowrap; }
}


/* Emocom : coordonnées sur toute la largeur, sans formulaire */
.contact-info-section { background: #f6f9fb; padding-top: 83px; padding-bottom: 90px; }
.contact-info-section .contact-details-wide {
  width: 100%;
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.4fr);
  align-items: center;
  gap: clamp(30px, 4.5vw, 68px);
  background: #fff;
  border: 1px solid #e0e9f0;
  border-radius: 15px;
  padding: clamp(28px, 4vw, 60px);
  box-shadow: 0 15px 45px rgba(8, 29, 59, .035);
}
.contact-details-lead h2 {
  font-size: clamp(33px, 3.7vw, 51px);
  line-height: 1.16;
  margin: 17px 0 20px;
}
.contact-details-lead h2 span { color: var(--magenta); }
.contact-details-lead p {
  max-width: 440px;
  color: #60778b;
  font-size: 15px;
  line-height: 1.85;
  margin: 0;
}
.contact-details-lead .contact-sign { margin-top: 30px; color: #75889a; }
.contact-info-section .contact-methods-wide {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 15px;
  margin: 0;
}
.contact-info-section .contact-methods-wide a,
.contact-info-section .contact-methods-wide a:last-child {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  min-width: 0;
  min-height: 200px;
  gap: 24px;
  padding: 26px 24px;
  border: 1px solid #dbe5ee;
  border-radius: 11px;
  background: #f5f9fc;
  text-decoration: none;
  transition: background .25s ease, transform .25s ease, border-color .25s ease;
}
.contact-info-section .contact-methods-wide a:hover,
.contact-info-section .contact-methods-wide a:focus-visible {
  background: #eef7fc;
  border-color: #80bbd9;
  transform: translateY(-3px);
}
.contact-info-section .contact-icon {
  width: 47px;
  height: 47px;
  flex: 0 0 47px;
  border: 1px solid #e1eaf0;
  background: #fff;
  font-size: 20px;
}
.contact-info-section .contact-meta { display: flex; flex-direction: column; gap: 7px; min-width: 0; }
.contact-info-section .contact-meta small { font-size: 10px; color: #738ba1; letter-spacing: .14em; }
.contact-info-section .contact-meta strong {
  font-family: Manrope, Arial, sans-serif;
  font-size: clamp(15px, 1.5vw, 19px);
  font-weight: 800;
  letter-spacing: -.03em;
  color: var(--navy);
  overflow-wrap: anywhere;
}
.contact-info-section .contact-link-arrow { position: absolute; right: 23px; top: 29px; color: var(--magenta); font-size: 22px; }
@media (max-width: 980px) {
  .contact-info-section .contact-details-wide { grid-template-columns: 1fr; }
  .contact-info-section .contact-methods-wide { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 590px) {
  .contact-info-section { padding-top: 52px; padding-bottom: 56px; }
  .contact-info-section .contact-details-wide { padding: 25px 20px; gap: 25px; }
  .contact-info-section .contact-methods-wide { grid-template-columns: 1fr; gap: 11px; }
  .contact-info-section .contact-methods-wide a,
  .contact-info-section .contact-methods-wide a:last-child { min-height: 132px; padding: 20px; gap: 15px; }
  .contact-info-section .contact-link-arrow { top: 22px; right: 19px; }
  .contact-details-lead h2 { font-size: clamp(32px, 8vw, 42px); }
  .contact-details-lead p { font-size: 14px; }
  .contact-details-lead .contact-sign { margin-top: 21px; }
}


/* Emocom : bande logos fictifs — conservation du fond bleu */
.trust-intro { padding: 63px 0 54px; }
.trust-intro .trust-banner { display: block; text-align: center; }
.trust-intro .trust-banner h2 {
  margin: 0;
  font-size: clamp(34px, 3.75vw, 53px);
  line-height: 1.18;
  letter-spacing: -.045em;
  color: #fff;
}
.trust-intro .trust-banner h2 span { color: #e15788; }
.trust-logo-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 15px;
  align-items: stretch;
  margin: 36px 0 23px;
}
.trust-logo {
  min-width: 0;
  min-height: 108px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 19px 12px;
  border: 1px solid rgba(174, 209, 237, .24);
  border-radius: 10px;
  background: rgba(244, 250, 255, .045);
  color: #f1f6fa;
  white-space: nowrap;
}
.trust-mark {
  flex: 0 0 31px;
  width: 31px;
  height: 31px;
  color: #7cc7e6;
}
.trust-logo:nth-child(2) .trust-mark,
.trust-logo:nth-child(4) .trust-mark { color: #e4779d; }
.trust-wordmark {
  min-width: 0;
  font-family: Manrope, Arial, sans-serif;
  font-size: clamp(11px, 1.25vw, 17px);
  font-weight: 850;
  letter-spacing: -.045em;
}
.trust-intro .trust-placeholder-note {
  margin: 0;
  color: #98b0c6;
  font-size: 11px;
  letter-spacing: .025em;
}
@media (max-width: 1050px) {
  .trust-logo-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .trust-wordmark { font-size: 16px; }
}
@media (max-width: 640px) {
  .trust-intro { padding: 52px 0 45px; }
  .trust-logo-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin: 27px 0 20px; }
  .trust-logo { min-height: 93px; padding: 14px 9px; gap: 8px; }
  .trust-logo:last-child { grid-column: 1 / -1; width: min(100%, 230px); justify-self: center; }
  .trust-wordmark { font-size: 13px; }
  .trust-mark { width: 27px; height: 27px; flex-basis: 27px; }
  .trust-intro .trust-placeholder-note { font-size: 10px; line-height: 1.6; }
}
