/* WIMG retro screen-print v3 — matches proposals/direction-1 mock. Scoped to body.custom-theme. */
body.custom-theme{--navy:#1f2a44;--tomato:#e4572e;--mustard:#f2b134;--teal:#2a9d8f;--surface:#fff8ec;--sheet:#f4ecdc}

/* ---- headings: heavy Fraunces, tight ---- */
body.custom-theme h1,body.custom-theme h2,body.custom-theme h3{font-weight:900;letter-spacing:-.01em;line-height:1.05}
body.custom-theme .hl{font-style:italic}

/* ---- announcement bar: navy, small caps-ish ---- */
body.custom-theme .announcement{background:var(--navy);color:var(--sheet);font-size:14px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:10px 16px}

/* ---- header: 2px navy rule, nav, bag pill ---- */
body.custom-theme .header{border-bottom:2px solid var(--navy)}
body.custom-theme .header nav a{font-size:15px;font-weight:700}
body.custom-theme .header .bag-button{background:var(--tomato);color:#fff;border:2px solid var(--navy);border-radius:999px;box-shadow:3px 3px 0 var(--navy);font-weight:800}
body.custom-theme .header .bag-button svg{stroke:#fff}
body.custom-theme .header .bag-button span{background:var(--surface);color:var(--navy);font-weight:800}

/* ---- preview bar kept (honest checkout notice), just restyled ---- */
body.custom-theme .demo-banner{background:var(--surface);color:var(--navy);border-bottom:2px solid var(--navy);font-weight:600}

/* ---- hero ---- */
body.custom-theme .hero{border-bottom:2px solid var(--navy)}
body.custom-theme .hero .eyebrow{display:inline-flex;align-items:center;background:var(--surface);color:var(--navy);border:2px solid var(--navy);border-radius:999px;padding:6px 14px;font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;box-shadow:3px 3px 0 var(--navy)}
body.custom-theme .hero h1{font-size:clamp(54px,7.4vw,112px);line-height:1.02;margin:26px 0 18px}
body.custom-theme .hero h1 .hl{font-weight:900}
body.custom-theme .hero .hero-description{font-size:21px;font-weight:500;line-height:1.5;color:var(--navy);max-width:520px}
body.custom-theme .button{border:2px solid var(--navy);border-radius:14px;font-weight:800;box-shadow:5px 5px 0 var(--navy);transition:transform .12s,box-shadow .12s}
body.custom-theme .button:hover{transform:translate(2px,2px);box-shadow:3px 3px 0 var(--navy)}
body.custom-theme .hero .button{padding:17px 28px;font-size:16px}
body.custom-theme .hero .button.dark{background:var(--tomato);color:#fff}

/* ---- reassurance strip ---- */
body.custom-theme .value-strip{display:block;text-wrap:balance;background:var(--navy);color:var(--sheet);font-size:15px;font-weight:700;padding:18px 40px;letter-spacing:.02em;text-align:center;line-height:1.5;border:0}

/* ---- section headings ---- */
body.custom-theme .section-heading .eyebrow,body.custom-theme .shop .eyebrow{color:var(--tomato);font-size:13px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
body.custom-theme .section-heading h2{font-size:clamp(38px,4.3vw,60px);line-height:1.02}
body.custom-theme .section-heading > p{font-size:18px;color:var(--muted)}

/* ---- generation tiles: 3x2, photo beside text ---- */
body.custom-theme .generation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
body.custom-theme .generation-card.has-image{display:grid;grid-template-columns:1.1fr 1fr;grid-template-rows:auto auto 1fr auto;column-gap:0;padding:0;min-height:250px;background:var(--card,var(--surface));border:2px solid var(--navy);border-radius:14px;box-shadow:6px 6px 0 var(--navy);overflow:hidden;align-items:start;text-decoration:none;color:var(--navy);transition:transform .12s,box-shadow .12s}
body.custom-theme .generation-card.has-image:hover{transform:translate(2px,2px);box-shadow:4px 4px 0 var(--navy)}
body.custom-theme .generation-card.has-image .gen-photo{grid-column:1;grid-row:1 / -1;width:100%;height:100%;min-height:250px;aspect-ratio:auto;max-height:none;margin:0;object-fit:cover;object-position:center;border:0;border-right:2px solid var(--navy);border-radius:0;background:var(--surface)}
body.custom-theme .generation-card.has-image .gen-years{grid-column:2;grid-row:1;margin:0;padding:22px 20px 0;font-size:12px;font-weight:800;letter-spacing:.1em;color:var(--navy)}
body.custom-theme .generation-card.has-image h3{grid-column:2;grid-row:2;margin:6px 0 8px;padding:0 20px;font-size:clamp(24px,2.3vw,32px);font-weight:900;line-height:1.05;color:var(--navy)}
body.custom-theme .generation-card.has-image .gen-line{grid-column:2;grid-row:3;margin:0;padding:0 20px;font-size:14.5px;line-height:1.4;font-weight:500;color:var(--navy)}
body.custom-theme .generation-card.has-image .gen-link{grid-column:2;grid-row:4;position:static;align-self:end;padding:14px 20px 20px;font-size:14px;font-weight:800;background:none;border:0;width:auto;height:auto;color:var(--navy)}
body.custom-theme .generation-card.has-image .gen-link .link-arrow{display:none}

/* ---- product grid + cards ---- */
body.custom-theme .product-grid{gap:26px}
body.custom-theme .product-grid .product-card,body.custom-theme .product-grid.theme-cards-bordered .product-card{background:var(--surface);border:2px solid var(--navy);border-radius:14px;box-shadow:5px 5px 0 var(--navy);overflow:hidden;position:relative;padding:0}
body.custom-theme .product-card .product-visual{position:relative;margin:0;border:0;border-bottom:2px solid var(--navy);border-radius:0;background:#efeee7}
body.custom-theme .product-card .product-label{position:absolute;top:12px;left:12px;z-index:2;background:var(--mustard);color:var(--navy);border:1.5px solid var(--navy);border-radius:999px;padding:4px 10px;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;line-height:1.2}
body.custom-theme .product-card .product-meta{padding:16px 16px 4px;gap:10px;align-items:flex-start}
body.custom-theme .product-card .product-meta h3,body.custom-theme .product-card .product-meta h3 a{font-family:"Fraunces",Georgia,serif;font-size:19px;font-weight:700;line-height:1.15;color:var(--navy)}
body.custom-theme .product-card .product-price{font-family:"Fraunces",Georgia,serif;font-size:20px;font-weight:900;color:var(--navy);white-space:nowrap}
body.custom-theme .product-card .product-category{padding:0 16px;margin:2px 0 0;font-size:14px;font-weight:600;color:var(--muted)}
body.custom-theme .product-card .swatches{padding:12px 16px 18px;margin:0;gap:7px}
body.custom-theme .product-card .swatch{width:16px;height:16px;border:1.5px solid var(--navy);box-shadow:none}

/* ---- story band: teal halftone ---- */
body.custom-theme .story{position:relative;overflow:hidden;background:var(--teal);color:var(--surface);border-top:2px solid var(--navy);border-bottom:2px solid var(--navy);margin:0;max-width:none;padding:100px max(5.72%,calc((100% - 1200px) / 2));gap:60px;align-items:center;grid-template-columns:.8fr 1.2fr}
body.custom-theme .story:before{content:"";position:absolute;inset:0;background:radial-gradient(rgba(255,248,236,.16) 1.4px,transparent 1.6px) 0 0/10px 10px;pointer-events:none}
body.custom-theme .story>*{position:relative;z-index:1}
body.custom-theme .story .story-photo{aspect-ratio:auto;max-height:none;height:auto;width:100%;max-width:520px;justify-self:center;object-fit:contain;border-radius:0;background:none}
body.custom-theme .story .eyebrow{color:var(--mustard);font-size:13px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
body.custom-theme .story h2{font-size:clamp(42px,5.3vw,76px);line-height:1.02;color:var(--surface);margin:14px 0 20px}
body.custom-theme .story h2 .hl{color:var(--mustard);font-weight:900}
body.custom-theme .story p{font-size:19px;line-height:1.55;color:var(--surface);max-width:560px}
body.custom-theme .story .text-link{display:inline-block;margin-top:10px;color:var(--navy);background:var(--mustard);border:2px solid var(--navy);border-radius:14px;padding:14px 22px;font-size:16px;font-weight:800;text-decoration:none;box-shadow:4px 4px 0 var(--navy)}

/* ---- footer: navy, mustard column titles ---- */
body.custom-theme footer{border-top:2px solid var(--navy);padding-top:70px}
body.custom-theme footer .brand-logo{max-height:70px;width:auto}
body.custom-theme footer .footer-top strong{color:var(--mustard);font-size:13px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
body.custom-theme footer .footer-top a,body.custom-theme footer .footer-top button{font-size:15px}
body.custom-theme footer .footer-bottom{border-top:1px solid #3a4560}
body.custom-theme footer .theme-footer-note{display:none}
body.custom-theme .product-card .swatch{flex:0 0 16px}

/* ---- tablet ---- */
@media (max-width:1100px){
  body.custom-theme .generation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.custom-theme .story{grid-template-columns:1fr;padding:80px 5.72%}
}

/* ---- phone ---- */
@media (max-width:760px){
  body.custom-theme .announcement{font-size:13px;letter-spacing:.04em}
  body.custom-theme .hero h1{font-size:clamp(48px,15.5vw,62px)}
  body.custom-theme .hero .hero-description{font-size:17px}
  body.custom-theme .hero .button{width:100%;justify-content:center;text-align:center}
  body.custom-theme .value-strip{font-size:13px;padding:14px 20px}
  body.custom-theme .section-heading h2{font-size:36px}
  body.custom-theme .generation-grid{grid-template-columns:1fr;gap:18px}
  body.custom-theme .generation-card.has-image{min-height:200px;grid-template-columns:42% 1fr;box-shadow:5px 5px 0 var(--navy)}
  body.custom-theme .generation-card.has-image .gen-photo{min-height:200px}
  body.custom-theme .generation-card.has-image .gen-years{padding:16px 14px 0}
  body.custom-theme .generation-card.has-image h3{font-size:24px;padding:0 14px}
  body.custom-theme .generation-card.has-image .gen-line{padding:0 14px;font-size:14px}
  body.custom-theme .generation-card.has-image .gen-link{padding:10px 14px 16px}
  body.custom-theme .product-grid{gap:14px}
  body.custom-theme .product-grid .product-card,body.custom-theme .product-grid.theme-cards-bordered .product-card{box-shadow:4px 4px 0 var(--navy);border-radius:12px}
  body.custom-theme .product-card .product-meta{flex-direction:column;gap:4px;padding:12px 12px 2px}
  body.custom-theme .product-card .product-meta h3,body.custom-theme .product-card .product-meta h3 a{font-size:16px}
  body.custom-theme .product-card .product-price{font-size:18px}
  body.custom-theme .product-card .product-category{padding:0 12px;font-size:13px}
  body.custom-theme .product-card .swatches{padding:10px 12px 14px}
  body.custom-theme .product-card .product-label{top:8px;left:8px;max-width:calc(100% - 16px);padding:3px 7px;letter-spacing:.04em;font-size:12px}
  body.custom-theme .story{padding:64px 6%;gap:36px}
  body.custom-theme .story .story-photo{max-width:300px}
  body.custom-theme .story h2{font-size:clamp(40px,12vw,46px)}
  body.custom-theme .story p{font-size:17px}
  body.custom-theme .product-card .swatches .more-colors{display:none}
  body.custom-theme .product-card .swatches{flex-wrap:wrap;gap:5px;overflow:hidden}
  body.custom-theme .product-card .swatch{flex:0 0 14px;width:14px;height:14px}
  body.custom-theme footer{padding-top:48px}
}

/* ---- product page: description spacing and colour (Markdown descriptions) ---- */
body.custom-theme .detail-copy .detail-price{margin:0 0 6px}
body.custom-theme .detail-copy .rich-text{color:var(--muted);font-size:16px;line-height:1.8;margin:16px 0 20px}
body.custom-theme .detail-copy .rich-text p{margin:0 0 14px;color:inherit}
body.custom-theme .detail-copy .rich-text p:last-child{margin-bottom:0}
body.custom-theme .detail-copy .rich-text a{color:var(--navy)}


/* ---- arrows off (hide-arrows switch covers .link-arrow; these cover glyphs hard-coded in the templates) ---- */
body.custom-theme .button>span:not([class]),body.custom-theme #load-more span{display:none}
body.custom-theme a.text-link[href="/collections/all"],body.custom-theme a.text-link[href="/#collections"],body.custom-theme .site-footer a[href="/admin"],body.custom-theme footer a[href="/admin"],body.custom-theme .not-found .button,body.custom-theme .empty-state .button{font-size:0}
body.custom-theme a.text-link[href="/collections/all"]::before{content:"Shop all designs";font-size:1rem}
body.custom-theme a.text-link[href="/#collections"]::before{content:"Find the one that gets you";font-size:1rem}
body.custom-theme footer a[href="/admin"]::before,body.custom-theme .site-footer a[href="/admin"]::before{content:"Admin";font-size:.875rem}
body.custom-theme .not-found .button::before,body.custom-theme .empty-state .button::before{content:"Explore the collection";font-size:.875rem}

/* Made when you order: photo (note image slot) left on desktop, on top on mobile */
body.custom-theme .small-print{display:grid;grid-template-columns:minmax(300px,480px) minmax(0,1fr);column-gap:72px;align-items:center;padding-top:64px;padding-bottom:64px}
body.custom-theme .small-print>.sample-note{grid-column:1;grid-row:1;display:block;border:0;border-left:0;padding:0;margin:0;max-width:none;background:none;box-shadow:none}
body.custom-theme .small-print .note-photo{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border:3px solid var(--navy);border-radius:18px;box-shadow:8px 8px 0 var(--navy);transform:rotate(-1.5deg)}
body.custom-theme .small-print>span{display:none}
body.custom-theme .small-print>div:not(.sample-note){grid-column:2;grid-row:1}
@media (max-width:900px){
 body.custom-theme .small-print{grid-template-columns:1fr;row-gap:0;padding-top:40px;padding-bottom:56px}
 body.custom-theme .small-print>.sample-note{grid-column:1;grid-row:1;max-width:560px;margin-bottom:40px}
 body.custom-theme .small-print>div:not(.sample-note){grid-column:1;grid-row:2}
}

/* Header nav: eight links (six generations + T-shirts + Hoodies) */
@media (max-width:1100px){
 body.custom-theme .header{height:auto;flex-wrap:wrap;row-gap:0;padding-top:12px;padding-bottom:0}
 body.custom-theme .header nav{order:3;width:100%;justify-content:center;flex-wrap:wrap;gap:6px 22px;font-size:14px;padding:6px 0 12px}
 body.custom-theme .header nav a{white-space:nowrap;font-size:14px}
 body.custom-theme .header nav a:nth-child(4){display:inline}
}
@media (max-width:760px){
 body.custom-theme .header nav{display:grid;grid-template-columns:repeat(4,auto);justify-content:space-between;gap:8px 6px;padding:8px 0 12px}
 body.custom-theme .header nav a{font-size:13px;text-align:center}
}

/* Generation finder (plugin) styled for Retro Screen-Print */
body.custom-theme .generation-finder{margin:48px clamp(16px,5.7vw,82px);padding:36px clamp(20px,4vw,48px) 40px;background:var(--surface);border:3px solid var(--navy);border-radius:18px;box-shadow:8px 8px 0 var(--navy);position:relative}
body.custom-theme .generation-finder .section-title{margin:0 0 10px;font-size:clamp(2rem,4.6vw,3rem);line-height:1.05}
body.custom-theme .generation-finder>p{margin:0 0 22px;max-width:640px;font-size:1rem;color:var(--muted,#5b6275)}
body.custom-theme .generation-finder form{display:flex;flex-wrap:wrap;gap:12px 14px;align-items:flex-end}
body.custom-theme .generation-finder label{flex:0 0 100%;font-weight:800;font-size:.875rem;letter-spacing:.06em;text-transform:uppercase;color:var(--navy)}
body.custom-theme .generation-finder input{width:150px;padding:12px 16px;font:inherit;font-size:1.25rem;font-weight:800;letter-spacing:.12em;color:var(--navy);background:#fff;border:3px solid var(--navy);border-radius:12px;box-shadow:4px 4px 0 var(--navy)}
body.custom-theme .generation-finder input:focus{outline:3px solid var(--mustard);outline-offset:2px}
body.custom-theme .generation-finder [data-result]:not(:empty){margin-top:30px;padding-top:26px;border-top:3px dashed var(--navy)}
body.custom-theme .generation-finder [data-result] h3{margin:0 0 4px;font-size:clamp(1.8rem,4vw,2.6rem);line-height:1.05;color:var(--tomato)}
body.custom-theme .generation-finder [data-result] h3+p{display:inline-block;margin:6px 0 14px;padding:4px 12px;font-weight:800;font-size:.875rem;letter-spacing:.08em;background:var(--mustard);border:2px solid var(--navy);border-radius:999px;color:var(--navy)}
body.custom-theme .generation-finder [data-result] p{font-size:1rem}
body.custom-theme .generation-finder [data-result] ul{margin:14px 0 4px;padding-left:1.2em;max-width:760px}
body.custom-theme .generation-finder [data-result] li{margin:8px 0;font-size:1rem;line-height:1.5}
body.custom-theme .generation-finder [data-result] a{display:inline-block;margin-top:14px;padding:12px 22px;font-weight:800;color:var(--navy);text-decoration:none;background:var(--mustard);border:3px solid var(--navy);border-radius:12px;box-shadow:4px 4px 0 var(--navy)}
body.custom-theme .generation-finder [data-result] a:hover{background:var(--tomato);color:#fff8ec}
@media (max-width:600px){body.custom-theme .generation-finder{box-shadow:6px 6px 0 var(--navy);margin-top:36px}body.custom-theme .generation-finder input{width:100%}body.custom-theme .generation-finder button{width:100%}}

/* Policy popups: keep line breaks in the footer policy text */
.info-dialog p{white-space:pre-line;}

/* Page text: readable paragraph spacing on /pages/* */
.page-body .rich-text p{margin:0 0 14px;}
.page-body .rich-text p:last-child{margin-bottom:0;}
.page-body .rich-text h3{margin:24px 0 8px;}

