/* TG Printify-style restyle for teesgraphy.in (shop 31 ONLY: loaded by a {if $shop.id==31} include in themes/alysum/templates/_partials/stylesheets.tpl). 2026-10-17 */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Poppins:wght@600;700;800&display=swap');
:root{--pf-ink:#2F2E0C;--pf-mute:#64634A;--pf-cream:#F5F5F0;--pf-cream2:#FBFBF3;--pf-line:#E0E0D7;--pf-red:#E6010B;--pf-red-d:#C40009}
/* ---------- base typography ---------- */
body{font-family:Inter,system-ui,sans-serif!important;color:var(--pf-ink)!important;font-size:16px;line-height:24px;letter-spacing:.01em;background:#fff!important}
body :is(p,li,span,a,label,td,th,input,select,textarea,small,div,figcaption,button):not(i):not([class*=icon]):not([class*=fa-]):not(.material-icons):not([class*=ceicon]):not([class*=eicon]):not([class*=Icons]){font-family:Inter,system-ui,sans-serif!important}
body p,body .elementor-text-editor,body .elementor-image-box-description,body .product-description,body #product-description-short{font-size:16px!important;line-height:24px!important;color:var(--pf-ink)!important}
body :is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.elementor-heading-title,.page-heading,.product-title,.elementor-cart__title){font-family:Poppins,sans-serif!important;color:var(--pf-ink)!important;letter-spacing:-.01em;text-transform:none}
body h1,body .h1,body .elementor-widget-heading h1.elementor-heading-title{font-weight:800!important;font-size:clamp(34px,5vw,64px)!important;line-height:1.1!important}
body h2,body .h2,body .elementor-widget-heading h2.elementor-heading-title{font-weight:800!important;font-size:clamp(26px,3.4vw,46px)!important;line-height:1.17!important}
body h3,body .elementor-widget-heading h3.elementor-heading-title{font-weight:700!important;font-size:clamp(20px,2vw,24px)!important;line-height:1.2!important}
body h4,body .elementor-widget-heading h4.elementor-heading-title{font-weight:800!important;font-size:clamp(28px,3.4vw,46px)!important;line-height:1.15!important}
/* footer headings stay compact */
#footer :is(h2,h3,h4,.elementor-heading-title){font-size:16px!important;line-height:22px!important;font-weight:700!important}
#footer .elementor-element-675a5f9b .elementor-heading-title{font-size:15px!important;font-weight:400!important;line-height:24px!important;font-family:Inter,sans-serif!important}
#footer,#footer *{color:var(--pf-ink)}
#footer a:hover{color:var(--pf-red)!important}
/* ---------- buttons: red primary, 4px corners, Printify heights ---------- */
body :is(.btn-primary,.elementor-button:not(.elementor-button--view-cart),.add-to-cart,button[type=submit].btn,.elementor-button-link){background:var(--pf-red)!important;border:1px solid var(--pf-red)!important;color:#fff!important;border-radius:4px!important;min-height:48px;padding:0 28px!important;font-weight:700!important;font-size:16px!important;display:inline-flex;align-items:center;justify-content:center;text-transform:none!important;box-shadow:none!important}
body :is(.btn-primary,.elementor-button,.add-to-cart):hover{background:var(--pf-red-d)!important;border-color:var(--pf-red-d)!important}
body :is(.elementor-button,.elementor-button-link) .elementor-button-text{color:inherit!important}
body .btn-secondary,body .btn-default:not(.btn-primary),body .elementor-button--view-cart{background:#fff!important;border:1px solid var(--pf-ink)!important;color:var(--pf-ink)!important;border-radius:4px!important;min-height:48px;font-weight:700!important}
/* "See all" style text links (transparent buttons) */
body .elementor-element-518a6f6 .elementor-button,body .elementor-element-47a400c2 .elementor-button,body .elementor-element-2af0c97c .elementor-button,body .elementor-element-2e3173a1 .elementor-button,body .elementor-element-3a8bb7ee .elementor-button,body .elementor-element-a32d243 .elementor-button{background:transparent!important;border:0!important;color:var(--pf-ink)!important;min-height:0;padding:0!important;text-decoration:underline;text-underline-offset:4px;font-weight:700!important}
body .elementor-element-518a6f6 .elementor-button *,body .elementor-element-47a400c2 .elementor-button *,body .elementor-element-2af0c97c .elementor-button *,body .elementor-element-2e3173a1 .elementor-button *,body .elementor-element-3a8bb7ee .elementor-button *,body .elementor-element-a32d243 .elementor-button *{color:var(--pf-ink)!important}
/* ---------- colours: green -> cream / dark / red ---------- */
body .elementor-element-696f36ce,body .elementor-element-16afb25b,body .elementor-element-202dc503,body .elementor-element-b20ffbf,body .elementor-element-66afa048,body .elementor-element-32aa2fe8,body .elementor-element-3d02bf56,body .elementor-element-2658a0ba{background:var(--pf-cream)!important;background-image:none!important;border:1px solid var(--pf-line)!important;border-radius:4px!important}
body :is(.elementor-element-696f36ce,.elementor-element-16afb25b,.elementor-element-202dc503,.elementor-element-b20ffbf,.elementor-element-66afa048,.elementor-element-32aa2fe8,.elementor-element-3d02bf56,.elementor-element-2658a0ba) *{color:var(--pf-ink)!important}
body .elementor-element-122e926e,body .elementor-element-7b9585a6,body .elementor-element-63daf664{background:var(--pf-cream)!important;border-radius:4px!important}
body .elementor-element-e7e0842{background:transparent!important}
body :is(.elementor-element-10528f6c,.elementor-element-5b14a9a0,.elementor-element-32080f0c,.elementor-element-3c286c0b,.elementor-element-897cd0b,.elementor-element-76c6ac3c){border-color:var(--pf-line)!important;border-radius:4px!important;background:#fff!important}
body .ce-caption-text,body figcaption{color:var(--pf-ink)!important;font-weight:600}
body .elementor-element-6c94987b,body .elementor-element-e4c3ec6,body .elementor-element-50f204a{background-color:var(--pf-ink)!important}
body :is(.elementor-element-e4c3ec6,.elementor-element-50f204a) :is(h1,h2,h3,h4,p,span,a,li,.elementor-heading-title){color:#FBFBF3!important}
body .elementor-element-634989,body .elementor-element-5d47354e,body .elementor-element-55106119{background-color:var(--pf-red)!important}
body .elementor-element-457aeb81,body .elementor-element-60efc5f0,body .elementor-element-135d711a,body .elementor-element-26d0bb73,body .elementor-element-7897ac50,body .elementor-element-6b32a9d0{color:var(--pf-red)!important}
body .elementor-element-579c1587,body .elementor-toggle-title{color:var(--pf-ink)!important;font-weight:600}
body .elementor-element-56b040ad *,body .price,body .product-price,body .current-price span{color:var(--pf-ink)!important;font-weight:700}
/* header menu, cart drawer, mobile bottom bar */
body .elementor-element-45fec785 .elementor-item{color:var(--pf-ink)!important;font-weight:500}
body .elementor-element-45fec785 .elementor-item:hover{color:var(--pf-red)!important}
body .elementor-element-45fec785 .elementor-menu-toggle,body .elementor-element-45fec785 .elementor-menu-toggle i{background:transparent!important;color:var(--pf-ink)!important}
body .elementor-nav--dropdown{border-color:var(--pf-line)!important}
body .elementor-cart__title,body .elementor-cart__summary-label{color:var(--pf-ink)!important}
body .elementor-cart__footer-buttons .elementor-button--checkout{background:var(--pf-red)!important;color:#fff!important}
body .elementor-element-41c78158>.elementor-column-wrap,body .elementor-element-41c78158{border-color:var(--pf-line)!important}
body :is(.elementor-element-4459609d,.elementor-element-4db9ddce,.elementor-element-3a8c98a5) .elementor-icon{background:var(--pf-red)!important;color:#fff!important}
body :is(.elementor-element-4459609d,.elementor-element-4db9ddce,.elementor-element-3a8c98a5) a{color:var(--pf-ink)!important}
/* ---------- spacing: generous sections ---------- */
#content .elementor-top-section,#main .elementor-top-section{margin-bottom:40px}
@media(min-width:1024px){#content .elementor-top-section,#main .elementor-top-section{margin-bottom:72px}}
body .elementor-widget-heading{margin-bottom:12px}
/* ---------- cards / inputs ---------- */
body .card,body .product-miniature .thumbnail-container,body .product-miniature,body .cart-grid-body .card,body .cart-summary{border-radius:4px!important;box-shadow:none!important;border-color:var(--pf-line)!important}
body .form-control,body input[type=text],body input[type=email],body input[type=password],body input[type=tel],body select{border-radius:4px!important;border:1px solid #D0D0C3!important;min-height:48px;font-size:16px}
body .form-control:focus,body input:focus,body select:focus{border-color:var(--pf-ink)!important;box-shadow:0 0 0 2px rgba(47,46,12,.12)!important}
/* ---------- product page (Printify order: title -> price -> options -> CTA -> details) ---------- */
body#product h1,body#product .product-title,body#product h1.h1{font-size:clamp(28px,3vw,36px)!important;line-height:1.17!important;font-weight:800!important}
body#product .product-information,body#product .product-actions{font-family:Inter,sans-serif}
body#product .product-variants .control-label,body#product .product-variants-item .control-label{font-family:Poppins,sans-serif!important;font-weight:700;font-size:14px;text-transform:none;color:var(--pf-ink)!important}
body#product .product-variants .input-radio+span,body#product .product-variants .radio-label,body#product .product-variants li label span{border-radius:4px!important;border:1px solid #D0D0C3!important;min-width:44px;min-height:40px;display:inline-flex;align-items:center;justify-content:center;font-weight:600;background:#fff;color:var(--pf-ink)!important}
body#product .product-variants .input-radio:checked+span,body#product .product-variants .input-radio:checked+.radio-label{background:var(--pf-ink)!important;color:#fff!important;border-color:var(--pf-ink)!important}
body#product .tabs,body#product .product-tabs,body#product #description,body#product .product-description{background:var(--pf-cream);border-radius:4px;padding:24px}
body#product .nav-tabs .nav-link{font-family:Poppins,sans-serif!important;font-weight:700;color:var(--pf-mute)!important;border:0!important;border-bottom:2px solid transparent!important;text-transform:none}
body#product .nav-tabs .nav-link.active{color:var(--pf-ink)!important;border-bottom-color:var(--pf-red)!important;background:transparent!important}
body#product .product-actions .add-to-cart{width:100%;max-width:420px;min-height:56px;font-size:18px!important}
/* ---------- category ---------- */
body#category #js-product-list-header h1,body#category .block-category h1{font-size:clamp(28px,3.4vw,46px)!important}
body#category .block-category,body#category #js-product-list-header{background:var(--pf-cream);border-radius:4px;padding:24px;border:0}
body .product-miniature .product-title a{color:var(--pf-ink)!important;font-weight:600;font-family:Inter,sans-serif!important}
body .products-sort-order .select-title,body .facet .facet-title{border-radius:4px!important;font-family:Inter,sans-serif!important}
/* ---------- cart / checkout ---------- */
body#cart #main,body#checkout #main{max-width:1180px;margin:0 auto}
body#cart .cart-grid-body .card-block h1,body#checkout .checkout-step .step-title{font-family:Poppins,sans-serif!important;font-weight:800!important;font-size:clamp(24px,2.6vw,32px)!important;text-transform:none}
body#checkout .checkout-step{border-radius:4px;border:1px solid var(--pf-line);margin-bottom:12px;background:#fff}
body#checkout .checkout-step.-current{background:var(--pf-cream2)}
body#checkout .checkout-step .step-number{background:var(--pf-ink)!important;color:#fff!important;border-radius:4px!important}
body#cart .cart-summary,body#checkout #js-checkout-summary{background:var(--pf-cream)!important;border:0!important}
body .cart-summary-line.cart-total .value,body .cart-total .value{color:var(--pf-ink)!important;font-weight:800}
body .custom-checkbox input[type=checkbox]:checked+span,body .custom-radio input[type=radio]:checked+span{background:var(--pf-ink)!important;border-color:var(--pf-ink)!important}
/* ---------- homepage (tg-pf-home.tpl) ---------- */
body#index>section#content,body#index section#content{display:none!important}
.tgh{max-width:1280px;margin:0 auto;padding:0 16px 40px;overflow-x:clip}
.tgh-hero{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;padding:24px 0}
.tgh-eyebrow{color:var(--pf-red)!important;font-weight:700!important;font-size:13px!important;letter-spacing:.06em!important;text-transform:uppercase;margin:0 0 8px}
.tgh h1{margin:0 0 12px}
.tgh-sub{color:var(--pf-mute)!important;font-size:18px!important;line-height:28px!important;max-width:560px}
.tgh-cta{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0 16px}
.tgh-btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 28px;border-radius:4px;background:var(--pf-red);color:#fff!important;font-weight:700;font-size:16px;text-decoration:none!important;border:1px solid var(--pf-red)}
.tgh-btn:hover{background:var(--pf-red-d)}
.tgh-btn-ghost{background:#fff;color:var(--pf-ink)!important;border-color:var(--pf-ink)}
.tgh-btn-ghost:hover{background:var(--pf-cream)}
.tgh-ticks{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px 18px}
.tgh-ticks li{font-size:14px!important;font-weight:600;color:var(--pf-ink)}
.tgh-ticks li:before{content:"✓";color:var(--pf-red);margin-right:6px;font-weight:800}
.tgh-hero-img img{width:100%;height:auto;display:block;border-radius:4px}
.tgh-sec{margin-top:48px}
.tgh-sec h2{margin:0 0 20px;font-size:clamp(26px,3vw,40px)!important}
.tgh-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.tgh-head a{font-weight:700;color:var(--pf-ink)!important;text-decoration:underline;text-underline-offset:4px}
.tgh-steps{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
.tgh-step{background:var(--pf-cream);border-radius:4px;padding:24px}
.tgh-step h3{margin:12px 0 6px;font-size:20px!important}
.tgh-step p{margin:0;color:var(--pf-mute)!important}
.tgh-n{display:inline-flex;width:36px;height:36px;border-radius:50%;background:var(--pf-red);color:#fff!important;font-weight:800;align-items:center;justify-content:center;font-family:Poppins,sans-serif!important}
.tgh-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.tgh-tile{display:block;background:var(--pf-cream);border-radius:4px;overflow:hidden;text-decoration:none!important;border:1px solid var(--pf-line)}
.tgh-tile img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block;background:#fff}
.tgh-tile span{display:block;padding:12px 14px;font-weight:700;color:var(--pf-ink)!important}
.tgh-tile:hover span{color:var(--pf-red)!important}
.tgh-best .products,.tgh-best .product_list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.tgh-best .products>*,.tgh-best .product_list>*{width:auto!important;max-width:none!important;padding:0!important}
.tgh-best h2.products-section-title,.tgh-best .featured-products>h2,.tgh-best .all-product-link{display:none}
.tgh-trust{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;background:var(--pf-ink);border-radius:4px;padding:24px}
.tgh-trust b{display:block;color:#fff!important;font-family:Poppins,sans-serif!important;font-size:18px}
.tgh-trust span{color:#E0E0D7!important;font-size:14px!important}
.tgh-faq details{border-bottom:1px solid var(--pf-line);padding:16px 0}
.tgh-faq summary{cursor:pointer;font-weight:700;font-size:17px;list-style:none;display:flex;justify-content:space-between;gap:12px}
.tgh-faq summary::-webkit-details-marker{display:none}
.tgh-faq summary:after{content:"+";color:var(--pf-red);font-size:22px;line-height:1}
.tgh-faq details[open] summary:after{content:"–"}
.tgh-faq details p{margin:10px 0 0;color:var(--pf-mute)!important}
.tgh-faq a{color:var(--pf-red)!important}
@media(min-width:768px){.tgh-steps{grid-template-columns:repeat(3,minmax(0,1fr))}.tgh-tiles{grid-template-columns:repeat(5,minmax(0,1fr))}.tgh-best .products,.tgh-best .product_list{grid-template-columns:repeat(4,minmax(0,1fr))}.tgh-trust{grid-template-columns:repeat(4,minmax(0,1fr));padding:32px}}
@media(min-width:1024px){.tgh-sec{margin-top:72px}.tgh-hero{padding-top:40px}}
/* ---------- account / login ---------- */
body:is(#authentication,#registration,#my-account,#identity,#addresses,#address,#history,#password) #content,body:is(#authentication,#registration) #main{max-width:720px;margin:0 auto}
body:is(#authentication,#registration,#password) #content{background:var(--pf-cream);border-radius:4px;padding:24px}
body#my-account .links a,body#my-account .link-item{border-radius:4px!important;border:1px solid var(--pf-line)!important;background:#fff;box-shadow:none!important}
body#my-account .links a:hover .link-item,body#my-account .links a:hover{border-color:var(--pf-red)!important}
body#my-account .links a i{color:var(--pf-red)!important}
body .page-header h1,body #main .page-header h1{font-size:clamp(28px,3vw,40px)!important}
body a.forgot-password a,body .forgot-password a,body .no-account a{color:var(--pf-red)!important;font-weight:600}
/* overflow safety */
html,body{max-width:100vw;overflow-x:clip}
