// // Button groups // -------------------------------------------------- // Make the div behave like a button .btn-group, .btn-group-vertical { position: relative; display: inline-block; vertical-align: middle; // match .btn alignment given font-size hack above > .btn { position: relative; float: left; // Bring the "active" button to the front &:hover, &:focus, &:active, &.active { z-index: 2; } &:focus { // Remove focus outline when dropdown JS adds it after closing the menu outline: 0; } } } // Prevent double borders when buttons are next to each other .btn-group { .btn + .btn, .btn + .btn-group, .btn-group + .btn, .btn-group + .btn-group { margin-left: -1px; } } // Optional: Group multiple button groups together for a toolbar .btn-toolbar { margin-left: -5px; // Offset the first child's margin &:extend(.clearfix all); .btn-group, .input-group { float: left; } > .btn, > .btn-group, > .input-group { margin-left: 5px; } } .btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) { border-radius: 0; } // Set corners individual because sometimes a single button can be in a .btn-group and we need :first-child and :last-child to both match .btn-group > .btn:first-child { margin-left: 0; &:not(:last-child):not(.dropdown-toggle) { .border-right-radius(0); } } // Need .dropdown-toggle since :last-child doesn't apply given a .dropdown-menu immediately after it .btn-group > .btn:last-child:not(:first-child), .btn-group > .dropdown-toggle:not(:first-child) { .border-left-radius(0); } // Custom edits for including btn-groups within btn-groups (useful for including dropdown buttons within a btn-group) .btn-group > .btn-group { float: left; } .btn-group > .btn-group:not(:first-child):not(:last-child) > .btn { border-radius: 0; } .btn-group > .btn-group:first-child { > .btn:last-child, > .dropdown-toggle { .border-right-radius(0); } } .btn-group > .btn-group:last-child > .btn:first-child { .border-left-radius(0); } // On active and open, don't show outline .btn-group .dropdown-toggle:active, .btn-group.open .dropdown-toggle { outline: 0; } // Sizing // // Remix the default button sizing classes into new ones for easier manipulation. .btn-group-xs > .btn { &:extend(.btn-xs); } .btn-group-sm > .btn { &:extend(.btn-sm); } .btn-group-lg > .btn { &:extend(.btn-lg); } // Split button dropdowns // ---------------------- // Give the line between buttons some depth .btn-group > .btn + .dropdown-toggle { padding-left: 8px; padding-right: 8px; } .btn-group > .btn-lg + .dropdown-toggle { padding-left: 12px; padding-right: 12px; } // The clickable button for toggling the menu // Remove the gradient and set the same inset shadow as the :active state .btn-group.open .dropdown-toggle { .box-shadow(inset 0 3px 5px rgba(0,0,0,.125)); // Show no shadow for `.btn-link` since it has no other button styles. &.btn-link { .box-shadow(none); } } // Reposition the caret .btn .caret { margin-left: 0; } // Carets in other button sizes .btn-lg .caret { border-width: @caret-width-large @caret-width-large 0; border-bottom-width: 0; } // Upside down carets for .dropup .dropup .btn-lg .caret { border-width: 0 @caret-width-large @caret-width-large; } // Vertical button groups // ---------------------- .btn-group-vertical { > .btn, > .btn-group, > .btn-group > .btn { display: block; float: none; width: 100%; max-width: 100%; } // Clear floats so dropdown menus can be properly placed > .btn-group { &:extend(.clearfix all); > .btn { float: none; } } > .btn + .btn, > .btn + .btn-group, > .btn-group + .btn, > .btn-group + .btn-group { margin-top: -1px; margin-left: 0; } } .btn-group-vertical > .btn { &:not(:first-child):not(:last-child) { border-radius: 0; } &:first-child:not(:last-child) { border-top-right-radius: @border-radius-base; .border-bottom-radius(0); } &:last-child:not(:first-child) { border-bottom-left-radius: @border-radius-base; .border-top-radius(0); } } .btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn { border-radius: 0; } .btn-group-vertical > .btn-group:first-child:not(:last-child) { > .btn:last-child, > .dropdown-toggle { .border-bottom-radius(0); } } .btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child { .border-top-radius(0); } // Justified button groups // ---------------------- .btn-group-justified { display: table; width: 100%; table-layout: fixed; border-collapse: separate; > .btn, > .btn-group { float: none; display: table-cell; width: 1%; } > .btn-group .btn { width: 100%; } > .btn-group .dropdown-menu { left: auto; } } // Checkbox and radio options // // In order to support the browser's form validation feedback, powered by the // `required` attribute, we have to "hide" the inputs via `opacity`. We cannot // use `display: none;` or `visibility: hidden;` as that also hides the popover. // This way, we ensure a DOM element is visible to position the popover from. // // See https://github.com/twbs/bootstrap/pull/12794 for more. [data-toggle="buttons"] > .btn > input[type="radio"], [data-toggle="buttons"] > .btn > input[type="checkbox"] { position: absolute; z-index: -1; .opacity(0); } .elementor-animation-grow-rotate { transition-duration: 0.3s; transition-property: transform; } .elementor-animation-grow-rotate:active, .elementor-animation-grow-rotate:focus, .elementor-animation-grow-rotate:hover { transform: scale(1.1) rotate(4deg); } {"id":87738,"date":"2026-04-22T09:36:43","date_gmt":"2026-04-22T07:36:43","guid":{"rendered":"https:\/\/www.solucionessmart.com.uy\/smartporteria\/?p=87738"},"modified":"2026-04-22T09:40:07","modified_gmt":"2026-04-22T07:40:07","slug":"camps-de-surf-crypto-en-france-focus-sur-les-24","status":"publish","type":"post","link":"https:\/\/www.solucionessmart.com.uy\/smartporteria\/2026\/04\/22\/camps-de-surf-crypto-en-france-focus-sur-les-24\/","title":{"rendered":"Camps de Surf Crypto en France : Focus sur les Derni\u00e8res Tendances"},"content":{"rendered":"

Camps de Surf Crypto en France : Focus sur les Derni\u00e8res Tendances<\/h1>\n

Bienvenue dans notre exploration des camps de surf crypto en France ! Dans cet article, nous nous plongerons dans les derni\u00e8res tendances de ce ph\u00e9nom\u00e8ne passionnant, o\u00f9 la technologie blockchain rencontre la culture surf. D\u00e9couvrez comment ces deux mondes se conjuguent pour offrir une exp\u00e9rience unique aux amateurs de glisse et d’innovations technologiques.<\/p>\n

L’Essor des Camps de Surf Crypto en France<\/h2>\n

Ces derni\u00e8res ann\u00e9es, on a vu fleurir en France de nombreux camps de surf qui int\u00e8grent les crypto-monnaies et la blockchain dans leur offre. Ces initiatives visent \u00e0 attirer une nouvelle g\u00e9n\u00e9ration de surfeurs, friands de technologies \u00e9mergentes. Les participants peuvent d\u00e9sormais r\u00e9gler leurs s\u00e9jours en cryptomonnaies, participer \u00e0 des activit\u00e9s li\u00e9es aux NFT ou m\u00eame miser sur les r\u00e9sultats des comp\u00e9titions.<\/p>\n

L’Exp\u00e9rience Surf et Crypto<\/h3>\n

Les camps de surf crypto proposent bien plus qu’une simple session de glisse. Ils offrent une immersion compl\u00e8te dans l’univers de la blockchain, avec des ateliers, des conf\u00e9rences et des d\u00e9monstrations sur les applications pratiques des crypto-actifs. Les surfeurs peuvent ainsi apprendre \u00e0 utiliser des portefeuilles num\u00e9riques, \u00e0 trader des devises virtuelles ou encore \u00e0 cr\u00e9er leurs propres NFT.<\/p>\n