/*
* Theme Name: Inodia
* Description:
* Author: Vincent Michelet - Inodia
* Version: 1.0.0
*/

@import url("https://use.typekit.net/cek2ibm.css");
@import url('https://fonts.googleapis.com/css2?family=Anek+Latin:wdth,wght@75,100..800&family=Krona+One&display=swap');

@layer init, third-party, variables, reset, core, structure, components, utility;

@font-face {
	font-family: 'inodia-icons';
	src: url('./static/fonts/inodia-icons.woff2');
	font-weight: normal;
	font-style: normal;
	font-display: block;
}

@layer variables {
	
	:root {
		color-scheme: light dark;
		
		--border-radius: 0;
		--border-width: 1px;
		--outline-width: 2px;
		
		--wrapper-size: 100rem;
		--wrapper-size-small: 85rem;
		--wrapper-size-mobile: 90%;
		--sidebar-width: 18rem;
		--items-margin: clamp(.5rem, .125rem + 1.875vw, 2rem);
		--items-gap: calc(var(--items-margin) * 3) var(--items-margin);
		--items-min-size: 20rem;
		
		--logo-ratio: 124.34 / 75;
		--logo-height: clamp(2rem, 1.462rem + 2.687vw, 4.688rem);
		--padding-header: clamp(1rem, .5rem + 2.5vw, 3rem);
		
		--dark-color: oklch(0.1671 0.0188 237.69);
		--light-color: oklch(0.9251 0.0071 88.65);
		
		--primary-color: light-dark(oklch(0.6915 0.149 241.56), oklch(0.6915 0.149 241.56));
		--primary-hover-color: light-dark(oklch(0.7246 0.1109 237.34), oklch(0.7246 0.1109 237.34));
		--primary-active-color: light-dark(oklch(0.6307 0.129 240.19), oklch(0.6307 0.129 240.19));
		
		--secondary-color: light-dark(oklch(0.7959 0.0133 86.84), oklch(0.7959 0.0133 86.84));
		--secondary-hover-color: light-dark(oklch(0.7236 0.027 86.89), oklch(0.7236 0.027 86.89));
		--secondary-active-color: light-dark(oklch(0.8014 0.0086 91.5), oklch(0.8014 0.0086 91.5));
		
		--alert-danger-color: light-dark(oklch(58.59% .21458 24.279), oklch(70.919% .13936 17.357));
		--alert-success-color: light-dark(oklch(69.389% .13104 154.452), oklch(82.307% .1478 154.918));
		--alert-info-color: light-dark(oklch(62.31% .1881 259.83), oklch(80.61% .08979 260.028));
		
		--background-color: light-dark(var(--light-color), var(--dark-color));
		--background-grey: color-mix(in oklab, var(--background-color), var(--title-color) 5%);
		
		--border-color: var(--muted-color);
		--border-hover-color: var(--text-color);
		--border-focus-color: var(--primary-color);
		
		--title-color: light-dark(var(--dark-color), var(--light-color));
		--strong-color: oklch(from var(--title-color) l c h / .85);
		--text-color: oklch(from var(--title-color) l c h / .85);
		--muted-color: oklch(from var(--title-color) l c h / .6);
		--outline-color: oklch(from var(--title-color) l c h / .3);
		--shadow-color: oklch(from var(--title-color) l c h / .1);
		--table-color: oklch(from var(--title-color) l c h / .03);

		--font-title: "Anek Latin", sans-serif;
        --font-title-alt: "Krona One", sans-serif;
		--font-text: "proxima-nova", sans-serif;
		--font-icon: normal 400 var(--text-size-normal)/1 "inodia-icons";
		--line-height: 1.618;
		--letter-spacing: 0;
		
		--text-size-h1: clamp(2.5rem, .625rem + 9.375vw, 10rem);
		--text-size-h2: clamp(1.25rem, .8rem + 2.25vw, 3.5rem);
		--text-size-h3: clamp(1.5rem, 1.25rem + 1.25vw, 2.5rem);
		--text-size-h4: clamp(1.25rem, 1.1875rem + .3125vw, 1.5rem);
        --big-title: clamp(1.5rem, .825rem + 11.625vw, 13.125rem);
		--text-size-big: clamp(1rem, .95rem + .25vw, 1.25rem);
		--text-size-normal: 1rem;
		--text-size-small: .75rem;
		
		--text-weight-small: 300;
		--text-weight-normal: 300;
		--text-weight-medium: 500;
		--text-weight-bold: 700;
		
		--spacing-4xs: .25rem;
		--spacing-3xs: .5rem;
		--spacing-2xs: .75rem;
		--spacing-xs: 1rem;
		--spacing-sm: clamp(1rem, .875rem + .625vw, 1.5rem);
		--spacing-md: clamp(1.5rem, 1.375rem + .625vw, 2rem);
		--spacing-lg: clamp(2rem, 1.75rem + 1.25vw, 3rem);
		--spacing-xl: clamp(2.5rem, 2.125rem + 1.875vw, 4rem);
		--spacing-2xl: clamp(3rem, 2.25rem + 3.75vw, 6rem);
		--spacing-3xl: clamp(4rem, 3rem + 5vw, 8rem);
		--spacing-4xl: clamp(5rem, 3.75rem + 6.25vw, 10rem);
		--columns-gap: 9%;
		
		--box-shadow: 0 16px 24px -16px var(--shadow-color);
		
		--transition-default: all .3s ease-in-out, outline .1s ease-in-out;

        --terrain-basket: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='2003' height='1044' viewBox='0 0 2003 1044' fill='none'%3E%3Cpath d='M1001.55 348.475C1085.63 348.974 1153.64 417.242 1153.64 501.387C1153.64 585.531 1085.63 653.797 1001.55 654.297V1044H1000.55V654.303C916.079 654.265 847.612 585.817 847.611 501.387C847.611 416.956 916.079 348.507 1000.55 348.469V1.99993H1001.55V348.475ZM0.0693359 0.47747C6.81046 -0.0595323 44.0336 -0.0594557 81.2383 0.0741496C118.467 0.207997 155.718 0.475516 162.561 0.475517C438.956 0.475855 663.052 224.454 663.053 500.776C663.053 777.066 438.988 1001.08 162.561 1001.08C153.027 1001.08 117.046 1001.6 81.1191 1001.86C63.1592 1001.99 45.2145 1002.05 30.6045 1001.95C16.0081 1001.86 4.70566 1001.6 0.0527344 1001.07L0.107422 1000.59L0.162109 1000.11C4.75257 1000.62 15.995 1000.88 30.6113 1000.98C45.2145 1001.08 63.1529 1001.01 81.1113 1000.88C117.021 1000.62 153.024 1000.1 162.561 1000.1C438.451 1000.1 662.079 776.528 662.079 500.776C662.079 224.992 438.419 1.44949 162.561 1.44915C155.717 1.44915 118.454 1.18151 81.2344 1.04778C43.9932 0.914059 6.83471 0.915335 0.146484 1.44817L0.108398 0.961845L0.0693359 0.47747ZM1920.99 0.144462C1938.95 0.0147788 1956.89 -0.0504747 1971.5 0.0468058C1986.1 0.143998 1997.4 0.402509 2002.05 0.924736L2001.94 1.89349C1997.35 1.37831 1986.11 1.11776 1971.49 1.02044C1956.89 0.923205 1938.95 0.988423 1920.99 1.11809C1885.08 1.37739 1849.08 1.89642 1839.54 1.89642C1563.65 1.89678 1340.03 225.472 1340.03 501.224C1340.03 777.007 1563.69 1000.55 1839.54 1000.55C1846.39 1000.55 1883.65 1000.82 1920.87 1000.95C1958.11 1001.09 1995.27 1001.08 2001.96 1000.55L2002 1001.04L2002.04 1001.52C1995.29 1002.06 1958.07 1002.06 1920.87 1001.93C1883.64 1001.79 1846.39 1001.52 1839.54 1001.52C1563.15 1001.52 1339.05 777.546 1339.05 501.224C1339.05 224.934 1563.12 0.923144 1839.54 0.922782C1849.08 0.922782 1885.06 0.403884 1920.99 0.144462ZM450.273 348.471C452.278 348.476 454.283 348.51 456.261 348.602L456.26 348.603C537.745 352.011 602.786 419.116 602.786 501.387C602.786 583.658 537.077 651.497 454.956 654.236L454.957 654.237C453.385 654.298 451.84 654.329 450.273 654.335V671.25H0V670.25H449.273V654.335C446.265 654.325 443.26 654.227 440.314 654.037L440.379 653.039C443.303 653.227 446.286 653.325 449.273 653.335V349.471C446.29 349.481 443.334 349.579 440.379 349.768L440.314 348.769C443.291 348.58 446.268 348.481 449.273 348.471V337.749H0V336.749H450.273V348.471ZM2002.54 337.749H1553.26V348.471C1556.27 348.481 1559.25 348.58 1562.22 348.769L1562.19 349.268L1562.16 349.768C1559.2 349.579 1556.25 349.481 1553.26 349.471V653.335C1556.25 653.325 1559.24 653.228 1562.16 653.039L1562.22 654.037C1559.28 654.227 1556.27 654.325 1553.26 654.335V670.25H2002.54V671.25H1552.26V654.335C1550.7 654.329 1549.15 654.298 1547.58 654.237V654.236C1465.46 651.496 1399.75 584.125 1399.75 501.387C1399.75 419.116 1464.79 352.012 1546.28 348.603V348.602C1548.26 348.51 1550.26 348.476 1552.26 348.471V336.749H2002.54V337.749ZM450.273 653.335C451.827 653.329 453.36 653.298 454.919 653.238H454.922C536.505 650.517 601.786 583.118 601.786 501.387C601.786 419.654 537.17 352.986 456.217 349.602H456.214C454.255 349.51 452.267 349.476 450.273 349.471V653.335ZM1552.26 349.471C1550.27 349.476 1548.28 349.51 1546.32 349.602H1546.32C1465.37 352.986 1400.75 419.654 1400.75 501.387C1400.75 583.584 1466.03 650.517 1547.62 653.238H1547.62C1549.18 653.298 1550.71 653.329 1552.26 653.335V349.471ZM1000.55 349.469C916.631 349.507 848.611 417.509 848.611 501.387C848.612 585.265 916.631 653.265 1000.55 653.303V349.469ZM1001.55 653.297C1085.08 652.797 1152.64 584.978 1152.64 501.387C1152.64 417.795 1085.08 349.974 1001.55 349.475V653.297ZM419.417 650.288C420.324 650.472 421.234 650.648 422.147 650.815L422.058 651.307L421.967 651.799C421.048 651.63 420.131 651.453 419.218 651.268L419.417 650.288ZM1583.19 650.778L1583.29 651.268C1582.37 651.453 1581.46 651.63 1580.54 651.799L1580.36 650.815C1581.27 650.648 1582.18 650.472 1583.09 650.288L1583.19 650.778ZM408.628 647.688C410.405 648.186 412.195 648.653 413.998 649.088L413.764 650.06C411.949 649.622 410.147 649.153 408.358 648.651L408.628 647.688ZM1594.01 648.17L1594.15 648.651C1592.36 649.153 1590.56 649.622 1588.74 650.06L1588.51 649.088C1590.31 648.653 1592.1 648.186 1593.88 647.688L1594.01 648.17ZM398.055 644.301C399.792 644.929 401.544 645.527 403.311 646.093L403.006 647.045C401.228 646.475 399.464 645.873 397.715 645.241L398.055 644.301ZM1604.79 645.241C1603.04 645.873 1601.28 646.475 1599.5 647.045L1599.19 646.093C1600.96 645.527 1602.71 644.929 1604.45 644.301L1604.79 645.241ZM387.761 640.146C389.447 640.9 391.151 641.625 392.869 642.318L392.682 642.781L392.495 643.245C390.765 642.547 389.05 641.818 387.353 641.059L387.761 640.146ZM1615.15 641.059C1613.45 641.818 1611.74 642.547 1610.01 643.245L1609.82 642.781L1609.64 642.318C1611.35 641.625 1613.06 640.9 1614.74 640.146L1615.15 641.059ZM377.8 635.248C379.427 636.124 381.073 636.97 382.735 637.788L382.294 638.685C380.621 637.862 378.964 637.009 377.326 636.128L377.8 635.248ZM1625.18 636.128C1623.54 637.009 1621.88 637.863 1620.21 638.685L1619.77 637.788C1621.43 636.97 1623.08 636.124 1624.71 635.248L1625.18 636.128ZM368.223 629.633C369.783 630.626 371.363 631.591 372.961 632.528L372.455 633.391C370.847 632.448 369.257 631.476 367.687 630.477L367.955 630.055L368.223 629.633ZM1634.82 630.477C1633.25 631.476 1631.66 632.448 1630.05 633.391L1629.54 632.528C1631.14 631.591 1632.72 630.626 1634.28 629.633L1634.82 630.477ZM359.081 623.334C360.565 624.438 362.07 625.516 363.595 626.566L363.027 627.39C361.493 626.332 359.978 625.248 358.484 624.137L358.782 623.735L359.081 623.334ZM1643.72 623.735L1644.02 624.137C1642.53 625.248 1641.01 626.332 1639.48 627.39L1639.19 626.978L1638.91 626.566C1640.43 625.516 1641.94 624.438 1643.42 623.334L1643.72 623.735ZM350.422 616.388C351.822 617.597 353.245 618.781 354.688 619.939L354.375 620.329L354.062 620.72C352.609 619.554 351.178 618.362 349.769 617.144L350.095 616.766L350.422 616.388ZM1652.74 617.144C1651.33 618.362 1649.9 619.554 1648.44 620.72L1647.82 619.939C1649.26 618.781 1650.68 617.597 1652.08 616.388L1652.74 617.144ZM342.29 608.83C343.599 610.138 344.931 611.423 346.287 612.683L345.947 613.049L345.606 613.415C344.242 612.147 342.9 610.854 341.583 609.538L341.937 609.185L342.29 608.83ZM1660.57 609.185L1660.92 609.538C1659.6 610.855 1658.26 612.147 1656.9 613.415L1656.56 613.049L1656.22 612.683C1657.57 611.423 1658.91 610.138 1660.21 608.83L1660.57 609.185ZM334.728 600.703C335.938 602.103 337.174 603.48 338.435 604.835L337.702 605.517C336.434 604.153 335.189 602.766 333.971 601.357L334.349 601.03L334.728 600.703ZM1668.16 601.03L1668.53 601.357C1667.32 602.766 1666.07 604.153 1664.8 605.517L1664.44 605.176L1664.07 604.836C1665.33 603.481 1666.57 602.103 1667.78 600.703L1668.16 601.03ZM93.8799 400.373C95.3039 400.373 96.749 400.374 98.1641 400.475L98.165 400.474C151.9 402.715 194.755 446.948 194.755 501.186C194.755 555.425 151.433 600.126 97.2949 601.933H97.293C96.1615 601.966 95.0211 602 93.8799 602V601C95.0035 601 96.1283 600.967 97.2617 600.934L98.5156 600.884C151.529 598.452 193.755 554.466 193.755 501.186C193.755 447.487 151.326 403.692 98.123 401.473H98.1162L98.1084 401.472C96.7301 401.373 95.3156 401.373 93.8799 401.373V400.373ZM1908.66 401.373C1907.22 401.373 1905.81 401.373 1904.43 401.472L1904.42 401.473H1904.42C1851.21 403.692 1808.78 447.487 1808.78 501.186C1808.78 554.885 1851.68 599.145 1905.28 600.934H1905.28C1906.41 600.967 1907.53 601 1908.66 601V602C1907.52 602 1906.38 601.966 1905.25 601.933H1905.24C1851.11 600.126 1807.78 555.425 1807.78 501.186C1807.78 446.949 1850.64 402.716 1904.37 400.474V400.475C1905.79 400.374 1907.23 400.373 1908.66 400.373V401.373ZM327.775 592.049C328.881 593.533 330.015 594.997 331.173 596.439L330.393 597.065C329.227 595.614 328.087 594.14 326.974 592.645L327.374 592.347L327.775 592.049ZM1675.53 592.645C1674.42 594.14 1673.28 595.614 1672.11 597.065L1671.72 596.752L1671.33 596.439C1672.49 594.997 1673.62 593.533 1674.73 592.049L1675.53 592.645ZM321.471 582.91C322.466 584.472 323.49 586.015 324.54 587.537L324.128 587.82L323.717 588.104C322.66 586.572 321.63 585.019 320.628 583.447L321.05 583.179L321.471 582.91ZM1681.88 583.447C1680.88 585.019 1679.85 586.572 1678.79 588.104L1677.96 587.537C1679.02 586.015 1680.04 584.472 1681.03 582.91L1681.88 583.447ZM315.851 573.337C316.729 574.967 317.637 576.58 318.573 578.174L317.711 578.681C316.769 577.076 315.855 575.453 314.971 573.811L315.851 573.337ZM1687.53 573.811C1686.65 575.453 1685.74 577.076 1684.79 578.681L1684.36 578.428L1683.93 578.174C1684.87 576.58 1685.77 574.967 1686.65 573.337L1687.53 573.811ZM310.947 563.379C311.704 565.07 312.491 566.745 313.308 568.403L312.411 568.845C311.589 567.176 310.796 565.49 310.034 563.787L310.947 563.379ZM1692.47 563.787C1691.71 565.489 1690.92 567.176 1690.09 568.845L1689.2 568.403C1690.01 566.745 1690.8 565.07 1691.56 563.379L1692.47 563.787ZM306.787 553.086C307.418 554.829 308.08 556.558 308.772 558.271L308.31 558.458L307.846 558.645C307.149 556.921 306.482 555.181 305.847 553.427L306.317 553.256L306.787 553.086ZM1696.19 553.256L1696.66 553.427C1696.02 555.181 1695.36 556.921 1694.66 558.645L1694.2 558.458L1693.73 558.271C1694.42 556.558 1695.09 554.829 1695.72 553.086L1696.19 553.256ZM94.3799 557.42H93.3799V450.581H94.3799V557.42ZM1909.16 557.42H1908.16V450.581H1909.16V557.42ZM303.396 542.515C303.897 544.3 304.43 546.072 304.994 547.83L304.518 547.983L304.042 548.136C303.474 546.366 302.938 544.582 302.434 542.785L302.915 542.65L303.396 542.515ZM1699.59 542.65L1700.07 542.785C1699.57 544.582 1699.03 546.366 1698.46 548.136L1697.99 547.983L1697.51 547.83C1698.07 546.072 1698.61 544.3 1699.11 542.515L1699.59 542.65ZM300.793 531.727C301.161 533.545 301.562 535.352 301.995 537.145L301.023 537.38C300.588 535.574 300.183 533.756 299.812 531.926L300.793 531.727ZM1702.69 531.926C1702.32 533.756 1701.92 535.574 1701.48 537.38L1700.51 537.145C1700.94 535.352 1701.34 533.545 1701.71 531.727L1702.69 531.926ZM298.988 520.771C299.223 522.614 299.49 524.446 299.79 526.267L299.297 526.348L298.804 526.43C298.502 524.597 298.232 522.752 297.996 520.897L298.492 520.835L298.988 520.771ZM1704.01 520.835L1704.51 520.897C1704.27 522.752 1704 524.596 1703.7 526.429L1702.71 526.267C1703.01 524.446 1703.28 522.614 1703.52 520.771L1704.01 520.835ZM297.987 509.716C298.087 511.569 298.221 513.413 298.387 515.248L297.889 515.294L297.391 515.339C297.224 513.492 297.089 511.635 296.988 509.769L297.488 509.743L297.987 509.716ZM1705.02 509.743L1705.52 509.769C1705.41 511.635 1705.28 513.492 1705.11 515.339L1704.62 515.294L1704.12 515.248C1704.28 513.413 1704.42 511.569 1704.52 509.716L1705.02 509.743ZM297.789 498.638C297.771 499.553 297.763 500.469 297.763 501.387C297.763 502.317 297.771 503.245 297.788 504.171L296.788 504.188C296.771 503.257 296.763 502.322 296.763 501.387C296.763 500.463 296.771 499.539 296.789 498.618L297.789 498.638ZM1705.71 498.618C1705.73 499.539 1705.74 500.463 1705.74 501.387C1705.74 502.322 1705.73 503.257 1705.72 504.188L1704.72 504.171C1704.73 503.245 1704.74 502.317 1704.74 501.387C1704.74 500.469 1704.73 499.553 1704.72 498.638L1705.71 498.618ZM298.419 487.687C298.245 489.504 298.104 491.327 297.999 493.156L297.001 493.1C297.107 491.258 297.248 489.421 297.423 487.592L298.419 487.687ZM1705.08 487.592C1705.26 489.421 1705.4 491.258 1705.5 493.1L1704.5 493.156C1704.4 491.327 1704.26 489.504 1704.09 487.687L1705.08 487.592ZM299.386 476.724L299.878 476.81C299.567 478.61 299.29 480.418 299.046 482.233L298.055 482.101C298.3 480.272 298.579 478.451 298.893 476.639L299.386 476.724ZM1703.61 476.639C1703.92 478.451 1704.2 480.272 1704.45 482.101L1703.46 482.233C1703.22 480.418 1702.94 478.61 1702.63 476.81L1703.12 476.724L1703.61 476.639ZM301.663 465.953L302.148 466.074C301.704 467.847 301.292 469.629 300.913 471.42L300.424 471.317L299.935 471.214C300.316 469.41 300.731 467.615 301.178 465.831L301.663 465.953ZM1701.33 465.831C1701.77 467.615 1702.19 469.41 1702.57 471.214L1702.08 471.317L1701.59 471.42C1701.21 469.629 1700.8 467.847 1700.36 466.074L1700.84 465.953L1701.33 465.831ZM304.729 455.377L305.205 455.534C304.632 457.271 304.089 459.019 303.579 460.777L302.619 460.498C303.133 458.728 303.678 456.968 304.255 455.221L304.729 455.377ZM1698.25 455.221C1698.83 456.968 1699.37 458.728 1699.89 460.498L1698.92 460.777C1698.41 459.019 1697.87 457.271 1697.3 455.534L1697.77 455.377L1698.25 455.221ZM309.02 445.243C308.323 446.934 307.656 448.638 307.02 450.354L306.082 450.007C306.722 448.279 307.393 446.564 308.095 444.862L309.02 445.243ZM1694.41 444.862C1695.11 446.564 1695.78 448.279 1696.42 450.007L1695.49 450.354C1694.85 448.638 1694.18 446.934 1693.49 445.243L1694.41 444.862ZM313.114 435.029L313.562 435.253C312.746 436.89 311.96 438.542 311.202 440.208L310.291 439.794C311.053 438.117 311.846 436.454 312.667 434.807L313.114 435.029ZM1689.84 434.807C1690.66 436.454 1691.45 438.117 1692.21 439.794L1691.3 440.208C1690.55 438.542 1689.76 436.89 1688.94 435.253L1689.84 434.807ZM318.8 425.606C317.871 427.183 316.969 428.776 316.096 430.384L315.656 430.144L315.217 429.906C316.096 428.288 317.004 426.685 317.938 425.099L318.8 425.606ZM1684.57 425.099C1685.5 426.685 1686.41 428.288 1687.29 429.906L1686.85 430.144L1686.41 430.384C1685.54 428.776 1684.63 427.183 1683.71 425.606L1684.57 425.099ZM324.699 416.351C323.663 417.858 322.652 419.384 321.669 420.927L320.825 420.39C321.815 418.837 322.832 417.301 323.875 415.784L324.699 416.351ZM1678.63 415.784C1679.67 417.301 1680.69 418.837 1681.68 420.39L1681.26 420.658L1680.84 420.927C1679.85 419.384 1678.84 417.858 1677.81 416.351L1678.22 416.067L1678.63 415.784ZM331.228 407.526C330.089 408.959 328.976 410.411 327.888 411.882L327.485 411.585L327.083 411.287C328.178 409.807 329.299 408.346 330.445 406.904L331.228 407.526ZM1672.06 406.904C1673.21 408.346 1674.33 409.807 1675.42 411.287L1675.02 411.585L1674.62 411.882C1673.53 410.411 1672.41 408.959 1671.28 407.526L1671.67 407.216L1672.06 406.904ZM1664.89 398.501C1666.13 399.86 1667.35 401.24 1668.55 402.641L1668.17 402.965L1667.79 403.29C1666.6 401.898 1665.39 400.526 1664.15 399.176L1664.52 398.838L1664.89 398.501ZM338.352 399.176C337.117 400.526 335.905 401.897 334.718 403.289L334.337 402.965L333.957 402.641C335.152 401.24 336.371 399.86 337.614 398.501L338.352 399.176ZM346.037 391.338C344.711 392.599 343.407 393.884 342.126 395.19L341.77 394.84L341.412 394.49C342.701 393.176 344.013 391.883 345.348 390.613L346.037 391.338ZM1657.16 390.613C1658.49 391.883 1659.8 393.176 1661.09 394.49L1660.74 394.84L1660.38 395.19C1659.1 393.884 1657.79 392.599 1656.47 391.338L1657.16 390.613ZM353.93 383.669L354.248 384.055C352.838 385.22 351.447 386.41 350.079 387.624L349.415 386.876C350.792 385.654 352.191 384.456 353.61 383.283L353.93 383.669ZM1648.89 383.283C1650.31 384.456 1651.71 385.654 1653.09 386.876L1652.43 387.624C1651.06 386.41 1649.67 385.22 1648.26 384.055L1648.89 383.283ZM362.949 377.364C361.46 378.428 359.989 379.518 358.539 380.633L357.93 379.84C359.389 378.718 360.869 377.621 362.368 376.551L362.949 377.364ZM1640.14 376.551C1641.64 377.621 1643.12 378.718 1644.58 379.84L1644.27 380.236L1643.96 380.633C1642.52 379.518 1641.05 378.428 1639.56 377.364L1640.14 376.551ZM372.103 371.307C370.541 372.262 368.997 373.245 367.472 374.254L367.196 373.837L366.92 373.42C368.455 372.404 370.008 371.415 371.58 370.454L372.103 371.307ZM1630.92 370.454C1632.5 371.415 1634.05 372.404 1635.58 373.42L1635.31 373.837L1635.03 374.254C1633.51 373.245 1631.96 372.262 1630.4 371.307L1630.66 370.881L1630.92 370.454ZM381.665 365.924C380.038 366.764 378.428 367.632 376.835 368.529L376.59 368.093L376.344 367.657C377.947 366.754 379.568 365.88 381.206 365.035L381.665 365.924ZM1621.3 365.035C1622.94 365.88 1624.56 366.755 1626.16 367.657L1625.67 368.529C1624.08 367.632 1622.47 366.764 1620.84 365.924L1621.3 365.035ZM391.398 360.79L391.595 361.249C389.91 361.968 388.241 362.718 386.587 363.496L386.161 362.591C387.826 361.807 389.507 361.053 391.203 360.33L391.398 360.79ZM1611.3 360.33C1613 361.053 1614.68 361.807 1616.34 362.591L1615.92 363.496C1614.26 362.718 1612.59 361.968 1610.91 361.249L1611.3 360.33ZM401.84 357.322C400.107 357.914 398.387 358.537 396.682 359.19L396.324 358.257C398.041 357.599 399.772 356.971 401.518 356.376L401.84 357.322ZM1600.99 356.376C1602.73 356.971 1604.46 357.599 1606.18 358.257L1606 358.724L1605.82 359.19C1604.12 358.537 1602.4 357.914 1600.66 357.322L1600.83 356.849L1600.99 356.376ZM412.225 353.686L412.351 354.171C410.576 354.631 408.814 355.123 407.065 355.647L406.922 355.169L406.777 354.69C408.538 354.162 410.313 353.666 412.1 353.203L412.225 353.686ZM1590.41 353.203C1592.19 353.666 1593.97 354.162 1595.73 354.69L1595.44 355.647C1593.69 355.123 1591.93 354.631 1590.15 354.171L1590.28 353.686L1590.41 353.203ZM423.07 351.821C421.266 352.145 419.472 352.504 417.69 352.894L417.583 352.405L417.477 351.917C419.27 351.524 421.076 351.163 422.893 350.837L423.07 351.821ZM1579.61 350.837C1581.43 351.163 1583.23 351.524 1585.03 351.917L1584.92 352.405L1584.81 352.894C1583.03 352.504 1581.24 352.146 1579.43 351.821L1579.52 351.329L1579.61 350.837ZM431.152 350.101L431.212 350.597C430.301 350.707 429.392 350.827 428.485 350.954L428.416 350.459L428.346 349.964C429.258 349.835 430.174 349.716 431.092 349.604L431.152 350.101ZM1571.41 349.604C1572.33 349.716 1573.25 349.835 1574.16 349.964L1574.02 350.954C1573.11 350.826 1572.2 350.707 1571.29 350.597L1571.41 349.604Z' fill='white' fill-opacity='0.2'/%3E%3C/svg%3E") 50%/contain no-repeat;
        --raquette-basket: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1002' height='664' viewBox='0 0 1002 664' fill='none'%3E%3Cpath d='M500.613 60.6992C582.884 60.6992 649.988 125.74 653.397 207.225H653.398C653.49 209.202 653.523 211.207 653.528 213.211L665.25 213.212V663.486L664.25 663.485V214.211H653.529C653.519 217.216 653.42 220.194 653.231 223.171L652.732 223.139L652.233 223.107C652.421 220.152 652.519 217.195 652.529 214.211H348.664C348.674 217.198 348.772 220.182 348.961 223.106L347.963 223.171C347.773 220.225 347.674 217.219 347.664 214.211H331.749V663.485H330.749V213.211H347.664C347.67 211.645 347.702 210.1 347.763 208.528H347.764C350.504 126.409 417.876 60.6994 500.613 60.6992ZM500.776 0C777.067 1.2077e-05 1001.08 224.065 1001.08 500.493C1001.08 510.027 1001.6 546.008 1001.86 581.935C1001.99 599.894 1002.05 617.838 1001.95 632.448C1001.86 647.044 1001.6 658.347 1001.07 663L1000.59 662.945L1000.11 662.892C1000.62 658.301 1000.88 647.058 1000.98 632.441C1001.08 617.838 1001.01 599.901 1000.88 581.942C1000.62 546.033 1000.1 510.029 1000.1 500.493C1000.1 224.602 776.528 0.973645 500.776 0.973633C224.992 0.973895 1.4493 224.635 1.44916 500.493C1.44915 507.337 1.18152 544.599 1.04779 581.818C0.914063 619.06 0.915305 656.22 1.44818 662.907L0.961852 662.945L0.477477 662.984C-0.0595523 656.244 -0.0594506 619.02 0.0741561 581.814C0.208001 544.586 0.47552 507.336 0.475523 500.493C0.475664 224.098 224.454 0.000261677 500.776 0ZM551.419 569.106V570.106L444.58 570.105V569.105L551.419 569.106ZM500.813 468.73C555.05 468.73 599.283 511.585 601.525 565.32H601.524C601.625 566.736 601.626 568.182 601.626 569.606L600.626 569.605C600.626 568.17 600.626 566.755 600.527 565.377L600.526 565.37V565.362C598.307 512.16 554.512 469.73 500.813 469.73C447.114 469.731 402.855 512.625 401.065 566.225V566.224C401.032 567.357 400.999 568.482 400.999 569.605H399.999C399.999 568.465 400.033 567.324 400.066 566.193V566.191C401.874 512.054 446.574 468.731 500.813 468.73ZM503.382 366.662C502.461 366.68 501.537 366.689 500.613 366.689C499.677 366.689 498.743 366.681 497.812 366.664L497.829 365.664C498.755 365.681 499.683 365.689 500.613 365.689C501.531 365.689 502.447 365.681 503.362 365.663L503.382 366.662ZM486.752 365.065C488.587 365.231 490.431 365.365 492.284 365.465L492.257 365.964L492.231 366.463C490.365 366.362 488.508 366.229 486.661 366.062L486.706 365.563L486.752 365.065ZM514.408 366.028C512.579 366.204 510.742 366.345 508.9 366.451L508.844 365.452C510.673 365.347 512.496 365.207 514.313 365.033L514.408 366.028ZM475.733 363.662C477.554 363.962 479.386 364.229 481.229 364.464L481.165 364.96L481.103 365.456C479.248 365.22 477.404 364.95 475.571 364.648L475.733 363.662ZM525.276 364.066L525.361 364.559C523.549 364.872 521.728 365.152 519.899 365.397L519.767 364.406C521.582 364.163 523.39 363.884 525.19 363.573L525.276 364.066ZM464.855 361.456C466.648 361.889 468.455 362.291 470.273 362.659L470.074 363.639C468.244 363.268 466.426 362.864 464.62 362.429L464.855 361.456ZM536.047 361.789L536.169 362.273C534.385 362.721 532.589 363.135 530.786 363.517L530.683 363.027L530.58 362.538C532.371 362.159 534.154 361.748 535.926 361.304L536.047 361.789ZM454.17 358.458C455.928 359.022 457.7 359.555 459.485 360.056L459.35 360.537L459.215 361.019C457.418 360.514 455.634 359.978 453.864 359.41L454.017 358.934L454.17 358.458ZM546.623 358.722L546.779 359.197C545.032 359.774 543.272 360.32 541.502 360.833L541.223 359.872C542.981 359.362 544.729 358.82 546.466 358.247L546.623 358.722ZM443.729 354.679C445.441 355.371 447.171 356.033 448.914 356.664L448.744 357.135L448.573 357.604C446.819 356.969 445.079 356.303 443.355 355.606L443.542 355.143L443.729 354.679ZM557.138 355.356C555.436 356.058 553.721 356.73 551.993 357.37L551.646 356.433C553.362 355.796 555.066 355.13 556.757 354.433L557.138 355.356ZM433.597 350.145C435.254 350.961 436.93 351.748 438.621 352.505L438.213 353.417C436.511 352.655 434.824 351.863 433.155 351.041L433.597 350.145ZM567.193 350.785C565.546 351.606 563.883 352.398 562.206 353.16L561.792 352.25C563.458 351.493 565.11 350.705 566.747 349.89L567.193 350.785ZM423.826 344.879C425.42 345.815 427.033 346.722 428.663 347.601L428.189 348.481C426.547 347.597 424.924 346.683 423.319 345.741L423.572 345.31L423.826 344.879ZM576.901 345.514C575.315 346.448 573.712 347.356 572.094 348.234L571.856 347.795L571.616 347.356C573.224 346.483 574.818 345.581 576.394 344.652L576.901 345.514ZM414.463 338.912C415.985 339.962 417.528 340.985 419.09 341.98L418.553 342.824C416.981 341.822 415.428 340.792 413.896 339.735L414.463 338.912ZM585.933 339.164L586.216 339.576C584.699 340.619 583.163 341.636 581.61 342.626L581.342 342.205L581.073 341.783C582.616 340.8 584.142 339.789 585.649 338.753L585.933 339.164ZM405.561 332.279C407.003 333.438 408.467 334.571 409.951 335.677L409.355 336.479C407.86 335.365 406.386 334.225 404.935 333.059L405.248 332.669L405.561 332.279ZM594.784 332.615L595.096 333.007C593.655 334.153 592.193 335.273 590.713 336.368L590.415 335.967L590.118 335.564C591.589 334.476 593.041 333.362 594.474 332.224L594.784 332.615ZM603.162 325.469L603.499 325.838C602.14 327.081 600.76 328.3 599.359 329.495L599.035 329.114L598.71 328.734C600.102 327.547 601.474 326.336 602.824 325.101L603.162 325.469ZM397.164 325.018C398.519 326.278 399.897 327.514 401.297 328.725L400.97 329.103L400.643 329.481C399.234 328.263 397.847 327.018 396.483 325.749L396.824 325.384L397.164 325.018ZM611.387 318.104C610.117 319.439 608.824 320.751 607.51 322.04L607.16 321.683L606.81 321.325C608.116 320.044 609.401 318.741 610.662 317.415L611.387 318.104ZM389.317 317.165C390.577 318.521 391.862 319.853 393.17 321.162L392.815 321.516L392.462 321.869C391.146 320.552 389.853 319.21 388.585 317.846L388.951 317.505L389.317 317.165ZM618.717 309.841C617.544 311.26 616.346 312.66 615.124 314.037L614.376 313.373C615.59 312.005 616.78 310.615 617.945 309.204L618.717 309.841ZM382.061 308.764C383.219 310.208 384.403 311.63 385.612 313.03L384.855 313.684C383.638 312.275 382.446 310.843 381.28 309.39L382.061 308.764ZM625.449 301.084C624.379 302.583 623.282 304.063 622.16 305.522L621.764 305.218L621.367 304.912C622.482 303.462 623.572 301.992 624.636 300.503L625.449 301.084ZM375.434 299.857C376.484 301.382 377.562 302.887 378.666 304.371L378.265 304.669L377.863 304.968C376.752 303.474 375.668 301.959 374.61 300.425L375.022 300.141L375.434 299.857ZM631.119 291.61L631.546 291.871C630.585 293.443 629.596 294.997 628.58 296.532L628.163 296.256L627.746 295.98C628.755 294.456 629.739 292.911 630.693 291.35L631.119 291.61ZM369.472 290.491C370.409 292.089 371.374 293.669 372.367 295.229L371.523 295.766C370.524 294.195 369.552 292.605 368.609 290.997L369.472 290.491ZM636.965 282.246C636.12 283.883 635.245 285.504 634.343 287.107L633.471 286.617C634.368 285.024 635.237 283.414 636.076 281.787L636.965 282.246ZM364.212 280.717C365.029 282.379 365.876 284.025 366.752 285.652L365.872 286.126C364.991 284.488 364.137 282.831 363.314 281.158L364.212 280.717ZM641.67 272.249C640.947 273.945 640.193 275.626 639.409 277.291L638.504 276.865C639.282 275.212 640.032 273.541 640.751 271.856L641.67 272.249ZM359.682 270.583C360.375 272.301 361.1 274.005 361.854 275.691L360.941 276.1C360.182 274.402 359.453 272.687 358.755 270.957L359.219 270.771L359.682 270.583ZM645.151 261.773L645.624 261.935C645.029 263.68 644.401 265.411 643.743 267.128L643.276 266.949L642.81 266.77C643.463 265.065 644.086 263.344 644.678 261.611L645.151 261.773ZM355.907 260.142C356.473 261.908 357.071 263.66 357.699 265.397L356.759 265.737C356.127 263.988 355.525 262.224 354.955 260.446L355.907 260.142ZM648.314 251.227L648.797 251.353C648.334 253.139 647.838 254.913 647.31 256.674L646.353 256.387C646.877 254.638 647.369 252.876 647.829 251.102L648.314 251.227ZM352.912 249.454C353.346 251.256 353.814 253.047 354.312 254.823L353.83 254.959L353.349 255.094C352.847 253.305 352.378 251.503 351.94 249.688L352.912 249.454ZM650.671 240.471L651.163 240.559C650.837 242.375 650.476 244.182 650.083 245.976L649.595 245.868L649.106 245.762C649.496 243.98 649.855 242.186 650.179 240.382L650.671 240.471ZM351.185 241.305C351.352 242.218 351.528 243.128 351.712 244.035L351.222 244.135L350.731 244.233C350.547 243.32 350.37 242.403 350.201 241.484L351.185 241.305ZM652.396 232.36C652.284 233.278 652.165 234.193 652.036 235.105L651.046 234.967C651.174 234.061 651.293 233.151 651.403 232.239L652.396 232.36ZM500.613 61.6992C418.416 61.6994 351.483 126.98 348.762 208.564V208.566C348.702 210.125 348.67 211.658 348.664 213.211H652.528C652.523 211.218 652.49 209.229 652.399 207.271V207.27C649.013 126.316 582.346 61.6992 500.613 61.6992Z' fill='white' fill-opacity='0.2'/%3E%3C/svg%3E") 50%/contain no-repeat;
        --improve-footer: url("data:image/svg+xml,%3Csvg width='1302' height='139' viewBox='0 0 1302 139' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M24.57 136.29H2.94596e-05V2.10003H24.57V136.29ZM42.9565 136.29L43.9015 2.10003H77.7115L92.0965 87.36H92.9365L106.902 2.10003H140.817L141.762 136.29H119.187L119.082 97.755L119.817 32.55H118.872L103.227 121.275H81.3865L65.8465 32.55H64.9015L65.6365 97.755L65.5315 136.29H42.9565ZM174.656 96.18V75.495H191.351C195.971 75.495 199.226 74.095 201.116 71.295C203.076 68.425 204.056 64.05 204.056 58.17V40.11C204.056 34.16 203.111 29.785 201.221 26.985C199.331 24.185 196.076 22.785 191.456 22.785H174.866V2.10003H192.296C204.756 2.10003 213.821 5.32003 219.491 11.76C225.161 18.2 227.996 27.51 227.996 39.69V58.485C227.996 71.085 225.161 80.535 219.491 86.835C213.821 93.065 204.826 96.18 192.506 96.18H174.656ZM160.166 136.29V2.10003H183.896V81.27L184.106 93.135V136.29H160.166ZM287.972 136.29L285.977 103.845C285.767 100.415 285.207 97.44 284.297 94.92C283.457 92.33 282.092 90.335 280.202 88.935C278.312 87.465 275.757 86.73 272.537 86.73H259.727V66.99H273.902C278.732 66.92 282.092 65.555 283.982 62.895C285.872 60.235 286.817 56.175 286.817 50.715V40.005C286.817 34.055 285.907 29.715 284.087 26.985C282.337 24.185 279.047 22.785 274.217 22.785H259.202V2.10003H275.897C288.147 2.10003 297.037 5.00503 302.567 10.815C308.097 16.625 310.862 24.92 310.862 35.7V45.045C310.862 52.885 309.182 59.08 305.822 63.63C302.532 68.11 297.212 70.77 289.862 71.61V74.655L283.877 71.61C290.597 72.24 295.637 73.85 298.997 76.44C302.427 79.03 304.842 82.565 306.242 87.045C307.642 91.455 308.622 96.88 309.182 103.32L312.122 136.29H287.972ZM242.402 136.29V2.10003H266.237V72.87L266.342 82.95V136.29H242.402ZM360.414 138.39C348.094 138.39 338.889 134.89 332.799 127.89C326.779 120.82 323.769 110.355 323.769 96.495V42C323.769 28.14 326.779 17.675 332.799 10.605C338.889 3.53503 348.094 2.88486e-05 360.414 2.88486e-05C372.734 2.88486e-05 381.904 3.53503 387.924 10.605C394.014 17.675 397.059 28.14 397.059 42V96.495C397.059 110.355 394.014 120.82 387.924 127.89C381.904 134.89 372.734 138.39 360.414 138.39ZM360.414 117.705C364.824 117.705 367.904 116.13 369.654 112.98C371.474 109.83 372.384 105.14 372.384 98.91V39.48C372.384 33.18 371.474 28.49 369.654 25.41C367.904 22.26 364.824 20.685 360.414 20.685C356.004 20.685 352.889 22.26 351.069 25.41C349.319 28.49 348.444 33.18 348.444 39.48V98.91C348.444 105.14 349.319 109.83 351.069 112.98C352.889 116.13 356.004 117.705 360.414 117.705ZM424.817 136.29L405.497 2.10003H429.857L443.297 118.755H445.397L458.837 2.10003H483.197L463.877 136.29H424.817ZM495.674 136.29V2.10003H519.404V136.29H495.674ZM511.004 136.29V114.765H551.114V136.29H511.004ZM511.529 78.435V57.435H550.169V78.435H511.529ZM510.899 23.415V2.10003H551.114V23.415H510.899ZM614.752 99.225L587.977 2.10003H612.232L621.052 44.415L625.462 68.355H626.827L631.237 44.415L639.742 2.10003H663.997L637.432 99.225H614.752ZM614.437 136.29V75.18H637.852V136.29H614.437ZM706.381 138.39C694.061 138.39 684.856 134.89 678.766 127.89C672.746 120.82 669.736 110.355 669.736 96.495V42C669.736 28.14 672.746 17.675 678.766 10.605C684.856 3.53503 694.061 2.88486e-05 706.381 2.88486e-05C718.701 2.88486e-05 727.871 3.53503 733.891 10.605C739.981 17.675 743.026 28.14 743.026 42V96.495C743.026 110.355 739.981 120.82 733.891 127.89C727.871 134.89 718.701 138.39 706.381 138.39ZM706.381 117.705C710.791 117.705 713.871 116.13 715.621 112.98C717.441 109.83 718.351 105.14 718.351 98.91V39.48C718.351 33.18 717.441 28.49 715.621 25.41C713.871 22.26 710.791 20.685 706.381 20.685C701.971 20.685 698.856 22.26 697.036 25.41C695.286 28.49 694.411 33.18 694.411 39.48V98.91C694.411 105.14 695.286 109.83 697.036 112.98C698.856 116.13 701.971 117.705 706.381 117.705ZM794.994 138.39C782.814 138.39 773.749 134.925 767.799 127.995C761.849 121.065 758.874 110.88 758.874 97.44V2.10003H783.444V99.645C783.444 105.665 784.319 110.18 786.069 113.19C787.819 116.13 790.759 117.6 794.889 117.6C799.159 117.6 802.134 116.13 803.814 113.19C805.564 110.18 806.439 105.665 806.439 99.645V2.10003H830.904V97.44C830.904 110.88 827.929 121.065 821.979 127.995C816.099 134.925 807.104 138.39 794.994 138.39ZM894.388 136.29L892.393 103.845C892.183 100.415 891.623 97.44 890.713 94.92C889.873 92.33 888.508 90.335 886.618 88.935C884.728 87.465 882.173 86.73 878.953 86.73H866.143V66.99H880.318C885.148 66.92 888.508 65.555 890.398 62.895C892.288 60.235 893.233 56.175 893.233 50.715V40.005C893.233 34.055 892.323 29.715 890.503 26.985C888.753 24.185 885.463 22.785 880.633 22.785H865.618V2.10003H882.313C894.563 2.10003 903.453 5.00503 908.983 10.815C914.513 16.625 917.278 24.92 917.278 35.7V45.045C917.278 52.885 915.598 59.08 912.238 63.63C908.948 68.11 903.628 70.77 896.278 71.61V74.655L890.293 71.61C897.013 72.24 902.053 73.85 905.413 76.44C908.843 79.03 911.258 82.565 912.658 87.045C914.058 91.455 915.038 96.88 915.598 103.32L918.538 136.29H894.388ZM848.818 136.29V2.10003H872.653V72.87L872.758 82.95V136.29H848.818ZM986.372 138.39C980.002 138.39 974.892 136.85 971.042 133.77C967.262 130.62 964.532 126.105 962.852 120.225C961.172 114.345 960.332 107.275 960.332 99.015V44.52C960.332 29.61 963.622 18.48 970.202 11.13C976.852 3.71003 986.617 2.88486e-05 999.497 2.88486e-05C1003.28 2.88486e-05 1006.78 0.350029 1010 1.05003C1013.22 1.68003 1016.12 2.52003 1018.71 3.57003C1021.3 4.62003 1023.4 5.74003 1025.01 6.93003L1026.8 29.295C1024.21 27.405 1021.13 25.76 1017.56 24.36C1013.99 22.89 1009.93 22.155 1005.38 22.155C997.957 22.155 992.637 24.115 989.417 28.035C986.197 31.955 984.587 37.8 984.587 45.57V99.96C984.587 105.49 985.462 109.655 987.212 112.455C989.032 115.255 991.902 116.655 995.822 116.655C998.132 116.655 1000.02 116.2 1001.49 115.29C1003.03 114.31 1004.26 112.98 1005.17 111.3C1006.08 109.62 1006.74 107.8 1007.16 105.84V67.83L1011.26 78.015H997.187V58.065H1028.9V119.595H1006.95C1006.25 123.025 1005.2 126.175 1003.8 129.045C1002.4 131.845 1000.3 134.12 997.502 135.87C994.772 137.55 991.062 138.39 986.372 138.39ZM1008.21 114.24H1028.9V136.29H1007.37L1008.21 114.24ZM1039.09 136.29L1058.41 2.10003H1096.63L1116.16 136.29H1092.32L1078.67 19.53H1076.36L1062.92 136.29H1039.09ZM1059.14 102.69V83.265H1095.79V102.69H1059.14ZM1128.44 136.29L1129.38 2.10003H1163.19L1177.58 87.36H1178.42L1192.38 2.10003H1226.3L1227.24 136.29H1204.67L1204.56 97.755L1205.3 32.55H1204.35L1188.71 121.275H1166.87L1151.33 32.55H1150.38L1151.12 97.755L1151.01 136.29H1128.44ZM1245.64 136.29V2.10003H1269.37V136.29H1245.64ZM1260.97 136.29V114.765H1301.08V136.29H1260.97ZM1261.5 78.435V57.435H1300.14V78.435H1261.5ZM1260.87 23.415V2.10003H1301.08V23.415H1260.87Z' fill='%23071016'/%3E%3C/svg%3E%0A") 50%/contain no-repeat;

	}

	
	@media (prefers-contrast: more) {
	
		:root {
			--border-color: var(--title-color);
			--border-hover-color: var(--title-color);    
			--text-color: var(--title-color);
			--strong-color: var(--title-color);
			--muted-color: var(--title-color);
			--outline-color: var(--title-color);
		}
	}
	
	.inodia-icons.ball:before {
		content: "\e90d" / "";
	}
	.inodia-icons.fusee:before {
		content: "\e90e" / "";
	}
	.inodia-icons.long_arrow_left:before {
		content: "\e90f" / "";
	}
    .bouton-icon.icon-long_arrow_right a > span:before,
	.inodia-icons.long_arrow_right:before {
		content: "\e910" / "";
	}
	.inodia-icons.panier:before {
		content: "\e911" / "";
	}
	.inodia-icons.sifflet:before {
		content: "\e912" / "";
	}
	.inodia-icons.ticket:before {
		content: "\e913" / "";
	}
	.inodia-icons.time:before {
		content: "\e914" / "";
	}
	.inodia-icons.vision:before {
		content: "\e915" / "";
	}
	.inodia-icons.youtube:before {
		content: "\e916" / "";
	}
	.inodia-icons.burger:before {
		content: "\e90c" / "";
	}
	:where(.inodia-icons.cross, .moovegdpr-arrow-close):before {
		content: "\e90b" / "";
	}
	.inodia-icons.play:before,
	.bouton-icon.icon-play a > span:before {
		content: "\e90a" / "";
	}
	.inodia-icons.linkedin:before {
		content: "\e909" / "";
	}
	.inodia-icons.instagram:before {
		content: "\e908" / "";
	}
	.inodia-icons.tiktok:before {
		content: "\e907" / "";
	}
	.inodia-icons.checkmark:before {
		content: "\e906" / "";
	}
	.inodia-icons.download:before,
	.bouton-download a > span:before,
	.bouton-download:is(a, button):before {
		content: "\e905" / "";
	}
	.inodia-icons.upload:before {
		content: "\e904" / "";
	}
	:where(.inodia-icons.arrow_left, .owl-prev):before,
	.elementor-swiper-button-prev i:before {
		content: "\e903" / "";
	}
	:where(.inodia-icons.arrow_right, .owl-next):before,
	.elementor-swiper-button-next i:before {
		content: "\e902" / "";
	}
    details[open] summary::after,
	.inodia-icons.arrow_up:before {
		content: "\e901" / "";
	}
    details:not([open]) summary::after,
	.inodia-icons.arrow_down:before {
		content: "\e900" / "";
	}

	@container viewport (inline-size <= 60rem) {
    
		:root {
			--wrapper-size-mobile: 85%;
		}	
	}
}

@layer utility {

    .bouton-icon span span,
    :is(.sr-only, .gdpr-sr-only, .gdpr-sr-label, .elementor-field-type-upload > input) {
        border: 0;
        clip: inset(50%);
        inline-size: 1px;
        block-size: 1px;
        margin: -1px;
        padding: 0;
        white-space: nowrap;
        overflow: hidden;
        position: absolute;
    }

    .skip-link {
        --_btn-color: var(--alert-info-color);
        background: var(--_btn-color);
        color: var(--background-color);
        padding-block: var(--spacing-4xs);
        padding-inline: var(--spacing-3xs);
        position: fixed;
        inset-block-start: 0;
        inset-inline: 0;
        z-index: 50000;
    }

    .skip-link::after,
    .elementor-maintenance-mode :where(header, footer, .breadcrumb) {
        display: none;
    }

    .skip-link:not(:focus-visible) {
        translate: 0 -150%;
    }
    
    .elementor-message {
        background: oklch(from var(--_alert-color) l c h / 10%);
        border: var(--border-width) solid oklch(from var(--_alert-color) l c h / 15%);
        border-radius: clamp(0rem, var(--border-radius) / 2, .5rem);
        color: var(--_alert-color);
        font: var(--text-weight-medium) var(--text-size-small)/1.3 var(--font-text);
        padding-block: var(--spacing-2xs);
        padding-inline: calc(var(--spacing-2xs) * 2);
        margin-block: var(--spacing-sm) 0;
    }

    .elementor-message-success {
        --_alert-color: var(--alert-success-color);
    }

    .elementor-message-danger {
        --_alert-color: var(--alert-danger-color);
    }

    .bouton:disabled {
        background: var(--shadow-color);
        border-color: transparent;
        color: var(--muted-color);
        cursor: not-allowed;
    }

    @container viewport (70rem < inline-size) {

        .show-inodia-tablet {
            display: none;
        }
    }

    @container viewport (inline-size <= 70rem) {

        .hide-inodia-tablet {
            display: none;
        }
    }

    @container viewport (45rem < inline-size) {
        
        .show-inodia-mobile {
            display: none;
        }
    }

    @container viewport (inline-size <= 45rem) {

        .hide-inodia-mobile {
            display: none;
        }
    }
}

@layer init {

    *, ::after, ::before {
        box-sizing: border-box;
        margin: 0;
        padding: 0;
    }
}

@layer reset {

    @view-transition {
        navigation: auto;
    }

    ::-webkit-scrollbar {
        background: var(--background-color);
        inline-size: 8px;
        block-size: 8px;
    }

    ::-webkit-scrollbar-thumb {
        background: var(--primary-color);
        border-radius: calc(var(--border-radius) / 4);
    }

    ::selection {
        background: var(--primary-hover-color);
        color: var(--background-color);
    }

    html:has(.light-scheme-color),
    :where(.light-scheme-color:not(.dark-default), .dark-scheme-color:not(.light-default)) .clair,
    .dark-scheme-color.light-default .fonce,
    .dark-scheme-color :is(.gdpr_infobar_postion_bottom, .gdpr_lightbox),
    .light-scheme-color :is(.gdpr_infobar_postion_bottom > div, .gdpr_lightbox > div) {
        color-scheme: light;
    }

    html:has(.dark-scheme-color),
    :where(.dark-scheme-color:not(.light-default), .light-scheme-color:not(.dark-default)) .fonce,
    .light-scheme-color.dark-default .clair,
    .light-scheme-color :is(.gdpr_infobar_postion_bottom, .gdpr_lightbox),
    .dark-scheme-color :is(.gdpr_infobar_postion_bottom > div, .gdpr_lightbox > div) {    
        color-scheme: dark;
    }

    .light-default.dark-scheme-color :is(.logo-header, .moove-gdpr-company-logo-holder) img {
        filter: brightness(10);
    }

    .dark-default.light-scheme-color :is(.logo-header, .moove-gdpr-company-logo-holder) img {
        filter: brightness(0);
    }

    :is(html, body) {
        background: var(--background-color);
        block-size: auto;
        min-block-size: fill-available;
        min-block-size: -webkit-fill-available;
    }

    html {
        scroll-padding: var(--spacing-lg);
        container: viewport / inline-size;
        overflow: auto;
        -webkit-font-smoothing: antialiased;
		-webkit-text-size-adjust: none;
		text-size-adjust: none;
    }

    @media (prefers-reduced-motion: no-preference) {

        html {
            scroll-behavior: smooth;
			interpolate-size: allow-keywords;
        }
    }

    @-moz-document url-prefix() {
        
        html {
            scrollbar-color: var(--primary-color) var(--background-color);
            scrollbar-width: thin;
        }
    }

    body {
        display: flex;
        flex-flow: column;
        inline-size: 100%;
        max-inline-size: 100%;
        min-block-size: 100vh;
        overflow: clip;
        text-wrap: pretty;
        position: relative;
    }

    main {
        flex-grow: 1;
    }

    :where(p, li, time, span, small, strong, address, .elementor-testimonial-job) {
        color: var(--text-color);
        font-family: var(--font-text);
    }

    :is(p, li, time, span, strong) {
        line-height: var(--line-height);
    }

    :where(p, li, time, span, small, .elementor-blockquote__content) {
        font-weight: var(--text-weight-normal);
    }

    :where(p, li, time, span, small, figcaption, .elementor-message, .tease__title, .tease__excerpt, .post-footer-link, .elementor-testimonial-job) {
        letter-spacing: var(--letter-spacing);
    }

    .elementor-blockquote__content {
        font-style: italic;
        margin-block-start: 0;
    }
    
    :is(b, strong) {
        color: var(--strong-color);
        font-weight: var(--text-weight-bold);
    }

    p:not(:last-child, .h1, .h2, .h3, .h4, .label, .no-margin) {
        margin-block-end: .75lh;
    }

    p:not(.h1, .h2, .h3, .h4, .label):last-child {
        margin-block-end: 0;
    }

    :where(small, .message-rgpd) {
        font-size: var(--text-size-small);
    }
    
    :is(address, small) {
        line-height: 1.3;
    }

    address {
        font-style: normal;
    }

    address a:not(:first-child) {
        margin-block-start: var(--spacing-xs);
    }

    :is(li, summary) {
        list-style: none;
    }

    .services :is(li) {
        list-style: inherit;
    }

    button:not(:where(.elementor-add-section-area-button, .elementor-add-section-close)) {
        all: unset;    
        box-sizing: border-box;
    }

    button {
        text-align: center;
    }

    :is(a, input, button, select, textarea, summary) {
        outline: none;
        transition: var(--transition-default);
    }

    :is(a, button, select, [type=submit]) {
        appearance: none;
        cursor: pointer;
        touch-action: manipulation;
    }

    a {
        text-decoration: none;
    }

    a[href^="tel:"] {
        white-space: nowrap;
    }

    :where(iframe, dialog, input[type=file]:focus, input[type=checkbox], input[type=radio], [popover]) {
        border: none;
    }

    :is(a, button, [type=submit], summary):focus-visible,
    .elementor-field-label:has(+ .elementor-upload-field:focus-visible) {
        outline: var(--outline-width) solid var(--_btn-color, var(--_link-color, var(--primary-color)));
        outline-offset: calc(var(--outline-width) * 2);
    }
    
    :is(a, button, [type=submit]) i,
    :is(a, button, [type=submit]) span {
        color: inherit;
    }

	small,
    input ~ span em,
    :is(input, textarea)::placeholder {
        color: var(--muted-color);
    }

    input[type=search]::-webkit-search-decoration,
    input[type=search]::-webkit-search-cancel-button,
    input[type=search]::-webkit-search-results-button,
    input[type=search]::-webkit-search-results-decoration,
    input:is([type=checkbox], [type=radio]) {
        appearance: none;
    }

    textarea {
        resize: vertical;
    }

    :is(.elementor-field-type-checkbox, .elementor-field-type-radio) .elementor-field-subgroup {
        display: flex;
        flex-flow: row wrap;
        gap: calc(var(--spacing-2xs) * 2) var(--spacing-2xs);
    }

    :is(.elementor-field-type-checkbox, .elementor-field-type-radio)  .elementor-field-option {
        display: table;
    }
	
    :is(input[type=checkbox], input[type=radio], .elementor-field-type-checkbox, .elementor-field-type-radio) {
        --_input-size: var(--text-size-normal);
    }

    input:is([type=checkbox], [type=radio]) {
        background: transparent;
        border-radius: 50%;
        aspect-ratio: 1;
        inline-size: var(--_input-size);
        position: absolute;
        inset-block-start: 50%;
        translate: 0 -50%;
    }

    input:is([type=checkbox], [type=radio]) + label {
        cursor: pointer;
        display: flex;
        align-items: baseline;
        position: relative;
    }
	
    input:is([type=checkbox], [type=radio]) + label,
    input:is([type=checkbox], [type=radio]) + label::before,
    input:is([type=checkbox], [type=radio]) + label::after {
        transition: var(--transition-default);
    }

    input:is([type=checkbox], [type=radio]) + label::before,
    input[type=radio] + label::after {
        content: "";
        display: flex;
        aspect-ratio: 1;
        inline-size: var(--_input-size);
        position: relative;
        inset-block-start: 0;
    }

    input:is([type=checkbox], [type=radio]) + label::before {
        border: var(--border-width) solid var(--border-color);
        margin-inline-end: var(--spacing-3xs);
        outline-color: var(--outline-color);
    }

    input[type=checkbox]:focus:not(:focus-visible) + label::before {  
        box-shadow: 0 0 0 2px var(--shadow-color);
    }

    input:is([type=checkbox], [type=radio]):checked:focus-visible + label::before {    
        outline-color: oklch(from var(--primary-color) l c h / .3);
    }

    input[type=checkbox]:checked:focus:not(:focus-visible) + label::before {    
        box-shadow: 0 0 0 2px oklch(from var(--primary-color) l c h / .15);
    }

    input[type=checkbox] + label::before {
        background: transparent; 
        border-radius: clamp(0rem, var(--border-radius), .25rem);
    }

    input[type=checkbox] + label::after {
        content: "\e906" / "";
        color: var(--light-color);
        font: var(--font-icon);
        font-size: calc(var(--_input-size) / 2);
        letter-spacing: 0;
        position: absolute;
        inset-block-start: calc(var(--_input-size) / 2);
        inset-inline-start: calc(var(--_input-size) / 2);
        translate: -50%;
    }

    input[type=radio] + label::before,
    input[type=radio] + label::after {
        border-radius: 50%;
    }

    input:is([type=checkbox], [type=radio]):hover + label::before,
    input:is([type=checkbox], [type=radio]) + label:hover::before {
        border-color: var(--strong-color);
    }

    input[type=radio] + label::after {    
        border: .25rem solid var(--primary-color);
        position: absolute;
        inset-block-start: var(--spacing-4xs);
        inset-inline-start: 0;
    }

    input[type=radio]:checked + label::before {
        border-color: transparent;
    }

    input[type=radio]:not(:checked) + label::after {
        opacity: 0;
    }

    input[type=checkbox]:checked + label::before {    
        background: var(--primary-color);
        border-color: var(--primary-color);
    }

    :is(picture, figure, time, .elementor-widget-button) {
        display: flex;
    }

    :where(img, blockquote, .elementor-blockquote__content) {
        font-style: italic;
    }

    img {
        block-size: auto;
        max-inline-size: 100%;
        vertical-align: middle;
    }

	iframe {
		inline-size: 100%
	}

    blockquote {
        position: relative;
        padding-block: var(--spacing-xs);
        padding-inline: var(--spacing-md);
    }

	blockquote::before {
		content: open-quote;
	}
	
	blockquote::after {
		content: no-close-quote;
	}

    blockquote > * {
        font-style: inherit;
    }

    [popover] {
        margin: auto;
    }

    [popover]:not(:popover-open, dialog[open]) {
        display: none;
    }

    dialog {
        max-inline-size: initial;
        max-block-size: initial;
    }

    :where(html:has(dialog[open]), .elementor-widget-open_street_map, .owl-carousel:not(.owl-loaded)) {
        overflow: hidden;
    }

    .inodia-icons :is(a, span),
    .bouton-icon a > span,
    :is(.inodia-icons, .owl-prev, .owl-next, .moovegdpr-arrow-close),
    :where(.elementor-select-wrapper, .elementor-accordion-title, summary)::after,
    :is(.elementor-swiper-button-prev, .elementor-swiper-button-next, .elementor-accordion-icon) i {
        font: var(--font-icon);
        letter-spacing: 0;
    }

    :is(.elementor-section, .elementor-container, .elementor-column, .ino-column, .elementor-select-wrapper, .elementor-widget-open_street_map) {
        position: relative;
    }

    .bdt-grid > *,
    .elementor-widget-testimonial-carousel .swiper-slide  {
        padding: 0;
    }

    .bdt-grid,
    :is(.elementor-field-group:last-child, .elementor-field-type-recaptcha_v3, .elementor-field-type-html:has(+ .elementor-field-type-recaptcha_v3), .elementor-testimonial-content, .elementor-testimonial__content) {
        margin: 0;
    }

    :is(.grecaptcha-badge, .select-caret-down-wrapper, .owl-nav.disabled, .owl-dots.disabled, .elementor-slideshow__footer),
    :is(.elementor-tab-content, .elementor-widget-text-editor) :is(br, *:empty),
    :where(.elementor-element-edit-mode, #elementor-add-new-section) li::before,
    :where(.elementor-text-editor, .elementor-field-type-upload > .file-loaded)::after {
        display: none;
    }

    :where(.elementor-widget-wrap, .elementor-widget-wrap > .elementor-element, .elementor-field-group) {
        inline-size: 100%;
    }

    :where(.elementor-main-swiper, .elementor-carousel-image) {
        height: auto;
    }

    .elementor-testimonial__cite span {
        display: block;
    }

    :is(.elementor-widget-image, .elementor-testimonial-wrapper, .moove-gdpr-tab-nav) {
        text-align: left;
    }

    .elementor-widget-open_street_map,
    .elementor-top-section:not(.full, .block) .elementor-widget-image:not(.contain) img {
        border-radius: var(--border-radius);
    }
    
    .elementor-widget-open_street_map {
        z-index: 0;        
    }
	
    .swiper:not(.swiper-initialized) .elementor-image-carousel {
        gap: 1rem;
    }

    .elementor-select-wrapper::after {
        content: "\e900" / "";
        font-size: var(--text-size-small);
		pointer-events: none;
		position: absolute;
        inset-block-start: 50%;
        inset-inline-end: var(--spacing-sm);
        translate: 0 -50% 0;
    }

    .elementor-top-section[data-settings='{"background_background":"classic"}'] {
        background-position: 50%;
        background-size: cover;
    }

    .elementor-top-section[data-settings='{"background_background":"classic"}']:not(:has(.fond)) {
        border-image: fill 0 linear-gradient(oklch(from var(--dark-color) l c h / 50%), oklch(from var(--dark-color) l c h / 50%));
    }

    .elementor-field-group {
        margin-block-end: var(--spacing-xs);
    }
 
    :is(.elementor-tab-content, .elementor-widget-text-editor:not(:where(.title-primary)), .elementor-testimonial__text, .elementor-testimonial-content),
    :is(.elementor-tab-content, .elementor-widget-text-editor:not(:where(.title-primary))) :is(h1, h2, h3, h4, p, li, span, strong) {
        background: transparent !important;
        font: var(--text-weight-small) var(--text-size-normal)/1.3 var(--font-text) !important;
        letter-spacing: var(--letter-spacing) !important;
        text-wrap: inherit !important;
    }

    :is(.img-box, .box-grey) p.elementor-icon-box-description,
    .intro p {
        font: var(--text-weight-small) var(--text-size-big)/1.5 var(--font-text) !important;
    }

    .big-text p {
        font: var(--text-weight-small) var(--text-size-big) / 1.5 var(--font-text) !important;
        text-transform: uppercase;
        letter-spacing: .15em;
    }

    .elementor-icon-box-content p.elementor-icon-box-title span,
    .elementor-icon-box-content p.elementor-icon-box-title {
        font: var(--text-weight-bold) var(--text-size-big) / 1.5 var(--font-text) !important;
    }

    .big-text-excerpt p {
        font: var(--text-weight-normal) var(--text-size-h3) / 1.5 var(--font-title-alt) !important;
    }

    :is(.solutions, .services) .card :is(ol, ul) li {
        font: var(--text-weight-normal) var(--text-size-normal)/1.3 var(--font-text) !important;
    }

    .elementor-widget-text-editor:not(.text-hover, .title-primary),
    .elementor-widget-text-editor:not(.text-hover, .title-primary) :is(h1, h2, h3, h4, p, li, span, strong) {
        color: var(--text-color) !important;
    }

    :is(.elementor-tab-content, .elementor-widget-text-editor, .elementor-testimonial__text, .elementor-testimonial-content).text-big,
    :is(.elementor-tab-content, .elementor-widget-text-editor).text-big :is(h1, h2, h3, h4, p, li, span, strong) {
        font-size: var(--text-size-big) !important;
    }

    :is(.elementor-tab-content, .elementor-widget-text-editor, .elementor-testimonial__text, .elementor-testimonial-content).text-small,
    :is(.elementor-tab-content, .elementor-widget-text-editor).text-small :is(h1, h2, h3, h4, p, li, span, strong) {
        font-size: var(--text-size-small) !important;
    }

    :is(.elementor-tab-content, .elementor-widget-text-editor) strong {
        color: var(--strong-color) !important;
        font-weight: var(--text-weight-bold) !important;
    }

    :is(.elementor-tab-content, .elementor-widget-text-editor) a * {
        color: inherit !important;
    }

    :is(.elementor-tab-content, .elementor-widget-text-editor) :is(h1, h2, h3, h4):not(:last-child) {
        margin-block-end: var(--spacing-xs) !important;
    }

    :is(.elementor-tab-content, .elementor-widget-text-editor) :is(h1, h2, h3, h4):last-child {
        margin-block-end: 0 !important;
    }
    
    .owl-stage-outer :is(.owl-stage, .item),
    :where(.owl-carousel:not(.owl-loaded), .owl-carousel > .item, .owl-nav, .owl-dots) {
        display: flex;
    }

    .owl-carousel > .item {
        flex: 0 0 auto;
        inline-size: calc(100% / var(--_owl-item));
    }

    .owl-stage-outer :is(.owl-stage, .item) {
        block-size: 100%;
    }

    .owl-stage-outer .owl-stage {
        align-items: stretch;
    }

    .owl-nav {
        align-items: center;
        justify-content: space-between;
        inline-size: var(--wrapper-size-mobile);
        position: absolute;
        inset: 50% auto auto 50%;
        translate: -50% -50%;
    }

    .owl-carousel.dots-inside,
    .owl-carousel.item-1 .owl-nav {
        color-scheme: dark;
    }

    :is(.owl-prev, .owl-next),
    :is(.elementor-swiper-button-prev, .elementor-swiper-button-next) i {
        font-size: var(--text-size-h4);
        pointer-events: initial;
    }

    .owl-dots {
        justify-content: center;
        gap: var(--spacing-xs);
    }

    .owl-carousel.dots-inside {
        position: relative;
    }

    .owl-carousel.dots-inside .owl-dots {
        position: absolute;
        inset-block-end: var(--spacing-sm);
        inset-inline-end: 50%;
        translate: 50%;
    }
	
    .owl-carousel:not(.dots-inside) .owl-dots {
        margin-block-start: var(--spacing-lg);
    }

    .owl-dot {
        background: var(--outline-color);
        border-radius: 100%;
        aspect-ratio: 1;
        inline-size: .5rem;
    }

    .owl-dot.active {
        background: var(--title-color);
    }

    :is(.owl-prev, .owl-next).disabled {
        cursor: not-allowed;
        opacity: .5;
    }
    
    @container viewport (inline-size <= 70rem) {

        .owl-carousel.item-4 {
            --_owl-item: 3 !important;
        }
    }

	@container viewport (45rem < inline-size) {
		
	    .elementor-field-group.elementor-col-50 {
	        inline-size: 50%;
	    }
	}
	
    @container viewport (inline-size <= 45rem) {
        
        .owl-carousel:is(.item-4, .item-3) {
            --_owl-item: 2 !important;
        }

        .elementor-field-group:not(.elementor-field-group-rgpd) {
            margin-block-end: var(--spacing-3xs);
        }
    }    

    @container viewport (36rem < inline-size) {

        .owl-carousel:not(.item-1) > .item {
            padding-block: 0;
            padding-inline: 1rem;
        }
    }

    @container viewport (inline-size <= 36rem) {

        .owl-carousel:is(.item-4, .item-3, .item-2) {
            --_owl-item: 1 !important;
        }

        .elementor-message::before {
            display: none;
        }
    }

    @container viewport (30rem < inline-size) {
    
        .label-hide,
        .elementor-field-group:not(.elementor-field-type-upload, .elementor-field-type-select, .elementor-field-type-checkbox, .elementor-field-type-radio) > .elementor-field-label {
            display: none;
        }
    }

    @container viewport (inline-size <= 30rem) {

        .label-hide + div :is(input, textarea)::placeholder,
        .elementor-field-group :is(input, textarea)::placeholder {
            color: transparent;
        }
        
        .elementor-field-group:not(.elementor-field-group-rgpd) {
            margin-block-end: var(--spacing-sm);
        }
        
        .elementor-field-group:not(:first-child, .elementor-field-type-upload) .elementor-field-label {
            margin-block-start: var(--spacing-3xs);
        }
    }
}

@layer structure {

    body:not(.blog, .single-post) .header-absolute:not(.header-absolute-home) + main,
    .home .header-absolute-home + main {
        margin-block-start: calc((var(--logo-height) + (var(--padding-header) * 2)) * -1);
    }

    body:is(.blog, .single-post) header.header-absolute .header-nav {
        background: var(--dark-color);
    }

    body:is(.blog, .single-post) main {
        margin-block-start: var(--spacing-2xl);
    }

    .elementor-section.elementor-section-boxed > .elementor-container {
        max-width: initial !important;
    }
    
    figcaption,
    .center:not(.owl-item) :where(h1, .h1, h2, .h2, h3, .h3, h4, .h4, p, strong, .elementor-widget-container, .elementor-widget-wrap),
    .center:not(.owl-item):where(h1, .h1, h2, .h2, h3, .h3, h4, .h4, p, strong, .ino-pagination-block),
    .center:is(.h1, .h2, .h3, .h4) .elementor-heading-title {
        align-items: center;
        text-align: center;
        text-wrap: balance;
    }

    .section-clients > .elementor-container,
    .posts-list {
        display: grid;
        grid-template-columns: repeat(auto-fill, minmax(min(100%, var(--items-min-size)), 1fr));
        gap: var(--items-gap);
    }
  
    .container,
    :is(.ino-section-boxed, .elementor-section-boxed) > :is(.ino-container, .elementor-container) {
        inline-size: min(var(--wrapper-size-mobile), var(--wrapper-size));
        margin-inline: auto;
    }

    :is(.ino-section-boxed, .elementor-section-boxed).container-small > :is(.ino-container, .elementor-container) {
        inline-size: min(var(--wrapper-size-mobile), var(--wrapper-size-small));
    }

    .container .container:is(.container-small, .container-medium) {
        inline-size: min(100%, var(--wrapper-size-small));
    }

    :where(.elementor-section > .elementor-container, .ino-top-section > .ino-container) {
        display: flex;
        flex-flow: row;
        gap: calc(var(--spacing-4xl) * .66) var(--columns-gap);
    }

    :where(.img-box > .elementor-container) {
        gap: var(--spacing-md);
    }

    :is(.elementor-section, .ino-section):not(.ino-grid).full :is(.elementor-container, .ino-container) {
        gap: 0;
    }

    :is(.elementor-top-section, .ino-top-section).fond.block:not(.full) > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape),
    :is(.elementor-top-section, .ino-top-section).fond.block:not(.elementor-section-full_width) > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape) {
        border-radius: clamp(0rem, var(--border-radius), clamp(4rem, 3rem + 5vw, 8rem));
        overflow: hidden;
    }

    .ino-col-txt,
    .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child) .elementor-top-column:not(:has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child), .ino-grid) > .elementor-widget-wrap,
    .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child) .elementor-top-column:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child), .ino-grid) > .elementor-widget-wrap {
        display: flex;
        flex-flow: column;
        justify-content: center;
    }

    .ino-col-img :is(.owl-carousel, .owl-stage-outer, .owl-stage, .owl-item, .item, [ino-lightbox], figure, picture, img),
    .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child) .elementor-column:has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child) :is(.elementor-widget-wrap, .elementor-widget-image, .elementor-widget-image-carousel, .elementor-widget-container, .elementor-image-carousel-wrapper, .elementor-image-carousel, figure, picture, img),
    .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child) .elementor-column:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child) :is(.elementor-widget-wrap, .elementor-widget-image, .elementor-widget-image-carousel, .elementor-widget-container, .elementor-image-carousel-wrapper, .elementor-image-carousel, figure, picture, img) {
        inline-size: 100%;
        block-size: 100%;
    }

    iframe,
    .ino-txt-img:not(.full) .ino-col-img:not(.contain) img,
    .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child):not(.full) .elementor-top-column:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):only-child:not(.contain)) img,
    .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child):not(.full) .elementor-top-column:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child:not(.contain)) img {
        border-radius: var(--border-radius);
    }

    .elementor-top-section:has(.elementor-column:not(.elementor-col-100) .elementor-widget-image:only-child) .elementor-top-column:has(.elementor-widget-image:only-child) picture,
    .elementor-top-section:has(.elementor-column:not(.elementor-col-100) .elementor-widget-image:first-child + .bouton-icon:last-child) .elementor-top-column:has(.elementor-widget-image:first-child + .bouton-icon:last-child) picture {
        position: relative;
        z-index: 1;
    }

    .ino-col-img:not(.contain) img,
    .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child) .elementor-top-column:has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child) img,
    .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child) .elementor-top-column:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child) img {
        object-fit: cover;
    }

    .ino-txt-img.full .ino-col-img img,
    .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full .elementor-top-column:has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child) img,
    .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child) .elementor-top-column:has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child) :is(.elementor-widget-image, .elementor-widget-image-carousel).contain img,
    .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full .elementor-top-column:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child) img,
    .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child) .elementor-top-column:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child) :is(.elementor-widget-image, .elementor-widget-image-carousel).contain img {
        border-radius: 0;
    }

    .ino-col-img.contain img,
    .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child) .elementor-top-column:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):only-child) :is(.elementor-widget-image, .elementor-widget-image-carousel).contain img,
    .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child) .elementor-top-column:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child) :is(.elementor-widget-image, .elementor-widget-image-carousel).contain img {
        object-fit: contain;
        z-index: 1;
    }

    .elementor-top-section.section-custom :is(.elementor-widget-image) {
        align-content: center;
    }

    .elementor-top-section.section-custom :is(.elementor-widget-image) img {
        max-height: 600px;
    }

    .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image:first-child, .elementor-widget-image.elementor-element-edit-mode:nth-child(2)) + .bouton-icon:last-child) .elementor-top-column:has(:is(.elementor-widget-image:first-child, .elementor-widget-image.elementor-element-edit-mode:nth-child(2)) + .bouton-icon:last-child) .bouton-icon {
        color-scheme: dark;
        display: table;
        inline-size: auto;
        block-size: auto;
        position: absolute;
		inset: 50% auto auto 50%;
        translate: -50% -50%;
    }

    .elementor-section-boxed > .elementor-container .elementor-section-boxed > .elementor-container {
        inline-size: 100%;
    }

    :is(.elementor-top-section, .ino-top-section):not(.no-margin, :first-child) {
        margin-block-start: var(--spacing-3xl);
    }

    :is(.elementor-top-section, .ino-top-section):not(.fond:not(.block)):last-child {
        margin-block-end: var(--spacing-3xl);
    }

    :is(.elementor-top-section, .ino-top-section).fond:not(.block, .elementor-section-full_width, .ino-section-full_width) {
        padding-block: var(--spacing-2xl);
    }

    :is(.elementor-top-section, .ino-top-section).fond:not(.block):last-child {
        margin-block-end: 0;
    }

    :is(.elementor-top-section, .ino-top-section).fond.block:not(.full) > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape) {
        position: relative;
        padding: var(--spacing-2xl);
    }

    .elementor-widget + .elementor-widget-heading.no-margin,
    :is(.elementor-top-section, .ino-top-section) :is(.elementor-inner-section, .ino-inner-section):first-child,
    :is(.elementor-top-section, .ino-top-section) :is(.elementor-inner-section, .ino-inner-section).titre + :is(.elementor-inner-section, .ino-inner-section),
    :is(.elementor-top-section, .ino-top-section):is(.fond:not(.block), .supp) + :is(.elementor-top-section, .ino-top-section):is(.fond:not(.block), .supp) {
        margin-block-start: 0;
    }

    :is(.elementor-top-section, .ino-top-section).fond-noir:not(.block) + :is(.elementor-top-section, .ino-top-section).fond-noir:not(.block, .solutions),
    :is(.elementor-top-section, .ino-top-section).fond-gris:not(.block) + :is(.elementor-top-section, .ino-top-section).fond-gris:not(.block),
    :is(.elementor-top-section, .ino-top-section).fond-blanc:not(.block) + :is(.elementor-top-section, .ino-top-section).fond-blanc:not(.block) {
        padding-block-start: 0;
    }
    
    :is(.fond-noir, .fond-blanc):not(.block),
    :is(.fond-noir, .fond-blanc).block > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape) {
        background: var(--background-color);
    }

    .fond-gris:not(.block),
    .fond-gris.block > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape) {
        background: var(--background-grey);
    }

    .light-scheme-color:not(.light-default) :where(.fond-blanc:not(.block), .fond-blanc.block > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape)),
    .light-scheme-color.light-default :where(.fond-noir:not(.block), .fond-noir.block > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape)),
    .dark-scheme-color:not(.dark-default) :where(.fond-noir:not(.block), .fond-noir.block > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape)),
    .dark-scheme-color.dark-default :where(.fond-blanc:not(.block), .fond-blanc.block > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape)) {
        color-scheme: dark;
    }

    .dark-scheme-color:not(.dark-default) :where(.fond-noir:not(.block), .fond-noir.block > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape)),
    .dark-scheme-color.dark-default :where(.fond-blanc:not(.block), .fond-blanc.block > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape)),
    .light-scheme-color:not(.light-default) :where(.fond-noir:not(.block), .fond-noir.block > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape)),
    .light-scheme-color.light-default :where(.fond-blanc:not(.block), .fond-blanc.block > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape)) {
        color-scheme: light;
    }

    .elementor-top-section :is(.elementor-inner-section, .elementor-widget-text-editor) + .elementor-inner-section:not(.boutons) {
        margin-block-start: var(--spacing-xl);
    }

    :is(.elementor-column, .ino-column).fond {
        border-radius: var(--border-radius);
        padding: var(--spacing-xl);
    }
    
    :is(.center, .center-desktop, .right) :is(.elementor-widget-container, .elementor-widget-wrap) {    
        display: flex;
        flex-flow: column;
    }
    
    .center [type=submit] {
        margin-inline: auto;
    }

    .boutons:has(> .bouton),
    .boutons .elementor-widget-wrap {
        display: flex;
        flex-flow: row wrap;
        gap: var(--spacing-md);
    }
    
    .center.bouton,
    .center .bouton,
    .center .boutons .elementor-widget-wrap {
        justify-content: center;
    }

    .elementor-widget + :is(.boutons, .elementor-widget-form, .elementor-widget-text-editor),
    :is(.elementor-widget-text-editor, .elementor-widget-accordion, .elementor-widget-shortcode) + .elementor-widget {
        margin-block-start: calc(var(--spacing-4xl) / 3);
    }

    :is(.elementor-widget-button, .elementor-widget-text-editor) + .elementor-widget-image {
        margin-block-start: calc(var(--spacing-4xl) / 1.5);
    }

    .elementor-widget-image + .elementor-widget-text-editor {
        margin-block-start: calc(var(--spacing-4xl) / 4);
    }

    .home-slider .elementor-widget + .boutons {
        margin-block-start: calc(var(--spacing-md) * 2) !important;
    }

    .elementor-widget + .elementor-inner-section,
    :is(.elementor-widget + .quote, .section-titre + .elementor-top-section),
    :is(.elementor-widget-heading.h1:not(.no-margin), .elementor-widget-heading.h2:not(.no-margin), .elementor-widget-heading:not(.h3, .h4, .no-margin):has(h1, h2)) + :is(.elementor-widget:not(.elementor-widget-heading), .elementor-inner-section) {
        margin-block-start: var(--spacing-lg);
    }

    :is(.elementor-widget-heading.h3:not(.no-margin), .elementor-widget-heading:not(.h2, .h4, .no-margin):has(h3)) + :is(.elementor-widget:not(.elementor-widget-heading), .elementor-inner-section) {
        margin-block-start: var(--spacing-md);
    }

    :is(.elementor-widget-heading.h4:not(.no-margin), .elementor-widget-heading:not(.h2, .h3, .no-margin):has(h4)) + :is(.elementor-widget:not(.elementor-widget-heading), .elementor-inner-section) {
        margin-block-start: var(--spacing-sm);
    }

    .elementor-widget-heading + .elementor-widget-heading {
        margin-block-start: var(--spacing-xs);
    }

    .elementor-inner-section + .elementor-widget,
    .elementor-widget:not(.elementor-widget-heading) + :is(.elementor-widget-heading.h2, .elementor-widget-heading:not(.h3, .h4):has(h2)) {
        margin-block-start: calc(var(--spacing-lg) * 2);
    }

    .elementor-widget:not(.elementor-widget-heading) + :is(.elementor-widget-heading.h3, .elementor-widget-heading:not(.h2, .h4):has(h3)) {
        margin-block-start: calc(var(--spacing-md) * 2);
    }

    .section-clients > .elementor-container .col-client .elementor-widget:not(.elementor-widget-heading) + .elementor-widget-heading,
    .elementor-widget:not(.elementor-widget-heading) + :is(.elementor-widget-heading.h4, .elementor-widget-heading:not(.h2, .h3):has(h4)) {
        margin-block-start: calc(var(--spacing-sm) * 2);
    }

    .elementor-widget-image + .elementor-widget-heading {
        margin-block-start: var(--spacing-3xl);
    }

    :is(.elementor-col-100, .ino-col-100) {
        inline-size: 100%;
    }

    .ino-col-25 {
        inline-size: 25%;
    }

    .ino-col-20 {
        inline-size: 20%;
    }

    .ino-col-img:has(.owl-carousel.item-1) {
        aspect-ratio: 3 / 2;
        overflow: hidden;
    }


    @container viewport (70rem < inline-size) {
    
        .right :where(h1, .h1, h2, .h2, h3, .h3, h4, .h4, p, strong, .elementor-widget-container, .elementor-widget-wrap),
        .right:where(h1, .h1, h2, .h2, h3, .h3, h4, .h4, p, strong),
        .right:is(.h1, .h2, .h3, .h4) .elementor-heading-title {
            align-items: flex-end;
            text-align: right;
        }    
        
        .right.bouton,
        .right .bouton,
        .right .boutons .elementor-widget-wrap {
            justify-content: flex-end;
        }
	    
	    .right [type=submit] {
	        margin-inline-start: auto;
	    }
        
        :is(.elementor-col-66:not(.elementor-field-group), .ino-col-66) {
            inline-size: 66.666%;
        }

        :is(.elementor-col-50:not(.elementor-field-group), .ino-col-50) {
            inline-size: 50%;
        }

        :is(.elementor-col-33:not(.elementor-field-group), .ino-col-33) {
            inline-size: 33.333%;
        }
        
        :is(.ino-txt-img > .ino-container, .inner-txt-img > .elementor-container),
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child) > .elementor-container,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child) > .elementor-container {
            align-items: stretch;
        }
        
        .ino-txt-img .ino-col-img > *:not(.ino-modal),
        .inner-txt-img .elementor-column:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):only-child) > .elementor-widget-wrap,
        .elementor-top-section:not(.section-custom):has(.elementor-top-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child) .elementor-top-column:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):only-child) > .elementor-widget-wrap:not(.ui-sortable),
        .elementor-top-section:has(.elementor-top-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child) .elementor-top-column:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child) > .elementor-widget-wrap:not(.ui-sortable) {
            position: absolute;
        }
        
        .ino-txt-img:not(.full) .ino-col-txt > div,
        .elementor-top-section:not(.section-custom):has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child):not(.full) .elementor-top-column:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):only-child)) > .elementor-widget-wrap,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child):not(.full) .elementor-top-column:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child)) > .elementor-widget-wrap {
            padding-block: var(--spacing-3xl);
        }
        
        .ino-txt-img.full:not(.block, .supp) .ino-col-txt > div,
        .elementor-top-section:not(.section-custom):has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full:not(.block, .supp) .elementor-top-column:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):only-child)) > .elementor-widget-wrap,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full:not(.block, .supp) .elementor-top-column:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child)) > .elementor-widget-wrap {
            padding-block: var(--spacing-2xl);
        }
        
        .ino-section-full_width.ino-txt-img.full:not(.block) > .ino-container,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.elementor-section-full_width:not(.block) > .elementor-container,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.elementor-section-full_width:not(.block) > .elementor-container {
            display: grid;
            grid-template-columns: 1fr repeat(6, calc(min(var(--wrapper-size-mobile), var(--wrapper-size)) / 6)) 1fr;
        }
        
        .ino-section-full_width.ino-txt-img.full:not(.block) > .ino-container > div,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.elementor-section-full_width:not(.block) .elementor-top-column,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.elementor-section-full_width:not(.block) .elementor-top-column {
            inline-size: 100%;
        }
        
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.elementor-section-full_width:not(.block, .supp) .elementor-top-column.elementor-col-33:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):only-child):first-child,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.elementor-section-full_width:not(.block, .supp) .elementor-top-column.elementor-col-33:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child):first-child {
            grid-column: 1 / 4;
        }
            
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.elementor-section-full_width:not(.block) .elementor-top-column.elementor-col-33:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):only-child)):first-child,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.elementor-section-full_width:not(.block) .elementor-top-column.elementor-col-33:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child)):first-child {
            grid-column: 2 / 4;
        }
        
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.elementor-section-full_width:not(.block, .supp) .elementor-top-column.elementor-col-33:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):only-child):last-child,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.elementor-section-full_width:not(.block, .supp) .elementor-top-column.elementor-col-33:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child):last-child {
            grid-column: 6 / 9;
        }
            
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.elementor-section-full_width:not(.block) .elementor-top-column.elementor-col-33:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):only-child)):last-child,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.elementor-section-full_width:not(.block) .elementor-top-column.elementor-col-33:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child)):last-child {
            grid-column: 6 / 8;
        }
        
        .ino-section-full_width.ino-txt-img.full:not(.block, .supp) .ino-col-img:first-child,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.elementor-section-full_width:not(.block, .supp) .elementor-top-column.elementor-col-50:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):only-child):first-child,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.elementor-section-full_width:not(.block, .supp) .elementor-top-column.elementor-col-50:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child):first-child {
            grid-column: 1 / 5;
        }
            
        .ino-section-full_width.ino-txt-img.full:not(.block) .ino-col-txt:first-child,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.elementor-section-full_width:not(.block) .elementor-top-column.elementor-col-50:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):only-child)):first-child,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.elementor-section-full_width:not(.block) .elementor-top-column.elementor-col-50:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child)):first-child {
            grid-column: 2 / 5;
        }
        
        .ino-section-full_width.ino-txt-img.full:not(.block, .supp) .ino-col-img:last-child,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.elementor-section-full_width:not(.block, .supp) .elementor-top-column.elementor-col-50:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):only-child):last-child,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.elementor-section-full_width:not(.block, .supp) .elementor-top-column.elementor-col-50:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child):last-child {
            grid-column: 5 / 9;
        }

        .ino-section-full_width.ino-txt-img.full:not(.block) .ino-col-txt:last-child,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.elementor-section-full_width:not(.block) .elementor-top-column.elementor-col-50:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):only-child)):last-child,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.elementor-section-full_width:not(.block) .elementor-top-column.elementor-col-50:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child)):last-child {
            grid-column: 5 / 8;
        }
        
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.elementor-section-full_width:not(.block, .supp) .elementor-top-column.elementor-col-66:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):only-child):first-child,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.elementor-section-full_width:not(.block, .supp) .elementor-top-column.elementor-col-66:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child):first-child {
            grid-column: 1 / 6;
        }
            
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.elementor-section-full_width:not(.block) .elementor-top-column.elementor-col-66:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):only-child)):first-child,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.elementor-section-full_width:not(.block) .elementor-top-column.elementor-col-66:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child)):first-child {
            grid-column: 2 / 6;
        }
        
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.elementor-section-full_width:not(.block, .supp) .elementor-top-column.elementor-col-66:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):only-child):last-child,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.elementor-section-full_width:not(.block, .supp) .elementor-top-column.elementor-col-66:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child):last-child {
            grid-column: 4 / 9;
        }
            
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.elementor-section-full_width:not(.block) .elementor-top-column.elementor-col-66:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):only-child)):last-child,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.elementor-section-full_width:not(.block) .elementor-top-column.elementor-col-66:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child)):last-child {
            grid-column: 4 / 8;
        }
        
        .ino-section-full_width.ino-txt-img.full.supp:not(.block) .ino-col-txt, 
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.supp.elementor-section-full_width:not(.block) .elementor-top-column:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):only-child)),
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.supp.elementor-section-full_width:not(.block) .elementor-top-column:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child)) {
            position: relative;
            z-index: 1;
        }
        
        .ino-section-full_width.ino-txt-img.full.supp:not(.block) .ino-col-img,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.supp.elementor-section-full_width:not(.block) .elementor-top-column:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):only-child),
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.supp.elementor-section-full_width:not(.block) .elementor-top-column:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child) {
            position: absolute;
            inset: 0;
            z-index: 0;
        }

        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child):not(.supp).full .elementor-top-column:has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child):first-child img,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child):not(.supp).full .elementor-top-column:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child):first-child img {
            border-radius: 0 var(--border-radius) var(--border-radius) 0;
        }

        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child):not(.supp).full .elementor-top-column:has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child):last-child img,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child):not(.supp).full .elementor-top-column:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child):last-child img {
            border-radius: var(--border-radius) 0 0 var(--border-radius);
        }
            
        .ino-section-full_width.ino-txt-img.full:not(.block, .supp) .ino-col-txt:first-child > div,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.elementor-section-full_width:not(.block, .supp) .elementor-top-column:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):only-child)):first-child > .elementor-widget-wrap,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.elementor-section-full_width:not(.block, .supp) .elementor-top-column:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child)):first-child > .elementor-widget-wrap {
            padding-inline-end: var(--spacing-2xl);
        }
        
        .ino-section-full_width.ino-txt-img.full:not(.block, .supp) .ino-col-txt:last-child > div,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.elementor-section-full_width:not(.block, .supp) .elementor-top-column:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):only-child)):last-child > .elementor-widget-wrap,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.elementor-section-full_width:not(.block, .supp) .elementor-top-column:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child)):last-child > .elementor-widget-wrap {
            padding-inline-start: var(--spacing-2xl);
        }
        
        .ino-txt-img.full.block .ino-col-txt > div,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.block .elementor-top-column:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):only-child)) > .elementor-widget-wrap,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.block .elementor-top-column:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child)) > .elementor-widget-wrap {
            padding: var(--spacing-2xl);
        }
        
        .ino-txt-img.full.supp .ino-col-txt,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.supp .elementor-top-column:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):only-child)),
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.supp .elementor-top-column:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child)) {
            border-radius: clamp(0rem, var(--border-radius), clamp(2rem, 1.5rem + 2.5vw, 4rem));
            overflow: hidden;
        }
        
        .ino-txt-img.full.supp .ino-col-txt > div,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.supp .elementor-top-column:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):only-child)) > .elementor-widget-wrap,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.supp .elementor-top-column:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child)) > .elementor-widget-wrap {
            padding: var(--spacing-xl);
        }

        .elementor-top-section.supp > .elementor-container {
            padding-block: var(--spacing-3xl);
        }
        
        .section-sticky-sidebar .sidebar > .elementor-widget-wrap {
            max-block-size: calc(100vh - var(--spacing-lg));
            overflow-y: auto;
            overscroll-behavior: contain;
            padding-block-end: var(--spacing-lg);
            position: sticky;
            inset-block-start: var(--spacing-lg);
            z-index: 49;
        }
            
        @-moz-document url-prefix() {

            .section-sticky-sidebar .sidebar > .elementor-widget-wrap {
                scrollbar-width: none;
            }
        }
        
        .section-sticky-sidebar .sidebar > .elementor-widget-wrap::-webkit-scrollbar {
			display: none;
        }      

        .section-sticky-sidebar :is(.sidebar, .main-content) {
            width: auto;
        }
        
        .section-sticky-sidebar .sidebar {
            display: table;
            inline-size: var(--sidebar-width);
        }

        .section-sticky-sidebar .main-content {
            inline-size: 100%;
        }
    }

    @container viewport (inline-size <= 70rem) {

        :is(.elementor-top-section, .ino-top-section, .inner-txt-img) > :is(.elementor-container, .ino-container) {
            flex-flow: column;
        }
            
        .elementor-top-section .elementor-container > .elementor-column {
            inline-size: 100%;
        }
        
        .ino-col-txt,
        .inner-txt-img .elementor-column:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):only-child)),
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child) .elementor-top-column:is(.elementor-col-33, .elementor-col-50, .elementor-col-66):not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):only-child)),
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child) .elementor-top-column:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child)) {
            order: 1;
        }

        .ino-col-img,
        .inner-txt-img .elementor-column:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):only-child),
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child) .elementor-top-column:is(.elementor-col-33, .elementor-col-50, .elementor-col-66):has(:is(.elementor-widget-image, .elementor-widget-image-carousel):only-child),
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child) .elementor-top-column:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child) {
            order: 2;
        }
            
        .ino-txt-img.full.block .ino-col-txt,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.block .elementor-top-column:is(.elementor-col-33, .elementor-col-50, .elementor-col-66):not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):only-child)),
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.block .elementor-top-column:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child)) {
            padding: var(--spacing-2xl);
        }
        
        .ino-txt-img.full:not(.block) .ino-col-txt,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full:not(.block) .elementor-top-column:is(.elementor-col-33, .elementor-col-50, .elementor-col-66):not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):only-child)),
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full:not(.block) .elementor-top-column:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child)) {
            padding-block: var(--spacing-2xl);
        }
        
        .ino-txt-img.full:not(.block) .ino-col-txt > div,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full:not(.block) .elementor-top-column:is(.elementor-col-33, .elementor-col-50, .elementor-col-66):not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):only-child)) > .elementor-widget-wrap,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full:not(.block) .elementor-top-column:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child)) > .elementor-widget-wrap {
            inline-size: min(var(--wrapper-size-mobile), var(--wrapper-size));
            margin-inline: auto;
        }

        iframe,
        .ino-txt-img:not(.full) .ino-col-img:not(.contain) img,
        .inner-txt-img .elementor-column:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):only-child:not(.contain)) img,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child):not(.full) .elementor-top-column:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):only-child:not(.contain)) img {
            border-radius: clamp(0rem, var(--border-radius), clamp(2rem, 1rem + 5vw, 6rem));
        }
    }

    @container viewport (36rem < inline-size) {
        
        .center-desktop:not(.owl-item) :where(h1, .h1, h2, .h2, h3, .h3, h4, .h4, p, strong, .elementor-widget-container, .elementor-widget-wrap),
        .center-desktop:not(.owl-item):where(h1, .h1, h2, .h2, h3, .h3, h4, .h4, p, strong),
        .center-desktop:is(.h1, .h2, .h3, .h4) .elementor-heading-title {
            align-items: center;
            text-align: center;
			text-wrap: balance;
        }

        .center-desktop.bouton,
        .center-desktop .bouton,
        .center-desktop .boutons .elementor-widget-wrap {
            justify-content: center;
        }
        
        .center-desktop [type=submit] {
            margin-inline: auto;
        }
    }

    @container viewport (30rem < inline-size) {
        
        .boutons .bouton {
            inline-size: auto;
        }
    }

    @container viewport (inline-size <= 30rem) {
        
        :is(.elementor-top-section, .ino-top-section).fond.block:not(.full) > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape) {
            padding-inline: 0;
        }
        
        :is(.elementor-top-section, .ino-top-section).fond.block:not(.full) > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape) > div {
            inline-size: min(var(--wrapper-size-mobile), var(--wrapper-size));
            margin-inline: auto;
        }
        
        :is(.elementor-top-section, .ino-top-section):is(.fond, .supp) + :is(.elementor-top-section, .ino-top-section):is(.fond, .supp) {
            margin-block-start: 0;
        }
        
        :is(.elementor-top-section, .ino-top-section):is(.fond, .supp) {
            margin-block-end: 0;
        }
        
        :is(.elementor-top-section, .ino-top-section).fond.block:not(.elementor-section-full_width) > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape) {
            border-radius: 0;
        }
        
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).block > .elementor-container,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).block > .elementor-container {
            inline-size: 100%;
            max-inline-size: initial;
        }
        
        .ino-txt-img.full.block .ino-col-txt,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.block .elementor-top-column:is(.elementor-col-33, .elementor-col-50, .elementor-col-66):not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):only-child)),
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.block .elementor-top-column:is(.elementor-col-33, .elementor-col-50, .elementor-col-66):not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child)) {
            inline-size: min(var(--wrapper-size-mobile), var(--wrapper-size));
            margin-inline: auto;
            padding-inline: 0;
        }
    }
}

@layer core {

    @layer titles {
        
        :is(h1, .h1:not(.elementor-widget-heading)),
        .elementor-widget-heading.h1 .elementor-heading-title {
            color: var(--title-color);
            font: var(--text-weight-bold) var(--text-size-h1)/.85 var(--font-title);
            letter-spacing: -.02em;
            text-wrap: balance;
            text-transform: uppercase;
        }

        :is(h1:not(.h2, .h3, .h4, .elementor-heading-title, .elementor-tab-title), .h1:not(.elementor-widget-heading)):not(.no-margin) {
            margin-block-end: var(--spacing-xl);
        }

        :is(h2, .h2:not(.elementor-widget-heading)),
        .elementor-widget-heading.h2 .elementor-heading-title { 
            color: var(--title-color);
            font: var(--text-weight-medium) var(--text-size-h2)/1.1 var(--font-title);
            letter-spacing: -.02em;
            text-wrap: balance;
            text-transform: uppercase;
        }

        :is(h2:not(.h1, .h3, .h4, .elementor-heading-title, .elementor-tab-title), .h2:not(.elementor-widget-heading)):not(.no-margin) {
            margin-block-end: var(--spacing-lg);
        }

        .elementor-icon-box-title span,
        :is(h3, .h3:not(.elementor-widget-heading)),
        .elementor-widget-heading.h3 .elementor-heading-title {
            color: var(--title-color);
            font: var(--text-weight-medium) var(--text-size-h3)/1.1 var(--font-title);
            letter-spacing: -.01em;
            text-transform: uppercase;
        }

        .box-grey .elementor-icon-box-title span {
            color: var(--primary-color);
            font: var(--text-weight-medium) calc(var(--text-size-h3) *1.5)/1.1 var(--font-title);
        }

        .h3.alt.elementor-widget-text-editor p {
            font: var(--text-weight-normal) var(--text-size-h2)/1.1 var(--font-title-alt) !important;
            text-transform: uppercase;
        }

        .home .h3.alt.elementor-widget-text-editor p {
            font: var(--text-weight-normal) var(--text-size-h3)/1.1 var(--font-title-alt) !important;
            color: var(--primary-color) !important;
            text-transform: initial;
            margin-block-end: var(--spacing-sm) !important;
        }

        :is(h3:not(.h1, .h2, .h4, .elementor-heading-title, .elementor-tab-title), .h3:not(.elementor-widget-heading)):not(.no-margin) {
            margin-block-end: var(--spacing-md);
        }

        :is(h4, .h4:not(.elementor-widget-heading)), 
        .elementor-widget-heading.h4 .elementor-heading-title { 
            color: var(--title-color);
            font: var(--text-weight-normal) var(--text-size-h4)/1.1 var(--font-text);
            letter-spacing: 0;
        }

        :is(h4:not(.h1, .h2, .h3, .elementor-heading-title, .elementor-tab-title), .h4:not(.elementor-widget-heading)):not(.no-margin) {
            margin-block-end: var(--spacing-sm);
        }

        .title-primary:not(.dark) :is(p, h1, h2, h3, h4) {
            color: var(--primary-color) !important;
        }

        .big-title p {
            font: var(--text-weight-medium) var(--big-title) / .8 var(--font-title);
            text-transform: uppercase;
        }
    }

    @layer form-fields {

        :where(label, .label, input[type="file" i]) {
            color: var(--title-color);
        }

        :where(input:is([type=text],[type=email],[type=number],[type=tel],[type=search],[type=date],[type=time]), select, textarea, .elementor-field-label:has(+ .elementor-upload-field)) {
            --_padding-field: var(--spacing-2xs);
            background: transparent;
            border: var(--border-width) solid var(--border-color);
            border-radius: calc(var(--border-radius) / 2);
            color: var(--text-color);
            font: normal var(--text-weight-normal) var(--text-size-normal)/1 var(--font-text);
            letter-spacing: var(--letter-spacing);
            text-overflow: ellipsis;
            padding-block: var(--spacing-2xs);
        }

        :where(input:is([type=text],[type=email],[type=number],[type=tel],[type=search],[type=date],[type=time]), select, textarea):hover {
            border-color: var(--border-hover-color);
            color: var(--strong-color);
        }

        :where(input:is([type=text],[type=email],[type=number],[type=tel],[type=search],[type=date],[type=time]), select, textarea):focus {
            border-color: var(--border-focus-color);
            box-shadow: 0 0 0 2px oklch(from var(--border-focus-color) l c h / 10%);
            color: var(--title-color);
        }

        :where(input:is([type=text],[type=email],[type=number],[type=tel],[type=search],[type=date],[type=time]), textarea, .elementor-field-label:has(+ .elementor-upload-field)) {
            padding-inline: calc(var(--_padding-field) * 2);
        }

        textarea {
            border-radius: clamp(0rem, var(--border-radius) / 2, clamp(1rem, .875rem + .625vw, 1.5rem));
            line-height: 1.3;
        }

        select {
            color: var(--title-color);
            padding-inline: calc(var(--_padding-field) * 2) calc(var(--_padding-field) * 4);
        }

        select option {
            background: var(--background-color);
        }

        @container viewport (inline-size <= 30rem) {
                
            :where(input:is([type=text],[type=email],[type=number],[type=tel],[type=search],[type=date],[type=time]), select, textarea, .elementor-field-label:has(+ .elementor-upload-field)) {
                --_padding-field: var(--spacing-xs);
            }

            :where(input:is([type=text],[type=email],[type=number],[type=tel],[type=search],[type=date],[type=time]), textarea, .elementor-field-label:has(+ .elementor-upload-field)) {
                padding-inline: var(--_padding-field);
            }

            select {
                padding-inline: var(--_padding-field) calc(var(--_padding-field) * 3);
            }
        }
    }
    
    @layer lists {

        main :is(ul, ol):not(:last-child),
        .moove-gdpr-tab-main-content ul {
            margin-block-end: 1.25lh;
        }

        main :is(ul, ol):not(.reset-list) li:not(:last-child),
        .moove-gdpr-tab-main-content li:not(:last-child) {
            margin-block-end: .5lh;
        }

        main :is(ul, ol):last-child,
        main :is(ul, ol) li:last-child,
        .moove-gdpr-tab-main-content li:last-child {
            margin-block-end: 0;
        }

        main ol li {
            list-style-position: inside;
        }

        main ul:not(.reset-list) li,
        .moove-gdpr-tab-main-content li {
            padding-inline-start: 2ch;
            position: relative;
        }

        main ul:not(.reset-list) li::before,
        .moove-gdpr-tab-main-content li::before {
            content: "-" / "";
            font: inherit;
            letter-spacing: 0;
            position: absolute;
            inset-inline-start: 0;
        }
    }

    @layer links {
		
        :is(a, button.link-dark, summary),
        input:is([type=checkbox], [type=radio]):focus-visible + label,
        :is(.owl-prev, .owl-next, .moove-gdpr-modal-close, .moove-gdpr-infobar-reject-btn, .elementor-accordion-title) {
            color: var(--_link-color);
        }
		
        a {
        	--_link-color: var(--primary-color);
        }

        :is(a, button, summary).link-dark,
        .widget_nav_menu li:not(.primary) a,
        input:is([type=checkbox], [type=radio]):focus-visible + label,
        :is(.owl-prev, .owl-next, .moove-gdpr-modal-close, .moove-gdpr-infobar-reject-btn, .elementor-accordion-title) {
            --_link-color: var(--title-color);
        }

        .breadcrumb a {
            --_link-color: var(--text-color);
        }

        @media only screen and (hover: hover) and (pointer: fine) {
            
            a:hover {
                --_link-color: var(--primary-hover-color);
            }

            a:active {
                --_link-color: var(--primary-active-color);
            }

            .breadcrumb a:hover,
            :is(a, button, summary).link-dark:hover,
            .widget_nav_menu li:not(.primary) a:hover,
            :is(.owl-prev, .owl-next, .moove-gdpr-modal-close, .moove-gdpr-infobar-reject-btn, .elementor-accordion-title):hover {
                --_link-color: var(--primary-color);
            }

            .breadcrumb a:active,
            :is(a, button, summary).link-dark:active,
            .widget_nav_menu li:not(.primary) a:active,
            :is(.owl-prev, .owl-next, .moove-gdpr-modal-close, .moove-gdpr-infobar-reject-btn, .elementor-accordion-title):active {
                --_link-color: var(--primary-hover-color);
            }
        }

        @media only screen and (hover: none) and (pointer: coarse) {

            a:active {
                --_link-color: var(--primary-hover-color);
            }
            
            .breadcrumb a:active,
            :is(a, button, summary).link-dark:active,
            .widget_nav_menu li:not(.primary) a:active,
            :is(.owl-prev, .owl-next, .moove-gdpr-modal-close, .moove-gdpr-infobar-reject-btn, .elementor-accordion-title):active {
                --_link-color: var(--primary-color);
            }
        }    

        :is(.skip-link, .link-underline, .moove-gdpr-infobar-reject-btn):not(:hover, :active),
        :where(.elementor-tab-content, .elementor-widget-text-editor, .message-rgpd, .moove-gdpr-tab-main-content) a:not(:hover, :active) {
            text-decoration: underline;
            text-underline-offset: .125lh;
        }
    }

	@layer buttons {
        
        .bouton:not(div, .ino-nav-menu-item),
        .bouton :is(a, button, [type=submit]),
        :where([type=submit], .mgbutton:not(.moove-gdpr-infobar-reject-btn), .elementor-field-label:has(+ .elementor-upload-field)) {
            color: var(--_btn-text-color);
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 1ch;
        }

        .bouton:not(.bouton-link, div, .ino-nav-menu-item),
        .bouton:not(.bouton-link) :is(a, button, [type=submit]),
        :where([type=submit], .mgbutton:not(.moove-gdpr-infobar-reject-btn), .elementor-field-label:has(+ .elementor-upload-field)) {
            background: var(--_btn-color);
            border: var(--border-width) solid var(--_btn-color);
        }
        
        .bouton:not(.bouton-link, div, .ino-nav-menu-item),
        .bouton:not(.bouton-link) :is(a, button, [type=submit]),
        :where([type=submit], .mgbutton:not(.moove-gdpr-infobar-reject-btn)) {
			--_padding-button: var(--spacing-xs);
            border-radius: var(--border-radius);
            text-align: center;
        }
        
        .bouton:not(.bouton-link, .bouton-icon, div, .ino-nav-menu-item),
        .bouton:not(.bouton-link, .bouton-icon) :is(a, button, [type=submit]),
        :where([type=submit], .mgbutton:not(.moove-gdpr-infobar-reject-btn)) {
            padding-block: calc(var(--_padding-button) * 2);
            padding-inline: calc(var(--_padding-button) * 2);
        }
	
	    .bouton:not(.bouton-icon),
        :where(.bouton:not(.bouton-icon), [type=submit]) span,
	    .mgbutton:not(.moove-gdpr-infobar-reject-btn) {
	        font: var(--text-weight-bold) var(--text-size-big)/1.1 var(--font-text);
	    }
	
	    .bouton-download:not(div)::before,
	    .bouton-download :is(a, button, [type=submit]) > span::before {
	        font: var(--font-icon);
            letter-spacing: 0;
	    }
	
	    .bouton-primary:not(div),
	    .bouton-primary :is(a, button, [type=submit]),
	    :where([type=submit], .mgbutton:not(.moove-gdpr-infobar-reject-btn), .elementor-field-label:has(+ .elementor-upload-field)) {
	        --_btn-color: var(--primary-color);
	        --_btn-text-color: var(--dark-color);
	    }
	
	    .bouton-secondary:not(div),
	    .bouton-secondary :is(a, button, [type=submit]) {
	        --_btn-color: var(--secondary-color);
	        --_btn-text-color: var(--dark-color);
	    }
	
	    .bouton-dark:not(div),
	    .bouton-dark :is(a, button, [type=submit]),
        :is(.moove-gdpr-modal-save-settings, .moove-gdpr-infobar-settings-btn) {
	        --_btn-color: var(--title-color);
	        --_btn-text-color: var(--background-color);
	    }
	
	    .bouton-contour:not(:hover, :active, div),
	    .bouton-contour :is(a, button, [type=submit]):not(:hover, :active),
	    .bouton-link:not(div),
	    .bouton-link :is(a, button, [type=submit]),
        :is(.moove-gdpr-modal-save-settings, .moove-gdpr-infobar-settings-btn):not(:hover, :active) {
	        background: transparent;
	        border-color: var(--_btn-color);
	        --_btn-text-color: var(--_btn-color);
	    }
	    
	    @media only screen and (hover: hover) and (pointer: fine) {
	
	        .bouton-primary:not(.bouton-contour, div):hover,
	        .bouton-primary:not(.bouton-contour) :is(a, button, [type=submit]):hover,
	        .bouton-primary.bouton-contour:not(div):active,
	        .bouton-primary.bouton-contour :is(a, button, [type=submit]):active,
	        :where([type=submit], .mgbutton:not(.moove-gdpr-infobar-reject-btn, .moove-gdpr-modal-save-settings, .moove-gdpr-infobar-settings-btn), .elementor-field-label:has(+ .elementor-upload-field)):hover {
	            --_btn-color: var(--primary-hover-color);
	        }
	
	        .bouton-primary:not(.bouton-contour, div):active,
	        .bouton-primary:not(.bouton-contour) :is(a, button, [type=submit]):active,
	        :where([type=submit], .mgbutton:not(.moove-gdpr-infobar-reject-btn), .elementor-field-label:has(+ .elementor-upload-field)):active {
	            --_btn-color: var(--primary-active-color);
	        }
	
	        .bouton-secondary:not(.bouton-contour, div):hover,
	        .bouton-secondary:not(.bouton-contour) :is(a, button, [type=submit]):hover,
	        .bouton-secondary.bouton-contour:not(div):active,
	        .bouton-secondary.bouton-contour :is(a, button, [type=submit]):active {
	            --_btn-color: var(--secondary-hover-color);
	        }
	
	        .bouton-secondary:not(.bouton-contour, div):active,
	        .bouton-secondary:not(.bouton-contour) :is(a, button, [type=submit]):active {
	            --_btn-color: var(--secondary-active-color);
	        }
	
	        .bouton-dark:not(.bouton-contour, div):hover,
	        .bouton-dark:not(.bouton-contour) :is(a, button, [type=submit]):hover,
	        .bouton-dark.bouton-contour:not(div):active,
	        .bouton-dark.bouton-contour :is(a, button, [type=submit]):active,
	        :is(.moove-gdpr-modal-save-settings, .moove-gdpr-infobar-settings-btn):active {
	            --_btn-color: var(--strong-color);
	        }
	
	        .bouton-dark:not(.bouton-contour, div):active,
	        .bouton-dark:not(.bouton-contour) :is(a, button, [type=submit]):active {
	            --_btn-color: var(--text-color);
	        }
	    }
	
	    @media only screen and (hover: none) and (pointer: coarse) {
	        
	        .bouton-primary:not(.bouton-contour, div):active,
	        .bouton-primary:not(.bouton-contour) :is(a, button, [type=submit]):active,
	        :where([type=submit], .mgbutton:not(.moove-gdpr-infobar-reject-btn)):active {
	            --_btn-color: var(--primary-hover-color);
                --_btn-text-color: var(--dark-color);
	        }
	        
	        .bouton-primary.bouton-contour:not(div):active,
	        .bouton-primary.bouton-contour :is(a, button, [type=submit]):active {
	            --_btn-color: var(--primary-color);
                --_btn-text-color: var(--dark-color);
	        }
	
	        .bouton-secondary:not(.bouton-contour, div):active,
	        .bouton-secondary:not(.bouton-contour) :is(a, button, [type=submit]):active {
	            --_btn-color: var(--secondary-hover-color);
	        }
	
	        .bouton-secondary.bouton-contour:not(div):active,
	        .bouton-secondary.bouton-contour :is(a, button, [type=submit]):active {
	            --_btn-color: var(--secondary-color);
	        }
	
	        .bouton-dark:not(.bouton-contour, div):active,
	        .bouton-dark:not(.bouton-contour) :is(a, button, [type=submit]):active {
	            --_btn-color: var(--strong-color);
	        }
	
	        .bouton-dark.bouton-contour:not(div):active,
	        .bouton-dark.bouton-contour :is(a, button, [type=submit]):active,
            :is(.moove-gdpr-modal-save-settings, .moove-gdpr-infobar-settings-btn):active {
	            --_btn-color: var(--title-color);
	        }
	    }

	    .bouton-link:not(div),
	    .bouton-link :is(a, button, [type=submit]) {
			color: var(--_btn-color);
            position: relative;
	    }

        .header-nav li.primary a {
            position: relative;
            display: flex;
            align-items: center;
	    }

        .header-nav li.primary a:after,
        .bouton:not(.ino-nav-menu-item, .icon-long_arrow_right) a:after,
	    .bouton-link:not(div)::after,
	    .bouton-link :is(a, button, [type=submit])::after {
	        content: "\e910" / "";
	        color: inherit;
	        font: var(--font-icon);
	        font-size: var(--text-size-normal);
	        letter-spacing: 0;
	        transition: translate .5s cubic-bezier(0.8, -0.4, 0.5, 1);
	    }

        .header-nav li.primary a:after {
	        margin-inline-start: 1ch;
	    }

        .header-nav li.primary a:before,
	    .bouton-link:not(div)::before,
	    .bouton-link :is(a, button, [type=submit])::before {
	        content: "";
            display: block;
            width: 100%;
            height: 1px;
            position: absolute;
            left: 0;
            bottom: -.5rem;
	        background: var(--_btn-color);
	        transition: translate .5s cubic-bezier(0.8, -0.4, 0.5, 1);
	    }

	    .header-nav li.primary a:before {
	        background: var(--primary-color);
	    }

	    @media (prefers-reduced-motion: no-preference) {

            .bouton:not(.ino-nav-menu-item, .icon-long_arrow_right) a:hover:after,
	        .bouton-link:not(div):hover::after,
	        .bouton-link :is(a, button, [type=submit]):hover::after {
	            translate: .25rem;
	        }

            .bouton:not(.ino-nav-menu-item, .icon-long_arrow_right) a:active:after,
	        .bouton-link:not(div):active::after,
	        .bouton-link :is(a, button, [type=submit]):active::after {
	            translate: .5rem;
	        }
	    }
	
	    .bouton-icon:not(div),
	    .bouton-icon :is(a, button, [type=submit]) {
	        aspect-ratio: 1;
	        padding: var(--spacing-xs);
            display: flex;
            background: var(--_btn-color);
            color: var(--_btn-text-color);
	    }

	    .bouton-icon:is(.icon-long_arrow_right, .icon-long_arrow_left) :is(a, button, [type=submit]) {
	        aspect-ratio: initial;
	        border-radius: 0;
	        padding: 0;
	    }

        .link-light.bouton-icon:is(.icon-long_arrow_right, .icon-long_arrow_left) :is(a, button, [type=submit]) {
	        color: var(--light-color);
	    }

        .services .cards .card:hover > .elementor-widget-wrap a:hover,
	    .bouton-icon:is(.icon-long_arrow_right, .icon-long_arrow_left) :is(a, button, [type=submit]):hover {
	        color: var(--primary-color);
	    }

	    .bouton-icon:is(.icon-long_arrow_right, .icon-long_arrow_left) :is(a, button, [type=submit]):active {
	        color: var(--primary-hover-color);
	    }

	    .bouton-icon :is(a, button, [type=submit]) > span {
	        font-size: var(--text-size-h4);
	    }
	
	    @media (prefers-reduced-motion: no-preference) {
	
	        @media only screen and (hover: hover) and (pointer: fine) {
	
	            .bouton-icon.icon-play a:hover {
	                scale: 1.05;
	            }
	
	            .bouton-icon.icon-play a:active {
	                scale: 1.1;
	            }
	        }
	
	        @media only screen and (hover: none) and (pointer: coarse) {
	
	            .bouton-icon.icon-play a:active {
	                scale: 1.05;
	            }
	        }
	    }

        @container viewport (30rem < inline-size) {
            
            [type=submit],
            .bouton:not(.bouton-link, .bouton-icon, .menu-item, div),
            .bouton:not(.bouton-link, .bouton-icon, .menu-item) :is(a, button, [type=submit]) {
                min-inline-size: 9rem;
            }
        }

		@container viewport (inline-size <= 30rem) {
	        
	        .bouton:not(.bouton-link, .bouton-icon),
	        .bouton:not(.bouton-link, .bouton-icon, .moove-gdpr-button-holder) :is(a, button, [type=submit]),
            :where([type=submit], .mgbutton:not(.moove-gdpr-infobar-reject-btn), .moove-gdpr-button-holder, .ino-menu-level-1) {
	            inline-size: 100%;
	        }
	        
	        .bouton:not(.bouton-link, .bouton-icon, .bouton-download, :has(i), div),
	        .bouton:not(.bouton-link, .bouton-icon, .bouton-download, :has(i)) :is(a, button, [type=submit]),
            :where([type=submit], .mgbutton:not(.moove-gdpr-infobar-reject-btn)) {
	            padding: var(--_padding-button);
	        }
	        
	        .bouton:is(.bouton-download, :has(i)):not(div),
	        .bouton:is(.bouton-download, :has(i)) :is(a, button, [type=submit]) {
	            padding-block: var(--_padding-button);
	            padding-inline: calc(var(--_padding-button) * 2);
	        }
	        
	        .boutons .bouton-contour {
	            order: 1;
	        }
	        
	        .boutons .bouton:not(.bouton-contour) {
	            order: 2;
	        }
	    }
	}

    body {
        color: var(--title-color);
        font: var(--text-weight-normal) var(--text-size-normal)/1 var(--font-text);
        accent-color: var(--primary-color);
        caret-color: var(--primary-color);
    }

    .big-text p {
        font: var(--text-weight-small) var(--text-size-big)/1.5 var(--font-text);
        text-transform: uppercase;
        letter-spacing: .15em;
    }

    figcaption {
        font: var(--text-weight-medium) var(--text-size-small)/1.3 var(--font-text);
    }

    summary {
        display: flex;
        justify-content: space-between;
        gap: var(--spacing-xs);
    }

    summary::after {
        font-size: inherit;
    }

    .breadcrumb {
        margin-block-start: var(--spacing-lg);
    }
    
    .breadcrumb + * {
        margin-block-start: var(--spacing-xl);
    }

    .breadcrumb p {
        display: flex;
        gap: var(--spacing-4xs) 1ch;
        font-size: var(--text-size-small);
    }

    .breadcrumb :where(a, .last) {
        display: block;
        white-space: nowrap;
        text-overflow: ellipsis;
        overflow: hidden;
    }

    .breadcrumb a {
        max-inline-size: 12ch;
    }

    .breadcrumb .last {
        max-inline-size: 32ch;
    }

    .back-to-top {
        border-radius: calc(var(--border-radius) / 2);
        padding: var(--spacing-2xs);
        position: fixed;
        inset-block-end: var(--spacing-md);
        inset-inline-end: var(--spacing-md);
        transition: var(--transition-default), opacity .15s ease-in-out;
        z-index: 50;
    }

    .back-to-top i {
        font-size: var(--text-size-small);
    }

    .back-to-top.hide {
        opacity: 0;
		visibility: hidden;
        pointer-events: none;
    }

}

@layer components {
	
	@layer pagination {
        
        .ino-pagination-block {
            margin-block-start: var(--spacing-2xl);
        }

        .ino-pagination {
            display: inline-flex;
            flex-flow: row wrap;
            align-items: center;
            gap: var(--spacing-sm);
        }

        .ino-pagination :is(li, span) {
            line-height: 1;
        }

        .ino-pagination .disabled {
            display: none;
        }

        .ino-pagination .current span {
            color: var(--primary-color);
        }

        .ino-pagination a {
            display: inline-flex;
            font-weight: var(--text-weight-medium);
        }

        .ino-pagination a:has(i) {
            align-items: center;
            gap: 1.5ch;
        }

        .ino-pagination i {
            font-size: var(--text-size-small);
        }

        @container viewport (inline-size <= 24rem) {
                
            .ino-pagination :is(.prev, .next) span {
                display: none;
            }
        }
    }
	
	@layer modals {
	
	    .ino-modal {
	        background: transparent;
	        display: flex;
	        flex-flow: column;
	        block-size: 100%;
	        transition: opacity .15s linear;
	    }
	
	    .ino-modal:not(.ino-modal-img) {
	        inline-size: 100%;
	    }
	
	    .ino-modal:not(.ino-modal-img, .ino-modal-video) {
	        background: var(--background-color);
	    }
		
        .ino-modal:not([open], :popover-open),
        .gdpr_lightbox:not(.gdpr_lightbox-opened) {
            opacity: 0;
            visibility: hidden;
        }

        .gdpr_lightbox:not(.gdpr_lightbox-opened),
        .ino-modal:not([open], :popover-open, .ino-modal-img) {
            pointer-events: none;
        }
	
	    .ino-modal:popover-open::backdrop {
	        background: radial-gradient(var(--shadow-color), 50%, var(--muted-color));
	    }

		:where(.ino-modal-wrapper, .gdpr_lightbox, #moove_gdpr_cookie_info_bar) {
	        inline-size: 100%;
	        overflow-y: auto;
	        overscroll-behavior: contain;
	    }
	
	    .ino-modal:not(.ino-modal-img) .ino-modal-wrapper {
	        flex-grow: 1;
	    }

        @-moz-document url-prefix() {
            
            :where(.ino-modal-wrapper, .gdpr_lightbox, #moove_gdpr_cookie_info_bar) {
                scrollbar-width: none;
            }
        }

        :where(.ino-modal-wrapper, .gdpr_lightbox, #moove_gdpr_cookie_info_bar)::-webkit-scrollbar {
            display: none;
        }
	
	    .ino-modal-container {
	        display: flex;
	        align-items: safe center;
	        position: relative;
	    }
	
	    :where(.ino-modal-container.center, .ino-modal-img) {
	        justify-content: center;    
	    }

        .ino-modal:not(.ino-modal-img) .ino-modal-container {
            min-block-size: 100%;
            padding-block: 6rem;
            transition: translate .3s ease-out;
        }

        .ino-modal:not([open], :popover-open, .ino-modal-img) .ino-modal-container {
            translate: 0 -50px;
        }
	
	    .ino-modal-close {
	        position: absolute;
	        inset-block-start: calc(var(--padding-header) + (var(--logo-height) / 2) - var(--banner-height));
	        inset-inline-end: 0;
	        translate: 0 -50%;
	    }
	
	    .ino-modal-close i {
	        font-size: clamp(1.25rem, 1.192rem + .291vw, 1.5rem);
	    }
	
	    .ino-modal-img .ino-modal-container {
	        inline-size: fit-content;
	        margin: var(--spacing-xs);
	    }
	
	    .ino-modal-img:popover-open img {
	        inline-size: auto;
	        max-block-size: 90vh;
	        pointer-events: initial;
	    }
	
	    body:has(.ino-modal-img:popover-open img:not(:hover)) * {
	        cursor: zoom-out;
	    }
	
	    .ino-modal-video::backdrop {
	        background: radial-gradient(var(--muted-color), 50%, var(--strong-color));
	    }
	
	    .ino-modal-video iframe {
	        box-shadow: var(--box-shadow);
	        aspect-ratio: 16 / 9;
	        max-inline-size: 100%;
	    }
	}
    
    @layer elementor-widgets {

        :is(.elementor-widget-image, .elementor-widget-image-carousel) figure {
            position: relative;
        }

        :is(.elementor-widget-image, .elementor-widget-image-carousel) figcaption {
            background: oklch(from var(--dark-color) l c h / .25);
            border-radius: var(--border-radius);
            color: var(--light-color);
            inline-size: var(--wrapper-size-mobile);
            padding: var(--spacing-3xs);
            position: absolute;
            inset-block-end: var(--spacing-xs);
            inset-inline-start: 50%;
            translate: -50%;
        }

        .elementor-form-fields-wrapper {
            display: flex;
            flex-wrap: wrap;
            margin-inline: calc(var(--spacing-3xs) * -1);
        }

        .elementor-field-group {
            display: flex;
            flex-flow: column;
            align-items: flex-start;
            padding-inline: var(--spacing-3xs);
        }

        .elementor-select-wrapper,
        :is(.elementor-field-group, .elementor-select-wrapper) > :is(input, select, textarea) {
            inline-size: 100%;
        }

        .elementor-field-label {
            font: var(--text-weight-medium) var(--text-size-small) / 1 var(--font-text);
        }

        .elementor-field-group:not(.elementor-field-type-upload) > label {
            cursor: text;
            margin-block-end: var(--spacing-2xs);
        }
            
        .elementor-field-label:has(+ .elementor-upload-field) {
            justify-content: flex-start;
            font: var(--text-weight-medium) var(--text-size-normal) / 1.2 var(--font-text);
            inline-size: 100%;
            transition: var(--transition-default);
        }

        .elementor-field-type-upload > .file-loaded {
            font-weight: var(--text-weight-bold);
        }

        .elementor-field-label:has(+ .elementor-upload-field)::before {
            content: "\e904" / "";
            font: var(--font-icon);
            letter-spacing: 0;
        }

        .elementor-field-group-rgpd {
            margin-block-end: calc(var(--spacing-2xs) * 2);
        }

        .elementor-accordion-item:not(:last-child) :is(.elementor-tab-title, .elementor-tab-content) {
            border-block-end: var(--border-width) solid var(--shadow-color);
        }

        .elementor-accordion-item {
            --_padding-accordion: var(--spacing-sm);
        }

        .elementor-accordion-item:not(:first-child) .elementor-tab-title {
            padding-block-start: var(--_padding-accordion);
        }

        .elementor-accordion-item:not(:last-child) .elementor-tab-title {
            padding-block-end: var(--_padding-accordion);
        }

        .elementor-accordion-title {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 3ch;
            font: var(--text-weight-medium) var(--text-size-big)/1.3 var(--font-text);
        }

        .elementor-accordion-title::after {
            font-size: var(--text-size-small);
        }

        .elementor-accordion-item .elementor-tab-title[aria-expanded=false] a::after {
            content: "\e900" / "";
        }

        .elementor-accordion-item .elementor-tab-title[aria-expanded=true] a::after {
            content: "\e901" / "";
        }

        .elementor-accordion-item .elementor-tab-content {
            display: none;
            padding-block: var(--_padding-accordion) calc(var(--_padding-accordion) * 2);
        }
    
        .elementor-widget-testimonial-carousel .elementor-main-swiper {
            inline-size: 100%;
        }
    
        :is(.elementor-testimonial-content, .elementor-testimonial__content) {
            display: grid;
            gap: var(--spacing-md);
        }
    
        :is(.elementor-testimonial-meta-inner, .elementor-testimonial__footer) {
            display: flex;
            flex-flow: column;
            align-items: flex-start;
            gap: var(--spacing-xs);
            margin-block-start: var(--spacing-sm);
        }

        .col-client img,
        :is(.elementor-widget-testimonial, .elementor-widget-testimonial-carousel) img {
            aspect-ratio: 453 / 652;
            width: 100%;
            max-width: 453px;
            height: auto;
            object-fit: cover;
        }
    
        :is(.elementor-widget-testimonial, .elementor-widget-testimonial-carousel):not(.contain) img {
            border-radius: var(--border-radius);
            object-fit: cover;
        }
    
        :is(.elementor-testimonial-name, .elementor-testimonial__name) {
            text-transform: uppercase;
            color: var(--primary-color);
            font: var(--text-weight-bold) var(--text-size-h3)/1.3 var(--font-title);
        }

        :is(.elementor-testimonial-job, .elementor-testimonial__title) {
            font: var(--text-weight-small) var(--text-size-big)/1.3 var(--font-text);
            margin-block-start: var(--spacing-4xs);
        }

        .elementor-widget-google_maps iframe {
            block-size: min(calc(var(--spacing-4xl) * 5), 32rem);
        }
    }

	@layer teases {
			
	    :is(.tease, .tease__description) {
	        display: flex;
	        flex-flow: column;
	        align-items: flex-start;
	        inline-size: 100%;
            padding-block-end: var(--spacing-md);
	    }
		
	    .tease {
	        gap: var(--spacing-sm);
	    }
	
	    .tease__thumb {
	        border-radius: clamp(0rem, var(--border-radius), clamp(1.5rem, 1.125rem + 1.875vw, 3rem));
	        display: flex;
	        aspect-ratio: 662 / 441;
	        inline-size: 100%;
	        overflow: hidden;
	    }
	
	    .tease__thumb :is(picture, img, svg) {
	        inline-size: 100%;
	        block-size: 100%;
	    }
	
	    .tease__thumb :is(img, svg) {
	        object-fit: cover;
	    }
	
	    @media (prefers-reduced-motion: no-preference) {
	
	        .tease__thumb :is(img, svg) {
	            transition: scale .75s linear(0, 0.402 7.4%, 0.711 15.3%, 0.929 23.7%, 1.008 28.2%, 1.067 33%, 1.099 36.9%, 1.12 41%, 1.13 45.4%, 1.13 50.1%, 1.111 58.5%, 1.019 83.2%, 1.004 91.3%, 1);
	        }
	    }
	
	    @media only screen and (hover: hover) and (pointer: fine) {
	        
	        .tease__thumb:hover :is(img, svg) {
	            scale: 1.025;
	        }
	    }
	
	    .tease__thumb:active :is(img, svg) {
	        scale: 1.05;
	    }
	
	    :is(.tease__description, .tease__button) {
	        flex-grow: 1;
	    }
	
	    :is(.tease__description) .header-tease-post {
            display: flex;
            justify-content: space-between;
            width: 100%;
            margin-block-end: var(--spacing-sm);
	    }

	    .tease__date {
	        color: var(--dark-color);
	        font: var(--text-weight-small) var(--text-size-normal)/1 var(--font-text);
	    }
	
	    .tease__categories {
	        background: var(--dark-color);
	        border-radius: calc(var(--border-radius) / 4);
	        color: var(--light-color);
	        font: var(--text-weight-bold) var(--text-size-normal)/1 var(--font-text);
	        padding-block: var(--spacing-3xs);
	        padding-inline: var(--spacing-3xs);
	        margin-block-end: var(--spacing-2xs);
            text-transform: uppercase;
	    }

        .tease__category {
            color: inherit;
        }

	    .tease__title {
	        font: var(--text-weight-bold) var(--text-size-big)/1.3 var(--font-text);
	    }
		
	    .tease__title > * {
	        all: inherit;
			margin: 0;
	    }
	
	    .tease__excerpt {
	        font: var(--text-weight-normal) var(--text-size-small)/1.3 var(--font-text);
	        margin-block: var(--spacing-xs) 0;
	    }
	
	    .tease__button {
	        display: grid;
            place-items: flex-end flex-start;
	        margin-block-start: var(--spacing-sm);
	    }
	}
    
    @layer cookies {

        :where(.gdpr_lightbox, #moove_gdpr_cookie_info_bar) {
            background: radial-gradient(var(--muted-color), 25%, var(--title-color));
            position: fixed;
            inset: 0;
        }

        #moove_gdpr_cookie_info_bar {
            display: grid;
            place-items: center;
            z-index: 9900;
        }

        .moove-gdpr-info-bar-container {
            background: var(--background-color);
            border-radius: clamp(0rem, var(--border-radius), 2rem);
            box-shadow: 0 4px 124px var(--shadow-color);
            inline-size: min(var(--wrapper-size-mobile), 50rem);
            padding: var(--spacing-lg);
        }

        .moove-gdpr-cookie-notice {
            margin-block-end: var(--spacing-sm);
        }

        .moove-gdpr-cookie-notice p {
            color: var(--title-color);
            font-weight: var(--text-weight-medium);
        }

        .moove-gdpr-button-holder {
            display: flex;
            flex-flow: row wrap;
            align-items: center;
            gap: var(--spacing-sm);
        }

        .moove-gdpr-infobar-allow-all {
            order: 1;
        }

        .moove-gdpr-infobar-settings-btn {
            order: 2;
        }

        .moove-gdpr-infobar-reject-btn {
            order: 3;
        }

        .gdpr_lightbox {
            transition: var(--transition-default);
            z-index: 9990;
        }

        .gdpr_lightbox > .gdpr_lightbox-wrap {
            margin-block: var(--spacing-md);
        }

        :where(#moove_gdpr_cookie_modal) {
            all: unset;
        }

        :where(.moove-gdpr-branding-cnt, .moove-clearfix, .gdpr_lightbox-hide, .gdpr_lightbox-close, .cookie-switch > input) {
            display: none;
        }

        .moove-gdpr-modal-content {
            background: var(--background-color);
			border: var(--border-width) solid oklch(from var(--background-color) l c h / .05);
            border-radius: clamp(0rem, var(--border-radius), 2rem);
            box-shadow: 0 4px 124px var(--shadow-color);
            display: grid;
            grid-template-columns: .6fr 1fr;
            inline-size: min(var(--wrapper-size-mobile), 70rem);
            min-block-size: 35rem;
            position: relative;
            margin-inline: auto;
        }

        .moove-gdpr-modal-close {
            position: absolute;
            inset-block-start: var(--spacing-sm);
            inset-inline-end: var(--spacing-sm);
        }

        :is(.moove-gdpr-modal-left-content, .moove-gdpr-modal-right-content) {
            display: flex;
            flex-flow: column;
            padding: var(--spacing-lg);
        }

        .moove-gdpr-modal-left-content {
			background: var(--background-color);
            gap: var(--spacing-md);
        }

        .moove-gdpr-company-logo-holder img {
            aspect-ratio: var(--logo-ratio);
			inline-size: min(80%, 8rem);
        }

        :is(.moove-gdpr-tab-nav, .moove-gdpr-modal-right-content) {
            background: var(--background-grey);
        }

        .moove-gdpr-tab-nav {
            border-radius: var(--border-radius);
            border: var(--border-width) solid transparent;
            color: var(--primary-color);
            inline-size: 100%;
            padding-block: var(--spacing-2xs);
            padding-inline: calc(var(--spacing-2xs) * 2);
        }

        @media only screen and (hover: hover) and (pointer: fine) {
            
            .moove-gdpr-tab-nav:hover {
                background: var(--primary-color);
                color: var(--background-color);
            }  

            .moove-gdpr-tab-nav:active {
                background: var(--primary-hover-color);
                color: var(--background-color);
            }
        }

        @media only screen and (hover: none) and (pointer: coarse) {

            .moove-gdpr-tab-nav:active {
                background: var(--primary-color);
                color: var(--background-color);
            }
        }

        .moove-gdpr-modal-left-content .menu-item-selected :is(a, button) {
            background: var(--background-color);
            border-color: var(--background-grey);
            color: var(--text-color);
            cursor: default;
        }

        .moove-gdpr-modal-left-content :is(a, button) span {
            display: flex;
            font-size: var(--text-size-normal);
            line-height: 1.3;
        }

        .main-modal-content {
            flex-grow: 1;
            block-size: auto;
        }

        .moove-gdpr-tab-main .tab-title:is(h3, span) {
            color: var(--title-color);
            display: inline-flex;
            font: var(--text-weight-bold) var(--text-size-h4) / 1 var(--font-title);
			letter-spacing: 0;
            margin-block-end: var(--spacing-sm);
        }

        .cookie-switch {
            position: relative;
            display: inline-block;
            inline-size: 3rem;
            block-size: 2rem;
        }
		
        .cookie-switch .cookie-slider,
        .cookie-switch .cookie-slider:before {
            position: absolute;
            transition: var(--transition-default);
		}

        .cookie-switch .cookie-slider {
            background: var(--alert-danger-color);
            border-radius: 5rem;
            cursor: pointer;
            inset: 0;
        }

        .cookie-switch:has(input:checked) .cookie-slider {
            background: var(--alert-success-color);
        }

        .cookie-switch .cookie-slider:before {
            content: "";
            background: var(--background-color);
            border-radius: 50%;
            aspect-ratio: 1;
            block-size: calc(2rem - (var(--border-width) * 2));
            inset-block-end: 50%;
            inset-inline-start: 0;
            translate: var(--border-width) 50%;
        }

        .cookie-switch:has(input:checked) .cookie-slider:before {
            translate: 1rem 50%;
        }

        .cookie-switch .cookie-slider:after {
            content: attr(data-text-disabled);
            color: var(--alert-danger-color);
            font: var(--text-weight-bold) var(--text-size-normal)/1 var(--font-text);
            position: absolute;
            inset-block-start: 50%;
            inset-inline-end: calc(var(--spacing-2xs) * -1);
            translate: 100% -50%;
        }

        .cookie-switch:has(input:checked) .cookie-slider:after {
            content: attr(data-text-enable);
            color: var(--alert-success-color);
        }

        .gdpr-checkbox-disabled {
            opacity: .6;
            pointer-events: none;
        }

        .gdpr-checkbox-disabled .cookie-switch:has(input:checked) .cookie-slider {
            background: var(--title-color);
        }

        .gdpr-checkbox-disabled .cookie-switch:has(input:checked) .cookie-slider:after {
            color: var(--title-color);
        }

        .moove-gdpr-modal-content .moove-gdpr-button-holder {
            border-block-start: var(--border-width) solid var(--shadow-color);
            display: flex;
            justify-content: space-between;
            margin-block-start: var(--spacing-xl);
            padding-block-start: var(--spacing-md);
        }

        @container viewport (60rem < inline-size) {

            .moove-gdpr-modal-left-content {
                border-radius: clamp(0rem, var(--border-radius), 2rem) 0 0 clamp(0rem, var(--border-radius), 2rem);
            }
            
            .moove-gdpr-modal-left-content li:not(:first-child) {
                margin-block-start: var(--spacing-xs);
            }
            
            .moove-gdpr-modal-right-content {
                border-radius: 0 clamp(0rem, var(--border-radius), 2rem) clamp(0rem, var(--border-radius), 2rem) 0;
            }
        }

        @container viewport (inline-size <= 60rem) {
            
            .moove-gdpr-modal-content {
                grid-template-columns: 1fr;
                min-block-size: initial;
            }
            
            .moove-gdpr-modal-close {
                inset-block-start: calc(var(--spacing-lg) + (var(--logo-height) / 2));
                inset-inline-end: var(--spacing-lg);
                translate: 0 -50%;
            }
        }

        @container viewport (45rem < inline-size) {

            .moove-gdpr-tab-main .tab-title:is(h3, span) {
                margin-block-end: var(--spacing-md);
            }
        }

        @container viewport (45rem < inline-size <= 60rem) {
            
            .moove-gdpr-modal-left-content {
                border-radius: clamp(0rem, var(--border-radius), 2rem) clamp(0rem, var(--border-radius), 2rem) 0 0;
            }
            
            .moove-gdpr-modal-left-content ul {
                display: grid;
                grid-template-columns: repeat(3, 1fr);
                gap: var(--spacing-3xs);
            }
            
            .moove-gdpr-modal-left-content :is(li, button) {
                block-size: 100%;
            }
            
            .moove-gdpr-modal-left-content button {
                padding-block: var(--spacing-3xs);
                padding-inline: var(--spacing-xs);
            }
            
            .moove-gdpr-modal-left-content .gdpr-nav-tab-title {
                font-size: var(--text-size-small);
            }

            .moove-gdpr-modal-right-content {
                border-radius: 0 0 clamp(0rem, var(--border-radius), 2rem) clamp(0rem, var(--border-radius), 2rem);
            }
        }

        @container viewport (inline-size <= 45rem) {        
                        
            .moove-gdpr-cookie-notice {
                margin-block-end: var(--spacing-md);
            }
            
            .moove-gdpr-modal-left-content,
            .moove-gdpr-tab-main:not(:first-child) .moove-gdpr-tab-main-content {
                display: none;
            }
            
            .moove-gdpr-tab-main {
                display: block !important;
                margin-block-end: var(--spacing-2xs);
            }
            
            .moove-gdpr-tab-main:first-child {
                margin-block-end: var(--spacing-lg);
            }
                    
            .moove-gdpr-tab-main:not(:first-child) {
                background: var(--background-color);
                border-radius: clamp(0rem, var(--border-radius), 1rem);
            }
            
            .moove-gdpr-tab-main:not(:first-child) .tab-title {
                cursor: pointer;
                inline-size: 100%;
                padding-block: var(--spacing-2xs);
                padding-inline: var(--spacing-sm);
                transition: var(--transition-default);
            }
            
            .moove-gdpr-tab-main:not(:first-child) .moove-gdpr-tab-main-content {
                padding-block: 0 var(--spacing-lg);
                padding-inline: var(--spacing-sm);
            }
            
            .moove-gdpr-modal-right-content {
                border-radius: clamp(0rem, var(--border-radius), 2rem);
                padding: var(--spacing-md);
            }
            
            .moove-gdpr-modal-close {
                inset-block-start: calc(var(--spacing-md) + (var(--logo-height) / 2));
                inset-inline-end: var(--spacing-md);
            }
            
            .moove-gdpr-tab-main-content :is(p, li, button) {
                font-size: var(--text-size-small);
            }
        }

        @container viewport (36rem < inline-size) {
            
            .moove-gdpr-modal-content .moove-gdpr-button-holder {
                flex-flow: row-reverse;
            }
        }

        @container viewport (inline-size <= 36rem) {
                
            .moove-gdpr-button-holder {
                flex-flow: column-reverse;
                gap: var(--spacing-3xs);
                margin-inline: auto;
            }
            
            .moove-gdpr-infobar-reject-btn {
                margin-block-end: var(--spacing-xs);
            }
        }

        @container viewport (30rem < inline-size <= 36rem) {
            
            .moove-gdpr-button-holder button {
                inline-size: min(100%, 16rem);
            }
        }

        @container viewport (inline-size <= 24rem) {
            
            .moove-gdpr-cookie-notice p,
            .moove-gdpr-button-holder .mgbutton {
                font-size: var(--text-size-small);
            }
            
            .moove-gdpr-modal-content .mgbutton {
                max-inline-size: initial;
            }
        }
    }

    @layer ino-grid {
        .ino-grid > div {
            --_item-min-size: 16rem;
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(min(100%, var(--_item-min-size)), 1fr));
            gap: var(--spacing-xl) var(--spacing-sm);
        }

        main .ino-grid > div > :is(div, section) {
            inline-size: 100%;
            margin: 0;
        }

        .ino-grid .ino-col-full {
            grid-column: 1 / -1;
        }
    }

    .pre-header {
        background: var(--primary-color);
    }

    .pre-header .container {
        padding-block: var(--spacing-3xs);
    }

    .pre-header p {
        color: var(--light-color);
        font: var(--text-weight-bold) var(--text-size-small)/1.3 var(--font-text);
    }

    header {
        container: main-nav / inline-size;
        position: relative;
        z-index: 5;
    }

    header:not(.header-absolute) .header-nav {
        background: var(--background-color);
    }

    .header-absolute .header-nav {
        color-scheme: dark;
    }

    .header-nav > .container {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: min(2.5rem, 10%);
        padding-block: var(--padding-header);
    }

    .header-nav > .container .socials-nav-main.hide-inodia-menu {
        width: 80%;
    }

    .header-nav > .container .socials-nav-main.hide-inodia-menu {
        width: 80%;
    }

    .logo-header a {
        display: flex;
    }

    .logo-header img {
        aspect-ratio: var(--logo-ratio);
        inline-size: auto;
        block-size: var(--logo-height);
    }

    .ino-nav-menu-list {
		display: flex;
        align-items: center;
        justify-content: space-between;
	    gap: var(--spacing-lg);
        width: calc(100% - calc(var(--spacing-lg) *1.5));
        margin-inline: var(--spacing-lg);
    }

    .ino-nav-main:not(.center) ul:is([class^="ino-menu-level-"],[class*=" ino-menu-level-"]):not(.ino-menu-level-1) {
        flex-flow: column;
        align-items: flex-start;
    }

    .ino-nav-item-link {
        display: flex;
        font: var(--text-weight-medium) var(--text-size-big)/1 var(--font-text);
        letter-spacing: var(--letter-spacing);
        white-space: nowrap;
    }

    .ino-nav-item-link[href="#"] {
        cursor: default;
    }
	
	.ino-nav-item-link-3:not(:hover, :active) {
		color: var(--text-color);
	}

    #header .wpml-ls :is(a, span) {
        color: var(--title-color);
        font-weight: var(--text-weight-bold);
    }

    #header .wpml-ls :is(a, span):hover {
        color: var(--primary-color);
    }

    #header .wpml-ls .wpml-ls-last-item {
        border-inline-start: 1px solid var(--muted-color);
    }

    #header .wpml-ls .wpml-ls-current-language :is(a, span) {
        color: var(--muted-color);
    }


    @container main-nav (85rem < inline-size) {
        
        .show-inodia-menu {
            display: none;
        }

        .header-nav {
            pointer-events: none;
        }
        
        :is(.logo-header, .ino-nav-menu-item-1, .wpml-ls) {
            line-height: 1;
            pointer-events: initial;
        }

	    .ino-menu-level-2,
	    .ino-mega-menu .ino-menu-level-3 {    
	        gap: var(--spacing-xs);
	    }
		
        .ino-nav-menu-item-1:not(:hover, :focus-within) > :where(ul, .ino-mega-menu) {
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
        }

	    .ino-nav-menu-item-1.menu-item-has-children .ino-nav-item-link-1 {
	        align-items: center;
	        gap: 1ch;
	    }

	    .ino-nav-menu-item-1.menu-item-has-children .ino-nav-item-link-1::after {
	        content: "\e900" / "";
	        color: inherit;
	        font: var(--font-icon);
	        letter-spacing: 0;
	    }

        .ino-nav-menu-item-1.menu-item-has-children:not(.mega) {
            position: relative;
        }
        
        .ino-nav-menu-item-1 > :is(.ino-menu-level-2, .ino-mega-menu) a {
            font-weight: var(--text-weight-normal);
        }

        .ino-nav-menu-item-1.menu-item-has-children > :where(ul, .ino-mega-menu) {
            position: absolute;
            inset-block-end: 50%;
            translate: 0 100%;
            z-index: -1;
            transition: var(--transition-default);
        }

        .ino-nav-menu-item-1.menu-item-has-children > ul {
            border-radius: 0 0 clamp(0rem, var(--border-radius), clamp(1.5rem, 1.375rem + .625vw, 2rem)) clamp(0rem, var(--border-radius), clamp(1.5rem, 1.375rem + .625vw, 2rem));
            min-inline-size: 100%;
            inset-inline-start: calc(var(--_padding-submenu) * -1);
        }

        header:not(.header-absolute) .ino-nav-menu-item-1.menu-item-has-children > :where(ul, .ino-mega-menu),
        body:not(.home:has(.header-absolute-home)) .ino-nav-menu-item-1.menu-item-has-children > :where(ul, .ino-mega-menu) {
            background: transparent;
            background: linear-gradient(180deg,rgba(7, 16, 22, 0) 10%, rgba(7, 16, 22, 0.97) 100%);
            box-shadow: var(--box-shadow);
            width: auto;
        }

        body:is(.blog, .single-post) .ino-nav-menu-item-1.menu-item-has-children > :where(ul, .ino-mega-menu) {
            background: var(--dark-color) !important;
            padding-block: calc(var(--padding-header) + (var(--logo-height) / 2) + var(--_padding-submenu)) var(--_padding-submenu) !important;
        }

        header:not(.header-absolute) .ino-nav-menu-item-1.menu-item-has-children > ul,
        body:not(.home:has(.header-absolute-home)) .ino-nav-menu-item-1.menu-item-has-children > ul {
            --_padding-submenu: var(--spacing-sm);
            /*padding-block: calc(var(--padding-header) + (var(--logo-height) / 2) + var(--_padding-submenu)) var(--_padding-submenu);*/
            padding-inline: var(--_padding-submenu);
        }

        .header-absolute:not(.header-absolute-home) .ino-nav-menu-item-1.menu-item-has-children > ul,
        body.home .header-absolute-home .ino-nav-menu-item-1.menu-item-has-children > ul {
            --_padding-submenu: var(--spacing-sm);
            padding-block: calc(var(--_padding-submenu) * 2) var(--_padding-submenu);
            padding-inline: var(--_padding-submenu);
        }

        .ino-mega-menu {
            --_padding-megamenu: var(--spacing-md);
            inline-size: 100%;
            inset-inline-start: 0;
            padding-block: calc((var(--logo-height) / 2) + var(--padding-header) + var(--_padding-megamenu)) var(--_padding-megamenu);
        }

        .ino-mega-menu > ul {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: var(--spacing-xl) var(--columns-gap);
        }

        .ino-mega-menu .ino-menu-level-2 > .menu-item-has-children {
            display: flex;
            flex-flow: column;
            align-items: flex-start;
            gap: var(--spacing-sm);
        }

        .ino-mega-menu .ino-nav-item-link-2 {
            font: var(--text-weight-bold) var(--text-size-normal)/1 var(--font-text);
            letter-spacing: var(--letter-spacing);
        }
    }

    @container main-nav (inline-size <= 85rem) {

        .header-nav > .container {
            justify-content: flex-start;
        }

        .header-nav > .container .wpml-ls {
            margin-inline-start: auto;
        }

        .hide-inodia-menu,
        :where(a[aria-expanded="false"], .ino-nav-wrapper-link:has(button[aria-expanded="false"])) ~ :is(.ino-nav-menu-list, .ino-mega-menu) {
            display: none;
        }

        .ino-nav-mobile-btn-open i {
            font-size: var(--text-size-h3);
        }
                
        .ino-nav-main :where(ul, li) {
            display: flex;
            flex-flow: column;
            line-height: 1;
        }

        :where(.menu-item-has-children > a[href="#"], .menu-item-has-children:has(> a:not([href="#"])) > .ino-nav-wrapper-link) {
            justify-content: center;
        }
        
        .ino-nav-main.center :is(ul, li, a) {
            align-items: center;
            text-align: center;
        }
        
        .ino-menu-level-1 {
            gap: var(--spacing-xl);
        }
        
        .ino-menu-level-2 {
            gap: var(--spacing-md);
        }
        
        .ino-menu-level-3 {
            gap: var(--spacing-sm);
        }
        
        .ino-nav-menu-item-1 {
            gap: var(--spacing-md) var(--spacing-2xs);
        }
        
        .ino-nav-menu-item-2 {
            gap: var(--spacing-sm) var(--spacing-2xs);
        }
        
        .ino-nav-menu-item-3 {
            gap: var(--spacing-xs) var(--spacing-2xs);
        }
        
        .ino-nav-menu-item-1:not(:last-child) > :where(a[href="#"], .ino-nav-menu-list) > .ino-nav-sub-menu {
            margin-block-end: var(--spacing-sm);
        }
        
        .ino-nav-menu-item-2:not(:last-child) > :where(a[href="#"], .ino-nav-menu-list) > .ino-nav-sub-menu {
            margin-block-end: var(--spacing-2xs);
        }
        
        :where(.menu-item-has-children > a[href="#"], .ino-nav-wrapper-link) {
            display: flex;
            align-items: center;
            gap: 1.5ch;
        }
        
        .menu-item-has-children > a[href="#"]::after {
            content: "\e900" / "";
            font: var(--font-icon);
            letter-spacing: 0;
        }
        
        .ino-nav-main a[aria-expanded="true"]::after,
        .ino-nav-main button[aria-expanded="true"] i {
            display: block;
            rotate: 180deg;
        }
        
        .ino-nav-item-link-1 {
            font: var(--text-weight-bold) var(--text-size-h4)/1.1 var(--font-text);
        }
        
        .ino-nav-item-link-2 {
            font: var(--text-weight-medium) var(--text-size-big)/1.1 var(--font-text);
        }
        
        .ino-nav-item-link-3 {
            font: var(--text-weight-normal) var(--text-size-normal)/1.1 var(--font-text);
        }
        
        .ino-nav-item-link-2:not(:hover, :active) {
            color: var(--strong-color);
        }
    }

    .pre-footer {
        color: var(--title-color);
        padding-block: var(--spacing-lg);
    }

    :is(.pre-footer, .footer-content) .container {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: var(--spacing-lg) 6%;
    }

    .footer-content .container:before {
        grid-area: 1 / 1 / 2 / 3;
    }

    .footer-content .column:first-child {
        grid-area: 2 / 1 / 4 / 2;
    }
    .footer-content .column:nth-child(2) {
        grid-area: 2 / 2 / 3 / 3;
        display: grid;
        grid-template-columns: repeat(3, 1fr);
    }
    .footer-content .column:last-child {
        grid-area: 3 / 2 / 4 / 3;
    }

    .footer-content {
        padding-block-end: var(--spacing-lg);
    }

    .footer-content > .container {
        padding-block-start: var(--spacing-lg);
        border-top: 1px solid var(--dark-color);
    }

    .footer-content > .container:before {
        content: "";
        display: block;
        background: var(--dark-color);
        mask: var(--improve-footer);
        mask-size: contain !important;
        aspect-ratio: 1600 / 252;
        width: 100%;
        max-width: 1300px;
        height: auto;
        pointer-events: none;
        z-index: 1;
        margin-inline: auto;
    }

    .footer-content a {
        display: table;
    }

    .footer-content p a {
        display: inline;
    }

    .footer-content img {
        aspect-ratio: var(--logo-ratio);
        mix-blend-mode: difference;
    }

    .footer-content :where(.column, ul:not(.socials-list)) {
        display: flex;
        flex-flow: column;
        align-items: flex-start;
    }
	
    .footer-content .column {
        gap: var(--spacing-md);
    }

    .footer-content .column .socials-link {
        margin-block-end: var(--spacing-xl);
    }

    .footer-content .column .socials-link ul {
        display: flex;
        flex-flow: wrap;
        gap: var(--spacing-md)
    }

    .footer-content .column ul a {
        color: var(--dark-color);
    }

    .footer-content .column ul li.title-no-link a {
        pointer-events: none;
        font: var(--text-weight-bold) var(--text-size-big)/1.3 var(--font-text);
        margin-block-end: var(--spacing-sm);
    }

    .footer-content .column ul a:hover {
        color: var(--primary-color);
    }

    .footer-content .column ul a:active {
        color: var(--primary-hover-color);
    }

    .footer-content .column .socials-link ul .inodia-icons {
        font-size: 1.5rem;
    }

    .footer-content .title {
        color: var(--title-color);
        font: var(--text-weight-bold) var(--text-size-big)/1.3 var(--font-text);
    }

    .footer-content ul:not(.socials-list) {
        gap: var(--spacing-xs) 1ch;
    }

    .footer-content p.socket {
        font: var(--text-weight-normal) var(--text-size-small)/1.3 var(--font-text);
    }

    :is(.pre-footer, .footer-content) ul:not(.socials-list) a {
        line-height: 1.3;
    }

    .post-footer {
        padding-block: var(--spacing-xs);
    }

    .post-footer :is(p, a) {
        font: var(--text-weight-normal) var(--text-size-small)/2.5 var(--font-text);
    }

    .post-footer :where(p, a:not(:hover, :active)) {
        color: var(--muted-color);
    }

	/**/

    .single .post-content-wrapper {
        display: flex;
        flex-flow: column;
        gap: var(--spacing-4xl);
    }

    .home-slider {
        padding-block: calc((var(--padding-header) * 2) + var(--logo-height) + var(--spacing-xl)) var(--spacing-3xl);
        overflow: hidden;
    }

    .home-slider:before {
        content: "";
        display: block;
        background: var(--light-color);
        mask: var(--terrain-basket);
        mask-size: contain !important;
        aspect-ratio: 2080 / 1254;
        width: 2080px;
        height: auto;
        pointer-events: none;
        position: absolute;
        top: 60%;
        left: 50%;
        translate: -50% -50%;
        z-index: 1;
    }

    .home-slider:after {
        content: "";
        display: block;
        background: url(https://www.improveyourgame.pro/public/themes/inodia/static/img/hero-section.webp);
        background-size: cover;
        pointer-events: none;
        position: absolute;
        inset: 0;
    }

    .home .home-slider:after {
        background: url(https://www.improveyourgame.pro/public/themes/inodia/static/img/bg-slider.webp);
        background-size: cover;
    }

    .home-slider .elementor-widget-wrap {
        position: relative;
        z-index: 1;
    }

    .home .home-slider .elementor-widget-heading:has(h1) {
        width: min-content;
    }

    .elementor-widget-heading.title-primary:not(.alt, .h2) p {
        font: var(--text-weight-bold) var(--text-size-big) / 1 var(--font-text);
    }

    .home-slider .absolute.elementor-widget-image {
        position: absolute;
        top: 50%;
        right: 0;
        left: initial;
        translate: 0 -50%;
        width: auto;
        height: 100%;
        z-index: -1;
        margin: 0;
    }

    .home-slider .absolute.elementor-widget-image :is(img, picture) {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .ino-grid:is(.solutions) > div {
        grid-template-columns: 1fr 2fr;
    }

    .ino-grid:is(.athletes) > div {
        grid-template-columns: 2fr minmax(auto, 340px);
    }

    .ino-grid:is(.solutions) .elementor-inner-section > .elementor-container {
        flex-flow: column;
        gap: var(--spacing-3xs);
        z-index: 1;
    }

    .ino-grid:is(.solutions) .elementor-inner-section .card {
        padding: var(--spacing-sm);
        border: 1px solid var(--muted-color);
        background: var(--dark-color);
        inline-size: 100%;
    }

    .ino-grid:is(.solutions) .elementor-inner-section .card :is(.elementor-heading-title, li, p, span, strong, .elementor-widget-wrap) {
        transition: all .6s cubic-bezier(0.42, 0, 0.49, 0.83);
    }

    .ino-grid:is(.solutions) .elementor-inner-section .card > .elementor-widget-wrap {
        display: grid;
        grid-template-columns: minmax(auto, 201px) 2fr minmax(auto, 150px);
        grid-template-rows: repeat(2, auto);
        gap: var(--spacing-xs) var(--spacing-sm);
        padding: var(--spacing-3xs);
    }

    .ino-grid:is(.solutions) .elementor-inner-section .card:is(.basket, .fusee, .vision) > .elementor-widget-wrap {
        position: relative;
    }

    .ino-grid:is(.solutions) .elementor-inner-section .card:is(.basket, .fusee, .vision) > .elementor-widget-wrap:after {
        content: "\e90d" / "";
        display: block;
        font: var(--font-icon);
        position: absolute;
        top: 50%;
        right: var(--spacing-sm);
        translate: 0 -50%;
        font-size: calc(var(--text-size-h2) *1.25);
        color: var(--light-color);
    }

    .ino-grid:is(.solutions) .elementor-inner-section .card:is(.fusee) > .elementor-widget-wrap:after {
        content: "\e90e" / "";
    }

    .ino-grid:is(.solutions) .elementor-inner-section .card:is(.vision) > .elementor-widget-wrap:after {
        content: "\e915" / "";
    }

    .home .ino-grid:is(.solutions) .elementor-inner-section .card > .elementor-widget-wrap {
        grid-template-columns: minmax(auto, 201px) 2fr minmax(auto, 60px);
    }

    .ino-grid:is(.solutions) .elementor-inner-section .card:hover > :is(.elementor-widget-wrap) {
        background: var(--title-color);
    }

    .ino-grid:is(.solutions) .elementor-inner-section .card:hover > :is(.elementor-widget-wrap):after,
    .ino-grid:is(.solutions) .elementor-inner-section .card:hover :is(.elementor-heading-title, li, p, span, strong) {
        color: var(--background-color);
    }

    .ino-grid:is(.solutions) .elementor-inner-section .card > .elementor-widget-wrap .elementor-widget-image {
        grid-area: 1 / 1 / 3 / 2;
        aspect-ratio: 1 / 1;
        width: 160px;
        height: auto;
    }

    .home .ino-grid:is(.solutions) .elementor-inner-section .card > .elementor-widget-wrap .elementor-widget-image {
        aspect-ratio: 201 / 144;
        width: 201px;
    }

    .ino-grid:is(.solutions) .elementor-inner-section .card > .elementor-widget-wrap .elementor-widget-image img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .ino-grid:is(.solutions) .elementor-inner-section .card > .elementor-widget-wrap .elementor-widget-heading {
        grid-area: 1 / 2 / 2 / 3;
        align-content: center;
    }

    .ino-grid:is(.solutions) .elementor-inner-section .card > .elementor-widget-wrap .elementor-widget-text-editor {
        grid-area: 2 / 2 / 3 / 3;
        max-width: 70%;
    }

    .ino-grid:is(.solutions) .elementor-inner-section .card > .elementor-widget-wrap .bouton {
        grid-area:1 / 3 / 3 / 4;
        margin: 0;
    }


    .ino-grid:is(.solutions) .card .elementor-widget-text-editor li {
        padding: 0;
        margin: 0;
        font: var(--text-weight-normal) var(--text-size-normal)/.7 var(--font-text) !important;
    }

    .ino-grid:is(.solutions) .card .elementor-widget-text-editor li:before {
        display: none;
    }


    .ino-grid:is(.solutions) .elementor-inner-section .card > .elementor-widget-wrap :is(.elementor-widget-image, .elementor-widget-heading, .elementor-widget-text-editor) {
        margin-block-start: 0;
    }

    .ino-grid:is(.solutions) .ino-col-sticky {
        max-width: 330px;
        margin-block-start: 7rem;
    }

    .ino-grid:is(.solutions) .ino-col-sticky > .elementor-widget-wrap {
        position: sticky;
        top: 5rem;
    }

    .ino-grid:is(.solutions):before {
        content: "";
        display: block;
        background: var(--light-color);
        mask: var(--raquette-basket);
        mask-size: contain !important;
        aspect-ratio: 840 / 555;
        width: 840px;
        height: auto;
        pointer-events: none;
        position: absolute;
        bottom: -3%;
        left: -11%;
        z-index: 1;
    }

    .services .elementor-col-33.title {
        inline-size: max-content;
    }

    .services .cards > .elementor-container {
        gap: var(--spacing-sm);
    }

    .services .cards .card {
        border: 1px solid var(--outline-color);
        padding: var(--spacing-xs);
    }

    body:not(.home) .services .cards .card {
        padding: var(--spacing-2xs);
    }

    .services .cards .card .elementor-widget-image + .h2 {
        margin-block-start: var(--spacing-md);
    }

    .services .cards .card .elementor-widget-image img {
        width: 100%;
        height: 100%;
        aspect-ratio: 1/1;
        object-fit: cover;
    }

    .services .cards .card .elementor-widget-image + .h2 .elementor-heading-title {
        text-transform: initial;
    }

    .services .cards .card > .elementor-widget-wrap {
        padding: var(--spacing-lg);
        height: 100%;
    }

    body:not(.home) .services .cards .card > .elementor-widget-wrap {
        padding: var(--spacing-md);
    }

    .services .cards .card :is(.elementor-heading-title, li, p, span, strong, .elementor-widget-wrap, .inodia-icons.elementor-widget-heading) {
        transition: all .6s cubic-bezier(0.42, 0, 0.49, 0.83);
    }

    .services .cards .card:hover > .elementor-widget-wrap {
        color-scheme: dark;
        background: var(--dark-color);
    }

    .services .cards .card:hover > .elementor-widget-wrap :is(a, .inodia-icons.elementor-widget-heading) {
        color: var(--light-color);
    }

    .services .cards .card:hover > .elementor-widget-wrap .bouton a:hover {
        color: var(--primary-color);
    }

    .services .cards .card:hover > .elementor-widget-wrap .bouton a:active {
        color: var(--primary-hover-color);
    }

    .services .cards .card .h2:before {
        font-size: var(--text-size-h2);
    }

    .services .cards .card .inodia-icons h3 {
        margin-block-start: var(--spacing-md);
    }

    .services .cards .card .big-text + .elementor-widget-text-editor {
        margin-block-start: var(--spacing-xs);
    }

    .about .col-of-two > .elementor-container {
        gap: var(--spacing-lg);
    }

    .about .col-one {
        inline-size: 75%;
    }

    .no-icon .elementor-icon-box-icon {
        display: none;
    }

    .about .no-icon > .elementor-icon-box-wrapper {
        padding: var(--spacing-xs) var(--spacing-sm);
        padding-block-end: calc(var(--spacing-xs) + 1rem);
        background: var(--background-grey);
    }

    .about .no-icon {
        position: relative;
        margin-inline-start: 2rem;
        width: calc(100% - 2rem);
    }

    .about .no-icon:before {
        content: "";
        display: block;
        background: var(--dark-color);
        height: 100%;
        width: 1px;
        position: absolute;
        top: 0;
        left: -2rem;
    }

    .about .no-icon:last-child:before {
        height: calc(100% - 1rem);
    }

    .about .no-icon:after {
        content: "";
        display: block;
        background: var(--background-color);
        height: 1rem;
        width: 100%;
        position: absolute;
        bottom: 0;
        left: 0;
    }

    .about .no-icon .elementor-icon-box-title {
        margin-block-end: 0;
    }

    .ino-grid:is(.athletes):before {
        content: "";
        display: block;
        background: var(--light-color);
        mask: var(--raquette-basket);
        mask-size: contain !important;
        aspect-ratio: 840 / 555;
        width: 840px;
        height: auto;
        pointer-events: none;
        position: absolute;
        top: -6%;
        left: 50%;
        translate: -50% 0;
        rotate: 180deg;
        z-index: 1;
    }

    .athletes .ino-col-full .elementor-widget-testimonial-carousel .swiper-wrapper .elementor-testimonial {
        display: flex;
        flex-flow: column;
    }

    .athletes .ino-col-full .elementor-widget-testimonial-carousel .swiper-wrapper .elementor-testimonial .elementor-testimonial__image {
        width: 100%;
    }

    .athletes .ino-col-full .elementor-widget-testimonial-carousel .swiper-wrapper .elementor-testimonial .elementor-testimonial__content {
        order: 7;
    }

    .athletes .ino-col-full .elementor-widget-testimonial-carousel .swiper-wrapper .elementor-testimonial .elementor-testimonial__text {
        color: var(--light-color);
    }

    #ino-body .athletes .ino-col-full .elementor-main-swiper {
        overflow: visible !important;
    }

    .bandeau-image .elementor-widget-image {
        display: flex;
        justify-content: center;
    }

    .actus-home:before {
        content: "";
        display: block;
        background: var(--dark-color);
        mask: var(--raquette-basket);
        mask-size: contain !important;
        aspect-ratio: 840 / 555;
        width: 840px;
        height: auto;
        pointer-events: none;
        position: absolute;
        bottom: -14%;
        right: -11%;
        z-index: 1;
    }

    .actus-home .actus:before {
        content: "";
        display: block;
        background: var(--dark-color);
        width: 1px;
        height: 100%;
        position: absolute;
        top: 0;
        left: -3rem;
    }

    .grid-3-col > .elementor-container {
        display: grid;
        grid-template-columns: minmax(auto, 250px) 1fr minmax(max-content, auto);
        gap: var(--spacing-2xl);
    }

    .grid-3-col > .elementor-container .elementor-column {
        inline-size: auto;
    }

    .grid-3-col > .elementor-container .elementor-column .elementor-widget-wrap:has(.bouton) {
        display: flex;
    }

    .grid-3-col > .elementor-container .elementor-column .elementor-widget-wrap .bouton {
        align-content: flex-end;
        flex-wrap: wrap;
    }

    .home .img-box .elementor-col-33 .elementor-widget-wrap {
        gap: var(--spacing-sm) !important;
        display: flex;
        flex-flow: column;
    }

    .img-box :is(.elementor-widget-icon-box, .text) {
        padding: var(--spacing-sm) var(--spacing-md);
        border: 1px solid var(--outline-color);
    }

    :is(.img-box, .box-grey) .elementor-widget-icon-box .elementor-icon-box-title {
        margin: 0 !important;
    }

    :is(.img-box) .elementor-col-33 .elementor-widget-wrap:has(.elementor-widget-icon-box.no-icon) {
        gap: var(--spacing-xs);
        display: grid;
    }

    .fond.fond-noir:has(.img-box):before {
        content: "";
        display: block;
        background: var(--light-color);
        mask: var(--raquette-basket);
        mask-size: contain !important;
        aspect-ratio: 840 / 555;
        width: 840px;
        height: auto;
        pointer-events: none;
        position: absolute;
        top: 11%;
        left: -12%;
        rotate: 90deg;
        z-index: 0;
    }

    .box-grey .elementor-widget-wrap {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: var(--spacing-lg);
    }

    .box-grey .elementor-widget-icon-box {
        padding: var(--spacing-sm) var(--spacing-md);
        background: var(--background-grey);
    }

    .ino-grid.section-cta {
        margin-block-start: var(--spacing-3xl);
    }

    .ino-grid.section-cta .elementor-widget-wrap {
        display: grid;
        grid-template-columns: 1fr minmax(max-content, auto);
        gap: var(--spacing-lg) calc(var(--spacing-4xl) *2);
    }

    .ino-grid.section-cta .elementor-widget-wrap .title-primary {
        grid-area: 1 / 1 / 2 / 2;
        margin: 0;
    }

    .ino-grid.section-cta .elementor-widget-wrap .intro {
        grid-area: 2 / 1 / 3 / 2;
        margin: 0;
    }

    .ino-grid.section-cta .elementor-widget-wrap .bouton {
        grid-area: 1 / 2 / 3 / 3;
        margin: 0;
        display: flex;
        align-content: end;
        flex-wrap: wrap;
    }

    .tableau.elementor-widget-bdt-table .bdt-table table.dataTable thead th {
        padding: var(--spacing-sm) var(--spacing-sm) var(--spacing-xl) var(--spacing-sm);
        color: var(--dark-color);
        background-color: transparent;
    }

    .tableau.elementor-widget-bdt-table .bdt-table table.dataTable thead th:not(:first-child) {
        text-align: center;
    }

    .tableau.elementor-widget-bdt-table .bdt-table table.dataTable thead th:first-child .bdt-static-column-cell-text {
        font: var(--text-weight-normal) var(--text-size-big) / 1.1 var(--font-text) !important;
    }

    .tableau table.dataTable tbody td {
        padding: var(--spacing-sm) var(--spacing-md);
        border-inline-end: 2px solid var(--table-color);
        border-block-end: 2px solid var(--table-color);
        align-content: flex-start;
    }

    .tableau:not(.text) table.dataTable tbody .bdt-static-body-row-cell-wrap {
        flex-flow: column-reverse;
        gap: var(--spacing-xs);
    }

    .tableau:not(.text) table.dataTable tbody td:not(:first-child) {
        text-align: center;
    }

    .elementor-widget-bdt-table .bdt-static-table .bdt-static-body-row-cell-icon, .elementor-widget-bdt-table .bdt-static-table .bdt-static-column-cell-icon {
        margin: 0 !important;
    }

    .tableau table.dataTable tbody tr.odd {
        background: var(--table-color);
    }

    .tableau table.dataTable tbody tr.even {
        background: var(--background-color);
    }

    .tableau.special tbody tr:nth-child(odd of :not(:has(td[rowspan]))) td {
        background: var(--table-color);
    }

    .tableau.special tbody tr:nth-child(even of :not(:has(td[rowspan]))) td {
        background: var(--background-color);
    }

    .tableau table.dataTable tbody td .fas {
        font-size: 1.125rem;
    }

    .tableau table.dataTable tbody td .fa-times {
        color: var(--secondary-color);
    }

    .tableau table.dataTable tbody td .fa-check-square {
        color: var(--primary-color);
    }

    .tableau table.dataTable tbody td .fa-times {
        color: var(--secondary-color);
    }

    .tableau.icon table.dataTable tbody td:not(:first-child) .bdt-static-body-row-cell-wrap > .bdt-static-body-row-cell-text {
        display: none;
    }

    .tableau.special td:is([rowspan]) {
        background: var(--table-color);
        border-inline-end: 2px solid var(--background-color);
        border-block-end: 2px solid var(--background-color);
        max-width: 150px;
    }

    .tableau.special td:is([rowspan]) .bdt-static-body-row-cell-text {
        font-weight: var(--text-weight-bold);
    }

    .carousel-logo .swiper-slide-inner {
        height: 200px;
        justify-content: center;
    }

    .carousel-logo + .tableau {
        margin-block-start: var(--spacing-2xl);
    }

    @container viewport (inline-size <= 45rem) {
        
        header {
            z-index: 1000;
        }
        
        @media (prefers-reduced-motion: no-preference) {
            
            header {
                transition: all .75s cubic-bezier(0.85, 0.09, 0.15, 0.91);
            }
        }
        
        header.show {
            background: var(--dark-color);
            position: sticky;
            inset-block-start: var(--header-height);
        }
        
        header.sticky.show {
            inset-block-start: var(--banner-height);
        }
        
        body:has(header.sticky.show) .ino-modal-close {
            inset-block-start: calc(var(--padding-header) + (var(--logo-height) / 2));
        }
    }

    @container viewport (inline-size <= 30rem) {
        
        .footer-content ul:not(.socials-list) {
            align-items: center;
        }
        
        .footer-content .column * {
            text-align: center;
        }
    }
}

body .swiper-slide {
    block-size: auto;
}

#ino-body :where(.swiper-button-disabled, .elementor-swiper-button > i) {
    display: none;
}

#ino-body :is(.elementor-widget-testimonial-carousel) :is(.elementor-swiper-button > i) {
    display: block;
    font-size: var(--text-size-normal);
    border: 1px solid;
    padding: var(--spacing-3xs);
}

#ino-body :is(.elementor-widget-testimonial-carousel) :is(.elementor-swiper-button-prev, .elementor-swiper-button-next) {
    left: -3rem;
    right: initial;
    top: 48%;
}

#ino-body :is(.elementor-widget-testimonial-carousel) :is(.elementor-swiper-button-next) {
    top: 55%;
}

#ino-body .swiper {
    padding: 0;
}

#ino-body .swiper-pagination-bullets {
    display: flex;
    justify-content: center;
    gap: var(--spacing-2xs);
    position: static;
    margin-block-start: var(--spacing-xl);
}

#ino-body .elementor-pagination-position-inside .swiper-pagination-bullets {
    position: absolute;
    inset-block-end: var(--spacing-sm);
    z-index: 1;
}

#ino-body .swiper-pagination-bullet {
    background: var(--primary-color);
    aspect-ratio: 1;
    inline-size: .5rem;
    block-size: auto;
    margin: 0;
}

#ino-body .elementor-pagination-position-inside .swiper-pagination-bullet {
    background: var(--light-color);
}

@container viewport (inline-size <= 70rem) {

    #ino-body .swiper {
        overflow: initial;
    }
    .ino-grid:is(.solutions, .athletes) > div {
        display: flex;
    }
    .actus-home:before, .actus-home .actus:before,
    #ino-body :is(.elementor-widget-testimonial-carousel) :is(.elementor-swiper-button-prev, .elementor-swiper-button-next) {
        display: none;
    }
    .about .col-of-two > .elementor-container {
        gap: var(--spacing-2xl);
        flex-flow: column;
    }
    :where(.elementor-section > .elementor-container, .ino-top-section > .ino-container),
    .services .cards > .elementor-container,
    .footer-content > .container {
        display: flex;
        flex-flow: column;
    }
    .ino-grid:is(.solutions) .ino-col-sticky {
        margin-block-start: 0;
    }

}

@container viewport (60rem < inline-size) {

    #ino-body .elementor-arrows-position-outside .swiper-pagination {
        display: none;
    }
    .tableau.elementor-widget-bdt-table .bdt-table table.dataTable thead th .bdt-static-column-cell-text {
        font: var(--text-weight-bold) var(--text-size-big) / 1.1 var(--font-text) !important;
        text-transform: uppercase;
    }
}

@container viewport (inline-size <= 60rem) {

    .home-slider .absolute.elementor-widget-image,
    #ino-body .elementor-arrows-position-outside .elementor-swiper-button {
        display: none;
    }

    .elementor-section.elementor-section-boxed:has(.tableau) > .elementor-container {
        inline-size: 100%;
    }
    .elementor-section.elementor-section-boxed:has(.tableau) > .elementor-container .elementor-widget-wrap {
        overflow-inline: auto;
    }
    .elementor-section.elementor-section-boxed > .elementor-container .tableau {
        min-width: max-content;
        padding-inline: var(--spacing-lg);
    }
    .tableau table.dataTable tbody td {
        padding: var(--spacing-2xs) var(--spacing-xs);
    }
    .tableau.elementor-widget-bdt-table .bdt-table table.dataTable thead th .bdt-static-column-cell-text {
        font: var(--text-weight-bold) var(--text-size-small) / 1.1 var(--font-text) !important;
        text-transform: initial;
    }
    .elementor-widget-bdt-table .bdt-table table,
    .tableau.special td:is([rowspan]) .bdt-static-body-row-cell-text {
            font: var(--text-weight-medium) var(--text-size-small) / 1.1 var(--font-text) !important;
    }
    .ino-grid.section-cta .elementor-widget-wrap,
    .box-grey .elementor-widget-wrap {
        display: flex;
        flex-flow: column;
    }


}

@container viewport (inline-size <= 45rem) {

    .ino-grid:is(.solutions) .elementor-inner-section .card > .elementor-widget-wrap {
        display: flex;
        flex-flow: column;
    }
    .ino-grid:is(.solutions) .elementor-inner-section .card > .elementor-widget-wrap .elementor-widget-text-editor {
        max-width: initial;
    }
    .home .ino-grid:is(.solutions) .elementor-inner-section .card > .elementor-widget-wrap .elementor-widget-image {
        width: auto;
        height: 300px;
    }



}

@container viewport (inline-size <= 35rem) {

    .footer-content .column:nth-child(2) {
        grid-template-columns: 1fr;
    }
    .services .cards .card {
        padding: var(--spacing-3xs);
    }
    .services .cards .card > .elementor-widget-wrap {
        padding: var(--spacing-md);
    }
    .home .ino-grid:is(.solutions) .elementor-inner-section .card > .elementor-widget-wrap .elementor-widget-image {
        width: auto;
        height: 200px;
    }
}


@container viewport (inline-size <= 30rem) {

    .footer-content :is(a, .infos),
    .footer-content .column .socials-link {
        margin-inline: auto;
    }
    .about .no-icon {
        margin-inline-start: 1rem;
        width: calc(100% - 1rem);
    }
    .about .no-icon:before {
        left: -1rem;
    }
}