/*
Theme Name: printing-central-uk
Description: Custom theme for Printing Central UK — full control homepage with slideshow
Version: 2.0
*/

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html, body { margin: 0 !important; padding: 0 !important; overflow-x: hidden; width: 100%; background: #fff; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; color: #231F20; }
a { text-decoration: none; color: inherit; }
img { max-width: 100%; display: block; }
ul { list-style: none; padding: 0; margin: 0; }
:root { --cyan:#00AEEF; --mag:#EC008C; --yel:#FFF200; --blk:#231F20; }

.cmyk-bar { display:flex; height:6px; width:100%; }
.cmyk-bar span { flex:1; }
.pc-topnav { background:#fff; border-bottom:1px solid #e5e5e5; padding:14px 40px; display:flex; align-items:center; justify-content:space-between; position:sticky; top:0; z-index:200; }
.pc-logo { display:flex; align-items:center; gap:10px; font-size:18px; font-weight:700; color:#231F20; }
.pc-logo-dots { display:flex; }
.pc-logo-dot { width:13px; height:13px; border-radius:50%; }
.pc-logo-dot.c { background:#00AEEF; margin-right:-4px; }
.pc-logo-dot.m { background:#EC008C; margin-right:-4px; margin-top:7px; }
.pc-logo-dot.y { background:#FFF200; margin-right:10px; }
.pc-nav-links { display:flex; gap:24px; }
.pc-nav-links a { font-size:14px; color:#555; }
.pc-nav-links a:hover { color:#231F20; }
.pc-basket-btn { display:flex; align-items:center; gap:8px; background:#231F20; color:#FFF200; padding:9px 18px; border-radius:8px; font-size:14px; font-weight:700; }
.pc-basket-btn:hover { background:#000; }
.pc-pstrip { background:#fff; border-bottom:2px solid #e5e5e5; position:sticky; top:57px; z-index:150; }
.pc-pstrip-inner { display:flex; overflow-x:auto; justify-content:center; scrollbar-width:none; }
.pc-pstrip-inner::-webkit-scrollbar { display:none; }
.pc-ptab-wrap { position:relative; }
.pc-ptab { display:flex; flex-direction:column; align-items:center; gap:6px; padding:12px 16px; border-bottom:3px solid transparent; margin-bottom:-2px; min-width:80px; color:#231F20; transition:background .15s; }
.pc-ptab:hover, .pc-ptab.on { background:#f5f5f5; border-bottom-color:#00AEEF; }
.pc-pico { width:36px; height:36px; border-radius:8px; display:flex; align-items:center; justify-content:center; }
.pc-pico svg { display:block; }
.pc-plbl { font-size:11px; color:#555; white-space:nowrap; }
.pc-dd { display:none; position:fixed; background:#fff; border:1px solid #e5e5e5; border-radius:10px; box-shadow:0 6px 24px rgba(0,0,0,.12); min-width:200px; z-index:500; padding:6px 0; }
.pc-dd a { display:block; padding:10px 16px; font-size:13px; color:#333; }
.pc-dd a:hover { background:#f5f5f5; }
.pc-hero { position:relative; height:460px; overflow:hidden; background:#231F20; }
.pc-slide { position:absolute; inset:0; opacity:0; transition:opacity .8s ease; }
.pc-slide.active { opacity:1; }
.pc-slide img { width:100%; height:100%; object-fit:cover; }
.pc-slide-overlay { position:absolute; inset:0; background:linear-gradient(to right,rgba(35,31,32,.85) 38%,rgba(35,31,32,.15) 100%); }
.pc-slide-content { position:absolute; inset:0; display:flex; flex-direction:column; justify-content:center; padding:0 80px; max-width:700px; }
.pc-slide-badge { display:inline-block; background:rgba(0,174,239,.2); color:#00AEEF; font-size:12px; padding:5px 14px; border-radius:20px; margin-bottom:14px; border:1px solid rgba(0,174,239,.4); width:fit-content; }
.pc-slide-content h1 { font-size:clamp(30px,4.5vw,54px); font-weight:800; color:#fff; line-height:1.1; margin:0 0 14px; }
.pc-slide-content h1 em { font-style:normal; }
.pc-slide-content p { font-size:15px; color:rgba(255,255,255,.75); margin:0 0 26px; line-height:1.65; max-width:440px; }
.pc-slide-btns { display:flex; gap:12px; flex-wrap:wrap; }
.pc-btn-c { background:#00AEEF; color:#231F20; padding:12px 26px; border-radius:8px; font-size:15px; font-weight:700; }
.pc-btn-c:hover { background:#009fd6; color:#231F20; }
.pc-btn-g { background:transparent; color:#fff; border:2px solid #fff; padding:10px 26px; border-radius:8px; font-size:15px; font-weight:600; }
.pc-btn-g:hover { background:#fff; color:#231F20; }
.pc-slide-dots { position:absolute; bottom:22px; left:80px; display:flex; gap:8px; z-index:10; }
.pc-dot { width:10px; height:10px; border-radius:50%; border:none; background:rgba(255,255,255,.35); cursor:pointer; padding:0; transition:background .2s,transform .2s; }
.pc-dot.active { background:#00AEEF; transform:scale(1.3); }
.pc-arrow { position:absolute; top:50%; transform:translateY(-50%); background:rgba(255,255,255,.15); border:none; color:#fff; width:46px; height:46px; border-radius:50%; font-size:18px; cursor:pointer; z-index:10; display:flex; align-items:center; justify-content:center; transition:background .2s; }
.pc-arrow:hover { background:rgba(255,255,255,.3); }
.pc-arrow-prev { left:16px; }
.pc-arrow-next { right:16px; }
.pc-stats { display:flex; background:#231F20; flex-wrap:wrap; }
.pc-stat { flex:1; min-width:130px; text-align:center; padding:22px 10px; border-right:1px solid rgba(255,255,255,.07); }
.pc-stat:last-child { border-right:none; }
.pc-stat-num { font-size:26px; font-weight:800; }
.pc-stat-lbl { font-size:11px; color:rgba(255,255,255,.5); margin-top:4px; }
.pc-section { padding:64px 40px; }
.pc-section.bg-grey { background:#f5f5f5; }
.pc-section.bg-dark { background:#231F20; }
.pc-section-label { font-size:11px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:#999; margin-bottom:6px; }
.pc-section-title { font-size:clamp(22px,3vw,32px); font-weight:800; color:#231F20; margin:0 0 10px; }
.pc-section-title.w { color:#fff; }
.pc-section-sub { font-size:15px; color:#666; margin:0 0 36px; line-height:1.6; max-width:520px; }
.pc-section-sub.w { color:rgba(255,255,255,.6); }
.pc-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); gap:20px; }
.pc-card { background:#fff; border-radius:14px; overflow:hidden; display:block; box-shadow:0 2px 10px rgba(0,0,0,.06); transition:transform .2s,box-shadow .2s; }
.pc-card:hover { transform:translateY(-4px); box-shadow:0 14px 36px rgba(0,0,0,.13); }
.pc-card-img { height:190px; overflow:hidden; }
.pc-card-img img { width:100%; height:100%; object-fit:cover; transition:transform .3s; }
.pc-card:hover .pc-card-img img { transform:scale(1.06); }
.pc-card-emoji { width:100%; height:190px; display:flex; align-items:center; justify-content:center; font-size:56px; }
.pc-card-body { padding:18px; }
.pc-card-badge { display:inline-block; font-size:11px; padding:3px 10px; border-radius:20px; font-weight:600; margin-bottom:10px; }
.pc-card-title { font-size:16px; font-weight:700; color:#231F20; margin:0 0 5px; }
.pc-card-desc { font-size:13px; color:#666; line-height:1.5; margin:0 0 10px; }
.pc-card-price { font-size:14px; font-weight:700; }
.pc-steps { display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); }
.pc-step { padding:32px 28px; border-right:1px solid rgba(255,255,255,.07); }
.pc-step:last-child { border-right:none; }
.pc-step-num { width:52px; height:52px; border-radius:12px; display:flex; align-items:center; justify-content:center; font-size:22px; font-weight:800; margin-bottom:16px; }
.pc-step-title { font-size:16px; font-weight:700; color:#fff; margin:0 0 8px; }
.pc-step-desc { font-size:13px; color:rgba(255,255,255,.55); line-height:1.6; margin:0; }
.pc-why { display:grid; grid-template-columns:repeat(4,1fr); }
.pc-why-panel { padding:48px 32px; }
.pc-why-icon { font-size:32px; margin-bottom:14px; }
.pc-why-panel h3 { font-size:19px; font-weight:800; margin:0 0 10px; }
.pc-why-panel p { font-size:14px; line-height:1.6; opacity:.85; margin:0; }
.pc-cta { background:linear-gradient(135deg,#EC008C,#00AEEF); padding:72px 40px; text-align:center; }
.pc-cta h2 { font-size:clamp(26px,4vw,42px); font-weight:800; color:#fff; margin:0 0 12px; }
.pc-cta p { font-size:16px; color:rgba(255,255,255,.85); margin:0 0 28px; }
.pc-cta-btn { background:#FFF200; color:#231F20; padding:15px 36px; border-radius:8px; font-size:16px; font-weight:800; display:inline-block; transition:transform .15s; }
.pc-cta-btn:hover { transform:scale(1.03); color:#231F20; }
.pc-footer { background:#0f0e0e; padding:56px 40px 28px; }
.pc-footer-grid { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:40px; margin-bottom:40px; }
.pc-footer-brand { font-size:16px; font-weight:700; color:#fff; margin:0 0 10px; display:flex; align-items:center; gap:8px; }
.pc-footer-text { font-size:13px; color:#888; line-height:1.7; margin:0; }
.pc-footer-heading { font-size:11px; color:#777; font-weight:700; letter-spacing:.08em; text-transform:uppercase; margin:0 0 12px; }
.pc-footer-links li { margin-bottom:8px; }
.pc-footer-links a { font-size:13px; color:#aaa; }
.pc-footer-links a:hover { color:#fff; }
.pc-footer-bottom { border-top:1px solid #1e1e1e; padding-top:22px; display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:10px; }
.pc-footer-copy { font-size:12px; color:#555; margin:0; }
@media(max-width:900px){ .pc-topnav{padding:12px 16px;} .pc-nav-links{display:none;} .pc-slide-content{padding:0 28px;max-width:100%;} .pc-slide-dots{left:28px;} .pc-section{padding:48px 16px;} .pc-why{grid-template-columns:1fr 1fr;} .pc-footer-grid{grid-template-columns:1fr 1fr;} .pc-footer{padding:40px 16px 20px;} .pc-cta{padding:48px 16px;} }
@media(max-width:540px){ .pc-hero{height:360px;} .pc-slide-content h1{font-size:26px;} .pc-why{grid-template-columns:1fr;} .pc-footer-grid{grid-template-columns:1fr;} .pc-stat{min-width:50%;border-bottom:1px solid rgba(255,255,255,.07);} }
