/* Stage 3.5: footer, responsive polish, accessibility and WooCommerce states. */
:root{--plt-focus:#f6c96b;--plt-footer:#081a2b;--plt-success:#157347;--plt-danger:#b42318}
:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:3px solid var(--plt-focus)!important;outline-offset:3px!important}
.skip-link:focus{inset-block-start:10px;inset-inline-start:10px;z-index:999999;padding:12px 18px;border-radius:10px;background:#fff;color:#081a2b;box-shadow:0 8px 30px rgba(0,0,0,.2)}
.site-footer{position:relative;overflow:hidden;background:var(--plt-footer);color:rgba(255,255,255,.74);border-top:1px solid rgba(255,255,255,.08)}.site-footer__glow{position:absolute;width:520px;height:520px;inset:-260px auto auto -180px;border-radius:50%;background:radial-gradient(circle,rgba(199,161,90,.13),transparent 68%);pointer-events:none}.footer-layout{position:relative;display:grid;grid-template-columns:minmax(260px,1.25fr) repeat(var(--footer-cols,3),minmax(155px,.7fr));gap:clamp(28px,4vw,62px);padding-block:72px 56px}.footer-layout--0{grid-template-columns:minmax(0,620px)}.footer-layout--1{--footer-cols:1}.footer-layout--2{--footer-cols:2}.footer-layout--3{--footer-cols:3}.footer-layout--4{--footer-cols:4}.footer-brand{min-width:0}.brand-mark--footer{display:inline-flex;align-items:center;gap:12px;color:#fff}.brand-mark--footer .custom-logo{max-height:62px;width:auto}.brand-mark__icon{display:grid;place-items:center;width:48px;height:48px;border:1px solid rgba(199,161,90,.5);border-radius:15px;color:var(--theme-accent);background:rgba(255,255,255,.04)}.footer-brand>p{max-width:430px;line-height:1.9;margin:20px 0}.footer-title,.footer-column .widget-title{font-size:1rem;color:#fff;margin:0 0 18px}.footer-menu,.footer-column ul,.footer-contact{list-style:none;margin:0;padding:0}.footer-menu li+li,.footer-column li+li{margin-top:11px}.footer-column a{color:rgba(255,255,255,.72)}.footer-column a:hover{color:var(--theme-accent);transform:translateX(-2px)}.footer-contact{display:grid;gap:14px}.footer-contact li{display:flex;align-items:flex-start;gap:10px;line-height:1.7}.footer-contact svg{flex:0 0 auto;color:var(--theme-accent);margin-top:3px}.footer-social{display:flex;gap:9px;flex-wrap:wrap;margin-top:22px}.footer-social a{display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(255,255,255,.13);border-radius:13px;color:#fff;background:rgba(255,255,255,.035)}.footer-social a:hover{border-color:var(--theme-accent);background:var(--theme-accent);color:var(--theme-primary);transform:translateY(-3px)}.footer-trust{display:flex;gap:14px;flex-wrap:wrap;margin-top:22px;font-size:.78rem}.footer-trust span{display:inline-flex;align-items:center;gap:6px}.footer-trust svg{color:var(--theme-accent)}.footer-bottom{border-top:1px solid rgba(255,255,255,.08)}.footer-bottom__inner{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:22px;font-size:.82rem}.legal-menu{display:flex;gap:18px;flex-wrap:wrap;list-style:none;margin:0;padding:0}.legal-menu a{color:rgba(255,255,255,.65)}.floating-whatsapp,.back-to-top{position:fixed;z-index:95;display:grid;place-items:center;border:0;box-shadow:0 12px 35px rgba(0,0,0,.18);transition:transform .2s ease,opacity .2s ease}.floating-whatsapp{inset-inline-end:22px;inset-block-end:22px;width:54px;height:54px;border-radius:18px;background:#25d366;color:#fff}.back-to-top{inset-inline-start:22px;inset-block-end:22px;width:46px;height:46px;border-radius:15px;background:var(--theme-primary);color:#fff;opacity:0;visibility:hidden;transform:translateY(12px)}.back-to-top.is-visible{opacity:1;visibility:visible;transform:none}.floating-whatsapp:hover,.back-to-top:hover{transform:translateY(-4px)}
.woocommerce-notices-wrapper:not(:empty){width:min(1180px,calc(100% - 32px));margin:24px auto 0}.woocommerce-error,.woocommerce-message,.woocommerce-info{border:1px solid #dce4ea!important;border-top:0!important;border-radius:16px!important;background:#fff!important;box-shadow:0 15px 45px rgba(13,34,56,.08);padding:17px 54px 17px 20px!important;color:var(--theme-text)!important}.woocommerce-error:before,.woocommerce-message:before,.woocommerce-info:before{inset-inline-start:18px;inset-inline-end:auto;top:17px}.woocommerce-message{border-inline-start:4px solid var(--plt-success)!important}.woocommerce-error{border-inline-start:4px solid var(--plt-danger)!important}.woocommerce-info{border-inline-start:4px solid var(--theme-accent)!important}.woocommerce-mini-cart__empty-message,.cart-empty.woocommerce-info,.plt-empty-state{min-height:220px;display:grid;place-items:center;text-align:center;padding:38px;border:1px dashed #d7dce2;border-radius:22px;background:#fff;color:var(--theme-muted)}.widget_shopping_cart_content{min-width:310px}.woocommerce-mini-cart{display:grid;gap:12px;list-style:none;margin:0;padding:0}.woocommerce-mini-cart-item{position:relative;padding:12px 12px 12px 30px;border:1px solid #ece7dd;border-radius:14px}.woocommerce-mini-cart-item img{width:52px!important;border-radius:10px;margin-inline-end:10px}.woocommerce-mini-cart__total{padding-top:15px;border-top:1px solid #ece7dd}.woocommerce-mini-cart__buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px}.woocommerce-mini-cart__buttons .button{text-align:center}
.entry-content img,.wp-block-image img{border-radius:clamp(12px,2vw,24px)}table{max-width:100%}.entry-content table{display:block;overflow-x:auto;border-collapse:collapse}.entry-content table th,.entry-content table td{padding:12px;border:1px solid #e6e0d6}.alignwide{width:min(1180px,calc(100vw - 32px));max-width:none;margin-inline:calc(50% - min(590px,calc(50vw - 16px)))}
@media(max-width:1100px){.footer-layout{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-brand{grid-column:1/-1}.site-header .container{max-width:calc(100% - 28px)}}
@media(max-width:760px){.footer-layout{grid-template-columns:1fr;padding-block:52px 36px}.footer-brand{grid-column:auto}.footer-bottom__inner{align-items:flex-start;flex-direction:column;padding-block:22px}.legal-menu{gap:10px 16px}.floating-whatsapp{inset-inline-end:14px;inset-block-end:14px}.back-to-top{inset-inline-start:14px;inset-block-end:14px}.woocommerce form .form-row-first,.woocommerce form .form-row-last{width:100%;float:none}.woocommerce-mini-cart__buttons{grid-template-columns:1fr}.woocommerce-checkout #payment div.payment_box{padding:14px}}
@media(max-width:430px){.container,.plt-commerce-shell,.plt-checkout-grid,.plt-checkout-heading,.woocommerce-account .woocommerce{width:min(100% - 22px,1180px)}.footer-social a{width:40px;height:40px}.floating-whatsapp{width:50px;height:50px}.site-main h1{overflow-wrap:anywhere}.woocommerce button.button,.woocommerce a.button,.woocommerce input.button{width:100%;text-align:center}.plt-result-actions>*{width:100%}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1!important;transform:none!important}}
@media print{.floating-whatsapp,.back-to-top,.before-footer{display:none!important}}

.brand-mark--footer .footer-custom-logo{display:block;max-height:72px;width:auto;max-width:min(260px,100%);object-fit:contain}


/* RC 4.8.4 — Footer logo, phone direction and business-hours refinement. */
.site-footer .footer-custom-logo,
.site-footer .custom-logo-link img{
  width:auto!important;
  max-width:min(100%,270px)!important;
  max-height:78px!important;
  object-fit:contain;
}
.site-footer .brand-mark--footer{display:inline-flex;max-width:100%}
.site-footer .plt-footer-brand-widget__description{max-width:430px;margin-top:22px}
.footer-contact__phone{
  display:inline-block;
  direction:ltr;
  unicode-bidi:isolate;
  text-align:left;
  letter-spacing:.035em;
  white-space:nowrap;
}
.site-footer .plt-hours-widget{
  display:grid;
  gap:0;
  padding:0;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.11);
  border-radius:18px;
  background:rgba(255,255,255,.035);
  box-shadow:none;
}
.site-footer .plt-hours-widget__header{
  display:flex;
  align-items:center;
  gap:12px;
  padding:16px 18px;
  border-bottom:1px solid rgba(255,255,255,.09);
  background:rgba(255,255,255,.035);
}
.site-footer .plt-hours-widget__header strong{
  color:#fff;
  font-size:1rem;
  line-height:1.5;
}
.site-footer .plt-hours-widget__icon{
  flex:0 0 auto;
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border-radius:12px;
  color:var(--theme-accent);
  background:rgba(199,161,90,.12);
  border:1px solid rgba(199,161,90,.2);
}
.site-footer .plt-hours-widget__schedule{display:grid;padding:8px 18px 10px}
.site-footer .plt-hours-widget__row{
  position:relative;
  padding:10px 16px 10px 0;
  color:rgba(255,255,255,.72);
  line-height:1.65;
  border-bottom:1px dashed rgba(255,255,255,.09);
}
.site-footer .plt-hours-widget__row:last-child{border-bottom:0}
.site-footer .plt-hours-widget__row::before{
  content:"";
  position:absolute;
  inset-inline-start:0;
  top:50%;
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--theme-accent);
  transform:translateY(-50%);
}
.site-footer .plt-hours-widget__note{
  margin:14px 0 0;
  padding-inline-start:2px;
  color:rgba(255,255,255,.58);
  font-size:.86rem;
  line-height:1.8;
}
@media(max-width:760px){
  .site-footer .footer-custom-logo,.site-footer .custom-logo-link img{max-width:230px!important;max-height:70px!important}
}


/* RC 4.8.5 — Structured, overlap-proof business hours. */
.site-footer .plt-hours-widget{
  display:block!important;
  padding:6px 16px!important;
  overflow:visible!important;
  border:1px solid rgba(255,255,255,.1)!important;
  border-radius:16px!important;
  background:rgba(255,255,255,.025)!important;
}
.site-footer .plt-hours-widget__schedule{
  display:grid!important;
  padding:0!important;
}
.site-footer .plt-hours-widget__row{
  display:grid!important;
  grid-template-columns:minmax(72px,.75fr) minmax(110px,1.25fr)!important;
  align-items:center!important;
  gap:14px!important;
  min-height:54px!important;
  padding:10px 0!important;
  border-bottom:1px solid rgba(255,255,255,.075)!important;
  color:inherit!important;
}
.site-footer .plt-hours-widget__row:last-child{border-bottom:0!important}
.site-footer .plt-hours-widget__row::before{display:none!important}
.site-footer .plt-hours-widget__day,
.site-footer .plt-hours-widget__time{
  display:block!important;
  margin:0!important;
  line-height:1.55!important;
  overflow-wrap:anywhere;
}
.site-footer .plt-hours-widget__day{
  color:#fff!important;
  font-size:.9rem!important;
  font-weight:800!important;
  white-space:nowrap;
}
.site-footer .plt-hours-widget__time{
  color:rgba(255,255,255,.68)!important;
  font-size:.84rem!important;
  font-weight:500!important;
  text-align:start;
}
.site-footer .plt-hours-widget__note{
  margin:14px 0 0!important;
  padding:0!important;
  color:rgba(255,255,255,.55)!important;
  font-size:.8rem!important;
  line-height:1.75!important;
}
@media(max-width:680px){
  .site-footer .plt-hours-widget__row{
    grid-template-columns:minmax(82px,.8fr) minmax(0,1.2fr)!important;
    gap:10px!important;
  }
}
