@font-face{font-family:SCManrope;src:url('assets/fonts/Manrope.ttf') format('truetype');font-weight:200 800;font-display:swap}
@font-face{font-family:SCJakarta;src:url('assets/fonts/PlusJakartaSans-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:SCSupply;src:url('assets/fonts/Supply-Regular.otf');font-weight:400;font-display:swap}
@font-face{font-family:SCSupply;src:url('assets/fonts/Supply-Light.otf');font-weight:300;font-display:swap}
@font-face{font-family:SCSupply;src:url('assets/fonts/Supply-Medium.otf');font-weight:500;font-display:swap}
@font-face{font-family:SCSupply;src:url('assets/fonts/Supply-Bold.otf');font-weight:700;font-display:swap}
.sc-editorial{position:absolute;inset:0;overflow:hidden;pointer-events:none;--eu:1px;color:white}
.sc-editorial [hidden]{display:none!important}.sc-editorial h2,.sc-editorial h3,.sc-editorial p{margin:0}
.sc-editorial h2{font-family:SCManrope,sans-serif;font-weight:800;line-height:1.3;letter-spacing:-.035em}
.sc-editorial h3{font-family:SCSupply,monospace;white-space:pre-line;line-height:1.4}
.sc-editorial p{font-family:SCJakarta,sans-serif;font-size:calc(20*var(--eu));line-height:1.4}
.sc-icon{display:block;width:calc(64*var(--eu));height:calc(64*var(--eu));object-fit:contain}
.sc-services-layer{position:absolute;inset:0;overflow:hidden}
.sc-services-track{position:absolute;left:0;top:0;display:flex;align-items:flex-start;width:max-content;transform-origin:0 0;will-change:transform,opacity}
.sc-intro-copy{width:calc(1920*var(--eu));padding-left:calc(90*var(--eu));display:flex;gap:calc(140*var(--eu));align-items:flex-start}
.sc-intro-copy h2{font-size:calc(90*var(--eu));flex:0 0 calc(1190*var(--eu));line-height:1.2}
.sc-gradient{background:linear-gradient(180deg,rgba(159,113,82,.68),#ff0000);background-clip:text;-webkit-background-clip:text;color:transparent}
.sc-intro-description{width:calc(540*var(--eu));flex:none;padding-top:calc(6*var(--eu))}.sc-intro-description p+p{margin-top:calc(22*var(--eu))}
/* Shared rows (icon, title, text, documents): every document button starts on the same line.
   Equal 1fr columns take the width of the widest card, i.e. the one whose buttons sit side by side. */
.sc-services-cards{margin-left:calc(600*var(--eu));display:grid;grid-auto-flow:column;grid-auto-columns:1fr;grid-template-rows:repeat(4,auto);column-gap:48px;align-items:start}
.sc-service-card{position:relative;display:grid;grid-row:span 4;grid-template-rows:subgrid;justify-items:start;align-content:start;min-width:322px;border-left:1px solid #2e2e2e;padding-left:64px}
.sc-service-card h3{margin-top:calc(15*var(--eu));margin-bottom:2rem;font-size:24px;font-weight:500}
.sc-service-body{width:0;min-width:100%;color:#ffffffb3}.sc-service-body p{font-size:15px}.sc-service-body .sc-lead{margin-bottom:calc(20*var(--eu));color:white}
.sc-docs{display:flex;gap:calc(10*var(--eu));margin-top:calc(25*var(--eu));align-items:flex-start;flex-wrap:wrap}
.sc-doc{font:400 calc(15*var(--eu))/1.2 SCSupply,monospace;letter-spacing:-.02em;display:inline-flex;align-items:center;justify-content:center;gap:calc(5*var(--eu));padding:calc(15*var(--eu));color:#fff;border:1px solid #b7b7b7;border-radius:calc(10*var(--eu));background:transparent;text-decoration:none;pointer-events:auto;max-width:100%;text-align:center}
.sc-doc svg{width:calc(12*var(--eu));height:calc(12*var(--eu));flex:none}.sc-doc--solid{background:white;color:#000;border-color:transparent}.sc-doc:disabled{opacity:1;cursor:default}.sc-doc:focus-visible{outline:2px solid #ff664c;outline-offset:4px}
.sc-service-card .sc-docs{gap:10px;margin-top:25px;justify-self:stretch;flex-wrap:nowrap}
/* Buttons fill the card width (two buttons share it side by side); editorial.js gives them the tallest one's height. */
.sc-service-card .sc-doc{font-size:12px;padding:12px 15px;gap:5px;border-radius:10px;min-height:40px;flex:1 1 auto;white-space:nowrap}
.sc-service-card .sc-doc svg{width:12px;height:12px}
.sc-route-layer{position:absolute;inset:0;color:#000;overflow:hidden;will-change:transform}.sc-route-heading{position:absolute;top:0;left:calc(90*var(--eu));width:calc(700*var(--eu));will-change:transform}.sc-eyebrow{font:300 calc(12*var(--eu))/1.4 SCSupply,monospace;display:block;margin-bottom:calc(25*var(--eu))}
.sc-route-heading h2{font-size:calc(70*var(--eu));line-height:1.3;white-space:pre-line}.sc-route-heading h2 span{color:#00000080}
.sc-route-card{position:absolute;top:0;will-change:transform,opacity;left:64.7%;width:27.5%;padding-bottom:calc(120*var(--eu));border-bottom:1px solid #d9d9d9}.sc-route-card:last-child{border:0;padding-bottom:0}
.sc-route-card h3{font-size:calc(40*var(--eu));font-weight:700;margin-top:calc(15*var(--eu))}.sc-route-card p{margin-top:calc(30*var(--eu));color:#000000b3}
.sc-marine-layer{position:absolute;inset:0;color:#fff;overflow:hidden}.sc-marine-heading{position:absolute;top:0;will-change:transform,opacity;left:25%;width:50%;text-align:center}.sc-marine-heading h2{font-size:calc(76*var(--eu));white-space:pre-line;line-height:1.15}.sc-marine-heading .sc-eyebrow{color:#ffffffb3}
.sc-promise{position:absolute;top:0;width:28%;will-change:transform,opacity}.sc-promise--left{left:8%;text-align:right}.sc-promise--right{right:8%;text-align:left}.sc-promise--last{left:32%;width:36%;text-align:center}.sc-promise--left .sc-icon{margin-left:auto}.sc-promise--last .sc-icon{margin:auto}
.sc-promise h3{font-size:calc(40*var(--eu));font-weight:700;margin-top:calc(25*var(--eu))}.sc-promise p{margin-top:calc(30*var(--eu));color:#ffffffb3}.sc-promise .sc-lead{color:#fff}
.sc-phone .m-icon img{width:100%;height:100%;object-fit:contain}.sc-phone h2.sc-real{font:800 calc(28*var(--mu))/1.22 SCManrope,sans-serif;letter-spacing:-.03em;display:block}.sc-phone h3.sc-real{font:500 calc(26*var(--mu))/1.4 SCSupply,monospace;white-space:pre-line}.sc-phone .sc-real-body{font:400 calc(15*var(--mu))/1.4 SCJakarta,sans-serif;color:#ffffffb3}.sc-phone .sc-real-body p{margin:0 0 18px}.sc-phone .sc-real-body .sc-lead{color:white}.sc-phone .m-card-label{display:none}.sc-phone .m-icon{margin-bottom:calc(15*var(--mu))}
.sc-phone .sc-docs{--eu:1px;margin-top:20px;gap:10px;flex-wrap:wrap}.sc-phone .sc-doc{font-size:11px;padding:12px;min-height:44px;border-radius:10px}.sc-phone .m-route-copy .m-icon img{filter:brightness(0) invert(1)}.sc-phone .m-route-copy .sc-eyebrow{font-size:11px}.sc-phone .m-route-copy h2{margin-bottom:32px}.sc-phone .m-promise-title{max-width:100%}.sc-phone .m-promise-desc{max-width:calc(300*var(--mu))}.sc-phone .m-ocean-heading.sc-real{font-size:calc(36*var(--mu))}.sc-phone .m-promise h3.sc-real{font-size:calc(26*var(--mu))}

/* 20 des retours : chaque bouton PDF fait la taille de son texte, sans
   s'allonger. Marges intérieures : 15 px à gauche et à droite, 18 px en
   haut et en bas. */
.sc-doc{padding:18px 15px}
.sc-service-card .sc-docs{flex-wrap:wrap;justify-self:start;gap:10px}
.sc-service-card .sc-doc{flex:0 0 auto;padding:18px 15px;min-height:0;white-space:nowrap}
.sc-phone .sc-docs{justify-content:flex-start}
.sc-phone .sc-doc{flex:0 0 auto;padding:18px 15px;min-height:0;white-space:nowrap}
