@charset "UTF-8";
/*---------------------------------------------------------------------------*/
/* feathericon
/*---------------------------------------------------------------------------*/
/**
 * font path
 */
@font-face {
  font-family: 'feathericon';
  src: url(/assets/feathericon-6176af55ae47f417a5e39db51b81789604712af9c1a5a24e26470d81991eb28a.eot);
  src: url(/assets/feathericon-6176af55ae47f417a5e39db51b81789604712af9c1a5a24e26470d81991eb28a.eot?#iefix) format("embedded-opentype"), url(/assets/feathericon-0f26aee2ba4cc92e96e0f6e9d913a44038de1b797f5f057cf04c94828097c455.woff2) format("woff2"), url(/assets/feathericon-26a05200928f72eb34864d7ddc3b579d035db07540dee0315577d12141cbd3b3.woff) format("woff"), url(/assets/feathericon-51a3ad10d4a06143b176ae732267c13b2e800e228a60a22fbbed581fdcd9375b.ttf) format("truetype"), url(/assets/feathericon-c1ed79fb8372566cd1359931a4ceb733a4b4dd4d287835c3586893c9ff0a5b8e.svg) format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

/**
 * feathericon
 */
/* line 27, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe {
  display: inline-block;
  font: normal normal normal 16px feathericon;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/**
 * all icons
 */
/* line 39, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-activity:before {
  content: "\f1e2";
}

/* line 40, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-add-cart:before {
  content: "\f1e6";
}

/* line 41, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-align-bottom:before {
  content: "\f1bf";
}

/* line 42, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-align-center:before {
  content: "\f195";
}

/* line 43, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-align-left:before {
  content: "\f196";
}

/* line 44, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-align-right:before {
  content: "\f197";
}

/* line 45, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-align-top:before {
  content: "\f1c0";
}

/* line 46, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-align-vertically:before {
  content: "\f1c1";
}

/* line 47, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-angry:before {
  content: "\f1b6";
}

/* line 48, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-app-menu:before {
  content: "\f198";
}

/* line 49, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-apron:before {
  content: "\f1fb";
}

/* line 50, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-arrow-down:before {
  content: "\f100";
}

/* line 51, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-arrow-left:before {
  content: "\f101";
}

/* line 52, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-arrow-right:before {
  content: "\f102";
}

/* line 53, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-arrow-up:before {
  content: "\f103";
}

/* line 54, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-artboard:before {
  content: "\f104";
}

/* line 55, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-audio-player:before {
  content: "\f199";
}

/* line 56, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-backward:before {
  content: "\f180";
}

/* line 57, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-bar:before {
  content: "\f105";
}

/* line 58, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-bar-chart:before {
  content: "\f106";
}

/* line 59, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-beer:before {
  content: "\f107";
}

/* line 60, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-beginner:before {
  content: "\f1f7";
}

/* line 61, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-bell:before {
  content: "\f108";
}

/* line 62, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-birthday-cake:before {
  content: "\f163";
}

/* line 63, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-bold:before {
  content: "\f179";
}

/* line 64, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-bolt:before {
  content: "\f1e3";
}

/* line 65, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-book:before {
  content: "\f109";
}

/* line 66, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-bookmark:before {
  content: "\f170";
}

/* line 67, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-bread:before {
  content: "\f206";
}

/* line 68, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-browser:before {
  content: "\f10b";
}

/* line 69, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-brush:before {
  content: "\f10c";
}

/* line 70, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-bug:before {
  content: "\f10d";
}

/* line 71, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-building:before {
  content: "\f10e";
}

/* line 72, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-bus:before {
  content: "\f1fe";
}

/* line 73, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-cage:before {
  content: "\f1e7";
}

/* line 74, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-calendar:before {
  content: "\f10f";
}

/* line 75, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-camera:before {
  content: "\f110";
}

/* line 76, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-car:before {
  content: "\f1ff";
}

/* line 77, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-cart:before {
  content: "\f1e8";
}

/* line 78, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-check:before {
  content: "\f111";
}

/* line 79, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-check-circle:before {
  content: "\f19a";
}

/* line 80, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-check-circle-o:before {
  content: "\f19b";
}

/* line 81, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-check-verified:before {
  content: "\f19c";
}

/* line 82, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-clock:before {
  content: "\f113";
}

/* line 83, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-close:before {
  content: "\f114";
}

/* line 84, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-cloud:before {
  content: "\f115";
}

/* line 85, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-cocktail:before {
  content: "\f116";
}

/* line 86, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-code:before {
  content: "\f117";
}

/* line 87, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-codepen:before {
  content: "\f1d3";
}

/* line 88, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-coffee:before {
  content: "\f166";
}

/* line 89, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-columns:before {
  content: "\f118";
}

/* line 90, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-comment:before {
  content: "\f119";
}

/* line 91, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-comment-o:before {
  content: "\f1d2";
}

/* line 92, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-commenting:before {
  content: "\f11a";
}

/* line 93, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-comments:before {
  content: "\f11b";
}

/* line 94, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-compress:before {
  content: "\f181";
}

/* line 95, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-credit-card:before {
  content: "\f1e9";
}

/* line 96, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-crop:before {
  content: "\f1c2";
}

/* line 97, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-cry:before {
  content: "\f1b7";
}

/* line 98, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-cutlery:before {
  content: "\f19d";
}

/* line 99, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-delete-link:before {
  content: "\f19e";
}

/* line 100, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-desktop:before {
  content: "\f11d";
}

/* line 101, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-diamond:before {
  content: "\f11e";
}

/* line 102, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-difference:before {
  content: "\f1c3";
}

/* line 103, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-disabled:before {
  content: "\f11f";
}

/* line 104, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-disappointed:before {
  content: "\f1b8";
}

/* line 105, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-distribute-horizontally:before {
  content: "\f1cf";
}

/* line 106, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-distribute-vertically:before {
  content: "\f1c5";
}

/* line 107, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-document:before {
  content: "\f19f";
}

/* line 108, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-donut:before {
  content: "\f1f9";
}

/* line 109, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-download:before {
  content: "\f120";
}

/* line 110, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-drop-down:before {
  content: "\f121";
}

/* line 111, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-drop-left:before {
  content: "\f122";
}

/* line 112, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-drop-right:before {
  content: "\f123";
}

/* line 113, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-drop-up:before {
  content: "\f124";
}

/* line 114, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-edit:before {
  content: "\f17f";
}

/* line 115, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-eject:before {
  content: "\f182";
}

/* line 116, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-elipsis-h:before {
  content: "\f125";
}

/* line 117, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-elipsis-v:before {
  content: "\f126";
}

/* line 118, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-equalizer:before {
  content: "\f1a0";
}

/* line 119, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-eraser:before {
  content: "\f1c6";
}

/* line 120, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-expand:before {
  content: "\f183";
}

/* line 121, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-export:before {
  content: "\f16e";
}

/* line 122, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-eye:before {
  content: "\f127";
}

/* line 123, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-facebook:before {
  content: "\f1d4";
}

/* line 124, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-fast-backward:before {
  content: "\f184";
}

/* line 125, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-fast-forward:before {
  content: "\f185";
}

/* line 126, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-feather:before {
  content: "\f174";
}

/* line 127, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-feed:before {
  content: "\f128";
}

/* line 128, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-file:before {
  content: "\f1b1";
}

/* line 129, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-file-audio:before {
  content: "\f1b2";
}

/* line 130, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-file-excel:before {
  content: "\f1a2";
}

/* line 131, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-file-image:before {
  content: "\f1b3";
}

/* line 132, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-file-movie:before {
  content: "\f1b4";
}

/* line 133, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-file-powerpoint:before {
  content: "\f1a3";
}

/* line 134, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-file-word:before {
  content: "\f1a4";
}

/* line 135, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-file-zip:before {
  content: "\f1b5";
}

/* line 136, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-filter:before {
  content: "\f173";
}

/* line 137, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-flag:before {
  content: "\f129";
}

/* line 138, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-folder:before {
  content: "\f12a";
}

/* line 139, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-folder-open:before {
  content: "\f176";
}

/* line 140, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-fork:before {
  content: "\f12b";
}

/* line 141, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-forward:before {
  content: "\f186";
}

/* line 142, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-frowing:before {
  content: "\f1b9";
}

/* line 143, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-frying-pan:before {
  content: "\f207";
}

/* line 144, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-gamepad:before {
  content: "\f191";
}

/* line 145, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-gear:before {
  content: "\f1a5";
}

/* line 146, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-gift:before {
  content: "\f1ea";
}

/* line 147, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-git:before {
  content: "\f1d5";
}

/* line 148, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-github:before {
  content: "\f1d6";
}

/* line 149, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-github-alt:before {
  content: "\f1d7";
}

/* line 150, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-globe:before {
  content: "\f12c";
}

/* line 151, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-google:before {
  content: "\f1d8";
}

/* line 152, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-google-plus:before {
  content: "\f1d9";
}

/* line 153, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-hash:before {
  content: "\f12d";
}

/* line 154, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-headphone:before {
  content: "\f18e";
}

/* line 155, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-heart:before {
  content: "\f12e";
}

/* line 156, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-heart-o:before {
  content: "\f167";
}

/* line 157, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-home:before {
  content: "\f12f";
}

/* line 158, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-import:before {
  content: "\f16f";
}

/* line 159, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-info:before {
  content: "\f130";
}

/* line 160, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-insert-link:before {
  content: "\f1a6";
}

/* line 161, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-instagram:before {
  content: "\f1da";
}

/* line 162, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-intersect:before {
  content: "\f1c7";
}

/* line 163, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-italic:before {
  content: "\f17a";
}

/* line 164, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-key:before {
  content: "\f131";
}

/* line 165, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-keyboard:before {
  content: "\f132";
}

/* line 166, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-kitchen-cooker:before {
  content: "\f1a7";
}

/* line 167, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-laptop:before {
  content: "\f133";
}

/* line 168, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-layer:before {
  content: "\f18c";
}

/* line 169, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-layout:before {
  content: "\f134";
}

/* line 170, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-line-chart:before {
  content: "\f135";
}

/* line 171, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-link:before {
  content: "\f136";
}

/* line 172, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-link-external:before {
  content: "\f137";
}

/* line 173, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-list-bullet:before {
  content: "\f17c";
}

/* line 174, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-list-order:before {
  content: "\f17d";
}

/* line 175, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-list-task:before {
  content: "\f17e";
}

/* line 176, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-location:before {
  content: "\f138";
}

/* line 177, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-lock:before {
  content: "\f139";
}

/* line 178, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-login:before {
  content: "\f13a";
}

/* line 179, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-logout:before {
  content: "\f13b";
}

/* line 180, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-loop:before {
  content: "\f192";
}

/* line 181, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-magic:before {
  content: "\f177";
}

/* line 182, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-mail:before {
  content: "\f13c";
}

/* line 183, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-map:before {
  content: "\f16d";
}

/* line 184, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-mask:before {
  content: "\f1c8";
}

/* line 185, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-medal:before {
  content: "\f13d";
}

/* line 186, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-megaphone:before {
  content: "\f13e";
}

/* line 187, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-mention:before {
  content: "\f164";
}

/* line 188, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-messanger:before {
  content: "\f1e1";
}

/* line 189, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-minus:before {
  content: "\f140";
}

/* line 190, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-mitarashi-dango:before {
  content: "\f208";
}

/* line 191, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-mobile:before {
  content: "\f141";
}

/* line 192, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-money:before {
  content: "\f1a8";
}

/* line 193, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-moon:before {
  content: "\f1ef";
}

/* line 194, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-mouse:before {
  content: "\f142";
}

/* line 195, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-music:before {
  content: "\f175";
}

/* line 196, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-notice-active:before {
  content: "\f200";
}

/* line 197, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-notice-off:before {
  content: "\f201";
}

/* line 198, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-notice-on:before {
  content: "\f202";
}

/* line 199, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-notice-push:before {
  content: "\f203";
}

/* line 200, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-octpus:before {
  content: "\f1fc";
}

/* line 201, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-open-mouth:before {
  content: "\f1ba";
}

/* line 202, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-palette:before {
  content: "\f165";
}

/* line 203, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-paper-plane:before {
  content: "\f178";
}

/* line 204, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-pause:before {
  content: "\f187";
}

/* line 205, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-pencil:before {
  content: "\f144";
}

/* line 206, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-phone:before {
  content: "\f145";
}

/* line 207, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-picture:before {
  content: "\f1a9";
}

/* line 208, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-picture-square:before {
  content: "\f1e4";
}

/* line 209, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-pie-chart:before {
  content: "\f146";
}

/* line 210, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-pinterest:before {
  content: "\f1db";
}

/* line 211, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-pizza:before {
  content: "\f147";
}

/* line 212, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-play:before {
  content: "\f188";
}

/* line 213, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-plug:before {
  content: "\f18f";
}

/* line 214, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-plus:before {
  content: "\f148";
}

/* line 215, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-pocket:before {
  content: "\f1dc";
}

/* line 216, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-pot:before {
  content: "\f1aa";
}

/* line 217, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-print:before {
  content: "\f171";
}

/* line 218, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-prototype:before {
  content: "\f149";
}

/* line 219, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-question:before {
  content: "\f14a";
}

/* line 220, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-quote-left:before {
  content: "\f14b";
}

/* line 221, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-quote-right:before {
  content: "\f14c";
}

/* line 222, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-rage:before {
  content: "\f1bb";
}

/* line 223, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-random:before {
  content: "\f189";
}

/* line 224, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-remove-cart:before {
  content: "\f1eb";
}

/* line 225, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-rice-cracker:before {
  content: "\f1fa";
}

/* line 226, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-rocket:before {
  content: "\f14d";
}

/* line 227, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-scale:before {
  content: "\f1c9";
}

/* line 228, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-search:before {
  content: "\f14e";
}

/* line 229, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-search-minus:before {
  content: "\f16a";
}

/* line 230, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-search-plus:before {
  content: "\f16b";
}

/* line 231, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-share:before {
  content: "\f14f";
}

/* line 232, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-shield:before {
  content: "\f172";
}

/* line 233, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-shopping-bag:before {
  content: "\f1ec";
}

/* line 234, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-sitemap:before {
  content: "\f150";
}

/* line 235, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-smile:before {
  content: "\f1bc";
}

/* line 236, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-smile-alt:before {
  content: "\f1bd";
}

/* line 237, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-smile-heart:before {
  content: "\f1f6";
}

/* line 238, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-smile-plus:before {
  content: "\f1f5";
}

/* line 239, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-speaker:before {
  content: "\f1ab";
}

/* line 240, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-squid:before {
  content: "\f1fd";
}

/* line 241, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-star:before {
  content: "\f151";
}

/* line 242, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-star-o:before {
  content: "\f168";
}

/* line 243, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-step-backward:before {
  content: "\f1d0";
}

/* line 244, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-step-forward:before {
  content: "\f1d1";
}

/* line 245, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-stop:before {
  content: "\f18b";
}

/* line 246, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-subtract:before {
  content: "\f1ca";
}

/* line 247, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-sunny-o:before {
  content: "\f1f0";
}

/* line 248, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-sunrise:before {
  content: "\f1f1";
}

/* line 249, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-sync:before {
  content: "\f194";
}

/* line 250, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-table:before {
  content: "\f1ac";
}

/* line 251, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-tablet:before {
  content: "\f152";
}

/* line 252, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-tag:before {
  content: "\f153";
}

/* line 253, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-target:before {
  content: "\f1f3";
}

/* line 254, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-taxi:before {
  content: "\f204";
}

/* line 255, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-terminal:before {
  content: "\f154";
}

/* line 256, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-text-align-center:before {
  content: "\f1cb";
}

/* line 257, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-text-align-justify:before {
  content: "\f1e5";
}

/* line 258, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-text-align-left:before {
  content: "\f1cc";
}

/* line 259, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-text-align-right:before {
  content: "\f1cd";
}

/* line 260, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-text-size:before {
  content: "\f17b";
}

/* line 261, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-ticket:before {
  content: "\f155";
}

/* line 262, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-tiled:before {
  content: "\f156";
}

/* line 263, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-timeline:before {
  content: "\f1ad";
}

/* line 264, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-tired:before {
  content: "\f1be";
}

/* line 265, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-train:before {
  content: "\f1f8";
}

/* line 266, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-trash:before {
  content: "\f157";
}

/* line 267, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-trophy:before {
  content: "\f158";
}

/* line 268, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-truck:before {
  content: "\f1ed";
}

/* line 269, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-tumbler-glass:before {
  content: "\f209";
}

/* line 270, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-twitter:before {
  content: "\f1dd";
}

/* line 271, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-umbrella:before {
  content: "\f1f2";
}

/* line 272, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-underline:before {
  content: "\f1ae";
}

/* line 273, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-union:before {
  content: "\f1ce";
}

/* line 274, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-unlock:before {
  content: "\f169";
}

/* line 275, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-upload:before {
  content: "\f159";
}

/* line 276, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-usb:before {
  content: "\f190";
}

/* line 277, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-user:before {
  content: "\f15a";
}

/* line 278, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-user-minus:before {
  content: "\f16c";
}

/* line 279, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-user-plus:before {
  content: "\f15b";
}

/* line 280, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-users:before {
  content: "\f15c";
}

/* line 281, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-vector:before {
  content: "\f15d";
}

/* line 282, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-video:before {
  content: "\f15e";
}

/* line 283, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-vr:before {
  content: "\f205";
}

/* line 284, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-wallet:before {
  content: "\f1ee";
}

/* line 285, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-warning:before {
  content: "\f15f";
}

/* line 286, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-watch:before {
  content: "\f1af";
}

/* line 287, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-watch-alt:before {
  content: "\f1b0";
}

/* line 288, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-wine-glass:before {
  content: "\f161";
}

/* line 289, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-wordpress:before {
  content: "\f1de";
}

/* line 290, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-wordpress-alt:before {
  content: "\f1df";
}

/* line 291, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-wrench:before {
  content: "\f162";
}

/* line 292, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-yaki-dango:before {
  content: "\f20a";
}

/* line 293, vendor/bundle/ruby/3.3.0/gems/feathericon-rails-1.0.2/app/assets/stylesheets/feathericon.css */
.fe-youtube:before {
  content: "\f1e0";
}

@font-face {
  font-family: "Bebas Neue";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/static/fonts/bebas-neue-latin.woff2) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: "Bebas Neue";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/static/fonts/bebas-neue-latin-ext.woff2) format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* Fluid Type function */
/* ———————————— */
/* line 48, app/assets/stylesheets/config/_fonts.scss */
* {
  -webkit-font-smoothing: antialiased;
}

/* line 52, app/assets/stylesheets/config/_fonts.scss */
html {
  font-size: 16px;
}

/* line 56, app/assets/stylesheets/config/_fonts.scss */
h1, h2, h3, h4 {
  font-family: "Bebas Neue", sans-serif;
  line-height: 1;
  letter-spacing: 1px;
}

/* line 35, app/assets/stylesheets/config/_fonts.scss */
h1 {
  font-size: 32px;
}

@media screen and (min-width: 320px) {
  /* line 35, app/assets/stylesheets/config/_fonts.scss */
  h1 {
    font-size: calc(32px + 40 * ((100vw - 320px) / 1120));
  }
}

@media screen and (min-width: 1440px) {
  /* line 35, app/assets/stylesheets/config/_fonts.scss */
  h1 {
    font-size: 72px;
  }
}

/* line 35, app/assets/stylesheets/config/_fonts.scss */
h2 {
  font-size: 24px;
}

@media screen and (min-width: 320px) {
  /* line 35, app/assets/stylesheets/config/_fonts.scss */
  h2 {
    font-size: calc(24px + 24 * ((100vw - 320px) / 1120));
  }
}

@media screen and (min-width: 1440px) {
  /* line 35, app/assets/stylesheets/config/_fonts.scss */
  h2 {
    font-size: 48px;
  }
}

/* line 35, app/assets/stylesheets/config/_fonts.scss */
h3 {
  font-size: 20px;
}

@media screen and (min-width: 320px) {
  /* line 35, app/assets/stylesheets/config/_fonts.scss */
  h3 {
    font-size: calc(20px + 4 * ((100vw - 320px) / 1120));
  }
}

@media screen and (min-width: 1440px) {
  /* line 35, app/assets/stylesheets/config/_fonts.scss */
  h3 {
    font-size: 24px;
  }
}

/* line 74, app/assets/stylesheets/config/_fonts.scss */
h4 {
  font-size: 18px;
}

/* To style hint in simple form */
/* line 80, app/assets/stylesheets/config/_fonts.scss */
.alert-danger {
  font-size: 14px;
  color: black;
  font-weight: 500;
}

/* line 86, app/assets/stylesheets/config/_fonts.scss */
.form-text, .invalid-feedback {
  font-size: 12px;
  color: grey;
}

/* line 91, app/assets/stylesheets/config/_fonts.scss */
.invalid-feedback {
  color: red;
}

/* Vocabulaire de mouvement du checkout — source unique.
 *
 * Avant : chaque brique inventait ses durées (.15s, .16s, .18s, .2s, .22s,
 * .25s) et chacune devait redéclarer son propre bloc `prefers-reduced-motion`
 * — que _pao-visuals-b.scss avait tout simplement oublié, ses animations
 * s'imposant donc aux personnes qui demandent moins de mouvement.
 *
 * Ici : trois vitesses, une courbe, et UN SEUL endroit où le mouvement se
 * coupe. Toute brique qui consomme les jetons hérite du respect de la
 * préférence système sans avoir à y penser.
 *
 *   --checkout-motion-fast : accusé de réception, survol (≈120 ms)
 *   --checkout-motion-base : apparition d'un bloc, changement d'état (≈200 ms)
 *   --checkout-motion-slow : arrivée d'une section entière (≈320 ms)
 */
/* line 16, app/assets/stylesheets/config/_checkout-motion.scss */
:root {
  /* Allongées de ~30 % (demande owner, 20/08) : des mouvements plus posés,
     « fluides et sécurisants » — le checkout n'est pas un endroit où
     l'interface doit paraître pressée. */
  --checkout-motion-fast: 180ms;
  --checkout-motion-base: 320ms;
  --checkout-motion-slow: 540ms;
  /* Sortie douce : rapide au départ, longuement freinée à l'arrivée. Une
     courbe plus plate en fin de course enlève l'impression de « claquement »
     qu'avait l'ancienne — c'est l'arrivée qui se remarque, pas le départ. */
  --checkout-motion-ease: cubic-bezier(.16, .84, .28, 1);
  /* Un déplacement discret suffit à faire comprendre qu'un bloc arrive ;
     au-delà, l'œil suit le mouvement au lieu de lire le contenu. */
  --checkout-motion-lift: 4px;
}

/* Le contrat d'accessibilité, écrit une fois pour tout le checkout : les
   durées tombent à zéro, donc toute règle exprimée en jetons s'immobilise.
   Les états (couleur, surbrillance, position finale) restent intacts —
   on supprime le mouvement, jamais l'information. */
@media (prefers-reduced-motion: reduce) {
  /* line 37, app/assets/stylesheets/config/_checkout-motion.scss */
  :root {
    --checkout-motion-fast: 0ms;
    --checkout-motion-base: 0ms;
    --checkout-motion-slow: 0ms;
    --checkout-motion-lift: 0px;
  }
}

/* ------------------------------------------------------------------ *
 * Deux gestes partagés par tout le funnel.
 * ------------------------------------------------------------------ */
/* 1. « J'ai bien reçu ton clic » — posé par l'orchestrateur sur le contrôle
      activé, le temps que le serveur réponde. Une pulsation courte, jamais
      un délai artificiel : la requête part immédiatement. */
/* line 52, app/assets/stylesheets/config/_checkout-motion.scss */
.is-acknowledging {
  -webkit-animation: checkout-acknowledge var(--checkout-motion-base) var(--checkout-motion-ease);
          animation: checkout-acknowledge var(--checkout-motion-base) var(--checkout-motion-ease);
}

/* 2. « Voici la suite » — posé sur un fragment qui vient d'être injecté.
      L'état de départ est décrit ici, le retrait de la classe joue la
      transition vers l'état normal. */
/* line 59, app/assets/stylesheets/config/_checkout-motion.scss */
.is-entering {
  opacity: 0;
  transform: translateY(var(--checkout-motion-lift));
}

/* Ce qui s'en va s'efface sans bouger : un contenu qui glisse en sortant
   attire l'œil au moment où il faut le porter ailleurs. */
/* line 66, app/assets/stylesheets/config/_checkout-motion.scss */
.is-leaving {
  opacity: .35;
  transition: opacity var(--checkout-motion-fast) var(--checkout-motion-ease);
}

/* line 71, app/assets/stylesheets/config/_checkout-motion.scss */
.is-entering-active {
  transition: opacity var(--checkout-motion-slow) var(--checkout-motion-ease), transform var(--checkout-motion-slow) var(--checkout-motion-ease);
}

@-webkit-keyframes checkout-acknowledge {
  0% {
    transform: scale(1);
  }
  45% {
    transform: scale(0.975);
  }
  100% {
    transform: scale(1);
  }
}

@keyframes checkout-acknowledge {
  0% {
    transform: scale(1);
  }
  45% {
    transform: scale(0.975);
  }
  100% {
    transform: scale(1);
  }
}

/* Durée nulle = pas d'animation du tout : sans cela une animation de 0ms
   peut encore provoquer un saut d'une frame. */
@media (prefers-reduced-motion: reduce) {
  /* line 85, app/assets/stylesheets/config/_checkout-motion.scss */
  .is-acknowledging {
    -webkit-animation: none;
            animation: none;
  }
  /* line 86, app/assets/stylesheets/config/_checkout-motion.scss */
  .is-entering {
    opacity: 1;
    transform: none;
  }
}

@media (max-width: 992px) {
  /* line 2, app/assets/stylesheets/components/_crisp.scss */
  #crisp-chatbox .cc-qvio {
    position: absolute !important;
    bottom: 68px !important;
    right: 0px !important;
  }
}

/* For Webkit-based browsers (Chrome, Safari and Opera) */
/* line 2, app/assets/stylesheets/components/_scrollbar.scss */
.scrollbar-hide::-webkit-scrollbar {
  display: none;
}

/* For IE, Edge and Firefox */
/* line 7, app/assets/stylesheets/components/_scrollbar.scss */
.scrollbar-hide {
  -ms-overflow-style: none;
  /* IE and Edge */
  scrollbar-width: none;
  /* Firefox */
}

/* line 1, app/assets/stylesheets/components/_pao_visual.scss */
.direct-upload--complete {
  background-color: #a4f6d9 !important;
  opacity: 1 !important;
  border: none !important;
  color: #045045 !important;
}

/* line 8, app/assets/stylesheets/components/_pao_visual.scss */
.pao-uploaded-file {
  margin-top: 8px;
  color: #007c67;
}

/* line 12, app/assets/stylesheets/components/_pao_visual.scss */
.pao-uploaded-file::before {
  content: "";
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="size-6"><path stroke-linecap="round" stroke-linejoin="round" d="m4.5 12.75 6 6 9-13.5"/></svg>');
  display: inline-block;
  width: 12px;
  height: 12px;
  margin-right: 4px;
  vertical-align: middle;
}

/* Checkout mini-cart — port fidèle du prototype PAO Visuals V8.10. */
/* line 2, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-page-shell {
  min-height: 100vh;
  background: #f3f4f3;
}

/* line 7, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-page-grid {
  width: calc(100% - 40px);
  max-width: 1180px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 340px;
  gap: 22px;
  align-items: start;
}

/* line 17, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-main-content {
  min-width: 0;
  padding: 8px 0 32px;
  display: flex;
  flex-direction: column;
  text-align: center;
}

/* line 25, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-main-content-inner {
  width: 100%;
  min-width: 0;
  display: flex;
  flex: 1;
  flex-direction: column;
  transition: opacity 200ms ease-out;
}

/* line 34, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-cart-rail {
  min-width: 0;
  /* Au repos, le panier démarre à hauteur de la première carte de l'étape :
     l'offset est mesuré par l'orchestrateur (la hauteur du chapeau dépend du
     contenu). Au scroll, la règle `sticky` du panier reprend la main. */
  padding: var(--cart-rail-offset, 27px) 0 32px;
  align-self: stretch;
  /* Surtout PAS de transition ici : l'alignement se corrige en lisant le
     padding courant, et une valeur en cours d'animation faisait sous-corriger
     chaque passe — le panier n'atteignait jamais son repère. */
}

/* Shipping B (#298) : pages sans rail panier desktop (content_for
   :checkout_hide_cart) — le panier mobile replié reste servi par les
   media queries plus bas. */
@media (min-width: 861px) {
  /* line 50, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-page-grid--no-cart-rail {
    grid-template-columns: minmax(0, 1fr);
  }
  /* line 54, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-page-grid--no-cart-rail .checkout-cart-rail {
    display: none;
  }
}

/* line 59, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-cart-column {
  min-width: 0;
  height: 100%;
}

/* line 64, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-cart-mobile-nav,
.checkout-cart-column > [data-controller="stepper"] {
  display: none;
}

/* line 69, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-cart {
  position: sticky;
  top: 80px;
  min-width: 0;
}

/* line 75, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-cart-card {
  min-width: 0;
  max-height: calc(100vh - 96px);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  color: #17201d;
  background: #fff;
  border: 1px solid #dcded9;
  border-radius: 14px;
  box-shadow: 0 14px 40px rgba(20, 34, 29, 0.07);
}

/* line 88, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-cart-header {
  flex: 0 0 auto;
  padding: 16px 16px 13px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  border-bottom: 1px solid #e3e6e2;
}

/* line 98, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-cart-caret {
  display: none;
  width: 0;
  height: 0;
  border-left: 5px solid #064d42;
  border-top: 4px solid transparent;
  border-bottom: 4px solid transparent;
  transition: transform 0.15s ease;
}

/* line 108, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-cart--open .checkout-mini-cart-caret {
  transform: rotate(90deg);
}

/* line 112, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-cart-header-total {
  display: none;
  margin-left: auto;
  color: #17201d;
  font-size: 0.8rem;
  font-weight: 800;
  white-space: nowrap;
}

/* line 121, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-cart-header-total small {
  color: #65716d;
  font-size: 0.55rem;
}

/* line 126, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-cart-body {
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
}

/* line 133, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-cart-header h2 {
  margin: 0;
  color: #17201d;
  font-size: 1.05rem;
  font-weight: 800;
  line-height: 1;
}

/* line 141, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-cart-products {
  flex: 1 1 auto;
  min-height: 96px;
  overflow-y: auto;
  -ms-scroll-chaining: none;
      overscroll-behavior: contain;
  /* Ombres de scroll : les voiles blancs (attachment local) suivent le contenu
     et recouvrent les ombres radiales quand on atteint un bord, donc l'ombre
     n'apparaît que s'il reste des articles cachés dans ce sens. */
  background: linear-gradient(#fff 30%, rgba(255, 255, 255, 0)) center top, linear-gradient(rgba(255, 255, 255, 0), #fff 70%) center bottom, radial-gradient(farthest-side at 50% 0, rgba(6, 29, 26, 0.18), transparent) center top, radial-gradient(farthest-side at 50% 100%, rgba(6, 29, 26, 0.18), transparent) center bottom;
  background-repeat: no-repeat;
  background-size: 100% 34px, 100% 34px, 100% 12px, 100% 12px;
  background-attachment: local, local, scroll, scroll;
}

/* line 159, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-product-more {
  min-width: 0;
  grid-column: 2;
  grid-row: 2;
}

/* line 165, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-product-more summary {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: #65716d;
  font-size: 0.6rem;
  font-weight: 400;
  line-height: 1.3;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  list-style: none;
}

/* line 178, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-product-more summary::-webkit-details-marker {
  display: none;
}

/* line 182, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-product-more summary::before {
  content: "";
  width: 0;
  height: 0;
  border-left: 4px solid currentColor;
  border-top: 3px solid transparent;
  border-bottom: 3px solid transparent;
  transition: transform 0.15s ease;
}

/* line 192, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-product-more[open] summary::before {
  transform: rotate(90deg);
}

/* line 196, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-product-more ul {
  margin: 3px 0 0;
  padding-left: 14px;
  color: #65716d;
  font-size: 0.54rem;
  line-height: 1.5;
  list-style: disc;
}

/* line 205, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-product {
  min-width: 0;
  padding: 6px 10px 3px;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  grid-template-rows: auto auto;
  -moz-column-gap: 8px;
       column-gap: 8px;
  row-gap: 0;
  align-items: start;
  border-bottom: 1px solid #eceeeb;
}

/* line 217, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-product-art {
  grid-column: 1;
  grid-row: 1 / 3;
  align-self: start;
  width: 42px;
  height: 42px;
  /* FLEX, pas grid : la piste de grille auto GRANDISSAIT à la hauteur de
     l'image (une portrait faisait 56 px), et `max-height: 100 %` référençait
     alors cette piste, plus la case — l'image débordait et se faisait
     tronquer. En flex, la hauteur définie (42 px) contraint enfin le max. */
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  color: #4b5563;
  /* Fond BLANC, comme l'aperçu de l'étape : une vignette « page entière »
     posée sur du blanc y est lisible et cohérente d'un écran à l'autre. */
  background: #fff;
  border: 1px solid rgba(0, 63, 56, 0.14);
  border-radius: 8px;
}

/* line 239, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-product-preview {
  /* `max-*` + `auto`, PAS `height: 100%` : dans la case `display: grid`, une
     hauteur en % ne se résout pas et l'image gardait sa hauteur intrinsèque
     — une vignette PORTRAIT (ex. 407×576) débordait la case et `overflow:
     hidden` la TRONQUAIT (haut/bas coupés). Contrainte par le max, centrée
     par la case, elle tient entière. */
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  display: block;
  -o-object-fit: contain;
     object-fit: contain;
  background: #fff;
}

/* line 254, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-product-file {
  width: 100%;
  height: 100%;
  padding: 3px;
  display: grid;
  place-content: center;
  gap: 1px;
  color: #24594f;
  background: linear-gradient(135deg, #e8f7f1, #f8fbfa);
  text-align: center;
}

/* line 266, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-product-file i {
  overflow: hidden;
  font-size: 0.48rem;
  font-style: normal;
  font-weight: 900;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

/* line 275, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-product-file b {
  color: #63706b;
  font-size: 0.36rem;
  line-height: 1;
}

/* line 281, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-product-file--bat {
  color: #fff;
  background: #064d42;
}

/* line 286, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-product-file--bat b {
  color: #dff4ed;
}

/* line 290, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-product--no-art {
  grid-template-columns: minmax(0, 1fr) auto;
}

/* line 294, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-product--no-art .checkout-mini-product-title,
.checkout-mini-product--no-art .checkout-mini-product-more {
  grid-column: 1;
}

/* line 299, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-product--no-art .checkout-mini-product-price,
.checkout-mini-product--no-art .checkout-mini-product-actions {
  grid-column: 2;
}

/* line 304, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-product-copy {
  display: contents;
}

/* line 308, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-product-title {
  min-width: 0;
  grid-column: 2;
  grid-row: 1;
  align-self: start;
  overflow-wrap: anywhere;
  color: #17201d;
  font-size: 0.66rem;
  font-weight: 800;
  line-height: 1.15;
  white-space: normal;
}

/* line 321, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-product-title-dimensions {
  display: block;
}

/* line 325, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-product-price {
  grid-column: 3;
  grid-row: 1;
  align-self: start;
  justify-self: end;
  line-height: 1.15;
  color: #17201d;
  font-size: 0.66rem;
  white-space: nowrap;
}

/* line 336, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-product-price small {
  color: #65716d;
  font-size: 0.48rem;
}

/* line 341, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-serenity {
  flex: 0 0 auto;
  padding: 8px 10px;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  -moz-column-gap: 8px;
       column-gap: 8px;
  align-items: start;
  border-bottom: 1px solid #eceeeb;
  background: #fbfcfb;
}

/* line 352, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-serenity-badge {
  width: 42px;
  height: 26px;
  display: grid;
  place-items: center;
  color: #24594f;
  background: #e8f7f1;
  border: 1px solid rgba(0, 63, 56, 0.14);
  border-radius: 8px;
  font-size: 0.7rem;
  font-weight: 800;
}

/* line 365, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-serenity-copy {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}

/* line 372, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-serenity-copy strong {
  color: #17201d;
  font-size: 0.66rem;
  font-weight: 800;
  line-height: 1.15;
}

/* line 379, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-serenity-cta {
  align-self: flex-start;
  color: #064d42;
  font-size: 0.6rem;
  font-weight: 700;
  line-height: 1.3;
  text-decoration: underline;
  text-underline-offset: 2px;
}

/* line 389, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-serenity-cta:hover,
.checkout-mini-serenity-cta:focus-visible {
  color: #043a32;
}

/* line 394, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-serenity-price {
  color: #17201d;
  font-size: 0.66rem;
  line-height: 1.15;
  white-space: nowrap;
}

/* line 401, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-comment {
  flex-shrink: 0;
  padding: 11px 14px 12px;
  border-bottom: 1px solid #eceeeb;
  background: #fbfcfb;
}

/* line 408, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-comment header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

/* line 415, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-comment header strong {
  font-size: 0.67rem;
}

/* line 419, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-comment header a {
  width: 32px;
  height: 32px;
  padding: 7px;
  display: grid;
  place-items: center;
  border-radius: 7px;
  color: #65716d;
  text-decoration: none;
}

/* line 430, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-comment header a:hover,
.checkout-mini-comment header a:focus-visible {
  color: #064d42;
  background: #edf5f2;
}

/* line 436, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-comment header svg {
  width: 16px;
  height: 16px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
}

/* line 444, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-comment p {
  margin: 4px 0 0;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  color: #5f6b67;
  font-size: 0.6rem;
  line-height: 1.45;
  white-space: pre-wrap;
}

/* line 456, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-product-actions {
  grid-column: 3;
  grid-row: 2;
  align-self: start;
  justify-self: end;
  display: flex;
  justify-content: flex-end;
  gap: 2px;
}

/* line 466, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-product-actions a,
.checkout-mini-discount a {
  display: grid;
  place-items: center;
  color: #65716d;
  background: transparent;
  border: 0;
  border-radius: 8px;
  text-decoration: none;
}

/* line 477, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-product-actions a {
  width: 30px;
  height: 28px;
}

/* line 482, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-product-actions a:hover,
.checkout-mini-product-actions a:focus-visible,
.checkout-mini-discount a:hover,
.checkout-mini-discount a:focus-visible {
  color: #064d42;
  background: #edf5f2;
  outline: none;
}

/* line 491, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-product-actions a.danger:hover,
.checkout-mini-product-actions a.danger:focus-visible {
  color: #a43a31;
  background: #fff0ee;
}

/* line 497, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-product-actions svg {
  width: 15px;
  height: 15px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.4;
}

/* line 505, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-discounts {
  flex: 0 0 auto;
  margin: 0;
  padding: 10px 15px;
  display: grid;
  gap: 7px;
  color: #63706b;
  background: #fbfcfb;
  border-bottom: 1px solid #e3e6e2;
  font-size: 0.62rem;
}

/* line 517, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-discounts > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

/* line 524, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-discounts dt,
.checkout-mini-discounts dd {
  margin: 0;
}

/* line 529, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-discount dt {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 5px;
}

/* line 536, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-discount dt span {
  min-width: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 3px;
}

/* line 543, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-discount a {
  width: 30px;
  height: 30px;
  flex: 0 0 auto;
}

/* line 549, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-promo {
  flex: 0 0 auto;
  padding: 12px 16px 14px;
  border-bottom: 1px solid #e3e6e2;
}

/* line 555, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-promo:empty {
  display: none;
}

/* line 559, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-promo details,
.checkout-mini-promo summary {
  margin: 0;
}

/* line 564, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-promo summary {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  color: #24594f;
  cursor: pointer;
  font-size: 0.63rem;
  font-weight: 800;
  list-style-position: inside;
}

/* line 573, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-promo-form {
  margin-top: 10px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 7px;
  align-items: end;
}

/* line 581, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-promo-field,
.checkout-mini-promo-field .input {
  min-width: 0;
  margin: 0;
}

/* line 587, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-promo-field input {
  width: 100%;
  min-width: 0;
  height: 38px;
  padding: 0 10px;
  color: #17201d;
  background: #fff;
  border: 1px solid #cfd5d2;
  border-radius: 7px;
  font-size: 0.7rem;
}

/* line 599, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-promo-form input[type="submit"] {
  min-height: 38px;
  padding: 0 12px;
  color: #fff;
  background: #064d42;
  border: 0;
  border-radius: 7px;
  cursor: pointer;
  font-size: 0.66rem;
  font-weight: 800;
}

/* line 611, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-totals {
  flex: 0 0 auto;
  padding: 12px 15px;
}

/* line 616, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-totals p {
  margin: 0;
  padding: 5px 0;
  display: flex;
  justify-content: space-between;
  gap: 12px;
  color: #63706b;
  font-size: 0.63rem;
}

/* line 626, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-totals strong {
  color: #17201d;
  white-space: nowrap;
}

/* line 631, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-total-ttc {
  margin-top: 6px !important;
  padding-top: 12px !important;
  color: #17201d !important;
  border-top: 1px solid #dfe3df;
  font-size: 0.8rem !important;
  font-weight: 850;
}

/* line 640, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-total-ttc strong {
  font-size: 1.05rem;
}

/* line 644, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-loyalty {
  flex: 0 0 auto;
  padding: 9px 14px;
  color: #66736e;
  background: #fbfcfb;
  border-top: 1px solid #eceeeb;
  font-size: 0.55rem;
}

/* line 653, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-loyalty p {
  margin: 0;
}

/* line 657, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-loyalty p + p {
  margin-top: 3px;
}

/* line 661, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-payments {
  min-height: 48px;
  flex: 0 0 auto;
  padding: 8px 14px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 6px;
  background: #f4f8f6;
  border-top: 1px solid #dfe3df;
}

/* line 674, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-payments img {
  height: 15px;
  width: auto;
  padding: 3px 5px;
  box-sizing: content-box;
  background: #fff;
  border: 1px solid #dfe3df;
  border-radius: 5px;
}

/* Le badge Klarna est déjà une pastille rose : pas de chip blanche autour. */
/* line 685, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-payments img.checkout-mini-payments-badge {
  height: 23px;
  padding: 0;
  background: transparent;
  border: 0;
}

@media (max-width: 860px) {
  /* line 693, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-page-grid {
    display: flex;
    flex-direction: column;
    gap: 16px;
  }
  /* line 699, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-main-content {
    width: 100%;
    order: 2;
  }
  /* line 704, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-cart-rail {
    width: 100%;
    max-width: 100%;
    padding: 0;
    order: 1;
  }
  /* line 711, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-mini-cart {
    width: 100%;
    max-width: 100%;
    position: static;
  }
  /* Panier repliable façon legacy : fermé, le header garde « Panier (N) »
     et le total TTC ; le triangle indique qu'on peut l'ouvrir. */
  /* line 719, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-mini-cart-header {
    cursor: pointer;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
  }
  /* line 724, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-mini-cart-caret {
    display: inline-block;
  }
  /* line 728, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-mini-cart-header-total {
    display: inline-flex;
    align-items: baseline;
    gap: 3px;
  }
  /* line 734, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-mini-cart-body {
    display: none;
  }
  /* line 738, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-mini-cart--open .checkout-mini-cart-body {
    display: flex;
  }
}

/* Écran peu haut en desktop : le sticky + max-height empêcheraient de voir
   le pied du panier (totaux TTC) ; on libère le rail pour qu'il scrolle
   avec la page à sa hauteur naturelle. */
@media (min-width: 861px) and (max-height: 720px) {
  /* line 747, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-mini-cart {
    position: static;
  }
  /* line 751, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-mini-cart-card {
    max-height: none;
  }
  /* line 755, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-mini-cart-products {
    flex: 0 0 auto;
    min-height: 0;
    overflow: visible;
    background: none;
  }
}

@media (max-width: 767px) {
  /* line 764, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-page-grid {
    width: calc(100% - 16px);
    display: flex;
    flex-direction: column;
    gap: 10px;
  }
  /* line 771, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-main-content {
    width: 100%;
    padding: 0 0 24px;
    order: 2;
  }
  /* line 777, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-cart-rail {
    width: 100%;
    max-width: 100%;
    padding: 0;
    order: 1;
  }
  /* line 784, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-cart-mobile-nav {
    min-height: 52px;
    margin: 0 -8px;
    padding: 8px 12px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    color: #fff;
    background: #111;
  }
  /* line 796, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-cart-mobile-back {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #fff;
    font-size: 0.68rem;
    text-decoration: none;
  }
  /* line 806, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-cart-mobile-logo {
    min-width: 44px;
    min-height: 44px;
    display: grid;
    place-items: center;
  }
  /* line 813, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-cart-mobile-logo svg {
    width: 78px;
    max-height: 30px;
  }
  /* line 818, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-cart-column > [data-controller="stepper"] {
    margin: 0 -8px 10px;
    padding: 6px 12px 11px;
    display: block;
    background: #064d42;
  }
  /* line 825, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-mini-cart {
    width: 100%;
    max-width: 100%;
    position: static;
  }
  /* line 831, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-mini-cart-card {
    max-height: none;
    overflow: visible;
  }
  /* line 836, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-mini-cart-products {
    min-height: 0;
    overflow: visible;
    background: none;
  }
  /* line 842, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-mini-product-more summary {
    min-height: 36px;
  }
  /* line 846, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-mini-product {
    grid-template-columns: 40px minmax(0, 1fr) auto;
    grid-template-rows: auto minmax(44px, auto);
    padding: 5px 9px;
  }
  /* line 852, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-mini-product-art {
    width: 40px;
    height: 40px;
    grid-row: 1 / 3;
  }
  /* line 858, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-mini-product-title {
    grid-column: 2;
    grid-row: 1;
  }
  /* line 863, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-mini-product-more {
    grid-column: 2;
    grid-row: 2;
  }
  /* line 868, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-mini-product-price {
    grid-column: 3;
    grid-row: 1;
    justify-self: end;
  }
  /* line 874, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-mini-product-actions {
    grid-column: 3;
    grid-row: 2;
  }
  /* line 879, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-mini-product-actions a,
.checkout-mini-comment header a,
.checkout-mini-discount a {
    width: 44px;
    height: 44px;
    min-height: 44px;
  }
  /* line 887, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-mini-product-actions svg {
    width: 18px;
    height: 18px;
  }
  /* line 892, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-mini-promo summary {
    min-height: 44px;
    display: flex;
    align-items: center;
  }
  /* line 898, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-mini-promo-field input,
.checkout-mini-promo-form input[type="submit"] {
    min-height: 44px;
  }
  /* line 903, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-mini-totals {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    -moz-column-gap: 18px;
         column-gap: 18px;
  }
  /* line 909, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-mini-totals p {
    min-width: 0;
    gap: 4px;
  }
  /* line 914, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-mini-total-ttc {
    grid-column: 2;
    grid-row: 1 / span 2;
    margin: 0 !important;
    padding: 0 0 0 14px !important;
    align-items: center;
    border-top: 0;
    border-left: 1px solid #dfe3df;
  }
}

@media (max-width: 430px) {
  /* line 926, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-mini-promo-form {
    grid-template-columns: 1fr;
  }
  /* line 930, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-mini-promo-form input[type="submit"] {
    width: 100%;
  }
}

@media (max-width: 340px) {
  /* line 936, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-mini-product {
    grid-template-columns: 30px minmax(0, 1fr) auto;
    -moz-column-gap: 6px;
         column-gap: 6px;
  }
  /* line 941, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-mini-product-actions {
    gap: 0;
  }
  /* line 945, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-mini-totals {
    -moz-column-gap: 10px;
         column-gap: 10px;
  }
  /* line 949, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-mini-total-ttc {
    padding-left: 9px !important;
  }
  /* line 953, app/assets/stylesheets/components/_checkout_mini_cart.scss */
  .checkout-mini-total-ttc strong {
    font-size: 0.95rem;
  }
}

/* Le virement n'a pas de logo de marque : une pastille sobre, alignée sur
   la hauteur des autres moyens de paiement. */
/* line 960, app/assets/stylesheets/components/_checkout_mini_cart.scss */
.checkout-mini-payments-wire {
  display: inline-flex;
  align-items: center;
  padding: 0 .5rem;
  height: 1.5rem;
  border: 1px solid #d7dcd9;
  border-radius: .3rem;
  background: #fff;
  color: #3d4a45;
  font-size: .62rem;
  font-weight: 800;
  letter-spacing: .02em;
  text-transform: uppercase;
}

/* line 1, app/assets/stylesheets/pages/_pao-visuals.scss */
.direct-upload__progress {
  background-color: #84cc16 !important;
}

/* line 1, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b {
  --pao-b-ink: #141917;
  --pao-b-muted: #4f5e59;
  --pao-b-line: #dfe6e3;
  --pao-b-deep: #003f38;
  --pao-b-green: #006c5d;
  --pao-b-mint: #20c8ac;
  color: var(--pao-b-ink);
  text-align: left;
}

/* line 11, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b *, .checkout-pao-visuals-b *::before, .checkout-pao-visuals-b *::after {
  box-sizing: border-box;
}

/* line 12, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b [hidden] {
  display: none !important;
}

/* line 14, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-guidance {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin: 24px 0 12px;
  padding: 12px 14px;
  border: 1px solid #cfe5df;
  border-radius: 10px;
  background: #eef9f5;
  color: var(--pao-b-deep);
  font-size: .78rem;
}

/* line 27, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-guidance span {
  color: var(--pao-b-muted);
}

/* line 28, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-list {
  display: grid;
  gap: 12px;
}

/* line 31, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-card {
  min-width: 0;
  min-height: 144px;
  display: grid;
  grid-template-columns: 144px minmax(0, 1fr);
  align-items: stretch;
  overflow: hidden;
  border: 1px solid var(--pao-b-line);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(10, 41, 35, 0.06);
}

/* line 43, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-upload-shell {
  width: 144px;
  min-width: 0;
  align-self: stretch;
  position: relative;
  overflow: hidden;
  border-radius: 11px 0 0 11px;
}

/* line 51, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-dropzone {
  width: 100%;
  height: 100%;
  min-height: 144px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 9px;
  border: 2px dashed #75bbaa;
  border-radius: 11px 0 0 11px;
  color: var(--pao-b-deep);
  background: #f4fcf9;
  cursor: pointer;
  text-align: center;
  transition: border-color var(--checkout-motion-fast) var(--checkout-motion-ease), background var(--checkout-motion-fast) var(--checkout-motion-ease), transform var(--checkout-motion-fast) var(--checkout-motion-ease);
}

/* line 69, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-dropzone:hover,
.checkout-pao-visuals-b .pao-b-upload-shell.is-dragging .pao-b-dropzone {
  border-color: var(--pao-b-mint);
  background: #eafaf5;
  transform: translateY(-1px);
}

/* line 75, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-dropzone:focus-visible,
.checkout-pao-visuals-b button:focus-visible,
.checkout-pao-visuals-b input:focus-visible,
.checkout-pao-visuals-b textarea:focus-visible,
.checkout-pao-visuals-b a:focus-visible {
  outline: 3px solid rgba(0, 108, 93, 0.35);
  outline-offset: 3px;
}

/* line 83, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-upload-icon {
  width: 34px;
  height: 34px;
  margin-bottom: 3px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: var(--pao-b-green);
  background: #fff;
  box-shadow: 0 6px 18px rgba(0, 108, 93, 0.12);
}

/* line 94, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b svg {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* line 95, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-upload-icon svg {
  width: 19px;
  height: 19px;
}

/* line 96, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-dropzone strong {
  font-size: .72rem;
}

/* line 97, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-dropzone small {
  color: var(--pao-b-muted);
  font-size: .62rem;
}

/* line 98, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-dropzone em {
  margin-top: 3px;
  color: var(--pao-b-muted);
  font-size: .625rem;
  font-style: normal;
}

/* line 100, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-preview {
  width: 100%;
  height: 100%;
  min-height: 144px;
  position: relative;
  overflow: hidden;
  background: #e9eeec;
}

/* line 110, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-preview-media {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  overflow: hidden;
  background: #fff;
}

/* line 114, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-preview-media img,
.checkout-pao-visuals-b .pao-b-preview-media canvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  background: #fff;
}

/* line 116, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-preview-media.is-file::before {
  content: attr(data-extension);
  width: 66px;
  height: 82px;
  display: grid;
  place-items: center;
  color: var(--pao-b-deep);
  background: #fff;
  border-radius: 6px 6px 14px 6px;
  font-weight: 900;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.12);
}

/* line 130, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-replace-zone {
  position: absolute;
  inset: 0;
  margin: 0;
  padding: 0;
  display: block;
  border: 0;
  background: transparent;
  cursor: pointer;
}

/* line 140, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-replace-zone:disabled {
  cursor: default;
}

/* line 141, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-replace-zone:focus-visible {
  outline: 3px solid var(--pao-b-mint);
  outline-offset: -3px;
}

/* line 143, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-view-overlay {
  width: 28px;
  height: 28px;
  position: absolute;
  top: 8px;
  right: 8px;
  z-index: 3;
  display: grid;
  place-items: center;
  padding: 0;
  border: 2px solid rgba(255, 255, 255, 0.92);
  border-radius: 50%;
  color: var(--pao-b-deep);
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
  cursor: pointer;
}

/* line 160, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-view-overlay:hover,
.checkout-pao-visuals-b .pao-b-view-overlay:focus-visible {
  color: #fff;
  background: var(--pao-b-deep);
  outline: none;
}

/* line 162, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-view-overlay svg {
  width: 14px;
  height: 14px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
}

/* line 163, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-remove-overlay {
  width: 28px;
  height: 28px;
  position: absolute;
  bottom: 8px;
  left: 8px;
  z-index: 3;
  display: grid;
  place-items: center;
  padding: 0;
  border: 2px solid rgba(255, 255, 255, 0.92);
  border-radius: 50%;
  color: #aa4138;
  background: rgba(255, 235, 232, 0.94);
  box-shadow: 0 4px 12px rgba(100, 25, 20, 0.11);
  cursor: pointer;
}

/* line 180, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-remove-overlay:hover,
.checkout-pao-visuals-b .pao-b-remove-overlay:focus-visible {
  color: #882d27;
  background: #ffdeda;
  outline: none;
}

/* line 182, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-remove-overlay svg {
  width: 14px;
  height: 14px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
}

/* line 183, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-file-ok {
  width: 25px;
  height: 25px;
  position: absolute;
  right: 8px;
  bottom: 8px;
  display: grid;
  place-items: center;
  border: 2px solid #fff;
  border-radius: 50%;
  color: #fff;
  background: var(--pao-b-green);
  font-size: .7rem;
  font-weight: 900;
}

/* line 199, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-progress {
  position: absolute;
  inset: 0;
  z-index: 5;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 8px;
  padding: 13px 12px;
  background: linear-gradient(155deg, #f8fcfa 0%, #e3f2ed 100%);
}

/* line 210, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-progress-icon {
  width: 34px;
  height: 34px;
  margin: 0 auto auto;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: #fff;
  background: var(--pao-b-green);
  box-shadow: 0 8px 20px rgba(0, 108, 93, 0.2);
  font-weight: 900;
}

/* line 222, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-progress-copy {
  min-width: 0;
  display: grid;
  gap: 3px;
}

/* line 223, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-progress-copy strong,
.checkout-pao-visuals-b .pao-b-progress-copy span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* line 225, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-progress-copy strong {
  font-size: .66rem;
}

/* line 226, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-progress-copy span {
  color: var(--pao-b-muted);
  font-size: .57rem;
}

/* line 227, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-progress-track {
  width: 100%;
  height: 6px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(0, 63, 56, 0.14);
}

/* line 228, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-progress-track i {
  width: 0;
  height: 100%;
  display: block;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--pao-b-green), var(--pao-b-mint));
  transition: width var(--checkout-motion-fast) linear;
}

/* line 230, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-card-content {
  min-width: 0;
  padding: 11px 14px 9px;
  display: flex;
  flex-direction: column;
}

/* line 231, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-product-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

/* line 232, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-product-title {
  margin: 0;
  color: var(--pao-b-ink);
  font-size: .94rem;
  font-weight: 800;
  line-height: 1.3;
}

/* line 233, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-price {
  flex: 0 0 auto;
  margin: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  text-align: right;
}

/* line 234, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-price strong {
  color: var(--pao-b-ink);
  font-size: .96rem;
  letter-spacing: -.03em;
  white-space: nowrap;
}

/* line 235, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-price strong span {
  color: var(--pao-b-muted);
  font-size: .56rem;
  font-style: normal;
  font-weight: 750;
  letter-spacing: .04em;
}

/* line 236, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-unit-price {
  margin-top: 5px;
  color: #68736f;
  font-size: .66rem;
  white-space: nowrap;
}

/* line 237, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-option-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 3px;
  margin-top: 6px;
}

/* line 238, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-option-pills span {
  padding: 3px 6px;
  border-radius: 5px;
  color: #4f5b57;
  background: #f2f5f4;
  font-size: .6rem;
  line-height: 1.15;
}

/* line 239, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-series {
  margin: 0 0 4px;
  color: var(--pao-b-green);
  font-size: .7rem;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: .08em;
}

/* line 240, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-status {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 7px;
  color: var(--pao-b-green);
  font-size: .7rem;
}

/* line 241, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-status strong {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* line 244, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-card[data-upload-state="empty"] .pao-b-status,
.checkout-pao-visuals-b .pao-b-card[data-upload-state="finalized"] .pao-b-status,
.checkout-pao-visuals-b .pao-b-card[data-upload-state="completed"] .pao-b-status {
  display: none;
}

/* line 248, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-card-footer {
  margin-top: auto;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 8px;
}

/* line 255, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-footer-live {
  min-width: 0;
  flex: 1;
  display: flex;
  align-items: baseline;
  gap: 4px 14px;
}

/* line 256, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-footer-live .pao-b-status {
  flex: 1;
}

/* line 257, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-card[data-upload-state="empty"] .pao-b-footer-live,
.checkout-pao-visuals-b .pao-b-card[data-upload-state="finalized"] .pao-b-footer-live,
.checkout-pao-visuals-b .pao-b-card[data-upload-state="completed"] .pao-b-footer-live {
  display: none;
}

/* line 260, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-file-details {
  min-width: 0;
  margin: 0;
  display: flex;
  align-items: baseline;
  gap: 5px;
  color: var(--pao-b-muted);
  font-size: .68rem;
}

/* line 261, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-file-details strong {
  min-width: 0;
  overflow: hidden;
  color: var(--pao-b-ink);
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* line 262, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-file-controls {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 4px 14px;
}

/* line 265, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-file-controls:not(:has(> :not([hidden]))) {
  display: none;
}

/* line 271, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-action {
  padding: 15px 4px;
  margin: -15px -4px;
  border: 0;
  color: var(--pao-b-deep);
  background: none;
  cursor: pointer;
  font: inherit;
  font-size: .69rem;
  font-weight: 600;
  line-height: 1.4;
  text-align: left;
  text-decoration: underline;
  text-underline-offset: 2px;
  transition: color var(--checkout-motion-fast) var(--checkout-motion-ease);
}

/* line 287, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-action:hover {
  color: var(--pao-b-green);
}

/* line 290, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-action:focus {
  color: var(--pao-b-green);
  outline: 2px solid currentColor;
  outline-offset: 1px;
  border-radius: 4px;
}

/* line 291, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-action-danger {
  color: #a52a1f;
}

/* line 292, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-action-danger:hover {
  color: #7c1f17;
}

/* line 293, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-action-danger:focus {
  color: #7c1f17;
  outline-color: currentColor;
}

/* line 297, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-item-actions {
  flex: 0 0 auto;
  margin-left: auto;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 2px;
}

/* line 298, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-item-action {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  border-radius: 8px;
  color: #65716d;
  background: transparent;
  text-decoration: none;
  transition: color var(--checkout-motion-fast) var(--checkout-motion-ease), background var(--checkout-motion-fast) var(--checkout-motion-ease);
}

/* line 309, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-item-action:hover,
.checkout-pao-visuals-b .pao-b-item-action:focus-visible {
  color: var(--pao-b-deep);
  background: #edf5f2;
  outline: none;
}

/* line 311, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-item-action-danger:hover,
.checkout-pao-visuals-b .pao-b-item-action-danger:focus-visible {
  color: #a43a31;
  background: #fff0ee;
}

/* line 313, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-item-action svg {
  width: 16px;
  height: 16px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
}

/* line 314, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-error {
  margin: 9px 0 0;
  color: #9a3412;
  font-size: .7rem;
  line-height: 1.35;
}

/* line 315, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-error:focus {
  outline: 2px solid #c2410c;
  outline-offset: 3px;
  border-radius: 4px;
}

/* line 316, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-readonly {
  margin-top: 10px;
  color: var(--pao-b-muted);
  font-size: .7rem;
}

/* line 317, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-pao-visuals-b .pao-b-global-status {
  max-width: 34rem;
  margin: 0 10px;
  color: #7c2d12;
  font-size: .75rem;
  font-weight: 700;
  line-height: 1.35;
}

@media (max-width: 767px) {
  /* line 320, app/assets/stylesheets/pages/_pao-visuals-b.scss */
  .checkout-pao-visuals-b .pao-b-guidance {
    align-items: flex-start;
    flex-direction: column;
    gap: 3px;
  }
  /* line 321, app/assets/stylesheets/pages/_pao-visuals-b.scss */
  .checkout-pao-visuals-b .pao-b-card {
    min-height: 112px;
    grid-template-columns: 112px minmax(0, 1fr);
  }
  /* line 322, app/assets/stylesheets/pages/_pao-visuals-b.scss */
  .checkout-pao-visuals-b .pao-b-upload-shell {
    width: 112px;
    border-radius: 8px 0 0 8px;
  }
  /* line 323, app/assets/stylesheets/pages/_pao-visuals-b.scss */
  .checkout-pao-visuals-b .pao-b-dropzone,
.checkout-pao-visuals-b .pao-b-preview {
    min-height: 112px;
    border-radius: 0;
  }
  /* line 325, app/assets/stylesheets/pages/_pao-visuals-b.scss */
  .checkout-pao-visuals-b .pao-b-dropzone {
    padding: 7px;
  }
  /* line 326, app/assets/stylesheets/pages/_pao-visuals-b.scss */
  .checkout-pao-visuals-b .pao-b-dropzone em {
    display: none;
  }
  /* line 327, app/assets/stylesheets/pages/_pao-visuals-b.scss */
  .checkout-pao-visuals-b .pao-b-card-content {
    padding: 9px 11px 8px;
  }
  /* line 328, app/assets/stylesheets/pages/_pao-visuals-b.scss */
  .checkout-pao-visuals-b .pao-b-view-overlay {
    width: 44px;
    height: 44px;
    top: 5px;
    right: 5px;
  }
  /* line 329, app/assets/stylesheets/pages/_pao-visuals-b.scss */
  .checkout-pao-visuals-b .pao-b-view-overlay svg {
    width: 17px;
    height: 17px;
  }
  /* line 330, app/assets/stylesheets/pages/_pao-visuals-b.scss */
  .checkout-pao-visuals-b .pao-b-remove-overlay {
    width: 44px;
    height: 44px;
    bottom: 5px;
    left: 5px;
  }
  /* line 331, app/assets/stylesheets/pages/_pao-visuals-b.scss */
  .checkout-pao-visuals-b .pao-b-remove-overlay svg {
    width: 16px;
    height: 16px;
  }
  /* line 332, app/assets/stylesheets/pages/_pao-visuals-b.scss */
  .checkout-pao-visuals-b .pao-b-item-action {
    width: 44px;
    height: 44px;
  }
}

@media (max-width: 430px) {
  /* line 336, app/assets/stylesheets/pages/_pao-visuals-b.scss */
  .checkout-pao-visuals-b .pao-b-card {
    min-height: 98px;
    grid-template-columns: 98px minmax(0, 1fr);
  }
  /* line 337, app/assets/stylesheets/pages/_pao-visuals-b.scss */
  .checkout-pao-visuals-b .pao-b-upload-shell {
    width: 98px;
  }
  /* line 338, app/assets/stylesheets/pages/_pao-visuals-b.scss */
  .checkout-pao-visuals-b .pao-b-dropzone,
.checkout-pao-visuals-b .pao-b-preview {
    min-height: 98px;
  }
  /* line 340, app/assets/stylesheets/pages/_pao-visuals-b.scss */
  .checkout-pao-visuals-b .pao-b-upload-icon {
    width: 28px;
    height: 28px;
  }
  /* line 341, app/assets/stylesheets/pages/_pao-visuals-b.scss */
  .checkout-pao-visuals-b .pao-b-dropzone strong {
    max-width: 86px;
    font-size: .64rem;
  }
  /* line 342, app/assets/stylesheets/pages/_pao-visuals-b.scss */
  .checkout-pao-visuals-b .pao-b-dropzone small {
    font-size: .55rem;
  }
  /* line 343, app/assets/stylesheets/pages/_pao-visuals-b.scss */
  .checkout-pao-visuals-b .pao-b-card-content {
    padding: 8px 10px 7px;
  }
  /* line 345, app/assets/stylesheets/pages/_pao-visuals-b.scss */
  .checkout-pao-visuals-b .pao-b-view-overlay {
    width: 36px;
    height: 36px;
  }
  /* line 346, app/assets/stylesheets/pages/_pao-visuals-b.scss */
  .checkout-pao-visuals-b .pao-b-remove-overlay {
    width: 36px;
    height: 36px;
  }
  /* line 347, app/assets/stylesheets/pages/_pao-visuals-b.scss */
  .checkout-pao-visuals-b .pao-b-file-ok {
    width: 22px;
    height: 22px;
    font-size: .6rem;
  }
}

/* Consigne d'usage : une phrase sous le titre, pas un encadré. Elle informe,
   elle ne réclame pas l'attention que méritait le visuel du client. */
/* Un chapô se lit à gauche, dans l'axe du contenu qu'il annonce — centré,
   il flottait au-dessus de la page sans s'y rattacher. */
/* line 355, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.pao-b-intro {
  margin: 0 0 18px;
  max-width: 46rem;
  color: #4f5e59;
  font-size: .9rem;
  line-height: 1.5;
}

/* line 363, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.checkout-one-page .pao-b-intro {
  margin-top: 2px;
}

/* Le commentaire est une option rare : un bouton discret suffit, l'encadré
   qui l'annonçait pesait autant que l'étape elle-même. */
/* line 367, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.pao-b-comment-toggle {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  padding: .4rem .8rem;
  border-radius: 999px;
  color: #4f5e59;
  font-size: .8rem;
  font-weight: 600;
  cursor: pointer;
  list-style: none;
  transition: color var(--checkout-motion-fast) var(--checkout-motion-ease);
}

/* line 381, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.pao-b-comment-toggle::-webkit-details-marker {
  display: none;
}

/* line 383, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.pao-b-comment-toggle:hover {
  color: var(--pao-b-green, #006c5d);
}

/* line 389, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.pao-b-comment {
  display: block;
  width: 100%;
  text-align: center;
}

/* line 390, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.pao-b-comment > .pao-b-comment-toggle {
  display: inline-flex;
}

/* line 393, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.pao-b-comment-field {
  width: 100%;
  margin-inline: auto;
  text-align: left;
}

@media (min-width: 768px) {
  /* line 394, app/assets/stylesheets/pages/_pao-visuals-b.scss */
  .pao-b-comment-field {
    width: 75%;
  }
}

/* line 395, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.pao-b-comment-status[data-state="saving"] {
  color: #6b7280;
}

/* line 396, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.pao-b-comment-status[data-state="saved"] {
  color: var(--pao-b-green, #006c5d);
}

/* line 397, app/assets/stylesheets/pages/_pao-visuals-b.scss */
.pao-b-comment-status[data-state="error"] {
  color: #b45309;
  font-style: normal;
}

/* line 1, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-shell {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 68vh;
  padding: 2rem 1rem 4rem;
}

/* line 10, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-flow {
  max-width: 560px;
  width: 100%;
}

/* line 15, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-card {
  max-width: 560px;
  width: 100%;
  border: 1px solid rgba(3, 99, 83, 0.14);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 18px 60px rgba(1, 45, 40, 0.08);
  padding: clamp(1.35rem, 4vw, 2.4rem);
  text-align: left;
}

/* line 26, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-heading {
  margin-bottom: 1.5rem;
}

/* line 27, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-heading--compact {
  margin-bottom: 1rem;
}

/* line 31, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-heading--above {
  margin-bottom: 1.2rem;
  text-align: center;
}

/* line 35, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-heading--above p {
  color: #66736f;
  margin: 0;
}

/* line 38, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-sr-only {
  clip: rect(0, 0, 0, 0);
  border: 0;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

/* line 50, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-kicker {
  color: #036353;
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .12em;
  margin: 0 0 .35rem;
  text-transform: uppercase;
}

/* line 58, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-heading h1 {
  color: #012d28;
  font-size: clamp(1.55rem, 4vw, 2rem);
  font-weight: 800;
  line-height: 1.1;
  margin: 0 0 .45rem;
}

/* line 65, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-heading p:last-child {
  color: #66736f;
  margin: 0;
}

/* line 67, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-form label {
  color: #203c37;
  display: block;
  font-size: .84rem;
  font-weight: 700;
  margin-bottom: .45rem;
}

/* line 74, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-row {
  display: flex;
  gap: .65rem;
}

/* line 75, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-row input:not([type="submit"]) {
  border: 1px solid #c9d5d2;
  border-radius: 8px;
  color: #012d28;
  flex: 1 1 auto;
  min-width: 0;
  padding: .85rem 1rem;
}

/* line 83, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-row input:focus {
  border-color: #0abf98;
  box-shadow: 0 0 0 3px rgba(10, 191, 152, 0.15);
  outline: 0;
}

/* line 89, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-row input[data-checkout-login-target="otp"] {
  background: #ecfdf5;
  border-color: #b5e3d4;
  letter-spacing: .08em;
}

/* line 94, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-row input[type="submit"] {
  background: #036353;
  border: 0;
  border-radius: 8px;
  color: #fff;
  cursor: pointer;
  font-weight: 800;
  padding: .85rem 1.15rem;
  transition: background .18s ease, transform .18s ease;
}

/* line 104, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-row input[type="submit"]:hover {
  background: #009b7d;
  transform: translateY(-1px);
}

/* line 105, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-help {
  color: #71807c;
  font-size: .8rem;
  margin: .65rem 0 0;
}

/* line 108, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-form--stacked .checkout-login-field {
  margin-bottom: .9rem;
}

/* line 111, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-form--stacked .checkout-login-field input {
  border: 1px solid #c9d5d2;
  border-radius: 8px;
  color: #012d28;
  display: block;
  padding: .85rem 1rem;
  width: 100%;
}

/* line 119, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-form--stacked .checkout-login-field input:focus {
  border-color: #0abf98;
  box-shadow: 0 0 0 3px rgba(10, 191, 152, 0.15);
  outline: 0;
}

/* line 126, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-optional {
  border: 1px dashed #c9d5d2;
  border-radius: 10px;
  margin: 1.2rem 0;
  padding: 1rem 1.1rem;
}

/* line 132, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-optional legend {
  color: #203c37;
  font-size: .84rem;
  font-weight: 700;
  padding: 0 .4rem;
}

/* line 139, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-submit {
  background: #036353;
  border: 0;
  border-radius: 8px;
  color: #fff;
  cursor: pointer;
  font-weight: 800;
  padding: .85rem 1.15rem;
  transition: background .18s ease;
  width: 100%;
}

/* line 150, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-submit:hover {
  background: #009b7d;
}

/* line 152, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-errors {
  background: #fff1f3;
  border: 1px solid #ffccd5;
  border-radius: 8px;
  color: #b3213c;
  font-size: .85rem;
  margin-bottom: 1rem;
  padding: .75rem 1rem;
}

/* line 163, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-website {
  height: 1px;
  left: -9999px;
  overflow: hidden;
  position: absolute;
  top: -9999px;
  width: 1px;
}

/* line 174, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-instruction {
  margin: 0 0 1.1rem;
  color: #35615a;
  font-size: .92rem;
  line-height: 1.45;
}

/* line 181, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-divider {
  align-items: center;
  color: #91a09c;
  display: flex;
  font-size: .75rem;
  gap: .75rem;
  margin: 1.2rem 0;
}

/* line 182, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-divider::before, .checkout-login-divider::after {
  background: #e2e9e7;
  content: "";
  flex: 1;
  height: 1px;
}

/* line 184, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-guidance {
  align-items: center;
  background: #ebfef7;
  border-radius: 10px;
  color: #35615a;
  display: flex;
  flex-wrap: wrap;
  font-size: .78rem;
  gap: .45rem .8rem;
  margin-top: 1.25rem;
  padding: .8rem 1rem;
}

/* line 196, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-guidance p {
  margin: 0;
}

/* line 199, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-guidance--below {
  background: transparent;
  color: #7d8a86;
  justify-content: center;
  padding: .4rem 0 0;
  text-align: center;
}

/* line 207, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-delivery {
  color: #036353;
  flex-basis: 100%;
  font-weight: 700;
}

/* line 212, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-delivery--error {
  color: #b3213c;
}

/* line 214, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-support {
  color: #91a09c;
  flex-basis: 100%;
  font-size: .74rem;
  margin-top: .6rem;
}

/* line 220, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-support a {
  color: #036353;
  text-decoration: underline;
}

/* line 222, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-resend {
  background: transparent;
  border: 0;
  color: #036353;
  cursor: pointer;
  font-weight: 800;
  padding: 0;
}

/* line 230, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-resend:disabled {
  color: #8ba09b;
  cursor: wait;
}

/* line 231, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-flow .button_to {
  display: inline;
}

/* line 232, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-change {
  background: transparent;
  border: 0;
  color: #53645f;
  cursor: pointer;
  display: inline-block;
  font-size: .8rem;
  margin-top: 1rem;
  padding: 0;
  text-decoration: underline;
}

/* line 244, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-success {
  padding: 2rem 0;
  text-align: center;
}

/* line 245, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-success p {
  color: #036353;
  font-size: 1rem;
  margin: 1rem 0 .2rem;
}

/* line 246, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-success strong {
  color: #012d28;
  display: block;
  font-size: 1.35rem;
}

/* line 247, app/assets/stylesheets/pages/_checkout-login.scss */
.checkout-login-check {
  align-items: center;
  -webkit-animation: checkout-login-pop 0.55s cubic-bezier(0.2, 0.9, 0.25, 1.35) both;
          animation: checkout-login-pop 0.55s cubic-bezier(0.2, 0.9, 0.25, 1.35) both;
  background: #0abf98;
  border-radius: 999px;
  color: #fff;
  display: inline-flex;
  font-size: 1.8rem;
  height: 64px;
  justify-content: center;
  width: 64px;
}

@-webkit-keyframes checkout-login-pop {
  from {
    opacity: 0;
    transform: scale(0.45) rotate(-12deg);
  }
  to {
    opacity: 1;
    transform: scale(1) rotate(0);
  }
}

@keyframes checkout-login-pop {
  from {
    opacity: 0;
    transform: scale(0.45) rotate(-12deg);
  }
  to {
    opacity: 1;
    transform: scale(1) rotate(0);
  }
}

@media (max-width: 560px) {
  /* line 262, app/assets/stylesheets/pages/_checkout-login.scss */
  .checkout-login-shell {
    min-height: 54vh;
    padding: 1rem .25rem 2rem;
  }
  /* line 263, app/assets/stylesheets/pages/_checkout-login.scss */
  .checkout-login-card {
    border-radius: 12px;
  }
  /* line 264, app/assets/stylesheets/pages/_checkout-login.scss */
  .checkout-login-row {
    flex-direction: column;
  }
  /* line 265, app/assets/stylesheets/pages/_checkout-login.scss */
  .checkout-login-row input[type="submit"] {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  /* line 269, app/assets/stylesheets/pages/_checkout-login.scss */
  .checkout-login-check, .checkout-login-row input[type="submit"] {
    -webkit-animation: none;
            animation: none;
    transition: none;
  }
}

/* Funnel one-page /checkout/b — shell de reprise (S0).
   Même vocabulaire visuel que les pages B (radius 12/8, vert profond). */
/* line 3, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page {
  --one-page-ink: #141917;
  --one-page-muted: #4f5e59;
  --one-page-line: #dfe6e3;
  --one-page-deep: #003f38;
  --one-page-green: #006c5d;
  color: var(--one-page-ink);
  text-align: left;
  /* Plus de carte blanche par étape : le funnel est une SUITE, pas une pile
     d'objets. Un filet sépare, le numéro et le titre situent, le contenu
     respire. Ce qui portait l'attention (fond, bordure, ombre) la dispersait
     en la répétant à chaque étape. */
  /* Le fil vertical est porté par chaque section en DEUX tronçons : au-dessus
     de sa pastille (::before) et en dessous (::after). Les segments se
     touchent aux frontières, croisent les filets séparateurs, naissent à la
     première pastille et se TERMINENT sur la dernière (« Préparation à
     l'impression »). Les pastilles, opaques, passent par-dessus.

     Pourquoi deux tronçons : le vert d'une étape franchie doit courir
     JUSQU'À la pastille suivante — pas s'arrêter au filet, en plein milieu
     du blanc, ce qui faisait un raccord cassé entre deux étapes. La bascule
     vert → gris se fait donc À la pastille de l'étape en cours. */
  /* La première pastille est la naissance du fil : rien au-dessus. */
  /* padding 40px + demi-pastille */
  /* La dernière pastille est sa terminaison : rien en dessous. */
  /* Une étape franchie teinte le fil sous sa pastille ET jusqu'à la
     pastille suivante : le vert raconte le chemin parcouru, d'une pastille
     à l'autre. */
  /* De l'air sous la navbar : l'étape 1 y était collée. */
  /* Trois états lisibles d'un coup d'œil, sans avoir à lire :
       à venir  → cercle gris, creux
       en cours → cercle vert, creux, un peu plus gros
       faite    → pastille verte pleine
     Le fil vertical relie les étapes : il montre qu'on suit un chemin, pas
     qu'on remplit des blocs indépendants. */
  /* Une étape FRANCHIE garde sa pastille pleine, même rouverte pour
     correction : c'est un acquis, pas un état d'affichage. */
  /* L'étape en cours, elle, se distingue par sa taille — pas par son
     remplissage, qui appartient au franchissement. */
  /* Toujours un h2 — c'est la hiérarchie du document — mais à la taille
     d'un titre de page : c'est le repère principal du parcours. */
  /* Sous-temps d'une étape (« 1.2 Contrôle qualité ») : présent, mais jamais
     au niveau d'une étape. */
  /* « par High Stickers » : la précision compte — c'est un humain de la
     maison, pas une étape du client — mais elle reste sous le titre. */
  /* Livraison à gauche, facturation à droite : c'est ce que le client
     vérifie avant de payer, il doit pouvoir les comparer d'un regard. */
  /* Vignette d'usage — timbre pour l'expédition, facture pour la
     facturation : le même repère que dans l'étape, en discret.
     Les deux SVG n'ont pas le même format (timbre TRÈS paysage ~3:1,
     facture portrait ~3:4) : à hauteur égale le timbre écrasait tout, à
     largeur égale il devenait un trait. L'équilibre se joue sur la masse
     perçue — timbre plus bas, facture plus haute, aires comparables. */
  /* Même crayon que le commentaire du panier : un trait, sans encadré.
     Le bouton bordé faisait un objet de plus à regarder sur une carte qui
     doit se lire d'un coup — il pesait autant que l'adresse elle-même. */
  /* Reprise DISCRÈTE (mutation du panier depuis le paiement) : l'étape
     adresses se re-finalise toute seule — son corps n'a rien à montrer, le
     déplier pour le replier une seconde plus tard faisait tout le cinéma
     que le client subissait. Le formulaire masqué se soumet très bien. */
  /* L'étape rendue en place apporte sa propre mise en page (pages B) :
     le cadre de section ne lui impose que son gouttière. */
  /* `hidden` doit l'emporter sur la mise en page. Une classe qui déclare
     `display: flex` a la MÊME spécificité que cette règle et gagnerait par
     simple ordre d'écriture : l'élément « caché » occuperait l'écran. C'est
     ce qui affichait un bandeau d'alerte VIDE de 22 px en tête du funnel, à
     chaque chargement, avant la moindre erreur.
     D'où le `!important` : « caché » est une intention sémantique, elle ne
     se négocie pas avec une règle de présentation. La règle est portée par
     le shell pour couvrir aussi les fragments injectés. */
  /* TOAST flottant, pas un bandeau en tête : le client saisit son code promo
     dans le rail, en bas de page — un message posé tout en haut lui était
     invisible (« pas de message »). Fixe et centré, il apparaît là où l'œil
     est. Sur mobile il s'étire sous la barre. */
  /* Les deux adresses restent sous les yeux pendant le paiement. */
  /* Le corps de l'étape livraison apporte sa propre mise en page. */
  /* Les briques sont conçues pour occuper leur page autonome : elles y
     réservent une hauteur d'écran (`min-height: 100vh - 15rem`) et une
     largeur fixe. Dans le shell, cette réserve devenait un grand vide sous
     l'adresse de facturation — l'étape semblait attendre quelque chose. */
  /* Un formulaire d'adresse se lit en colonne : étalé sur toute la largeur
     disponible, l'œil balaie au lieu de descendre. Réduit de 40 % sur
     desktop, pleine largeur dès que la place manque. */
  /* Le clic sur l'option VAUT validation : la carte entière est le bouton. */
  /* Le choix déjà posé : reconnaissable d'un coup d'œil quand on revient
     sur l'étape. La bordure et le fond ne font que renforcer le badge —
     l'information reste lisible sans perception des couleurs. */
}

/* line 12, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-title {
  margin: 8px 0 20px;
  font-size: 1.5rem;
  font-weight: 700;
}

/* line 18, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-sections {
  display: grid;
  /* Pas d'interstice entre les sections : le fil vertical est porté par
       chaque section sur toute sa hauteur, un `gap` de grille ouvrait 12px
       de blanc à CHAQUE jointure. La respiration vit dans le padding des
       sections. */
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}

/* line 34, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-section {
  position: relative;
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr);
  -moz-column-gap: 16px;
       column-gap: 16px;
  align-items: start;
  padding: 28px 0;
  /* 22px + les 6px que le gap de grille apportait de chaque côté */
  border-top: 1px solid var(--one-page-line);
}

/* line 54, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-section::before,
.checkout-one-page .one-page-section::after {
  content: "";
  position: absolute;
  left: 19px;
  width: 2px;
  background: var(--one-page-line);
}

/* line 63, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-section::before {
  /* -1px : le tronçon recouvre le filet séparateur (border-top de la
       section) — le fil passe DEVANT le filet, jamais coupé par lui. */
  top: -1px;
  height: 45px;
  /* jusqu'au centre de la pastille (1px de filet + padding 28px + demi-pastille) */
}

/* line 70, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-section::after {
  top: 44px;
  bottom: 0;
}

/* line 76, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-section:first-child::before {
  content: none;
}

/* line 77, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-section:first-child::after {
  top: 56px;
}

/* line 80, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-section:last-child::after {
  content: none;
}

/* line 85, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-section[data-completed="true"]::after,
.checkout-one-page .one-page-section[data-completed="true"] + .one-page-section::before {
  background: var(--one-page-green);
}

/* line 91, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-section:first-child {
  padding-top: 40px;
  border-top: 0;
}

/* line 96, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-section-head,
.checkout-one-page .one-page-section-summary,
.checkout-one-page .one-page-section-body {
  grid-column: 2;
}

/* line 102, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-section[data-state="locked"] {
  color: var(--one-page-muted);
}

/* line 106, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-section-head {
  display: grid;
  gap: 2px;
  justify-items: start;
  min-height: var(--marker-size, 32px);
}

/* line 119, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-section-marker {
  --marker-size: 32px;
  grid-column: 1;
  grid-row: 1;
  position: relative;
  /* Au-dessus du fil, TOUJOURS : le fil traverse la position des pastilles
       (il va de centre à centre), c'est leur fond opaque qui le masque. */
  z-index: 1;
  justify-self: center;
  /* Accrochée au titre, pas au défilement : rendue `sticky`, elle glissait
       le long du fil et se décrochait de l'étape qu'elle désigne. */
  width: var(--marker-size);
  height: var(--marker-size);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  border-radius: 50%;
  border: 2px solid var(--one-page-line);
  background: #fff;
  color: var(--one-page-muted);
  font-size: .85rem;
  font-weight: 700;
  transition: width var(--checkout-motion-base) var(--checkout-motion-ease), height var(--checkout-motion-base) var(--checkout-motion-ease), border-color var(--checkout-motion-base) var(--checkout-motion-ease), background var(--checkout-motion-base) var(--checkout-motion-ease);
}

/* line 150, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-section[data-completed="true"] .one-page-section-marker {
  background: var(--one-page-green);
}

/* line 154, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-section[data-completed="true"] .one-page-section-marker {
  border-color: var(--one-page-green);
  color: #fff;
}

/* line 161, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-section[data-state="open"] .one-page-section-marker {
  --marker-size: 38px;
  border-color: var(--one-page-green);
  font-size: .95rem;
}

/* line 167, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-section[data-state="open"][data-completed="false"] .one-page-section-marker {
  background: #fff;
  color: var(--one-page-deep);
}

/* line 174, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-section-title {
  flex: 1 1 auto;
  margin: 0;
  font-size: 1.55rem;
  font-weight: 700;
  line-height: 1.15;
}

/* line 182, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-section[data-state="locked"] .one-page-section-title {
  font-size: 1.25rem;
  color: var(--one-page-muted);
}

/* line 189, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-substep {
  margin-top: 26px;
}

/* line 193, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-substep-title {
  display: flex;
  align-items: baseline;
  gap: 10px;
  margin: 0 0 10px;
  font-size: 1.55rem;
  font-weight: 700;
  line-height: 1.15;
}

/* line 203, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-substep-number {
  color: var(--one-page-green);
  font-variant-numeric: tabular-nums;
}

/* line 208, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-section-edit {
  color: var(--one-page-green);
  font-size: .82rem;
  text-decoration: underline;
}

/* line 216, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-handoff-by {
  font-size: .78rem;
  font-weight: 600;
  color: var(--one-page-muted);
}

/* line 222, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-section--handoff .one-page-section-summary {
  max-width: 46rem;
}

/* line 226, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-section-summary {
  margin: 10px 0 0;
  display: grid;
  gap: 2px;
  color: var(--one-page-muted);
  font-size: .85rem;
}

/* line 236, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-addresses {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 4px;
}

/* line 243, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-address-card {
  position: relative;
  display: grid;
  gap: 2px;
  padding: 14px 16px;
  border: 1px solid var(--one-page-line);
  border-radius: 10px;
  background: #fff;
  color: var(--one-page-ink);
  font-size: .88rem;
  line-height: 1.45;
}

/* line 262, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-address-stamp {
  position: absolute;
  top: 12px;
  right: 12px;
  height: 30px;
  width: auto;
  opacity: .5;
  pointer-events: none;
}

/* line 272, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-address-stamp--billing {
  height: 46px;
}

/* line 279, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-address-edit {
  position: absolute;
  right: 6px;
  bottom: 6px;
  width: 32px;
  height: 32px;
  padding: 7px;
  display: grid;
  place-items: center;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: #65716d;
  text-decoration: none;
  transition: color var(--checkout-motion-fast) var(--checkout-motion-ease), background var(--checkout-motion-fast) var(--checkout-motion-ease);
}

/* line 297, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-address-edit:hover,
.checkout-one-page .one-page-address-edit:focus-visible {
  color: #064d42;
  background: #edf5f2;
}

/* line 303, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-address-edit svg {
  width: 16px;
  height: 16px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* line 313, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

/* line 322, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-address-role {
  margin-bottom: 4px;
  color: var(--one-page-green);
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
}

/* line 331, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-section-body {
  margin: 12px 0 0;
}

/* line 339, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-section[data-resuming="true"] .one-page-section-body {
  display: none;
}

/* line 343, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-section-hint {
  margin: 0 0 10px;
  color: var(--one-page-muted);
  font-size: .85rem;
}

/* line 349, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-section-cta {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 0 18px;
  border-radius: 8px;
  background: var(--one-page-deep);
  color: #fff;
  font-size: .9rem;
  font-weight: 600;
}

/* line 363, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-section-body .checkout-pao-visuals-b {
  padding: 0;
  min-height: 0;
}

/* line 368, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-section-cta:hover {
  background: var(--one-page-green);
  color: #fff;
}

/* line 381, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page [hidden] {
  display: none !important;
}

/* line 389, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-flash {
  position: fixed;
  top: 84px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 60;
  /* PAS `min(92vw, 30rem)` : SassC (libsass) évalue `min()` comme sa
       fonction Sass et casse sur « rem vs vw ». width + max-width donnent le
       même résultat : plafonné à 30rem, sinon ~pleine largeur sur mobile. */
  width: calc(100vw - 1.5rem);
  max-width: 30rem;
  margin: 0;
  padding: 12px 16px;
  display: flex;
  align-items: center;
  gap: 10px;
  border: 1px solid #f0d7c8;
  border-radius: 10px;
  background: #fff6f0;
  color: #7a3b17;
  font-size: .82rem;
  box-shadow: 0 12px 34px rgba(20, 34, 29, 0.16);
}

/* line 413, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-flash-retry {
  padding: 4px 10px;
  border: 1px solid currentColor;
  border-radius: 6px;
  font-size: .78rem;
  font-weight: 600;
}

/* line 422, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-pinned {
  margin: 0 0 12px;
  padding: 12px 14px;
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  border: 1px solid var(--one-page-line);
  border-radius: 10px;
  background: #f7faf9;
}

/* line 435, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-pinned-row {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
}

/* line 441, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-pinned-block p {
  margin: 2px 0 0;
  font-size: .82rem;
}

/* line 446, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-pinned-label {
  color: var(--one-page-muted);
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
}

/* line 454, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-pinned-edit {
  color: var(--one-page-green);
  font-size: .8rem;
  text-decoration: underline;
}

/* line 465, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-section-body .checkout-shipping-b,
.checkout-one-page .one-page-section-body .checkout-payment-b {
  width: 100%;
  max-width: none;
  min-height: 0;
  padding: 0;
  margin: 0;
}

@media (min-width: 900px) {
  /* line 478, app/assets/stylesheets/pages/_checkout-one-page.scss */
  .checkout-one-page .one-page-section[data-state="open"] .one-page-section-body .shipping-b__card,
.checkout-one-page .one-page-section[data-state="open"] .one-page-section-body .shipping-b__step-heading {
    width: 60%;
    min-width: 22rem;
  }
}

/* line 485, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-serenity-intro {
  margin: 0 0 12px;
  color: var(--one-page-muted);
  font-size: .85rem;
}

/* line 491, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-serenity-options {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

/* line 497, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-serenity-form {
  display: flex;
}

/* line 502, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-serenity-option {
  width: 100%;
  padding: 14px;
  display: grid;
  gap: 4px;
  align-content: start;
  text-align: left;
  border: 1px solid var(--one-page-line);
  border-radius: 10px;
  background: #fff;
  transition: border-color var(--checkout-motion-base) var(--checkout-motion-ease), background var(--checkout-motion-base) var(--checkout-motion-ease);
}

/* line 515, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-serenity-option:hover,
.checkout-one-page .one-page-serenity-option:focus-visible {
  border-color: var(--one-page-green);
  background: #f4faf8;
}

/* line 521, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-serenity-option-title {
  font-size: .95rem;
  font-weight: 600;
}

/* line 526, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-serenity-option-price {
  color: var(--one-page-deep);
  font-size: .82rem;
  font-weight: 700;
}

/* line 532, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-serenity-option-copy {
  color: var(--one-page-muted);
  font-size: .78rem;
}

/* line 540, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-serenity-option[data-chosen="true"] {
  border-color: var(--one-page-green);
  background: #f1f8f6;
  box-shadow: inset 0 0 0 1px var(--one-page-green);
}

/* line 546, app/assets/stylesheets/pages/_checkout-one-page.scss */
.checkout-one-page .one-page-serenity-option-badge {
  margin-top: 2px;
  justify-self: start;
  padding: 2px 8px;
  border-radius: 999px;
  background: var(--one-page-deep);
  color: #fff;
  font-size: .68rem;
  font-weight: 700;
}

@media (max-width: 767px) {
  /* line 559, app/assets/stylesheets/pages/_checkout-one-page.scss */
  .checkout-one-page .one-page-serenity-options {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (prefers-reduced-motion: reduce) {
  /* line 565, app/assets/stylesheets/pages/_checkout-one-page.scss */
  .checkout-one-page .one-page-serenity-option {
    transition: none;
  }
}

@media (max-width: 767px) {
  /* line 571, app/assets/stylesheets/pages/_checkout-one-page.scss */
  .checkout-one-page {
    /* Deux colonnes sur un écran étroit rendraient chaque adresse illisible :
       elles s'empilent, livraison d'abord. */
  }
  /* line 572, app/assets/stylesheets/pages/_checkout-one-page.scss */
  .checkout-one-page .one-page-section-summary,
.checkout-one-page .one-page-section-body {
    margin-left: 0;
  }
  /* line 579, app/assets/stylesheets/pages/_checkout-one-page.scss */
  .checkout-one-page .one-page-addresses {
    grid-template-columns: minmax(0, 1fr);
  }
  /* line 583, app/assets/stylesheets/pages/_checkout-one-page.scss */
  .checkout-one-page .one-page-section-title {
    font-size: 1.3rem;
  }
}

/* Facturation = livraison : un check affirmé plutôt qu'une carte « vide ». */
/* line 588, app/assets/stylesheets/pages/_checkout-one-page.scss */
.one-page-address-line--same {
  color: var(--checkout-green, #1f5f4e);
  font-weight: 600;
}

/* line 589, app/assets/stylesheets/pages/_checkout-one-page.scss */
.one-page-address-line--same > span {
  margin-right: .25rem;
}

/* line 1, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b {
  --payment-b-ink: #171a19;
  --payment-b-green: #0b6b58;
  --payment-b-line: #d8ded9;
  width: 100%;
  max-width: 820px;
  margin: 0 auto;
  color: var(--payment-b-ink);
  text-align: left;
  /* Sous les moyens, à la MÊME largeur que la colonne (34rem) — plus la carte
     pleine largeur de section qui écrasait le reste (retour owner 21/08). */
  /* Un seul rythme vertical pour TOUS les moyens de paiement (carte,
     virement, express) : la grille impose le même espace entre chacun —
     plus de filet ni de marges au cas par cas (demande owner, 20/08). */
  /* UNE seule colonne de tuiles à cocher au même gabarit (Carte dépliable,
     Klarna dans l'accordéon Stripe, Virement), puis — sous un intitulé — les
     boutons EXPRESS de marque (PayPal, Google/Apple Pay), qui ne peuvent pas
     être de simples radios (Stripe les impose comme boutons). L'ancienne
     grille 2 colonnes éparpillait carte / virement / PayPal (owner 21/08). */
  /* UNE colonne. Ordre (owner 21/08) : les EXPRESS en 1 clic d'abord
     (PayPal en tête), puis le virement, et l'accordéon CARTE en DERNIER —
     collé au bouton « Payer », sans autre moyen intercalé (le CTA agit sur
     la carte). L'ordre visuel est porté par `order`, pas par le DOM : Stripe
     garde ses Elements montés à leur place, on ne les déplace jamais. */
  /* Intitulé au-dessus des express (1 clic). */
}

/* line 11, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__step-heading {
  margin-bottom: 1rem;
  display: flex;
  align-items: center;
  gap: .65rem;
}

/* line 17, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__step-heading h1 {
  margin: 0;
  color: var(--payment-b-ink);
  font-size: 1.45rem;
  line-height: 1.12;
}

/* line 20, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__step {
  width: 2rem;
  height: 2rem;
  flex: none;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: #fff;
  background: var(--payment-b-green);
  font-size: .75rem;
  font-weight: 900;
}

/* line 33, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__eyebrow {
  margin: 0 0 .3rem;
  color: var(--payment-b-green);
  font-size: .66rem;
  font-weight: 900;
  letter-spacing: .11em;
  text-transform: uppercase;
}

/* line 42, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__card {
  overflow: hidden;
  border: 1px solid #dcded9;
  border-radius: 1rem;
  background: #fff;
  box-shadow: 0 14px 40px rgba(20, 34, 29, 0.07);
}

/* line 50, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__body {
  padding: 1.35rem;
}

/* line 52, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__option {
  position: relative;
  display: grid;
  align-items: center;
  gap: .7rem;
  padding: .8rem .9rem;
  border: 1px solid var(--payment-b-line);
  border-radius: .75rem;
  background: #fbfcfb;
  cursor: pointer;
}

/* line 63, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__option > input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}

/* line 64, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__option > input:focus-visible + .checkout-payment-b__checkbox {
  outline: 3px solid rgba(11, 107, 88, 0.16);
}

/* line 65, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__option > input:checked + .checkout-payment-b__checkbox {
  border-color: var(--payment-b-green);
  color: #fff;
  background: var(--payment-b-green);
}

/* line 68, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__checkbox {
  width: 1.35rem;
  height: 1.35rem;
  display: grid;
  place-items: center;
  border: 1.5px solid #aeb8b3;
  border-radius: .38rem;
  color: transparent;
  background: #fff;
  font-size: .72rem;
  font-weight: 950;
}

/* line 83, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__loyalty-slot {
  max-width: 34rem;
  margin-top: .9rem;
}

/* line 88, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__loyalty {
  grid-template-columns: 1.35rem minmax(0, 1fr) auto;
  margin: 0;
}

/* line 92, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__loyalty > span:nth-child(3) {
  display: flex;
  flex-direction: column;
  min-width: 0;
}

/* line 93, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__loyalty strong {
  font-size: .78rem;
}

/* line 94, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__loyalty small {
  margin-top: .2rem;
  color: #747e79;
  font-size: .64rem;
  line-height: 1.35;
}

/* line 95, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__loyalty > b {
  color: var(--payment-b-green);
  font-size: .78rem;
  white-space: nowrap;
}

/* line 98, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__terms {
  grid-template-columns: 1.35rem minmax(0, 1fr);
  margin: 1rem 0 .75rem;
  padding: 0;
  border: 0;
  background: transparent;
  color: #4f5a55;
  font-size: .72rem;
  line-height: 1.48;
}

/* line 108, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__terms a {
  color: var(--payment-b-ink);
  font-weight: 800;
  text-underline-offset: 2px;
}

/* line 124, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__methods {
  margin-top: .25rem;
  display: flex;
  flex-direction: column;
  gap: .7rem;
  max-width: 34rem;
}

/* line 132, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__express-label {
  order: 0;
}

/* line 133, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__express-row {
  order: 1;
}

/* line 134, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b .checkout-payment-b__wire-tile {
  order: 2;
}

/* line 135, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__stripe-shell {
  order: 3;
}

/* line 138, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__express-label {
  margin: 0 0 .1rem;
  color: var(--checkout-muted, #6b7280);
  font-size: .78rem;
  font-weight: 600;
}

/* line 145, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__stripe-shell {
  min-height: 15.5rem;
}

/* line 148, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__stripe-shell > p {
  min-height: 15.5rem;
  margin: 0;
  display: grid;
  place-items: center;
  border: 1px dashed #d6dbd7;
  border-radius: .75rem;
  color: #6a746f;
  font-size: .76rem;
  text-align: center;
}

/* line 161, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__error {
  margin: 0 0 .75rem;
  padding: .7rem .8rem;
  border: 1px solid #f1b8b2;
  border-radius: .65rem;
  background: #fff3f2;
  color: #9b2117;
  font-size: .76rem;
  line-height: 1.45;
}

/* line 172, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__spinner {
  width: 2rem;
  height: 2rem;
  margin: 1rem auto;
  border: 3px solid #dfe7e3;
  border-top-color: var(--payment-b-green);
  border-radius: 50%;
  -webkit-animation: payment-b-spin .8s linear infinite;
          animation: payment-b-spin .8s linear infinite;
}

/* line 182, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__pay {
  width: 20rem;
  max-width: 100%;
  min-height: 3.35rem;
  margin: 0 auto;
  padding: 0 1.6rem;
  display: grid;
  place-items: center;
  border: 0;
  border-radius: .72rem;
  color: #fff;
  background: var(--payment-b-green);
  font-size: .95rem;
  font-weight: 850;
  transition: transform var(--checkout-motion-fast) var(--checkout-motion-ease), background var(--checkout-motion-fast) var(--checkout-motion-ease);
}

/* line 198, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__pay:not(:disabled):hover {
  background: #075a4a;
  transform: translateY(-1px);
}

/* line 199, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__pay:focus-visible {
  outline: 3px solid rgba(11, 107, 88, 0.25);
  outline-offset: 2px;
}

/* line 200, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__pay:disabled {
  cursor: not-allowed;
  filter: saturate(0.65);
  opacity: .58;
}

@media (max-width: 720px) {
  /* line 205, app/assets/stylesheets/pages/_checkout-payment-b.scss */
  .checkout-payment-b {
    padding: 1.4rem .25rem 5rem;
  }
  /* line 208, app/assets/stylesheets/pages/_checkout-payment-b.scss */
  .checkout-payment-b__step-heading h1 {
    font-size: 1.25rem;
  }
  /* line 209, app/assets/stylesheets/pages/_checkout-payment-b.scss */
  .checkout-payment-b__body {
    padding: .85rem;
  }
  /* line 210, app/assets/stylesheets/pages/_checkout-payment-b.scss */
  .checkout-payment-b__terms {
    font-size: .68rem;
  }
}

@-webkit-keyframes payment-b-spin {
  to {
    transform: rotate(360deg);
  }
}

@keyframes payment-b-spin {
  to {
    transform: rotate(360deg);
  }
}

@media (prefers-reduced-motion: reduce) {
  /* line 219, app/assets/stylesheets/pages/_checkout-payment-b.scss */
  .checkout-payment-b__pay {
    transition: none;
  }
  /* line 220, app/assets/stylesheets/pages/_checkout-payment-b.scss */
  .checkout-payment-b__spinner {
    -webkit-animation: none;
            animation: none;
  }
}

/* Les boutons express (PayPal, Klarna) sont rendus par Stripe dans sa
   colonne, pleine largeur. */
/* line 225, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__express-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: .5rem;
  align-items: center;
}

/* line 232, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__express-slot {
  min-width: 0;
}

/* Squelette des boutons express : leur place est réservée pendant que
   Stripe charge, les boutons FONDENT ensuite à leur place — fini le PayPal
   qui surgit, puis le Klarna. */
/* line 237, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__express-skeleton {
  display: grid;
  gap: .7rem;
}

/* line 241, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__express-skeleton span {
  height: 48px;
  border-radius: 10px;
  background: linear-gradient(100deg, #eceeed 40%, #f5f7f6 50%, #eceeed 60%);
  background-size: 200% 100%;
  -webkit-animation: checkout-payment-b-shimmer 1.4s ease-in-out infinite;
          animation: checkout-payment-b-shimmer 1.4s ease-in-out infinite;
}

/* Arrivée en fondu des iframes Stripe (carte, express) : un bloc qui
   apparaît doucement plutôt qu'un surgissement. */
/* line 252, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__stripe-shell iframe,
.checkout-payment-b__express-slot iframe {
  -webkit-animation: checkout-payment-b-fade-in var(--checkout-motion-slow) var(--checkout-motion-ease);
          animation: checkout-payment-b-fade-in var(--checkout-motion-slow) var(--checkout-motion-ease);
}

@-webkit-keyframes checkout-payment-b-shimmer {
  to {
    background-position: -200% 0;
  }
}

@keyframes checkout-payment-b-shimmer {
  to {
    background-position: -200% 0;
  }
}

@-webkit-keyframes checkout-payment-b-fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes checkout-payment-b-fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@media (prefers-reduced-motion: reduce) {
  /* line 267, app/assets/stylesheets/pages/_checkout-payment-b.scss */
  .checkout-payment-b__express-skeleton span,
.checkout-payment-b__stripe-shell iframe,
.checkout-payment-b__express-slot iframe {
    -webkit-animation: none;
            animation: none;
  }
}

/* Volet Virement : même langage visuel que les volets de l'Element (fond
   blanc, bordure fine, radius 10, RADIO) — un moyen de paiement à
   SÉLECTIONNER, sous la carte. Son état retenu reprend `.Tab--selected`. */
/* line 277, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__wire-tile {
  width: 100%;
  margin: 0;
  /* le rythme vertical vient de la grille de __methods */
  padding: .9rem 1rem;
  display: flex;
  align-items: center;
  gap: .8rem;
  text-align: left;
  border: 1px solid #d9ddda;
  border-radius: 10px;
  background: #fff;
  cursor: pointer;
  transition: border-color var(--checkout-motion-fast) var(--checkout-motion-ease), box-shadow var(--checkout-motion-fast) var(--checkout-motion-ease);
}

/* line 293, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__wire-tile:hover,
.checkout-payment-b__wire-tile:focus-visible {
  border-color: #0b6b58;
}

/* line 298, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__wire-tile[data-selected="true"] {
  border-color: #0b6b58;
  box-shadow: 0 0 0 1px #0b6b58;
}

/* line 303, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__wire-tile[disabled] {
  opacity: .6;
  cursor: wait;
}

/* Virement retenu : la carte est repliée, mais l'iframe Stripe GARDE sa
   hauteur dépliée après `collapse()` — sans cette contrainte, un grand vide
   s'installait entre la carte et le virement. 64px = le volet replié, avec
   un peu d'air ; l'iframe reste cliquable pour revenir à la carte. */
/* line 312, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b[data-wire-selected="true"] .checkout-payment-b__stripe-shell {
  /* La réserve anti-CLS du shell (min-height 15.5rem) doit céder ici,
     sinon elle gagne sur max-height et le vide reste. */
  min-height: 0;
  max-height: 64px;
  overflow: hidden;
}

/* La radio du volet, dessinée comme celles de l'accordéon Stripe. */
/* line 321, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__wire-radio {
  width: 16px;
  height: 16px;
  flex: 0 0 auto;
  border: 1px solid #b9c0bd;
  border-radius: 50%;
  background: #fff;
  transition: border-color var(--checkout-motion-fast) var(--checkout-motion-ease);
}

/* line 331, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__wire-tile[data-selected="true"] .checkout-payment-b__wire-radio {
  border: 5px solid #0b6b58;
}

/* line 335, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__wire-glyph {
  width: 22px;
  height: 22px;
  flex: 0 0 auto;
  fill: none;
  stroke: #0b6b58;
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* line 346, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__wire-copy {
  display: grid;
  gap: 2px;
}

/* line 351, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__wire-copy strong {
  color: #0b6b58;
  font-size: .92rem;
  font-weight: 600;
}

/* line 357, app/assets/stylesheets/pages/_checkout-payment-b.scss */
.checkout-payment-b__wire-copy small {
  color: #5a6762;
  font-size: .72rem;
}

/* line 1, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b {
  --shipping-b-deep: #0b352d;
  --shipping-b-green: #145d4c;
  --shipping-b-green-2: #1c715d;
  --shipping-b-mint: #e2f4ed;
  --shipping-b-mint-2: #f1f9f6;
  --shipping-b-ink: #18221f;
  --shipping-b-muted: #6d7975;
  --shipping-b-line: #d6e0dc;
  --shipping-b-soft: #f4f7f5;
  --shipping-b-error: #a63f36;
  --shipping-b-shadow: 0 15px 45px rgba(11, 53, 45, .09);
  width: calc(100% - 2rem);
  max-width: 620px;
  min-height: calc(100vh - 15rem);
  margin: 0 auto;
  padding: 3rem 0 4.5rem;
  color: var(--shipping-b-ink);
  text-align: left;
}

/* line 21, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b [hidden] {
  display: none !important;
}

/* line 22, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b button, .checkout-shipping-b input, .checkout-shipping-b select {
  font: inherit;
}

/* line 23, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b button {
  cursor: pointer;
}

/* line 24, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b fieldset {
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
}

/* line 26, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__intro {
  margin: 0 0 1.35rem;
}

/* line 28, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__intro .shipping-b__eyebrow {
  display: block;
  color: var(--shipping-b-green);
  font-size: .68rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .12em;
}

/* line 36, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__intro h1 {
  margin: .45rem 0 .35rem;
  color: var(--shipping-b-deep);
  font-size: 2rem;
  line-height: 1.08;
  letter-spacing: -.04em;
}

/* line 43, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__intro p {
  margin: 0;
  color: var(--shipping-b-muted);
  font-size: .8rem;
  line-height: 1.5;
}

/* line 46, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__server-errors,
.checkout-shipping-b .shipping-b__form-error {
  margin: 0 0 1rem;
  padding: .8rem .9rem;
  border: 1px solid #e8aaa5;
  border-radius: .75rem;
  background: #fff4f3;
  color: #8f2119;
  font-size: .76rem;
  line-height: 1.45;
}

/* line 56, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__server-errors p,
.checkout-shipping-b .shipping-b__form-error p {
  margin: 0;
}

/* line 57, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__server-errors ul,
.checkout-shipping-b .shipping-b__form-error ul {
  margin: .4rem 0 0;
  padding-left: 1.15rem;
}

/* line 60, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__flow {
  display: grid;
  gap: .85rem;
}

/* line 61, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__step {
  min-width: 0;
}

/* line 63, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__card {
  min-width: 0;
  overflow: visible;
  border: 1px solid #d7e1dd;
  border-radius: .82rem;
  background: #fff;
  box-shadow: var(--shipping-b-shadow);
  transition: border-color var(--checkout-motion-base) var(--checkout-motion-ease), background-color var(--checkout-motion-base) var(--checkout-motion-ease), box-shadow var(--checkout-motion-base) var(--checkout-motion-ease);
}

/* line 72, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__card > fieldset,
.checkout-shipping-b .shipping-b__card > .shipping-b__waiting,
.checkout-shipping-b .shipping-b__card > .shipping-b__billing-choice,
.checkout-shipping-b .shipping-b__card > .shipping-b__duplicate {
  padding: 1.1rem;
}

/* line 78, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__step-heading {
  margin: 0 0 .55rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

/* line 84, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__step-heading h2 {
  margin: 0;
  color: var(--shipping-b-deep);
  font-size: 1.45rem;
  line-height: 1.12;
  letter-spacing: -.02em;
}

/* line 86, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__flow-status {
  flex: none;
  padding: .38rem .58rem;
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  border-radius: 999px;
  background: #f0f4f2;
  color: #5f6b67;
  font-size: .6rem;
  font-weight: 850;
  transition: background-color var(--checkout-motion-base) var(--checkout-motion-ease), color var(--checkout-motion-base) var(--checkout-motion-ease);
}

/* line 99, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__flow-reset {
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  font-size: .95rem;
  font-weight: 900;
  line-height: 1;
}

/* line 108, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__flow-reset:hover {
  color: var(--shipping-b-deep);
}

/* line 109, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__step.is-active .shipping-b__flow-status,
.checkout-shipping-b .shipping-b__step.is-complete .shipping-b__flow-status {
  background: var(--shipping-b-mint);
  color: var(--shipping-b-green);
}

/* line 113, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__step.is-waiting .shipping-b__card {
  border-style: dashed;
  background: rgba(247, 249, 248, 0.75);
  box-shadow: none;
}

/* line 114, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__step.is-waiting .shipping-b__flow-status {
  color: #5a6762;
  background: transparent;
}

/* line 115, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__step.is-waiting h2 {
  color: #52605a;
}

/* line 117, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__step.is-active .shipping-b__card,
.checkout-shipping-b .shipping-b__step.is-complete .shipping-b__card {
  border-style: solid;
}

/* line 119, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__waiting {
  margin: 0;
  color: #89928e;
  font-size: .75rem;
  line-height: 1.5;
}

/* line 120, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__locked-content {
  padding: 1.1rem;
}

/* line 122, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__intro-copy {
  margin: 0 0 .7rem;
  color: var(--shipping-b-deep);
  font-size: .72rem;
  font-weight: 850;
}

/* line 123, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__profile-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .65rem;
}

/* line 127, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__profile-options > button {
  width: 100%;
  min-height: 4.75rem;
  padding: .75rem .8rem;
  display: grid;
  grid-template-columns: 2rem minmax(0, 1fr);
  align-items: center;
  -moz-column-gap: .65rem;
       column-gap: .65rem;
  border: 1px solid #ccd8d3;
  border-radius: .5rem;
  color: var(--shipping-b-ink);
  background: #fff;
  text-align: left;
  transition: border-color var(--checkout-motion-fast) var(--checkout-motion-ease), background var(--checkout-motion-fast) var(--checkout-motion-ease), box-shadow var(--checkout-motion-fast) var(--checkout-motion-ease);
}

/* line 141, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__profile-options > button > span {
  grid-row: 1 / 3;
  width: 1.95rem;
  height: 1.95rem;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: var(--shipping-b-green);
  background: #edf4f1;
  font-size: .65rem;
}

/* line 142, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__profile-options > button strong {
  color: var(--shipping-b-deep);
  font-size: .8rem;
}

/* line 143, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__profile-options > button small {
  margin-top: .15rem;
  color: #5f6b67;
  font-size: .63rem;
  line-height: 1.35;
}

/* line 144, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__profile-options > button:hover {
  border-color: #86aa9d;
  box-shadow: 0 5px 14px rgba(11, 53, 45, 0.06);
}

/* line 145, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__profile-options > button:focus-visible {
  outline: 3px solid #438273;
  outline-offset: 2px;
}

/* line 149, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__saved > p {
  margin: 0 0 .7rem;
  color: var(--shipping-b-muted);
  font-size: .75rem;
}

/* line 150, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__saved-list {
  display: grid;
  gap: .55rem;
}

/* line 153, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__saved-list article {
  padding: .7rem;
  display: grid;
  gap: .55rem;
  border: 1px solid #dce2de;
  border-radius: .7rem;
  background: #fbfcfb;
}

/* line 160, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__saved-list article > span {
  font-size: .7rem;
  line-height: 1.45;
}

/* line 161, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__saved-list article > div {
  display: flex;
  gap: .45rem;
}

/* line 162, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__saved-list article button {
  padding: .42rem .62rem;
  border: 1px solid var(--shipping-b-green);
  border-radius: .5rem;
  color: var(--shipping-b-green);
  background: #fff;
  font-size: .65rem;
  font-weight: 800;
}

/* line 166, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__secondary,
.checkout-shipping-b .shipping-b__link,
.checkout-shipping-b .shipping-b__back {
  margin-top: .65rem;
  padding: 0;
  border: 0;
  color: var(--shipping-b-green);
  background: transparent;
  font-size: .68rem;
  font-weight: 750;
  text-decoration: underline;
  text-underline-offset: 2px;
}

/* line 179, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__back {
  margin: 0 0 .8rem;
}

/* line 180, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__editor > [data-country-field],
.checkout-shipping-b .shipping-b__editor > [data-company-lookup] {
  margin-bottom: .6rem;
}

/* line 182, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__editor > [data-country-field] {
  max-width: 16rem;
}

/* line 183, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__editor > [data-company-lookup] {
  max-width: 24rem;
}

/* line 184, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__field-hint {
  margin: 0 0 .55rem !important;
  color: var(--shipping-b-muted);
  font-size: .63rem !important;
  line-height: 1.45;
}

/* line 185, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__field-hint--after {
  margin: .4rem 0 0 !important;
}

/* line 186, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__field-hint .shipping-b__link {
  margin: 0;
  font-size: inherit;
  font-weight: 750;
}

/* line 188, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__lookup-row {
  display: flex;
  gap: .45rem;
}

/* line 189, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__lookup-row input {
  min-width: 0;
  flex: 1;
}

/* line 190, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__lookup-cta {
  flex: 0 0 2.6rem;
  min-height: 2.6rem;
  display: grid;
  place-items: center;
  border: 0;
  border-radius: .45rem;
  color: #fff;
  background: var(--shipping-b-deep);
}

/* line 200, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__lookup-cta:hover {
  background: #154d41;
}

/* line 201, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__lookup-cta svg {
  width: 1.1rem;
  height: 1.1rem;
}

/* line 202, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b [data-company-status], .checkout-shipping-b [data-vat-status] {
  margin: .45rem 0 0;
  color: var(--shipping-b-muted);
  font-size: .65rem;
  line-height: 1.4;
}

/* line 204, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__lookup,
.checkout-shipping-b .shipping-b__foreign-lookup {
  margin-bottom: .85rem;
  padding: .8rem;
  border: 1px solid #d8dfdb;
  border-radius: .6rem;
  background: #f8faf9;
}

/* line 211, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__lookup label,
.checkout-shipping-b .shipping-b__foreign-lookup label {
  display: block;
  margin-bottom: .35rem;
  color: var(--shipping-b-deep);
  font-size: .68rem;
  font-weight: 800;
}

/* line 212, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__lookup > div,
.checkout-shipping-b .shipping-b__foreign-lookup > div {
  display: flex;
  gap: .45rem;
}

/* line 213, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__lookup input,
.checkout-shipping-b .shipping-b__foreign-lookup input {
  min-width: 0;
  flex: 1;
}

/* line 214, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__lookup button:not(.shipping-b__link),
.checkout-shipping-b .shipping-b__foreign-lookup button:not(.shipping-b__link) {
  padding: 0 .8rem;
  border: 0;
  border-radius: .45rem;
  color: #fff;
  background: var(--shipping-b-deep);
  font-size: .68rem;
  font-weight: 800;
}

/* line 215, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__lookup p,
.checkout-shipping-b .shipping-b__foreign-lookup p {
  margin: .5rem 0 0;
  color: var(--shipping-b-muted);
  font-size: .65rem;
  line-height: 1.4;
}

/* line 217, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__foreign-lookup > button {
  width: 100%;
  min-height: 2.85rem;
  margin-top: .55rem;
  padding: 0 .8rem;
  border: 0;
  border-radius: .45rem;
  color: #fff;
  background: var(--shipping-b-deep);
  font-size: .7rem;
  font-weight: 850;
}

/* line 218, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__establishment {
  margin-top: .7rem;
  padding-top: .7rem;
  display: flex !important;
  flex-wrap: wrap;
  gap: .45rem;
  border-top: 1px solid #dce2de;
}

/* line 219, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__establishment button:not(.shipping-b__link) {
  padding: 0 .8rem;
  border: 0;
  border-radius: .45rem;
  color: #fff;
  background: var(--shipping-b-deep);
  font-size: .68rem;
  font-weight: 800;
}

/* line 220, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__establishment > p {
  color: var(--shipping-b-muted);
  font-size: .65rem;
  line-height: 1.4;
}

/* line 221, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__establishment label {
  display: block;
  margin-bottom: .35rem;
  color: var(--shipping-b-deep);
  font-size: .68rem;
  font-weight: 800;
}

/* line 222, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__establishment > p {
  width: 100%;
  margin: 0;
}

/* line 223, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__establishment > button {
  min-height: 2.2rem;
}

/* line 224, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__establishment > div {
  width: 100%;
  margin-top: .35rem;
  display: grid;
  gap: .35rem;
}

/* line 225, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__establishment > div > div {
  display: flex;
  gap: .45rem;
}

/* line 227, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .5rem .75rem;
}

/* line 228, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__field {
  min-width: 0;
  position: relative;
  /* Astérisque des champs obligatoires : discrète mais présente sur TOUS
       les champs requis, pour que « complétez les champs obligatoires » soit
       vérifiable d'un coup d'œil avant de cliquer. */
}

/* line 231, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__field--full {
  grid-column: 1 / -1;
}

/* line 232, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__field label {
  margin-bottom: .2rem;
  display: block;
  color: var(--shipping-b-deep);
  font-size: .68rem;
  font-weight: 800;
}

/* line 233, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__field label span {
  color: #5f6b67;
  font-size: .61rem;
  font-weight: 600;
}

/* line 234, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__field input, .checkout-shipping-b .shipping-b__field select {
  width: 100%;
  min-height: 2.6rem;
  padding: .5rem .7rem;
  border: 1px solid #cbd7d2;
  border-radius: .45rem;
  color: var(--shipping-b-ink);
  background: #fff;
  font-size: .76rem;
  outline: none;
  transition: border-color var(--checkout-motion-base) var(--checkout-motion-ease), box-shadow var(--checkout-motion-base) var(--checkout-motion-ease), background-color var(--checkout-motion-base) var(--checkout-motion-ease);
}

/* line 245, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__field input:focus, .checkout-shipping-b .shipping-b__field select:focus {
  border: 2px solid var(--shipping-b-green);
  padding: calc(.5rem - 1px) calc(.7rem - 1px);
  box-shadow: 0 0 0 3px rgba(20, 93, 76, 0.09);
}

/* line 246, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__field input[aria-invalid="true"], .checkout-shipping-b .shipping-b__field select[aria-invalid="true"] {
  border-color: var(--shipping-b-error);
  background: #fff8f7;
}

/* line 251, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__field .shipping-b__required {
  margin-left: .15rem;
  color: var(--shipping-b-error);
  text-decoration: none;
  font-weight: 700;
  cursor: help;
}

/* line 258, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__field > span {
  min-height: .8rem;
  margin-top: .15rem;
  display: block;
  color: var(--shipping-b-muted);
  font-size: .58rem;
}

/* line 259, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__field > span:empty {
  display: none;
}

/* line 260, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__field > span.is-warning {
  color: #8a5a00;
}

/* line 261, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__field > span.is-error {
  color: #a5251b;
  font-weight: 700;
}

/* line 263, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__phone {
  display: grid;
  grid-template-columns: minmax(7rem, 0.45fr) minmax(0, 1fr);
  gap: .45rem;
}

/* line 264, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b [data-phone-status] {
  min-height: .8rem;
  margin-top: .2rem;
  display: block;
  font-size: .58rem;
}

/* line 265, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .is-valid[data-phone-status] {
  color: var(--shipping-b-green);
}

/* line 266, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__country-warning {
  margin: .35rem 0 0;
  color: #9b2a20;
  font-size: .62rem;
  line-height: 1.4;
}

/* line 268, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__autocomplete {
  z-index: 3;
}

/* line 269, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__suggestions {
  width: 100%;
  max-height: 15rem;
  position: absolute;
  top: 3.7rem;
  left: 0;
  overflow-y: auto;
  border: 1px solid #bfd3cb;
  border-radius: .55rem;
  background: #fff;
  box-shadow: 0 16px 38px rgba(11, 53, 45, 0.17);
  z-index: 10;
}

/* line 281, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__suggestions button {
  width: 100%;
  min-height: 3rem;
  padding: .55rem .65rem;
  display: block;
  border: 0;
  border-bottom: 1px solid #edf0ee;
  color: var(--shipping-b-ink);
  background: #fff;
  font-size: .66rem;
  line-height: 1.35;
  text-align: left;
}

/* line 282, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__suggestions button:hover, .checkout-shipping-b .shipping-b__suggestions button[aria-selected="true"] {
  background: var(--shipping-b-mint-2);
}

/* line 285, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__verification {
  min-height: 1rem;
  margin-top: .65rem;
  color: var(--shipping-b-green);
  font-size: .64rem;
  font-weight: 750;
}

/* line 286, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__validate {
  width: 100%;
  min-height: 2.95rem;
  margin-top: .8rem;
  border: 0;
  border-radius: .45rem;
  color: #fff;
  background: var(--shipping-b-deep);
  font-size: .75rem;
  font-weight: 850;
}

/* line 297, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__validate:hover {
  background: #154d41;
}

/* line 299, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__summary {
  position: relative;
  padding: 1.1rem;
  overflow: hidden;
}

/* line 303, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__summary h3, .checkout-shipping-b .shipping-b__summary p, .checkout-shipping-b .shipping-b__summary address {
  margin: 0;
  color: var(--shipping-b-ink);
  font-family: inherit;
  font-size: .875rem;
  font-weight: 500;
  font-style: normal;
  line-height: 1.55;
  letter-spacing: normal;
  text-transform: none;
}

/* line 314, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__summary h3 {
  font-weight: 700;
}

/* line 315, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__summary p:empty {
  display: none;
}

/* line 316, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__summary address {
  white-space: pre-line;
}

/* line 317, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__summary > button {
  position: relative;
  margin-top: .65rem;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--shipping-b-green);
  font-size: .72rem;
  font-weight: 750;
  text-decoration: underline;
  text-underline-offset: 2px;
}

/* line 329, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__summary > button:hover {
  color: var(--shipping-b-deep);
}

/* line 331, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__summary-body {
  position: relative;
}

/* line 332, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__summary-stamp {
  width: 9rem;
  position: absolute;
  top: .5rem;
  right: 1rem;
  opacity: .1;
  pointer-events: none;
}

/* line 333, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__summary-stamp--billing {
  width: 4rem;
}

/* line 336, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__billing-choice > p {
  margin: 0 0 .7rem;
  font-size: .76rem;
}

/* line 337, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__billing-choice > div {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .65rem;
}

/* line 338, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__billing-choice button {
  min-height: 5.15rem;
  padding: .75rem;
  display: grid;
  grid-template-columns: 1.9rem minmax(0, 1fr);
  align-items: center;
  -moz-column-gap: .55rem;
       column-gap: .55rem;
  border: 1px solid #cbd7d2;
  border-radius: .5rem;
  color: var(--shipping-b-ink);
  background: #fff;
  text-align: left;
}

/* line 350, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__billing-choice button > span {
  grid-row: 1 / 3;
  width: 1.8rem;
  height: 1.8rem;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: var(--shipping-b-green);
  background: var(--shipping-b-mint);
  font-weight: 900;
}

/* line 351, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__billing-choice button strong {
  color: var(--shipping-b-deep);
  font-size: .72rem;
}

/* line 352, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__billing-choice button small {
  grid-column: 2;
  margin-top: .15rem;
  color: var(--shipping-b-muted);
  font-size: .61rem;
  line-height: 1.35;
}

/* line 354, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__billing-choice button:hover {
  border-color: #79a392;
  background: var(--shipping-b-mint-2);
}

/* line 358, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__duplicate h3 {
  margin: 0;
  font-size: .86rem;
}

/* line 359, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__duplicate > p {
  margin: .35rem 0 .7rem;
  color: var(--shipping-b-muted);
  font-size: .68rem;
}

/* line 360, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__duplicate > div {
  display: grid;
  gap: .45rem;
}

/* line 361, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__duplicate > div > button {
  min-height: 2.6rem;
  padding: .5rem .7rem;
  border: 1px solid var(--shipping-b-green);
  border-radius: .45rem;
  color: var(--shipping-b-green);
  background: #fff;
  font-size: .68rem;
  font-weight: 800;
}

/* line 364, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__payment-slot {
  min-height: 0;
}

/* line 365, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__payment-action {
  margin: 1.05rem 0 0;
  display: grid;
  justify-items: center;
  gap: .45rem;
}

/* line 366, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__payment-action small {
  color: var(--shipping-b-muted);
  font-size: .63rem;
}

/* line 367, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__payment {
  min-width: 16rem;
  min-height: 3rem;
  padding: 0 1rem;
  display: grid;
  place-items: center;
  border: 0;
  border-radius: .45rem;
  color: #fff;
  background: var(--shipping-b-deep);
  font-size: .75rem;
  font-weight: 900;
  text-align: center;
}

/* line 381, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__payment:hover {
  background: #154d41;
}

/* line 382, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__payment:disabled {
  opacity: .65;
  cursor: wait;
}

/* line 383, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__toast {
  max-width: 25rem;
  padding: .7rem .9rem;
  position: fixed;
  left: 50%;
  bottom: 1.4rem;
  translate: -50% 140%;
  border-radius: .5rem;
  color: #fff;
  background: var(--shipping-b-deep);
  font-size: .68rem;
  font-weight: 750;
  box-shadow: 0 12px 30px rgba(11, 53, 45, 0.24);
  transition: translate var(--checkout-motion-base) var(--checkout-motion-ease);
  z-index: 30;
}

/* line 384, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__toast.is-visible {
  translate: -50% 0;
}

/* line 385, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__sr-only {
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  position: absolute !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* line 389, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b [data-address-editor]:not([hidden]),
.checkout-shipping-b [data-profile-gate]:not([hidden]),
.checkout-shipping-b [data-postal-fields]:not([hidden]),
.checkout-shipping-b [data-establishment-choice]:not([hidden]),
.checkout-shipping-b [data-billing-choice]:not([hidden]),
.checkout-shipping-b [data-duplicate-panel]:not([hidden]),
.checkout-shipping-b .shipping-b__summary:not([hidden]),
.checkout-shipping-b .shipping-b__payment-action {
  -webkit-animation: shipping-b-reveal var(--checkout-motion-base) ease-out;
          animation: shipping-b-reveal var(--checkout-motion-base) ease-out;
}

/* line 400, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b .shipping-b__validate,
.checkout-shipping-b .shipping-b__payment,
.checkout-shipping-b .shipping-b__lookup-cta,
.checkout-shipping-b .shipping-b__secondary,
.checkout-shipping-b .shipping-b__link,
.checkout-shipping-b .shipping-b__flow-reset,
.checkout-shipping-b .shipping-b__back,
.checkout-shipping-b .shipping-b__profile-options > button {
  transition: background-color var(--checkout-motion-base) var(--checkout-motion-ease), color var(--checkout-motion-base) var(--checkout-motion-ease), border-color var(--checkout-motion-base) var(--checkout-motion-ease);
}

/* line 413, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-shipping-b [hidden] {
  display: none !important;
}

@media (max-width: 700px) {
  /* line 417, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
  .checkout-shipping-b {
    width: calc(100% - 1.4rem);
    min-height: calc(100vh - 8rem);
    padding: 1.7rem 0 3.25rem;
  }
  /* line 421, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
  .checkout-shipping-b .shipping-b__intro {
    margin-left: .2rem;
  }
  /* line 422, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
  .checkout-shipping-b .shipping-b__intro h1 {
    font-size: 1.65rem;
  }
  /* line 423, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
  .checkout-shipping-b .shipping-b__step-heading h2 {
    font-size: 1.25rem;
  }
  /* line 424, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
  .checkout-shipping-b .shipping-b__card > fieldset, .checkout-shipping-b .shipping-b__card > .shipping-b__waiting, .checkout-shipping-b .shipping-b__card > .shipping-b__billing-choice, .checkout-shipping-b .shipping-b__card > .shipping-b__duplicate {
    padding: .95rem;
  }
  /* line 425, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
  .checkout-shipping-b .shipping-b__profile-options, .checkout-shipping-b .shipping-b__billing-choice > div {
    grid-template-columns: 1fr;
  }
  /* line 426, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
  .checkout-shipping-b .shipping-b__profile-options > button {
    min-height: 4.25rem;
  }
  /* line 427, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
  .checkout-shipping-b .shipping-b__fields {
    grid-template-columns: 1fr;
  }
  /* line 428, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
  .checkout-shipping-b .shipping-b__field--full {
    grid-column: auto;
  }
  /* line 429, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
  .checkout-shipping-b .shipping-b__phone {
    grid-template-columns: 7.4rem minmax(0, 1fr);
  }
  /* line 430, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
  .checkout-shipping-b .shipping-b__billing-choice button {
    min-height: 4.75rem;
  }
  /* line 431, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
  .checkout-shipping-b .shipping-b__payment {
    width: 100%;
    min-width: 0;
  }
  /* line 432, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
  .checkout-shipping-b .shipping-b__summary {
    padding: .95rem;
  }
  /* line 433, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
  .checkout-shipping-b .shipping-b__toast {
    left: .75rem;
    right: .75rem;
    translate: 0 140%;
    text-align: center;
  }
  /* line 434, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
  .checkout-shipping-b .shipping-b__toast.is-visible {
    translate: 0 0;
  }
}

@media (max-width: 370px) {
  /* line 440, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
  .checkout-shipping-b .shipping-b__intro h1 {
    font-size: 1.5rem;
  }
  /* line 441, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
  .checkout-shipping-b .shipping-b__flow-status {
    display: none;
  }
}

@-webkit-keyframes shipping-b-reveal {
  from {
    opacity: 0;
    transform: translateY(5px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}

@keyframes shipping-b-reveal {
  from {
    opacity: 0;
    transform: translateY(5px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  /* line 451, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
  .checkout-shipping-b .shipping-b__toast {
    transition: none;
  }
  /* line 452, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
  .checkout-shipping-b * {
    -webkit-animation: none !important;
            animation: none !important;
    transition: none !important;
  }
}

/* Dans le shell, un bouton d'action épouse son texte au lieu de s'étirer sur
   toute la largeur de son conteneur : un bouton large comme la page ne dit
   plus quelle action il déclenche. Il reste centré. */
/* line 459, app/assets/stylesheets/pages/_checkout-shipping-b.scss */
.checkout-one-page .shipping-b__validate,
.checkout-one-page .shipping-b__payment {
  width: auto;
  min-width: 0;
  margin-left: auto;
  margin-right: auto;
  padding-left: 1.6rem;
  padding-right: 1.6rem;
}

/* line 13, app/assets/stylesheets/application.scss */
html {
  scroll-behavior: smooth;
}

/* Hide arrow on input number on Chrome, Safari, Edge, Opera */
/* line 18, app/assets/stylesheets/application.scss */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Hide arrow on input number on Firefox */
/* line 25, app/assets/stylesheets/application.scss */
input[type=number] {
  -moz-appearance: textfield;
}

/* line 29, app/assets/stylesheets/application.scss */
.direct-upload {
  display: inline-block;
  position: relative;
  padding: 2px 4px;
  margin: 0 3px 3px 0;
  border: 1px solid rgba(0, 0, 0, 0.3);
  border-radius: 3px;
  font-size: 11px;
  line-height: 13px;
}

/* line 40, app/assets/stylesheets/application.scss */
.direct-upload--pending {
  opacity: 0.6;
}

/* line 44, app/assets/stylesheets/application.scss */
.direct-upload__progress {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  opacity: 0.2;
  background: #0076ff;
  transition: width 120ms ease-out, opacity 60ms 60ms ease-in;
  transform: translate3d(0, 0, 0);
}

/* line 55, app/assets/stylesheets/application.scss */
.direct-upload--complete .direct-upload__progress {
  opacity: 0.4;
}

/* line 59, app/assets/stylesheets/application.scss */
.direct-upload--error {
  border-color: red;
}

/* line 63, app/assets/stylesheets/application.scss */
input[type=file][data-direct-upload-url][disabled] {
  display: none;
}
