
/* /tecnibo_website/static/src/css/homepage.css */
 .o_header, #wrapwrap header{position: absolute; top: 0; left: 0; right: 0; background: transparent; border-bottom: none; z-index: 2000;}.hero-section{margin-top: 0; padding-top: 0;}.hero-section img{display: block; width: 100%; height: auto;}body.home-with-hero .o_main, body.home-with-hero{padding-top: 0 !important;}.hero-section{position: relative; height: 89vh; overflow: hidden; margin-top: -95px;}.hero-section img{height: 100%; width: 100%; object-fit: cover;}.custom-shop-line-homepage{position: relative; margin: 30px 0 20px; height: 0; content: ""; display: block; height: 1px; background: #333; margin: 0 70px;}.custom-shop-bar{display: flex; align-items: center; flex-wrap: wrap; padding-left: 60px;}.custom-shop-categories{gap: 24px;}.project-name-offset{margin-left: 60px;}.custom-shop-title{font-family: UniversalSans-500; font-weight: 504; font-style: Regular; font-size: 16px; leading-trim: CAP_HEIGHT; line-height: 100%; letter-spacing: 0%; color: #000; margin-left: 45px !important; margin-bottom: 0; white-space: nowrap;}.custom-shop-categories{display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 24px; margin-top: 10px;}.custom-shop-categories a{white-space: nowrap;}a.category-link, a.category-link:link, a.category-link:visited, a.category-link:hover, a.category-link:focus, a.category-link *{text-decoration: none !important; border-bottom: 0 !important; background-image: none !important;}.category-link{display: inline-flex; align-items: center; gap: 6px; color: #000; font-family: 'UniversalSans-500', sans-serif; font-weight: 500; font-size: 16px; text-decoration: none;}.category-link .category-name{position: relative; display: inline-block; padding-bottom: 4px; overflow: visible;}.category-link .category-name::after{content: ""; position: absolute; bottom: 0; left: 0; width: 100%; height: 1px; background: #000; transform: scaleX(1); transform-origin: left; transition: transform 0.3s ease-in-out;}.category-link:hover .category-name::after{animation: underlineWave 0.8s ease-in-out infinite;}@keyframes underlineWave{0%{transform: scaleX(1); transform-origin: left;}50%{transform: scaleX(0); transform-origin: left;}100%{transform: scaleX(1); transform-origin: right;}}.product-card{background: transparent !important; border: none !important; box-shadow: none !important;}.product-card .img-container{overflow: hidden; height: 622px;}.product-card .img-container img{width: 100%; height: 100%; object-fit: cover; transition: transform .3s ease;}.product-card .img-container:hover img{transform: scale(1.1);}.product-card .product-links{display: inline-flex; align-items: center; gap: 8px; margin-left: 45px !important; color: #000 !important; text-decoration: none !important; margin-top: 8px;}.product-card .product-links svg{margin-right: 4px;}.product-links svg path{vector-effect: non-scaling-stroke;}.product-card .product-name{position: relative; display: inline-block; padding-bottom: 2px; font-family: UniversalSans-500; font-weight: 504; font-size: 16px; line-height: 100%; letter-spacing: 0; color: #000; text-decoration: none;}.product-card .product-name::after{content: ""; position: absolute; left: 0; bottom: 0; width: 100%; height: 1px; background: #000; transform: scaleX(1); transform-origin: left; transition: transform 0.3s ease-in-out;}.product-card .product-name:hover::after{animation: underlineWave 0.8s ease-in-out infinite;}@keyframes underlineWave{0%{transform: scaleX(1); transform-origin: left;}50%{transform: scaleX(0); transform-origin: left;}100%{transform: scaleX(1); transform-origin: right;}}.custom-svg{display: block; margin-left: 130px;}.custom-hr{border: none; border-top: 1px solid #333; width: calc(100% - 100px); margin-left: 92px;}.custom-text{margin-right: 60px; margin-left: 100px; margin-bottom: 0; font-family: UniversalSans-500; font-weight: 504; color: #000; font-size: 16px; width: calc(100% - 120px); line-height: 23px; letter-spacing: 0%;}@media (min-width: 768px){.custom-text{margin-top: 15px; transform: translateX(-40px) !important;}}.partner-name-block{margin-left: 60px;}.partner-banner-img{width: 1920px; height: 1350px; transform: rotate(0deg); opacity: 1; object-fit: cover; display: block;}.partner-name-texts{font-family: UniversalSans-500; font-weight: 504; font-size: 16px; line-height: 100%; letter-spacing: 0%; leading-trim: cap-height; color: #000;}.project-name-text{font-family: UniversalSans-500; font-weight: 504; font-size: 16px; line-height: 100%; letter-spacing: 0%; leading-trim: cap-height; color: #000; text-decoration: none !important;}.project-link-homepage{position: relative; display: inline-block; color: #000; text-decoration: none !important; font-family: UniversalSans-500; font-weight: 504; font-size: 16px; line-height: 1.2; padding: 0; margin-top: 2px;}.project-link-homepage::after{content: ""; position: absolute; bottom: -2px; left: 0; width: 100%; height: 1px; background: #000; transform: scaleX(1); transform-origin: left; transition: transform 0.3s ease-in-out;}.project-link-homepage:hover::after{animation: underlineWave 0.8s ease-in-out infinite;}@keyframes underlineWave{0%{transform: scaleX(1); transform-origin: left;}50%{transform: scaleX(0); transform-origin: left;}100%{transform: scaleX(1); transform-origin: right;}}.partner-link{position: relative; display: inline-block; color: #000; text-decoration: none; font-size: 16px; line-height: 1.2; font-family: UniversalSans-500; font-weight: 504; padding: 0; margin-top: 2px;}.partner-link::after{content: ""; position: absolute; bottom: -2px; left: 0; width: 100%; height: 1px; background: #000; transform: scaleX(1); transform-origin: left; transition: transform 0.3s ease-in-out;}.partner-link:hover::after{animation: underlineWave 0.8s ease-in-out infinite;}@keyframes underlineWave{0%{transform: scaleX(1); transform-origin: left;}50%{transform: scaleX(0); transform-origin: left;}100%{transform: scaleX(1); transform-origin: right;}}.project-products{display: flex; justify-content: flex-end; gap: 12px; padding-right: 80px;}.product-links{gap: 4px; text-decoration: none !important;}.plus-btns{display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 24px; border: 1px solid #333; background-color: #fff; font-family: 'TecniboDisplay', sans-serif; font-size: 24px; font-weight: 200; color: #333; box-shadow: 0 2px 6px rgba(0, 0, 0, 0.12); cursor: pointer;}.project-info-line{position: relative; align-items: center; min-height: 40px;}.centered-plus-btn{position: absolute; left: 50%; transform: translateX(-50%); z-index: 10;}.square-icon{width: 13px; height: 13px; background-color: #000; display: inline-block; flex-shrink: 0; margin-left: 200px;}.plus-btn{display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 24px; border: 1px solid #333; background-color: #fff; font-family: 'TecniboDisplay', sans-serif; font-size: 24px; font-weight: 200; color: #333; box-shadow: 0 2px 6px rgba(0, 0, 0, 0.12); cursor: pointer;}.plus-btn:hover{background-color: #f2f2f2;}.mesure-link{position: relative; display: inline-flex; align-items: center; gap: 4px; font-size: 16px; font-weight: 504; color: #000; font-family: UniversalSans-500; text-decoration: none !important; transition: color 0.2s ease-in-out;}.mesure-link .mesure-text{position: relative; display: inline-block;}.mesure-link .mesure-text::after{content: ""; position: absolute; bottom: -2px; left: 0; width: 100%; height: 1px; background: #000; transform: scaleX(1); transform-origin: left; transition: transform 0.3s ease-in-out;}.mesure-link:hover .mesure-text::after{animation: underlineWave 0.8s ease-in-out infinite;}@keyframes underlineWave{0%{transform: scaleX(1); transform-origin: left;}50%{transform: scaleX(0); transform-origin: left;}100%{transform: scaleX(1); transform-origin: right;}}.project-links{position: relative; display: inline-block; font-size: 16px; font-weight: 504; color: #000; margin-right: 0; font-family: UniversalSans-500; text-decoration: none; transition: color 0.2s ease-in-out;}.project-links .product-name::after{content: ""; position: absolute; bottom: -2px; left: 0; width: 100%; height: 1px; background: #000; transform: scaleX(1); transform-origin: left; transition: transform 0.3s ease-in-out;}.project-links .product-name{position: relative; display: inline-block;}.project-links:hover .product-name::after{animation: underlineWave 0.8s ease-in-out infinite;}@keyframes underlineWave{0%{transform: scaleX(1); transform-origin: left;}50%{transform: scaleX(0); transform-origin: left;}100%{transform: scaleX(1); transform-origin: right;}}.partner-info-line{flex-wrap: nowrap; gap: 10px;}.partner-name-overlay{top: 50%; left: 50%; transform: translate(-50%, -50%); position: absolute; font-size: 500px; font-weight: 400; font-family: 'TecniboDisplay', sans-serif; color: white; text-align: center; line-height: 140px; z-index: 5; white-space: nowrap;}.hero-message{text-align: center; margin: 100px auto; padding: 0 20px;}.hero-message p{font-family: 'TecniboDisplay', sans-serif; font-weight: 400; font-size: 160px; line-height: 140px; letter-spacing: 0%; color: #000000; leading-trim: cap-height; margin: 0;}.category-name{text-decoration: underline; font-size: 16px; font-family: UniversalSans-500; font-weight: 504; line-height: 1; display: inline-block; white-space: nowrap;}.spacer-below-messages{height: 30px;}.spacer-below-message{height: 90px;}.spacer-below-category{height: 30px;}.spacer-below-product{height: 200px;}.spacer-below-partner{height: 150px;}.home-bottom-bar{position: fixed; left: 0; right: 0; bottom: 0; z-index: 1050; padding: 16px 26px; min-height: 60px; background: rgba(255, 255, 255, 0.8); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); border-top: none; margin-bottom: 20px;}.home-bottom-inner{--container-max: 1440px; max-width: 1440px; margin: 0 auto; display: flex; align-items: center; justify-content: space-between; gap: 16px;}.home-bottom-text{position: relative; padding-top: 8px; left: -125px; font-family: UniversalSans-500; font-weight: 504; font-style: normal; font-size: 16px; line-height: 120%; letter-spacing: 0; vertical-align: middle; color: #000;}.home-bottom-text::before{content: ""; position: absolute; top: 0; left: 0; height: 1px; background: #000; width: calc(50vw - max((100vw - var(--container-max)) / 2, 0px));}.home-bottom-actions{display: flex; align-items: center; gap: 18px;}.home-bottom-btn{font-family: UniversalSans-500; font-weight: 504; font-style: normal; font-size: 16px; line-height: 100%; letter-spacing: 0; vertical-align: bottom; color: #000; text-decoration: none; padding: 8px 16px;}.home-bottom-link{font-family: UniversalSans-500; font-weight: 504; font-style: normal; font-size: 16px; line-height: 100%; letter-spacing: 0; vertical-align: bottom; color: #000; text-decoration: none; padding: 8px 16px;}.home-bottom-btn:hover, .home-bottom-link:hover{color: #000 !important; text-decoration: none;}.home-bottom-text::before{width: 45vw;}@media (max-width: 768px){.custom-svg{max-width: 330px; display: block; margin-left: auto;}.plus-btn{display: none !important;}.partner-name-block{margin-left: 20px;}.home-bottom-bar{padding: 16px; min-height: auto;}.home-bottom-inner{flex-direction: column; align-items: stretch; gap: 18px;}.home-bottom-text{left: 0; padding-top: 14px; font-size: 15px; line-height: 1.35; white-space: normal; width: 100%;}.home-bottom-text::before{left: 0; right: 0; width: 100%;}.home-bottom-actions{display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 0;}.home-bottom-actions .home-bottom-btn{text-align: center; padding: 12px 8px;}.home-bottom-actions .home-bottom-btn:first-child{position: relative;}.home-bottom-actions .home-bottom-btn:first-child::after{content: ""; position: absolute; top: 50%; transform: translateY(-50%); right: 0; width: 1px; height: 22px; background: #000; opacity: 0.6;}.home-bottom-link{grid-column: 1 / -1; display: block; padding: 14px 0 4px; text-align: left; position: relative; margin-top: 6px;}.home-bottom-link::before{content: ""; position: absolute; left: 0; right: 0; top: 0; height: 1px; background: #000;}.home-bottom-link{position: relative; padding-left: 26px;}.home-bottom-link::after{content: "↗"; position: absolute; left: 0; top: 55%; transform: translateY(-50%); font-size: 18px; line-height: 1; color: #000;}.product-card .img-container{width: 392px; height: 490px; transform: rotate(0deg); opacity: 1; display: grid; gap: 10px;}.product-card .img-container img{width: 100%; height: 100%; object-fit: cover; display: block;}.hero-section{position: relative; width: 100%; overflow: hidden; margin-top: -16px !important;}.hero-section img{width: 440px; height: 598.4229736328px; transform: rotate(0deg); opacity: 1; object-fit: cover; margin: 0 auto; margin-top: -16px !important;}.hero-img{width: 100%; height: auto; display: block; object-fit: cover;}.project-info-line{flex-direction: column; align-items: flex-start !important; justify-content: flex-start !important; gap: 8px; padding: 0 12px;}.project-name-offset{display: flex; align-items: center; justify-content: flex-start !important; gap: 1px; margin-left: 8px; width: 100%;}.project-link-homepage{display: inline-flex; align-items: flex-start; justify-content: flex-start; text-align: left; font-size: 15px; margin-left: 8px; margin-bottom: 10px !important; margin-top: 13px !important;}.project-products{display: flex; flex-wrap: wrap; width: 100%; padding-left: 0; margin-left: 8px; margin-bottom: 80px; gap: 8px 16px; white-space: normal; justify-content: flex-start;}.product-links{display: inline-flex; align-items: center; gap: 16px;}body, html{overflow-x: hidden;}.centered-plus-btn{display: none;}.hero-message p{font-size: 48px; line-height: 50px; word-break: break-word; margin: 0 !important; padding: 0 !important;}.hero-message{margin-top: 0 !important;}.spacer-below-message{height: 20px !important; margin: 0 !important; padding: 0 !important; overflow: hidden !important; display: block !important;}.spacer-below-messages{height: 0px !important; margin: 0 !important; padding: 0 !important; overflow: hidden !important; display: block !important;}.custom-shop-line-homepage{border-top: 1px solid #333; width: calc(100% - 2 * clamp(16px, 6vw, 150px)); margin: 30px auto 20px;}.custom-shop-title{margin-top: 0 !important; margin-bottom: 40px !important; transform: translateX(-30px) !important;}.container-fluid{margin-top: 0 !important; padding-top: 0 !important;}.spacer-below-category{height: 0px !important; margin: 0 !important; padding: 0 !important; overflow: hidden !important; display: block !important;}.spacer-below-product{height: 0px !important; margin: 0 !important; padding: 0 !important; overflow: hidden !important; display: block !important;}.spacer-below-partner{height: 50px !important; margin: 0 !important; padding: 0 !important; overflow: hidden !important; display: block !important;}.partner-name-overlay{position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%) rotate(-90deg); transform-origin: center; display: inline-block; white-space: nowrap !important; width: auto !important; max-width: none !important; line-height: 1; letter-spacing: .05em; flex: 0 0 auto;}.partner-img-wrapper{width: 100vw; overflow: hidden; margin-left: calc(-50vw + 50%); margin-top: 0;}.partner-banner-img{width: 100%; height: 85vh; object-fit: cover; display: block; margin-top: 0;}.partner-info-line{flex-direction: row !important; justify-content: space-between !important; align-items: center !important; flex-wrap: nowrap !important;}.partner-info-line h5, .partner-info-line .mesure-link{font-size: 14px;}.plus-btn{width: 20px; height: 20px; font-size: 20px;}}@media (max-width: 1768px){.partner-name-overlay{font-size: 150px; padding: 0 10px; white-space: normal; text-align: center;}}.partner-info-line .square-icon{margin: 0 auto;}.partner-info-line .mesure-link{justify-content: center; text-align: center;}.custom-shop-categories{position: static; transform: none; justify-content: flex-start; flex-direction: column; align-items: flex-start; padding-left: 60px; gap: 10px; margin-top: 10px;}}html, body{overflow-x: hidden !important;}@media (max-width: 991.98px){.svg-plus-homepage-reference{display: none !important;}.category-link{margin-right: 28px; margin-bottom: 16px;}.project-links{margin-bottom: 6px !important;}.project-links svg{margin-left: 15px;}.project-name-offset svg{margin-left: 15px;}.category-link svg{margin-left: 15px;}}

/* /tecnibo_website/static/src/css/products.css */
 .product-figure{display: block;}.product-img-outer{display:block; width:100%; overflow:hidden;}.product-img{width:100%; height:581px; object-fit:contain; display:block;}.product-caption{padding: 12px 0 18px;}.product-caption-link{transform: translateX(52px);}.product-nav-wrapper{font-family: UniversalSans-500;}.product-nav-btn{display: inline-flex; align-items: center; gap: 6px; color: #000; text-decoration: none; font-size: 14px; font-family: UniversalSans-500, sans-serif; padding: 4px 0;}.product-nav-btn svg{stroke: currentColor;}.product-nav-btn:hover, .product-nav-btn:focus, .product-nav-btn:active{color: #000 !important; text-decoration: none;}.product-nav-separator{margin: 0 3px !important; font-weight: 300; opacity: 0.8;}.product-name-text{position: relative; display: inline-block; font-family: UniversalSans-500; font-weight: 504; font-style: normal; font-size: 16px; line-height: 1; letter-spacing: 0; color: #000; text-decoration: none; padding-bottom: 4px;}.product-name-text::after{content: ""; position: absolute; bottom: 0; left: 0; width: 100%; height: 1px; background-color: #000; transform: scaleX(1); transform-origin: left; transition: transform 0.3s ease-in-out;}.product-name-text:hover::after{animation: underlineWave 0.8s ease-in-out infinite;}.limited-description{font-family: UniversalSans-500; color: #000; font-size: 13px; margin-left: 20px !important; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; white-space: normal;}@media (max-width: 1200px){.limited-description{-webkit-line-clamp: 1; margin-left: 40px;}}@media (max-width: 768px){.limited-description{-webkit-line-clamp: 1; margin-left: 40px;}.product-category-texts{font-family: UniversalSans-500; font-weight: 504; font-size: 16px; line-height: 100%; letter-spacing: 0; margin-left: -20px;}.product-nav-wrapper.d-flex.justify-content-end{justify-content: center !important;}.product-nav-btn{font-size: 14px;}}@media (max-width: 480px){.limited-description{-webkit-line-clamp: 1; margin-left: 40px;}}@keyframes underlineWave{0%{transform: scaleX(1); transform-origin: left;}50%{transform: scaleX(0); transform-origin: left;}100%{transform: scaleX(1); transform-origin: right;}}.custom-shop-lines{border-top: 1px solid #333; width: calc(100% - 80px); margin-left: 60px; margin-top: 30px; margin-bottom: 20px;}.custom-shop-bars{position: relative; min-height: 40px; padding: 0 10px;}.custom-shop-titles{position: relative; z-index: 0; color: #000; font-family: UniversalSans-500; font-weight: 504; font-size: 16px; line-height: 100%; letter-spacing: 0; margin-left: 58px; margin-bottom: 0; margin-top: -10px;}.custom-shop-categorie{position: absolute; z-index: 2; left: 48%; top: 14px; transform: translateX(-50%); display: flex; flex-wrap: wrap; gap: 16px; align-items: center; justify-content: center; margin-top: -8px;}.category-name-style{position: relative; display: inline-block; font-family: UniversalSans-500; font-weight: 504; font-size: 16px; line-height: 1; white-space: nowrap; color: #000; text-decoration: none; padding-bottom: 4px;}.category-name-style::after{content: ""; position: absolute; bottom: 0; left: 0; width: 100%; height: 1px; background-color: #000; transform: scaleX(1); transform-origin: left; transition: transform 0.3s ease-in-out;}.category-name-style:hover::after{animation: underlineWave 0.8s ease-in-out infinite;}.is-active-cat .category-name-style{font-weight: 700;}@keyframes underlineWave{0%{transform: scaleX(1); transform-origin: left;}50%{transform: scaleX(0); transform-origin: left;}100%{transform: scaleX(1); transform-origin: right;}}.carousel-image{width: 950px; height: 750px; transform: rotate(0deg); opacity: 1; object-fit: cover; border-radius: 0px;}.technical-icons svg{cursor: pointer; transition: transform 0.3s ease, fill 0.3s ease;}.technical-icons svg:hover{transform: scale(1.15); fill: #000;}.mt-3.text-start.d-flex{width: 100%;}@media (max-width: 1199.98px){.product-img{height: 490px;}}@media (max-width: 991.98px){.product-img{height: 360px;}}@media (max-width: 767px){.product-img{height: auto; aspect-ratio: 3/4;}.custom-shop-lines{width: calc(100% - 40px); margin-left: 20px; margin-top: 200px !important; margin-bottom: 5px;}.custom-shop-bars{position: relative; padding: 0 20px;}.custom-shop-categorie{position: relative; display: flex; flex-direction: column; align-items: flex-start; gap: 10px; margin-top: 10px; margin-left: 15px; padding-left: 0;}.custom-shop-titles{margin-left: 18px; margin-top: 20px !important; margin-bottom: 50px !important;}.custom-shop-categorie a{font-size: 16px; margin-bottom: 16px; gap: 6px; line-height: 1.4;}.category-name-style{font-size: 16px; white-space: normal;}.product-caption-link svg{margin-left: -5px !important;}.product-caption-link{margin-left: -20px !important;}}.custom-divider{border-top: 1px solid #000; margin: 0 80px;}.product-category-text{font-family: UniversalSans-500; font-weight: 504; font-size: 16px; line-height: 100%; letter-spacing: 0;}.product-category-texts{font-family: UniversalSans-500; font-weight: 504; font-size: 16px; line-height: 100%; letter-spacing: 0;}.extra-download-btn{display: none;}.product-title{font-family: 'TecniboDisplay'; font-weight: 400; font-size: 80px; line-height: 140px; margin-bottom: 16px; color: #000; margin-left: 20px !important;}.project-using-title{margin-left: 80px; font-size: 16px; color: #000; font-weight: 504; font-family: UniversalSans-500;}.no-visible-table{overflow-x: auto;}.no-visible-table table{border-collapse: collapse; width: 100%; border: none; table-layout: auto;}.no-visible-table th, .no-visible-table td{border: none !important; padding: 12px 8px; text-align: left; font-family: UniversalSans-500; font-weight: 504; font-size: 13px; line-height: 1.4; vertical-align: top; word-break: break-word;}.no-visible-table table, .no-visible-table *{border: none !important; outline: none !important; box-shadow: none !important;}.popup-box{margin-left: auto; width: 350px; background-color: #000; color: #fff; padding: 15px; font-size: 16px; border-radius: 6px; box-shadow: 0 4px 12px rgba(0,0,0,0.3);}.popup-content{position: relative;}.popup-close{position: absolute; top: -10px; right: -10px; background: white; color: black; border-radius: 50%; font-size: 14px; line-height: 20px; width: 20px; height: 20px; text-align: center; cursor: pointer; border: 1px solid #000;}.popup-contact-box{background-color: #000; color: #fff; border-radius: 0; font-size: 14px; position: relative; width: 100%; max-width: 280px;}.popup-line{border: 0; border-top: 1px solid #999; margin-top: 0; margin-bottom: 10px;}.popup-text{margin: 0; line-height: 1.6;}.popup-icon{position: absolute; bottom: 15px; right: 15px; text-decoration: none;}.popup-link{display: inline-block; margin-top: 10px; color: white; text-decoration: none;}.popup-link i{font-size: 18px;}.product-nav-link{color: #000 !important; text-decoration: underline !important; font-size: 14px; font-weight: 400;}.technical-link{position: relative; display: inline-block; color: #000 !important; font-family: UniversalSans-500; font-weight: 504; font-size: 16px; line-height: 1; text-decoration: none !important;}.technical-link .fiche-text{position: relative; display: inline-block;}.technical-link .fiche-text::after{content: ""; position: absolute; left: 0; bottom: -2px; width: 100%; height: 1px; background: #000; transform: scaleX(1); transform-origin: left; will-change: transform;}.technical-link:hover .fiche-text::after{animation: underlineWave 0.8s ease-in-out infinite;}@keyframes underlineWave{0%{transform: scaleX(1); transform-origin: left;}50%{transform: scaleX(0); transform-origin: left;}100%{transform: scaleX(1); transform-origin: right;}}.fiche-text{margin-left: 10px;}button.technical-link, button.extra-download-btn{background: none; border: none; padding: 0; cursor: pointer; outline: none;}button.technical-link:focus, button.extra-download-btn:focus{outline: none; box-shadow: none;}.technical-sheet-dropdown{min-width: 220px; padding: 6px 0; border: 1px solid rgba(0, 0, 0, 0.12); border-radius: 4px; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);}.technical-sheet-dropdown .dropdown-item{font-family: UniversalSans-500; font-size: 14px; color: #000; padding: 8px 16px; white-space: normal; word-break: break-word;}.technical-sheet-dropdown .dropdown-item:hover{background-color: #f5f5f5; color: #000;}.techsheet-modal-title{font-family: UniversalSans-500, sans-serif; font-size: 18px; font-weight: 600; color: #000; margin: 0;}.techsheet-modal-body{padding: 20px 24px 28px; background-color: #fff;}.techsheet-modal-desc{font-family: UniversalSans-500, sans-serif; font-size: 14px; color: #555; margin-bottom: 20px;}.techsheet-label{display: block; font-family: UniversalSans-500, sans-serif; font-size: 13px; font-weight: 500; color: #1c1b1f; margin-bottom: 6px;}.techsheet-input{border: 1px solid #ccc; border-radius: 4px; font-family: UniversalSans-500, sans-serif; font-size: 14px; padding: 9px 12px; color: #1c1b1f; background-color: #fafafa; transition: border-color 0.2s;}.techsheet-input:focus{border-color: #1c1b1f; background-color: #fff; outline: none; box-shadow: none;}.techsheet-submit-btn{background-color: #1c1b1f; color: #fff; font-family: UniversalSans-500, sans-serif; font-size: 15px; font-weight: 500; padding: 12px; border-radius: 4px; border: none; letter-spacing: 0.02em; margin-top: 8px; transition: background-color 0.2s;}.techsheet-submit-btn:hover{background-color: #333; color: #fff;}.techsheet-submit-btn:disabled{background-color: #888; cursor: not-allowed;}.techsheet-overlay{display: none; position: fixed; inset: 0; background: rgba(0, 0, 0, 0.55); z-index: 9000; align-items: center; justify-content: center;}.techsheet-overlay:target{display: flex;}.techsheet-overlay-bg{position: absolute; inset: 0; z-index: 0;}.techsheet-modal-box{position: relative; z-index: 1; background: #fff; border-radius: 8px; width: 100%; max-width: 460px; margin: 16px; overflow: hidden; box-shadow: 0 24px 64px rgba(0, 0, 0, 0.25);}.techsheet-modal-header{display: flex; align-items: center; justify-content: space-between; padding: 20px 24px 16px; border-bottom: 1px solid #e8e8e8;}.techsheet-close{font-size: 20px; line-height: 1; color: #1c1b1f; text-decoration: none !important; padding: 4px 8px; border-radius: 4px; flex-shrink: 0;}.techsheet-close:hover{background: #f0f0f0; color: #1c1b1f;}.techsheet-modal-body .iti{width: 100%;}.techsheet-modal-body .iti .techsheet-phone{width: 100%; border: 1px solid #ccc; border-radius: 4px; font-family: UniversalSans-500, sans-serif; font-size: 14px; padding: 9px 12px 9px 90px; color: #1c1b1f; background-color: #fafafa; transition: border-color 0.2s;}.techsheet-modal-body .iti .techsheet-phone:focus{border-color: #1c1b1f; background-color: #fff; outline: none; box-shadow: none;}.techsheet-modal-body .iti .iti__selected-dial-code, .techsheet-modal-body .iti .iti__country-name, .techsheet-modal-body .iti .iti__dial-code{font-family: UniversalSans-500, sans-serif; font-size: 14px; color: #1c1b1f;}.techsheet-success{text-align: center; padding: 24px 8px;}.techsheet-success-icon{display: inline-flex; align-items: center; justify-content: center; width: 52px; height: 52px; border-radius: 50%; background: #1c1b1f; color: #fff; font-size: 24px; margin-bottom: 16px;}.techsheet-success-title{font-family: UniversalSans-600, sans-serif; font-size: 18px; color: #1c1b1f; margin-bottom: 8px;}.techsheet-success-msg{font-family: UniversalSans-400, sans-serif; font-size: 14px; color: #555; margin-bottom: 0;}.techsheet-checkbox{width: 16px; height: 16px; flex-shrink: 0; accent-color: #1c1b1f; cursor: pointer;}.project-link{color: #000; text-decoration: none !important; font-size: 16px; font-weight: 400;}.card.project-card{background: transparent !important; border: none !important; box-shadow: none !important; border-radius: 0 !important;}.card.shadow-sm{background: transparent !important; border: none !important; box-shadow: none !important; border-radius: 0 !important;}.img-container{display: block; overflow: hidden; height: 550px;}.project-img{width: 100%; height: 100%; object-fit: cover; transition: transform 0.3s ease;}.img-container:hover .project-img{transform: scale(1.1);}.technical_fich_desktop{display: block;}.technical_fich_mobile{display: none;}@media (max-width: 991.98px){.technical_fich_desktop{display: none !important;}.technical_fich_mobile{display: block !important;}}.card-body.text-start.d-flex{background: transparent !important; padding: 0.5rem 0 !important;}.dot-icon{margin-left: 40px; width: 16px; height: 16px;}.card-body .project-link{display: inline-block; padding-bottom: 1px; color: #000 !important; font-size: 16px; font-weight: 400; text-decoration: none !important;}.project-link{text-decoration: none !important; color: #000 !important;}.project-name{position: relative; font-family: UniversalSans-500; font-weight: 504; font-size: 16px; display: inline-block; padding-bottom: 0; line-height: 100%;}.project-name::after{content: ""; position: absolute; left: 0; bottom: -1px; width: 100%; height: 1px; background-color: #000;}@media (max-width: 768px){.project-using-title{margin-left: auto; margin-right: auto; text-align: center; display: block;}.product-title{font-size: 40px; margin-left: 38px; line-height: 1.2; text-align: left; word-break: break-word;}.no-visible-table table{display: block; overflow-x: auto; white-space: nowrap;}.product-details{width: 550px !important; height: 475px !important; margin-left: 0 !important; margin-right: 0 !important; border-radius: 0 !important; object-fit: cover; display: block;}.product-category-text{display: none !important;}.svg_all_product{display: none !important;}.product-nav-link{justify-content: flex-start !important; margin-left: 15px; margin-top: 150px !important;}.d-flex.justify-content-end{justify-content: flex-start !important;}.extra-download-btn{display: inline-flex !important; align-items: center; margin-left: 190px; margin-top: 150px;}.carousel-inner, .carousel-item{padding: 0 !important; margin: 0 !important;}.col-lg-6.col-md-12{padding-left: 0 !important; padding-right: 0 !important;}body{overflow-x: hidden;}.technical-link{display: none !important;}.popup-contact-box{margin-bottom: 50px;}.mt-3.text-start{text-align: center !important;}}@media (max-width: 768px){.container-fluid.px-5{padding-left:0 !important; padding-right:0 !important;}.row{--bs-gutter-x:0 !important;}.col-md-12, .col-lg-6{padding-left:0 !important; padding-right:0 !important;}#carouselProductImages{width:100vw; margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw);}.carousel-image{display:block; width:100vw !important; height:477.5px !important; object-fit:cover !important; border:0 !important; border-radius:0 !important; margin:0 !important;}.technical-icons{position: relative; width: 100%; margin: 15px 0 10px;}.technical-icons .arrow-left, .technical-icons .arrow-right{position: absolute; bottom: 0; width: 28px; height: 28px;}.technical-icons .arrow-left{left: 35px;}.technical-icons .arrow-right{right: 20px;}.svg-categorie{margin-left: 38px;}}@media (max-width: 768px){.col-lg-6.col-md-12.text-center > div[style*="position: sticky"]{position: static !important; top: auto !important;}#carouselProductImages .carousel-inner{position: relative; aspect-ratio: 4 / 4; width: 100%; overflow: hidden;}#carouselProductImages .carousel-item{height: 100%;}#carouselProductImages .carousel-item img{width: 440px !important; height: auto !important; max-height: 700px; max-width: none !important; transform: rotate(0deg); opacity: 1 !important; object-fit: contain; display: block; position: static !important; margin: 0 auto; margin-bottom: 20px !important;}#carouselProductImages{margin-bottom: 40px !important;}#carouselProductImages .carousel-item{backface-visibility: hidden; -webkit-backface-visibility: hidden; will-change: transform, opacity;}.project-card .img-container{width: 392px !important; height: 245px !important; overflow: hidden !important; margin-left: 5px !important; margin-right: 5px !important;}.project-card .project-img{width: 100% !important; height: 100% !important; object-fit: cover !important; transform: rotate(0deg); opacity: 1 !important;}.project-card .card-body{margin-left: -10px !important;}.project-card .project-name{margin-left: -4px !important;}.product-category-texts{margin-left: 5px;}}.custom-shop-bars{position: relative;}.bestseller-filter{position: absolute; right: 80px; top: 2px; font-family: UniversalSans-500; font-weight: 504; font-size: 16px;}.breadcrumb_bestsellers{font-family: UniversalSans-500; font-weight: normal !important; font-size: 16px;}@media (max-width: 768px){.bestseller-filter{position: static !important; display: block; width: 100%; margin-top: 15px; padding-left: 15px;}.bestseller-filter a{display: inline-flex; align-items: center; gap: 8px;}}

/* /tecnibo_website/static/src/css/projects.css */
 .project-page .tecnibo-header, .project-page header, .project-page .navbar, .project-page .o_header_standard{position: fixed !important; top: 0; left: 0; width: 100%; z-index: 1000; background: transparent !important; box-shadow: none !important;}.project-page #wrapwrap, .project-page main, .project-page .page{padding-top: 0px;}html, body{overflow-x: hidden;}.custom-project-title{position: relative; z-index: 0; color: #000; font-family: 'UniversalSans-500'; font-weight: 504; font-size: 16px; line-height: 100%; letter-spacing: 0; margin-left: 60px; margin-bottom: 0;}.project-section{margin-top: 0; padding-top: 0;}.project-section{position:relative; width:100vw; margin-left:calc(-50vw + 50%); aspect-ratio:1920 / 1350; overflow:hidden;}.project-main-img{width: 100%; object-fit: cover; height: 100%;}.project-title-overlay{position:absolute; top:60%; left:50%; transform:translate(-50%,-60%); z-index:2;}.tecnibo-project-title{font-family:'TecniboDisplay'; font-size:280px; color:#fff; letter-spacing:6px; line-height:0.9; text-align:center; white-space:normal;}.project-secondary-images{display:flex; gap:12px; margin-top:80px;}.secondary-img-wrapper{flex:1; aspect-ratio:942 / 1183; overflow:hidden;}.secondary-project-img{width:100%; height:100%; object-fit:cover; display:block;}.project-large-image-block{margin-top:100px; display:flex; flex-direction:column; align-items:center;}.large-img-wrapper{width:100%; max-width:1414px;}#large-project-img{width:100%; height:827px; object-fit:cover; display:block;}.large-img-nav{width:100%; max-width:1414px; display:flex; justify-content:flex-end; gap:25px; margin-top:5px;}.img-nav-btn{background:none; border:none; padding:0; cursor:pointer; opacity:0.9; transition:opacity .2s ease;}.img-nav-btn:hover{opacity:0.6;}.large-img-description{width:100%; max-width:1414px; margin-top:5px; display:flex; justify-content:flex-start;}.desc-inner{display:flex; align-items:center; gap:10px; font-family: UniversalSans-500; font-weight:500; font-size:12px; line-height:100%; text-transform:uppercase;}.large-img-meta{width:100%; max-width:1414px; display:flex; justify-content:space-between; align-items:center; margin-top:5px;}.large-img-description{min-height:18px; display:flex; align-items:center;}.desc-inner{display:flex; align-items:center; gap:10px; font-family: UniversalSans-500; font-weight:500; font-size:12px; line-height:100%; text-transform:uppercase;}.large-img-nav{display:flex; gap:25px;}.img-nav-btn{background:none; border:none; padding:0; cursor:pointer;}.large-img-wrapper{margin-bottom:0;}.project-full-bleed{position: relative; width: 100vw; margin-left: 50%; transform: translateX(-50%); margin-top: 120px;}.project-full-bleed-img{width: 100%; height: 2184px; object-fit: cover; display: block;}.project-hero-second{position: relative; width: 100vw; margin-left: calc(-50vw + 50%); height: 1350px; overflow: hidden; margin-top: 120px;}.project-hero-second-img{width: 100%; height: 100%; object-fit: cover; display: block;}.project-hero-second-overlay{position: absolute; top: 60%; left: 50%; transform: translate(-50%, -60%); z-index: 2; text-align: center;}.project-hero-second-title{font-family: 'TecniboDisplay'; font-size: 280px; color: white; letter-spacing: 6px; line-height: 0.9; margin: 0;}.spacer-below-project{height: 100px !important;}.category-link svg{position: relative; top: -5px;}@media(max-width:768px){.project-section{position:relative; width:100vw; height:100vh; margin-left:calc(-50vw + 50%); overflow:hidden;}.project-main-img{width:100%; height:891px !important; object-fit:cover; display:block;}.project-title-overlay{position:absolute; top:50%; left:50%; transform:translate(-50%, -50%); width:100%; display:flex; justify-content:center; align-items:center; pointer-events:none;}.tecnibo-project-title{position:static; transform:rotate(-90deg); font-family:'TecniboDisplay'; font-weight:400; font-size:120px; line-height:1; letter-spacing:.05em; color:white; white-space:nowrap;}.project-info-line{flex-direction: column; align-items: flex-start; gap: 10px; padding-left: 20px; padding-right: 20px;}.project-secondary-images{flex-direction:column;}#large-project-img{width: 100%; height: 220.5px; object-fit: cover; display: block; margin: 0 auto;}.large-img-wrapper{display:flex; justify-content:center;}.desc-inner{margin-left: 20px;}.large-img-nav{margin-right: 20px; margin-top: 60px !important;}.project-full-bleed-img{height:auto; aspect-ratio:1920/2184;}.project-hero-second{position:relative; width:100vw; height:100vh; margin-left:calc(-50vw + 50%); overflow:hidden;}.project-hero-second-img{width:100%; height:891px !important; object-fit:cover; display:block;}.project-hero-second-overlay{position:absolute; top:50%; left:50%; transform:translate(-50%, -50%); width:100%; display:flex; justify-content:center; align-items:center; pointer-events:none;}.project-hero-second-title{position:static; transform:rotate(-90deg); font-family:'TecniboDisplay'; font-weight:400; font-size:120px; line-height:1; letter-spacing:.05em; color:white; white-space:nowrap;}}.custom-shop-line{border-top: 1px solid #333; width: calc(100% - 80px); margin-left: 60px; margin-top: 30px; margin-bottom: 20px;}.project-link{display: inline-block; border-bottom: 1px solid #000; line-height: 1; color: #000; text-decoration: none !important; font-size: 16px; padding: 0;}.img-containers{overflow: hidden; height: 621px; width: 924px;}.img-containers .project-img{width: 100%; height: 100%; object-fit: cover; transition: transform .3s ease;}.project-card{background: transparent !important; border: none !important; box-shadow: none !important; border-radius: 0 !important;}.project-img{width: 100%; height: 550px; object-fit: cover; display: block; border-radius: 0; transition: transform .3s ease;}.img-containers:hover .project-img{transform: scale(1.1);}.project-footer{display: flex; align-items: baseline; gap: 16px; background: #fff; padding: 12px 16px;}.dot-icon{margin-left: 57px; width: 16px; height: 16px; background-color: #000; border-radius: 50%; flex-shrink: 0;}.project-link:hover{text-decoration: none !important;}.project-link-project{position: relative; display: inline-block; color: #000; text-decoration: none !important; font-family: 'UniversalSans-500', sans-serif; font-weight: 500; font-style: normal; font-size: 16px; line-height: 1; letter-spacing: 0; transition: color 0.3s ease-in-out;}.project-link-project::after{content: ""; position: absolute; left: 0; bottom: 0; width: 100%; height: 0.5px; background: rgba(0, 0, 0, 0.7); transform: scaleX(1); transform-origin: left; will-change: transform;}.project-link-project:hover::after{animation: underlineWave 0.8s ease-in-out infinite;}@keyframes underlineWave{0%{transform: scaleX(1); transform-origin: left;}50%{transform: scaleX(0); transform-origin: left;}100%{transform: scaleX(1); transform-origin: right;}}@media (max-width: 768px){.custom-shop-line{width: calc(100% - 40px); margin-left: 20px; margin-top: 30px; margin-bottom: 20px;}.custom-project-title{position: static; margin-left: 40px !important; margin-top: 20px !important;}}.custom-divider{border-top: 1px solid #000; margin: 0 80px;}.product-using-title{margin-left: 80px; font-size: 16px; color: #000; font-weight: 504; font-family: 'UniversalSans-500';}.container.py-5{padding-left: 0 !important; padding-right: 0 !important; max-width: 100% !important;}body .oe_structure{padding: 0 !important; margin: 0 !important;}.project-img:hover{transform: none !important; opacity: 1 !important; filter: none !important;}.related-product-image{transition: transform 0.3s ease; will-change: transform;}.related-product-image:hover{transform: scale(1.1); z-index: 2;}.projects-links{color: #000 !important; font-size: 16px; font-weight: 400;}.projects-links:hover, .projects-links:visited, .projects-links:active, .projects-links:focus{color: #000 !important;}.section-title{display: flex; align-items: center; justify-content: center; margin-top: 40px; margin-bottom: 20px; gap: 20px;}.section-title::before, .section-title::after{content: ''; flex: 1; height: 0;}.section-title span{font-size: 24px; font-weight: bold; color: #333; white-space: nowrap;}.product-card{background: transparent !important; border: none !important; box-shadow: none !important; border-radius: 0 !important;}.img-containers{overflow: hidden;}.related-product-image{transition: transform 0.3s ease;}.img-containers:hover .related-product-image{transform: scale(1.1);}.product-body{background: transparent !important; padding-top: 8px !important; padding-left: 20px !important;}.projects-links{color: #000 !important; font-size: 16px; font-weight: 400;}.projects-links:hover{text-decoration: none !important;}.projects-links span{position: relative; display: inline-block; padding-bottom: 0; color: #000; font-size: 16px;}.projects-links span{border-bottom: none !important;}.product-link{font-family: UniversalSans-500; position: relative; display: inline-block; padding-bottom: 2px;}.product-link::after{content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 1px; background: #000; transform: scaleX(1); transform-origin: left;}.projects-links:hover .product-link::after, .projects-links:focus-within .product-link::after{animation: underlineWave 0.9s ease-in-out infinite;}@keyframes underlineWave{0%{transform: scaleX(1); transform-origin: left;}49%{transform: scaleX(0); transform-origin: left;}50%{transform: scaleX(0); transform-origin: right;}100%{transform: scaleX(1); transform-origin: right;}}@media (max-width: 768px){.product-using-title{margin-left: auto; margin-right: auto; text-align: center; display: block;}.img-containers{overflow: hidden; width: 392px; max-width: 90%; height: 245px; object-fit: cover; opacity: 1; display: block; margin: 0 auto; padding-left: 5px; padding-right: 3px; position: relative;}.card-footer.project-footer{margin-left: -25px !important;}}.project-lightbox{position: fixed; inset: 0; background: rgba(0, 0, 0, 0.75); display: none; align-items: center; justify-content: center; z-index: 1050;}.project-lightbox img{max-width: 90%; max-height: 90%; object-fit: contain; box-shadow: 0 20px 50px rgba(0,0,0,0.4);}.img-container{overflow:hidden; height:550px !important;}.related-product-image{width:100%; height:100%; object-fit:cover; display:block;}.mobile-footer-spacing{display: none;}@media (max-width: 768px){.product-card{border-radius:0;}.row{margin-left:0 !important; margin-right:0 !important;}.mobile-footer-spacing{height: 30px; width: 100%;}}

/* /tecnibo_website/static/src/css/template_porte.css */
.t-section, .t-section *{font-size: 10px !important; font-family: 'UniversalSans-500', sans-serif !important; line-height: 1.25 !important; color: #000 !important;}.t-row{display: grid; grid-template-columns: 33% 32% 2% 33%; padding: 10px 0; text-align: left; font-size: 13px !important; font-family: UniversalSans-500 !important;}.top-line{border-top: 1px solid #000; padding-top: 6px;}.t-col1, .t-col2, .t-col3{text-align: left !important; text-transform: uppercase;}.t-col-empty{}.t-col1{margin-left: 20px !important;}.t-tech-img{width: 150px; height: auto; object-fit: contain; display: block; margin-top: 5px;}.t-multi-img-wrap{display: flex; flex-wrap: wrap; gap: 6px; max-width: 100%;}.t-multi-img{width: 65px; height: 65px; object-fit: contain; padding: 4px;}@media (max-width: 768px){.t-col1{padding-left: 5px !important;}.t-col2{margin-left: 2px !important;}.t-col-empty{margin-left: -10px !important;}.t-col3{margin-left: -10px !important;}.t-section img.t-tech-img{width: 110px !important; height: auto !important; margin-left: 10px !important; margin-right: auto !important; display: block !important;}}.img-lightbox{display: none; position: fixed; z-index: 9999; inset: 0; background: rgba(0, 0, 0, 0.75); justify-content: center; align-items: center;}.img-lightbox-content{max-width: 90%; max-height: 90%; object-fit: contain; box-shadow: 0 20px 50px rgba(0,0,0,0.4);}.img-lightbox-close{position: absolute; top: 20px; right: 30px; font-size: 40px; color: #fff; cursor: pointer; user-select: none;}.zoomable-img{cursor: zoom-in;}