@layer reset,tokens,base,layout,components,utilities;@layer reset{ *,::after,::before,::backdrop,::file-selector-button{box-sizing: border-box;margin: 0;padding: 0;border: 0 solid}html,:host{line-height: 1.5;-webkit-text-size-adjust: 100%;tab-size: 4;font-family: var(--default-font-family,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue','Noto Sans',Arial,sans-serif,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol','Noto Color Emoji');font-feature-settings: var(--default-font-feature-settings,normal);font-variation-settings: var(--default-font-variation-settings,normal);-webkit-tap-highlight-color: transparent}hr{height: 0;color: inherit;border-top-width: 1px}abbr:where([title]){-webkit-text-decoration: underline dotted;text-decoration: underline dotted}h1,h2,h3,h4,h5,h6{font-size: inherit;font-weight: inherit}a{color: inherit;-webkit-text-decoration: inherit;text-decoration: inherit}b,strong{font-weight: bolder}code,kbd,samp,pre{font-family: var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,'Liberation Mono','Courier New',monospace);font-feature-settings: var(--default-mono-font-feature-settings,normal);font-variation-settings: var(--default-mono-font-variation-settings,normal);font-size: 1em}small{font-size: 80%}sub,sup{font-size: 75%;line-height: 0;position: relative;vertical-align: baseline}sub{bottom: -0.25em}sup{top: -0.5em}table{text-indent: 0;border-color: inherit;border-collapse: collapse}:-moz-focusring:where(:not(iframe)){outline: auto}progress{vertical-align: baseline}summary{display: list-item}ol,ul,menu{list-style: none}img,svg,video,canvas,audio,iframe,embed,object{display: block;vertical-align: middle}img,video{max-width: 100%;height: auto}button,input,select,optgroup,textarea,::file-selector-button{font: inherit;font-feature-settings: inherit;font-variation-settings: inherit;letter-spacing: inherit;color: inherit;border-radius: 0;background-color: transparent;opacity: 1}:where(select:is([multiple],[size])) optgroup{font-weight: bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start: 20px}::file-selector-button{margin-inline-end: 4px}::placeholder{opacity: 1}@supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px){::placeholder{color: currentcolor;@supports (color: color-mix(in lab,red,red)){color: color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize: vertical}::-webkit-search-decoration{-webkit-appearance: none}::-webkit-date-and-time-value{min-height: 1lh;text-align: inherit}::-webkit-datetime-edit{display: inline-flex}::-webkit-datetime-edit-fields-wrapper{padding: 0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-meridiem-field{padding-block: 0}::-webkit-calendar-picker-indicator{line-height: 1}:-moz-ui-invalid{box-shadow: none}button,input:where([type='button'],[type='reset'],[type='submit']),::file-selector-button{appearance: button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height: auto}[hidden]:where(:not([hidden='until-found'])){display: none !important}}@layer tokens{ :root{--color-void: #0C0B09;--color-coal: #14120E;--color-bone: #EDE8DE;--color-ash: #d1d5db;--color-ember: #F0A30A;--font-display: "Instrument Serif",Georgia,serif;--font-grotesk: "Space Grotesk",sans-serif}}@layer base{html{scroll-behavior: smooth;background: var(--color-void)} body{background: var(--color-void);color: var(--color-bone);font-family: var(--font-grotesk);-webkit-font-smoothing: antialiased} a{color: var(--color-bone);text-decoration: none}a:hover{color: var(--color-ember)}::selection{background: var(--color-ember);color: var(--color-void)}}@layer layout{  .page{background-color: var(--color-void);color: var(--color-bone);font-family: var(--font-grotesk);overflow-x: clip} .shell{margin-inline: auto;max-inline-size: 1600px;padding-inline: 1.5rem}@media (min-width: 48rem){.shell{padding-inline: 3rem}} .shell--narrow{max-inline-size: 1100px} .site-nav__inner{display: flex;align-items: center;justify-content: space-between;block-size: 5rem} .hero__inner{position: relative;inline-size: 100%;padding-block: 120px 140px} .about__grid{display: grid;align-items: center;gap: 72px}@media (min-width: 64rem){.about__grid{grid-template-columns: repeat(12,minmax(0,1fr))}} @media (min-width: 64rem){.about__media{grid-column: span 5 / span 5}.about__body{grid-column: span 7 / span 7}} .services__track{display: flex;flex-direction: column;inline-size: 100%}@media (min-width: 48rem){.services__track{flex-direction: row;inline-size: max-content}} .site-footer__grid{display: grid;gap: 2.5rem}@media (min-width: 48rem){.site-footer__grid{grid-template-columns: repeat(12,minmax(0,1fr))} .site-footer__col--brand{grid-column: span 5 / span 5}.site-footer__col--address{grid-column: span 4 / span 4}.site-footer__col--legal{grid-column: span 3 / span 3}} .site-footer__bottom{display: flex;flex-wrap: wrap;justify-content: space-between;align-items: flex-end;margin-block-start: 3.5rem;gap: 0.75rem}}@layer components{  .eyebrow{font-size: 12px;letter-spacing: .34em;text-transform: uppercase;color: var(--color-ember)} .caption{text-transform: uppercase;font-size: 11px;letter-spacing: .28em} .btn-pill{display: inline-flex;font-size: 12px;letter-spacing: .22em;font-weight: 500;text-transform: uppercase;color: var(--color-void);background: var(--color-ember);border-radius: 999px}.btn-pill:hover{background: var(--color-bone);color: var(--color-void)} .btn-pill--nav{align-items: center;padding: 13px 26px;gap: 0.625rem} .btn-pill--hero{align-items: center;padding: 1.25rem 2.5rem;gap: 0.75rem} .btn-pill--menu{align-self: flex-start;margin-block-start: 2.25rem;padding: 1rem 2rem} .btn-pill--contact{align-items: center;padding: 22px 2.75rem} .btn-pill--tarif{align-self: flex-start;align-items: center;margin-block-start: 2.5rem;padding: 1rem 2rem} .nav-link{font-size: 12px;letter-spacing: .24em;text-transform: uppercase;font-weight: 700;color: var(--color-ash)}.nav-link:hover{color: var(--color-bone)} .link-underline{font-size: 12px;letter-spacing: .22em;text-transform: uppercase;color: var(--color-ash);border-bottom: 1px solid rgba(138,133,123,.5);padding-bottom: 5px}.link-underline:hover{color: var(--color-bone);border-bottom-color: var(--color-bone)} .mobile-link{font-family: var(--font-display);font-size: 52px;font-style: italic;color: var(--color-bone);padding: 10px 0;border-bottom: 1px solid rgba(237,232,222,.1)}.mobile-link:hover{color: var(--color-bone)}.footer-link{font-size: 14px;font-weight: 300;color: var(--color-bone);opacity: .8}.footer-link:hover{color: var(--color-ember)} .outline-num{color: transparent;-webkit-text-stroke: 1px rgba(237,232,222,.3)}.outline-glyph{color: transparent;-webkit-text-stroke: 1px rgba(240,163,10,.14)}.outline-marquee{color: transparent;-webkit-text-stroke: 1px rgba(237,232,222,.35)}.outline-footer{color: transparent;-webkit-text-stroke: 1px rgba(237,232,222,.14)}.outline-vita{color: transparent;-webkit-text-stroke: 1px rgba(240,163,10,.4)}  .scroll-progress{position: fixed;top: 0;left: 0;z-index: 50;block-size: 0.125rem;inline-size: 100%;background-color: var(--color-ember);transform-origin: 0;transform: scaleX(0)} .film-grain{position: fixed;inset: 0;pointer-events: none;z-index: 6;opacity: .05;background-image: url('data:image/svg+xml;utf8,<svg xmlns=%22http://www.w3.org/2000/svg%22 width=%22160%22 height=%22160%22><filter id=%22n%22><feTurbulence type=%22fractalNoise%22 baseFrequency=%220.9%22 numOctaves=%222%22/></filter><rect width=%22160%22 height=%22160%22 filter=%22url(%23n)%22 opacity=%221%22/></svg>');background-size: 160px} .cursor-glow{position: fixed;display: none;left: 0;top: 0;pointer-events: none;inline-size: 360px;block-size: 360px;margin: -180px 0 0 -180px;border-radius: 999px;z-index: 5;background: radial-gradient(circle,rgba(240,163,10,.10) 0%,rgba(240,163,10,0) 60%);opacity: 0}@media (min-width: 48rem){.cursor-glow{display: block}}  .site-nav{position: fixed;top: 0;left: 0;right: 0;z-index: 40;border-bottom: 1px solid transparent;transition: background .4s,backdrop-filter .4s,border-color .4s} .brand{display: flex;align-items: baseline;font-size: 22px;letter-spacing: .01em}.brand__prefix{color: var(--color-ash);font-weight: 400}.brand__name{color: var(--color-ember)} .brand__dot{inline-size: 5px;block-size: 5px;border-radius: 999px;background-color: var(--color-ember);margin-inline-start: 0.375rem;animation: pulse 3s ease-in-out infinite}@keyframes pulse{0%,100%{transform: scale(1);opacity: .6}50%{transform: scale(1.6);opacity: 1}} .site-nav__links{display: none;align-items: center;gap: 2.75rem}@media (min-width: 48rem){.site-nav__links{display: flex}} .burger{display: flex;flex-direction: column;align-items: center;justify-content: center;inline-size: 3rem;block-size: 3rem;gap: 7px;background-color: transparent;border: 1px solid rgba(237,232,222,.25);border-radius: 999px;cursor: pointer}@media (min-width: 48rem){.burger{display: none}} .burger__line{display: block;inline-size: 18px;block-size: 1.5px;background-color: var(--color-bone)} .mobile-menu{position: fixed;inset: 0;z-index: 30;display: flex;flex-direction: column;justify-content: center;padding: 2.5rem;background-color: var(--color-void);opacity: 0;pointer-events: none}@media (min-width: 48rem){.mobile-menu{display: none}} .mobile-menu__nav{display: flex;flex-direction: column;gap: 0.25rem} .mobile-menu__claim{color: var(--color-ash);font-size: 12px;letter-spacing: .2em;text-transform: uppercase;margin-block-start: 3.5rem}  .hero{position: relative;display: flex;flex-direction: column;justify-content: center;overflow: hidden;min-block-size: 100svh} .hero__canvas{position: absolute;inset: 0;inline-size: 100%;block-size: 100%} .hero__glow{position: absolute;inset: 0;background: radial-gradient(900px 500px at 50% 110%,rgba(240,163,10,.09),transparent 70%)} .hero__eyebrow{margin-block-end: 2.5rem} .hero__title{line-height: .96;font-weight: 400} .hero__line{display: block;font-family: var(--font-display);font-size: clamp(64px,12.5vw,200px);color: var(--color-bone);letter-spacing: -0.01em} .hero__line--accent{display: inline-block;font-style: italic;color: var(--color-ember)} .hero__line-wrap{display: block;overflow: visible} .hero__lede{display: inline-block;font-family: var(--font-grotesk);color: var(--color-ash);font-size: clamp(15px,1.4vw,20px);letter-spacing: .04em;margin-inline-start: 3vw;max-inline-size: 26ch;line-height: 1.55;vertical-align: baseline;font-weight: 300;text-wrap: pretty} .hero__actions{display: flex;flex-wrap: wrap;align-items: center;gap: 1.75rem;margin-block-start: 4rem} .hero__meta{position: absolute;display: none;justify-content: space-between;align-items: flex-end;padding-inline: 1.5rem;left: 0;right: 0;bottom: 1.75rem;color: var(--color-ash)}@media (min-width: 48rem){.hero__meta{display: flex;padding-inline: 3rem}}  .manifest{position: relative;padding-block: 22vh} .manifest__eyebrow{margin-block-end: 3rem} .manifest__text{font-family: var(--font-display);font-size: clamp(30px,4.6vw,64px);line-height: 1.25;color: var(--color-bone);text-wrap: pretty}  .about{position: relative;padding-block: 14vh;background-color: var(--color-coal);border-block: 1px solid rgba(237,232,222,.07)} .about__portrait{position: relative;overflow: hidden;aspect-ratio: 1/1;max-inline-size: 520px;background-color: var(--color-void)} .about__portrait-img{inline-size: 100%;block-size: 115%;object-fit: cover} .about__portrait-overlay{position: absolute;inset: 0;background: linear-gradient(180deg,rgba(240,163,10,.16),rgba(12,11,9,.28));mix-blend-mode: multiply} .about__portrait-caption{position: absolute;left: 1.25rem;bottom: 1rem;letter-spacing: .26em;color: rgba(237,232,222,.75)} .about__title{font-family: var(--font-display);font-weight: 400;font-size: clamp(44px,6vw,96px);line-height: 1.02;margin-block-start: 1.75rem;color: var(--color-bone)} .about__text{font-size: 1.125rem;line-height: 1.85;color: var(--color-ash);font-weight: 300;margin-block-start: 2.25rem;max-inline-size: 58ch;text-wrap: pretty} .about__text--tight{margin-block-start: 22px} .about__stats{display: flex;flex-wrap: wrap;gap: 3rem;margin-block-start: 3rem;border-top: 1px solid rgba(237,232,222,.1);padding-block-start: 1.75rem} .about__stat-value{font-family: var(--font-display);font-size: 44px;line-height: 1;color: var(--color-bone)} .about__stat-label{letter-spacing: .24em;color: var(--color-ash);margin-block-start: 0.625rem} .services{position: relative} .services__pin{position: relative;overflow: hidden} .services__intro{display: flex;flex-direction: column;justify-content: center;padding-inline: 1.5rem;inline-size: 100vw;min-block-size: 100svh;flex-shrink: 0}@media (min-width: 48rem){.services__intro{padding-inline: 3rem}} .services__title{font-family: var(--font-display);font-weight: 400;font-size: clamp(48px,8vw,140px);line-height: 1;margin-block-start: 1.75rem;color: var(--color-bone);max-inline-size: 10ch} .services__hint{display: none;color: var(--color-ash);margin-block-start: 4rem}@media (min-width: 48rem){.services__hint{display: block}} .service-card{position: relative;display: flex;flex-direction: column;justify-content: center;padding-inline: 1.5rem;inline-size: min(760px,92vw);min-block-size: 100svh;flex-shrink: 0;border-left: 1px solid rgba(237,232,222,.09)}@media (min-width: 48rem){.service-card{padding-inline: 4rem}} .service-card__glyph{position: absolute;right: 4%;top: 12%;font-family: var(--font-display);font-size: 260px;line-height: 1;-webkit-user-select: none;user-select: none} .service-card__num{font-family: var(--font-display);font-size: clamp(90px,12vw,180px);line-height: 1} .service-card__title{font-family: var(--font-display);font-weight: 400;font-size: clamp(36px,4vw,64px);margin-block-start: 1.75rem;color: var(--color-bone)} .service-card__text{font-size: 16px;line-height: 1.85;color: var(--color-ash);font-weight: 300;margin-block-start: 1.5rem;max-inline-size: 46ch;text-wrap: pretty} .service-card__meta{letter-spacing: .26em;color: var(--color-ember);margin-block-start: 2.5rem}  .tarif{margin-block-start: 2.25rem;max-inline-size: 24rem;border-top: 1px solid rgba(237,232,222,.09)}.tarif__row{display: flex;align-items: baseline;justify-content: space-between;gap: 1.5rem;padding-block: 0.9rem;border-bottom: 1px solid rgba(237,232,222,.09)}.tarif__label{color: var(--color-ash)} .tarif__value{font-family: var(--font-display);font-size: 34px;line-height: 1;color: var(--color-bone)} .service-card--tarif .service-card__meta{margin-block-start: 1.25rem}  .marquee{padding-block: 10vh;overflow: hidden;border-top: 1px solid rgba(237,232,222,.07)} .marquee__track{display: flex;inline-size: max-content;white-space: nowrap} .marquee__line{font-family: var(--font-display);font-size: clamp(70px,11vw,170px);line-height: 1;padding-right: 6vw}  .contact{position: relative;padding-block: 20vh;overflow: hidden} .contact__bg{position: absolute;inset-inline: 0;inset-block: -12%;inline-size: 100%;object-fit: cover;opacity: .4} .contact__vignette{position: absolute;inset: 0;background: radial-gradient(closest-side,rgba(12,11,9,.2),#0C0B09 90%)} .contact__orbits{position: absolute;display: none;left: 50%;top: 50%;inline-size: min(560px,60vw);aspect-ratio: 1 / 1;translate: -50% -50%}@media (min-width: 48rem){.contact__orbits{display: block}} .contact__ring{position: absolute;inset: 0;border-radius: 999px;border: 1px solid rgba(237,232,222,.09)} .contact__ring--dashed{inset: 14%;border-style: dashed;border-color: rgba(237,232,222,.1);animation: spin 140s linear infinite reverse} .contact__orbit{position: absolute;inset: 0;animation: spin 80s linear infinite} .contact__orbit-dot{position: absolute;left: 50%;top: 0;inline-size: 0.5rem;block-size: 0.5rem;border-radius: 999px;background-color: var(--color-ember);translate: -50% -50%;box-shadow: 0 0 18px rgba(240,163,10,.8)}@keyframes spin{from{transform: rotate(0deg)}to{transform: rotate(360deg)}} .contact__inner{position: relative;text-align: center} .contact__title{font-family: var(--font-display);font-weight: 400;font-size: clamp(52px,8.5vw,140px);line-height: 1.02;margin-block-start: 2rem;color: var(--color-bone)} .contact__text{font-size: 17px;line-height: 1.8;color: var(--color-ash);font-weight: 300;margin-block-start: 2rem;margin-inline: auto;max-inline-size: 44ch;text-wrap: pretty} .contact__actions{display: flex;flex-wrap: wrap;justify-content: center;align-items: center;gap: 1.75rem;margin-block-start: 3.5rem}  .site-footer{border-top: 1px solid rgba(237,232,222,.08);padding-block-start: 72px;background-color: var(--color-void)} .site-footer__logo{display: block;block-size: auto} .site-footer__logo--dark{inline-size: 200px} .site-footer__text{font-size: 14px;line-height: 1.8;color: var(--color-ash);font-weight: 300;margin-block-start: 18px} .site-footer__heading{color: var(--color-ash);margin-block-end: 1rem} .site-footer__address{font-size: 14px;line-height: 1.9;color: var(--color-bone);font-weight: 300;opacity: .8} .site-footer__legal{display: flex;flex-direction: column;gap: 0.625rem} .site-footer__note{font-size: 12px;letter-spacing: .16em;color: var(--color-ash);margin-block-end: 1.25rem} .site-footer__wordmark{overflow: hidden;line-height: .78;margin-block-start: 0.5rem} .site-footer__wordmark-text{font-family: var(--font-display);font-size: clamp(90px,17vw,300px);text-align: center;margin-block-end: -0.12em;white-space: nowrap}  .doc-head{padding-block: 180px 0} .doc-head__title{font-family: var(--font-display);font-weight: 400;font-size: clamp(44px,6vw,96px);line-height: 1.02;margin-block-start: 1.75rem;color: var(--color-bone)}.doc-head__lead{font-size: 1.125rem;line-height: 1.85;font-weight: 300;color: var(--color-ash);margin-block-start: 2rem;max-inline-size: 58ch;text-wrap: pretty} .doc-head__actions{display: flex;flex-wrap: wrap;align-items: center;gap: 1.75rem;margin-block-start: 4rem} .doc-head--solo{padding-block-end: 14vh} .prose{padding-block: 5rem 14vh;max-inline-size: 62ch;color: var(--color-ash);font-weight: 300} .prose__section{margin-block-start: 3rem;padding-block-start: 1.75rem;border-top: 1px solid rgba(237,232,222,.1)}.prose__section:first-child{margin-block-start: 0;padding-block-start: 0;border-top: 0}.prose h2{font-family: var(--font-display);font-size: 28px;line-height: 1.2;color: var(--color-bone);margin-block-end: 1rem}.prose p,.prose li{font-size: 1.0625rem;line-height: 1.85;text-wrap: pretty} .prose p + p{margin-block-start: 1rem}.prose ul{display: grid;gap: 0.5rem;margin-block-start: 1rem} .prose li{position: relative;padding-inline-start: 1.25rem}.prose li::before{content: "·";position: absolute;left: 0.25rem;color: var(--color-ember)}.prose address{font-style: normal;line-height: 1.9} .prose a{color: var(--color-bone);border-bottom: 1px solid rgba(240,163,10,.5);overflow-wrap: anywhere}.prose a:hover{color: var(--color-ember);border-bottom-color: var(--color-ember)} .prose strong{color: var(--color-bone);font-weight: 500} .prose__meta{margin-block-start: 3rem;padding-block-start: 1.5rem;border-top: 1px solid rgba(237,232,222,.1);color: var(--color-ash)}}@layer utilities{ .accent{color: var(--color-ember)}}