/* Generated on: Mon Mar 04 2019 07:11:01 GMT+0000 (UTC) */
/* ==========================================================================
   normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css 
   ========================================================================== */
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type="button"],input[type="reset"]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0}input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button{height:auto}input[type="search"]{-webkit-appearance:none}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:bold}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}

/* ==========================================================================
   Start of base Webflow CSS - If you're looking for some ultra-clean CSS, skip the boilerplate and see the unminified code below.
   ========================================================================== */
@font-face{font-family:'webflow-icons';src:url("data:application/x-font-ttf;charset=utf-8;base64,AAEAAAALAIAAAwAwT1MvMg8SBiUAAAC8AAAAYGNtYXDpP+a4AAABHAAAAFxnYXNwAAAAEAAAAXgAAAAIZ2x5ZmhS2XEAAAGAAAADHGhlYWQTFw3HAAAEnAAAADZoaGVhCXYFgQAABNQAAAAkaG10eCe4A1oAAAT4AAAAMGxvY2EDtALGAAAFKAAAABptYXhwABAAPgAABUQAAAAgbmFtZSoCsMsAAAVkAAABznBvc3QAAwAAAAAHNAAAACAAAwP4AZAABQAAApkCzAAAAI8CmQLMAAAB6wAzAQkAAAAAAAAAAAAAAAAAAAABEAAAAAAAAAAAAAAAAAAAAABAAADpAwPA/8AAQAPAAEAAAAABAAAAAAAAAAAAAAAgAAAAAAADAAAAAwAAABwAAQADAAAAHAADAAEAAAAcAAQAQAAAAAwACAACAAQAAQAg5gPpA//9//8AAAAAACDmAOkA//3//wAB/+MaBBcIAAMAAQAAAAAAAAAAAAAAAAABAAH//wAPAAEAAAAAAAAAAAACAAA3OQEAAAAAAQAAAAAAAAAAAAIAADc5AQAAAAABAAAAAAAAAAAAAgAANzkBAAAAAAEBIAAAAyADgAAFAAAJAQcJARcDIP5AQAGA/oBAAcABwED+gP6AQAABAOAAAALgA4AABQAAEwEXCQEH4AHAQP6AAYBAAcABwED+gP6AQAAAAwDAAOADQALAAA8AHwAvAAABISIGHQEUFjMhMjY9ATQmByEiBh0BFBYzITI2PQE0JgchIgYdARQWMyEyNj0BNCYDIP3ADRMTDQJADRMTDf3ADRMTDQJADRMTDf3ADRMTDQJADRMTAsATDSANExMNIA0TwBMNIA0TEw0gDRPAEw0gDRMTDSANEwAAAAABAJ0AtAOBApUABQAACQIHCQEDJP7r/upcAXEBcgKU/usBFVz+fAGEAAAAAAL//f+9BAMDwwAEAAkAABcBJwEXAwE3AQdpA5ps/GZsbAOabPxmbEMDmmz8ZmwDmvxmbAOabAAAAgAA/8AEAAPAAB0AOwAABSInLgEnJjU0Nz4BNzYzMTIXHgEXFhUUBw4BBwYjNTI3PgE3NjU0Jy4BJyYjMSIHDgEHBhUUFx4BFxYzAgBqXV6LKCgoKIteXWpqXV6LKCgoKIteXWpVSktvICEhIG9LSlVVSktvICEhIG9LSlVAKCiLXl1qal1eiygoKCiLXl1qal1eiygoZiEgb0tKVVVKS28gISEgb0tKVVVKS28gIQABAAABwAIAA8AAEgAAEzQ3PgE3NjMxFSIHDgEHBhUxIwAoKIteXWpVSktvICFmAcBqXV6LKChmISBvS0pVAAAAAgAA/8AFtgPAADIAOgAAARYXHgEXFhUUBw4BBwYHIxUhIicuAScmNTQ3PgE3NjMxOAExNDc+ATc2MzIXHgEXFhcVATMJATMVMzUEjD83NlAXFxYXTjU1PQL8kz01Nk8XFxcXTzY1PSIjd1BQWlJJSXInJw3+mdv+2/7c25MCUQYcHFg5OUA/ODlXHBwIAhcXTzY1PTw1Nk8XF1tQUHcjIhwcYUNDTgL+3QFt/pOTkwABAAAAAQAAmM7nP18PPPUACwQAAAAAANciZKUAAAAA1yJkpf/9/70FtgPDAAAACAACAAAAAAAAAAEAAAPA/8AAAAW3//3//QW2AAEAAAAAAAAAAAAAAAAAAAAMBAAAAAAAAAAAAAAAAgAAAAQAASAEAADgBAAAwAQAAJ0EAP/9BAAAAAQAAAAFtwAAAAAAAAAKABQAHgAyAEYAjACiAL4BFgE2AY4AAAABAAAADAA8AAMAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAADgCuAAEAAAAAAAEADQAAAAEAAAAAAAIABwCWAAEAAAAAAAMADQBIAAEAAAAAAAQADQCrAAEAAAAAAAUACwAnAAEAAAAAAAYADQBvAAEAAAAAAAoAGgDSAAMAAQQJAAEAGgANAAMAAQQJAAIADgCdAAMAAQQJAAMAGgBVAAMAAQQJAAQAGgC4AAMAAQQJAAUAFgAyAAMAAQQJAAYAGgB8AAMAAQQJAAoANADsd2ViZmxvdy1pY29ucwB3AGUAYgBmAGwAbwB3AC0AaQBjAG8AbgBzVmVyc2lvbiAxLjAAVgBlAHIAcwBpAG8AbgAgADEALgAwd2ViZmxvdy1pY29ucwB3AGUAYgBmAGwAbwB3AC0AaQBjAG8AbgBzd2ViZmxvdy1pY29ucwB3AGUAYgBmAGwAbwB3AC0AaQBjAG8AbgBzUmVndWxhcgBSAGUAZwB1AGwAYQByd2ViZmxvdy1pY29ucwB3AGUAYgBmAGwAbwB3AC0AaQBjAG8AbgBzRm9udCBnZW5lcmF0ZWQgYnkgSWNvTW9vbi4ARgBvAG4AdAAgAGcAZQBuAGUAcgBhAHQAZQBkACAAYgB5ACAASQBjAG8ATQBvAG8AbgAuAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==") format('truetype');font-weight:normal;font-style:normal}[class^="w-icon-"],[class*=" w-icon-"]{font-family:'webflow-icons' !important;speak:none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.w-icon-slider-right:before{content:"\e600"}.w-icon-slider-left:before{content:"\e601"}.w-icon-nav-menu:before{content:"\e602"}.w-icon-arrow-down:before,.w-icon-dropdown-toggle:before{content:"\e603"}.w-icon-file-upload-remove:before{content:"\e900"}.w-icon-file-upload-icon:before{content:"\e903"}*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{height:100%}body{margin:0;min-height:100%;background-color:#fff;font-family:Arial,sans-serif;font-size:14px;line-height:20px;color:#333}img{max-width:100%;vertical-align:middle;display:inline-block}html.w-mod-touch *{background-attachment:scroll !important}.w-block{display:block}.w-inline-block{max-width:100%;display:inline-block}.w-clearfix:before,.w-clearfix:after{content:" ";display:table;grid-column-start:1;grid-row-start:1;grid-column-end:2;grid-row-end:2}.w-clearfix:after{clear:both}.w-hidden{display:none}.w-button{display:inline-block;padding:9px 15px;background-color:#3898EC;color:white;border:0;line-height:inherit;text-decoration:none;cursor:pointer;border-radius:0}input.w-button{-webkit-appearance:button}html[data-w-dynpage] [data-w-cloak]{color:transparent !important}.w-webflow-badge,.w-webflow-badge *{position:static;left:auto;top:auto;right:auto;bottom:auto;z-index:auto;display:block;visibility:visible;overflow:visible;overflow-x:visible;overflow-y:visible;box-sizing:border-box;width:auto;height:auto;max-height:none;max-width:none;min-height:0;min-width:0;margin:0;padding:0;float:none;clear:none;border:0 none transparent;border-radius:0;background:none;background-image:none;background-position:0 0;background-size:auto auto;background-repeat:repeat;background-origin:padding-box;background-clip:border-box;background-attachment:scroll;background-color:transparent;box-shadow:none;opacity:1;transform:none;transition:none;direction:ltr;font-family:inherit;font-weight:inherit;color:inherit;font-size:inherit;line-height:inherit;font-style:inherit;font-variant:inherit;text-align:inherit;letter-spacing:inherit;text-decoration:inherit;text-indent:0;text-transform:inherit;list-style-type:disc;text-shadow:none;font-smoothing:auto;vertical-align:baseline;cursor:inherit;white-space:inherit;word-break:normal;word-spacing:normal;word-wrap:normal}.w-webflow-badge{position:fixed !important;display:inline-block !important;visibility:visible !important;z-index:2147483647 !important;top:auto !important;right:12px !important;bottom:12px !important;left:auto !important;color:#AAADB0 !important;background-color:#fff !important;border-radius:3px !important;padding:6px 8px 6px 6px !important;font-size:12px !important;opacity:1 !important;line-height:14px !important;text-decoration:none !important;transform:none !important;margin:0 !important;width:auto !important;height:auto !important;overflow:visible !important;white-space:nowrap;box-shadow:0 0 0 1px rgba(0,0,0,0.1),0 1px 3px rgba(0,0,0,0.1);cursor:pointer}.w-webflow-badge>img{display:inline-block !important;visibility:visible !important;opacity:1 !important;vertical-align:middle !important}h1,h2,h3,h4,h5,h6{font-weight:bold;margin-bottom:10px}h1{font-size:38px;line-height:44px;margin-top:20px}h2{font-size:32px;line-height:36px;margin-top:20px}h3{font-size:24px;line-height:30px;margin-top:20px}h4{font-size:18px;line-height:24px;margin-top:10px}h5{font-size:14px;line-height:20px;margin-top:10px}h6{font-size:12px;line-height:18px;margin-top:10px}p{margin-top:0;margin-bottom:10px}blockquote{margin:0 0 10px 0;padding:10px 20px;border-left:5px solid #E2E2E2;font-size:18px;line-height:22px}figure{margin:0;margin-bottom:10px}figcaption{margin-top:5px;text-align:center}ul,ol{margin-top:0;margin-bottom:10px;padding-left:40px}.w-list-unstyled{padding-left:0;list-style:none}.w-embed:before,.w-embed:after{content:" ";display:table;grid-column-start:1;grid-row-start:1;grid-column-end:2;grid-row-end:2}.w-embed:after{clear:both}.w-video{width:100%;position:relative;padding:0}.w-video iframe,.w-video object,.w-video embed{position:absolute;top:0;left:0;width:100%;height:100%}fieldset{padding:0;margin:0;border:0}button,html input[type="button"],input[type="reset"]{border:0;cursor:pointer;-webkit-appearance:button}.w-form{margin:0 0 15px}.w-form-done{display:none;padding:20px;text-align:center;background-color:#dddddd}.w-form-fail{display:none;margin-top:10px;padding:10px;background-color:#ffdede}label{display:block;margin-bottom:5px;font-weight:bold}.w-input,.w-select{display:block;width:100%;height:38px;padding:8px 12px;margin-bottom:10px;font-size:14px;line-height:1.42857143;color:#333333;vertical-align:middle;background-color:#ffffff;border:1px solid #cccccc}.w-input:-moz-placeholder,.w-select:-moz-placeholder{color:#999}.w-input::-moz-placeholder,.w-select::-moz-placeholder{color:#999;opacity:1}.w-input:-ms-input-placeholder,.w-select:-ms-input-placeholder{color:#999}.w-input::-webkit-input-placeholder,.w-select::-webkit-input-placeholder{color:#999}.w-input:focus,.w-select:focus{border-color:#3898EC;outline:0}.w-input[disabled],.w-select[disabled],.w-input[readonly],.w-select[readonly],fieldset[disabled] .w-input,fieldset[disabled] .w-select{cursor:not-allowed;background-color:#eeeeee}textarea.w-input,textarea.w-select{height:auto}.w-select{background-image:-webkit-linear-gradient(white 0, #f3f3f3 100%);background-image:linear-gradient(white 0, #f3f3f3 100%)}.w-select[multiple]{height:auto}.w-form-label{display:inline-block;cursor:pointer;font-weight:normal;margin-bottom:0}.w-checkbox,.w-radio{display:block;margin-bottom:5px;padding-left:20px}.w-checkbox:before,.w-radio:before,.w-checkbox:after,.w-radio:after{content:" ";display:table;grid-column-start:1;grid-row-start:1;grid-column-end:2;grid-row-end:2}.w-checkbox:after,.w-radio:after{clear:both}.w-checkbox-input,.w-radio-input{margin:4px 0 0;margin-top:1px \9;line-height:normal;float:left;margin-left:-20px}.w-radio-input{margin-top:3px}.w-file-upload{display:block;margin-bottom:10px}.w-file-upload-input{width:.1px;height:.1px;opacity:0;overflow:hidden;position:absolute;z-index:-100}.w-file-upload-default,.w-file-upload-uploading,.w-file-upload-success{display:inline-block;color:#333333}.w-file-upload-error{display:block;margin-top:10px}.w-file-upload-default.w-hidden,.w-file-upload-uploading.w-hidden,.w-file-upload-error.w-hidden,.w-file-upload-success.w-hidden{display:none}.w-file-upload-uploading-btn{display:flex;font-size:14px;font-weight:normal;cursor:pointer;margin:0;padding:8px 12px;border:1px solid #cccccc;background-color:#fafafa}.w-file-upload-file{display:flex;flex-grow:1;justify-content:space-between;margin:0;padding:8px 9px 8px 11px;border:1px solid #cccccc;background-color:#fafafa}.w-file-upload-file-name{font-size:14px;font-weight:normal;display:block}.w-file-remove-link{margin-top:3px;margin-left:10px;width:auto;height:auto;padding:3px;display:block;cursor:pointer}.w-icon-file-upload-remove{margin:auto;font-size:10px}.w-file-upload-error-msg{display:inline-block;color:#ea384c;padding:2px 0}.w-file-upload-info{display:inline-block;line-height:38px;padding:0 12px}.w-file-upload-label{display:inline-block;font-size:14px;font-weight:normal;cursor:pointer;margin:0;padding:8px 12px;border:1px solid #cccccc;background-color:#fafafa}.w-icon-file-upload-icon,.w-icon-file-upload-uploading{display:inline-block;margin-right:8px;width:20px}.w-icon-file-upload-uploading{height:20px}.w-container{margin-left:auto;margin-right:auto;max-width:940px}.w-container:before,.w-container:after{content:" ";display:table;grid-column-start:1;grid-row-start:1;grid-column-end:2;grid-row-end:2}.w-container:after{clear:both}.w-container .w-row{margin-left:-10px;margin-right:-10px}.w-row:before,.w-row:after{content:" ";display:table;grid-column-start:1;grid-row-start:1;grid-column-end:2;grid-row-end:2}.w-row:after{clear:both}.w-row .w-row{margin-left:0;margin-right:0}.w-col{position:relative;float:left;width:100%;min-height:1px;padding-left:10px;padding-right:10px}.w-col .w-col{padding-left:0;padding-right:0}.w-col-1{width:8.33333333%}.w-col-2{width:16.66666667%}.w-col-3{width:25%}.w-col-4{width:33.33333333%}.w-col-5{width:41.66666667%}.w-col-6{width:50%}.w-col-7{width:58.33333333%}.w-col-8{width:66.66666667%}.w-col-9{width:75%}.w-col-10{width:83.33333333%}.w-col-11{width:91.66666667%}.w-col-12{width:100%}.w-hidden-main{display:none !important}@media screen and (max-width:991px){.w-container{max-width:728px}.w-hidden-main{display:inherit !important}.w-hidden-medium{display:none !important}.w-col-medium-1{width:8.33333333%}.w-col-medium-2{width:16.66666667%}.w-col-medium-3{width:25%}.w-col-medium-4{width:33.33333333%}.w-col-medium-5{width:41.66666667%}.w-col-medium-6{width:50%}.w-col-medium-7{width:58.33333333%}.w-col-medium-8{width:66.66666667%}.w-col-medium-9{width:75%}.w-col-medium-10{width:83.33333333%}.w-col-medium-11{width:91.66666667%}.w-col-medium-12{width:100%}.w-col-stack{width:100%;left:auto;right:auto}}@media screen and (max-width:767px){.w-hidden-main{display:inherit !important}.w-hidden-medium{display:inherit !important}.w-hidden-small{display:none !important}.w-row,.w-container .w-row{margin-left:0;margin-right:0}.w-col{width:100%;left:auto;right:auto}.w-col-small-1{width:8.33333333%}.w-col-small-2{width:16.66666667%}.w-col-small-3{width:25%}.w-col-small-4{width:33.33333333%}.w-col-small-5{width:41.66666667%}.w-col-small-6{width:50%}.w-col-small-7{width:58.33333333%}.w-col-small-8{width:66.66666667%}.w-col-small-9{width:75%}.w-col-small-10{width:83.33333333%}.w-col-small-11{width:91.66666667%}.w-col-small-12{width:100%}}@media screen and (max-width:479px){.w-container{max-width:none}.w-hidden-main{display:inherit !important}.w-hidden-medium{display:inherit !important}.w-hidden-small{display:inherit !important}.w-hidden-tiny{display:none !important}.w-col{width:100%}.w-col-tiny-1{width:8.33333333%}.w-col-tiny-2{width:16.66666667%}.w-col-tiny-3{width:25%}.w-col-tiny-4{width:33.33333333%}.w-col-tiny-5{width:41.66666667%}.w-col-tiny-6{width:50%}.w-col-tiny-7{width:58.33333333%}.w-col-tiny-8{width:66.66666667%}.w-col-tiny-9{width:75%}.w-col-tiny-10{width:83.33333333%}.w-col-tiny-11{width:91.66666667%}.w-col-tiny-12{width:100%}}.w-widget{position:relative}.w-widget-map{width:100%;height:400px}.w-widget-map label{width:auto;display:inline}.w-widget-map img{max-width:inherit}.w-widget-map .gm-style-iw{text-align:center}.w-widget-map .gm-style-iw>button{display:none !important}.w-widget-twitter{overflow:hidden}.w-widget-twitter-count-shim{display:inline-block;vertical-align:top;position:relative;width:28px;height:20px;text-align:center;background:white;border:#758696 solid 1px;border-radius:3px}.w-widget-twitter-count-shim *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.w-widget-twitter-count-shim .w-widget-twitter-count-inner{position:relative;font-size:15px;line-height:12px;text-align:center;color:#999;font-family:serif}.w-widget-twitter-count-shim .w-widget-twitter-count-clear{position:relative;display:block}.w-widget-twitter-count-shim.w--large{width:36px;height:28px;margin-left:7px}.w-widget-twitter-count-shim.w--large .w-widget-twitter-count-inner{font-size:18px;line-height:18px}.w-widget-twitter-count-shim:not(.w--vertical){margin-left:5px;margin-right:8px}.w-widget-twitter-count-shim:not(.w--vertical).w--large{margin-left:6px}.w-widget-twitter-count-shim:not(.w--vertical):before,.w-widget-twitter-count-shim:not(.w--vertical):after{top:50%;left:0;border:solid transparent;content:" ";height:0;width:0;position:absolute;pointer-events:none}.w-widget-twitter-count-shim:not(.w--vertical):before{border-color:rgba(117,134,150,0);border-right-color:#5d6c7b;border-width:4px;margin-left:-9px;margin-top:-4px}.w-widget-twitter-count-shim:not(.w--vertical).w--large:before{border-width:5px;margin-left:-10px;margin-top:-5px}.w-widget-twitter-count-shim:not(.w--vertical):after{border-color:rgba(255,255,255,0);border-right-color:white;border-width:4px;margin-left:-8px;margin-top:-4px}.w-widget-twitter-count-shim:not(.w--vertical).w--large:after{border-width:5px;margin-left:-9px;margin-top:-5px}.w-widget-twitter-count-shim.w--vertical{width:61px;height:33px;margin-bottom:8px}.w-widget-twitter-count-shim.w--vertical:before,.w-widget-twitter-count-shim.w--vertical:after{top:100%;left:50%;border:solid transparent;content:" ";height:0;width:0;position:absolute;pointer-events:none}.w-widget-twitter-count-shim.w--vertical:before{border-color:rgba(117,134,150,0);border-top-color:#5d6c7b;border-width:5px;margin-left:-5px}.w-widget-twitter-count-shim.w--vertical:after{border-color:rgba(255,255,255,0);border-top-color:white;border-width:4px;margin-left:-4px}.w-widget-twitter-count-shim.w--vertical .w-widget-twitter-count-inner{font-size:18px;line-height:22px}.w-widget-twitter-count-shim.w--vertical.w--large{width:76px}.w-widget-gplus{overflow:hidden}.w-background-video{position:relative;overflow:hidden;height:500px;color:white}.w-background-video>video{background-size:cover;background-position:50% 50%;position:absolute;right:-100%;bottom:-100%;top:-100%;left:-100%;margin:auto;min-width:100%;min-height:100%;z-index:-100}.w-background-video>video::-webkit-media-controls-start-playback-button{display:none !important;-webkit-appearance:none}.w-slider{position:relative;height:300px;text-align:center;background:#dddddd;clear:both;-webkit-tap-highlight-color:rgba(0,0,0,0);tap-highlight-color:rgba(0,0,0,0)}.w-slider-mask{position:relative;display:block;overflow:hidden;z-index:1;left:0;right:0;height:100%;white-space:nowrap}.w-slide{position:relative;display:inline-block;vertical-align:top;width:100%;height:100%;white-space:normal;text-align:left}.w-slider-nav{position:absolute;z-index:2;top:auto;right:0;bottom:0;left:0;margin:auto;padding-top:10px;height:40px;text-align:center;-webkit-tap-highlight-color:rgba(0,0,0,0);tap-highlight-color:rgba(0,0,0,0)}.w-slider-nav.w-round>div{border-radius:100%}.w-slider-nav.w-num>div{width:auto;height:auto;padding:.2em .5em;font-size:inherit;line-height:inherit}.w-slider-nav.w-shadow>div{box-shadow:0 0 3px rgba(51,51,51,0.4)}.w-slider-nav-invert{color:#fff}.w-slider-nav-invert>div{background-color:rgba(34,34,34,0.4)}.w-slider-nav-invert>div.w-active{background-color:#222}.w-slider-dot{position:relative;display:inline-block;width:1em;height:1em;background-color:rgba(255,255,255,0.4);cursor:pointer;margin:0 3px .5em;transition:background-color 100ms,color 100ms}.w-slider-dot.w-active{background-color:#fff}.w-slider-arrow-left,.w-slider-arrow-right{position:absolute;width:80px;top:0;right:0;bottom:0;left:0;margin:auto;cursor:pointer;overflow:hidden;color:white;font-size:40px;-webkit-tap-highlight-color:rgba(0,0,0,0);tap-highlight-color:rgba(0,0,0,0);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.w-slider-arrow-left [class^="w-icon-"],.w-slider-arrow-right [class^="w-icon-"],.w-slider-arrow-left [class*=" w-icon-"],.w-slider-arrow-right [class*=" w-icon-"]{position:absolute}.w-slider-arrow-left{z-index:3;right:auto}.w-slider-arrow-right{z-index:4;left:auto}.w-icon-slider-left,.w-icon-slider-right{top:0;right:0;bottom:0;left:0;margin:auto;width:1em;height:1em}.w-dropdown{display:inline-block;position:relative;text-align:left;margin-left:auto;margin-right:auto;z-index:900}.w-dropdown-btn,.w-dropdown-toggle,.w-dropdown-link{position:relative;vertical-align:top;text-decoration:none;color:#222222;padding:20px;text-align:left;margin-left:auto;margin-right:auto;white-space:nowrap}.w-dropdown-toggle{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:inline-block;cursor:pointer;padding-right:40px}.w-icon-dropdown-toggle{position:absolute;top:0;right:0;bottom:0;margin:auto;margin-right:20px;width:1em;height:1em}.w-dropdown-list{position:absolute;background:#dddddd;display:none;min-width:100%}.w-dropdown-list.w--open{display:block}.w-dropdown-link{padding:10px 20px;display:block;color:#222222}.w-dropdown-link.w--current{color:#0082f3}.w-nav[data-collapse="all"] .w-dropdown,.w-nav[data-collapse="all"] .w-dropdown-toggle{display:block}.w-nav[data-collapse="all"] .w-dropdown-list{position:static}@media screen and (max-width:991px){.w-nav[data-collapse="medium"] .w-dropdown,.w-nav[data-collapse="medium"] .w-dropdown-toggle{display:block}.w-nav[data-collapse="medium"] .w-dropdown-list{position:static}}@media screen and (max-width:767px){.w-nav[data-collapse="small"] .w-dropdown,.w-nav[data-collapse="small"] .w-dropdown-toggle{display:block}.w-nav[data-collapse="small"] .w-dropdown-list{position:static}.w-nav-brand{padding-left:10px}}@media screen and (max-width:479px){.w-nav[data-collapse="tiny"] .w-dropdown,.w-nav[data-collapse="tiny"] .w-dropdown-toggle{display:block}.w-nav[data-collapse="tiny"] .w-dropdown-list{position:static}}.w-lightbox-backdrop{color:#000;cursor:auto;font-family:serif;font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;line-height:normal;list-style:disc;text-align:start;text-indent:0;text-shadow:none;text-transform:none;visibility:visible;white-space:normal;word-break:normal;word-spacing:normal;word-wrap:normal;position:fixed;top:0;right:0;bottom:0;left:0;color:#fff;font-family:"Helvetica Neue",Helvetica,Ubuntu,"Segoe UI",Verdana,sans-serif;font-size:17px;line-height:1.2;font-weight:300;text-align:center;background:rgba(0,0,0,0.9);z-index:2000;outline:0;opacity:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-tap-highlight-color:transparent;-webkit-transform:translate(0, 0)}.w-lightbox-backdrop,.w-lightbox-container{height:100%;overflow:auto;-webkit-overflow-scrolling:touch}.w-lightbox-content{position:relative;height:100vh;overflow:hidden}.w-lightbox-view{position:absolute;width:100vw;height:100vh;opacity:0}.w-lightbox-view:before{content:"";height:100vh}.w-lightbox-group,.w-lightbox-group .w-lightbox-view,.w-lightbox-group .w-lightbox-view:before{height:86vh}.w-lightbox-frame,.w-lightbox-view:before{display:inline-block;vertical-align:middle}.w-lightbox-figure{position:relative;margin:0}.w-lightbox-group .w-lightbox-figure{cursor:pointer}.w-lightbox-img{width:auto;height:auto;max-width:none}.w-lightbox-image{display:block;float:none;max-width:100vw;max-height:100vh}.w-lightbox-group .w-lightbox-image{max-height:86vh}.w-lightbox-caption{position:absolute;right:0;bottom:0;left:0;padding:.5em 1em;background:rgba(0,0,0,0.4);text-align:left;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.w-lightbox-embed{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.w-lightbox-control{position:absolute;top:0;width:4em;background-size:24px;background-repeat:no-repeat;background-position:center;cursor:pointer;-webkit-transition:all .3s;transition:all .3s}.w-lightbox-left{display:none;bottom:0;left:0;background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9Ii0yMCAwIDI0IDQwIiB3aWR0aD0iMjQiIGhlaWdodD0iNDAiPjxnIHRyYW5zZm9ybT0icm90YXRlKDQ1KSI+PHBhdGggZD0ibTAgMGg1djIzaDIzdjVoLTI4eiIgb3BhY2l0eT0iLjQiLz48cGF0aCBkPSJtMSAxaDN2MjNoMjN2M2gtMjZ6IiBmaWxsPSIjZmZmIi8+PC9nPjwvc3ZnPg==")}.w-lightbox-right{display:none;right:0;bottom:0;background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9Ii00IDAgMjQgNDAiIHdpZHRoPSIyNCIgaGVpZ2h0PSI0MCI+PGcgdHJhbnNmb3JtPSJyb3RhdGUoNDUpIj48cGF0aCBkPSJtMC0waDI4djI4aC01di0yM2gtMjN6IiBvcGFjaXR5PSIuNCIvPjxwYXRoIGQ9Im0xIDFoMjZ2MjZoLTN2LTIzaC0yM3oiIGZpbGw9IiNmZmYiLz48L2c+PC9zdmc+")}.w-lightbox-close{right:0;height:2.6em;background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9Ii00IDAgMTggMTciIHdpZHRoPSIxOCIgaGVpZ2h0PSIxNyI+PGcgdHJhbnNmb3JtPSJyb3RhdGUoNDUpIj48cGF0aCBkPSJtMCAwaDd2LTdoNXY3aDd2NWgtN3Y3aC01di03aC03eiIgb3BhY2l0eT0iLjQiLz48cGF0aCBkPSJtMSAxaDd2LTdoM3Y3aDd2M2gtN3Y3aC0zdi03aC03eiIgZmlsbD0iI2ZmZiIvPjwvZz48L3N2Zz4=");background-size:18px}.w-lightbox-strip{position:absolute;bottom:0;left:0;right:0;padding:0 1vh;line-height:0;white-space:nowrap;overflow-x:auto;overflow-y:hidden}.w-lightbox-item{display:inline-block;width:10vh;padding:2vh 1vh;box-sizing:content-box;cursor:pointer;-webkit-transform:translate3d(0, 0, 0)}.w-lightbox-active{opacity:.3}.w-lightbox-thumbnail{position:relative;height:10vh;background:#222;overflow:hidden}.w-lightbox-thumbnail-image{position:absolute;top:0;left:0}.w-lightbox-thumbnail .w-lightbox-tall{top:50%;width:100%;-webkit-transform:translate(0, -50%);-ms-transform:translate(0, -50%);transform:translate(0, -50%)}.w-lightbox-thumbnail .w-lightbox-wide{left:50%;height:100%;-webkit-transform:translate(-50%, 0);-ms-transform:translate(-50%, 0);transform:translate(-50%, 0)}.w-lightbox-spinner{position:absolute;top:50%;left:50%;box-sizing:border-box;width:40px;height:40px;margin-top:-20px;margin-left:-20px;border:5px solid rgba(0,0,0,0.4);border-radius:50%;-webkit-animation:spin .8s infinite linear;animation:spin .8s infinite linear}.w-lightbox-spinner:after{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border:3px solid transparent;border-bottom-color:#fff;border-radius:50%}.w-lightbox-hide{display:none}.w-lightbox-noscroll{overflow:hidden}@media (min-width:768px){.w-lightbox-content{height:96vh;margin-top:2vh}.w-lightbox-view,.w-lightbox-view:before{height:96vh}.w-lightbox-group,.w-lightbox-group .w-lightbox-view,.w-lightbox-group .w-lightbox-view:before{height:84vh}.w-lightbox-image{max-width:96vw;max-height:96vh}.w-lightbox-group .w-lightbox-image{max-width:82.3vw;max-height:84vh}.w-lightbox-left,.w-lightbox-right{display:block;opacity:.5}.w-lightbox-close{opacity:.8}.w-lightbox-control:hover{opacity:1}}.w-lightbox-inactive,.w-lightbox-inactive:hover{opacity:0}.w-richtext:before,.w-richtext:after{content:" ";display:table;grid-column-start:1;grid-row-start:1;grid-column-end:2;grid-row-end:2}.w-richtext:after{clear:both}.w-richtext[contenteditable="true"]:before,.w-richtext[contenteditable="true"]:after{white-space:initial}.w-richtext ol,.w-richtext ul{overflow:hidden}.w-richtext .w-richtext-figure-selected.w-richtext-figure-type-video div:before,.w-richtext .w-richtext-figure-selected[data-rt-type="video"] div:before{outline:2px solid #2895f7}.w-richtext .w-richtext-figure-selected.w-richtext-figure-type-image div,.w-richtext .w-richtext-figure-selected[data-rt-type="image"] div{outline:2px solid #2895f7}.w-richtext figure.w-richtext-figure-type-video>div:before,.w-richtext figure[data-rt-type="video"]>div:before{content:'';position:absolute;display:none;left:0;top:0;right:0;bottom:0;z-index:1}.w-richtext figure{position:relative;max-width:60%}.w-richtext figure>div:before{cursor:default !important}.w-richtext figure img{width:100%}.w-richtext figure figcaption.w-richtext-figcaption-placeholder{opacity:.6}.w-richtext figure div{font-size:0;color:transparent}.w-richtext figure.w-richtext-figure-type-image,.w-richtext figure[data-rt-type="image"]{display:table}.w-richtext figure.w-richtext-figure-type-image>div,.w-richtext figure[data-rt-type="image"]>div{display:inline-block}.w-richtext figure.w-richtext-figure-type-image>figcaption,.w-richtext figure[data-rt-type="image"]>figcaption{display:table-caption;caption-side:bottom}.w-richtext figure.w-richtext-figure-type-video,.w-richtext figure[data-rt-type="video"]{width:60%;height:0}.w-richtext figure.w-richtext-figure-type-video iframe,.w-richtext figure[data-rt-type="video"] iframe{position:absolute;top:0;left:0;width:100%;height:100%}.w-richtext figure.w-richtext-figure-type-video>div,.w-richtext figure[data-rt-type="video"]>div{width:100%}.w-richtext figure.w-richtext-align-center{margin-right:auto;margin-left:auto;clear:both}.w-richtext figure.w-richtext-align-center.w-richtext-figure-type-image>div,.w-richtext figure.w-richtext-align-center[data-rt-type="image"]>div{max-width:100%}.w-richtext figure.w-richtext-align-normal{clear:both}.w-richtext figure.w-richtext-align-fullwidth{width:100%;max-width:100%;text-align:center;clear:both;display:block;margin-right:auto;margin-left:auto}.w-richtext figure.w-richtext-align-fullwidth>div{display:inline-block;padding-bottom:inherit}.w-richtext figure.w-richtext-align-fullwidth>figcaption{display:block}.w-richtext figure.w-richtext-align-floatleft{float:left;margin-right:15px;clear:none}.w-richtext figure.w-richtext-align-floatright{float:right;margin-left:15px;clear:none}.w-nav{position:relative;background:#dddddd;z-index:1000}.w-nav:before,.w-nav:after{content:" ";display:table;grid-column-start:1;grid-row-start:1;grid-column-end:2;grid-row-end:2}.w-nav:after{clear:both}.w-nav-brand{position:relative;float:left;text-decoration:none;color:#333333}.w-nav-link{position:relative;display:inline-block;vertical-align:top;text-decoration:none;color:#222222;padding:20px;text-align:left;margin-left:auto;margin-right:auto}.w-nav-link.w--current{color:#0082f3}.w-nav-menu{position:relative;float:right}.w--nav-menu-open{display:block !important;position:absolute;top:100%;left:0;right:0;background:#C8C8C8;text-align:center;overflow:visible;min-width:200px}.w--nav-link-open{display:block;position:relative}.w-nav-overlay{position:absolute;overflow:hidden;display:none;top:100%;left:0;right:0;width:100%}.w-nav-overlay .w--nav-menu-open{top:0}.w-nav[data-animation="over-left"] .w-nav-overlay{width:auto}.w-nav[data-animation="over-left"] .w-nav-overlay,.w-nav[data-animation="over-left"] .w--nav-menu-open{right:auto;z-index:1;top:0}.w-nav[data-animation="over-right"] .w-nav-overlay{width:auto}.w-nav[data-animation="over-right"] .w-nav-overlay,.w-nav[data-animation="over-right"] .w--nav-menu-open{left:auto;z-index:1;top:0}.w-nav-button{position:relative;float:right;padding:18px;font-size:24px;display:none;cursor:pointer;-webkit-tap-highlight-color:rgba(0,0,0,0);tap-highlight-color:rgba(0,0,0,0);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.w-nav-button.w--open{background-color:#C8C8C8;color:white}.w-nav[data-collapse="all"] .w-nav-menu{display:none}.w-nav[data-collapse="all"] .w-nav-button{display:block}@media screen and (max-width:991px){.w-nav[data-collapse="medium"] .w-nav-menu{display:none}.w-nav[data-collapse="medium"] .w-nav-button{display:block}}@media screen and (max-width:767px){.w-nav[data-collapse="small"] .w-nav-menu{display:none}.w-nav[data-collapse="small"] .w-nav-button{display:block}.w-nav-brand{padding-left:10px}}@media screen and (max-width:479px){.w-nav[data-collapse="tiny"] .w-nav-menu{display:none}.w-nav[data-collapse="tiny"] .w-nav-button{display:block}}.w-tabs{position:relative}.w-tabs:before,.w-tabs:after{content:" ";display:table;grid-column-start:1;grid-row-start:1;grid-column-end:2;grid-row-end:2}.w-tabs:after{clear:both}.w-tab-menu{position:relative}.w-tab-link{position:relative;display:inline-block;vertical-align:top;text-decoration:none;padding:9px 30px;text-align:left;cursor:pointer;color:#222222;background-color:#dddddd}.w-tab-link.w--current{background-color:#C8C8C8}.w-tab-content{position:relative;display:block;overflow:hidden}.w-tab-pane{position:relative;display:none}.w--tab-active{display:block}@media screen and (max-width:479px){.w-tab-link{display:block}}.w-ix-emptyfix:after{content:""}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.w-dyn-empty{padding:10px;background-color:#dddddd}.w-dyn-bind-empty{display:none !important}.w-condition-invisible{display:none !important}

/* ==========================================================================
   Start of custom Webflow CSS
   ========================================================================== */
.w-commerce-commercecartwrapper {
  display: inline-block;
  position: relative;
}

.w-commerce-commercecartopenlink {
  background-color: #3898ec;
  border-bottom-left-radius: 0px;
  border-bottom-right-radius: 0px;
  border-top-left-radius: 0px;
  border-top-right-radius: 0px;
  border-bottom-width: 0px;
  border-left-width: 0px;
  border-right-width: 0px;
  border-top-width: 0px;
  color: #fff;
  cursor: pointer;
  padding-top: 9px;
  padding-bottom: 9px;
  padding-left: 15px;
  padding-right: 15px;
  text-decoration: none;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.w-commerce-commercecartopenlinkcount {
  display: inline-block;
  height: 18px;
  min-width: 18px;
  margin-left: 8px;
  padding-right: 6px;
  padding-left: 6px;
  border-bottom-left-radius: 9px;
  border-bottom-right-radius: 9px;
  border-top-left-radius: 9px;
  border-top-right-radius: 9px;
  background-color: #fff;
  color: #3898ec;
  font-size: 11px;
  line-height: 18px;
  font-weight: 700;
  text-align: center;
}

.w-commerce-commercecartcontainerwrapper {
  position: fixed;
  left: 0px;
  top: 0px;
  right: 0px;
  bottom: 0px;
  z-index: 2;
  background-color: rgba(0, 0, 0, .8);
}

.w-commerce-commercecartcontainerwrapper--cartType-modal {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

.w-commerce-commercecartcontainerwrapper--cartType-leftSidebar {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
}

.w-commerce-commercecartcontainerwrapper--cartType-rightSidebar {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
}

.w-commerce-commercecartcontainerwrapper--cartType-leftDropdown {
  position: absolute;
  top: 100%;
  left: 0px;
  right: auto;
  bottom: auto;
  background-color: transparent;
}

.w-commerce-commercecartcontainerwrapper--cartType-rightDropdown {
  position: absolute;
  left: auto;
  top: 100%;
  right: 0px;
  bottom: auto;
  background-color: transparent;
}

.w-commerce-commercecartcontainer {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  max-width: 480px;
  min-width: 320px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  background-color: #fff;
  box-shadow: 0px 5px 25px 0px rgba(0, 0, 0, .25);
}

.w-commerce-commercecartheader {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding-top: 16px;
  padding-bottom: 16px;
  padding-left: 24px;
  padding-right: 24px;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-flex: 0;
  -webkit-flex-grow: 0;
  -ms-flex-positive: 0;
  flex-grow: 0;
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  -webkit-flex-basis: auto;
  -ms-flex-preferred-size: auto;
  flex-basis: auto;
  border-bottom-width: 1px;
  border-bottom-style: solid;
  border-bottom-color: #e6e6e6;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

.w-commerce-commercecartheading {
  margin-top: 0px;
  margin-bottom: 0px;
  padding-left: 0px;
  padding-right: 0px;
}

.w-commerce-commercecartcloselink {
  width: 16px;
  height: 16px;
}

.w-commerce-commercecartformwrapper {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -webkit-flex-shrink: 1;
  -ms-flex-negative: 1;
  flex-shrink: 1;
  -webkit-flex-basis: 0%;
  -ms-flex-preferred-size: 0%;
  flex-basis: 0%;
}

.w-commerce-commercecartform {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -webkit-flex-shrink: 1;
  -ms-flex-negative: 1;
  flex-shrink: 1;
  -webkit-flex-basis: 0%;
  -ms-flex-preferred-size: 0%;
  flex-basis: 0%;
}

.w-commerce-commercecartlist {
  overflow: auto;
  padding-top: 12px;
  padding-bottom: 12px;
  padding-left: 24px;
  padding-right: 24px;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -webkit-flex-shrink: 1;
  -ms-flex-negative: 1;
  flex-shrink: 1;
  -webkit-flex-basis: 0%;
  -ms-flex-preferred-size: 0%;
  flex-basis: 0%;
  -webkit-overflow-scrolling: touch;
}

.w-commerce-commercecartitem {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding-top: 12px;
  padding-bottom: 12px;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
}

.w-commerce-commercecartitemimage {
  width: 60px;
  height: 0%;
}

.w-commerce-commercecartiteminfo {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-right: 16px;
  margin-left: 16px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -webkit-flex-shrink: 1;
  -ms-flex-negative: 1;
  flex-shrink: 1;
  -webkit-flex-basis: 0%;
  -ms-flex-preferred-size: 0%;
  flex-basis: 0%;
}

.w-commerce-commercecartproductname {
  font-weight: 700;
}

.w-commerce-commercecartoptionlist {
  text-decoration: none;
  padding-left: 0px;
  margin-bottom: 0px;
  list-style-type: none;
}

.w-commerce-commercecartquantity {
  background-color: #fafafa;
  border-top-style: solid;
  border-top-width: 1px;
  border-top-color: #ddd;
  border-right-style: solid;
  border-right-width: 1px;
  border-right-color: #ddd;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  border-bottom-color: #ddd;
  border-left-style: solid;
  border-left-width: 1px;
  border-left-color: #ddd;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  display: block;
  height: 38px;
  line-height: 20px;
  margin-bottom: 10px;
  padding-top: 8px;
  padding-right: 6px;
  padding-bottom: 8px;
  padding-left: 12px;
  width: 60px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.w-commerce-commercecartquantity::-webkit-input-placeholder {
  color: #999;
}

.w-commerce-commercecartquantity:-ms-input-placeholder {
  color: #999;
}

.w-commerce-commercecartquantity::-ms-input-placeholder {
  color: #999;
}

.w-commerce-commercecartquantity::placeholder {
  color: #999;
}

.w-commerce-commercecartquantity:focus {
  border-top-color: #3898ec;
  border-right-color: #3898ec;
  border-bottom-color: #3898ec;
  border-left-color: #3898ec;
  outline-style: none;
}

.w-commerce-commercecartfooter {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding-top: 16px;
  padding-bottom: 24px;
  padding-left: 24px;
  padding-right: 24px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-flex: 0;
  -webkit-flex-grow: 0;
  -ms-flex-positive: 0;
  flex-grow: 0;
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  -webkit-flex-basis: auto;
  -ms-flex-preferred-size: auto;
  flex-basis: auto;
  border-top-style: solid;
  border-top-width: 1px;
  border-top-color: #e6e6e6;
}

.w-commerce-commercecartlineitem {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 16px;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: baseline;
  -webkit-align-items: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
  -webkit-box-flex: 0;
  -webkit-flex-grow: 0;
  -ms-flex-positive: 0;
  flex-grow: 0;
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  -webkit-flex-basis: auto;
  -ms-flex-preferred-size: auto;
  flex-basis: auto;
}

.w-commerce-commercecartordervalue {
  font-weight: 700;
}

.w-commerce-commercecartapplepaybutton {
  background-color: #000;
  border-bottom-left-radius: 2px;
  border-bottom-right-radius: 2px;
  border-top-left-radius: 2px;
  border-top-right-radius: 2px;
  border-bottom-width: 0px;
  border-left-width: 0px;
  border-right-width: 0px;
  border-top-width: 0px;
  color: #fff;
  cursor: pointer;
  padding-top: 0px;
  padding-bottom: 0px;
  padding-left: 0px;
  padding-right: 0px;
  text-decoration: none;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  margin-bottom: 8px;
  height: 38px;
  min-height: 30px;
}

.w-commerce-commercecartapplepayicon {
  width: 100%;
  height: 50%;
  min-height: 20px;
}

.w-commerce-commercecartquickcheckoutbutton {
  background-color: #000;
  border-bottom-left-radius: 2px;
  border-bottom-right-radius: 2px;
  border-top-left-radius: 2px;
  border-top-right-radius: 2px;
  border-bottom-width: 0px;
  border-left-width: 0px;
  border-right-width: 0px;
  border-top-width: 0px;
  color: #fff;
  cursor: pointer;
  padding-top: 0px;
  padding-bottom: 0px;
  padding-left: 15px;
  padding-right: 15px;
  text-decoration: none;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-bottom: 8px;
  height: 38px;
}

.w-commerce-commercequickcheckoutgoogleicon {
  display: block;
  margin-right: 8px;
}

.w-commerce-commercequickcheckoutmicrosofticon {
  display: block;
  margin-right: 8px;
}

.w-commerce-commercecartcheckoutbutton {
  background-color: #3898ec;
  border-bottom-left-radius: 2px;
  border-bottom-right-radius: 2px;
  border-top-left-radius: 2px;
  border-top-right-radius: 2px;
  border-bottom-width: 0px;
  border-left-width: 0px;
  border-right-width: 0px;
  border-top-width: 0px;
  color: #fff;
  cursor: pointer;
  padding-top: 9px;
  padding-bottom: 9px;
  padding-left: 15px;
  padding-right: 15px;
  text-decoration: none;
  display: block;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  text-align: center;
}

.w-commerce-commercecartemptystate {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding-top: 100px;
  padding-bottom: 100px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -webkit-flex-shrink: 1;
  -ms-flex-negative: 1;
  flex-shrink: 1;
  -webkit-flex-basis: 0%;
  -ms-flex-preferred-size: 0%;
  flex-basis: 0%;
}

.w-commerce-commercecarterrorstate {
  margin-top: 0px;
  margin-right: 24px;
  margin-bottom: 24px;
  margin-left: 24px;
  padding-top: 10px;
  padding-right: 10px;
  padding-bottom: 10px;
  padding-left: 10px;
  -webkit-box-flex: 0;
  -webkit-flex-grow: 0;
  -ms-flex-positive: 0;
  flex-grow: 0;
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  -webkit-flex-basis: auto;
  -ms-flex-preferred-size: auto;
  flex-basis: auto;
  background-color: #ffdede;
}

.w-commerce-commerceaddtocartform {
  margin-top: 0px;
  margin-right: 0px;
  margin-bottom: 15px;
  margin-left: 0px;
}

.w-commerce-commerceaddtocartquantityinput {
  background-color: #fafafa;
  border-top-style: solid;
  border-top-width: 1px;
  border-top-color: #ddd;
  border-right-style: solid;
  border-right-width: 1px;
  border-right-color: #ddd;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  border-bottom-color: #ddd;
  border-left-style: solid;
  border-left-width: 1px;
  border-left-color: #ddd;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  display: block;
  height: 38px;
  line-height: 20px;
  margin-bottom: 10px;
  padding-top: 8px;
  padding-right: 6px;
  padding-bottom: 8px;
  padding-left: 12px;
  width: 60px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.w-commerce-commerceaddtocartquantityinput::-webkit-input-placeholder {
  color: #999;
}

.w-commerce-commerceaddtocartquantityinput:-ms-input-placeholder {
  color: #999;
}

.w-commerce-commerceaddtocartquantityinput::-ms-input-placeholder {
  color: #999;
}

.w-commerce-commerceaddtocartquantityinput::placeholder {
  color: #999;
}

.w-commerce-commerceaddtocartquantityinput:focus {
  border-top-color: #3898ec;
  border-right-color: #3898ec;
  border-bottom-color: #3898ec;
  border-left-color: #3898ec;
  outline-style: none;
}

.w-commerce-commerceaddtocartbutton {
  background-color: #3898ec;
  border-bottom-left-radius: 0px;
  border-bottom-right-radius: 0px;
  border-top-left-radius: 0px;
  border-top-right-radius: 0px;
  border-bottom-width: 0px;
  border-left-width: 0px;
  border-right-width: 0px;
  border-top-width: 0px;
  color: #fff;
  cursor: pointer;
  padding-top: 9px;
  padding-bottom: 9px;
  padding-left: 15px;
  padding-right: 15px;
  text-decoration: none;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.w-commerce-commerceaddtocartoutofstock {
  margin-top: 10px;
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 10px;
  padding-right: 10px;
  background-color: #ddd;
}

.w-commerce-commerceaddtocarterror {
  margin-top: 10px;
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 10px;
  padding-right: 10px;
  background-color: #ffdede;
}

.w-commerce-commercecheckoutformcontainer {
  width: 100%;
  min-height: 100vh;
  padding-top: 20px;
  padding-bottom: 20px;
  padding-right: 20px;
  padding-left: 20px;
  background-color: #f5f5f5;
}

.w-commerce-commercelayoutmain {
  -webkit-flex-basis: 800px;
  -ms-flex-preferred-size: 800px;
  flex-basis: 800px;
  -webkit-box-flex: 0;
  -webkit-flex-grow: 0;
  -ms-flex-positive: 0;
  flex-grow: 0;
  -webkit-flex-shrink: 1;
  -ms-flex-negative: 1;
  flex-shrink: 1;
  margin-right: 20px;
}

.w-commerce-commercecheckoutcustomerinfowrapper {
  margin-bottom: 20px;
}

.w-commerce-commercecheckoutblockheader {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: baseline;
  -webkit-align-items: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
  padding-top: 4px;
  padding-bottom: 4px;
  padding-right: 20px;
  padding-left: 20px;
  border-top-style: solid;
  border-top-width: 1px;
  border-top-color: #e6e6e6;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  border-bottom-color: #e6e6e6;
  border-right-style: solid;
  border-right-width: 1px;
  border-right-color: #e6e6e6;
  border-left-style: solid;
  border-left-width: 1px;
  border-left-color: #e6e6e6;
  background-color: #fff;
}

.w-commerce-commercecheckoutblockcontent {
  padding-top: 20px;
  padding-bottom: 20px;
  padding-right: 20px;
  padding-left: 20px;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  border-bottom-color: #e6e6e6;
  border-right-style: solid;
  border-right-width: 1px;
  border-right-color: #e6e6e6;
  border-left-style: solid;
  border-left-width: 1px;
  border-left-color: #e6e6e6;
  background-color: #fff;
}

.w-commerce-commercecheckoutlabel {
  margin-bottom: 8px;
}

.w-commerce-commercecheckoutemailinput {
  background-color: #fafafa;
  border-top-style: solid;
  border-top-width: 1px;
  border-top-color: #ddd;
  border-right-style: solid;
  border-right-width: 1px;
  border-right-color: #ddd;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  border-bottom-color: #ddd;
  border-left-style: solid;
  border-left-width: 1px;
  border-left-color: #ddd;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  display: block;
  height: 38px;
  line-height: 20px;
  margin-bottom: 0px;
  padding-top: 8px;
  padding-right: 12px;
  padding-bottom: 8px;
  padding-left: 12px;
  width: 100%;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.w-commerce-commercecheckoutemailinput::-webkit-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutemailinput:-ms-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutemailinput::-ms-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutemailinput::placeholder {
  color: #999;
}

.w-commerce-commercecheckoutemailinput:focus {
  border-top-color: #3898ec;
  border-right-color: #3898ec;
  border-bottom-color: #3898ec;
  border-left-color: #3898ec;
  outline-style: none;
}

.w-commerce-commercecheckoutshippingaddresswrapper {
  margin-bottom: 20px;
}

.w-commerce-commercecheckoutshippingfullname {
  background-color: #fafafa;
  border-top-style: solid;
  border-top-width: 1px;
  border-top-color: #ddd;
  border-right-style: solid;
  border-right-width: 1px;
  border-right-color: #ddd;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  border-bottom-color: #ddd;
  border-left-style: solid;
  border-left-width: 1px;
  border-left-color: #ddd;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  display: block;
  height: 38px;
  line-height: 20px;
  margin-bottom: 16px;
  padding-top: 8px;
  padding-right: 12px;
  padding-bottom: 8px;
  padding-left: 12px;
  width: 100%;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.w-commerce-commercecheckoutshippingfullname::-webkit-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutshippingfullname:-ms-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutshippingfullname::-ms-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutshippingfullname::placeholder {
  color: #999;
}

.w-commerce-commercecheckoutshippingfullname:focus {
  border-top-color: #3898ec;
  border-right-color: #3898ec;
  border-bottom-color: #3898ec;
  border-left-color: #3898ec;
  outline-style: none;
}

.w-commerce-commercecheckoutshippingstreetaddress {
  background-color: #fafafa;
  border-top-style: solid;
  border-top-width: 1px;
  border-top-color: #ddd;
  border-right-style: solid;
  border-right-width: 1px;
  border-right-color: #ddd;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  border-bottom-color: #ddd;
  border-left-style: solid;
  border-left-width: 1px;
  border-left-color: #ddd;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  display: block;
  height: 38px;
  line-height: 20px;
  margin-bottom: 16px;
  padding-top: 8px;
  padding-right: 12px;
  padding-bottom: 8px;
  padding-left: 12px;
  width: 100%;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.w-commerce-commercecheckoutshippingstreetaddress::-webkit-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutshippingstreetaddress:-ms-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutshippingstreetaddress::-ms-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutshippingstreetaddress::placeholder {
  color: #999;
}

.w-commerce-commercecheckoutshippingstreetaddress:focus {
  border-top-color: #3898ec;
  border-right-color: #3898ec;
  border-bottom-color: #3898ec;
  border-left-color: #3898ec;
  outline-style: none;
}

.w-commerce-commercecheckoutshippingstreetaddressoptional {
  background-color: #fafafa;
  border-top-style: solid;
  border-top-width: 1px;
  border-top-color: #ddd;
  border-right-style: solid;
  border-right-width: 1px;
  border-right-color: #ddd;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  border-bottom-color: #ddd;
  border-left-style: solid;
  border-left-width: 1px;
  border-left-color: #ddd;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  display: block;
  height: 38px;
  line-height: 20px;
  margin-bottom: 16px;
  padding-top: 8px;
  padding-right: 12px;
  padding-bottom: 8px;
  padding-left: 12px;
  width: 100%;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.w-commerce-commercecheckoutshippingstreetaddressoptional::-webkit-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutshippingstreetaddressoptional:-ms-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutshippingstreetaddressoptional::-ms-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutshippingstreetaddressoptional::placeholder {
  color: #999;
}

.w-commerce-commercecheckoutshippingstreetaddressoptional:focus {
  border-top-color: #3898ec;
  border-right-color: #3898ec;
  border-bottom-color: #3898ec;
  border-left-color: #3898ec;
  outline-style: none;
}

.w-commerce-commercecheckoutrow {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-right: -8px;
  margin-left: -8px;
}

.w-commerce-commercecheckoutcolumn {
  padding-right: 8px;
  padding-left: 8px;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -webkit-flex-shrink: 1;
  -ms-flex-negative: 1;
  flex-shrink: 1;
  -webkit-flex-basis: 0%;
  -ms-flex-preferred-size: 0%;
  flex-basis: 0%;
}

.w-commerce-commercecheckoutshippingcity {
  background-color: #fafafa;
  border-top-style: solid;
  border-top-width: 1px;
  border-top-color: #ddd;
  border-right-style: solid;
  border-right-width: 1px;
  border-right-color: #ddd;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  border-bottom-color: #ddd;
  border-left-style: solid;
  border-left-width: 1px;
  border-left-color: #ddd;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  display: block;
  height: 38px;
  line-height: 20px;
  margin-bottom: 16px;
  padding-top: 8px;
  padding-right: 12px;
  padding-bottom: 8px;
  padding-left: 12px;
  width: 100%;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.w-commerce-commercecheckoutshippingcity::-webkit-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutshippingcity:-ms-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutshippingcity::-ms-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutshippingcity::placeholder {
  color: #999;
}

.w-commerce-commercecheckoutshippingcity:focus {
  border-top-color: #3898ec;
  border-right-color: #3898ec;
  border-bottom-color: #3898ec;
  border-left-color: #3898ec;
  outline-style: none;
}

.w-commerce-commercecheckoutshippingstateprovince {
  background-color: #fafafa;
  border-top-style: solid;
  border-top-width: 1px;
  border-top-color: #ddd;
  border-right-style: solid;
  border-right-width: 1px;
  border-right-color: #ddd;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  border-bottom-color: #ddd;
  border-left-style: solid;
  border-left-width: 1px;
  border-left-color: #ddd;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  display: block;
  height: 38px;
  line-height: 20px;
  margin-bottom: 16px;
  padding-top: 8px;
  padding-right: 12px;
  padding-bottom: 8px;
  padding-left: 12px;
  width: 100%;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.w-commerce-commercecheckoutshippingstateprovince::-webkit-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutshippingstateprovince:-ms-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutshippingstateprovince::-ms-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutshippingstateprovince::placeholder {
  color: #999;
}

.w-commerce-commercecheckoutshippingstateprovince:focus {
  border-top-color: #3898ec;
  border-right-color: #3898ec;
  border-bottom-color: #3898ec;
  border-left-color: #3898ec;
  outline-style: none;
}

.w-commerce-commercecheckoutshippingzippostalcode {
  background-color: #fafafa;
  border-top-style: solid;
  border-top-width: 1px;
  border-top-color: #ddd;
  border-right-style: solid;
  border-right-width: 1px;
  border-right-color: #ddd;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  border-bottom-color: #ddd;
  border-left-style: solid;
  border-left-width: 1px;
  border-left-color: #ddd;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  display: block;
  height: 38px;
  line-height: 20px;
  margin-bottom: 16px;
  padding-top: 8px;
  padding-right: 12px;
  padding-bottom: 8px;
  padding-left: 12px;
  width: 100%;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.w-commerce-commercecheckoutshippingzippostalcode::-webkit-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutshippingzippostalcode:-ms-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutshippingzippostalcode::-ms-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutshippingzippostalcode::placeholder {
  color: #999;
}

.w-commerce-commercecheckoutshippingzippostalcode:focus {
  border-top-color: #3898ec;
  border-right-color: #3898ec;
  border-bottom-color: #3898ec;
  border-left-color: #3898ec;
  outline-style: none;
}

.w-commerce-commercecheckoutshippingcountryselector {
  background-color: #fafafa;
  border-top-style: solid;
  border-top-width: 1px;
  border-top-color: #ddd;
  border-right-style: solid;
  border-right-width: 1px;
  border-right-color: #ddd;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  border-bottom-color: #ddd;
  border-left-style: solid;
  border-left-width: 1px;
  border-left-color: #ddd;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  display: block;
  height: 38px;
  line-height: 20px;
  margin-bottom: 0px;
  padding-top: 8px;
  padding-right: 12px;
  padding-bottom: 8px;
  padding-left: 12px;
  width: 100%;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.w-commerce-commercecheckoutshippingcountryselector::-webkit-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutshippingcountryselector:-ms-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutshippingcountryselector::-ms-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutshippingcountryselector::placeholder {
  color: #999;
}

.w-commerce-commercecheckoutshippingcountryselector:focus {
  border-top-color: #3898ec;
  border-right-color: #3898ec;
  border-bottom-color: #3898ec;
  border-left-color: #3898ec;
  outline-style: none;
}

.w-commerce-commercecheckoutshippingmethodswrapper {
  margin-bottom: 20px;
}

.w-commerce-commercecheckoutshippingmethodslist {
  border-left-color: #e6e6e6;
  border-left-width: 1px;
  border-left-style: solid;
  border-right-color: #e6e6e6;
  border-right-width: 1px;
  border-right-style: solid;
}

.w-commerce-commercecheckoutshippingmethoditem {
  padding-top: 16px;
  padding-bottom: 16px;
  padding-right: 16px;
  padding-left: 16px;
  font-weight: 400;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  border-bottom-color: #e6e6e6;
  border-bottom-width: 1px;
  border-bottom-style: solid;
  margin-bottom: 0px;
  background-color: #fff;
  -webkit-box-align: baseline;
  -webkit-align-items: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
}

.w-commerce-commercecheckoutshippingmethoddescriptionblock {
  margin-left: 12px;
  margin-right: 12px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}

.w-commerce-commerceboldtextblock {
  font-weight: 700;
}

.w-commerce-commercecheckoutshippingmethodsemptystate {
  text-align: center;
  padding-left: 16px;
  padding-right: 16px;
  padding-top: 64px;
  padding-bottom: 64px;
  border-left-style: solid;
  border-left-width: 1px;
  border-left-color: #e6e6e6;
  border-right-style: solid;
  border-right-width: 1px;
  border-right-color: #e6e6e6;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  border-bottom-color: #e6e6e6;
  background-color: #fff;
}

.w-commerce-commercecheckoutpaymentinfowrapper {
  margin-bottom: 20px;
}

.w-commerce-commercecheckoutcardnumber,
.w-commerce-commercecheckoutcardnumber {
  background-color: #fafafa;
  border-top-style: solid;
  border-top-width: 1px;
  border-top-color: #ddd;
  border-right-style: solid;
  border-right-width: 1px;
  border-right-color: #ddd;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  border-bottom-color: #ddd;
  border-left-style: solid;
  border-left-width: 1px;
  border-left-color: #ddd;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  display: block;
  height: 38px;
  line-height: 20px;
  margin-bottom: 16px;
  padding-top: 8px;
  padding-right: 12px;
  padding-bottom: 8px;
  padding-left: 12px;
  width: 100%;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.w-commerce-commercecheckoutcardnumber::-webkit-input-placeholder,
.w-commerce-commercecheckoutcardnumber::-webkit-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutcardnumber:-ms-input-placeholder,
.w-commerce-commercecheckoutcardnumber:-ms-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutcardnumber::-ms-input-placeholder,
.w-commerce-commercecheckoutcardnumber::-ms-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutcardnumber::placeholder,
.w-commerce-commercecheckoutcardnumber::placeholder {
  color: #999;
}

.w-commerce-commercecheckoutcardnumber:focus,
.w-commerce-commercecheckoutcardnumber.-wfp-focus {
  border-top-color: #3898ec;
  border-right-color: #3898ec;
  border-bottom-color: #3898ec;
  border-left-color: #3898ec;
  outline-style: none;
}

.w-commerce-commercecheckoutcardexpirationdate,
.w-commerce-commercecheckoutcardexpirationdate {
  background-color: #fafafa;
  border-top-style: solid;
  border-top-width: 1px;
  border-top-color: #ddd;
  border-right-style: solid;
  border-right-width: 1px;
  border-right-color: #ddd;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  border-bottom-color: #ddd;
  border-left-style: solid;
  border-left-width: 1px;
  border-left-color: #ddd;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  display: block;
  height: 38px;
  line-height: 20px;
  margin-bottom: 16px;
  padding-top: 8px;
  padding-right: 12px;
  padding-bottom: 8px;
  padding-left: 12px;
  width: 100%;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.w-commerce-commercecheckoutcardexpirationdate::-webkit-input-placeholder,
.w-commerce-commercecheckoutcardexpirationdate::-webkit-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutcardexpirationdate:-ms-input-placeholder,
.w-commerce-commercecheckoutcardexpirationdate:-ms-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutcardexpirationdate::-ms-input-placeholder,
.w-commerce-commercecheckoutcardexpirationdate::-ms-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutcardexpirationdate::placeholder,
.w-commerce-commercecheckoutcardexpirationdate::placeholder {
  color: #999;
}

.w-commerce-commercecheckoutcardexpirationdate:focus,
.w-commerce-commercecheckoutcardexpirationdate.-wfp-focus {
  border-top-color: #3898ec;
  border-right-color: #3898ec;
  border-bottom-color: #3898ec;
  border-left-color: #3898ec;
  outline-style: none;
}

.w-commerce-commercecheckoutcardsecuritycode,
.w-commerce-commercecheckoutcardsecuritycode {
  background-color: #fafafa;
  border-top-style: solid;
  border-top-width: 1px;
  border-top-color: #ddd;
  border-right-style: solid;
  border-right-width: 1px;
  border-right-color: #ddd;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  border-bottom-color: #ddd;
  border-left-style: solid;
  border-left-width: 1px;
  border-left-color: #ddd;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  display: block;
  height: 38px;
  line-height: 20px;
  margin-bottom: 16px;
  padding-top: 8px;
  padding-right: 12px;
  padding-bottom: 8px;
  padding-left: 12px;
  width: 100%;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.w-commerce-commercecheckoutcardsecuritycode::-webkit-input-placeholder,
.w-commerce-commercecheckoutcardsecuritycode::-webkit-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutcardsecuritycode:-ms-input-placeholder,
.w-commerce-commercecheckoutcardsecuritycode:-ms-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutcardsecuritycode::-ms-input-placeholder,
.w-commerce-commercecheckoutcardsecuritycode::-ms-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutcardsecuritycode::placeholder,
.w-commerce-commercecheckoutcardsecuritycode::placeholder {
  color: #999;
}

.w-commerce-commercecheckoutcardsecuritycode:focus,
.w-commerce-commercecheckoutcardsecuritycode.-wfp-focus {
  border-top-color: #3898ec;
  border-right-color: #3898ec;
  border-bottom-color: #3898ec;
  border-left-color: #3898ec;
  outline-style: none;
}

.w-commerce-commercecheckoutbillingaddresstogglewrapper {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
}

.w-commerce-commercecheckoutbillingaddresstogglecheckbox {
  margin-top: 4px;
}

.w-commerce-commercecheckoutbillingaddresstogglelabel {
  font-weight: 400;
  margin-left: 8px;
}

.w-commerce-commercecheckoutbillingaddresswrapper {
  margin-top: 16px;
}

.w-commerce-commercecheckoutbillingfullname {
  background-color: #fafafa;
  border-top-style: solid;
  border-top-width: 1px;
  border-top-color: #ddd;
  border-right-style: solid;
  border-right-width: 1px;
  border-right-color: #ddd;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  border-bottom-color: #ddd;
  border-left-style: solid;
  border-left-width: 1px;
  border-left-color: #ddd;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  display: block;
  height: 38px;
  line-height: 20px;
  margin-bottom: 16px;
  padding-top: 8px;
  padding-right: 12px;
  padding-bottom: 8px;
  padding-left: 12px;
  width: 100%;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.w-commerce-commercecheckoutbillingfullname::-webkit-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutbillingfullname:-ms-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutbillingfullname::-ms-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutbillingfullname::placeholder {
  color: #999;
}

.w-commerce-commercecheckoutbillingfullname:focus {
  border-top-color: #3898ec;
  border-right-color: #3898ec;
  border-bottom-color: #3898ec;
  border-left-color: #3898ec;
  outline-style: none;
}

.w-commerce-commercecheckoutbillingstreetaddress {
  background-color: #fafafa;
  border-top-style: solid;
  border-top-width: 1px;
  border-top-color: #ddd;
  border-right-style: solid;
  border-right-width: 1px;
  border-right-color: #ddd;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  border-bottom-color: #ddd;
  border-left-style: solid;
  border-left-width: 1px;
  border-left-color: #ddd;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  display: block;
  height: 38px;
  line-height: 20px;
  margin-bottom: 16px;
  padding-top: 8px;
  padding-right: 12px;
  padding-bottom: 8px;
  padding-left: 12px;
  width: 100%;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.w-commerce-commercecheckoutbillingstreetaddress::-webkit-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutbillingstreetaddress:-ms-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutbillingstreetaddress::-ms-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutbillingstreetaddress::placeholder {
  color: #999;
}

.w-commerce-commercecheckoutbillingstreetaddress:focus {
  border-top-color: #3898ec;
  border-right-color: #3898ec;
  border-bottom-color: #3898ec;
  border-left-color: #3898ec;
  outline-style: none;
}

.w-commerce-commercecheckoutbillingstreetaddressoptional {
  background-color: #fafafa;
  border-top-style: solid;
  border-top-width: 1px;
  border-top-color: #ddd;
  border-right-style: solid;
  border-right-width: 1px;
  border-right-color: #ddd;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  border-bottom-color: #ddd;
  border-left-style: solid;
  border-left-width: 1px;
  border-left-color: #ddd;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  display: block;
  height: 38px;
  line-height: 20px;
  margin-bottom: 16px;
  padding-top: 8px;
  padding-right: 12px;
  padding-bottom: 8px;
  padding-left: 12px;
  width: 100%;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.w-commerce-commercecheckoutbillingstreetaddressoptional::-webkit-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutbillingstreetaddressoptional:-ms-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutbillingstreetaddressoptional::-ms-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutbillingstreetaddressoptional::placeholder {
  color: #999;
}

.w-commerce-commercecheckoutbillingstreetaddressoptional:focus {
  border-top-color: #3898ec;
  border-right-color: #3898ec;
  border-bottom-color: #3898ec;
  border-left-color: #3898ec;
  outline-style: none;
}

.w-commerce-commercecheckoutbillingcity {
  background-color: #fafafa;
  border-top-style: solid;
  border-top-width: 1px;
  border-top-color: #ddd;
  border-right-style: solid;
  border-right-width: 1px;
  border-right-color: #ddd;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  border-bottom-color: #ddd;
  border-left-style: solid;
  border-left-width: 1px;
  border-left-color: #ddd;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  display: block;
  height: 38px;
  line-height: 20px;
  margin-bottom: 16px;
  padding-top: 8px;
  padding-right: 12px;
  padding-bottom: 8px;
  padding-left: 12px;
  width: 100%;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.w-commerce-commercecheckoutbillingcity::-webkit-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutbillingcity:-ms-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutbillingcity::-ms-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutbillingcity::placeholder {
  color: #999;
}

.w-commerce-commercecheckoutbillingcity:focus {
  border-top-color: #3898ec;
  border-right-color: #3898ec;
  border-bottom-color: #3898ec;
  border-left-color: #3898ec;
  outline-style: none;
}

.w-commerce-commercecheckoutbillingstateprovince {
  background-color: #fafafa;
  border-top-style: solid;
  border-top-width: 1px;
  border-top-color: #ddd;
  border-right-style: solid;
  border-right-width: 1px;
  border-right-color: #ddd;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  border-bottom-color: #ddd;
  border-left-style: solid;
  border-left-width: 1px;
  border-left-color: #ddd;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  display: block;
  height: 38px;
  line-height: 20px;
  margin-bottom: 16px;
  padding-top: 8px;
  padding-right: 12px;
  padding-bottom: 8px;
  padding-left: 12px;
  width: 100%;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.w-commerce-commercecheckoutbillingstateprovince::-webkit-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutbillingstateprovince:-ms-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutbillingstateprovince::-ms-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutbillingstateprovince::placeholder {
  color: #999;
}

.w-commerce-commercecheckoutbillingstateprovince:focus {
  border-top-color: #3898ec;
  border-right-color: #3898ec;
  border-bottom-color: #3898ec;
  border-left-color: #3898ec;
  outline-style: none;
}

.w-commerce-commercecheckoutbillingzippostalcode {
  background-color: #fafafa;
  border-top-style: solid;
  border-top-width: 1px;
  border-top-color: #ddd;
  border-right-style: solid;
  border-right-width: 1px;
  border-right-color: #ddd;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  border-bottom-color: #ddd;
  border-left-style: solid;
  border-left-width: 1px;
  border-left-color: #ddd;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  display: block;
  height: 38px;
  line-height: 20px;
  margin-bottom: 16px;
  padding-top: 8px;
  padding-right: 12px;
  padding-bottom: 8px;
  padding-left: 12px;
  width: 100%;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.w-commerce-commercecheckoutbillingzippostalcode::-webkit-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutbillingzippostalcode:-ms-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutbillingzippostalcode::-ms-input-placeholder {
  color: #999;
}

.w-commerce-commercecheckoutbillingzippostalcode::placeholder {
  color: #999;
}

.w-commerce-commercecheckoutbillingzippostalcode:focus {
  border-top-color: #3898ec;
  border-right-color: #3898ec;
  border-bottom-color: #3898ec;
  border-left-color: #3898ec;
  outline-style: none;
}

.w-commerce-commercecheckoutorderitemswrapper {
  margin-bottom: 20px;
}

.w-commerce-commercecheckoutsummaryblockheader {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: baseline;
  -webkit-align-items: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
  padding-top: 4px;
  padding-bottom: 4px;
  padding-right: 20px;
  padding-left: 20px;
  border-top-style: solid;
  border-top-width: 1px;
  border-top-color: #e6e6e6;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  border-bottom-color: #e6e6e6;
  border-right-style: solid;
  border-right-width: 1px;
  border-right-color: #e6e6e6;
  border-left-style: solid;
  border-left-width: 1px;
  border-left-color: #e6e6e6;
  background-color: #fff;
}

.w-commerce-commercecheckoutorderitemslist {
  margin-bottom: -20px;
}

.w-commerce-commercecheckoutorderitem {
  margin-bottom: 20px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.w-commerce-commercecheckoutorderitemdescriptionwrapper {
  margin-left: 16px;
  margin-right: 16px;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}

.w-commerce-commercecheckoutorderitemquantitywrapper {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  white-space: pre-wrap;
}

.w-commerce-commercecheckoutorderitemoptionlist {
  text-decoration: none;
  padding-left: 0px;
  margin-bottom: 0px;
  list-style-type: none;
}

.w-commerce-commercelayoutcontainer {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.w-commerce-commercelayoutsidebar {
  -webkit-flex-basis: 320px;
  -ms-flex-preferred-size: 320px;
  flex-basis: 320px;
  -webkit-box-flex: 0;
  -webkit-flex-grow: 0;
  -ms-flex-positive: 0;
  flex-grow: 0;
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  position: -webkit-sticky;
  position: sticky;
  top: 20px;
}

.w-commerce-commercecheckoutordersummarywrapper {
  margin-bottom: 20px;
}

.w-commerce-commercecheckoutsummarylineitem {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  margin-bottom: 8px;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.w-commerce-commercecheckoutordersummaryextraitemslistitem {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  margin-bottom: 8px;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.w-commerce-commercecheckoutsummarytotal {
  font-weight: 700;
}

.w-commerce-commercecheckoutplaceorderbutton {
  background-color: #3898ec;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  border-bottom-width: 0px;
  border-left-width: 0px;
  border-right-width: 0px;
  border-top-width: 0px;
  color: #fff;
  cursor: pointer;
  padding-top: 9px;
  padding-bottom: 9px;
  padding-left: 15px;
  padding-right: 15px;
  text-decoration: none;
  display: block;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  margin-bottom: 20px;
  text-align: center;
}

.w-commerce-commercecheckouterrorstate {
  margin-top: 16px;
  margin-bottom: 16px;
  padding-top: 10px;
  padding-right: 16px;
  padding-bottom: 10px;
  padding-left: 16px;
  background-color: #ffdede;
}

.w-commerce-commerceorderconfirmationcontainer {
  width: 100%;
  min-height: 100vh;
  padding-top: 20px;
  padding-bottom: 20px;
  padding-right: 20px;
  padding-left: 20px;
  background-color: #f5f5f5;
}

.w-commerce-commercecheckoutcustomerinfosummarywrapper {
  margin-bottom: 20px;
}

.w-commerce-commercecheckoutsummaryitem {
  margin-bottom: 8px;
}

.w-commerce-commercecheckoutsummarylabel {
  margin-bottom: 8px;
}

.w-commerce-commercecheckoutsummaryflexboxdiv {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}

.w-commerce-commercecheckoutsummarytextspacingondiv {
  margin-right: 0.33em;
}

.w-commerce-commercecheckoutshippingsummarywrapper {
  margin-bottom: 20px;
}

.w-commerce-commercecheckoutpaymentsummarywrapper {
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .w-commerce-commercelayoutmain {
    margin-right: 0px;
    -webkit-flex-basis: auto;
    -ms-flex-preferred-size: auto;
    flex-basis: auto;
  }
  .w-commerce-commercelayoutcontainer {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
  }
  .w-commerce-commercelayoutsidebar {
    -webkit-flex-basis: auto;
    -ms-flex-preferred-size: auto;
    flex-basis: auto;
  }
}

@media screen and (max-width: 479px) {
  .w-commerce-commercecartcontainerwrapper--cartType-modal {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
  }
  .w-commerce-commercecartcontainerwrapper--cartType-leftDropdown {
    position: fixed;
    top: 0px;
    right: 0px;
    bottom: 0px;
    left: 0px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
  }
  .w-commerce-commercecartcontainerwrapper--cartType-rightDropdown {
    position: fixed;
    top: 0px;
    right: 0px;
    bottom: 0px;
    left: 0px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
  }
  .w-commerce-commercecartquantity {
    font-size: 16px;
  }
  .w-commerce-commerceaddtocartquantityinput {
    font-size: 16px;
  }
  .w-commerce-commercecheckoutemailinput {
    font-size: 16px;
  }
  .w-commerce-commercecheckoutshippingfullname {
    font-size: 16px;
  }
  .w-commerce-commercecheckoutshippingstreetaddress {
    font-size: 16px;
  }
  .w-commerce-commercecheckoutshippingstreetaddressoptional {
    font-size: 16px;
  }
  .w-commerce-commercecheckoutrow {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .w-commerce-commercecheckoutshippingcity {
    font-size: 16px;
  }
  .w-commerce-commercecheckoutshippingstateprovince {
    font-size: 16px;
  }
  .w-commerce-commercecheckoutshippingzippostalcode {
    font-size: 16px;
  }
  .w-commerce-commercecheckoutshippingcountryselector {
    font-size: 16px;
  }
  .w-commerce-commercecheckoutcardnumber,
  .w-commerce-commercecheckoutcardnumber {
    font-size: 16px;
  }
  .w-commerce-commercecheckoutcardexpirationdate,
  .w-commerce-commercecheckoutcardexpirationdate {
    font-size: 16px;
  }
  .w-commerce-commercecheckoutcardsecuritycode,
  .w-commerce-commercecheckoutcardsecuritycode {
    font-size: 16px;
  }
  .w-commerce-commercecheckoutbillingfullname {
    font-size: 16px;
  }
  .w-commerce-commercecheckoutbillingstreetaddress {
    font-size: 16px;
  }
  .w-commerce-commercecheckoutbillingstreetaddressoptional {
    font-size: 16px;
  }
  .w-commerce-commercecheckoutbillingcity {
    font-size: 16px;
  }
  .w-commerce-commercecheckoutbillingstateprovince {
    font-size: 16px;
  }
  .w-commerce-commercecheckoutbillingzippostalcode {
    font-size: 16px;
  }
}

h5 {
  margin-top: 10px;
  margin-bottom: 10px;
  font-size: 14px;
  line-height: 20px;
  font-weight: 700;
  letter-spacing: 1px;
}

p {
  margin-bottom: 10px;
  line-height: 24px;
}

/* ==========================================================================
   Artisanal Aqua — design tokens (single source of truth)
   Edit values here to retune the whole site. SSENSE-style: black on white,
   neutral grotesk, cool greys, restrained type scale.
   ========================================================================== */
:root {
  /* Surfaces — pure white, no warm tints */
  --aa-bg: #ffffff;
  --aa-bg-muted: var(--aa-bg);        /* max warmth permitted; used very sparingly */

  /* Text — near-black primary, cool greys for secondary */
  --aa-text: #1a1a1a;
  --aa-text-secondary: #6b6b6b;
  --aa-text-quiet: #8a8a8a;

  /* Lines — light cool grey hairlines */
  --aa-border: #e5e5e5;

  /* Accent — reserved for small tags only (e.g. SOLD OUT). Kept desaturated. */
  --aa-accent: #1a1a1a;

  /* Type — single neutral grotesk; Helvetica Neue with thin display weights */
  --aa-font: "Helvetica Neue", "HelveticaNeue", Helvetica, Arial, sans-serif;
  --aa-weight-thin: 200;         /* renders on macOS/iOS; falls back to normal elsewhere */
  --aa-weight-light: 300;
  --aa-weight-normal: 400;

  /* Type scale — restrained jumps: 12 / 13 / 14 / 16 / 20 / 32 / display */
  --aa-fs-xs: 12px;
  --aa-fs-sm: 13px;
  --aa-fs-base: 14px;
  --aa-fs-md: 16px;
  --aa-fs-lg: 20px;
  --aa-fs-xl: 32px;

  /* Line-height */
  --aa-lh-body: 1.5;
  --aa-lh-tight: 1.05;
}

.product {
  padding-right: 0px;
  padding-left: 0px;
  border-style: solid;
  border-width: 0.5px;
  border-color: var(--aa-border);
  /* White like the card content, so when the carousel stretches a short card to
     match a taller one the extra height fills white instead of showing the
     tinted panel below as a gray bar (By Region / Principles results). */
  background-color: var(--aa-bg);
  -webkit-transition: border-color 200ms ease;
  transition: border-color 200ms ease;
}

.product:hover {
  z-index: 1;
  border-color: var(--aa-border);
}

.body {
  font-family: var(--aa-font);
  color: var(--aa-text);
  font-size: var(--aa-fs-base);
  line-height: var(--aa-lh-body);
  font-weight: var(--aa-weight-normal);
  background-color: var(--aa-bg);
}

.productinfo {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  min-height: 0px;
  padding: 12px 14px 14px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  border-top: 1px solid var(--aa-border);
  background-color: var(--aa-bg);
}

.productinfo_price {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-top: 4px;
  font-size: var(--aa-fs-sm);
  color: var(--aa-text-secondary);
}

.pricewas {
  margin-left: 12px;
  opacity: 1;
  color: var(--aa-text-quiet);
  text-decoration: line-through;
}

.productinfo_brand {
  font-size: var(--aa-fs-sm);
  line-height: 1.4;
  font-weight: var(--aa-weight-normal);
  color: var(--aa-text);
}

.productinfo_title {
  font-size: var(--aa-fs-sm);
  line-height: 1.4;
  font-weight: var(--aa-weight-normal);
  color: var(--aa-text-secondary);
}

/* Listing pages: sidebar filter + product index (SSENSE pattern) */
.shop_layout {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
}

.shop_sidebar {
  width: 200px;
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 200px;
  -ms-flex: 0 0 200px;
  flex: 0 0 200px;
  padding: 24px 20px;
  border-right: 1px solid var(--aa-border);
}

.shop_main {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
  min-width: 0;
}

.shop_heading {
  padding: 24px 20px 16px;
}

.shop_heading .largeheading {
  margin-bottom: 0px;
}

.shop_filter_group {
  margin-bottom: 28px;
}

.shop_filter_heading {
  margin: 0 0 10px;
  font-size: var(--aa-fs-xs);
  font-weight: var(--aa-weight-normal);
  color: var(--aa-text-quiet);
}

.shop_filter_link {
  display: block;
  padding: 4px 0;
  font-size: var(--aa-fs-base);
  color: var(--aa-text);
  text-decoration: none;
}

.shop_filter_link:hover {
  text-decoration: underline;
  text-underline-offset: 3px;
}

.shop_filter_link.is-active {
  text-decoration: underline;
  text-underline-offset: 3px;
}

@media (max-width: 767px) {
  .shop_layout {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .shop_sidebar {
    width: 100%;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    border-right: 0;
    border-bottom: 1px solid var(--aa-border);
  }
}

/* Flush product index — CSS grid (not Webflow's floated columns) so uneven
   card heights size each row to its tallest card instead of snagging the next
   card and leaving a gap. 4-up desktop, 2-up mobile (matches the old 25% cols). */
.w-dyn-items.w-row {
  margin-left: 0;
  margin-right: 0;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
/* Webflow's .w-row clearfix ::before/::after are pinned to grid cell 1/1; as a
   grid container they'd become items and shove the first card into column 2,
   leaving the top-left cell empty. Remove them so cards start at cell 1. */
.w-dyn-items.w-row::before,
.w-dyn-items.w-row::after { content: none; }

.product.w-col {
  float: none;
  width: auto;
  padding-left: 0;
  padding-right: 0;
}

/* Empty / status messages live inside the grid — let them span the full row. */
.w-dyn-items.w-row > .aa-grid_msg { grid-column: 1 / -1; }

@media screen and (max-width: 767px) {
  .w-dyn-items.w-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

.link-block:hover .productinfo_title {
  text-decoration: underline;
  text-underline-offset: 2px;
}

.navbar {
  position: -webkit-sticky;
  position: sticky;
  top: 0px;
  z-index: 50;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding-right: 0px;
  padding-left: 20px;
  border-bottom: 1px solid var(--aa-border);
  background-color: var(--aa-bg);
}

.logo {
  margin-top: 0px;
  margin-bottom: 0px;
  padding-top: 8px;
  font-size: 36px;
  font-weight: var(--aa-weight-thin);
  letter-spacing: -0.02em;
}

.logo.subhead {
  margin-left: 14px;
  padding-top: 22px;
  padding-bottom: 20px;
  font-size: var(--aa-fs-xs);
  line-height: 16px;
  font-weight: var(--aa-weight-normal);
  color: var(--aa-text-secondary);
}

.logo.footer_logo {
  padding-top: 10px;
  padding-bottom: 10px;
  font-size: var(--aa-fs-md);
  font-weight: var(--aa-weight-normal);
}

.brand {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  /* Size to the logo only — an auto right margin absorbs the free space so the
     nav sits at the right, without the link itself spanning (and making
     clickable) the empty middle of the bar. */
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  margin-right: auto;
}

.nav-link {
  color: var(--aa-text);
  font-size: var(--aa-fs-base);
  font-weight: var(--aa-weight-light);
  text-decoration: none;
}

.nav-link:hover {
  text-decoration: underline;
  text-underline-offset: 3px;
}

.nav-link.w--current {
  color: var(--aa-text);
  text-decoration: underline;
  text-underline-offset: 3px;
}

.hero_checkout {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 30vh;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  border-bottom: 1px solid var(--aa-border);
  background-color: var(--aa-bg);
}

.subscribe {
  padding: 40px 20px 60px;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
  border-top: 1px solid var(--aa-border);
  border-bottom: 1px none var(--aa-border);
  background-color: var(--aa-bg);
  text-align: center;
}

.section {
  position: relative;
  z-index: 2;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  background-color: var(--aa-bg);
  border-top: 1px solid var(--aa-border);
}

/* Editorial statement band between the hero and the About section */
.statement {
  padding: 96px 8vw;
  border-top: 1px solid var(--aa-border);
  text-align: center;
}

.statement_lead {
  margin: 0 0 14px;
  font-size: 30px;
  line-height: 1.2;
  font-weight: var(--aa-weight-light);
  letter-spacing: -0.01em;
  color: var(--aa-text);
}

.statement_sub {
  margin: 0;
  font-size: var(--aa-fs-base);
  font-weight: var(--aa-weight-light);
  color: var(--aa-text);
}

@media (max-width: 767px) {
  .statement {
    padding: 64px 24px;
  }
  .statement_lead {
    font-size: 24px;
  }
}

/* Scroll-driven image-sequence hero (desktop): the pour plays to its final
   frame full-screen, then that frame shrinks/morphs into the hero image slot
   on the right while the text resolves on the left. JS drives the canvas box. */
.hero_seq {
  position: relative;
  height: 300vh;
  background-color: var(--aa-bg);
}

.hero_seq_sticky {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  height: 100vh;
  overflow: hidden;
}

/* Behind the canvas: the white hero with text on the left (revealed as the
   canvas shrinks away to the right). */
.hero_intro {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: var(--aa-bg);
  z-index: 1;
}

.hero_intro .hero_content {
  max-width: 50vw;
  opacity: 0;
}

/* The image-sequence canvas: full-viewport during the pour, then JS animates
   its left/top/width/height down into the right-hand image slot. */
.hero_seq_canvas {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  background-color: var(--aa-bg-muted);
}

/* Hairline that fades in along the left edge of the shrunken frame. */
.hero_morph_line {
  position: absolute;
  top: 0;
  width: 1px;
  background-color: var(--aa-border);
  opacity: 0;
  z-index: 3;
  pointer-events: none;
}

/* Full-width hairline that fades in right under the shrunken frame. */
.hero_morph_base {
  position: absolute;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: var(--aa-border);
  opacity: 0;
  z-index: 3;
  pointer-events: none;
}

.hero_intro_inner {
  max-width: 640px;
}

.hero_seq_mobile {
  display: none;
}

@media (max-width: 767px) {
  .hero_seq {
    display: none;
  }
  /* Stack the full pour frame above the intro copy — mirrors the About band
     directly beneath it. Was a cover-cropped background with the text overlaid,
     which hid the glass and gloved hand; now the whole frame is shown. */
  .hero_seq_mobile {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    background-color: var(--aa-bg);
  }
  .hero_mobile_photo {
    width: 100vw;
    aspect-ratio: 2560 / 1440;
    background-color: var(--aa-bg-muted);
    background-image: url("/frames/saratoga/frame_0060.jpg");
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: contain;
    border-bottom: 1px solid var(--aa-border);
  }
  .hero_seq_mobile .hero_intro_inner {
    max-width: 100%;
    padding: 40px 8% 56px;
    text-align: center;
  }
  .hero_seq_mobile .largeheading {
    font-size: 30px;
  }
}

/* About section photo — mirrors the hero: full image, hugs the left edge, divider on its right */
.about_photo {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  height: 62vh;
  aspect-ratio: 1744 / 2336;
  border-right: 1px solid var(--aa-border);
  background-color: var(--aa-bg);
  background-image: url("../images/about-panna.png");
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
}

.hero_photo {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  height: 62vh;
  aspect-ratio: 1744 / 2336;
  padding: 0;
  border-left: 1px solid var(--aa-border);
  background-color: var(--aa-bg);
  background-image: url("../images/hero-saratoga.png");
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
}

.hero_content {
  padding-right: 72px;
  padding-left: 72px;
  -webkit-align-self: center;
  -ms-flex-item-align: center;
  -ms-grid-row-align: center;
  align-self: center;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
}

.largeheading {
  margin-top: 0px;
  margin-bottom: 20px;
  margin-left: -1px;
  font-size: 33px;
  line-height: var(--aa-lh-tight);
  font-weight: var(--aa-weight-thin);
  letter-spacing: -0.02em;
}

.button {
  margin-top: 28px;
  padding: 13px 22px;
  background-color: var(--aa-text);
  font-size: var(--aa-fs-base);
  text-decoration: none;
}

.button.subscribe_button {
  margin-top: 0px;
}

.button.checkoutbutton {
  margin-top: 0px;
}

.button.place-order {
  margin-top: 0px;
}

.button_textlink {
  color: #fff;
  text-decoration: none;
}

/* Hero CTA: text + underline, not a filled box */
.hero_link {
  display: inline-block;
  margin-top: 28px;
  font-size: var(--aa-fs-base);
  color: var(--aa-text);
  text-decoration: none;
  text-underline-offset: 3px;
}

.hero_link:hover {
  text-decoration: underline;
}

.paragraph.cc-large {
  font-size: 16px;
  line-height: 1.8em;
}

.paragraph.cc-large.cc-w90 {
  width: 90%;
  font-size: 19px;
  font-weight: var(--aa-weight-light);
}

.subscribe_input {
  margin-right: 24px;
  margin-bottom: 0px;
  padding-top: 22px;
  padding-bottom: 22px;
  border-style: solid;
  border-width: 1px;
  border-color: var(--aa-border);
  background-color: var(--aa-bg);
  -webkit-transition: all 300ms ease;
  transition: all 300ms ease;
}

.subscribe_input:focus {
  border-bottom-color: var(--aa-text);
}

.topheading {
  margin-bottom: 8px;
  font-size: var(--aa-fs-xs);
  font-weight: var(--aa-weight-normal);
  color: var(--aa-text-secondary);
}

.aboutus {
  padding: 40px 8% 60px;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  background-color: var(--aa-bg);
  text-align: center;
}

.aboutus p {
  font-size: 22px;
  line-height: 1.5;
  font-weight: var(--aa-weight-light);
}

/* Full-width hairline right under the About image, then white space before the grid */
.product_index {
  padding-top: 64px;
  border-top: 1px solid var(--aa-border);
}

/* ---- Trending carousel (homepage) ------------------------------------ */
.trending {
  padding: 64px 0 72px;
  border-top: 1px solid var(--aa-border);
}

.trending_head {
  padding: 0 20px;
}

.trending_heading {
  margin-bottom: 28px;
  font-size: 26px;
}

.trending_carousel {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 0 8px;
}

/* Outside the card edges, vertically centred on the row. Line-stroke chevron
   only — no fill, no circular background — matching the sort/search icons. */
.trending_arrow {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  padding: 0;
  border: 0;
  background: none;
  color: var(--aa-text);
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
  -webkit-transition: opacity 200ms ease, color 200ms ease;
  transition: opacity 200ms ease, color 200ms ease;
}

.trending_arrow:hover {
  color: var(--aa-text-secondary);
}

.trending_arrow:disabled,
.trending_arrow[disabled] {
  opacity: 0.25;
  cursor: default;
  pointer-events: none;
}

.trending_viewport {
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 auto;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  /* Cards sit flush with the viewport's bottom edge, so overflow:hidden clips
     each card's 0.5px bottom border (the clip that hides off-screen carousel
     cards horizontally also clips it vertically). 1px of breathing room lets
     the bottom hairline render, matching the grid cards on category/search. */
  padding-bottom: 1px;
}

.trending_track {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  will-change: transform;
  -webkit-transition: -webkit-transform 460ms cubic-bezier(0.4, 0, 0.2, 1);
  transition: transform 460ms cubic-bezier(0.4, 0, 0.2, 1);
}

.trending_track.is-dragging {
  -webkit-transition: none;
  transition: none;
}

.trending_track > .product {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 25%;
  -ms-flex: 0 0 25%;
  flex: 0 0 25%;
  max-width: 25%;
}

.trending_track > .trending_msg {
  -webkit-box-flex: 1;
  -webkit-flex: 1 0 100%;
  -ms-flex: 1 0 100%;
  flex: 1 0 100%;
  padding: 64px 20px;
  color: var(--aa-text-quiet);
  font-size: var(--aa-fs-base);
}

@media (max-width: 767px) {
  .trending {
    padding: 48px 0 56px;
  }
  .trending_heading {
    margin-bottom: 20px;
  }
  .trending_track > .product {
    -webkit-flex: 0 0 50%;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
}

/* ---- By Region (homepage) -------------------------------------------- */
.byregion {
  padding: 72px 0 80px;
  border-top: 1px solid var(--aa-border);
  background-color: var(--aa-bg);
}

/* Mirrors .statement_lead — light weight; kept on a single line. */
.region_statement {
  margin: 0 0 48px;
  padding: 0 20px;
  font-size: 28px;
  line-height: 1.2;
  font-weight: var(--aa-weight-light);
  letter-spacing: -0.01em;
  color: var(--aa-text);
  text-align: center;
  white-space: nowrap;
}

/* Identical to the Trending heading: it carries .largeheading (thin weight,
   -0.02em tracking, tight line-height, black) and only sets the 26px size and
   the 20px left inset so it sits exactly where "Trending" does above. */
.region_heading {
  margin: 0 0 28px;
  padding: 0 20px;
  font-size: 26px;
}

/* Full-bleed to match the Trending row: the 36px inset (8px carousel pad +
   28px arrow) lines the outer tiles up with the first and last product cards. */
/* All six regions in a single connected row (shared hairlines, no gaps); the
   active one grows and merges into the carousel below — like Our Principles. */
.region_grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  padding: 0 36px;
  -webkit-transition: grid-template-columns 320ms ease;
  transition: grid-template-columns 320ms ease;
}

.region_grid[data-active="0"] { grid-template-columns: minmax(0,1.5fr) minmax(0,0.9fr) minmax(0,0.9fr) minmax(0,0.9fr) minmax(0,0.9fr) minmax(0,0.9fr); }
.region_grid[data-active="1"] { grid-template-columns: minmax(0,0.9fr) minmax(0,1.5fr) minmax(0,0.9fr) minmax(0,0.9fr) minmax(0,0.9fr) minmax(0,0.9fr); }
.region_grid[data-active="2"] { grid-template-columns: minmax(0,0.9fr) minmax(0,0.9fr) minmax(0,1.5fr) minmax(0,0.9fr) minmax(0,0.9fr) minmax(0,0.9fr); }
.region_grid[data-active="3"] { grid-template-columns: minmax(0,0.9fr) minmax(0,0.9fr) minmax(0,0.9fr) minmax(0,1.5fr) minmax(0,0.9fr) minmax(0,0.9fr); }
.region_grid[data-active="4"] { grid-template-columns: minmax(0,0.9fr) minmax(0,0.9fr) minmax(0,0.9fr) minmax(0,0.9fr) minmax(0,1.5fr) minmax(0,0.9fr); }
.region_grid[data-active="5"] { grid-template-columns: minmax(0,0.9fr) minmax(0,0.9fr) minmax(0,0.9fr) minmax(0,0.9fr) minmax(0,0.9fr) minmax(0,1.5fr); }

.region_tile {
  display: block;
  padding: 22px 20px 24px;
  border-top: 1px solid var(--aa-border);
  background-color: var(--aa-bg);
  text-decoration: none;
  -webkit-transition: background-color 200ms ease;
  transition: background-color 200ms ease;
}

/* Hairline divider between adjacent tiles. */
.region_tile + .region_tile {
  border-left: 1px solid var(--aa-border);
}

/* When a region is open, each tile carries the hairline down to the carousel;
   the active tile drops it and tints, merging into the panel below. */
.byregion.is-open .region_tile {
  border-bottom: 1px solid var(--aa-border);
}

.byregion.is-open .region_tile.is-active {
  border-bottom-color: transparent;
}

/* No gray tint on hover — the tile only tints when selected (clicked). Hover
   still underlines the region name (rule below) as the affordance. */

/* Mirrors .largeheading — thin weight, tight tracking, the site's heading voice. */
.region_name {
  margin: 0;
  font-size: 17px;
  line-height: var(--aa-lh-tight);
  font-weight: var(--aa-weight-light);
  letter-spacing: -0.01em;
  color: var(--aa-text);
}

/* Match the navbar nav-link underline: a thin, continuous 1px line that the
   font's descenders (the 'p' in Spanish) don't cut through. Without these the
   underline thickness auto-scales with the 23px name and skip-ink breaks it. */
.region_tile:hover .region_name {
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
  -webkit-text-decoration-skip-ink: none;
  text-decoration-skip-ink: none;
}

.region_rule {
  display: block;
  width: 26px;
  height: 0;
  margin: 10px 0 12px;
  border-top: 1px solid var(--aa-border);
}

.region_brands {
  margin: 0;
  font-size: var(--aa-fs-xs);
  line-height: 1.5;
  color: var(--aa-text-secondary);
}

/* Selected region — tinted, name underlined (the merge does the rest). */
.region_tile.is-active {
  background-color: #fafafa;
}

.region_tile.is-active .region_name {
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
  -webkit-text-decoration-skip-ink: none;
  text-decoration-skip-ink: none;
}

/* The active end tiles bleed their tint into the grid's 36px side gutter so the
   gray reaches the page edge and meets the edge-to-edge results panel below with
   no white sliver. American (first) bleeds left; Pacific (last) bleeds right.
   Desktop only — phones use boxed, separated tiles. */
@media (min-width: 768px) {
  .region_grid[data-active="0"] .region_tile.is-active { box-shadow: -36px 0 0 0 #fafafa; }
  .region_grid[data-active="5"] .region_tile.is-active { box-shadow: 36px 0 0 0 #fafafa; }
}

/* In-page region results — flush beneath the row (no own top rule), sharing the
   active tile's tint so it reads as one continuous unit. Cross-fade only;
   carousel in the gutters so cards line up with the section. */
.region_results {
  margin-top: 0;
  padding: 44px 36px 8px;
  background-color: #fafafa;
}

.region_results.is-empty {
  display: none;
}

.region_results .trending_carousel {
  margin-left: -36px;
  margin-right: -36px;
}

.region_results_head {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin: 0 0 26px;
}

.region_results_title {
  font-size: 19px;
  line-height: 1.3;
  font-weight: var(--aa-weight-light);
  letter-spacing: -0.01em;
  color: var(--aa-text);
}

/* Ghost button — hairline border, no radius, fills near-black on hover. */
.region_browse {
  -webkit-flex: 0 0 auto;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  padding: 9px 18px;
  border: 1px solid var(--aa-text);
  background: none;
  font-size: var(--aa-fs-sm);
  color: var(--aa-text);
  text-decoration: none;
  -webkit-transition: background-color 200ms ease, color 200ms ease;
  transition: background-color 200ms ease, color 200ms ease;
}

.region_browse:hover {
  background-color: var(--aa-text);
  color: var(--aa-bg);
}

@media (max-width: 767px) {
  .byregion {
    padding: 56px 0 64px;
  }
  .region_statement {
    font-size: 24px;
    margin-bottom: 40px;
    white-space: normal;       /* one line is desktop-only; let it wrap on phones */
  }
  /* Two-up boxed tiles on phones (the connected six-in-a-row + merge is desktop
     only; shared borders don't wrap cleanly into two columns). */
  .region_grid,
  .region_grid[data-active] {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 12px;
  }
  .region_tile,
  .region_tile + .region_tile,
  .byregion.is-open .region_tile {
    border: 1px solid var(--aa-border);
  }
  .byregion.is-open .region_tile.is-active {
    border-color: var(--aa-text);
  }
  .region_results {
    margin-top: 28px;
    border-top: 1px solid var(--aa-border);
    padding: 40px 20px 8px;
  }
  .region_results .trending_carousel {
    margin-left: -20px;
    margin-right: -20px;
  }
}

/* Full-bleed visual band under By Region — same 62vh sizing as the About
   section's photo, edge to edge, with the site's hairline divider on top. */
/* Aspect ratio matches the image (3168×1344) so the full picture shows edge to
   edge with no cropping. */
.region_band {
  aspect-ratio: 3168 / 1344;
  border-top: 1px solid var(--aa-border);
  background-color: var(--aa-bg);
  background-image: url("../images/region-band.jpg");
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: contain;
}

/* ---- Our Principles (homepage) --------------------------------------- */
.principles {
  padding: 64px 0 72px;
  border-top: 1px solid var(--aa-border);
  background-color: var(--aa-bg);
}

/* Same heading treatment and 20px left position as Trending / By Region. */
.principles_heading {
  margin: 0 0 28px;
  padding: 0 20px;
  font-size: 26px;
}

/* Full-bleed to match the Trending row and By Region grid: the 36px inset
   lines the columns up with the product cards / region tiles above. The active
   column grows (and the others give way) when a lens is selected. */
.principles_grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
  padding: 0 36px;
  -webkit-transition: grid-template-columns 320ms ease;
  transition: grid-template-columns 320ms ease;
}

.principles_grid[data-active="0"] { grid-template-columns: minmax(0, 1.5fr) minmax(0, 0.85fr) minmax(0, 0.85fr); }
.principles_grid[data-active="1"] { grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.5fr) minmax(0, 0.85fr); }
.principles_grid[data-active="2"] { grid-template-columns: minmax(0, 0.85fr) minmax(0, 0.85fr) minmax(0, 1.5fr); }

/* Hairline dividers only — a top rule across the row and vertical rules
   between the columns. No boxes, no gaps, no shadows. */
.principle {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  padding: 36px 32px;
  border-top: 1px solid var(--aa-border);
  -webkit-transition: background-color 250ms ease;
  transition: background-color 250ms ease;
}

/* Only the content cluster is interactive — the empty space below it is not. */
.principle_inner {
  cursor: pointer;
}

.principle + .principle {
  border-left: 1px solid var(--aa-border);
}

/* When a lens is open, each column carries the hairline down to the results
   panel; the active column drops that hairline and tints, so it reads as one
   continuous surface flowing into the panel below it. */
.principles.is-open .principle {
  border-bottom: 1px solid var(--aa-border);
}

.principle.is-active {
  background-color: #fafafa;
}

.principles.is-open .principle.is-active {
  border-bottom-color: transparent;
}

/* The active end columns bleed their tint into the grid's 36px side gutter so
   the gray reaches the page edge and meets the edge-to-edge results panel below
   with no white sliver. Left column bleeds left; right column bleeds right. */
@media (min-width: 768px) {
  .principles_grid[data-active="0"] .principle.is-active { box-shadow: -36px 0 0 0 #fafafa; }
  .principles_grid[data-active="2"] .principle.is-active { box-shadow: 36px 0 0 0 #fafafa; }
}

/* Trigger link = real <button>, underline-active like nav links / sort.
   Bottom-aligned across the three columns via margin-top:auto. */
.principle_link {
  -webkit-align-self: flex-start;
  -ms-flex-item-align: start;
  align-self: flex-start;
  padding: 18px 0 0;
  border: 0;
  background: none;
  -webkit-appearance: none;
  appearance: none;
  font-family: var(--aa-font);
  font-size: var(--aa-fs-base);
  font-weight: var(--aa-weight-normal);
  line-height: 1.4;
  color: var(--aa-text);
  text-align: left;
  text-decoration: none;
  cursor: pointer;
}

.principle_link:hover,
.principle_link.is-active,
.principle_inner:hover .principle_link {
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
  -webkit-text-decoration-skip-ink: none;
  text-decoration-skip-ink: none;
}

/* In-page results panel — cross-fade only (opacity), no slide/scale. It shares
   the active column's tint and sits flush beneath the grid (no own top rule),
   so the selected column + panel read as one continuous unit. */
.principles_results {
  margin-top: 0;
  padding: 48px 36px 8px;
  background-color: #fafafa;
}

.principles_results.is-empty {
  display: none;
}

.principles_group + .principles_group {
  margin-top: 48px;
}

/* In-panel carousels span the panel padding so their cards line up with the
   group labels and the arrows sit in the panel's gutters. */
.principles_results .trending_carousel {
  margin-left: -36px;
  margin-right: -36px;
}

.principles_group_label {
  margin: 0 0 16px;
  font-size: var(--aa-fs-xs);
  letter-spacing: 0.08em;
  color: var(--aa-text-secondary);
}

/* Mineral-character lens — explainer + character bands. */
.mineral_intro {
  max-width: 64ch;
  margin: 0 0 44px;
  padding-bottom: 36px;
  border-bottom: 1px solid var(--aa-border);
}

.mineral_intro_title {
  margin: 0 0 12px;
  font-size: 19px;
  line-height: 1.3;
  font-weight: var(--aa-weight-light);
  letter-spacing: -0.01em;
  color: var(--aa-text);
}

.mineral_intro_body {
  margin: 0;
  font-size: var(--aa-fs-base);
  line-height: var(--aa-lh-body);
  font-weight: var(--aa-weight-light);
  color: var(--aa-text-secondary);
}

.mineral_band_head {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
  -webkit-align-items: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
  margin: 0 0 8px;
}

.mineral_band_head .principles_group_label {
  margin: 0;
}

.mineral_band_range {
  margin-left: 12px;
  font-size: var(--aa-fs-xs);
  color: var(--aa-text-quiet);
}

.mineral_band_note {
  margin: 0 0 22px;
  max-width: 58ch;
  font-size: var(--aa-fs-sm);
  line-height: var(--aa-lh-body);
  font-weight: var(--aa-weight-light);
  color: var(--aa-text-secondary);
}

/* "See where each one comes from" — source stories, not cards. */
.sources {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 32px 56px;
}

.source_brand {
  margin: 0 0 6px;
  font-size: var(--aa-fs-md);
  line-height: 1.3;
  font-weight: var(--aa-weight-light);
  color: var(--aa-text);
}

.source_story {
  margin: 0;
  max-width: 46ch;
  font-size: var(--aa-fs-base);
  line-height: var(--aa-lh-body);
  font-weight: var(--aa-weight-light);
  color: var(--aa-text-secondary);
}

.principle_title {
  margin: 0 0 12px;
  font-size: 22px;
  line-height: 1.3;
  font-weight: var(--aa-weight-light);
  letter-spacing: -0.01em;
  color: var(--aa-text);
}

.principle_body {
  margin: 0;
  font-size: 15px;
  line-height: var(--aa-lh-body);
  font-weight: var(--aa-weight-light);
  color: var(--aa-text-secondary);
}

@media (max-width: 767px) {
  .principles {
    padding: 56px 0 64px;
  }
  /* Stay single-column even when a lens is active (no grow on phones). */
  .principles_grid,
  .principles_grid[data-active] {
    grid-template-columns: minmax(0, 1fr);
    padding: 0 20px;
  }
  /* Stacked: separation is the horizontal border-top on each block. The active
     column keeps its hairline (the panel is below all three, not just it). */
  .principle + .principle {
    border-left: 0;
  }
  .principles.is-open .principle.is-active {
    border-bottom-color: var(--aa-border);
  }
  /* Stacked: the active card bleeds to both page edges (gutter is 20px here). */
  .principle.is-active {
    box-shadow: -20px 0 0 0 #fafafa, 20px 0 0 0 #fafafa;
  }
  .principles_results {
    padding: 48px 20px 8px;
  }
  .principles_results .trending_carousel {
    margin-left: -20px;
    margin-right: -20px;
  }
  .sources {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* Policy / content pages (Privacy, Shipping & Returns, Terms, Contact) */
.policy {
  max-width: 720px;
  margin: 0 auto;
  padding: 80px 24px 100px;
}

.policy_title {
  margin: 0 0 8px;
  font-size: var(--aa-fs-xl);
  line-height: 1.1;
  font-weight: var(--aa-weight-thin);
  letter-spacing: -0.02em;
}

.policy_updated {
  margin: 0 0 40px;
  font-size: var(--aa-fs-sm);
  color: var(--aa-text-quiet);
}

.policy h2 {
  margin: 36px 0 10px;
  font-size: var(--aa-fs-md);
  font-weight: var(--aa-weight-normal);
  color: var(--aa-text);
}

.policy p {
  margin: 0 0 16px;
  font-size: var(--aa-fs-base);
  line-height: var(--aa-lh-body);
  color: var(--aa-text-secondary);
}

.policy a {
  color: var(--aa-text);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.policy_note {
  margin-top: 40px;
  padding: 12px 16px;
  border: 1px solid var(--aa-border);
  font-size: var(--aa-fs-sm);
  color: var(--aa-text-quiet);
}

.form-2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.link-block {
  /* Block, not Webflow's default inline-block — otherwise the link sits on the
     text baseline and leaves a few px of descender space below it, which shows
     as a gray bar wherever the card sits on a tinted panel (By Region, Principles). */
  display: block;
  color: var(--aa-text);
  text-decoration: none;
}

.footer {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  border-top: 1px solid var(--aa-border);
  background-color: var(--aa-bg);
}

.footer_nav {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
  text-align: center;
}

.footer_nav_links {
  padding: 22px 16px 20px;
  color: var(--aa-text);
  font-size: var(--aa-fs-base);
  text-decoration: none;
}

.footer_nav_links:hover {
  text-decoration: underline;
  text-underline-offset: 3px;
}

.footer_brand {
  padding-left: 20px;
  -webkit-box-flex: 0;
  -webkit-flex: 0 auto;
  -ms-flex: 0 auto;
  flex: 0 auto;
}

.footer_social {
  padding-right: 14px;
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
  -ms-flex-order: 1;
  order: 1;
  -webkit-box-flex: 0;
  -webkit-flex: 0 auto;
  -ms-flex: 0 auto;
  flex: 0 auto;
}

.footer_social_links {
  padding: 20px 6px;
  -webkit-transition: opacity 200ms ease;
  transition: opacity 200ms ease;
  color: var(--aa-text);
  text-decoration: none;
}

.footer_social_links:hover {
  opacity: 0.55;
}

.section_title {
  margin-bottom: 24px;
  font-size: 24px;
  line-height: 1.2;
  font-weight: var(--aa-weight-normal);
  letter-spacing: -0.01em;
}

.nav-menu {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

.cart-button {
  padding-top: 18px;
  padding-right: 20px;
  padding-bottom: 18px;
  background-color: transparent;
  color: var(--aa-text);
}

.cart-label {
  display: inline-block;
  min-width: 44px;
  text-align: right;
  font-size: var(--aa-fs-base);
  color: var(--aa-text);
}

.cart-button:hover .cart-label {
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* Cart drawer: lighter heading + a thin, hairline close X */
.w-commerce-commercecartheading {
  font-weight: var(--aa-weight-light);
}

.w-commerce-commercecartcloselink {
  position: relative;
}

.w-commerce-commercecartcloselink svg {
  display: none;
}

.w-commerce-commercecartcloselink::before,
.w-commerce-commercecartcloselink::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 18px;
  height: 1px;
  background-color: var(--aa-text);
}

.w-commerce-commercecartcloselink::before {
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
  transform: translate(-50%, -50%) rotate(45deg);
}

.w-commerce-commercecartcloselink::after {
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
  transform: translate(-50%, -50%) rotate(-45deg);
}

.cart-2 {
  -webkit-align-self: center;
  -ms-flex-item-align: center;
  -ms-grid-row-align: center;
  align-self: center;
}

.cart-quantity {
  display: none;
}

.cart-line-item {
  padding-right: 24px;
  padding-left: 24px;
}

.cart-footer {
  padding-right: 0px;
  padding-bottom: 0px;
  padding-left: 0px;
}

.cart-list {
  padding: 0px;
}

.cart-item {
  padding-top: 0px;
  padding-right: 0px;
  padding-bottom: 0px;
  border-top: 0.5px none var(--aa-border);
  border-bottom: 0.5px solid var(--aa-border);
}

.image {
  width: 100px;
  border-right: 1px solid var(--aa-border);
  border-bottom: 1px solid var(--aa-border);
}

.div-block {
  padding-left: 12px;
  -webkit-align-self: center;
  -ms-flex-item-align: center;
  -ms-grid-row-align: center;
  align-self: center;
}

.checkout_quantity {
  width: 70px;
  height: auto;
  margin-bottom: 0px;
  padding-right: 16px;
  padding-left: 16px;
  -webkit-align-self: stretch;
  -ms-flex-item-align: stretch;
  -ms-grid-row-align: stretch;
  align-self: stretch;
  border-top-style: none;
  border-radius: 0px;
  background-color: #fff;
  font-size: 24px;
  text-align: center;
}

.remove {
  margin-top: 8px;
  opacity: 0.3;
  color: var(--aa-text);
  text-decoration: none;
}

.cart-wrapper {
  background-color: hsla(228, 5%, 88%, .8);
}

.cart-container {
  box-shadow: none;
}

.cart-header {
  padding-top: 18px;
  padding-bottom: 18px;
}

.error-state {
  margin-right: 0px;
  margin-bottom: 0px;
  margin-left: 0px;
  padding: 15px 20px 16px;
  -webkit-box-ordinal-group: 0;
  -webkit-order: -1;
  -ms-flex-order: -1;
  order: -1;
  background-color: #ff5757;
  color: #fff;
}

.product_section {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  min-height: 80vh;
  background-color: var(--aa-bg);
}

.product_photo {
  padding-right: 60px;
  padding-left: 60px;
  -webkit-box-flex: 0.5;
  -webkit-flex: 0.5 auto;
  -ms-flex: 0.5 auto;
  flex: 0.5 auto;
  border-right: 1px solid var(--aa-border);
  /* TODO: real product photography — placeholder for now */
  background-color: var(--aa-bg-muted);
  background-image: url("../images/placeholder-bottle.svg");
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: contain;
}

.product_content {
  padding: 28px 60px 48px;
  -webkit-align-self: flex-start;
  -ms-flex-item-align: start;
  align-self: flex-start;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
}

.product_brand {
  margin-bottom: 4px;
  font-size: var(--aa-fs-base);
  color: var(--aa-text-secondary);
}

.product_price {
  margin-bottom: 22px;
  font-size: var(--aa-fs-md);
  line-height: 1.2;
  color: var(--aa-text);
}

.product_title {
  margin-top: 0px;
  margin-bottom: 8px;
  font-size: var(--aa-fs-xl);
  line-height: 1.1;
  font-weight: var(--aa-weight-thin);
  letter-spacing: -0.02em;
}

.product_description {
  margin-bottom: 28px;
  max-width: 46ch;
  font-size: var(--aa-fs-base);
  line-height: var(--aa-lh-body);
  color: var(--aa-text-secondary);
}

/* Product data model — Brand / Origin / Type / Container / Volume */
.product_specs {
  margin: 0 0 20px;
  padding: 0;
  border-top: 1px solid var(--aa-border);
  list-style: none;
  max-width: 46ch;
}

.product_specs li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 6px 0;
  border-bottom: 1px solid var(--aa-border);
  font-size: var(--aa-fs-sm);
}

.product_specs .spec_label {
  color: var(--aa-text-secondary);
}

.product_specs .spec_value {
  color: var(--aa-text);
}

/* Product form controls — ghost style: page-white fill, hairline near-black border, black text */
.w-select,
.w-commerce-commerceaddtocartoptionselect,
.w-commerce-commerceaddtocartquantityinput {
  background-color: var(--aa-bg);
  background-image: none;
  border: 0.5px solid var(--aa-text);
  border-radius: 0;
  color: var(--aa-text);
  box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

/* custom chevron for the Pack select (native arrow removed by appearance:none) */
.w-select {
  padding-right: 32px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%231a1a1a' fill='none' stroke-width='1'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 12px center;
}

.w-select:focus,
.w-commerce-commerceaddtocartoptionselect:focus,
.w-commerce-commerceaddtocartquantityinput:focus {
  border-color: var(--aa-text);
  outline: none;
}

.w-commerce-commerceaddtocartbutton.button {
  background-color: var(--aa-bg);
  border: 0.5px solid var(--aa-text);
  border-radius: 0;
  color: var(--aa-text);
}

.w-commerce-commerceaddtocartbutton.button:hover {
  background-color: var(--aa-text);
  color: var(--aa-bg);
}

/* Small reserved tag (e.g. SALE / SOLD OUT) — the one place caps is permitted */
.tag {
  display: inline-block;
  padding: 2px 6px;
  border: 1px solid var(--aa-border);
  font-size: 11px;
  letter-spacing: 0.02em;
  color: var(--aa-text-secondary);
}

.checkout-form {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  background-color: var(--aa-bg);
}

.div-block-2 {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
}

.container {
  -webkit-box-flex: 0.25;
  -webkit-flex: 0.25 auto;
  -ms-flex: 0.25 auto;
  flex: 0.25 auto;
}

.sticky_summary {
  position: -webkit-sticky;
  position: sticky;
  top: 80px;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
}

.checkout_item_price {
  -webkit-align-self: center;
  -ms-flex-item-align: center;
  -ms-grid-row-align: center;
  align-self: center;
  font-size: 16px;
}

.checkout_item_info {
  -webkit-align-self: center;
  -ms-flex-item-align: center;
  -ms-grid-row-align: center;
  align-self: center;
}

.checkout_input {
  border-color: var(--aa-border);
  border-radius: 0px;
}

.order-items {
  margin-bottom: 0px;
}

.order-confirmation-container {
  background-color: var(--aa-bg);
}

.order-confirmation-header-wrapper {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.div-block-4 {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
}

.div-block-5 {
  -webkit-box-flex: 0.25;
  -webkit-flex-grow: 0.25;
  -ms-flex-positive: 0.25;
  flex-grow: 0.25;
  -webkit-flex-basis: auto;
  -ms-flex-preferred-size: auto;
  flex-basis: auto;
}

.order-summary {
  position: -webkit-sticky;
  position: sticky;
  top: 23px;
}

.hero_home {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 62vh;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  border-bottom: 1px solid var(--aa-border);
  background-color: var(--aa-bg);
}

@media (max-width: 991px) {
  .navbar {
    padding-right: 4px;
    padding-left: 24px;
    border-bottom-width: 1px;
  }
  .nav-link {
    padding-right: 24px;
    padding-left: 24px;
    border-bottom: 1px solid var(--aa-border);
    background-color: var(--aa-bg);
  }
  .nav-link:hover {
    background-color: transparent;
    text-decoration: underline;
    text-underline-offset: 3px;
  }
  .nav-link.w--current {
    text-decoration: underline;
    text-underline-offset: 3px;
  }
  .hero_checkout {
    height: auto;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .hero_photo {
    width: 100vw;
    height: auto;
    min-height: 60vh;
    aspect-ratio: auto;
    background-position: 50% 50%;
    background-size: contain;
  }
  .hero_content {
    width: 100vw;
    padding: 32px 24px 60px;
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
    text-align: center;
  }
  .largeheading {
    font-size: 38px;
  }
  .paragraph.cc-large.cc-w90 {
    width: 100%;
    padding-right: 40px;
    padding-left: 40px;
  }
  .nav-menu {
    border-top: 1px solid var(--aa-border);
  }
  .menu-button {
    background-color: var(--aa-bg);
  }
  .menu-button.w--open {
    background-color: var(--aa-bg);
  }
  .hero_home {
    height: auto;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

@media (max-width: 767px) {
  .section {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .about_photo {
    width: 100vw;
    height: auto;
    min-height: 50vh;
    aspect-ratio: auto;
    border-right: 0;
    border-bottom: 1px solid var(--aa-border);
    background-size: contain;
  }
  .brand {
    padding-left: 0px;
  }
  .logo {
    font-size: 30px;
  }
  .largeheading {
    font-size: 34px;
  }
  .button.subscribe_button {
    margin-top: 24px;
  }
  .subscribe_input {
    margin-bottom: 16px;
  }
  .form-2 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .footer {
    padding-top: 24px;
    padding-bottom: 24px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .footer_nav_links {
    padding-right: 13px;
    padding-left: 12px;
  }
  .footer_brand {
    padding-left: 0px;
  }
  .footer_social {
    padding-right: 0px;
  }
  .product_section {
    height: auto;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .product_photo {
    min-height: 460px;
    border-bottom: 1px solid var(--aa-border);
    border-right-width: 0px;
  }
  .product_content {
    padding: 32px 24px 60px;
  }
  .menu-button.w--open {
    background-color: var(--aa-bg);
  }
}

@media (max-width: 479px) {
  .logo.subhead {
    display: none;
  }
  .largeheading {
    font-size: 30px;
    line-height: 1.1em;
  }
  .paragraph.cc-large.cc-w90 {
    padding-right: 12px;
    padding-left: 12px;
  }
  .topheading {
    font-size: var(--aa-fs-xs);
  }
  .form-2 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .footer_nav_links {
    width: 100%;
  }
  .product_title {
    font-size: 32px;
    line-height: 40px;
  }
}
/* Hide leftover Webflow commerce error banner (we run our own Shopify cart) */
.w-commerce-commercecarterrorstate { display: none !important; }

/* Cart drawer slide-in (overlay fades, panel slides from right) */
.cart-wrapper { display: flex !important; opacity: 0; visibility: hidden; pointer-events: none; -webkit-transition: opacity 300ms ease, visibility 0s linear 300ms; transition: opacity 300ms ease, visibility 0s linear 300ms; }
.cart-wrapper.aa-open { opacity: 1; visibility: visible; pointer-events: auto; -webkit-transition: opacity 300ms ease; transition: opacity 300ms ease; }
.cart-container { -webkit-transform: translateX(100%); transform: translateX(100%); -webkit-transition: -webkit-transform 360ms cubic-bezier(0.32,0.72,0,1); transition: transform 360ms cubic-bezier(0.32,0.72,0,1); }
.cart-wrapper.aa-open .cart-container { -webkit-transform: translateX(0); transform: translateX(0); }

/* Empty state centred */
.w-commerce-commercecartemptystate { display: flex; -webkit-box-pack: center; -webkit-justify-content: center; justify-content: center; -webkit-box-align: center; -webkit-align-items: center; align-items: center; padding: 56px 24px; text-align: center; color: var(--aa-text-secondary); }

/* Line item polish */
.w-commerce-commercecartproductname { font-weight: var(--aa-weight-normal); }
.cart-item .remove { display: inline-block; -webkit-align-self: flex-start; -ms-flex-item-align: start; align-self: flex-start; color: var(--aa-text-secondary); text-decoration: none; cursor: pointer; }
.cart-item .remove:hover { color: var(--aa-text); text-decoration: underline; text-underline-offset: 2px; }

/* Quantity stepper on the right edge of each line item */
.aa-qty { display: flex; -webkit-box-orient: vertical; -webkit-flex-direction: column; flex-direction: column; -webkit-box-align: center; -webkit-align-items: center; align-items: center; -webkit-align-self: center; align-self: center; margin-left: auto; padding-right: 6px; }
.aa-qbtn { border: 0; background: none; padding: 5px 8px; cursor: pointer; line-height: 0; color: var(--aa-text-quiet); }
.aa-qbtn:hover { color: var(--aa-text); }
.aa-qbtn::before { content: ""; display: inline-block; width: 7px; height: 7px; border-top: 1px solid currentColor; border-right: 1px solid currentColor; }
.aa-qbtn.aa-up::before { -webkit-transform: rotate(-45deg); transform: rotate(-45deg); margin-top: 2px; }
.aa-qbtn.aa-down::before { -webkit-transform: rotate(135deg); transform: rotate(135deg); margin-bottom: 2px; }
.aa-qnum { font-size: var(--aa-fs-sm); padding: 1px 0; color: var(--aa-text); }

/* Product page: Quantity label not bold, same grey as the Size label */
.product_content label { font-weight: var(--aa-weight-normal); color: var(--aa-text-secondary); }

/* Product page quantity box — chevron arrows reveal on hover */
.aa-qbox { position: relative; display: inline-block; }
.aa-qbox .w-commerce-commerceaddtocartquantityinput { width: 72px; padding-right: 22px; margin-bottom: 0; }
/* Tighten the Quantity → Add to Cart gap so the Description clears the fold. */
.product_content .w-commerce-commerceaddtocartbutton.button { margin-top: 10px; }
.aa-qbox-arrows {
  position: absolute; top: 0; bottom: 0; right: 2px;
  display: -webkit-box; display: -webkit-flex; display: flex;
  -webkit-box-orient: vertical; -webkit-flex-direction: column; flex-direction: column;
  -webkit-box-pack: center; -webkit-justify-content: center; justify-content: center;
  opacity: 0; pointer-events: none;
  -webkit-transition: opacity 150ms ease; transition: opacity 150ms ease;
}
.aa-qbox:hover .aa-qbox-arrows { opacity: 1; pointer-events: auto; }
.aa-qbox-arrows .aa-qbtn { padding: 2px 4px; }

/* Hide native number spinner on the quantity input (custom chevrons replace it) */
.w-commerce-commerceaddtocartquantityinput::-webkit-inner-spin-button,
.w-commerce-commerceaddtocartquantityinput::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
.w-commerce-commerceaddtocartquantityinput { -moz-appearance: textfield; appearance: textfield; }

/* Size selector — Single / Trio / Case (n) buttons above Quantity.
   Ghost style matching the form controls; active size = filled near-black. */
.aa-sizes { margin-bottom: 18px; }
.aa-sizes_label { display: block; margin-bottom: 8px; font-size: var(--aa-fs-sm); color: var(--aa-text-secondary); }
.aa-sizes_btns { display: -webkit-box; display: -webkit-flex; display: flex; gap: 8px; max-width: 46ch; }
.aa-size {
  -webkit-box-flex: 1; -webkit-flex: 1 1 0; -ms-flex: 1 1 0; flex: 1 1 0;
  padding: 11px 8px;
  background-color: var(--aa-bg);
  border: 0.5px solid var(--aa-text);
  border-radius: 0;
  color: var(--aa-text);
  font-family: var(--aa-font);
  font-size: var(--aa-fs-sm);
  line-height: 1.1;
  text-align: center;
  cursor: pointer;
  -webkit-transition: background-color 120ms ease, color 120ms ease;
  transition: background-color 120ms ease, color 120ms ease;
}
.aa-size:hover { background-color: var(--aa-bg-muted); }
.aa-size.is-active { background-color: var(--aa-text); color: var(--aa-bg); }
.aa-size.is-active:hover { background-color: var(--aa-text); }
.aa-size:disabled { opacity: 0.4; cursor: not-allowed; }
.aa-caseonly { font-size: var(--aa-fs-sm); color: var(--aa-text); }

/* Category sidebar — collapsible filter dropdowns (Type / Brand / Country /
   Container / Volume), reusing the product-page accordion chevron + panel. */
/* Sidebar header band: holds the Clear link and the hairline above Type.
   Its height mirrors .shop_heading (24px top pad from the sidebar + one line of
   the 33px heading + 16px bottom pad) so the hairline lands exactly on the top
   line of the first product card. */
.aa-filters_head {
  display: -webkit-box; display: -webkit-flex; display: flex;
  -webkit-box-align: end; -webkit-align-items: flex-end; align-items: flex-end;
  -webkit-box-pack: end; -webkit-justify-content: flex-end; justify-content: flex-end;
  /* border-box height: matches .shop_heading (75px) minus the sidebar's own 24px
     top padding, so the hairline lands exactly on the first product card's top line. */
  min-height: 51px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--aa-border);
}
.aa-clear {
  -webkit-appearance: none; appearance: none;
  margin: 0; padding: 0; background: none; border: 0; cursor: pointer;
  /* Same size/weight/tracking as the filter labels so the stroke thickness matches. */
  font-family: var(--aa-font); font-size: 11px; font-weight: var(--aa-weight-normal);
  letter-spacing: 0.08em; line-height: 1;
  color: var(--aa-text-quiet);
  -webkit-transition: color 200ms ease, opacity 200ms ease;
  transition: color 200ms ease, opacity 200ms ease;
}
.aa-clear:hover { color: var(--aa-text); }
.aa-clear.is-hidden { opacity: 0; pointer-events: none; }

/* ===========================================================================
   Header search — trigger button + panel that hangs off the header's left edge.
   All-text (one icon: the magnifier), hairline borders, no radius/shadow,
   black/white only, reusing the existing type + border tokens.
   =========================================================================== */
.aa-search-btn {
  -webkit-appearance: none; appearance: none;
  /* Big gap from the nav links, tight to Cart: reads "Flavored   Search Cart".
     Closeness to Cart comes from trimming the cart label's reserved interior
     (see .cart-label min-width) — NOT a negative margin, which would overlap
     Cart's hit area onto "Search". */
  margin: 0 0 0 44px; padding: 18px 4px;
  background: none; border: 0; cursor: pointer;
  -webkit-align-self: center; align-self: center;
  font-family: var(--aa-font); font-size: var(--aa-fs-base); font-weight: var(--aa-weight-normal);
  color: var(--aa-text);
}
.aa-search-btn:hover,
.aa-search-btn.is-active { text-decoration: underline; text-underline-offset: 3px; }

.aa-search {
  position: fixed; right: 0; left: auto; top: 62px; z-index: 60;
  width: 760px; max-width: 100%;
  padding: 18px 20px 20px;
  background: var(--aa-bg);
  border: 1px solid var(--aa-border);
  border-top: 0;   /* shares the header's bottom hairline — no double line */
}
.aa-search[hidden] { display: none; }

/* Tabs — identical voice to the main nav links (light weight, underline-active). */
.aa-search_tabs {
  display: -webkit-box; display: -webkit-flex; display: flex;
  gap: 24px;
}
.aa-search_tab {
  -webkit-appearance: none; appearance: none;
  margin: 0; padding: 0 0 2px; background: none; border: 0; cursor: pointer;
  font-family: var(--aa-font); font-size: var(--aa-fs-base); font-weight: var(--aa-weight-light);
  color: var(--aa-text);
}
.aa-search_tab:hover,
.aa-search_tab.is-active { text-decoration: underline; text-underline-offset: 3px; }

.aa-search_row {
  display: -webkit-box; display: -webkit-flex; display: flex;
  -webkit-box-align: center; -webkit-align-items: center; align-items: center;
  gap: 16px; margin-top: 16px;
}
.aa-search_field {
  position: relative; -webkit-box-flex: 1; -webkit-flex: 1; flex: 1;
  display: -webkit-box; display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center;
}
.aa-search_input {
  width: 100%; -webkit-box-sizing: border-box; box-sizing: border-box;
  padding: 11px 38px 11px 12px;
  background: var(--aa-bg); border: 1px solid var(--aa-border);
  font-family: var(--aa-font); font-size: var(--aa-fs-base); font-weight: var(--aa-weight-normal);
  color: var(--aa-text);
}
/* Placeholder only — light weight + a quiet grey a touch darker than the hairline
   so the hint reads cleanly. Typed query text stays the input's normal weight/colour. */
.aa-search_input::-webkit-input-placeholder { color: #bdbdbd; font-weight: var(--aa-weight-light); }
.aa-search_input::placeholder { color: #bdbdbd; font-weight: var(--aa-weight-light); }
.aa-search_input:focus { outline: 0; border-color: var(--aa-text); }
/* Drop the native search clear/decoration so the only glyph is our magnifier. */
.aa-search_input::-webkit-search-decoration,
.aa-search_input::-webkit-search-cancel-button { -webkit-appearance: none; appearance: none; }
.aa-search_icon {
  position: absolute; right: 12px; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%);
  display: -webkit-inline-box; display: -webkit-inline-flex; display: inline-flex;
  color: var(--aa-text-secondary); pointer-events: none;
}
.aa-search_close {
  -webkit-appearance: none; appearance: none;
  margin: 0; padding: 0; background: none; border: 0; cursor: pointer;
  -webkit-align-self: center; align-self: center;
  font-family: var(--aa-font); font-size: var(--aa-fs-base); font-weight: var(--aa-weight-normal);
  color: var(--aa-text);
}
.aa-search_close:hover { text-decoration: underline; text-underline-offset: 3px; }

/* Results overlay — used on pages with no category grid of their own (home,
   product, policy). Scrolls inside the search panel so matches show directly
   under the search bar. Reuses the product-card grid styles. */
.aa-search_results {
  margin-top: 16px; padding-top: 16px;
  max-height: 60vh; overflow-y: auto;
  /* Always reserve the scrollbar gutter so prices don't shift left when a long
     result list makes the scrollbar appear. */
  scrollbar-gutter: stable;
  border-top: 1px solid var(--aa-border);
}
.aa-search_results[hidden] { display: none; }
.aa-search_empty {
  padding: 24px 4px; color: var(--aa-text-quiet); font-size: var(--aa-fs-base);
}

/* Horizontal search-result rows (SEARCH_ROWS). Overrides the card grid on
   whichever container the results render into: shrunken thumb + brand/name +
   price on one line, hairline-separated. */
.w-dyn-items.w-row.aa-search-rows { display: block; }
.w-dyn-items.w-row.aa-search-rows::before,
.w-dyn-items.w-row.aa-search-rows::after { content: none; }
.aa-srow {
  display: -webkit-box; display: -webkit-flex; display: flex;
  -webkit-box-align: center; -webkit-align-items: center; align-items: center;
  /* extra right padding keeps the price clear of the scrollbar on long lists */
  gap: 14px; padding: 10px 16px 10px 4px;
  border-bottom: 1px solid var(--aa-border);
  text-decoration: none; color: var(--aa-text);
}
.aa-srow:last-child { border-bottom: 0; }
.aa-srow_img {
  width: 44px; height: 44px; -webkit-box-flex: 0; -webkit-flex: 0 0 auto; flex: 0 0 auto;
  object-fit: contain; background: var(--aa-bg-muted);
}
.aa-srow_brand { font-size: var(--aa-fs-sm); white-space: nowrap; }
.aa-srow_name {
  -webkit-box-flex: 1; -webkit-flex: 1; flex: 1; min-width: 0;
  font-size: var(--aa-fs-sm); color: var(--aa-text-secondary);
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.aa-srow_price { font-size: var(--aa-fs-sm); white-space: nowrap; -webkit-flex: 0 0 auto; flex: 0 0 auto; }
.aa-srow:hover .aa-srow_name { text-decoration: underline; text-underline-offset: 2px; }

/* ===========================================================================
   Category sort — trigger + listbox panel at the top-right of the grid heading.
   Same treatment as the header search panel: hairline border, white, no shadow,
   no radius, black/white only. The only new icon is the stacked sort triangles,
   drawn at the magnifier's stroke weight.
   =========================================================================== */
.shop_heading {
  display: -webkit-box; display: -webkit-flex; display: flex;
  -webkit-box-align: center; -webkit-align-items: center; align-items: center;
  -webkit-box-pack: justify; -webkit-justify-content: space-between; justify-content: space-between;
  gap: 16px;
}
.shop_heading .largeheading { margin-bottom: 0; }   /* row is centered; drop the heading's own bottom gap */
.aa-sort { position: relative; -webkit-box-flex: 0; -webkit-flex: 0 0 auto; flex: 0 0 auto; }
.aa-sort_btn {
  -webkit-appearance: none; appearance: none;
  display: -webkit-inline-box; display: -webkit-inline-flex; display: inline-flex;
  -webkit-box-align: center; -webkit-align-items: center; align-items: center;
  gap: 7px; margin: 0; padding: 4px 0;
  background: none; border: 0; cursor: pointer;
  font-family: var(--aa-font); font-size: var(--aa-fs-base); font-weight: var(--aa-weight-light);
  color: var(--aa-text);
}
.aa-sort_btn:hover .aa-sort_label,
.aa-sort_btn[aria-expanded="true"] .aa-sort_label { text-decoration: underline; text-underline-offset: 3px; }
.aa-sort_icon {
  display: -webkit-inline-box; display: -webkit-inline-flex; display: inline-flex;
  color: var(--aa-text-secondary);
}
.aa-sort_btn:hover .aa-sort_icon,
.aa-sort_btn[aria-expanded="true"] .aa-sort_icon { color: var(--aa-text); }

.aa-sort_panel {
  position: absolute; top: 100%; right: 0; z-index: 40;
  margin-top: 8px; min-width: 184px; padding: 6px 0;
  background: var(--aa-bg); border: 1px solid var(--aa-border);
}
.aa-sort_panel[hidden] { display: none; }
.aa-sort_opt {
  padding: 8px 16px; cursor: pointer; white-space: nowrap; outline: 0;
  font-family: var(--aa-font); font-size: var(--aa-fs-sm); font-weight: var(--aa-weight-light);
  color: var(--aa-text-secondary);
}
.aa-sort_opt:hover, .aa-sort_opt:focus { color: var(--aa-text); }
.aa-sort_opt.is-active { color: var(--aa-text); text-decoration: underline; text-underline-offset: 3px; }

.aa-filter_head { padding: 13px 0; }
.aa-filters .aa-filter:first-child .aa-filter_head { border-top: 0; }
.aa-cnt { letter-spacing: 0; color: var(--aa-text-secondary); }
.aa-filter_panel.aa-open { max-height: 1200px; }
.aa-filter_panel .aa-acc_inner { padding-bottom: 14px; }
.aa-facet {
  display: -webkit-box; display: -webkit-flex; display: flex;
  -webkit-box-align: center; -webkit-align-items: center; align-items: center;
  gap: 9px; width: 100%; padding: 6px 0; margin: 0;
  background: none; border: 0; cursor: pointer; text-align: left;
  font-family: var(--aa-font); font-size: var(--aa-fs-sm); color: var(--aa-text-secondary);
}
.aa-facet::before {
  content: ""; width: 11px; height: 11px; -webkit-box-flex: 0; -webkit-flex: 0 0 auto; flex: 0 0 auto;
  border: 1px solid var(--aa-text-secondary);
}
.aa-facet:hover { color: var(--aa-text); }
.aa-facet.is-on { color: var(--aa-text); }
.aa-facet.is-on::before { background: var(--aa-text); border-color: var(--aa-text); }
/* Per-option result count, pushed to the right edge of the row. */
.aa-facet_cnt { margin-left: auto; padding-left: 10px; color: var(--aa-text-quiet); font-variant-numeric: tabular-nums; }
/* Options that currently yield 0 results stay visible, just de-emphasized. */
.aa-facet.is-zero { opacity: 0.4; }
.aa-facet.is-zero:hover { color: var(--aa-text-secondary); }

/* Reserve scrollbar space so navigating between pages never shifts the layout */
html { overflow-y: scroll; scrollbar-gutter: stable; }

/* Sticky footer — short pages fill the viewport, footer pinned to the bottom */
.body { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-flex-direction: column; flex-direction: column; min-height: 100vh; }
.body > .footer { margin-top: auto; }

/* ===========================================================================
   Product Description + Composition — added BELOW the existing fold.
   Nothing above the Add to Cart button is touched; this sits in normal flow
   after it, within the same content column and horizontal margins.
   =========================================================================== */
/* Width matches the spec table (Brand/Type/Container/Volume) so the whole
   Description + Composition stack lines up with those sections. */
.aa-desc {
  margin-top: 22px;
  max-width: 46ch;
}
/* Accordion header — full-width clickable row, label left, chevron right. */
.aa-acc_head {
  display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
  -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center;
  -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between;
  -webkit-appearance: none; appearance: none;
  width: 100%; margin: 0; padding: 16px 0;
  background: none; border: 0; border-top: 1px solid var(--aa-border);
  font-family: var(--aa-font); text-align: left; cursor: pointer;
}
/* Micro label — matches the spec-field label voice (small, tracked, secondary). */
.aa-label {
  font-size: 11px;
  letter-spacing: 0.08em;
  color: var(--aa-text-secondary);
  font-weight: var(--aa-weight-normal);
}
.aa-acc_head:hover .aa-label { color: var(--aa-text); }
/* Chevron — points down when collapsed, rotates up when expanded. */
.aa-chev {
  width: 7px; height: 7px;
  border-right: 1px solid var(--aa-text-secondary);
  border-bottom: 1px solid var(--aa-text-secondary);
  -webkit-transform: translateY(-2px) rotate(45deg); transform: translateY(-2px) rotate(45deg);
  -webkit-transition: -webkit-transform 0.3s ease; transition: transform 0.3s ease;
}
.aa-acc_head[aria-expanded="true"] .aa-chev {
  -webkit-transform: translateY(2px) rotate(-135deg); transform: translateY(2px) rotate(-135deg);
}
.aa-acc_head:hover .aa-chev { border-color: var(--aa-text); }
.aa-desc_body {
  font-size: var(--aa-fs-base);
  line-height: var(--aa-lh-body);
  color: var(--aa-text-secondary);
}

/* Collapsible panels — height animates; default state set per panel below. */
.aa-acc { overflow: hidden; max-height: 0; transition: max-height 0.45s ease; }
#aaDescPanel.aa-open { max-height: 360px; }
.aa-comp.aa-open { max-height: 900px; }
.aa-acc_inner { padding-bottom: 24px; }
.aa-comp_inner { padding-top: 4px; }

/* Stat strip — solid top/bottom rule, hairline column dividers, monospace values. */
.aa-stats {
  display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
  border-top: 1px solid var(--aa-border);
  border-bottom: 1px solid var(--aa-border);
}
.aa-stat {
  -webkit-box-flex: 1; -webkit-flex: 1; -ms-flex: 1; flex: 1;
  padding: 14px 0 14px 16px;
  border-left: 1px solid var(--aa-border);
}
.aa-stat:first-child { padding-left: 0; border-left: 0; }
.aa-stat_label { font-size: 11px; letter-spacing: 0.08em; color: var(--aa-text-secondary); margin-bottom: 6px; }
.aa-stat_val { font-size: var(--aa-fs-base); color: var(--aa-text); }

/* Minerality scale — single reusable component (product Composition + homepage index). */
.aa-scale { margin-top: 28px; }
.aa-scale_track { position: relative; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; height: 3px; background: var(--aa-border); margin-bottom: 10px; }
.aa-scale_seg { -webkit-box-flex: 1; -webkit-flex: 1; -ms-flex: 1; flex: 1; border-left: 1px solid var(--aa-bg); }
.aa-scale_seg:first-child { border-left: 0; }
.aa-scale_mark { position: absolute; top: 50%; width: 1.5px; height: 14px; background: var(--aa-text); -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }
.aa-scale_labels { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; }
.aa-scale_lab { -webkit-box-flex: 1; -webkit-flex: 1; -ms-flex: 1; flex: 1; font-size: 11px; color: var(--aa-text-secondary); }
.aa-scale_lab span { display: block; color: var(--aa-text-quiet); font-size: 10px; margin-top: 3px; }
.aa-scale_lab.is-here { color: var(--aa-text); }

.aa-comp_notes { margin-top: 28px; max-width: 60ch; font-size: var(--aa-fs-base); line-height: var(--aa-lh-body); color: var(--aa-text-secondary); }
.aa-comp .product_specs { margin-top: 24px; margin-bottom: 0; max-width: none; }
