@charset "UTF-8";
:root {
--UNIFIRST_GREEN_339: #00B194;
--UNIFIRST_COOL_GRAY_10: #63666A;
--UNIFIRST_DEEP_GREEN: #007672;
--UNIFIRST_TEAL: #007672;
--UNIFIRST_OLIVE: #ABAD00;
--UNIFIRST_BRIGHT_LIME: #CEDC00;
--UNIFIRST_DARK_CRIMSON: #3F2021;
--UNIFIRST_BURNT_ORANGE: #DAAA00;
--UNIFIRST_YELLOW: #FFB81C;
--UNIFIRST_SLATE_GRAY: #97999B;
--UNIFIRST_WARM_GRAY: #A7ACA2;
--UNIFIRST_LIGHT_GRAY: #D9D9D6;
}
/* CSS Document */

* {margin:0; padding:0; border:0; /*outline:0;*/ font-family:Arial, Helvetica, sans-serif; }

img {border:0; outline:0;}
a.disabled {color:gray; }
.bold {font-weight:bold;}
.error {color:#C00;}
.italic {font-style:italic;}
.fLeft {float:left;}
.fRight {float:right;}
.aCenter {text-align:center;}
.hidden {display:none;}
.invisible {visibility:hidden;}
.padd_top5 {padding-top:5px;}
.clear {clear:both;font-size:0px;height:0px;line-height:0px;margin: 0px;width: 100%;overflow:hidden;}
.last {border:none;margin-bottom:0 !important;}

#employeeNameInput::placeholder {
  color: #78787b;
}

#employeeAnnivDate::placeholder {
  color: #78787b;
}

::placeholder {
    color: #c0c0c0;
}

/* main styles */
body {font-size:7.5pt;color:#78787a;line-height:14px;}
p {font-size:8.5pt;color:#78787a;line-height:14px;padding:0;margin-bottom:10px;}
h1 {color:#017864; font-size:14pt;margin-bottom:15px;font-weight:normal;}
h2 {color:#017864; font-size:10pt;margin-bottom:3px; font-weight:normal;}
h3 {font-size:8.5pt;color:#78787a;font-weight:bold;padding:0 0 5px 0;}
a {color:#78787a;text-decoration:underline;}
a:hover {text-decoration:none;}
blockquote {margin:10px 26px 10px 26px;}
hr{border-top:#ccc 1px solid;margin:12px 0;height:1px;width:100%;padding:0;}
#container {width:1000px;padding:0;margin:0 auto;position:relative;}
#containerBG {width:100%;padding:0;background:url(../images/bg-login.jpg) bottom no-repeat;min-height:735px;height:auto!important;height:735px;}
#containerShopBG {width:100%;padding:0;background:url(../images/bg-loginShopU.jpg) bottom no-repeat;min-height:735px;height:auto!important;height:735px;}
#header {width:1000px;border-bottom:#dbdbdd 1px solid;padding:0;margin:0;}
#logo {width:250px;min-height:75px;float:left;}
#topRight {width:730px;float:right;margin-right:10px;}
.tagline {font-size:9pt;color:#017864;padding:0;margin:0 0 3px 0;letter-spacing:.35px;}
#main-container {width:1000px;}
#leftCol {width:852px;padding:0;margin:18px 0;border-right:#dbdbdd 1px solid;float:left;}
#leftCol .content {width:832px;padding:0 20px 0 0;margin:0;}
.content ul {margin-left:10px; margin-bottom:10px; padding-left:5px;}
.content ul li {list-style:disc; padding:3px 0px;}
#leftCol input.address.viewmode{  border:0 none;box-shadow:0 ;
box-shadow:0 0 0px ;-moz-box-shadow:0 0 0px ;-webkit-box-shadow:0 0 0px ;
}
#leftCol input.address {color:#78787b;border:#dbdbdd 1px solid;font-size:7.5pt;height:16px;width:110px;padding:0 0 0 2px;margin:3px 0;box-shadow:0 0 2px #ccc;-moz-box-shadow:0 0 2px #ccc;-webkit-box-shadow:0 0 2px #ccc;}
#leftCol select.address {color:#78787b;border:#dbdbdd 1px solid;font-size:7.5pt;height:16px;width:110px;padding:0 0 0 2px;margin:3px 0;box-shadow:0 0 2px #ccc;-moz-box-shadow:0 0 2px #ccc;-webkit-box-shadow:0 0 2px #ccc;}
#leftColCart {width:685px;padding:0 0 0 15px;margin:18px 0;border-left:#dbdbdd 1px solid;border-right:#dbdbdd 1px solid;float:left;}
#rightCol {float:right;width:140px;padding:0;margin:18px 0;}

/* Minimal fix: Override inline padding/styles and ensure proper alignment even if sideBox classes are missing */
#rightCol > div {float: right !important; width: 126px !important; max-width: 140px !important; margin-bottom: 10px !important;}
#rightCol .sideBox { float: right !important; width: 126px !important; max-width: 140px !important; margin-bottom: 10px !important; }

/* boxes */
.boxes p {padding:0 12px;}
.boxes h2 {font-size:9pt;margin-bottom:3px;padding:12px 12px 3px 12px;}
.sideBox {float:right;width:126px;min-height:170px;height:auto!important;height:170px;margin:0 0 10px 0;background:#fff;}
.boxes2 p {padding:0;}
.boxes2 h2 {margin-bottom:6px;padding:0;}
.boxes2 h3 {margin-bottom:6px;padding:0;color:#017864;}
.boxes3 p {padding:0;}
.boxes3 h2 {margin-bottom:6px;padding:0;}
.boxes3 h3 {margin-bottom:6px;padding:0;color:#017864;}
.sideBox2 {float:right;width:126px;min-height:170px;height:auto!important;height:170px;margin:0 0 10px 0;background:#fff;}
.mainBox {float:left;width:260px;height:auto;margin:12px 22px 0 0;border:#dbdbdd 1px solid;box-shadow:0 0 3px #ccc;-moz-box-shadow:0 0 3px #ccc;-webkit-box-shadow:0 0 3px #ccc;overflow:hidden;}
.mainBox img {display:block;max-width:100%;height:auto;}
.mainBox .mainBox {float:none;width:auto;height:auto;margin:0;padding:0;border:none;box-shadow:none;-moz-box-shadow:none;-webkit-box-shadow:none;overflow:visible;}
.mainBox .boxes h2 {padding:0;margin:0;}
.mainBox .boxes p {padding:0;margin:0;}
.sideBox3 {float:right;width:126px;min-height:150px;margin:0 0 10px 0;border:#dbdbdd 1px solid;background:#fff;box-shadow:0 0 3px #ccc;-moz-box-shadow:0 0 3px #ccc;-webkit-box-shadow:0 0 3px #ccc;border-radius:8px;font-size:8pt;font-weight:bold;}
.sideBox3 h2 a{color:#017864;text-decoration:underline;font-weight:bold;}
.sideBox3 h2 a:hover{text-decoration:none;}
.sideBox3 hr{border-top:#dbdbdd 1px solid;margin:6px 0;height:1px;width:100%;padding:0;}

/* top account links */
#topWelcome-container {width:200px;top:18px;position:relative;float:left;}
.topWelcome {font-size:10pt;color:#017864;padding:0 20px 0 0;margin:0;font-weight:bold;}
#topWelcome2 {font-size:10pt;color:#017864;padding:00;margin:10px 0 0 38px;font-weight:bold;}
#topWelcome2 a {font-size:7.5pt;color:#78787a;text-decoration:underline;}
#topWelcome2 a:hover {text-decoration:none;}
#topNav-container {margin-top:21px;position:relative;height:14px;z-index:100;float:left;width:545px}

/* LEVEL ONE */
ul.topNav { position: relative; list-style:none;float:right;}
ul.topNav li { float: left; zoom: 1; background: #fff; font-size:7.5pt;line-height:1em; height:15px;}
ul.topNav a:hover { text-decoration:underline; }
ul.topNav li a { text-decoration:none;font-size:7.5pt;color:#000;text-transform:uppercase;font-weight:bold;padding:0 6px;height:14px;line-height:1em; }
ul.topNav li:hover { background: #fff; color: black; position: relative; }

/* LEVEL TWO */
ul.topNav ul { visibility: hidden; position: absolute; top: 100%; left: 0; list-style:none;}
ul.topNav ul li { width:125px;font-weight: normal; background: #fff; color: #000; float: none; padding:2px;line-height:1em;}
ul.topNav ul li a { border-right: none; width: 100%; display: inline-block; }/* IE 6 & 7 Needs Inline Block */ 

/* LEVEL THREE */
ul.topNav ul ul { left: 100%; top: 0; }
ul.topNav li:hover > ul { visibility: visible; }

#topCart-container {margin-top:15px;position:relative;float:right;/*margin-right:2px;*/margin-right:0;z-index: 999; width:183px}
.topCart {line-height:12px;font-size:7.5pt;color:#fff;background:#017865;padding:5px;border:#dbdbdd 1px solid;margin:0;}
.limit {line-height:12px;font-size:7.5pt;color:#78787a;padding:5px;width:160px;border:none;background:none;position:relative;}

/* Fix cart icon visibility on mobile - LOGIN PAGES ONLY */
@media screen and (max-width: 768px) {
  body:has(#regContainer) #topCart-container {
    position: fixed !important;
    top: 10px !important;
    right: 10px !important;
    z-index: 9999 !important;
    width: auto !important;
    margin: 0 !important;
    background: #fff !important;
    border-radius: 8px !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.2) !important;
    padding: 5px 10px !important;
  }
  
  body:has(#regContainer) #topCart {
    height: auto !important;
  }
  
  body:has(#regContainer) #topCart > div {
    width: auto !important;
    float: none !important;
    display: flex !important;
    align-items: center !important;
  }
  
  /* Override the inline padding-left and width on the cart icon image - LOGIN PAGES ONLY */
  body:has(#regContainer) #topCart img,
  body:has(#regContainer) #topCart-container img {
    width: 30px !important;
    height: auto !important;
    padding-left: 0 !important;
    padding-top: 0 !important;
    margin-right: 5px !important;
  }
  
  /* Style the cart count - LOGIN PAGES ONLY */
  body:has(#regContainer) #fTotalItems {
    font-size: 14px !important;
    color: #017864 !important;
  }
}

/* search */
#search {background:url(../images/searchGo.jpg) right no-repeat;}
#search input {border:#dbdbdd 1px solid;font-size:7.5pt;height:20px;width:180px;padding:0 2px; float:left;}
#search input.submit {border:none;width:50px;height:22px;margin:0;}
#search img {margin-top:0px;}
/* navigation */
#menu-container {width:1000px; /*height:22px;  overflow:hidden;*/ height:auto; padding:5px 0;margin:0;border-bottom:#dbdbdd 1px solid;z-index:50;position:relative;}

/* LEVEL ONE */
ul.menu { position: relative; list-style:none;}
ul.menu li { float: left; zoom: 1; background:#fff; }
ul.menu a:hover { text-decoration:underline; }
ul.menu li a { height:22px; line-height:22px; font-size:9pt; color:#78787a; text-decoration:none; padding:0 16px; display:block; text-transform:uppercase;font-weight:bold;}
ul.menu li:hover { text-decoration:underline;position: relative; }

/* LEVEL TWO */
ul.menu ul { width: 220px; visibility: hidden; position: absolute; top: 100%; left: 0; list-style:none;border: 1px solid #01b295;}
ul.menu ul li { font-weight: normal; background: #fff; color: #78787a; border-bottom: 1px solid #01b295; float: none; }
ul.menu ul li a { border-right: none; display: inline-block; } /* IE 6 & 7 Needs Inline Block */

/* LEVEL THREE */
ul.menu ul ul { left: 100%; top: 0; }
ul.menu li:hover > ul { visibility: visible; }

.shopU-menu ul.menu li a { padding: 0 11px; }

/* registration styles */
.regBox-toggle { display: none; }
body.regBG {background:url(../images/bg-login.jpg) bottom no-repeat;}
#logoReg {width:214px;min-height:75px;float:left;}
#topCenterReg {width:638px;text-align:center;font-size:26px;color:#017864;padding:0;margin:39px 0 0 0;float:left; line-height:normal;}
#topRightReg {width:148px;float:left;}
#regContainer {width:484px;margin: auto 200px;}
#regContainer600 {width:600px;margin:auto;}
.regBox600{width:600px;padding:0;background:#D9D9D6;border:#A8A9AD 2px solid;margin:0 0 18px 0;box-shadow:0 0 3px #ccc;-moz-box-shadow:0 0 3px #ccc;-webkit-box-shadow:0 0 3px #ccc;/*opacity:0.6;*/}
.regBox224 {width:224px;padding:0;background:#D9D9D6;border:#A8A9AD 2px solid;margin:0 0 18px 0;box-shadow:0 0 3px #ccc;-moz-box-shadow:0 0 3px #ccc;-webkit-box-shadow:0 0 3px #ccc;/*opacity:0.6;*/}
.regBox482 {width:482px;padding:0;background:#D9D9D6;border:#A8A9AD 2px solid;margin:0 0 18px 0;box-shadow:0 0 3px #ccc;-moz-box-shadow:0 0 3px #ccc;-webkit-box-shadow:0 0 3px #ccc;/*opacity:0.6;*/}
.regBox483 {width:482px;padding:0;background:#D9D9D6;border:#A8A9AD 2px solid;margin:0 0 18px 0;box-shadow:0 0 3px #ccc;-moz-box-shadow:0 0 3px #ccc;-webkit-box-shadow:0 0 3px #ccc;/*opacity:0.6;*/}
.regBox412 {width:412px;padding:0;background:#D9D9D6;border:#A8A9AD 2px solid;margin:0 12px 12px 0;box-shadow:0 0 3px #ccc;-moz-box-shadow:0 0 3px #ccc;-webkit-box-shadow:0 0 3px #ccc;float:left;/*opacity:0.6;*/}
.regBox412 td {font-size:8.5pt;line-height:1.5em;}
.regBox408 {width:408px;padding:0;background:#D9D9D6;border:#A8A9AD 2px solid;margin:0 12px 12px 0;box-shadow:0 0 3px #ccc;-moz-box-shadow:0 0 3px #ccc;-webkit-box-shadow:0 0 3px #ccc;float:left;/*opacity:0.6;*/}
.regBox408 td {font-size:8.5pt;line-height:1.5em;}
.regBox390 {width:390px;padding:0;background:#D9D9D6;border:#A8A9AD 2px solid;margin:0 12px 12px 0;box-shadow:0 0 3px #ccc;-moz-box-shadow:0 0 3px #ccc;-webkit-box-shadow:0 0 3px #ccc;float:left;/*opacity:0.6;*/}
.regBox390 td {font-size:8.5pt;line-height:1.5em;}
.regBoxContent {padding:12px; text-align:center;}
.regBoxContent p {font-size:7.5pt;line-height:14px;color:#000;text-transform:uppercase;margin:0 0 5px 0;}
#regContainer .error {font-size:8pt;line-height:14px;color:#F00;text-transform:uppercase;margin:0 0 5px 0;}
.regBoxContent h2 {font-size:11.5pt;color:#017864;margin:0 0 10px 0;}
.regBoxContent h4 {font-size:9.5pt;color:#017864;margin:0 0 10px 0;font-weight:normal;}
.regBoxContent input {color:#78787b;border:#dbdbdd 1px solid;font-size:7.5pt;height:20px;width:200px;padding:0 0 0 2px;margin:3px 0;box-shadow:0 0 2px #ccc;-moz-box-shadow:0 0 2px #ccc;-webkit-box-shadow:0 0 2px #ccc;}
.regBoxContent select {color:#78787b;border:#dbdbdd 1px solid;font-size:7.5pt;height:22px;width:200px;padding:0 0 0 2px;margin:3px 0;box-shadow:0 0 2px #ccc;-moz-box-shadow:0 0 2px #ccc;-webkit-box-shadow:0 0 2px #ccc;}
.regBoxContent input[type=radio] {width:50px;}
.orderHistoryBox {padding:12px 0px; text-align:left; vertical-align:middle;}
.orderHistoryBox input {color:#78787b;border:#dbdbdd 1px solid;font-size:7.5pt;height:20px;padding:0 0 0 2px;margin:0px; vertical-align:middle; box-shadow:0 0 2px #ccc;-moz-box-shadow:0 0 2px #ccc;-webkit-box-shadow:0 0 2px #ccc;}
/*border:none; width:25px; text-align:left; margin: 0px; vertical-align:middle;*/
.orderHistoryBox select {color:#78787b;border:#dbdbdd 1px solid;font-size:7.5pt;height:22px;width:200px;padding:0 0 0 2px;margin:0px; vertical-align:middle; box-shadow:0 0 2px #ccc;-moz-box-shadow:0 0 2px #ccc;-webkit-box-shadow:0 0 2px #ccc;}
.regBoxContent input[type=checkbox] {width:20px;}
/*.regBoxContent ul {width:120px;float:right;clear:right;margin:12px 0;}*/
#popupAddressId {width:50px;border:none;box-shadow:none;}

.regBoxContent .sublinks, .regBoxContent .sublinks2 {width:110px;float:right;margin:24px 0 10px 0;}
.regBoxContent .sublinks ul{width:110px;float:right;list-style:none;}
.regBoxContent .sublinks li {overflow:hidden;background:url(../images/arrow.png) right 2px no-repeat;list-style:none;text-align:left;width:110px;float:left;height:16px;line-height:1em;}
.regBoxContent .sublinks li a {color:#017864;font-size:7.5pt;text-decoration:underline;height:16px;line-height:16px;float:left;}
.regBoxContent .sublinks li a:hover {text-decoration:none;}


.regBoxContent .sublinks2 li {background:url(../images/arrow.png) right no-repeat;list-style:none;text-align:left;height:16px;line-height:1em;}
.regBoxContent .sublinks2 li a {color:#017864;font-size:7.5pt;text-decoration:underline;}
.regBoxContent .sublinks2 li a:hover {text-decoration:none;}

.regBox830 {width:830px;padding:0;background:#D9D9D6;border:#A8A9AD 2px solid;margin:0 0 18px 0;box-shadow:0 0 3px #ccc;-moz-box-shadow:0 0 3px #ccc;-webkit-box-shadow:0 0 3px #ccc;/*opacity:0.6;*/}
.regBox830 table {margin:20px auto 0 auto;}
.regBox830 td {font-size:7.5pt;line-height:14px;font-weight:bold;}
.dots {background:url(../images/dots.png) bottom repeat-x;}
.dots span {background:#D9D9D6;}
.regBox830 td input {border:#dbdbdd 1px solid;font-size:7.5pt;height:20px;width:190px;padding:0 2px;box-shadow:0 0 2px #ccc;-moz-box-shadow:0 0 2px #ccc;-webkit-box-shadow:0 0 2px #ccc;}
/*@media all\0 { .regBox830 td select:focus { position:absolute; width:auto;margin-top:-10px; } }
@media all\0 { .regBox830 td { position:relative} }
@media all and (monochrome:0) { .regBox830 td select:focus { width: 200px\9;position:static } }*/ 
.regBox830 td select {border:#dbdbdd 1px solid;font-size:7.5pt;height:20px;min-width:190px;padding:0px;box-shadow:0 0 2px #ccc;-moz-box-shadow:0 0 2px #ccc;-webkit-box-shadow:0 0 2px #ccc;}
select#squestion {width:270px;} /* fixed width of security question dropdown */

div.regBox830 div.col2 div.dvinputfield{width:275px}
div.regBox830 div.regBoxContent div.dvformwrapper div.col1{margin-right:20px}

.regBox830 td select.error,.regBox830 div select.error{border:1px solid #CC0000;}
.regBox830 td input.inputExt {width:40px;}
.regBox830 td input#ext {width:40px;}
#impersTable {margin:0 auto;}
#impersTable td {border-top:#dbdbdd 1px solid;border-bottom:#dbdbdd 1px solid;border-left:#dbdbdd 1px solid;padding:4px 12px;}
#impersTable td.last {border-right:#dbdbdd 1px solid;}
#impersTable td.nobord {border:none;padding:8px 0;}
#impersTable h3 {font-size:9pt;font-weight:bold;color:#000;text-align:left;margin:0;padding:0;}
#impersTable h4 {font-size:8pt;font-weight:bold;}
#impersTable a {text-decoration:underline;font-size:7.5pt;color:#78787a;}
#impersTable a:hover {text-decoration:none;}

#approversTableBody td {
    border-top: var(--UNIFIRST_SLATE_GRAY) 1px solid;
    border-bottom: var(--UNIFIRST_SLATE_GRAY) 1px solid;
    border-left: var(--UNIFIRST_SLATE_GRAY) 1px solid;
    padding: 4px 12px;
    font-size: 7.5pt;
    color:#78787a;
    max-width: 120px;
    width: 120px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
#approversTable tr td:last-child {
    border-right: var(--UNIFIRST_SLATE_GRAY) 1px solid;
}
#approversTableHead td {
    border-top: var(--UNIFIRST_SLATE_GRAY) 1px solid;
    border-bottom: var(--UNIFIRST_SLATE_GRAY) 1px solid;
    border-left: var(--UNIFIRST_SLATE_GRAY) 1px solid;
    padding: 4px 12px;
    font-size:9pt;
    font-weight: bold;
    color:#000;
    background-color: rgb(243, 243, 243);
    cursor:pointer;
}
#approversTableHead .title {
    font-size: 11.5pt;
    text-align: center;
    cursor:auto;
    color: #017864;
    font-weight: normal;
}
#approversTableBody a {
    color:#78787a;
}

#orderTable {margin:0 auto;}
#orderTable td {border-top:#dbdbdd 1px solid;border-bottom:#dbdbdd 1px solid;border-left:#dbdbdd 1px solid;padding:10px;text-align:center;}
#orderTable td.last {border-right:#dbdbdd 1px solid;}
#orderTable td.nobord {border:none;padding:8px 0;}
#orderTable h3 {font-size:9pt;font-weight:bold;color:#000;margin:0;padding:0;}
#orderTable h4 {font-size:8pt;font-weight:bold;}
#orderTable a {text-decoration:underline;font-size:7.5pt;color:#78787a;}
#orderTable a:hover {text-decoration:none;}
#orderTable .sublinks {width:120px;margin:0;}
#orderTable li {background:url(../images/arrow.png) right no-repeat;list-style:none;text-align:center;height:16px;line-height:1em;}
#orderTable li a {color:#017864;font-size:7.5pt;text-decoration:underline;}
#orderTable li a:hover {text-decoration:none;}

/* cart styles */
#breadCrumb-container {width:680px;height:20px;margin:0 0 10px 0 !important;padding:0;}
.breadCrumb {font-size:7.5pt;color:#78787a;}
.breadCrumb ul {list-style:none;margin-left:-6px;}
.breadCrumb ul li {float:left;position:relative;display:block;}
.breadCrumb ul li a{text-decoration:underline;font-size:7.5pt;color:#78787a;padding:0 3px;display: inline-block}
.breadCrumb ul li span {font-size:7.5pt;color:#78787a;padding:0 3px;display: inline-block}
.breadCrumb ul li a:hover {text-decoration:none;}
.breadCrumb ul li a.active {text-decoration:none;}
.active a {cursor: default;}

#prodDetailsPic {width:240px;padding:0;margin:0 20px 0 0;float:left;text-align:center;}
#prodDetailsPic img {border:#dbdbdd 1px solid;}
#prodDetails-container {width:570px;float:left;}
#prodDetails-container, #prodDetailsQL-container h1 {color:#017864; font-size:10pt;padding:0;margin:0;}
#prodDetails-container #leftCol input.error{color:#CC0000;border:#CC0000 1px solid;}
#prodDetails-container input {color:#78787b;border:#dbdbdd 1px solid;font-size:7.5pt;height:20px;padding:0 0 0 2px;margin:3px 0;box-shadow:0 0 2px #ccc;-moz-box-shadow:0 0 2px #ccc;-webkit-box-shadow:0 0 2px #ccc;}
#prodDetails-container select{border:1px solid #DBDBDD;box-shadow:0 0 2px #CCCCCC;color:#78787A;font-size:7pt;font-family:Verdana;padding:2px;width:100px;}
#prodDetails-container .error{color: #C00;}
#prodDetailsQL-container input {color:#78787b;border:#dbdbdd 1px solid;font-size:7.5pt;height:20px;padding:0 0 0 2px;margin:3px 0;box-shadow:0 0 2px #ccc;-moz-box-shadow:0 0 2px #ccc;-webkit-box-shadow:0 0 2px #ccc;}
#prodDetailsQL-container select{border:1px solid #DBDBDD;box-shadow:0 0 2px #CCCCCC;color:#78787A;font-size:7pt;font-family:Verdana;padding:2px;width:100px;}
#prodDetailsQL-container .error{color: #C00;}
#prodDetailsQL-container input.error{color:#CC0000;border:#CC0000 1px solid;}
.prodDetails-content, .prodDetails-content li {color: #78787A;font-size: 7.5pt;padding: 0;}
.prodDetails-content li{ margin: 0 8px 0 0;}
.price {font-size:9pt;font-weight:bold;}
.tab {font-size:8pt;color:#78787a;margin:15px 0 0 0;padding:2px 0;border-top:#dbdbdd 1px solid;border-right:#dbdbdd 1px solid;border-bottom:#fff 1px solid;border-left:#dbdbdd 1px solid;width:82px;text-align:center;z-index:10;position:relative;}
.prodDetails {margin-top:-1px;border:#dbdbdd 1px solid;width:100%;}
.prodDetails-content {width:100%;padding:15px;}
.prodDetails-contentInner{margin-right:30px;}
.prodDetails-content li {font-size:7.5pt;color:#78787a;margin:0 8px 0 0;padding:0;}
.prodDetails-content input {color:#78787b;border:#dbdbdd 1px solid;font-size:7.5pt;height:20px;padding:0 0 0 2px;margin:3px 0;box-shadow:0 0 2px #ccc;-moz-box-shadow:0 0 2px #ccc;-webkit-box-shadow:0 0 2px #ccc;}
.prodDetails-content ul.blocks {display:inline-block;margin:0 0 12px 0; }
.prodDetails-content ul.blocks li {float:left;width:auto!important;height:30px;margin:0 8px 8px 0;padding:0;border:#dbdbdd 1px solid;list-style:none;text-align:center;font-size:7.5pt;color:#78787a;line-height:2em !important;background:#ccc;vertical-align:middle;}
.prodDetails-content ul.blocks li.selected{border:#666 1px solid;}


.prodDetails-content ul.sizeBlocks {display:inline-block;margin:0 0 4px 0;}
.prodDetails-content ul.sizeBlocks li {float:left;padding:5px;margin:0 8px 8px 0;border:#dbdbdd 1px solid;list-style:none;text-align:center;font-size:7.5pt;color:#78787a;background:#ccc;vertical-align:middle;}
.prodDetails-content ul.sizeBlocks li a{text-decoration:none;display:block;}
.prodDetails-content ul.sizeBlocks a{text-decoration:none;}
.prodDetails-content ul.sizeBlocks li.selected{border:#666 1px solid;background:#fff;}

.prodDetails a.sizeChart {border:#dbdbdd 1px solid;display:block;padding:2px 8px;text-decoration:none;font-size:7.5pt;color:#78787a;margin-right:0px;}
.prodDetails hr{border-top:#dbdbdd 1px solid;margin:12px 0 0 -19px;height:1px;width:100%; padding:10px;}
.prodDetails .divider-line{border-top:#dbdbdd 1px solid;margin:12px 0 0 -15px;height:1px;width:100%; padding:10px 20px 10px 10px;}
.prodDetails ul {margin:0 0 15px 15px;}
.prodDetails .slide {margin:5px 0;display:none;}
.prodDetails .slide img {border:#dbdbdd 1px solid;margin-right:10px;}
.prodDetails .slide table {margin-bottom:0px;}
.prodDetails .noSlide {margin:5px 0;}
.prodDetails .noSlide img {border:#dbdbdd 1px solid;margin-right:10px;}
.prodDetails .noSlide button > img {border:none;margin-right:0;}
.prodDetails .noSlide td {padding:3px;}
.prodDetails .noSlide table {margin-bottom:0px;}
.prodThumb-container {width:162px; padding-right: 8px; padding-bottom: 5px; margin:0;float:left;position:relative;z-index:1}
.productRow {}
.prodThumb {border:#dbdbdd 1px solid;position:relative;height:200px;}
.prodThumb a.ql {position:absolute;left:8px;bottom:10px;display:none;width:144px;height:24px;no-repeat;}
.prodThumb:hover a.ql {display:block;}
/*.prodThumb a.details {position:absolute;left:0;top:0;display:block !important;width:144px;height:160px;background:none !important;}*/
.prodThumb a.category {display:block;width:160px;height:200px !important;overflow:hidden !important;padding:0 !important;margin:10px 0 0 -8px !important;position:relative;}
.prodThumb-content {padding:5px;}
.prodThumb-content h2 a {font-size:9pt; color:#017864; text-decoration:none;}
.prodThumb-content h2 a:hover {text-decoration:underline;}
.prodThumb-content img {width:60px;left:102px;top:0px;position:absolute;z-index:2;}
/* quick look */
.quicklook {display:none;width:160px;text-align:center;position:relative;margin-top:-30px;z-index:10;height:24px;}

/* quick look tabs */
ul.tabs {
		margin: 0 !important;
		padding: 0 !important;
		float: left;
		list-style: none;
		height: 15px;
		border-bottom: 1px solid #dbdbdd;
		border-left: 1px solid #dbdbdd;
		width: 100%;
		z-index:10;
		background:#fff;
	}
ul.tabs li {
		float: left;
		margin: 0;
		cursor: pointer;
		padding: 0px 7px !important;
		height: 15px;
		line-height: 15px;
		border: 1px solid #dbdbdd;
		border-left: none;
		font-weight: bold;
		background: #dbdbdd;
		overflow: hidden;
		position: relative;
		color:#78787A;
		font-style:normal
	}
ul.tabs li:hover {
		background: #FFFFFF;
		
	}	
ul.tabs li.active{
		background: #FFFFFF;
		border-bottom: 1px solid #FFFFFF;
		color:#78787A;
	}
.tab_container {
		clear: both;
		float: left; 
		width: 100%;
		background: #FFFFFF;
		margin-top:0 !important;
		margin-bottom:10px;
	}
.tab_content {
		padding: 0;
display:none;
}

.tab_content li {

}

option[value=""][disabled] {
      display: none;
}


/* lightbox */
/* Z-index of #mask must lower than #boxes .window */
#mask, #maskShippingAddress, #maskBillingAddress, #loadMask {position:absolute;z-index:9000;display:none;background:url(../images/cart/bg-mask.png);}

#boxes .window {position:absolute;top:200px;left:300px;display:none;z-index:9999;padding:20px;}
#boxes #prodDetailSmall {width:575px;min-height:360px;border:#dbdbdd 1px solid;background:#fff;padding:10px;}
#boxes #prodDetailSmall #prodDetails-container {width:470px;}

#prodDetailsQL-container {width:400px;float:left;}
#prodDetailsQL {width:160px;padding:0;margin:0 10px 0 0;float:left;text-align:center;}
#prodDetailsQL img {border:#dbdbdd 1px solid;}

/* modal for confirmation pages */
#boxes2 .window2 {position:absolute;width:375px;display:none;z-index:9999;padding:5px 40px 0 40px !important;top:10px;}
#boxes2 #orderConfirm {width:340px;border:#dbdbdd 1px solid;background:#fff;padding:20px;}
#boxes2 #commentsArea {width:340px;border:#dbdbdd 1px solid;background:#fff;padding:20px;}
#boxes2 #commentsAreaPA {width:422px;border:#dbdbdd 1px solid;background:#fff;padding:20px;}
#boxes2 #orderCancel {width:340px;border:#dbdbdd 1px solid;background:#fff;padding:20px;}
#boxes2 .emailConfirmBtn {text-align:right;background:#ddd;width:445px;margin:20px 0 -10px -41px;height:40px;padding:10px 10px 0 0;border:#dbdbdd 1px solid;}
#boxes2 #orderConfirmBtn,#boxes #orderConfirmBtn,#boxes3 #orderConfirmBtn {text-align:right;background:#ddd;width:410px;margin:20px 0 -10px -41px;height:40px;padding:10px 10px 0 0;border:#dbdbdd 1px solid;}
#boxes2 #orderConfirmBtn2  {text-align:right;background:#ddd;width:410px;margin:20px 0 -10px -41px;height:40px;padding:10px 10px 0 0;border:#dbdbdd 1px solid;}
#boxes2 #orderConfirmBtn3,#boxes #orderConfirmBtn3,#boxes3 #orderConfirmBtn3 {text-align:right;background:#ddd;margin:10px -40px 0 -40px;height:40px;padding:10px 10px 0 0;border:#dbdbdd 1px solid;}
#boxes2 #PAConfirmBtn  {text-align:right;background:#ddd;width:410px;margin:20px 0 -10px -41px;height:40px;padding:10px 10px 0 0;border:#dbdbdd 1px solid;}
#boxes2 #purchaseLimitExceedBtn  {text-align:right;background:#ddd;width:445px;margin:20px 0 -10px -41px;height:40px;padding:10px 10px 0 0;border:#dbdbdd 1px solid;}
#boxes2 #minOrderValBtn  {text-align:right;background:#ddd;width:445px;margin:20px 0 -10px -41px;height:40px;padding:10px 10px 0 0;border:#dbdbdd 1px solid;}
#checkoutBillingAddressDiv #boxes2 #orderConfirmBtn, #checkoutBillingAddressDiv #boxes #orderConfirmBtn, #checkoutBillingAddressDiv #boxes3 #orderConfirmBtn{margin:0px 0 0px -41px;height:42px;}
#boxes3 .window3 {position:fixed;width:400px;display:none;z-index:9999;padding:40px 40px 0 40px !important;}
#boxes_billingAddress .window {position:fixed;width:400px;display:none;z-index:11111;padding:40px 40px 0 40px !important;}
#boxes3 input {border:none !important; width:50px;}
#boxes3 #orderConfirm {width:400px;border:#dbdbdd 1px solid;background:#fff;padding:20px;}
#boxes3 #orderCancel {width:400px;border:#dbdbdd 1px solid;background:#fff;padding:20px;}
#boxes3 #orderConfirmBtn {text-align:right;background:#ddd;width:470px;margin:20px 0 -10px -41px;height:40px;padding:10px 10px 0 0;border:#dbdbdd 1px solid;}
#boxes3 table td{font-size:7.5pt;}
#boxes2 #spendLimitValBtn  {text-align:right;background:#ddd;width:445px;margin:20px 0 -10px -41px;height:40px;padding:10px 10px 0 0;border:#dbdbdd 1px solid;}

/* view cart */
#viewCart {width:460px;background:#ffffff;position:absolute;z-index:1000;top:38px;right:0;padding:0;margin:0; text-align: left;}
#viewCart .header {line-height:1em;font-size:9pt;color:#fff;background:#017865;padding:5px 12px;border:#dbdbdd 1px solid;margin:0;}
#viewCart .row2 {padding:5px 12px;background:#fff;border-left:#dbdbdd 1px solid;border-right:#dbdbdd 1px solid;margin:0; line-height:15pt;}
#viewCart .row2 img {border:#dbdbdd 1px solid;float:left;margin:0 10px 10px 0;padding:0;}
#viewCart .row2 h3{padding-bottom:0;}
#viewCart .viewCartItems{width:100%;padding-top:5px;overflow:hidden;color:#78787A;}
#viewCart .row3 {padding:5px 12px 0 12px;background:#fff;border:#dbdbdd 1px solid;border-right:#dbdbdd 1px solid;margin:0;text-align:right;}
#viewCart .cartClose {float:right; margin-top: -2px; margin-right: -9px;}
#cartDetails td {border-top:#dbdbdd 1px solid;border-bottom:#dbdbdd 1px solid;border-left:#dbdbdd 1px solid;padding:4px 12px;}
#cartDetails td.last {border-right:#dbdbdd 1px solid;}
#cartDetails td.nobord {border:none;padding:8px 0;}
#cartDetails img {border:#dbdbdd 1px solid;margin:0;padding:0;}
#cartDetails h3 {font-size:9pt;font-weight:bold;color:#78787a;text-align:center;margin:0;padding:0;}
#cartDetails h4 {font-size:8pt;font-weight:bold;}
#cartDetails h5 {font-size:9pt;font-weight:bold;color:#78787a;text-align:right;margin:0;padding:0;}
#cartDetails a {text-decoration:underline;font-size:7.5pt;color:#78787a;}
#cartDetails h2 a {font-size:9pt; color:#017864; text-decoration:none;}
#cartDetails h2 a:hover {text-decoration:underline;}
#cartDetails a:hover {text-decoration:none;}
#cartDetails input {color:#78787b;border:#dbdbdd 1px solid;font-size:9pt;font-weight:bold;height:20px;width:50px;padding:0 0 0 2px;margin:0 0 10px 0;box-shadow:0 0 2px #ccc;-moz-box-shadow:0 0 2px #ccc;-webkit-box-shadow:0 0 2px #ccc;text-align:center;}
#cartDetails select {border:#dbdbdd 1px solid;font-size:7pt;color:#78787a;height:14px;width:100px;padding:0 2px;box-shadow:0 0 2px #ccc;-moz-box-shadow:0 0 2px #ccc;-webkit-box-shadow:0 0 2px #ccc;}
#cartDetails .sublinks {width:116px;margin:12px 0 24px 0;}
#cartDetails .sublinks ul {margin-left:20px;}
#cartDetails .sublinks li {background:url(../images/arrow.png) right no-repeat;list-style:none;height:16px;line-height:1em;}
#cartDetails .sublinks li a {color:#017864;font-size:7.5pt;text-decoration:underline;}
#cartDetails .sublinks li a:hover {text-decoration:none;}


#cartDetails .cart-voucher .cart-voucher__label {
  font-size: 13px;
  font-weight: bold;
  color: #19212b;
  display: block;
  width: 100%;
  text-align: center;
  margin: 0 0 10px 0;
}

#cartDetails .cart-voucher .cart-voucher__input {
  width: 100%;
  float: left;
  margin-right: 10px;
  text-align: center;
}

#cartDetails .cart-voucher .cart-voucher__btn {
  text-transform: uppercase;
  text-align: center;
}

#cartDetails .cart-voucher .cart-voucher__help-block {
  display: none;
  font-weight: bold;
}
#cartDetails .cart-voucher .has-error .cart-voucher__help-block,
#cartDetails .cart-voucher .has-success .cart-voucher__help-block {
  display: block;
}

#cartDetails .cart-voucher .voucher-list {
  padding-left: 0;
  list-style: none;
  margin-top: -5px;
}
#cartDetails .cart-voucher .voucher-list__item-box {
  display: inline-block;
  border: 1px solid #cccccc;
  background-color: #f2f2f2;
  font-size: 13px;
  font-weight: 600;
  text-transform: uppercase;
  padding: 10px 15px;
  margin-top: 10px;
}

 #cartDetails .cart-voucher .voucher-list__item {
    display: inline-block;
    padding-right: 1px;
    font-size: 10px;
  }
  
#cartDetails .cart-voucher .voucher-list__item-remove {
    display: inline-block;
    color: #cdcdcd;
    padding: 10px;
    cursor: pointer;
    margin: -10px -10px -5px 0;
    position: relative;
    top: 1px;
}


/* checkout */
#wrapper {
	width: 844px;
	margin-left: 0;
	margin-right: 0;
	border:#dbdbdd 1px solid;
	}
 
.accordionButton {	
	width: 832px;
	float: left;
	cursor: pointer;
	border-left:none;
	border-right:none;
	border-top:#dbdbdd 1px solid;
	border-bottom:#fff 1px solid;
	padding:6px;
	font-size:9pt;
	font-weight:bold;
	}
	
.dead {	
	color:#bababa;
	}
.accordionButton2 {	
	color:#bababa;
	width: 832px;
	float: left;
	cursor: pointer;
	border-left:none;
	border-right:none;
	border-top:#dbdbdd 1px solid;
	border-bottom:#fff 1px solid;
	padding:6px;
	font-size:9pt;
	font-weight:bold;
	}
 
.accordionContent {	
	width: 816px;
	float: left;
	display: none;
	border:none;
	padding:8px 8px 20px 20px;
	font-size:9pt;
	}
	
.accordionContent2 {	
	width: 816px;
	float: left;
	border:none;
	padding:8px 8px 20px 20px;
	font-size:9pt;
	}
	
.accordionContent .sublinks {width:110px;margin:20px 0 12px 0;}
.accordionContent .sublinks ul {margin-left:30px;}
.accordionContent .sublinks li {background:url(../images/arrow.png) right no-repeat;list-style:none;height:16px;line-height:1em;}
.accordionContent .sublinks li a {color:#017864;font-size:7.5pt;text-decoration:underline;}
.accordionContent .sublinks li a:hover {text-decoration:none;}
.accordionContent input.address {color:#78787b;border:#dbdbdd 1px solid;font-size:7.5pt;height:16px;width:110px;padding:0 0 0 2px;margin:3px 0;box-shadow:0 0 2px #ccc;-moz-box-shadow:0 0 2px #ccc;-webkit-box-shadow:0 0 2px #ccc;}
	
a.small {font-size:7.5pt;text-decoration:underline;}
a:hover.small {text-decoration:none;}
	
.ccTable table {margin:0;padding:0;}
.ccTable td {font-size:8pt;line-height:14px;color:#78787a;font-weight:bold;padding:5px;}
.ccTable td input {border:#dbdbdd 1px solid;font-size:7.5pt;height:20px;width:190px;padding:0 2px;box-shadow:0 0 2px #ccc;-moz-box-shadow:0 0 2px #ccc;-webkit-box-shadow:0 0 2px #ccc;}
.ccTable td select {border:#dbdbdd 1px solid;font-size:7.5pt;height:20px;width:190px;padding:0 2px;box-shadow:0 0 2px #ccc;-moz-box-shadow:0 0 2px #ccc;-webkit-box-shadow:0 0 2px #ccc;}
.ccTable td select.error{border:1px solid #CC0000;}
.ccTable td input.inputExt {width:40px;}

.newAddressTable table {margin:0;padding:0;}
.newAddressTable td {font-size:8pt;line-height:14px;color:#78787a;font-weight:bold;padding:5px;}
.newAddressTable td input {border:#dbdbdd 1px solid;font-size:7.5pt;height:20px;width:190px;padding:0 2px;box-shadow:0 0 2px #ccc;-moz-box-shadow:0 0 2px #ccc;-webkit-box-shadow:0 0 2px #ccc;}
.newAddressTable td select {border:#dbdbdd 1px solid;font-size:7.5pt;height:20px;width:190px;padding:0 2px;box-shadow:0 0 2px #ccc;-moz-box-shadow:0 0 2px #ccc;-webkit-box-shadow:0 0 2px #ccc;}
.newAddressTable td select.error{border:1px solid #CC0000;}
.newAddressTable td input.inputExt {width:40px;}

zoomIcon {
	width: 33px;
	height: 33px;
	position: absolute;
	top: 0;
	right: 0;
	background: url(../images/icon.png);
}
/* these styles are for the demo, and are not required for the plugin */
.zoom {
	display: inline-block;
	position: relative;
}
.zoom img {
	display: block;
}
 .zoom img::selection {
 background-color: transparent;
}
/* footer */
#footer-container {min-height:45px;width:100%;background:url(../images/bg-footer.png) center repeat;padding:10px 0;}
#footer-content {width:1000px;margin:0 auto;font-size:7.5pt;color:var(--UNIFIRST_COOL_GRAY_10);}
.footer-box {width:115px;border-right:var(--UNIFIRST_COOL_GRAY_10) 1px solid !important;float:left;margin-right:10px;}
.footer-box a {text-decoration:none;color:var(--UNIFIRST_COOL_GRAY_10);}
.footer-box a:hover {text-decoration:underline;}
.footer-disclaimer {float:left;width:490px;}
.footer-disclaimer-sm {font-size:7pt;color:var(--UNIFIRST_COOL_GRAY_10); line-height:9pt;}


button.addToCart{width:86px;height:33px;cursor:pointer;background:url(../images/cart/btn-addtocart.png) top left repeat;display:block;}
button.addToCartDisabled{width:86px;height:33px;cursor:default;background:url(../images/cart/btn-addtocart-disable.png) top left repeat;display:block;}
button.btnUpadtePersonalization{width:184px;height:33px;cursor:pointer;background:url(../images/cart/btn-updatepersonalization.png) top left repeat;display:block;}

.personalization .row{width:100%;overflow:hidden;}
.personalization .row li{float:left;padding:5px 8px 5px 0;}

.prodDetails-content .dotted-box{overflow:hidden; margin:0 -15px; padding-left:15px;border:2px solid #FFF;}
/* The .noSlide td padding above applies to logo grids while .slide leaves them bare,
   so forced/required groups rendered wider than optional ones. Hold every logo grid
   at the optional spacing; the inline paddings in the markup still apply. */
.prodDetails-content table.cd-emblem-table td {padding:0;}
.prodDetails-content .dotted-errorbox{border:2px dotted #CC0000; overflow:hidden; margin:0 -15px; padding-left:15px; margin-bottom: 5px}
.prodDetails-content .dotted-errorbox-shopU{border:2px dotted #CC0000; overflow:hidden; padding-left:15px; margin-bottom: 5px}
.prodDetails-content select{border:1px solid #DBDBDD;box-shadow:0 0 2px #CCCCCC;color:#78787A;font-size:7pt;font-family:Verdana;padding:2px;width:100px;}
.prodDetails-content input.error{color:#CC0000;border:#CC0000 1px solid;}
.prodDetails-content .error{color:#CC0000;}
.prodDetails .errors{padding:15px 15px 0 15px;font-weight:bold}
.prodDetails .errors p,#prodDetailsQL-container .errors p{color:#CC0000;font-weight:bold;margin:5px 0;}
#cartDetails .errors{padding:15px 15px 0 15px;font-weight:bold}
#cartDetails .errors p{color:#CC0000;font-weight:bold;margin:5px 0;}
#cartDetails input.error{color:#CC0000;border:#CC0000 1px solid;}
.ccTable td input.error{color:#CC0000;border:#CC0000 1px solid;}

.sizeChartDisplay h3{color: var(--UNIFIRST_DEEP_GREEN);}
.sizeChartDisplay h4{color: var(--UNIFIRST_DEEP_GREEN);}
.sizeChartDisplay table{width: 500px; border-color:white; border-collapse: collapse; text-align: center; border: 1px solid var(--UNIFIRST_DEEP_GREEN);}
.sizeChartDisplay th{text-align: center; border: 1px solid var(--UNIFIRST_DEEP_GREEN); color: var(--UNIFIRST_COOL_GRAY_10);}
.sizeChartDisplay .sizeHeader{text-align: center; border: 1px solid var(--UNIFIRST_DEEP_GREEN); background-color: var(--UNIFIRST_DEEP_GREEN); border-color:#01b295bd; color: #ffffff;}
.sizeChartDisplay td{text-align: center; border: 1px solid var(--UNIFIRST_DEEP_GREEN);}
.sizeChartDisplay .scfullwidth{width: 500px;}

.quicklookSizeChartDisplay h3{color: var(--UNIFIRST_DEEP_GREEN);}
.quicklookSizeChartDisplay h4{color: var(--UNIFIRST_DEEP_GREEN);}
.quicklookSizeChartDisplay table{width: 350px; border-color:white; border-collapse: collapse; text-align: center; border: 1px solid var(--UNIFIRST_DEEP_GREEN);}
.quicklookSizeChartDisplay th{text-align: center; border: 1px solid var(--UNIFIRST_DEEP_GREEN); color: var(--UNIFIRST_COOL_GRAY_10);}
.quicklookSizeChartDisplay .sizeHeader{text-align: center; border: 1px solid var(--UNIFIRST_DEEP_GREEN); background-color: var(--UNIFIRST_DEEP_GREEN); border-color:#01b295bd; color: #ffffff;}
.quicklookSizeChartDisplay td{text-align: center; border: 1px solid var(--UNIFIRST_DEEP_GREEN);}
.quicklookSizeChartDisplay .scfullwidth{width: 350px;}
/* ADD Allotment */

.regBox830 .product_allotment_table td input{ width:50px}
.regBox830 td input.input_viewmode{ border:0 none; background:none; box-shadow:none;}

/* checkout */ 
#leftCol input.error{color:#CC0000;border:#CC0000 1px solid;}
#leftCol .errors{padding:15px 15px 0 15px;font-weight:bold}
#leftCol .errors{padding:15px 15px 0 15px;font-weight:bold}
#leftCol .errors p{color:#CC0000;font-weight:bold;margin:5px 0;}

#payment_error .errors{padding:15px 15px 0 15px;font-weight:bold}
#payment_error .errors p{color:#CC0000;font-weight:bold;margin:5px 0;}

#cartDetails #erros_section{color:#CC0000;font-weight:bold;margin:5px 0;}
.icn_print a{background:url(../images/cart/icon_printer.png) left center no-repeat;padding:0 0 0 20px;margin-right:20px;float:right;line-height:16px;}
#shippingAddress, #shippingAddress12{
	  _height:expression(this.scrollHeight>367?"368px":"auto");
	  max-height:1000px;
  		width:415px!important;}
#shippingAddress #orderConfirmBtn, 
#shippingAddress12 #orderConfirmBtn{padding: 10px 24px 0 0;}

.tblCntPage{border-color:#ddd;border-style:solid;border-width:1px 0px 0px 1px;margin-bottom:10px;}
.tblCntPage td{ padding:5px; border-color:#ddd; border-style:solid; border-width:0px 1px 1px 0px; vertical-align:middle;font-size:110%;}
address{font-style:normal; margin:-10px 0 15px 0; font-size:110%;}
input#browse{width:auto!important;}
p.actionBtns a, div.btnsWidoutUndline a{text-decoration:none;outline:none;}
.noscriptdiv{font-style:normal; margin:-10px 0 15px 0;color:red;font-size: 10pt;width:600px;float:right}
.noscriptdiv1{padding-top: 29px; font-size: 10pt; width: 805px; padding-left: 38px;}
.persImageWrap{float:left}
.persRadioWrap{float:left;padding-top:16px;padding-right:12px}
.persWrap{float:left;padding-top:12px}
#main-container.loginpage-bg{background:url(../images/bg-login.jpg) bottom no-repeat;min-height:650px;height:auto!important;height:650px;}

#boxes2 #ajaxLoadingTextDiv {position:fixed;width:340px;display:none;z-index:9999;padding:10px !important; text-align:center; background:#fff;color:#3E3E3E;border:1px solid #fff;border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-o-border-radius:5px;box-shadow:0 0px 4px rgba(0,0,0,0.6);-webkit-box-shadow:0px 0px 4px rgba(0,0,0,0.6);-moz-box-shadow:0 0px 4px rgba(0,0,0,0.6);}
#boxes2 #ajaxLoadingTextDiv .processing_msg{font-size:14px;font-weight:bold;color:#515151; display:inline-block; background:url(../images/ajax-loader.gif)  center left no-repeat;padding:16px 0 16px 40px;}

/* Added for user account details page */
.clearfix{*zoom:1;}
.clearfix:before,.clearfix:after{display:table;line-height:0;content:"";}
.clearfix:after{clear:both;}
.dvformwrapper{margin:20px auto 0 auto;width:778px}
.dvformwrapper .col1,.dvformwrapper .col2{font-size:7.5pt;line-height:14px;color:#78787a;font-weight:bold;margin-right:109px;float:left;}
.dvformwrapper .col2{margin-right:0px;}
.dvformwrapper .dvinputlabel{width:137px;float:left;height:28px;line-height:28px;background:url(../images/dots.png) bottom repeat-x;}
.dvformwrapper .dvinputlabel span{background:#D9D9D6;}
.dvformwrapper .dvinputfield{width:196px;float:left;}
.dvformwrapper .col2 .dvinputlabel{width:140px;}
.dvformwrapper input, .dvformwrapper select {border:#dbdbdd 1px solid;font-size:7.5pt;height:20px;width:190px;padding:0px;box-shadow:0 0 2px #ccc;-moz-box-shadow:0 0 2px #ccc;-webkit-box-shadow:0 0 2px #ccc;}
.dvformwrapper input.inputExt{width:40px;}
.dvformwrapper .uad-actrow{padding-top:20px;font-weight:bold;}

.colorVariant img {height:30px; width:60px;}
/* tooltip */
.help-box {
	float:left;
	width:30px;
	margin:0px;
}
.help-link {
	display:block;
	width:30px;
	height:30px;
	overflow:hidden;
	background: url(../images/cart/icon-help.gif) no-repeat;
	text-indent:-9999px;
}
.tooltip {
	display:none;
	color:#666;
	position:absolute;
	left:-18px;
	bottom:11px;
	padding:0 0 18px;
	font:11px/15px Arial, Helvetica, sans-serif;
	
}
.tooltip-in {
	padding:8px 12px;
	background:#fff799;
	white-space:nowrap;
	text-align:left;
	font-weight:normal;
	border:1px solid #c9c9c9;
}
* +html .tooltip-in {border:1px solid #c9c9c9;}
.ie8 .tooltip-in {border:1px solid #c9c9c9;}
.help-box:hover {position:relative;}
.help-box:hover .tooltip {display:block;}
.tooltip-b {
	position:absolute;
	left:17px;
	bottom:0;
	width:17px;
	height:21px;
	overflow:hidden;
	background: url(../images/bg-tooltip-b.png) no-repeat -22px -2px;
	font-size:0;
	line-height:0;
	z-index:9999;
}
* +html .tooltip-b {background-position:-22px -2px;}
.ie8 .tooltip-b {background-position:-22px -2px;}



#menu {
    width: 100%;
    height: 42px;
    border-top: 1px solid #e0e0e0;
    margin-top: 30px;
    padding: 0;
    background-color: #fafafa;
}
#menu ul {
    width: 960px;
    padding:0;
    margin:0 auto;
    line-height:42px;
    overflow:visible;
}
#menu ul li {
    margin:0;
    text-align:center;
    position:relative;
    display:block;
    float:left;
    border-right: 1px solid #e2e2e2;
    border-left: 1px solid #fff;
    list-style: none;
}
#menu ul li a {
    color:#444;
    padding:0 20px;
    text-transform: uppercase;
    font-size:13px;
    display:block;
    color: #666;
    text-decoration: none;
    
}
#menu ul li a:hover {
    color: #000;
}
#menu ul li ul {
    position:absolute;
    background-color: #fafafa;
    z-index:105;
    left:0;
    display:none;
    border-right: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    border-left: 1px solid #ddd;
    margin:0;
    padding:0;
    max-width: 180px;
    border-radius:0 0 4px 4px;
}

#menu ul li ul li {
    text-align:left;
    height:30px;
    line-height:30px;
    margin:0;
    border-bottom: 1px solid #e9e9e9;
    border-left:none;
    background: url(img/bullet.png) no-repeat 5px 50%;
    padding-left:16px;
    display: list-item;
    float: none;
    border-top:1px solid #fff;
}
#menu ul li ul li a {
    padding: 0 5px;
    font-size:11px;
}


.wordwrap {
word-wrap: break-word;
width:225px;
color: #78787A;
font-size: 8.5pt;
line-height: 14px;
margin-bottom: 10px;
padding: 0;

}

.wordwrap_manageAddress{
	word-wrap: break-word;
width:200px;
color: #78787A;
font-size: 8.5pt;
line-height: 14px;
margin-bottom: 10px;
padding: 0;
	
}


.tbl-reviewconfirm td{width:197px; }
.tbl-reviewconfirm td.td395{width:395px;}
.tbl-reviewconfirm td .textwrapingdiv{word-wrap: break-word;width:180px;}
.tbl-reviewconfirm td.td395 .textwrapingdiv{word-wrap: break-word;width:360px;}
.residentialShippingWarning {color:#ff0000;padding: 10px 10px 10px 10px}
.tbl-paymentinfo td{font-weight:bold;word-wrap:break-word;}
.checkboxTable div.clear {width:auto;}

.errorRestrictHtml {
    background: none repeat scroll 0 0 #EEEEEE;
    color: #FF0000;
    display: block;
    float: left;
    margin-top: -43px;
    padding: 2px 4px;
    position: absolute;
    width: auto;
}

.dvformwrapper .accessheader {
	float:left;
	width:140px;
}
.dvformwrapper .checkboxTableheader {
	float:left;
	padding-top: 5px;
}
input[readOnly="readOnly"]
{
    background-color:#e7e7e8;
} 

.returnFormPartAHeader
{
    border: 1px black;
    border-radius: 0.6em 0 0 0;
    text-align: center;
    padding: 16px;
    background-color:var(--UNIFIRST_DEEP_GREEN);
    color:white;
    font-size:16px
}

.returnFormPartBHeader
{
    border: 1px black;
    border-radius: 0 0.6em 0 0;
    text-align: center;
    padding: 16px;
    background-color:var(--UNIFIRST_GREEN_339);
    color:white;
    font-size:16px
}
.returnFormContactInformation
{
    padding-top:30px;
    margin-top:20px;
    font-size:10px;
    background-color:var(--UNIFIRST_LIGHT_GRAY);
    color:var(--UNIFIRST_DEEP_GREEN);
    width:798px;
    height:144px;
    border-radius: 25px;
}
.returnFormInstructions
{
    margin-left:20px;
    font-size:13px;
    color:var(--UNIFIRST_COOL_GRAY_10);
}
.returnFormTitle
{
    font-size:medium;
    padding-top:20px;
    padding-left:292px;
    font-weight:bold;
    color:var(--UNIFIRST_DEEP_GREEN);
}
.surveyFormTitle
{
    font-size:24px;
    padding-top:28px;
    padding-left:292px;
    padding-bottom:10px;
    font-weight:bold;
    color:var(--UNIFIRST_DEEP_GREEN);
}
.surveyContactArea
{
	background-color: #00b19421;
	padding: 14px;
	width: 350px;
	border-radius: 15px;
}
.surveyTextarea
{
	border: 1px solid black;
	width: 400px;
	height: 100px;
}
.surveyFormLegend
{
	font-size:14px;
	font-weight:bold;
}
#progcontainer {
  margin: 20px;
  width: 200px;
  height: 200px;
  position: relative;
  margin-left: 300px;
  margin-top: 100px;
}
.maincontainer {
  position: relative;
}

#expressItem{background-color: #8FBC8F; color: white; padding-left: 2px; padding-right: 2px; padding-top: 2px; padding-bottom: 2px; font-size: 9px;}

/* ========================================
   FORCE DESKTOP VIEW ON ALL PAGES EXCEPT LOGIN
   ======================================== */
/* Force minimum width on the body/container for all pages */
/* This prevents responsive behavior on non-login pages */
/* Login pages with #regContainer will override this in media queries below */
html, body {
  min-width: 1000px;
}

#container,
#main-container {
  min-width: 1000px;
}

/* ========================================
   RESPONSIVE STYLES FOR LOGIN PAGE ONLY
   ======================================== */
/* These styles only apply when #regContainer (login form) is present */
/* The :has() selector scopes responsive behavior to login pages only */

/* Tablet and below (max-width: 1024px) */
@media screen and (max-width: 1024px) {
  /* Reset min-width ONLY for pages with login form (#regContainer) */
  body:has(#regContainer),
  body:has(#regContainer) #container,
  body:has(#regContainer) #main-container {
    min-width: 0 !important;
  }
  
  /* Prevent horizontal scrolling - login pages only */
  body:has(#regContainer),
  body:has(#regContainer) html {
    overflow-x: hidden;
    max-width: 100vw;
  }
  
  /* Box-sizing for login pages only */
  body:has(#regContainer) * {
    box-sizing: border-box;
  }
  
  /* Scope container responsive styles to login pages only */
  body:has(#regContainer) #container {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 15px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  
  /* Scope header/main-container responsive styles to login pages only */
  body:has(#regContainer) #header {
    width: 100% !important;
    text-align: center;
  }
  
  body:has(#regContainer) #main-container {
    width: 100% !important;
    max-width: 100% !important;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  
  #regContainer {
    width: 100% !important;
    max-width: 500px !important;
    margin: 0 auto !important;
    padding: 0 15px !important;
    box-sizing: border-box;
  }
  
  .regBox224 {
    width: 100%;
    max-width: 224px;
    box-sizing: border-box;
    margin-left: auto;
    margin-right: auto;
  }
  
  .regBox483, .regBox482 {
    width: 100%;
    max-width: 482px;
    box-sizing: border-box;
    margin-left: auto;
    margin-right: auto;
  }
  
  /* Keep "Need Help?" and "Visit UniFirst.com" boxes horizontal on tablet - LOGIN PAGES ONLY */
  body:has(#regContainer) #rightCol {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    justify-content: center !important;
    align-items: flex-start !important;
    gap: 15px !important;
    width: 100% !important;
    float: none !important;
    padding: 15px 10px !important;
  }
  
  body:has(#regContainer) .sideBox,
  body:has(#regContainer) .sideBox2,
  body:has(#regContainer) .sideBox3 {
    display: inline-block !important;
    float: none !important;
    width: auto !important;
    max-width: 180px !important;
    margin: 0 !important;
    min-height: auto !important;
  }
  
  body:has(#regContainer) .sideBox img,
  body:has(#regContainer) .sideBox2 img,
  body:has(#regContainer) .sideBox3 img {
    width: 100% !important;
    max-width: 180px !important;
    height: auto !important;
  }
}

/* Mobile devices (max-width: 768px) */
@media screen and (max-width: 768px) {
  /* Reset min-width ONLY for pages with login form (#regContainer) */
  body:has(#regContainer),
  body:has(#regContainer) #container,
  body:has(#regContainer) #main-container {
    min-width: 0 !important;
  }
  
  /* Prevent horizontal scrolling - login pages only */
  body:has(#regContainer),
  body:has(#regContainer) html {
    overflow-x: hidden !important;
    max-width: 100vw !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  
  /* Box-sizing for login pages only */
  body:has(#regContainer) * {
    box-sizing: border-box;
  }
  
  /* Scope container responsive styles to login pages only */
  body:has(#regContainer) #container {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
  }
  
  body:has(#regContainer) #containerBG,
  body:has(#regContainer) #containerShopBG {
    width: 100% !important;
    overflow-x: hidden;
    padding: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
  }
  
  body:has(#regContainer) #header {
    width: 100% !important;
    padding: 5px !important;
    text-align: center !important;
  }
  
  body:has(#regContainer) #logo,
  body:has(#regContainer) #logoReg {
    width: 120px !important;
    min-height: 40px;
    float: none !important;
    margin: 0 auto 5px !important;
    display: block;
    text-align: center;
  }
  
  body:has(#regContainer) #logo img,
  body:has(#regContainer) #logoReg img {
    max-width: 100%;
    height: auto;
  }
  
  body:has(#regContainer) #topCenterReg {
    width: 100% !important;
    float: none !important;
    text-align: center !important;
    font-size: 14px !important;
    margin: 5px auto !important;
    padding: 0 5px !important;
    box-sizing: border-box;
  }
  
  body:has(#regContainer) #topRightReg {
    width: 100% !important;
    float: none !important;
    text-align: center !important;
    margin-bottom: 10px !important;
  }
  
  body:has(#regContainer) #topRight {
    width: 100% !important;
    float: none !important;
    margin: 0 auto !important;
    text-align: center !important;
  }
  
  #regContainer,
  #regContainer600 {
    width: 90% !important;
    max-width: 350px !important;
    margin: 0 auto !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0 !important;
    box-sizing: border-box;
    position: static !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
  }
  
  /* Stack the login and register boxes vertically */
  .regBox224,
  .regBox600 {
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    margin: 0 auto 8px auto !important;
    box-sizing: border-box;
  }
  
  .regBox224.fLeft,
  .regBox224.fRight {
    float: none !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  
  /* Shop button box at bottom */
  .regBox482,
  .regBox483 {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
    margin: 0 auto 8px auto !important;
  }
  
  /* COMPACT FORM STYLES - Reduce vertical height on mobile */
  .regBoxContent {
    padding: 8px 10px !important;
    box-sizing: border-box;
    text-align: center !important;
  }
  
  .regBoxContent h2 {
    font-size: 11pt !important;
    margin-bottom: 4px !important;
    line-height: 1.2 !important;
  }
  
  .regBoxContent p {
    font-size: 8px !important;
    line-height: 1.2 !important;
    margin-bottom: 4px !important;
  }
  
  .regBoxContent input,
  .regBoxContent select {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
    height: 26px !important;
    font-size: 11px !important;
    padding: 3px 6px !important;
    margin: 2px 0 !important;
  }
  
  .regBoxContent input::placeholder {
    font-size: 10px !important;
  }
  
  /* Make buttons uniform and touch-friendly */
  .regBoxContent .fRight {
    float: none !important;
    text-align: center;
    margin: 6px 0 !important;
    display: block;
    width: 100%;
  }
  
  /* Uniform button styling for LOGIN, REGISTER buttons - balanced size */
  .regBoxContent .fRight a img,
  .regBoxContent a[href*="login"] img,
  .regBoxContent a[href*="register"] img,
  .regBoxContent input[type="image"],
  .regBoxContent img[src*="btn-"] {
    width: 85px !important;
    min-width: 85px !important;
    max-width: 85px !important;
    height: auto !important;
    display: inline-block !important;
    vertical-align: middle;
  }
  
  /* SHOP button - slightly smaller */
  .regBox482 .regBoxContent .fRight a img,
  .regBox483 .regBoxContent .fRight a img,
  .regBoxContent a[href*="shop"] img,
  .regBoxContent img[src*="btn-shop"] {
    width: 70px !important;
    min-width: 70px !important;
    max-width: 70px !important;
  }
  
  /* Alternative: If buttons are actual <button> or <input type="submit"> elements */
  .regBoxContent button,
  .regBoxContent input[type="submit"],
  .regBoxContent .btn {
    width: 85px !important;
    min-width: 85px !important;
    height: 28px !important;
    font-size: 10px !important;
    font-weight: bold !important;
    text-transform: uppercase;
    border-radius: 4px;
    cursor: pointer;
    display: inline-block;
  }
  
  .regBoxContent .sublinks,
  .regBoxContent .sublinks2 {
    width: 100% !important;
    float: none !important;
    margin: 6px 0 3px 0 !important;
    text-align: center;
  }
  
  .regBoxContent .sublinks ul {
    width: 100% !important;
    float: none !important;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 0 !important;
    margin: 0 !important;
  }
  
  .regBoxContent .sublinks li,
  .regBoxContent .sublinks2 li {
    width: auto;
    float: none !important;
    background-position: right center;
    padding-right: 10px;
    margin: 2px 0 !important;
    text-align: center;
    height: auto !important;
    line-height: 1.2 !important;
  }
  
  .regBoxContent .sublinks li a,
  .regBoxContent .sublinks2 li a {
    font-size: 9px !important;
    height: auto;
    line-height: 1.3;
  }
  
  /* Override inline float styles - LOGIN PAGES ONLY */
  body:has(#regContainer) .fLeft,
  body:has(#regContainer) .fRight {
    float: none !important;
  }
  
  /* Footer adjustments - login pages only */
  body:has(#regContainer) #footer-container {
    padding: 10px 5px !important;
    width: 100% !important;
  }
  
  body:has(#regContainer) #footer-content {
    width: 100% !important;
    padding: 0 5px !important;
    box-sizing: border-box;
    font-size: 8px !important;
  }
  
  body:has(#regContainer) .footer-box {
    width: 100% !important;
    float: none !important;
    border-right: none !important;
    border-bottom: 1px solid var(--UNIFIRST_COOL_GRAY_10);
    margin: 0 0 5px 0 !important;
    padding-bottom: 5px;
    text-align: center;
  }
  
  body:has(#regContainer) .footer-disclaimer {
    width: 100% !important;
    float: none !important;
    text-align: center;
    margin-top: 5px;
  }
  
  body:has(#regContainer) .footer-disclaimer-sm {
    font-size: 6px !important;
    line-height: 1.2 !important;
  }
  
  /* Background image adjustments - login pages only */
  #containerBG,
  #containerShopBG,
  body.regBG,
  #main-container.loginpage-bg {
    background-size: cover;
    background-position: center bottom;
    min-height: auto !important;
    height: auto !important;
  }
  
  /* Show sidebar boxes on mobile - display in a row - login pages only */
  body:has(#regContainer) #rightCol {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: flex-start !important;
    gap: 10px !important;
    width: 100% !important;
    float: none !important;
    padding: 10px 5px !important;
  }
  
  body:has(#regContainer) .sideBox,
  body:has(#regContainer) .sideBox2,
  body:has(#regContainer) .sideBox3 {
    display: block !important;
    float: none !important;
    width: auto !important;
    max-width: 45% !important;
    margin: 0 !important;
    min-height: auto !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
  }
  
  body:has(#regContainer) .sideBox img,
  body:has(#regContainer) .sideBox2 img,
  body:has(#regContainer) .sideBox3 img {
    width: 100% !important;
    max-width: 140px !important;
    height: auto !important;
    display: block !important;
  }
}

/* Small mobile devices (max-width: 480px) */
@media screen and (max-width: 480px) {
  /* Reset min-width ONLY for pages with login form (#regContainer) */
  body:has(#regContainer),
  body:has(#regContainer) #container,
  body:has(#regContainer) #main-container {
    min-width: 0 !important;
  }
  
  /* Prevent horizontal scrolling - login pages only */
  body:has(#regContainer),
  body:has(#regContainer) html {
    overflow-x: hidden !important;
    max-width: 100vw !important;
  }
  
  body:has(#regContainer) #container,
  body:has(#regContainer) #containerBG,
  body:has(#regContainer) #containerShopBG,
  body:has(#regContainer) #main-container {
    width: 100% !important;
    max-width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
  }
  
  #topCenterReg {
    font-size: 11px !important;
    padding: 0 5px !important;
    text-align: center !important;
  }
  
  /* Collapse "Need to Register?" form on small screens behind a toggle */
  .regBox224.fRight {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin-bottom: 6px !important;
    overflow: visible !important;
    height: auto !important;
    width: 100% !important;
  }
  .regBox224.fRight > .regBoxContent {
    display: none;
  }
  .regBox224.fRight > .regBox-toggle {
    display: block !important;
    width: 100%;
    padding: 12px 10px;
    background: #D9D9D6;
    color: #017864;
    border: #A8A9AD 2px solid;
    border-radius: 0;
    font-family: inherit;
    font-size: 12pt;
    font-weight: normal;
    cursor: pointer;
    text-align: center;
    letter-spacing: 0.3px;
    box-shadow: 0 0 3px #ccc;
    box-sizing: border-box;
  }
  .regBox-toggle::after {
    content: '';
    display: inline-block;
    width: 16px;
    height: 16px;
    margin-left: 6px;
    background: url(../images/arrow.png) center / contain no-repeat;
    vertical-align: middle;
  }
  .regBox224.fRight.regBox--expanded {
    background: #D9D9D6 !important;
    border: #A8A9AD 2px solid !important;
    box-shadow: 0 0 3px #ccc !important;
  }
  .regBox224.fRight.regBox--expanded > .regBoxContent {
    display: block;
    padding: 8px 10px;
  }
  .regBox224.fRight.regBox--expanded > .regBox-toggle {
    background: #A8A9AD;
    border-radius: 4px 4px 0 0;
    margin-bottom: 0;
  }
  
  /* Extra compact form boxes for small screens */
  .regBox224,
  .regBox482,
  .regBox483,
  .regBox600 {
    margin-bottom: 6px !important;
  }
  
  .regBoxContent {
    padding: 6px 8px !important;
  }
  
  .regBoxContent h2 {
    font-size: 12pt !important;
    margin-bottom: 4px !important;
  }
  
  .regBoxContent h4 {
    font-size: 9pt !important;
    margin-bottom: 4px !important;
  }
  
  .regBoxContent p {
    font-size: 9px !important;
    line-height: 1.3 !important;
    margin-bottom: 4px !important;
  }
  
  .regBoxContent input,
  .regBoxContent select {
    height: 24px !important;
    font-size: 11px !important;
    padding: 2px 5px !important;
    margin: 2px 0 !important;
  }
  
  .regBoxContent input::placeholder {
    font-size: 9px !important;
  }
  
  /* Compact links */
  .regBoxContent .sublinks,
  .regBoxContent .sublinks2 {
    margin: 4px 0 2px 0 !important;
  }
  
  .regBoxContent .sublinks li,
  .regBoxContent .sublinks2 li {
    margin: 1px 0 !important;
  }
  
  .regBoxContent .sublinks li a,
  .regBoxContent .sublinks2 li a {
    padding: 4px;
    display: inline-block;
    font-size: 10px !important;
  }
  
  #regContainer,
  #regContainer600 {
    width: 92% !important;
    max-width: 320px !important;
    margin: 0 auto !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  
  .regBoxContent .fRight {
    margin: 5px 0 !important;
  }
  
  /* Keep buttons uniform size on small mobile */
  .regBoxContent .fRight a img,
  .regBoxContent a[href*="login"] img,
  .regBoxContent a[href*="register"] img,
  .regBoxContent input[type="image"],
  .regBoxContent img[src*="btn-"] {
    width: 80px !important;
    min-width: 80px !important;
    max-width: 80px !important;
  }
  
  /* SHOP button - slightly smaller on small mobile */
  .regBox482 .regBoxContent .fRight a img,
  .regBox483 .regBoxContent .fRight a img,
  .regBoxContent a[href*="shop"] img,
  .regBoxContent img[src*="btn-shop"] {
    width: 65px !important;
    min-width: 65px !important;
    max-width: 65px !important;
  }
  
  .regBoxContent button,
  .regBoxContent input[type="submit"],
  .regBoxContent .btn {
    width: 80px !important;
    min-width: 80px !important;
    height: 26px !important;
  }
  
  /* Show sidebar boxes on small mobile - in a row - LOGIN PAGES ONLY */
  body:has(#regContainer) #rightCol {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 8px !important;
    width: 100% !important;
    padding: 8px 5px !important;
  }
  
  body:has(#regContainer) .sideBox,
  body:has(#regContainer) .sideBox2,
  body:has(#regContainer) .sideBox3 {
    display: block !important;
    float: none !important;
    width: auto !important;
    max-width: 45% !important;
    margin: 0 !important;
    min-height: auto !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
  }
  
  body:has(#regContainer) .sideBox img,
  body:has(#regContainer) .sideBox2 img,
  body:has(#regContainer) .sideBox3 img {
    width: 100% !important;
    max-width: 130px !important;
    height: auto !important;
    display: block !important;
  }
}

/* Landscape mobile orientation */
@media screen and (max-width: 900px) and (orientation: landscape) {
  /* Reset min-width ONLY for pages with login form (#regContainer) */
  body:has(#regContainer),
  body:has(#regContainer) #container,
  body:has(#regContainer) #main-container {
    min-width: 0 !important;
  }
  
  #regContainer {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 15px;
    width: calc(100% - 20px) !important;
    max-width: 100% !important;
    margin: 0 10px !important;
  }
  
  .regBox224 {
    width: 45% !important;
    max-width: 250px !important;
    float: none !important;
    margin: 0 !important;
  }
  
  .regBox482,
  .regBox483 {
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* ========================================
   CHECKOUT PAGE - ORDER TOTALS BOX STYLING
   ======================================== */
/* DISABLED: Checkout page should maintain desktop layout like other pages.
   The responsive styles below were causing the Order Totals box to move to the bottom.
   Keeping this section commented out to preserve desktop layout on checkout. */

/* 
@media screen and (max-width: 1024px) {
  body:has(#wrapper) .main-container {
    display: flex !important;
    flex-direction: column !important;
  }
  
  body:has(#wrapper) #leftCol {
    width: 100% !important;
    float: none !important;
    border-right: none !important;
  }
  
  body:has(#wrapper) #rightCol {
    width: 100% !important;
    float: none !important;
    margin-top: 20px !important;
    padding: 0 10px !important;
    box-sizing: border-box !important;
  }
  
  body:has(#wrapper) #rightCol .sideBox3 {
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    margin: 0 0 15px 0 !important;
    padding: 15px !important;
    box-sizing: border-box !important;
    font-size: 10pt !important;
  }
  
  body:has(#wrapper) #rightCol .sideBox3 h2 {
    font-size: 12pt !important;
    margin-bottom: 10px !important;
    padding: 0 !important;
  }
  
  body:has(#wrapper) #rightCol .sideBox3 .fLeft,
  body:has(#wrapper) #rightCol .sideBox3 .fRight {
    display: inline-block !important;
    margin-left: 10px !important;
    margin-right: 10px !important;
  }
  
  body:has(#wrapper) #rightCol .sideBox3 hr {
    margin: 8px 0 !important;
  }
  
  body:has(#wrapper) #wrapper {
    width: 100% !important;
    box-sizing: border-box !important;
  }
  
  body:has(#wrapper) .accordionButton,
  body:has(#wrapper) .accordionButton2 {
    width: 100% !important;
    box-sizing: border-box !important;
    padding: 10px !important;
  }
  
  body:has(#wrapper) .accordionContent,
  body:has(#wrapper) .accordionContent2 {
    width: 100% !important;
    box-sizing: border-box !important;
    padding: 10px !important;
  }
}

@media screen and (max-width: 768px) {
  body:has(#wrapper) #rightCol .sideBox3 {
    padding: 12px !important;
    border-radius: 6px !important;
  }
  
  body:has(#wrapper) #rightCol .sideBox3 .fLeft {
    font-size: 9pt !important;
  }
  
  body:has(#wrapper) #rightCol .sideBox3 .fRight {
    font-size: 9pt !important;
  }
}

@media screen and (max-width: 480px) {
  body:has(#wrapper) #rightCol .sideBox3 {
    padding: 10px !important;
    font-size: 9pt !important;
  }
  
  body:has(#wrapper) #rightCol .sideBox3 h2 {
    font-size: 11pt !important;
  }
}
*/

/* ========================================
   SIZE SELECTOR BUTTONS - FIX TEXT OVERFLOW
   ======================================== */
/* Ensure size button text is fully visible */
.prodDetails-content ul.sizeBlocks {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 5px !important;
}

.prodDetails-content ul.sizeBlocks li {
  float: none !important;
  min-width: 45px !important;
  height: auto !important;
  padding: 6px 10px !important;
  margin: 0 !important;
  white-space: nowrap !important;
  overflow: visible !important;
  text-overflow: clip !important;
  font-size: 7.5pt !important;
  line-height: normal !important;
  box-sizing: border-box !important;
}

.prodDetails-content ul.sizeBlocks li a {
  white-space: nowrap !important;
  overflow: visible !important;
  text-overflow: clip !important;
  display: block !important;
  width: auto !important;
  text-decoration: none !important;
}

.prodDetails-content ul.sizeBlocks > a {
  text-decoration: none !important;
}

/* ========================================
   MODAL/POPUP FIXES FOR MOBILE
   ======================================== */
/* Fix address verification and other popup modals on smaller screens */

/* Make address validation modal windows responsive - only for #boxes3 (address validation) */
#boxes3 .window3,
#boxes_billingAddress .window,
#shippingAddress,
#shippingAddress12 {
  max-width: 90vw !important;
  box-sizing: border-box !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-bottom: 0 !important;
  overflow: visible !important;
}

/* Fix button containers in address validation modals only - align grey area with popup edges */
#boxes3 #orderConfirmBtn,
#boxes3 #orderConfirmBtn3,
#shippingAddress #orderConfirmBtn,
#shippingAddress12 #orderConfirmBtn {
  width: calc(100% + 80px) !important;
  max-width: none !important;
  margin-left: -40px !important;
  margin-right: -40px !important;
  margin-top: 20px !important;
  margin-bottom: 0 !important;
  box-sizing: border-box !important;
  padding: 10px 20px !important;
  height: auto !important;
  min-height: 50px !important;
  display: flex !important;
  justify-content: flex-end !important;
  align-items: center !important;
  gap: 10px !important;
  background: #ddd !important;
  border: #dbdbdd 1px solid !important;
}

/* Ensure modal content areas don't overflow */
#boxes2 #orderConfirm,
#boxes3 #orderConfirm,
#boxes2 #commentsArea,
#boxes2 #commentsAreaPA,
#boxes2 #orderCancel,
#boxes3 #orderCancel {
  max-width: 100% !important;
  box-sizing: border-box !important;
}


/* Address verification popup specific fixes - only for window3 */
.regBoxContent.window3,
.window3.regBoxContent {
  max-width: 90vw !important;
  box-sizing: border-box !important;
}