/* =========================================================
   PRINT CITY — brand layer
   White / ink base with controlled CMYK accents.
   This file intentionally overrides the shared Futuristic
   engine stylesheet so both sites retain the same backend
   while presenting as distinct brands.
   ========================================================= */

:root {
    --pc-ink: #2d3b4e;
    --pc-ink-deep: #172231;
    --pc-cyan: #06a9e0;
    --pc-magenta: #e91e63;
    --pc-yellow: #ffd20a;
    --pc-green: #66a73d;
    --pc-paper: #ffffff;
    --pc-off: #f5f6f3;
    --pc-mist: #eef1f4;
    --pc-line: #dce1e6;
    --pc-muted: #687381;
    --navy: var(--pc-ink);
    --navy-2: var(--pc-ink-deep);
    --red: var(--pc-magenta);
    --red-dark: #bd1249;
    --ink: #1d2937;
    --muted: var(--pc-muted);
    --line: var(--pc-line);
    --soft: var(--pc-off);
    --soft-2: var(--pc-mist);
    --radius: 6px;
    --shadow: 0 24px 70px rgba(23, 34, 49, .12);
    --shadow-sm: 0 10px 32px rgba(23, 34, 49, .08);
    --container: 1280px;
}

body.printcity-site {
    background: #fff;
    color: var(--pc-ink-deep);
    font-family: Inter, "Segoe UI", Arial, sans-serif;
    font-size: 16px;
    line-height: 1.6;
    overflow-x: hidden;
}

.printcity-site .container {
    width: min(var(--container), calc(100% - 56px));
}

/* ---------- Header ---------- */
.pc-header {
    position: relative;
    z-index: 1000;
    background: #fff;
    border-bottom: 1px solid var(--pc-line);
}

.pc-header.is-scrolled {
    position: sticky;
    top: 0;
    box-shadow: 0 12px 36px rgba(23, 34, 49, .08);
}

.pc-topbar {
    background: var(--pc-ink-deep);
    color: #fff;
    font-size: 12.5px;
}

.pc-topbar-inner {
    min-height: 34px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
}

.pc-topbar-note,
.pc-topbar-contact {
    display: flex;
    align-items: center;
    gap: 10px;
    white-space: nowrap;
}

.pc-topbar-contact a { color: #fff; opacity: .9; }
.pc-topbar-contact a:hover { opacity: 1; text-decoration: underline; }
.pc-topbar-address { opacity: .68; }

.pc-color-dots { display: inline-flex; gap: 3px; }
.pc-color-dots i { width: 6px; height: 6px; display: block; border-radius: 50%; }
.pc-color-dots i:nth-child(1) { background: var(--pc-cyan); }
.pc-color-dots i:nth-child(2) { background: var(--pc-magenta); }
.pc-color-dots i:nth-child(3) { background: var(--pc-yellow); }
.pc-color-dots i:nth-child(4) { background: #111; }

.pc-mainbar { background: rgba(255,255,255,.98); }
.pc-mainbar-inner {
    min-height: 88px;
    display: grid;
    grid-template-columns: 225px minmax(0, 1fr) auto;
    align-items: center;
    gap: 32px;
}

.pc-brand { display: flex; align-items: center; }
.pc-brand img { width: 205px; max-height: 58px; object-fit: contain; object-position: left center; }

.pc-desktop-nav {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    min-width: 0;
}

.pc-nav-item { position: static; }
.pc-nav-link {
    min-height: 88px;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 0 13px;
    color: #334154;
    font-size: 14px;
    font-weight: 750;
    letter-spacing: -.01em;
    position: relative;
}
.pc-nav-link::after {
    content: "";
    position: absolute;
    left: 13px;
    right: 13px;
    bottom: 0;
    height: 3px;
    background: var(--pc-cyan);
    transform: scaleX(0);
    transform-origin: center;
    transition: .2s ease;
}
.pc-nav-link:hover::after,
.pc-nav-link.active::after { transform: scaleX(1); }
.pc-nav-link.active { color: var(--pc-ink-deep); }
.pc-nav-link span { font-size: 13px; opacity: .65; }

.pc-header-actions { display: flex; align-items: center; gap: 10px; }
.pc-header-search {
    width: 164px;
    height: 42px;
    display: flex;
    border: 1px solid var(--pc-line);
    background: var(--pc-off);
}
.pc-header-search input {
    width: 100%; min-width: 0; border: 0; outline: 0; background: transparent;
    padding: 0 10px 0 13px; font-size: 13px; color: var(--pc-ink-deep);
}
.pc-header-search button {
    width: 40px; border: 0; background: transparent; color: var(--pc-ink-deep);
    font-size: 22px; cursor: pointer;
}
.pc-quote-btn {
    height: 42px;
    padding: 0 17px;
    background: var(--pc-ink-deep);
    color: #fff;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-size: 13px;
    font-weight: 800;
    white-space: nowrap;
    transition: .2s ease;
}
.pc-quote-btn:hover { background: var(--pc-magenta); }
.pc-quote-btn span { font-size: 17px; }

.pc-menu-toggle { display: none; }

.pc-products-nav:hover .pc-products-mega { opacity: 1; visibility: visible; transform: translateY(0); pointer-events: auto; }
.pc-products-mega {
    left: 50%;
    right: auto;
    top: 121px;
    width: min(1180px, calc(100vw - 60px));
    transform: translate(-50%, 10px);
    padding: 0;
    background: #fff;
    border: 1px solid var(--pc-line);
    box-shadow: 0 32px 70px rgba(23, 34, 49, .15);
    border-radius: 0;
    overflow: hidden;
}
.pc-products-nav:hover .pc-products-mega { transform: translate(-50%, 0); }
.pc-mega-head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 30px;
    padding: 25px 28px 20px;
    background: var(--pc-ink-deep);
    color: #fff;
}
.pc-mega-head span { color: #b9c2cc; font-size: 11px; text-transform: uppercase; letter-spacing: .16em; font-weight: 800; }
.pc-mega-head h3 { margin: 5px 0 0; font-size: 23px; line-height: 1.15; letter-spacing: -.03em; }
.pc-mega-head a { color: #fff; font-size: 13px; font-weight: 800; }
.pc-mega-categories {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0;
    padding: 10px 16px;
}
.pc-mega-category { padding: 18px 16px; border-right: 1px solid #edf0f2; }
.pc-mega-category:nth-child(4n) { border-right: 0; }
.pc-mega-cat-title { display: block; font-weight: 900; color: var(--pc-ink-deep); margin-bottom: 7px; font-size: 14px; }
.pc-mega-category > a:not(.pc-mega-cat-title) { display: block; color: #687381; padding: 3px 0; font-size: 12.5px; }
.pc-mega-category > a:hover { color: var(--pc-magenta); }
.pc-mega-foot {
    min-height: 48px;
    padding: 0 28px;
    border-top: 1px solid var(--pc-line);
    background: #fafaf8;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    font-size: 12.5px;
}
.pc-mega-foot a { font-weight: 900; color: var(--pc-magenta); }

/* ---------- Hero ---------- */
.pc-hero {
    position: relative;
    background: #f8f8f5;
    min-height: 720px;
    overflow: hidden;
    border-bottom: 1px solid var(--pc-line);
}
.pc-hero-grid-bg {
    position: absolute;
    inset: 0;
    opacity: .34;
    background-image:
        linear-gradient(to right, rgba(45,59,78,.08) 1px, transparent 1px),
        linear-gradient(to bottom, rgba(45,59,78,.08) 1px, transparent 1px);
    background-size: 56px 56px;
    mask-image: linear-gradient(to right, #000 0 60%, transparent 88%);
}
.pc-hero-grid {
    min-height: 720px;
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    align-items: center;
    gap: 72px;
    position: relative;
    z-index: 1;
}
.pc-hero-copy { padding: 72px 0 74px; position: relative; z-index: 5; }
.pc-eyebrow,
.pc-kicker {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #596676;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .14em;
    text-transform: uppercase;
}
.pc-eyebrow span { width: 34px; height: 3px; background: linear-gradient(90deg,var(--pc-cyan),var(--pc-magenta),var(--pc-yellow)); }
.pc-hero h1 {
    margin: 20px 0 22px;
    color: var(--pc-ink-deep);
    font-size: clamp(68px, 7.4vw, 118px);
    line-height: .82;
    letter-spacing: -.075em;
    font-weight: 950;
}
.pc-hero h1 span {
    color: transparent;
    -webkit-text-stroke: 2px var(--pc-ink-deep);
    text-stroke: 2px var(--pc-ink-deep);
}
.pc-hero-copy > p {
    max-width: 610px;
    margin: 0;
    color: #536172;
    font-size: 19px;
    line-height: 1.6;
}
.pc-hero-actions { display: flex; align-items: center; gap: 22px; margin-top: 32px; }
.pc-btn-dark,
.pc-btn-light,
.pc-btn-outline {
    min-height: 50px;
    padding: 0 21px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    font-size: 13px;
    font-weight: 900;
    transition: .2s ease;
}
.pc-btn-dark { background: var(--pc-ink-deep); color: #fff; }
.pc-btn-dark:hover { background: var(--pc-magenta); transform: translateY(-2px); }
.pc-btn-link { font-weight: 850; font-size: 14px; color: var(--pc-ink-deep); border-bottom: 1px solid #8f9aa6; padding-bottom: 3px; }
.pc-btn-link:hover { color: var(--pc-magenta); border-color: var(--pc-magenta); }
.pc-hero-proof {
    margin-top: 52px;
    padding-top: 23px;
    border-top: 1px solid #cfd5db;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}
.pc-hero-proof div { display: grid; gap: 3px; }
.pc-hero-proof strong { font-size: 14px; color: var(--pc-ink-deep); }
.pc-hero-proof span { font-size: 11px; color: #7a8490; text-transform: uppercase; letter-spacing: .08em; font-weight: 800; }

.pc-hero-visual { position: relative; height: 620px; align-self: end; }
.pc-shot { position: absolute; display: block; background: #fff; box-shadow: 0 22px 55px rgba(23,34,49,.18); overflow: hidden; }
.pc-shot img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.pc-shot:hover img { transform: scale(1.025); }
.pc-shot-main { width: 72%; height: 455px; right: 0; top: 42px; }
.pc-shot-main > span {
    position: absolute; left: 0; right: 0; bottom: 0; padding: 22px 24px;
    background: linear-gradient(transparent, rgba(10,16,24,.88)); color: #fff; display: grid; gap: 3px;
}
.pc-shot-main b { font-size: 19px; }
.pc-shot-main em { font-style: normal; font-size: 12px; opacity: .8; }
.pc-shot-small { width: 38%; height: 220px; border: 8px solid #fff; }
.pc-shot-small span { position: absolute; left: 12px; bottom: 12px; background: #fff; padding: 7px 10px; font-size: 11px; font-weight: 900; }
.pc-shot-car { left: 0; top: 125px; transform: rotate(-4deg); }
.pc-shot-wall { left: 10%; bottom: 18px; transform: rotate(3deg); }
.pc-hero-badge {
    position: absolute; right: 20px; bottom: 36px; z-index: 3;
    width: 122px; height: 122px; border-radius: 50%;
    background: var(--pc-yellow); color: var(--pc-ink-deep);
    display: grid; place-items: center; text-align: center;
    font-size: 15px; line-height: 1.05; letter-spacing: .05em; font-weight: 950;
    transform: rotate(8deg); border: 5px solid #fff; box-shadow: 0 12px 30px rgba(23,34,49,.12);
}
.pc-cmyk-bars { position: absolute; top: 15px; left: 7%; display: flex; gap: 5px; align-items: end; }
.pc-cmyk-bars i { display: block; width: 10px; }
.pc-cmyk-bars i:nth-child(1){height:45px;background:var(--pc-cyan)}
.pc-cmyk-bars i:nth-child(2){height:62px;background:var(--pc-magenta)}
.pc-cmyk-bars i:nth-child(3){height:34px;background:var(--pc-yellow)}
.pc-cmyk-bars i:nth-child(4){height:52px;background:#111}

.pc-marquee { background: var(--pc-ink-deep); color: #fff; overflow: hidden; }
.pc-marquee-track { min-height: 64px; display: flex; align-items: center; justify-content: center; gap: 25px; white-space: nowrap; font-weight: 850; font-size: 13px; text-transform: uppercase; letter-spacing: .07em; }
.pc-marquee-track i { font-style: normal; color: var(--pc-yellow); }

/* ---------- Shared Print City sections ---------- */
.pc-section { padding: 108px 0; }
.pc-section-heading { margin-bottom: 46px; }
.pc-heading-split { display: grid; grid-template-columns: 1.2fr .8fr; gap: 70px; align-items: end; }
.pc-heading-inline { display: flex; align-items: end; justify-content: space-between; gap: 30px; }
.pc-section-heading h2,
.pc-story-title h2,
.pc-custom-copy h2,
.pc-location-inner h2 {
    margin: 12px 0 0;
    color: var(--pc-ink-deep);
    font-size: clamp(42px, 5vw, 72px);
    line-height: .98;
    letter-spacing: -.055em;
    font-weight: 920;
}
.pc-section-aside { max-width: 500px; justify-self: end; }
.pc-section-aside p { margin: 0 0 16px; color: #687483; }
.pc-section-aside a,
.pc-text-arrow { color: var(--pc-ink-deep); font-size: 13px; font-weight: 900; border-bottom: 1px solid #a7b0b9; padding-bottom: 3px; }
.pc-section-aside a:hover,
.pc-text-arrow:hover { color: var(--pc-magenta); border-color: var(--pc-magenta); }

/* Category mosaic */
.pc-category-section { background: #fff; }
.pc-category-mosaic {
    display: grid;
    grid-template-columns: 1.15fr .85fr .85fr;
    grid-template-rows: 320px 260px;
    gap: 14px;
}
.pc-cat-card { position: relative; overflow: hidden; padding: 28px; display: flex; flex-direction: column; justify-content: space-between; min-height: 240px; transition: transform .2s ease; }
.pc-cat-card:hover { transform: translateY(-3px); }
.pc-cat-card h3 { margin: 7px 0 18px; font-size: 34px; line-height: .98; letter-spacing: -.045em; }
.pc-cat-card small { font-size: 11px; text-transform: uppercase; letter-spacing: .08em; font-weight: 850; opacity: .72; }
.pc-cat-card b { font-size: 12px; }
.pc-cat-no { font-size: 11px; font-weight: 900; letter-spacing: .12em; opacity: .7; }
.pc-cat-card-wide { grid-row: 1 / span 2; }
.pc-cat-navy { background: var(--pc-ink-deep); color: #fff; }
.pc-cat-navy h3 { font-size: 52px; }
.pc-cat-yellow { background: var(--pc-yellow); color: var(--pc-ink-deep); }
.pc-cat-cyan { background: var(--pc-cyan); color: #fff; }
.pc-cat-image { padding: 0; color: #fff; }
.pc-cat-image > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.pc-cat-overlay { position: absolute; inset: 0; padding: 26px; display: flex; flex-direction: column; justify-content: space-between; background: linear-gradient(180deg, rgba(12,19,28,.05), rgba(12,19,28,.82)); }
.pc-cat-overlay h3 { margin-top: auto; }
.pc-cat-wide-bottom { grid-column: 2 / span 2; }
.pc-cat-shape { position: absolute; width: 240px; height: 240px; border: 46px solid var(--pc-magenta); border-radius: 50%; right: -85px; top: 45px; opacity: .9; }
.pc-cat-shape::after { content:""; position:absolute; width:90px; height:240px; background:var(--pc-cyan); transform:rotate(38deg); left:-105px; top:58px; }

/* Story */
.pc-story-section { background: var(--pc-off); border-top: 1px solid var(--pc-line); border-bottom: 1px solid var(--pc-line); }
.pc-story-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 45px 80px; }
.pc-story-title h2 { max-width: 620px; }
.pc-story-copy { padding-top: 26px; }
.pc-story-copy p { color: #657181; max-width: 600px; }
.pc-story-lead { color: var(--pc-ink-deep)!important; font-size: 21px; font-weight: 650; line-height: 1.45; }
.pc-story-actions { display: flex; gap: 10px; margin-top: 28px; }
.pc-btn-outline { border: 1px solid #aab3bc; color: var(--pc-ink-deep); background: transparent; }
.pc-btn-outline:hover { background: #fff; border-color: var(--pc-ink-deep); }
.pc-story-stat { min-height: 90px; border-top: 1px solid #cfd5db; padding-top: 18px; display: flex; align-items: start; gap: 22px; }
.pc-story-stat strong { font-size: 12px; color: var(--pc-magenta); letter-spacing: .1em; }
.pc-story-stat span { font-size: 15px; font-weight: 850; }
.pc-story-stat-3 { grid-column: 2; }

/* Products */
.pc-featured-section { background: #fff; }
.pc-product-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.pc-product-card { background: #fff; border: 1px solid var(--pc-line); min-width: 0; transition: .25s ease; }
.pc-product-card:hover { transform: translateY(-5px); box-shadow: var(--shadow-sm); }
.pc-product-card figure { margin: 0; aspect-ratio: 1 / .82; background: #f1f2ef; overflow: hidden; }
.pc-product-card figure img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.pc-product-card:hover figure img { transform: scale(1.035); }
.pc-product-card-body { padding: 19px 19px 20px; min-height: 142px; display: grid; grid-template-columns: 30px 1fr; gap: 5px 10px; align-content: start; }
.pc-product-card-body > span { color: var(--pc-magenta); font-size: 10px; letter-spacing: .1em; font-weight: 900; }
.pc-product-card-body h3 { grid-column: 2; margin: 0; font-size: 19px; line-height: 1.15; letter-spacing: -.025em; }
.pc-product-card-body b { grid-column: 2; margin-top: 14px; font-size: 11px; color: #7a8490; }

/* Custom dark panel */
.pc-custom-section { padding: 0 0 108px; background: #fff; }
.pc-custom-panel { min-height: 470px; background: var(--pc-ink-deep); color: #fff; display: grid; grid-template-columns: .8fr 1.2fr; align-items: center; position: relative; overflow: hidden; }
.pc-custom-art { min-height: 470px; position: relative; overflow: hidden; }
.pc-custom-art span { position: absolute; display: block; }
.pc-art-magenta { width: 300px; height: 300px; background: var(--pc-magenta); border-radius: 50%; left: -70px; top: 70px; }
.pc-art-yellow { width: 150px; height: 500px; background: var(--pc-yellow); transform: rotate(27deg); left: 185px; top: -120px; }
.pc-art-cyan { width: 220px; height: 220px; border: 45px solid var(--pc-cyan); right: 15px; bottom: -65px; }
.pc-custom-art strong { position: absolute; z-index: 3; left: 155px; top: 105px; font-size: 230px; line-height: 1; color: #fff; font-weight: 950; }
.pc-custom-copy { padding: 58px 74px 58px 44px; position: relative; z-index: 5; }
.pc-custom-copy h2 { color: #fff; max-width: 700px; }
.pc-custom-copy p { max-width: 650px; color: #bdc5ce; font-size: 17px; }
.pc-kicker-light { color: #c3cad2; }
.pc-btn-light { background: #fff; color: var(--pc-ink-deep); margin-top: 14px; }
.pc-btn-light:hover { background: var(--pc-yellow); }

/* Work */
.pc-work-section { background: var(--pc-off); }
.pc-work-grid { display: grid; grid-template-columns: 1.15fr .85fr .85fr; grid-auto-rows: 300px; gap: 14px; }
.pc-work-card { position: relative; overflow: hidden; min-height: 280px; background: #ddd; }
.pc-work-lead { grid-row: span 2; }
.pc-work-card figure { position: absolute; inset: 0; margin: 0; }
.pc-work-card img { width: 100%; height: 100%; object-fit: cover; transition: .4s ease; }
.pc-work-card:hover img { transform: scale(1.03); }
.pc-work-card > div { position: absolute; left: 0; right: 0; bottom: 0; padding: 35px 24px 22px; background: linear-gradient(transparent, rgba(13,20,29,.9)); color: #fff; }
.pc-work-card span { font-size: 10px; text-transform: uppercase; letter-spacing: .11em; opacity: .74; font-weight: 800; }
.pc-work-card h3 { margin: 5px 0 0; font-size: 21px; line-height: 1.15; }

/* Process */
.pc-process-section { background: #fff; }
.pc-process-grid { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--pc-line); border-bottom: 1px solid var(--pc-line); }
.pc-process-step { padding: 34px 28px 38px; border-right: 1px solid var(--pc-line); min-height: 260px; }
.pc-process-step:last-child { border-right: 0; }
.pc-process-step > span { display: inline-grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: var(--pc-ink-deep); color: #fff; font-size: 10px; font-weight: 900; }
.pc-process-step:nth-child(2) > span { background: var(--pc-cyan); }
.pc-process-step:nth-child(3) > span { background: var(--pc-magenta); }
.pc-process-step:nth-child(4) > span { background: #d3ad00; }
.pc-process-step h3 { font-size: 21px; margin: 28px 0 9px; }
.pc-process-step p { color: #717c88; font-size: 14px; }

/* Location */
.pc-location-strip { background: var(--pc-yellow); padding: 64px 0; color: var(--pc-ink-deep); }
.pc-location-inner { display: grid; grid-template-columns: 1.25fr .75fr; gap: 60px; align-items: end; }
.pc-location-inner > div > span { text-transform: uppercase; letter-spacing: .12em; font-size: 10px; font-weight: 900; }
.pc-location-inner h2 { font-size: 50px }
.pc-location-details { border-left: 1px solid rgba(23,34,49,.32); padding-left: 32px; display: grid; gap: 6px; }
.pc-location-details p { margin: 0 0 8px; font-size: 15px; font-weight: 700; }
.pc-location-details a { font-size: 16px; font-weight: 900; }

/* ---------- Footer ---------- */
.pc-footer { background: #111923; color: #fff; padding: 0 0 24px; }
.pc-footer .container { position: relative; }
.pc-footer-cta { display: grid; grid-template-columns: 120px 1fr auto; gap: 34px; align-items: center; padding: 58px 0 54px; border-bottom: 1px solid rgba(255,255,255,.12); }
.pc-footer-cta-mark { height: 100px; display: flex; align-items: end; gap: 6px; }
.pc-footer-cta-mark span { width: 20px; display: block; }
.pc-footer-cta-mark span:nth-child(1){height:62px;background:var(--pc-cyan)}
.pc-footer-cta-mark span:nth-child(2){height:84px;background:var(--pc-magenta)}
.pc-footer-cta-mark span:nth-child(3){height:72px;background:var(--pc-yellow)}
.pc-footer-cta-mark span:nth-child(4){height:100px;background:#fff}
.pc-footer-cta-copy > span { color: #98a5b3; font-size: 10px; text-transform: uppercase; letter-spacing: .14em; font-weight: 800; }
.pc-footer-cta h2 { margin: 6px 0 8px; font-size: 36px; letter-spacing: -.035em; line-height: 1.05; }
.pc-footer-cta p { margin: 0; color: #9ea9b5; max-width: 670px; font-size: 14px; }
.pc-footer-cta-actions { display: grid; gap: 8px; min-width: 190px; }
.pc-footer-primary { min-height: 48px; padding: 0 17px; background: #fff; color: var(--pc-ink-deep); display: flex; align-items: center; justify-content: space-between; font-weight: 900; font-size: 12px; }
.pc-footer-primary:hover { background: var(--pc-yellow); }
.pc-footer-call { color: #c1c9d2; font-size: 12px; text-align: center; padding: 6px; }
.pc-footer-grid { padding: 50px 0; display: grid; grid-template-columns: 1.5fr .7fr .85fr 1fr; gap: 54px; }
.pc-footer-logo-box { display: inline-flex; background: #fff; padding: 10px 13px; }
.pc-footer-logo img { width: 195px; height: auto; }
.pc-footer-brand p { color: #99a5b1; max-width: 340px; font-size: 13px; margin: 20px 0 15px; }
.pc-footer-since { display: inline-block; border: 1px solid rgba(255,255,255,.18); padding: 6px 9px; color: #c5ced7; font-size: 10px; text-transform: uppercase; letter-spacing: .1em; }
.pc-footer h4 { margin: 0 0 16px; font-size: 11px; text-transform: uppercase; letter-spacing: .12em; color: #758393; }
.pc-footer-links { display: grid; align-content: start; gap: 9px; }
.pc-footer-links a,
.pc-footer-contact a { color: #dce2e8; font-size: 13px; }
.pc-footer-links a:hover,
.pc-footer-contact a:hover { color: var(--pc-yellow); }
.pc-footer-contact { display: grid; align-content: start; gap: 8px; }
.pc-footer-contact p { margin: 0 0 4px; color: #9da8b3; font-size: 13px; }
.pc-footer-actions-small { margin-top: 10px; padding-top: 12px; border-top: 1px solid rgba(255,255,255,.1); display: flex; gap: 12px; flex-wrap: wrap; }
.pc-footer-actions-small a { font-size: 11px; font-weight: 800; }
.pc-footer-bottom { padding-top: 19px; border-top: 1px solid rgba(255,255,255,.1); display: grid; grid-template-columns: 1fr auto 1fr; gap: 20px; align-items: center; color: #788594; font-size: 10px; }
.pc-footer-bottom > span:last-child { text-align: right; }
.pc-footer-bottom div { display: flex; gap: 16px; }
.pc-footer-bottom a:hover { color: #fff; }

/* ---------- Shared legacy pages, redesigned by skin ---------- */
.printcity-site .page-hero {
    background: var(--pc-ink-deep);
    color: #fff;
    padding: 88px 0 82px;
    position: relative;
    overflow: hidden;
}
.printcity-site .page-hero::before {
    content:""; position:absolute; width:420px; height:420px; right:-130px; top:-190px;
    border:72px solid var(--pc-cyan); border-radius:50%; opacity:.95;
}
.printcity-site .page-hero::after {
    content:""; position:absolute; width:95px; height:480px; right:220px; top:-170px;
    background:var(--pc-magenta); transform:rotate(29deg); opacity:.88;
}
.printcity-site .page-hero .container { position: relative; z-index: 2; }
.printcity-site .page-hero .kicker { color: #b8c1ca; text-transform: uppercase; letter-spacing: .14em; font-size: 10px; font-weight: 900; }
.printcity-site .page-hero h1 { max-width: 830px; margin: 12px 0 15px; font-size: clamp(44px,6vw,78px); line-height: .98; letter-spacing: -.055em; color: #fff; }
.printcity-site .page-hero p { max-width: 700px; margin: 0; color: #bbc4cd; font-size: 17px; }
.printcity-site .page-hero-grid { display:grid; grid-template-columns:1fr 320px; gap:40px; align-items:end; }
.printcity-site .hero-quote-card { background:var(--pc-yellow); color:var(--pc-ink-deep); padding:24px; min-height:150px; display:grid; align-content:center; border-radius:0; }
.printcity-site .hero-quote-card span { font-size:10px; text-transform:uppercase; letter-spacing:.11em; font-weight:900; }
.printcity-site .hero-quote-card strong { font-size:20px; line-height:1.15; margin:5px 0; }
.printcity-site .hero-quote-card em { font-size:11px; font-style:normal; }

.printcity-site .section { padding: 88px 0; }
.printcity-site .section.soft { background: var(--pc-off); }
.printcity-site .primary-btn,
.printcity-site .submit-btn,
.printcity-site .btn-red { border-radius:0; background:var(--pc-ink-deep); color:#fff; box-shadow:none; border:0; font-weight:900; }
.printcity-site .primary-btn:hover,
.printcity-site .submit-btn:hover,
.printcity-site .btn-red:hover { background:var(--pc-magenta); transform:translateY(-1px); }
.printcity-site .ghost-btn { border-radius:0; border:1px solid #aab3bc; background:#fff; color:var(--pc-ink-deep); }
.printcity-site .ghost-btn:hover { border-color:var(--pc-ink-deep); background:var(--pc-off); }
.printcity-site .eyebrow,
.printcity-site .card-label { color:var(--pc-magenta); }

/* Product catalog */
.printcity-site .product-layout { grid-template-columns:250px 1fr; gap:36px; }
.printcity-site .sidebar { border-radius:0; box-shadow:none; border:1px solid var(--pc-line); background:#fff; padding:0; overflow:hidden; }
.printcity-site .sidebar h3 { margin:0; padding:20px 19px; background:var(--pc-ink-deep); color:#fff; font-size:14px; }
.printcity-site .sidebar a { border:0; border-bottom:1px solid #edf0f2; border-radius:0; padding:13px 17px; font-size:13px; }
.printcity-site .sidebar a:hover { background:#fafaf7; color:var(--pc-magenta); }
.printcity-site .sidebar a.active { background:var(--pc-yellow); color:var(--pc-ink-deep); }
.printcity-site .products-topbar { border-radius:0; border:0; border-bottom:1px solid var(--pc-line); background:transparent; padding:0 0 17px; margin-bottom:20px; }
.printcity-site .grid-3 { gap:14px; }
.printcity-site .product-card,
.printcity-site .portfolio-card,
.printcity-site .elevated-card { border-radius:0; border:1px solid var(--pc-line); box-shadow:none; overflow:hidden; background:#fff; }
.printcity-site .product-card:hover,
.printcity-site .portfolio-card:hover { box-shadow:var(--shadow-sm); transform:translateY(-3px); }
.printcity-site .product-card figure { background:#ecefeb; aspect-ratio:4/3; }
.printcity-site .product-card figure img { object-fit:cover; }
.printcity-site .product-card .card-body,
.printcity-site .portfolio-card .card-body { padding:18px; }
.printcity-site .product-card h3,
.printcity-site .portfolio-card h3 { letter-spacing:-.025em; }
.printcity-site .arrow-link { color:var(--pc-ink-deep); font-weight:900; }
.printcity-site .arrow-link:hover { color:var(--pc-magenta); }
.printcity-site .page-number,
.printcity-site .page-control { border-radius:0; }
.printcity-site .page-number.active { background:var(--pc-ink-deep); border-color:var(--pc-ink-deep); }

/* Forms and contact */
.printcity-site .contact-grid { gap:18px; }
.printcity-site .contact-card,
.printcity-site .quote-box { border-radius:0; box-shadow:none; border:1px solid var(--pc-line); background:#fff; }
.printcity-site .contact-card { position:relative; overflow:hidden; }
.printcity-site .contact-card::before { content:""; display:block; height:6px; background:linear-gradient(90deg,var(--pc-cyan) 0 25%,var(--pc-magenta) 25% 50%,var(--pc-yellow) 50% 75%,#1a1a1a 75%); position:absolute; left:0; right:0; top:0; }
.printcity-site .contact-icon { border-radius:0; background:var(--pc-off); color:var(--pc-ink-deep); }
.printcity-site .field input,
.printcity-site .field textarea,
.printcity-site .field select { border-radius:0; border:1px solid #ccd3da; background:#fff; }
.printcity-site .field input:focus,
.printcity-site .field textarea:focus,
.printcity-site .field select:focus { border-color:var(--pc-cyan); box-shadow:0 0 0 3px rgba(6,169,224,.12); }

/* Portfolio */
.printcity-site .filters { gap:7px; }
.printcity-site .filter-pill { border-radius:0; font-size:11px; text-transform:uppercase; letter-spacing:.06em; font-weight:850; }
.printcity-site .filter-pill.active { background:var(--pc-ink-deep); border-color:var(--pc-ink-deep); }
.printcity-site .portfolio-card figure { aspect-ratio:1.35/1; }
.printcity-site .portfolio-card figure img { width:100%; height:100%; object-fit:cover; }

/* Product detail */
.printcity-site .fs-product-detail-page { background:#fff; }
.printcity-site .fs-product-gallery-card,
.printcity-site .fs-product-info-card,
.printcity-site .fs-product-overview-card,
.printcity-site .fs-product-bestfor-card,
.printcity-site .fs-pd-feature-card,
.printcity-site .fs-related-card { border-radius:0; box-shadow:none; border:1px solid var(--pc-line); }
.printcity-site .fs-product-info-card { border-top:6px solid var(--pc-yellow); }
.printcity-site .fs-product-kicker { color:var(--pc-magenta); }
.printcity-site .fs-product-mini-specs > div { border-radius:0; }
.printcity-site .fs-quote-dialog { border-radius:0; }

/* About page inherited sections */
.printcity-site .fs-about-hero { background:var(--pc-off); }
.printcity-site .fs-about-hero-card,
.printcity-site .fs-about-logo-box,
.printcity-site .fs-about-service-card,
.printcity-site .fs-about-values-panel { border-radius:0; }
.printcity-site .fs-about-hero-card { border:1px solid var(--pc-line); box-shadow:none; }
.printcity-site .fs-about-logo-box { background:#fff; }
.printcity-site .fs-about-logo-box img { width:min(100%,460px); }
.printcity-site .fs-about-service-card:nth-child(1){border-top:5px solid var(--pc-cyan)}
.printcity-site .fs-about-service-card:nth-child(2){border-top:5px solid var(--pc-magenta)}
.printcity-site .fs-about-service-card:nth-child(3){border-top:5px solid var(--pc-yellow)}
.printcity-site .fs-about-service-card:nth-child(4){border-top:5px solid var(--pc-ink-deep)}

/* Service page inherited */
.printcity-site [class*="service-card"],
.printcity-site [class*="services-card"] { border-radius:0; }

/* Admin login logo adaptation */
.login-card img { max-width:250px; }

/* ---------- Mobile ---------- */
@media (max-width: 1180px) {
    .pc-mainbar-inner { grid-template-columns: 195px 1fr auto; gap:18px; }
    .pc-brand img { width:180px; }
    .pc-nav-link { padding-inline:9px; font-size:13px; }
    .pc-header-search { display:none; }
    .pc-hero-grid { gap:36px; }
    .pc-cat-navy h3 { font-size:44px; }
}

@media (max-width: 980px) {
    .pc-topbar-address { display:none; }
    .pc-mainbar-inner { min-height:76px; grid-template-columns:1fr auto; }
    .pc-desktop-nav,.pc-header-actions { display:none; }
    .pc-menu-toggle { display:flex; width:44px; height:44px; background:var(--pc-ink-deep); border:0; padding:12px; flex-direction:column; justify-content:center; gap:5px; }
    .pc-menu-toggle span { width:100%; height:2px; background:#fff; }
    .pc-brand img { width:185px; }
    .pc-mobile-panel { z-index:1100; }
    .pc-mobile-panel .mobile-panel-head img { width:190px; max-height:50px; object-fit:contain; object-position:left center; }

    .pc-hero,.pc-hero-grid { min-height:auto; }
    .pc-hero-grid { grid-template-columns:1fr; padding-top:20px; }
    .pc-hero-copy { padding:60px 0 10px; }
    .pc-hero h1 { font-size:clamp(64px,13vw,100px); }
    .pc-hero-visual { height:570px; max-width:760px; width:100%; margin:0 auto; }
    .pc-shot-main { width:72%; }

    .pc-category-mosaic { grid-template-columns:1fr 1fr; grid-template-rows:auto; }
    .pc-cat-card-wide { grid-row:auto; min-height:360px; }
    .pc-cat-wide-bottom { grid-column:1 / span 2; min-height:300px; }
    .pc-heading-split { grid-template-columns:1fr; gap:24px; }
    .pc-section-aside { justify-self:start; }
    .pc-story-grid { grid-template-columns:1fr; gap:26px; }
    .pc-story-stat-3 { grid-column:auto; }
    .pc-product-grid { grid-template-columns:repeat(2,1fr); }
    .pc-custom-panel { grid-template-columns:.75fr 1.25fr; }
    .pc-custom-copy { padding-right:42px; }
    .pc-work-grid { grid-template-columns:1fr 1fr; }
    .pc-work-lead { grid-row:span 2; }
    .pc-process-grid { grid-template-columns:1fr 1fr; }
    .pc-process-step:nth-child(2) { border-right:0; }
    .pc-process-step:nth-child(-n+2) { border-bottom:1px solid var(--pc-line); }
    .pc-location-inner { grid-template-columns:1fr 1fr; }
    .pc-footer-grid { grid-template-columns:1.3fr 1fr 1fr; }
    .pc-footer-contact { grid-column:1 / span 3; border-top:1px solid rgba(255,255,255,.1); padding-top:26px; }
    .pc-footer-cta { grid-template-columns:85px 1fr; }
    .pc-footer-cta-actions { grid-column:2; display:flex; align-items:center; }

    .printcity-site .product-layout { grid-template-columns:1fr; }
    .printcity-site .sidebar { display:flex; flex-wrap:wrap; }
    .printcity-site .sidebar h3 { width:100%; }
    .printcity-site .sidebar a { flex:1 1 180px; border-right:1px solid #edf0f2; }
}

@media (max-width: 680px) {
    .printcity-site .container { width:min(100% - 32px, var(--container)); }
    .pc-topbar-inner { min-height:40px; justify-content:center; }
    .pc-topbar-note { display:none; }
    .pc-topbar-contact { font-size:11px; gap:7px; }
    .pc-mainbar-inner { min-height:70px; }
    .pc-brand img { width:165px; }
    .pc-section { padding:74px 0; }
    .pc-section-heading h2,.pc-story-title h2,.pc-custom-copy h2 { font-size:44px; }
    .pc-heading-inline { align-items:start; flex-direction:column; }

    .pc-hero-copy { padding-top:50px; }
    .pc-hero h1 { font-size:clamp(58px,18vw,84px); }
    .pc-hero h1 span { -webkit-text-stroke:1.5px var(--pc-ink-deep); }
    .pc-hero-copy > p { font-size:16px; }
    .pc-hero-actions { align-items:flex-start; flex-direction:column; gap:15px; }
    .pc-hero-proof { grid-template-columns:1fr 1fr; gap:18px; }
    .pc-hero-proof div:last-child { grid-column:1 / span 2; }
    .pc-hero-visual { height:440px; }
    .pc-shot-main { width:80%; height:330px; top:34px; }
    .pc-shot-small { width:36%; height:150px; border-width:5px; }
    .pc-shot-car { top:100px; }
    .pc-shot-wall { bottom:14px; }
    .pc-hero-badge { width:90px; height:90px; right:0; bottom:18px; font-size:11px; }
    .pc-cmyk-bars { left:0; }
    .pc-marquee-track { justify-content:flex-start; overflow:hidden; padding-left:20px; min-height:56px; gap:18px; }

    .pc-category-mosaic { grid-template-columns:1fr; }
    .pc-cat-card,.pc-cat-card-wide,.pc-cat-wide-bottom { grid-column:auto; min-height:280px; }
    .pc-cat-navy h3 { font-size:43px; }
    .pc-story-actions { flex-direction:column; align-items:stretch; }
    .pc-product-grid { grid-template-columns:1fr; }
    .pc-custom-section { padding-bottom:74px; }
    .pc-custom-panel { grid-template-columns:1fr; }
    .pc-custom-art { min-height:260px; }
    .pc-art-magenta { width:200px; height:200px; top:28px; }
    .pc-art-yellow { height:340px; left:140px; }
    .pc-art-cyan { width:140px; height:140px; border-width:28px; }
    .pc-custom-art strong { left:105px; top:45px; font-size:155px; }
    .pc-custom-copy { padding:40px 26px 48px; }
    .pc-work-grid { grid-template-columns:1fr; grid-auto-rows:280px; }
    .pc-work-lead { grid-row:auto; }
    .pc-process-grid { grid-template-columns:1fr; }
    .pc-process-step { border-right:0; border-bottom:1px solid var(--pc-line); min-height:auto; }
    .pc-process-step:last-child { border-bottom:0; }
    .pc-location-inner { grid-template-columns:1fr; gap:30px; }
    .pc-location-details { padding-left:0; padding-top:20px; border-left:0; border-top:1px solid rgba(23,34,49,.28); }

    .pc-footer-cta { grid-template-columns:1fr; gap:22px; }
    .pc-footer-cta-mark { height:65px; }
    .pc-footer-cta-mark span { width:14px; }
    .pc-footer-cta-mark span:nth-child(1){height:40px}.pc-footer-cta-mark span:nth-child(2){height:55px}.pc-footer-cta-mark span:nth-child(3){height:47px}.pc-footer-cta-mark span:nth-child(4){height:65px}
    .pc-footer-cta-actions { grid-column:auto; flex-direction:column; align-items:stretch; }
    .pc-footer-grid { grid-template-columns:1fr 1fr; gap:34px 28px; }
    .pc-footer-brand { grid-column:1 / span 2; }
    .pc-footer-contact { grid-column:1 / span 2; }
    .pc-footer-bottom { grid-template-columns:1fr; text-align:left; }
    .pc-footer-bottom > span:last-child { text-align:left; }

    .printcity-site .page-hero { padding:68px 0 64px; }
    .printcity-site .page-hero::before { width:250px; height:250px; right:-120px; top:-100px; border-width:44px; }
    .printcity-site .page-hero::after { display:none; }
    .printcity-site .page-hero h1 { font-size:48px; }
    .printcity-site .page-hero-grid { grid-template-columns:1fr; }
    .printcity-site .hero-quote-card { max-width:360px; }
    .printcity-site .section { padding:70px 0; }
}

/* ---------- Print City About ---------- */
.pc-about-hero { background:#f7f7f3; border-bottom:1px solid var(--pc-line); overflow:hidden; }
.pc-about-hero-grid { min-height:610px; display:grid; grid-template-columns:1.08fr .92fr; align-items:center; gap:70px; }
.pc-about-copy h1 { margin:14px 0 22px; max-width:760px; font-size:clamp(50px,6.3vw,88px); line-height:.95; letter-spacing:-.06em; color:var(--pc-ink-deep); }
.pc-about-copy > p { max-width:680px; color:#637080; font-size:18px; }
.pc-about-actions { display:flex; gap:10px; margin-top:30px; }
.pc-about-mark { min-height:430px; position:relative; background:var(--pc-ink-deep); overflow:hidden; }
.pc-about-mark-logo { position:absolute; left:42px; right:42px; top:52px; background:#fff; padding:20px; z-index:4; }
.pc-about-mark-logo img { width:100%; }
.pc-about-year { position:absolute; left:42px; bottom:42px; color:#fff; display:grid; }
.pc-about-year strong { font-size:72px; line-height:.8; letter-spacing:-.06em; }
.pc-about-year span { margin-top:10px; text-transform:uppercase; letter-spacing:.13em; font-size:10px; color:#aeb8c2; font-weight:800; }
.pc-about-bars { position:absolute; right:30px; bottom:0; height:230px; display:flex; align-items:end; gap:8px; opacity:.92; }
.pc-about-bars i { width:35px; display:block; }
.pc-about-bars i:nth-child(1){height:130px;background:var(--pc-cyan)}
.pc-about-bars i:nth-child(2){height:190px;background:var(--pc-magenta)}
.pc-about-bars i:nth-child(3){height:155px;background:var(--pc-yellow)}
.pc-about-bars i:nth-child(4){height:230px;background:#fff}
.pc-about-story { background:#fff; }
.pc-about-story-grid { display:grid; grid-template-columns:.95fr 1.05fr; gap:90px; }
.pc-about-story h2 { margin:13px 0 0; font-size:clamp(42px,5vw,68px); line-height:1; letter-spacing:-.05em; }
.pc-about-story-copy { padding-top:20px; color:#657181; }
.pc-about-story-copy .lead { color:var(--pc-ink-deep); font-size:21px; line-height:1.45; font-weight:700; }
.pc-about-capabilities { background:var(--pc-ink-deep); color:#fff; }
.pc-about-cap-grid { display:grid; grid-template-columns:repeat(4,1fr); }
.pc-about-cap-grid article { min-height:300px; padding:42px 30px; border-right:1px solid rgba(255,255,255,.12); }
.pc-about-cap-grid article:last-child { border-right:0; }
.pc-about-cap-grid span { font-size:10px; color:#9ba7b3; letter-spacing:.12em; font-weight:900; }
.pc-about-cap-grid h3 { font-size:27px; margin:52px 0 12px; }
.pc-about-cap-grid p { color:#aeb8c2; font-size:14px; }
.pc-about-cap-grid article:nth-child(1){border-top:6px solid var(--pc-cyan)}
.pc-about-cap-grid article:nth-child(2){border-top:6px solid var(--pc-magenta)}
.pc-about-cap-grid article:nth-child(3){border-top:6px solid var(--pc-yellow)}
.pc-about-cap-grid article:nth-child(4){border-top:6px solid #fff}
.pc-about-philosophy { background:var(--pc-off); }
.pc-about-philosophy-grid { display:grid; grid-template-columns:.82fr 1.18fr; gap:72px; align-items:center; }
.pc-about-philosophy-art { height:480px; background:#fff; border:1px solid var(--pc-line); position:relative; overflow:hidden; }
.pc-about-philosophy-art span { position:absolute; display:block; }
.pc-about-philosophy-art .cyan { width:270px;height:270px;border:52px solid var(--pc-cyan);border-radius:50%;left:-70px;top:65px; }
.pc-about-philosophy-art .magenta { width:90px;height:520px;background:var(--pc-magenta);transform:rotate(31deg);left:210px;top:-60px; }
.pc-about-philosophy-art .yellow { width:220px;height:220px;background:var(--pc-yellow);right:-80px;bottom:-50px; }
.pc-about-philosophy-art strong { position:absolute; z-index:3; left:118px; top:150px; font-size:112px; letter-spacing:-.08em; color:var(--pc-ink-deep); }
.pc-about-philosophy-copy h2 { margin:12px 0 20px; font-size:clamp(42px,5vw,68px); line-height:1; letter-spacing:-.05em; }
.pc-about-philosophy-copy > p { color:#657181; font-size:17px; max-width:650px; }
.pc-about-values { margin-top:28px; border-top:1px solid #cfd5db; }
.pc-about-values div { display:grid; grid-template-columns:180px 1fr; gap:25px; padding:17px 0; border-bottom:1px solid #cfd5db; }
.pc-about-values strong { font-size:13px; }
.pc-about-values span { color:#77828e; font-size:13px; }
.pc-about-process { background:#fff; }
@media(max-width:900px){.pc-about-hero-grid,.pc-about-story-grid,.pc-about-philosophy-grid{grid-template-columns:1fr}.pc-about-hero-grid{padding:60px 0}.pc-about-mark{min-height:390px}.pc-about-cap-grid{grid-template-columns:1fr 1fr}.pc-about-cap-grid article:nth-child(2){border-right:0}.pc-about-cap-grid article:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.12)}}
@media(max-width:620px){.pc-about-copy h1{font-size:52px}.pc-about-actions{flex-direction:column}.pc-about-cap-grid{grid-template-columns:1fr}.pc-about-cap-grid article{border-right:0;border-bottom:1px solid rgba(255,255,255,.12);min-height:240px}.pc-about-philosophy-art{height:340px}.pc-about-values div{grid-template-columns:1fr;gap:5px}}

/* ---------- Print City Services ---------- */
.pc-services-hero { background:#fff; overflow:hidden; border-bottom:1px solid var(--pc-line); }
.pc-services-hero-grid { min-height:520px; padding:90px 0 70px; display:grid; grid-template-columns:1.15fr .85fr; gap:80px; align-items:end; }
.pc-services-hero h1 { margin:14px 0 0; max-width:850px; font-size:clamp(58px,7vw,96px); line-height:.91; letter-spacing:-.065em; color:var(--pc-ink-deep); }
.pc-services-hero-side { max-width:500px; padding-bottom:8px; }
.pc-services-hero-side p { color:#657181; font-size:18px; margin:0 0 25px; }
.pc-service-ribbon { min-height:75px; background:var(--pc-yellow); color:var(--pc-ink-deep); display:flex; align-items:center; justify-content:center; gap:34px; font-size:13px; font-weight:950; letter-spacing:.12em; }
.pc-service-ribbon i { width:8px;height:8px;background:var(--pc-magenta);transform:rotate(45deg); }
.pc-service-list-section { background:var(--pc-off); }
.pc-services-editorial-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.pc-service-card { display:grid; grid-template-columns:48px 190px 1fr; min-height:210px; background:#fff; border:1px solid var(--pc-line); overflow:hidden; transition:.2s ease; }
.pc-service-card:hover { transform:translateY(-3px); box-shadow:var(--shadow-sm); }
.pc-service-card-number { padding:20px 0; text-align:center; font-size:10px; font-weight:900; letter-spacing:.1em; color:var(--pc-magenta); border-right:1px solid var(--pc-line); }
.pc-service-card figure { margin:0; min-height:210px; overflow:hidden; }
.pc-service-card figure img { width:100%;height:100%;object-fit:cover; }
.pc-service-card-copy { padding:28px 26px; display:flex; flex-direction:column; align-items:flex-start; }
.pc-service-card-copy h3 { margin:0 0 9px; font-size:22px; letter-spacing:-.03em; }
.pc-service-card-copy p { margin:0; color:#6e7985; font-size:13px; display:-webkit-box; -webkit-line-clamp:4; -webkit-box-orient:vertical; overflow:hidden; }
.pc-service-card-copy a { margin-top:auto; padding-top:14px; font-size:11px; font-weight:900; color:var(--pc-ink-deep); }
.pc-service-card-copy a:hover { color:var(--pc-magenta); }
.pc-service-format-section { background:var(--pc-ink-deep); color:#fff; padding:100px 0; }
.pc-service-format-grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:75px; }
.pc-format-intro h2 { margin:13px 0 18px; font-size:clamp(48px,5vw,72px); line-height:.95; letter-spacing:-.055em; color:#fff; }
.pc-format-intro p { color:#aab4bf; max-width:500px; }
.pc-format-cards { display:grid; gap:0; border-top:1px solid rgba(255,255,255,.14); }
.pc-format-cards article { padding:25px 0 28px; border-bottom:1px solid rgba(255,255,255,.14); display:grid; grid-template-columns:140px 1fr; gap:10px 24px; }
.pc-format-cards article > span { grid-row:1 / span 2; color:#8f9ba8; font-size:9px; font-weight:900; letter-spacing:.12em; padding-top:7px; }
.pc-format-cards h3 { margin:0; font-size:23px; line-height:1.18; }
.pc-format-cards p { margin:4px 0 0; color:#9da8b4; font-size:13px; }
.pc-service-process { background:#fff; }
@media(max-width:900px){.pc-services-hero-grid,.pc-service-format-grid{grid-template-columns:1fr;gap:35px}.pc-services-hero-grid{padding:65px 0}.pc-services-editorial-grid{grid-template-columns:1fr}.pc-service-ribbon{gap:18px;overflow:hidden;justify-content:flex-start;padding:0 18px}.pc-format-cards article{grid-template-columns:120px 1fr}}
@media(max-width:620px){.pc-services-hero h1{font-size:54px}.pc-service-card{grid-template-columns:38px 1fr}.pc-service-card figure{grid-column:2;height:180px;min-height:0}.pc-service-card-copy{grid-column:2}.pc-service-card-number{grid-row:1 / span 2}.pc-format-cards article{grid-template-columns:1fr}.pc-format-cards article>span{grid-row:auto}.pc-service-ribbon{font-size:10px;gap:13px}}

/* ---------- Print City Contact ---------- */
.pc-contact-hero { background:var(--pc-off); border-bottom:1px solid var(--pc-line); }
.pc-contact-hero-grid { min-height:470px; padding:80px 0 65px; display:grid; grid-template-columns:1.2fr .8fr; gap:70px; align-items:end; }
.pc-contact-hero h1 { margin:13px 0 0; font-size:clamp(58px,7vw,96px); line-height:.91; letter-spacing:-.065em; max-width:900px; }
.pc-contact-hero-grid > p { margin:0 0 10px; max-width:490px; color:#657181; font-size:18px; }
.pc-contact-section { background:#fff; }
.pc-contact-layout { display:grid; grid-template-columns:.85fr 1.15fr; gap:16px; align-items:stretch; }
.pc-contact-info { background:var(--pc-ink-deep); color:#fff; padding:42px; }
.pc-contact-info .pc-kicker { color:#9ca8b4; }
.pc-contact-info h2 { margin:10px 0 32px; font-size:38px; line-height:1; letter-spacing:-.04em; }
.pc-contact-detail { display:grid; grid-template-columns:42px 1fr; gap:13px; padding:21px 0; border-top:1px solid rgba(255,255,255,.13); }
.pc-contact-detail > span { font-size:10px; color:var(--pc-yellow); font-weight:900; letter-spacing:.12em; }
.pc-contact-detail div { display:grid; gap:3px; }
.pc-contact-detail small { color:#7f8c99; letter-spacing:.12em; font-size:9px; font-weight:900; }
.pc-contact-detail a,.pc-contact-detail strong { color:#fff; font-size:17px; font-style:normal; }
.pc-contact-detail em { color:#8d99a6; font-size:11px; font-style:normal; }
.pc-contact-artwork { margin-top:30px; padding:20px; background:var(--pc-yellow); color:var(--pc-ink-deep); display:grid; }
.pc-contact-artwork span { font-size:10px; text-transform:uppercase; letter-spacing:.1em; font-weight:900; }
.pc-contact-artwork strong { margin-top:2px; font-size:16px; }
.pc-contact-form-card { border:1px solid var(--pc-line); padding:42px; background:#fff; }
.pc-contact-form-top { display:flex; justify-content:space-between; gap:20px; padding-bottom:24px; margin-bottom:25px; border-bottom:1px solid var(--pc-line); }
.pc-contact-form-top span { color:#7b8793; font-size:10px; text-transform:uppercase; letter-spacing:.12em; font-weight:900; }
.pc-contact-form-top strong { font-size:19px; }
.pc-contact-form .field label { font-size:10px; letter-spacing:.08em; text-transform:uppercase; font-weight:900; color:#596575; }
.pc-contact-form textarea { min-height:170px; }
.pc-contact-submit { width:100%; min-height:54px; border:0; background:var(--pc-ink-deep); color:#fff; font-weight:900; display:flex; align-items:center; justify-content:space-between; padding:0 20px; cursor:pointer; }
.pc-contact-submit:hover { background:var(--pc-magenta); }
.pc-contact-submit span { font-size:18px; }
@media(max-width:850px){.pc-contact-hero-grid,.pc-contact-layout{grid-template-columns:1fr}.pc-contact-hero-grid{padding:60px 0}.pc-contact-layout{gap:14px}}
@media(max-width:600px){.pc-contact-hero h1{font-size:52px}.pc-contact-info,.pc-contact-form-card{padding:28px 22px}.pc-contact-form-top{flex-direction:column}.pc-contact-form .field{grid-column:1/-1}}

/* ---------- Remaining catalog / editorial pages ---------- */
.printcity-site .blog-card { border-radius:0; border:1px solid var(--pc-line); box-shadow:none; background:#fff; min-height:250px; }
.printcity-site .blog-card .card-body { padding:28px; }
.printcity-site .blog-card h3 { font-size:24px; line-height:1.12; letter-spacing:-.035em; }
.printcity-site .blog-card:hover { transform:translateY(-3px); box-shadow:var(--shadow-sm); }

.printcity-site .fs-ts-catalog-section { background:var(--pc-off); }
.printcity-site .fs-ts-catalog-sidebar { border-radius:0; border:1px solid var(--pc-line); box-shadow:none; background:#fff; }
.printcity-site .fs-ts-sidebar-title { background:var(--pc-ink-deep); color:#fff; }
.printcity-site .fs-ts-sidebar-links a { border-radius:0; }
.printcity-site .fs-ts-sidebar-links a.active { background:var(--pc-yellow); color:var(--pc-ink-deep); }
.printcity-site .fs-ts-catalog-card { border-radius:0; border:1px solid var(--pc-line); box-shadow:none; background:#fff; }
.printcity-site .fs-ts-catalog-card:hover { transform:translateY(-3px); box-shadow:var(--shadow-sm); }
.printcity-site .fs-ts-catalog-image { border-radius:0; background:#eef0ed; }
.printcity-site .fs-ts-catalog-link { color:var(--pc-ink-deep); font-weight:900; }
.printcity-site .fs-ts-catalog-link:hover { color:var(--pc-magenta); }

.printcity-site .fs-policy-hero { background:var(--pc-ink-deep); color:#fff; position:relative; overflow:hidden; }
.printcity-site .fs-policy-hero::after { content:""; position:absolute; right:-90px; top:-150px; width:360px; height:360px; border:64px solid var(--pc-yellow); border-radius:50%; }
.printcity-site .fs-policy-hero-inner { position:relative; z-index:2; }
.printcity-site .fs-policy-hero h1 { color:#fff; letter-spacing:-.05em; }
.printcity-site .fs-policy-hero p { color:#b7c0ca; }
.printcity-site .fs-policy-section { background:var(--pc-off); }
.printcity-site .fs-policy-sidebar,
.printcity-site .fs-policy-card { border-radius:0; box-shadow:none; border:1px solid var(--pc-line); }
.printcity-site .fs-policy-sidebar a:hover { color:var(--pc-magenta); }
.printcity-site .fs-policy-card h2 { color:var(--pc-ink-deep); }

/* =========================================================
   2026-08-23 — visual refinement pass
   Category showcase, brand story and portfolio.
   ========================================================= */

/* Category showcase v2 */
.pc-category-mosaic-v2 {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    grid-template-rows: 370px 285px;
    gap: 16px;
}
.pc-category-mosaic-v2 .pc-cat-card {
    min-height: 0;
    padding: 0;
    background: #111923;
    border: 1px solid rgba(23,34,49,.08);
    isolation: isolate;
    box-shadow: 0 16px 46px rgba(23,34,49,.07);
}
.pc-category-mosaic-v2 .pc-cat-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 24px 58px rgba(23,34,49,.14);
}
.pc-category-mosaic-v2 .pc-cat-card::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(180deg, rgba(10,16,24,.02) 22%, rgba(10,16,24,.78) 100%);
    pointer-events: none;
}
.pc-category-mosaic-v2 .pc-cat-card > img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .6s cubic-bezier(.2,.7,.2,1);
}
.pc-category-mosaic-v2 .pc-cat-card:hover > img { transform: scale(1.045); }
.pc-category-mosaic-v2 .pc-cat-building { grid-column: span 7; }
.pc-category-mosaic-v2 .pc-cat-vehicle { grid-column: span 5; }
.pc-category-mosaic-v2 .pc-cat-indoor,
.pc-category-mosaic-v2 .pc-cat-promo,
.pc-category-mosaic-v2 .pc-cat-trade { grid-column: span 4; }
.pc-category-mosaic-v2 .pc-cat-promo > img { filter: saturate(.88) contrast(1.02); }
.pc-category-mosaic-v2 .pc-cat-trade > img { object-fit: contain; background: #eef1f4; padding: 16px; }
.pc-category-mosaic-v2 .pc-cat-trade::after { background: linear-gradient(180deg, rgba(10,16,24,.02) 10%, rgba(10,16,24,.82) 100%); }
.pc-cat-glass {
    position: absolute;
    z-index: 2;
    inset: 0;
    padding: 26px 28px 25px;
    color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.pc-cat-top { display: flex; align-items: center; justify-content: space-between; gap: 14px; }
.pc-cat-glass .pc-cat-no { color: #fff; opacity: .74; }
.pc-cat-chip {
    display: inline-flex;
    align-items: center;
    min-height: 27px;
    padding: 0 10px;
    background: rgba(255,255,255,.92);
    color: var(--pc-ink-deep);
    font-size: 9px;
    line-height: 1;
    letter-spacing: .11em;
    text-transform: uppercase;
    font-weight: 950;
    backdrop-filter: blur(8px);
}
.pc-chip-cyan { box-shadow: inset 0 -3px 0 var(--pc-cyan); }
.pc-chip-magenta { box-shadow: inset 0 -3px 0 var(--pc-magenta); }
.pc-chip-yellow { box-shadow: inset 0 -3px 0 var(--pc-yellow); }
.pc-cat-glass small {
    display: block;
    margin-bottom: 9px;
    color: rgba(255,255,255,.74);
    font-size: 10px;
    letter-spacing: .1em;
    text-transform: uppercase;
    font-weight: 850;
}
.pc-cat-glass h3 {
    margin: 0;
    max-width: 610px;
    color: #fff;
    font-size: clamp(30px, 3vw, 52px);
    line-height: .98;
    letter-spacing: -.05em;
    text-shadow: 0 4px 26px rgba(0,0,0,.22);
}
.pc-cat-indoor .pc-cat-glass h3,
.pc-cat-promo .pc-cat-glass h3,
.pc-cat-trade .pc-cat-glass h3 { font-size: clamp(26px, 2.3vw, 38px); }
.pc-cat-glass b {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin-top: 18px;
    font-size: 11px;
    letter-spacing: .02em;
    color: #fff;
}
.pc-cat-glass b span { font-size: 15px; transition: transform .2s ease; }
.pc-cat-card:hover .pc-cat-glass b span { transform: translate(2px,-2px); }

/* Brand story v2 */
.pc-story-section-v2 {
    background: #fff;
    border: 0;
    padding-top: 24px;
    padding-bottom: 108px;
}
.pc-story-shell {
    display: grid;
    grid-template-columns: 1.03fr .97fr;
    background: var(--pc-ink-deep);
    color: #fff;
    overflow: hidden;
    position: relative;
}
.pc-story-shell::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 7px;
    height: 100%;
    background: linear-gradient(180deg,var(--pc-cyan) 0 25%,var(--pc-magenta) 25% 50%,var(--pc-yellow) 50% 75%,#000000 75% 100%);
    z-index: 5;
}
.pc-story-content {
    padding: 70px 66px 58px 72px;
    align-self: center;
}
.pc-story-content h2 {
    margin: 14px 0 22px;
    max-width: 650px;
    color: #fff;
    font-size: clamp(48px,5.2vw,76px);
    line-height: .94;
    letter-spacing: -.06em;
}
.pc-story-content .pc-story-lead {
    max-width: 620px;
    margin: 0 0 15px;
    color: #fff!important;
    font-size: 20px;
    line-height: 1.46;
    font-weight: 700;
}
.pc-story-body {
    max-width: 620px;
    margin: 0;
    color: #aeb8c3;
    font-size: 14px;
}
.pc-story-content .pc-story-actions { align-items: center; margin-top: 30px; }
.pc-story-content .pc-btn-light { margin-top: 0; }
.pc-story-link {
    color: #d4dbe2;
    font-size: 12px;
    font-weight: 850;
    padding: 13px 4px;
}
.pc-story-link:hover { color: var(--pc-yellow); }
.pc-story-visual {
    position: relative;
    min-height: 540px;
    overflow: hidden;
    background: #e8ebed;
}
.pc-story-visual::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(23,34,49,.04), rgba(23,34,49,.3));
}
.pc-story-visual > img { width: 100%; height: 100%; object-fit: cover; }
.pc-story-year,
.pc-story-format {
    position: absolute;
    z-index: 3;
    display: grid;
    gap: 1px;
    background: rgba(255,255,255,.94);
    color: var(--pc-ink-deep);
    padding: 14px 17px;
    box-shadow: 0 14px 38px rgba(23,34,49,.16);
}
.pc-story-year { left: 22px; bottom: 22px; }
.pc-story-format { right: 22px; top: 22px; }
.pc-story-year strong,
.pc-story-format strong { font-size: 18px; line-height: 1.05; letter-spacing: -.03em; }
.pc-story-year span,
.pc-story-format span { color: #6e7985; font-size: 9px; text-transform: uppercase; letter-spacing: .09em; font-weight: 850; }
.pc-story-bars { position: absolute; z-index: 4; right: 24px; bottom: 24px; display: flex; align-items: end; gap: 5px; }
.pc-story-bars i { width: 11px; display: block; box-shadow: 0 5px 18px rgba(0,0,0,.14); }
.pc-story-bars i:nth-child(1){height:39px;background:var(--pc-cyan)}
.pc-story-bars i:nth-child(2){height:55px;background:var(--pc-magenta)}
.pc-story-bars i:nth-child(3){height:31px;background:var(--pc-yellow)}
.pc-story-bars i:nth-child(4){height:47px;background:#fff}
.pc-story-flow {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(3,1fr);
    border-top: 1px solid rgba(255,255,255,.12);
}
.pc-story-flow-card {
    min-height: 142px;
    display: grid;
    grid-template-columns: 44px 1fr;
    gap: 16px;
    padding: 28px 32px;
    border-right: 1px solid rgba(255,255,255,.12);
}
.pc-story-flow-card:last-child { border-right: 0; }
.pc-story-flow-card > span {
    color: var(--pc-yellow);
    font-size: 10px;
    letter-spacing: .11em;
    font-weight: 950;
    padding-top: 4px;
}
.pc-story-flow-card:nth-child(2) > span { color: var(--pc-cyan); }
.pc-story-flow-card:nth-child(3) > span { color: #ff4d88; }
.pc-story-flow-card div { display: grid; align-content: start; gap: 5px; }
.pc-story-flow-card strong { font-size: 16px; }
.pc-story-flow-card small { max-width: 300px; color: #98a4b0; font-size: 12px; line-height: 1.55; }

/* Portfolio v2 */
.pc-portfolio-section { padding-top: 70px!important; background: #f4f5f2!important; }
.pc-portfolio-toolbar {
    display: flex;
    justify-content: space-between;
    gap: 30px;
    align-items: end;
    padding-bottom: 25px;
    border-bottom: 1px solid #d7dce1;
}
.pc-portfolio-toolbar h2 {
    margin: 8px 0 0;
    font-size: clamp(36px,4.2vw,58px);
    line-height: .98;
    letter-spacing: -.05em;
}
.pc-portfolio-count { display: flex; align-items: baseline; gap: 7px; color: #7b8691; }
.pc-portfolio-count strong { color: var(--pc-ink-deep); font-size: 30px; line-height: 1; }
.pc-portfolio-count span { font-size: 11px; text-transform: uppercase; letter-spacing: .09em; font-weight: 850; }
.pc-portfolio-filters { margin: 24px 0 28px; display: flex; flex-wrap: wrap; }
.printcity-site .pc-portfolio-filters .filter-pill {
    min-height: 36px;
    display: inline-flex;
    align-items: center;
    padding: 0 14px;
    background: #fff;
    border: 1px solid #d4d9de;
    color: #576474;
}
.printcity-site .pc-portfolio-filters .filter-pill:hover { border-color: var(--pc-ink-deep); color: var(--pc-ink-deep); }
.printcity-site .pc-portfolio-filters .filter-pill.active { color: #fff; background: var(--pc-ink-deep); border-color: var(--pc-ink-deep); }
.pc-portfolio-grid {
    display: grid;
    grid-template-columns: repeat(12,minmax(0,1fr));
    grid-auto-rows: 270px;
    gap: 14px;
}
.pc-portfolio-card {
    grid-column: span 4;
    position: relative;
    min-width: 0;
    overflow: hidden;
    background: #dfe3e5;
    isolation: isolate;
    box-shadow: 0 12px 34px rgba(23,34,49,.06);
}
.pc-portfolio-featured { grid-column: span 8; grid-row: span 2; }
.pc-portfolio-card figure { position: absolute; inset: 0; margin: 0; }
.pc-portfolio-card figure img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .55s cubic-bezier(.2,.7,.2,1), filter .4s ease;
}
.pc-portfolio-card:hover figure img { transform: scale(1.045); }
.pc-portfolio-shade {
    position: absolute;
    z-index: 1;
    inset: 0;
    background: linear-gradient(180deg, rgba(9,15,23,.04) 20%, rgba(9,15,23,.22) 48%, rgba(9,15,23,.92) 100%);
    transition: background .25s ease;
}
.pc-portfolio-card:hover .pc-portfolio-shade { background: linear-gradient(180deg, rgba(9,15,23,.02) 10%, rgba(9,15,23,.25) 43%, rgba(9,15,23,.96) 100%); }
.pc-portfolio-card-top {
    position: absolute;
    z-index: 2;
    left: 20px;
    right: 20px;
    top: 18px;
    display: flex;
    justify-content: space-between;
    gap: 15px;
    align-items: center;
}
.pc-portfolio-card-top > span {
    display: inline-flex;
    min-height: 27px;
    align-items: center;
    padding: 0 9px;
    background: rgba(255,255,255,.94);
    color: var(--pc-ink-deep);
    font-size: 9px;
    text-transform: uppercase;
    letter-spacing: .1em;
    font-weight: 950;
}
.pc-portfolio-card-top > b { color: rgba(255,255,255,.8); font-size: 10px; letter-spacing: .12em; }
.pc-portfolio-card-copy {
    position: absolute;
    z-index: 2;
    left: 22px;
    right: 22px;
    bottom: 20px;
    color: #fff;
}
.pc-portfolio-card-copy h3 {
    margin: 0;
    color: #fff;
    font-size: 25px;
    line-height: 1.02;
    letter-spacing: -.04em;
}
.pc-portfolio-featured .pc-portfolio-card-copy h3 { max-width: 620px; font-size: clamp(36px,4vw,58px); }
.pc-portfolio-card-copy p {
    display: none;
    max-width: 630px;
    margin: 12px 0 0;
    color: rgba(255,255,255,.78);
    font-size: 13px;
}
.pc-portfolio-featured .pc-portfolio-card-copy p { display: block; }
.pc-portfolio-view {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 15px;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: .09em;
    font-weight: 900;
    opacity: .84;
}
.pc-portfolio-view b { font-size: 15px; transition: transform .2s ease; }
.pc-portfolio-card:hover .pc-portfolio-view b { transform: translate(2px,-2px); }

@media (max-width: 980px) {
    .pc-category-mosaic-v2 { grid-template-columns: repeat(2,minmax(0,1fr)); grid-template-rows: 350px 300px 300px; }
    .pc-category-mosaic-v2 .pc-cat-building,
    .pc-category-mosaic-v2 .pc-cat-vehicle,
    .pc-category-mosaic-v2 .pc-cat-indoor,
    .pc-category-mosaic-v2 .pc-cat-promo { grid-column: span 1; }
    .pc-category-mosaic-v2 .pc-cat-trade { grid-column: span 2; }

    .pc-story-shell { grid-template-columns: 1fr; }
    .pc-story-content { padding: 58px 48px 48px; }
    .pc-story-visual { min-height: 430px; }
    .pc-story-flow { grid-template-columns: 1fr 1fr 1fr; }
    .pc-story-flow-card { padding: 24px 20px; }

    .pc-portfolio-grid { grid-auto-rows: 255px; }
    .pc-portfolio-card { grid-column: span 6; }
    .pc-portfolio-featured { grid-column: span 12; grid-row: span 2; }
}

@media (max-width: 680px) {
    .pc-category-mosaic-v2 { display: grid; grid-template-columns: 1fr; grid-template-rows: none; }
    .pc-category-mosaic-v2 .pc-cat-building,
    .pc-category-mosaic-v2 .pc-cat-vehicle,
    .pc-category-mosaic-v2 .pc-cat-indoor,
    .pc-category-mosaic-v2 .pc-cat-promo,
    .pc-category-mosaic-v2 .pc-cat-trade { grid-column: 1; min-height: 310px; }
    .pc-cat-glass { padding: 22px; }
    .pc-cat-glass h3,
    .pc-cat-indoor .pc-cat-glass h3,
    .pc-cat-promo .pc-cat-glass h3,
    .pc-cat-trade .pc-cat-glass h3 { font-size: 34px; }

    .pc-story-section-v2 { padding-top: 10px; padding-bottom: 75px; }
    .pc-story-content { padding: 46px 28px 38px 34px; }
    .pc-story-content h2 { font-size: 48px; }
    .pc-story-content .pc-story-actions { flex-direction: column; align-items: stretch; }
    .pc-story-link { text-align: center; }
    .pc-story-visual { min-height: 330px; }
    .pc-story-format { right: 14px; top: 14px; }
    .pc-story-year { left: 14px; bottom: 14px; }
    .pc-story-flow { grid-template-columns: 1fr; }
    .pc-story-flow-card { border-right: 0; border-bottom: 1px solid rgba(255,255,255,.12); }
    .pc-story-flow-card:last-child { border-bottom: 0; }

    .pc-portfolio-toolbar { align-items: start; }
    .pc-portfolio-count { display: none; }
    .pc-portfolio-grid { grid-template-columns: 1fr; grid-auto-rows: 310px; }
    .pc-portfolio-card,
    .pc-portfolio-featured { grid-column: 1; grid-row: auto; }
    .pc-portfolio-featured { min-height: 390px; }
    .pc-portfolio-featured .pc-portfolio-card-copy h3 { font-size: 38px; }
    .pc-portfolio-card-copy p { display: none!important; }
}

/* =========================================================
   PRINT CITY — Client revision v3 (Aug 2026)
   PDF-inspired info bar, professional typography, refined
   hero lockup and light footer treatment.
   ========================================================= */

:root {
    --pc-font-body: "Manrope", "Segoe UI", Arial, sans-serif;
    --pc-font-display: "Barlow Condensed", "Arial Narrow", Arial, sans-serif;
    --pc-pdf-navy-1: #082d3a;
    --pc-pdf-navy-2: #173f68;
}

body.printcity-site {
    font-family: var(--pc-font-body);
    letter-spacing: -0.012em;
}

.printcity-site h1,
.printcity-site h2,
.printcity-site h3,
.printcity-site h4,
.printcity-site h5,
.printcity-site h6 {
    font-family: var(--pc-font-display);
}

/* Main navigation now sits above the brand information strip. */
.pc-mainbar {
    position: relative;
    z-index: 3;
    background: rgba(255,255,255,.99);
}

.pc-mainbar-inner { min-height: 90px; }
.pc-nav-link { min-height: 90px; font-family: var(--pc-font-body); font-weight: 700; }
.pc-brand img { width: 214px; max-height: 60px; }
.pc-quote-btn,
.pc-header-search input { font-family: var(--pc-font-body); }

/* PDF-inspired dark strip beneath the navigation. */
.pc-topbar {
    position: relative;
    background: linear-gradient(100deg, var(--pc-pdf-navy-1) 0%, #0a3347 46%, var(--pc-pdf-navy-2) 100%);
    color: #fff;
    font-family: var(--pc-font-body);
    box-shadow: inset 0 1px rgba(255,255,255,.08);
}

.pc-topbar-inner { min-height: 42px; }
.pc-topbar-note,
.pc-topbar-contact { font-size: 11.5px; font-weight: 650; letter-spacing: .01em; }
.pc-topbar-contact a { color: #fff; opacity: .96; }
.pc-topbar-address { opacity: .82; }
.pc-color-dots { gap: 4px; }
.pc-color-dots i { width: 5px; height: 13px; border-radius: 1px; transform: skew(-8deg); }
.pc-color-dots i:nth-child(4) { background: #f7931e; }

.pc-brand-spectrum {
    height: 5px;
    display: grid;
    grid-template-columns: 1.05fr .95fr 1fr 1.05fr 1fr;
    overflow: hidden;
    position: relative;
    z-index: 4;
}
.pc-brand-spectrum i { display: block; }
.pc-brand-spectrum i:nth-child(1) { background: #10b5e4; }
.pc-brand-spectrum i:nth-child(2) { background: #8f65b5; }
.pc-brand-spectrum i:nth-child(3) { background: #df2e72; }
.pc-brand-spectrum i:nth-child(4) { background: #ef7132; }
.pc-brand-spectrum i:nth-child(5) { background: #ffd21a; }

/* Header total height changed slightly after the spectrum rule. */
.pc-products-mega { top: 137px; }

/* Hero — remove novelty badge and use a stronger print-industry lockup. */
.pc-hero { background: #f8f8f6; }
.pc-hero-title-lockup {
    margin: 20px 0 24px;
    display: grid;
    align-items: start;
    justify-items: start;
    max-width: 760px;
}
.pc-hero-pretitle {
    font-family: var(--pc-font-display);
    color: #101b28;
    font-size: clamp(31px, 3.1vw, 48px);
    line-height: .95;
    text-transform: uppercase;
    letter-spacing: .015em;
    font-weight: 800;
}
.pc-hero-title-lockup h1 {
    margin: 2px 0 0;
    color: #102b3b;
    font-family: var(--pc-font-display);
    font-size: clamp(82px, 8.2vw, 132px);
    line-height: .78;
    text-transform: uppercase;
    letter-spacing: -.028em;
    font-weight: 800;
    text-shadow: 3px 3px 0 rgba(20,61,92,.12);
}
.pc-hero-tagline {
    margin-top: 10px;
    align-self: start;
    font-family: var(--pc-font-display);
    color: #101b28;
    font-size: clamp(34px, 3.55vw, 56px);
    line-height: .9;
    text-transform: uppercase;
    letter-spacing: .01em;
    font-weight: 800;
}
.pc-hero-copy > p { max-width: 650px; font-size: 17px; }
.pc-hero-badge { display: none !important; }
.pc-shot-main { width: 76%; }
.pc-cmyk-bars { top: 22px; }

/* Major headings: professional condensed display face, body stays Manrope. */
.pc-section-heading h2,
.pc-story-title h2,
.pc-custom-copy h2,
.pc-location-inner h2,
.pc-footer-cta h2,
.printcity-site .page-hero h1,
.pc-about-copy h1 {
    font-family: var(--pc-font-display);
    letter-spacing: -.025em;
}

/* White footer, adjusted around the Print City brand palette. */
.pc-footer {
    position: relative;
    background: #fff;
    color: var(--pc-ink-deep);
    padding: 5px 0 24px;
    border-top: 0;
}
.pc-footer::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    height: 5px;
    background: linear-gradient(90deg,#10b5e4 0 21%,#8f65b5 21% 40%,#df2e72 40% 60%,#ef7132 60% 80%,#ffd21a 80% 100%);
}
.pc-footer-cta {
    padding: 54px 0 48px;
    border-bottom: 1px solid var(--pc-line);
}
.pc-footer-cta-mark span:nth-child(4) { background: var(--pc-ink-deep); }
.pc-footer-cta-copy > span { color: #74808c; }
.pc-footer-cta h2 { color: var(--pc-ink-deep); font-size: 42px; }
.pc-footer-cta p { color: #64707d; }
.pc-footer-primary {
    background: var(--pc-ink-deep);
    color: #fff;
}
.pc-footer-primary:hover { background: var(--pc-magenta); color: #fff; }
.pc-footer-call { color: #4c5968; }
.pc-footer-grid { padding: 48px 0; }
.pc-footer-logo-box { background: transparent; padding: 0; }
.pc-footer-logo img { width: 205px; }
.pc-footer-brand p { color: #64707d; }
.pc-footer-since {
    border: 1px solid var(--pc-line);
    background: #f7f8f8;
    color: #52606d;
}
.pc-footer h4 { color: #243343; font-size: 12px; }
.pc-footer-links a,
.pc-footer-contact a { color: #465361; }
.pc-footer-links a:hover,
.pc-footer-contact a:hover { color: var(--pc-magenta); }
.pc-footer-contact p { color: #65717e; }
.pc-footer-actions-small { border-top: 1px solid var(--pc-line); }
.pc-footer-bottom {
    border-top: 1px solid var(--pc-line);
    color: #78838e;
}
.pc-footer-bottom a { color: #596675; }
.pc-footer-bottom a:hover { color: var(--pc-magenta); }

@media (max-width: 1180px) {
    .pc-brand img { width: 190px; }
    .pc-products-mega { top: 137px; }
}

@media (max-width: 980px) {
    .pc-mainbar-inner { min-height: 78px; }
    .pc-brand img { width: 188px; }
    .pc-topbar-inner { min-height: 40px; }
    .pc-hero-title-lockup h1 { font-size: clamp(78px, 13vw, 112px); }
    .pc-footer-contact { border-top: 1px solid var(--pc-line); }
}

@media (max-width: 680px) {
    .pc-mainbar-inner { min-height: 72px; }
    .pc-brand img { width: 168px; }
    .pc-topbar-inner { min-height: 38px; }
    .pc-topbar-contact { font-size: 10px; gap: 6px; }
    .pc-brand-spectrum { height: 4px; }
    .pc-hero-title-lockup { margin-top: 17px; }
    .pc-hero-pretitle { font-size: 29px; }
    .pc-hero-title-lockup h1 { font-size: clamp(67px, 19vw, 88px); line-height: .8; }
    .pc-hero-tagline { font-size: 34px; }
    .pc-footer-cta h2 { font-size: 36px; }
}

/* === Print City v4: use the approved monogram asset everywhere === */
.pc-color-dots,
.pc-cmyk-bars,
.pc-story-bars,
.pc-about-bars,
.pc-footer-cta-mark {
    display: block;
}
.pc-color-dots i,
.pc-cmyk-bars i,
.pc-story-bars i,
.pc-about-bars i,
.pc-footer-cta-mark span {
    display: none !important;
}
.pc-color-dots img,
.pc-cmyk-bars img,
.pc-story-bars img,
.pc-about-bars img,
.pc-footer-cta-mark img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}
.pc-color-dots {
    width: 24px;
    flex: 0 0 24px;
}
.pc-cmyk-bars {
    width: 58px;
    height: auto;
}
.pc-story-bars {
    width: 54px;
    height: auto;
}
.pc-about-bars {
    width: 112px;
    height: auto;
    right: 30px;
    bottom: 28px;
    opacity: .95;
}
.pc-footer-cta-mark {
    width: 82px;
    height: auto;
    align-self: center;
}

@media (max-width: 760px) {
    .pc-color-dots { width: 20px; flex-basis: 20px; }
    .pc-cmyk-bars { width: 46px; }
    .pc-story-bars { width: 46px; }
    .pc-about-bars { width: 78px; right: 18px; bottom: 18px; }
    .pc-footer-cta-mark { width: 62px; }
}


/* =========================================================
   PRINT CITY — Final client revisions
   Hero/showcase sliders, refined brand spectrum, smoother nav.
   ========================================================= */

:root {
    --pc-font-hero: "Archivo Black", "Arial Black", var(--pc-font-body);
}

/* Slim centered gradient bar beneath the information strip. */
.pc-brand-spectrum {
    /* width: 142px; */
    height: 6px;
    display: block;
    margin: 0 auto;
    background: linear-gradient(90deg,#11a9d5 0%,#557fbd 18%,#cf3d8c 38%,#f21f55 52%,#ff6b2f 74%,#ffd21a 100%);
    overflow: hidden;
    position: relative;
    z-index: 4;
}
.pc-brand-spectrum i { display: none!important; }

/* Deliberately calmer navigation motion. */
.pc-nav-link::after { transition: transform .38s cubic-bezier(.2,.7,.2,1); }
.pc-products-mega {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translate(-50%, 14px);
    transition: opacity .32s ease .08s, transform .32s cubic-bezier(.2,.7,.2,1) .08s, visibility 0s linear .26s;
}
.pc-products-nav:hover .pc-products-mega,
.pc-products-nav:focus-within .pc-products-mega {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translate(-50%, 0);
    transition-delay: .12s, .12s, 0s;
}
.pc-products-nav { padding-bottom: 4px; margin-bottom: -4px; }

/* Hero typography + professional image slider. */
.pc-hero { min-height: 690px; }
.pc-hero-grid { min-height: 690px; grid-template-columns: .92fr 1.08fr; gap: 64px; }
.pc-hero-copy { padding: 74px 0 78px; }
.pc-hero-title-lockup h1 {
    font-family: var(--pc-font-hero);
    font-size: clamp(58px, 6vw, 92px);
    line-height: .92;
    letter-spacing: -.045em;
    text-transform: uppercase;
    text-shadow: none;
}
.pc-hero-pretitle,
.pc-hero-tagline {
    font-family: var(--pc-font-body);
    letter-spacing: -.035em;
    text-transform: none;
    font-weight: 800;
}
.pc-hero-pretitle { font-size: clamp(26px,2.2vw,36px); }
.pc-hero-tagline { margin-top: 9px; font-size: clamp(27px,2.4vw,39px); }
.pc-hero-actions { margin-top: 34px; }
.pc-hero-visual.pc-hero-slider {
    position: relative;
    height: 555px;
    align-self: center;
    overflow: visible;
    background: #dfe4e8;
    box-shadow: 0 30px 70px rgba(23,34,49,.18);
}
.pc-hero-slides { position: relative; width: 100%; height: 100%; overflow: hidden; }
.pc-hero-slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    visibility: hidden;
    transform: scale(1.025);
    transition: opacity .65s ease, transform 1.05s cubic-bezier(.2,.7,.2,1), visibility .65s ease;
    pointer-events: none;
}
.pc-hero-slide.active { opacity: 1; visibility: visible; transform: scale(1); pointer-events: auto; }
.pc-hero-slide img { width: 100%; height: 100%; object-fit: cover; }
.pc-hero-slide-shade { position: absolute; inset: 0; background: linear-gradient(180deg,rgba(7,16,25,.02) 30%,rgba(7,16,25,.82) 100%); }
.pc-hero-slide-copy {
    position: absolute;
    z-index: 2;
    left: 34px;
    right: 34px;
    bottom: 34px;
    color: #fff;
    display: grid;
    gap: 7px;
}
.pc-hero-slide-copy span { font-size: 10px; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; color: rgba(255,255,255,.7); }
.pc-hero-slide-copy strong { max-width: 620px; font-family: var(--pc-font-body); font-size: clamp(25px,2.5vw,38px); line-height: 1.08; letter-spacing: -.04em; }
.pc-hero-slide-copy em { font-style: normal; font-size: 11px; font-weight: 800; color: rgba(255,255,255,.85); }
.pc-hero-slider-ui {
    position: absolute;
    z-index: 5;
    left: 24px;
    right: 24px;
    top: 22px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    pointer-events: none;
}
.pc-hero-dots,
.pc-hero-arrows { display: flex; align-items: center; gap: 7px; pointer-events: auto; }
.pc-hero-dots button { width: 22px; height: 3px; padding: 0; border: 0; background: rgba(255,255,255,.42); cursor: pointer; transition: width .3s ease, background .3s ease; }
.pc-hero-dots button.active { width: 42px; background: #fff; }
.pc-hero-arrows button { width: 38px; height: 38px; border: 1px solid rgba(255,255,255,.55); background: rgba(9,18,28,.22); color: #fff; backdrop-filter: blur(8px); cursor: pointer; font-size: 16px; transition: .25s ease; }
.pc-hero-arrows button:hover { background: #fff; color: var(--pc-ink-deep); }
.pc-hero-slider .pc-cmyk-bars { z-index: 6; top: auto; left: auto; right: -23px; bottom: -20px; width: 66px; background: #fff; padding: 9px; box-shadow: 0 14px 34px rgba(23,34,49,.14); }
.pc-hero-proof { display: none!important; }

/* Selected-work slider directly after the One Team section. */
.pc-showcase-section { background: #fff; padding-top: 88px; padding-bottom: 108px; overflow: hidden; }
.pc-showcase-heading { display: grid; grid-template-columns: 1fr .78fr; gap: 70px; align-items: end; margin-bottom: 34px; }
.pc-showcase-heading h2 { margin: 10px 0 0; font-size: clamp(46px,5vw,72px); line-height: .95; letter-spacing: -.05em; }
.pc-showcase-controls { justify-self: end; max-width: 520px; }
.pc-showcase-controls p { margin: 0 0 18px; color: #687483; }
.pc-showcase-controls > div { display: flex; gap: 8px; }
.pc-showcase-controls button { width: 44px; height: 44px; border: 1px solid var(--pc-line); background: #fff; color: var(--pc-ink-deep); font-size: 18px; cursor: pointer; transition: .25s ease; }
.pc-showcase-controls button:hover { background: var(--pc-ink-deep); color: #fff; border-color: var(--pc-ink-deep); }
.pc-showcase-viewport { overflow: hidden; }
.pc-showcase-track { display: flex; gap: 14px; transition: transform .55s cubic-bezier(.2,.7,.2,1); will-change: transform; }
.pc-showcase-card { position: relative; flex: 0 0 calc((100% - 28px)/3); min-height: 420px; overflow: hidden; background: #dfe3e5; }
.pc-showcase-card figure { position: absolute; inset: 0; margin: 0; }
.pc-showcase-card img { width: 100%; height: 100%; object-fit: cover; transition: transform .65s cubic-bezier(.2,.7,.2,1); }
.pc-showcase-card:hover img { transform: scale(1.045); }
.pc-showcase-shade { position: absolute; inset: 0; background: linear-gradient(180deg,rgba(7,14,22,.02) 30%,rgba(7,14,22,.85) 100%); }
.pc-showcase-card-copy { position: absolute; z-index: 2; left: 24px; right: 24px; bottom: 22px; color: #fff; }
.pc-showcase-card-copy span { display: block; margin-bottom: 5px; color: rgba(255,255,255,.68); font-size: 9px; text-transform: uppercase; letter-spacing: .12em; font-weight: 850; }
.pc-showcase-card-copy h3 { margin: 0; max-width: 90%; color: #fff; font-family: var(--pc-font-body); font-size: 22px; line-height: 1.1; letter-spacing: -.035em; }
.pc-showcase-card-copy b { position: absolute; right: 0; bottom: 1px; color: rgba(255,255,255,.62); font-size: 10px; letter-spacing: .12em; }

/* Remove legacy custom-catalog section if cached markup remains. */
.pc-custom-section { display: none!important; }

@media (max-width: 980px) {
    .pc-hero { min-height: auto; }
    .pc-hero-grid { min-height: auto; grid-template-columns: 1fr; gap: 24px; padding-bottom: 58px; }
    .pc-hero-copy { padding: 58px 0 18px; }
    .pc-hero-visual.pc-hero-slider { height: 520px; width: 100%; }
    .pc-showcase-heading { grid-template-columns: 1fr; gap: 22px; }
    .pc-showcase-controls { justify-self: start; }
    .pc-showcase-card { flex-basis: calc((100% - 14px)/2); min-height: 390px; }
}

@media (max-width: 680px) {
    .pc-brand-spectrum {height: 5px; }
    .pc-hero-title-lockup h1 { font-size: clamp(51px,15vw,72px); line-height: .92; }
    .pc-hero-pretitle { font-size: 24px; }
    .pc-hero-tagline { font-size: 27px; }
    .pc-hero-visual.pc-hero-slider { height: 410px; }
    .pc-hero-slide-copy { left: 20px; right: 20px; bottom: 22px; }
    .pc-hero-slide-copy strong { font-size: 25px; }
    .pc-hero-slider-ui { left: 16px; right: 16px; top: 16px; }
    .pc-hero-slider .pc-cmyk-bars { right: 12px; bottom: -18px; width: 54px; }
    .pc-showcase-section { padding-top: 70px; padding-bottom: 78px; }
    .pc-showcase-heading h2 { font-size: 47px; }
    .pc-showcase-card { flex-basis: 86%; min-height: 370px; }
}


/* =========================================================
   PRINT CITY — Header dropdown usability polish
   Keeps Products open while the pointer crosses the info bar,
   replaces the text glyph caret, and makes the One Team band
   full-bleed dark instead of leaving white outer gutters.
   ========================================================= */

/* Full-width dark background around the One Team panel. */
.pc-story-section-v2 {
    /* background: var(--pc-ink-deep) !important; */
    border: 0 !important;
}

/* Clean Products trigger — text navigation, not a faux button. */
.pc-products-nav > .pc-nav-link {
    gap: 9px;
    color: #334154;
    background: transparent !important;
    border-radius: 0;
}
.pc-products-nav > .pc-nav-link:hover,
.pc-products-nav.is-open > .pc-nav-link,
.pc-products-nav:focus-within > .pc-nav-link {
    color: var(--pc-ink-deep);
    background: transparent !important;
}
.pc-nav-chevron {
    width: 7px;
    height: 7px;
    display: inline-block;
    flex: 0 0 7px;
    border-right: 1.6px solid currentColor;
    border-bottom: 1.6px solid currentColor;
    transform: translateY(-2px) rotate(45deg);
    opacity: .72;
    transition: transform .28s ease, opacity .28s ease;
}
.pc-products-nav:hover .pc-nav-chevron,
.pc-products-nav.is-open .pc-nav-chevron,
.pc-products-nav:focus-within .pc-nav-chevron {
    transform: translateY(2px) rotate(225deg);
    opacity: 1;
}

/* JS-backed open state prevents the menu disappearing in the
   physical gap between the main nav and the dropdown. */
.pc-products-nav.is-open .pc-products-mega {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translate(-50%, 0) !important;
    transition-delay: 0s !important;
}

/* Make closing feel intentional instead of twitchy. */
.pc-products-mega {
    transition: opacity .28s ease, transform .30s cubic-bezier(.2,.7,.2,1), visibility 0s linear .38s !important;
}
.pc-products-nav:hover .pc-products-mega,
.pc-products-nav:focus-within .pc-products-mega,
.pc-products-nav.is-open .pc-products-mega {
    transition: opacity .28s ease, transform .30s cubic-bezier(.2,.7,.2,1), visibility 0s linear 0s !important;
}

@media (max-width: 980px) {
    .pc-story-section-v2 { background: var(--pc-ink-deep) !important; }
}


/* =========================================================
   PRINT CITY — September 2026 client upgrades
   Admin hero slider, premium categories/business/CTA, WhatsApp
   ========================================================= */
.pc-hero-slider-admin .pc-hero-slides { height:100%; }
.pc-hero-slider-admin .pc-hero-slide { position:absolute; inset:0; overflow:hidden; }
.pc-hero-slider-admin .pc-hero-slide img { width:100%; height:100%; object-fit:cover; }
.pc-hero-slider-admin .pc-hero-dots { max-width:340px; overflow:hidden; }
.pc-hero-slider-admin .pc-hero-dots button { flex:0 0 18px; }

.pc-category-section-v3 { background:#f6f7f7; }
.pc-category-heading-v3 { margin-bottom:38px; }
.pc-category-pro-grid { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); grid-auto-rows:300px; gap:14px; }
.pc-category-pro-card { position:relative; grid-column:span 4; overflow:hidden; background:#152130; color:#fff; border-radius:2px; isolation:isolate; }
.pc-category-pro-card.is-featured { grid-column:span 8; grid-row:span 2; }
.pc-category-pro-card:nth-child(2),.pc-category-pro-card:nth-child(3){ grid-column:span 4; }
.pc-category-pro-card:nth-child(4),.pc-category-pro-card:nth-child(5){ grid-column:span 6; }
.pc-category-pro-card > img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .55s cubic-bezier(.2,.7,.2,1); }
.pc-category-pro-overlay { position:absolute; inset:0; background:linear-gradient(180deg,rgba(9,17,27,.06) 12%,rgba(9,17,27,.22) 45%,rgba(9,17,27,.92) 100%); z-index:1; }
.pc-category-pro-card:hover > img { transform:scale(1.045); }
.pc-category-pro-top,.pc-category-pro-copy { position:absolute; z-index:2; left:26px; right:26px; }
.pc-category-pro-top { top:24px; display:flex; justify-content:space-between; align-items:center; font-size:10px; text-transform:uppercase; letter-spacing:.12em; font-weight:900; }
.pc-category-pro-top b { background:rgba(255,255,255,.94); color:#142131; padding:8px 10px; }
.pc-category-pro-copy { bottom:25px; }
.pc-category-pro-copy h3 { margin:0; color:#fff; font-size:clamp(31px,3.3vw,52px); line-height:.94; letter-spacing:-.04em; }
.pc-category-pro-card:not(.is-featured) .pc-category-pro-copy h3 { font-size:32px; }
.pc-category-pro-copy p { max-width:590px; margin:10px 0 14px; color:rgba(255,255,255,.78); font-size:13px; line-height:1.5; }
.pc-category-pro-card:not(.is-featured) .pc-category-pro-copy p { display:none; }
.pc-category-pro-copy strong { font-size:10px; text-transform:uppercase; letter-spacing:.1em; }
.pc-category-pro-copy strong i { font-style:normal; font-size:15px; }
.pc-category-pro-card:nth-child(1){ box-shadow:inset 0 4px var(--pc-cyan); }
.pc-category-pro-card:nth-child(2){ box-shadow:inset 0 4px var(--pc-magenta); }
.pc-category-pro-card:nth-child(3){ box-shadow:inset 0 4px var(--pc-yellow); }
.pc-category-pro-card:nth-child(4){ box-shadow:inset 0 4px #6dbd45; }
.pc-category-pro-card:nth-child(5){ box-shadow:inset 0 4px #253a60; }

.pc-story-section-v3 { background:#fff; padding:92px 0; }
.pc-business-panel { display:grid; grid-template-columns:1.02fr .98fr; min-height:610px; background:#111d2b; color:#fff; overflow:hidden; box-shadow:0 30px 80px rgba(10,22,34,.12); }
.pc-business-copy { position:relative; padding:70px 64px 0; display:flex; flex-direction:column; }
.pc-business-copy::before { content:""; position:absolute; top:0; left:0; bottom:0; width:5px; background:linear-gradient(#12b5dd 0 25%,#ed1860 25% 50%,#ffd20a 50% 75%,#64b449 75% 100%); }
.pc-business-copy h2 { margin:14px 0 24px; font-size:clamp(52px,5vw,78px); line-height:.91; letter-spacing:-.05em; color:#fff; }
.pc-business-copy h2 em { font-style:normal; color:#ffd20a; }
.pc-business-copy > p { margin:0; max-width:680px; color:#b9c3ce; font-size:17px; line-height:1.65; }
.pc-business-actions { display:flex; align-items:center; gap:22px; margin-top:30px; }
.pc-business-proof { margin-top:auto; display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid rgba(255,255,255,.12); }
.pc-business-proof > div { min-height:132px; padding:24px 20px 22px 0; border-right:1px solid rgba(255,255,255,.12); display:grid; align-content:center; gap:5px; }
.pc-business-proof > div:last-child { border-right:0; padding-left:20px; }
.pc-business-proof > div:nth-child(2) { padding-left:20px; }
.pc-business-proof span { font-size:10px; color:#ffd20a; font-weight:900; letter-spacing:.1em; }
.pc-business-proof strong { font-size:15px; color:#fff; }
.pc-business-proof small { color:#8493a3; font-size:11px; }
.pc-business-visual { position:relative; min-height:610px; overflow:hidden; }
.pc-business-visual > img { width:100%; height:100%; object-fit:cover; }
.pc-business-visual-shade { position:absolute; inset:0; background:linear-gradient(180deg,rgba(13,24,36,.05),rgba(13,24,36,.32)); }
.pc-business-visual-label { position:absolute; left:28px; right:28px; bottom:28px; background:rgba(255,255,255,.95); color:#142131; min-height:80px; display:flex; align-items:center; gap:18px; padding:16px 20px; }
.pc-business-visual-label img { width:48px; height:48px; object-fit:contain; }
.pc-business-visual-label span { font-weight:900; font-size:16px; }

.pc-location-strip { background:#ffd20a; padding:72px 0; }
.pc-location-inner { grid-template-columns:.92fr 1.08fr; align-items:center; }
.pc-location-details { padding:26px 0 26px 44px; min-height:150px; align-content:center; gap:9px; }
.pc-location-details p { font-size:24px; line-height:1.22; letter-spacing:-.02em; }
.pc-location-details p strong { font-size:31px; }
.pc-location-details a { font-size:18px; }

.pc-footer-cta-v2 { position:relative; margin:52px 0 0; padding:50px 150px 50px 46px; border:1px solid #dfe3e7; background:linear-gradient(112deg,#f7f8f8 0%,#fff 62%); overflow:hidden; grid-template-columns:1fr auto; }
.pc-footer-cta-v2::before { content:""; position:absolute; left:0; top:0; bottom:0; width:6px; background:linear-gradient(#11b5df 0 25%,#e81e63 25% 50%,#ffcf0a 50% 75%,#64b449 75%); }
.pc-footer-cta-v2 .pc-footer-cta-copy > span { color:#52606d; }
.pc-footer-cta-v2 h2 { font-size:clamp(38px,4vw,58px); max-width:780px; }
.pc-footer-cta-v2 .pc-footer-cta-actions { align-self:center; min-width:210px; }
.pc-footer-whatsapp { display:flex; min-height:46px; align-items:center; justify-content:center; border:1px solid #1fa855; color:#13773e; font-weight:900; font-size:12px; }
.pc-footer-whatsapp:hover { background:#1fa855; color:#fff; }
.pc-footer-cta-art { position:absolute; right:-18px; bottom:-30px; width:130px; height:130px; opacity:.16; }
.pc-footer-cta-art img { width:100%; height:100%; object-fit:contain; }

.pc-whatsapp-float { position:fixed; right:22px; bottom:22px; z-index:999; min-height:52px; display:flex; align-items:center; gap:9px; padding:0 17px 0 9px; border-radius:999px; background:#20b35a; color:#fff; box-shadow:0 14px 34px rgba(18,123,63,.28); font-family:var(--pc-font-body); font-size:12px; font-weight:900; transition:transform .2s ease,box-shadow .2s ease; }
.pc-whatsapp-float:hover { color:#fff; transform:translateY(-2px); box-shadow:0 18px 42px rgba(18,123,63,.36); }
.pc-whatsapp-icon { width:34px; height:34px; display:grid; place-items:center; background:#fff; color:#1ba653; border-radius:50%; font-weight:950; }
.pc-whatsapp-icon svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.9; stroke-linecap:round; stroke-linejoin:round; }
.mobile-whatsapp-btn { display:flex; align-items:center; justify-content:center; min-height:44px; border:1px solid #20b35a; color:#168346; font-weight:900; }

@media (max-width:980px){
 .pc-category-pro-grid{grid-auto-rows:290px}.pc-category-pro-card,.pc-category-pro-card.is-featured,.pc-category-pro-card:nth-child(n){grid-column:span 6;grid-row:auto}
 .pc-business-panel{grid-template-columns:1fr}.pc-business-visual{min-height:430px}.pc-business-copy{padding:58px 48px 0}.pc-business-proof{margin-top:48px}
 .pc-footer-cta-v2{grid-template-columns:1fr;padding-right:130px}.pc-footer-cta-v2 .pc-footer-cta-actions{margin-top:18px;display:flex}
}
@media (max-width:680px){
 .pc-category-pro-grid{grid-template-columns:1fr;grid-auto-rows:310px}.pc-category-pro-card,.pc-category-pro-card.is-featured,.pc-category-pro-card:nth-child(n){grid-column:1}.pc-category-pro-copy p{display:none!important}
 .pc-business-copy{padding:46px 28px 0 34px}.pc-business-copy h2{font-size:48px}.pc-business-actions{align-items:stretch;flex-direction:column}.pc-business-proof{grid-template-columns:1fr}.pc-business-proof>div,.pc-business-proof>div:nth-child(2),.pc-business-proof>div:last-child{padding:17px 0;border-right:0;border-bottom:1px solid rgba(255,255,255,.12);min-height:auto}.pc-business-visual{min-height:330px}
 .pc-location-details{padding:22px 0 0;border-left:0;border-top:1px solid rgba(23,34,49,.28)}.pc-location-details p{font-size:20px}.pc-location-details p strong{font-size:27px}
 .pc-footer-cta-v2{padding:38px 28px;margin-top:32px}.pc-footer-cta-art{display:none}.pc-footer-cta-v2 .pc-footer-cta-actions{display:grid}.pc-whatsapp-float b{display:none}.pc-whatsapp-float{padding:7px;right:14px;bottom:14px}
}

/* =========================================================
   PRINT CITY — v8 premium visual system
   Cleaner spacing, stronger editorial hierarchy and more
   polished interaction across home + interior pages.
   ========================================================= */
:root{
    --pc-radius-sm:10px;
    --pc-radius-md:16px;
    --pc-radius-lg:24px;
    --pc-shadow-pro:0 26px 70px rgba(19,31,45,.10);
    --pc-shadow-hover:0 30px 75px rgba(19,31,45,.16);
    --pc-surface:#f5f7f8;
}

body.printcity-site{
    font-family:var(--pc-font-body,"Manrope","Segoe UI",Arial,sans-serif);
    background:#fff;
    text-rendering:optimizeLegibility;
}

.printcity-site .pc-section{ padding-top:104px; padding-bottom:104px; }
.printcity-site .pc-kicker{ letter-spacing:.15em; font-weight:850; }
.printcity-site h1,.printcity-site h2,.printcity-site h3{ text-wrap:balance; }

/* Header refinement */
.pc-mainbar-inner{ min-height:86px; }
.pc-brand img{ width:198px; }
.pc-nav-link{ min-height:86px; padding-inline:15px; }
.pc-header-search{ border-radius:999px; background:#f7f8f8; overflow:hidden; border-color:#e3e7ea; transition:border-color .25s ease,box-shadow .25s ease; }
.pc-header-search:focus-within{ border-color:#bac4cd; box-shadow:0 0 0 4px rgba(23,34,49,.04); }
.pc-quote-btn{ border-radius:999px; padding-inline:20px; box-shadow:0 8px 18px rgba(23,34,49,.12); }
.pc-quote-btn:hover{ transform:translateY(-1px); box-shadow:0 12px 24px rgba(23,34,49,.16); }
.pc-topbar{ background:linear-gradient(90deg,#072f3d 0%,#10293b 48%,#1e4677 100%); }
.pc-topbar-inner{ min-height:36px; }
.pc-brand-spectrum{ height:4px; }

/* Hero: modern editorial composition */
.pc-hero{
    position:relative;
    background:
      radial-gradient(circle at 8% 15%,rgba(6,169,224,.11),transparent 28%),
      radial-gradient(circle at 42% 88%,rgba(233,30,99,.07),transparent 24%),
      #f7f8f7;
    border-bottom:1px solid #e8ebed;
}
.pc-hero::after{
    content:""; position:absolute; inset:auto 0 0; height:1px;
    background:linear-gradient(90deg,transparent,#dfe4e8 25%,#dfe4e8 75%,transparent);
}
.pc-hero-grid{ grid-template-columns:.9fr 1.1fr; gap:72px; align-items:center; }
.pc-hero-copy{ padding:78px 0 82px; }
.pc-eyebrow{ margin-bottom:18px; color:#4c5968; }
.pc-hero-title-lockup{ max-width:650px; }
.pc-hero-pretitle{ color:#2f3f50; font-size:clamp(24px,2vw,34px); }
.pc-hero-title-lockup h1{ font-size:clamp(62px,6.2vw,96px); letter-spacing:-.055em; }
.pc-hero-tagline{ color:#2f3f50; font-size:clamp(25px,2.2vw,36px); }
.pc-hero-copy>p{ max-width:610px; margin-top:25px; color:#667382; font-size:16px; line-height:1.75; }
.pc-hero-actions{ margin-top:30px; }
.pc-btn-dark,.pc-btn-light,.pc-btn-outline{ border-radius:999px; }
.pc-hero-visual.pc-hero-slider{ height:568px; border-radius:var(--pc-radius-md); overflow:visible; box-shadow:0 34px 90px rgba(23,34,49,.17); }
.pc-hero-slides{ border-radius:var(--pc-radius-md); }
.pc-hero-slide-shade{ background:linear-gradient(180deg,rgba(7,16,25,.01) 20%,rgba(7,16,25,.16) 58%,rgba(7,16,25,.88) 100%); }
.pc-hero-slide-copy{ left:30px; right:30px; bottom:29px; }
.pc-hero-slide-copy strong{ font-size:clamp(25px,2.2vw,35px); }
.pc-hero-slider-ui{ top:18px; left:18px; right:18px; }
.pc-hero-arrows button{ border-radius:50%; border-color:rgba(255,255,255,.7); }
.pc-hero-slider .pc-cmyk-bars{ border-radius:12px; right:-18px; bottom:-18px; }

/* Service marquee */
.pc-marquee{ background:#101d2a; color:#fff; border:0; }
.pc-marquee-track{ opacity:.92; }
.pc-marquee-track i{ color:var(--pc-yellow); }

/* Category section */
.pc-category-section-v3{ background:#f4f6f7; position:relative; }
.pc-category-section-v3::before{
    content:""; position:absolute; width:360px; height:360px; border-radius:50%;
    top:-160px; right:-130px; border:1px solid rgba(23,34,49,.06); box-shadow:0 0 0 55px rgba(23,34,49,.018),0 0 0 110px rgba(23,34,49,.012);
    pointer-events:none;
}
.pc-category-heading-v3 h2{ font-size:clamp(46px,5vw,70px); line-height:.96; letter-spacing:-.055em; }
.pc-section-aside{ max-width:470px; }
.pc-category-pro-grid{ grid-auto-rows:310px; gap:16px; }
.pc-category-pro-card{ border-radius:var(--pc-radius-md); box-shadow:0 16px 45px rgba(20,32,45,.08); transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s ease; }
.pc-category-pro-card:hover{ transform:translateY(-5px); box-shadow:var(--pc-shadow-hover); }
.pc-category-pro-card>img{ transition:transform .8s cubic-bezier(.2,.7,.2,1),filter .8s ease; }
.pc-category-pro-card:hover>img{ transform:scale(1.055); filter:saturate(1.04); }
.pc-category-pro-overlay{ background:linear-gradient(180deg,rgba(8,16,25,.03) 20%,rgba(8,16,25,.18) 50%,rgba(8,16,25,.94) 100%); }
.pc-category-pro-top b{ border-radius:999px; padding:7px 11px; box-shadow:0 5px 20px rgba(0,0,0,.08); }
.pc-category-pro-copy h3{ font-family:var(--pc-font-body); font-weight:800; }
.pc-category-pro-copy strong{ display:inline-flex; align-items:center; gap:8px; }

/* NEW Built for Business / brand system */
.pc-brand-system-section{ background:#fff; overflow:hidden; }
.pc-brand-system-head{ display:grid; grid-template-columns:1.1fr .9fr; gap:90px; align-items:end; margin-bottom:48px; }
.pc-brand-system-head h2{ margin:12px 0 0; max-width:780px; font-size:clamp(50px,5.4vw,78px); line-height:.94; letter-spacing:-.06em; }
.pc-brand-system-head h2 em{ font-style:normal; color:#5a6673; }
.pc-brand-system-intro{ max-width:550px; justify-self:end; }
.pc-brand-system-intro>p{ margin:0; color:#667382; font-size:16px; line-height:1.7; }
.pc-brand-system-actions{ display:flex; align-items:center; gap:20px; margin-top:26px; }
.pc-brand-system-grid{ display:grid; grid-template-columns:minmax(0,1.16fr) minmax(370px,.84fr); gap:16px; align-items:stretch; }
.pc-brand-system-visual{ position:relative; min-height:630px; overflow:hidden; border-radius:var(--pc-radius-lg); background:#172231; box-shadow:var(--pc-shadow-pro); }
.pc-brand-system-visual>img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform 1s cubic-bezier(.2,.7,.2,1); }
.pc-brand-system-visual:hover>img{ transform:scale(1.025); }
.pc-brand-system-visual-shade{ position:absolute; inset:0; background:linear-gradient(180deg,rgba(8,16,25,.08) 20%,rgba(8,16,25,.16) 54%,rgba(8,16,25,.82) 100%); }
.pc-brand-system-badge{ position:absolute; top:24px; left:24px; display:flex; gap:13px; align-items:center; padding:13px 16px; background:rgba(255,255,255,.94); backdrop-filter:blur(12px); border-radius:12px; box-shadow:0 15px 34px rgba(10,18,28,.12); }
.pc-brand-system-badge img{ width:36px; height:36px; object-fit:contain; }
.pc-brand-system-badge div{ display:grid; gap:2px; }
.pc-brand-system-badge small{ color:#75808c; font-size:8px; text-transform:uppercase; letter-spacing:.14em; font-weight:900; }
.pc-brand-system-badge strong{ color:#172231; font-size:12px; letter-spacing:-.02em; }
.pc-brand-system-caption{ position:absolute; left:28px; right:28px; bottom:26px; color:#fff; display:grid; grid-template-columns:48px 1fr; gap:18px; align-items:end; }
.pc-brand-system-caption span{ width:48px; height:48px; border:1px solid rgba(255,255,255,.45); border-radius:50%; display:grid; place-items:center; font-size:10px; font-weight:900; }
.pc-brand-system-caption p{ margin:0; max-width:580px; color:rgba(255,255,255,.9); font-size:18px; line-height:1.45; font-weight:700; letter-spacing:-.025em; }
.pc-brand-system-capabilities{ display:grid; grid-template-rows:repeat(4,1fr); gap:10px; }
.pc-capability-card{ --accent:#06a9e0; position:relative; display:grid; grid-template-columns:46px 1fr auto; gap:18px; align-items:center; min-height:145px; padding:24px 22px; background:#f7f8f8; border:1px solid #e1e5e8; border-radius:var(--pc-radius-md); overflow:hidden; transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease,background .3s ease; }
.pc-capability-card::before{ content:""; position:absolute; left:0; top:0; bottom:0; width:5px; background:var(--accent); }
.pc-capability-card:hover{ transform:translateX(-6px); background:#fff; border-color:#d4dade; box-shadow:0 20px 45px rgba(23,34,49,.10); }
.pc-capability-card>span{ width:42px; height:42px; display:grid; place-items:center; border-radius:50%; background:#fff; color:#657180; border:1px solid #e1e5e8; font-size:10px; font-weight:900; }
.pc-capability-card div{ min-width:0; }
.pc-capability-card small{ display:block; margin-bottom:3px; color:var(--accent); text-transform:uppercase; letter-spacing:.14em; font-size:8px; font-weight:900; }
.pc-capability-card h3{ margin:0; font-family:var(--pc-font-body); font-size:20px; letter-spacing:-.035em; }
.pc-capability-card p{ margin:6px 0 0; color:#74808d; font-size:12px; line-height:1.45; }
.pc-capability-card>b{ width:34px; height:34px; display:grid; place-items:center; border-radius:50%; background:#fff; border:1px solid #dfe4e8; font-size:14px; transition:.25s ease; }
.pc-capability-card:hover>b{ background:#172231; color:#fff; border-color:#172231; }
.pc-capability-cyan{ --accent:var(--pc-cyan); }
.pc-capability-magenta{ --accent:var(--pc-magenta); }
.pc-capability-yellow{ --accent:#d4ad00; }
.pc-capability-green{ --accent:var(--pc-green); }
.pc-brand-system-rail{ min-height:66px; margin-top:16px; padding:0 24px; border:1px solid #e4e8eb; border-radius:var(--pc-radius-md); display:flex; align-items:center; justify-content:space-between; gap:18px; color:#556170; background:#fbfbfb; }
.pc-brand-system-rail span{ font-size:10px; text-transform:uppercase; letter-spacing:.12em; font-weight:850; white-space:nowrap; }
.pc-brand-system-rail i{ width:4px; height:4px; border-radius:50%; background:var(--pc-magenta); }
.pc-brand-system-rail i:nth-of-type(2){ background:var(--pc-yellow); }
.pc-brand-system-rail i:nth-of-type(3){ background:var(--pc-cyan); }
.pc-brand-system-rail i:nth-of-type(4){ background:var(--pc-green); }

/* Selected work */
.pc-showcase-section{ background:#f4f6f7; }
.pc-showcase-heading h2{ font-size:clamp(48px,5.1vw,74px); }
.pc-showcase-card{ border-radius:var(--pc-radius-md); min-height:440px; box-shadow:0 14px 40px rgba(19,31,45,.08); }
.pc-showcase-controls button{ border-radius:50%; }
.pc-showcase-card-copy h3{ font-size:24px; }

/* Product presentation */
.pc-featured-section{ background:#fff; }
.pc-product-grid{ gap:18px; }
.pc-product-card{ position:relative; border-radius:var(--pc-radius-md); overflow:hidden; border-color:#e2e6e9; box-shadow:0 10px 30px rgba(23,34,49,.04); transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s ease,border-color .35s ease; }
.pc-product-card:hover{ transform:translateY(-7px); box-shadow:var(--pc-shadow-hover); border-color:transparent; }
.pc-product-card figure{ aspect-ratio:1/.78; }
.pc-product-card figure img{ transition:transform .65s cubic-bezier(.2,.7,.2,1); }
.pc-product-card:hover figure img{ transform:scale(1.055); }
.pc-product-card-body{ min-height:150px; padding:22px 20px 22px; }
.pc-product-card-body h3{ font-size:20px; }
.pc-product-card-body b{ display:inline-flex; align-items:center; gap:6px; color:#667281; }

/* Process = lighter, premium cards instead of table cells */
.pc-process-section{ background:#f7f8f8; }
.pc-process-grid{ gap:14px; border:0; }
.pc-process-step{ position:relative; min-height:285px; padding:30px 28px 34px; background:#fff; border:1px solid #e1e5e8!important; border-radius:var(--pc-radius-md); box-shadow:0 10px 30px rgba(23,34,49,.035); overflow:hidden; transition:transform .3s ease,box-shadow .3s ease; }
.pc-process-step:hover{ transform:translateY(-5px); box-shadow:0 24px 55px rgba(23,34,49,.09); }
.pc-process-step::after{ content:""; position:absolute; left:0; right:0; bottom:0; height:4px; background:#172231; }
.pc-process-step:nth-child(2)::after{ background:var(--pc-cyan); }
.pc-process-step:nth-child(3)::after{ background:var(--pc-magenta); }
.pc-process-step:nth-child(4)::after{ background:var(--pc-yellow); }
.pc-process-step h3{ font-size:22px; }
.pc-process-step p{ line-height:1.6; }

/* Location / contact rail */
.pc-location-strip{ position:relative; overflow:hidden; padding:78px 0; background:linear-gradient(100deg,#ffd20a 0%,#ffdc37 100%); }
.pc-location-strip::after{ content:""; position:absolute; width:420px; height:420px; right:-130px; top:-170px; border:1px solid rgba(23,34,49,.11); border-radius:50%; box-shadow:0 0 0 55px rgba(23,34,49,.025),0 0 0 110px rgba(23,34,49,.018); }
.pc-location-inner{ position:relative; z-index:2; }
.pc-location-inner h2{ letter-spacing:-.055em; }
.pc-location-details{ border-left:1px solid rgba(23,34,49,.26); }

/* Footer CTA */
.pc-footer-cta-v2{ border-radius:var(--pc-radius-md); box-shadow:0 18px 50px rgba(23,34,49,.06); }
.pc-footer-primary,.pc-footer-whatsapp{ border-radius:999px; }

/* Interior-page hierarchy and card polish */
.pc-about-hero,.pc-contact-hero,.pc-services-hero,.page-hero{
    background:
      radial-gradient(circle at 86% 20%,rgba(6,169,224,.08),transparent 30%),
      radial-gradient(circle at 15% 86%,rgba(233,30,99,.055),transparent 26%),
      #f7f8f8;
}
.pc-about-mark,.pc-about-philosophy-art,.pc-contact-info,.pc-contact-form-card,.quote-box,.contact-card{ border-radius:var(--pc-radius-md); overflow:hidden; }
.pc-about-mark{ box-shadow:var(--pc-shadow-pro); }
.pc-about-mark-logo{ border-radius:10px; }
.pc-about-capabilities{ background:#101c29; }
.pc-about-cap-grid article{ transition:background .3s ease; }
.pc-about-cap-grid article:hover{ background:rgba(255,255,255,.035); }
.pc-about-philosophy-art{ box-shadow:0 18px 55px rgba(23,34,49,.06); }
.pc-service-card{ border-radius:var(--pc-radius-md); box-shadow:0 8px 25px rgba(23,34,49,.035); }
.pc-service-card:hover{ transform:translateY(-5px); box-shadow:0 24px 55px rgba(23,34,49,.10); }
.pc-service-card figure img{ transition:transform .55s ease; }
.pc-service-card:hover figure img{ transform:scale(1.04); }
.pc-contact-info{ box-shadow:var(--pc-shadow-pro); }
.pc-contact-form-card{ box-shadow:0 18px 55px rgba(23,34,49,.07); }
.pc-contact-artwork{ border-radius:10px; }
.pc-contact-submit,.submit-btn{ border-radius:999px!important; }

/* Generic legacy page surfaces used by quote/product/search pages */
.page-hero{ border-bottom:1px solid #e1e5e8; }
.page-hero .container{ padding-top:86px; padding-bottom:74px; }
.page-hero h1{ max-width:900px; font-size:clamp(52px,6vw,82px); line-height:.95; letter-spacing:-.055em; }
.page-hero p{ max-width:760px; color:#657281; font-size:17px; }
.section.soft{ background:#f6f7f8!important; }
.contact-card,.quote-box{ border:1px solid #e0e5e8; background:#fff; box-shadow:0 16px 45px rgba(23,34,49,.06); }

/* Subtle entrance motion */
.pc-reveal{ opacity:0; transform:translateY(24px); transition:opacity .72s ease,transform .72s cubic-bezier(.2,.7,.2,1); }
.pc-reveal.is-visible{ opacity:1; transform:none; }
.pc-reveal-delay-1{ transition-delay:.08s; }
.pc-reveal-delay-2{ transition-delay:.16s; }
.pc-reveal-delay-3{ transition-delay:.24s; }

@media (prefers-reduced-motion:reduce){
  .pc-reveal{ opacity:1!important; transform:none!important; transition:none!important; }
  .pc-category-pro-card,.pc-product-card,.pc-service-card,.pc-capability-card{ transition:none!important; }
}

@media (max-width:1100px){
    .pc-brand-system-head{ gap:54px; }
    .pc-brand-system-grid{ grid-template-columns:1fr .9fr; }
    .pc-brand-system-visual{ min-height:590px; }
    .pc-capability-card{ min-height:138px; }
}

@media (max-width:980px){
    .printcity-site .pc-section{ padding-top:82px; padding-bottom:82px; }
    .pc-hero-grid{ gap:30px; }
    .pc-hero-copy{ padding-top:60px; }
    .pc-hero-visual.pc-hero-slider{ height:510px; }
    .pc-brand-system-head{ grid-template-columns:1fr; gap:24px; margin-bottom:34px; }
    .pc-brand-system-intro{ justify-self:start; max-width:680px; }
    .pc-brand-system-grid{ grid-template-columns:1fr; }
    .pc-brand-system-visual{ min-height:520px; }
    .pc-brand-system-capabilities{ grid-template-columns:1fr 1fr; grid-template-rows:auto; }
    .pc-capability-card{ min-height:160px; }
    .pc-brand-system-rail{ overflow:auto; justify-content:flex-start; }
}

@media (max-width:680px){
    .printcity-site .container{ width:min(var(--container),calc(100% - 32px)); }
    .printcity-site .pc-section{ padding-top:68px; padding-bottom:68px; }
    .pc-hero-copy{ padding:48px 0 12px; }
    .pc-hero-title-lockup h1{ font-size:clamp(50px,15vw,70px); }
    .pc-hero-visual.pc-hero-slider{ height:400px; border-radius:12px; }
    .pc-hero-slides{ border-radius:12px; }
    .pc-category-pro-grid{ gap:12px; }
    .pc-category-pro-card{ border-radius:12px; }
    .pc-brand-system-head h2{ font-size:47px; }
    .pc-brand-system-actions{ flex-direction:column; align-items:flex-start; }
    .pc-brand-system-visual{ min-height:390px; border-radius:14px; }
    .pc-brand-system-badge{ top:14px; left:14px; right:14px; }
    .pc-brand-system-caption{ left:18px; right:18px; bottom:18px; grid-template-columns:38px 1fr; gap:12px; }
    .pc-brand-system-caption span{ width:38px; height:38px; }
    .pc-brand-system-caption p{ font-size:15px; }
    .pc-brand-system-capabilities{ grid-template-columns:1fr; }
    .pc-capability-card{ min-height:135px; padding:20px 18px; }
    .pc-capability-card:hover{ transform:translateY(-3px); }
    .pc-brand-system-rail{ padding-inline:18px; min-height:58px; }
    .pc-showcase-card{ border-radius:12px; }
    .pc-product-card{ border-radius:12px; }
    .pc-process-step{ border-radius:12px; }
    .pc-location-strip{ padding:66px 0; }
    .page-hero .container{ padding-top:62px; padding-bottom:56px; }
    .page-hero h1{ font-size:48px; }
}

/* =========================================================
   PRINT CITY — v9 layout & responsive refinement
   Restores the clean process table, adds a capability band
   to Built for Business, and hardens mobile/tablet layouts.
   ========================================================= */

/* Built for Business: integrated dark format capability band */
.pc-business-format-band{
    margin-top:18px;
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    background:#152231;
    color:#fff;
    border-radius:16px;
    overflow:hidden;
    box-shadow:0 20px 55px rgba(18,31,45,.10);
}
.pc-business-format-card{
    --format-accent:var(--pc-cyan);
    position:relative;
    min-height:255px;
    padding:46px 30px 34px;
    border-right:1px solid rgba(255,255,255,.12);
    display:flex;
    flex-direction:column;
    justify-content:flex-start;
}
.pc-business-format-card:last-child{border-right:0}
.pc-business-format-card::before{
    content:"";
    position:absolute;
    left:0; right:0; top:0;
    height:5px;
    background:var(--format-accent);
}
.pc-business-format-card>span{
    margin-bottom:50px;
    color:#b9c6d2;
    font-size:10px;
    font-weight:900;
    letter-spacing:.09em;
}
.pc-business-format-card h3{
    margin:0 0 16px;
    color:#fff;
    font-family:var(--pc-font-body);
    font-size:26px;
    line-height:1.05;
    letter-spacing:-.035em;
}
.pc-business-format-card p{
    margin:0;
    max-width:270px;
    color:#c4cdd6;
    font-size:13px;
    line-height:1.65;
}
.pc-format-cyan{--format-accent:var(--pc-cyan)}
.pc-format-magenta{--format-accent:var(--pc-magenta)}
.pc-format-yellow{--format-accent:var(--pc-yellow)}
.pc-format-green{--format-accent:var(--pc-green)}

/* Restore the original clean process table treatment */
.pc-process-section{background:#fff!important}
.pc-process-grid{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:0!important;
    border-top:1px solid var(--pc-line)!important;
    border-bottom:1px solid var(--pc-line)!important;
}
.pc-process-step{
    min-height:260px!important;
    padding:34px 28px 38px!important;
    background:transparent!important;
    border:0!important;
    border-right:1px solid var(--pc-line)!important;
    border-radius:0!important;
    box-shadow:none!important;
    transform:none!important;
    overflow:visible!important;
}
.pc-process-step:last-child{border-right:0!important}
.pc-process-step::after{display:none!important}
.pc-process-step>span{
    display:inline-grid;
    place-items:center;
    width:34px;
    height:34px;
    border-radius:50%;
    background:var(--pc-ink-deep);
    color:#fff;
    font-size:10px;
    font-weight:900;
}
.pc-process-step:nth-child(2)>span{background:var(--pc-cyan)}
.pc-process-step:nth-child(3)>span{background:var(--pc-magenta)}
.pc-process-step:nth-child(4)>span{background:#d3ad00}
.pc-process-step h3{margin:28px 0 9px!important;font-size:21px!important}
.pc-process-step p{margin:0;color:#717c88;font-size:14px;line-height:1.6}

/* Layout safety */
html,body{max-width:100%;overflow-x:hidden}
.printcity-site img{max-width:100%}
.pc-brand-system-grid,.pc-category-pro-grid,.pc-product-grid,.pc-showcase-viewport{min-width:0}

/* Tablet */
@media(max-width:980px){
    .pc-hero-grid{grid-template-columns:1fr!important;gap:28px!important;padding-bottom:58px}
    .pc-hero-copy{padding:58px 0 8px!important}
    .pc-hero-title-lockup{max-width:760px}
    .pc-hero-visual.pc-hero-slider{width:100%!important;max-width:none!important;height:500px!important;margin:0!important}
    .pc-business-format-band{grid-template-columns:repeat(2,minmax(0,1fr))}
    .pc-business-format-card{min-height:225px;border-bottom:1px solid rgba(255,255,255,.12)}
    .pc-business-format-card:nth-child(2){border-right:0}
    .pc-business-format-card:nth-child(n+3){border-bottom:0}
    .pc-process-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
    .pc-process-step:nth-child(2){border-right:0!important}
    .pc-process-step:nth-child(-n+2){border-bottom:1px solid var(--pc-line)!important}
    .pc-location-inner{grid-template-columns:1fr 1fr!important;gap:34px!important}
}

/* Mobile */
@media(max-width:680px){
    .printcity-site .container{width:calc(100% - 32px)!important;max-width:none!important}
    .pc-mainbar-inner{min-height:78px!important}
    .pc-brand img{width:188px!important;max-width:62vw!important}
    .pc-topbar-inner{min-height:36px;justify-content:center!important;text-align:center}
    .pc-topbar-left{display:none!important}
    .pc-topbar-right{justify-content:center!important;gap:8px!important;font-size:10px!important;white-space:normal!important;flex-wrap:wrap}
    .pc-topbar-right span:last-child{display:none}

    .pc-hero{min-height:0!important}
    .pc-hero-grid{display:grid!important;grid-template-columns:1fr!important;gap:24px!important;padding-bottom:44px!important}
    .pc-hero-copy{width:100%!important;padding:46px 0 4px!important}
    .pc-hero-title-lockup{max-width:none!important}
    .pc-hero-pretitle{font-size:23px!important;line-height:1.08}
    .pc-hero-title-lockup h1{font-size:clamp(52px,15.8vw,74px)!important;line-height:.86!important;letter-spacing:-.055em!important}
    .pc-hero-tagline{font-size:27px!important;line-height:1.04!important}
    .pc-hero-copy>p{font-size:15px!important;line-height:1.7!important;margin-top:20px!important}
    .pc-hero-actions{flex-direction:column!important;align-items:stretch!important;gap:12px!important}
    .pc-hero-actions .pc-btn-dark{justify-content:center;width:100%}
    .pc-hero-actions .pc-text-arrow{align-self:flex-start}
    .pc-hero-visual.pc-hero-slider{height:360px!important;width:100%!important;min-width:0!important;margin:0!important;border-radius:14px!important;box-shadow:0 22px 55px rgba(23,34,49,.14)!important}
    .pc-hero-slide-copy{left:18px!important;right:18px!important;bottom:20px!important}
    .pc-hero-slide-copy strong{font-size:23px!important}
    .pc-hero-slider-ui{left:14px!important;right:14px!important;top:14px!important}
    .pc-hero-arrows button{width:36px!important;height:36px!important}
    .pc-hero-slider .pc-cmyk-bars{right:10px!important;bottom:-14px!important;width:52px!important}

    .pc-brand-system-head h2{font-size:clamp(42px,12vw,54px)!important}
    .pc-brand-system-intro p{font-size:15px;line-height:1.65}
    .pc-brand-system-visual{min-height:340px!important}
    .pc-brand-system-badge{position:static!important;margin:14px!important;width:auto!important}
    .pc-brand-system-caption{left:16px!important;right:16px!important;bottom:16px!important}
    .pc-capability-card{grid-template-columns:40px 1fr!important;gap:14px!important;min-height:0!important;padding:18px 16px!important}
    .pc-capability-card>b{display:none!important}
    .pc-capability-card h3{font-size:18px!important}
    .pc-capability-card p{font-size:12px!important}

    .pc-business-format-band{grid-template-columns:1fr;border-radius:14px}
    .pc-business-format-card{
        min-height:0;
        padding:24px 22px 26px;
        border-right:0!important;
        border-bottom:1px solid rgba(255,255,255,.12)!important;
    }
    .pc-business-format-card:last-child{border-bottom:0!important}
    .pc-business-format-card>span{margin-bottom:20px}
    .pc-business-format-card h3{font-size:24px}
    .pc-business-format-card p{max-width:none;font-size:13px}

    .pc-process-section .pc-heading-inline h2{font-size:clamp(42px,12vw,56px)!important;line-height:.96!important}
    .pc-process-grid{grid-template-columns:1fr!important;border-top:1px solid var(--pc-line)!important}
    .pc-process-step{
        min-height:0!important;
        padding:26px 6px 28px!important;
        border-right:0!important;
        border-bottom:1px solid var(--pc-line)!important;
    }
    .pc-process-step:last-child{border-bottom:0!important}
    .pc-process-step h3{margin-top:20px!important;font-size:20px!important}

    .pc-location-strip{padding:54px 0!important}
    .pc-location-inner{grid-template-columns:1fr!important;gap:28px!important;align-items:start!important}
    .pc-location-inner h2{font-size:clamp(38px,11vw,50px)!important;line-height:.94!important}
    .pc-location-details{padding:22px 0 0!important;border-left:0!important;border-top:1px solid rgba(23,34,49,.28)!important;min-height:0!important}
    .pc-location-details p{font-size:18px!important;line-height:1.25!important}
    .pc-location-details p strong{font-size:25px!important}
    .pc-location-details a{font-size:16px!important;overflow-wrap:anywhere}

    .pc-showcase-heading{display:grid!important;grid-template-columns:1fr!important;gap:18px!important}
    .pc-showcase-controls{display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:18px!important}
    .pc-showcase-controls p{font-size:13px!important;max-width:70%!important}
    .pc-showcase-card{min-height:360px!important}

    .pc-product-grid{grid-template-columns:1fr!important}
    .pc-product-card.pc-product-feature{grid-column:auto!important}
    .pc-heading-inline{display:grid!important;grid-template-columns:1fr!important;gap:18px!important}

    /* Mobile drawer: clean full-width actions */
    .pc-mobile-panel{padding:18px 16px 26px!important}
    .pc-mobile-panel .mobile-panel-head{padding:2px 0 16px!important}
    .pc-mobile-panel .mobile-panel-head img{width:180px!important;max-width:65vw!important}
    .pc-mobile-panel .mobile-search{grid-template-columns:minmax(0,1fr) auto!important;gap:8px!important}
    .pc-mobile-panel .mobile-search input{min-height:48px!important;border-radius:12px!important}
    .pc-mobile-panel .mobile-search button{min-width:92px!important;border-radius:12px!important;background:var(--pc-magenta)!important}
    .pc-mobile-panel .mobile-quick-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:9px!important}
    .pc-mobile-panel .mobile-quote-btn{grid-column:1/-1!important;min-height:48px!important;border-radius:12px!important;background:var(--pc-magenta)!important}
    .pc-mobile-panel .mobile-call-btn,.pc-mobile-panel .mobile-whatsapp-btn{min-height:46px!important;border-radius:12px!important}
    .pc-mobile-panel .mobile-whatsapp-btn{border:1px solid #1fab5d!important;background:#f3fff8!important;color:#168346!important}
    .pc-mobile-panel .mobile-row,.pc-mobile-panel .mobile-details>summary{min-height:50px!important;padding:0!important;font-size:15px!important}
}

@media(max-width:420px){
    .pc-hero-title-lockup h1{font-size:clamp(48px,16vw,64px)!important}
    .pc-hero-pretitle{font-size:21px!important}
    .pc-hero-tagline{font-size:24px!important}
    .pc-hero-visual.pc-hero-slider{height:330px!important}
    .pc-showcase-controls{align-items:flex-start!important;flex-direction:column!important}
    .pc-showcase-controls p{max-width:none!important}
    .pc-mobile-panel .mobile-quick-actions{grid-template-columns:1fr!important}
    .pc-mobile-panel .mobile-quote-btn{grid-column:auto!important}
}

/* =========================================================
   V10 — ABOUT US / COMPANY PROFILE
   Corporate profile content translated into a web-first,
   responsive Print City presentation.
   ========================================================= */
.pc-about2-hero{
    position:relative;
    background:linear-gradient(180deg,#f8f9f7 0%,#fff 100%);
    border-bottom:1px solid var(--pc-line);
    overflow:hidden;
}
.pc-about2-hero::before{
    content:"";
    position:absolute;
    width:520px;height:520px;
    border:1px solid rgba(23,34,49,.06);
    border-radius:50%;
    left:-240px;bottom:-310px;
}
.pc-about2-hero-grid{
    min-height:690px;
    display:grid;
    grid-template-columns:minmax(0,.92fr) minmax(480px,1.08fr);
    gap:72px;
    align-items:center;
    padding-top:62px;
    padding-bottom:62px;
}
.pc-about2-hero-copy{position:relative;z-index:2}
.pc-about2-hero-copy h1{
    margin:14px 0 22px;
    max-width:760px;
    color:var(--pc-ink-deep);
    font-size:clamp(54px,6vw,88px);
    line-height:.94;
    letter-spacing:-.06em;
}
.pc-about2-hero-copy h1 em{font-style:normal;color:#0a4a60}
.pc-about2-hero-copy>p{
    max-width:690px;
    margin:0;
    color:#617080;
    font-size:18px;
    line-height:1.72;
}
.pc-about2-hero-actions{display:flex;gap:10px;align-items:center;margin-top:30px}
.pc-about2-hero-tags{
    margin-top:42px;
    padding-top:22px;
    border-top:1px solid #d8dde2;
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}
.pc-about2-hero-tags span{
    padding:8px 12px;
    border:1px solid #dce1e5;
    background:#fff;
    border-radius:999px;
    color:#455463;
    font-size:11px;
    font-weight:850;
    letter-spacing:.035em;
}
.pc-about2-hero-media{
    min-height:520px;
    position:relative;
    overflow:hidden;
    border-radius:18px;
    background:#0d2433;
    box-shadow:0 28px 80px rgba(23,34,49,.16);
}
.pc-about2-hero-media>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pc-about2-hero-media-shade{
    position:absolute;inset:0;
    background:linear-gradient(90deg,rgba(11,37,52,.42) 0%,rgba(11,37,52,.08) 42%,rgba(11,37,52,.02) 100%);
}
.pc-about2-media-note{
    position:absolute;
    left:26px;right:26px;bottom:26px;
    min-height:78px;
    display:flex;align-items:center;gap:16px;
    padding:14px 18px;
    background:rgba(255,255,255,.94);
    backdrop-filter:blur(10px);
    border:1px solid rgba(255,255,255,.75);
    border-radius:12px;
    box-shadow:0 18px 42px rgba(10,25,38,.16);
}
.pc-about2-media-note img{width:42px;height:52px;object-fit:contain;flex:0 0 auto}
.pc-about2-media-note div{display:grid;gap:2px}
.pc-about2-media-note small{text-transform:uppercase;letter-spacing:.13em;font-size:9px;color:#73808c;font-weight:900}
.pc-about2-media-note strong{color:var(--pc-ink-deep);font-size:14px}

.pc-about2-summary{background:#fff}
.pc-about2-summary-grid{display:grid;grid-template-columns:.76fr 1.24fr;gap:95px;align-items:start}
.pc-about2-section-label{position:sticky;top:150px;padding-right:28px}
.pc-about2-section-label h2{
    margin:14px 0 0;
    font-size:clamp(40px,4.7vw,66px);
    line-height:.99;
    letter-spacing:-.052em;
}
.pc-about2-summary-mark{width:74px;height:96px;margin-top:36px;display:flex;align-items:end}
.pc-about2-summary-mark img{width:100%;height:100%;object-fit:contain;object-position:left bottom}
.pc-about2-summary-copy{max-width:800px;color:#5f6d7c}
.pc-about2-summary-copy p{margin:0 0 22px;font-size:16px;line-height:1.78}
.pc-about2-summary-copy .lead{font-size:22px;line-height:1.55;color:var(--pc-ink-deep);font-weight:760;letter-spacing:-.015em}
.pc-about2-summary-cta{
    margin-top:34px;
    padding:24px 26px;
    display:grid;gap:5px;
    border-left:5px solid var(--pc-cyan);
    background:#f4f6f7;
}
.pc-about2-summary-cta strong{font-size:18px;color:var(--pc-ink-deep)}
.pc-about2-summary-cta span{color:#657280;font-size:14px}

.pc-about2-business{padding:92px 0 0;background:#f4f6f5;border-top:1px solid #e2e6e8}
.pc-about2-business-head{
    display:grid;
    grid-template-columns:1.05fr .95fr;
    gap:78px;
    align-items:end;
    padding-bottom:48px;
}
.pc-about2-business-head h2{
    margin:12px 0 0;
    max-width:720px;
    font-size:clamp(42px,4.7vw,66px);
    line-height:.99;
    letter-spacing:-.052em;
}
.pc-about2-business-head>p{margin:0;color:#637181;font-size:16px;line-height:1.75;max-width:620px}
.pc-about2-service-grid{display:grid;grid-template-columns:repeat(4,1fr);background:#101d2b;color:#fff;border-radius:16px 16px 0 0;overflow:hidden}
.pc-about2-service-grid article{
    min-height:300px;
    padding:34px 30px 38px;
    border-right:1px solid rgba(255,255,255,.12);
    position:relative;
    transition:background .25s ease,transform .25s ease;
}
.pc-about2-service-grid article:last-child{border-right:0}
.pc-about2-service-grid article::before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:#fff}
.pc-about2-service-grid article.cyan::before{background:var(--pc-cyan)}
.pc-about2-service-grid article.magenta::before{background:var(--pc-magenta)}
.pc-about2-service-grid article.yellow::before{background:var(--pc-yellow)}
.pc-about2-service-grid article.green::before{background:var(--pc-green)}
.pc-about2-service-grid article:hover{background:#152638}
.pc-about2-service-grid article>span{font-size:10px;color:#aeb9c5;letter-spacing:.14em;font-weight:900}
.pc-about2-service-grid h3{margin:62px 0 12px;font-size:25px;line-height:1.08}
.pc-about2-service-grid p{margin:0;color:#aeb8c3;font-size:14px;line-height:1.7}

.pc-about2-team{background:#0f1c29;color:#fff;position:relative;overflow:hidden}
.pc-about2-team::before{
    content:"";position:absolute;width:420px;height:420px;border:72px solid rgba(6,169,224,.055);border-radius:50%;right:-150px;top:-180px;
}
.pc-about2-team-heading{position:relative;z-index:2;display:grid;grid-template-columns:1fr .72fr;gap:70px;align-items:end;margin-bottom:54px}
.pc-about2-team .pc-kicker{color:#aab6c1}
.pc-about2-team-heading h2{margin:12px 0 0;font-size:clamp(44px,5vw,70px);line-height:.98;letter-spacing:-.055em;color:#fff}
.pc-about2-team-heading>p{margin:0;color:#aab5c0;font-size:16px;line-height:1.7}
.pc-about2-team-grid{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:22px}
.pc-about2-person{
    display:grid;
    grid-template-columns:220px minmax(0,1fr);
    min-height:470px;
    background:#fff;
    color:var(--pc-ink-deep);
    border-radius:16px;
    overflow:hidden;
    box-shadow:0 26px 70px rgba(0,0,0,.16);
}
.pc-about2-person-photo{position:relative;background:#dce6eb;min-height:100%}
.pc-about2-person-photo img{width:100%;height:100%;object-fit:cover;object-position:center top;image-rendering:auto}
.pc-about2-person-photo::after{content:"";position:absolute;inset:auto 0 0;height:42%;background:linear-gradient(0deg,rgba(8,20,30,.62),transparent)}
.pc-about2-person-photo>span{position:absolute;left:18px;bottom:18px;z-index:2;color:#fff;text-transform:uppercase;letter-spacing:.12em;font-size:9px;font-weight:900}
.pc-about2-person-copy{position:relative;padding:34px 30px 28px}
.pc-about2-person-index{position:absolute;right:26px;top:24px;color:#d3d9de;font-size:12px;font-weight:900;letter-spacing:.15em}
.pc-about2-person-copy h3{margin:5px 0 2px;font-size:32px;line-height:1;letter-spacing:-.04em}
.pc-about2-person-copy .role{margin:0 0 22px;color:#0b789c;font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:900}
.pc-about2-person-copy>p:not(.role){margin:0 0 14px;color:#5b6977;font-size:13.5px;line-height:1.68}
.pc-about2-person-values{display:flex;flex-wrap:wrap;gap:6px;margin-top:20px;padding-top:18px;border-top:1px solid #e0e4e7}
.pc-about2-person-values span{padding:6px 8px;background:#f2f4f5;border-radius:6px;color:#53616e;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}

.pc-about2-advantage{background:#f6f7f5}
.pc-about2-advantage-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:20px}
.pc-about2-advantage-card{min-height:500px;padding:48px;border-radius:16px;position:relative;overflow:hidden}
.pc-about2-advantage-card h2{margin:14px 0 24px;font-size:clamp(38px,4vw,58px);line-height:1;letter-spacing:-.05em}
.pc-about2-advantage-card>p{font-size:15px;line-height:1.78;max-width:680px}
.pc-about2-advantage-card.is-dark{background:#0e2d3d;color:#fff}
.pc-about2-advantage-card.is-dark::after{content:"";position:absolute;width:250px;height:250px;border:48px solid rgba(6,169,224,.12);border-radius:50%;right:-80px;bottom:-90px}
.pc-about2-advantage-card.is-dark .pc-kicker{color:#a8c2cf}
.pc-about2-advantage-card.is-dark>p{color:#c0ccd3}
.pc-about2-advantage-card.is-light{background:#fff;border:1px solid #e0e4e6;color:var(--pc-ink-deep)}
.pc-about2-advantage-card.is-light>p{color:#637180}
.pc-about2-advantage-points{position:relative;z-index:2;display:flex;flex-wrap:wrap;gap:8px;margin-top:38px}
.pc-about2-advantage-points span{padding:8px 11px;border:1px solid rgba(255,255,255,.18);border-radius:999px;color:#e6edf1;font-size:10px;font-weight:800}
.pc-about2-commit-list{margin-top:35px;border-top:1px solid #dfe3e6}
.pc-about2-commit-list div{display:grid;grid-template-columns:46px 1fr;gap:14px;align-items:center;padding:15px 0;border-bottom:1px solid #dfe3e6}
.pc-about2-commit-list b{font-size:10px;color:var(--pc-magenta);letter-spacing:.1em}
.pc-about2-commit-list span{font-size:13px;font-weight:750;color:#40505e}

.pc-about2-values{background:#fff;border-top:1px solid #e2e5e8;border-bottom:1px solid #e2e5e8}
.pc-about2-values-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.pc-about2-values-grid>div{padding:34px 28px 38px;border-right:1px solid #e2e5e8;min-height:190px}
.pc-about2-values-grid>div:last-child{border-right:0}
.pc-about2-values-grid span{font-size:10px;color:#8a96a1;font-weight:900;letter-spacing:.13em}
.pc-about2-values-grid h3{margin:22px 0 8px;font-size:23px}
.pc-about2-values-grid p{margin:0;color:#697583;font-size:13px;line-height:1.65}
.pc-about2-values-grid>div:nth-child(1){border-top:4px solid var(--pc-cyan)}
.pc-about2-values-grid>div:nth-child(2){border-top:4px solid var(--pc-magenta)}
.pc-about2-values-grid>div:nth-child(3){border-top:4px solid var(--pc-yellow)}
.pc-about2-values-grid>div:nth-child(4){border-top:4px solid var(--pc-green)}
.pc-about2-location-cta{margin-top:8px!important;display:inline-flex!important;width:max-content;padding:9px 13px;border:1px solid rgba(23,34,49,.32);border-radius:6px;font-weight:900!important}

@media(max-width:1100px){
    .pc-about2-hero-grid{grid-template-columns:1fr 1fr;gap:38px;min-height:620px}
    .pc-about2-hero-media{min-height:470px}
    .pc-about2-summary-grid{gap:55px}
    .pc-about2-business-head{gap:45px}
    .pc-about2-team-grid{grid-template-columns:1fr}
    .pc-about2-person{grid-template-columns:240px 1fr;min-height:430px}
}
@media(max-width:900px){
    .pc-about2-hero-grid{grid-template-columns:1fr;padding-top:54px;padding-bottom:54px}
    .pc-about2-hero-copy h1{font-size:clamp(52px,10vw,76px)}
    .pc-about2-hero-media{min-height:440px}
    .pc-about2-summary-grid{grid-template-columns:1fr;gap:34px}
    .pc-about2-section-label{position:static;padding:0}
    .pc-about2-section-label h2{max-width:680px}
    .pc-about2-summary-mark{display:none}
    .pc-about2-business-head{grid-template-columns:1fr;gap:22px}
    .pc-about2-service-grid{grid-template-columns:1fr 1fr}
    .pc-about2-service-grid article:nth-child(2){border-right:0}
    .pc-about2-service-grid article:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.12)}
    .pc-about2-team-heading{grid-template-columns:1fr;gap:20px}
    .pc-about2-advantage-grid{grid-template-columns:1fr}
    .pc-about2-values-grid{grid-template-columns:1fr 1fr}
    .pc-about2-values-grid>div:nth-child(2){border-right:0}
    .pc-about2-values-grid>div:nth-child(-n+2){border-bottom:1px solid #e2e5e8}
}
@media(max-width:680px){
    .pc-about2-hero-grid{padding-top:38px;padding-bottom:42px;gap:34px}
    .pc-about2-hero-copy h1{font-size:48px;line-height:.96;margin-top:10px}
    .pc-about2-hero-copy>p{font-size:16px;line-height:1.65}
    .pc-about2-hero-actions{display:grid;grid-template-columns:1fr;align-items:stretch}
    .pc-about2-hero-actions a{justify-content:center;width:100%}
    .pc-about2-hero-tags{margin-top:28px}
    .pc-about2-hero-media{min-height:350px;border-radius:12px}
    .pc-about2-media-note{left:14px;right:14px;bottom:14px;padding:11px 13px;min-height:64px}
    .pc-about2-media-note img{width:34px;height:42px}
    .pc-about2-media-note strong{font-size:12px}
    .pc-about2-summary-copy .lead{font-size:19px}
    .pc-about2-summary-copy p{font-size:15px}
    .pc-about2-business{padding-top:68px}
    .pc-about2-service-grid{grid-template-columns:1fr;border-radius:12px 12px 0 0}
    .pc-about2-service-grid article{min-height:auto;padding:28px 24px 30px;border-right:0;border-bottom:1px solid rgba(255,255,255,.12)!important}
    .pc-about2-service-grid article:last-child{border-bottom:0!important}
    .pc-about2-service-grid h3{margin:34px 0 10px}
    .pc-about2-team-heading h2{font-size:48px}
    .pc-about2-person{grid-template-columns:1fr;min-height:0}
    .pc-about2-person-photo{height:310px}
    .pc-about2-person-photo img{object-fit:contain;background:#dce6eb}
    .pc-about2-person-copy{padding:28px 24px}
    .pc-about2-person-copy h3{font-size:30px}
    .pc-about2-advantage-card{min-height:0;padding:32px 24px}
    .pc-about2-advantage-card h2{font-size:42px}
    .pc-about2-values-grid{grid-template-columns:1fr}
    .pc-about2-values-grid>div{border-right:0!important;border-bottom:1px solid #e2e5e8!important;min-height:0}
    .pc-about2-values-grid>div:last-child{border-bottom:0!important}
}
@media(max-width:420px){
    .pc-about2-hero-copy h1{font-size:42px}
    .pc-about2-hero-tags span{font-size:9px}
    .pc-about2-hero-media{min-height:310px}
    .pc-about2-section-label h2,.pc-about2-business-head h2{font-size:38px}
    .pc-about2-team-heading h2{font-size:40px}
    .pc-about2-person-photo{height:285px}
    .pc-about2-advantage-card h2{font-size:36px}
}

/* =========================================================
   V11 — ABOUT US HERO + EXECUTIVE SUMMARY REFINEMENT
   More visual hierarchy, less report-like text density.
   ========================================================= */
.pc-about3-hero{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 6% 8%,rgba(6,169,224,.07),transparent 24%),
        linear-gradient(180deg,#f7f8f6 0%,#ffffff 78%);
    border-bottom:1px solid #e0e5e8;
}
.pc-about3-hero::after{
    content:"";
    position:absolute;
    left:0;right:0;bottom:0;height:4px;
    background:linear-gradient(90deg,var(--pc-cyan) 0 25%,var(--pc-magenta) 25% 50%,var(--pc-yellow) 50% 75%,var(--pc-green) 75% 100%);
    opacity:.9;
}
.pc-about3-hero-grid{
    min-height:720px;
    padding-top:70px;
    padding-bottom:74px;
    display:grid;
    grid-template-columns:minmax(0,.93fr) minmax(520px,1.07fr);
    gap:70px;
    align-items:center;
}
.pc-about3-hero-copy{position:relative;z-index:2}
.pc-about3-hero-copy .pc-kicker{display:inline-flex;align-items:center;gap:10px}
.pc-about3-hero-copy .pc-kicker::before{
    content:"";width:34px;height:3px;border-radius:10px;
    background:linear-gradient(90deg,var(--pc-cyan),var(--pc-magenta),var(--pc-yellow));
}
.pc-about3-hero-copy h1{
    margin:16px 0 24px;
    max-width:780px;
    color:var(--pc-ink-deep);
    font-size:clamp(58px,5.8vw,88px);
    line-height:.94;
    letter-spacing:-.058em;
}
.pc-about3-hero-copy h1 em{font-style:normal;color:#0a526a}
.pc-about3-hero-copy>p{
    max-width:680px;
    margin:0;
    color:#5f6e7d;
    font-size:18px;
    line-height:1.74;
}
.pc-about3-hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}
.pc-about3-capabilities{
    margin-top:44px;
    padding-top:22px;
    border-top:1px solid #d8dde1;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:0;
}
.pc-about3-capabilities>div{
    min-height:110px;
    padding:4px 20px 0 0;
    display:grid;
    align-content:start;
    gap:5px;
    border-right:1px solid #e0e4e7;
}
.pc-about3-capabilities>div+div{padding-left:20px}
.pc-about3-capabilities>div:last-child{border-right:0}
.pc-about3-capabilities small{
    color:var(--pc-magenta);
    font-size:9px;
    letter-spacing:.14em;
    font-weight:900;
}
.pc-about3-capabilities strong{font-size:15px;line-height:1.25;color:var(--pc-ink-deep)}
.pc-about3-capabilities span{color:#788592;font-size:11px;line-height:1.5}

.pc-about3-hero-media{
    position:relative;
    min-height:555px;
    overflow:hidden;
    border-radius:24px;
    background:#0d2433;
    box-shadow:0 34px 90px rgba(17,36,51,.19);
}
.pc-about3-hero-media>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pc-about3-hero-overlay{
    position:absolute;inset:0;
    background:linear-gradient(180deg,rgba(8,31,45,.03) 20%,rgba(8,31,45,.1) 55%,rgba(8,31,45,.55) 100%);
}
.pc-about3-media-card{
    position:absolute;
    left:24px;right:24px;bottom:24px;
    min-height:94px;
    display:grid;
    grid-template-columns:58px minmax(0,1fr);
    gap:16px;
    align-items:center;
    padding:16px 20px;
    border:1px solid rgba(255,255,255,.75);
    border-radius:15px;
    background:rgba(255,255,255,.94);
    backdrop-filter:blur(14px);
    box-shadow:0 22px 48px rgba(4,22,33,.18);
}
.pc-about3-media-card-mark{
    width:58px;height:58px;border-radius:12px;
    background:#f2f5f6;
    display:grid;place-items:center;
}
.pc-about3-media-card-mark img{width:36px;height:46px;object-fit:contain}
.pc-about3-media-card small{display:block;margin-bottom:4px;color:#788591;text-transform:uppercase;letter-spacing:.13em;font-size:8.5px;font-weight:900}
.pc-about3-media-card strong{display:block;max-width:460px;color:var(--pc-ink-deep);font-size:15px;line-height:1.35}
.pc-about3-media-badges{
    position:absolute;top:22px;right:22px;
    display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px;
    max-width:250px;
}
.pc-about3-media-badges span{
    padding:7px 10px;
    border:1px solid rgba(255,255,255,.26);
    border-radius:999px;
    background:rgba(10,31,45,.62);
    backdrop-filter:blur(8px);
    color:#fff;
    text-transform:uppercase;
    letter-spacing:.09em;
    font-size:8.5px;
    font-weight:900;
}

.pc-about3-summary{
    padding:108px 0 96px;
    background:linear-gradient(135deg,rgba(9,176,218,.055),rgba(255,255,255,0) 72%);
    border-bottom:1px solid #e0e4e6;
}
.pc-about3-summary-head{
    display:grid;
    grid-template-columns:minmax(0,1.12fr) minmax(360px,.68fr);
    gap:80px;
    align-items:end;
    margin-bottom:52px;
}
.pc-about3-summary-head h2{
    margin:13px 0 0;
    max-width:850px;
    color:var(--pc-ink-deep);
    font-size:clamp(46px,5vw,72px);
    line-height:.98;
    letter-spacing:-.055em;
}
.pc-about3-summary-head>p{
    margin:0;
    max-width:570px;
    color:#5f6d7b;
    font-size:16px;
    line-height:1.76;
}
.pc-about3-summary-layout{
    display:grid;
    grid-template-columns:minmax(320px,.72fr) minmax(0,1.28fr);
    gap:20px;
    align-items:stretch;
}
.pc-about3-profile-card{
    position:relative;
    overflow:hidden;
    min-height:470px;
    padding:36px;
    border-radius:20px;
    color:#fff;
    background:
      radial-gradient(circle at 100% 0%,rgba(6,169,224,.18),transparent 38%),
      linear-gradient(150deg,#0b2635 0%,#0f1d2b 78%);
    box-shadow:0 28px 70px rgba(18,35,50,.12);
}
.pc-about3-profile-card::after{
    content:"";position:absolute;right:-75px;bottom:-95px;width:260px;height:260px;
    border:44px solid rgba(255,255,255,.055);border-radius:50%;
}
.pc-about3-profile-top{position:relative;z-index:2;display:flex;align-items:center;gap:14px;margin-bottom:52px}
.pc-about3-profile-top img{width:38px;height:50px;object-fit:contain}
.pc-about3-profile-top span{font-size:13px;font-weight:900;letter-spacing:.05em}
.pc-about3-profile-card h3{
    position:relative;z-index:2;
    margin:0 0 20px;
    max-width:440px;
    color:#fff;
    font-size:clamp(32px,3.2vw,47px);
    line-height:1.02;
    letter-spacing:-.045em;
}
.pc-about3-profile-card>p{position:relative;z-index:2;margin:0;max-width:480px;color:#b8c5cd;font-size:14px;line-height:1.76}
.pc-about3-profile-meta{
    position:absolute;z-index:2;left:36px;right:36px;bottom:34px;
    display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(255,255,255,.13);
}
.pc-about3-profile-meta>div{padding-top:17px}
.pc-about3-profile-meta>div+div{padding-left:20px;border-left:1px solid rgba(255,255,255,.13)}
.pc-about3-profile-meta small{display:block;color:#8397a4;text-transform:uppercase;letter-spacing:.12em;font-size:8px;font-weight:900}
.pc-about3-profile-meta strong{display:block;margin-top:5px;color:#fff;font-size:12px}

.pc-about3-summary-cards{display:grid;gap:12px}
.pc-about3-summary-cards article{
    position:relative;
    min-height:142px;
    display:grid;
    grid-template-columns:150px minmax(220px,.8fr) minmax(260px,1.15fr);
    gap:24px;
    align-items:center;
    padding:27px 30px;
    border:1px solid #dde2e5;
    border-radius:16px;
    background:#fff;
    transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}
.pc-about3-summary-cards article:hover{transform:translateY(-3px);box-shadow:0 16px 38px rgba(21,38,51,.07);border-color:#cfd8dd}
.pc-about3-summary-cards article::before{content:"";position:absolute;left:0;top:18px;bottom:18px;width:4px;border-radius:0 5px 5px 0;background:var(--pc-cyan)}
.pc-about3-summary-cards article:nth-child(2)::before{background:var(--pc-magenta)}
.pc-about3-summary-cards article:nth-child(3)::before{background:var(--pc-yellow)}
.pc-about3-summary-cards article>span{color:#7b8793;text-transform:uppercase;letter-spacing:.11em;font-size:9px;font-weight:900}
.pc-about3-summary-cards h3{margin:0;color:var(--pc-ink-deep);font-size:22px;line-height:1.18;letter-spacing:-.025em}
.pc-about3-summary-cards p{margin:0;color:#63717e;font-size:13px;line-height:1.7}

.pc-about3-principles{
    margin-top:20px;
    display:grid;
    grid-template-columns:repeat(4,minmax(110px,.55fr)) minmax(280px,1.6fr);
    border:1px solid #dce1e4;
    border-radius:16px;
    overflow:hidden;
    background:#fff;
}
.pc-about3-principles>div,
.pc-about3-principles>a{
    min-height:98px;
    padding:20px 22px;
    display:grid;
    align-content:center;
    gap:7px;
    border-right:1px solid #e0e4e6;
}
.pc-about3-principles>div b{color:var(--pc-magenta);font-size:9px;letter-spacing:.12em}
.pc-about3-principles>div:nth-child(2) b{color:var(--pc-cyan)}
.pc-about3-principles>div:nth-child(3) b{color:#cda500}
.pc-about3-principles>div:nth-child(4) b{color:var(--pc-green)}
.pc-about3-principles>div span{color:var(--pc-ink-deep);font-size:13px;font-weight:850}
.pc-about3-principles>a{
    border-right:0;
    text-decoration:none;
    background:var(--pc-yellow);
    color:var(--pc-ink-deep);
}
.pc-about3-principles>a strong{font-size:16px;line-height:1.2}
.pc-about3-principles>a span{font-size:11px;font-weight:750}
.pc-about3-principles>a:hover{background:#ffdc35}

@media(max-width:1180px){
    .pc-about3-hero-grid{grid-template-columns:1fr 1fr;gap:42px;min-height:660px}
    .pc-about3-hero-media{min-height:500px}
    .pc-about3-summary-head{gap:48px}
    .pc-about3-summary-cards article{grid-template-columns:115px minmax(200px,.8fr) minmax(240px,1.1fr);gap:18px}
}
@media(max-width:980px){
    .pc-about3-hero-grid{grid-template-columns:1fr;padding-top:56px;padding-bottom:58px}
    .pc-about3-hero-copy h1{max-width:780px}
    .pc-about3-hero-media{min-height:500px}
    .pc-about3-summary-head{grid-template-columns:1fr;gap:18px;margin-bottom:36px}
    .pc-about3-summary-head>p{max-width:760px}
    .pc-about3-summary-layout{grid-template-columns:1fr}
    .pc-about3-profile-card{min-height:420px}
    .pc-about3-summary-cards article{grid-template-columns:120px minmax(220px,.8fr) 1fr}
    .pc-about3-principles{grid-template-columns:repeat(4,1fr)}
    .pc-about3-principles>a{grid-column:1/-1;border-top:1px solid #dce1e4}
    .pc-about3-principles>div:nth-child(4){border-right:0}
}
@media(max-width:720px){
    .pc-about3-hero-grid{padding-top:40px;padding-bottom:44px;gap:34px}
    .pc-about3-hero-copy h1{font-size:50px;line-height:.97;margin-top:11px}
    .pc-about3-hero-copy>p{font-size:16px}
    .pc-about3-hero-actions{display:grid;grid-template-columns:1fr}
    .pc-about3-hero-actions a{width:100%;justify-content:center}
    .pc-about3-capabilities{grid-template-columns:1fr;margin-top:30px}
    .pc-about3-capabilities>div{min-height:auto;padding:14px 0;border-right:0;border-bottom:1px solid #e0e4e7}
    .pc-about3-capabilities>div+div{padding-left:0}
    .pc-about3-capabilities>div:last-child{border-bottom:0}
    .pc-about3-hero-media{min-height:390px;border-radius:16px}
    .pc-about3-media-card{left:14px;right:14px;bottom:14px;grid-template-columns:46px 1fr;padding:12px 14px;min-height:76px}
    .pc-about3-media-card-mark{width:46px;height:46px}
    .pc-about3-media-card-mark img{width:30px;height:38px}
    .pc-about3-media-card strong{font-size:12px}
    .pc-about3-media-badges{top:12px;right:12px;max-width:210px}

    .pc-about3-summary{padding:72px 0 68px}
    .pc-about3-summary-head h2{font-size:46px}
    .pc-about3-summary-cards article{grid-template-columns:1fr;gap:9px;padding:25px 24px}
    .pc-about3-summary-cards article>span{margin-bottom:2px}
    .pc-about3-summary-cards h3{font-size:21px}
    .pc-about3-profile-card{min-height:450px;padding:28px 24px}
    .pc-about3-profile-top{margin-bottom:40px}
    .pc-about3-profile-card h3{font-size:38px}
    .pc-about3-profile-meta{left:24px;right:24px;bottom:26px}
    .pc-about3-principles{grid-template-columns:1fr 1fr}
    .pc-about3-principles>div:nth-child(2){border-right:0}
    .pc-about3-principles>div:nth-child(-n+2){border-bottom:1px solid #e0e4e6}
    .pc-about3-principles>div:nth-child(4){border-right:0}
}
@media(max-width:440px){
    .pc-about3-hero-copy h1{font-size:42px}
    .pc-about3-hero-media{min-height:335px}
    .pc-about3-media-badges span{font-size:7.5px;padding:6px 8px}
    .pc-about3-summary-head h2{font-size:38px}
    .pc-about3-profile-card{min-height:490px}
    .pc-about3-profile-meta{grid-template-columns:1fr}
    .pc-about3-profile-meta>div+div{padding-left:0;border-left:0;margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.13)}
    .pc-about3-principles{grid-template-columns:1fr}
    .pc-about3-principles>div{border-right:0!important;border-bottom:1px solid #e0e4e6!important;min-height:78px}
}

/* =========================================================
   V13 — Clean About hero + compact company profile download
   ========================================================= */
.pc-about4-hero{
    padding:72px 0 86px;
    background:linear-gradient(180deg,#f7f9f9 0%,#fff 100%);
    border-bottom:1px solid #e3e7e9;
}
.pc-about4-shell{
    position:relative;
    display:grid;
    grid-template-columns:minmax(0,.94fr) minmax(480px,1.06fr);
    min-height:590px;
    overflow:hidden;
    border:1px solid #dfe5e8;
    border-radius:26px;
    background:#fff;
    box-shadow:0 26px 74px rgba(17,35,49,.09);
}
.pc-about4-copy{
    position:relative;
    z-index:2;
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:64px 58px 48px;
}
.pc-about4-copy .pc-kicker{margin-bottom:18px}
.pc-about4-copy h1{
    margin:0;
    max-width:620px;
    color:var(--pc-ink-deep);
    font-size:clamp(52px,5.2vw,78px);
    line-height:.96;
    letter-spacing:-.055em;
}
.pc-about4-copy h1 em{font-style:normal;color:#0b627a}
.pc-about4-copy>p{
    margin:24px 0 0;
    max-width:610px;
    color:#5f6e7b;
    font-size:16px;
    line-height:1.75;
}
.pc-about4-actions{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    align-items:stretch;
    margin-top:31px;
}
.pc-profile-download{
    min-width:218px;
    display:flex;
    align-items:center;
    gap:12px;
    padding:10px 16px 10px 11px;
    border:1px solid #d5dde1;
    border-radius:12px;
    background:#fff;
    color:var(--pc-ink-deep);
    text-decoration:none;
    transition:border-color .22s ease,transform .22s ease,box-shadow .22s ease;
}
.pc-profile-download:hover{transform:translateY(-2px);border-color:#aebbc3;box-shadow:0 12px 28px rgba(14,33,47,.08)}
.pc-profile-download-icon{
    width:42px;height:42px;border-radius:9px;
    display:grid;place-items:center;
    background:#eef3f5;
    color:#0b627a;
    font-size:20px;font-weight:900;
}
.pc-profile-download small{display:block;margin-bottom:2px;color:#85919b;text-transform:uppercase;letter-spacing:.11em;font-size:7.5px;font-weight:900}
.pc-profile-download strong{display:block;font-size:12px;line-height:1.2}
.pc-about4-points{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    margin-top:42px;
    padding-top:20px;
    border-top:1px solid #e1e6e8;
}
.pc-about4-points>div{min-width:0;padding-right:18px}
.pc-about4-points>div+div{padding-left:18px;border-left:1px solid #e1e6e8}
.pc-about4-points span{display:block;margin-bottom:7px;color:var(--pc-magenta);font-size:8px;font-weight:900;letter-spacing:.12em}
.pc-about4-points>div:nth-child(2) span{color:var(--pc-cyan)}
.pc-about4-points>div:nth-child(3) span{color:#c9a000}
.pc-about4-points strong{display:block;color:var(--pc-ink-deep);font-size:13px}
.pc-about4-points small{display:block;margin-top:4px;color:#7a8791;font-size:10px;line-height:1.4}
.pc-about4-media{position:relative;min-height:590px;background:#0b2231}
.pc-about4-media>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pc-about4-media::after{
    content:"";position:absolute;inset:0;
    background:linear-gradient(180deg,transparent 50%,rgba(8,26,39,.38) 100%);
}
.pc-about4-media-note{
    position:absolute;z-index:3;
    left:22px;right:22px;bottom:22px;
    display:grid;
    grid-template-columns:50px 1fr;
    gap:13px;
    align-items:center;
    padding:14px 17px;
    border:1px solid rgba(255,255,255,.8);
    border-radius:13px;
    background:rgba(255,255,255,.94);
    backdrop-filter:blur(10px);
    box-shadow:0 16px 38px rgba(0,0,0,.14);
}
.pc-about4-media-note img{width:34px;height:44px;object-fit:contain;justify-self:center}
.pc-about4-media-note small{display:block;margin-bottom:3px;color:#83909a;text-transform:uppercase;letter-spacing:.12em;font-size:8px;font-weight:900}
.pc-about4-media-note strong{display:block;color:var(--pc-ink-deep);font-size:13px;line-height:1.35}

.pc-profile-strip{padding:0 0 24px;background:#fff}
.pc-profile-strip-card{
    display:grid;
    grid-template-columns:minmax(260px,.8fr) minmax(320px,1.25fr) auto;
    gap:34px;
    align-items:center;
    padding:24px 27px;
    border:1px solid #dfe4e7;
    border-radius:17px;
    background:linear-gradient(105deg,#f7f9f9 0%,#fff 70%);
    box-shadow:0 10px 28px rgba(15,33,47,.045);
}
.pc-profile-strip-brand{display:flex;align-items:center;gap:14px}
.pc-profile-strip-brand img{width:33px;height:44px;object-fit:contain}
.pc-profile-strip-brand span{display:block;color:#85919a;text-transform:uppercase;letter-spacing:.12em;font-size:8px;font-weight:900}
.pc-profile-strip-brand strong{display:block;margin-top:4px;color:var(--pc-ink-deep);font-size:16px;line-height:1.2}
.pc-profile-strip-card>p{margin:0;color:#667480;font-size:12.5px;line-height:1.65}
.pc-profile-strip-card>a{
    display:inline-flex;align-items:center;justify-content:center;gap:10px;
    white-space:nowrap;
    padding:13px 17px;
    border-radius:10px;
    background:var(--pc-ink-deep);
    color:#fff;
    text-decoration:none;
    font-size:11px;font-weight:850;
    transition:transform .2s ease,background .2s ease;
}
.pc-profile-strip-card>a:hover{transform:translateY(-2px);background:#12384d}
.pc-profile-strip-card>a span{font-size:16px;line-height:1}

@media(max-width:1050px){
    .pc-about4-shell{grid-template-columns:1fr 1fr;min-height:540px}
    .pc-about4-copy{padding:48px 38px 38px}
    .pc-about4-media{min-height:540px}
    .pc-profile-strip-card{grid-template-columns:1fr auto}
    .pc-profile-strip-card>p{grid-column:1/2;grid-row:2}
    .pc-profile-strip-card>a{grid-column:2;grid-row:1/3}
}
@media(max-width:820px){
    .pc-about4-hero{padding:48px 0 62px}
    .pc-about4-shell{grid-template-columns:1fr}
    .pc-about4-copy{padding:46px 34px 38px}
    .pc-about4-copy h1{max-width:700px}
    .pc-about4-media{min-height:430px}
    .pc-profile-strip-card{grid-template-columns:1fr;gap:15px}
    .pc-profile-strip-card>p,.pc-profile-strip-card>a{grid-column:auto;grid-row:auto}
    .pc-profile-strip-card>a{justify-self:start}
}
@media(max-width:560px){
    .pc-about4-hero{padding:30px 0 48px}
    .pc-about4-shell{border-radius:17px}
    .pc-about4-copy{padding:34px 23px 28px}
    .pc-about4-copy h1{font-size:44px;line-height:.98}
    .pc-about4-copy>p{font-size:14.5px;line-height:1.65}
    .pc-about4-actions{display:grid;grid-template-columns:1fr}
    .pc-about4-actions>a{width:100%}
    .pc-profile-download{min-width:0}
    .pc-about4-points{grid-template-columns:1fr;gap:0;margin-top:30px}
    .pc-about4-points>div{padding:12px 0!important;border-left:0!important;border-bottom:1px solid #e1e6e8}
    .pc-about4-points>div:last-child{border-bottom:0}
    .pc-about4-media{min-height:330px}
    .pc-about4-media-note{left:12px;right:12px;bottom:12px;grid-template-columns:42px 1fr;padding:11px 12px}
    .pc-about4-media-note img{width:28px;height:36px}
    .pc-about4-media-note strong{font-size:11.5px}
    .pc-profile-strip{padding-bottom:16px}
    .pc-profile-strip-card{padding:20px;border-radius:14px}
    .pc-profile-strip-card>a{width:100%}
}

/* =========================================================
   V14 — About hero: clean corporate split
   ========================================================= */
.pc-about5-hero{
    position:relative;
    overflow:hidden;
    padding:78px 0 88px;
    background:#fff;
    border-bottom:1px solid #e7eaec;
}
.pc-about5-hero::before{
    content:"";
    position:absolute;
    left:0;top:0;bottom:0;
    width:min(32vw,520px);
    background:linear-gradient(135deg,rgba(9,176,218,.055),rgba(255,255,255,0) 72%);
    pointer-events:none;
}
.pc-about5-grid{
    position:relative;
    display:grid;
    grid-template-columns:minmax(0,.9fr) minmax(520px,1.1fr);
    gap:72px;
    align-items:center;
}
.pc-about5-copy{padding:12px 0 6px}
.pc-about5-eyebrow{
    display:flex;align-items:center;gap:12px;
    margin-bottom:23px;
    color:#536575;
    text-transform:uppercase;
    letter-spacing:.18em;
    font-size:10px;
    font-weight:900;
}
.pc-about5-eyebrow span{
    width:35px;height:3px;border-radius:99px;
    background:linear-gradient(90deg,var(--pc-cyan) 0 34%,var(--pc-magenta) 34% 68%,var(--pc-yellow) 68% 100%);
}
.pc-about5-copy h1{
    margin:0;
    max-width:690px;
    color:var(--pc-ink-deep);
    font-size:clamp(54px,5.3vw,82px);
    line-height:.94;
    letter-spacing:-.055em;
}
.pc-about5-copy h1 em{
    display:block;
    margin-top:9px;
    color:#0b627a;
    font-style:normal;
}
.pc-about5-copy>p{
    max-width:680px;
    margin:27px 0 0;
    color:#61707d;
    font-size:16px;
    line-height:1.78;
}
.pc-about5-actions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:13px;
    margin-top:31px;
}
.pc-about5-profile{
    display:inline-flex;
    align-items:center;
    gap:11px;
    min-height:48px;
    padding:7px 15px 7px 8px;
    color:var(--pc-ink-deep);
    text-decoration:none;
    border:1px solid #ccd5da;
    border-radius:10px;
    background:#fff;
    transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.pc-about5-profile:hover{transform:translateY(-2px);border-color:#a8b8c1;box-shadow:0 10px 25px rgba(18,38,52,.07)}
.pc-about5-profile-icon{
    width:34px;height:34px;
    display:grid;place-items:center;
    border-radius:7px;
    background:#eff4f6;
    color:#0b627a;
    font-size:17px;
    font-weight:900;
}
.pc-about5-profile strong{display:block;font-size:11px;line-height:1.2}
.pc-about5-profile small{display:block;margin-top:2px;color:#89959e;font-size:8px;line-height:1.2;text-transform:uppercase;letter-spacing:.1em;font-weight:850}
.pc-about5-proof{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:0;
    margin-top:46px;
    padding-top:22px;
    border-top:1px solid #dde3e6;
}
.pc-about5-proof>div{padding-right:20px}
.pc-about5-proof>div+div{padding-left:20px;border-left:1px solid #dde3e6}
.pc-about5-proof strong{display:block;color:var(--pc-ink-deep);font-size:12px;line-height:1.35}
.pc-about5-proof span{display:block;margin-top:5px;color:#7d8992;font-size:10px;line-height:1.5}
.pc-about5-visual{
    position:relative;
    min-height:610px;
    overflow:hidden;
    border-radius:4px 28px 28px 4px;
    background:#0b2231;
    box-shadow:0 28px 70px rgba(16,36,50,.13);
}
.pc-about5-visual>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.pc-about5-visual::after{
    content:"";
    position:absolute;inset:0;
    background:linear-gradient(180deg,rgba(4,24,37,0) 55%,rgba(4,24,37,.48) 100%);
    pointer-events:none;
}
.pc-about5-colorbar{
    position:absolute;z-index:3;left:0;top:0;
    display:grid;grid-template-columns:repeat(4,1fr);
    width:190px;height:5px;
}
.pc-about5-colorbar i:nth-child(1){background:var(--pc-cyan)}
.pc-about5-colorbar i:nth-child(2){background:var(--pc-magenta)}
.pc-about5-colorbar i:nth-child(3){background:var(--pc-yellow)}
.pc-about5-colorbar i:nth-child(4){background:var(--pc-green)}
.pc-about5-caption{
    position:absolute;z-index:3;
    left:28px;right:28px;bottom:25px;
    display:flex;align-items:flex-end;justify-content:space-between;gap:20px;
    padding-top:15px;
    border-top:1px solid rgba(255,255,255,.45);
    color:#fff;
}
.pc-about5-caption span{font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.16em;opacity:.8}
.pc-about5-caption strong{max-width:370px;text-align:right;font-size:15px;line-height:1.35}

@media(max-width:1100px){
    .pc-about5-grid{grid-template-columns:minmax(0,1fr) minmax(430px,.95fr);gap:46px}
    .pc-about5-visual{min-height:550px}
    .pc-about5-copy h1{font-size:clamp(50px,5.5vw,70px)}
}
@media(max-width:880px){
    .pc-about5-hero{padding:55px 0 68px}
    .pc-about5-grid{grid-template-columns:1fr;gap:38px}
    .pc-about5-copy{max-width:760px}
    .pc-about5-copy h1{max-width:760px}
    .pc-about5-visual{min-height:470px;border-radius:20px}
}
@media(max-width:620px){
    .pc-about5-hero{padding:34px 0 48px}
    .pc-about5-copy h1{font-size:46px;line-height:.97;letter-spacing:-.045em}
    .pc-about5-copy>p{margin-top:20px;font-size:14.5px;line-height:1.68}
    .pc-about5-actions{display:grid;grid-template-columns:1fr;margin-top:25px}
    .pc-about5-actions>a{width:100%;justify-content:center}
    .pc-about5-profile{min-height:52px}
    .pc-about5-proof{grid-template-columns:1fr;margin-top:30px;padding-top:8px}
    .pc-about5-proof>div{padding:13px 0!important;border-left:0!important;border-bottom:1px solid #e0e5e8}
    .pc-about5-proof>div:last-child{border-bottom:0}
    .pc-about5-visual{min-height:360px;border-radius:16px}
    .pc-about5-caption{left:17px;right:17px;bottom:17px;display:block}
    .pc-about5-caption strong{display:block;margin-top:5px;text-align:left;font-size:13px}
    .pc-about5-colorbar{width:135px;height:4px}
}

/* =========================================================
   V15 — TYPOGRAPHY + MOBILE NAV UX POLISH
   Increase legibility across the site and rebuild the mobile
   drawer around Print City's navy visual system.
   ========================================================= */

/* Global readable type scale */
body.printcity-site{
    font-family:"Manrope","Segoe UI",Arial,sans-serif;
    font-size:17px;
    line-height:1.68;
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
}

.pc-topbar{font-size:13px}
.pc-nav-link{font-size:15px;font-weight:750}
.pc-header-search input{font-size:14px}
.pc-quote-btn{font-size:14px}
.pc-mega-head span{font-size:11.5px}
.pc-mega-head h3{font-size:25px}
.pc-mega-head a{font-size:14px}
.pc-mega-cat-title{font-size:15px}
.pc-mega-category>a:not(.pc-mega-cat-title){font-size:13.5px;line-height:1.55}
.pc-mega-foot{font-size:13.5px}

.pc-eyebrow,
.pc-section-label,
.pc-about-kicker,
.printcity-site .page-hero .kicker{font-size:11.5px!important}

.pc-btn-dark,
.pc-btn-light,
.pc-btn-outline,
.pc-btn-link,
.pc-text-arrow{font-size:14.5px}

.pc-story-stat strong{font-size:12.5px}
.pc-story-stat span{font-size:16px}
.pc-product-card-body>span{font-size:11px}
.pc-product-card-body h3{font-size:21px}
.pc-product-card-body b{font-size:12.5px}
.pc-work-card span{font-size:11px}
.pc-work-card h3{font-size:23px}
.pc-process-step h3{font-size:22px}
.pc-process-step p{font-size:15px;line-height:1.7}
.pc-location-details p{font-size:16px}
.pc-location-details a{font-size:17px}

.pc-footer-cta-copy>span{font-size:11px}
.pc-footer-cta p{font-size:15px;line-height:1.65}
.pc-footer-primary{font-size:13px}
.pc-footer-call{font-size:13px}
.pc-footer-brand p{font-size:14px;line-height:1.7}
.pc-footer h4{font-size:11.5px}
.pc-footer-contact a,
.pc-footer-contact p{font-size:14px}
.pc-footer-actions-small a{font-size:12px}
.pc-footer-bottom{font-size:11px}

.printcity-site .page-hero p{font-size:18px;line-height:1.65}
.printcity-site .sidebar h3{font-size:15px}
.printcity-site .sidebar a{font-size:14px}
.printcity-site .filter-pill{font-size:12px}

/* Mobile menu toggle gets the same navy language as the drawer */
@media(max-width:980px){
    .pc-menu-toggle,
    .menu-toggle{
        width:46px!important;
        height:46px!important;
        border-radius:12px!important;
        background:var(--pc-ink-deep)!important;
        border:1px solid var(--pc-ink-deep)!important;
        box-shadow:0 10px 26px rgba(23,34,49,.16)!important;
    }
    .pc-menu-toggle span,
    .menu-toggle span{background:#fff!important}
}

@media(max-width:680px){
    body.printcity-site{font-size:16.5px;line-height:1.68}
    .printcity-site .container{width:calc(100% - 36px)!important}

    /* drawer shell */
    .pc-mobile-panel{
        padding:0 20px 32px!important;
        background:#f7f9fb!important;
        overscroll-behavior:contain;
    }
    .pc-mobile-panel .mobile-panel-head{
        min-height:82px;
        margin:0 -20px 18px!important;
        padding:14px 20px!important;
        background:#fff!important;
        border-bottom:1px solid #e3e8ed!important;
        box-shadow:0 8px 22px rgba(23,34,49,.04);
    }
    .pc-mobile-panel .mobile-panel-head img{
        width:182px!important;
        max-width:62vw!important;
        max-height:52px!important;
    }
    .pc-mobile-panel .mobile-close{
        width:44px!important;
        height:44px!important;
        display:grid!important;
        place-items:center!important;
        border-radius:12px!important;
        background:var(--pc-ink-deep)!important;
        color:#fff!important;
        font-size:29px!important;
        font-weight:500!important;
        box-shadow:none!important;
    }

    /* search */
    .pc-mobile-panel .mobile-search{
        grid-template-columns:minmax(0,1fr) 104px!important;
        gap:10px!important;
        margin:0 0 12px!important;
    }
    .pc-mobile-panel .mobile-search input{
        min-height:52px!important;
        padding:0 15px!important;
        border:1px solid #d7dee5!important;
        border-radius:12px!important;
        background:#fff!important;
        color:var(--pc-ink-deep)!important;
        font-size:15.5px!important;
        outline:none!important;
    }
    .pc-mobile-panel .mobile-search input:focus{
        border-color:var(--pc-ink)!important;
        box-shadow:0 0 0 3px rgba(45,59,78,.08)!important;
    }
    .pc-mobile-panel .mobile-search button{
        min-width:0!important;
        min-height:52px!important;
        padding:0 16px!important;
        border-radius:12px!important;
        background:var(--pc-ink-deep)!important;
        color:#fff!important;
        font-size:14.5px!important;
        font-weight:850!important;
        box-shadow:none!important;
    }

    /* quick actions */
    .pc-mobile-panel .mobile-quick-actions{
        display:grid!important;
        grid-template-columns:1fr 1fr!important;
        gap:10px!important;
        margin:0 0 18px!important;
    }
    .pc-mobile-panel .mobile-quote-btn{
        grid-column:1/-1!important;
        min-height:52px!important;
        padding:0 17px!important;
        border:1px solid var(--pc-ink-deep)!important;
        border-radius:12px!important;
        background:var(--pc-ink-deep)!important;
        color:#fff!important;
        font-size:15px!important;
        font-weight:850!important;
        justify-content:center!important;
    }
    .pc-mobile-panel .mobile-call-btn,
    .pc-mobile-panel .mobile-whatsapp-btn{
        min-height:50px!important;
        padding:0 15px!important;
        border:1px solid #cbd3db!important;
        border-radius:12px!important;
        background:#fff!important;
        color:var(--pc-ink-deep)!important;
        font-size:14.5px!important;
        font-weight:800!important;
        justify-content:center!important;
    }
    .pc-mobile-panel .mobile-call-btn:hover,
    .pc-mobile-panel .mobile-whatsapp-btn:hover{
        border-color:var(--pc-ink-deep)!important;
        background:#f0f3f6!important;
    }

    /* navigation list */
    .pc-mobile-panel .mobile-row,
    .pc-mobile-panel .mobile-details>summary{
        min-height:58px!important;
        padding:0 4px!important;
        border-bottom:1px solid #dce2e8!important;
        background:transparent!important;
        color:var(--pc-ink-deep)!important;
        font-size:16.5px!important;
        font-weight:800!important;
        letter-spacing:-.01em!important;
    }
    .pc-mobile-panel .mobile-row:first-of-type{
        border-top:1px solid #dce2e8!important;
    }
    .pc-mobile-panel .mobile-row b,
    .pc-mobile-panel .mobile-details>summary b{
        color:#6f7c8a!important;
        font-size:22px!important;
        font-weight:700!important;
    }
    .pc-mobile-panel .mobile-details[open]>summary{
        color:var(--pc-ink-deep)!important;
        border-bottom-color:#cfd7df!important;
    }
    .pc-mobile-panel .mobile-details[open]>summary b{
        color:var(--pc-ink-deep)!important;
    }
    .pc-mobile-panel .mobile-product-row{
        min-height:48px!important;
        padding:0 14px!important;
        margin:0!important;
        border-bottom:1px solid #e5e9ed!important;
        background:#eef2f5!important;
        color:#465568!important;
        font-size:14.5px!important;
        font-weight:700!important;
    }

    /* keep supporting copy readable across mobile sections */
    .pc-capability-card p{font-size:13.5px!important;line-height:1.6!important}
    .pc-business-format-card p{font-size:14px!important;line-height:1.65!important}
    .pc-process-step p{font-size:15px!important}
    .pc-showcase-controls p{font-size:14px!important;line-height:1.6!important}
    .pc-footer-cta p{font-size:14.5px!important}
}

@media(max-width:420px){
    .pc-mobile-panel{padding-left:16px!important;padding-right:16px!important}
    .pc-mobile-panel .mobile-panel-head{margin-left:-16px!important;margin-right:-16px!important;padding-left:16px!important;padding-right:16px!important}
    .pc-mobile-panel .mobile-search{grid-template-columns:minmax(0,1fr) 92px!important}
    .pc-mobile-panel .mobile-search button{font-size:14px!important;padding-inline:12px!important}
    .pc-mobile-panel .mobile-quick-actions{grid-template-columns:1fr 1fr!important}
    .pc-mobile-panel .mobile-quote-btn{grid-column:1/-1!important}
}

/* =========================================================
   V16 — ACCESSIBLE READABLE TYPOGRAPHY
   Keep supporting copy and micro labels comfortably readable
   on desktop and mobile without making the UI feel oversized.
   ========================================================= */
body.printcity-site{
    font-size:18px;
    line-height:1.72;
}

/* Minimum readable content copy */
.printcity-site main p{
    font-size:16.5px!important;
    line-height:1.75!important;
}
.printcity-site main small{
    font-size:13px!important;
    line-height:1.55!important;
}

/* Eyebrows, tags and micro-labels */
.pc-eyebrow,
.pc-section-label,
.pc-kicker,
.pc-about-kicker,
.pc-about5-eyebrow,
.pc-hero-pretitle,
.printcity-site .page-hero .kicker,
.pc-footer-cta-copy>span,
.pc-profile-strip-brand span,
.pc-about3-summary-cards article>span,
.pc-about3-profile-meta small,
.pc-about3-profile-top span,
.pc-about3-principles>div b,
.pc-about4-media-note small,
.pc-about5-caption span,
.pc-about5-profile small,
.pc-product-card-body>span,
.pc-work-card span{
    font-size:12.5px!important;
    line-height:1.45!important;
    letter-spacing:.09em!important;
}

/* Company profile strip shown on Home */
.pc-profile-strip-card{
    padding-top:24px!important;
    padding-bottom:24px!important;
}
.pc-profile-strip-brand strong{
    font-size:19px!important;
    line-height:1.3!important;
}
.pc-profile-strip-card>p{
    font-size:16.5px!important;
    line-height:1.65!important;
}
.pc-profile-strip-card>a{
    font-size:15.5px!important;
    min-height:48px!important;
}

/* Core supporting copy across sections */
.pc-process-step p,
.pc-capability-card p,
.pc-business-format-card p,
.pc-showcase-controls p,
.pc-story-stat strong,
.pc-about3-summary-cards p,
.pc-about3-profile-card>p,
.pc-about5-proof span,
.pc-about4-points small,
.pc-about4-copy>p,
.pc-about5-copy>p,
.pc-footer-cta p,
.pc-footer-brand p,
.pc-footer-contact p,
.printcity-site .page-hero p{
    font-size:16.5px!important;
    line-height:1.72!important;
}

.pc-about3-summary-cards h3,
.pc-process-step h3,
.pc-product-card-body h3{
    line-height:1.25!important;
}

/* Buttons and utility text should not look tiny next to larger copy */
.pc-btn-dark,
.pc-btn-light,
.pc-btn-outline,
.pc-btn-link,
.pc-text-arrow,
.pc-quote-btn,
.pc-profile-download{
    font-size:15.5px!important;
}

.pc-footer-primary,
.pc-footer-call,
.pc-footer-actions-small a,
.pc-footer-bottom{
    font-size:13.5px!important;
    line-height:1.55!important;
}
.pc-footer h4{
    font-size:12.5px!important;
}

/* Header is intentionally compact but still readable */
.pc-topbar{font-size:13.5px!important}
.pc-nav-link{font-size:15.5px!important}
.pc-header-search input{font-size:15px!important}

@media(max-width:980px){
    body.printcity-site{font-size:17.5px;line-height:1.7}
}

@media(max-width:680px){
    body.printcity-site{font-size:17px;line-height:1.7}

    .printcity-site main p{
        font-size:16.5px!important;
        line-height:1.72!important;
    }
    .printcity-site main small{
        font-size:12.5px!important;
    }

    .pc-eyebrow,
    .pc-section-label,
    .pc-kicker,
    .pc-about-kicker,
    .pc-about5-eyebrow,
    .pc-hero-pretitle,
    .printcity-site .page-hero .kicker,
    .pc-profile-strip-brand span{
        font-size:12px!important;
        letter-spacing:.08em!important;
    }

    .pc-profile-strip-card{
        padding-top:22px!important;
        padding-bottom:22px!important;
    }
    .pc-profile-strip-brand strong{font-size:18px!important}
    .pc-profile-strip-card>p{font-size:16px!important}
    .pc-profile-strip-card>a{font-size:15px!important;min-height:48px!important}

    .pc-mobile-panel .mobile-search input{font-size:16px!important}
    .pc-mobile-panel .mobile-search button{font-size:15.5px!important}
    .pc-mobile-panel .mobile-quote-btn,
    .pc-mobile-panel .mobile-call-btn,
    .pc-mobile-panel .mobile-whatsapp-btn{font-size:16px!important}
    .pc-mobile-panel .mobile-row,
    .pc-mobile-panel .mobile-details>summary{font-size:17.5px!important}
    .pc-mobile-panel .mobile-product-row{font-size:15.5px!important}
}

/* =========================================================
   V17 — PRODUCT / MEGA MENU / SERVICE ACTION READABILITY
   ========================================================= */

/* Product cards: make the action obvious and readable */
.pc-product-card-body{
    row-gap:8px;
}
.pc-product-card-body>span{
    font-size:12.5px!important;
    line-height:1.4!important;
}
.pc-product-card-body h3{
    font-size:22.5px!important;
    line-height:1.2!important;
    letter-spacing:-.025em!important;
}
.pc-product-card-body b{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:max-content!important;
    min-height:38px!important;
    margin-top:15px!important;
    padding:8px 13px!important;
    border:1px solid #dce3e8!important;
    border-radius:999px!important;
    background:#f5f7f8!important;
    color:var(--pc-ink-deep)!important;
    font-size:15px!important;
    line-height:1!important;
    font-weight:850!important;
    letter-spacing:-.01em!important;
    transition:background .22s ease,color .22s ease,border-color .22s ease,transform .22s ease!important;
}
.pc-product-card:hover .pc-product-card-body b{
    background:var(--pc-ink-deep)!important;
    border-color:var(--pc-ink-deep)!important;
    color:#fff!important;
    transform:translateX(2px);
}

/* Products mega menu: readable from a normal desktop viewing distance */
.pc-mega-head span{
    font-size:13px!important;
    line-height:1.4!important;
}
.pc-mega-head h3{
    font-size:28px!important;
    line-height:1.15!important;
}
.pc-mega-head>a{
    font-size:15.5px!important;
    line-height:1.35!important;
}
.pc-mega-category{
    padding-top:21px!important;
    padding-bottom:21px!important;
}
.pc-mega-cat-title{
    font-size:17px!important;
    line-height:1.35!important;
    margin-bottom:9px!important;
}
.pc-mega-category>a:not(.pc-mega-cat-title){
    padding:4px 0!important;
    font-size:15.5px!important;
    line-height:1.5!important;
    font-weight:550!important;
}
.pc-mega-foot{
    font-size:14.5px!important;
    line-height:1.45!important;
}
.pc-mega-foot>a{
    font-size:15.5px!important;
}

/* Services: turn the tiny text action into a proper compact CTA */
.pc-service-card-copy h3{
    font-size:23px!important;
    line-height:1.25!important;
}
.pc-service-card-copy>a{
    display:inline-flex!important;
    align-items:center!important;
    width:max-content!important;
    min-height:40px!important;
    margin-top:auto!important;
    padding:9px 14px!important;
    border:1px solid #d8e0e6!important;
    border-radius:999px!important;
    background:#f6f8f9!important;
    color:var(--pc-ink-deep)!important;
    font-size:15.5px!important;
    line-height:1!important;
    font-weight:850!important;
    letter-spacing:-.01em!important;
    text-decoration:none!important;
    transition:background .22s ease,color .22s ease,border-color .22s ease,transform .22s ease!important;
}
.pc-service-card:hover .pc-service-card-copy>a,
.pc-service-card-copy>a:hover{
    background:var(--pc-ink-deep)!important;
    border-color:var(--pc-ink-deep)!important;
    color:#fff!important;
    transform:translateX(2px);
}

@media(max-width:980px){
    .pc-product-card-body h3{font-size:21.5px!important}
    .pc-product-card-body b{font-size:14.5px!important}
    .pc-service-card-copy>a{font-size:15px!important}
}

@media(max-width:680px){
    .pc-product-card-body h3{font-size:22px!important}
    .pc-product-card-body b{
        min-height:40px!important;
        padding:9px 14px!important;
        font-size:15.5px!important;
    }
    .pc-service-card-copy h3{font-size:22px!important}
    .pc-service-card-copy>a{
        min-height:42px!important;
        padding:10px 15px!important;
        font-size:15.5px!important;
    }
}


/* =========================================================
   V19 — ABOUT + TOPBAR REFINEMENT
   Cleaner executive summary, readable topbar and tighter team cards.
   ========================================================= */

/* Keep only the two core executive-summary cards and let them breathe. */
.pc-about3-summary-cards{
    grid-template-columns:1fr;
    align-content:start;
}
.pc-about3-summary-cards article{
    min-height:160px;
    grid-template-columns:138px minmax(230px,.9fr) minmax(280px,1.2fr);
    padding:30px 32px;
}
.pc-about3-summary-cards article:nth-child(2)::before{background:var(--pc-magenta)}

/* Dark/blue content blocks: preserve word shapes and avoid cramped wrapping. */
.pc-about3-profile-card h3,
.pc-about2-service-grid h3,
.pc-about2-service-grid p{
    overflow-wrap:normal;
    word-break:normal;
    hyphens:none;
}
.pc-about3-profile-card h3{line-height:1.08}
.pc-about2-service-grid article{min-width:0;padding-left:32px;padding-right:32px}
.pc-about2-service-grid h3{line-height:1.16;letter-spacing:-.025em}
.pc-about2-service-grid p{line-height:1.72}

/* Slogan strip: align the actual slogan with the logo/container start. */
.pc-topbar{
    overflow:visible;
}
.pc-topbar-inner{
    min-height:44px!important;
    align-items:center;
}
.pc-topbar-note{
    gap:0!important;
    padding:0!important;
    margin:0!important;
    line-height:1.35!important;
    white-space:nowrap;
    flex:0 1 auto;
}
.pc-topbar-note>span{
    display:block;
    line-height:1.35!important;
}
.pc-topbar-contact{
    line-height:1.35!important;
}

/* Management cards: smaller portrait footprint, more emphasis on the message. */
.pc-about2-team-grid{gap:24px}
.pc-about2-person{
    grid-template-columns:168px minmax(0,1fr);
    min-height:410px;
}
.pc-about2-person-photo{
    min-height:410px;
}
.pc-about2-person-photo img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center top;
}
.pc-about2-person-copy{
    padding:34px 30px 32px;
}
.pc-about2-person-copy>p:not(.role){
    font-size:15.5px;
    line-height:1.74;
    margin-bottom:16px;
}
.pc-about2-person-copy .role{
    font-size:12.5px;
    margin-bottom:20px;
}
.pc-about2-person-values{display:none!important}

@media(max-width:1100px){
    .pc-about2-person{grid-template-columns:180px minmax(0,1fr);min-height:380px}
    .pc-about2-person-photo{min-height:380px}
}

@media(max-width:900px){
    .pc-about3-summary-cards article{
        grid-template-columns:120px minmax(210px,.9fr) 1fr;
    }
    .pc-about2-service-grid article{padding-left:28px;padding-right:28px}
}

@media(max-width:680px){
    .pc-topbar-inner{min-height:42px!important}
    .pc-topbar-contact{font-size:11.5px!important}
    .pc-about3-summary-cards article{
        min-height:0;
        grid-template-columns:1fr;
        padding:26px 24px;
    }
    .pc-about2-person{
        grid-template-columns:1fr;
        min-height:0;
    }
    .pc-about2-person-photo{
        width:min(210px,70%);
        height:235px;
        min-height:235px;
        margin:24px auto 0;
        border-radius:12px;
        overflow:hidden;
    }
    .pc-about2-person-photo::after{height:38%}
    .pc-about2-person-photo>span{left:14px;bottom:13px}
    .pc-about2-person-copy{padding:25px 24px 30px}
}

@media(max-width:420px){
    .pc-about2-person-photo{width:min(190px,72%);height:215px;min-height:215px}
}

/* V19.1 — keep management portraits intentionally compact on desktop. */
@media(min-width:681px){
    .pc-about2-person{
        grid-template-columns:198px minmax(0,1fr);
        align-items:start;
        min-height:430px;
    }
    .pc-about2-person-photo{
        width:160px;
        height:220px;
        min-height:0;
        margin:32px 0 0 28px;
        border-radius:12px;
        overflow:hidden;
        align-self:start;
    }
    .pc-about2-person-photo img{
        width:100%;
        height:100%;
        object-fit:cover;
        object-position:center top;
    }
}


/* =========================================================
   V20 — ABOUT SUMMARY CORRECTION
   Restore all three summary cards, remove eyebrow rows and
   prevent the dark profile card footer from overlapping copy.
   ========================================================= */

.pc-about3-profile-card{
    display:flex;
    flex-direction:column;
}
.pc-about3-profile-card>p{
    margin-bottom:30px;
}
.pc-about3-profile-meta{
    position:relative;
    left:auto;
    right:auto;
    bottom:auto;
    width:100%;
    margin-top:auto;
}

.pc-about3-summary-cards{
    grid-template-columns:1fr;
    gap:12px;
}
.pc-about3-summary-cards article{
    min-height:142px;
    grid-template-columns:minmax(220px,.9fr) minmax(300px,1.25fr);
    gap:30px;
    padding:28px 32px;
}
.pc-about3-summary-cards article:nth-child(3)::before{
    background:var(--pc-yellow);
}

@media(max-width:900px){
    .pc-about3-summary-cards article{
        grid-template-columns:minmax(210px,.9fr) 1fr;
        gap:24px;
    }
}

@media(max-width:680px){
    .pc-about3-profile-card{
        min-height:0;
    }
    .pc-about3-profile-meta{
        margin-top:28px;
    }
    .pc-about3-summary-cards article{
        grid-template-columns:1fr;
        gap:10px;
        min-height:0;
        padding:26px 24px;
    }
}
