:root{--red:#cf1735;--black:#111;--gray:#6e6e6e;--paper:#f8f7f3;--line:#d6d2ca;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--black);font-family:Arial,Helvetica,sans-serif;background:#eee}img{max-width:100%;display:block}button,a{font:inherit}.wrap{width:min(1280px,calc(100% - 36px));margin:auto}
.site-header{position:sticky;top:0;z-index:30;background:#0b0b0b;color:#fff;border-bottom:4px solid var(--red)}.nav{height:66px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{color:#fff;text-decoration:none;font-weight:900;letter-spacing:.04em;font-size:21px}.brand em{font-style:normal;font-weight:400;color:#cfcfcf}.mark{color:var(--red);font-size:14px}.nav nav{display:flex;gap:26px}.nav nav a{color:#fff;text-decoration:none;font-size:13px;font-weight:800;letter-spacing:.04em}
.catalog-page{background-color:#fbfaf7;background-image:repeating-linear-gradient(90deg,rgba(60,50,40,.028) 0,rgba(60,50,40,.028) 1px,transparent 1px,transparent 5px);border-bottom:1px solid #ddd}.catalog-wrap{padding:58px 0 50px}.build-title{font-size:clamp(54px,8vw,105px);line-height:.92;letter-spacing:-.055em;margin:0 0 50px;display:flex;align-items:center;gap:.18em;flex-wrap:wrap}.build-title span{font-weight:900}.build-title b{font-family:"Brush Script MT","Segoe Script",cursive;color:var(--red);font-size:1.38em;font-weight:700;line-height:.65;position:relative;text-shadow:4px 4px 0 rgba(0,0,0,.08)}.build-title b:after{content:"";position:absolute;height:7px;background:var(--red);left:9%;right:5%;bottom:-16px;border-radius:99px;transform:rotate(-1deg)}
.step-title{display:flex;align-items:center;gap:18px;margin:0 0 28px}.step-title strong{font-size:clamp(18px,2vw,27px);letter-spacing:.01em}.step-title small{display:block;margin-top:3px;font-size:13px}.step-badge{flex:0 0 auto;width:78px;height:78px;border-radius:46% 54% 51% 49%/50% 45% 55% 50%;display:inline-grid;place-items:center;background:var(--red);color:#fff;font-family:Georgia,serif;font-size:43px;font-weight:700;box-shadow:inset 0 0 0 3px rgba(255,255,255,.08);transform:rotate(-3deg)}
.garment-grid{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px dotted #aaa}.garment-card{position:relative;text-align:center;padding:26px 20px 0;min-width:0;border-right:1px dotted #aaa}.garment-card:last-child{border-right:0}.garment-card h3,.cap-panel h3{font-size:16px;margin:0 0 15px}.garment-card img{height:210px;width:100%;object-fit:contain;mix-blend-mode:multiply}.style-pill{position:absolute;right:13px;top:24px;background:#666;color:#fff;border-radius:50%;width:54px;height:54px;display:grid;place-items:center;align-content:center;font-size:8px;line-height:1}.style-pill b{font-size:20px}.starting{font-family:"Trebuchet MS",Arial,sans-serif;color:var(--red);font-style:italic;font-weight:800;margin:6px 0 0;font-size:16px}.price{font-size:26px;font-weight:900;margin:2px 0 16px}.price sup{font-size:.55em;vertical-align:super}.desc{font-family:Georgia,serif;font-size:14px;line-height:1.35;min-height:58px}.swatches{display:grid;grid-template-columns:repeat(4,31px);justify-content:center;gap:2px;margin:14px auto 0}.swatches i{height:26px;border:1px solid rgba(0,0,0,.15)}.swatches.mini{grid-template-columns:31px}.white{background:#fff}.charcoal{background:#747474}.black{background:#171717}.sand{background:#d8cfaa}.navy{background:#252a46}.cardinal{background:#9d1830}.blue{background:#78a9d2}.lime{background:#c4e500}.orange{background:#f36028}.sage{background:#93a879}.brown{background:#7b5d45}.royal{background:#4263aa}.berry{background:#aa5076}.cream{background:#ecdcc1}.gold{background:#dba51c}.purple{background:#46344f}.pink{background:#efa3be}.sapphire{background:#2e83bf}.dark{background:#323232}.silver{background:#d2d2d2}.steel{background:#758d95}.tan{background:#a38b68}.espresso{background:#795c50}
.easy-title{font-size:clamp(58px,8vw,102px);line-height:1;margin:0 0 65px;letter-spacing:-.055em;font-weight:900}.easy-layout{display:grid;grid-template-columns:275px 1fr;gap:95px}.cap-panel{position:relative;text-align:center;padding-right:28px;border-right:1px dotted #999}.cap-panel h3{text-align:left;font-size:16px;margin-left:15px}.cap-panel img{height:190px;width:100%;object-fit:contain;mix-blend-mode:multiply}.cap-style{right:16px;top:28px}.cap-panel .desc{min-height:auto}.catalog-note{color:var(--red);font-weight:800;font-style:italic;line-height:1.2}.steps-main{min-width:0}.step-block{margin-bottom:8px}.sample-shirts{width:min(850px,100%);margin:4px auto 0;max-height:390px;object-fit:contain;mix-blend-mode:multiply}.customize-block{margin-top:-5px}.custom-logo{width:330px;margin:0 auto -35px;max-height:280px;object-fit:contain;mix-blend-mode:multiply}
.design-section{background:#fff;padding:70px 0 85px}.black-banner{background:#171717;color:#fff;border-radius:8px 8px 0 0;padding:18px 25px;font:700 26px Georgia,serif;text-align:center;letter-spacing:.03em;box-shadow:inset 0 0 40px rgba(255,255,255,.04);margin-bottom:42px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:26px}.section-heading h2,.contact-section h2{font-size:clamp(36px,5vw,58px);letter-spacing:-.04em;margin:0}.section-heading p{color:#666}.eyebrow{font-size:12px;letter-spacing:.18em;font-weight:900;margin:0 0 10px;color:var(--red)}.filters{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:26px}.filter{border:1px solid #bbb;background:#fff;padding:10px 15px;border-radius:3px;font-weight:800;cursor:pointer}.filter.active{background:var(--red);border-color:var(--red);color:#fff}.design-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card{border:1px solid #d5d5d5;background:#f7f7f7}.card[hidden]{display:none}.design-image{width:100%;border:0;padding:0;background:#ece8e1;cursor:pointer}.design-image img{width:100%;aspect-ratio:1/1;object-fit:cover}.card-info{display:flex;justify-content:space-between;padding:13px 15px;border-top:1px solid #ddd}.card-info span{color:#777;font-size:13px}
.contact-section{background:#151515;color:#fff;border-top:5px solid var(--red);padding:58px 0}.contact-box{display:grid;grid-template-columns:88px 1fr;gap:24px;align-items:start;max-width:950px}.contact-section p{line-height:1.6;max-width:720px}.button{display:inline-block;background:var(--red);color:#fff;text-decoration:none;padding:14px 20px;font-weight:900;letter-spacing:.02em}.tiny{font-size:11px;color:#aaa}footer{background:#090909;color:#a9a9a9;padding:24px 0}.footer-inner{display:flex;justify-content:space-between;font-size:12px}
dialog{width:min(780px,calc(100% - 30px));border:0;padding:18px 18px 24px;box-shadow:0 30px 100px rgba(0,0,0,.4)}dialog::backdrop{background:rgba(0,0,0,.82)}dialog img{width:100%;max-height:70vh;object-fit:contain;background:#eee}dialog h3{margin:16px 0 0}.close{position:absolute;right:24px;top:24px;border:0;background:#fff;width:42px;height:42px;border-radius:50%;font-size:28px;cursor:pointer;box-shadow:0 2px 12px rgba(0,0,0,.25)}
@media(max-width:1000px){.garment-grid{grid-template-columns:repeat(2,1fr)}.garment-card{border-bottom:1px dotted #aaa}.garment-card:nth-child(2n){border-right:0}.garment-card:last-child{grid-column:1/-1}.easy-layout{grid-template-columns:220px 1fr;gap:35px}.design-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.nav nav{display:none}.catalog-wrap{padding:42px 0}.build-title{margin-bottom:42px}.step-badge{width:62px;height:62px;font-size:34px}.garment-grid{grid-template-columns:1fr}.garment-card{border-right:0!important;padding-bottom:22px}.garment-card img{height:190px}.easy-title{margin-bottom:40px}.easy-layout{grid-template-columns:1fr;gap:42px}.cap-panel{border-right:0;border-bottom:1px dotted #999;padding:0 0 35px}.cap-panel h3{text-align:center}.cap-style{right:calc(50% - 115px)}.custom-logo{margin-bottom:0}.section-heading{align-items:start;flex-direction:column}.design-grid{grid-template-columns:1fr}.contact-box{grid-template-columns:64px 1fr}.footer-inner{flex-direction:column;gap:6px}}

/* Catalog library built from the Rowan Sportswear catalog artwork */
.collection-filters{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 38px;padding-bottom:18px;border-bottom:1px solid #ddd}
.collection-filter{border:1px solid #b9b9b9;background:#fff;padding:10px 13px;border-radius:3px;font-size:12px;font-weight:900;cursor:pointer;text-transform:uppercase;letter-spacing:.025em}
.collection-filter.active{background:var(--red);color:#fff;border-color:var(--red)}
.collection-group{margin:0 0 55px}
.collection-group[hidden]{display:none}
.collection-banner{background:#171717;color:#fff;margin:0 0 16px;padding:15px 22px;border-radius:7px 7px 0 0;text-align:center;font:700 24px Georgia,serif;letter-spacing:.035em;box-shadow:inset 0 0 35px rgba(255,255,255,.035)}
.catalog-design-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.catalog-design-card{background:#f2f2f0;border:1px solid #d4d4d0;min-width:0}
.catalog-design-card .design-image{display:block;width:100%;border:0;padding:0;background:#efefec;cursor:pointer}
.catalog-design-card .design-image img{display:block;width:100%;aspect-ratio:1/1.02;object-fit:cover}
.catalog-card-info{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;border-top:1px solid #ddd;background:#fff}
.catalog-card-info strong{font-size:14px}
.catalog-card-info span{color:#777;font-size:11px;text-align:right}
@media(max-width:800px){.catalog-design-grid{grid-template-columns:repeat(2,1fr)}.collection-banner{font-size:20px}}
@media(max-width:520px){.catalog-design-grid{grid-template-columns:1fr}.collection-filters{gap:6px}.collection-filter{font-size:11px;padding:8px 10px}}

.collection-intro{margin:-18px 0 22px;color:#666;font-size:14px;line-height:1.55}

.collection-group[data-collection="new-artwork"] .catalog-design-card .design-image img{
  object-fit:contain;
  background:#fff;
  padding:8px;
}
.collection-group[data-collection="new-artwork"] .catalog-card-info{
  align-items:flex-start;
}

/* Updated How It Works banners */
.how-banner-section{
  margin:0;
  padding:0;
  background:#f7f7f5;
  border-bottom:1px solid #dedede;
}
.how-banner-wrap{
  width:100%;
  max-width:1920px;
  margin:0 auto;
  line-height:0;
}
.how-banner{
  display:block;
  width:100%;
  height:auto;
  margin:0;
  padding:0;
}
.how-banner-title{
  border-bottom:0;
}
.how-banner-steps{
  margin-top:0;
}
#designs.design-section{
  margin-top:0;
  padding-top:52px;
}
@media (max-width: 700px){
  #designs.design-section{
    padding-top:34px;
  }
}
