.po-footer,.po-footer *{box-sizing:border-box}.po-footer{position:relative!important;isolation:isolate!important;width:100%!important;margin:0!important;padding:0!important;overflow:hidden!important;color:var(--po-text)!important;font-family:var(--po-font)!important;font-size:var(--po-base)!important;line-height:1.45!important;background:var(--po-bg)!important}.po-footer.po-bg-gradient{background:linear-gradient(var(--po-gradient-angle),var(--po-bg),var(--po-bg2))!important}.po-footer.po-bg-image{background-color:var(--po-bg)!important;background-image:var(--po-bg-image)!important;background-position:var(--po-bg-position)!important;background-size:var(--po-bg-size)!important;background-repeat:no-repeat!important}.po-bg-overlay{position:absolute;inset:0;z-index:0;background:var(--po-overlay);opacity:var(--po-overlay-opacity);pointer-events:none}.po-footer a{color:inherit!important;text-decoration:none!important}.po-footer-inner{position:relative;z-index:3;width:min(calc(100% - 72px),var(--po-max));margin:0 auto;padding:var(--po-pad-y) 0;display:grid;grid-template-columns:minmax(0,1.32fr) minmax(220px,.82fr) minmax(300px,1fr);gap:var(--po-gap);align-items:start}.po-brand-wrap{display:grid;grid-template-columns:auto minmax(0,1fr);gap:26px;align-items:start}.po-logo-ring{width:auto;max-width:min(46vw,calc(var(--po-logo)*2.35));height:var(--po-logo);display:flex;align-items:center;justify-content:flex-start;overflow:visible;border-radius:0}.po-logo-ring img{width:auto;max-width:100%;height:100%;object-fit:contain;object-position:left center;display:block}.po-logo-fallback{font-weight:700;font-size:18px;white-space:nowrap}.po-logo-fallback>span{color:var(--po-accent)}.po-logo-fallback small{font-size:8px}.po-brand-info{min-width:0;border-left:2px solid var(--po-accent);padding-left:22px}.po-brand-info h2,.po-footer h3{margin:0!important;padding:0!important;color:var(--po-text)!important;font:700 var(--po-heading)/1.18 var(--po-font)!important;letter-spacing:0!important;text-transform:none!important}.po-tagline{margin:4px 0 15px;color:var(--po-accent);font-style:normal;font-weight:700;font-size:calc(var(--po-base) + 1px)}.po-contact-item{display:flex;align-items:center;gap:10px;margin:8px 0;color:var(--po-text);font-size:var(--po-base)}.po-contact-item i,.po-link i,.po-mail-icon,.po-privacy i{width:18px;min-width:18px;height:18px;display:grid;place-items:center;color:var(--po-accent);font-style:normal}.po-contact-item svg,.po-link svg,.po-mail-icon svg,.po-privacy svg{width:17px;height:17px;fill:currentColor;display:block}.po-contact-item a{text-decoration:underline!important;text-underline-offset:2px}.po-socials{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.po-social{width:36px;height:36px;border:1px solid var(--po-social-border)!important;border-radius:50%;display:grid;place-items:center;background:var(--po-social-bg)!important;transition:.2s}.po-social img{width:17px;height:17px;object-fit:contain;display:block;opacity:.95}.po-social:hover{border-color:var(--po-accent)!important;transform:translateY(-2px)}.po-title-line{display:block;width:44px;height:3px;margin:11px 0 14px;background:var(--po-accent)}.po-link{display:flex;align-items:center;gap:8px;padding:10px 0;border-bottom:1px solid var(--po-link-divider)!important;color:var(--po-text)!important;font-size:var(--po-base)!important}.po-link i{width:15px;min-width:15px}.po-link svg{width:14px;height:14px}.po-link:hover{color:var(--po-accent)!important}.po-news-copy{max-width:470px;margin:19px 0 0;color:var(--po-muted);font-size:var(--po-base);line-height:1.55}.po-news-form{display:flex;align-items:center;width:100%;max-width:500px;height:54px;margin:20px 0 0;overflow:hidden;border:1px solid var(--po-form-border)!important;border-radius:var(--po-radius)!important;background:var(--po-form-bg)!important}.po-news-form .po-mail-icon{margin-left:18px;color:var(--po-text)}.po-news-form input{flex:1;min-width:0;height:52px;margin:0!important;padding:0 12px!important;border:0!important;outline:0!important;background:transparent!important;color:var(--po-text)!important;box-shadow:none!important;font:400 var(--po-base)/1 var(--po-font)!important}.po-news-form button{width:54px;min-width:54px;height:54px;margin:0!important;padding:0!important;border:0!important;border-radius:50%!important;background:var(--po-button-bg)!important;color:var(--po-button-text)!important;display:grid;place-items:center;cursor:pointer}.po-news-form button svg{width:22px;height:22px;fill:currentColor}.po-privacy{display:flex;align-items:flex-start;gap:9px;max-width:500px;margin-top:13px;color:var(--po-muted);font-size:max(11px,calc(var(--po-base) - 2px));line-height:1.45}.po-privacy i{color:var(--po-muted);margin-top:1px}.po-privacy i img{width:18px;height:18px;object-fit:contain;display:block}.po-extra{margin-top:14px;color:var(--po-muted);font-size:var(--po-base);line-height:1.5}.po-extra :where(p,h1,h2,h3,h4,h5,h6,ul,ol){margin:0 0 8px!important;color:inherit!important;font:inherit!important;text-transform:none!important}.po-extra a{color:var(--po-accent)!important;text-decoration:underline!important}.po-shortcode{margin-top:20px}.po-footer-bottom{position:relative;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:20px;width:min(calc(100% - 72px),var(--po-max));min-height:62px;margin:0 auto;padding:15px 0;border-top:1px solid var(--po-bottom-border);color:var(--po-muted);font-size:max(11px,calc(var(--po-base) - 1px));line-height:1.4}.po-extra-bottom{margin:0;text-align:right}.po-wave{position:absolute;z-index:1;pointer-events:none;bottom:40px;height:92px;opacity:var(--po-wave-opacity)}.po-wave:before,.po-wave:after{content:"";position:absolute;inset:auto 0 0;height:78px;border-top:1px solid var(--po-wave-color);border-radius:50% 50% 0 0 / 100% 100% 0 0;background:linear-gradient(180deg,color-mix(in srgb,var(--po-wave-color) 9%,transparent),transparent 80%)}.po-wave-left{left:-11%;width:58%;transform:rotate(5deg)}.po-wave-right{right:-9%;width:54%;transform:scaleX(-1) rotate(4deg)}.po-wave:after{transform:translateY(17px) scaleY(.72);opacity:.35}.po-footer .po-brand-col,.po-footer .po-links-col,.po-footer .po-news-col{margin:0!important;padding:0!important;width:auto!important;max-width:none!important;min-height:0!important;background:none!important;border-radius:0!important;box-shadow:none!important}
@media(max-width:1180px){.po-footer-inner{grid-template-columns:minmax(0,1.15fr) minmax(220px,.85fr);width:min(calc(100% - 48px),var(--po-max));gap:38px 48px;padding:calc(var(--po-pad-y)*.8) 0}.po-news-col{grid-column:1/-1;max-width:760px}.po-footer-bottom{width:min(calc(100% - 48px),var(--po-max))}}
@media(max-width:760px){.po-footer-inner{grid-template-columns:1fr;width:calc(100% - 34px);gap:30px;padding:36px 0}.po-brand-wrap{grid-template-columns:auto minmax(0,1fr);gap:16px}.po-logo-ring{width:auto;max-width:min(44vw,202px);height:min(86px,var(--po-logo))}.po-brand-info{padding-left:16px}.po-brand-info h2,.po-footer h3{font-size:min(18px,var(--po-heading))!important}.po-contact-item,.po-link,.po-news-copy,.po-extra{font-size:min(13px,var(--po-base))!important}.po-news-col{grid-column:auto;max-width:none}.po-footer-bottom{width:calc(100% - 34px);flex-direction:column;align-items:flex-start;gap:8px}.po-extra-bottom{text-align:left}.po-wave{opacity:calc(var(--po-wave-opacity)*.7)}}
@media(max-width:480px){.po-brand-wrap{grid-template-columns:1fr}.po-logo-ring{width:auto;max-width:100%;height:min(96px,var(--po-logo));justify-content:flex-start}.po-brand-info{border-left:0;padding-left:0;border-top:2px solid var(--po-accent);padding-top:16px}.po-news-form{height:50px}.po-news-form input{height:48px}.po-news-form button{width:50px;min-width:50px;height:50px}}
.po-contact-phone strong{color:var(--po-accent)!important;font-weight:700!important}.po-contact-phone a{text-decoration:none!important;font-weight:600!important}.po-footer-inner{padding-top:calc(var(--po-pad-y) + 6px);padding-bottom:calc(var(--po-pad-y) + 6px)}
@media(max-width:760px){.po-footer-inner{padding-top:44px;padding-bottom:44px}}

/* v1.5.2: typography lock */
.po-footer,
.po-footer *:not(svg):not(path) {
  font-family: "Zen Maru Gothic", sans-serif !important;
}

/* v1.5.4: only the detected legacy/theme footer is collapsed. */
.po-theme-footer-hidden,
.po-theme-footer-hidden *{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
.po-theme-footer-hidden{
  position:absolute!important;
  width:0!important;
  height:0!important;
  min-height:0!important;
  max-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  overflow:hidden!important;
}

/* v1.5.7: decorative footer background lines removed; preserve heading casing and non-italic tagline */
.po-footer .po-wave{display:none!important;}
.po-footer .po-brand-info h2,.po-footer h3{text-transform:none!important;}
.po-footer .po-tagline{font-style:normal!important;}


/* v1.5.8 — smart logo sizing. Wide/landscape logos use width, not a tiny fixed height. */
.po-logo-ring{flex:0 0 auto}
.po-logo-ring.po-logo-wide{width:min(31vw,calc(var(--po-logo)*2.75));max-width:360px;height:auto;min-height:0;align-self:center;overflow:visible}
.po-logo-ring.po-logo-wide img{width:100%;max-width:none;height:auto;max-height:none;object-fit:contain;object-position:left center}

@media(max-width:1180px){
  .po-logo-ring.po-logo-wide{width:min(36vw,calc(var(--po-logo)*2.55));max-width:330px}
}
@media(max-width:760px){
  .po-brand-wrap{grid-template-columns:minmax(190px,42%) minmax(0,1fr);gap:22px;align-items:center}
  .po-logo-ring.po-logo-wide{width:100%;max-width:300px;height:auto}
  .po-logo-ring.po-logo-wide img{width:100%;height:auto}
}
@media(max-width:620px){
  .po-brand-wrap{grid-template-columns:1fr;gap:22px}
  .po-logo-ring.po-logo-wide{width:min(100%,360px);max-width:360px;justify-self:center}
  .po-logo-ring.po-logo-wide img{width:100%;height:auto;object-position:center center}
  .po-brand-info{border-left:0;padding-left:0;border-top:2px solid var(--po-accent);padding-top:18px}
}
@media(max-width:480px){
  .po-logo-ring.po-logo-wide{width:min(100%,330px);height:auto}
}

/* v1.5.9 — refined four-column desktop layout for wide PrintOut logo */
.po-footer-inner{
  width:min(calc(100% - 96px),var(--po-max));
  grid-template-columns:minmax(270px,1.05fr) minmax(235px,.82fr) minmax(280px,1fr) minmax(360px,1.28fr);
  gap:clamp(34px,3.1vw,58px);
  align-items:start;
  padding-top:clamp(54px,5vw,78px);
  padding-bottom:clamp(46px,4.2vw,66px);
}
.po-footer .po-brand-col,.po-footer .po-contact-col,.po-footer .po-links-col,.po-footer .po-news-col{
  min-width:0;
}
.po-brand-col{
  display:flex;
  align-items:center;
  align-self:center;
  min-height:220px!important;
}
.po-logo-ring,
.po-logo-ring.po-logo-wide{
  width:min(100%,330px);
  max-width:330px;
  height:auto;
  min-height:0;
  margin:0;
  display:flex;
  align-items:center;
  justify-content:flex-start;
}
.po-logo-ring img,
.po-logo-ring.po-logo-wide img{
  width:100%;
  height:auto;
  max-width:100%;
  max-height:none;
  object-fit:contain;
  object-position:left center;
  display:block;
}
.po-brand-info{
  border-left:2px solid var(--po-accent);
  padding-left:22px;
}
.po-brand-info h2,.po-footer h3{
  font-size:clamp(18px,var(--po-heading),22px)!important;
  line-height:1.2!important;
}
.po-tagline{
  margin:5px 0 18px;
  line-height:1.35;
}
.po-contact-item{
  align-items:flex-start;
  gap:11px;
  margin:10px 0;
  line-height:1.5;
}
.po-contact-item i{margin-top:2px}
.po-contact-phone span{display:block}
.po-contact-phone strong{display:inline}
.po-socials{margin-top:20px;gap:11px}
.po-social{width:38px;height:38px}
.po-title-line{width:44px;height:3px;margin:12px 0 17px}
.po-link{padding:11px 0;line-height:1.4}
.po-news-copy{margin-top:18px;line-height:1.65}
.po-news-form{
  max-width:none;
  height:52px;
  margin-top:18px;
  border-width:0 0 1px 0!important;
  border-radius:0!important;
  background:transparent!important;
}
.po-news-form input{height:50px!important;padding-left:8px!important}
.po-news-form .po-mail-icon{display:none}
.po-news-form button{
  width:46px!important;
  min-width:46px!important;
  height:46px!important;
  border-radius:50%!important;
  background:transparent!important;
  color:var(--po-accent)!important;
  transition:.2s ease;
}
.po-news-form button:hover{transform:translateX(3px);background:color-mix(in srgb,var(--po-accent) 9%,transparent)!important}
.po-privacy{margin-top:15px;line-height:1.55}
.po-footer-bottom{
  width:min(calc(100% - 96px),var(--po-max));
  min-height:68px;
  padding:18px 0 20px;
}

@media(max-width:1380px){
  .po-footer-inner{
    grid-template-columns:minmax(300px,1fr) minmax(260px,.85fr) minmax(300px,1fr);
    width:min(calc(100% - 64px),var(--po-max));
    gap:42px 48px;
  }
  .po-brand-col{min-height:0!important;align-self:start}
  .po-logo-ring,.po-logo-ring.po-logo-wide{max-width:315px}
  .po-news-col{grid-column:1/-1;max-width:760px}
  .po-footer-bottom{width:min(calc(100% - 64px),var(--po-max))}
}

@media(max-width:980px){
  .po-footer-inner{
    grid-template-columns:minmax(250px,.95fr) minmax(300px,1.05fr);
    gap:44px 56px;
  }
  .po-brand-col{align-items:flex-start}
  .po-logo-ring,.po-logo-ring.po-logo-wide{max-width:330px}
  .po-links-col,.po-news-col{grid-column:auto;max-width:none}
}

@media(max-width:680px){
  .po-footer-inner{
    grid-template-columns:1fr;
    width:calc(100% - 36px);
    gap:34px;
    padding-top:42px;
    padding-bottom:38px;
  }
  .po-brand-col{justify-content:center}
  .po-logo-ring,.po-logo-ring.po-logo-wide{width:min(100%,360px);max-width:360px;justify-content:center}
  .po-logo-ring img,.po-logo-ring.po-logo-wide img{object-position:center center}
  .po-brand-info{border-left:0;padding-left:0;border-top:2px solid var(--po-accent);padding-top:20px}
  .po-footer-bottom{width:calc(100% - 36px)}
}

/* v1.6.0 — keep contact details on a single line on desktop */
@media (min-width:1181px){
  .po-footer-inner{
    grid-template-columns:minmax(285px,.98fr) minmax(340px,1.02fr) minmax(270px,.88fr) minmax(330px,1.12fr);
    gap:clamp(28px,2.5vw,46px);
  }
  .po-contact-col{min-width:340px!important}
  .po-brand-info{padding-left:20px}
  .po-contact-item{white-space:nowrap;flex-wrap:nowrap}
  .po-contact-item>span,.po-contact-item>a{white-space:nowrap}
  .po-contact-phone span{display:inline!important;white-space:nowrap}
  .po-contact-phone strong,.po-contact-phone a{display:inline!important;white-space:nowrap}
  .po-tagline{white-space:nowrap}
}
