/* Vila Noel: shared visual identity; layout and interaction hooks remain intact. */
:root {
 --primary:#163A2B; --primary-dark:#0E2B20; --christmas-red:#B3262D; --gold:#D6A84B;
 --background:#FFFFFF; --background-soft:#F8F6F1; --text:#252525; --text-secondary:#6B6B6B; --white:#FFFFFF;
 --brand:var(--primary);--brand2:var(--primary-dark);--accent:var(--primary);--blue:var(--primary);--blue-dark:var(--primary-dark);--teal:var(--primary);--bg:var(--background);--soft:var(--background-soft);--muted:var(--text-secondary);--line:#E8E8E5;
}
html,body {background:var(--background)!important;color:var(--text)!important}
.topbar,header.top,body>header,.checkout-header {background:var(--primary)!important;background-image:none!important;color:var(--white)!important;border-color:var(--primary)!important}
.topbar a,.topbar .menu-btn,.topbar .cep,.topbar .cep b,.topbar .cart,header.top .secure,header.top .secure span,header.top .secure svg,.safe-top,.safe-top span,body>header h1,body>header .sub,body>header .pill {color:var(--white)!important}
.topbar a:hover,header.top a:hover {color:var(--gold)!important}
.topbar .search button {background:var(--primary)!important;color:var(--white)!important}
.site-logo,.logo-img,.menu-logo-box img,.top img.logo,.top-inner>a>img,.checkout-header img {content:url('/images/assets/vila-noel-logo-20260923.png');width:220px!important;height:auto!important;max-width:100%;max-height:66px!important;object-fit:contain}
.menu-logo-box {background:var(--primary)!important;border-color:var(--primary)!important}
.menu-logo-box img {width:200px!important}
.side-menu,.hello,.menu-list a {background:var(--white)!important;color:var(--text)!important}
.hello {border-left:2px solid var(--gold)}
.menu-list a:hover,.menu-close {background:var(--background-soft)!important;color:var(--primary)!important}
main,section,.hero,.section,.gallery-main,.photo,.info-card,.review,.faq-card,.card,.scope-panel,.gateway-panel,.filters,.calendar-panel,.empty,.trust,.shipping-option,.pix-box,.pix-loading,.upsell,.login-screen,.frow,.perk {background-color:var(--white)!important;background-image:none!important}
.product {background:var(--white);border:1px solid var(--line);box-shadow:0 3px 15px rgb(37 37 37 / 5%)}
.info h3,h1,h2,.title {color:var(--text)}
.old,.price-old,.muted,.lbl,.cod,.review-count,.seller,.safe {color:var(--text-secondary)!important}
.buy,.product-cta,.buy-btn,#buyBtnSticky,.freight-row button,.freight-form button,.btn,.copy-btn,.upsell-btn,.gateway-save,.login-card button,.filter-actions .primary,.calendar-toggle,.tab.active,.scope-tab.active,.gateway-btn.active {background:var(--primary)!important;color:var(--white)!important;border-color:var(--primary)!important;box-shadow:none!important;border-radius:7px}
.buy:hover,.product-cta:hover,.buy-btn:hover,#buyBtnSticky:hover,.freight-row button:hover,.freight-form button:hover,.btn:hover,.copy-btn:hover,.upsell-btn:hover,.gateway-save:hover,.login-card button:hover {background:var(--primary-dark)!important;color:var(--white)!important}
button:disabled,.btn:disabled {opacity:.55;cursor:not-allowed}
.btn.light {background:var(--white)!important;color:var(--primary)!important;border:1px solid var(--primary)}
.variant.active,.shipping-option.active,.gateway-btn.selected,.thumb.active {border-color:var(--primary)!important;background:var(--white)!important;color:var(--primary)!important}
input,select,textarea {accent-color:var(--primary)}
input:focus,select:focus,textarea:focus {border-color:var(--primary)!important;box-shadow:0 0 0 2px rgb(22 58 43 / 15%)!important}
:focus-visible {outline:2px solid var(--gold);outline-offset:3px}
.stars,.rev-stars,.rating .stars,.review .rev-stars {color:var(--gold)!important}
.price strong,.price-now {color:#000000!important}
.off {color:var(--christmas-red)!important}
.badge,.tag,.price-off,.pix-tag {background:var(--christmas-red)!important;color:var(--white)!important;border-color:var(--christmas-red)!important}
.hot,.hot-pill {background:var(--background-soft)!important;color:#000000!important;border-color:var(--line)!important}
.check,.hot-pill .ck,.step.active .num,.bubble {background:var(--primary)!important;color:var(--white)!important}
.countdown,.countdown .cico,.countdown .digits .sep {color:var(--text-secondary)!important}
.countdown .digits .d,.countdown .digits .ms {background:var(--background-soft)!important;color:var(--christmas-red)!important}
.bar {background:var(--background-soft)!important;color:var(--text)!important}
footer,.fortek-footer,footer .copy,.fortek-footer-pay,.fortek-footer-legal {background:var(--white)!important;color:var(--text-secondary)!important;border-color:var(--line)!important}
footer h3,.fortek-footer h4,.fortek-footer-contact .number {color:var(--text)!important}
footer a,footer p,footer .copy,.fortek-footer-cols a {color:var(--text-secondary)!important}
footer a:hover,.fortek-footer-cols a:hover {color:var(--primary)!important}
.fortek-footer-brand img,footer .site-logo,footer .foot img:first-child {content:url('/images/assets/vila-noel-logo-20260923.png');width:260px!important;height:auto!important;max-height:85px!important}
.fortek-footer-social a,.fortek-footer-ssl {background:var(--background-soft)!important;color:var(--primary)!important;border-color:var(--line)!important}
.fortek-footer-dot,.dot {background:var(--gold)}
.fortek-footer-ssl svg {color:var(--primary)}
.fortek-footer-cols,.fortek-footer-legal .legal-row {border-color:var(--line)}
.banner {padding:28px 18px 0!important}
.noel-banner {max-width:1180px;margin:auto;position:relative;overflow:hidden;border:1px solid var(--line);border-radius:12px;min-height:330px;display:flex!important;align-items:center;background:var(--white)}
.noel-banner-copy {position:relative;z-index:1;padding:42px;width:65%}
.noel-banner small {font-size:11px;letter-spacing:3px;color:var(--text-secondary)}
.noel-banner h1 {font-family:Georgia,serif;font-size:clamp(30px,4vw,52px);line-height:1.12;font-weight:400;margin:18px 0}
.noel-banner p {color:var(--text-secondary);line-height:1.6;max-width:350px;margin-bottom:24px}
.noel-banner>svg {position:absolute;right:0;top:0;height:100%;width:38%}
@media(max-width:760px){.topbar .logo-img,.top .site-logo,.top img.logo,.top-inner>a>img {width:150px!important;max-height:48px!important}.admin-logo{max-width:180px!important}.noel-banner{min-height:310px}.noel-banner-copy{width:80%;padding:28px 20px}.noel-banner>svg{width:32%;opacity:.55}.noel-banner p{max-width:230px}.noel-banner small{letter-spacing:1.5px;font-size:9px}}

/* Preserve the original product-image framing across all templates. */
.gallery-main,.photo,.thumb,.review img,.review-photos img,.media-img {aspect-ratio:1/1!important;overflow:hidden!important}
.gallery-main>img,.photo>img,.thumb img,.review img,.review-photos img,.media-img {width:100%!important;object-fit:contain!important;object-position:center!important;background:var(--white)!important}
.gallery-main>img,.photo>img,.thumb img {height:100%!important}
.review img,.review-photos img,.media-img {height:auto!important;display:block!important}
.quick button.active {background:var(--primary)!important;color:var(--white)!important;border-color:var(--primary)!important}
.safe-top svg {color:var(--white)!important}
.info-card,.review p,.specs td,.faq p,.who,.value,.lead,.count-label,.status,.pname,.total,.sumrow {color:var(--text)}

/* Supplied transparent PNG blends into the green header. */
.topbar .logo-img,body>header .site-logo,.menu-logo-box img {
 background:transparent;padding:5px 10px;border-radius:0;
 width:240px!important;max-height:none!important;height:auto!important;
}
.menu-logo-box {padding:0!important;border:0!important}
.fortek-footer-brand img,footer .site-logo,footer .foot img:first-child {
 width:300px!important;max-width:80vw!important;max-height:none!important;height:auto!important;
}
@media(max-width:760px){.topbar .logo-img,body>header .site-logo {width:160px!important;max-height:none!important}.menu-logo-box img{width:190px!important}}

.menu-logo-box img {width:210px!important;max-width:100%!important}
@media(max-width:360px){.topbar .logo-img{width:140px!important}}
