:root {
	--ms-accent: #3f6b35;
	--ms-bg: #f4f7f0;
	--ms-surface: #ffffff;
	--ms-text: #1e2d22;
	--ms-muted: #667166;
	--ms-border: #dce5d7;
	--ms-radius: 18px;
	--ms-shadow: 0 16px 44px rgba(20, 55, 35, 0.10);
	--ms-container: 1200px;
}

/* Landing institucional Maicomsoft: sem imagens pesadas ou dependências externas. */
.home .ms-site-main{padding:0}.home .ms-site-footer{display:none}.ms-agency{--agency-ink:#171729;--agency-muted:#646478;--agency-violet:#5b42f3;--agency-lime:#c8f56d;--agency-peach:#ff8f70;background:#f7f7fb;color:var(--agency-ink);overflow:hidden}.ms-agency-header{position:absolute;z-index:20;top:0;left:0;width:100%;color:#fff}.ms-agency-header-inner{display:flex;align-items:center;justify-content:space-between;min-height:88px;gap:24px}.ms-agency-logo{color:#fff;font-size:1.42rem;font-weight:800;letter-spacing:-.09em;text-decoration:none}.ms-agency-logo b{font-weight:400}.ms-agency-logo i{color:var(--agency-lime);font-style:normal}.ms-agency-header nav{display:flex;gap:30px}.ms-agency-header nav a{color:rgba(255,255,255,.78);font-size:.88rem;text-decoration:none}.ms-agency-header nav a:hover{color:#fff}.ms-agency-header-cta{padding:11px 15px;border:1px solid rgba(255,255,255,.35);border-radius:99px;color:#fff;font-size:.82rem;text-decoration:none}.ms-agency-header-cta span{color:var(--agency-lime)}.ms-agency-hero{position:relative;min-height:720px;padding:160px 0 90px;background:#19192e;color:#fff;isolation:isolate}.ms-agency-hero:before{position:absolute;z-index:-1;inset:0;background:radial-gradient(circle at 72% 43%,rgba(91,66,243,.65),transparent 25%),radial-gradient(circle at 90% 8%,rgba(200,245,109,.22),transparent 20%),linear-gradient(120deg,#171729 25%,#202046);content:""}.ms-agency-hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:40px;align-items:center}.ms-agency-eyebrow{display:flex;align-items:center;gap:9px;margin:0 0 22px;color:inherit;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.ms-agency-eyebrow span{width:22px;height:2px;background:currentColor}.ms-agency-hero h1,.ms-agency h2{margin:0;font-size:clamp(3rem,6.2vw,6.5rem);font-weight:700;letter-spacing:-.075em;line-height:.94}.ms-agency h2{font-size:clamp(2.3rem,4.6vw,4.7rem)}.ms-agency h1 em,.ms-agency h2 em{color:var(--agency-lime);font-family:Georgia,serif;font-weight:400;letter-spacing:-.08em}.ms-agency-lead{max-width:560px;margin:30px 0;color:rgba(255,255,255,.72);font-size:1.1rem}.ms-agency-actions{display:flex;flex-wrap:wrap;align-items:center;gap:25px}.ms-agency-button{display:inline-flex;align-items:center;gap:30px;padding:17px 20px;border-radius:8px;font-size:.9rem;font-weight:800;text-decoration:none;transition:transform .2s ease}.ms-agency-button:hover{transform:translateY(-3px)}.ms-agency-button-primary{background:var(--agency-lime);color:var(--agency-ink)}.ms-agency-button span{font-size:1.35rem}.ms-agency-text-link{color:#fff;font-size:.88rem;font-weight:700}.ms-agency-proof{display:flex;gap:14px;align-items:center;margin-top:65px;font-size:.76rem}.ms-agency-proof strong{padding-right:14px;border-right:1px solid rgba(255,255,255,.3)}.ms-agency-proof span{color:rgba(255,255,255,.55)}.ms-agency-hero-art{position:relative;min-height:430px}.ms-orbit{position:absolute;border:1px solid rgba(255,255,255,.18);border-radius:50%}.ms-orbit-one{width:430px;height:430px;top:0;left:4%}.ms-orbit-two{width:310px;height:310px;top:58px;left:19%;border-color:rgba(200,245,109,.38)}.ms-agency-signal{position:absolute;top:120px;left:18%;display:flex;align-items:center;gap:8px;color:#fff;font-size:clamp(3.2rem,7vw,6.5rem);font-weight:900;letter-spacing:-.13em}.ms-agency-signal b{color:var(--agency-lime);font-family:Georgia,serif;font-weight:400}.ms-agency-card{position:absolute;padding:16px 18px;border:1px solid rgba(255,255,255,.2);border-radius:11px;background:rgba(255,255,255,.1);backdrop-filter:blur(14px)}.ms-agency-card small{display:block;color:rgba(255,255,255,.64);font-size:.7rem}.ms-agency-card strong{display:block;max-width:145px;margin-top:7px;font-size:.92rem;line-height:1.25}.ms-agency-card-top{top:32px;right:0}.ms-agency-card-bottom{bottom:25px;left:5%;display:flex;gap:10px;align-items:center}.ms-agency-card-bottom i{width:11px;height:11px;border-radius:50%;background:var(--agency-lime);box-shadow:0 0 0 5px rgba(200,245,109,.15)}.ms-agency-ticker{overflow:hidden;padding:16px 0;background:var(--agency-lime);color:var(--agency-ink);white-space:nowrap}.ms-agency-ticker div{display:flex;justify-content:center;gap:24px;font-size:.78rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.ms-agency-ticker b{color:var(--agency-violet)}.ms-agency-section{padding:130px 0}.ms-agency-section-head{display:grid;grid-template-columns:1.25fr .75fr;gap:35px;align-items:end;margin-bottom:62px}.ms-agency-section-head .ms-agency-eyebrow,.ms-agency-section-head h2{grid-column:1}.ms-agency-section-head>p:last-child{grid-column:2;grid-row:1 / span 2;align-self:end;max-width:340px;color:var(--agency-muted)}.ms-agency-services{background:#f7f7fb}.ms-agency-service-grid{border-top:1px solid #d9d9e4}.ms-agency-service{display:grid;grid-template-columns:70px 1fr auto;gap:25px;align-items:start;padding:30px 0;border-bottom:1px solid #d9d9e4}.ms-agency-service>span{color:var(--agency-violet);font-size:.78rem;font-weight:800}.ms-agency-service h3{margin:0 0 10px;font-size:clamp(1.45rem,2.5vw,2.2rem);letter-spacing:-.055em}.ms-agency-service p{max-width:590px;margin:0;color:var(--agency-muted)}.ms-agency-service>a{display:grid;width:38px;height:38px;place-items:center;border-radius:50%;background:var(--agency-ink);color:#fff;text-decoration:none}.ms-agency-statement{padding:120px 0;background:var(--agency-violet);color:#fff}.ms-agency-statement p{margin:0 0 16px;color:var(--agency-lime);font-size:.78rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.ms-agency-statement h2{max-width:960px}.ms-agency-statement h2 em{color:var(--agency-lime)}.ms-agency-statement a{display:inline-flex;gap:35px;margin-top:42px;color:#fff;font-size:.9rem;font-weight:800}.ms-agency-statement a span{color:var(--agency-lime);font-size:1.2rem}.ms-agency-work{background:#171729;color:#fff}.ms-agency-work .ms-agency-section-head>p:last-child{color:rgba(255,255,255,.58)}.ms-agency-work-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:16px}.ms-agency-work-card{position:relative;display:flex;min-height:295px;padding:25px;align-items:flex-end;justify-content:space-between;overflow:hidden;border-radius:12px;color:#fff}.ms-agency-work-card:before{position:absolute;inset:0;opacity:.95;content:""}.ms-agency-work-card>*{position:relative}.ms-agency-work-card h3{max-width:310px;margin:8px 0 0;font-size:1.55rem;letter-spacing:-.05em;line-height:1}.ms-agency-work-card span{font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.ms-agency-work-card b{font-size:3rem;color:rgba(255,255,255,.55)}.ms-work-one{grid-row:span 2;min-height:606px}.ms-work-one:before{background:linear-gradient(145deg,#f68f70,#c95df0 55%,#562ef2)}.ms-work-two:before{background:linear-gradient(135deg,#377cf8,#202348)}.ms-work-three:before{background:linear-gradient(135deg,#c8f56d,#25886e)}.ms-agency-note{margin:24px 0 0;color:var(--agency-muted);font-size:.78rem}.ms-agency-plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.ms-agency-plan{position:relative;display:flex;min-height:390px;flex-direction:column;padding:32px;border:1px solid #dedee7;border-radius:12px;background:#fff}.ms-agency-plan.is-featured{border-color:var(--agency-violet);background:var(--agency-violet);color:#fff}.ms-agency-badge{position:absolute;top:18px;right:18px;padding:5px 9px;border-radius:99px;background:var(--agency-lime);color:var(--agency-ink);font-size:.63rem;font-weight:900;text-transform:uppercase}.ms-agency-plan h3{margin:0;font-size:2rem;letter-spacing:-.06em}.ms-agency-plan>p{min-height:55px;margin:14px 0;color:var(--agency-muted)}.ms-agency-plan.is-featured>p{color:rgba(255,255,255,.7)}.ms-agency-plan ul{display:grid;gap:10px;padding:0;margin:13px 0 28px;list-style:none;font-size:.86rem}.ms-agency-plan li:before{padding-right:9px;color:var(--agency-violet);content:"✓"}.ms-agency-plan.is-featured li:before{color:var(--agency-lime)}.ms-agency-plan a{display:flex;justify-content:space-between;margin-top:auto;padding-top:18px;border-top:1px solid #dfdfe8;color:inherit;font-size:.85rem;font-weight:800;text-decoration:none}.ms-agency-plan.is-featured a{border-color:rgba(255,255,255,.25)}.ms-agency-contact{padding:110px 0;background:var(--agency-lime);color:var(--agency-ink)}.ms-agency-contact h2{max-width:930px}.ms-agency-contact h2 em{color:var(--agency-violet)}.ms-agency-button-light{margin-top:42px;background:var(--agency-ink);color:#fff}
@media (max-width:760px){.ms-agency-header-inner{min-height:70px}.ms-agency-header nav{display:none}.ms-agency-header-cta{padding:9px 11px;font-size:.74rem}.ms-agency-hero{min-height:auto;padding:125px 0 70px}.ms-agency-hero-grid,.ms-agency-section-head{grid-template-columns:1fr}.ms-agency-hero-art{min-height:310px;margin-top:15px}.ms-orbit-one{width:300px;height:300px}.ms-orbit-two{width:225px;height:225px;top:38px}.ms-agency-signal{top:105px;font-size:3.7rem}.ms-agency-card-top{top:10px}.ms-agency-proof{margin-top:44px}.ms-agency-section{padding:76px 0}.ms-agency-section-head{gap:20px;margin-bottom:40px}.ms-agency-section-head .ms-agency-eyebrow,.ms-agency-section-head h2,.ms-agency-section-head>p:last-child{grid-column:auto;grid-row:auto}.ms-agency-service{grid-template-columns:42px 1fr}.ms-agency-service>a{grid-column:2}.ms-agency-statement{padding:80px 0}.ms-agency-work-grid,.ms-agency-plan-grid{grid-template-columns:1fr}.ms-work-one{min-height:360px}.ms-agency-work-card{min-height:235px}.ms-agency-plan{min-height:330px}.ms-agency-ticker div{justify-content:flex-start;width:max-content}.ms-agency-contact{padding:75px 0}}
.ms-agency-client-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.ms-agency-client{position:relative;display:flex;min-height:150px;flex-direction:column;justify-content:flex-end;padding:20px;border:1px solid rgba(255,255,255,.17);border-radius:12px;background:linear-gradient(135deg,#292943,#171729);color:#fff;text-decoration:none;transition:transform .2s ease,background .2s ease}.ms-agency-client:hover{background:var(--agency-violet);transform:translateY(-4px)}.ms-agency-client span{font-size:1.15rem;font-weight:800;letter-spacing:-.04em}.ms-agency-client small{margin-top:4px;color:rgba(255,255,255,.55);font-size:.68rem}.ms-agency-client b{position:absolute;top:16px;right:18px;color:var(--agency-lime);font-size:1.2rem}.ms-agency-plan>img{width:100%;height:100px;margin:-8px 0 22px;object-fit:cover;object-position:center;border-radius:8px}.ms-agency-plan.is-featured>img{opacity:.92}@media (max-width:760px){.ms-agency-client-grid{grid-template-columns:repeat(2,1fr)}.ms-agency-client{min-height:125px}}
.ms-agency-client-slider{overflow-x:auto;padding-bottom:8px;scroll-snap-type:x mandatory}.ms-agency-client-slider>div{display:flex;width:max-content;gap:12px}.ms-agency-client-slider .ms-agency-client{width:180px;min-height:92px;scroll-snap-align:start;padding:15px}.ms-agency-client-slider .ms-agency-client span{font-size:1rem}.ms-plan-price{min-height:0!important;color:inherit!important;font-size:.78rem}.ms-plan-price strong{font-size:2.05rem;letter-spacing:-.08em}.ms-agency-plan li.is-off{color:#9797a3}.ms-agency-plan li.is-off:before{color:#f16a70;content:'×'}
.ms-agency-hero-image{position:absolute;right:-8%;bottom:-10%;width:min(620px,110%);max-height:550px;object-fit:contain}.ms-agency-logo .ms-brand-logo{display:block;max-height:44px;max-width:220px;width:auto;filter:none}.ms-agency-services h2 em{color:var(--agency-violet)}.ms-agency-contact{background:#e9e9f2}.ms-agency-contact h2{color:var(--agency-ink)}.ms-plan-tabs{display:flex;justify-content:center;gap:8px;margin:-25px 0 35px}.ms-plan-tabs button{padding:10px 20px;border:1px solid #d7d7e4;background:#fff;color:#25253b;font-size:.8rem;font-weight:800}.ms-plan-tabs button.is-active{border-color:var(--agency-violet);background:var(--agency-violet);color:#fff}.ms-agency-client-slider{overflow:hidden;padding:4px 0 12px}.ms-agency-client-track{display:flex;width:max-content;gap:12px;animation:ms-client-marquee 38s linear infinite}.ms-agency-client-slider:hover .ms-agency-client-track{animation-play-state:paused}.ms-agency-client-slider .ms-agency-client{width:178px;min-height:112px;align-items:center;justify-content:center;padding:15px}.ms-agency-client-logo{display:flex;align-items:center;justify-content:center;height:55px;width:100%;margin:0 0 8px}.ms-agency-client-logo img{display:block;max-width:132px;max-height:50px;width:auto;height:auto;object-fit:contain}.ms-agency-client small{margin:0;text-align:center;color:rgba(255,255,255,.68);font-weight:700}.ms-agency-client b{top:10px;right:12px}@keyframes ms-client-marquee{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 6px))}}@media(prefers-reduced-motion:reduce){.ms-agency-client-track{animation:none}.ms-agency-client-slider{overflow-x:auto}}@media(max-width:760px){.ms-agency-client-slider .ms-agency-client{width:148px;min-height:98px}.ms-agency-client-logo{height:46px}.ms-agency-client-logo img{max-width:112px;max-height:42px}}
.ms-portfolio-page,.ms-portfolio-single{padding:110px 0}.ms-portfolio-page h1,.ms-portfolio-single h1{font-size:clamp(2.8rem,6vw,5.8rem);letter-spacing:-.08em;line-height:.92}.ms-portfolio-page h1 em{color:var(--agency-violet);font-family:Georgia,serif}.ms-portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:50px}.ms-portfolio-card{padding:18px;border-radius:12px;background:#171729;color:#fff;text-decoration:none}.ms-portfolio-card img{width:100%;height:210px;object-fit:cover;border-radius:8px}.ms-portfolio-card span{display:block;margin-top:14px;font-weight:800}.ms-portfolio-card b{display:block;margin-top:8px;color:var(--agency-lime);font-size:.8rem}.ms-portfolio-hero-image{width:100%;max-height:520px;object-fit:cover;border-radius:14px}.ms-portfolio-content{max-width:780px;margin:38px 0;font-size:1.1rem}@media(max-width:760px){.ms-portfolio-grid{grid-template-columns:1fr}.ms-portfolio-page,.ms-portfolio-single{padding:75px 0}}

/* 0.9.7 — parcelamento como um único bloco, sem cartões aninhados. */
.ms-installments {
	position:relative;
	display:grid;
	gap:12px;
	margin:18px 0;
	padding:17px 18px 15px 20px;
	overflow:hidden;
	border:1px solid #d7e4d1;
	border-radius:14px;
	background:linear-gradient(135deg,#fbfdf9,#f2f7ee);
	color:#244d30;
}
.ms-installments::before {
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	width:4px;
	background:linear-gradient(180deg,#4f873f,#2d6c39);
	content:"";
}
.ms-installments-title {
	display:flex;
	gap:9px;
	align-items:center;
	color:#1f582f;
	font-size:.95rem;
}
.ms-installments-title::before {
	display:block;
	width:22px;
	height:22px;
	flex:0 0 22px;
	background:#357540;
	content:"";
	-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='2.5' y='5' width='19' height='14' rx='2' fill='none' stroke='black' stroke-width='1.8'/%3E%3Cpath d='M3 9h18M6 15h5' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E") center/contain no-repeat;
	mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='2.5' y='5' width='19' height='14' rx='2' fill='none' stroke='black' stroke-width='1.8'/%3E%3Cpath d='M3 9h18M6 15h5' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E") center/contain no-repeat;
}
.ms-installment-options {
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	gap:0 20px;
	margin:0;
	border-top:1px solid #dbe6d6;
}
.ms-installment-options > span {
	display:flex;
	gap:7px;
	align-items:baseline;
	min-width:0;
	padding:9px 2px;
	border:0;
	border-bottom:1px solid #dbe6d6;
	border-radius:0;
	background:transparent;
	color:#526657;
	font-size:.82rem;
}
.ms-installment-options > span > b {
	min-width:24px;
	color:#246134;
	font-size:.8rem;
}
.ms-installment-options .woocommerce-Price-amount,
.ms-installment-options .woocommerce-Price-amount bdi,
.ms-installment-options .woocommerce-Price-currencySymbol {
	display:inline !important;
	padding:0 !important;
	border:0 !important;
	background:transparent !important;
	color:#264e31 !important;
	font-size:inherit !important;
	font-weight:800;
}
.ms-installments-disclaimer {
	color:#68766b;
	font-size:.69rem;
	line-height:1.4;
}
.ms-installments-note {
	color:#46604c !important;
	font-size:.75rem !important;
}
@media (max-width:480px) {
	.ms-installments {
		gap:10px;
		padding:15px 14px 14px 17px;
	}
	.ms-installment-options {
		grid-template-columns:1fr;
	}
	.ms-installment-options > span {
		padding:8px 2px;
	}
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
	-webkit-text-size-adjust: 100%;
}

body {
	margin: 0;
	background:
		radial-gradient(circle at 8% 8%, rgba(112, 162, 79, 0.18), transparent 30%),
		radial-gradient(circle at 94% 36%, rgba(205, 177, 90, 0.14), transparent 24%),
		linear-gradient(180deg, var(--ms-bg) 0%, #edf3e8 100%);
	color: var(--ms-text);
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji";
	font-size: 16px;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
}

body::before {
	position: fixed;
	z-index: 0;
	inset: 0;
	background-image: radial-gradient(rgba(57, 95, 51, 0.10) 1px, transparent 1px);
	background-size: 28px 28px;
	content: "";
	mask-image: linear-gradient(to bottom, transparent, #000 18%, #000 82%, transparent);
	pointer-events: none;
}

img {
	max-width: 100%;
	height: auto;
}

a {
	color: var(--ms-accent);
	text-decoration-thickness: 0.08em;
	text-underline-offset: 0.16em;
}

button,
input,
select,
textarea {
	font: inherit;
}

.screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.ms-container {
	width: min(calc(100% - 32px), var(--ms-container));
	margin-inline: auto;
}

.ms-skip-link {
	position: fixed;
	z-index: 10000;
	top: 12px;
	left: 12px;
	padding: 10px 14px;
	background: var(--ms-text);
	color: #fff;
	border-radius: 8px;
	transform: translateY(-150%);
}

.ms-skip-link:focus {
	transform: translateY(0);
}

.ms-site-header {
	position: relative;
	z-index: 100;
	background: radial-gradient(circle at 82% 0, rgba(190, 211, 145, .26), transparent 28%), linear-gradient(110deg, #fbfaf5, #f2f1e7 58%, #e9f0df);
	border-bottom: 1px solid rgba(50, 93, 48, .18);
	box-shadow: 0 10px 30px rgba(31, 66, 39, .10);
}

.ms-site-header::after {
	position: absolute;
	right: 0;
	bottom: -1px;
	left: 0;
	height: 3px;
	background: linear-gradient(90deg, #bad274, #e5c66a, #6da356);
	content: "";
}

.ms-site-header.is-sticky {
	position: sticky;
	top: 0;
	backdrop-filter: blur(14px);
}

.ms-header-inner {
	display: grid;
	grid-template-columns: auto 1fr auto;
	align-items: center;
	min-height: 84px;
	gap: clamp(16px, 2vw, 34px);
}

.ms-brand,
.custom-logo-link {
	display: inline-flex;
	align-items: center;
}

.custom-logo {
	width: auto;
	max-height: 52px;
}

.ms-brand-logo-link,
.ms-brand-logo {
	display: block;
}

.ms-brand-logo {
	width: auto;
	max-width: 210px;
	max-height: 54px;
	object-fit: contain;
}

.ms-site-name {
	color: #183d28;
	max-width: 220px;
	font-size: 1.05rem;
	font-weight: 800;
	letter-spacing: -0.02em;
	text-decoration: none;
}

.ms-menu,
.ms-footer-menu {
	display: flex;
	align-items: center;
	gap: clamp(12px, 1.5vw, 24px);
	padding: 0;
	margin: 0;
	list-style: none;
}

.ms-footer-policies {
	display: grid;
	gap: 10px;
}

.ms-footer-policies .ms-footer-menu {
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 10px 20px;
}

.ms-menu a {
	color: #263d2c;
	font-size: 0.9rem;
	font-weight: 700;
	text-decoration: none;
}

.ms-menu a:hover,
.ms-menu .current-menu-item > a {
	color: #2f733d;
}

.ms-menu > li {
	position: relative;
}

.ms-menu .sub-menu {
	position: absolute;
	top: calc(100% + 14px);
	left: -16px;
	display: none;
	min-width: 220px;
	padding: 10px;
	margin: 0;
	border: 1px solid rgba(230, 200, 120, 0.22);
	border-radius: 12px;
	background: #fffef9;
	box-shadow: 0 18px 38px rgba(20, 55, 35, 0.16);
	list-style: none;
}

.ms-menu > li:hover > .sub-menu,
.ms-menu > li:focus-within > .sub-menu {
	display: grid;
	gap: 2px;
}

.ms-menu .sub-menu a {
	display: block;
	padding: 8px 10px;
	border-radius: 7px;
}

.ms-menu .sub-menu a:hover {
	background: #edf4e6;
}

.ms-header-actions {
	display: flex;
	align-items: center;
	gap: 14px;
}

.ms-account-link,
.onchair-header-login-btn,
.ms-cart-link,
.ms-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	padding: 8px 18px;
	border-radius: 999px;
	border: 1px solid transparent;
	background: linear-gradient(135deg, #4f813e, #2f6f3b);
	color: #fff;
	font-weight: 700;
	text-decoration: none;
	transition: transform 160ms ease, filter 160ms ease;
}

.ms-account-link:hover,
.onchair-header-login-btn:hover,
.ms-cart-link:hover,
.ms-button:hover {
	color: #fff;
	filter: brightness(0.93);
	transform: translateY(-1px);
}

.ms-menu-toggle {
	display: none;
	width: 44px;
	height: 44px;
	align-items: center;
	justify-content: center;
	padding: 0;
	border: 1px solid rgba(47, 111, 59, .28);
	border-radius: 12px;
	background: #edf3e6;
	color: #285f35;
}

.ms-mobile-search {
	display: none;
}

.ms-header-icon {
	display: inline-grid;
	place-items: center;
	width: 42px;
	height: 42px;
	border: 1px solid rgba(47, 111, 59, .35);
	border-radius: 50%;
	color: #285f35;
	font-size: 1.5rem;
	line-height: 1;
	text-decoration: none;
}

.ms-cart-link {
	gap: 8px;
	white-space: nowrap;
}

.ms-cart-count {
	display: inline-grid;
	place-items: center;
	min-width: 20px;
	height: 20px;
	padding-inline: 5px;
	border-radius: 999px;
	background: #e2bd52;
	color: #183222;
	font-size: 0.75rem;
}

.ms-menu-toggle-icon,
.ms-menu-toggle-icon::before,
.ms-menu-toggle-icon::after {
	display: block;
	width: 20px;
	height: 2px;
	background: currentColor;
	content: "";
	transition: transform 160ms ease;
}

.ms-menu-toggle-icon::before {
	transform: translateY(-6px);
}

.ms-menu-toggle-icon::after {
	transform: translateY(4px);
}

.ms-site-main {
	position: relative;
	z-index: 1;
	min-height: 60vh;
	background: transparent;
}

.ms-content {
	padding-block: clamp(36px, 6vw, 84px);
}

.ms-content-narrow {
	max-width: 820px;
}

.ms-entry-title {
	margin: 0 0 28px;
	font-size: clamp(2rem, 5vw, 3.5rem);
	line-height: 1.08;
	letter-spacing: -0.035em;
}

.ms-entry-content {
	color: #dedee2;
}

.ms-entry-content h1,
.ms-entry-content h2,
.ms-entry-content h3,
.ms-entry-content h4,
.ms-entry-content h5,
.ms-entry-content h6 {
	color: #f7f7f8;
}

.ms-entry-content > :first-child {
	margin-top: 0;
}

.ms-entry-content > :last-child {
	margin-bottom: 0;
}

.elementor-page .ms-content,
.elementor-page .ms-entry {
	width: 100%;
	max-width: none;
	padding: 0;
}

.ms-site-footer {
	position: relative;
	z-index: 2;
	padding-block: 42px;
	background: linear-gradient(135deg, var(--ms-footer, #10291d), #1b4b31);
	color: #fff;
	border-top: 1px solid rgba(200, 161, 63, 0.28);
}

.ms-footer-inner {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 24px;
	align-items: start;
}

.ms-footer-inner p {
	margin: 6px 0 0;
	color: #b9b9bd;
}

.ms-footer-brand {
	max-width: 620px;
}

.ms-social-links {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 18px;
}

.ms-social-links a,
.ms-social-links button {
	display: inline-grid;
	place-items: center;
	width: 42px;
	height: 42px;
	padding: 0;
	border: 1px solid rgba(230, 200, 120, 0.28);
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.04);
	color: #e6c878;
	cursor: pointer;
	transition: transform 160ms ease, background 160ms ease, color 160ms ease;
}

.ms-social-links a:hover,
.ms-social-links button:hover,
.ms-social-links button.is-copied {
	background: var(--ms-accent);
	color: #080808;
	transform: translateY(-2px);
}

.ms-social-icon {
	width: 20px;
	height: 20px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.ms-social-icon .ms-icon-fill {
	fill: currentColor;
	stroke: none;
}

.ms-share {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	margin-top: 40px;
	padding-top: 24px;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.ms-share .ms-social-links {
	margin-top: 0;
}

.ms-footer-menu a {
	color: #dbe9b8;
	text-decoration: none;
}

.ms-footer-meta {
	grid-column: 1 / -1;
	display: flex;
	justify-content: space-between;
	gap: 16px;
	padding-top: 22px;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.ms-copyright,
.ms-developer-credit {
	font-size: 0.875rem;
}

.ms-developer-credit a {
	color: #e6c878;
	font-weight: 700;
	text-decoration: none;
}

.ms-empty-state {
	text-align: center;
}

.ms-home-products,
.ms-home-posts {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 22px;
	margin-top: 28px;
}

.ms-home-product,
.ms-home-post {
	overflow: hidden;
	border: 1px solid var(--ms-border);
	border-radius: var(--ms-radius);
	background: #fff;
	box-shadow: var(--ms-shadow);
}

.ms-home-product-image,
.ms-home-post-image {
	display: block;
	aspect-ratio: 1 / .78;
	background: var(--ms-surface);
}

.ms-home-product-image img,
.ms-home-post-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.ms-home-post-image span {
	display: grid;
	height: 100%;
	place-items: center;
	color: var(--ms-accent);
	font-weight: 800;
}

.ms-home-product-body,
.ms-home-post-body {
	padding: 16px;
}

.ms-home-product h4,
.ms-home-post h4 {
	margin: 0 0 8px;
	font-size: 1rem;
	line-height: 1.35;
}

.ms-home-product h4 a,
.ms-home-post h4 a {
	color: #17171b;
	text-decoration: none;
}

.ms-home-product-price {
	margin-bottom: 14px;
	color: var(--ms-accent);
	font-weight: 800;
}

.ms-home-product-button {
	min-height: 36px;
	padding: 6px 14px;
	font-size: .875rem;
}

.ms-home-post-date {
	margin: 0 0 6px;
	color: var(--ms-muted);
	font-size: .8rem;
	font-weight: 700;
}

.ms-home-post-body > p:not(.ms-home-post-date) {
	color: #4f4f56;
	font-size: .9rem;
}

.ms-home-section-action {
	margin: 28px 0 0;
	text-align: center;
}

.ms-home-empty {
	margin-top: 20px;
	color: var(--ms-muted);
}

/* WooCommerce: catálogo, produto, carrinho e checkout sem overrides legados. */
.ms-shop {
	padding-block: clamp(32px, 5vw, 72px);
}

.ms-shop .woocommerce-breadcrumb {
	margin: 0 0 20px;
	color: var(--ms-muted);
}

.ms-shop .woocommerce-breadcrumb a {
	color: inherit;
}

.ms-shop .woocommerce-result-count,
.ms-shop .woocommerce-ordering {
	margin-bottom: 28px;
}

.ms-shop .woocommerce-ordering select,
.ms-shop .woocommerce form .input-text,
.ms-shop .woocommerce form select,
.ms-shop .select2-container--default .select2-selection--single {
	min-height: 44px;
	padding: 8px 12px;
	border: 1px solid var(--ms-border);
	border-radius: 8px;
	background: #fff;
	color: #17171b;
}

.ms-shop .woocommerce ul.products {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 28px;
	margin: 0;
}

.ms-shop .woocommerce ul.products::before,
.ms-shop .woocommerce ul.products::after {
	display: none;
}

.ms-shop .woocommerce ul.products li.product {
	width: auto;
	margin: 0;
	padding: 14px;
	border: 1px solid var(--ms-border);
	border-radius: var(--ms-radius);
	background: #fff;
	box-shadow: var(--ms-shadow);
}

.ms-shop .woocommerce ul.products li.product a img {
	margin-bottom: 14px;
	border-radius: calc(var(--ms-radius) - 4px);
}

.ms-shop .woocommerce ul.products li.product .woocommerce-loop-product__title {
	padding: 0;
	color: #17171b;
	font-size: 1rem;
}

.ms-shop .woocommerce ul.products li.product .price,
.ms-shop .woocommerce div.product p.price,
.ms-shop .woocommerce div.product span.price {
	color: var(--ms-accent);
	font-weight: 800;
}

.ms-shop .woocommerce a.button,
.ms-shop .woocommerce button.button,
.ms-shop .woocommerce input.button,
.ms-shop .woocommerce #respond input#submit {
	border-radius: 999px;
	background: var(--ms-accent);
	color: #fff;
	font-weight: 700;
}

.ms-shop .woocommerce div.product div.images,
.ms-shop .woocommerce div.product div.summary {
	margin-bottom: 44px;
}

.ms-shop .woocommerce div.product .product_title {
	color: var(--ms-text);
	font-size: clamp(1.9rem, 4vw, 3rem);
}

.ms-shop .woocommerce-message,
.ms-shop .woocommerce-info,
.ms-shop .woocommerce-error {
	border-radius: 10px;
}

.ms-shop .woocommerce-cart-form,
.ms-shop .cart-collaterals,
.ms-shop .woocommerce-checkout-review-order,
.ms-shop .woocommerce form.checkout {
	padding: 22px;
	border: 1px solid var(--ms-border);
	border-radius: var(--ms-radius);
	background: #fff;
	box-shadow: var(--ms-shadow);
}

.ms-kicker {
	color: var(--ms-accent);
	font-weight: 800;
	letter-spacing: 0.12em;
}

@media (max-width: 960px) {
	.ms-header-inner {
		grid-template-columns: 44px minmax(0, 1fr) 44px;
		gap: 12px;
		min-height: 60px;
		padding-block: 7px;
	}

	.ms-brand {
		grid-column: 2;
		grid-row: 1;
		justify-self: center;
		min-width: 0;
	}

	.ms-brand-logo {
		max-width: min(225px, 58vw);
		max-height: 58px;
	}

	.ms-menu-toggle {
		display: inline-flex;
		grid-column: 1;
		grid-row: 1;
		justify-self: start;
		border-color: rgba(42, 101, 52, .34);
		background: #eaf2e3;
		color: #235c32;
		box-shadow: 0 5px 14px rgba(26, 67, 40, .10);
	}

	.ms-mobile-search {
		display: flex;
		grid-column: 3;
		grid-row: 1;
		align-items: center;
		justify-content: flex-end;
	}

	.ms-mobile-search .onchair-header-search-link {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 42px;
		height: 42px;
		color: #235c32;
		border: 1px solid rgba(42, 101, 52, .34);
		border-radius: 999px;
		background: #eef4e8;
		text-decoration: none;
	}

	.ms-mobile-search .ms-header-icon,
	.ms-mobile-search .ms-cart-link {
		border-color: rgba(42, 101, 52, .34) !important;
		background: #eef4e8 !important;
		color: #235c32 !important;
		box-shadow: 0 5px 14px rgba(26, 67, 40, .10);
	}

	.ms-mobile-search .ms-cart-link svg,
	.ms-mobile-search .ms-header-icon svg {
		color: #235c32 !important;
		stroke: currentColor !important;
	}

	.ms-mobile-search .onchair-header-search-icon {
		width: 21px;
		height: 21px;
	}

	.ms-primary-navigation,
	.ms-header-actions {
		display: none;
		grid-column: 1 / -1;
	}

	.is-menu-open .ms-primary-navigation,
	.is-menu-open .ms-header-actions {
		display: flex;
	}

	.ms-primary-navigation {
		grid-row: 2;
		padding-top: 10px;
		border-top: 1px solid rgba(230, 200, 120, 0.2);
	}

	.ms-menu {
		width: 100%;
		align-items: stretch;
		flex-direction: column;
		gap: 0;
	}

	.ms-menu a {
		display: block;
		padding: 11px 0;
	}

	.ms-header-actions {
		grid-row: 3;
		align-items: stretch;
		flex-direction: column;
		padding-bottom: 18px;
	}

	.ms-header-actions .ms-search {
		display: none;
	}

	.ms-shop .woocommerce ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.ms-home-products,
	.ms-home-posts {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 640px) {
	input,
	select,
	textarea,
	.ms-search-form input,
	.onchair-painel-v2 input,
	.onchair-painel-v2 select,
	.onchair-painel-v2 textarea,
	.onchair-onboarding-modal input,
	.onchair-onboarding-modal select,
	.onchair-onboarding-modal textarea {
		max-width: 100%;
		font-size: 16px !important;
	}

	.ms-container {
		width: min(calc(100% - 24px), var(--ms-container));
	}

	.ms-footer-inner {
		grid-template-columns: 1fr;
	}

	.ms-footer-menu {
		align-items: flex-start;
		flex-direction: column;
		gap: 10px;
	}

	.ms-footer-meta {
		align-items: flex-start;
		flex-direction: column;
	}

	.ms-share {
		align-items: flex-start;
		flex-direction: column;
	}

	.ms-shop .woocommerce ul.products {
		grid-template-columns: 1fr;
	}

	.ms-home-products,
	.ms-home-posts {
		grid-template-columns: 1fr;
	}
}

@media (prefers-reduced-motion: reduce) {
	* {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
	}
}

/* Rede Verde: vitrine com rolagem horizontal, cartões premium e compra clara. */
.ms-home-products-shell { position: relative; margin-top: 30px; }
.ms-home-products { display: flex; gap: 18px; overflow-x: auto; padding: 4px 4px 18px; margin: 0; scroll-snap-type: x mandatory; scrollbar-width: thin; }
.ms-home-product { flex: 0 0 clamp(220px, 23vw, 280px); display: flex; flex-direction: column; scroll-snap-align: start; border: 1px solid rgba(63,107,53,.18); border-radius: 20px; box-shadow: 0 12px 30px rgba(20,55,35,.10); transition: transform .2s ease, box-shadow .2s ease; }
.ms-home-product:hover, .ms-home-post:hover, .ms-shop .woocommerce ul.products li.product:hover { transform: translateY(-5px); box-shadow: 0 22px 42px rgba(20,55,35,.16); }
.ms-home-product-image { aspect-ratio: 1 / .9; padding: 14px; background: linear-gradient(145deg,#f8fbf4,#e8f0de); }
.ms-home-product-image img { object-fit: contain; mix-blend-mode: multiply; }
.ms-home-product-body { display: flex; flex: 1; flex-direction: column; padding: 18px; }
.ms-home-product h4 { min-height: 3em; font-size: 1.03rem; }
.ms-home-product-price { margin-top: auto; font-size: 1.15rem; }
.ms-home-product-button { width: 100%; margin-top: 4px; }
.ms-carousel-actions { display: flex; justify-content: flex-end; gap: 8px; margin-bottom: 8px; }
.ms-carousel-actions button { display: grid; place-items: center; width: 38px; height: 38px; border: 1px solid var(--ms-border); border-radius: 50%; background: #fff; color: var(--ms-accent); font-size: 1.8rem; line-height: 1; cursor: pointer; }
.ms-home-posts { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
.ms-home-post { border-color: rgba(63,107,53,.16); border-radius: 20px; transition: transform .2s ease, box-shadow .2s ease; }
.ms-home-post-image { aspect-ratio: 1 / .68; background: linear-gradient(135deg,#dcebd0,#f8f2d9); }
.ms-home-post-body { padding: 20px; }
.ms-home-post h4 { font-size: 1.12rem; }
.ms-home-post-body > a { display: inline-flex; margin-top: 10px; color: var(--ms-accent); font-weight: 800; text-decoration: none; }
.ms-shop .woocommerce ul.products li.product { overflow: hidden; padding: 16px; border-color: rgba(63,107,53,.18); border-radius: 20px; transition: transform .2s ease, box-shadow .2s ease; }
.ms-shop .woocommerce ul.products li.product a img { aspect-ratio: 1 / 1; padding: 10px; object-fit: contain; background: #f7faf3; }
.ms-shop .woocommerce ul.products li.product .woocommerce-loop-product__title { min-height: 2.8em; font-size: 1.05rem; line-height: 1.38; }
.ms-shop .woocommerce ul.products li.product .price { display: block; margin: 9px 0 14px; font-size: 1.12rem; }
.ms-shop .woocommerce ul.products li.product .button { width: 100%; text-align: center; }
.single-product .ms-shop .product { display: grid; grid-template-columns: minmax(0,1.15fr) minmax(330px,.85fr); gap: clamp(28px,5vw,72px); align-items: start; }
.single-product .ms-shop .product .woocommerce-product-gallery, .single-product .ms-shop .product .summary { float: none; width: auto; }
.single-product .ms-shop .product .woocommerce-product-gallery { padding: 20px; border: 1px solid var(--ms-border); border-radius: 22px; background: #fff; box-shadow: var(--ms-shadow); }
.single-product .ms-shop .product .summary { position: sticky; top: 106px; padding: clamp(22px,3vw,34px); border: 1px solid rgba(63,107,53,.20); border-radius: 22px; background: #fff; box-shadow: var(--ms-shadow); }
.single-product .ms-shop .product .product_title { margin: 0 0 18px; font-size: clamp(1.7rem,3vw,2.5rem); line-height: 1.15; }
.single-product .ms-shop .product p.price { margin: 0 0 16px; font-size: clamp(1.7rem,3vw,2.35rem); color: #276234; }
.ms-installments { display: grid; gap: 4px; margin: 18px 0; padding: 14px 16px; border: 1px solid #cde3bf; border-radius: 14px; background: #f4faef; color: #255635; }
.ms-installments span { color: #5d705f; font-size: .87rem; }
.single-product .ms-shop .product form.cart { display: flex; flex-wrap: wrap; gap: 10px; padding: 18px 0; border-top: 1px solid var(--ms-border); border-bottom: 1px solid var(--ms-border); }
.single-product .ms-shop .product form.cart .single_add_to_cart_button { min-height: 52px; flex: 1; font-size: 1rem; }
.single-product .ms-shop .woocommerce-tabs, .single-product .ms-shop .related { grid-column: 1 / -1; }
@media (max-width:960px) { .single-product .ms-shop .product { grid-template-columns: 1fr; } .single-product .ms-shop .product .summary { position: static; } .ms-home-posts { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width:640px) { .ms-home-product { flex-basis: 80vw; } .ms-home-posts { grid-template-columns: 1fr; } }

/* Ajustes de vitrine 0.4.1: prioriza imagem, leitura e toque em telas pequenas. */
.ms-product-search[hidden] { display: none; }
.ms-product-search { position: fixed; z-index: 9999; inset: 0; display: grid; place-items: start center; padding: min(12vh,110px) 18px 20px; }
.ms-product-search-backdrop { position: absolute; inset: 0; background: rgba(7,29,17,.66); backdrop-filter: blur(5px); }
.ms-product-search-panel { position: relative; width: min(680px,100%); padding: clamp(24px,5vw,42px); border-radius: 24px; background: #fff; box-shadow: 0 30px 80px rgba(0,0,0,.28); }
.ms-product-search-panel h2 { margin: 0 0 18px; color: #17442d; font-size: clamp(1.45rem,4vw,2rem); }
.ms-product-search-panel form { display: grid; grid-template-columns: 1fr auto; gap: 10px; }
.ms-product-search-panel input[type="search"] { min-width: 0; min-height: 52px; padding: 0 16px; border: 1px solid #b9ceb1; border-radius: 12px; color: var(--ms-text); }
.ms-product-search-close { position: absolute; top: 10px; right: 14px; border: 0; background: transparent; color: #54705a; font-size: 2rem; cursor: pointer; }
.ms-header-icon { cursor: pointer; background: transparent; }

/* Seletores sem depender de uma classe extra do WooCommerce. */
.ms-shop ul.products, .single-product .related ul.products { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; padding: 0; margin: 0; list-style: none; }
.ms-shop ul.products::before, .ms-shop ul.products::after { display: none; }
.ms-shop ul.products li.product, .single-product .related ul.products li.product { width: auto; margin: 0; padding: 14px; overflow: hidden; border: 1px solid rgba(63,107,53,.18); border-radius: 18px; background: #fff; box-shadow: 0 12px 30px rgba(20,55,35,.09); transition: transform .2s ease, box-shadow .2s ease; }
.ms-shop ul.products li.product img, .single-product .related ul.products li.product img { width: 100%; aspect-ratio: 1; padding: 8px; margin: 0 0 12px; object-fit: contain; background: #f5f9f1; border-radius: 13px; }
.ms-shop ul.products li.product .woocommerce-loop-product__title, .single-product .related .woocommerce-loop-product__title { min-height: 2.8em; padding: 0; color: #1e2d22; font-size: 1rem; line-height: 1.4; }
.ms-shop ul.products li.product .price, .single-product .related .price { display: block; margin: 8px 0 12px; color: #276234; font-size: 1.08rem; font-weight: 800; }
.ms-shop ul.products li.product .button, .single-product .related .button { display: block; width: 100%; text-align: center; }

.single-product .ms-shop .product { display: grid; grid-template-columns: minmax(0,1.05fr) minmax(320px,.95fr); gap: clamp(26px,4vw,58px); align-items: start; }
.single-product .ms-shop .product .woocommerce-product-gallery { float: none; width: auto; padding: clamp(12px,2vw,24px); border: 1px solid #dce5d7; border-radius: 22px; background: #fff; box-shadow: 0 14px 34px rgba(20,55,35,.10); }
.single-product .ms-shop .product .woocommerce-product-gallery__wrapper { border-radius: 14px; overflow: hidden; background: #f7faf4; }
.single-product .ms-shop .product .woocommerce-product-gallery__image a { display: grid; min-height: min(58vw,560px); place-items: center; }
.single-product .ms-shop .product .woocommerce-product-gallery__image img { width: 100%; max-height: 560px; object-fit: contain; }
.single-product .ms-shop .flex-control-thumbs { display: flex; gap: 9px; padding: 14px 0 0; margin: 0; overflow-x: auto; }
.single-product .ms-shop .flex-control-thumbs li { flex: 0 0 72px; width: 72px; border: 1px solid #dce5d7; border-radius: 10px; overflow: hidden; }
.single-product .ms-shop .flex-control-thumbs img { aspect-ratio: 1; object-fit: cover; }
.single-product .ms-shop .product .summary { position: static; float: none; width: auto; margin: 0; padding: clamp(20px,3vw,32px); border: 1px solid rgba(63,107,53,.20); border-radius: 22px; background: #fff; box-shadow: 0 14px 34px rgba(20,55,35,.10); }
.single-product .ms-shop .product .product_title { margin: 0 0 14px; color: #1b3423; font-size: clamp(1.65rem,3.2vw,2.55rem); line-height: 1.15; }
.single-product .ms-shop .product p.price { margin: 16px 0; color: #276234; font-size: clamp(1.75rem,3.5vw,2.45rem); font-weight: 800; }
.single-product .ms-shop .product .woocommerce-product-details__short-description { padding: 14px 0; border-top: 1px solid var(--ms-border); color: #4f6251; }
.single-product .ms-shop .product form.cart { display: flex; align-items: stretch; gap: 10px; padding: 18px 0; margin: 0; border-top: 1px solid var(--ms-border); border-bottom: 1px solid var(--ms-border); }
.single-product .ms-shop .product form.cart .quantity .qty { height: 52px; min-width: 64px; border: 1px solid #b9ceb1; border-radius: 10px; }
.single-product .ms-shop .product form.cart .single_add_to_cart_button { min-height: 52px; flex: 1; border-radius: 12px; background: linear-gradient(135deg,#4f813e,#276234); }
.single-product .ms-shop .woocommerce-tabs, .single-product .ms-shop .related { grid-column: 1 / -1; padding: clamp(22px,4vw,40px); margin-top: 8px; border: 1px solid var(--ms-border); border-radius: 22px; background: #fff; }
.single-product .ms-shop .related { padding: clamp(22px,4vw,34px); }
.single-product .ms-shop .related > h2 { margin: 0 0 22px; color: #1b3423; }

@media (max-width: 960px) { .single-product .ms-shop .product { grid-template-columns: 1fr; } .ms-shop ul.products, .single-product .related ul.products { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; } }
@media (max-width: 640px) { .ms-product-search { padding-top: 70px; } .ms-product-search-panel form { grid-template-columns: 1fr; } .ms-product-search-panel .ms-button { min-height: 50px; } .ms-shop { padding-inline: 0; } .ms-shop ul.products, .single-product .related ul.products { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; } .ms-shop ul.products li.product, .single-product .related ul.products li.product { padding: 9px; border-radius: 14px; } .ms-shop ul.products li.product .woocommerce-loop-product__title, .single-product .related .woocommerce-loop-product__title { min-height: 0; font-size: .86rem; } .ms-shop ul.products li.product .price, .single-product .related .price { font-size: .96rem; } .ms-shop ul.products li.product .button, .single-product .related .button { min-height: 38px; padding: 7px 8px; font-size: .78rem; } .single-product .ms-shop .product .woocommerce-product-gallery__image a { min-height: 80vw; } .single-product .ms-shop .product .summary { padding: 20px; } .single-product .ms-shop .woocommerce-tabs, .single-product .ms-shop .related { padding: 20px; border-radius: 16px; } }

.ms-product-search-panel form { grid-template-columns: minmax(0,1fr) 145px 180px auto; }
.ms-product-search-panel select { min-width: 0; min-height: 52px; padding: 0 10px; border: 1px solid #b9ceb1; border-radius: 12px; background: #fff; color: var(--ms-text); }
.ms-search-suggestions { display: grid; gap: 8px; max-height: 380px; margin-top: 14px; overflow: auto; }
.ms-search-result { display: grid; grid-template-columns: 54px 1fr; gap: 12px; align-items: center; padding: 8px; border-radius: 12px; color: var(--ms-text); text-decoration: none; }
.ms-search-result:hover { background: #f0f7eb; }
.ms-search-result-image { display: grid; width: 54px; height: 54px; place-items: center; overflow: hidden; border-radius: 9px; background: #f1f6ec; }
.ms-search-result-image img { width: 100%; height: 100%; object-fit: cover; }
.ms-search-result strong,.ms-search-result small { display: block; }.ms-search-result small { margin-top: 3px; color: #3f6b35; }
.ms-product-card-image { position: relative; display: block; aspect-ratio: 1; padding: 8px; overflow: hidden; border-radius: 13px; background: #f5f9f1; }.ms-product-card-image img { width: 100%; height: 100%; object-fit: contain; }.ms-product-card-content { padding-top: 12px; }.ms-product-card-content .button { width: 100%; }.ms-product-card-content .price { display: block; margin: 8px 0 12px; color: #276234; font-weight: 800; }.ms-product-card-content h2 a { color: #1e2d22; text-decoration: none; }
.ms-mobile-bottom-nav { display: none; }
@media (max-width: 640px) { body { padding-bottom: 70px; } .ms-mobile-bottom-nav { position: fixed; z-index: 1000; right: 0; bottom: 0; left: 0; display: grid; grid-template-columns: repeat(5,1fr); padding: 6px 3px calc(6px + env(safe-area-inset-bottom)); border-top: 1px solid #dce5d7; background: rgba(255,255,255,.97); box-shadow: 0 -8px 26px rgba(20,55,35,.12); }.ms-mobile-bottom-nav a { display: grid; gap: 2px; place-items: center; min-width: 0; color: #31573b; text-decoration: none; }.ms-mobile-bottom-nav span { font-size: 1.28rem; line-height: 1; }.ms-mobile-bottom-nav small { overflow: hidden; max-width: 100%; font-size: .63rem; text-overflow: ellipsis; white-space: nowrap; }.ms-shop ul.products li.product, .single-product .related ul.products li.product { min-width: 0; padding: 8px; }.ms-product-card-content { padding-top: 8px; }.ms-product-card-content .woocommerce-loop-product__title { margin: 0; min-height: 2.5em; font-size: .78rem !important; line-height: 1.28; }.ms-product-card-content .price { margin: 6px 0 8px; font-size: .92rem; }.ms-product-card-content .button { min-height: 36px; padding: 6px 4px; font-size: .72rem; }.ms-product-search-panel form { grid-template-columns: 1fr 1fr; }.ms-product-search-panel input[type="search"] { grid-column: 1 / -1; }.ms-product-search-panel .ms-button { grid-column: 1 / -1; } }

/* Correções finais de grade: a imagem ocupa sempre toda a largura do cartão. */
.ms-product-card-image { display: block !important; width: 100% !important; min-width: 0; height: auto; aspect-ratio: 1 / 1; }
.ms-product-card-image img { display: block; width: 100% !important; height: 100% !important; min-width: 0; object-fit: contain; }
.single-product .related ul.products { grid-template-columns: repeat(4,minmax(0,1fr)); }
.single-product .related ul.products li.product { display: block; min-width: 0; }
.single-product .related .ms-product-card-content { display: block; }
.single-product .related .ms-product-card-rating { min-height: 0; }
.ms-mobile-bottom-nav span { display: grid; place-items: center; width: 27px; height: 27px; color: #2f6b40; }
.ms-mobile-bottom-nav span svg { width: 21px; height: 21px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
@media (max-width:640px) { .ms-shop { width: min(calc(100% - 16px),var(--ms-container)); } .ms-shop ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; } .ms-shop ul.products li.product { padding:10px; border-radius:15px; } .ms-shop ul.products li.product .ms-product-card-image { aspect-ratio:1 / 1.06; padding:5px; } .ms-shop ul.products li.product .woocommerce-loop-product__title { min-height:3.7em; font-size:.80rem !important; line-height:1.22; } .ms-shop ul.products li.product .price { margin:7px 0 9px; font-size:.92rem; } .ms-shop ul.products li.product .button { min-height:35px; padding:6px 2px; font-size:.70rem; } .single-product .related ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; } .ms-home-posts { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; } .ms-home-post-body { padding:13px; } .ms-home-post h4 { font-size:.9rem; } .ms-home-post-body > p:not(.ms-home-post-date) { display:none; } }

/* Home em duas linhas: a rolagem avança por colunas, não por cards soltos. */
.ms-home-products { display:grid; grid-auto-flow:column; grid-template-rows:repeat(2,minmax(0,1fr)); grid-auto-columns:minmax(230px,280px); align-items:stretch; overflow-x:auto; overscroll-behavior-x:contain; }
.ms-home-product { display:flex; min-width:0; }.ms-home-product-link { display:flex; flex:1; flex-direction:column; color:inherit; text-decoration:none; }.ms-home-product-image { display:block; }.ms-home-product-body { display:flex; flex:1; flex-direction:column; }.ms-home-product-name { min-height:2.8em; color:#1e2d22; font-size:1rem; font-weight:800; line-height:1.38; }.ms-home-product-price { display:block; margin-top:auto; font-size:1.24rem; font-weight:900; }.ms-home-product-price del { color:#809082; font-size:.78rem; font-weight:600; }.ms-home-product-price ins { color:#d5422f; text-decoration:none; }.ms-home-product-price.is-sale::before { display:inline-block; padding:3px 7px; margin:0 6px 5px 0; border-radius:999px; background:#e84c3d; color:#fff; content:'Oferta'; font-size:.65rem; font-weight:800; letter-spacing:.03em; vertical-align:middle; }.ms-home-product-action { padding:0 18px 18px; }.ms-home-product-button { width:100%; min-height:38px; background:linear-gradient(135deg,#3d7436,#276234); }
.ms-cart-link { position:relative; min-width:44px; width:44px; height:44px; padding:0; border:1px solid rgba(232,244,216,.46); background:transparent; }.ms-cart-link svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }.ms-cart-count { position:absolute; top:-7px; right:-7px; min-width:19px; height:19px; padding:0 4px; background:#e6c878; color:#17311f; font-size:.68rem; }
@media (max-width:640px) { .ms-home-products-shell { margin-inline:-2px; }.ms-home-products { grid-auto-columns:calc((100vw - 48px) / 2); gap:10px; padding:3px 2px 14px; }.ms-home-product { border-radius:14px; }.ms-home-product-image { aspect-ratio:1 / 1; padding:6px; }.ms-home-product-body { padding:10px; }.ms-home-product-name { min-height:3.55em; font-size:.76rem; line-height:1.2; }.ms-home-product-price { font-size:1rem; line-height:1.2; }.ms-home-product-action { padding:0 10px 10px; }.ms-home-product-button { min-height:33px; padding:5px; font-size:.72rem; }.ms-mobile-search { gap:8px; }.ms-mobile-search .ms-cart-link { display:inline-flex; flex:0 0 40px; min-width:40px; width:40px; height:40px; }.ms-header-actions .ms-cart-link { display:none; } }

/* Loja: neutraliza as larguras percentuais legadas do WooCommerce. */
body.woocommerce-shop .ms-shop ul.products,
body.tax-product_cat .ms-shop ul.products,
body.tax-product_tag .ms-shop ul.products { display:grid !important; grid-template-columns:repeat(4,minmax(0,1fr)) !important; gap:22px !important; }
body.woocommerce-shop .ms-shop ul.products li.product,
body.tax-product_cat .ms-shop ul.products li.product,
body.tax-product_tag .ms-shop ul.products li.product { float:none !important; clear:none !important; width:100% !important; min-width:0 !important; margin:0 !important; }
.ms-shop .woocommerce-result-count { float:left; }.ms-shop .woocommerce-ordering { float:right; }.ms-shop .woocommerce-ordering select { width:auto; min-width:220px; }.ms-shop ul.products { clear:both; }

/* Counter-up da home. */
.home .elementor-widget-counter .elementor-widget-container { height:100%; padding:clamp(18px,3vw,30px); border:1px solid rgba(63,107,53,.16); border-radius:20px; background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(239,247,232,.94)); box-shadow:0 14px 34px rgba(20,55,35,.10); }
.home .elementor-counter { display:grid; gap:8px; place-items:center; text-align:center; }.home .elementor-counter-number-wrapper { color:#2e713d; font-size:clamp(2rem,4vw,3.5rem); font-weight:900; line-height:1; letter-spacing:-.04em; }.home .elementor-counter-title { color:#4d6251; font-size:.78rem; font-weight:800; letter-spacing:.08em; line-height:1.35; text-transform:uppercase; }

/* Minha Conta / login WooCommerce. */
body.woocommerce-account .ms-shop { max-width:1040px; }.woocommerce-account .woocommerce { padding:clamp(20px,4vw,46px); border:1px solid rgba(63,107,53,.17); border-radius:24px; background:#fff; box-shadow:0 22px 55px rgba(20,55,35,.11); }.woocommerce-account .woocommerce h2 { margin-top:0; color:#173e29; font-size:clamp(1.55rem,3vw,2.2rem); }.woocommerce-account .woocommerce form.login,.woocommerce-account .woocommerce form.register { padding:0; border:0; }.woocommerce-account .woocommerce form .form-row input.input-text { min-height:50px; padding:10px 14px; border:1px solid #bfd0b8; border-radius:12px; }.woocommerce-account .woocommerce button.button { min-height:48px; padding:10px 24px; border-radius:12px; background:linear-gradient(135deg,#4f813e,#276234) !important; color:#fff !important; }.woocommerce-account .woocommerce-LostPassword a { font-weight:700; }

@media (max-width:960px) { body.woocommerce-shop .ms-shop ul.products,body.tax-product_cat .ms-shop ul.products,body.tax-product_tag .ms-shop ul.products { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:12px !important; } }
@media (max-width:640px) { .ms-shop .woocommerce-result-count,.ms-shop .woocommerce-ordering { float:none; width:100%; }.ms-shop .woocommerce-ordering select { width:100%; min-width:0; }.home .elementor-widget-counter .elementor-widget-container { padding:15px 9px; border-radius:15px; }.home .elementor-counter-number-wrapper { font-size:1.7rem; }.home .elementor-counter-title { font-size:.62rem; letter-spacing:.035em; }.woocommerce-account .woocommerce { padding:20px 15px; border-radius:16px; } }

/* 0.7.1 — consolidação de cards, contraste e vitrines WooCommerce. */
.ms-entry-content { color:var(--ms-text); }.ms-entry-content h1,.ms-entry-content h2,.ms-entry-content h3,.ms-entry-content h4,.ms-entry-content h5,.ms-entry-content h6 { color:#173e29; }.ms-entry-content p,.ms-entry-content label,.woocommerce form .form-row label,.woocommerce-account .woocommerce p { color:#435449; }
.woocommerce-account .woocommerce form .form-row label { color:#34483a !important; font-weight:700; }.woocommerce-account .woocommerce form .form-row input::placeholder { color:#77837a; opacity:1; }.woocommerce-account .woocommerce .woocommerce-privacy-policy-text,.woocommerce-account .woocommerce .woocommerce-privacy-policy-text p { color:#5d6b61 !important; }

.ms-home-products { grid-template-rows:repeat(2,410px) !important; grid-auto-columns:235px !important; align-content:start; align-items:stretch; }.ms-home-product { height:410px; min-height:0; flex:none; }.ms-home-product-link { min-height:0; overflow:hidden; }.ms-home-product-image { height:205px; flex:0 0 205px; aspect-ratio:auto; }.ms-home-product-image img { width:100%; height:100%; object-fit:contain; }.ms-home-product-body { min-height:0; padding:14px 15px 10px; }.ms-home-product-name { display:-webkit-box; min-height:0; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:4; font-size:.9rem; line-height:1.3; }.ms-home-product-price { padding-top:8px; font-size:1.14rem; }.ms-home-product-action { padding:0 15px 14px; }

.single-product .ms-shop .up-sells { grid-column:1 / -1; width:100%; padding:clamp(20px,3vw,34px); border:1px solid var(--ms-border); border-radius:22px; background:#fff; }.single-product .ms-shop .up-sells ul.products { display:grid !important; grid-template-columns:repeat(4,minmax(0,1fr)) !important; gap:18px !important; width:100% !important; }.single-product .ms-shop .up-sells ul.products li.product { display:block !important; float:none !important; width:100% !important; min-width:0 !important; margin:0 !important; grid-template-columns:none !important; }.single-product .ms-shop .up-sells .ms-product-card-image { width:100% !important; height:auto !important; aspect-ratio:1 / 1 !important; }.single-product .ms-shop .up-sells .ms-product-card-image img { width:100% !important; height:100% !important; object-fit:contain !important; }.single-product .ms-shop .up-sells .ms-product-card-content { display:block !important; padding:12px 2px 2px; }.single-product .ms-shop .up-sells .woocommerce-loop-product__title { display:-webkit-box; min-height:3.9em; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:3; }.single-product .ms-shop .up-sells .button,.ms-shop .ms-product-buy { display:flex !important; align-items:center; justify-content:center; width:100% !important; min-height:42px; border-radius:999px !important; background:linear-gradient(135deg,#447d3b,#286636) !important; color:#fff !important; font-weight:800; }

body.woocommerce-shop .ms-shop ul.products li.product .button,body.tax-product_cat .ms-shop ul.products li.product .button,body.tax-product_tag .ms-shop ul.products li.product .button { background:linear-gradient(135deg,#447d3b,#286636) !important; color:#fff !important; border-color:transparent !important; }

@media (max-width:640px) { .ms-home-products { grid-template-rows:repeat(2,300px) !important; grid-auto-columns:calc((100vw - 46px)/2) !important; gap:10px; }.ms-home-product { height:300px; }.ms-home-product-image { height:142px; flex-basis:142px; }.ms-home-product-body { padding:9px 10px 5px; }.ms-home-product-name { -webkit-line-clamp:3; font-size:.72rem; line-height:1.22; }.ms-home-product-price { padding-top:5px; font-size:.94rem; }.ms-home-product-action { padding:0 10px 9px; }.ms-home-product-button { min-height:32px; font-size:.68rem; }.single-product .ms-shop .up-sells { padding:15px 10px; border-radius:16px; }.single-product .ms-shop .up-sells ul.products { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:10px !important; }.single-product .ms-shop .up-sells .woocommerce-loop-product__title { min-height:3.6em; font-size:.76rem !important; }.home .elementor-section:has(.elementor-widget-counter) .elementor-container,.home .e-con:has(.elementor-widget-counter) { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:9px !important; }.home .elementor-widget-counter { width:100% !important; margin:0 !important; }.home .elementor-widget-counter .elementor-widget-container { min-height:92px; padding:11px 6px; }.home .elementor-counter-number-wrapper { font-size:1.4rem; }.home .elementor-counter-title { font-size:.56rem; line-height:1.2; } }

/* Counter Elementor: os quatro widgets são irmãos indiretos dentro do e-con-inner. */
@media (max-width:640px) { .home .e-con-inner:has(> .e-con .elementor-widget-counter) { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:10px !important; width:100% !important; }.home .e-con-inner:has(> .e-con .elementor-widget-counter) > .e-con { display:block !important; width:100% !important; min-width:0 !important; padding:0 !important; margin:0 !important; }.home .e-con-inner:has(> .e-con .elementor-widget-counter) .elementor-widget-counter { width:100% !important; max-width:none !important; }.home .e-con-inner:has(> .e-con .elementor-widget-counter) .elementor-widget-container { display:grid; min-height:88px; place-items:center; padding:9px 5px; }.home .elementor-counter { gap:4px; }.home .elementor-counter-number-wrapper { font-size:1.32rem !important; line-height:1 !important; }.home .elementor-counter-title { max-width:125px; font-size:.54rem !important; line-height:1.18 !important; overflow-wrap:anywhere; } }

/* Impede que regras antigas façam o título invadir a imagem no carrossel. */
.ms-home-product-link,.ms-home-product-image,.ms-home-product-body,.ms-home-product-action { position:relative; }.ms-home-product-image { z-index:1; overflow:hidden; }.ms-home-product-body { z-index:2; background:#fff; }.ms-home-product-action { z-index:3; background:#fff; }

/* 0.8.0 — sistema visual consolidado para home, Loja e compra. */
.home .e-con.e-parent:has(.elementor-widget-counter) { display:flex !important; grid-template-columns:none !important; width:100% !important; }.home .e-con.e-parent:has(.elementor-widget-counter) > .e-con-inner { width:min(100%,var(--ms-container)) !important; max-width:var(--ms-container) !important; }
.ms-home-product,.ms-shop ul.products li.product { display:flex !important; flex-direction:column !important; height:100%; }.ms-home-product-link,.ms-product-card-content { display:flex !important; flex:1; flex-direction:column; min-height:0; }.ms-home-product-image,.ms-product-card-image { flex:0 0 auto; }.ms-home-product-name,.ms-product-card-content .woocommerce-loop-product__title { display:-webkit-box; min-height:3.75em; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:3; }.ms-home-product-price,.ms-product-card-content .price { margin-top:auto !important; }.ms-home-product-action,.ms-product-card-content .button { flex:0 0 auto; }

/* Botões WooCommerce sempre na identidade Rede Verde. */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt,.woocommerce #respond input#submit.alt,.woocommerce .checkout-button,.woocommerce #place_order,.wc-block-components-button { border:0 !important; border-radius:12px !important; background:linear-gradient(135deg,#447d3b,#286636) !important; color:#fff !important; box-shadow:none !important; font-weight:800 !important; }.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,.woocommerce .checkout-button:hover,.woocommerce #place_order:hover { background:linear-gradient(135deg,#386c31,#1f572d) !important; color:#fff !important; }

/* Paginação da Loja. */
.woocommerce nav.woocommerce-pagination { margin:38px 0 0; }.woocommerce nav.woocommerce-pagination ul { display:flex; justify-content:center; gap:8px; border:0; }.woocommerce nav.woocommerce-pagination ul li { border:0; }.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span { display:grid; min-width:42px; height:42px; place-items:center; padding:0 12px; border:1px solid #c9d9c3; border-radius:11px; background:#fff; color:#315c38; font-weight:800; }.woocommerce nav.woocommerce-pagination ul li span.current,.woocommerce nav.woocommerce-pagination ul li a:hover { border-color:#356e3d; background:#356e3d; color:#fff; }

/* Blocos de entrega, garantia, atendimento e pagamento. */
.home .elementor-widget-icon-box .elementor-widget-container { height:100%; padding:22px; border:1px solid rgba(63,107,53,.16); border-radius:18px; background:#fff; box-shadow:0 12px 28px rgba(20,55,35,.08); }.home .elementor-icon-box-wrapper { align-items:center !important; gap:14px; }.home .elementor-icon-box-icon { margin:0 !important; }.home .elementor-icon-box-icon .elementor-icon { display:grid; width:54px; height:54px; place-items:center; border-radius:16px; background:linear-gradient(145deg,#eaf5df,#d5e9c8); color:#2d713d; }.home .elementor-icon-box-icon i { display:block; width:27px; height:27px; background:currentColor; font-size:0; mask-position:center; mask-repeat:no-repeat; mask-size:contain; }.home .tb-icon-rocket { mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M14 5c3-3 6-2 6-2s1 3-2 6l-5 5-4-4 5-5Zm-6 7-3 1-2 4 5-1m4 0-1 5 4-2 1-3M9 10l5 5' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E"); }.home .tb-icon-usd { mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3v18m4-14H9a3 3 0 0 0 0 6h6a3 3 0 0 1 0 6H7' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E"); }.home .tb-icon-service { mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 13v-2a8 8 0 0 1 16 0v2M4 13H2v5h4v-5H4Zm16 0h2v5h-4v-5h2Zm0 5c0 2-2 3-5 3' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E"); }.home .tb-icon-card-pay-line { mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 6h18v12H3V6Zm0 4h18M7 15h4' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E"); }.home .elementor-icon-box-title { margin:0 0 4px; color:#1e452b; font-size:1rem; }.home .elementor-icon-box-description { color:#5b6c5e; font-size:.86rem; line-height:1.45; }

/* Parcelamento do produto. */
.ms-installment-options { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; margin-top:10px; }.ms-installment-options span { padding:7px 8px; border:1px solid #d3e4cb; border-radius:9px; background:#fff; color:#37583d; font-size:.78rem; }.ms-installment-options b { color:#235e32; }.ms-installments small { color:#647267; font-size:.72rem; line-height:1.35; }

/* Abas de produto em uma linha rolável no mobile. */
.single-product .woocommerce-tabs ul.tabs { display:flex; gap:7px; padding:0 !important; overflow-x:auto; scrollbar-width:thin; }.single-product .woocommerce-tabs ul.tabs::before { display:none !important; }.single-product .woocommerce-tabs ul.tabs li { flex:0 0 auto; margin:0 !important; padding:0 !important; border:1px solid #cad9c5 !important; border-radius:10px !important; background:#f3f7ef !important; }.single-product .woocommerce-tabs ul.tabs li::before,.single-product .woocommerce-tabs ul.tabs li::after { display:none !important; }.single-product .woocommerce-tabs ul.tabs li a { display:block; padding:10px 14px !important; color:#405344 !important; white-space:nowrap; }.single-product .woocommerce-tabs ul.tabs li.active { border-color:#397243 !important; background:#397243 !important; }.single-product .woocommerce-tabs ul.tabs li.active a { color:#fff !important; }

/* Carrinho com formulário e resumo próximos; recomendações sempre abaixo. */
body.woocommerce-cart .ms-shop > .woocommerce { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr); gap:24px; align-items:start; }.woocommerce-cart .woocommerce-notices-wrapper,.woocommerce-cart .woocommerce-message,.woocommerce-cart .woocommerce-error,.woocommerce-cart .woocommerce-info { grid-column:1 / -1; }.woocommerce-cart .woocommerce-cart-form { grid-column:1; margin:0; padding:18px; }.woocommerce-cart .cart-collaterals { grid-column:2; width:100%; margin:0; padding:20px; position:sticky; top:105px; }.woocommerce-cart .cart-collaterals .cart_totals { float:none !important; width:100% !important; }.woocommerce-cart .cart-collaterals h2 { margin:0 0 16px; color:#193e28; }.woocommerce-cart .shop_table { border:0 !important; border-collapse:separate !important; border-spacing:0 10px !important; }.woocommerce-cart .shop_table th { color:#56665a; font-size:.75rem; text-transform:uppercase; }.woocommerce-cart .shop_table td { border:0 !important; background:#f7faf4; }.woocommerce-cart .shop_table td:first-child { border-radius:12px 0 0 12px; }.woocommerce-cart .shop_table td:last-child { border-radius:0 12px 12px 0; }.woocommerce-cart .product-thumbnail img { width:74px !important; height:74px !important; object-fit:contain; border-radius:10px; background:#fff; }.woocommerce-cart .product-name a { color:#234b30; font-weight:800; text-decoration:none; }.woocommerce-cart .cart_totals .order-total th,.woocommerce-cart .cart_totals .order-total td { color:#1f5c30; font-size:1.2rem; }.woocommerce-cart .wc-proceed-to-checkout a { width:100%; min-height:52px; }.woocommerce-cart .cross-sells { grid-column:1 / -1; width:100%; margin-top:12px; padding:24px; border:1px solid var(--ms-border); border-radius:20px; background:#fff; }.woocommerce-cart .cross-sells ul.products { grid-template-columns:repeat(4,minmax(0,1fr)) !important; }

/* JoinChat fora da navegação inferior. */
.joinchat { --s:54px !important; }.joinchat__button { width:var(--s) !important; height:var(--s) !important; }

@media (max-width:768px) { body.woocommerce-cart .ms-shop > .woocommerce { grid-template-columns:1fr; gap:16px; }.woocommerce-cart .woocommerce-cart-form,.woocommerce-cart .cart-collaterals,.woocommerce-cart .cross-sells { grid-column:1; }.woocommerce-cart .cart-collaterals { position:static; }.woocommerce-cart .cross-sells ul.products { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }.woocommerce-cart .woocommerce-cart-form { padding:10px; overflow-x:auto; }.ms-installment-options { grid-template-columns:repeat(2,minmax(0,1fr)); }.single-product .woocommerce-tabs { padding:14px 10px !important; }.joinchat { --s:46px !important; --bottom:78px !important; }.home .elementor-widget-icon-box .elementor-widget-container { padding:15px; }.home .elementor-icon-box-icon .elementor-icon { width:46px; height:46px; }.home .elementor-icon-box-icon i { width:23px; height:23px; } }

/* 0.8.1 — carrinho mobile e checkout orientado à conversão. */
.woocommerce-checkout .woocommerce-form-coupon-toggle,.woocommerce-checkout form.checkout_coupon { display:none !important; }.woocommerce-checkout .woocommerce-form-login-toggle { margin:0 0 18px; }.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info { position:relative; padding:22px 22px 22px 68px !important; border:1px solid #bdd6b5 !important; border-top:1px solid #bdd6b5 !important; border-radius:18px; background:linear-gradient(135deg,#f7fbf3,#eaf5e3); color:#35533b; box-shadow:0 12px 28px rgba(20,55,35,.08); font-size:1rem; }.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info::before { position:absolute; left:19px; top:50%; display:grid; width:34px; height:34px; place-items:center; border-radius:50%; background:#387443; color:#fff; content:'↪'; font-size:1.15rem; transform:translateY(-50%); }.woocommerce-checkout .woocommerce-form-login-toggle a { color:#286636; font-weight:900; }.woocommerce-checkout form.login { margin:0 0 22px !important; padding:22px !important; border:1px solid #cfdec9 !important; border-radius:16px !important; background:#fff; box-shadow:0 10px 25px rgba(20,55,35,.07); }

.ms-checkout-coupon-row td { padding:15px 0 5px !important; border:0 !important; }.ms-checkout-coupon { padding:14px; border:1px solid #ccddc5; border-radius:13px; background:#f7faf4; text-align:left; }.ms-checkout-coupon label { display:block; margin-bottom:8px; color:#274b31; font-size:.84rem; font-weight:800; }.ms-checkout-coupon > div { display:grid; grid-template-columns:1fr auto; gap:8px; }.ms-checkout-coupon input { min-width:0; min-height:42px; padding:8px 11px; border:1px solid #b9ceb1; border-radius:9px; background:#fff; }.ms-checkout-coupon button { min-height:42px; padding:7px 15px !important; }.ms-checkout-coupon [data-ms-coupon-feedback] { display:block; margin-top:6px; color:#4c6351; font-size:.76rem; }.ms-checkout-coupon [data-ms-coupon-feedback] .woocommerce-error,.ms-checkout-coupon [data-ms-coupon-feedback] .woocommerce-message { margin:7px 0 0 !important; padding:8px 10px !important; font-size:.75rem; }

.woocommerce-checkout #order_review { padding:clamp(16px,3vw,26px); border:1px solid #d2e0cd; border-radius:20px; background:#fff; box-shadow:0 16px 38px rgba(20,55,35,.09); }.woocommerce-checkout #payment { border-radius:16px !important; background:#f6f9f3 !important; }.woocommerce-checkout #payment ul.payment_methods { display:flex; flex-direction:column; gap:10px; padding:16px !important; }.woocommerce-checkout #payment li.wc_payment_method { padding:15px; border:1px solid #d2dfce; border-radius:14px; background:#fff; }.woocommerce-checkout #payment li.payment_method_woo-mercado-pago-pix { order:-20; border:2px solid #38a768; background:linear-gradient(135deg,#f2fff7,#e5f8eb); box-shadow:0 10px 25px rgba(31,145,79,.12); }.woocommerce-checkout #payment li.payment_method_woo-mercado-pago-pix > label { color:#176a37; font-size:1.08rem; font-weight:900; }.woocommerce-checkout #payment li.payment_method_woo-mercado-pago-pix > label::after { display:inline-block; padding:3px 8px; margin-left:8px; border-radius:999px; background:#28a85b; color:#fff; content:'Recomendado'; font-size:.64rem; font-weight:800; vertical-align:middle; }.woocommerce-checkout #payment div.payment_box { border-radius:11px; background:#f5f8f2; color:#455648; }.woocommerce-checkout #payment div.payment_box::before { border-bottom-color:#f5f8f2; }

@media (max-width:768px) { .woocommerce-cart .shop_table_responsive thead { display:none !important; }.woocommerce-cart .shop_table_responsive tbody,.woocommerce-cart .shop_table_responsive tr.cart_item { display:block !important; }.woocommerce-cart .shop_table_responsive tr.cart_item { position:relative; min-height:146px; padding:12px 12px 12px 112px; margin-bottom:12px; border:1px solid #d6e2d1; border-radius:16px; background:#fff; box-shadow:0 9px 24px rgba(20,55,35,.08); }.woocommerce-cart .shop_table_responsive tr.cart_item td { display:block !important; width:auto !important; padding:3px 0 !important; border:0 !important; background:transparent !important; text-align:left !important; }.woocommerce-cart .shop_table_responsive tr.cart_item td::before { display:none !important; }.woocommerce-cart .shop_table_responsive tr.cart_item td.product-thumbnail { position:absolute; top:12px; left:12px; display:block !important; width:86px !important; height:106px; padding:5px !important; border-radius:12px !important; background:#f3f7ef !important; }.woocommerce-cart .shop_table_responsive tr.cart_item td.product-thumbnail a,.woocommerce-cart .shop_table_responsive tr.cart_item td.product-thumbnail img { display:block !important; width:100% !important; height:100% !important; object-fit:contain !important; }.woocommerce-cart .shop_table_responsive tr.cart_item td.product-remove { position:absolute; right:9px; top:7px; z-index:2; }.woocommerce-cart .shop_table_responsive tr.cart_item td.product-remove a { display:grid; width:28px; height:28px; place-items:center; border-radius:50%; color:#6c776e !important; font-size:1.2rem; }.woocommerce-cart .shop_table_responsive tr.cart_item td.product-name { padding-right:30px !important; }.woocommerce-cart .shop_table_responsive tr.cart_item td.product-name a { display:-webkit-box; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:3; font-size:.88rem; line-height:1.3; }.woocommerce-cart .shop_table_responsive tr.cart_item td.product-price { display:none !important; }.woocommerce-cart .shop_table_responsive tr.cart_item td.product-quantity { margin-top:9px; }.woocommerce-cart .shop_table_responsive tr.cart_item td.product-quantity .quantity { display:inline-flex; }.woocommerce-cart .shop_table_responsive tr.cart_item td.product-quantity input.qty { width:68px; height:38px; border:1px solid #bfd1b8; border-radius:9px; }.woocommerce-cart .shop_table_responsive tr.cart_item td.product-subtotal { margin-top:8px; color:#245e31; font-size:1.08rem; font-weight:900; }.woocommerce-cart .shop_table_responsive tr.cart_item td.product-subtotal::before { display:inline !important; float:none !important; margin-right:5px; content:'Subtotal: '; color:#667268; font-size:.72rem; font-weight:600; }.woocommerce-cart .shop_table_responsive tr:not(.cart_item) td.actions { padding:12px 0 0 !important; background:transparent !important; }.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info { padding:18px 16px 18px 58px !important; border-radius:14px; font-size:.88rem; }.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info::before { left:14px; }.woocommerce-checkout #order_review { padding:12px; border-radius:16px; }.woocommerce-checkout #payment ul.payment_methods { padding:10px !important; }.woocommerce-checkout #payment li.wc_payment_method { padding:12px; }.ms-checkout-coupon > div { grid-template-columns:1fr 82px; } }

/* 0.8.2 — alinhamento rigoroso dos cards e página real do Blog. */
.woocommerce-cart .cross-sells ul.products { align-items:stretch; }.woocommerce-cart .cross-sells ul.products li.product { display:flex !important; flex-direction:column !important; width:100% !important; height:100%; margin:0 !important; }.woocommerce-cart .cross-sells .ms-product-card-image { flex:0 0 auto; }.woocommerce-cart .cross-sells .ms-product-card-content { display:flex !important; flex:1; flex-direction:column; min-height:190px; }.woocommerce-cart .cross-sells .woocommerce-loop-product__title { display:-webkit-box; min-height:4.1em; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:3; }.woocommerce-cart .cross-sells .price { margin-top:auto !important; }.woocommerce-cart .cross-sells .button { flex:0 0 auto; margin-top:12px !important; }

.home .elementor-widget-icon-box { height:100% !important; }.home .elementor-widget-icon-box .elementor-widget-container { min-height:174px; }.home .elementor-icon-box-wrapper { display:grid !important; grid-template-columns:56px minmax(0,1fr); height:100%; }.home .elementor-icon-box-content { min-width:0; }.home .elementor-icon-box-title { min-height:2.7em; display:flex; align-items:flex-end; }.home .elementor-icon-box-description { margin:0; }

.ms-blog-landing { padding-block:clamp(38px,6vw,82px); }.ms-blog-landing > header { max-width:760px; margin-bottom:30px; }.ms-blog-landing > header h1 { margin:7px 0 10px; color:#173e29; font-size:clamp(2.2rem,5vw,4rem); line-height:1.05; }.ms-blog-landing > header p { margin:0; color:#58695c; font-size:1.05rem; }.ms-blog-landing .ms-home-posts { margin-top:0; }.ms-blog-landing .ms-home-post { display:flex; flex-direction:column; height:100%; }.ms-blog-landing .ms-home-post-body { display:flex; flex:1; flex-direction:column; }.ms-blog-landing .ms-home-post-body > a:last-child { margin-top:auto; }
@media (max-width:768px) { .woocommerce-cart .cross-sells .ms-product-card-content { min-height:150px; }.home .elementor-widget-icon-box .elementor-widget-container { min-height:145px; }.home .elementor-icon-box-wrapper { grid-template-columns:46px minmax(0,1fr); gap:10px !important; }.home .elementor-icon-box-title { min-height:2.5em; font-size:.88rem; }.home .elementor-icon-box-description { font-size:.76rem; }.ms-blog-landing { padding-block:34px; }.ms-blog-landing .ms-home-posts { grid-template-columns:repeat(2,minmax(0,1fr)); } }

/* 0.8.3 — contadores uniformes e recomendações do carrinho isoladas. */
.home .e-con-inner:has(> .e-con .elementor-widget-counter) {
	display:grid !important;
	grid-template-columns:repeat(4,minmax(0,1fr)) !important;
	align-items:stretch !important;
	gap:20px !important;
}
.home .e-con-inner:has(> .e-con .elementor-widget-counter) > .e-con,
.home .e-con-inner:has(> .e-con .elementor-widget-counter) .elementor-widget-counter,
.home .e-con-inner:has(> .e-con .elementor-widget-counter) .elementor-widget-container,
.home .e-con-inner:has(> .e-con .elementor-widget-counter) .elementor-counter {
	height:100% !important;
}
.home .e-con-inner:has(> .e-con .elementor-widget-counter) > .e-con {
	width:100% !important;
	min-width:0 !important;
}
.home .e-con-inner:has(> .e-con .elementor-widget-counter) .elementor-widget-container {
	display:grid !important;
	min-height:186px !important;
	place-items:center !important;
}
.home .elementor-counter-title {
	display:flex;
	min-height:2.8em;
	align-items:center;
	justify-content:center;
}

body.woocommerce-cart .cart-collaterals {
	position:relative !important;
	top:auto !important;
	z-index:1;
}
body.woocommerce-cart .cross-sells {
	position:relative !important;
	z-index:0;
	clear:both !important;
	float:none !important;
	overflow:hidden;
}
body.woocommerce-cart .cross-sells ul.products {
	display:grid !important;
	grid-template-columns:repeat(4,minmax(0,1fr)) !important;
	gap:18px !important;
	width:100% !important;
	margin:0 !important;
	padding:0 !important;
}
body.woocommerce-cart .cross-sells ul.products::before,
body.woocommerce-cart .cross-sells ul.products::after {
	display:none !important;
}
body.woocommerce-cart .cross-sells ul.products li.product.ms-product-card {
	display:flex !important;
	float:none !important;
	flex-direction:column !important;
	width:100% !important;
	min-width:0 !important;
	max-width:none !important;
	height:auto !important;
	min-height:390px;
	margin:0 !important;
	overflow:hidden;
}
body.woocommerce-cart .cross-sells .ms-product-card-image {
	display:block;
	flex:0 0 210px !important;
	height:210px !important;
	min-height:0 !important;
	overflow:hidden;
}
body.woocommerce-cart .cross-sells .ms-product-card-image img {
	display:block !important;
	width:100% !important;
	height:100% !important;
	margin:0 !important;
	object-fit:contain !important;
}
body.woocommerce-cart .cross-sells .ms-product-card-content {
	display:flex !important;
	flex:1 1 auto !important;
	flex-direction:column !important;
	min-height:0 !important;
	padding:14px !important;
}
body.woocommerce-cart .cross-sells .woocommerce-loop-product__title {
	min-height:3.9em !important;
	margin:0 0 8px !important;
	font-size:.9rem !important;
	line-height:1.3 !important;
}
body.woocommerce-cart .cross-sells .price {
	margin:auto 0 10px !important;
}
body.woocommerce-cart .cross-sells .button {
	width:100% !important;
	margin:0 !important;
}

@media (max-width:768px) {
	.home .e-con-inner:has(> .e-con .elementor-widget-counter) {
		grid-template-columns:repeat(2,minmax(0,1fr)) !important;
		gap:10px !important;
	}
	.home .e-con-inner:has(> .e-con .elementor-widget-counter) .elementor-widget-container {
		min-height:102px !important;
	}
	body.woocommerce-cart .cross-sells {
		padding:16px 10px !important;
	}
	body.woocommerce-cart .cross-sells ul.products {
		grid-template-columns:repeat(2,minmax(0,1fr)) !important;
		gap:10px !important;
	}
	body.woocommerce-cart .cross-sells ul.products li.product.ms-product-card {
		min-height:300px;
	}
	body.woocommerce-cart .cross-sells .ms-product-card-image {
		flex-basis:145px !important;
		height:145px !important;
	}
	body.woocommerce-cart .cross-sells .ms-product-card-content {
		padding:10px !important;
	}
	body.woocommerce-cart .cross-sells .woocommerce-loop-product__title {
		min-height:3.6em !important;
		font-size:.72rem !important;
	}
	body.woocommerce-cart .cross-sells .price {
		font-size:.92rem !important;
	}
	body.woocommerce-cart .cross-sells .button {
		min-height:34px !important;
		padding:8px 5px !important;
		font-size:.7rem !important;
	}
}

/* 0.9.5 — impede o Safari mobile de justificar títulos e valores dos cards. */
@media (max-width:768px) {
	.ms-home-product-name,
	.ms-home-product-name *,
	.ms-product-card-content .woocommerce-loop-product__title,
	.ms-product-card-content .woocommerce-loop-product__title *,
	.woocommerce ul.products li.product .woocommerce-loop-product__title,
	.woocommerce ul.products li.product .woocommerce-loop-product__title * {
		text-align:left !important;
		text-align-last:left !important;
		letter-spacing:0 !important;
		word-spacing:0 !important;
	}

	.woocommerce .price,
	.ms-home-product-price,
	.ms-product-card .price {
		justify-content:flex-start !important;
		text-align:left !important;
		text-align-last:left !important;
	}

	.woocommerce .price *,
	.ms-home-product-price *,
	.ms-product-card .price *,
	.woocommerce-Price-amount,
	.woocommerce-Price-amount bdi,
	.woocommerce-Price-currencySymbol {
		width:auto !important;
		min-width:0 !important;
		flex:0 0 auto !important;
		text-align:left !important;
		text-align-last:left !important;
		letter-spacing:-.025em !important;
		word-spacing:0 !important;
	}
}

/* Parcelamento 0.9.7 — regras finais após os estilos legados. */
.ms-installments {
	position:relative;
	display:grid;
	gap:12px;
	padding:17px 18px 15px 20px;
	overflow:hidden;
	border:1px solid #d7e4d1;
	border-radius:14px;
	background:linear-gradient(135deg,#fbfdf9,#f2f7ee);
	box-shadow:none;
}
.ms-installments::before { position:absolute; top:0; bottom:0; left:0; width:4px; background:linear-gradient(180deg,#4f873f,#2d6c39); content:""; }
.ms-installments-title { display:flex; gap:9px; align-items:center; color:#1f582f; font-size:.95rem; }
.ms-installments-title::before { display:block; width:22px; height:22px; flex:0 0 22px; background:#357540; content:""; -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='2.5' y='5' width='19' height='14' rx='2' fill='none' stroke='black' stroke-width='1.8'/%3E%3Cpath d='M3 9h18M6 15h5' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E") center/contain no-repeat; mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='2.5' y='5' width='19' height='14' rx='2' fill='none' stroke='black' stroke-width='1.8'/%3E%3Cpath d='M3 9h18M6 15h5' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E") center/contain no-repeat; }
.ms-installment-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 20px; margin:0; border-top:1px solid #dbe6d6; }
.ms-installment-options > span { display:flex; gap:7px; align-items:baseline; min-width:0; padding:9px 2px; border:0; border-bottom:1px solid #dbe6d6; border-radius:0; background:transparent; color:#526657; font-size:.82rem; }
.ms-installment-options > span > b { min-width:24px; color:#246134; font-size:.8rem; }
.ms-installment-options .woocommerce-Price-amount,
.ms-installment-options .woocommerce-Price-amount bdi,
.ms-installment-options .woocommerce-Price-currencySymbol { display:inline !important; width:auto !important; min-width:0 !important; padding:0 !important; border:0 !important; border-radius:0 !important; background:transparent !important; color:#264e31 !important; font-size:inherit !important; font-weight:800; box-shadow:none !important; }
.ms-installments-disclaimer { color:#68766b; font-size:.69rem; line-height:1.4; }
.ms-installments-note { color:#46604c !important; font-size:.75rem !important; }
@media (max-width:480px) {
	.ms-installments { gap:10px; padding:15px 14px 14px 17px; }
	.ms-installment-options { grid-template-columns:1fr; }
	.ms-installment-options > span { padding:8px 2px; }
}

/* 0.9.2 — formulário de contato RedeVerde. */
.wpcf7:has(.ms-contact-form) {
	width:100%;
	max-width:920px;
	margin-inline:auto;
}
.ms-contact-form {
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	gap:20px 22px;
	padding:clamp(22px,4vw,42px);
	border:1px solid #d2e0cc;
	border-radius:24px;
	background:radial-gradient(circle at 100% 0,rgba(183,211,139,.22),transparent 30%),rgba(255,255,255,.97);
	box-shadow:0 20px 50px rgba(25,67,39,.11);
}
.ms-contact-form p {
	min-width:0;
	margin:0;
}
.ms-contact-form p:nth-of-type(n+5) {
	grid-column:1 / -1;
}
.ms-contact-form label {
	display:block;
	color:#23472e;
	font-size:.84rem;
	font-weight:800;
	letter-spacing:.015em;
}
.ms-contact-form .wpcf7-form-control-wrap {
	display:block;
	margin-top:7px;
}
.ms-contact-form input:not([type="submit"]),
.ms-contact-form textarea,
.ms-contact-form select {
	display:block;
	width:100%;
	min-height:50px;
	padding:12px 14px;
	border:1px solid #bdcfb7;
	border-radius:12px;
	outline:0;
	background:#fbfdf9;
	color:#23382a;
	box-shadow:inset 0 1px 2px rgba(25,60,35,.035);
	transition:border-color 160ms ease,box-shadow 160ms ease,background 160ms ease;
}
.ms-contact-form textarea {
	min-height:150px;
	resize:vertical;
}
.ms-contact-form input::placeholder,
.ms-contact-form textarea::placeholder {
	color:#869188;
	opacity:1;
}
.ms-contact-form input:not([type="submit"]):focus,
.ms-contact-form textarea:focus,
.ms-contact-form select:focus {
	border-color:#43804b;
	background:#fff;
	box-shadow:0 0 0 4px rgba(67,128,75,.13);
}
.ms-contact-form .wpcf7-submit {
	display:inline-flex;
	min-width:210px;
	min-height:52px;
	align-items:center;
	justify-content:center;
	padding:11px 25px;
	border:0;
	border-radius:999px;
	background:linear-gradient(135deg,#438044,#286738);
	color:#fff;
	box-shadow:0 11px 24px rgba(40,103,56,.22);
	font-weight:850;
	cursor:pointer;
	transition:transform 160ms ease,box-shadow 160ms ease,filter 160ms ease;
}
.ms-contact-form .wpcf7-submit:hover {
	filter:brightness(.96);
	box-shadow:0 14px 28px rgba(40,103,56,.28);
	transform:translateY(-1px);
}
.ms-contact-form .wpcf7-submit:disabled {
	cursor:wait;
	opacity:.7;
}
.ms-contact-form .wpcf7-not-valid {
	border-color:#b9493f !important;
	box-shadow:0 0 0 3px rgba(185,73,63,.10) !important;
}
.ms-contact-form .wpcf7-not-valid-tip {
	margin-top:5px;
	color:#a03d35;
	font-size:.72rem;
	font-weight:700;
}
.wpcf7:has(.ms-contact-form) .wpcf7-response-output {
	padding:13px 15px !important;
	margin:16px 0 0 !important;
	border:1px solid #94b88c !important;
	border-radius:12px;
	background:#edf7e9;
	color:#255b32;
	font-size:.88rem;
	font-weight:700;
}
.wpcf7:has(.ms-contact-form).invalid .wpcf7-response-output,
.wpcf7:has(.ms-contact-form).failed .wpcf7-response-output {
	border-color:#d8a19b !important;
	background:#fff1ef;
	color:#873a33;
}
.ms-contact-form .wpcf7-spinner {
	vertical-align:middle;
}
@media (max-width:640px) {
	.ms-contact-form {
		grid-template-columns:1fr;
		gap:15px;
		padding:18px 14px;
		border-radius:17px;
	}
	.ms-contact-form p,
	.ms-contact-form p:nth-of-type(n+5) {
		grid-column:1;
	}
	.ms-contact-form label {
		font-size:.8rem;
	}
	.ms-contact-form input:not([type="submit"]),
	.ms-contact-form textarea,
	.ms-contact-form select {
		min-height:48px;
		padding:11px 12px;
		font-size:16px !important;
	}
	.ms-contact-form textarea {
		min-height:125px;
	}
	.ms-contact-form .wpcf7-submit {
		width:100%;
		min-width:0;
	}
}

/* 0.9.3 — tipografia e preços consistentes entre navegadores mobile. */
.woocommerce .price,
.ms-home-product-price,
.ms-product-card .price,
.woocommerce div.product p.price,
.woocommerce div.product span.price,
.woocommerce-cart .product-price,
.woocommerce-cart .product-subtotal,
.woocommerce-checkout-review-order-table .amount {
	font-variant-numeric:tabular-nums lining-nums;
	font-feature-settings:"tnum" 1,"lnum" 1;
	letter-spacing:-.025em;
	word-spacing:0;
}
.woocommerce .price,
.ms-home-product-price,
.ms-product-card .price {
	display:flex !important;
	flex-wrap:wrap;
	gap:3px 7px;
	align-items:baseline;
	color:#2d703a !important;
	font-size:1.08rem !important;
	font-weight:900 !important;
	line-height:1.15 !important;
}
.woocommerce .price .woocommerce-Price-amount,
.ms-home-product-price .woocommerce-Price-amount,
.ms-product-card .price .woocommerce-Price-amount,
.woocommerce-cart .woocommerce-Price-amount,
.woocommerce-checkout .woocommerce-Price-amount,
.woocommerce-Price-amount bdi {
	display:inline-block;
	white-space:nowrap !important;
	letter-spacing:-.025em !important;
	word-spacing:0 !important;
}
.woocommerce .price del,
.ms-home-product-price del,
.ms-product-card .price del {
	order:-1;
	color:#7c887e !important;
	font-size:.72em;
	font-weight:650;
	line-height:1;
	opacity:1 !important;
}
.woocommerce .price del .woocommerce-Price-amount,
.ms-home-product-price del .woocommerce-Price-amount,
.ms-product-card .price del .woocommerce-Price-amount {
	color:inherit !important;
}
.woocommerce .price ins,
.ms-home-product-price ins,
.ms-product-card .price ins {
	color:#d23f31 !important;
	font-size:1.08em;
	font-weight:950;
	line-height:1;
	text-decoration:none !important;
}
.woocommerce .price ins .woocommerce-Price-amount,
.ms-home-product-price ins .woocommerce-Price-amount,
.ms-product-card .price ins .woocommerce-Price-amount {
	color:inherit !important;
}

@media (max-width:640px) {
	body,
	.ms-site-main,
	.ms-site-main p,
	.ms-site-main li,
	.ms-site-main a,
	.ms-product-card,
	.ms-home-product,
	.ms-post-card {
		letter-spacing:0 !important;
		word-spacing:0 !important;
		font-stretch:normal;
		font-kerning:normal;
	}
	.ms-site-main p,
	.ms-entry-content p,
	.woocommerce-product-details__short-description,
	.ms-product-card-content,
	.ms-home-product-body,
	.ms-post-card-body {
		text-align:left !important;
		hyphens:none;
		word-break:normal;
		overflow-wrap:break-word;
	}
	.ms-product-card .woocommerce-loop-product__title,
	.ms-home-product-name,
	.ms-post-card-title,
	.woocommerce div.product .product_title {
		letter-spacing:0 !important;
		word-spacing:0 !important;
		line-height:1.28 !important;
	}
	.woocommerce .price,
	.ms-home-product-price,
	.ms-product-card .price {
		gap:2px 5px;
		font-size:.96rem !important;
		letter-spacing:-.025em !important;
		line-height:1.12 !important;
	}
	.woocommerce div.product p.price,
	.woocommerce div.product span.price {
		font-size:1.45rem !important;
		line-height:1.12 !important;
	}
	.woocommerce-cart .product-subtotal,
	.woocommerce-checkout-review-order-table .amount {
		letter-spacing:-.02em !important;
		white-space:nowrap;
	}
}

/* 0.9.4 — neutraliza espaçamentos herdados pelo Elementor em telas pequenas. */
@media (max-width:768px) {
	body,
	body input,
	body button,
	body select,
	body textarea,
	.ms-site-main,
	.ms-site-main h1,
	.ms-site-main h2,
	.ms-site-main h3,
	.ms-site-main h4,
	.ms-site-main h5,
	.ms-site-main h6,
	.ms-site-main p,
	.ms-site-main li,
	.ms-site-main a,
	.elementor-widget-heading .elementor-heading-title,
	.elementor-widget-text-editor,
	.elementor-icon-box-title,
	.elementor-icon-box-description,
	.woocommerce-loop-product__title,
	.ms-home-product-name,
	.ms-post-card-title {
		letter-spacing:0 !important;
		word-spacing:0 !important;
		font-kerning:normal;
		font-stretch:normal;
	}

	.woocommerce .price,
	.ms-home-product-price,
	.ms-product-card .price,
	.woocommerce-Price-amount,
	.woocommerce-Price-amount bdi {
		letter-spacing:-.025em !important;
		word-spacing:0 !important;
		font-kerning:normal;
		font-stretch:normal;
	}
}

/* Correção final 0.9.5: alinhamento compacto no Safari/iPhone. */
@media (max-width:768px) {
	.ms-home-product-name,
	.ms-home-product-name *,
	.ms-product-card-content .woocommerce-loop-product__title,
	.ms-product-card-content .woocommerce-loop-product__title *,
	.woocommerce ul.products li.product .woocommerce-loop-product__title,
	.woocommerce ul.products li.product .woocommerce-loop-product__title * {
		text-align:left !important;
		text-align-last:left !important;
		letter-spacing:0 !important;
		word-spacing:0 !important;
	}

	.woocommerce .price,
	.ms-home-product-price,
	.ms-product-card .price {
		justify-content:flex-start !important;
		text-align:left !important;
		text-align-last:left !important;
	}

	.woocommerce .price *,
	.ms-home-product-price *,
	.ms-product-card .price *,
	.woocommerce-Price-amount,
	.woocommerce-Price-amount bdi,
	.woocommerce-Price-currencySymbol {
		width:auto !important;
		min-width:0 !important;
		flex:0 0 auto !important;
		text-align:left !important;
		text-align-last:left !important;
		letter-spacing:-.025em !important;
		word-spacing:0 !important;
	}
}

/* 0.10.0 — página de produto compacta e orientada à compra. */
.single-product .ms-shop .product .product_title {
	max-width:24ch;
	margin-bottom:10px;
	font-size:clamp(1.65rem,2.45vw,2.25rem);
	line-height:1.12;
	letter-spacing:-.025em;
}
.single-product .ms-shop .product .summary > p.price { margin:8px 0 12px; font-size:clamp(1.45rem,2.5vw,2rem); }
.single-product .woocommerce-product-details__short-description { position:relative; padding:10px 0 4px !important; border-top:0 !important; }
.single-product .ms-short-description-content { position:relative; max-height:4.65em; overflow:hidden; line-height:1.55; transition:max-height .25s ease; }
.single-product .ms-short-description-content::after { position:absolute; right:0; bottom:0; left:0; height:1.7em; background:linear-gradient(transparent,#fff); content:""; pointer-events:none; }
.single-product .woocommerce-product-details__short-description.is-expanded .ms-short-description-content { max-height:1000px; }
.single-product .woocommerce-product-details__short-description.is-expanded .ms-short-description-content::after { display:none; }
.ms-short-description-toggle { display:inline-flex; align-items:center; padding:2px 0; border:0; border-bottom:1px solid currentColor; background:transparent; color:#34713e; font-size:.78rem; font-weight:800; cursor:pointer; }

.single-product .ms-installments { gap:8px; margin:8px 0 12px; padding:12px 13px 11px 16px; border-radius:11px; background:#f7faf4; }
.single-product .ms-installments-title { gap:7px; font-size:.82rem; }
.single-product .ms-installments-title::before { width:18px; height:18px; flex-basis:18px; }
.single-product .ms-installment-options { grid-template-columns:repeat(3,minmax(0,1fr)); gap:0 12px; }
.single-product .ms-installment-options > span { gap:5px; padding:6px 1px; font-size:.75rem; white-space:nowrap; }
.single-product .ms-installment-options > span > b { min-width:20px; font-size:.72rem; }
.single-product .ms-installments-disclaimer,
.single-product .ms-installments-note { display:none !important; }
.single-product .ms-shop .product form.cart { margin-top:0; padding:12px 0; }
.single-product .ms-shop .product form.cart .single_add_to_cart_button { min-height:48px; }
.ms-product-seller-link { display:inline-flex; gap:8px; align-items:center; justify-content:center; width:100%; min-height:42px; margin-top:4px; border:1px solid #a9cfad; border-radius:11px; background:#f2faf1; color:#246435; font-size:.85rem; font-weight:850; text-decoration:none; }
.ms-product-seller-link span { display:grid; width:23px; height:23px; place-items:center; border-radius:50%; background:#2b9c50; color:#fff; font-size:.8rem; }

.single-product .woocommerce-product-gallery { --ms-thumb-size:68px; }
.single-product .woocommerce-product-gallery .flex-viewport,
.single-product .woocommerce-product-gallery > .woocommerce-product-gallery__wrapper { grid-area:main; min-width:0; }
.single-product .ms-gallery-thumbs-shell { position:relative; grid-area:thumbs; display:grid; grid-template-columns:32px minmax(0,1fr) 32px; gap:5px; align-items:center; min-width:0; }
.single-product .flex-control-thumbs { display:flex !important; gap:7px; width:100%; margin:0 !important; padding:0 !important; overflow:auto; scroll-behavior:smooth; scrollbar-width:none; }
.single-product .flex-control-thumbs::-webkit-scrollbar { display:none; }
.single-product .flex-control-thumbs li { float:none !important; width:auto !important; margin:0 !important; }
.ms-gallery-visible-1 .flex-control-thumbs li { flex:0 0 100%; }
.ms-gallery-visible-2 .flex-control-thumbs li { flex:0 0 calc(50% - 3.5px); }
.ms-gallery-visible-3 .flex-control-thumbs li { flex:0 0 calc(33.333% - 4.7px); }
.ms-gallery-visible-4 .flex-control-thumbs li { flex:0 0 calc(25% - 5.25px); }
.ms-gallery-visible-5 .flex-control-thumbs li { flex:0 0 calc(20% - 5.6px); }
.ms-gallery-visible-6 .flex-control-thumbs li { flex:0 0 calc(16.666% - 5.84px); }
.ms-gallery-visible-7 .flex-control-thumbs li { flex:0 0 calc(14.285% - 6px); }
.ms-gallery-visible-8 .flex-control-thumbs li { flex:0 0 calc(12.5% - 6.13px); }
.single-product .flex-control-thumbs img { width:100% !important; aspect-ratio:1; padding:3px; border:1px solid #d8e3d3; border-radius:9px; object-fit:contain; background:#fff; }
.ms-gallery-thumb-nav { display:none; width:30px; height:30px; padding:0; place-items:center; border:1px solid #cbdac6; border-radius:50%; background:#fff; color:#2d6938; font-size:1.35rem; line-height:1; cursor:pointer; }
.ms-gallery-thumbs-shell.has-overflow .ms-gallery-thumb-nav { display:grid; }
.ms-gallery-thumbs-bottom .woocommerce-product-gallery { display:grid; grid-template-areas:"main" "thumbs"; gap:10px; }
.ms-gallery-thumbs-left .woocommerce-product-gallery,
.ms-gallery-thumbs-right .woocommerce-product-gallery { display:grid; gap:11px; align-items:start; }
.ms-gallery-thumbs-left .woocommerce-product-gallery { grid-template-columns:var(--ms-thumb-size) minmax(0,1fr); grid-template-areas:"thumbs main"; }
.ms-gallery-thumbs-right .woocommerce-product-gallery { grid-template-columns:minmax(0,1fr) var(--ms-thumb-size); grid-template-areas:"main thumbs"; }
.ms-gallery-thumbs-left .ms-gallery-thumbs-shell,
.ms-gallery-thumbs-right .ms-gallery-thumbs-shell { grid-template:30px minmax(0,1fr) 30px / 1fr; max-height:calc(var(--ms-gallery-visible) * var(--ms-thumb-size) + (var(--ms-gallery-visible) - 1) * 7px + 70px); }
.ms-gallery-thumbs-left .flex-control-thumbs,
.ms-gallery-thumbs-right .flex-control-thumbs { flex-direction:column; max-height:calc(var(--ms-gallery-visible) * var(--ms-thumb-size) + (var(--ms-gallery-visible) - 1) * 7px); }
.ms-gallery-thumbs-left .flex-control-thumbs li,
.ms-gallery-thumbs-right .flex-control-thumbs li { flex:0 0 var(--ms-thumb-size); }
.ms-gallery-thumbs-left .ms-gallery-thumb-nav,
.ms-gallery-thumbs-right .ms-gallery-thumb-nav { margin:auto; transform:rotate(90deg); }

@media (max-width:640px) {
	.single-product .ms-shop { width:min(calc(100% - 12px),var(--ms-container)); }
	.single-product .ms-shop .product { gap:12px; }
	.single-product .ms-shop .product .woocommerce-product-gallery { --ms-thumb-size:52px; padding:8px; border-radius:15px; box-shadow:0 7px 20px rgba(20,55,35,.08); }
	.single-product .ms-shop .product .woocommerce-product-gallery__image a { min-height:0 !important; height:min(62vw,285px); }
	.single-product .ms-shop .product .woocommerce-product-gallery__image img { width:100%; height:100%; max-height:285px; object-fit:contain; }
	.single-product .ms-shop .product .summary { padding:16px 15px; border-radius:15px; }
	.single-product .ms-shop .product .product_title { max-width:none; margin-bottom:7px; font-size:1.28rem; line-height:1.2; }
	.single-product .ms-shop .product .summary > p.price { margin:6px 0 8px; font-size:1.28rem !important; }
	.single-product .woocommerce-product-details__short-description { margin-bottom:3px; font-size:.84rem; }
	.single-product .ms-installments { margin:7px 0 9px; padding:10px 11px 9px 14px; }
	.single-product .ms-installment-options { grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 10px; }
	.single-product .ms-installment-options > span { font-size:.7rem; }
	.single-product .ms-shop .product form.cart { padding:9px 0; }
	.single-product .ms-shop .product form.cart .single_add_to_cart_button { min-height:45px; }
	.ms-gallery-thumbs-left .woocommerce-product-gallery,
	.ms-gallery-thumbs-right .woocommerce-product-gallery { gap:7px; }
	.ms-gallery-thumbs-left .ms-gallery-thumbs-shell,
	.ms-gallery-thumbs-right .ms-gallery-thumbs-shell { grid-template-rows:25px minmax(0,1fr) 25px; }
	.ms-gallery-thumb-nav { width:25px; height:25px; font-size:1.05rem; }
}

/* 0.10.1 — fluxo de compra e calculadora de frete integrados. */
.single-product .summary.ms-purchase-flow-ready > form.cart {
	margin:7px 0 10px;
	padding:0;
	border:0;
}
.single-product .summary.ms-purchase-flow-ready > form.cart .single_add_to_cart_button {
	width:100%;
	min-height:49px;
	border-radius:12px !important;
	box-shadow:0 9px 20px rgba(36,100,53,.16) !important;
}
.single-product .summary .joinchat__woo-btn__wrapper {
	width:100%;
	margin:10px 0 9px !important;
	padding:0 !important;
}
.single-product .summary .joinchat__woo-btn {
	display:flex !important;
	gap:8px;
	align-items:center;
	justify-content:center;
	width:100%;
	min-height:43px;
	margin:0 !important;
	padding:9px 14px !important;
	border:1px solid #a8d5ad !important;
	border-radius:12px !important;
	background:#f2fbf1 !important;
	color:#236735 !important;
	font-size:.84rem !important;
	font-weight:850 !important;
	box-shadow:none !important;
	cursor:pointer;
}
.single-product .summary .joinchat__woo-btn::before {
	display:grid;
	width:23px;
	height:23px;
	place-items:center;
	border-radius:50%;
	background:#28a955;
	color:#fff;
	content:"☎";
	font-size:.72rem;
}
.single-product .summary .ms-product-seller-link { display:none !important; }

.single-product .summary .containerCalculator {
	width:100% !important;
	margin:0 0 12px !important;
	padding:15px 16px !important;
	border:1px solid #d4e2cf !important;
	border-radius:13px !important;
	background:linear-gradient(135deg,#fbfdf9,#f3f8ef) !important;
	box-shadow:none !important;
}
.single-product .summary .containerCalculator > .calculatorRow,
.single-product .summary .containerCalculator .row,
.single-product .summary .containerCalculator .col-75 {
	width:100% !important;
	max-width:none !important;
	margin:0 !important;
	padding:0 !important;
	background:transparent !important;
}
.single-product .summary .containerCalculator .col-75 > p {
	display:flex;
	gap:8px;
	align-items:center;
	margin:0 0 9px !important;
	color:#234b30;
	font-size:.88rem;
	font-weight:850;
}
.single-product .summary .containerCalculator .col-75 > p::before {
	display:block;
	width:20px;
	height:20px;
	background:#3c7845;
	content:"";
	-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 6h11v11H3V6Zm11 4h4l3 4v3h-7v-7ZM7 20a2 2 0 1 0 0-4 2 2 0 0 0 0 4Zm11 0a2 2 0 1 0 0-4 2 2 0 0 0 0 4Z' fill='none' stroke='black' stroke-width='1.7' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
	mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 6h11v11H3V6Zm11 4h4l3 4v3h-7v-7ZM7 20a2 2 0 1 0 0-4 2 2 0 0 0 0 4Zm11 0a2 2 0 1 0 0-4 2 2 0 0 0 0 4Z' fill='none' stroke='black' stroke-width='1.7' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
}
.single-product .summary .containerCalculator #inputCep {
	display:block !important;
	width:100% !important;
	height:46px !important;
	min-height:46px !important;
	margin:0 !important;
	padding:10px 13px !important;
	border:1px solid #b9ceb3 !important;
	border-radius:10px !important;
	background:#fff !important;
	color:#233c29 !important;
	font-size:16px !important;
	box-shadow:0 3px 9px rgba(29,70,38,.04) !important;
}
.single-product .summary .containerCalculator #inputCep:focus {
	border-color:#397846 !important;
	outline:3px solid rgba(57,120,70,.12) !important;
}
.single-product .summary .containerCalculator #calcular-frete-loader { padding:10px 0 0; text-align:center; }
.single-product .summary .containerCalculator .resultado-frete { margin-top:10px; }
.single-product .summary .containerCalculator .resultado-frete table { width:100%; border:0; border-collapse:separate; border-spacing:0 6px; }
.single-product .summary .containerCalculator .resultado-frete td { padding:9px 10px; border:0; background:#fff; color:#344d39; font-size:.78rem; }
.single-product .summary .containerCalculator .resultado-frete td:first-child { border-radius:9px 0 0 9px; }
.single-product .summary .containerCalculator .resultado-frete td:last-child { border-radius:0 9px 9px 0; color:#246134; font-weight:800; text-align:right; }
.single-product .summary .containerCalculator small { display:block; margin-top:6px; color:#68756b; font-size:.69rem; line-height:1.35; }
@media (max-width:640px) {
	.single-product .summary.ms-purchase-flow-ready > form.cart .single_add_to_cart_button { min-height:46px; }
	.single-product .summary .joinchat__woo-btn { min-height:41px; font-size:.78rem !important; }
	.single-product .summary .containerCalculator { padding:13px !important; border-radius:11px !important; }
}

/* 0.10.2 — WhatsApp reconhecível e melhor ocupação do viewport mobile. */
.single-product .summary .joinchat__woo-btn {
	position:relative;
	isolation:isolate;
	overflow:visible;
	border-color:rgba(37,211,102,.58) !important;
	background:linear-gradient(135deg,#f3fff6,#e7f9ec) !important;
	color:#146b32 !important;
}
.single-product .summary .joinchat__woo-btn::before {
	width:27px;
	height:27px;
	flex:0 0 27px;
	border-radius:50%;
	background-color:#25d366;
	background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath fill='%23fff' d='M16 5.2A10.4 10.4 0 0 0 7.1 21l-1.4 5.2 5.3-1.4A10.4 10.4 0 1 0 16 5.2Zm0 18.8c-1.6 0-3.1-.4-4.4-1.2l-.3-.2-3.1.8.8-3-.2-.3A8.4 8.4 0 1 1 16 24Zm4.6-6.3c-.3-.1-1.5-.7-1.8-.8-.2-.1-.4-.1-.6.1l-.8 1c-.1.2-.3.2-.5.1-1.5-.7-2.5-1.4-3.5-3.1-.3-.5.3-.5.8-1.6.1-.2 0-.4 0-.5l-.8-2c-.2-.5-.4-.4-.6-.4h-.5c-.2 0-.5.1-.7.3-.2.3-.9.9-.9 2.2s.9 2.5 1 2.7c.1.2 1.8 2.8 4.5 3.9 1.7.7 2.4.8 3.3.7 1-.1 1.5-.7 1.7-1.3.2-.6.2-1.1.1-1.2-.2 0-.4-.1-.7-.2Z'/%3E%3C/svg%3E");
	background-position:center;
	background-repeat:no-repeat;
	background-size:22px;
	box-shadow:0 0 0 0 rgba(37,211,102,.36);
	content:"";
	animation:ms-whatsapp-pulse 2.35s ease-out infinite;
}
.single-product .summary .joinchat__woo-btn::after {
	position:absolute;
	z-index:-1;
	inset:-3px;
	border:1px solid rgba(37,211,102,.22);
	border-radius:14px;
	content:"";
	pointer-events:none;
}
@keyframes ms-whatsapp-pulse {
	0%,35% { box-shadow:0 0 0 0 rgba(37,211,102,.38); transform:scale(1); }
	70% { box-shadow:0 0 0 9px rgba(37,211,102,0); transform:scale(1.06); }
	100% { box-shadow:0 0 0 0 rgba(37,211,102,0); transform:scale(1); }
}
@media (prefers-reduced-motion:reduce) {
	.single-product .summary .joinchat__woo-btn::before { animation:none; }
}
@media (max-width:640px) {
	.single-product .ms-shop .product {
		grid-template-columns:minmax(0,1fr) !important;
		gap:7px !important;
		width:100% !important;
		min-width:0 !important;
	}
	.single-product .ms-shop .product > .woocommerce-product-gallery,
	.single-product .ms-shop .product > .summary {
		width:100% !important;
		max-width:100% !important;
		min-width:0 !important;
		margin:0 !important;
	}
	.single-product .ms-shop .product .woocommerce-product-gallery {
		padding:7px !important;
	}
	.single-product .woocommerce-product-gallery .flex-viewport,
	.single-product .woocommerce-product-gallery > .woocommerce-product-gallery__wrapper,
	.single-product .woocommerce-product-gallery__image,
	.single-product .woocommerce-product-gallery__image a {
		min-width:0 !important;
		max-width:100% !important;
	}
	.single-product .ms-shop .product .woocommerce-product-gallery__image a {
		display:flex !important;
		height:min(68vw,310px) !important;
		align-items:center;
		justify-content:center;
	}
	.single-product .ms-shop .product .woocommerce-product-gallery__image img {
		display:block;
		width:100% !important;
		height:100% !important;
		max-height:310px !important;
		margin:auto !important;
		object-fit:contain !important;
		object-position:center center !important;
	}
	.single-product .summary .joinchat__woo-btn__wrapper { margin:6px 0 !important; }
}

/* Home Maicomsoft — carrossel comercial, contraste e abas de planos. */
.ms-agency-hero{min-height:720px;padding:0;transition:background .7s ease,color .4s ease}.ms-agency-hero:before{transition:background .7s ease}.ms-hero-slides{position:relative;min-height:720px}.ms-hero-slide{position:absolute;inset:0;display:grid;align-items:center;opacity:0;pointer-events:none;transform:translateX(18px);transition:opacity .65s ease,transform .65s ease}.ms-hero-slide.is-active{position:relative;opacity:1;pointer-events:auto;transform:none}.ms-hero-slide .ms-agency-hero-grid{min-height:720px;padding:150px 0 115px}.ms-agency-hero.is-systems:before{background:radial-gradient(circle at 73% 36%,rgba(255,125,109,.34),transparent 25%),radial-gradient(circle at 94% 88%,rgba(82,155,255,.3),transparent 26%),linear-gradient(120deg,#171729 20%,#24204b)}.ms-agency-hero.is-presence:before{background:radial-gradient(circle at 73% 40%,rgba(55,177,201,.42),transparent 25%),radial-gradient(circle at 93% 12%,rgba(214,112,255,.23),transparent 20%),linear-gradient(120deg,#131b30 25%,#183d54)}.ms-agency-hero.is-systems .ms-agency-button-primary{background:#ffb18f}.ms-agency-hero.is-systems h1 em{color:#ffb18f}.ms-agency-hero.is-presence .ms-agency-button-primary{background:#9fe8ef}.ms-agency-hero.is-presence h1 em{color:#9fe8ef}.ms-hero-progress{position:absolute;z-index:5;bottom:34px;display:flex;gap:8px}.ms-hero-progress button{position:relative;overflow:hidden;padding:9px 13px;border:1px solid rgba(255,255,255,.26);border-radius:999px;background:rgba(10,10,27,.2);color:rgba(255,255,255,.7);font-size:.7rem;font-weight:800;cursor:pointer}.ms-hero-progress button.is-active{color:#fff}.ms-hero-progress button.is-active:after{position:absolute;bottom:0;left:0;width:100%;height:2px;background:var(--agency-lime);content:"";animation:ms-hero-progress 8s linear}.ms-agency-hero.is-systems .ms-hero-progress button.is-active:after{background:#ffb18f}.ms-agency-hero.is-presence .ms-hero-progress button.is-active:after{background:#9fe8ef}@keyframes ms-hero-progress{from{transform:translateX(-101%)}to{transform:translateX(0)}}.ms-agency-plans h2 em{color:var(--agency-violet)}.ms-plan-tabs{isolation:isolate;display:inline-flex;justify-content:flex-start;gap:4px;margin:-26px 0 35px;padding:5px;border:1px solid #d9d9e8;border-radius:18px;background:#ececf5;box-shadow:0 8px 20px rgba(28,26,62,.07)}.ms-plan-tabs button{position:relative;z-index:1;padding:11px 18px;border:0;border-radius:13px;background:transparent;color:#37364b;font-size:.8rem;font-weight:850;line-height:1.15;transition:background .25s ease,color .25s ease,box-shadow .25s ease,transform .25s ease;cursor:pointer}.ms-plan-tabs button span{opacity:.72}.ms-plan-tabs button.is-active{background:#543af1;color:#fff;box-shadow:0 7px 16px rgba(83,58,241,.3);transform:translateY(-1px)}.ms-plan-tabs button.is-active span{opacity:1}.ms-agency-plan-grid{transition:opacity .25s ease}.ms-agency-plan-grid.is-switching{opacity:.55}@media(max-width:760px){.ms-agency-hero,.ms-hero-slides,.ms-hero-slide .ms-agency-hero-grid{min-height:auto}.ms-hero-slide .ms-agency-hero-grid{padding:116px 0 105px}.ms-hero-progress{bottom:25px}.ms-hero-progress button{padding:8px 10px;font-size:.65rem}.ms-hero-progress button:nth-child(2){display:none}.ms-plan-tabs{margin:-15px 0 30px}.ms-plan-tabs button{padding:10px 13px;font-size:.74rem}}

/* Ajustes de escala dos heros, cards de clientes e rodapé. */
.ms-hero-slide .ms-agency-hero-grid{grid-template-columns:minmax(0,.98fr) minmax(420px,1.02fr);gap:12px}.ms-agency-hero h1{max-width:700px;font-size:clamp(3.15rem,4.3vw,4.95rem);line-height:.98}.ms-agency-hero-art{min-height:495px}.ms-agency-hero-image{right:-5%;bottom:-10%;width:clamp(760px,70vw,1020px);max-height:650px}.ms-agency-client-slider .ms-agency-client{width:205px;min-height:126px;padding:10px 8px;border-color:rgba(255,255,255,.25);background:#f8f8fc;color:#1e1e34;box-shadow:0 10px 24px rgba(0,0,0,.13)}.ms-agency-client-slider .ms-agency-client:hover{background:#fff;transform:translateY(-4px)}.ms-agency-client-logo{height:72px;margin-bottom:5px}.ms-agency-client-logo img{max-width:182px;max-height:68px}.ms-agency-client small{color:#4a4a5e;font-size:.72rem}.ms-agency-client b{color:var(--agency-violet)}.home .ms-site-footer{display:block;background:#101022;color:#fff}.home .ms-site-footer a{color:#d8cfff}.home .ms-site-footer p{color:rgba(255,255,255,.65)}@media(max-width:760px){.ms-hero-slide .ms-agency-hero-grid{grid-template-columns:1fr;gap:0;padding:108px 0 95px}.ms-agency-hero h1{max-width:100%;font-size:clamp(2.65rem,11vw,4rem);line-height:.97;letter-spacing:-.065em}.ms-agency-hero-copy{position:relative;z-index:2}.ms-agency-lead{margin:20px 0;font-size:1rem}.ms-agency-hero-art{min-height:245px;margin-top:0}.ms-agency-hero-image{right:-28%;bottom:-2%;width:152%;max-height:none}.ms-agency-proof{display:none}.ms-agency-actions{gap:14px}.ms-agency-button{gap:16px;padding:15px 16px}.ms-hero-progress{left:0;right:0;bottom:22px;gap:6px;justify-content:center}.ms-hero-progress button{padding:8px 9px}.ms-hero-progress button:nth-child(2){display:block}.ms-agency-client-slider .ms-agency-client{width:166px;min-height:112px;padding:8px}.ms-agency-client-logo{height:62px}.ms-agency-client-logo img{max-width:150px;max-height:58px}}

/* Galeria de cases e identidade mobile Maicomsoft. */
.ms-portfolio-gallery{margin:34px 0}.ms-portfolio-gallery-main{overflow:hidden;border-radius:18px;background:#111123}.ms-portfolio-gallery-main button{display:block;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in}.ms-portfolio-gallery-main img{display:block;width:100%;max-height:620px;object-fit:contain}.ms-portfolio-gallery-thumbs{display:flex;gap:12px;overflow-x:auto;padding:14px 2px 6px;scroll-snap-type:x proximity}.ms-portfolio-gallery-thumbs button{flex:0 0 148px;height:98px;overflow:hidden;padding:0;border:2px solid transparent;border-radius:12px;background:#131326;cursor:pointer;scroll-snap-align:start}.ms-portfolio-gallery-thumbs button.is-active{border-color:#5b42f3}.ms-portfolio-gallery-thumbs img{display:block;width:100%;height:100%;object-fit:cover}.ms-portfolio-lightbox{position:fixed;z-index:99999;inset:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:center;padding:38px;background:rgba(8,8,20,.94)}.ms-portfolio-lightbox[hidden]{display:none}.ms-portfolio-lightbox img{display:block;max-width:100%;max-height:88vh;margin:auto;object-fit:contain}.ms-portfolio-lightbox button{border:0;color:#fff;cursor:pointer}.ms-portfolio-lightbox-close{position:absolute;top:18px;right:22px;width:44px;height:44px;border-radius:50%!important;background:#ffffff20;font-size:2rem}.ms-portfolio-lightbox-nav{width:46px;height:46px;border-radius:50%!important;background:#5b42f3;font-size:2.2rem}.ms-maicomsoft-mobile-nav{display:none}@media(max-width:760px){.ms-site-header{border-color:#6b55ed!important;background:#fff!important}.ms-site-header .ms-header-inner{min-height:68px}.ms-menu-toggle{border-color:#9e92f3!important;background:#f3f1ff!important;color:#4430c8!important}.ms-header-actions .ms-search button,.ms-header-actions a{color:#4430c8!important}.ms-mobile-bottom-nav{display:flex!important;border-top:1px solid #d9d4ff!important;background:#131326!important;box-shadow:0 -8px 24px rgba(15,14,35,.16)!important}.ms-mobile-bottom-nav a,.ms-mobile-bottom-nav small{color:#e8e6ff!important}.ms-mobile-bottom-nav a:first-child{color:#bdf565!important}.ms-mobile-bottom-nav svg{stroke:currentColor!important}.ms-site-footer{padding-bottom:82px}.ms-portfolio-single{padding:82px 16px}.ms-portfolio-gallery{margin:24px 0}.ms-portfolio-gallery-main{border-radius:14px}.ms-portfolio-gallery-thumbs{gap:9px}.ms-portfolio-gallery-thumbs button{flex-basis:126px;height:84px}.ms-portfolio-lightbox{gap:8px;padding:26px 8px}.ms-portfolio-lightbox-nav{width:38px;height:38px;font-size:1.8rem}}
.ms-agency-client-track.is-single{width:auto;animation:none}
.ms-mobile-bottom-nav{padding:8px 4px!important;justify-content:space-around!important}.ms-maicomsoft-mobile-nav{background:var(--ms-mobile-nav)!important}.ms-maicomsoft-mobile-nav a{display:flex!important;min-width:0;flex:1;flex-direction:column;align-items:center;gap:4px;padding:3px 1px!important;color:var(--ms-mobile-nav-text)!important;text-decoration:none}.ms-maicomsoft-mobile-nav a span{display:grid;width:21px;height:21px;place-items:center;font-size:1rem;line-height:1;color:currentColor}.ms-maicomsoft-mobile-nav a small{overflow:hidden;max-width:100%;color:currentColor!important;font-size:9px!important;line-height:1.1!important;text-align:center;text-overflow:ellipsis;white-space:nowrap}.ms-maicomsoft-mobile-nav a:first-child{color:var(--ms-mobile-nav-active)!important}
.ms-brand-logo{max-height:var(--ms-logo-size)!important}.ms-site-main{font-size:var(--ms-font-size)}

/* Compartilhamento e formulário de contato na identidade Maicomsoft. */
.ms-share{border-color:color-mix(in srgb,var(--ms-text) 14%,transparent)}.ms-share .ms-social-links a,.ms-share .ms-social-links button{border-color:color-mix(in srgb,var(--ms-accent) 35%,transparent);background:var(--ms-surface);color:var(--ms-accent);box-shadow:0 5px 16px color-mix(in srgb,var(--ms-text) 8%,transparent)}.ms-share .ms-social-links i{font-size:1.05rem}.ms-share .ms-social-links a:hover,.ms-share .ms-social-links button:hover,.ms-share .ms-social-links button.is-copied{background:var(--ms-accent);color:#fff}
.ms-site-header{background:var(--ms-header)!important;border-bottom-color:color-mix(in srgb,var(--ms-accent) 30%,transparent)!important;box-shadow:0 10px 30px color-mix(in srgb,var(--ms-text) 9%,transparent)!important}.ms-site-header::after{background:linear-gradient(90deg,var(--ms-accent),color-mix(in srgb,var(--ms-accent) 45%,var(--ms-surface)))!important}.ms-site-name,.ms-menu a{color:var(--ms-text)!important}.ms-menu a:hover,.ms-menu .current-menu-item>a{color:var(--ms-accent)!important}.ms-menu .sub-menu{border-color:color-mix(in srgb,var(--ms-accent) 22%,transparent)!important;background:var(--ms-surface)!important;box-shadow:0 18px 38px color-mix(in srgb,var(--ms-text) 13%,transparent)!important}.ms-menu .sub-menu a:hover{background:color-mix(in srgb,var(--ms-accent) 9%,var(--ms-surface))!important}.ms-account-link,.onchair-header-login-btn,.ms-cart-link,.ms-header-cta{background:var(--ms-accent)!important;color:#fff!important}.ms-site-footer{background:var(--ms-footer)!important;border-top-color:color-mix(in srgb,var(--ms-accent) 36%,transparent)!important}.ms-site-footer .ms-footer-menu a{color:color-mix(in srgb,#fff 88%,var(--ms-accent))!important}.ms-site-footer .ms-social-links a{border-color:color-mix(in srgb,var(--ms-accent) 48%,transparent)!important;color:var(--ms-accent)!important}.ms-maicomsoft-mobile-nav a i{font-size:1rem;line-height:1}
.page .ms-entry{padding:clamp(28px,5vw,66px);border:1px solid color-mix(in srgb,var(--ms-text) 10%,transparent);border-radius:var(--ms-radius);background:var(--ms-surface);box-shadow:0 20px 50px color-mix(in srgb,var(--ms-text) 7%,transparent)}.page .ms-entry-title{color:var(--ms-text)}.wpcf7:has(.ms-contact-form){max-width:980px}.ms-contact-form{border-color:color-mix(in srgb,var(--ms-accent) 24%,transparent);background:radial-gradient(circle at 100% 0,color-mix(in srgb,var(--ms-accent) 14%,transparent),transparent 32%),var(--ms-surface);box-shadow:0 20px 50px color-mix(in srgb,var(--ms-text) 10%,transparent)}.ms-contact-form label{color:var(--ms-text)}.ms-contact-form input:not([type="submit"]),.ms-contact-form textarea,.ms-contact-form select{border-color:color-mix(in srgb,var(--ms-text) 18%,transparent);background:color-mix(in srgb,var(--ms-bg) 62%,var(--ms-surface));color:var(--ms-text)}.ms-contact-form input:not([type="submit"]):focus,.ms-contact-form textarea:focus,.ms-contact-form select:focus{border-color:var(--ms-accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--ms-accent) 18%,transparent)}.ms-contact-form .wpcf7-submit{background:var(--ms-accent);box-shadow:0 11px 24px color-mix(in srgb,var(--ms-accent) 28%,transparent)}.wpcf7:has(.ms-contact-form) .wpcf7-response-output{border-color:color-mix(in srgb,var(--ms-accent) 45%,transparent);background:color-mix(in srgb,var(--ms-accent) 10%,var(--ms-surface));color:var(--ms-text)}


