@font-face{font-family:Syne Fallback;src:local("Arial Black"),local("ArialBlack"),local("Arial Bold");size-adjust:141%;ascent-override:68%;descent-override:16%;line-gap-override:0%}@font-face{font-family:DM Sans Fallback;src:local("Arial"),local("Helvetica Neue"),local("Helvetica");size-adjust:102%;ascent-override:100%;descent-override:27%;line-gap-override:0%}@font-face{font-family:DM Mono Fallback;src:local("Courier New"),local("Courier");size-adjust:82%;ascent-override:90%}:root{--noir: #0D1B2A;--blanc: #F2F2F2;--rouge: #C32A25;--noir80: #162640;--noir60: #1E3255;--gris: #C4CAD4;--border-dark: rgba(242, 242, 242, .08);--border-light: rgba(13, 27, 42, .12);--font-display: "Syne", "Syne Fallback", sans-serif;--font-body: "DM Sans", "DM Sans Fallback", system-ui, -apple-system, Arial, sans-serif;--font-mono: "DM Mono", "DM Mono Fallback", "Courier New", monospace}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:18px}body{background:var(--noir);color:var(--blanc);font-family:var(--font-body);font-weight:300;line-height:1.7;overflow-x:hidden;-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}ul{list-style:none}.label{font-family:var(--font-mono);font-size:.875rem;letter-spacing:.12em;text-transform:uppercase;color:var(--rouge);display:flex;align-items:center;gap:.5rem;white-space:nowrap}.label:before{content:"";display:inline-block;width:18px;height:1px;background:var(--rouge);flex-shrink:0}.display{font-family:var(--font-display);font-weight:800;line-height:1;letter-spacing:-.02em}.title{font-family:var(--font-display);font-weight:700;line-height:1.1;letter-spacing:-.015em}.container{max-width:1140px;margin:0 auto;padding:0 36px}@media(max-width:600px){.container{padding:0 20px}}.reveal{opacity:0;transform:translateY(28px);transition:opacity .65s ease,transform .65s ease}.reveal.in{opacity:1;transform:translateY(0)}.reveal-delay-1{transition-delay:.1s}.reveal-delay-2{transition-delay:.2s}.reveal-delay-3{transition-delay:.3s}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}.marquee-track{animation:none}.btn-red,.btn-outline,.nav__cta,.about__badge,.expertise__card{transition:none}}.nav{position:fixed;top:0;left:0;right:0;z-index:200;background:#0d1b2aed;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border-dark)}.nav__inner{display:flex;align-items:center;justify-content:space-between;height:64px;padding:0 36px;max-width:1140px;margin:0 auto;gap:16px}.nav__logo{font-family:var(--font-display);font-weight:800;font-size:1.125rem;letter-spacing:.04em;color:var(--blanc);flex-shrink:0}.nav__logo .accent{color:var(--rouge)}.nav__links{display:flex;gap:28px;align-items:center}.nav__links a{font-size:.8125rem;font-weight:400;letter-spacing:.06em;text-transform:uppercase;color:var(--blanc);transition:color .2s;position:relative;white-space:nowrap}.nav__links a:after{content:"";position:absolute;left:0;bottom:-2px;width:0;height:1px;background:var(--rouge);transition:width .25s ease}.nav__links a:hover{color:var(--blanc);opacity:.75}.nav__links a:hover:after{width:100%}.lang-switch{display:flex;align-items:center;gap:0;border:1px solid var(--border-dark);flex-shrink:0}.lang-btn{font-family:var(--font-mono);font-size:.625rem;letter-spacing:.12em;padding:6px 10px;background:transparent;color:var(--gris);border:none;cursor:pointer;transition:background .2s,color .2s;text-transform:uppercase}.lang-btn.active{background:var(--rouge);color:var(--blanc)}.lang-btn:hover:not(.active){color:var(--blanc)}.nav__cta{font-size:.8125rem;font-weight:500;padding:9px 18px;border:1px solid var(--rouge);color:var(--blanc);letter-spacing:.06em;text-transform:uppercase;transition:background .2s,color .2s;white-space:nowrap;flex-shrink:0;min-height:44px;display:inline-flex;align-items:center}.nav__cta:hover{background:var(--rouge)}.nav__burger{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:4px;flex-shrink:0}.nav__burger span{display:block;width:24px;height:1.5px;background:var(--blanc);transition:transform .25s,opacity .25s}@media(max-width:900px){.nav__links,.nav__cta{display:none}.nav__burger{display:flex}}@media(max-width:600px){.nav__inner{padding:0 20px}.nav__inner .lang-switch{display:none}}.nav__mobile{display:none;flex-direction:column;background:var(--noir);border-top:1px solid var(--border-dark);padding:20px 36px 28px;gap:20px}.nav__mobile.open{display:flex}.nav__mobile a{font-size:1.0625rem;font-weight:500;letter-spacing:.04em;color:var(--blanc);text-transform:uppercase;transition:color .2s}.nav__mobile a:hover{color:var(--rouge)}.nav__mobile .lang-switch{align-self:flex-start;margin-top:8px}.hero{background:var(--noir);min-height:100svh;display:flex;flex-direction:column;justify-content:flex-end;padding:90px 36px 72px;max-width:1140px;margin:0 auto;position:relative}@media(min-width:900px){.hero{min-height:0;max-height:none;padding:130px 36px 100px;justify-content:flex-start}}.hero__num{font-family:var(--font-display);font-weight:800;font-size:clamp(160px,24vw,300px);line-height:1;color:var(--noir60);position:absolute;right:-10px;bottom:40px;letter-spacing:-.04em;user-select:none;pointer-events:none;z-index:0}.hero__content{position:relative;z-index:1}.hero__label{margin-bottom:32px}.hero__title{font-size:clamp(52px,8.5vw,108px);color:var(--blanc);margin-bottom:36px}.hero__title .accent{color:var(--rouge)}.hero__title .italic{font-style:italic;font-weight:700}.hero__body{font-size:1.1875rem;color:var(--gris);max-width:560px;line-height:1.8;margin-bottom:52px}@media(min-width:1200px){.hero__body{max-width:740px}}.hero__actions{display:flex;gap:16px;flex-wrap:wrap;align-items:center}.btn-red{display:inline-flex;align-items:center;gap:10px;padding:15px 30px;background:var(--rouge);color:var(--blanc);font-family:var(--font-body);font-size:.9375rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;transition:opacity .2s,transform .15s;border:none;cursor:pointer}.btn-red:hover{opacity:.88;transform:translateY(-1px)}.btn-outline{display:inline-flex;align-items:center;gap:10px;padding:15px 30px;border:1px solid var(--border-dark);color:var(--gris);font-size:.9375rem;letter-spacing:.06em;text-transform:uppercase;transition:border-color .2s,color .2s}.btn-outline:hover{border-color:var(--blanc);color:var(--blanc)}.hero__microcopy{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.06em;color:var(--gris);opacity:.65;margin-top:14px}.hero__scroll{position:absolute;right:36px;bottom:88px;font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gris);writing-mode:vertical-rl;z-index:1}@media(max-width:600px){.hero__scroll{display:none}}.marquee-section{border-top:1px solid var(--border-dark);border-bottom:1px solid var(--border-dark);background:var(--noir80);overflow:visible;padding:0;display:flex;align-items:center}.marquee-inner{flex:1;overflow:hidden;padding:18px 0}.marquee-track{display:flex;width:max-content;animation:marquee 24s linear infinite}.marquee-track:hover{animation-play-state:paused}.marquee-item{display:flex;align-items:center;gap:28px;padding:0 28px;font-family:var(--font-mono);font-size:.8125rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gris);white-space:nowrap}.marquee-item span{color:var(--rouge);font-size:.6875rem}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.about{background:var(--noir);padding:100px 0;border-bottom:1px solid var(--border-dark)}.about__grid{display:grid;grid-template-columns:400px 1fr;gap:80px;align-items:center}.about__photo-wrap{position:relative}.about__photo-wrap:after{content:"";position:absolute;bottom:-14px;right:-14px;width:55%;height:55%;border:1px solid var(--rouge);pointer-events:none}.about__photo{width:100%;height:auto;aspect-ratio:3 / 4;display:block;filter:grayscale(15%)}.about__title{font-size:clamp(28px,3.5vw,44px);color:var(--blanc);margin-top:20px;margin-bottom:24px}.about__body{font-size:1.0625rem;color:var(--gris);line-height:1.85;margin-bottom:36px}.about__badges{display:flex;flex-wrap:wrap;gap:10px}.about__badge{font-family:var(--font-mono);font-size:.625rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gris);border:1px solid var(--border-dark);padding:6px 14px;transition:border-color .2s,color .2s}.about__badge:hover{border-color:var(--rouge);color:var(--blanc)}@media(max-width:860px){.about__grid{grid-template-columns:1fr;gap:48px}.about__photo-wrap{max-width:340px;margin:0 auto}}.expertise{background:var(--blanc);color:var(--noir);padding:100px 0}.expertise .label{color:var(--rouge)}.expertise .label:before{background:var(--rouge)}.expertise__header{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:end;margin-bottom:72px}.expertise__title{font-size:clamp(34px,4.5vw,52px);color:var(--noir)}.expertise__intro{font-size:1.0625rem;color:#3d4a5c;line-height:1.8}.expertise__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--border-light);border:1px solid var(--border-light)}.expertise__card{background:var(--blanc);padding:40px 32px;transition:background .2s;position:relative}.expertise__card:hover{background:#e8e8e8}.expertise__card-num{font-family:var(--font-display);font-weight:800;font-size:3.5rem;color:#0d1b2a12;position:absolute;top:20px;right:24px;line-height:1;pointer-events:none}.expertise__card-name{font-family:var(--font-display);font-weight:700;font-size:1.25rem;color:var(--noir);margin-bottom:14px;line-height:1.3}.expertise__card-body{font-size:.9375rem;color:#3d4a5c;line-height:1.7;margin-bottom:20px}.expertise__card-tag{font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.12em;text-transform:uppercase;color:var(--rouge);border-top:1px solid var(--border-light);padding-top:14px}@media(max-width:820px){.expertise__header{grid-template-columns:1fr}.expertise__grid{grid-template-columns:1fr 1fr}}@media(max-width:520px){.expertise__grid{grid-template-columns:1fr}}.portfolio-preview{background:var(--noir80);padding:100px 0;border-top:1px solid var(--border-dark);border-bottom:1px solid var(--border-dark)}.portfolio-preview .label{color:var(--rouge)}.portfolio-preview .label:before{background:var(--rouge)}.portfolio-preview .offres__header{margin-bottom:56px}.portfolio-preview .offres__title{color:var(--blanc);margin-top:20px}.portfolio-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px}.portfolio-card{background:var(--noir);overflow:hidden;position:relative}.portfolio-card__img-wrap{overflow:hidden;aspect-ratio:16/10}.portfolio-card__img-wrap img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}.portfolio-card:hover .portfolio-card__img-wrap img{transform:scale(1.04)}.portfolio-card__img-wrap video{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}.portfolio-card:hover .portfolio-card__img-wrap video{transform:scale(1.04)}.portfolio-copy{padding:28px 28px 32px}.portfolio-copy h3{font-family:var(--font-display);font-weight:700;font-size:1.0625rem;color:var(--blanc);margin-bottom:8px;line-height:1.3}.portfolio-copy p{font-size:.875rem;color:var(--gris);line-height:1.65}.portfolio-tag{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--rouge);margin-top:14px;display:block}.portfolio-card--wide{grid-column:1 / -1}@media(max-width:720px){.portfolio-grid{grid-template-columns:1fr}}.stats{background:var(--noir);border-top:1px solid var(--border-dark);border-bottom:1px solid var(--border-dark);padding:80px 0}.stats__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--border-dark)}.stat__block{background:var(--noir);padding:36px 28px}.stat__num{font-family:var(--font-display);font-weight:800;font-size:clamp(38px,5vw,58px);line-height:1;color:var(--blanc);margin-bottom:10px}.stat__num sup{font-size:.45em;color:var(--rouge);vertical-align:super}.stat__label{font-size:.9375rem;color:var(--gris);line-height:1.5}@media(max-width:720px){.stats__grid{grid-template-columns:1fr 1fr}}@media(max-width:400px){.stats__grid{grid-template-columns:1fr}}.offres{background:var(--blanc);color:var(--noir);padding:100px 0}.offres .label{color:var(--rouge)}.offres .label:before{background:var(--rouge)}.offres__header{margin-bottom:64px}.offres__title{font-size:clamp(32px,4vw,50px);color:var(--noir);margin-top:20px}.offres__grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.offre{border:1px solid var(--border-light);padding:40px 36px;display:flex;flex-direction:column;gap:16px;transition:border-color .2s,box-shadow .2s;background:var(--blanc)}.offre:hover{border-color:var(--rouge);box-shadow:0 4px 28px #c32a2512}.offre__index{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.15em;color:var(--rouge)}.offre__name{font-family:var(--font-display);font-weight:700;font-size:1.375rem;color:var(--noir);line-height:1.2}.offre__body{font-size:.9375rem;color:#3d4a5c;line-height:1.75;flex:1}.offre__price{font-family:var(--font-mono);font-size:.8125rem;letter-spacing:.08em;color:var(--noir);border-top:1px solid var(--border-light);padding-top:16px}@media(max-width:640px){.offres__grid{grid-template-columns:1fr}}.tarifs{background:var(--noir);padding:100px 0}.tarifs__header{margin-bottom:64px}.tarifs__title{font-size:clamp(32px,4vw,50px);color:var(--blanc);margin-top:20px}.tarifs__row{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--border-dark);margin-bottom:48px}.tarif{background:var(--noir);padding:40px 32px;display:flex;flex-direction:column;gap:10px;position:relative;transition:background .2s}.tarif:hover{background:var(--noir80)}.tarif.featured{border-top:2px solid var(--rouge);background:var(--noir80)}.tarif__badge{position:absolute;top:-1px;right:20px;font-family:var(--font-mono);font-size:.575rem;letter-spacing:.12em;text-transform:uppercase;background:var(--rouge);color:var(--blanc);padding:4px 10px}.tarif__name{font-size:.9375rem;color:var(--gris);font-weight:400;line-height:1.4}.tarif__price{font-family:var(--font-display);font-weight:800;font-size:clamp(20px,2.2vw,28px);color:var(--blanc);line-height:1;white-space:nowrap}.tarif__unit{font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.1em;color:var(--gris)}.tarif__list{margin-top:10px;display:flex;flex-direction:column;gap:8px}.tarif__list li{font-size:.9375rem;color:var(--gris);padding-left:18px;position:relative;line-height:1.5}.tarif__list li:before{content:"\2014";position:absolute;left:0;color:var(--rouge);font-size:.8125rem}.tarifs__note{font-size:.9375rem;color:var(--gris);line-height:1.7;border-left:2px solid var(--rouge);padding-left:20px;max-width:700px}@media(max-width:900px){.tarifs__row{grid-template-columns:1fr}}.positioning-card{margin-top:48px;border:1px solid var(--border-dark);background:var(--noir80);padding:36px 32px 28px}.positioning-card__title{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.16em;text-transform:uppercase;color:var(--rouge);margin-bottom:28px}.positioning-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.positioning-table{width:100%;border-collapse:collapse;min-width:520px}.positioning-table thead th{font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gris);text-align:center;padding:0 20px 16px;font-weight:400;border-bottom:1px solid var(--border-dark)}.positioning-table thead th:first-child{text-align:left;padding-left:0}.positioning-table thead th.cia-col{color:var(--blanc);border-bottom:2px solid var(--rouge)}.positioning-table thead th.cia-col em{color:var(--rouge);font-style:normal}.positioning-table tbody td{padding:13px 20px;font-size:.875rem;color:var(--gris);text-align:center;border-bottom:1px solid var(--border-dark);vertical-align:middle;line-height:1.4}.positioning-table tbody td:first-child{text-align:left;padding-left:0}.positioning-table tbody tr:last-child td{border-bottom:none}.cell-yes{color:var(--blanc)!important;font-weight:500}.cell-no{color:#c4cad4a6!important}.cell-mid{color:#c4cad4cc!important}.cia-col{background:#c32a2512}.row-price td{font-family:var(--font-display);font-weight:700;font-size:1rem;color:var(--blanc)!important;padding-top:20px;border-top:1px solid var(--border-dark);border-bottom:none}.positioning-source{font-family:var(--font-mono);font-size:.625rem;letter-spacing:.1em;text-transform:uppercase;color:#c4cad459;margin-top:18px}.refs{background:var(--blanc);color:var(--noir);padding:100px 0}.refs .label{color:var(--rouge)}.refs .label:before{background:var(--rouge)}.refs__title{font-size:clamp(32px,4vw,50px);color:var(--noir);margin-top:20px;margin-bottom:56px}.refs-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.refs__table{width:100%;min-width:560px;border-collapse:collapse}.refs__table thead tr{border-bottom:1px solid var(--border-light)}.refs__table th{font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.16em;text-transform:uppercase;color:var(--rouge);text-align:left;padding:0 0 14px;font-weight:400}.refs__table th+th{padding-left:28px}.refs__table tbody tr{border-bottom:1px solid var(--border-light);transition:background .15s}.refs__table tbody tr:hover{background:#e8e8e8}.refs__table td{padding:20px 0;font-size:.9375rem;color:#3d4a5c;vertical-align:top;line-height:1.5}.refs__table td+td{padding-left:28px}.refs__table td strong{font-weight:500;color:var(--noir)}.contact{background:var(--noir);padding:100px 0}.contact__grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.contact__title{font-size:clamp(32px,4.5vw,52px);color:var(--blanc);margin-top:20px;margin-bottom:28px}.contact__body{font-size:1.0625rem;color:var(--gris);line-height:1.8;margin-bottom:40px}.contact__info{display:flex;flex-direction:column;gap:28px}.contact__item-label{font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.16em;text-transform:uppercase;color:var(--rouge);margin-bottom:4px}.contact__item-val{font-size:1rem;color:var(--blanc)}.contact__item-val a{transition:color .2s}.contact__item-val a:hover{color:var(--rouge)}@media(max-width:720px){.contact__grid{grid-template-columns:1fr;gap:52px}}.footer{background:#060b14;border-top:1px solid var(--border-dark);padding:28px 0}.footer__inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}.footer__logo{font-family:var(--font-display);font-weight:800;font-size:.9375rem;letter-spacing:.04em;color:var(--blanc)}.footer__logo .accent{color:var(--rouge)}.footer__copy{font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.1em;color:var(--gris)}.footer__tags{display:flex;gap:20px;flex-wrap:wrap}.footer__tags span{font-size:.6875rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gris);opacity:.5}:focus-visible{outline:3px solid #ff8080;outline-offset:4px;border-radius:2px}.expertise :focus-visible,.offres :focus-visible,.refs :focus-visible{outline-color:var(--rouge)}.skip-link{position:absolute;top:-200%;left:16px;z-index:9999;background:var(--rouge);color:var(--blanc);padding:12px 24px;font-family:var(--font-body);font-weight:500;font-size:1rem;text-decoration:none;border-radius:0 0 4px 4px;transition:top .15s ease}.skip-link:focus{top:0;outline:3px solid var(--blanc);outline-offset:-6px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}#about,#expertise,#portfolio,#offres,#tarifs,#references,#contact{scroll-margin-top:72px}.about .label,.portfolio-preview .label,.tarifs .label,.contact .label{color:#ff8080}.about .label:before,.portfolio-preview .label:before,.tarifs .label:before,.contact .label:before{background:#ff8080}.portfolio-tag,.contact__item-label,.positioning-card__title{color:#ff8080}.lang-btn{min-height:44px;min-width:44px}.btn-red,.btn-outline{min-height:48px}.nav__burger{min-height:44px;min-width:44px;justify-content:center}.marquee-pause-btn{min-width:44px;min-height:44px;flex-shrink:0;background:transparent;border:1px solid var(--border-dark);color:var(--gris);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;transition:color .2s,border-color .2s;margin-right:12px;padding:0 12px;gap:6px}.marquee-pause-btn:hover,.marquee-pause-btn:focus-visible{color:var(--blanc);border-color:#f2f2f24d}@media(prefers-reduced-motion:reduce){.marquee-track{animation-play-state:paused!important}.reveal{opacity:1!important;transform:none!important;transition:none!important}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.faq{padding:120px 0;background:var(--noir)}.faq__header{margin-bottom:64px}.faq__list{max-width:820px;margin:0 auto;display:flex;flex-direction:column;gap:0}.faq__item{border-top:1px solid var(--border-dark)}.faq__item:last-child{border-bottom:1px solid var(--border-dark)}.faq__btn{width:100%;background:none;border:none;padding:28px 0;display:flex;align-items:center;justify-content:space-between;gap:24px;cursor:pointer;text-align:left;color:var(--blanc);font-family:var(--font-body);font-size:1.0625rem;font-weight:500;line-height:1.45;transition:color .2s}.faq__btn:hover{color:var(--gris)}.faq__icon{flex-shrink:0;width:22px;height:22px;border-radius:50%;border:1px solid var(--border-dark);display:flex;align-items:center;justify-content:center;transition:transform .3s ease,border-color .2s}.faq__icon svg{display:block}.faq__btn[aria-expanded=true] .faq__icon{transform:rotate(45deg);border-color:var(--rouge)}.faq__answer{overflow:hidden;max-height:0;transition:max-height .35s ease}.faq__answer-inner{padding:0 0 28px;font-family:var(--font-body);font-size:.9375rem;font-weight:300;line-height:1.8;color:var(--gris);max-width:720px}@media(max-width:768px){.faq{padding:80px 0}.faq__btn{font-size:1rem;padding:22px 0}}#cookie-banner{position:fixed;bottom:0;left:0;right:0;z-index:9999;background:#060b14;border-top:1px solid var(--border-dark);color:var(--blanc);padding:18px 32px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;box-shadow:0 -8px 32px #0006;transform:translateY(100%);transition:transform .4s ease}#cookie-banner.visible{transform:translateY(0)}#cookie-banner p{margin:0;font-size:.8125rem;line-height:1.6;flex:1;min-width:220px;color:var(--gris)}#cookie-banner a{color:var(--rouge);text-decoration:underline}.cookie-btns{display:flex;gap:10px;flex-shrink:0}.ck-accept{background:var(--rouge);color:var(--blanc);border:none;border-radius:4px;min-height:44px;padding:9px 20px;font-family:var(--font-body);font-size:.8125rem;font-weight:600;cursor:pointer;transition:opacity .2s}.ck-accept:hover{opacity:.82}.ck-refuse{background:transparent;color:var(--gris);border:1px solid var(--border-dark);border-radius:4px;min-height:44px;padding:9px 20px;font-family:var(--font-body);font-size:.8125rem;cursor:pointer;transition:color .2s,border-color .2s}.ck-refuse:hover{color:var(--blanc);border-color:#f2f2f240}dialog.cia-modal-box{background:#060b14;border:1px solid var(--border-dark);border-radius:10px;padding:52px;max-width:min(780px,calc(100vw - 32px));width:100%;margin:auto;max-height:calc(100vh - 96px);overflow-y:auto;color:var(--gris)}dialog.cia-modal-box::backdrop{background:#000000bf;backdrop-filter:blur(6px)}.cia-modal-close{position:absolute;top:20px;right:20px;background:none;border:none;font-size:1.25rem;cursor:pointer;color:var(--gris);padding:6px 10px;line-height:1;transition:color .2s}.cia-modal-close:hover{color:var(--blanc)}.cia-modal-box h2{font-family:var(--font-display);font-size:1.75rem;font-weight:800;color:var(--blanc);margin:0 0 36px}.cia-modal-box h3{font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.12em;text-transform:uppercase;color:var(--rouge);margin:32px 0 10px}.cia-modal-box p,.cia-modal-box ul{font-size:.9375rem;line-height:1.75;color:var(--gris);margin:0 0 10px}.cia-modal-box a{color:var(--rouge)}.cia-modal-box ul{padding-left:20px}.cia-modal-box strong{color:var(--blanc);font-weight:600}@media(max-width:600px){.cia-modal-box{padding:36px 24px}}@media(pointer:fine){body,a,button,[role=button],.portfolio-card,label{cursor:none}}#cia-cursor{position:fixed;top:0;left:0;width:18px;height:18px;background:var(--blanc);border-radius:50%;pointer-events:none;mix-blend-mode:difference;transform:translate(-50%,-50%) scale(1);transition:width .18s ease,height .18s ease,opacity .3s ease;z-index:99999;will-change:transform;opacity:0}#cia-cursor.active{opacity:1}#cia-cursor.hover{width:54px;height:54px}@media(pointer:coarse){#cia-cursor{display:none!important}}.portfolio-card__img-wrap{position:relative}.portfolio-card__overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(13,27,42,.92) 0%,rgba(13,27,42,.45) 55%,transparent 100%);display:flex;flex-direction:column;justify-content:flex-end;padding:22px 26px;opacity:0;transition:opacity .35s ease}.portfolio-card:hover .portfolio-card__overlay,.portfolio-card:focus-within .portfolio-card__overlay{opacity:1}.portfolio-card__overlay-tag{font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.14em;text-transform:uppercase;color:#ff8080;margin-bottom:5px;display:block}.portfolio-card__overlay-title{font-family:var(--font-display);font-size:1.0625rem;font-weight:700;color:var(--blanc);line-height:1.25}.contact__form{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.contact__form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media(max-width:600px){.contact__form-row{grid-template-columns:1fr}}.contact__form input,.contact__form textarea{background:var(--noir80);border:1px solid var(--border-dark);color:var(--blanc);font-family:var(--font-body);font-size:.9375rem;font-weight:300;line-height:1.6;padding:13px 16px;width:100%;transition:border-color .2s;resize:none;-webkit-appearance:none;appearance:none;border-radius:0}.contact__form input::placeholder,.contact__form textarea::placeholder{color:#c4cad480}.contact__form select{background-color:var(--noir80);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23C4CAD4' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;border:1px solid var(--border-dark);color:var(--blanc);font-family:var(--font-body);font-size:.9375rem;font-weight:300;padding:13px 44px 13px 16px;width:100%;-webkit-appearance:none;appearance:none;border-radius:0;cursor:pointer;transition:border-color .2s}.contact__form select:invalid{color:#c4cad480}.contact__form select option{background:var(--noir80);color:var(--blanc)}.contact__form select:focus,.contact__form input:focus,.contact__form textarea:focus{border-color:#f2f2f24d;outline:none}.contact__form select:focus-visible,.contact__form input:focus-visible,.contact__form textarea:focus-visible{outline:3px solid #ff8080;outline-offset:2px}.contact__form-msg{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.06em;padding:11px 14px;display:none}.contact__form-msg.success{background:#22c55e1a;border:1px solid rgba(34,197,94,.22);color:#86efac;display:block}.contact__form-msg.error{background:#c32a251a;border:1px solid rgba(195,42,37,.22);color:#ff8080;display:block}.contact__form .btn-red[disabled]{opacity:.5;pointer-events:none}.contact__mailto{display:block;margin-top:6px;font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.08em;color:var(--gris);opacity:.7}.contact__mailto a{color:inherit;transition:color .2s}.contact__mailto a:hover{color:var(--blanc);opacity:1}
