/*
Theme Name: Textile Factory
Author: Site owner
Description: Lightweight international B2B towel catalogue, designed for Textile Factory Core.
Version: 1.4.2
Requires at least: 6.6
Requires PHP: 8.0
License: GPL-2.0-or-later
Text Domain: textile-factory
*/
:root{--navy:#24473d;--blue:#426c55;--ink:#233e35;--muted:#5b6c60;--line:#d9dfd4;--paper:#f2f2e9;--white:#fffefb;--accent:#aaa075;--soft:#e8eee4;--radius:4px;--max:1200px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:Arial,"Helvetica Neue",sans-serif;font-size:1rem;line-height:1.65}a{color:inherit;text-underline-offset:4px}a:hover{color:var(--blue)}button,input,select,textarea{font:inherit}button,a,input,textarea,select{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #eab849;outline-offset:4px}img{max-width:100%;height:auto;display:block}.wrap{width:min(var(--max),calc(100% - 64px));margin:auto}.preview-banner{background:#fbf1dc;color:#624912;text-align:center;padding:9px 20px;font-size:.875rem;border-bottom:1px solid #e4d6b8}.topline{background:var(--navy);color:white;font-size:.875rem;padding:8px 0}.topline .wrap{display:flex;justify-content:space-between;gap:20px}.site-header{background:white;border-bottom:1px solid var(--line)}.header-inner{min-height:98px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{text-decoration:none;display:flex;align-items:center;gap:12px;font-size:1.16rem;line-height:1.2;font-weight:700;max-width:290px}.brand-mark{width:38px;height:38px;background:var(--navy);color:white;display:grid;place-items:center;font-family:Georgia,serif;font-size:1.6rem;font-weight:400;flex-shrink:0}.brand small{display:block;font-size:.75rem;color:var(--muted);font-weight:400;letter-spacing:.09em;margin-top:7px;text-transform:uppercase}.site-nav{display:flex;align-items:center;gap:27px}.site-nav>a{font-size:.875rem;text-decoration:none;font-weight:600}.menu-toggle{display:none;border:1px solid var(--line);background:white;padding:9px 15px;color:var(--ink)}.button,button.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;padding:13px 23px;background:var(--navy);color:white;text-decoration:none;border:1px solid var(--navy);border-radius:var(--radius);font-size:.875rem;font-weight:600;cursor:pointer;min-height:48px;line-height:1.5}.button:hover{background:var(--blue);color:white;border-color:var(--blue)}.button.light{background:white;color:var(--navy);border-color:var(--line)}.button.light:hover{background:var(--soft)}.button[disabled]{opacity:.5;cursor:not-allowed}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:27px}.eyebrow{text-transform:uppercase;font-size:.75rem;letter-spacing:.16em;color:var(--blue);font-weight:700;margin:0 0 18px}.hero{background:var(--paper);border-bottom:1px solid var(--line)}.hero-grid{display:grid;grid-template-columns:1.06fr 1fr;gap:76px;align-items:center;padding-top:64px;padding-bottom:64px}h1,h2,h3,p{margin-top:0}h1{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(2.5rem,4.4vw,4.6rem);line-height:1.08;letter-spacing:-.04em;margin-bottom:24px}h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2rem,3vw,2.7rem);line-height:1.18;font-weight:400;letter-spacing:-.025em;margin-bottom:18px}h3{font-size:1.1rem;line-height:1.4}.lead{font-size:1.125rem;line-height:1.7;color:var(--muted);max-width:600px}.hero-footnote{font-size:.875rem;color:var(--muted);margin-top:26px;margin-bottom:0}.hero-panel{background:white;border:1px solid var(--line);padding:22px}.hero-panel .product-image{aspect-ratio:1.3}.panel-label{display:flex;justify-content:space-between;gap:20px;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;margin-bottom:18px;color:var(--muted)}.product-image{background:#e8ede5;aspect-ratio:1.25;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.product-image img{width:100%;height:100%;object-fit:contain}.image-pending{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;border:1px dashed #9caebb;margin:26px;min-height:170px;width:calc(100% - 52px);color:#556e80;padding:28px}.image-pending .image-label{font-size:.75rem;letter-spacing:.1em;text-transform:uppercase}.image-pending strong{font-family:Georgia,serif;font-size:1.5rem;font-weight:400}.image-pending small{font-size:.875rem;max-width:260px}.hero-specs{display:grid;grid-template-columns:1fr 1fr;gap:15px;padding:22px 0 0}.hero-specs strong{display:block;font-size:1.25rem}.hero-specs span{font-size:.75rem;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}.context-strip{border-bottom:1px solid var(--line)}.context-grid{display:grid;grid-template-columns:repeat(3,1fr)}.context-grid>div{padding:24px 30px;border-right:1px solid var(--line)}.context-grid>div:first-child{padding-left:0}.context-grid>div:last-child{border:0}.context-grid strong{display:block;font-size:1rem}.context-grid span{color:var(--muted);font-size:.875rem}.section{padding:72px 0}.section.soft{background:var(--paper)}.section-heading{display:flex;justify-content:space-between;gap:32px;align-items:end;margin-bottom:32px}.section-heading h2{margin-bottom:0}.text-link{font-size:.875rem;font-weight:600;text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:5px}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.product-card{border:1px solid var(--line);background:white}.product-card>a{display:block;text-decoration:none}.product-card .card-body{padding:22px}.product-card h3{font-size:1.2rem;margin:9px 0}.product-card p{font-size:.875rem;color:var(--muted);margin:0 0 18px}.product-card .card-bottom{border-top:1px solid var(--line);padding-top:13px;font-size:.875rem;display:flex;justify-content:space-between}.tag{display:inline-block;font-size:.75rem;color:#795918;background:#fbf1dc;padding:3px 8px;line-height:1.5}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.step{border-top:1px solid #b6c7d4;padding-top:22px}.step .number{display:block;color:var(--blue);font-size:.875rem;margin-bottom:26px}.step p{font-size:1rem;color:var(--muted);margin:0}.callout{background:var(--navy);color:white;padding:44px 50px;display:flex;justify-content:space-between;align-items:center;gap:40px}.callout p{color:#c7d5df;max-width:650px;margin:0}.callout h2{font-size:2.3rem}.site-footer{background:#203d34;color:#c7d5df;padding:52px 0 22px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px}.site-footer h3{color:white;font-size:1rem}.site-footer a{display:block;text-decoration:none;font-size:.875rem;margin-bottom:10px}.site-footer p{font-size:.875rem;max-width:370px}.footer-base{border-top:1px solid #2a4153;margin-top:30px;padding-top:20px;font-size:.75rem;display:flex;justify-content:space-between;gap:20px}.breadcrumb{display:flex;gap:10px;font-size:.875rem;color:var(--muted);margin:28px 0}.page-head{padding:50px 0 35px;max-width:800px}.page-head h1{font-size:clamp(2.5rem,4.2vw,3.8rem)}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start;padding-bottom:60px}.detail-grid h1{font-size:clamp(2.25rem,3.6vw,3.6rem)}.detail-grid .product-image{aspect-ratio:1}.caption{font-size:.875rem;color:var(--muted);margin-top:14px}.spec-table{width:100%;border-collapse:collapse;margin:22px 0}.spec-table th,.spec-table td{text-align:left;border-bottom:1px solid var(--line);padding:11px 0;font-size:.875rem;vertical-align:top}.spec-table th{font-weight:400;color:var(--muted);width:44%;padding-right:20px}.spec-table td{font-weight:600}.notice{padding:16px 20px;border-left:3px solid var(--accent);background:#fcf6e9;font-size:.875rem;margin:20px 0}.content-prose{max-width:760px}.content-prose p,.content-prose li{color:var(--muted)}.pending-block{border:1px dashed #aebdca;background:var(--paper);padding:28px;margin-top:24px}.pending-block p{margin:0;color:var(--muted)}.contact-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:70px}.form-panel{border:1px solid var(--line);padding:32px;background:white}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{display:flex;flex-direction:column;gap:6px}.field.full{grid-column:1/-1}.field label{font-size:.875rem;font-weight:600}.field input,.field select,.field textarea{width:100%;border:1px solid #9bafbd;padding:11px 12px;background:white;color:var(--ink);border-radius:3px}.field textarea{min-height:130px;resize:vertical}.field small{color:var(--muted);font-size:.875rem}.form-note{font-size:.875rem;color:var(--muted);margin:20px 0}.form-result{margin-top:20px;padding:15px;border:1px solid var(--line);background:var(--soft);font-size:1rem}.form-result.error{background:#fff1ec;border-color:#ba5a36}.trap{position:absolute;left:-9999px;height:0;overflow:hidden}.catalogue-item{break-inside:avoid;border-bottom:1px solid var(--line);padding:28px 0;display:grid;grid-template-columns:240px 1fr;gap:35px}.catalogue-item .product-image{aspect-ratio:1}.empty-state{padding:44px;border:1px solid var(--line);background:var(--paper)}.skip-link{position:absolute;top:-100px;left:15px;z-index:1000;background:white;padding:15px}.skip-link:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
@media(max-width:1000px){.site-nav{gap:15px}.header-inner{gap:15px}.brand{max-width:220px}.hero-grid{gap:35px}.split{gap:40px}.contact-grid{gap:35px}.detail-grid{gap:35px}.product-grid{gap:18px}.product-card .card-body{padding:18px}}
@media(max-width:760px){.wrap{width:calc(100% - 36px)}.topline .wrap span:last-child{display:none}.header-inner{min-height:80px;flex-wrap:wrap;padding-top:15px;padding-bottom:15px}.menu-toggle{display:block}.site-nav{width:100%;flex-direction:column;align-items:stretch;gap:0;padding-top:12px}.js .site-nav:not(.open){display:none}.site-nav>a{padding:11px 4px}.site-nav .button{margin-top:10px;padding:12px}.hero-grid{grid-template-columns:1fr;gap:30px;padding:38px 0}.hero-panel{padding:16px}.hero-panel .product-image{aspect-ratio:1.55}.hero h1{max-width:500px}.context-grid{grid-template-columns:1fr}.context-grid>div,.context-grid>div:first-child{padding:16px 0;border-right:0;border-bottom:1px solid var(--line)}.section{padding:46px 0}.section-heading{align-items:start;flex-direction:column;gap:18px}.product-grid{grid-template-columns:1fr 1fr}.product-grid .image-pending{padding:15px;margin:14px;width:calc(100% - 28px);min-height:130px}.product-grid .image-pending strong{font-size:1.2rem}.product-grid .image-pending small{display:none}.split,.detail-grid,.contact-grid{grid-template-columns:1fr;gap:30px}.steps{grid-template-columns:1fr;gap:28px}.step .number{margin-bottom:15px}.callout{padding:28px;flex-direction:column;align-items:start;gap:24px}.footer-grid{grid-template-columns:1fr 1fr;gap:25px}.footer-grid>div:first-child{grid-column:1/-1}.footer-base{flex-direction:column;gap:7px}.page-head{padding:30px 0 20px}.form-panel{padding:22px}.form-grid{grid-template-columns:1fr}.catalogue-item{grid-template-columns:1fr;gap:15px}.catalogue-item .product-image{max-width:280px}.detail-grid .product-image{aspect-ratio:1.3}.preview-banner{font-size:.75rem}}
@media(max-width:430px){.product-grid{grid-template-columns:1fr}.product-grid .product-image{aspect-ratio:1.6}.actions .button{width:100%}.hero-specs strong{font-size:1.1rem}.form-panel{padding:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
@media print{.site-header,.site-footer,.topline,.preview-banner,.no-print,.actions,.breadcrumb{display:none!important}.wrap{width:100%}body{font-size:11pt;color:#000}.section{padding:10px 0}.page-head{padding:10px 0}h1{font-size:28pt}.catalogue-item{grid-template-columns:160px 1fr}.catalogue-item a{text-decoration:none}.spec-table th,.spec-table td{font-size:10pt}.product-image{background:#eee}.notice{border:1px solid #999}}

.variants th{width:auto;font-size:.8125rem}.variants td{font-size:.875rem}.variants th:first-child{width:40%}

.supply-grid{display:grid;grid-template-columns:1fr 1fr;gap:45px}.steps{row-gap:35px}.product-copy{max-width:700px}@media(max-width:760px){.supply-grid{grid-template-columns:1fr;gap:20px}}

.featured-label{display:block;font-size:.75rem;color:var(--blue);margin-top:6px}.catalogue-filters{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0 30px}.catalogue-filters a{border:1px solid var(--line);padding:9px 17px;font-size:.875rem;text-decoration:none;min-height:44px}.catalogue-filters a[aria-current]{background:var(--navy);color:white}.breadcrumb{flex-wrap:wrap}.supply-grid td{overflow-wrap:anywhere}
.factory-page{padding-bottom:72px}.factory-entity{margin-bottom:30px}.factory-entity span{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.factory-hero{margin:0 0 36px}.factory-hero img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}.factory-page figcaption{color:var(--muted);font-size:.875rem;margin:10px 0 0;text-align:left}.factory-content{max-width:none}.factory-content>p{max-width:760px}.factory-content h2{margin-top:42px}.factory-content .wp-block-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin:0 0 30px}.factory-content .wp-block-column{min-width:0}.factory-content .wp-block-image{margin:0}.factory-content .wp-block-image img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}@media(max-width:760px){.factory-page{padding-bottom:46px}.factory-content .wp-block-columns{grid-template-columns:1fr;gap:26px;margin-bottom:26px}.factory-hero{margin-bottom:26px}}

.topline .wrap{align-items:center;flex-wrap:wrap;gap:8px 20px}.language-switcher{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin-left:auto}.language-switcher a{padding:7px 10px;border:1px solid transparent;border-radius:3px;color:white;text-decoration:none;font-size:.8125rem;min-height:36px;display:inline-flex;align-items:center}.language-switcher a:hover,.language-switcher a[aria-current]{background:#fff;color:var(--navy);border-color:#fff}.site-nav>a{overflow-wrap:break-word}.site-nav .button{white-space:normal;text-align:center}.header-inner .brand{flex-shrink:0}.product-card h3{overflow-wrap:break-word}.spec-table td,.spec-table th{overflow-wrap:anywhere}
@media(min-width:761px) and (max-width:1100px){.header-inner{flex-wrap:wrap;padding-top:18px;padding-bottom:18px}.site-nav{width:100%;justify-content:space-between;gap:14px}}
@media(max-width:760px){.topline .wrap>span:nth-child(2){display:none}.topline .wrap{justify-content:center;gap:4px}.language-switcher{margin:0;justify-content:center;width:100%}.language-switcher a{min-height:44px;padding:8px}.header-inner .brand{max-width:calc(100% - 95px)}.hero h1{overflow-wrap:break-word}.product-card .card-body{padding:18px}.photo-viewer-controls button{white-space:normal}}
