/* SWITCH CASES 1.0.2. Styles indépendants et encapsulés. */
.switch-cases{--sc-red:#c72908;--sc-black:#11100f;--sc-paper:#f7f5f1;--sc-line:#d8d1c9;--sc-muted:#56504b;background:var(--sc-paper);color:var(--sc-black);font:16px/1.6 "Cera GR","CeraGR","Avenir Next",Arial,sans-serif;overflow-x:clip;-webkit-font-smoothing:antialiased;width:100%;max-width:none}
.switch-cases *,.switch-cases *:before,.switch-cases *:after{box-sizing:border-box}
.switch-cases img{width:100%;max-width:100%;height:auto;display:block}
.switch-cases a{color:inherit;text-decoration:none}.switch-cases a:focus-visible{outline:3px solid var(--sc-red);outline-offset:3px}
.switch-cases h1,.switch-cases h2,.switch-cases h3,.switch-cases p,.switch-cases figure{margin:0}
.switch-cases h1,.switch-cases h2,.switch-cases h3{hyphens:none;overflow-wrap:normal;text-wrap:balance}
.switch-cases .sc-container{width:min(1200px,calc(100% - 72px));margin-inline:auto}
.switch-cases .sc-display{font-family:Impact,"Arial Narrow","Helvetica Neue Condensed",Arial,sans-serif;letter-spacing:-.022em;font-weight:900;line-height:.99;text-transform:uppercase}
.switch-cases .sc-red{color:var(--sc-red)}.switch-cases .sc-menu-reserve{height:148px;background:var(--sc-black);pointer-events:none}
.switch-cases [id]{scroll-margin-top:150px}
.switch-cases .sc-label{display:inline-flex;align-items:center;gap:11px;font-size:11px;font-weight:900;letter-spacing:.15em;color:var(--sc-red);line-height:1.4;text-transform:uppercase}.switch-cases .sc-label:before{content:"";width:22px;height:2px;flex:none;background:currentColor}.switch-cases .sc-label-light{color:#ff9c80}
.switch-cases .sc-hero{display:grid;grid-template-columns:54% 46%;min-height:720px;border-bottom:1px solid var(--sc-line)}
.switch-cases .sc-hero-copy{padding:76px 50px 83px max(36px,calc((100vw - 1200px)/2));display:flex;align-items:flex-start;flex-direction:column;justify-content:center;min-width:0}
.switch-cases .sc-small{font-size:11px;font-weight:900;letter-spacing:.14em;color:var(--sc-red);margin:0 0 19px}
.switch-cases .sc-hero-title{font-size:clamp(49px,5.7vw,92px);margin:0 0 25px}.switch-cases .sc-hero-title>span{display:block;white-space:nowrap}
.switch-cases .sc-hero-title .sc-seo-caption{font-family:"Cera GR","CeraGR",Arial,sans-serif;font-weight:900;font-size:13px;line-height:1.45;letter-spacing:0;text-transform:none;white-space:normal;max-width:450px;margin:0 0 16px}
.switch-cases .sc-lead{font-size:21px;line-height:1.36;margin:0 0 15px;max-width:520px}.switch-cases .sc-hero-copy>p:not(.sc-lead){font-size:16px;line-height:1.64;max-width:550px;color:var(--sc-muted)}
.switch-cases .sc-hero-actions{display:flex;align-items:center;gap:23px;flex-wrap:wrap;margin-top:30px}.switch-cases .sc-btn{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:16px 20px;background:var(--sc-red);color:white;font-size:12px;font-weight:900;letter-spacing:.03em;line-height:1.3}.switch-cases .sc-btn span{font-size:20px;font-weight:400}.switch-cases .sc-btn:hover{background:#a71f04;color:white}.switch-cases .sc-simple-link{font-size:12px;font-weight:900;border-bottom:2px solid var(--sc-red);padding:5px 0}
.switch-cases .sc-hero-photo{position:relative;min-height:720px;overflow:hidden;background:#241e1d}.switch-cases .sc-hero-photo img{position:absolute;inset:0;height:100%;width:100%;object-fit:cover;object-position:center 54%}.switch-cases .sc-hero-photo:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.76))}.switch-cases .sc-hero-photo figcaption{position:absolute;z-index:1;bottom:33px;right:36px;text-align:right;font-size:12px;font-weight:800;letter-spacing:.075em;color:white;line-height:1.5}.switch-cases .sc-hero-photo figcaption b{display:block;font-size:15px}.switch-cases .sc-hero-photo figcaption small{display:block;font-weight:400;opacity:.75;letter-spacing:.02em;margin-top:8px}
.switch-cases .sc-intro{background:var(--sc-black);color:white;padding:113px 0 119px}.switch-cases .sc-intro-grid{display:grid;grid-template-columns:30% 70%;gap:0}.switch-cases .sc-intro h2{font-size:clamp(54px,6vw,98px);margin:0 0 31px}.switch-cases .sc-intro h2 em,.switch-cases .sc-cta h2 em{color:#f57959;font-style:normal}.switch-cases .sc-intro p{max-width:700px;color:#e3dcd7;font-size:18px;line-height:1.65;margin:0 0 15px}.switch-cases .sc-intro p:last-child{margin:0}
.switch-cases .sc-ticker{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:#e9e4dd}.switch-cases .sc-ticker span{padding:20px 12px;text-align:center;font-size:12px;letter-spacing:.09em;font-weight:900;border-right:1px solid #d4cdc5}
.switch-cases .sc-section{padding:107px 0 116px}.switch-cases .sc-heading{display:flex;align-items:end;justify-content:space-between;gap:34px;margin-bottom:43px}.switch-cases .sc-heading>*{min-width:0}.switch-cases .sc-heading h2{font-size:clamp(56px,5.9vw,90px);margin-top:22px}.switch-cases .sc-heading>p{font-size:16px;line-height:1.6;color:#5c554d;max-width:360px}
.switch-cases .sc-featured-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.switch-cases .sc-case{min-width:0;background:white}.switch-cases .sc-case-link{display:block;height:100%}.switch-cases .sc-case-image{aspect-ratio:1 / 1.02;position:relative;background:#1d1916;overflow:hidden}.switch-cases .sc-case-image>img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.switch-cases a:hover .sc-case-image>img,.switch-cases a:hover .sc-project-photo>img{transform:scale(1.035)}.switch-cases .sc-case-open,.switch-cases .sc-project-arrow{position:absolute;top:17px;right:18px;z-index:2;width:38px;height:38px;display:grid;place-items:center;color:white;background:var(--sc-red);font-size:26px;line-height:1}
.switch-cases .sc-case-art{height:100%;width:100%;display:flex;flex-direction:column;align-items:start;justify-content:space-between;overflow:hidden;padding:23px;background:linear-gradient(152deg,#321512,#c72908 62%,#80210f);color:white}.switch-cases .sc-case-2 .sc-case-art{background:linear-gradient(155deg,#141210,#2e343b 62%,#c72908)}.switch-cases .sc-case-3 .sc-case-art{background:linear-gradient(145deg,#6f1708,#e75d32 64%,#24130f)}
.switch-cases .sc-case-art-n{font-size:16px;font-weight:900;letter-spacing:.13em}.switch-cases .sc-case-art-text{font-family:Impact,"Arial Narrow",Arial,sans-serif;font-size:clamp(32px,3.8vw,58px);line-height:.97;max-width:95%;overflow-wrap:break-word;text-transform:uppercase}.switch-cases .sc-case-info{padding:24px 23px 26px}.switch-cases .sc-case-sector{display:block;color:var(--sc-red);font-weight:900;font-size:10px;letter-spacing:.13em;margin:0 0 16px}.switch-cases .sc-case-info h3{font-size:clamp(29px,2.5vw,41px);line-height:1.04;margin:0 0 16px;overflow-wrap:anywhere}.switch-cases .sc-case-info p{font-size:14px;line-height:1.6;color:#5f554f;min-height:92px}.switch-cases .sc-case-role{display:flex;justify-content:space-between;gap:13px;border-top:1px solid #e5e0d9;margin-top:19px;padding-top:15px;font-weight:900;font-size:10px;letter-spacing:.07em}.switch-cases .sc-case-role span{color:var(--sc-red);font-size:17px}
.switch-cases .sc-gallery{background:#ece7e0}.switch-cases .sc-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.switch-cases .sc-project{min-width:0;background:#fff}.switch-cases .sc-project-photo{position:relative;aspect-ratio:1.16;overflow:hidden;background:#181411}.switch-cases .sc-project-photo>img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.switch-cases .sc-project-placeholder{height:100%;display:flex;align-items:center;padding:30px;color:#fff;background:linear-gradient(137deg,#241b18,#b6260d)}.switch-cases .sc-project-placeholder span{font:900 68px/.88 Impact,Arial,sans-serif}.switch-cases .sc-project-meta{padding:23px 23px 27px}.switch-cases .sc-project-meta>span:first-child{display:block;font-size:10px;font-weight:900;letter-spacing:.13em;color:var(--sc-red)}.switch-cases .sc-project-meta h3{font-size:clamp(28px,2.5vw,40px);margin:12px 0 28px;overflow-wrap:anywhere}.switch-cases .sc-project-discover{border-top:1px solid #ddd6ce;display:flex;align-items:center;justify-content:space-between;padding-top:14px;font-size:11px;font-weight:900;letter-spacing:.07em}.switch-cases .sc-project-discover span{color:var(--sc-red);font-size:20px}
.switch-cases .sc-pagination{display:flex;gap:9px;justify-content:center;margin-top:42px}.switch-cases .sc-pagination a{width:39px;height:39px;display:grid;place-items:center;border:1px solid #bfb5ab;font-weight:900}.switch-cases .sc-pagination [aria-current="page"]{background:var(--sc-red);border-color:var(--sc-red);color:#fff}
.switch-cases .sc-empty{padding:28px 32px;background:#fff;border-left:4px solid var(--sc-red)}.switch-cases .sc-empty p{max-width:690px;margin:15px 0 0}
.switch-cases .sc-expertises{background:#151210;color:#fff}.switch-cases .sc-heading-light>p{color:#e2dad2}.switch-cases .sc-heading-light h2{font-size:clamp(53px,5.55vw,85px)}.switch-cases .sc-heading-light h2 span{color:#f37a5f}.switch-cases .sc-services{border-top:1px solid #5d504b}.switch-cases .sc-services a{display:grid;grid-template-columns:70px 1fr 42px;align-items:center;gap:20px;padding:22px 2px;border-bottom:1px solid #5d504b;transition:color .2s}.switch-cases .sc-services a:hover{color:#ffae91}.switch-cases .sc-services a>span{color:#f17d5e;font-size:12px;font-weight:900;letter-spacing:.13em}.switch-cases .sc-services a strong{font-family:Impact,"Arial Narrow",Arial,sans-serif;font-weight:900;font-size:clamp(30px,3.4vw,51px);line-height:1.05}.switch-cases .sc-services a b{text-align:right;color:#f37a5f;font-size:24px;font-weight:400}
.switch-cases .sc-why{background:#eee9e3}.switch-cases .sc-why-grid{display:grid;grid-template-columns:minmax(0,52fr) minmax(0,48fr);gap:52px}.switch-cases .sc-why h2{font-size:clamp(60px,5.7vw,90px);margin:26px 0 22px}.switch-cases .sc-signature{display:block;color:var(--sc-red);font-size:20px;line-height:1.35}.switch-cases .sc-why-grid>div:last-child{padding-top:31px}.switch-cases .sc-why-grid p{font-size:17px;line-height:1.65;color:#46403c;margin-bottom:19px}.switch-cases .sc-underlink{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #cfc7be;border-bottom:1px solid #cfc7be;padding:15px 0;margin-top:26px;font-weight:900;font-size:12px}.switch-cases .sc-underlink span{color:var(--sc-red);font-size:21px}
.switch-cases .sc-cta{background:var(--sc-red);color:#fff;padding:95px 0 108px}.switch-cases .sc-cta-grid{display:grid;grid-template-columns:56% 44%;gap:15px;align-items:end}.switch-cases .sc-cta h2{font-size:clamp(67px,8vw,126px);margin:26px 0 0}.switch-cases .sc-cta h2 em{color:#ffbaab}.switch-cases .sc-cta-grid>div:last-child{padding:0 0 7px 38px}.switch-cases .sc-cta p{font-size:20px;line-height:1.5;margin-bottom:28px}.switch-cases .sc-cta .sc-btn{background:#15110f}
@media(max-width:1150px){.switch-cases .sc-hero-title{font-size:clamp(42px,5.35vw,70px)}.switch-cases .sc-why h2{font-size:clamp(54px,5vw,72px)}.switch-cases .sc-intro h2{font-size:clamp(54px,6vw,80px)}}
@media(max-width:900px){.switch-cases .sc-menu-reserve{height:128px}.switch-cases .sc-hero{min-height:520px}.switch-cases .sc-hero-copy{padding:52px 29px}.switch-cases .sc-hero-photo{min-height:520px}.switch-cases .sc-hero-title{font-size:clamp(36px,5.5vw,52px)}.switch-cases .sc-lead{font-size:17px}.switch-cases .sc-hero-copy>p:not(.sc-lead){font-size:14px}.switch-cases .sc-section{padding:76px 0 83px}.switch-cases .sc-intro{padding:83px 0 88px}.switch-cases .sc-intro-grid{grid-template-columns:25% 75%}.switch-cases .sc-featured-grid{gap:10px}.switch-cases .sc-case-info{padding:19px 17px}.switch-cases .sc-case-info p{min-height:110px}.switch-cases .sc-case-art-text{font-size:clamp(26px,4vw,44px)}.switch-cases .sc-why-grid{grid-template-columns:1fr}.switch-cases .sc-why-grid>div:last-child{padding-top:0}.switch-cases .sc-why h2{font-size:clamp(53px,8.2vw,72px)}.switch-cases .sc-cta h2{font-size:clamp(60px,7vw,90px)}}
@media(max-width:650px){.switch-cases .sc-menu-reserve{height:100px}.switch-cases .sc-container{width:calc(100% - 36px)}.switch-cases .sc-hero{display:flex;flex-direction:column;min-height:0}.switch-cases .sc-hero-copy{padding:51px 19px 56px}.switch-cases .sc-hero-title{font-size:clamp(43px,11.4vw,61px);margin-bottom:22px}.switch-cases .sc-hero-title .sc-seo-caption{font-size:12px}.switch-cases .sc-lead{font-size:20px}.switch-cases .sc-hero-copy>p:not(.sc-lead){font-size:15px}.switch-cases .sc-hero-actions{gap:18px}.switch-cases .sc-hero-photo{min-height:430px;height:430px}.switch-cases .sc-intro{padding:76px 0 83px}.switch-cases .sc-intro-grid{grid-template-columns:1fr;gap:28px}.switch-cases .sc-intro h2{font-size:clamp(46px,11.8vw,65px)}.switch-cases .sc-intro p{font-size:16px}.switch-cases .sc-ticker{grid-template-columns:repeat(2,minmax(0,1fr))}.switch-cases .sc-ticker span{font-size:11px;padding:15px 6px}.switch-cases .sc-section{padding:70px 0 78px}.switch-cases .sc-heading{display:block;margin-bottom:31px}.switch-cases .sc-heading h2,.switch-cases .sc-heading-light h2{font-size:clamp(48px,11.5vw,62px);margin:18px 0 19px}.switch-cases .sc-heading>p{font-size:15px;max-width:100%}.switch-cases .sc-featured-grid,.switch-cases .sc-project-grid{grid-template-columns:1fr;gap:16px}.switch-cases .sc-case-image{aspect-ratio:1.22}.switch-cases .sc-case-art-text{font-size:clamp(48px,12vw,68px)}.switch-cases .sc-case-info{padding:24px 23px}.switch-cases .sc-case-info h3{font-size:39px}.switch-cases .sc-case-info p{min-height:0}.switch-cases .sc-project-grid{gap:13px}.switch-cases .sc-project-meta h3{font-size:38px}.switch-cases .sc-services a{grid-template-columns:30px 1fr 26px;gap:12px;padding:21px 0}.switch-cases .sc-services a strong{font-size:clamp(26px,7vw,40px);overflow-wrap:anywhere}.switch-cases .sc-why-grid{gap:15px}.switch-cases .sc-why h2{font-size:clamp(46px,11.5vw,61px)}.switch-cases .sc-why-grid>div:last-child{font-size:16px}.switch-cases .sc-why-grid p{font-size:16px}.switch-cases .sc-cta{padding:75px 0 84px}.switch-cases .sc-cta-grid{grid-template-columns:1fr;gap:26px}.switch-cases .sc-cta h2{font-size:clamp(70px,18vw,101px)}.switch-cases .sc-cta-grid>div:last-child{padding:0}.switch-cases .sc-cta p{font-size:18px}}
@media(max-width:390px){.switch-cases .sc-menu-reserve{height:88px}.switch-cases .sc-hero-title{font-size:clamp(40px,10.5vw,48px)}.switch-cases .sc-intro h2{font-size:clamp(43px,11.3vw,51px)}.switch-cases .sc-heading h2,.switch-cases .sc-heading-light h2{font-size:clamp(43px,10.8vw,51px)}.switch-cases .sc-why h2{font-size:clamp(42px,10.8vw,49px)}.switch-cases .sc-cta h2{font-size:clamp(64px,17vw,79px)}}
@media(prefers-reduced-motion:reduce){.switch-cases *{transition:none!important}}
/* Fine responsive adjustments after 4-width visual checks */
.switch-cases .sc-project-placeholder span{max-width:100%;font-size:clamp(35px,4.25vw,68px)}
@media(max-width:900px){.switch-cases .sc-project-placeholder span{font-size:clamp(31px,4vw,49px)}}
@media(max-width:650px){.switch-cases .sc-project-placeholder span{font-size:64px}}
@media(max-width:390px){.switch-cases .sc-project-placeholder span{font-size:60px}.switch-cases .sc-cta-grid{gap:22px}.switch-cases .sc-cta h2{font-size:clamp(60px,16vw,71px)}.switch-cases .sc-cta-grid>div{min-width:0}}

/* V2 : galerie unique, tous les projets dans l'ordre manuel du BO */
.switch-cases .sc-gallery.sc-all-projects{background:#ece7e0}
.switch-cases .sc-total{display:inline-block;border:1px solid #c72908;color:#c72908;font-size:11px;font-weight:900;letter-spacing:.11em;padding:10px 14px}
.switch-cases .sc-project-grid-dynamic{grid-auto-flow:row}
.switch-cases .sc-project-grid-dynamic .sc-project-photo{aspect-ratio:1.10}
.switch-cases .sc-project-number{position:absolute;z-index:2;bottom:16px;left:18px;color:#fff;background:rgba(17,16,15,.78);padding:7px 10px;font-weight:900;font-size:12px;letter-spacing:.07em}
.switch-cases .sc-project-grid-dynamic .sc-project-meta{display:flex;flex-direction:column;min-height:200px}
.switch-cases .sc-project-grid-dynamic .sc-project-meta h3{margin-bottom:14px}
.switch-cases .sc-project-excerpt{font-size:14px;line-height:1.5;color:#514943;margin:0 0 23px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
.switch-cases .sc-project-grid-dynamic .sc-project-discover{margin-top:auto}
.switch-cases .sc-project-grid-dynamic .sc-project>a{display:flex;flex-direction:column;height:100%}
.switch-cases .sc-project-grid-dynamic .sc-project-meta{flex:1}
/* V3 Annusa : ne pas réinitialiser la grille native générée par [ts_portfolio].
   Les classes internes peuvent varier selon les versions du thème. */
.switch-cases .sc-native-content{min-width:0;max-width:100%;color:var(--sc-black)}
.switch-cases .sc-native-content .vc_row,.switch-cases .sc-native-content .wpb_wrapper{max-width:100%}
.switch-cases .sc-native-content .vc_row{margin-left:0;margin-right:0}
.switch-cases .sc-native-content .vc_column_container{padding-left:0;padding-right:0}
.switch-cases .sc-native-content img{height:auto;max-width:100%}
.switch-cases .sc-native-content a:focus-visible{outline:3px solid var(--sc-red);outline-offset:3px}
.switch-cases .sc-native-content [class*="portfolio"] h2,
.switch-cases .sc-native-content [class*="portfolio"] h3,
.switch-cases .sc-native-content [class*="portfolio"] h4{
  font-family:Impact,"Arial Narrow","Helvetica Neue Condensed",Arial,sans-serif;
  text-transform:uppercase;letter-spacing:-.02em;line-height:1.08;
}
.switch-cases .sc-native-content [class*="portfolio"] a:hover{color:var(--sc-red)}
/* Ne jamais contraindre les tailles/positions des éléments masonry/isotope du thème. */
@media(max-width:650px){.switch-cases .sc-native-content{width:100%;overflow:visible}.switch-cases .sc-native-content .vc_row{margin:0}}


/* V3.2 — toute la carte Annusa donne accès à sa fiche détaillée. */
.switch-cases .sc-native-content .sc-linked-card {
  position: relative !important;
  cursor: pointer;
  isolation: isolate;
  transition: box-shadow .22s ease, transform .22s ease;
}
.switch-cases .sc-native-content .sc-linked-card:hover {
  box-shadow: 0 12px 38px rgba(17, 16, 15, .16);
}
.switch-cases .sc-native-content .sc-linked-card:focus-within {
  outline: 3px solid var(--sc-red);
  outline-offset: 4px;
}
.switch-cases .sc-native-content .sc-linked-card .sc-full-card-link {
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  z-index: 999 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  text-decoration: none !important;
  cursor: pointer;
}
.switch-cases .sc-native-content .sc-full-card-link::after {
  content: "↗";
  position: absolute;
  top: 13px;
  right: 13px;
  width: 41px;
  height: 41px;
  display: grid;
  place-items: center;
  background: var(--sc-red);
  color: #fff;
  font: 900 25px/1 Arial, sans-serif;
  box-shadow: 0 4px 15px rgba(0,0,0,.18);
  transition: transform .2s ease, background .2s ease;
  pointer-events: none;
}
.switch-cases .sc-native-content .sc-linked-card:hover .sc-full-card-link::after,
.switch-cases .sc-native-content .sc-full-card-link:focus-visible::after {
  transform: translate(2px,-2px);
  background: #a72004;
}
.switch-cases .sc-native-content .sc-full-card-link:focus-visible {
  outline: 3px solid var(--sc-red) !important;
  outline-offset: 5px !important;
}
@media(max-width:650px) {
  .switch-cases .sc-native-content .sc-full-card-link::after {
    top: 10px; right: 10px; width: 36px; height: 36px; font-size: 21px;
  }
}
@media(prefers-reduced-motion:reduce) {
  .switch-cases .sc-native-content .sc-linked-card,
  .switch-cases .sc-native-content .sc-full-card-link::after {transition: none !important}
}
