/* PGLAB V214 — shared storefront identity. Product artwork is styled separately. */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Libre+Baskerville:ital,wght@0,400;0,700;1,400&display=swap');
.pglab-brand{--ink:#111111;--dark:#111111;--paper:#f4f3ee;--cream:#f4f3ee;--line:#e2e1dc;--muted:#666666;--pink:#ff5a1f;--pink-deep:#111111;--pink-soft:#f4f3ee;--soft:#f4f3ee;--gold:#ff5a1f;--brand-white:#ffffff;--brand-moss:#666666;--brand-clay:#111111;background:var(--paper);color:var(--ink);font-family:Inter,Arial,sans-serif}
.pglab-brand :is(.home-nav,.nav,.map-nav,.topbar){background:var(--paper);color:var(--ink);border-color:var(--line);gap:24px}
.pglab-brand .nav{height:auto;min-height:80px;padding-top:16px;padding-bottom:16px}
.pglab-brand :is(.brand img,.home-brand img,.footer-brand img){filter:brightness(0) saturate(100%);width:108px}
.pglab-brand :is(.nav-right,.trail-nav,.map-nav nav){gap:24px;font-size:13px;font-weight:600}
.pglab-brand .nav-right a:first-child{border-bottom:0;padding-bottom:0}
.pglab-brand :is(.nav-right,.trail-nav,.map-nav nav) a[aria-current="page"]{border-bottom:2px solid var(--gold);padding-bottom:6px;color:var(--ink)}
.pglab-brand .cart-button{color:var(--ink)}
.pglab-brand .cart-button span{background:var(--ink);color:var(--paper)}
.pglab-brand :is(.eyebrow,.kicker,.product-type,.sample-kicker,.card-label){color:var(--brand-moss);font-family:Inter,Arial,sans-serif;font-size:11px;letter-spacing:.16em;line-height:1.6;font-weight:700}
.pglab-brand :is(.pink-label,.hero-points i){color:var(--brand-moss)}
.pglab-brand :is(.home-hero h1,.clicker-page-hero h2,.bubble-hero h1,.hero h1,.map-hero h1){font-family:Inter,Arial,sans-serif;font-weight:600;letter-spacing:-.05em;line-height:1.08}
.pglab-brand :is(.home-hero h1 em,.clicker-page-hero h2 em,.map-hero h1 em,.samples-heading h2 em){font-family:'Libre Baskerville',Georgia,serif;font-weight:400;color:var(--brand-moss);letter-spacing:-.055em}
.pglab-brand :is(.hero-sub,.hero .intro,.map-hero>div>p:not(.eyebrow),.clicker-page-hero>div>p:not(.eyebrow)){font-size:17px;line-height:1.75;color:var(--muted)}
.pglab-brand :is(.section h2,.samples-heading h2){font-family:Inter,Arial,sans-serif;font-weight:600;line-height:1.15;letter-spacing:-.04em}
.pglab-brand :is(.product-info h3,.sample-copy h3){font-family:Inter,Arial,sans-serif;font-weight:600;line-height:1.2;letter-spacing:-.025em}
.pglab-brand :is(.product-info p,.sample-copy>p:not(.sample-kicker)){font-size:14px;line-height:1.75;color:var(--muted)}
.pglab-brand :is(.product-card,.sample-card,.builder-card,.preview-card,.bubble-preview-card,.composer,.carto-buy,.live-price-card){background:var(--brand-white);border-color:var(--line);border-radius:16px;box-shadow:0 12px 32px #11111108}
.pglab-brand :is(.get-started,.pill-button.dark,.map-primary,.add-button,.confirm-order-btn,.proceed-payment-btn,.upload-card .button){background:var(--ink);color:var(--paper);border-color:var(--ink);border-radius:8px;font-weight:600;min-height:44px}
.pglab-brand :is(.map-secondary,.secondary-cart-button){background:var(--paper);color:var(--ink);border-color:var(--line);border-radius:8px;min-height:44px}
.pglab-brand :is(.price-card,.dark-card){background:var(--ink);color:var(--paper)}
.pglab-brand :is(.map-controls,.map-order,.preview-header,.checkout-head,.product-head){border-color:var(--line)}
.pglab-brand :is(.upload-map,.upload-card){background:var(--brand-white);border-color:var(--gold)}
.pglab-brand .upload-map.drag-over{background:#f4f3ee;outline-color:var(--gold)}
.pglab-brand :is(.map-stage,.how-section,.service-strip){background:#e2e1dc}
.pglab-brand :is(.bubble-hero,.intro-customizer){background:var(--paper)}
.pglab-brand .bubble-hero h1 em{color:var(--brand-clay)}
.pglab-brand .hero-stamp{border-color:var(--line);color:var(--brand-moss)}
.pglab-brand .hero-stamp b{font-family:'Libre Baskerville',Georgia,serif;color:var(--ink);line-height:1.5}
.pglab-brand .theme-button.active{border-color:var(--gold)}
.pglab-brand .map-footer{border-color:var(--line)}
.pglab-brand .home-footer{background:var(--paper);border-color:var(--line)}
.pglab-brand :is(.home-footer nav a,.footer-right,.footer-brand small){color:var(--muted)}
.pglab-brand :is(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--brand-moss);outline-offset:4px}
/* Explicit hero layout replaces the old overlapping logo-intro animation. */
.brand-home .home-hero{display:grid;grid-template-columns:1.2fr .8fr;min-height:560px;background:var(--paper);text-align:left}
.brand-home .hero-intro .hero-copy{position:relative;max-width:800px;width:auto;padding:88px 24px 88px max(28px,calc((100vw - 1240px)/2));margin:0;align-items:flex-start;opacity:1;transform:none;animation:none!important;text-align:left}
.brand-home .hero-copy h1{font-size:clamp(40px,4.6vw,68px);margin:0 0 28px}
.brand-home .hero-intro .hero-art{position:relative;inset:auto;display:flex;width:auto;height:auto;min-height:360px;animation:none!important;background:url('assets/brand-contours.svg') center/contain no-repeat}
.brand-home .hero-intro .hero-brand-mark{width:min(75%,340px);opacity:1;transform:none;animation:none!important}
.brand-home .hero-brand-circle{border-color:var(--line);background:#f4f3eedf}
.brand-home .hero-brand-circle:after{border-color:var(--line)}
.brand-home .hero-brand-mark img{filter:brightness(0);width:66%}
.brand-home .hero-brand-mark span{color:var(--muted);letter-spacing:.2em}
.brand-home .hero-actions{justify-content:flex-start}
.brand-home .hero-points{justify-content:flex-start;margin-top:40px;color:var(--muted)}
.brand-home .section{padding-top:80px;padding-bottom:80px}
.brand-home .product-grid{gap:24px}
.brand-home .cta-section{background:var(--ink);color:var(--paper)}
.brand-home .cta-section h2{font-family:'Libre Baskerville',Georgia,serif;font-weight:400;line-height:1.15}
.brand-home .cta-section p{color:var(--paper)}
@media(max-width:900px){.pglab-brand :is(.nav-right,.trail-nav,.map-nav nav){gap:16px}.brand-home .home-hero{grid-template-columns:1fr}.brand-home .hero-intro .hero-copy{padding:64px 28px 24px;max-width:760px}.brand-home .hero-intro .hero-art{min-height:240px;margin-bottom:32px}.brand-home .hero-intro .hero-brand-mark{width:220px}.brand-home .hero-copy h1{font-size:clamp(38px,7vw,60px)}}
@media(max-width:600px){.pglab-brand :is(.nav,.map-nav,.topbar){flex-wrap:wrap;gap:16px;padding-top:16px;padding-bottom:16px}.pglab-brand :is(.nav-right,.trail-nav,.map-nav nav){gap:14px;flex-wrap:wrap;font-size:12px}.pglab-brand :is(.hero-sub,.hero .intro,.map-hero>div>p:not(.eyebrow),.clicker-page-hero>div>p:not(.eyebrow)){font-size:16px}.brand-home .hero-intro .hero-copy{padding:48px 20px 24px}.brand-home .hero-copy h1{font-size:clamp(32px,8.5vw,48px)}.brand-home .hero-actions{flex-direction:row;flex-wrap:wrap;align-items:center;gap:20px}.brand-home .hero-points{gap:16px;margin-top:28px}.brand-home .section{padding:56px 20px}.pglab-brand .map-hero h1{font-size:40px}}
@media(prefers-reduced-motion:reduce){.pglab-brand{scroll-behavior:auto}.pglab-brand .product-card{transition:none}.pglab-brand .product-card:hover{transform:none}}

/* V214: neutral storefront, restrained Signal Orange accents. */
.pglab-brand{--accent:#ff5a1f}
.pglab-brand :is(.hero-copy h1 em,.clicker-page-hero h2 em,.map-hero h1 em,.samples-heading h2 em){color:var(--ink)}
.pglab-brand :is(.cart-button span,.cart-count,.card-arrow){background:var(--accent);color:var(--ink)}
.pglab-brand :is(.desktop-nav>a.active,.desktop-nav>a[aria-current="page"]){border-color:var(--accent)}
.pglab-brand :is(.builder-panel,.builder-card,.preview-card,.checkout-summary,.trail-cart-summary,.customer-form){border-color:var(--line)}
.pglab-brand :is(.map-primary,.add-button,.confirm-order-btn,.proceed-payment-btn,.upload-card .button){background:var(--accent);border-color:var(--accent);color:var(--ink)}
.pglab-brand :is(a,button,input,select,textarea,[tabindex]):focus-visible{outline-color:var(--ink)}
.brand-home #products{scroll-margin-top:112px}
.brand-home .products-section .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:stretch}
.brand-home .products-section .product-card{grid-column:auto;grid-template-columns:45% minmax(0,55%);height:auto;min-height:420px;background:var(--brand-white)}
.brand-home .products-section :is(.product-image,.bubble-editorial-poster,.trail-card-art,.map-card-graphic){height:100%;min-height:420px;width:100%}
.brand-home .products-section :is(.product-image,.bubble-editorial-poster) img{height:100%;width:100%;object-fit:cover}
.brand-home .products-section .product-info{height:auto;min-height:420px;min-width:0;padding:32px 24px;display:flex;flex-direction:column;align-items:flex-start;background:var(--brand-white)}
.brand-home .products-section .product-info .product-type{font-size:11px;letter-spacing:.14em;margin:0 0 20px;color:var(--muted)}
.brand-home .products-section .product-info h3{font-size:clamp(21px,2vw,27px);line-height:1.18;margin:0 0 16px}
.brand-home .products-section .product-info>p:not(.product-type){font-size:14px;line-height:1.65;margin:0 0 24px;color:var(--muted)}
.brand-home .products-section .product-price-row{width:100%;margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:12px}
.brand-home .products-section .product-price-row strong{font-size:20px;line-height:1.5;letter-spacing:-.02em}
.brand-home .products-section .product-price-row strong>span{font-size:12px;color:var(--muted);font-weight:400;letter-spacing:0;margin-left:4px}
.brand-home .products-section .product-price-row .frame-included{display:block;margin-left:0;font-size:12px}
.brand-home .products-section .card-arrow{position:static;flex:0 0 38px;width:38px;height:38px;font-size:20px;background:var(--accent);color:var(--ink)}
.brand-home .products-section .bubble-badge{position:static;align-self:flex-start;padding:6px 10px;border-radius:999px;background:var(--accent);color:var(--ink);font-size:11px;line-height:1.3;margin-bottom:5px}
.brand-home .products-section .bubble-offer-note{font-size:10px;line-height:1.4;color:var(--muted);margin-bottom:16px}
.brand-home .products-section .bubble-editorial-info .product-type{margin-bottom:12px}
@media(max-width:1050px){.brand-home .products-section .product-grid{grid-template-columns:1fr}.brand-home .products-section .product-card{grid-template-columns:45% minmax(0,55%);min-height:360px}.brand-home .products-section :is(.product-image,.bubble-editorial-poster,.trail-card-art,.map-card-graphic,.product-info){min-height:360px}.brand-home .products-section .product-info{padding:32px}.brand-home .products-section .product-info h3{font-size:28px}}
@media(max-width:540px){.brand-home .products-section .product-card{grid-template-columns:1fr;min-height:0}.brand-home .products-section :is(.product-image,.bubble-editorial-poster,.trail-card-art,.map-card-graphic){height:270px;min-height:270px}.brand-home .products-section .product-info{min-height:260px;height:auto;padding:24px}.brand-home .products-section .product-info h3{font-size:25px}.brand-home .products-section .product-info>p:not(.product-type){font-size:14px}.brand-home .products-section .product-price-row{padding-top:16px}}
