/*
Theme Name: ЛьвівПрінт
Theme URI: https://lvivprint.com.ua/
Author: ЛьвівПрінт
Description: Легка власна тема центру поліграфії «ЛьвівПрінт».
Version: 0.6.2
Requires at least: 6.5
Requires PHP: 8.1
Text Domain: lvivprint
*/

:root{--sky:#bcecff;--blue:#087fb9;--ink:#142d40;--line:#d4e8f1;--paper:#fff;--red:#d61920;--green:#009f58;--yellow:#ffd800;--bar-h:68px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;padding-bottom:var(--bar-h);color:var(--ink);background:#fff;font-family:Arial,"Helvetica Neue",sans-serif;font-size:17px;line-height:1.55}a{color:#0079b8;text-underline-offset:3px}img{max-width:100%;height:auto}.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.site-sky{position:relative;overflow:hidden;min-height:290px;background-image:url("assets/hero-balloon.png"),linear-gradient(180deg,#65c4f1 0%,var(--sky) 70%,#fff 100%);background-repeat:no-repeat;background-size:auto 150%,cover;background-position:right 44%,center}.site-sky:before,.site-sky:after{display:none}.header-inner{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;max-width:1180px;margin:auto;padding:34px 28px}.brand img{display:block;width:300px;max-height:170px;object-fit:contain}.header-contact{padding:14px 18px;border:1px solid rgba(255,255,255,.8);border-radius:14px;background:rgba(255,255,255,.86);backdrop-filter:blur(8px);text-align:right}.header-contact a{display:block;color:var(--ink);font-size:19px;font-weight:700;text-decoration:none}.header-contact span{font-size:14px}
.site-layout{display:grid;grid-template-columns:245px minmax(0,1fr);align-items:start;gap:42px;max-width:1180px;margin:-22px auto 0;padding:0 28px 60px}.side-nav{position:relative;align-self:start;padding:22px;border-radius:12px;background:rgba(255,255,255,.95);box-shadow:0 10px 35px rgba(20,73,102,.12)}.side-nav h2{margin:0 0 12px;color:#27a9de;font-size:21px}.side-nav ul{margin:0;padding:0;list-style:none}.side-nav li+li{border-top:1px dotted #b9d8e7}.side-nav a{display:block;padding:10px 4px;color:#315b7a;text-decoration:none}.side-nav a:hover,.side-nav .current-menu-item>a{color:#008aca;font-weight:700}.main-content{min-width:0;padding-top:36px}.main-content h1{margin-top:0;font-size:clamp(32px,4vw,48px);line-height:1.08}.main-content h2{font-size:clamp(24px,3vw,34px)}
.hero-copy{max-width:760px}.hero-copy .eyebrow{color:var(--red);font-size:14px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.hero-copy p{font-size:20px}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:30px 0}.service-card{min-height:120px;padding:18px;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:0 7px 22px rgba(37,105,140,.08)}.service-card:nth-child(3n+1){border-top:5px solid var(--yellow)}.service-card:nth-child(3n+2){border-top:5px solid var(--red)}.service-card:nth-child(3n){border-top:5px solid var(--green)}.service-card strong{display:block;margin-bottom:4px;font-size:18px}.entry-content{max-width:850px}.entry-content>*:first-child{margin-top:0}.site-footer{padding:25px 28px 110px;text-align:center;color:#587184;font-size:14px}.contact-bar{position:fixed;z-index:9999;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;gap:14px;min-height:var(--bar-h);padding:10px 20px;background:#132f43;color:#fff;box-shadow:0 -5px 20px rgba(0,0,0,.18)}.contact-bar a{display:inline-flex;align-items:center;min-height:42px;padding:8px 14px;border-radius:8px;color:#fff;font-weight:700;text-decoration:none}.contact-bar .phone{background:#0788c3}.contact-bar .viber{background:#7360f2}.contact-bar .telegram{background:#229ed9}.menu-toggle{display:none}
.lvivprint-contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:24px 0}.lvivprint-contact-card{padding:20px;border:1px solid var(--line);border-radius:10px;background:#fff}.lvivprint-contact-card h2{margin:0 0 8px;font-size:22px}.lvivprint-contact-card p{margin:6px 0}.lvivprint-contact-card a{font-weight:700}.lvivprint-contact-note{padding:18px 20px;border-left:5px solid var(--yellow);background:#f3f8fb}
@media(max-width:820px){:root{--bar-h:118px}.site-sky{min-height:220px}.header-inner{align-items:flex-start;padding:22px 18px}.brand img{width:230px}.header-contact{display:none}.site-layout{display:block;margin:-12px auto 0;padding:0 18px 44px}.menu-toggle{display:block;width:100%;padding:13px;border:0;border-radius:9px;background:#fff;color:var(--ink);font-size:17px;font-weight:700;text-align:left;box-shadow:0 6px 20px rgba(20,73,102,.12)}.side-nav{padding:0;background:transparent;box-shadow:none}.side-nav h2{display:none}.side-nav .menu{display:none;margin-top:8px;padding:12px;border-radius:9px;background:#fff;box-shadow:0 6px 20px rgba(20,73,102,.12)}.side-nav.is-open .menu{display:block}.main-content{padding-top:28px}.service-grid{grid-template-columns:1fr}.contact-bar{flex-wrap:wrap;gap:7px;padding:8px}.contact-bar a{min-height:40px;padding:7px 10px;font-size:14px}}
@media(max-width:430px){.contact-bar .email{display:none}.brand img{width:205px}.main-content h1{font-size:34px}}
@media(max-width:820px){.site-sky{background-size:auto 125%,cover;background-position:72% 42%,center}}
@media(max-width:620px){.lvivprint-contact-grid{grid-template-columns:1fr}}

/* Compact composition approved after the first public review. */
:root{--bar-h:48px}body{font-size:15px}.site-sky{min-height:250px;background-size:auto 135%,cover;background-position:right 46%,center}.site-sky:after{content:"";display:block;position:absolute;z-index:0;right:0;bottom:-1px;left:0;height:105px;background:linear-gradient(to bottom,rgba(255,255,255,0),#fff)}.header-inner{width:calc(100% - 40px);max-width:1120px;min-height:250px;padding:22px 20px}.brand{transform:translateX(38px)}.brand img{width:240px;max-height:138px}.site-layout{grid-template-columns:205px minmax(0,1fr);gap:28px;max-width:1120px;margin:-18px auto 0;padding:0 20px 42px}.side-nav{padding:14px;border-radius:8px;box-shadow:0 5px 18px rgba(20,73,102,.09)}.side-nav a{padding:7px 3px}.main-content{padding-top:20px}.main-content h1{font-size:32px}.service-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:10px 0}.service-card{display:grid;place-items:center;min-height:72px;padding:12px;text-align:center;border-radius:7px}.service-card strong{margin:0;font-size:16px}.contact-bar{gap:8px;min-height:var(--bar-h);padding:6px 14px}.contact-bar a{min-height:34px;padding:5px 10px;font-size:14px}.contact-bar .phone-mobile{display:none}.contact-bar .phone-static{font-weight:700}.contact-bar .emails{display:flex;flex-direction:column;line-height:1.25;font-size:12px}.lvivprint-contact-grid{gap:10px;margin:16px 0}.lvivprint-contact-card{padding:14px;border-radius:7px}.lvivprint-contact-card h2{font-size:18px}.lvivprint-contact-note{padding:12px 14px}
@media(max-width:900px){.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){:root{--bar-h:88px}.site-sky{min-height:205px;background-size:auto 115%,cover}.header-inner{min-height:205px}.brand{transform:none}.brand img{width:205px}.contact-bar .phone-static{display:none}.contact-bar .phone-mobile{display:inline-flex}.contact-bar .emails{width:100%;align-items:center}.site-layout{margin:-12px auto 0}}
@media(max-width:460px){.service-grid{grid-template-columns:1fr}.contact-bar{gap:5px}.contact-bar a{font-size:13px}.contact-bar .emails{font-size:11px}}
.main-content h1{font-size:27px}

/* Second public review: seamless sky and compact illustrated service links. */
.site-sky{height:250px;min-height:0;background-color:#78ccef;background-size:auto 112%,cover;background-position:right top,center}
.site-sky:before{content:"";display:block;position:absolute;z-index:0;inset:0;background:linear-gradient(90deg,#78ccef 0%,#78ccef 22%,rgba(120,204,239,.92) 34%,rgba(120,204,239,0) 54%)}
.header-inner{height:250px;min-height:0}
.service-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;align-items:end;margin:2px 0 8px}
.service-card{display:flex;min-height:0;padding:0;border:0;background:transparent;box-shadow:none;flex-direction:column;align-items:center;color:var(--ink);text-decoration:none}
.service-card:nth-child(n){border-top:0}
.service-art{display:block;width:104px;height:128px;background-image:url("assets/service-products-v1.png");background-repeat:no-repeat;background-size:500% auto;background-position-y:center;filter:drop-shadow(0 8px 8px rgba(31,71,94,.16));transition:transform .18s ease}
.service-card:hover .service-art{transform:translateY(-4px) rotate(-1deg)}
.service-card strong{display:grid;place-items:center;width:100%;min-height:46px;margin:0;padding:7px 8px;border:1px solid var(--line);border-top:3px solid var(--yellow);border-radius:7px;background:#fff;font-size:14px;line-height:1.2;text-align:center;box-shadow:0 4px 12px rgba(37,105,140,.07)}
.service-card:nth-child(2) strong{border-top-color:var(--red)}.service-card:nth-child(3) strong{border-top-color:var(--green)}.service-card:nth-child(4) strong{border-top-color:#3559b8}.service-card:nth-child(5) strong{border-top-color:#e94691}
.service-card:nth-child(1) .service-art{background-position-x:0}.service-card:nth-child(2) .service-art{background-position-x:25%}.service-card:nth-child(3) .service-art{background-position-x:50%}.service-card:nth-child(4) .service-art{background-position-x:75%}.service-card:nth-child(5) .service-art{background-position-x:100%}
.lvivprint-contact-card .contact-important{margin-top:10px;font-size:14px}
@media(max-width:1000px){.service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:820px){.site-sky{height:205px;background-size:auto 108%,cover;background-position:right top,center}.site-sky:before{background:linear-gradient(90deg,rgba(120,204,239,.9),rgba(120,204,239,.25) 56%,transparent 78%)}.header-inner{height:205px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:460px){.service-art{width:92px;height:112px}.service-grid{gap:6px}.service-card strong{font-size:13px}}

/* The supplied finished background is shown as one image without distortion. */
.site-sky{height:clamp(300px,24vw,420px);background-color:#78ccef;background-image:url("assets/hero-balloon-final.png"),linear-gradient(180deg,#65c4f1 0%,#bcecff 70%,#fff 100%);background-repeat:no-repeat,no-repeat;background-size:cover,cover;background-position:center 34%,center}
.header-inner{height:100%}
.site-sky:before{display:none}
.service-card:focus-visible{outline:3px solid #087fb9;outline-offset:3px;border-radius:8px}
@media(max-width:820px){.site-sky{height:240px;background-size:cover,cover;background-position:68% 34%,center}.header-inner{height:100%}}
