@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800;900&family=Work+Sans:wght@400;500;600&display=swap');
:root{--ink:#2a303b;--muted:#606773;--paper:#fff;--soft:#f3f3f0;--line:#dedfdc;--accent:#c5d2b6;font-family:'Work Sans',Arial,sans-serif;color:var(--ink);background:var(--paper);font-size:16px;line-height:1.6}
*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}a:hover{text-decoration:underline;text-underline-offset:5px}img{max-width:100%;display:block}h1,h2,h3,p{margin:0 0 1rem}h1,h2,h3{font-family:Montserrat,Arial,sans-serif;line-height:1.12;letter-spacing:-.045em}h1{font-size:clamp(2.2rem,4.4vw,4.5rem);font-weight:800}h2{font-size:clamp(1.8rem,3vw,3rem);font-weight:800}h3{font-size:1.15rem;letter-spacing:-.025em}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #6390c1;outline-offset:4px}[hidden]{display:none!important}.skip-link{position:fixed;top:-100px;background:white;padding:1rem;z-index:10}.skip-link:focus{top:0}.announcement{background:var(--accent);font-size:.65rem;letter-spacing:.16em;text-align:center;font-weight:600;padding:.55rem 1rem}.site-header{background:var(--ink);color:white;padding:1.4rem 5vw;display:flex;align-items:center;gap:2rem;border-bottom:1px solid #49505a}.wordmark{margin-right:auto}.wordmark img{width:180px;height:auto}.site-header nav{display:flex;gap:2rem;font-size:.85rem}.checkout-link{font-size:.85rem;border-left:1px solid #65707a;padding-left:2rem}.eyebrow{font-size:.68rem;letter-spacing:.16em;font-weight:600;text-transform:uppercase;margin-bottom:1rem}.hero{display:grid;grid-template-columns:1fr 1fr;background:var(--ink);color:white;min-height:590px}.hero-copy{padding:6rem 3rem 6rem 6vw;align-self:center}.hero-copy h1{font-size:clamp(2.6rem,4.2vw,4.4rem);max-width:700px}.hero-copy>p:not(.eyebrow){color:#d2d5da;max-width:470px;margin:1.5rem 0 2rem;font-size:1.05rem}.hero-image{position:relative;background:#e9eae5;overflow:hidden;display:flex;align-items:center;padding:2rem}.hero-image>img{width:100%;height:100%;object-fit:contain;max-height:560px;mix-blend-mode:multiply}.hero-caption{position:absolute;bottom:1.5rem;left:2rem;font-size:.65rem;font-weight:600;letter-spacing:.16em;color:var(--ink)}.button{display:inline-flex;gap:2rem;justify-content:space-between;align-items:center;background:var(--ink);color:white;border:1px solid var(--ink);padding:1rem 1.4rem;font-size:.83rem;font-weight:600}.button:hover{text-decoration:none;background:#404956}.button-light{background:#fff;color:var(--ink);border-color:white}.button-light:hover{background:var(--accent);border-color:var(--accent)}.section{max-width:1500px;margin:auto;padding:5rem 6vw}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:2.25rem}.section-heading h2{margin:0}.text-link{font-size:.85rem;border-bottom:1px solid var(--ink);padding-bottom:.2rem;white-space:nowrap}.locations-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem 1.5rem}.location-photo{position:relative;display:block;aspect-ratio:1.45;overflow:hidden;background:var(--soft)}.location-photo>img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.location-photo:hover>img{transform:scale(1.04)}.location-overlay{position:absolute;inset:0;background:#10182473;display:grid;place-items:center;padding:3rem}.location-overlay img{max-width:80%;max-height:140px;object-fit:contain}.location-info{display:flex;justify-content:space-between;align-items:center;padding-top:1rem}.location-info .eyebrow{font-size:.59rem;margin:0 0 .5rem;color:var(--muted)}.location-info h3{font-size:1rem;margin:0}.round-link{display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;min-width:35px;height:35px}.category-band{background:var(--soft);padding:4rem 6vw}.category-band h2{font-size:1.7rem}.category-band>div{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.category-band a{font-family:Montserrat,sans-serif;font-size:clamp(1.3rem,2.7vw,2.6rem);font-weight:700;border-bottom:1px solid #a8aca5;padding:1rem 0;display:flex;justify-content:space-between}.category-band span{font-weight:400}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2.5rem 1.5rem}.product-image{background:var(--soft);aspect-ratio:1;overflow:hidden;margin-bottom:1rem}.product-image img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;transition:transform .3s}.product-card a:hover{text-decoration:none}.product-card a:hover img{transform:scale(1.04)}.product-card h3{font-family:'Work Sans',sans-serif;font-size:.95rem;line-height:1.45;letter-spacing:0;font-weight:500;margin-bottom:.4rem}.price{font-size:.8rem;color:var(--muted)}.from{font-size:.8em}.about{display:grid;grid-template-columns:1fr 1fr;gap:1rem 4rem;border-top:1px solid var(--line)}.about>.eyebrow{grid-column:1/-1}.about h2{font-size:clamp(2.4rem,4vw,4rem)}.about>div{max-width:520px;color:var(--muted)}.site-footer{background:var(--ink);color:white;padding:4rem 6vw 1.5rem;display:grid;grid-template-columns:2fr 1fr;gap:2rem}.site-footer strong{font-family:Montserrat,sans-serif;line-height:1.5;letter-spacing:.03em}.site-footer p{font-size:.8rem;color:#d2d5da;margin-top:1rem}.site-footer nav{display:flex;flex-direction:column;gap:.7rem;font-size:.85rem}.copyright{grid-column:1/-1;border-top:1px solid #4a505a;padding-top:1.5rem}.intro{color:var(--muted)}.catalog h1{font-size:clamp(2.4rem,4vw,4rem)}.catalog-controls{display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr auto;gap:1rem;align-items:end;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:1.5rem 0;margin-top:2.5rem}label{display:flex;flex-direction:column;gap:.4rem;font-size:.75rem;font-weight:500}input,select{min-width:0;width:100%;border:1px solid #c3c7c8;background:#fff;border-radius:0;color:var(--ink);padding:.8rem;font-size:.9rem;min-height:46px}select{padding-right:1.5rem}.text-button{background:none;border:0;padding:.8rem;font-size:.8rem;text-decoration:underline}.result-count{margin:1.5rem 0;color:var(--muted);font-size:.8rem}.empty-state{padding:5rem 1rem;text-align:center}.breadcrumb{display:inline-block;font-size:.8rem;margin-bottom:2rem;color:var(--muted)}.product-detail{display:grid;grid-template-columns:1fr 1fr;gap:5vw}.detail-image{background:var(--soft);align-self:start}.detail-image img{width:100%;height:auto;mix-blend-mode:multiply}.detail-copy h1{font-size:clamp(1.8rem,3vw,3rem)}.detail-price{font-size:1.4rem}.detail-copy form{display:grid;gap:1rem;margin:1.5rem 0}.detail-copy input[type=number]{max-width:100px}.product-description{font-size:.9rem;line-height:1.8;margin-top:2rem;padding-top:2rem;border-top:1px solid var(--line)}.notice{padding:1rem;background:var(--soft);font-size:.85rem}.checkout-info{max-width:850px;min-height:55vh}.checkout-note{font-size:.82rem;color:var(--muted);margin:1rem 0}.purchase{margin:1.5rem 0}

@media(max-width:900px){.site-header{padding:1rem 4vw;gap:1rem}.site-header nav{gap:1rem}.wordmark img{width:140px}.hero{min-height:480px}.hero-copy{padding:3rem 4vw}.hero-copy h1{font-size:2.7rem}.section{padding:3.5rem 4vw}.locations-grid{grid-template-columns:repeat(2,1fr)}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.catalog-controls{grid-template-columns:1fr 1fr}.catalog-controls label:first-child{grid-column:1/-1}.catalog-controls button{justify-self:start}.location-overlay{padding:2rem}.category-band{padding:3rem 4vw}}
@media(max-width:600px){.announcement{font-size:.51rem;letter-spacing:.1em}.site-header{flex-wrap:wrap}.wordmark img{width:132px}.site-header nav{order:3;width:100%;justify-content:space-between;border-top:1px solid #4a505a;padding-top:.9rem;font-size:.75rem}.checkout-link{padding-left:1rem}.hero{grid-template-columns:1fr}.hero-copy{padding:3rem 6vw}.hero-copy h1{font-size:2.8rem}.hero-image{height:340px;padding:1.2rem}.hero-caption{font-size:.55rem;left:6vw}.section{padding:3rem 6vw}.section-heading{align-items:start;flex-direction:column;gap:1rem}.locations-grid{gap:1.5rem 1rem}.location-photo{aspect-ratio:1}.location-overlay{padding:.5rem}.location-info{gap:.5rem}.location-info h3{font-size:.85rem}.location-info .eyebrow{font-size:.52rem}.round-link{min-width:28px;height:28px}.category-band{padding:3rem 6vw}.category-band>div{grid-template-columns:1fr;gap:0}.category-band a{font-size:1.7rem}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem 1rem}.product-card h3{font-size:.85rem}.about{grid-template-columns:1fr;gap:1rem}.site-footer{grid-template-columns:1fr;padding:3rem 6vw 1rem}.product-detail{grid-template-columns:1fr;gap:2rem}.catalog-controls{gap:.75rem}.catalog-controls label{font-size:.65rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.checkout-link span{display:inline-grid;place-items:center;background:#fff;color:var(--ink);border-radius:50%;width:24px;height:24px;font-size:.75rem;margin-left:.5rem}
.skip-link{top:0;left:0;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.skip-link:focus{width:auto;height:auto;padding:1rem;overflow:visible;clip-path:none}
.product-options{display:grid;gap:1rem;margin:1.5rem 0}
.product-options input[type=number]{max-width:100px}
.product-options [role=status]{font-size:.9rem}
.product-options [role=status] a{text-decoration:underline}
.cart-page{max-width:1000px;min-height:60vh}
.cart-row{display:grid;grid-template-columns:90px 1fr 100px auto;gap:1.5rem;align-items:center;padding:1.5rem 0;border-bottom:1px solid var(--line)}
.cart-row img{width:90px;aspect-ratio:1;object-fit:contain;background:var(--soft)}
.cart-row h2{font-size:1rem;letter-spacing:0}
.cart-row p{font-size:.8rem;margin:.3rem 0}
.cart-row button{font-size:.75rem;background:none;border:0;text-decoration:underline}
.cart-total{font-size:1.2rem;text-align:right;margin-top:1.5rem}
.checkout-form,.payment-form{margin-top:3rem;border-top:1px solid var(--line);padding-top:2rem}
.checkout-form h2,.payment-form h2{font-size:1.7rem}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1.5rem 0}
.wide{grid-column:1/-1}
.payment-form>.button{margin-top:1rem}
.payment-form label{margin-bottom:1rem}
[role=alert]{color:#9f2626;padding-top:1rem}
@media(max-width:600px){
  .cart-row{grid-template-columns:65px 1fr 70px;gap:.8rem}
  .cart-row img{width:65px}
  .cart-row>button{grid-column:2;justify-self:start}
  .cart-row h2{font-size:.85rem}
  .cart-row input{padding:.4rem}
  .cart-total{font-size:1rem}
}

/* Original PHGI photography and artwork, hosted with the storefront. */
.product-gallery{min-width:0;align-self:start}
.product-gallery>.detail-image{display:block}
.product-gallery>.detail-image:focus-visible{outline-offset:3px}
.gallery-thumbnails{display:flex;gap:.6rem;overflow-x:auto;scrollbar-width:thin;padding:.7rem .3rem .8rem;margin:.4rem -.3rem 0}
.gallery-thumbnail{flex:0 0 82px;border:1px solid var(--line);padding:.25rem;text-align:center;background:white}
.gallery-thumbnail:hover{text-decoration:none;border-color:var(--ink)}
.gallery-thumbnail[aria-current=true]{border:2px solid var(--ink);padding:calc(.25rem - 1px)}
.gallery-thumbnail img{width:100%;height:auto;aspect-ratio:1;object-fit:contain;background:var(--soft)}
.gallery-thumbnail span{display:block;font-size:.65rem;line-height:1.35;padding:.35rem .1rem}
.gallery-caption{font-size:.8rem;margin:.5rem 0;color:var(--ink)}
.gallery-hint{font-size:.75rem;color:var(--muted);margin:.5rem 0}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.carousel{position:relative;background:var(--ink);color:white}
.location-slide{position:relative;height:clamp(660px,63vw,900px);display:flex;align-items:center;justify-content:flex-end;padding:3rem 7vw 7rem}
.location-backdrop{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.location-feature{position:relative;width:380px;flex-shrink:0;overflow:hidden;border-radius:12px;background:#fff;color:var(--ink);text-align:center;box-shadow:0 10px 36px #10182430}
.location-feature-logo{height:210px;display:grid;place-items:center;padding:2rem}
.location-feature-logo img{width:260px;max-height:155px;object-fit:contain}
.location-feature-copy{padding:1.5rem 1rem;border-top:1px solid var(--line)}
.location-feature-copy h2{font-size:1.3rem;letter-spacing:-.02em;margin-bottom:.6rem}
.location-feature-copy p{font-size:.9rem;margin:0;color:var(--muted)}
.location-feature>a{display:flex;justify-content:center;align-items:center;gap:1rem;padding:1.25rem;font:800 .95rem Montserrat,Arial,sans-serif;text-transform:uppercase}
.location-visit{background:var(--ink);color:white}
.location-shop{border-top:1px solid var(--line)}
.carousel-controls{display:flex;align-items:center;justify-content:center;gap:1.25rem;padding:1rem 3vw}
.location-hero>.carousel-controls{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#101824d9);padding-top:3rem}
.carousel-controls button{border:1px solid transparent;background:transparent;color:white;font-size:.75rem;min-height:44px;padding:.6rem .7rem}
.carousel-controls button:hover{background:#ffffff1f}
.carousel-controls button[aria-pressed=true]{border-bottom-color:white}
.carousel-controls .carousel-arrow{font-size:1.3rem;min-width:44px;border:1px solid #ffffff70;border-radius:50%;padding:0}
.carousel-choices{display:flex;justify-content:center;align-items:center;gap:.3rem}
.carousel-dot{display:none;width:8px;height:8px;border:1px solid white;border-radius:50%}
.brand-story{display:grid;grid-template-columns:1fr 1fr;background:var(--ink)}
.brand-story-copy{position:relative;overflow:hidden;color:#d2d5da;padding:5rem 3.5vw 5rem 11.5vw;display:flex;align-items:center}
.vertical-phgi{position:absolute;top:0;left:0;width:8.5vw;height:auto;opacity:.8}
.brand-story-copy>div{position:relative}
.brand-story-copy h2{color:white;text-transform:uppercase;font-size:clamp(2rem,3.3vw,3.5rem);margin:1.5rem 0 2rem}
.brand-story-copy p{font-size:.95rem;max-width:520px}
.brand-story-copy .eyebrow{font-size:.63rem}
.button-outline{border:1px solid #ffffff9c;background:transparent;color:white;text-transform:uppercase;margin-top:2rem}
.button-outline:hover{background:#ffffff18}
.brand-family{background:white;padding:4rem 3vw;align-content:center}
.brand-family>.eyebrow{text-align:center;color:var(--muted);margin-bottom:2rem}
.brand-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2.5rem 1.5rem}
.brand-grid a{display:flex;align-items:center;flex-direction:column;justify-content:end;gap:1rem;text-align:center}
.brand-grid img{width:100%;height:180px;object-fit:contain;transition:transform .2s}
.brand-grid a:hover img{transform:translateY(-5px)}
.brand-grid span{font-size:.65rem;color:var(--muted)}
.collection-slide{position:relative;display:grid;grid-template-columns:43% 57%;min-height:650px;overflow:hidden;padding:3rem 0 0 6vw}
.collection-copy{align-self:center;position:relative;z-index:1;padding:2rem 0 5rem}
.collection-copy h2{font-size:clamp(2.8rem,5.9vw,6rem);text-transform:uppercase;letter-spacing:-.045em}
.collection-copy p:not(.eyebrow){max-width:430px;color:#d2d5da;font-size:1.05rem}
.collection-copy .button{margin-top:2rem}
.collection-art{position:relative;min-height:550px;align-self:stretch}
.hoodie-art{display:flex;align-items:end}
.hoodie-art>img{width:100%;height:auto}
.tee-art img,.accessory-art img{position:absolute;object-fit:contain}
.tee-back{width:66%;left:-2%;top:1%;transform:rotate(-12deg)}
.tee-side{width:66%;right:-8%;top:8%;transform:rotate(12deg)}
.tee-front{width:73%;left:13%;bottom:0}
.accessory-tote{width:73%;right:-2%;top:0}
.accessory-bottle{width:41%;left:1%;top:8%;transform:rotate(-12deg)}
.accessory-mousepad{width:55%;left:0;bottom:0;transform:rotate(-8deg)}
.accessory-mug{width:43%;right:0;bottom:-2%}
.collection-carousel>.carousel-controls{border-top:1px solid #ffffff1f}
@media(max-width:1000px){
  .location-slide{height:700px;padding-right:7vw}
  .location-feature{width:330px}
  .carousel-choice-label{display:none}
  .carousel-dot{display:block}
  [aria-pressed=true]>.carousel-dot{background:white}
  .carousel-choices{gap:.4rem}
  .brand-story-copy{padding:3.5rem 4vw 3.5rem 11.5vw}
  .brand-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.8rem 1rem}
  .brand-grid img{height:125px}
  .collection-slide{min-height:540px;grid-template-columns:44% 56%}
  .collection-art{min-height:440px}
  .collection-copy h2{font-size:5.5vw}
}
@media(max-width:600px){
  .location-slide{height:720px;padding:0 6vw 80px;align-items:end;justify-content:center}
  .location-backdrop{object-position:38% center}
  .location-feature{width:min(100%,310px);border-radius:8px}
  .location-feature-logo{height:130px;padding:1.2rem}
  .location-feature-logo img{max-height:95px;width:200px}
  .location-feature-copy{padding:1rem}
  .location-feature-copy h2{font-size:1.1rem}
  .location-feature-copy p{font-size:.8rem}
  .location-feature>a{padding:1rem;font-size:.8rem}
  .carousel-controls{gap:.5rem;padding:.75rem 4vw}
  .carousel-controls button{padding:.5rem .6rem}
  .carousel-choices{gap:0}
  .brand-story{grid-template-columns:1fr}
  .brand-story-copy{padding:3.5rem 6vw 3.5rem 23vw}
  .vertical-phgi{width:17vw}
  .brand-story-copy h2{font-size:clamp(1.8rem,7vw,2.7rem)}
  .brand-family{padding:3rem 6vw}
  .brand-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem 1rem}
  .brand-grid img{height:115px}
  .brand-grid span{font-size:.56rem}
  .brand-family>.eyebrow{font-size:.6rem}
  .collection-slide{display:flex;flex-direction:column;min-height:0;padding:3rem 6vw 0}
  .collection-copy{padding:0;align-self:stretch}
  .collection-copy h2{font-size:clamp(2.2rem,9vw,3.5rem)}
  .collection-copy p:not(.eyebrow){font-size:.95rem}
  .collection-copy .button{margin:1rem 0 0}
  .collection-art{height:95vw;min-height:0;margin:1.5rem -6vw 0}
  .hoodie-art>img{height:100%;object-fit:contain;object-position:bottom}
}
